@visactor/vtable 0.12.3-alpha.0 → 0.13.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/cjs/ListTable.js +15 -14
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/PivotChart.d.ts +1 -0
  4. package/cjs/PivotChart.js +10 -7
  5. package/cjs/PivotChart.js.map +1 -1
  6. package/cjs/PivotTable.js +6 -6
  7. package/cjs/PivotTable.js.map +1 -1
  8. package/cjs/body-helper/body-helper.d.ts +1 -1
  9. package/cjs/body-helper/body-helper.js +4 -1
  10. package/cjs/body-helper/body-helper.js.map +1 -1
  11. package/cjs/body-helper/style/CheckboxStyle.d.ts +7 -0
  12. package/cjs/body-helper/style/CheckboxStyle.js +24 -0
  13. package/cjs/body-helper/style/CheckboxStyle.js.map +1 -0
  14. package/cjs/body-helper/style.js +2 -2
  15. package/cjs/body-helper/style.js.map +1 -1
  16. package/cjs/components/axis/axis.d.ts +2 -2
  17. package/cjs/components/axis/axis.js +5 -4
  18. package/cjs/components/axis/axis.js.map +1 -1
  19. package/cjs/components/axis/get-axis-attributes.d.ts +137 -0
  20. package/cjs/components/axis/get-axis-attributes.js +10 -5
  21. package/cjs/components/axis/get-axis-attributes.js.map +1 -1
  22. package/cjs/components/axis/get-axis-component-size.js +32 -32
  23. package/cjs/components/axis/get-axis-component-size.js.map +1 -1
  24. package/cjs/components/axis/linear-scale.d.ts +8 -5
  25. package/cjs/components/axis/linear-scale.js +19 -5
  26. package/cjs/components/axis/linear-scale.js.map +1 -1
  27. package/cjs/components/menu/dom/logic/MenuElement.js +2 -2
  28. package/cjs/components/menu/dom/logic/MenuElement.js.map +1 -1
  29. package/cjs/components/menu/dom/logic/MenuElementStyle.js +8 -3
  30. package/cjs/components/menu/dom/logic/MenuElementStyle.js.map +1 -1
  31. package/cjs/components/tooltip/logic/BubbleTooltipElement.js +6 -5
  32. package/cjs/components/tooltip/logic/BubbleTooltipElement.js.map +1 -1
  33. package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js +8 -3
  34. package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -1
  35. package/cjs/core/BaseTable.d.ts +3 -0
  36. package/cjs/core/BaseTable.js +62 -20
  37. package/cjs/core/BaseTable.js.map +1 -1
  38. package/cjs/core/TABLE_EVENT_TYPE.d.ts +1 -0
  39. package/cjs/core/TABLE_EVENT_TYPE.js +1 -0
  40. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  41. package/cjs/core/style.js +8 -3
  42. package/cjs/core/style.js.map +1 -1
  43. package/cjs/data/DataSource.js +5 -5
  44. package/cjs/data/DataSource.js.map +1 -1
  45. package/cjs/dataset/dataset.js +2 -2
  46. package/cjs/dataset/dataset.js.map +1 -1
  47. package/cjs/event/EventTarget.js +2 -2
  48. package/cjs/event/EventTarget.js.map +1 -1
  49. package/cjs/event/event.js +5 -5
  50. package/cjs/event/event.js.map +1 -1
  51. package/cjs/event/listener/table-group.js +8 -0
  52. package/cjs/event/listener/table-group.js.map +1 -1
  53. package/cjs/event/listener/touch.js +2 -1
  54. package/cjs/event/listener/touch.js.map +1 -1
  55. package/cjs/event/scroll.js +1 -1
  56. package/cjs/event/scroll.js.map +1 -1
  57. package/cjs/header-helper/style.js +2 -2
  58. package/cjs/header-helper/style.js.map +1 -1
  59. package/cjs/index.d.ts +1 -1
  60. package/cjs/index.js +1 -1
  61. package/cjs/index.js.map +1 -1
  62. package/cjs/layout/chart-helper/get-axis-config.js +16 -16
  63. package/cjs/layout/chart-helper/get-axis-config.js.map +1 -1
  64. package/cjs/layout/chart-helper/get-axis-domain.js +11 -8
  65. package/cjs/layout/chart-helper/get-axis-domain.js.map +1 -1
  66. package/cjs/layout/chart-helper/get-chart-spec.js +2 -2
  67. package/cjs/layout/chart-helper/get-chart-spec.js.map +1 -1
  68. package/cjs/layout/pivot-header-layout.d.ts +1 -1
  69. package/cjs/layout/pivot-header-layout.js +25 -25
  70. package/cjs/layout/pivot-header-layout.js.map +1 -1
  71. package/cjs/layout/simple-header-layout.js +5 -5
  72. package/cjs/layout/simple-header-layout.js.map +1 -1
  73. package/cjs/render/layout/container.js +3 -3
  74. package/cjs/render/layout/container.js.map +1 -1
  75. package/cjs/render/layout/icon.js +2 -2
  76. package/cjs/render/layout/icon.js.map +1 -1
  77. package/cjs/render/layout/image.js.map +1 -1
  78. package/cjs/render/layout/text.js +1 -1
  79. package/cjs/render/layout/text.js.map +1 -1
  80. package/cjs/scenegraph/component/custom.js +11 -11
  81. package/cjs/scenegraph/component/custom.js.map +1 -1
  82. package/cjs/scenegraph/component/menu.js +2 -0
  83. package/cjs/scenegraph/component/menu.js.map +1 -1
  84. package/cjs/scenegraph/context/canvas.js +2 -2
  85. package/cjs/scenegraph/context/canvas.js.map +1 -1
  86. package/cjs/scenegraph/context/context.js +2 -2
  87. package/cjs/scenegraph/context/context.js.map +1 -1
  88. package/cjs/scenegraph/context/module.d.ts +1 -1
  89. package/cjs/scenegraph/context/module.js +2 -2
  90. package/cjs/scenegraph/context/module.js.map +1 -1
  91. package/cjs/scenegraph/graphic/chart.d.ts +2 -0
  92. package/cjs/scenegraph/graphic/chart.js +8 -2
  93. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  94. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +2 -2
  95. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  96. package/cjs/scenegraph/graphic/group.d.ts +6 -2
  97. package/cjs/scenegraph/graphic/group.js.map +1 -1
  98. package/cjs/scenegraph/group-creater/cell-helper.d.ts +3 -3
  99. package/cjs/scenegraph/group-creater/cell-helper.js +38 -38
  100. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  101. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +4 -2
  102. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  103. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +5 -0
  104. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +74 -0
  105. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
  106. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +2 -2
  107. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  108. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +4 -4
  109. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  110. package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
  111. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +4 -4
  112. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  113. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +2 -2
  114. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  115. package/cjs/scenegraph/group-creater/column-helper.d.ts +3 -2
  116. package/cjs/scenegraph/group-creater/column-helper.js +78 -46
  117. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  118. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +23 -24
  119. package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
  120. package/cjs/scenegraph/group-creater/progress/proxy.d.ts +1 -1
  121. package/cjs/scenegraph/group-creater/progress/proxy.js +8 -5
  122. package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
  123. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +3 -4
  124. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -1
  125. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +11 -12
  126. package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -1
  127. package/cjs/scenegraph/icon/icon-update.d.ts +17 -0
  128. package/cjs/scenegraph/icon/icon-update.js +165 -0
  129. package/cjs/scenegraph/icon/icon-update.js.map +1 -0
  130. package/cjs/scenegraph/layout/compute-row-height.js +2 -1
  131. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  132. package/cjs/scenegraph/layout/frozen.js +9 -7
  133. package/cjs/scenegraph/layout/frozen.js.map +1 -1
  134. package/cjs/scenegraph/layout/move-cell.js +8 -27
  135. package/cjs/scenegraph/layout/move-cell.js.map +1 -1
  136. package/cjs/scenegraph/layout/update-height.js +36 -24
  137. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  138. package/cjs/scenegraph/layout/update-row.js +6 -2
  139. package/cjs/scenegraph/layout/update-row.js.map +1 -1
  140. package/cjs/scenegraph/layout/update-width.js +40 -27
  141. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  142. package/cjs/scenegraph/refresh-node/update-chart.js +6 -3
  143. package/cjs/scenegraph/refresh-node/update-chart.js.map +1 -1
  144. package/cjs/scenegraph/scenegraph.d.ts +7 -13
  145. package/cjs/scenegraph/scenegraph.js +40 -154
  146. package/cjs/scenegraph/scenegraph.js.map +1 -1
  147. package/cjs/scenegraph/stick-text/index.js +76 -37
  148. package/cjs/scenegraph/stick-text/index.js.map +1 -1
  149. package/cjs/scenegraph/utils/get-prop.js +4 -4
  150. package/cjs/scenegraph/utils/get-prop.js.map +1 -1
  151. package/cjs/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
  152. package/cjs/scenegraph/utils/is-merge-cell-group.js +16 -0
  153. package/cjs/scenegraph/utils/is-merge-cell-group.js.map +1 -0
  154. package/cjs/scenegraph/utils/text-icon-layout.js +9 -3
  155. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  156. package/cjs/scenegraph/utils/text-measure.js +4 -4
  157. package/cjs/scenegraph/utils/text-measure.js.map +1 -1
  158. package/cjs/state/hover/is-cell-hover.js +4 -2
  159. package/cjs/state/hover/is-cell-hover.js.map +1 -1
  160. package/cjs/state/hover/update-cell.js +10 -5
  161. package/cjs/state/hover/update-cell.js.map +1 -1
  162. package/cjs/state/select/update-position.js +4 -4
  163. package/cjs/state/select/update-position.js.map +1 -1
  164. package/cjs/state/state.d.ts +1 -0
  165. package/cjs/state/state.js +9 -7
  166. package/cjs/state/state.js.map +1 -1
  167. package/cjs/themes/ARCO.js +0 -8
  168. package/cjs/themes/ARCO.js.map +1 -1
  169. package/cjs/themes/BRIGHT.js +2 -9
  170. package/cjs/themes/BRIGHT.js.map +1 -1
  171. package/cjs/themes/DARK.js +1 -10
  172. package/cjs/themes/DARK.js.map +1 -1
  173. package/cjs/themes/DEFAULT.js +0 -8
  174. package/cjs/themes/DEFAULT.js.map +1 -1
  175. package/cjs/themes/theme.js +6 -2
  176. package/cjs/themes/theme.js.map +1 -1
  177. package/cjs/tools/NumberMap.js +2 -2
  178. package/cjs/tools/NumberMap.js.map +1 -1
  179. package/cjs/tools/calc.js +1 -1
  180. package/cjs/tools/diff-cell.d.ts +1 -1
  181. package/cjs/tools/global.d.ts +1 -2
  182. package/cjs/tools/global.js +4 -4
  183. package/cjs/tools/global.js.map +1 -1
  184. package/cjs/ts-types/base-table.d.ts +16 -1
  185. package/cjs/ts-types/base-table.js.map +1 -1
  186. package/cjs/ts-types/column/style.d.ts +2 -1
  187. package/cjs/ts-types/column/style.js.map +1 -1
  188. package/cjs/ts-types/column/type.d.ts +1 -1
  189. package/cjs/ts-types/column/type.js.map +1 -1
  190. package/cjs/ts-types/events.d.ts +4 -0
  191. package/cjs/ts-types/events.js.map +1 -1
  192. package/cjs/ts-types/list-table/define/basic-define.d.ts +1 -0
  193. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  194. package/cjs/ts-types/list-table/define/checkbox-define.d.ts +9 -0
  195. package/cjs/ts-types/list-table/define/checkbox-define.js +6 -0
  196. package/cjs/ts-types/list-table/define/checkbox-define.js.map +1 -0
  197. package/cjs/ts-types/list-table/define/index.d.ts +4 -2
  198. package/cjs/ts-types/list-table/define/index.js.map +1 -1
  199. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
  200. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js +6 -0
  201. package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
  202. package/cjs/ts-types/pivot-table/indicator/index.d.ts +2 -1
  203. package/cjs/ts-types/pivot-table/indicator/index.js.map +1 -1
  204. package/cjs/ts-types/table-engine.d.ts +13 -0
  205. package/cjs/ts-types/table-engine.js.map +1 -1
  206. package/cjs/ts-types/theme.d.ts +6 -3
  207. package/cjs/ts-types/theme.js.map +1 -1
  208. package/cjs/ts-types/tooltip.d.ts +2 -1
  209. package/cjs/ts-types/tooltip.js.map +1 -1
  210. package/dist/vtable.js +12046 -11325
  211. package/dist/vtable.min.js +2 -2
  212. package/es/ListTable.js +6 -3
  213. package/es/ListTable.js.map +1 -1
  214. package/es/PivotChart.d.ts +1 -0
  215. package/es/PivotChart.js +11 -5
  216. package/es/PivotChart.js.map +1 -1
  217. package/es/PivotTable.js +7 -4
  218. package/es/PivotTable.js.map +1 -1
  219. package/es/body-helper/body-helper.d.ts +1 -1
  220. package/es/body-helper/body-helper.js +5 -0
  221. package/es/body-helper/body-helper.js.map +1 -1
  222. package/es/body-helper/style/CheckboxStyle.d.ts +7 -0
  223. package/es/body-helper/style/CheckboxStyle.js +16 -0
  224. package/es/body-helper/style/CheckboxStyle.js.map +1 -0
  225. package/es/body-helper/style.js +1 -1
  226. package/es/body-helper/style.js.map +1 -1
  227. package/es/components/axis/axis.d.ts +2 -2
  228. package/es/components/axis/axis.js +5 -4
  229. package/es/components/axis/axis.js.map +1 -1
  230. package/es/components/axis/get-axis-attributes.d.ts +137 -0
  231. package/es/components/axis/get-axis-attributes.js +8 -2
  232. package/es/components/axis/get-axis-attributes.js.map +1 -1
  233. package/es/components/axis/get-axis-component-size.js +33 -33
  234. package/es/components/axis/get-axis-component-size.js.map +1 -1
  235. package/es/components/axis/linear-scale.d.ts +8 -5
  236. package/es/components/axis/linear-scale.js +15 -6
  237. package/es/components/axis/linear-scale.js.map +1 -1
  238. package/es/components/menu/dom/logic/MenuElement.js +1 -1
  239. package/es/components/menu/dom/logic/MenuElement.js.map +1 -1
  240. package/es/components/menu/dom/logic/MenuElementStyle.js +3 -0
  241. package/es/components/menu/dom/logic/MenuElementStyle.js.map +1 -1
  242. package/es/components/tooltip/logic/BubbleTooltipElement.js +6 -5
  243. package/es/components/tooltip/logic/BubbleTooltipElement.js.map +1 -1
  244. package/es/components/tooltip/logic/BubbleTooltipElementStyle.js +3 -0
  245. package/es/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -1
  246. package/es/core/BaseTable.d.ts +3 -0
  247. package/es/core/BaseTable.js +57 -16
  248. package/es/core/BaseTable.js.map +1 -1
  249. package/es/core/TABLE_EVENT_TYPE.d.ts +1 -0
  250. package/es/core/TABLE_EVENT_TYPE.js +1 -0
  251. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  252. package/es/core/style.js +3 -0
  253. package/es/core/style.js.map +1 -1
  254. package/es/data/DataSource.js +3 -1
  255. package/es/data/DataSource.js.map +1 -1
  256. package/es/dataset/dataset.js +2 -2
  257. package/es/dataset/dataset.js.map +1 -1
  258. package/es/event/EventTarget.js +1 -1
  259. package/es/event/EventTarget.js.map +1 -1
  260. package/es/event/event.js +6 -4
  261. package/es/event/event.js.map +1 -1
  262. package/es/event/listener/table-group.js +8 -0
  263. package/es/event/listener/table-group.js.map +1 -1
  264. package/es/event/listener/touch.js +1 -1
  265. package/es/event/listener/touch.js.map +1 -1
  266. package/es/event/scroll.js +1 -1
  267. package/es/event/scroll.js.map +1 -1
  268. package/es/header-helper/style.js +1 -1
  269. package/es/header-helper/style.js.map +1 -1
  270. package/es/index.d.ts +1 -1
  271. package/es/index.js +1 -1
  272. package/es/index.js.map +1 -1
  273. package/es/layout/chart-helper/get-axis-config.js +16 -16
  274. package/es/layout/chart-helper/get-axis-config.js.map +1 -1
  275. package/es/layout/chart-helper/get-axis-domain.js +12 -9
  276. package/es/layout/chart-helper/get-axis-domain.js.map +1 -1
  277. package/es/layout/chart-helper/get-chart-spec.js +2 -2
  278. package/es/layout/chart-helper/get-chart-spec.js.map +1 -1
  279. package/es/layout/pivot-header-layout.d.ts +1 -1
  280. package/es/layout/pivot-header-layout.js +4 -4
  281. package/es/layout/pivot-header-layout.js.map +1 -1
  282. package/es/layout/simple-header-layout.js +2 -2
  283. package/es/layout/simple-header-layout.js.map +1 -1
  284. package/es/render/layout/container.js +1 -1
  285. package/es/render/layout/container.js.map +1 -1
  286. package/es/render/layout/icon.js +1 -1
  287. package/es/render/layout/icon.js.map +1 -1
  288. package/es/render/layout/image.js.map +1 -1
  289. package/es/render/layout/text.js +1 -1
  290. package/es/render/layout/text.js.map +1 -1
  291. package/es/scenegraph/component/custom.js +1 -1
  292. package/es/scenegraph/component/custom.js.map +1 -1
  293. package/es/scenegraph/component/menu.js +2 -0
  294. package/es/scenegraph/component/menu.js.map +1 -1
  295. package/es/scenegraph/context/canvas.js +1 -3
  296. package/es/scenegraph/context/canvas.js.map +1 -1
  297. package/es/scenegraph/context/context.js +0 -2
  298. package/es/scenegraph/context/context.js.map +1 -1
  299. package/es/scenegraph/context/module.d.ts +1 -1
  300. package/es/scenegraph/context/module.js +1 -3
  301. package/es/scenegraph/context/module.js.map +1 -1
  302. package/es/scenegraph/graphic/chart.d.ts +2 -0
  303. package/es/scenegraph/graphic/chart.js +8 -2
  304. package/es/scenegraph/graphic/chart.js.map +1 -1
  305. package/es/scenegraph/graphic/contributions/chart-render-helper.js +1 -3
  306. package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  307. package/es/scenegraph/graphic/group.d.ts +6 -2
  308. package/es/scenegraph/graphic/group.js.map +1 -1
  309. package/es/scenegraph/group-creater/cell-helper.d.ts +3 -3
  310. package/es/scenegraph/group-creater/cell-helper.js +39 -38
  311. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  312. package/es/scenegraph/group-creater/cell-type/chart-cell.js +3 -1
  313. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  314. package/es/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +5 -0
  315. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +72 -0
  316. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
  317. package/es/scenegraph/group-creater/cell-type/image-cell.js +1 -1
  318. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  319. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +1 -1
  320. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  321. package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
  322. package/es/scenegraph/group-creater/cell-type/text-cell.js +3 -3
  323. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  324. package/es/scenegraph/group-creater/cell-type/video-cell.js +1 -1
  325. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  326. package/es/scenegraph/group-creater/column-helper.d.ts +3 -2
  327. package/es/scenegraph/group-creater/column-helper.js +75 -44
  328. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  329. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +20 -21
  330. package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
  331. package/es/scenegraph/group-creater/progress/proxy.d.ts +1 -1
  332. package/es/scenegraph/group-creater/progress/proxy.js +8 -5
  333. package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
  334. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +4 -5
  335. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -1
  336. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +10 -13
  337. package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -1
  338. package/es/scenegraph/icon/icon-update.d.ts +17 -0
  339. package/es/scenegraph/icon/icon-update.js +154 -0
  340. package/es/scenegraph/icon/icon-update.js.map +1 -0
  341. package/es/scenegraph/layout/compute-row-height.js +2 -1
  342. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  343. package/es/scenegraph/layout/frozen.js +9 -7
  344. package/es/scenegraph/layout/frozen.js.map +1 -1
  345. package/es/scenegraph/layout/move-cell.js +8 -27
  346. package/es/scenegraph/layout/move-cell.js.map +1 -1
  347. package/es/scenegraph/layout/update-height.js +38 -22
  348. package/es/scenegraph/layout/update-height.js.map +1 -1
  349. package/es/scenegraph/layout/update-row.js +6 -1
  350. package/es/scenegraph/layout/update-row.js.map +1 -1
  351. package/es/scenegraph/layout/update-width.js +42 -25
  352. package/es/scenegraph/layout/update-width.js.map +1 -1
  353. package/es/scenegraph/refresh-node/update-chart.js +6 -3
  354. package/es/scenegraph/refresh-node/update-chart.js.map +1 -1
  355. package/es/scenegraph/scenegraph.d.ts +7 -13
  356. package/es/scenegraph/scenegraph.js +43 -154
  357. package/es/scenegraph/scenegraph.js.map +1 -1
  358. package/es/scenegraph/stick-text/index.js +74 -37
  359. package/es/scenegraph/stick-text/index.js.map +1 -1
  360. package/es/scenegraph/utils/get-prop.js +1 -1
  361. package/es/scenegraph/utils/get-prop.js.map +1 -1
  362. package/es/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
  363. package/es/scenegraph/utils/is-merge-cell-group.js +6 -0
  364. package/es/scenegraph/utils/is-merge-cell-group.js.map +1 -0
  365. package/es/scenegraph/utils/text-icon-layout.js +9 -3
  366. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  367. package/es/scenegraph/utils/text-measure.js +4 -4
  368. package/es/scenegraph/utils/text-measure.js.map +1 -1
  369. package/es/state/hover/is-cell-hover.js +3 -1
  370. package/es/state/hover/is-cell-hover.js.map +1 -1
  371. package/es/state/hover/update-cell.js +4 -2
  372. package/es/state/hover/update-cell.js.map +1 -1
  373. package/es/state/select/update-position.js +4 -4
  374. package/es/state/select/update-position.js.map +1 -1
  375. package/es/state/state.d.ts +1 -0
  376. package/es/state/state.js +6 -6
  377. package/es/state/state.js.map +1 -1
  378. package/es/themes/ARCO.js +0 -8
  379. package/es/themes/ARCO.js.map +1 -1
  380. package/es/themes/BRIGHT.js +2 -9
  381. package/es/themes/BRIGHT.js.map +1 -1
  382. package/es/themes/DARK.js +1 -10
  383. package/es/themes/DARK.js.map +1 -1
  384. package/es/themes/DEFAULT.js +0 -8
  385. package/es/themes/DEFAULT.js.map +1 -1
  386. package/es/themes/theme.js +7 -3
  387. package/es/themes/theme.js.map +1 -1
  388. package/es/tools/NumberMap.js +1 -1
  389. package/es/tools/NumberMap.js.map +1 -1
  390. package/es/tools/calc.js +1 -1
  391. package/es/tools/diff-cell.d.ts +1 -1
  392. package/es/tools/global.d.ts +1 -2
  393. package/es/tools/global.js +1 -3
  394. package/es/tools/global.js.map +1 -1
  395. package/es/ts-types/base-table.d.ts +16 -1
  396. package/es/ts-types/base-table.js.map +1 -1
  397. package/es/ts-types/column/style.d.ts +2 -1
  398. package/es/ts-types/column/style.js.map +1 -1
  399. package/es/ts-types/column/type.d.ts +1 -1
  400. package/es/ts-types/column/type.js.map +1 -1
  401. package/es/ts-types/events.d.ts +4 -0
  402. package/es/ts-types/events.js.map +1 -1
  403. package/es/ts-types/list-table/define/basic-define.d.ts +1 -0
  404. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  405. package/es/ts-types/list-table/define/checkbox-define.d.ts +9 -0
  406. package/es/ts-types/list-table/define/checkbox-define.js +2 -0
  407. package/es/ts-types/list-table/define/checkbox-define.js.map +1 -0
  408. package/es/ts-types/list-table/define/index.d.ts +4 -2
  409. package/es/ts-types/list-table/define/index.js.map +1 -1
  410. package/es/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
  411. package/es/ts-types/pivot-table/indicator/checkbox-indicator.js +2 -0
  412. package/es/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
  413. package/es/ts-types/pivot-table/indicator/index.d.ts +2 -1
  414. package/es/ts-types/pivot-table/indicator/index.js.map +1 -1
  415. package/es/ts-types/table-engine.d.ts +13 -0
  416. package/es/ts-types/table-engine.js.map +1 -1
  417. package/es/ts-types/theme.d.ts +6 -3
  418. package/es/ts-types/theme.js.map +1 -1
  419. package/es/ts-types/tooltip.d.ts +2 -1
  420. package/es/ts-types/tooltip.js.map +1 -1
  421. package/package.json +8 -5
  422. package/cjs/scenegraph/header-icon/layout.d.ts +0 -3
  423. package/cjs/scenegraph/header-icon/layout.js +0 -75
  424. package/cjs/scenegraph/header-icon/layout.js.map +0 -1
  425. package/cjs/scenegraph/hover-state.d.ts +0 -14
  426. package/cjs/scenegraph/hover-state.js +0 -27
  427. package/cjs/scenegraph/hover-state.js.map +0 -1
  428. package/es/scenegraph/header-icon/layout.d.ts +0 -3
  429. package/es/scenegraph/header-icon/layout.js +0 -69
  430. package/es/scenegraph/header-icon/layout.js.map +0 -1
  431. package/es/scenegraph/hover-state.d.ts +0 -14
  432. package/es/scenegraph/hover-state.js +0 -19
  433. package/es/scenegraph/hover-state.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visactor/vtable",
