k-vtable 1.0.0

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 (2044) hide show
  1. package/README.md +151 -0
  2. package/cjs/ListTable-all.d.ts +3 -0
  3. package/cjs/ListTable-all.js +20 -0
  4. package/cjs/ListTable-all.js.map +1 -0
  5. package/cjs/ListTable-simple.d.ts +3 -0
  6. package/cjs/ListTable-simple.js +14 -0
  7. package/cjs/ListTable-simple.js.map +1 -0
  8. package/cjs/ListTable.d.ts +101 -0
  9. package/cjs/ListTable.js +682 -0
  10. package/cjs/ListTable.js.map +1 -0
  11. package/cjs/PivotChart.d.ts +100 -0
  12. package/cjs/PivotChart.js +755 -0
  13. package/cjs/PivotChart.js.map +1 -0
  14. package/cjs/PivotTable-all.d.ts +3 -0
  15. package/cjs/PivotTable-all.js +19 -0
  16. package/cjs/PivotTable-all.js.map +1 -0
  17. package/cjs/PivotTable-simple.d.ts +3 -0
  18. package/cjs/PivotTable-simple.js +14 -0
  19. package/cjs/PivotTable-simple.js.map +1 -0
  20. package/cjs/PivotTable.d.ts +112 -0
  21. package/cjs/PivotTable.js +992 -0
  22. package/cjs/PivotTable.js.map +1 -0
  23. package/cjs/body-helper/body-helper.d.ts +20 -0
  24. package/cjs/body-helper/body-helper.js +121 -0
  25. package/cjs/body-helper/body-helper.js.map +1 -0
  26. package/cjs/body-helper/style/ButtonStyle.d.ts +45 -0
  27. package/cjs/body-helper/style/ButtonStyle.js +110 -0
  28. package/cjs/body-helper/style/ButtonStyle.js.map +1 -0
  29. package/cjs/body-helper/style/CheckboxStyle.d.ts +42 -0
  30. package/cjs/body-helper/style/CheckboxStyle.js +104 -0
  31. package/cjs/body-helper/style/CheckboxStyle.js.map +1 -0
  32. package/cjs/body-helper/style/ImageStyle.d.ts +7 -0
  33. package/cjs/body-helper/style/ImageStyle.js +24 -0
  34. package/cjs/body-helper/style/ImageStyle.js.map +1 -0
  35. package/cjs/body-helper/style/MultilineTextStyle.d.ts +13 -0
  36. package/cjs/body-helper/style/MultilineTextStyle.js +38 -0
  37. package/cjs/body-helper/style/MultilineTextStyle.js.map +1 -0
  38. package/cjs/body-helper/style/NumberStyle.d.ts +7 -0
  39. package/cjs/body-helper/style/NumberStyle.js +24 -0
  40. package/cjs/body-helper/style/NumberStyle.js.map +1 -0
  41. package/cjs/body-helper/style/ProgressBarStyle.d.ts +55 -0
  42. package/cjs/body-helper/style/ProgressBarStyle.js +139 -0
  43. package/cjs/body-helper/style/ProgressBarStyle.js.map +1 -0
  44. package/cjs/body-helper/style/RadioStyle.d.ts +45 -0
  45. package/cjs/body-helper/style/RadioStyle.js +111 -0
  46. package/cjs/body-helper/style/RadioStyle.js.map +1 -0
  47. package/cjs/body-helper/style/Style.d.ts +95 -0
  48. package/cjs/body-helper/style/Style.js +225 -0
  49. package/cjs/body-helper/style/Style.js.map +1 -0
  50. package/cjs/body-helper/style/SwitchStyle.d.ts +36 -0
  51. package/cjs/body-helper/style/SwitchStyle.js +90 -0
  52. package/cjs/body-helper/style/SwitchStyle.js.map +1 -0
  53. package/cjs/body-helper/style.d.ts +11 -0
  54. package/cjs/body-helper/style.js +52 -0
  55. package/cjs/body-helper/style.js.map +1 -0
  56. package/cjs/chartModule.d.ts +3 -0
  57. package/cjs/chartModule.js +14 -0
  58. package/cjs/chartModule.js.map +1 -0
  59. package/cjs/components/axis/axis.d.ts +52 -0
  60. package/cjs/components/axis/axis.js +190 -0
  61. package/cjs/components/axis/axis.js.map +1 -0
  62. package/cjs/components/axis/band-scale.d.ts +18 -0
  63. package/cjs/components/axis/band-scale.js +54 -0
  64. package/cjs/components/axis/band-scale.js.map +1 -0
  65. package/cjs/components/axis/get-axis-attributes.d.ts +146 -0
  66. package/cjs/components/axis/get-axis-attributes.js +199 -0
  67. package/cjs/components/axis/get-axis-attributes.js.map +1 -0
  68. package/cjs/components/axis/get-axis-component-size.d.ts +6 -0
  69. package/cjs/components/axis/get-axis-component-size.js +138 -0
  70. package/cjs/components/axis/get-axis-component-size.js.map +1 -0
  71. package/cjs/components/axis/label-overlap.d.ts +3 -0
  72. package/cjs/components/axis/label-overlap.js +64 -0
  73. package/cjs/components/axis/label-overlap.js.map +1 -0
  74. package/cjs/components/axis/linear-scale.d.ts +48 -0
  75. package/cjs/components/axis/linear-scale.js +136 -0
  76. package/cjs/components/axis/linear-scale.js.map +1 -0
  77. package/cjs/components/empty-tip/empty-tip.d.ts +25 -0
  78. package/cjs/components/empty-tip/empty-tip.js +102 -0
  79. package/cjs/components/empty-tip/empty-tip.js.map +1 -0
  80. package/cjs/components/index.d.ts +6 -0
  81. package/cjs/components/index.js +44 -0
  82. package/cjs/components/index.js.map +1 -0
  83. package/cjs/components/legend/continue-legend/continue-legend.d.ts +24 -0
  84. package/cjs/components/legend/continue-legend/continue-legend.js +98 -0
  85. package/cjs/components/legend/continue-legend/continue-legend.js.map +1 -0
  86. package/cjs/components/legend/continue-legend/get-continue-legend-attributes.d.ts +5 -0
  87. package/cjs/components/legend/continue-legend/get-continue-legend-attributes.js +139 -0
  88. package/cjs/components/legend/continue-legend/get-continue-legend-attributes.js.map +1 -0
  89. package/cjs/components/legend/create-legend.d.ts +6 -0
  90. package/cjs/components/legend/create-legend.js +14 -0
  91. package/cjs/components/legend/create-legend.js.map +1 -0
  92. package/cjs/components/legend/discrete-legend/discrete-legend.d.ts +25 -0
  93. package/cjs/components/legend/discrete-legend/discrete-legend.js +115 -0
  94. package/cjs/components/legend/discrete-legend/discrete-legend.js.map +1 -0
  95. package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.d.ts +5 -0
  96. package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.js +90 -0
  97. package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.js.map +1 -0
  98. package/cjs/components/menu/dom/BaseMenu.d.ts +16 -0
  99. package/cjs/components/menu/dom/BaseMenu.js +33 -0
  100. package/cjs/components/menu/dom/BaseMenu.js.map +1 -0
  101. package/cjs/components/menu/dom/Menu.d.ts +9 -0
  102. package/cjs/components/menu/dom/Menu.js +24 -0
  103. package/cjs/components/menu/dom/Menu.js.map +1 -0
  104. package/cjs/components/menu/dom/MenuHandler.d.ts +24 -0
  105. package/cjs/components/menu/dom/MenuHandler.js +148 -0
  106. package/cjs/components/menu/dom/MenuHandler.js.map +1 -0
  107. package/cjs/components/menu/dom/logic/MenuContainer.d.ts +21 -0
  108. package/cjs/components/menu/dom/logic/MenuContainer.js +105 -0
  109. package/cjs/components/menu/dom/logic/MenuContainer.js.map +1 -0
  110. package/cjs/components/menu/dom/logic/MenuElement.d.ts +26 -0
  111. package/cjs/components/menu/dom/logic/MenuElement.js +287 -0
  112. package/cjs/components/menu/dom/logic/MenuElement.js.map +1 -0
  113. package/cjs/components/menu/dom/logic/MenuElementStyle.d.ts +1 -0
  114. package/cjs/components/menu/dom/logic/MenuElementStyle.js +17 -0
  115. package/cjs/components/menu/dom/logic/MenuElementStyle.js.map +1 -0
  116. package/cjs/components/react/react-custom-layout.d.ts +27 -0
  117. package/cjs/components/react/react-custom-layout.js +179 -0
  118. package/cjs/components/react/react-custom-layout.js.map +1 -0
  119. package/cjs/components/title/title.d.ts +21 -0
  120. package/cjs/components/title/title.js +89 -0
  121. package/cjs/components/title/title.js.map +1 -0
  122. package/cjs/components/tooltip/BaseTooltip.d.ts +22 -0
  123. package/cjs/components/tooltip/BaseTooltip.js +35 -0
  124. package/cjs/components/tooltip/BaseTooltip.js.map +1 -0
  125. package/cjs/components/tooltip/Tooltip.d.ts +5 -0
  126. package/cjs/components/tooltip/Tooltip.js +16 -0
  127. package/cjs/components/tooltip/Tooltip.js.map +1 -0
  128. package/cjs/components/tooltip/TooltipHandler.d.ts +31 -0
  129. package/cjs/components/tooltip/TooltipHandler.js +132 -0
  130. package/cjs/components/tooltip/TooltipHandler.js.map +1 -0
  131. package/cjs/components/tooltip/logic/BubbleTooltipElement.d.ts +34 -0
  132. package/cjs/components/tooltip/logic/BubbleTooltipElement.js +163 -0
  133. package/cjs/components/tooltip/logic/BubbleTooltipElement.js.map +1 -0
  134. package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.d.ts +1 -0
  135. package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js +17 -0
  136. package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -0
  137. package/cjs/components/util/orient.d.ts +3 -0
  138. package/cjs/components/util/orient.js +14 -0
  139. package/cjs/components/util/orient.js.map +1 -0
  140. package/cjs/components/util/register.d.ts +3 -0
  141. package/cjs/components/util/register.js +15 -0
  142. package/cjs/components/util/register.js.map +1 -0
  143. package/cjs/components/util/transform.d.ts +5 -0
  144. package/cjs/components/util/transform.js +45 -0
  145. package/cjs/components/util/transform.js.map +1 -0
  146. package/cjs/core/BaseTable.d.ts +436 -0
  147. package/cjs/core/BaseTable.js +1866 -0
  148. package/cjs/core/BaseTable.js.map +1 -0
  149. package/cjs/core/FouseInput.d.ts +12 -0
  150. package/cjs/core/FouseInput.js +41 -0
  151. package/cjs/core/FouseInput.js.map +1 -0
  152. package/cjs/core/TABLE_EVENT_TYPE.d.ts +61 -0
  153. package/cjs/core/TABLE_EVENT_TYPE.js +65 -0
  154. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -0
  155. package/cjs/core/animation.d.ts +17 -0
  156. package/cjs/core/animation.js +61 -0
  157. package/cjs/core/animation.js.map +1 -0
  158. package/cjs/core/factory.d.ts +11 -0
  159. package/cjs/core/factory.js +29 -0
  160. package/cjs/core/factory.js.map +1 -0
  161. package/cjs/core/group-helper.d.ts +6 -0
  162. package/cjs/core/group-helper.js +22 -0
  163. package/cjs/core/group-helper.js.map +1 -0
  164. package/cjs/core/record-helper.d.ts +8 -0
  165. package/cjs/core/record-helper.js +428 -0
  166. package/cjs/core/record-helper.js.map +1 -0
  167. package/cjs/core/row-series-number-helper.d.ts +8 -0
  168. package/cjs/core/row-series-number-helper.js +46 -0
  169. package/cjs/core/row-series-number-helper.js.map +1 -0
  170. package/cjs/core/style-helper.d.ts +3 -0
  171. package/cjs/core/style-helper.js +110 -0
  172. package/cjs/core/style-helper.js.map +1 -0
  173. package/cjs/core/style.d.ts +1 -0
  174. package/cjs/core/style.js +17 -0
  175. package/cjs/core/style.js.map +1 -0
  176. package/cjs/core/tableHelper.d.ts +45 -0
  177. package/cjs/core/tableHelper.js +287 -0
  178. package/cjs/core/tableHelper.js.map +1 -0
  179. package/cjs/core/utils/get-cell-position.d.ts +12 -0
  180. package/cjs/core/utils/get-cell-position.js +214 -0
  181. package/cjs/core/utils/get-cell-position.js.map +1 -0
  182. package/cjs/core/utils/get-custom-merge-cell-func.d.ts +2 -0
  183. package/cjs/core/utils/get-custom-merge-cell-func.js +14 -0
  184. package/cjs/core/utils/get-custom-merge-cell-func.js.map +1 -0
  185. package/cjs/core.d.ts +3 -0
  186. package/cjs/core.js +15 -0
  187. package/cjs/core.js.map +1 -0
  188. package/cjs/data/CachedDataSource.d.ts +36 -0
  189. package/cjs/data/CachedDataSource.js +259 -0
  190. package/cjs/data/CachedDataSource.js.map +1 -0
  191. package/cjs/data/DataSource.d.ts +129 -0
  192. package/cjs/data/DataSource.js +758 -0
  193. package/cjs/data/DataSource.js.map +1 -0
  194. package/cjs/data.d.ts +4 -0
  195. package/cjs/data.js +24 -0
  196. package/cjs/data.js.map +1 -0
  197. package/cjs/dataset/DataStatistics.d.ts +10 -0
  198. package/cjs/dataset/DataStatistics.js +81 -0
  199. package/cjs/dataset/DataStatistics.js.map +1 -0
  200. package/cjs/dataset/dataset-pivot-table.d.ts +60 -0
  201. package/cjs/dataset/dataset-pivot-table.js +349 -0
  202. package/cjs/dataset/dataset-pivot-table.js.map +1 -0
  203. package/cjs/dataset/dataset.d.ts +108 -0
  204. package/cjs/dataset/dataset.js +810 -0
  205. package/cjs/dataset/dataset.js.map +1 -0
  206. package/cjs/dataset/flatDataToObject.d.ts +46 -0
  207. package/cjs/dataset/flatDataToObject.js +133 -0
  208. package/cjs/dataset/flatDataToObject.js.map +1 -0
  209. package/cjs/edit/edit-manager.d.ts +19 -0
  210. package/cjs/edit/edit-manager.js +124 -0
  211. package/cjs/edit/edit-manager.js.map +1 -0
  212. package/cjs/edit/editors.d.ts +5 -0
  213. package/cjs/edit/editors.js +10 -0
  214. package/cjs/edit/editors.js.map +1 -0
  215. package/cjs/event/EventHandler.d.ts +47 -0
  216. package/cjs/event/EventHandler.js +128 -0
  217. package/cjs/event/EventHandler.js.map +1 -0
  218. package/cjs/event/EventTarget.d.ts +12 -0
  219. package/cjs/event/EventTarget.js +67 -0
  220. package/cjs/event/EventTarget.js.map +1 -0
  221. package/cjs/event/component/button.d.ts +2 -0
  222. package/cjs/event/component/button.js +21 -0
  223. package/cjs/event/component/button.js.map +1 -0
  224. package/cjs/event/drill.d.ts +5 -0
  225. package/cjs/event/drill.js +38 -0
  226. package/cjs/event/drill.js.map +1 -0
  227. package/cjs/event/event.d.ts +63 -0
  228. package/cjs/event/event.js +208 -0
  229. package/cjs/event/event.js.map +1 -0
  230. package/cjs/event/helper.d.ts +2 -0
  231. package/cjs/event/helper.js +35 -0
  232. package/cjs/event/helper.js.map +1 -0
  233. package/cjs/event/listener/container-dom.d.ts +2 -0
  234. package/cjs/event/listener/container-dom.js +343 -0
  235. package/cjs/event/listener/container-dom.js.map +1 -0
  236. package/cjs/event/listener/scroll-bar.d.ts +2 -0
  237. package/cjs/event/listener/scroll-bar.js +80 -0
  238. package/cjs/event/listener/scroll-bar.js.map +1 -0
  239. package/cjs/event/listener/table-group.d.ts +6 -0
  240. package/cjs/event/listener/table-group.js +519 -0
  241. package/cjs/event/listener/table-group.js.map +1 -0
  242. package/cjs/event/listener/touch.d.ts +2 -0
  243. package/cjs/event/listener/touch.js +84 -0
  244. package/cjs/event/listener/touch.js.map +1 -0
  245. package/cjs/event/media-click.d.ts +2 -0
  246. package/cjs/event/media-click.js +85 -0
  247. package/cjs/event/media-click.js.map +1 -0
  248. package/cjs/event/scroll.d.ts +20 -0
  249. package/cjs/event/scroll.js +92 -0
  250. package/cjs/event/scroll.js.map +1 -0
  251. package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.d.ts +2 -0
  252. package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.js +31 -0
  253. package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.js.map +1 -0
  254. package/cjs/event/self-event-listener/base-table/dropdown-menu.d.ts +2 -0
  255. package/cjs/event/self-event-listener/base-table/dropdown-menu.js +16 -0
  256. package/cjs/event/self-event-listener/base-table/dropdown-menu.js.map +1 -0
  257. package/cjs/event/self-event-listener/base-table/icon.d.ts +2 -0
  258. package/cjs/event/self-event-listener/base-table/icon.js +23 -0
  259. package/cjs/event/self-event-listener/base-table/icon.js.map +1 -0
  260. package/cjs/event/self-event-listener/base-table/right-button-click.d.ts +2 -0
  261. package/cjs/event/self-event-listener/base-table/right-button-click.js +25 -0
  262. package/cjs/event/self-event-listener/base-table/right-button-click.js.map +1 -0
  263. package/cjs/event/self-event-listener/list-table/checkbox.d.ts +3 -0
  264. package/cjs/event/self-event-listener/list-table/checkbox.js +124 -0
  265. package/cjs/event/self-event-listener/list-table/checkbox.js.map +1 -0
  266. package/cjs/event/self-event-listener/pivot-chart/axis-click.d.ts +2 -0
  267. package/cjs/event/self-event-listener/pivot-chart/axis-click.js +43 -0
  268. package/cjs/event/self-event-listener/pivot-chart/axis-click.js.map +1 -0
  269. package/cjs/event/self-event-listener/pivot-chart/axis-hover.d.ts +2 -0
  270. package/cjs/event/self-event-listener/pivot-chart/axis-hover.js +41 -0
  271. package/cjs/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -0
  272. package/cjs/event/self-event-listener/pivot-table/drill.d.ts +1 -0
  273. package/cjs/event/self-event-listener/pivot-table/drill.js +3 -0
  274. package/cjs/event/self-event-listener/pivot-table/drill.js.map +1 -0
  275. package/cjs/event/sparkline-event.d.ts +2 -0
  276. package/cjs/event/sparkline-event.js +27 -0
  277. package/cjs/event/sparkline-event.js.map +1 -0
  278. package/cjs/event/util.d.ts +20 -0
  279. package/cjs/event/util.js +46 -0
  280. package/cjs/event/util.js.map +1 -0
  281. package/cjs/header-helper/header-helper.d.ts +29 -0
  282. package/cjs/header-helper/header-helper.js +272 -0
  283. package/cjs/header-helper/header-helper.js.map +1 -0
  284. package/cjs/header-helper/style/CheckboxStyle.d.ts +42 -0
  285. package/cjs/header-helper/style/CheckboxStyle.js +104 -0
  286. package/cjs/header-helper/style/CheckboxStyle.js.map +1 -0
  287. package/cjs/header-helper/style/ImageStyle.d.ts +7 -0
  288. package/cjs/header-helper/style/ImageStyle.js +25 -0
  289. package/cjs/header-helper/style/ImageStyle.js.map +1 -0
  290. package/cjs/header-helper/style/MultilineTextHeaderStyle.d.ts +13 -0
  291. package/cjs/header-helper/style/MultilineTextHeaderStyle.js +38 -0
  292. package/cjs/header-helper/style/MultilineTextHeaderStyle.js.map +1 -0
  293. package/cjs/header-helper/style/SortHeaderStyle.d.ts +1 -0
  294. package/cjs/header-helper/style/SortHeaderStyle.js +3 -0
  295. package/cjs/header-helper/style/SortHeaderStyle.js.map +1 -0
  296. package/cjs/header-helper/style/Style.d.ts +95 -0
  297. package/cjs/header-helper/style/Style.js +226 -0
  298. package/cjs/header-helper/style/Style.js.map +1 -0
  299. package/cjs/header-helper/style.d.ts +6 -0
  300. package/cjs/header-helper/style.js +35 -0
  301. package/cjs/header-helper/style.js.map +1 -0
  302. package/cjs/icons.d.ts +5 -0
  303. package/cjs/icons.js +299 -0
  304. package/cjs/icons.js.map +1 -0
  305. package/cjs/index.d.ts +33 -0
  306. package/cjs/index.js +215 -0
  307. package/cjs/index.js.map +1 -0
  308. package/cjs/layout/cell-range/simple-cell-range.d.ts +4 -0
  309. package/cjs/layout/cell-range/simple-cell-range.js +148 -0
  310. package/cjs/layout/cell-range/simple-cell-range.js.map +1 -0
  311. package/cjs/layout/chart-helper/get-axis-config.d.ts +39 -0
  312. package/cjs/layout/chart-helper/get-axis-config.js +398 -0
  313. package/cjs/layout/chart-helper/get-axis-config.js.map +1 -0
  314. package/cjs/layout/chart-helper/get-axis-domain.d.ts +11 -0
  315. package/cjs/layout/chart-helper/get-axis-domain.js +49 -0
  316. package/cjs/layout/chart-helper/get-axis-domain.js.map +1 -0
  317. package/cjs/layout/chart-helper/get-chart-spec.d.ts +13 -0
  318. package/cjs/layout/chart-helper/get-chart-spec.js +287 -0
  319. package/cjs/layout/chart-helper/get-chart-spec.js.map +1 -0
  320. package/cjs/layout/chart-helper/tick-align.d.ts +12 -0
  321. package/cjs/layout/chart-helper/tick-align.js +23 -0
  322. package/cjs/layout/chart-helper/tick-align.js.map +1 -0
  323. package/cjs/layout/chart-helper/zero-align.d.ts +10 -0
  324. package/cjs/layout/chart-helper/zero-align.js +119 -0
  325. package/cjs/layout/chart-helper/zero-align.js.map +1 -0
  326. package/cjs/layout/index.d.ts +1 -0
  327. package/cjs/layout/index.js +14 -0
  328. package/cjs/layout/index.js.map +1 -0
  329. package/cjs/layout/layout-helper.d.ts +20 -0
  330. package/cjs/layout/layout-helper.js +154 -0
  331. package/cjs/layout/layout-helper.js.map +1 -0
  332. package/cjs/layout/pivot-header-layout.d.ts +279 -0
  333. package/cjs/layout/pivot-header-layout.js +1845 -0
  334. package/cjs/layout/pivot-header-layout.js.map +1 -0
  335. package/cjs/layout/pivot-layout.d.ts +1 -0
  336. package/cjs/layout/pivot-layout.js +1 -0
  337. package/cjs/layout/pivot-layout.js.map +1 -0
  338. package/cjs/layout/row-height-map.d.ts +34 -0
  339. package/cjs/layout/row-height-map.js +176 -0
  340. package/cjs/layout/row-height-map.js.map +1 -0
  341. package/cjs/layout/simple-header-layout.d.ts +153 -0
  342. package/cjs/layout/simple-header-layout.js +779 -0
  343. package/cjs/layout/simple-header-layout.js.map +1 -0
  344. package/cjs/layout/tree-helper.d.ts +71 -0
  345. package/cjs/layout/tree-helper.js +405 -0
  346. package/cjs/layout/tree-helper.js.map +1 -0
  347. package/cjs/plugins/chartModules.d.ts +3 -0
  348. package/cjs/plugins/chartModules.js +6 -0
  349. package/cjs/plugins/chartModules.js.map +1 -0
  350. package/cjs/plugins/custom-cell-style.d.ts +26 -0
  351. package/cjs/plugins/custom-cell-style.js +113 -0
  352. package/cjs/plugins/custom-cell-style.js.map +1 -0
  353. package/cjs/plugins/icons.d.ts +12 -0
  354. package/cjs/plugins/icons.js +26 -0
  355. package/cjs/plugins/icons.js.map +1 -0
  356. package/cjs/plugins/invert-highlight.d.ts +1 -0
  357. package/cjs/plugins/invert-highlight.js +23 -0
  358. package/cjs/plugins/invert-highlight.js.map +1 -0
  359. package/cjs/plugins/list-tree-stick-cell.d.ts +18 -0
  360. package/cjs/plugins/list-tree-stick-cell.js +180 -0
  361. package/cjs/plugins/list-tree-stick-cell.js.map +1 -0
  362. package/cjs/plugins/themes.d.ts +4 -0
  363. package/cjs/plugins/themes.js +6 -0
  364. package/cjs/plugins/themes.js.map +1 -0
  365. package/cjs/register.d.ts +15 -0
  366. package/cjs/register.js +45 -0
  367. package/cjs/register.js.map +1 -0
  368. package/cjs/render/jsx/index.d.ts +8 -0
  369. package/cjs/render/jsx/index.js +91 -0
  370. package/cjs/render/jsx/index.js.map +1 -0
  371. package/cjs/render/layout/arc.d.ts +12 -0
  372. package/cjs/render/layout/arc.js +18 -0
  373. package/cjs/render/layout/arc.js.map +1 -0
  374. package/cjs/render/layout/circle.d.ts +12 -0
  375. package/cjs/render/layout/circle.js +18 -0
  376. package/cjs/render/layout/circle.js.map +1 -0
  377. package/cjs/render/layout/container.d.ts +14 -0
  378. package/cjs/render/layout/container.js +27 -0
  379. package/cjs/render/layout/container.js.map +1 -0
  380. package/cjs/render/layout/direction.d.ts +22 -0
  381. package/cjs/render/layout/direction.js +35 -0
  382. package/cjs/render/layout/direction.js.map +1 -0
  383. package/cjs/render/layout/element.d.ts +43 -0
  384. package/cjs/render/layout/element.js +27 -0
  385. package/cjs/render/layout/element.js.map +1 -0
  386. package/cjs/render/layout/group-element.d.ts +5 -0
  387. package/cjs/render/layout/group-element.js +16 -0
  388. package/cjs/render/layout/group-element.js.map +1 -0
  389. package/cjs/render/layout/group.d.ts +12 -0
  390. package/cjs/render/layout/group.js +18 -0
  391. package/cjs/render/layout/group.js.map +1 -0
  392. package/cjs/render/layout/icon.d.ts +21 -0
  393. package/cjs/render/layout/icon.js +50 -0
  394. package/cjs/render/layout/icon.js.map +1 -0
  395. package/cjs/render/layout/image.d.ts +14 -0
  396. package/cjs/render/layout/image.js +19 -0
  397. package/cjs/render/layout/image.js.map +1 -0
  398. package/cjs/render/layout/index.d.ts +13 -0
  399. package/cjs/render/layout/index.js +41 -0
  400. package/cjs/render/layout/index.js.map +1 -0
  401. package/cjs/render/layout/line.d.ts +1 -0
  402. package/cjs/render/layout/line.js +15 -0
  403. package/cjs/render/layout/line.js.map +1 -0
  404. package/cjs/render/layout/percent-calc.d.ts +5 -0
  405. package/cjs/render/layout/percent-calc.js +13 -0
  406. package/cjs/render/layout/percent-calc.js.map +1 -0
  407. package/cjs/render/layout/rect.d.ts +12 -0
  408. package/cjs/render/layout/rect.js +18 -0
  409. package/cjs/render/layout/rect.js.map +1 -0
  410. package/cjs/render/layout/tag.d.ts +14 -0
  411. package/cjs/render/layout/tag.js +21 -0
  412. package/cjs/render/layout/tag.js.map +1 -0
  413. package/cjs/render/layout/text.d.ts +13 -0
  414. package/cjs/render/layout/text.js +23 -0
  415. package/cjs/render/layout/text.js.map +1 -0
  416. package/cjs/scenegraph/animation/appear.d.ts +2 -0
  417. package/cjs/scenegraph/animation/appear.js +26 -0
  418. package/cjs/scenegraph/animation/appear.js.map +1 -0
  419. package/cjs/scenegraph/component/cell-content.d.ts +36 -0
  420. package/cjs/scenegraph/component/cell-content.js +109 -0
  421. package/cjs/scenegraph/component/cell-content.js.map +1 -0
  422. package/cjs/scenegraph/component/cell-mover.d.ts +21 -0
  423. package/cjs/scenegraph/component/cell-mover.js +119 -0
  424. package/cjs/scenegraph/component/cell-mover.js.map +1 -0
  425. package/cjs/scenegraph/component/custom.d.ts +16 -0
  426. package/cjs/scenegraph/component/custom.js +309 -0
  427. package/cjs/scenegraph/component/custom.js.map +1 -0
  428. package/cjs/scenegraph/component/drill-icon.d.ts +9 -0
  429. package/cjs/scenegraph/component/drill-icon.js +70 -0
  430. package/cjs/scenegraph/component/drill-icon.js.map +1 -0
  431. package/cjs/scenegraph/component/menu.d.ts +41 -0
  432. package/cjs/scenegraph/component/menu.js +217 -0
  433. package/cjs/scenegraph/component/menu.js.map +1 -0
  434. package/cjs/scenegraph/component/table-component.d.ts +52 -0
  435. package/cjs/scenegraph/component/table-component.js +560 -0
  436. package/cjs/scenegraph/component/table-component.js.map +1 -0
  437. package/cjs/scenegraph/component/util.d.ts +3 -0
  438. package/cjs/scenegraph/component/util.js +18 -0
  439. package/cjs/scenegraph/component/util.js.map +1 -0
  440. package/cjs/scenegraph/debug-tool/debug-tool.d.ts +34 -0
  441. package/cjs/scenegraph/debug-tool/debug-tool.js +125 -0
  442. package/cjs/scenegraph/debug-tool/debug-tool.js.map +1 -0
  443. package/cjs/scenegraph/debug-tool/index.d.ts +4 -0
  444. package/cjs/scenegraph/debug-tool/index.js +14 -0
  445. package/cjs/scenegraph/debug-tool/index.js.map +1 -0
  446. package/cjs/scenegraph/graphic/chart.d.ts +47 -0
  447. package/cjs/scenegraph/graphic/chart.js +129 -0
  448. package/cjs/scenegraph/graphic/chart.js.map +1 -0
  449. package/cjs/scenegraph/graphic/contributions/chart-render-helper.d.ts +11 -0
  450. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +166 -0
  451. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -0
  452. package/cjs/scenegraph/graphic/contributions/chart-render.d.ts +11 -0
  453. package/cjs/scenegraph/graphic/contributions/chart-render.js +74 -0
  454. package/cjs/scenegraph/graphic/contributions/chart-render.js.map +1 -0
  455. package/cjs/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
  456. package/cjs/scenegraph/graphic/contributions/draw-interceptor.js +92 -0
  457. package/cjs/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
  458. package/cjs/scenegraph/graphic/contributions/group-contribution-render.d.ts +79 -0
  459. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +341 -0
  460. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -0
  461. package/cjs/scenegraph/graphic/contributions/image-contribution-render.d.ts +38 -0
  462. package/cjs/scenegraph/graphic/contributions/image-contribution-render.js +75 -0
  463. package/cjs/scenegraph/graphic/contributions/image-contribution-render.js.map +1 -0
  464. package/cjs/scenegraph/graphic/contributions/index.d.ts +3 -0
  465. package/cjs/scenegraph/graphic/contributions/index.js +46 -0
  466. package/cjs/scenegraph/graphic/contributions/index.js.map +1 -0
  467. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.d.ts +18 -0
  468. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +91 -0
  469. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -0
  470. package/cjs/scenegraph/graphic/contributions/text-contribution-render.d.ts +12 -0
  471. package/cjs/scenegraph/graphic/contributions/text-contribution-render.js +72 -0
  472. package/cjs/scenegraph/graphic/contributions/text-contribution-render.js.map +1 -0
  473. package/cjs/scenegraph/graphic/group.d.ts +37 -0
  474. package/cjs/scenegraph/graphic/group.js +135 -0
  475. package/cjs/scenegraph/graphic/group.js.map +1 -0
  476. package/cjs/scenegraph/graphic/icon.d.ts +47 -0
  477. package/cjs/scenegraph/graphic/icon.js +78 -0
  478. package/cjs/scenegraph/graphic/icon.js.map +1 -0
  479. package/cjs/scenegraph/graphic/mark.d.ts +4 -0
  480. package/cjs/scenegraph/graphic/mark.js +74 -0
  481. package/cjs/scenegraph/graphic/mark.js.map +1 -0
  482. package/cjs/scenegraph/graphic/text.d.ts +2 -0
  483. package/cjs/scenegraph/graphic/text.js +15 -0
  484. package/cjs/scenegraph/graphic/text.js.map +1 -0
  485. package/cjs/scenegraph/group-creater/cell-helper.d.ts +16 -0
  486. package/cjs/scenegraph/group-creater/cell-helper.js +325 -0
  487. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -0
  488. package/cjs/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
  489. package/cjs/scenegraph/group-creater/cell-type/button-cell.js +146 -0
  490. package/cjs/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
  491. package/cjs/scenegraph/group-creater/cell-type/chart-cell.d.ts +5 -0
  492. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +100 -0
  493. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -0
  494. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +6 -0
  495. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +143 -0
  496. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
  497. package/cjs/scenegraph/group-creater/cell-type/image-cell.d.ts +15 -0
  498. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +234 -0
  499. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -0
  500. package/cjs/scenegraph/group-creater/cell-type/index.d.ts +10 -0
  501. package/cjs/scenegraph/group-creater/cell-type/index.js +67 -0
  502. package/cjs/scenegraph/group-creater/cell-type/index.js.map +1 -0
  503. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.d.ts +11 -0
  504. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js +390 -0
  505. package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -0
  506. package/cjs/scenegraph/group-creater/cell-type/radio-cell.d.ts +6 -0
  507. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js +150 -0
  508. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -0
  509. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +5 -0
  510. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +201 -0
  511. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -0
  512. package/cjs/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
  513. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js +152 -0
  514. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
  515. package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +6 -0
  516. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +66 -0
  517. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -0
  518. package/cjs/scenegraph/group-creater/cell-type/video-cell.d.ts +6 -0
  519. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +139 -0
  520. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -0
  521. package/cjs/scenegraph/group-creater/column-helper.d.ts +14 -0
  522. package/cjs/scenegraph/group-creater/column-helper.js +142 -0
  523. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -0
  524. package/cjs/scenegraph/group-creater/column.d.ts +4 -0
  525. package/cjs/scenegraph/group-creater/column.js +31 -0
  526. package/cjs/scenegraph/group-creater/column.js.map +1 -0
  527. package/cjs/scenegraph/group-creater/init-scenegraph.d.ts +2 -0
  528. package/cjs/scenegraph/group-creater/init-scenegraph.js +58 -0
  529. package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -0
  530. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.d.ts +3 -0
  531. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +53 -0
  532. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -0
  533. package/cjs/scenegraph/group-creater/progress/default-width-height.d.ts +3 -0
  534. package/cjs/scenegraph/group-creater/progress/default-width-height.js +24 -0
  535. package/cjs/scenegraph/group-creater/progress/default-width-height.js.map +1 -0
  536. package/cjs/scenegraph/group-creater/progress/proxy.d.ts +79 -0
  537. package/cjs/scenegraph/group-creater/progress/proxy.js +341 -0
  538. package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -0
  539. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.d.ts +4 -0
  540. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +173 -0
  541. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -0
  542. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.d.ts +4 -0
  543. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +190 -0
  544. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -0
  545. package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.d.ts +2 -0
  546. package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.js +62 -0
  547. package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.js.map +1 -0
  548. package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.d.ts +2 -0
  549. package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.js +75 -0
  550. package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.js.map +1 -0
  551. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.d.ts +2 -0
  552. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.js +37 -0
  553. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.js.map +1 -0
  554. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.d.ts +2 -0
  555. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.js +47 -0
  556. package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.js.map +1 -0
  557. package/cjs/scenegraph/group-creater/progress/update-position/util.d.ts +8 -0
  558. package/cjs/scenegraph/group-creater/progress/update-position/util.js +98 -0
  559. package/cjs/scenegraph/group-creater/progress/update-position/util.js.map +1 -0
  560. package/cjs/scenegraph/icon/icon-update.d.ts +28 -0
  561. package/cjs/scenegraph/icon/icon-update.js +188 -0
  562. package/cjs/scenegraph/icon/icon-update.js.map +1 -0
  563. package/cjs/scenegraph/layout/compute-col-width.d.ts +4 -0
  564. package/cjs/scenegraph/layout/compute-col-width.js +344 -0
  565. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -0
  566. package/cjs/scenegraph/layout/compute-row-height.d.ts +3 -0
  567. package/cjs/scenegraph/layout/compute-row-height.js +335 -0
  568. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -0
  569. package/cjs/scenegraph/layout/frozen-react.d.ts +5 -0
  570. package/cjs/scenegraph/layout/frozen-react.js +91 -0
  571. package/cjs/scenegraph/layout/frozen-react.js.map +1 -0
  572. package/cjs/scenegraph/layout/frozen.d.ts +6 -0
  573. package/cjs/scenegraph/layout/frozen.js +330 -0
  574. package/cjs/scenegraph/layout/frozen.js.map +1 -0
  575. package/cjs/scenegraph/layout/height-util.d.ts +7 -0
  576. package/cjs/scenegraph/layout/height-util.js +127 -0
  577. package/cjs/scenegraph/layout/height-util.js.map +1 -0
  578. package/cjs/scenegraph/layout/move-cell.d.ts +2 -0
  579. package/cjs/scenegraph/layout/move-cell.js +50 -0
  580. package/cjs/scenegraph/layout/move-cell.js.map +1 -0
  581. package/cjs/scenegraph/layout/update-col.d.ts +3 -0
  582. package/cjs/scenegraph/layout/update-col.js +207 -0
  583. package/cjs/scenegraph/layout/update-col.js.map +1 -0
  584. package/cjs/scenegraph/layout/update-height.d.ts +6 -0
  585. package/cjs/scenegraph/layout/update-height.js +146 -0
  586. package/cjs/scenegraph/layout/update-height.js.map +1 -0
  587. package/cjs/scenegraph/layout/update-row.d.ts +3 -0
  588. package/cjs/scenegraph/layout/update-row.js +284 -0
  589. package/cjs/scenegraph/layout/update-row.js.map +1 -0
  590. package/cjs/scenegraph/layout/update-width.d.ts +2 -0
  591. package/cjs/scenegraph/layout/update-width.js +238 -0
  592. package/cjs/scenegraph/layout/update-width.js.map +1 -0
  593. package/cjs/scenegraph/refresh-node/update-chart.d.ts +7 -0
  594. package/cjs/scenegraph/refresh-node/update-chart.js +201 -0
  595. package/cjs/scenegraph/refresh-node/update-chart.js.map +1 -0
  596. package/cjs/scenegraph/scenegraph.d.ts +182 -0
  597. package/cjs/scenegraph/scenegraph.js +898 -0
  598. package/cjs/scenegraph/scenegraph.js.map +1 -0
  599. package/cjs/scenegraph/select/create-select-border.d.ts +3 -0
  600. package/cjs/scenegraph/select/create-select-border.js +60 -0
  601. package/cjs/scenegraph/select/create-select-border.js.map +1 -0
  602. package/cjs/scenegraph/select/delete-select-border.d.ts +5 -0
  603. package/cjs/scenegraph/select/delete-select-border.js +37 -0
  604. package/cjs/scenegraph/select/delete-select-border.js.map +1 -0
  605. package/cjs/scenegraph/select/move-select-border.d.ts +2 -0
  606. package/cjs/scenegraph/select/move-select-border.js +15 -0
  607. package/cjs/scenegraph/select/move-select-border.js.map +1 -0
  608. package/cjs/scenegraph/select/update-select-border.d.ts +8 -0
  609. package/cjs/scenegraph/select/update-select-border.js +272 -0
  610. package/cjs/scenegraph/select/update-select-border.js.map +1 -0
  611. package/cjs/scenegraph/select/update-select-style.d.ts +3 -0
  612. package/cjs/scenegraph/select/update-select-style.js +13 -0
  613. package/cjs/scenegraph/select/update-select-style.js.map +1 -0
  614. package/cjs/scenegraph/stick-text/index.d.ts +3 -0
  615. package/cjs/scenegraph/stick-text/index.js +189 -0
  616. package/cjs/scenegraph/stick-text/index.js.map +1 -0
  617. package/cjs/scenegraph/style/corner-cell.d.ts +3 -0
  618. package/cjs/scenegraph/style/corner-cell.js +28 -0
  619. package/cjs/scenegraph/style/corner-cell.js.map +1 -0
  620. package/cjs/scenegraph/style/frame-border.d.ts +8 -0
  621. package/cjs/scenegraph/style/frame-border.js +144 -0
  622. package/cjs/scenegraph/style/frame-border.js.map +1 -0
  623. package/cjs/scenegraph/utils/border-line.d.ts +8 -0
  624. package/cjs/scenegraph/utils/border-line.js +51 -0
  625. package/cjs/scenegraph/utils/border-line.js.map +1 -0
  626. package/cjs/scenegraph/utils/break-string.d.ts +5 -0
  627. package/cjs/scenegraph/utils/break-string.js +24 -0
  628. package/cjs/scenegraph/utils/break-string.js.map +1 -0
  629. package/cjs/scenegraph/utils/cell-border-stroke-width.d.ts +3 -0
  630. package/cjs/scenegraph/utils/cell-border-stroke-width.js +21 -0
  631. package/cjs/scenegraph/utils/cell-border-stroke-width.js.map +1 -0
  632. package/cjs/scenegraph/utils/cell-pos.d.ts +4 -0
  633. package/cjs/scenegraph/utils/cell-pos.js +18 -0
  634. package/cjs/scenegraph/utils/cell-pos.js.map +1 -0
  635. package/cjs/scenegraph/utils/deal-promise-data.d.ts +2 -0
  636. package/cjs/scenegraph/utils/deal-promise-data.js +12 -0
  637. package/cjs/scenegraph/utils/deal-promise-data.js.map +1 -0
  638. package/cjs/scenegraph/utils/empty-group.d.ts +2 -0
  639. package/cjs/scenegraph/utils/empty-group.js +10 -0
  640. package/cjs/scenegraph/utils/empty-group.js.map +1 -0
  641. package/cjs/scenegraph/utils/font.d.ts +1 -0
  642. package/cjs/scenegraph/utils/font.js +20 -0
  643. package/cjs/scenegraph/utils/font.js.map +1 -0
  644. package/cjs/scenegraph/utils/get-cell-merge.d.ts +3 -0
  645. package/cjs/scenegraph/utils/get-cell-merge.js +17 -0
  646. package/cjs/scenegraph/utils/get-cell-merge.js.map +1 -0
  647. package/cjs/scenegraph/utils/get-hierarchy-offset.d.ts +2 -0
  648. package/cjs/scenegraph/utils/get-hierarchy-offset.js +27 -0
  649. package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -0
  650. package/cjs/scenegraph/utils/get-prop.d.ts +4 -0
  651. package/cjs/scenegraph/utils/get-prop.js +44 -0
  652. package/cjs/scenegraph/utils/get-prop.js.map +1 -0
  653. package/cjs/scenegraph/utils/icon.d.ts +12 -0
  654. package/cjs/scenegraph/utils/icon.js +35 -0
  655. package/cjs/scenegraph/utils/icon.js.map +1 -0
  656. package/cjs/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
  657. package/cjs/scenegraph/utils/is-merge-cell-group.js +16 -0
  658. package/cjs/scenegraph/utils/is-merge-cell-group.js.map +1 -0
  659. package/cjs/scenegraph/utils/keep-aspect-ratio.d.ts +4 -0
  660. package/cjs/scenegraph/utils/keep-aspect-ratio.js +17 -0
  661. package/cjs/scenegraph/utils/keep-aspect-ratio.js.map +1 -0
  662. package/cjs/scenegraph/utils/padding.d.ts +6 -0
  663. package/cjs/scenegraph/utils/padding.js +21 -0
  664. package/cjs/scenegraph/utils/padding.js.map +1 -0
  665. package/cjs/scenegraph/utils/render-service.d.ts +7 -0
  666. package/cjs/scenegraph/utils/render-service.js +27 -0
  667. package/cjs/scenegraph/utils/render-service.js.map +1 -0
  668. package/cjs/scenegraph/utils/text-icon-layout.d.ts +29 -0
  669. package/cjs/scenegraph/utils/text-icon-layout.js +335 -0
  670. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -0
  671. package/cjs/scenegraph/utils/text-measure.d.ts +38 -0
  672. package/cjs/scenegraph/utils/text-measure.js +166 -0
  673. package/cjs/scenegraph/utils/text-measure.js.map +1 -0
  674. package/cjs/scenegraph/utils/text-pos.d.ts +8 -0
  675. package/cjs/scenegraph/utils/text-pos.js +27 -0
  676. package/cjs/scenegraph/utils/text-pos.js.map +1 -0
  677. package/cjs/scenegraph/utils/update-container.d.ts +2 -0
  678. package/cjs/scenegraph/utils/update-container.js +12 -0
  679. package/cjs/scenegraph/utils/update-container.js.map +1 -0
  680. package/cjs/state/cell-move/adjust-header.d.ts +3 -0
  681. package/cjs/state/cell-move/adjust-header.js +26 -0
  682. package/cjs/state/cell-move/adjust-header.js.map +1 -0
  683. package/cjs/state/cell-move/index.d.ts +4 -0
  684. package/cjs/state/cell-move/index.js +112 -0
  685. package/cjs/state/cell-move/index.js.map +1 -0
  686. package/cjs/state/checkbox/checkbox.d.ts +12 -0
  687. package/cjs/state/checkbox/checkbox.js +210 -0
  688. package/cjs/state/checkbox/checkbox.js.map +1 -0
  689. package/cjs/state/common/check-in-select.d.ts +7 -0
  690. package/cjs/state/common/check-in-select.js +63 -0
  691. package/cjs/state/common/check-in-select.js.map +1 -0
  692. package/cjs/state/drill/index.d.ts +2 -0
  693. package/cjs/state/drill/index.js +15 -0
  694. package/cjs/state/drill/index.js.map +1 -0
  695. package/cjs/state/frozen/index.d.ts +2 -0
  696. package/cjs/state/frozen/index.js +10 -0
  697. package/cjs/state/frozen/index.js.map +1 -0
  698. package/cjs/state/hover/col.d.ts +4 -0
  699. package/cjs/state/hover/col.js +24 -0
  700. package/cjs/state/hover/col.js.map +1 -0
  701. package/cjs/state/hover/is-cell-hover.d.ts +5 -0
  702. package/cjs/state/hover/is-cell-hover.js +49 -0
  703. package/cjs/state/hover/is-cell-hover.js.map +1 -0
  704. package/cjs/state/hover/row.d.ts +4 -0
  705. package/cjs/state/hover/row.js +22 -0
  706. package/cjs/state/hover/row.js.map +1 -0
  707. package/cjs/state/hover/single.d.ts +4 -0
  708. package/cjs/state/hover/single.js +18 -0
  709. package/cjs/state/hover/single.js.map +1 -0
  710. package/cjs/state/hover/update-cell.d.ts +2 -0
  711. package/cjs/state/hover/update-cell.js +24 -0
  712. package/cjs/state/hover/update-cell.js.map +1 -0
  713. package/cjs/state/hover/update-position.d.ts +2 -0
  714. package/cjs/state/hover/update-position.js +44 -0
  715. package/cjs/state/hover/update-position.js.map +1 -0
  716. package/cjs/state/radio/radio.d.ts +7 -0
  717. package/cjs/state/radio/radio.js +96 -0
  718. package/cjs/state/radio/radio.js.map +1 -0
  719. package/cjs/state/resize/update-resize-column.d.ts +2 -0
  720. package/cjs/state/resize/update-resize-column.js +85 -0
  721. package/cjs/state/resize/update-resize-column.js.map +1 -0
  722. package/cjs/state/resize/update-resize-row.d.ts +2 -0
  723. package/cjs/state/resize/update-resize-row.js +64 -0
  724. package/cjs/state/resize/update-resize-row.js.map +1 -0
  725. package/cjs/state/select/custom-select.d.ts +7 -0
  726. package/cjs/state/select/custom-select.js +36 -0
  727. package/cjs/state/select/custom-select.js.map +1 -0
  728. package/cjs/state/select/is-cell-select-highlight.d.ts +6 -0
  729. package/cjs/state/select/is-cell-select-highlight.js +88 -0
  730. package/cjs/state/select/is-cell-select-highlight.js.map +1 -0
  731. package/cjs/state/select/update-position.d.ts +4 -0
  732. package/cjs/state/select/update-position.js +308 -0
  733. package/cjs/state/select/update-position.js.map +1 -0
  734. package/cjs/state/sort/index.d.ts +2 -0
  735. package/cjs/state/sort/index.js +56 -0
  736. package/cjs/state/sort/index.js.map +1 -0
  737. package/cjs/state/spark-line/index.d.ts +3 -0
  738. package/cjs/state/spark-line/index.js +102 -0
  739. package/cjs/state/spark-line/index.js.map +1 -0
  740. package/cjs/state/state.d.ts +206 -0
  741. package/cjs/state/state.js +796 -0
  742. package/cjs/state/state.js.map +1 -0
  743. package/cjs/themes/ARCO.d.ts +3 -0
  744. package/cjs/themes/ARCO.js +113 -0
  745. package/cjs/themes/ARCO.js.map +1 -0
  746. package/cjs/themes/BRIGHT.d.ts +3 -0
  747. package/cjs/themes/BRIGHT.js +70 -0
  748. package/cjs/themes/BRIGHT.js.map +1 -0
  749. package/cjs/themes/DARK.d.ts +3 -0
  750. package/cjs/themes/DARK.js +103 -0
  751. package/cjs/themes/DARK.js.map +1 -0
  752. package/cjs/themes/DEFAULT.d.ts +3 -0
  753. package/cjs/themes/DEFAULT.js +86 -0
  754. package/cjs/themes/DEFAULT.js.map +1 -0
  755. package/cjs/themes/SIMPLIFY.d.ts +3 -0
  756. package/cjs/themes/SIMPLIFY.js +53 -0
  757. package/cjs/themes/SIMPLIFY.js.map +1 -0
  758. package/cjs/themes/component.d.ts +35 -0
  759. package/cjs/themes/component.js +47 -0
  760. package/cjs/themes/component.js.map +1 -0
  761. package/cjs/themes/theme.d.ts +67 -0
  762. package/cjs/themes/theme.js +777 -0
  763. package/cjs/themes/theme.js.map +1 -0
  764. package/cjs/themes.d.ts +28 -0
  765. package/cjs/themes.js +57 -0
  766. package/cjs/themes.js.map +1 -0
  767. package/cjs/tools/LimitPromiseQueue.d.ts +8 -0
  768. package/cjs/tools/LimitPromiseQueue.js +29 -0
  769. package/cjs/tools/LimitPromiseQueue.js.map +1 -0
  770. package/cjs/tools/NumberMap.d.ts +23 -0
  771. package/cjs/tools/NumberMap.js +123 -0
  772. package/cjs/tools/NumberMap.js.map +1 -0
  773. package/cjs/tools/Rect.d.ts +24 -0
  774. package/cjs/tools/Rect.js +70 -0
  775. package/cjs/tools/Rect.js.map +1 -0
  776. package/cjs/tools/calc.d.ts +8 -0
  777. package/cjs/tools/calc.js +205 -0
  778. package/cjs/tools/calc.js.map +1 -0
  779. package/cjs/tools/cell-range.d.ts +2 -0
  780. package/cjs/tools/cell-range.js +10 -0
  781. package/cjs/tools/cell-range.js.map +1 -0
  782. package/cjs/tools/debounce.d.ts +1 -0
  783. package/cjs/tools/debounce.js +51 -0
  784. package/cjs/tools/debounce.js.map +1 -0
  785. package/cjs/tools/diff-cell.d.ts +72 -0
  786. package/cjs/tools/diff-cell.js +170 -0
  787. package/cjs/tools/diff-cell.js.map +1 -0
  788. package/cjs/tools/dom.d.ts +1 -0
  789. package/cjs/tools/dom.js +11 -0
  790. package/cjs/tools/dom.js.map +1 -0
  791. package/cjs/tools/env.d.ts +19 -0
  792. package/cjs/tools/env.js +48 -0
  793. package/cjs/tools/env.js.map +1 -0
  794. package/cjs/tools/get-data-path/create-dataset.d.ts +11 -0
  795. package/cjs/tools/get-data-path/create-dataset.js +149 -0
  796. package/cjs/tools/get-data-path/create-dataset.js.map +1 -0
  797. package/cjs/tools/get-data-path/index.d.ts +2 -0
  798. package/cjs/tools/get-data-path/index.js +51 -0
  799. package/cjs/tools/get-data-path/index.js.map +1 -0
  800. package/cjs/tools/global.d.ts +15 -0
  801. package/cjs/tools/global.js +15 -0
  802. package/cjs/tools/global.js.map +1 -0
  803. package/cjs/tools/helper.d.ts +72 -0
  804. package/cjs/tools/helper.js +228 -0
  805. package/cjs/tools/helper.js.map +1 -0
  806. package/cjs/tools/icons.d.ts +4 -0
  807. package/cjs/tools/icons.js +10 -0
  808. package/cjs/tools/icons.js.map +1 -0
  809. package/cjs/tools/isx.d.ts +16 -0
  810. package/cjs/tools/isx.js +117 -0
  811. package/cjs/tools/isx.js.map +1 -0
  812. package/cjs/tools/join.d.ts +1 -0
  813. package/cjs/tools/join.js +12 -0
  814. package/cjs/tools/join.js.map +1 -0
  815. package/cjs/tools/merge-range.d.ts +11 -0
  816. package/cjs/tools/merge-range.js +35 -0
  817. package/cjs/tools/merge-range.js.map +1 -0
  818. package/cjs/tools/pixel-ratio.d.ts +2 -0
  819. package/cjs/tools/pixel-ratio.js +16 -0
  820. package/cjs/tools/pixel-ratio.js.map +1 -0
  821. package/cjs/tools/sort.d.ts +2 -0
  822. package/cjs/tools/sort.js +18 -0
  823. package/cjs/tools/sort.js.map +1 -0
  824. package/cjs/tools/style.d.ts +5 -0
  825. package/cjs/tools/style.js +30 -0
  826. package/cjs/tools/style.js.map +1 -0
  827. package/cjs/tools/update-row.d.ts +19 -0
  828. package/cjs/tools/update-row.js +38 -0
  829. package/cjs/tools/update-row.js.map +1 -0
  830. package/cjs/tools/util.d.ts +46 -0
  831. package/cjs/tools/util.js +279 -0
  832. package/cjs/tools/util.js.map +1 -0
  833. package/cjs/ts-types/animation/appear.d.ts +11 -0
  834. package/cjs/ts-types/animation/appear.js +6 -0
  835. package/cjs/ts-types/animation/appear.js.map +1 -0
  836. package/cjs/ts-types/animation/index.d.ts +1 -0
  837. package/cjs/ts-types/animation/index.js +21 -0
  838. package/cjs/ts-types/animation/index.js.map +1 -0
  839. package/cjs/ts-types/base-table.d.ts +641 -0
  840. package/cjs/ts-types/base-table.js +6 -0
  841. package/cjs/ts-types/base-table.js.map +1 -0
  842. package/cjs/ts-types/column/index.d.ts +2 -0
  843. package/cjs/ts-types/column/index.js +21 -0
  844. package/cjs/ts-types/column/index.js.map +1 -0
  845. package/cjs/ts-types/column/style.d.ts +151 -0
  846. package/cjs/ts-types/column/style.js +6 -0
  847. package/cjs/ts-types/column/style.js.map +1 -0
  848. package/cjs/ts-types/column/type.d.ts +2 -0
  849. package/cjs/ts-types/column/type.js +6 -0
  850. package/cjs/ts-types/column/type.js.map +1 -0
  851. package/cjs/ts-types/common.d.ts +114 -0
  852. package/cjs/ts-types/common.js +14 -0
  853. package/cjs/ts-types/common.js.map +1 -0
  854. package/cjs/ts-types/component/axis.d.ts +2 -0
  855. package/cjs/ts-types/component/axis.js +6 -0
  856. package/cjs/ts-types/component/axis.js.map +1 -0
  857. package/cjs/ts-types/component/empty-tip.d.ts +20 -0
  858. package/cjs/ts-types/component/empty-tip.js +6 -0
  859. package/cjs/ts-types/component/empty-tip.js.map +1 -0
  860. package/cjs/ts-types/component/index.d.ts +1 -0
  861. package/cjs/ts-types/component/index.js +21 -0
  862. package/cjs/ts-types/component/index.js.map +1 -0
  863. package/cjs/ts-types/component/legend.d.ts +18 -0
  864. package/cjs/ts-types/component/legend.js +6 -0
  865. package/cjs/ts-types/component/legend.js.map +1 -0
  866. package/cjs/ts-types/component/title.d.ts +49 -0
  867. package/cjs/ts-types/component/title.js +6 -0
  868. package/cjs/ts-types/component/title.js.map +1 -0
  869. package/cjs/ts-types/component/util.d.ts +1 -0
  870. package/cjs/ts-types/component/util.js +6 -0
  871. package/cjs/ts-types/component/util.js.map +1 -0
  872. package/cjs/ts-types/customElement.d.ts +128 -0
  873. package/cjs/ts-types/customElement.js +6 -0
  874. package/cjs/ts-types/customElement.js.map +1 -0
  875. package/cjs/ts-types/customLayout.d.ts +9 -0
  876. package/cjs/ts-types/customLayout.js +6 -0
  877. package/cjs/ts-types/customLayout.js.map +1 -0
  878. package/cjs/ts-types/dataset/aggregation.d.ts +192 -0
  879. package/cjs/ts-types/dataset/aggregation.js +423 -0
  880. package/cjs/ts-types/dataset/aggregation.js.map +1 -0
  881. package/cjs/ts-types/dataset/index.d.ts +1 -0
  882. package/cjs/ts-types/dataset/index.js +21 -0
  883. package/cjs/ts-types/dataset/index.js.map +1 -0
  884. package/cjs/ts-types/events.d.ts +363 -0
  885. package/cjs/ts-types/events.js +6 -0
  886. package/cjs/ts-types/events.js.map +1 -0
  887. package/cjs/ts-types/icon.d.ts +93 -0
  888. package/cjs/ts-types/icon.js +28 -0
  889. package/cjs/ts-types/icon.js.map +1 -0
  890. package/cjs/ts-types/index.d.ts +17 -0
  891. package/cjs/ts-types/index.js +29 -0
  892. package/cjs/ts-types/index.js.map +1 -0
  893. package/cjs/ts-types/list-table/define/basic-define.d.ts +50 -0
  894. package/cjs/ts-types/list-table/define/basic-define.js +6 -0
  895. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -0
  896. package/cjs/ts-types/list-table/define/button-define.d.ts +9 -0
  897. package/cjs/ts-types/list-table/define/button-define.js +6 -0
  898. package/cjs/ts-types/list-table/define/button-define.js.map +1 -0
  899. package/cjs/ts-types/list-table/define/chart-define.d.ts +11 -0
  900. package/cjs/ts-types/list-table/define/chart-define.js +6 -0
  901. package/cjs/ts-types/list-table/define/chart-define.js.map +1 -0
  902. package/cjs/ts-types/list-table/define/checkbox-define.d.ts +15 -0
  903. package/cjs/ts-types/list-table/define/checkbox-define.js +6 -0
  904. package/cjs/ts-types/list-table/define/checkbox-define.js.map +1 -0
  905. package/cjs/ts-types/list-table/define/composite-define.d.ts +26 -0
  906. package/cjs/ts-types/list-table/define/composite-define.js +6 -0
  907. package/cjs/ts-types/list-table/define/composite-define.js.map +1 -0
  908. package/cjs/ts-types/list-table/define/image-define.d.ts +17 -0
  909. package/cjs/ts-types/list-table/define/image-define.js +6 -0
  910. package/cjs/ts-types/list-table/define/image-define.js.map +1 -0
  911. package/cjs/ts-types/list-table/define/index.d.ts +31 -0
  912. package/cjs/ts-types/list-table/define/index.js +6 -0
  913. package/cjs/ts-types/list-table/define/index.js.map +1 -0
  914. package/cjs/ts-types/list-table/define/link-define.d.ts +22 -0
  915. package/cjs/ts-types/list-table/define/link-define.js +6 -0
  916. package/cjs/ts-types/list-table/define/link-define.js.map +1 -0
  917. package/cjs/ts-types/list-table/define/multilinetext-define.d.ts +11 -0
  918. package/cjs/ts-types/list-table/define/multilinetext-define.js +6 -0
  919. package/cjs/ts-types/list-table/define/multilinetext-define.js.map +1 -0
  920. package/cjs/ts-types/list-table/define/progressbar-define.d.ts +11 -0
  921. package/cjs/ts-types/list-table/define/progressbar-define.js +6 -0
  922. package/cjs/ts-types/list-table/define/progressbar-define.js.map +1 -0
  923. package/cjs/ts-types/list-table/define/radio-define.d.ts +11 -0
  924. package/cjs/ts-types/list-table/define/radio-define.js +6 -0
  925. package/cjs/ts-types/list-table/define/radio-define.js.map +1 -0
  926. package/cjs/ts-types/list-table/define/sparkline-define.d.ts +10 -0
  927. package/cjs/ts-types/list-table/define/sparkline-define.js +6 -0
  928. package/cjs/ts-types/list-table/define/sparkline-define.js.map +1 -0
  929. package/cjs/ts-types/list-table/define/switch-define.d.ts +11 -0
  930. package/cjs/ts-types/list-table/define/switch-define.js +6 -0
  931. package/cjs/ts-types/list-table/define/switch-define.js.map +1 -0
  932. package/cjs/ts-types/list-table/index.d.ts +2 -0
  933. package/cjs/ts-types/list-table/index.js +21 -0
  934. package/cjs/ts-types/list-table/index.js.map +1 -0
  935. package/cjs/ts-types/list-table/layout-map/api.d.ts +126 -0
  936. package/cjs/ts-types/list-table/layout-map/api.js +6 -0
  937. package/cjs/ts-types/list-table/layout-map/api.js.map +1 -0
  938. package/cjs/ts-types/list-table/layout-map/index.d.ts +1 -0
  939. package/cjs/ts-types/list-table/layout-map/index.js +6 -0
  940. package/cjs/ts-types/list-table/layout-map/index.js.map +1 -0
  941. package/cjs/ts-types/menu.d.ts +74 -0
  942. package/cjs/ts-types/menu.js +6 -0
  943. package/cjs/ts-types/menu.js.map +1 -0
  944. package/cjs/ts-types/new-data-set.d.ts +158 -0
  945. package/cjs/ts-types/new-data-set.js +16 -0
  946. package/cjs/ts-types/new-data-set.js.map +1 -0
  947. package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.d.ts +10 -0
  948. package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js +15 -0
  949. package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js.map +1 -0
  950. package/cjs/ts-types/pivot-table/corner.d.ts +37 -0
  951. package/cjs/ts-types/pivot-table/corner.js +6 -0
  952. package/cjs/ts-types/pivot-table/corner.js.map +1 -0
  953. package/cjs/ts-types/pivot-table/dimension/basic-dimension.d.ts +43 -0
  954. package/cjs/ts-types/pivot-table/dimension/basic-dimension.js +6 -0
  955. package/cjs/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -0
  956. package/cjs/ts-types/pivot-table/dimension/image-dimension.d.ts +10 -0
  957. package/cjs/ts-types/pivot-table/dimension/image-dimension.js +6 -0
  958. package/cjs/ts-types/pivot-table/dimension/image-dimension.js.map +1 -0
  959. package/cjs/ts-types/pivot-table/dimension/index.d.ts +6 -0
  960. package/cjs/ts-types/pivot-table/dimension/index.js +6 -0
  961. package/cjs/ts-types/pivot-table/dimension/index.js.map +1 -0
  962. package/cjs/ts-types/pivot-table/dimension/link-dimension.d.ts +13 -0
  963. package/cjs/ts-types/pivot-table/dimension/link-dimension.js +6 -0
  964. package/cjs/ts-types/pivot-table/dimension/link-dimension.js.map +1 -0
  965. package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.d.ts +7 -0
  966. package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.js +6 -0
  967. package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.js.map +1 -0
  968. package/cjs/ts-types/pivot-table/index.d.ts +4 -0
  969. package/cjs/ts-types/pivot-table/index.js +22 -0
  970. package/cjs/ts-types/pivot-table/index.js.map +1 -0
  971. package/cjs/ts-types/pivot-table/indicator/basic-indicator.d.ts +51 -0
  972. package/cjs/ts-types/pivot-table/indicator/basic-indicator.js +6 -0
  973. package/cjs/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -0
  974. package/cjs/ts-types/pivot-table/indicator/chart-indicator.d.ts +11 -0
  975. package/cjs/ts-types/pivot-table/indicator/chart-indicator.js +6 -0
  976. package/cjs/ts-types/pivot-table/indicator/chart-indicator.js.map +1 -0
  977. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
  978. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js +6 -0
  979. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
  980. package/cjs/ts-types/pivot-table/indicator/composite-indicator.d.ts +24 -0
  981. package/cjs/ts-types/pivot-table/indicator/composite-indicator.js +6 -0
  982. package/cjs/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -0
  983. package/cjs/ts-types/pivot-table/indicator/image-indicator.d.ts +17 -0
  984. package/cjs/ts-types/pivot-table/indicator/image-indicator.js +6 -0
  985. package/cjs/ts-types/pivot-table/indicator/image-indicator.js.map +1 -0
  986. package/cjs/ts-types/pivot-table/indicator/index.d.ts +12 -0
  987. package/cjs/ts-types/pivot-table/indicator/index.js +6 -0
  988. package/cjs/ts-types/pivot-table/indicator/index.js.map +1 -0
  989. package/cjs/ts-types/pivot-table/indicator/link-indicator.d.ts +22 -0
  990. package/cjs/ts-types/pivot-table/indicator/link-indicator.js +6 -0
  991. package/cjs/ts-types/pivot-table/indicator/link-indicator.js.map +1 -0
  992. package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.d.ts +11 -0
  993. package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.js +6 -0
  994. package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.js.map +1 -0
  995. package/cjs/ts-types/pivot-table/indicator/progress-indicator.d.ts +11 -0
  996. package/cjs/ts-types/pivot-table/indicator/progress-indicator.js +6 -0
  997. package/cjs/ts-types/pivot-table/indicator/progress-indicator.js.map +1 -0
  998. package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.d.ts +10 -0
  999. package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.js +6 -0
  1000. package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.js.map +1 -0
  1001. package/cjs/ts-types/pivot-table/title.d.ts +20 -0
  1002. package/cjs/ts-types/pivot-table/title.js +6 -0
  1003. package/cjs/ts-types/pivot-table/title.js.map +1 -0
  1004. package/cjs/ts-types/sparkline.d.ts +37 -0
  1005. package/cjs/ts-types/sparkline.js +6 -0
  1006. package/cjs/ts-types/sparkline.js.map +1 -0
  1007. package/cjs/ts-types/style-define.d.ts +72 -0
  1008. package/cjs/ts-types/style-define.js +6 -0
  1009. package/cjs/ts-types/style-define.js.map +1 -0
  1010. package/cjs/ts-types/table-engine.d.ts +405 -0
  1011. package/cjs/ts-types/table-engine.js +13 -0
  1012. package/cjs/ts-types/table-engine.js.map +1 -0
  1013. package/cjs/ts-types/theme.d.ts +164 -0
  1014. package/cjs/ts-types/theme.js +6 -0
  1015. package/cjs/ts-types/theme.js.map +1 -0
  1016. package/cjs/ts-types/tooltip.d.ts +26 -0
  1017. package/cjs/ts-types/tooltip.js +6 -0
  1018. package/cjs/ts-types/tooltip.js.map +1 -0
  1019. package/cjs/vrender.d.ts +8 -0
  1020. package/cjs/vrender.js +61 -0
  1021. package/cjs/vrender.js.map +1 -0
  1022. package/dist/vtable.js +83482 -0
  1023. package/dist/vtable.min.js +15 -0
  1024. package/es/ListTable-all.d.ts +3 -0
  1025. package/es/ListTable-all.js +17 -0
  1026. package/es/ListTable-all.js.map +1 -0
  1027. package/es/ListTable-simple.d.ts +3 -0
  1028. package/es/ListTable-simple.js +8 -0
  1029. package/es/ListTable-simple.js.map +1 -0
  1030. package/es/ListTable.d.ts +101 -0
  1031. package/es/ListTable.js +675 -0
  1032. package/es/ListTable.js.map +1 -0
  1033. package/es/PivotChart.d.ts +100 -0
  1034. package/es/PivotChart.js +773 -0
  1035. package/es/PivotChart.js.map +1 -0
  1036. package/es/PivotTable-all.d.ts +3 -0
  1037. package/es/PivotTable-all.js +13 -0
  1038. package/es/PivotTable-all.js.map +1 -0
  1039. package/es/PivotTable-simple.d.ts +3 -0
  1040. package/es/PivotTable-simple.js +8 -0
  1041. package/es/PivotTable-simple.js.map +1 -0
  1042. package/es/PivotTable.d.ts +112 -0
  1043. package/es/PivotTable.js +985 -0
  1044. package/es/PivotTable.js.map +1 -0
  1045. package/es/body-helper/body-helper.d.ts +20 -0
  1046. package/es/body-helper/body-helper.js +112 -0
  1047. package/es/body-helper/body-helper.js.map +1 -0
  1048. package/es/body-helper/style/ButtonStyle.d.ts +45 -0
  1049. package/es/body-helper/style/ButtonStyle.js +102 -0
  1050. package/es/body-helper/style/ButtonStyle.js.map +1 -0
  1051. package/es/body-helper/style/CheckboxStyle.d.ts +42 -0
  1052. package/es/body-helper/style/CheckboxStyle.js +96 -0
  1053. package/es/body-helper/style/CheckboxStyle.js.map +1 -0
  1054. package/es/body-helper/style/ImageStyle.d.ts +7 -0
  1055. package/es/body-helper/style/ImageStyle.js +16 -0
  1056. package/es/body-helper/style/ImageStyle.js.map +1 -0
  1057. package/es/body-helper/style/MultilineTextStyle.d.ts +13 -0
  1058. package/es/body-helper/style/MultilineTextStyle.js +30 -0
  1059. package/es/body-helper/style/MultilineTextStyle.js.map +1 -0
  1060. package/es/body-helper/style/NumberStyle.d.ts +7 -0
  1061. package/es/body-helper/style/NumberStyle.js +16 -0
  1062. package/es/body-helper/style/NumberStyle.js.map +1 -0
  1063. package/es/body-helper/style/ProgressBarStyle.d.ts +55 -0
  1064. package/es/body-helper/style/ProgressBarStyle.js +131 -0
  1065. package/es/body-helper/style/ProgressBarStyle.js.map +1 -0
  1066. package/es/body-helper/style/RadioStyle.d.ts +45 -0
  1067. package/es/body-helper/style/RadioStyle.js +103 -0
  1068. package/es/body-helper/style/RadioStyle.js.map +1 -0
  1069. package/es/body-helper/style/Style.d.ts +95 -0
  1070. package/es/body-helper/style/Style.js +219 -0
  1071. package/es/body-helper/style/Style.js.map +1 -0
  1072. package/es/body-helper/style/SwitchStyle.d.ts +36 -0
  1073. package/es/body-helper/style/SwitchStyle.js +82 -0
  1074. package/es/body-helper/style/SwitchStyle.js.map +1 -0
  1075. package/es/body-helper/style.d.ts +11 -0
  1076. package/es/body-helper/style.js +28 -0
  1077. package/es/body-helper/style.js.map +1 -0
  1078. package/es/chartModule.d.ts +3 -0
  1079. package/es/chartModule.js +10 -0
  1080. package/es/chartModule.js.map +1 -0
  1081. package/es/components/axis/axis.d.ts +52 -0
  1082. package/es/components/axis/axis.js +198 -0
  1083. package/es/components/axis/axis.js.map +1 -0
  1084. package/es/components/axis/band-scale.d.ts +18 -0
  1085. package/es/components/axis/band-scale.js +46 -0
  1086. package/es/components/axis/band-scale.js.map +1 -0
  1087. package/es/components/axis/get-axis-attributes.d.ts +146 -0
  1088. package/es/components/axis/get-axis-attributes.js +200 -0
  1089. package/es/components/axis/get-axis-attributes.js.map +1 -0
  1090. package/es/components/axis/get-axis-component-size.d.ts +6 -0
  1091. package/es/components/axis/get-axis-component-size.js +128 -0
  1092. package/es/components/axis/get-axis-component-size.js.map +1 -0
  1093. package/es/components/axis/label-overlap.d.ts +3 -0
  1094. package/es/components/axis/label-overlap.js +57 -0
  1095. package/es/components/axis/label-overlap.js.map +1 -0
  1096. package/es/components/axis/linear-scale.d.ts +48 -0
  1097. package/es/components/axis/linear-scale.js +115 -0
  1098. package/es/components/axis/linear-scale.js.map +1 -0
  1099. package/es/components/empty-tip/empty-tip.d.ts +25 -0
  1100. package/es/components/empty-tip/empty-tip.js +98 -0
  1101. package/es/components/empty-tip/empty-tip.js.map +1 -0
  1102. package/es/components/index.d.ts +6 -0
  1103. package/es/components/index.js +44 -0
  1104. package/es/components/index.js.map +1 -0
  1105. package/es/components/legend/continue-legend/continue-legend.d.ts +24 -0
  1106. package/es/components/legend/continue-legend/continue-legend.js +96 -0
  1107. package/es/components/legend/continue-legend/continue-legend.js.map +1 -0
  1108. package/es/components/legend/continue-legend/get-continue-legend-attributes.d.ts +5 -0
  1109. package/es/components/legend/continue-legend/get-continue-legend-attributes.js +132 -0
  1110. package/es/components/legend/continue-legend/get-continue-legend-attributes.js.map +1 -0
  1111. package/es/components/legend/create-legend.d.ts +6 -0
  1112. package/es/components/legend/create-legend.js +8 -0
  1113. package/es/components/legend/create-legend.js.map +1 -0
  1114. package/es/components/legend/discrete-legend/discrete-legend.d.ts +25 -0
  1115. package/es/components/legend/discrete-legend/discrete-legend.js +112 -0
  1116. package/es/components/legend/discrete-legend/discrete-legend.js.map +1 -0
  1117. package/es/components/legend/discrete-legend/get-discrete-legend-attributes.d.ts +5 -0
  1118. package/es/components/legend/discrete-legend/get-discrete-legend-attributes.js +84 -0
  1119. package/es/components/legend/discrete-legend/get-discrete-legend-attributes.js.map +1 -0
  1120. package/es/components/menu/dom/BaseMenu.d.ts +16 -0
  1121. package/es/components/menu/dom/BaseMenu.js +25 -0
  1122. package/es/components/menu/dom/BaseMenu.js.map +1 -0
  1123. package/es/components/menu/dom/Menu.d.ts +9 -0
  1124. package/es/components/menu/dom/Menu.js +18 -0
  1125. package/es/components/menu/dom/Menu.js.map +1 -0
  1126. package/es/components/menu/dom/MenuHandler.d.ts +24 -0
  1127. package/es/components/menu/dom/MenuHandler.js +146 -0
  1128. package/es/components/menu/dom/MenuHandler.js.map +1 -0
  1129. package/es/components/menu/dom/logic/MenuContainer.d.ts +21 -0
  1130. package/es/components/menu/dom/logic/MenuContainer.js +102 -0
  1131. package/es/components/menu/dom/logic/MenuContainer.js.map +1 -0
  1132. package/es/components/menu/dom/logic/MenuElement.d.ts +26 -0
  1133. package/es/components/menu/dom/logic/MenuElement.js +288 -0
  1134. package/es/components/menu/dom/logic/MenuElement.js.map +1 -0
  1135. package/es/components/menu/dom/logic/MenuElementStyle.d.ts +1 -0
  1136. package/es/components/menu/dom/logic/MenuElementStyle.js +9 -0
  1137. package/es/components/menu/dom/logic/MenuElementStyle.js.map +1 -0
  1138. package/es/components/react/react-custom-layout.d.ts +27 -0
  1139. package/es/components/react/react-custom-layout.js +169 -0
  1140. package/es/components/react/react-custom-layout.js.map +1 -0
  1141. package/es/components/title/title.d.ts +21 -0
  1142. package/es/components/title/title.js +84 -0
  1143. package/es/components/title/title.js.map +1 -0
  1144. package/es/components/tooltip/BaseTooltip.d.ts +22 -0
  1145. package/es/components/tooltip/BaseTooltip.js +27 -0
  1146. package/es/components/tooltip/BaseTooltip.js.map +1 -0
  1147. package/es/components/tooltip/Tooltip.d.ts +5 -0
  1148. package/es/components/tooltip/Tooltip.js +10 -0
  1149. package/es/components/tooltip/Tooltip.js.map +1 -0
  1150. package/es/components/tooltip/TooltipHandler.d.ts +31 -0
  1151. package/es/components/tooltip/TooltipHandler.js +134 -0
  1152. package/es/components/tooltip/TooltipHandler.js.map +1 -0
  1153. package/es/components/tooltip/logic/BubbleTooltipElement.d.ts +34 -0
  1154. package/es/components/tooltip/logic/BubbleTooltipElement.js +162 -0
  1155. package/es/components/tooltip/logic/BubbleTooltipElement.js.map +1 -0
  1156. package/es/components/tooltip/logic/BubbleTooltipElementStyle.d.ts +1 -0
  1157. package/es/components/tooltip/logic/BubbleTooltipElementStyle.js +9 -0
  1158. package/es/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -0
  1159. package/es/components/util/orient.d.ts +3 -0
  1160. package/es/components/util/orient.js +8 -0
  1161. package/es/components/util/orient.js.map +1 -0
  1162. package/es/components/util/register.d.ts +3 -0
  1163. package/es/components/util/register.js +8 -0
  1164. package/es/components/util/register.js.map +1 -0
  1165. package/es/components/util/transform.d.ts +5 -0
  1166. package/es/components/util/transform.js +34 -0
  1167. package/es/components/util/transform.js.map +1 -0
  1168. package/es/core/BaseTable.d.ts +436 -0
  1169. package/es/core/BaseTable.js +1900 -0
  1170. package/es/core/BaseTable.js.map +1 -0
  1171. package/es/core/FouseInput.d.ts +12 -0
  1172. package/es/core/FouseInput.js +33 -0
  1173. package/es/core/FouseInput.js.map +1 -0
  1174. package/es/core/TABLE_EVENT_TYPE.d.ts +61 -0
  1175. package/es/core/TABLE_EVENT_TYPE.js +61 -0
  1176. package/es/core/TABLE_EVENT_TYPE.js.map +1 -0
  1177. package/es/core/animation.d.ts +17 -0
  1178. package/es/core/animation.js +54 -0
  1179. package/es/core/animation.js.map +1 -0
  1180. package/es/core/factory.d.ts +11 -0
  1181. package/es/core/factory.js +23 -0
  1182. package/es/core/factory.js.map +1 -0
  1183. package/es/core/group-helper.d.ts +6 -0
  1184. package/es/core/group-helper.js +14 -0
  1185. package/es/core/group-helper.js.map +1 -0
  1186. package/es/core/record-helper.d.ts +8 -0
  1187. package/es/core/record-helper.js +425 -0
  1188. package/es/core/record-helper.js.map +1 -0
  1189. package/es/core/row-series-number-helper.d.ts +8 -0
  1190. package/es/core/row-series-number-helper.js +15 -0
  1191. package/es/core/row-series-number-helper.js.map +1 -0
  1192. package/es/core/style-helper.d.ts +3 -0
  1193. package/es/core/style-helper.js +86 -0
  1194. package/es/core/style-helper.js.map +1 -0
  1195. package/es/core/style.d.ts +1 -0
  1196. package/es/core/style.js +9 -0
  1197. package/es/core/style.js.map +1 -0
  1198. package/es/core/tableHelper.d.ts +45 -0
  1199. package/es/core/tableHelper.js +253 -0
  1200. package/es/core/tableHelper.js.map +1 -0
  1201. package/es/core/utils/get-cell-position.d.ts +12 -0
  1202. package/es/core/utils/get-cell-position.js +202 -0
  1203. package/es/core/utils/get-cell-position.js.map +1 -0
  1204. package/es/core/utils/get-custom-merge-cell-func.d.ts +2 -0
  1205. package/es/core/utils/get-custom-merge-cell-func.js +6 -0
  1206. package/es/core/utils/get-custom-merge-cell-func.js.map +1 -0
  1207. package/es/core.d.ts +3 -0
  1208. package/es/core.js +4 -0
  1209. package/es/core.js.map +1 -0
  1210. package/es/data/CachedDataSource.d.ts +36 -0
  1211. package/es/data/CachedDataSource.js +249 -0
  1212. package/es/data/CachedDataSource.js.map +1 -0
  1213. package/es/data/DataSource.d.ts +129 -0
  1214. package/es/data/DataSource.js +732 -0
  1215. package/es/data/DataSource.js.map +1 -0
  1216. package/es/data.d.ts +4 -0
  1217. package/es/data.js +6 -0
  1218. package/es/data.js.map +1 -0
  1219. package/es/dataset/DataStatistics.d.ts +10 -0
  1220. package/es/dataset/DataStatistics.js +74 -0
  1221. package/es/dataset/DataStatistics.js.map +1 -0
  1222. package/es/dataset/dataset-pivot-table.d.ts +60 -0
  1223. package/es/dataset/dataset-pivot-table.js +340 -0
  1224. package/es/dataset/dataset-pivot-table.js.map +1 -0
  1225. package/es/dataset/dataset.d.ts +108 -0
  1226. package/es/dataset/dataset.js +803 -0
  1227. package/es/dataset/dataset.js.map +1 -0
  1228. package/es/dataset/flatDataToObject.d.ts +46 -0
  1229. package/es/dataset/flatDataToObject.js +124 -0
  1230. package/es/dataset/flatDataToObject.js.map +1 -0
  1231. package/es/edit/edit-manager.d.ts +19 -0
  1232. package/es/edit/edit-manager.js +121 -0
  1233. package/es/edit/edit-manager.js.map +1 -0
  1234. package/es/edit/editors.d.ts +5 -0
  1235. package/es/edit/editors.js +6 -0
  1236. package/es/edit/editors.js.map +1 -0
  1237. package/es/event/EventHandler.d.ts +47 -0
  1238. package/es/event/EventHandler.js +119 -0
  1239. package/es/event/EventHandler.js.map +1 -0
  1240. package/es/event/EventTarget.d.ts +12 -0
  1241. package/es/event/EventTarget.js +58 -0
  1242. package/es/event/EventTarget.js.map +1 -0
  1243. package/es/event/component/button.d.ts +2 -0
  1244. package/es/event/component/button.js +13 -0
  1245. package/es/event/component/button.js.map +1 -0
  1246. package/es/event/drill.d.ts +5 -0
  1247. package/es/event/drill.js +32 -0
  1248. package/es/event/drill.js.map +1 -0
  1249. package/es/event/event.d.ts +63 -0
  1250. package/es/event/event.js +240 -0
  1251. package/es/event/event.js.map +1 -0
  1252. package/es/event/helper.d.ts +2 -0
  1253. package/es/event/helper.js +27 -0
  1254. package/es/event/helper.js.map +1 -0
  1255. package/es/event/listener/container-dom.d.ts +2 -0
  1256. package/es/event/listener/container-dom.js +348 -0
  1257. package/es/event/listener/container-dom.js.map +1 -0
  1258. package/es/event/listener/scroll-bar.d.ts +2 -0
  1259. package/es/event/listener/scroll-bar.js +75 -0
  1260. package/es/event/listener/scroll-bar.js.map +1 -0
  1261. package/es/event/listener/table-group.d.ts +6 -0
  1262. package/es/event/listener/table-group.js +522 -0
  1263. package/es/event/listener/table-group.js.map +1 -0
  1264. package/es/event/listener/touch.d.ts +2 -0
  1265. package/es/event/listener/touch.js +76 -0
  1266. package/es/event/listener/touch.js.map +1 -0
  1267. package/es/event/media-click.d.ts +2 -0
  1268. package/es/event/media-click.js +85 -0
  1269. package/es/event/media-click.js.map +1 -0
  1270. package/es/event/scroll.d.ts +20 -0
  1271. package/es/event/scroll.js +81 -0
  1272. package/es/event/scroll.js.map +1 -0
  1273. package/es/event/self-event-listener/base-table/dbclick-auto-column-width.d.ts +2 -0
  1274. package/es/event/self-event-listener/base-table/dbclick-auto-column-width.js +25 -0
  1275. package/es/event/self-event-listener/base-table/dbclick-auto-column-width.js.map +1 -0
  1276. package/es/event/self-event-listener/base-table/dropdown-menu.d.ts +2 -0
  1277. package/es/event/self-event-listener/base-table/dropdown-menu.js +8 -0
  1278. package/es/event/self-event-listener/base-table/dropdown-menu.js.map +1 -0
  1279. package/es/event/self-event-listener/base-table/icon.d.ts +2 -0
  1280. package/es/event/self-event-listener/base-table/icon.js +18 -0
  1281. package/es/event/self-event-listener/base-table/icon.js.map +1 -0
  1282. package/es/event/self-event-listener/base-table/right-button-click.d.ts +2 -0
  1283. package/es/event/self-event-listener/base-table/right-button-click.js +17 -0
  1284. package/es/event/self-event-listener/base-table/right-button-click.js.map +1 -0
  1285. package/es/event/self-event-listener/list-table/checkbox.d.ts +3 -0
  1286. package/es/event/self-event-listener/list-table/checkbox.js +117 -0
  1287. package/es/event/self-event-listener/list-table/checkbox.js.map +1 -0
  1288. package/es/event/self-event-listener/pivot-chart/axis-click.d.ts +2 -0
  1289. package/es/event/self-event-listener/pivot-chart/axis-click.js +37 -0
  1290. package/es/event/self-event-listener/pivot-chart/axis-click.js.map +1 -0
  1291. package/es/event/self-event-listener/pivot-chart/axis-hover.d.ts +2 -0
  1292. package/es/event/self-event-listener/pivot-chart/axis-hover.js +33 -0
  1293. package/es/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -0
  1294. package/es/event/self-event-listener/pivot-table/drill.d.ts +1 -0
  1295. package/es/event/self-event-listener/pivot-table/drill.js +3 -0
  1296. package/es/event/self-event-listener/pivot-table/drill.js.map +1 -0
  1297. package/es/event/sparkline-event.d.ts +2 -0
  1298. package/es/event/sparkline-event.js +19 -0
  1299. package/es/event/sparkline-event.js.map +1 -0
  1300. package/es/event/util.d.ts +20 -0
  1301. package/es/event/util.js +38 -0
  1302. package/es/event/util.js.map +1 -0
  1303. package/es/header-helper/header-helper.d.ts +29 -0
  1304. package/es/header-helper/header-helper.js +252 -0
  1305. package/es/header-helper/header-helper.js.map +1 -0
  1306. package/es/header-helper/style/CheckboxStyle.d.ts +42 -0
  1307. package/es/header-helper/style/CheckboxStyle.js +96 -0
  1308. package/es/header-helper/style/CheckboxStyle.js.map +1 -0
  1309. package/es/header-helper/style/ImageStyle.d.ts +7 -0
  1310. package/es/header-helper/style/ImageStyle.js +17 -0
  1311. package/es/header-helper/style/ImageStyle.js.map +1 -0
  1312. package/es/header-helper/style/MultilineTextHeaderStyle.d.ts +13 -0
  1313. package/es/header-helper/style/MultilineTextHeaderStyle.js +30 -0
  1314. package/es/header-helper/style/MultilineTextHeaderStyle.js.map +1 -0
  1315. package/es/header-helper/style/SortHeaderStyle.d.ts +1 -0
  1316. package/es/header-helper/style/SortHeaderStyle.js +3 -0
  1317. package/es/header-helper/style/SortHeaderStyle.js.map +1 -0
  1318. package/es/header-helper/style/Style.d.ts +95 -0
  1319. package/es/header-helper/style/Style.js +220 -0
  1320. package/es/header-helper/style/Style.js.map +1 -0
  1321. package/es/header-helper/style.d.ts +6 -0
  1322. package/es/header-helper/style.js +17 -0
  1323. package/es/header-helper/style.js.map +1 -0
  1324. package/es/icons.d.ts +5 -0
  1325. package/es/icons.js +295 -0
  1326. package/es/icons.js.map +1 -0
  1327. package/es/index.d.ts +33 -0
  1328. package/es/index.js +68 -0
  1329. package/es/index.js.map +1 -0
  1330. package/es/layout/cell-range/simple-cell-range.d.ts +4 -0
  1331. package/es/layout/cell-range/simple-cell-range.js +141 -0
  1332. package/es/layout/cell-range/simple-cell-range.js.map +1 -0
  1333. package/es/layout/chart-helper/get-axis-config.d.ts +39 -0
  1334. package/es/layout/chart-helper/get-axis-config.js +391 -0
  1335. package/es/layout/chart-helper/get-axis-config.js.map +1 -0
  1336. package/es/layout/chart-helper/get-axis-domain.d.ts +11 -0
  1337. package/es/layout/chart-helper/get-axis-domain.js +44 -0
  1338. package/es/layout/chart-helper/get-axis-domain.js.map +1 -0
  1339. package/es/layout/chart-helper/get-chart-spec.d.ts +13 -0
  1340. package/es/layout/chart-helper/get-chart-spec.js +281 -0
  1341. package/es/layout/chart-helper/get-chart-spec.js.map +1 -0
  1342. package/es/layout/chart-helper/tick-align.d.ts +12 -0
  1343. package/es/layout/chart-helper/tick-align.js +16 -0
  1344. package/es/layout/chart-helper/tick-align.js.map +1 -0
  1345. package/es/layout/chart-helper/zero-align.d.ts +10 -0
  1346. package/es/layout/chart-helper/zero-align.js +111 -0
  1347. package/es/layout/chart-helper/zero-align.js.map +1 -0
  1348. package/es/layout/index.d.ts +1 -0
  1349. package/es/layout/index.js +1 -0
  1350. package/es/layout/index.js.map +1 -0
  1351. package/es/layout/layout-helper.d.ts +20 -0
  1352. package/es/layout/layout-helper.js +146 -0
  1353. package/es/layout/layout-helper.js.map +1 -0
  1354. package/es/layout/pivot-header-layout.d.ts +279 -0
  1355. package/es/layout/pivot-header-layout.js +1832 -0
  1356. package/es/layout/pivot-header-layout.js.map +1 -0
  1357. package/es/layout/pivot-layout.d.ts +1 -0
  1358. package/es/layout/pivot-layout.js +1 -0
  1359. package/es/layout/pivot-layout.js.map +1 -0
  1360. package/es/layout/row-height-map.d.ts +34 -0
  1361. package/es/layout/row-height-map.js +168 -0
  1362. package/es/layout/row-height-map.js.map +1 -0
  1363. package/es/layout/simple-header-layout.d.ts +153 -0
  1364. package/es/layout/simple-header-layout.js +780 -0
  1365. package/es/layout/simple-header-layout.js.map +1 -0
  1366. package/es/layout/tree-helper.d.ts +71 -0
  1367. package/es/layout/tree-helper.js +401 -0
  1368. package/es/layout/tree-helper.js.map +1 -0
  1369. package/es/plugins/chartModules.d.ts +3 -0
  1370. package/es/plugins/chartModules.js +2 -0
  1371. package/es/plugins/chartModules.js.map +1 -0
  1372. package/es/plugins/custom-cell-style.d.ts +26 -0
  1373. package/es/plugins/custom-cell-style.js +107 -0
  1374. package/es/plugins/custom-cell-style.js.map +1 -0
  1375. package/es/plugins/icons.d.ts +12 -0
  1376. package/es/plugins/icons.js +22 -0
  1377. package/es/plugins/icons.js.map +1 -0
  1378. package/es/plugins/invert-highlight.d.ts +1 -0
  1379. package/es/plugins/invert-highlight.js +14 -0
  1380. package/es/plugins/invert-highlight.js.map +1 -0
  1381. package/es/plugins/list-tree-stick-cell.d.ts +18 -0
  1382. package/es/plugins/list-tree-stick-cell.js +178 -0
  1383. package/es/plugins/list-tree-stick-cell.js.map +1 -0
  1384. package/es/plugins/themes.d.ts +4 -0
  1385. package/es/plugins/themes.js +2 -0
  1386. package/es/plugins/themes.js.map +1 -0
  1387. package/es/register.d.ts +15 -0
  1388. package/es/register.js +44 -0
  1389. package/es/register.js.map +1 -0
  1390. package/es/render/jsx/index.d.ts +8 -0
  1391. package/es/render/jsx/index.js +16 -0
  1392. package/es/render/jsx/index.js.map +1 -0
  1393. package/es/render/layout/arc.d.ts +12 -0
  1394. package/es/render/layout/arc.js +12 -0
  1395. package/es/render/layout/arc.js.map +1 -0
  1396. package/es/render/layout/circle.d.ts +12 -0
  1397. package/es/render/layout/circle.js +12 -0
  1398. package/es/render/layout/circle.js.map +1 -0
  1399. package/es/render/layout/container.d.ts +14 -0
  1400. package/es/render/layout/container.js +21 -0
  1401. package/es/render/layout/container.js.map +1 -0
  1402. package/es/render/layout/direction.d.ts +22 -0
  1403. package/es/render/layout/direction.js +31 -0
  1404. package/es/render/layout/direction.js.map +1 -0
  1405. package/es/render/layout/element.d.ts +43 -0
  1406. package/es/render/layout/element.js +19 -0
  1407. package/es/render/layout/element.js.map +1 -0
  1408. package/es/render/layout/group-element.d.ts +5 -0
  1409. package/es/render/layout/group-element.js +8 -0
  1410. package/es/render/layout/group-element.js.map +1 -0
  1411. package/es/render/layout/group.d.ts +12 -0
  1412. package/es/render/layout/group.js +12 -0
  1413. package/es/render/layout/group.js.map +1 -0
  1414. package/es/render/layout/icon.d.ts +21 -0
  1415. package/es/render/layout/icon.js +21 -0
  1416. package/es/render/layout/icon.js.map +1 -0
  1417. package/es/render/layout/image.d.ts +14 -0
  1418. package/es/render/layout/image.js +13 -0
  1419. package/es/render/layout/image.js.map +1 -0
  1420. package/es/render/layout/index.d.ts +13 -0
  1421. package/es/render/layout/index.js +26 -0
  1422. package/es/render/layout/index.js.map +1 -0
  1423. package/es/render/layout/line.d.ts +1 -0
  1424. package/es/render/layout/line.js +2 -0
  1425. package/es/render/layout/line.js.map +1 -0
  1426. package/es/render/layout/percent-calc.d.ts +5 -0
  1427. package/es/render/layout/percent-calc.js +7 -0
  1428. package/es/render/layout/percent-calc.js.map +1 -0
  1429. package/es/render/layout/rect.d.ts +12 -0
  1430. package/es/render/layout/rect.js +12 -0
  1431. package/es/render/layout/rect.js.map +1 -0
  1432. package/es/render/layout/tag.d.ts +14 -0
  1433. package/es/render/layout/tag.js +15 -0
  1434. package/es/render/layout/tag.js.map +1 -0
  1435. package/es/render/layout/text.d.ts +13 -0
  1436. package/es/render/layout/text.js +17 -0
  1437. package/es/render/layout/text.js.map +1 -0
  1438. package/es/scenegraph/animation/appear.d.ts +2 -0
  1439. package/es/scenegraph/animation/appear.js +20 -0
  1440. package/es/scenegraph/animation/appear.js.map +1 -0
  1441. package/es/scenegraph/component/cell-content.d.ts +36 -0
  1442. package/es/scenegraph/component/cell-content.js +105 -0
  1443. package/es/scenegraph/component/cell-content.js.map +1 -0
  1444. package/es/scenegraph/component/cell-mover.d.ts +21 -0
  1445. package/es/scenegraph/component/cell-mover.js +113 -0
  1446. package/es/scenegraph/component/cell-mover.js.map +1 -0
  1447. package/es/scenegraph/component/custom.d.ts +16 -0
  1448. package/es/scenegraph/component/custom.js +311 -0
  1449. package/es/scenegraph/component/custom.js.map +1 -0
  1450. package/es/scenegraph/component/drill-icon.d.ts +9 -0
  1451. package/es/scenegraph/component/drill-icon.js +41 -0
  1452. package/es/scenegraph/component/drill-icon.js.map +1 -0
  1453. package/es/scenegraph/component/menu.d.ts +41 -0
  1454. package/es/scenegraph/component/menu.js +215 -0
  1455. package/es/scenegraph/component/menu.js.map +1 -0
  1456. package/es/scenegraph/component/table-component.d.ts +52 -0
  1457. package/es/scenegraph/component/table-component.js +564 -0
  1458. package/es/scenegraph/component/table-component.js.map +1 -0
  1459. package/es/scenegraph/component/util.d.ts +3 -0
  1460. package/es/scenegraph/component/util.js +12 -0
  1461. package/es/scenegraph/component/util.js.map +1 -0
  1462. package/es/scenegraph/debug-tool/debug-tool.d.ts +34 -0
  1463. package/es/scenegraph/debug-tool/debug-tool.js +113 -0
  1464. package/es/scenegraph/debug-tool/debug-tool.js.map +1 -0
  1465. package/es/scenegraph/debug-tool/index.d.ts +4 -0
  1466. package/es/scenegraph/debug-tool/index.js +6 -0
  1467. package/es/scenegraph/debug-tool/index.js.map +1 -0
  1468. package/es/scenegraph/graphic/chart.d.ts +47 -0
  1469. package/es/scenegraph/graphic/chart.js +123 -0
  1470. package/es/scenegraph/graphic/chart.js.map +1 -0
  1471. package/es/scenegraph/graphic/contributions/chart-render-helper.d.ts +11 -0
  1472. package/es/scenegraph/graphic/contributions/chart-render-helper.js +159 -0
  1473. package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -0
  1474. package/es/scenegraph/graphic/contributions/chart-render.d.ts +11 -0
  1475. package/es/scenegraph/graphic/contributions/chart-render.js +76 -0
  1476. package/es/scenegraph/graphic/contributions/chart-render.js.map +1 -0
  1477. package/es/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
  1478. package/es/scenegraph/graphic/contributions/draw-interceptor.js +66 -0
  1479. package/es/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
  1480. package/es/scenegraph/graphic/contributions/group-contribution-render.d.ts +79 -0
  1481. package/es/scenegraph/graphic/contributions/group-contribution-render.js +346 -0
  1482. package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -0
  1483. package/es/scenegraph/graphic/contributions/image-contribution-render.d.ts +38 -0
  1484. package/es/scenegraph/graphic/contributions/image-contribution-render.js +69 -0
  1485. package/es/scenegraph/graphic/contributions/image-contribution-render.js.map +1 -0
  1486. package/es/scenegraph/graphic/contributions/index.d.ts +3 -0
  1487. package/es/scenegraph/graphic/contributions/index.js +38 -0
  1488. package/es/scenegraph/graphic/contributions/index.js.map +1 -0
  1489. package/es/scenegraph/graphic/contributions/rect-contribution-render.d.ts +18 -0
  1490. package/es/scenegraph/graphic/contributions/rect-contribution-render.js +90 -0
  1491. package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -0
  1492. package/es/scenegraph/graphic/contributions/text-contribution-render.d.ts +12 -0
  1493. package/es/scenegraph/graphic/contributions/text-contribution-render.js +69 -0
  1494. package/es/scenegraph/graphic/contributions/text-contribution-render.js.map +1 -0
  1495. package/es/scenegraph/graphic/group.d.ts +37 -0
  1496. package/es/scenegraph/graphic/group.js +127 -0
  1497. package/es/scenegraph/graphic/group.js.map +1 -0
  1498. package/es/scenegraph/graphic/icon.d.ts +47 -0
  1499. package/es/scenegraph/graphic/icon.js +70 -0
  1500. package/es/scenegraph/graphic/icon.js.map +1 -0
  1501. package/es/scenegraph/graphic/mark.d.ts +4 -0
  1502. package/es/scenegraph/graphic/mark.js +66 -0
  1503. package/es/scenegraph/graphic/mark.js.map +1 -0
  1504. package/es/scenegraph/graphic/text.d.ts +2 -0
  1505. package/es/scenegraph/graphic/text.js +2 -0
  1506. package/es/scenegraph/graphic/text.js.map +1 -0
  1507. package/es/scenegraph/group-creater/cell-helper.d.ts +16 -0
  1508. package/es/scenegraph/group-creater/cell-helper.js +325 -0
  1509. package/es/scenegraph/group-creater/cell-helper.js.map +1 -0
  1510. package/es/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
  1511. package/es/scenegraph/group-creater/cell-type/button-cell.js +137 -0
  1512. package/es/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
  1513. package/es/scenegraph/group-creater/cell-type/chart-cell.d.ts +5 -0
  1514. package/es/scenegraph/group-creater/cell-type/chart-cell.js +76 -0
  1515. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -0
  1516. package/es/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +6 -0
  1517. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +138 -0
  1518. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
  1519. package/es/scenegraph/group-creater/cell-type/image-cell.d.ts +15 -0
  1520. package/es/scenegraph/group-creater/cell-type/image-cell.js +206 -0
  1521. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -0
  1522. package/es/scenegraph/group-creater/cell-type/index.d.ts +10 -0
  1523. package/es/scenegraph/group-creater/cell-type/index.js +64 -0
  1524. package/es/scenegraph/group-creater/cell-type/index.js.map +1 -0
  1525. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.d.ts +11 -0
  1526. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js +389 -0
  1527. package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -0
  1528. package/es/scenegraph/group-creater/cell-type/radio-cell.d.ts +6 -0
  1529. package/es/scenegraph/group-creater/cell-type/radio-cell.js +143 -0
  1530. package/es/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -0
  1531. package/es/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +5 -0
  1532. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +202 -0
  1533. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -0
  1534. package/es/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
  1535. package/es/scenegraph/group-creater/cell-type/switch-cell.js +150 -0
  1536. package/es/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
  1537. package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +6 -0
  1538. package/es/scenegraph/group-creater/cell-type/text-cell.js +66 -0
  1539. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -0
  1540. package/es/scenegraph/group-creater/cell-type/video-cell.d.ts +6 -0
  1541. package/es/scenegraph/group-creater/cell-type/video-cell.js +127 -0
  1542. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -0
  1543. package/es/scenegraph/group-creater/column-helper.d.ts +14 -0
  1544. package/es/scenegraph/group-creater/column-helper.js +141 -0
  1545. package/es/scenegraph/group-creater/column-helper.js.map +1 -0
  1546. package/es/scenegraph/group-creater/column.d.ts +4 -0
  1547. package/es/scenegraph/group-creater/column.js +26 -0
  1548. package/es/scenegraph/group-creater/column.js.map +1 -0
  1549. package/es/scenegraph/group-creater/init-scenegraph.d.ts +2 -0
  1550. package/es/scenegraph/group-creater/init-scenegraph.js +50 -0
  1551. package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -0
  1552. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.d.ts +3 -0
  1553. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +46 -0
  1554. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -0
  1555. package/es/scenegraph/group-creater/progress/default-width-height.d.ts +3 -0
  1556. package/es/scenegraph/group-creater/progress/default-width-height.js +18 -0
  1557. package/es/scenegraph/group-creater/progress/default-width-height.js.map +1 -0
  1558. package/es/scenegraph/group-creater/progress/proxy.d.ts +79 -0
  1559. package/es/scenegraph/group-creater/progress/proxy.js +357 -0
  1560. package/es/scenegraph/group-creater/progress/proxy.js.map +1 -0
  1561. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.d.ts +4 -0
  1562. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +168 -0
  1563. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -0
  1564. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.d.ts +4 -0
  1565. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +185 -0
  1566. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -0
  1567. package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.d.ts +2 -0
  1568. package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.js +56 -0
  1569. package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.js.map +1 -0
  1570. package/es/scenegraph/group-creater/progress/update-position/sort-vertical.d.ts +2 -0
  1571. package/es/scenegraph/group-creater/progress/update-position/sort-vertical.js +70 -0
  1572. package/es/scenegraph/group-creater/progress/update-position/sort-vertical.js.map +1 -0
  1573. package/es/scenegraph/group-creater/progress/update-position/update-auto-column.d.ts +2 -0
  1574. package/es/scenegraph/group-creater/progress/update-position/update-auto-column.js +29 -0
  1575. package/es/scenegraph/group-creater/progress/update-position/update-auto-column.js.map +1 -0
  1576. package/es/scenegraph/group-creater/progress/update-position/update-auto-row.d.ts +2 -0
  1577. package/es/scenegraph/group-creater/progress/update-position/update-auto-row.js +39 -0
  1578. package/es/scenegraph/group-creater/progress/update-position/update-auto-row.js.map +1 -0
  1579. package/es/scenegraph/group-creater/progress/update-position/util.d.ts +8 -0
  1580. package/es/scenegraph/group-creater/progress/update-position/util.js +88 -0
  1581. package/es/scenegraph/group-creater/progress/update-position/util.js.map +1 -0
  1582. package/es/scenegraph/icon/icon-update.d.ts +28 -0
  1583. package/es/scenegraph/icon/icon-update.js +178 -0
  1584. package/es/scenegraph/icon/icon-update.js.map +1 -0
  1585. package/es/scenegraph/layout/compute-col-width.d.ts +4 -0
  1586. package/es/scenegraph/layout/compute-col-width.js +320 -0
  1587. package/es/scenegraph/layout/compute-col-width.js.map +1 -0
  1588. package/es/scenegraph/layout/compute-row-height.d.ts +3 -0
  1589. package/es/scenegraph/layout/compute-row-height.js +340 -0
  1590. package/es/scenegraph/layout/compute-row-height.js.map +1 -0
  1591. package/es/scenegraph/layout/frozen-react.d.ts +5 -0
  1592. package/es/scenegraph/layout/frozen-react.js +82 -0
  1593. package/es/scenegraph/layout/frozen-react.js.map +1 -0
  1594. package/es/scenegraph/layout/frozen.d.ts +6 -0
  1595. package/es/scenegraph/layout/frozen.js +328 -0
  1596. package/es/scenegraph/layout/frozen.js.map +1 -0
  1597. package/es/scenegraph/layout/height-util.d.ts +7 -0
  1598. package/es/scenegraph/layout/height-util.js +118 -0
  1599. package/es/scenegraph/layout/height-util.js.map +1 -0
  1600. package/es/scenegraph/layout/move-cell.d.ts +2 -0
  1601. package/es/scenegraph/layout/move-cell.js +44 -0
  1602. package/es/scenegraph/layout/move-cell.js.map +1 -0
  1603. package/es/scenegraph/layout/update-col.d.ts +3 -0
  1604. package/es/scenegraph/layout/update-col.js +204 -0
  1605. package/es/scenegraph/layout/update-col.js.map +1 -0
  1606. package/es/scenegraph/layout/update-height.d.ts +6 -0
  1607. package/es/scenegraph/layout/update-height.js +149 -0
  1608. package/es/scenegraph/layout/update-height.js.map +1 -0
  1609. package/es/scenegraph/layout/update-row.d.ts +3 -0
  1610. package/es/scenegraph/layout/update-row.js +278 -0
  1611. package/es/scenegraph/layout/update-row.js.map +1 -0
  1612. package/es/scenegraph/layout/update-width.d.ts +2 -0
  1613. package/es/scenegraph/layout/update-width.js +247 -0
  1614. package/es/scenegraph/layout/update-width.js.map +1 -0
  1615. package/es/scenegraph/refresh-node/update-chart.d.ts +7 -0
  1616. package/es/scenegraph/refresh-node/update-chart.js +196 -0
  1617. package/es/scenegraph/refresh-node/update-chart.js.map +1 -0
  1618. package/es/scenegraph/scenegraph.d.ts +182 -0
  1619. package/es/scenegraph/scenegraph.js +908 -0
  1620. package/es/scenegraph/scenegraph.js.map +1 -0
  1621. package/es/scenegraph/select/create-select-border.d.ts +3 -0
  1622. package/es/scenegraph/select/create-select-border.js +51 -0
  1623. package/es/scenegraph/select/create-select-border.js.map +1 -0
  1624. package/es/scenegraph/select/delete-select-border.d.ts +5 -0
  1625. package/es/scenegraph/select/delete-select-border.js +29 -0
  1626. package/es/scenegraph/select/delete-select-border.js.map +1 -0
  1627. package/es/scenegraph/select/move-select-border.d.ts +2 -0
  1628. package/es/scenegraph/select/move-select-border.js +9 -0
  1629. package/es/scenegraph/select/move-select-border.js.map +1 -0
  1630. package/es/scenegraph/select/update-select-border.d.ts +8 -0
  1631. package/es/scenegraph/select/update-select-border.js +263 -0
  1632. package/es/scenegraph/select/update-select-border.js.map +1 -0
  1633. package/es/scenegraph/select/update-select-style.d.ts +3 -0
  1634. package/es/scenegraph/select/update-select-style.js +7 -0
  1635. package/es/scenegraph/select/update-select-style.js.map +1 -0
  1636. package/es/scenegraph/stick-text/index.d.ts +3 -0
  1637. package/es/scenegraph/stick-text/index.js +179 -0
  1638. package/es/scenegraph/stick-text/index.js.map +1 -0
  1639. package/es/scenegraph/style/corner-cell.d.ts +3 -0
  1640. package/es/scenegraph/style/corner-cell.js +22 -0
  1641. package/es/scenegraph/style/corner-cell.js.map +1 -0
  1642. package/es/scenegraph/style/frame-border.d.ts +8 -0
  1643. package/es/scenegraph/style/frame-border.js +138 -0
  1644. package/es/scenegraph/style/frame-border.js.map +1 -0
  1645. package/es/scenegraph/utils/border-line.d.ts +8 -0
  1646. package/es/scenegraph/utils/border-line.js +45 -0
  1647. package/es/scenegraph/utils/border-line.js.map +1 -0
  1648. package/es/scenegraph/utils/break-string.d.ts +5 -0
  1649. package/es/scenegraph/utils/break-string.js +16 -0
  1650. package/es/scenegraph/utils/break-string.js.map +1 -0
  1651. package/es/scenegraph/utils/cell-border-stroke-width.d.ts +3 -0
  1652. package/es/scenegraph/utils/cell-border-stroke-width.js +12 -0
  1653. package/es/scenegraph/utils/cell-border-stroke-width.js.map +1 -0
  1654. package/es/scenegraph/utils/cell-pos.d.ts +4 -0
  1655. package/es/scenegraph/utils/cell-pos.js +12 -0
  1656. package/es/scenegraph/utils/cell-pos.js.map +1 -0
  1657. package/es/scenegraph/utils/deal-promise-data.d.ts +2 -0
  1658. package/es/scenegraph/utils/deal-promise-data.js +6 -0
  1659. package/es/scenegraph/utils/deal-promise-data.js.map +1 -0
  1660. package/es/scenegraph/utils/empty-group.d.ts +2 -0
  1661. package/es/scenegraph/utils/empty-group.js +6 -0
  1662. package/es/scenegraph/utils/empty-group.js.map +1 -0
  1663. package/es/scenegraph/utils/font.d.ts +1 -0
  1664. package/es/scenegraph/utils/font.js +6 -0
  1665. package/es/scenegraph/utils/font.js.map +1 -0
  1666. package/es/scenegraph/utils/get-cell-merge.d.ts +3 -0
  1667. package/es/scenegraph/utils/get-cell-merge.js +11 -0
  1668. package/es/scenegraph/utils/get-cell-merge.js.map +1 -0
  1669. package/es/scenegraph/utils/get-hierarchy-offset.d.ts +2 -0
  1670. package/es/scenegraph/utils/get-hierarchy-offset.js +21 -0
  1671. package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -0
  1672. package/es/scenegraph/utils/get-prop.d.ts +4 -0
  1673. package/es/scenegraph/utils/get-prop.js +36 -0
  1674. package/es/scenegraph/utils/get-prop.js.map +1 -0
  1675. package/es/scenegraph/utils/icon.d.ts +12 -0
  1676. package/es/scenegraph/utils/icon.js +29 -0
  1677. package/es/scenegraph/utils/icon.js.map +1 -0
  1678. package/es/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
  1679. package/es/scenegraph/utils/is-merge-cell-group.js +6 -0
  1680. package/es/scenegraph/utils/is-merge-cell-group.js.map +1 -0
  1681. package/es/scenegraph/utils/keep-aspect-ratio.d.ts +4 -0
  1682. package/es/scenegraph/utils/keep-aspect-ratio.js +11 -0
  1683. package/es/scenegraph/utils/keep-aspect-ratio.js.map +1 -0
  1684. package/es/scenegraph/utils/padding.d.ts +6 -0
  1685. package/es/scenegraph/utils/padding.js +14 -0
  1686. package/es/scenegraph/utils/padding.js.map +1 -0
  1687. package/es/scenegraph/utils/render-service.d.ts +7 -0
  1688. package/es/scenegraph/utils/render-service.js +19 -0
  1689. package/es/scenegraph/utils/render-service.js.map +1 -0
  1690. package/es/scenegraph/utils/text-icon-layout.d.ts +29 -0
  1691. package/es/scenegraph/utils/text-icon-layout.js +334 -0
  1692. package/es/scenegraph/utils/text-icon-layout.js.map +1 -0
  1693. package/es/scenegraph/utils/text-measure.d.ts +38 -0
  1694. package/es/scenegraph/utils/text-measure.js +163 -0
  1695. package/es/scenegraph/utils/text-measure.js.map +1 -0
  1696. package/es/scenegraph/utils/text-pos.d.ts +8 -0
  1697. package/es/scenegraph/utils/text-pos.js +20 -0
  1698. package/es/scenegraph/utils/text-pos.js.map +1 -0
  1699. package/es/scenegraph/utils/update-container.d.ts +2 -0
  1700. package/es/scenegraph/utils/update-container.js +6 -0
  1701. package/es/scenegraph/utils/update-container.js.map +1 -0
  1702. package/es/state/cell-move/adjust-header.d.ts +3 -0
  1703. package/es/state/cell-move/adjust-header.js +20 -0
  1704. package/es/state/cell-move/adjust-header.js.map +1 -0
  1705. package/es/state/cell-move/index.d.ts +4 -0
  1706. package/es/state/cell-move/index.js +106 -0
  1707. package/es/state/cell-move/index.js.map +1 -0
  1708. package/es/state/checkbox/checkbox.d.ts +12 -0
  1709. package/es/state/checkbox/checkbox.js +199 -0
  1710. package/es/state/checkbox/checkbox.js.map +1 -0
  1711. package/es/state/common/check-in-select.d.ts +7 -0
  1712. package/es/state/common/check-in-select.js +53 -0
  1713. package/es/state/common/check-in-select.js.map +1 -0
  1714. package/es/state/drill/index.d.ts +2 -0
  1715. package/es/state/drill/index.js +9 -0
  1716. package/es/state/drill/index.js.map +1 -0
  1717. package/es/state/frozen/index.d.ts +2 -0
  1718. package/es/state/frozen/index.js +4 -0
  1719. package/es/state/frozen/index.js.map +1 -0
  1720. package/es/state/hover/col.d.ts +4 -0
  1721. package/es/state/hover/col.js +16 -0
  1722. package/es/state/hover/col.js.map +1 -0
  1723. package/es/state/hover/is-cell-hover.d.ts +5 -0
  1724. package/es/state/hover/is-cell-hover.js +44 -0
  1725. package/es/state/hover/is-cell-hover.js.map +1 -0
  1726. package/es/state/hover/row.d.ts +4 -0
  1727. package/es/state/hover/row.js +14 -0
  1728. package/es/state/hover/row.js.map +1 -0
  1729. package/es/state/hover/single.d.ts +4 -0
  1730. package/es/state/hover/single.js +10 -0
  1731. package/es/state/hover/single.js.map +1 -0
  1732. package/es/state/hover/update-cell.d.ts +2 -0
  1733. package/es/state/hover/update-cell.js +15 -0
  1734. package/es/state/hover/update-cell.js.map +1 -0
  1735. package/es/state/hover/update-position.d.ts +2 -0
  1736. package/es/state/hover/update-position.js +36 -0
  1737. package/es/state/hover/update-position.js.map +1 -0
  1738. package/es/state/radio/radio.d.ts +7 -0
  1739. package/es/state/radio/radio.js +80 -0
  1740. package/es/state/radio/radio.js.map +1 -0
  1741. package/es/state/resize/update-resize-column.d.ts +2 -0
  1742. package/es/state/resize/update-resize-column.js +79 -0
  1743. package/es/state/resize/update-resize-column.js.map +1 -0
  1744. package/es/state/resize/update-resize-row.d.ts +2 -0
  1745. package/es/state/resize/update-resize-row.js +58 -0
  1746. package/es/state/resize/update-resize-row.js.map +1 -0
  1747. package/es/state/select/custom-select.d.ts +7 -0
  1748. package/es/state/select/custom-select.js +30 -0
  1749. package/es/state/select/custom-select.js.map +1 -0
  1750. package/es/state/select/is-cell-select-highlight.d.ts +6 -0
  1751. package/es/state/select/is-cell-select-highlight.js +81 -0
  1752. package/es/state/select/is-cell-select-highlight.js.map +1 -0
  1753. package/es/state/select/update-position.d.ts +4 -0
  1754. package/es/state/select/update-position.js +300 -0
  1755. package/es/state/select/update-position.js.map +1 -0
  1756. package/es/state/sort/index.d.ts +2 -0
  1757. package/es/state/sort/index.js +50 -0
  1758. package/es/state/sort/index.js.map +1 -0
  1759. package/es/state/spark-line/index.d.ts +3 -0
  1760. package/es/state/spark-line/index.js +96 -0
  1761. package/es/state/spark-line/index.js.map +1 -0
  1762. package/es/state/state.d.ts +206 -0
  1763. package/es/state/state.js +834 -0
  1764. package/es/state/state.js.map +1 -0
  1765. package/es/themes/ARCO.d.ts +3 -0
  1766. package/es/themes/ARCO.js +109 -0
  1767. package/es/themes/ARCO.js.map +1 -0
  1768. package/es/themes/BRIGHT.d.ts +3 -0
  1769. package/es/themes/BRIGHT.js +66 -0
  1770. package/es/themes/BRIGHT.js.map +1 -0
  1771. package/es/themes/DARK.d.ts +3 -0
  1772. package/es/themes/DARK.js +99 -0
  1773. package/es/themes/DARK.js.map +1 -0
  1774. package/es/themes/DEFAULT.d.ts +3 -0
  1775. package/es/themes/DEFAULT.js +82 -0
  1776. package/es/themes/DEFAULT.js.map +1 -0
  1777. package/es/themes/SIMPLIFY.d.ts +3 -0
  1778. package/es/themes/SIMPLIFY.js +49 -0
  1779. package/es/themes/SIMPLIFY.js.map +1 -0
  1780. package/es/themes/component.d.ts +35 -0
  1781. package/es/themes/component.js +42 -0
  1782. package/es/themes/component.js.map +1 -0
  1783. package/es/themes/theme.d.ts +67 -0
  1784. package/es/themes/theme.js +752 -0
  1785. package/es/themes/theme.js.map +1 -0
  1786. package/es/themes.d.ts +28 -0
  1787. package/es/themes.js +64 -0
  1788. package/es/themes.js.map +1 -0
  1789. package/es/tools/LimitPromiseQueue.d.ts +8 -0
  1790. package/es/tools/LimitPromiseQueue.js +21 -0
  1791. package/es/tools/LimitPromiseQueue.js.map +1 -0
  1792. package/es/tools/NumberMap.d.ts +23 -0
  1793. package/es/tools/NumberMap.js +117 -0
  1794. package/es/tools/NumberMap.js.map +1 -0
  1795. package/es/tools/Rect.d.ts +24 -0
  1796. package/es/tools/Rect.js +62 -0
  1797. package/es/tools/Rect.js.map +1 -0
  1798. package/es/tools/calc.d.ts +8 -0
  1799. package/es/tools/calc.js +201 -0
  1800. package/es/tools/calc.js.map +1 -0
  1801. package/es/tools/cell-range.d.ts +2 -0
  1802. package/es/tools/cell-range.js +4 -0
  1803. package/es/tools/cell-range.js.map +1 -0
  1804. package/es/tools/debounce.d.ts +1 -0
  1805. package/es/tools/debounce.js +43 -0
  1806. package/es/tools/debounce.js.map +1 -0
  1807. package/es/tools/diff-cell.d.ts +72 -0
  1808. package/es/tools/diff-cell.js +160 -0
  1809. package/es/tools/diff-cell.js.map +1 -0
  1810. package/es/tools/dom.d.ts +1 -0
  1811. package/es/tools/dom.js +5 -0
  1812. package/es/tools/dom.js.map +1 -0
  1813. package/es/tools/env.d.ts +19 -0
  1814. package/es/tools/env.js +42 -0
  1815. package/es/tools/env.js.map +1 -0
  1816. package/es/tools/get-data-path/create-dataset.d.ts +11 -0
  1817. package/es/tools/get-data-path/create-dataset.js +147 -0
  1818. package/es/tools/get-data-path/create-dataset.js.map +1 -0
  1819. package/es/tools/get-data-path/index.d.ts +2 -0
  1820. package/es/tools/get-data-path/index.js +51 -0
  1821. package/es/tools/get-data-path/index.js.map +1 -0
  1822. package/es/tools/global.d.ts +15 -0
  1823. package/es/tools/global.js +30 -0
  1824. package/es/tools/global.js.map +1 -0
  1825. package/es/tools/helper.d.ts +72 -0
  1826. package/es/tools/helper.js +226 -0
  1827. package/es/tools/helper.js.map +1 -0
  1828. package/es/tools/icons.d.ts +4 -0
  1829. package/es/tools/icons.js +4 -0
  1830. package/es/tools/icons.js.map +1 -0
  1831. package/es/tools/isx.d.ts +16 -0
  1832. package/es/tools/isx.js +79 -0
  1833. package/es/tools/isx.js.map +1 -0
  1834. package/es/tools/join.d.ts +1 -0
  1835. package/es/tools/join.js +6 -0
  1836. package/es/tools/join.js.map +1 -0
  1837. package/es/tools/merge-range.d.ts +11 -0
  1838. package/es/tools/merge-range.js +28 -0
  1839. package/es/tools/merge-range.js.map +1 -0
  1840. package/es/tools/pixel-ratio.d.ts +2 -0
  1841. package/es/tools/pixel-ratio.js +12 -0
  1842. package/es/tools/pixel-ratio.js.map +1 -0
  1843. package/es/tools/sort.d.ts +2 -0
  1844. package/es/tools/sort.js +12 -0
  1845. package/es/tools/sort.js.map +1 -0
  1846. package/es/tools/style.d.ts +5 -0
  1847. package/es/tools/style.js +20 -0
  1848. package/es/tools/style.js.map +1 -0
  1849. package/es/tools/update-row.d.ts +19 -0
  1850. package/es/tools/update-row.js +32 -0
  1851. package/es/tools/update-row.js.map +1 -0
  1852. package/es/tools/util.d.ts +46 -0
  1853. package/es/tools/util.js +231 -0
  1854. package/es/tools/util.js.map +1 -0
  1855. package/es/ts-types/animation/appear.d.ts +11 -0
  1856. package/es/ts-types/animation/appear.js +2 -0
  1857. package/es/ts-types/animation/appear.js.map +1 -0
  1858. package/es/ts-types/animation/index.d.ts +1 -0
  1859. package/es/ts-types/animation/index.js +2 -0
  1860. package/es/ts-types/animation/index.js.map +1 -0
  1861. package/es/ts-types/base-table.d.ts +641 -0
  1862. package/es/ts-types/base-table.js +2 -0
  1863. package/es/ts-types/base-table.js.map +1 -0
  1864. package/es/ts-types/column/index.d.ts +2 -0
  1865. package/es/ts-types/column/index.js +4 -0
  1866. package/es/ts-types/column/index.js.map +1 -0
  1867. package/es/ts-types/column/style.d.ts +151 -0
  1868. package/es/ts-types/column/style.js +2 -0
  1869. package/es/ts-types/column/style.js.map +1 -0
  1870. package/es/ts-types/column/type.d.ts +2 -0
  1871. package/es/ts-types/column/type.js +2 -0
  1872. package/es/ts-types/column/type.js.map +1 -0
  1873. package/es/ts-types/common.d.ts +114 -0
  1874. package/es/ts-types/common.js +13 -0
  1875. package/es/ts-types/common.js.map +1 -0
  1876. package/es/ts-types/component/axis.d.ts +2 -0
  1877. package/es/ts-types/component/axis.js +2 -0
  1878. package/es/ts-types/component/axis.js.map +1 -0
  1879. package/es/ts-types/component/empty-tip.d.ts +20 -0
  1880. package/es/ts-types/component/empty-tip.js +2 -0
  1881. package/es/ts-types/component/empty-tip.js.map +1 -0
  1882. package/es/ts-types/component/index.d.ts +1 -0
  1883. package/es/ts-types/component/index.js +2 -0
  1884. package/es/ts-types/component/index.js.map +1 -0
  1885. package/es/ts-types/component/legend.d.ts +18 -0
  1886. package/es/ts-types/component/legend.js +2 -0
  1887. package/es/ts-types/component/legend.js.map +1 -0
  1888. package/es/ts-types/component/title.d.ts +49 -0
  1889. package/es/ts-types/component/title.js +2 -0
  1890. package/es/ts-types/component/title.js.map +1 -0
  1891. package/es/ts-types/component/util.d.ts +1 -0
  1892. package/es/ts-types/component/util.js +2 -0
  1893. package/es/ts-types/component/util.js.map +1 -0
  1894. package/es/ts-types/customElement.d.ts +128 -0
  1895. package/es/ts-types/customElement.js +2 -0
  1896. package/es/ts-types/customElement.js.map +1 -0
  1897. package/es/ts-types/customLayout.d.ts +9 -0
  1898. package/es/ts-types/customLayout.js +2 -0
  1899. package/es/ts-types/customLayout.js.map +1 -0
  1900. package/es/ts-types/dataset/aggregation.d.ts +192 -0
  1901. package/es/ts-types/dataset/aggregation.js +397 -0
  1902. package/es/ts-types/dataset/aggregation.js.map +1 -0
  1903. package/es/ts-types/dataset/index.d.ts +1 -0
  1904. package/es/ts-types/dataset/index.js +2 -0
  1905. package/es/ts-types/dataset/index.js.map +1 -0
  1906. package/es/ts-types/events.d.ts +363 -0
  1907. package/es/ts-types/events.js +2 -0
  1908. package/es/ts-types/events.js.map +1 -0
  1909. package/es/ts-types/icon.d.ts +93 -0
  1910. package/es/ts-types/icon.js +30 -0
  1911. package/es/ts-types/icon.js.map +1 -0
  1912. package/es/ts-types/index.d.ts +17 -0
  1913. package/es/ts-types/index.js +34 -0
  1914. package/es/ts-types/index.js.map +1 -0
  1915. package/es/ts-types/list-table/define/basic-define.d.ts +50 -0
  1916. package/es/ts-types/list-table/define/basic-define.js +2 -0
  1917. package/es/ts-types/list-table/define/basic-define.js.map +1 -0
  1918. package/es/ts-types/list-table/define/button-define.d.ts +9 -0
  1919. package/es/ts-types/list-table/define/button-define.js +2 -0
  1920. package/es/ts-types/list-table/define/button-define.js.map +1 -0
  1921. package/es/ts-types/list-table/define/chart-define.d.ts +11 -0
  1922. package/es/ts-types/list-table/define/chart-define.js +2 -0
  1923. package/es/ts-types/list-table/define/chart-define.js.map +1 -0
  1924. package/es/ts-types/list-table/define/checkbox-define.d.ts +15 -0
  1925. package/es/ts-types/list-table/define/checkbox-define.js +2 -0
  1926. package/es/ts-types/list-table/define/checkbox-define.js.map +1 -0
  1927. package/es/ts-types/list-table/define/composite-define.d.ts +26 -0
  1928. package/es/ts-types/list-table/define/composite-define.js +2 -0
  1929. package/es/ts-types/list-table/define/composite-define.js.map +1 -0
  1930. package/es/ts-types/list-table/define/image-define.d.ts +17 -0
  1931. package/es/ts-types/list-table/define/image-define.js +2 -0
  1932. package/es/ts-types/list-table/define/image-define.js.map +1 -0
  1933. package/es/ts-types/list-table/define/index.d.ts +31 -0
  1934. package/es/ts-types/list-table/define/index.js +2 -0
  1935. package/es/ts-types/list-table/define/index.js.map +1 -0
  1936. package/es/ts-types/list-table/define/link-define.d.ts +22 -0
  1937. package/es/ts-types/list-table/define/link-define.js +2 -0
  1938. package/es/ts-types/list-table/define/link-define.js.map +1 -0
  1939. package/es/ts-types/list-table/define/multilinetext-define.d.ts +11 -0
  1940. package/es/ts-types/list-table/define/multilinetext-define.js +2 -0
  1941. package/es/ts-types/list-table/define/multilinetext-define.js.map +1 -0
  1942. package/es/ts-types/list-table/define/progressbar-define.d.ts +11 -0
  1943. package/es/ts-types/list-table/define/progressbar-define.js +2 -0
  1944. package/es/ts-types/list-table/define/progressbar-define.js.map +1 -0
  1945. package/es/ts-types/list-table/define/radio-define.d.ts +11 -0
  1946. package/es/ts-types/list-table/define/radio-define.js +2 -0
  1947. package/es/ts-types/list-table/define/radio-define.js.map +1 -0
  1948. package/es/ts-types/list-table/define/sparkline-define.d.ts +10 -0
  1949. package/es/ts-types/list-table/define/sparkline-define.js +2 -0
  1950. package/es/ts-types/list-table/define/sparkline-define.js.map +1 -0
  1951. package/es/ts-types/list-table/define/switch-define.d.ts +11 -0
  1952. package/es/ts-types/list-table/define/switch-define.js +2 -0
  1953. package/es/ts-types/list-table/define/switch-define.js.map +1 -0
  1954. package/es/ts-types/list-table/index.d.ts +2 -0
  1955. package/es/ts-types/list-table/index.js +4 -0
  1956. package/es/ts-types/list-table/index.js.map +1 -0
  1957. package/es/ts-types/list-table/layout-map/api.d.ts +126 -0
  1958. package/es/ts-types/list-table/layout-map/api.js +2 -0
  1959. package/es/ts-types/list-table/layout-map/api.js.map +1 -0
  1960. package/es/ts-types/list-table/layout-map/index.d.ts +1 -0
  1961. package/es/ts-types/list-table/layout-map/index.js +2 -0
  1962. package/es/ts-types/list-table/layout-map/index.js.map +1 -0
  1963. package/es/ts-types/menu.d.ts +74 -0
  1964. package/es/ts-types/menu.js +2 -0
  1965. package/es/ts-types/menu.js.map +1 -0
  1966. package/es/ts-types/new-data-set.d.ts +158 -0
  1967. package/es/ts-types/new-data-set.js +15 -0
  1968. package/es/ts-types/new-data-set.js.map +1 -0
  1969. package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.d.ts +10 -0
  1970. package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js +13 -0
  1971. package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js.map +1 -0
  1972. package/es/ts-types/pivot-table/corner.d.ts +37 -0
  1973. package/es/ts-types/pivot-table/corner.js +2 -0
  1974. package/es/ts-types/pivot-table/corner.js.map +1 -0
  1975. package/es/ts-types/pivot-table/dimension/basic-dimension.d.ts +43 -0
  1976. package/es/ts-types/pivot-table/dimension/basic-dimension.js +2 -0
  1977. package/es/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -0
  1978. package/es/ts-types/pivot-table/dimension/image-dimension.d.ts +10 -0
  1979. package/es/ts-types/pivot-table/dimension/image-dimension.js +2 -0
  1980. package/es/ts-types/pivot-table/dimension/image-dimension.js.map +1 -0
  1981. package/es/ts-types/pivot-table/dimension/index.d.ts +6 -0
  1982. package/es/ts-types/pivot-table/dimension/index.js +2 -0
  1983. package/es/ts-types/pivot-table/dimension/index.js.map +1 -0
  1984. package/es/ts-types/pivot-table/dimension/link-dimension.d.ts +13 -0
  1985. package/es/ts-types/pivot-table/dimension/link-dimension.js +2 -0
  1986. package/es/ts-types/pivot-table/dimension/link-dimension.js.map +1 -0
  1987. package/es/ts-types/pivot-table/dimension/multilinetext-dimension.d.ts +7 -0
  1988. package/es/ts-types/pivot-table/dimension/multilinetext-dimension.js +2 -0
  1989. package/es/ts-types/pivot-table/dimension/multilinetext-dimension.js.map +1 -0
  1990. package/es/ts-types/pivot-table/index.d.ts +4 -0
  1991. package/es/ts-types/pivot-table/index.js +8 -0
  1992. package/es/ts-types/pivot-table/index.js.map +1 -0
  1993. package/es/ts-types/pivot-table/indicator/basic-indicator.d.ts +51 -0
  1994. package/es/ts-types/pivot-table/indicator/basic-indicator.js +2 -0
  1995. package/es/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -0
  1996. package/es/ts-types/pivot-table/indicator/chart-indicator.d.ts +11 -0
  1997. package/es/ts-types/pivot-table/indicator/chart-indicator.js +2 -0
  1998. package/es/ts-types/pivot-table/indicator/chart-indicator.js.map +1 -0
  1999. package/es/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
  2000. package/es/ts-types/pivot-table/indicator/checkbox-indicator.js +2 -0
  2001. package/es/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
  2002. package/es/ts-types/pivot-table/indicator/composite-indicator.d.ts +24 -0
  2003. package/es/ts-types/pivot-table/indicator/composite-indicator.js +2 -0
  2004. package/es/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -0
  2005. package/es/ts-types/pivot-table/indicator/image-indicator.d.ts +17 -0
  2006. package/es/ts-types/pivot-table/indicator/image-indicator.js +2 -0
  2007. package/es/ts-types/pivot-table/indicator/image-indicator.js.map +1 -0
  2008. package/es/ts-types/pivot-table/indicator/index.d.ts +12 -0
  2009. package/es/ts-types/pivot-table/indicator/index.js +2 -0
  2010. package/es/ts-types/pivot-table/indicator/index.js.map +1 -0
  2011. package/es/ts-types/pivot-table/indicator/link-indicator.d.ts +22 -0
  2012. package/es/ts-types/pivot-table/indicator/link-indicator.js +2 -0
  2013. package/es/ts-types/pivot-table/indicator/link-indicator.js.map +1 -0
  2014. package/es/ts-types/pivot-table/indicator/multilinetext-indicator.d.ts +11 -0
  2015. package/es/ts-types/pivot-table/indicator/multilinetext-indicator.js +2 -0
  2016. package/es/ts-types/pivot-table/indicator/multilinetext-indicator.js.map +1 -0
  2017. package/es/ts-types/pivot-table/indicator/progress-indicator.d.ts +11 -0
  2018. package/es/ts-types/pivot-table/indicator/progress-indicator.js +2 -0
  2019. package/es/ts-types/pivot-table/indicator/progress-indicator.js.map +1 -0
  2020. package/es/ts-types/pivot-table/indicator/sparkline-indicator.d.ts +10 -0
  2021. package/es/ts-types/pivot-table/indicator/sparkline-indicator.js +2 -0
  2022. package/es/ts-types/pivot-table/indicator/sparkline-indicator.js.map +1 -0
  2023. package/es/ts-types/pivot-table/title.d.ts +20 -0
  2024. package/es/ts-types/pivot-table/title.js +2 -0
  2025. package/es/ts-types/pivot-table/title.js.map +1 -0
  2026. package/es/ts-types/sparkline.d.ts +37 -0
  2027. package/es/ts-types/sparkline.js +2 -0
  2028. package/es/ts-types/sparkline.js.map +1 -0
  2029. package/es/ts-types/style-define.d.ts +72 -0
  2030. package/es/ts-types/style-define.js +2 -0
  2031. package/es/ts-types/style-define.js.map +1 -0
  2032. package/es/ts-types/table-engine.d.ts +405 -0
  2033. package/es/ts-types/table-engine.js +13 -0
  2034. package/es/ts-types/table-engine.js.map +1 -0
  2035. package/es/ts-types/theme.d.ts +164 -0
  2036. package/es/ts-types/theme.js +2 -0
  2037. package/es/ts-types/theme.js.map +1 -0
  2038. package/es/ts-types/tooltip.d.ts +26 -0
  2039. package/es/ts-types/tooltip.js +2 -0
  2040. package/es/ts-types/tooltip.js.map +1 -0
  2041. package/es/vrender.d.ts +8 -0
  2042. package/es/vrender.js +27 -0
  2043. package/es/vrender.js.map +1 -0
  2044. package/package.json +132 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/PivotTable.ts"],"names":[],"mappings":"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","file":"PivotTable.js","sourcesContent":["import type {\n FieldData,\n FieldDef,\n FieldFormat,\n PivotTableAPI,\n SortRules,\n PivotSortState,\n CellAddress,\n ICellHeaderPaths,\n DropDownMenuEventInfo,\n FieldKeyDef,\n PivotTableConstructorOptions,\n IHeaderTreeDefine,\n IDimensionInfo,\n SortOrder,\n IPagination,\n CellLocation,\n IIndicator,\n ColumnDefine,\n SortByIndicatorRule,\n SortTypeRule,\n SortRule,\n FilterRules,\n CellPivotRole\n} from './ts-types';\nimport { HierarchyState, SortType } from './ts-types';\nimport { PivotHeaderLayoutMap } from './layout/pivot-header-layout';\nimport { FlatDataToObjects } from './dataset/flatDataToObject';\nimport { PIVOT_TABLE_EVENT_TYPE } from './ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE';\nimport { cellInRange, emptyFn } from './tools/helper';\nimport { Dataset } from './dataset/dataset';\nimport { BaseTable } from './core/BaseTable';\nimport type { BaseTableAPI, HeaderData, PivotTableProtected } from './ts-types/base-table';\nimport type { ITitleComponent } from './components/title/title';\nimport { cloneDeep, isNumber, isValid } from '@visactor/vutils';\nimport { Env } from './tools/env';\nimport type { ITreeLayoutHeadNode } from './layout/tree-helper';\nimport { DimensionTree, type LayouTreeNode } from './layout/tree-helper';\nimport { TABLE_EVENT_TYPE } from './core/TABLE_EVENT_TYPE';\nimport { EditManager } from './edit/edit-manager';\nimport * as editors from './edit/editors';\nimport type { IEditor } from '@visactor/vtable-editors';\nimport { computeColWidth } from './scenegraph/layout/compute-col-width';\nimport { computeRowHeight } from './scenegraph/layout/compute-row-height';\nimport { isAllDigits } from './tools/util';\nimport type { IndicatorData } from './ts-types/list-table/layout-map/api';\nimport { cloneDeepSpec } from '@visactor/vutils-extension';\nimport {\n deleteHideIndicatorNode,\n parseColKeyRowKeyForPivotTable,\n supplementIndicatorNodesForCustomTree\n} from './layout/layout-helper';\nimport type { IEmptyTipComponent } from './components/empty-tip/empty-tip';\nimport { Factory } from './core/factory';\nimport { callUpdateColOnScenegraph, callUpdateRowOnScenegraph } from './tools/diff-cell';\nimport { clearChartRenderQueue } from './scenegraph/graphic/contributions/chart-render-helper';\n\nexport class PivotTable extends BaseTable implements PivotTableAPI {\n layoutNodeId: { seqId: number } = { seqId: 0 };\n declare internalProps: PivotTableProtected;\n declare options: PivotTableConstructorOptions;\n pivotSortState: {\n dimensions: IDimensionInfo[];\n order: SortOrder;\n }[];\n dataset?: Dataset; //数据处理对象 开启数据透视分析的表\n flatDataToObjects?: FlatDataToObjects; //数据处理对象 聚合后的flat数据 转成便于查询的行列二维数组\n // drillMenu: Menu; //上卷下钻的按钮\n // eslint-disable-next-line default-param-last\n constructor(options: PivotTableConstructorOptions);\n constructor(container: HTMLElement, options: PivotTableConstructorOptions);\n constructor(container?: HTMLElement | PivotTableConstructorOptions, options?: PivotTableConstructorOptions) {\n if (Env.mode === 'node') {\n options = container as PivotTableConstructorOptions;\n container = null;\n } else if (!(container instanceof HTMLElement)) {\n options = container as PivotTableConstructorOptions;\n if ((container as PivotTableConstructorOptions).container) {\n container = (container as PivotTableConstructorOptions).container;\n } else {\n container = null;\n }\n }\n super(container as HTMLElement, options);\n if (options) {\n if (!options.rowHierarchyType) {\n options.rowHierarchyType = 'grid';\n }\n if (!options.columnHierarchyType) {\n options.columnHierarchyType = 'grid';\n }\n if ((options as any).layout) {\n //TODO hack处理之前的demo都是定义到layout上的 所以这里直接并到options中\n Object.assign(options, (options as any).layout);\n }\n this.internalProps.columns = cloneDeep(options.columns);\n this.internalProps.rows = cloneDeep(options.rows);\n this.internalProps.indicators = cloneDeepSpec(options.indicators);\n options.indicators?.forEach((indicatorDefine, index) => {\n //如果editor 是一个IEditor的实例 需要这样重新赋值 否则clone后变质了\n if (typeof indicatorDefine === 'object' && indicatorDefine?.editor) {\n (this.internalProps.indicators![index] as IIndicator).editor = indicatorDefine.editor;\n }\n });\n this.internalProps.columnTree =\n options.indicatorsAsCol && !options.columns?.length && !options.columnTree ? [] : cloneDeep(options.columnTree);\n this.internalProps.rowTree =\n !options.indicatorsAsCol && !options.rows?.length && !options.rowTree ? [] : cloneDeep(options.rowTree);\n this.internalProps.records = options.records;\n\n //分页配置\n this.pagination = options.pagination;\n this.internalProps.columnResizeType = options.resize?.columnResizeType ?? options.columnResizeType ?? 'column';\n this.internalProps.rowResizeType = options.resize?.rowResizeType ?? options.rowResizeType ?? 'row';\n this.internalProps.dataConfig = cloneDeep(options.dataConfig);\n this.internalProps.columnWidthConfig = options.columnWidthConfig;\n this.internalProps.columnWidthConfigForRowHeader = options.columnWidthConfigForRowHeader;\n\n const records = this.internalProps.records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n if (options.customConfig?.enableDataAnalysis === false) {\n // let columnDimensionTree;\n // let rowDimensionTree;\n // if (options.columnTree) {\n const columnDimensionTree = new DimensionTree(\n (this.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n // }\n // if (options.rowTree) {\n const rowDimensionTree = new DimensionTree(\n (this.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n // }\n this.internalProps.layoutMap = new PivotHeaderLayoutMap(this, null, columnDimensionTree, rowDimensionTree);\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys,\n indicators: this.internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: this.internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: this.internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n const keysResults = parseColKeyRowKeyForPivotTable(this, options);\n const { rowKeys, columnKeys, indicatorKeys } = keysResults;\n let { columnDimensionTree, rowDimensionTree } = keysResults;\n this.dataset = new Dataset(\n this.internalProps.dataConfig,\n // this.pagination,\n rowKeys,\n columnKeys,\n // options.indicatorsAsCol === false ? rowKeys.concat(IndicatorDimensionKeyPlaceholder) : rowKeys,\n // options.indicatorsAsCol !== false ? columnKeys.concat(IndicatorDimensionKeyPlaceholder) : columnKeys,\n indicatorKeys,\n this.internalProps.indicators,\n options.indicatorsAsCol ?? true,\n options.records,\n options.rowHierarchyType,\n options.columnHierarchyType,\n this.internalProps.columnTree, //传递自定义树形结构会在dataset中补充指标节点children\n this.internalProps.rowTree,\n false,\n !!options.extensionRows,\n !!options.parseCustomTreeToMatchRecords\n );\n if (!options.columnTree) {\n if (options.indicatorsAsCol !== false) {\n this.dataset.colHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.colHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n } else {\n if (columnDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(columnDimensionTree.tree.children, options.indicators, true, this);\n columnDimensionTree.reset(columnDimensionTree.tree.children);\n }\n }\n if (!options.rowTree) {\n if (options.indicatorsAsCol === false) {\n this.dataset.rowHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.rowHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n } else {\n if (rowDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(rowDimensionTree.tree.children, options.indicators, true, this);\n rowDimensionTree.reset(rowDimensionTree.tree.children);\n }\n }\n this.internalProps.layoutMap = new PivotHeaderLayoutMap(\n this,\n this.dataset,\n columnDimensionTree,\n rowDimensionTree\n );\n }\n this._changePivotSortStateBySortRules();\n if ((options.pivotSortState?.length ?? 0) > 0) {\n this.pivotSortState = [];\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n if (Env.mode !== 'node') {\n this.editorManager = new EditManager(this);\n }\n\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n this.stateManager.initCheckedState(records);\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n // this.render();\n\n if (options.title) {\n const Title = Factory.getComponent('title') as ITitleComponent;\n this.internalProps.title = new Title(options.title, this);\n this.scenegraph.resize();\n }\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n //为了确保用户监听得到这个事件 这里做了异步 确保vtable实例已经初始化完成\n setTimeout(() => {\n this.fireListeners(TABLE_EVENT_TYPE.INITIALIZED, null);\n }, 0);\n }\n }\n static get EVENT_TYPE(): typeof PIVOT_TABLE_EVENT_TYPE {\n return PIVOT_TABLE_EVENT_TYPE;\n }\n isListTable(): false {\n return false;\n }\n isPivotTable(): true {\n return true;\n }\n isPivotChart(): false {\n return false;\n }\n get recordsCount() {\n return this.records?.length;\n }\n _canResizeColumn(col: number, row: number): boolean {\n const ifCan = super._canResizeColumn(col, row);\n if (ifCan) {\n const isSeriesNumber = this.internalProps.layoutMap.isSeriesNumber(col, row);\n if (isSeriesNumber && this.internalProps.rowSeriesNumber.disableColumnResize === true) {\n return false;\n } else if (!this.internalProps.layoutMap.indicatorsAsCol) {\n // 列上是否配置了禁止拖拽列宽的配置项disableColumnResize\n const cellDefine = this.internalProps.layoutMap.getBody(col, this.columnHeaderLevelCount);\n if ((cellDefine as IndicatorData)?.disableColumnResize) {\n return false;\n }\n }\n }\n return ifCan;\n }\n updateOption(options: PivotTableConstructorOptions) {\n const internalProps = this.internalProps;\n //维护选中状态\n // const range = internalProps.selection.range; //保留原有单元格选中状态\n super.updateOption(options);\n if (!options.rowHierarchyType) {\n options.rowHierarchyType = 'grid';\n }\n if (!options.columnHierarchyType) {\n options.columnHierarchyType = 'grid';\n }\n this.layoutNodeId = { seqId: 0 };\n this.internalProps.columns = cloneDeep(options.columns);\n this.internalProps.rows = cloneDeep(options.rows);\n this.internalProps.indicators = !options.indicators?.length ? [] : cloneDeepSpec(options.indicators);\n options.indicators?.forEach((indicatorDefine, index) => {\n if (typeof indicatorDefine === 'object' && indicatorDefine?.editor) {\n (this.internalProps.indicators[index] as IIndicator).editor = indicatorDefine.editor;\n }\n });\n this.internalProps.columnTree =\n options.indicatorsAsCol && !options.columns?.length && !options.columnTree ? [] : cloneDeep(options.columnTree);\n this.internalProps.rowTree =\n !options.indicatorsAsCol && !options.rows?.length && !options.rowTree ? [] : cloneDeep(options.rowTree);\n options.records && (this.internalProps.records = options.records);\n this.stateManager.initCheckedState(this.internalProps.records);\n this.stateManager.updateDrillState(undefined, undefined, false, false, -1, -1);\n //分页配置\n this.pagination = options.pagination;\n // 更新protectedSpace\n internalProps.columnResizeType = options.resize?.columnResizeType ?? options.columnResizeType ?? 'column';\n internalProps.rowResizeType = options.resize?.rowResizeType ?? options.rowResizeType ?? 'row';\n internalProps.dataConfig = cloneDeep(options.dataConfig);\n this.internalProps.columnWidthConfig = options.columnWidthConfig;\n this.internalProps.columnWidthConfigForRowHeader = options.columnWidthConfigForRowHeader;\n\n //维护tree树形结构的展开状态\n if (\n options?.rowHierarchyType !== 'grid' &&\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowHierarchyType !== 'grid' &&\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowExpandLevel === options?.rowExpandLevel\n ) {\n const beforeRowDimensions = (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowDimensionTree.tree.children;\n this.internalProps.rowTree?.forEach((node: IHeaderTreeDefine, index: number) => {\n const beforeRowDimension = beforeRowDimensions.find(\n item => item.dimensionKey === node.dimensionKey && item.value === node.value\n );\n if (beforeRowDimension) {\n this._syncHierarchyState(beforeRowDimension, node);\n }\n });\n }\n const records = this.internalProps.records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n\n //TODO 这里需要加上判断 dataConfig是否有配置变化\n if (options.customConfig?.enableDataAnalysis === false) {\n let columnDimensionTree;\n let rowDimensionTree;\n if (options.columnTree) {\n columnDimensionTree = new DimensionTree(\n (this.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n }\n if (options.rowTree) {\n rowDimensionTree = new DimensionTree(\n (this.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n }\n internalProps.layoutMap.clearHeaderPathCache();\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, null, columnDimensionTree, rowDimensionTree);\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: internalProps.layoutMap.fullRowDimensionKeys,\n columns: internalProps.layoutMap.colDimensionKeys,\n indicators: internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n const keysResults = parseColKeyRowKeyForPivotTable(this, options);\n const { rowKeys, columnKeys, indicatorKeys } = keysResults;\n let { columnDimensionTree, rowDimensionTree } = keysResults;\n this.dataset = new Dataset(\n internalProps.dataConfig,\n // this.pagination,\n rowKeys,\n columnKeys,\n indicatorKeys,\n this.internalProps.indicators,\n options.indicatorsAsCol ?? true,\n records,\n options.rowHierarchyType,\n options.columnHierarchyType,\n this.internalProps.columnTree, //传递自定义树形结构会在dataset中补充指标节点children\n this.internalProps.rowTree,\n false,\n !!options.extensionRows,\n !!options.parseCustomTreeToMatchRecords\n );\n if (!options.columnTree) {\n if (options.indicatorsAsCol !== false) {\n this.dataset.colHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.colHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n } else {\n if (columnDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(columnDimensionTree.tree.children, options.indicators, true, this);\n columnDimensionTree.reset(columnDimensionTree.tree.children);\n }\n }\n if (!options.rowTree) {\n if (options.indicatorsAsCol === false) {\n this.dataset.rowHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.rowHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n } else {\n if (rowDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(rowDimensionTree.tree.children, options.indicators, true, this);\n rowDimensionTree.reset(rowDimensionTree.tree.children);\n }\n }\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, this.dataset, columnDimensionTree, rowDimensionTree);\n }\n this._changePivotSortStateBySortRules();\n\n if ((options.pivotSortState?.length ?? 0) > 0) {\n this.pivotSortState = [];\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n\n // 更新表头\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n\n // this.hasMedia = null; // 避免重复绑定\n // 清空目前数据\n if (internalProps.releaseList) {\n internalProps.releaseList.forEach(releaseObj => releaseObj?.release?.());\n internalProps.releaseList = null;\n }\n // // 恢复selection状态\n // internalProps.selection.range = range;\n // this._updateSize();\n\n // 清空单元格内容\n this.scenegraph.clearCells();\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n\n // if (this.internalProps.title && !this.internalProps.title.isReleased) {\n // this._updateSize();\n // this.internalProps.title.resize();\n // this.scenegraph.resize();\n // }\n if (options.title) {\n const Title = Factory.getComponent('title') as ITitleComponent;\n this.internalProps.title = new Title(options.title, this);\n this.scenegraph.resize();\n }\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n // this.render();\n return new Promise(resolve => {\n setTimeout(resolve, 0);\n });\n }\n\n /**\n * 更新页码\n * @param pagination 修改页码\n */\n updatePagination(pagination?: IPagination): void {\n this.internalProps.layoutMap.clearHeaderPathCache();\n\n if (pagination) {\n if (!this.pagination) {\n this.pagination = { currentPage: 0, perPageCount: 0 };\n }\n typeof pagination.currentPage === 'number' &&\n pagination.currentPage >= 0 &&\n (this.pagination.currentPage = pagination.currentPage);\n pagination.perPageCount &&\n (this.pagination.perPageCount = pagination.perPageCount || this.pagination.perPageCount);\n // 清空单元格内容\n this.scenegraph.clearCells();\n //数据源缓存数据更新\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).setPagination(this.pagination);\n // this.refreshHeader();\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n this.render();\n } else if (this.pagination) {\n // 原来有分页 现在更新成不分页\n this.pagination = undefined;\n // 清空单元格内容\n this.scenegraph.clearCells();\n //数据源缓存数据更新\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).setPagination(undefined);\n // this.refreshHeader();\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n this.render();\n }\n }\n\n refreshHeader(): void {\n //设置列宽\n this.setMinMaxLimitWidth(true);\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n }\n\n refreshRowColCount(): void {\n const table = this;\n const { layoutMap } = table.internalProps;\n if (!layoutMap) {\n return;\n }\n table.colCount = layoutMap.colCount ?? 0;\n table.rowCount = layoutMap.rowCount ?? 0;\n\n this.internalProps.frozenColCount = this.options.frozenColCount\n ? this.options.frozenColCount\n : (layoutMap.rowHeaderLevelCount ?? 0) + layoutMap.leftRowSeriesNumberColumnCount;\n // this.internalProps.frozenColCount= Math.max(\n // (layoutMap.rowHeaderLevelCount ?? 0) + layoutMap.leftRowSeriesNumberColumnCount,\n // this.options.frozenColCount ?? 0\n // );\n table.frozenRowCount = Math.max(layoutMap.headerLevelCount, this.options.frozenRowCount ?? 0);\n\n if (table.bottomFrozenRowCount !== (this.options.bottomFrozenRowCount ?? 0)) {\n table.bottomFrozenRowCount = this.options.bottomFrozenRowCount ?? 0;\n }\n if (table.rightFrozenColCount !== (this.options.rightFrozenColCount ?? 0)) {\n table.rightFrozenColCount = this.options.rightFrozenColCount ?? 0;\n }\n this.stateManager.setFrozenCol(this.internalProps.frozenColCount);\n this.stateManager.setFrozenRow(this.frozenRowCount);\n }\n protected _getSortFuncFromHeaderOption(\n columns: undefined,\n field: FieldDef,\n fieldKey?: FieldKeyDef\n ): ((v1: any, v2: any, order: SortOrder) => 0 | 1 | -1) | undefined {\n return undefined;\n }\n /**\n * Get rowHierarchyType of pivotTable\n */\n get rowHierarchyType(): 'grid' | 'tree' | 'grid-tree' {\n return (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowHierarchyType;\n }\n /**\n * Get columnHierarchyType of pivotTable\n */\n get columnHierarchyType(): 'grid' | 'grid-tree' {\n return (this.internalProps.layoutMap as PivotHeaderLayoutMap).columnHierarchyType;\n }\n /**\n * 将现有tree中的的hierarchyState同步到rows透视树中\n * @param sourceNode\n * @param targetNode\n */\n _syncHierarchyState(sourceNode: any, targetNode: IHeaderTreeDefine) {\n if (sourceNode.value === targetNode.value && sourceNode.dimensionKey === targetNode.dimensionKey) {\n targetNode.hierarchyState =\n targetNode.hierarchyState ?? (targetNode?.children ? sourceNode.hierarchyState : undefined);\n (targetNode?.children as IHeaderTreeDefine[])?.forEach((targetChildNode: IHeaderTreeDefine, index: number) => {\n if (sourceNode?.children?.[index] && targetChildNode) {\n const beforeRowDimension = sourceNode.children.find(\n (item: any) => item.dimensionKey === targetChildNode.dimensionKey && item.value === targetChildNode.value\n );\n if (beforeRowDimension) {\n this._syncHierarchyState(beforeRowDimension, targetChildNode);\n }\n }\n });\n }\n }\n getRecordShowIndexByCell(col: number, row: number): number {\n return undefined;\n }\n getTableIndexByRecordIndex(recordIndex: number): number {\n return undefined;\n }\n getTableIndexByField(field: FieldDef): number {\n return undefined;\n }\n getCellAddrByFieldRecord(field: FieldDef, recordIndex: number): CellAddress {\n return undefined;\n }\n getBodyIndexByRow(row: number): number {\n const { layoutMap } = this.internalProps;\n return layoutMap.getBodyIndexByRow(row);\n }\n getBodyIndexByCol(col: number): number {\n const { layoutMap } = this.internalProps;\n return layoutMap.getBodyIndexByCol(col);\n }\n getFieldData(field: string, col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n return this.records[rowIndex]?.[colIndex];\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (cellDimensionPath) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n if (aggregator.records && aggregator.records.length >= 1) {\n return aggregator.records[0][field];\n }\n // return ''\n }\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n if (treeNode?.record) {\n return treeNode?.record[field];\n }\n }\n }\n getCellValue(col: number, row: number, skipCustomMerge?: boolean): FieldData {\n if (!skipCustomMerge) {\n const customMergeText = this.getCustomMergeValue(col, row);\n if (customMergeText) {\n return customMergeText;\n }\n }\n if (this.internalProps.layoutMap.isSeriesNumber(col, row)) {\n if (this.internalProps.layoutMap.isSeriesNumberInHeader(col, row)) {\n const { title } = this.internalProps.layoutMap.getSeriesNumberHeader(col, row);\n return title;\n }\n const { format } = this.internalProps.layoutMap.getSeriesNumberBody(col, row);\n return typeof format === 'function' ? format(col, row, this) : row - this.columnHeaderLevelCount + 1;\n } else if (this.internalProps.layoutMap.isHeader(col, row)) {\n const { title, fieldFormat } = this.internalProps.layoutMap.getHeader(col, row) as HeaderData;\n return typeof fieldFormat === 'function' ? fieldFormat(title, col, row, this as BaseTableAPI) : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n // const cellHeaderPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (typeof fieldFormat === 'function') {\n const fieldResult = fieldFormat(dataValue, col, row, this as BaseTableAPI);\n return fieldResult;\n }\n return dataValue;\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n ?.map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n ?.map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n // return typeof fieldFormat === 'function'\n // ? fieldFormat(valueNode?.value, col, row, this as BaseTableAPI)\n // : valueNode?.value ?? '';\n return aggregator.formatValue\n ? aggregator.formatValue(col, row, this as BaseTableAPI)\n : typeof fieldFormat === 'function'\n ? fieldFormat(aggregator?.value(), col, row, this as BaseTableAPI)\n : aggregator?.value() ?? '';\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const valueNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n return typeof fieldFormat === 'function'\n ? fieldFormat(valueNode?.value, col, row, this as BaseTableAPI)\n : valueNode?.value ?? '';\n }\n // return this.getFieldData(fieldFormat || field, col, row);\n }\n\n getCellOriginValue(col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n const { title } = table.internalProps.layoutMap.getHeader(col, row);\n return typeof title === 'function' ? title() : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n return aggregator.value ? aggregator.value() : undefined;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n return treeNode?.value;\n }\n\n // const { field } = table.internalProps.layoutMap.getBody(col, row);\n // return table.getFieldData(field, col, row);\n }\n\n /** 获取单元格展示数据源最原始值 */\n getCellRawValue(col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n const { title } = table.internalProps.layoutMap.getHeader(col, row);\n return typeof title === 'function' ? title() : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n false,\n indicatorPosition\n );\n return aggregator.value ? aggregator.value() : undefined;\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n return treeNode?.value;\n }\n }\n\n // 获取原始数据\n getCellOriginRecord(col: number, row: number) {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n return aggregator.records;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n return treeNode?.record;\n }\n }\n\n getCellRawRecord(col: number, row: number) {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n false,\n indicatorPosition\n );\n return aggregator.records;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n return treeNode?.record;\n }\n }\n /**\n * 全量更新排序规则\n * @param sortRules\n */\n updateSortRules(sortRules: SortRules, col?: number, row?: number) {\n if (this.internalProps.dataConfig) {\n this.internalProps.dataConfig.sortRules = sortRules;\n } else {\n this.internalProps.dataConfig = { sortRules };\n }\n this.dataset.updateSortRules(sortRules);\n this._changePivotSortStateBySortRules();\n const { layoutMap } = this.internalProps;\n layoutMap.resetHeaderTree();\n // 清空单元格内容\n this.scenegraph.clearCells();\n if (isNumber(col) && isNumber(row)) {\n if (this.isRowHeader(col, row)) {\n this.setMinMaxLimitWidth(true);\n this.internalProps._widthResizedColMap.clear();\n } else if (this.isCornerHeader(col, row)) {\n if (layoutMap.cornerSetting.titleOnDimension === 'column') {\n this.setMinMaxLimitWidth(true);\n this.internalProps._widthResizedColMap.clear();\n } else if (layoutMap.cornerSetting.titleOnDimension === 'row') {\n this.internalProps._heightResizedRowMap.clear();\n }\n } else if (this.isColumnHeader(col, row)) {\n this.internalProps._heightResizedRowMap.clear();\n }\n this.refreshRowColCount();\n } else {\n this.refreshHeader();\n }\n this.internalProps.useOneRowHeightFillAll = false;\n // 生成单元格场景树\n this.scenegraph.createSceneGraph(true);\n this.render();\n }\n _changePivotSortStateBySortRules() {\n this.pivotSortState = [];\n const sortRules = this.internalProps.dataConfig?.sortRules ?? [];\n for (let i = 0; i < sortRules.length; i++) {\n const sortRule = sortRules[i];\n // if ((sortRule as SortByIndicatorRule).sortType) {\n const dimensions: IDimensionInfo[] = [];\n if (\n (sortRule as SortByIndicatorRule).sortByIndicator &&\n (sortRule as SortByIndicatorRule).sortField ===\n (this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1])\n ) {\n for (let j = 0; j < (sortRule as SortByIndicatorRule).query.length; j++) {\n dimensions.push({\n dimensionKey: this.dataset.indicatorsAsCol ? this.dataset.columns[j] : this.dataset.rows[j],\n value: (sortRule as SortByIndicatorRule).query[j]\n });\n }\n dimensions.push({\n indicatorKey: (sortRule as SortByIndicatorRule).sortByIndicator,\n value:\n this.internalProps.layoutMap.getIndicatorInfo((sortRule as SortByIndicatorRule).sortByIndicator)?.title ??\n (sortRule as SortByIndicatorRule).sortByIndicator\n });\n } else {\n dimensions.push({\n dimensionKey: (sortRule as SortTypeRule).sortField,\n isPivotCorner: true,\n value: (sortRule as SortTypeRule).sortField\n });\n }\n const sortType = sortRule.sortType ? (sortRule.sortType.toUpperCase() as 'ASC' | 'DESC' | 'NORMAL') : 'ASC';\n this.pivotSortState.push({\n dimensions,\n order: SortType[sortType]\n });\n // }\n }\n }\n /** 解析配置columnWidthConfig传入的列宽配置 */\n _parseColumnWidthConfig(columnWidthConfig: { dimensions: IDimensionInfo[]; width: number }[]) {\n for (let i = 0; i < columnWidthConfig?.length; i++) {\n const item = columnWidthConfig[i];\n const dimensions = item.dimensions;\n const width = item.width;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n if (cell && cell.col >= this.rowHeaderLevelCount) {\n const cellPath = this.getCellHeaderPaths(cell.col, this.columnHeaderLevelCount); //如单指标隐藏指标情况,从body行去取headerPath才会包括指标维度\n if (cellPath.colHeaderPaths.length === dimensions.length) {\n let match = true;\n for (let i = 0; i < dimensions.length; i++) {\n const dimension = dimensions[i];\n const finded = (cellPath.colHeaderPaths as IDimensionInfo[]).findIndex((colPath: IDimensionInfo, index) => {\n if (colPath.indicatorKey === dimension.indicatorKey) {\n return true;\n }\n if (colPath.dimensionKey === dimension.dimensionKey && colPath.value === dimension.value) {\n return true;\n }\n return false;\n });\n if (finded < 0) {\n match = false;\n break;\n }\n }\n if (match && !this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n } else if (cell && cell.col < this.rowHeaderLevelCount) {\n if (!this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n }\n }\n\n // particularly for row header in react-vtable keepColumnWidthChange config\n _parseColumnWidthConfigForRowHeader(columnWidthConfig: { dimensions: IDimensionInfo[]; width: number }[]) {\n for (let i = 0; i < columnWidthConfig?.length; i++) {\n const item = columnWidthConfig[i];\n const dimensions = item.dimensions;\n const width = item.width;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n if (cell && cell.col < this.rowHeaderLevelCount) {\n if (!this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n }\n }\n\n /**\n * 更新排序状态\n * @param pivotSortStateConfig.dimensions 排序状态维度对应关系;pivotSortStateConfig.order 排序状态\n */\n updatePivotSortState(\n pivotSortStateConfig: {\n dimensions: IDimensionInfo[];\n order: SortOrder;\n }[]\n ) {\n this.pivotSortState = pivotSortStateConfig;\n }\n // changePivotSortState(pivotSortState: { dimensions: IDimensionInfo[]; order: SortOrder }) {\n // let isExist = false;\n // for (let i = 0; i < this.pivotSortState.length; i++) {\n // const pivotSortStateItem = this.pivotSortState[i];\n // const dimensions = pivotSortStateItem.dimensions;\n // const isEqual = dimensions.every(\n // (item, index) =>\n // (item.dimensionKey === pivotSortState.dimensions[index].dimensionKey ||\n // item.indicatorKey === pivotSortState.dimensions[index].indicatorKey) &&\n // item.value === pivotSortState.dimensions[index].value &&\n // ((isValid(item.isPivotCorner ?? pivotSortState.dimensions[index].isPivotCorner) &&\n // item.isPivotCorner === pivotSortState.dimensions[index].isPivotCorner) ||\n // (!isValid(item.isPivotCorner) && !isValid(pivotSortState.dimensions[index].isPivotCorner)))\n // );\n // if (isEqual) {\n // isExist = true;\n // pivotSortStateItem.order = pivotSortState.order;\n // break;\n // }\n // }\n // if (!isExist) {\n // this.pivotSortState.push(pivotSortState);\n // }\n // }\n /** 如果单元格所在维度或者指标配置了sort自动 可以通过该接口进行排序 */\n sort(col: number, row: number, order: SortOrder) {\n let dimensions: IDimensionInfo[];\n if ((this as PivotTable).isCornerHeader(col, row)) {\n const dimensionInfo = (this as PivotTable).getHeaderDefine(col, row) as any;\n dimensions = [];\n const dimension: IDimensionInfo = {\n isPivotCorner: true,\n dimensionKey: dimensionInfo.value,\n value: dimensionInfo.value\n };\n dimensions.push(dimension);\n } else if ((this as PivotTable).isColumnHeader(col, row)) {\n dimensions = (this as PivotTable).getCellHeaderPaths(col, row).colHeaderPaths as IDimensionInfo[];\n } else {\n dimensions = (this as PivotTable).getCellHeaderPaths(col, row).rowHeaderPaths as IDimensionInfo[];\n }\n\n const sortIndicator = dimensions[dimensions.length - 1].indicatorKey;\n\n const headerDefine = this.getHeaderDefine(col, row) as any;\n if (headerDefine.sort) {\n if ((this as PivotTable).dataset.sortRules) {\n const cacheOldDimensionSortRule: Record<string, SortRule> = {};\n for (let i = (this as PivotTable).dataset.sortRules.length - 1; i >= 0; i--) {\n const sortRule = (this as PivotTable).dataset.sortRules[i];\n if (headerDefine.dimensionKey && sortRule.sortField === headerDefine.dimensionKey) {\n cacheOldDimensionSortRule[sortRule.sortField] = sortRule;\n (this as PivotTable).dataset.sortRules.splice(i, 1);\n } else if (\n sortIndicator &&\n // headerDefine.indicatorKey === sortIndicator &&\n // sortIndicator === (sortRule as SortByIndicatorRule).sortByIndicator &&\n sortRule.sortField ===\n (this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1])\n ) {\n cacheOldDimensionSortRule[sortRule.sortField] = sortRule;\n (this as PivotTable).dataset.sortRules.splice(i, 1);\n }\n }\n if (sortIndicator) {\n const sortField = this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1];\n (this as PivotTable).dataset.sortRules.push({\n sortField,\n sortType: SortType[order],\n sortByIndicator: sortIndicator,\n query: dimensions.reduce((arr, dimension) => {\n if (dimension.dimensionKey) {\n arr.push(dimension.value);\n }\n return arr;\n }, []),\n sortFunc: (cacheOldDimensionSortRule[sortField] as SortByIndicatorRule)?.sortFunc\n });\n } else {\n (this as PivotTable).dataset.sortRules.push(\n Object.assign(cacheOldDimensionSortRule[headerDefine.dimensionKey] ?? {}, {\n sortField: headerDefine.dimensionKey,\n sortType: SortType[order as 'ASC' | 'DESC']\n })\n );\n }\n } else {\n if (sortIndicator) {\n (this as PivotTable).dataset.sortRules = [\n {\n sortField: this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1],\n sortType: SortType[order as 'ASC' | 'DESC'],\n sortByIndicator: sortIndicator,\n query: dimensions.reduce((arr, dimension) => {\n if (dimension.dimensionKey) {\n arr.push(dimension.value);\n }\n return arr;\n }, [])\n }\n ];\n } else {\n (this as PivotTable).dataset.sortRules = [\n {\n sortField: headerDefine.dimensionKey,\n sortType: SortType[order as 'ASC' | 'DESC']\n }\n ];\n }\n }\n\n (this as PivotTable).updateSortRules((this as PivotTable).dataset.sortRules, col, row);\n }\n }\n\n getPivotSortState(col: number, row: number): SortOrder {\n if (!this.pivotSortState) {\n return undefined;\n }\n const cellRange = this.getCellRange(col, row);\n for (let i = 0; i < this.pivotSortState.length; i++) {\n const pivotState = this.pivotSortState[i];\n const dimensions = pivotState.dimensions;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n // const { col: sortCol, row: sortRow, order } = this.pivotSortState[i];\n const order = pivotState.order;\n\n if (cell && cellInRange(cellRange, cell.col, cell.row)) {\n return order;\n }\n }\n return undefined;\n }\n /**\n * 拖拽移动表头位置\n * @param source 移动源位置\n * @param target 移动目标位置\n */\n _moveHeaderPosition(source: CellAddress, target: CellAddress) {\n const sourceCellRange = this.getCellRange(source.col, source.row);\n const targetCellRange = this.getCellRange(target.col, target.row);\n // 调用布局类 布局数据结构调整为移动位置后的\n const moveContext = (this.internalProps.layoutMap as PivotHeaderLayoutMap).moveHeaderPosition(source, target);\n if (moveContext) {\n if (moveContext.moveType === 'column') {\n // 是扁平数据结构 需要将二维数组this.records进行调整\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n for (let row = 0; row < this.internalProps.records.length; row++) {\n const sourceColumns = (this.internalProps.records[row] as unknown as number[]).splice(\n moveContext.sourceIndex - this.rowHeaderLevelCount,\n moveContext.sourceSize\n );\n sourceColumns.unshift((moveContext.targetIndex as any) - this.rowHeaderLevelCount, 0 as any);\n Array.prototype.splice.apply(this.internalProps.records[row] as unknown as number[], sourceColumns);\n }\n }\n //colWidthsMap 中存储着每列的宽度 根据移动 sourceCol targetCol 调整其中的位置\n // this.colWidthsMap.adjustOrder(moveContext.sourceIndex, moveContext.targetIndex, moveContext.moveSize);\n this.colWidthsMap.exchangeOrder(\n sourceCellRange.start.col,\n sourceCellRange.end.col - sourceCellRange.start.col + 1,\n targetCellRange.start.col,\n targetCellRange.end.col - targetCellRange.start.col + 1,\n moveContext.targetIndex\n );\n //下面代码取自refreshHeader列宽设置逻辑\n //设置列宽极限值 TODO 目前是有问题的 最大最小宽度限制 移动列位置后不正确\n this.setMinMaxLimitWidth();\n } else if (moveContext.moveType === 'row') {\n // 是扁平数据结构 需要将二维数组this.records进行调整\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const sourceRows = (this.internalProps.records as unknown as number[]).splice(\n moveContext.sourceIndex - this.columnHeaderLevelCount,\n moveContext.sourceSize\n );\n sourceRows.unshift((moveContext.targetIndex as any) - this.columnHeaderLevelCount, 0 as any);\n Array.prototype.splice.apply(this.internalProps.records, sourceRows);\n }\n //colWidthsMap 中存储着每列的宽度 根据移动 sourceCol targetCol 调整其中的位置\n // this.rowHeightsMap.adjustOrder(moveContext.sourceIndex, moveContext.targetIndex, moveContext.moveSize);\n if (moveContext.targetIndex > moveContext.sourceIndex) {\n this.rowHeightsMap.exchangeOrder(\n moveContext.sourceIndex,\n moveContext.sourceSize,\n moveContext.targetIndex + moveContext.sourceSize - moveContext.targetSize,\n moveContext.targetSize,\n moveContext.targetIndex\n );\n } else {\n this.rowHeightsMap.exchangeOrder(\n moveContext.sourceIndex,\n moveContext.sourceSize,\n moveContext.targetIndex,\n moveContext.targetSize,\n moveContext.targetIndex\n );\n }\n }\n return moveContext;\n }\n return null;\n }\n /**\n * 表头切换层级状态\n * @param col\n * @param row\n * @param recalculateColWidths 是否重新计算列宽 默认为true.(设置width:auto或者 autoWidth 情况下才有必要考虑该参数)\n */\n toggleHierarchyState(col: number, row: number, recalculateColWidths: boolean = true) {\n this.internalProps.layoutMap.clearHeaderPathCache();\n\n const hierarchyState = this.getHierarchyState(col, row);\n if (hierarchyState === HierarchyState.expand) {\n this._refreshHierarchyState(col, row, recalculateColWidths);\n this.fireListeners(PIVOT_TABLE_EVENT_TYPE.TREE_HIERARCHY_STATE_CHANGE, {\n col: col,\n row: row,\n hierarchyState: HierarchyState.collapse\n });\n } else if (hierarchyState === HierarchyState.collapse) {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n if (Array.isArray(headerTreeNode.children)) {\n //children 是数组 表示已经有子树节点信息\n this._refreshHierarchyState(col, row, recalculateColWidths);\n }\n this.fireListeners(PIVOT_TABLE_EVENT_TYPE.TREE_HIERARCHY_STATE_CHANGE, {\n col: col,\n row: row,\n hierarchyState: HierarchyState.expand,\n originData: headerTreeNode\n });\n }\n }\n\n // beforeUpdateCell主要用于setTreeNodeChildren方法\n _refreshHierarchyState(col: number, row: number, recalculateColWidths: boolean = true, beforeUpdateCell?: Function) {\n const oldFrozenColCount = this.frozenColCount;\n const oldFrozenRowCount = this.frozenRowCount;\n const visibleStartRow = this.getBodyVisibleRowRange().rowStart;\n this.internalProps._oldRowCount = this.rowCount;\n this.internalProps._oldColCount = this.colCount;\n let notFillWidth = false;\n let notFillHeight = false;\n this.stateManager.updateHoverIcon(col, row, undefined, undefined);\n const checkHasChart = this.internalProps.layoutMap.checkHasChart();\n // 检查当前状态总宽高未撑满autoFill是否在起作用\n if (checkHasChart) {\n if (this.autoFillWidth) {\n notFillWidth = this.getAllColsWidth() <= this.tableNoFrameWidth;\n }\n if (this.autoFillHeight) {\n notFillHeight = this.getAllRowsHeight() <= this.tableNoFrameHeight;\n }\n }\n const isChangeRowTree = this.internalProps.layoutMap.isRowHeader(col, row);\n const result: {\n addCellPositionsRowDirection?: CellAddress[];\n removeCellPositionsRowDirection?: CellAddress[];\n updateCellPositionsRowDirection?: CellAddress[];\n addCellPositionsColumnDirection?: CellAddress[];\n removeCellPositionsColumnDirection?: CellAddress[];\n updateCellPositionsColumnDirection?: CellAddress[];\n } = isChangeRowTree\n ? (this.internalProps.layoutMap as PivotHeaderLayoutMap).toggleHierarchyState(col, row)\n : (this.internalProps.layoutMap as PivotHeaderLayoutMap).toggleHierarchyStateForColumnTree(col, row);\n beforeUpdateCell && beforeUpdateCell();\n //影响行数\n this.refreshRowColCount(); //逻辑中有setFrozenCol处理 影响了原本bodyGroup的列数\n const newFrozenColCount = this.frozenColCount;\n const newFrozenRowCount = this.frozenRowCount;\n this.clearCellStyleCache();\n if (this.rowHierarchyType === 'tree') {\n //'grid-tree'模式下不用特意更新,updateRow会更新掉和`tree`模式不一样\n this.scenegraph.updateHierarchyIcon(col, row);\n }\n this.reactCustomLayout?.clearCache();\n if (this.rowHierarchyType !== 'grid-tree' && this.columnHierarchyType !== 'grid-tree') {\n //增加'grid-tree'之前的逻辑是这样子的\n this.scenegraph.updateRow(\n result.removeCellPositionsRowDirection,\n result.addCellPositionsRowDirection,\n result.updateCellPositionsRowDirection,\n recalculateColWidths\n );\n } else {\n // bug 太多了 直接先全部生成吧!! TODO 性能优化\n // if (\n // this.columnHierarchyType === 'grid-tree' &&\n // this.isColumnHeader(col, row) &&\n // oldFrozenRowCount > this.frozenRowCount //p判断这个\n // ) {\n // callUpdateRowOnScenegraph(result, recalculateColWidths, newFrozenRowCount, oldFrozenRowCount, this.scenegraph);\n // callUpdateColOnScenegraph(result, newFrozenColCount, oldFrozenColCount, this.scenegraph);\n // } else {\n // callUpdateColOnScenegraph(result, newFrozenColCount, oldFrozenColCount, this.scenegraph);\n // callUpdateRowOnScenegraph(result, recalculateColWidths, newFrozenRowCount, oldFrozenRowCount, this.scenegraph);\n // }\n\n // if (this.rowHierarchyType === 'grid-tree' || this.columnHierarchyType === 'grid-tree') {\n // this.scenegraph.updateCornerHeaderCells();\n // // if (newFrozenColCount !== oldFrozenColCount) {\n // this.scenegraph.updateRowHeaderCells();\n // // }\n // // if (newFrozenRowCount !== oldFrozenRowCount) {\n // this.scenegraph.updateColumnHeaderCells();\n // // }\n // }\n this.internalProps.stick.changedCells.clear();\n this.scenegraph.clearCells();\n this.clearCellStyleCache();\n this.scenegraph.createSceneGraph();\n this.scrollToRow(visibleStartRow);\n // this.renderWithRecreateCells();\n }\n this.reactCustomLayout?.updateAllCustomCell();\n\n if (checkHasChart) {\n // 检查更新节点状态后总宽高未撑满autoFill是否在起作用\n if (this.autoFillWidth && !notFillWidth) {\n notFillWidth = this.getAllColsWidth() <= this.tableNoFrameWidth;\n }\n if (this.autoFillHeight && !notFillHeight) {\n notFillHeight = this.getAllRowsHeight() <= this.tableNoFrameHeight;\n }\n if (this.widthMode === 'adaptive' || notFillWidth || this.heightMode === 'adaptive' || notFillHeight) {\n this.scenegraph.updateChartSizeForResizeColWidth(-1); // 如果收起展开有性能问题 可以排查下这个防范\n }\n }\n this.internalProps._oldRowCount = undefined;\n this.internalProps._oldColCount = undefined;\n }\n /**\n * 通过表头的维度值路径来计算单元格位置 getCellAddressByHeaderPaths接口更强大一些 不限表头 不限参数格式\n * @param dimensionPaths\n * @returns\n */\n getHeaderCellAddressByPath(dimensionPaths: IDimensionInfo[]): CellAddress {\n const cellAddress = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getPivotCellAdress(dimensionPaths);\n return cellAddress;\n }\n /**\n * 通过表头的维度值路径来计算单元格位置\n * @param dimensionPaths\n * @returns\n */\n getCellAddressByHeaderPaths(\n dimensionPaths:\n | {\n colHeaderPaths: IDimensionInfo[];\n rowHeaderPaths: IDimensionInfo[];\n cellLocation: CellLocation;\n }\n | IDimensionInfo[]\n ): CellAddress {\n const cellAddress = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getCellAdressByHeaderPath(\n dimensionPaths\n );\n return cellAddress;\n }\n\n /**\n * 通过传入的坐标 获取该位置当前单元格的维度路径;\n * @param coordinate 从body左上角为原点 coordinate为偏移距离 去计算单元格的headerPath;\n * 如不传coordinate坐标则按取body中左上角第一个单元格的维度路径\n * @returns\n */\n getHeaderPathByXY(coordinate?: { x: number; y: number }): ICellHeaderPaths {\n let cellAddr;\n if (coordinate) {\n cellAddr = this.getCellAt(\n coordinate.x + this.getFrozenColsWidth() + this.scrollLeft + 1,\n coordinate.y + this.getFrozenRowsHeight() + this.scrollTop + 1\n );\n } else {\n cellAddr = this.getCellAt(\n this.getFrozenColsWidth() + this.scrollLeft + 1,\n this.getFrozenRowsHeight() + this.scrollTop + 1\n );\n }\n const cellHeaderPaths = this.internalProps.layoutMap.getCellHeaderPaths(cellAddr.col, cellAddr.row);\n return cellHeaderPaths;\n }\n getHierarchyState(col: number, row: number): HierarchyState {\n return (this._getHeaderLayoutMap(col, row) as HeaderData)?.hierarchyState;\n }\n /** 获取列头树结构 */\n getLayoutColumnTree(): LayouTreeNode[] {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutColumnTree();\n }\n /** 获取表格列头树形结构的占位的总节点数 */\n getLayoutColumnTreeCount(): number {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutColumnTreeCount();\n }\n /** 获取行头树结构 */\n getLayoutRowTree(): LayouTreeNode[] {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutRowTree();\n }\n /** 获取表格行头树形结构的占位的总节点数 */\n getLayoutRowTreeCount(): number {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutRowTreeCount();\n }\n /**\n * 根据行列号获取表头tree节点,包含了用户在自定义树rowTree及columnTree树上的自定义属性(也是内部布局树的节点,获取后请不要随意修改)\n * @param col\n * @param row\n * @returns\n */\n getCellHeaderTreeNodes(col: number, row: number): ICellHeaderPaths {\n const layoutMap = this.internalProps.layoutMap;\n const headerNodes = layoutMap.getCellHeaderPathsWithTreeNode(col, row);\n return headerNodes;\n }\n\n getMenuInfo(col: number, row: number, type: string): DropDownMenuEventInfo {\n const dimensionInfos = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getPivotDimensionInfo(col, row);\n const result: DropDownMenuEventInfo = {\n dimensionKey: dimensionInfos[dimensionInfos.length - 1].dimensionKey,\n value: this.getCellValue(col, row),\n cellLocation: this.getCellLocation(col, row),\n isPivotCorner: this.isCornerHeader(col, row),\n event: undefined\n };\n return result;\n }\n\n /**\n * 设置表格数据 及排序状态\n * @param records\n * @param sort\n */\n setRecords(records: Array<any>): void {\n clearChartRenderQueue();\n const oldHoverState = { col: this.stateManager.hover.cellPos.col, row: this.stateManager.hover.cellPos.row };\n this.options.records = this.internalProps.records = records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n const options = this.options;\n const internalProps = this.internalProps;\n if (this.options.customConfig?.enableDataAnalysis === false) {\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: internalProps.layoutMap.fullRowDimensionKeys,\n columns: internalProps.layoutMap.colDimensionKeys,\n indicators: internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n this.dataset.setRecords(records);\n let columnDimensionTree;\n let rowDimensionTree;\n if (options.columnTree) {\n columnDimensionTree = internalProps.layoutMap.columnDimensionTree;\n } else {\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n }\n if (options.rowTree) {\n rowDimensionTree = internalProps.layoutMap.rowDimensionTree;\n } else {\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n }\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, this.dataset, columnDimensionTree, rowDimensionTree);\n this.pivotSortState = [];\n if (options.pivotSortState) {\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n }\n\n // 更新表头\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n\n // 清空单元格内容\n this.scenegraph.clearCells();\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n // 生成单元格场景树\n this.clearCellStyleCache();\n this.scenegraph.createSceneGraph();\n this.stateManager.updateHoverPos(oldHoverState.col, oldHoverState.row);\n if (this.internalProps.title && !this.internalProps.title.isReleased) {\n this._updateSize();\n this.internalProps.title.resize();\n this.scenegraph.resize();\n }\n this.eventManager.updateEventBinder();\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n }\n\n startEditCell(col?: number, row?: number, value?: string | number) {\n if (isValid(col) && isValid(row)) {\n this.eventManager.isDraging = false;\n this.selectCell(col, row);\n this.editorManager.startEditCell(col, row, value);\n } else if (this.stateManager.select?.cellPos) {\n const { col, row } = this.stateManager.select.cellPos;\n if (isValid(col) && isValid(row)) {\n this.editorManager.startEditCell(col, row, value);\n }\n }\n }\n /** 结束编辑 */\n completeEditCell() {\n this.editorManager.completeEdit();\n }\n /** 获取单元格对应的编辑器 */\n getEditor(col: number, row: number) {\n let editorDefine;\n if (this.isCornerHeader(col, row)) {\n const define = this.getHeaderDefine(col, row);\n editorDefine = (define as ColumnDefine)?.headerEditor ?? this.options.headerEditor;\n } else if (this.isHeader(col, row)) {\n const define = this.getHeaderDefine(col, row);\n editorDefine = (define as ColumnDefine)?.headerEditor ?? this.options.headerEditor;\n } else {\n const define = this.getBodyColumnDefine(col, row);\n editorDefine = (define as ColumnDefine)?.editor ?? this.options.editor;\n }\n if (typeof editorDefine === 'function') {\n const arg = {\n col,\n row,\n dataValue: this.getCellOriginValue(col, row),\n value: this.getCellValue(col, row) || '',\n table: this\n };\n editorDefine = (editorDefine as Function)(arg);\n }\n if (typeof editorDefine === 'string') {\n return editors.get(editorDefine);\n }\n return editorDefine as IEditor;\n }\n /** 检查单元格是否定义过编辑器 不管编辑器是否有效 只要有定义就返回true */\n isHasEditorDefine(col: number, row: number) {\n const define = this.getBodyColumnDefine(col, row);\n let editorDefine = (define as ColumnDefine)?.editor ?? this.options.editor;\n\n if (typeof editorDefine === 'function') {\n const arg = {\n col,\n row,\n dataValue: this.getCellOriginValue(col, row),\n value: this.getCellValue(col, row) || '',\n table: this\n };\n editorDefine = (editorDefine as Function)(arg);\n }\n return isValid(editorDefine);\n }\n /** 更改单元格数据 会触发change_cell_value事件*/\n changeCellValue(col: number, row: number, value: string | undefined, workOnEditableCell = false) {\n if ((workOnEditableCell && this.isHasEditorDefine(col, row)) || workOnEditableCell === false) {\n let newValue: any = value;\n const oldValue = this.getCellOriginValue(col, row);\n const rawValue = this.getCellRawValue(col, row);\n if (typeof rawValue === 'number' && isAllDigits(value)) {\n newValue = parseFloat(value);\n }\n this._changeCellValueToDataSet(col, row, oldValue, newValue);\n // this.scenegraph.updateCellContent(col, row);\n const range = this.getCellRange(col, row);\n for (let sCol = range.start.col; sCol <= range.end.col; sCol++) {\n for (let sRow = range.start.row; sRow <= range.end.row; sRow++) {\n this.scenegraph.updateCellContent(sCol, sRow);\n }\n }\n if (this.widthMode === 'adaptive' || (this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth)) {\n if (this.internalProps._widthResizedColMap.size === 0) {\n //如果没有手动调整过行高列宽 则重新计算一遍并重新分配\n this.scenegraph.recalculateColWidths();\n }\n } else if (!this.internalProps._widthResizedColMap.has(col)) {\n const oldWidth = this.getColWidth(col);\n const newWidth = computeColWidth(col, 0, this.rowCount - 1, this, false);\n if (newWidth !== oldWidth) {\n this.scenegraph.updateColWidth(col, newWidth - oldWidth);\n }\n }\n if (\n this.heightMode === 'adaptive' ||\n (this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight)\n ) {\n if (this.internalProps._heightResizedRowMap.size === 0) {\n this.scenegraph.recalculateRowHeights();\n }\n } else if (this.isAutoRowHeight(row) && !this.internalProps._heightResizedRowMap.has(row)) {\n const oldHeight = this.getRowHeight(row);\n const newHeight = computeRowHeight(row, 0, this.colCount - 1, this);\n this.scenegraph.updateRowHeight(row, newHeight - oldHeight);\n }\n if (oldValue !== newValue) {\n this.fireListeners(TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {\n col,\n row,\n rawValue,\n currentValue: oldValue,\n changedValue: newValue\n });\n }\n this.scenegraph.updateNextFrame();\n }\n }\n /**\n * 批量更新多个单元格的数据\n * @param col 粘贴数据的起始列号\n * @param row 粘贴数据的起始行号\n * @param values 多个单元格的数据数组\n * @param workOnEditableCell 是否仅更改可编辑单元格\n */\n changeCellValues(startCol: number, startRow: number, values: string[][], workOnEditableCell = false) {\n let pasteColEnd = startCol;\n let pasteRowEnd = startRow;\n // const rowCount = values.length;\n //#region 提前组织好未更改前的数据\n const beforeChangeValues: (string | number)[][] = [];\n const oldValues: (string | number)[][] = [];\n for (let i = 0; i < values.length; i++) {\n if (startRow + i > this.rowCount - 1) {\n break;\n }\n const rowValues = values[i];\n const rawRowValues: (string | number)[] = [];\n const oldRowValues: (string | number)[] = [];\n beforeChangeValues.push(rawRowValues);\n oldValues.push(oldRowValues);\n for (let j = 0; j < rowValues.length; j++) {\n if (startCol + j > this.colCount - 1) {\n break;\n }\n const beforeChangeValue = this.getCellRawValue(startCol + j, startRow + i);\n rawRowValues.push(beforeChangeValue);\n const oldValue = this.getCellOriginValue(startCol + j, startRow + i);\n oldRowValues.push(oldValue);\n }\n }\n //#endregion\n for (let i = 0; i < values.length; i++) {\n if (startRow + i > this.rowCount - 1) {\n break;\n }\n pasteRowEnd = startRow + i;\n const rowValues = values[i];\n let thisRowPasteColEnd = startCol;\n for (let j = 0; j < rowValues.length; j++) {\n if (startCol + j > this.colCount - 1) {\n break;\n }\n\n thisRowPasteColEnd = startCol + j;\n if (\n (workOnEditableCell && this.isHasEditorDefine(startCol + j, startRow + i)) ||\n workOnEditableCell === false\n ) {\n const value = rowValues[j];\n let newValue: string | number = value;\n const oldValue = oldValues[i][j];\n const rawValue = beforeChangeValues[i][j];\n if (typeof rawValue === 'number' && isAllDigits(value)) {\n newValue = parseFloat(value);\n }\n this._changeCellValueToDataSet(startCol + j, startRow + i, oldValue, newValue);\n const changedValue = this.getCellOriginValue(startCol + j, startRow + i);\n if (changedValue !== oldValue) {\n this.fireListeners(TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {\n col: startCol + j,\n row: startRow + i,\n rawValue,\n currentValue: oldValue,\n changedValue\n });\n }\n }\n }\n pasteColEnd = Math.max(pasteColEnd, thisRowPasteColEnd);\n }\n\n // const cell_value = this.getCellValue(col, row);\n const startRange = this.getCellRange(startCol, startRow);\n const range = this.getCellRange(pasteColEnd, pasteRowEnd);\n for (let sCol = startRange.start.col; sCol <= range.end.col; sCol++) {\n for (let sRow = startRange.start.row; sRow <= range.end.row; sRow++) {\n this.scenegraph.updateCellContent(sCol, sRow);\n }\n }\n if (this.widthMode === 'adaptive' || (this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth)) {\n if (this.internalProps._widthResizedColMap.size === 0) {\n //如果没有手动调整过行高列宽 则重新计算一遍并重新分配\n this.scenegraph.recalculateColWidths();\n }\n } else {\n for (let sCol = startCol; sCol <= range.end.col; sCol++) {\n if (!this.internalProps._widthResizedColMap.has(sCol)) {\n const oldWidth = this.getColWidth(sCol);\n const newWidth = computeColWidth(sCol, 0, this.rowCount - 1, this, false);\n if (newWidth !== oldWidth) {\n this.scenegraph.updateColWidth(sCol, newWidth - oldWidth);\n }\n }\n }\n }\n\n if (this.heightMode === 'adaptive' || (this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight)) {\n this.scenegraph.recalculateRowHeights();\n } else if (this.isAutoRowHeight(startRow)) {\n const rows: number[] = [];\n const deltaYs: number[] = [];\n for (let sRow = startRow; sRow <= range.end.row; sRow++) {\n if (this.rowHeightsMap.get(sRow)) {\n // 已经计算过行高的才走更新逻辑\n const oldHeight = this.getRowHeight(sRow);\n const newHeight = computeRowHeight(sRow, 0, this.colCount - 1, this);\n rows.push(sRow);\n deltaYs.push(newHeight - oldHeight);\n }\n }\n this.scenegraph.updateRowsHeight(rows, deltaYs);\n }\n\n this.scenegraph.updateNextFrame();\n }\n\n private _changeCellValueToDataSet(col: number, row: number, oldValue: string | number, newValue: string | number) {\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n this.records[rowIndex][colIndex] = newValue;\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (this.isCornerHeader(col, row)) {\n this.internalProps.layoutMap.changeCornerTitle(col, row, newValue as string);\n } else if (this.isHeader(col, row)) {\n this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue as string);\n\n !this.isCornerHeader(col, row) &&\n this.dataset.changeRecordFieldValue(\n cellDimensionPath.colHeaderPaths?.length\n ? cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey\n : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey,\n oldValue,\n newValue\n );\n } else {\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n this.dataset.changeTreeNodeValue(\n !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n newValue\n );\n }\n } else if (this.flatDataToObjects) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n\n if (this.isHeader(col, row)) {\n this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue as string);\n\n !this.isCornerHeader(col, row) &&\n this.flatDataToObjects.changeRecordFieldValue(\n cellDimensionPath.colHeaderPaths?.length\n ? cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey\n : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey,\n oldValue,\n newValue\n );\n } else {\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n this.flatDataToObjects.changeTreeNodeValue(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n newValue\n );\n }\n }\n }\n _hasCustomRenderOrLayout() {\n if (this.options.customRender) {\n return true;\n }\n const { columnsDefine, rowsDefine, indicatorsDefine } = this.internalProps.layoutMap;\n for (let i = 0; i < columnsDefine.length; i++) {\n const columnDefine = columnsDefine[i];\n if (typeof columnDefine !== 'string' && (columnDefine.headerCustomLayout || columnDefine.headerCustomRender)) {\n return true;\n }\n }\n for (let i = 0; i < rowsDefine.length; i++) {\n const rowDefine = rowsDefine[i];\n if (typeof rowDefine !== 'string' && (rowDefine.headerCustomLayout || rowDefine.headerCustomRender)) {\n return true;\n }\n }\n for (let i = 0; i < indicatorsDefine.length; i++) {\n const indicatorDefine = indicatorsDefine[i];\n if (\n typeof indicatorDefine !== 'string' &&\n (indicatorDefine.customLayout ||\n indicatorDefine.headerCustomLayout ||\n indicatorDefine.customRender ||\n indicatorDefine.headerCustomRender)\n ) {\n return true;\n }\n }\n return false;\n }\n\n changeRecordOrder(source: number, target: number) {\n //\n }\n\n /**\n * 树形展示场景下,如果需要动态插入子节点的数据可以配合使用该接口,其他情况不适用\n * @param children 设置到该单元格的子节点\n * @param records 该节点展开后新增数据\n * @param col 需要设置子节点的单元格地址\n * @param row 需要设置子节点的单元格地址\n */\n setTreeNodeChildren(children: IHeaderTreeDefine[], records: any[], col: number, row: number) {\n if (this.flatDataToObjects) {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n headerTreeNode.children = children;\n this._refreshHierarchyState(col, row, true, () => {\n this.flatDataToObjects.changeDataConfig({\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys,\n indicators: this.internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: this.internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: this.internalProps.layoutMap.indicatorDimensionKey\n });\n this.flatDataToObjects.addRecords(records);\n });\n } else {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n headerTreeNode.children = children;\n this._refreshHierarchyState(col, row, true, () => {\n this.dataset._rowTreeHasChanged();\n this.dataset.changeDataConfig({\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys\n });\n this.dataset.addRecords(records);\n });\n }\n }\n\n /** 更新数据过滤规则 对应dataConfig中filterRules配置格式 */\n updateFilterRules(filterRules: FilterRules) {\n this.internalProps.dataConfig.filterRules = filterRules;\n this.dataset.updateFilterRules(filterRules);\n this.renderWithRecreateCells();\n }\n /** 获取过滤后的数据 */\n getFilteredRecords() {\n return this.dataset?.filterRules;\n }\n\n getCellPivotRole(col: number, row: number) {\n const path = this.getCellHeaderPaths(col, row);\n const { cellLocation, colHeaderPaths, rowHeaderPaths } = path;\n\n let colRole: CellPivotRole = colHeaderPaths.length ? 'normal' : undefined;\n let rowRole: CellPivotRole = rowHeaderPaths.length ? 'normal' : undefined;\n\n (colHeaderPaths as IDimensionInfo[]).forEach((path: IDimensionInfo) => {\n if (path.role === 'sub-total') {\n colRole = 'sub-total';\n } else if (path.role === 'grand-total') {\n colRole = 'grand-total';\n }\n });\n\n (rowHeaderPaths as IDimensionInfo[]).forEach((path: IDimensionInfo) => {\n if (path.role === 'sub-total') {\n rowRole = 'sub-total';\n } else if (path.role === 'grand-total') {\n rowRole = 'grand-total';\n }\n });\n\n return {\n colRole,\n rowRole,\n cellLocation\n };\n }\n\n /**\n * 开启层级节点展开的loading动画状态,在设置数据调用setRecordChildren后会自动关闭loading\n * @param col\n * @param row\n */\n setLoadingHierarchyState(col: number, row: number) {\n this.scenegraph.setLoadingHierarchyState(col, row);\n }\n release() {\n this.internalProps.layoutMap.clearHeaderPathCache();\n this.editorManager.release();\n super.release();\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import type { ColumnIconOption, SvgIcon } from '../ts-types';
2
+ import { Style } from './style/Style';
3
+ import type { BaseTableAPI } from '../ts-types/base-table';
4
+ import { CheckboxStyle } from './style/CheckboxStyle';
5
+ import { RadioStyle } from './style/RadioStyle';
6
+ import { SwitchStyle } from './style/SwitchStyle';
7
+ import { ButtonStyle } from './style/ButtonStyle';
8
+ export declare class BodyHelper {
9
+ expandIcon: SvgIcon;
10
+ collapseIcon: SvgIcon;
11
+ _table: BaseTableAPI;
12
+ constructor(_table: BaseTableAPI);
13
+ getIcons(col: number, row: number, cellValue: any, dataValue: any, context: CanvasRenderingContext2D): ColumnIconOption[];
14
+ getStyleClass(cellType: 'text' | 'link' | 'image' | 'video' | 'chart' | 'sparkline' | 'progressbar' | 'chart' | 'checkbox' | 'radio' | 'switch' | 'button'): typeof Style | typeof RadioStyle | typeof SwitchStyle | typeof ButtonStyle | typeof CheckboxStyle;
15
+ getCellIconFromRecordValue(icon: ColumnIconOption, col: number, row: number): ColumnIconOption;
16
+ getCellIconFromRecordValue(icon: ColumnIconOption[], col: number, row: number): ColumnIconOption[];
17
+ getCellIconFromRecordValue(icon: ColumnIconOption | ColumnIconOption[], col: number, row: number): ColumnIconOption | ColumnIconOption[];
18
+ getHierarchyIcon(col: number, row: number): SvgIcon;
19
+ getHierarchyIconWidth(): number;
20
+ }
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
4
+ void 0 === k2 && (k2 = k);
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
7
+ enumerable: !0,
8
+ get: function() {
9
+ return m[k];
10
+ }
11
+ }), Object.defineProperty(o, k2, desc);
12
+ } : function(o, m, k, k2) {
13
+ void 0 === k2 && (k2 = k), o[k2] = m[k];
14
+ }), __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function(o, v) {
15
+ Object.defineProperty(o, "default", {
16
+ enumerable: !0,
17
+ value: v
18
+ });
19
+ } : function(o, v) {
20
+ o.default = v;
21
+ }), __importStar = this && this.__importStar || function(mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
25
+ return __setModuleDefault(result, mod), result;
26
+ };
27
+
28
+ Object.defineProperty(exports, "__esModule", {
29
+ value: !0
30
+ }), exports.BodyHelper = void 0;
31
+
32
+ const ts_types_1 = require("../ts-types"), registerIcons = __importStar(require("../icons")), Style_1 = require("./style/Style"), MultilineTextStyle_1 = require("./style/MultilineTextStyle"), ProgressBarStyle_1 = require("./style/ProgressBarStyle"), ImageStyle_1 = require("./style/ImageStyle"), icons = __importStar(require("../tools/icons")), helper_1 = require("../tools/helper"), CheckboxStyle_1 = require("./style/CheckboxStyle"), RadioStyle_1 = require("./style/RadioStyle"), vutils_1 = require("@visactor/vutils"), SwitchStyle_1 = require("./style/SwitchStyle"), ButtonStyle_1 = require("./style/ButtonStyle");
33
+
34
+ class BodyHelper {
35
+ constructor(_table) {
36
+ this._table = _table;
37
+ const regedIcons = registerIcons.get();
38
+ this.expandIcon = regedIcons[ts_types_1.InternalIconName.expandIconName], this.collapseIcon = regedIcons[ts_types_1.InternalIconName.collapseIconName];
39
+ }
40
+ getIcons(col, row, cellValue, dataValue, context) {
41
+ const iconArr = [], hierarchyIcon = this.getHierarchyIcon(col, row);
42
+ hierarchyIcon && iconArr.push(hierarchyIcon);
43
+ const {icon: iconDefine} = this._table.getBodyColumnDefine(col, row);
44
+ if (iconDefine) {
45
+ let iconResults;
46
+ if ("function" == typeof iconDefine) {
47
+ iconResults = iconDefine({
48
+ col: col,
49
+ row: row,
50
+ value: cellValue,
51
+ dataValue: dataValue,
52
+ table: this._table
53
+ });
54
+ } else iconResults = iconDefine;
55
+ const regedIcons = registerIcons.get(), addIcon = columnIcon => {
56
+ let icon;
57
+ icon = "string" == typeof columnIcon ? regedIcons[columnIcon] : columnIcon, icon && iconArr.push(icon);
58
+ };
59
+ Array.isArray(iconResults) ? iconResults.forEach(((columnIcon, index) => {
60
+ addIcon(columnIcon);
61
+ })) : addIcon(iconResults);
62
+ }
63
+ return context && iconArr.forEach(((i, index) => {
64
+ (i.content || i.src) && (iconArr[index] = this.getCellIconFromRecordValue(i, col, row));
65
+ })), iconArr;
66
+ }
67
+ getStyleClass(cellType) {
68
+ switch (cellType) {
69
+ case "text":
70
+ case "link":
71
+ return MultilineTextStyle_1.TextStyle;
72
+
73
+ case "image":
74
+ case "video":
75
+ return ImageStyle_1.ImageStyle;
76
+
77
+ case "chart":
78
+ case "sparkline":
79
+ return Style_1.Style;
80
+
81
+ case "progressbar":
82
+ return ProgressBarStyle_1.ProgressBarStyle;
83
+
84
+ case "checkbox":
85
+ return CheckboxStyle_1.CheckboxStyle;
86
+
87
+ case "radio":
88
+ return RadioStyle_1.RadioStyle;
89
+
90
+ case "switch":
91
+ return SwitchStyle_1.SwitchStyle;
92
+
93
+ case "button":
94
+ return ButtonStyle_1.ButtonStyle;
95
+ }
96
+ return MultilineTextStyle_1.TextStyle;
97
+ }
98
+ getCellIconFromRecordValue(icon, col, row) {
99
+ if (Array.isArray(icon)) return icon.map((i => this.getCellIconFromRecordValue(i, col, row)));
100
+ if (!helper_1.obj.isObject(icon) || "function" == typeof icon) return this._table.getFieldData(icon, col, row);
101
+ const retIcon = {}, iconOpt = icon;
102
+ return icons.iconPropKeys.forEach((k => {
103
+ var _a, _b;
104
+ if (void 0 !== iconOpt[k]) {
105
+ const f = this._table.getFieldData(iconOpt[k], col, row);
106
+ (0, vutils_1.isValid)(f) ? retIcon[k] = f : (null === (_b = (_a = this._table)._hasField) || void 0 === _b ? void 0 : _b.call(_a, iconOpt[k], col, row)) || (retIcon[k] = iconOpt[k]);
107
+ }
108
+ })), retIcon;
109
+ }
110
+ getHierarchyIcon(col, row) {
111
+ const hierarchyState = this._table.getHierarchyState(col, row);
112
+ return hierarchyState === ts_types_1.HierarchyState.expand ? this.expandIcon : hierarchyState === ts_types_1.HierarchyState.collapse ? this.collapseIcon : void 0;
113
+ }
114
+ getHierarchyIconWidth() {
115
+ var _a, _b;
116
+ return this.expandIcon.width + (null !== (_a = this.expandIcon.marginLeft) && void 0 !== _a ? _a : 0) + (null !== (_b = this.expandIcon.marginRight) && void 0 !== _b ? _b : 0);
117
+ }
118
+ }
119
+
120
+ exports.BodyHelper = BodyHelper;
121
+ //# sourceMappingURL=body-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/body-helper/body-helper.ts"],"names":[],"mappings":"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","file":"body-helper.js","sourcesContent":["import type { ColumnIconOption, ImageIcon, ListTableAPI, SvgIcon } from '../ts-types';\nimport { HierarchyState, InternalIconName } from '../ts-types';\nimport * as registerIcons from '../icons';\nimport { Style } from './style/Style';\nimport { TextStyle } from './style/MultilineTextStyle';\nimport { ProgressBarStyle } from './style/ProgressBarStyle';\nimport { ImageStyle } from './style/ImageStyle';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport * as icons from '../tools/icons';\nimport { obj } from '../tools/helper';\nimport { CheckboxStyle } from './style/CheckboxStyle';\nimport { RadioStyle } from './style/RadioStyle';\nimport { isValid } from '@visactor/vutils';\nimport { SwitchStyle } from './style/SwitchStyle';\nimport { ButtonStyle } from './style/ButtonStyle';\nexport class BodyHelper {\n expandIcon: SvgIcon;\n collapseIcon: SvgIcon;\n _table: BaseTableAPI;\n constructor(_table: BaseTableAPI) {\n this._table = _table;\n const regedIcons = registerIcons.get();\n //展开折叠按钮\n this.expandIcon = regedIcons[InternalIconName.expandIconName] as SvgIcon;\n this.collapseIcon = regedIcons[InternalIconName.collapseIconName] as SvgIcon;\n }\n getIcons(\n col: number,\n row: number,\n cellValue: any,\n dataValue: any,\n context: CanvasRenderingContext2D\n ): ColumnIconOption[] {\n //加入固定列图标 排序 文本中元素\n const iconArr: ColumnIconOption[] = [];\n\n const hierarchyIcon = this.getHierarchyIcon(col, row);\n if (hierarchyIcon) {\n iconArr.push(hierarchyIcon);\n }\n\n const { icon: iconDefine } = this._table.getBodyColumnDefine(col, row);\n\n if (iconDefine) {\n let iconResults;\n if (typeof iconDefine === 'function') {\n const arg = {\n col,\n row,\n value: cellValue,\n dataValue,\n table: this._table\n };\n iconResults = iconDefine(arg);\n } else {\n iconResults = iconDefine;\n }\n const regedIcons = registerIcons.get();\n const addIcon = (columnIcon: string | ColumnIconOption) => {\n let icon;\n if (typeof columnIcon === 'string') {\n icon = regedIcons[columnIcon];\n } else {\n icon = columnIcon;\n }\n if (icon) {\n iconArr.push(icon);\n }\n };\n if (Array.isArray(iconResults)) {\n iconResults.forEach((columnIcon: string | ColumnIconOption, index: number) => {\n addIcon(columnIcon);\n });\n } else {\n addIcon(iconResults);\n }\n }\n\n context &&\n iconArr.forEach((i, index) => {\n if ((i as any).content || (<ImageIcon>i).src) {\n iconArr[index] = this.getCellIconFromRecordValue(i, col, row);\n // if ((<FontIcon>i).font)\n // helper.testFontLoad((<FontIcon>i).font, (<FontIcon>i).content, col, row);\n }\n });\n\n return iconArr;\n }\n getStyleClass(\n cellType:\n | 'text'\n | 'link'\n | 'image'\n | 'video'\n | 'chart'\n | 'sparkline'\n | 'progressbar'\n | 'chart'\n | 'checkbox'\n | 'radio'\n | 'switch'\n | 'button'\n ) {\n switch (cellType) {\n case 'text':\n return TextStyle;\n case 'image':\n return ImageStyle;\n case 'video':\n return ImageStyle;\n case 'link':\n return TextStyle;\n case 'chart':\n return Style;\n case 'sparkline':\n return Style;\n case 'progressbar':\n return ProgressBarStyle;\n case 'checkbox':\n return CheckboxStyle;\n case 'radio':\n return RadioStyle;\n case 'switch':\n return SwitchStyle;\n case 'button':\n return ButtonStyle;\n }\n return TextStyle;\n }\n getCellIconFromRecordValue(icon: ColumnIconOption, col: number, row: number): ColumnIconOption;\n getCellIconFromRecordValue(icon: ColumnIconOption[], col: number, row: number): ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[] {\n if (Array.isArray(icon)) {\n return icon.map(i => this.getCellIconFromRecordValue(i, col, row));\n }\n // icon.positionType = IconPosition.inlineFront;\n if (!obj.isObject(icon) || typeof icon === 'function') {\n return (this._table as ListTableAPI).getFieldData(icon, col, row);\n }\n // 新建对象 挨个属性赋值\n const retIcon: any = {};\n const iconOpt: any = icon;\n icons.iconPropKeys.forEach(k => {\n if (typeof iconOpt[k] !== 'undefined') {\n const f = (this._table as ListTableAPI).getFieldData(iconOpt[k], col, row);\n if (isValid(f)) {\n retIcon[k] = f;\n } else if (!this._table._hasField?.(iconOpt[k], col, row)) {\n retIcon[k] = iconOpt[k];\n }\n }\n });\n return retIcon;\n }\n\n getHierarchyIcon(col: number, row: number) {\n const hierarchyState = this._table.getHierarchyState(col, row);\n if (hierarchyState === HierarchyState.expand) {\n //展开状态 应该显示-号\n return this.expandIcon;\n } else if (hierarchyState === HierarchyState.collapse) {\n //折叠状态 应该显示-号\n return this.collapseIcon;\n }\n return undefined;\n }\n getHierarchyIconWidth() {\n return this.expandIcon.width + (this.expandIcon.marginLeft ?? 0) + (this.expandIcon.marginRight ?? 0);\n }\n}\n"]}
@@ -0,0 +1,45 @@
1
+ import type { IStyleOption, ButtonStyleOption } from '../../ts-types';
2
+ import { Style } from '../style';
3
+ import type { ButtonStyle as ButtonStyleThemeOption } from '../../ts-types/column/style';
4
+ export declare class ButtonStyle extends Style {
5
+ private _buttonColor;
6
+ private _buttonBorderColor;
7
+ private _buttonLineWidth;
8
+ private _buttonBorderRadius;
9
+ private _buttonHoverColor;
10
+ private _buttonHoverBorderColor;
11
+ private _buttonTextHoverColor;
12
+ private _buttonDisableColor;
13
+ private _buttonDisableBorderColor;
14
+ private _buttonTextDisableColor;
15
+ private _buttonTextHoverBorderColor;
16
+ private _buttonPadding;
17
+ static get DEFAULT(): ButtonStyle;
18
+ constructor(style?: ButtonStyleOption, headerStyle?: ButtonStyleOption, buttonThemeStyle?: ButtonStyleThemeOption);
19
+ get buttonColor(): string;
20
+ set buttonColor(buttonColor: string);
21
+ get buttonBorderColor(): string;
22
+ set buttonBorderColor(buttonBorderColor: string);
23
+ get buttonLineWidth(): number;
24
+ set buttonLineWidth(buttonLineWidth: number);
25
+ get buttonBorderRadius(): number;
26
+ set buttonBorderRadius(buttonBorderRadius: number);
27
+ get buttonHoverColor(): string;
28
+ set buttonHoverColor(buttonHoverColor: string);
29
+ get buttonHoverBorderColor(): string;
30
+ set buttonHoverBorderColor(buttonHoverBorderColor: string);
31
+ get buttonTextHoverColor(): string;
32
+ set buttonTextHoverColor(buttonTextHoverColor: string);
33
+ get buttonDisableColor(): string;
34
+ set buttonDisableColor(buttonDisableColor: string);
35
+ get buttonDisableBorderColor(): string;
36
+ set buttonDisableBorderColor(buttonDisableBorderColor: string);
37
+ get buttonTextDisableColor(): string;
38
+ set buttonTextDisableColor(buttonTextDisableColor: string);
39
+ get buttonTextHoverBorderColor(): string;
40
+ set buttonTextHoverBorderColor(buttonTextHoverBorderColor: string);
41
+ get buttonPadding(): number;
42
+ set buttonPadding(buttonPadding: number);
43
+ getStyle(style: IStyleOption): ButtonStyle;
44
+ clone(): ButtonStyle;
45
+ }