3
- "version": "0.12.3-alpha.0",
3
+ "version": "0.13.0-alpha.1",
4
4
  "description": "canvas table width high performance",
5
5
  "keywords": [
6
6
  "grid",
@@ -44,7 +44,7 @@
44
44
  "cssfontparser": "^1.2.1"
45
45
  },
46
46
  "devDependencies": {
47
- "@visactor/vchart": "1.4.3",
47
+ "@visactor/vchart": "1.5.2",
48
48
  "@rushstack/eslint-patch": "~1.1.4",
49
49
  "react": "^18.0.0",
50
50
  "react-dom": "^18.0.0",
@@ -88,9 +88,11 @@
88
88
  "d3-geo": "^3.0.1",
89
89
  "d3-hexbin": "^0.2.2",
90
90
  "d3-hierarchy": "^3.1.1",
91
+ "canvas": "^2.11.2",
92
+ "@resvg/resvg-js": "^2.5.0",
91
93
  "@internal/bundler": "0.0.1",
92
- "@internal/eslint-config": "0.0.1",
93
- "@internal/ts-config": "0.0.1"
94
+ "@internal/ts-config": "0.0.1",
95
+ "@internal/eslint-config": "0.0.1"
94
96
  },
95
97
  "unpkg": "latest",
96
98
  "unpkgFiles": [
@@ -110,6 +112,7 @@
110
112
  "test": "jest --silent",
111
113
  "test-cov": "jest --coverage",
112
114
  "ci": "ts-node --transpileOnly --skipProject ./scripts/trigger-test.ts",
113
- "build:es": "bundle --clean -f es --ignorePostTasks"
115
+ "build:es": "bundle --clean -f es --ignorePostTasks",
116
+ "test-nodejs": "ts-node --transpileOnly --skipProject ./nodejs/index.ts"
114
117
  }
115
118
  }
@@ -1,3 +0,0 @@
1
- import type { Group } from '@visactor/vrender';
2
- import type { ColumnIconOption } from '../../ts-types';
3
- export declare function iconLayout(icons: ColumnIconOption[], cellGroup: Group, padding: number[], width: number, height: number, textWidth: number, textAlign: CanvasTextAlign): number;
@@ -1,75 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: !0
5
- }), exports.iconLayout = void 0;
6
-
7
- const ts_types_1 = require("../../ts-types"), icon_1 = require("../graphic/icon");
8
-
9
- function createIcon(option) {
10
- const icon = new icon_1.Icon(option);
11
- return icon.role = "icon", icon;
12
- }
13
-
14
- function iconLayout(icons, cellGroup, padding, width, height, textWidth, textAlign) {
15
- const absoluteRightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === ts_types_1.IconPosition.absoluteRight)), absoluteRightIconsWidths = absoluteRightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce(((a, b) => a + b), 0), rightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === ts_types_1.IconPosition.right)), rightIconsWidths = rightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalRightIconWidth = rightIconsWidths.reduce(((a, b) => a + b), 0), leftIcons = null == icons ? void 0 : icons.filter((value => value.positionType === ts_types_1.IconPosition.left)), leftIconsWidths = leftIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalLeftIconWidth = leftIconsWidths.reduce(((a, b) => a + b), 0), middleFrontIcons = null == icons ? void 0 : icons.filter((value => value.positionType === ts_types_1.IconPosition.inlineFront)), middleFrontIconsWidths = middleFrontIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce(((a, b) => a + b), 0), middleEndIcons = null == icons ? void 0 : icons.filter((value => value.positionType === ts_types_1.IconPosition.inlineEnd)), middleEndIconsWidths = middleEndIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleEndIconWidth = middleEndIconsWidths.reduce(((a, b) => a + b), 0);
16
- let rightIconsLeft = width - padding[1] - totalRightIconWidth, leftIconsLeft = padding[3];
17
- rightIcons.forEach(((icon, index) => {
18
- const image = createIcon({
19
- x: rightIconsLeft,
20
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
21
- width: icon.width,
22
- height: icon.height,
23
- image: icon.svg
24
- });
25
- cellGroup.addChild(image), rightIconsLeft += rightIconsWidths[index];
26
- })), leftIcons.forEach(((icon, index) => {
27
- const image = createIcon({
28
- x: leftIconsLeft,
29
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
30
- width: icon.width,
31
- height: icon.height,
32
- image: icon.svg
33
- });
34
- cellGroup.addChild(image), leftIconsLeft += leftIconsWidths[index];
35
- }));
36
- let middleFrontIconsLeft = leftIconsLeft, middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;
37
- if ("right" === textAlign) middleFrontIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth,
38
- middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth; else if ("center" === textAlign) {
39
- const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;
40
- middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth, middleEndIconsLeft = centerX + textWidth / 2;
41
- }
42
- middleFrontIcons.forEach(((icon, index) => {
43
- const image = createIcon({
44
- x: middleFrontIconsLeft,
45
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
46
- width: icon.width,
47
- height: icon.height,
48
- image: icon.svg
49
- });
50
- cellGroup.addChild(image), middleFrontIconsLeft += middleFrontIconsWidths[index];
51
- })), middleEndIcons.forEach(((icon, index) => {
52
- const image = createIcon({
53
- x: middleEndIconsLeft,
54
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
55
- width: icon.width,
56
- height: icon.height,
57
- image: icon.svg
58
- });
59
- cellGroup.addChild(image), middleEndIconsLeft += middleEndIconsWidths[index];
60
- }));
61
- let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;
62
- return absoluteRightIcons.forEach(((icon, index) => {
63
- const image = createIcon({
64
- x: absoluteRightIconsLeft,
65
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
66
- width: icon.width,
67
- height: icon.height,
68
- image: icon.svg
69
- });
70
- cellGroup.addChild(image), absoluteRightIconsLeft += absoluteRightIconsWidths[index];
71
- })), "right" === textAlign ? -totalRightIconWidth - totalMiddleEndIconWidth : "center" === textAlign ? 0 : totalLeftIconWidth + totalMiddleFrontIconWidth;
72
- }
73
-
74
- exports.iconLayout = iconLayout;
75
- //# sourceMappingURL=layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["scenegraph/header-icon/layout.ts"],"names":[],"mappings":"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","file":"layout.js","sourcesContent":["import type { Group, IImageGraphicAttribute } from '@visactor/vrender';\nimport type { ColumnIconOption } from '../../ts-types';\nimport { IconPosition } from '../../ts-types';\nimport { Icon } from '../graphic/icon';\n\nfunction createIcon(option: IImageGraphicAttribute): Icon {\n const icon = new Icon(option);\n icon.role = 'icon';\n return icon;\n}\n\nexport function iconLayout(\n icons: ColumnIconOption[],\n cellGroup: Group,\n padding: number[],\n width: number,\n height: number,\n textWidth: number,\n textAlign: CanvasTextAlign\n): number {\n // icons.forEach((icon, index) => {\n // const image = createIcon({\n // x: 100 + index * 20,\n // y: 20,\n // width: icon.width,\n // height: icon.height,\n // image: (<any>icon).svg,\n // });\n // cellGroup.addChild(image);\n // });\n\n //图标的inline对象\n const absoluteRightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.absoluteRight) {\n return true;\n }\n return false;\n });\n const absoluteRightIconsWidths = absoluteRightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const rightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.right) {\n return true;\n }\n return false;\n });\n const rightIconsWidths = rightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalRightIconWidth = rightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const leftIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.left) {\n return true;\n }\n return false;\n });\n const leftIconsWidths = leftIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalLeftIconWidth = leftIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n // TODO: 处理行内换行图标\n const middleFrontIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineFront) {\n return true;\n }\n return false;\n });\n const middleFrontIconsWidths = middleFrontIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const middleEndIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineEnd) {\n return true;\n }\n return false;\n });\n const middleEndIconsWidths = middleEndIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleEndIconWidth = middleEndIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n let leftIconsLeft = padding[3];\n\n // 处理右侧图标\n // let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n rightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: rightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n rightIconsLeft += rightIconsWidths[index];\n });\n\n // 处理左侧图标\n // let leftIconsLeft = padding[3];\n leftIcons.forEach((icon, index) => {\n const image = createIcon({\n x: leftIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n leftIconsLeft += leftIconsWidths[index];\n });\n\n // textAlign === 'left'\n let middleFrontIconsLeft = leftIconsLeft;\n let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n if (textAlign === 'right') {\n middleFrontIconsLeft =\n width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth;\n middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;\n middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth;\n middleEndIconsLeft = centerX + textWidth / 2;\n }\n\n // 处理行内左侧图标\n middleFrontIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleFrontIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleFrontIconsLeft += middleFrontIconsWidths[index];\n });\n\n // 处理行内右侧图标\n // let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n middleEndIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleEndIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleEndIconsLeft += middleEndIconsWidths[index];\n });\n\n // 处理absolute右侧图标\n let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;\n absoluteRightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: absoluteRightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n absoluteRightIconsLeft += absoluteRightIconsWidths[index];\n });\n\n if (textAlign === 'right') {\n return -totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n return 0;\n }\n // textAlign === 'left'\n return totalLeftIconWidth + totalMiddleFrontIconWidth;\n}\n"]}
@@ -1,14 +0,0 @@
1
- export declare class HoverState {
2
- highlightMode: 'cross' | 'column' | 'row' | 'cell';
3
- disableHover: boolean;
4
- disableHeaderHover: boolean;
5
- cell: {
6
- row: number;
7
- col: number;
8
- };
9
- _state: any;
10
- table: any;
11
- constructor(table: any);
12
- get state(): any;
13
- set state(state: any);
14
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: !0
5
- }), exports.HoverState = void 0;
6
-
7
- class HoverState {
8
- constructor(table) {
9
- this.highlightMode = "cell", this.cell = {
10
- row: -1,
11
- col: -1
12
- }, this.disableHeaderHover = !1, this.table = table;
13
- }
14
- get state() {
15
- return this._state;
16
- }
17
- set state(state) {
18
- state && this._state && (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row) ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), state.address.col, state.address.row, 0, "fill", "normal"),
19
- this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
20
- this._state = state) : !state && this._state ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), this._state.address.col, this._state.address.row, 0, "fill", "normal"),
21
- this._state = state) : state && !this._state && (this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
22
- this._state = state);
23
- }
24
- }
25
-
26
- exports.HoverState = HoverState;
27
- //# sourceMappingURL=hover-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["scenegraph/hover-state.ts"],"names":[],"mappings":";;;AAAA,MAAa,UAAU;IAQrB,YAAY,KAAU;QACpB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IACE,KAAK;YACL,IAAI,CAAC,MAAM;YACX,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAChG;YACA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;IACH,CAAC;CACF;AApED,gCAoEC","file":"hover-state.js","sourcesContent":["export class HoverState {\n highlightMode: 'cross' | 'column' | 'row' | 'cell';\n disableHover: boolean;\n disableHeaderHover: boolean;\n cell: { row: number; col: number };\n _state: any;\n table: any;\n\n constructor(table: any) {\n this.highlightMode = 'cell';\n this.cell = { row: -1, col: -1 };\n this.disableHeaderHover = false;\n this.table = table;\n }\n\n get state() {\n return this._state;\n }\n\n set state(state) {\n if (\n state &&\n this._state &&\n (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row)\n ) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n } else if (!state && this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n this._state.address.col,\n this._state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this._state = state;\n } else if (state && !this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n }\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- import type { Group } from '@visactor/vrender';
2
- import type { ColumnIconOption } from '../../ts-types';
3
- export declare function iconLayout(icons: ColumnIconOption[], cellGroup: Group, padding: number[], width: number, height: number, textWidth: number, textAlign: CanvasTextAlign): number;
@@ -1,69 +0,0 @@
1
- import { IconPosition } from "../../ts-types";
2
-
3
- import { Icon } from "../graphic/icon";
4
-
5
- function createIcon(option) {
6
- const icon = new Icon(option);
7
- return icon.role = "icon", icon;
8
- }
9
-
10
- export function iconLayout(icons, cellGroup, padding, width, height, textWidth, textAlign) {
11
- const absoluteRightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.absoluteRight)), absoluteRightIconsWidths = absoluteRightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce(((a, b) => a + b), 0), rightIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.right)), rightIconsWidths = rightIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalRightIconWidth = rightIconsWidths.reduce(((a, b) => a + b), 0), leftIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.left)), leftIconsWidths = leftIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalLeftIconWidth = leftIconsWidths.reduce(((a, b) => a + b), 0), middleFrontIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.inlineFront)), middleFrontIconsWidths = middleFrontIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce(((a, b) => a + b), 0), middleEndIcons = null == icons ? void 0 : icons.filter((value => value.positionType === IconPosition.inlineEnd)), middleEndIconsWidths = middleEndIcons.map((icon => icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0))), totalMiddleEndIconWidth = middleEndIconsWidths.reduce(((a, b) => a + b), 0);
12
- let rightIconsLeft = width - padding[1] - totalRightIconWidth, leftIconsLeft = padding[3];
13
- rightIcons.forEach(((icon, index) => {
14
- const image = createIcon({
15
- x: rightIconsLeft,
16
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
17
- width: icon.width,
18
- height: icon.height,
19
- image: icon.svg
20
- });
21
- cellGroup.addChild(image), rightIconsLeft += rightIconsWidths[index];
22
- })), leftIcons.forEach(((icon, index) => {
23
- const image = createIcon({
24
- x: leftIconsLeft,
25
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
26
- width: icon.width,
27
- height: icon.height,
28
- image: icon.svg
29
- });
30
- cellGroup.addChild(image), leftIconsLeft += leftIconsWidths[index];
31
- }));
32
- let middleFrontIconsLeft = leftIconsLeft, middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;
33
- if ("right" === textAlign) middleFrontIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth,
34
- middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth; else if ("center" === textAlign) {
35
- const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;
36
- middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth, middleEndIconsLeft = centerX + textWidth / 2;
37
- }
38
- middleFrontIcons.forEach(((icon, index) => {
39
- const image = createIcon({
40
- x: middleFrontIconsLeft,
41
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
42
- width: icon.width,
43
- height: icon.height,
44
- image: icon.svg
45
- });
46
- cellGroup.addChild(image), middleFrontIconsLeft += middleFrontIconsWidths[index];
47
- })), middleEndIcons.forEach(((icon, index) => {
48
- const image = createIcon({
49
- x: middleEndIconsLeft,
50
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
51
- width: icon.width,
52
- height: icon.height,
53
- image: icon.svg
54
- });
55
- cellGroup.addChild(image), middleEndIconsLeft += middleEndIconsWidths[index];
56
- }));
57
- let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;
58
- return absoluteRightIcons.forEach(((icon, index) => {
59
- const image = createIcon({
60
- x: absoluteRightIconsLeft,
61
- y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,
62
- width: icon.width,
63
- height: icon.height,
64
- image: icon.svg
65
- });
66
- cellGroup.addChild(image), absoluteRightIconsLeft += absoluteRightIconsWidths[index];
67
- })), "right" === textAlign ? -totalRightIconWidth - totalMiddleEndIconWidth : "center" === textAlign ? 0 : totalLeftIconWidth + totalMiddleFrontIconWidth;
68
- }
69
- //# sourceMappingURL=layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["scenegraph/header-icon/layout.ts"],"names":[],"mappings":"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","file":"layout.js","sourcesContent":["import type { Group, IImageGraphicAttribute } from '@visactor/vrender';\nimport type { ColumnIconOption } from '../../ts-types';\nimport { IconPosition } from '../../ts-types';\nimport { Icon } from '../graphic/icon';\n\nfunction createIcon(option: IImageGraphicAttribute): Icon {\n const icon = new Icon(option);\n icon.role = 'icon';\n return icon;\n}\n\nexport function iconLayout(\n icons: ColumnIconOption[],\n cellGroup: Group,\n padding: number[],\n width: number,\n height: number,\n textWidth: number,\n textAlign: CanvasTextAlign\n): number {\n // icons.forEach((icon, index) => {\n // const image = createIcon({\n // x: 100 + index * 20,\n // y: 20,\n // width: icon.width,\n // height: icon.height,\n // image: (<any>icon).svg,\n // });\n // cellGroup.addChild(image);\n // });\n\n //图标的inline对象\n const absoluteRightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.absoluteRight) {\n return true;\n }\n return false;\n });\n const absoluteRightIconsWidths = absoluteRightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalAbsoluteRightIconWidth = absoluteRightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const rightIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.right) {\n return true;\n }\n return false;\n });\n const rightIconsWidths = rightIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalRightIconWidth = rightIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const leftIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.left) {\n return true;\n }\n return false;\n });\n const leftIconsWidths = leftIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalLeftIconWidth = leftIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n // TODO: 处理行内换行图标\n const middleFrontIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineFront) {\n return true;\n }\n return false;\n });\n const middleFrontIconsWidths = middleFrontIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleFrontIconWidth = middleFrontIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n const middleEndIcons = icons?.filter((value: ColumnIconOption) => {\n if (value.positionType === IconPosition.inlineEnd) {\n return true;\n }\n return false;\n });\n const middleEndIconsWidths = middleEndIcons.map(icon => {\n return icon.width + (icon.marginLeft || 0) + (icon.marginRight || 0);\n });\n const totalMiddleEndIconWidth = middleEndIconsWidths.reduce((a: number, b: number) => {\n return a + b;\n }, 0);\n\n let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n let leftIconsLeft = padding[3];\n\n // 处理右侧图标\n // let rightIconsLeft = width - padding[1] - totalRightIconWidth;\n rightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: rightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n rightIconsLeft += rightIconsWidths[index];\n });\n\n // 处理左侧图标\n // let leftIconsLeft = padding[3];\n leftIcons.forEach((icon, index) => {\n const image = createIcon({\n x: leftIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n leftIconsLeft += leftIconsWidths[index];\n });\n\n // textAlign === 'left'\n let middleFrontIconsLeft = leftIconsLeft;\n let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n if (textAlign === 'right') {\n middleFrontIconsLeft =\n width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth - textWidth - totalMiddleFrontIconWidth;\n middleEndIconsLeft = width - padding[1] - totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n const centerX = padding[1] + (width - padding[1] - padding[3]) / 2;\n middleFrontIconsLeft = centerX - textWidth / 2 - totalMiddleFrontIconWidth;\n middleEndIconsLeft = centerX + textWidth / 2;\n }\n\n // 处理行内左侧图标\n middleFrontIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleFrontIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleFrontIconsLeft += middleFrontIconsWidths[index];\n });\n\n // 处理行内右侧图标\n // let middleEndIconsLeft = padding[3] + totalLeftIconWidth + totalMiddleFrontIconWidth + textWidth;\n middleEndIcons.forEach((icon, index) => {\n const image = createIcon({\n x: middleEndIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n middleEndIconsLeft += middleEndIconsWidths[index];\n });\n\n // 处理absolute右侧图标\n let absoluteRightIconsLeft = width - totalAbsoluteRightIconWidth;\n absoluteRightIcons.forEach((icon, index) => {\n const image = createIcon({\n x: absoluteRightIconsLeft,\n y: (height + padding[0] - padding[2]) / 2 - icon.height / 2,\n width: icon.width,\n height: icon.height,\n image: (<any>icon).svg\n });\n cellGroup.addChild(image);\n\n absoluteRightIconsLeft += absoluteRightIconsWidths[index];\n });\n\n if (textAlign === 'right') {\n return -totalRightIconWidth - totalMiddleEndIconWidth;\n } else if (textAlign === 'center') {\n return 0;\n }\n // textAlign === 'left'\n return totalLeftIconWidth + totalMiddleFrontIconWidth;\n}\n"]}
@@ -1,14 +0,0 @@
1
- export declare class HoverState {
2
- highlightMode: 'cross' | 'column' | 'row' | 'cell';
3
- disableHover: boolean;
4
- disableHeaderHover: boolean;
5
- cell: {
6
- row: number;
7
- col: number;
8
- };
9
- _state: any;
10
- table: any;
11
- constructor(table: any);
12
- get state(): any;
13
- set state(state: any);
14
- }
@@ -1,19 +0,0 @@
1
- export class HoverState {
2
- constructor(table) {
3
- this.highlightMode = "cell", this.cell = {
4
- row: -1,
5
- col: -1
6
- }, this.disableHeaderHover = !1, this.table = table;
7
- }
8
- get state() {
9
- return this._state;
10
- }
11
- set state(state) {
12
- state && this._state && (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row) ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), state.address.col, state.address.row, 0, "fill", "normal"),
13
- this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
14
- this._state = state) : !state && this._state ? (this.table.scenegraph.update(this.table.scenegraph.getCell(this._state.address.col, this._state.address.row), this._state.address.col, this._state.address.row, 0, "fill", "normal"),
15
- this._state = state) : state && !this._state && (this.table.scenegraph.update(this.table.scenegraph.getCell(state.address.col, state.address.row), state.address.col, state.address.row, 0, "fill", "#c8daf6"),
16
- this._state = state);
17
- }
18
- }
19
- //# sourceMappingURL=hover-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["scenegraph/hover-state.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,UAAU;IAQrB,YAAY,KAAU;QACpB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAK;QACb,IACE,KAAK;YACL,IAAI,CAAC,MAAM;YACX,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAChG;YACA,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAC/E,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EACvB,CAAC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;aAAM,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EACnE,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,KAAK,CAAC,OAAO,CAAC,GAAG,EACjB,CAAC,EACD,MAAM,EACN,SAAS,CACV,CAAC;YAEF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;IACH,CAAC;CACF","file":"hover-state.js","sourcesContent":["export class HoverState {\n highlightMode: 'cross' | 'column' | 'row' | 'cell';\n disableHover: boolean;\n disableHeaderHover: boolean;\n cell: { row: number; col: number };\n _state: any;\n table: any;\n\n constructor(table: any) {\n this.highlightMode = 'cell';\n this.cell = { row: -1, col: -1 };\n this.disableHeaderHover = false;\n this.table = table;\n }\n\n get state() {\n return this._state;\n }\n\n set state(state) {\n if (\n state &&\n this._state &&\n (state.address.col !== this._state.address.col || state.address.row !== this._state.address.row)\n ) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n } else if (!state && this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(this._state.address.col, this._state.address.row),\n this._state.address.col,\n this._state.address.row,\n 0,\n 'fill',\n 'normal'\n );\n\n this._state = state;\n } else if (state && !this._state) {\n this.table.scenegraph.update(\n this.table.scenegraph.getCell(state.address.col, state.address.row),\n state.address.col,\n state.address.row,\n 0,\n 'fill',\n '#c8daf6'\n );\n\n this._state = state;\n }\n }\n}\n"]}