@visactor/vchart 1.0.1-alpha.1 → 1.1.0-beta.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 (870) hide show
  1. package/build/index.js +65046 -64871
  2. package/build/index.min.js +2 -2
  3. package/chart.d.ts +1 -1
  4. package/chart.js +1 -1
  5. package/cjs/chart/area/area.d.ts +1 -0
  6. package/cjs/chart/area/area.js +6 -1
  7. package/cjs/chart/area/area.js.map +1 -1
  8. package/cjs/chart/bar/bar-3d.d.ts +7 -0
  9. package/cjs/chart/bar/bar-3d.js +19 -0
  10. package/cjs/chart/bar/bar-3d.js.map +1 -0
  11. package/cjs/chart/bar/bar.d.ts +1 -6
  12. package/cjs/chart/bar/bar.js +7 -11
  13. package/cjs/chart/bar/bar.js.map +1 -1
  14. package/cjs/chart/bar/index.d.ts +1 -0
  15. package/cjs/chart/bar/index.js +2 -1
  16. package/cjs/chart/bar/index.js.map +1 -1
  17. package/cjs/chart/base-chart.d.ts +1 -1
  18. package/cjs/chart/base-chart.js +2 -1
  19. package/cjs/chart/base-chart.js.map +1 -1
  20. package/cjs/chart/box-plot/box-plot.js +4 -2
  21. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  22. package/cjs/chart/circle-packing/circle-packing.js +3 -1
  23. package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
  24. package/cjs/chart/funnel/base.d.ts +9 -0
  25. package/cjs/chart/funnel/base.js +47 -0
  26. package/cjs/chart/funnel/base.js.map +1 -0
  27. package/cjs/chart/funnel/funnel-3d.d.ts +7 -0
  28. package/cjs/chart/funnel/funnel-3d.js +19 -0
  29. package/cjs/chart/funnel/funnel-3d.js.map +1 -0
  30. package/cjs/chart/funnel/funnel.d.ts +1 -16
  31. package/cjs/chart/funnel/funnel.js +4 -48
  32. package/cjs/chart/funnel/funnel.js.map +1 -1
  33. package/cjs/chart/funnel/index.d.ts +1 -0
  34. package/cjs/chart/funnel/index.js +2 -1
  35. package/cjs/chart/funnel/index.js.map +1 -1
  36. package/cjs/chart/gauge/gauge.js +3 -1
  37. package/cjs/chart/gauge/gauge.js.map +1 -1
  38. package/cjs/chart/heatmap/heatmap.js +3 -1
  39. package/cjs/chart/heatmap/heatmap.js.map +1 -1
  40. package/cjs/chart/histogram/base.d.ts +5 -0
  41. package/cjs/chart/histogram/base.js +22 -0
  42. package/cjs/chart/histogram/base.js.map +1 -0
  43. package/cjs/chart/histogram/histogram-3d.d.ts +7 -0
  44. package/cjs/chart/histogram/histogram-3d.js +19 -0
  45. package/cjs/chart/histogram/histogram-3d.js.map +1 -0
  46. package/cjs/chart/histogram/histogram.d.ts +2 -12
  47. package/cjs/chart/histogram/histogram.js +7 -23
  48. package/cjs/chart/histogram/histogram.js.map +1 -1
  49. package/cjs/chart/histogram/index.d.ts +1 -0
  50. package/cjs/chart/histogram/index.js +2 -1
  51. package/cjs/chart/histogram/index.js.map +1 -1
  52. package/cjs/chart/index.d.ts +57 -22
  53. package/cjs/chart/index.js +293 -26
  54. package/cjs/chart/index.js.map +1 -1
  55. package/cjs/chart/line/line.d.ts +1 -0
  56. package/cjs/chart/line/line.js +6 -1
  57. package/cjs/chart/line/line.js.map +1 -1
  58. package/cjs/chart/map/map.js +3 -1
  59. package/cjs/chart/map/map.js.map +1 -1
  60. package/cjs/chart/pie/base.d.ts +5 -0
  61. package/cjs/chart/pie/base.js +26 -0
  62. package/cjs/chart/pie/base.js.map +1 -0
  63. package/cjs/chart/pie/index.d.ts +1 -0
  64. package/cjs/chart/pie/index.js +2 -1
  65. package/cjs/chart/pie/index.js.map +1 -1
  66. package/cjs/chart/pie/pie-3d.d.ts +8 -0
  67. package/cjs/chart/pie/pie-3d.js +24 -0
  68. package/cjs/chart/pie/pie-3d.js.map +1 -0
  69. package/cjs/chart/pie/pie.d.ts +1 -13
  70. package/cjs/chart/pie/pie.js +4 -32
  71. package/cjs/chart/pie/pie.js.map +1 -1
  72. package/cjs/chart/progress/circular/circular.js +3 -1
  73. package/cjs/chart/progress/circular/circular.js.map +1 -1
  74. package/cjs/chart/progress/linear/linear.js +3 -1
  75. package/cjs/chart/progress/linear/linear.js.map +1 -1
  76. package/cjs/chart/radar/radar.js +3 -1
  77. package/cjs/chart/radar/radar.js.map +1 -1
  78. package/cjs/chart/range-area/range-area.d.ts +1 -0
  79. package/cjs/chart/range-area/range-area.js +6 -1
  80. package/cjs/chart/range-area/range-area.js.map +1 -1
  81. package/cjs/chart/range-column/index.d.ts +2 -1
  82. package/cjs/chart/range-column/index.js +2 -1
  83. package/cjs/chart/range-column/index.js.map +1 -1
  84. package/cjs/chart/range-column/{rangeColumn.d.ts → range-column-3d.d.ts} +0 -7
  85. package/cjs/chart/range-column/{rangeColumn.js → range-column-3d.js} +4 -17
  86. package/cjs/chart/range-column/range-column-3d.js.map +1 -0
  87. package/cjs/chart/range-column/range-column.d.ts +9 -0
  88. package/cjs/chart/range-column/range-column.js +28 -0
  89. package/cjs/chart/range-column/range-column.js.map +1 -0
  90. package/cjs/chart/rose/rose.js +3 -1
  91. package/cjs/chart/rose/rose.js.map +1 -1
  92. package/cjs/chart/sankey/sankey.js +3 -1
  93. package/cjs/chart/sankey/sankey.js.map +1 -1
  94. package/cjs/chart/scatter/scatter.js +3 -1
  95. package/cjs/chart/scatter/scatter.js.map +1 -1
  96. package/cjs/chart/sequence/sequence.js +3 -1
  97. package/cjs/chart/sequence/sequence.js.map +1 -1
  98. package/cjs/chart/sunburst/sunburst.js +3 -1
  99. package/cjs/chart/sunburst/sunburst.js.map +1 -1
  100. package/cjs/chart/treemap/treemap.js +3 -1
  101. package/cjs/chart/treemap/treemap.js.map +1 -1
  102. package/cjs/chart/util.d.ts +2 -0
  103. package/cjs/chart/util.js +23 -0
  104. package/cjs/chart/util.js.map +1 -0
  105. package/cjs/chart/waterfall/waterfall.js +4 -2
  106. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  107. package/cjs/chart/word-cloud/base.d.ts +6 -0
  108. package/cjs/chart/word-cloud/base.js +25 -0
  109. package/cjs/chart/word-cloud/base.js.map +1 -0
  110. package/cjs/chart/word-cloud/index.d.ts +1 -0
  111. package/cjs/chart/word-cloud/index.js +2 -1
  112. package/cjs/chart/word-cloud/index.js.map +1 -1
  113. package/cjs/chart/word-cloud/word-cloud-3d.d.ts +9 -0
  114. package/cjs/chart/word-cloud/word-cloud-3d.js +46 -0
  115. package/cjs/chart/word-cloud/word-cloud-3d.js.map +1 -0
  116. package/cjs/chart/word-cloud/word-cloud.d.ts +2 -15
  117. package/cjs/chart/word-cloud/word-cloud.js +4 -53
  118. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  119. package/cjs/component/axis/cartesian/axis.js +1 -1
  120. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  121. package/cjs/component/crosshair/base.js +1 -2
  122. package/cjs/component/crosshair/base.js.map +1 -1
  123. package/cjs/component/crosshair/interface/spec.d.ts +1 -1
  124. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  125. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  126. package/cjs/component/index.d.ts +39 -1
  127. package/cjs/component/index.js +202 -17
  128. package/cjs/component/index.js.map +1 -1
  129. package/cjs/component/legend/base-legend.d.ts +1 -1
  130. package/cjs/component/legend/base-legend.js +7 -3
  131. package/cjs/component/legend/base-legend.js.map +1 -1
  132. package/cjs/component/legend/util.d.ts +3 -3
  133. package/cjs/component/player/utils/transform.js +1 -3
  134. package/cjs/component/player/utils/transform.js.map +1 -1
  135. package/cjs/component/tooltip/handler/base.d.ts +5 -4
  136. package/cjs/component/tooltip/handler/base.js +44 -34
  137. package/cjs/component/tooltip/handler/base.js.map +1 -1
  138. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  139. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -2
  140. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  141. package/cjs/component/tooltip/handler/constants.d.ts +4 -0
  142. package/cjs/component/tooltip/handler/constants.js +5 -2
  143. package/cjs/component/tooltip/handler/constants.js.map +1 -1
  144. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
  145. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -13
  146. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  147. package/cjs/component/tooltip/handler/dom/interface.d.ts +16 -5
  148. package/cjs/component/tooltip/handler/dom/interface.js.map +1 -1
  149. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
  150. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js +12 -27
  151. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  152. package/cjs/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
  153. package/cjs/component/tooltip/handler/dom/model/content-column-model.js +46 -26
  154. package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  155. package/cjs/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
  156. package/cjs/component/tooltip/handler/dom/model/content-model.js +4 -4
  157. package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  158. package/cjs/component/tooltip/handler/dom/model/interface.d.ts +4 -0
  159. package/cjs/component/tooltip/handler/dom/model/interface.js.map +1 -1
  160. package/cjs/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
  161. package/cjs/component/tooltip/handler/dom/model/shape-model.js +4 -4
  162. package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  163. package/cjs/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
  164. package/cjs/component/tooltip/handler/dom/model/style-constants.js +16 -18
  165. package/cjs/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  166. package/cjs/component/tooltip/handler/dom/model/text-model.js +1 -0
  167. package/cjs/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  168. package/cjs/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
  169. package/cjs/component/tooltip/handler/dom/model/title-model.js +15 -19
  170. package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  171. package/cjs/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
  172. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js +21 -16
  173. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  174. package/cjs/component/tooltip/handler/dom/util.d.ts +5 -0
  175. package/cjs/component/tooltip/handler/dom/{utils/style.js → util.js} +32 -20
  176. package/cjs/component/tooltip/handler/dom/util.js.map +1 -0
  177. package/cjs/component/tooltip/handler/interface/index.d.ts +0 -1
  178. package/cjs/component/tooltip/handler/interface/index.js +1 -1
  179. package/cjs/component/tooltip/handler/interface/index.js.map +1 -1
  180. package/cjs/component/tooltip/handler/utils/attribute.js +12 -8
  181. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  182. package/cjs/component/tooltip/handler/utils/common.d.ts +6 -2
  183. package/cjs/component/tooltip/handler/utils/common.js +30 -5
  184. package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
  185. package/cjs/component/tooltip/handler/utils/compose.d.ts +3 -2
  186. package/cjs/component/tooltip/handler/utils/compose.js +56 -45
  187. package/cjs/component/tooltip/handler/utils/compose.js.map +1 -1
  188. package/cjs/component/tooltip/handler/utils/get-spec.js +64 -28
  189. package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
  190. package/cjs/component/tooltip/handler/utils/style.d.ts +2 -1
  191. package/cjs/component/tooltip/handler/utils/style.js +4 -4
  192. package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
  193. package/cjs/component/tooltip/tooltip.d.ts +3 -1
  194. package/cjs/component/tooltip/tooltip.js +33 -18
  195. package/cjs/component/tooltip/tooltip.js.map +1 -1
  196. package/cjs/component/tooltip/utils/common.js +4 -2
  197. package/cjs/component/tooltip/utils/common.js.map +1 -1
  198. package/cjs/constant/word-cloud.js +2 -1
  199. package/cjs/core/factory.js +1 -2
  200. package/cjs/{export/core.d.ts → core/index.d.ts} +4 -4
  201. package/cjs/{export/core.js → core/index.js} +5 -5
  202. package/cjs/core/index.js.map +1 -0
  203. package/cjs/core/instance-manager.d.ts +1 -1
  204. package/cjs/core/instance-manager.js +1 -1
  205. package/cjs/core/instance-manager.js.map +1 -1
  206. package/cjs/core/interface.js +1 -1
  207. package/cjs/core/vchart.d.ts +1 -0
  208. package/cjs/core/vchart.js +11 -3
  209. package/cjs/core/vchart.js.map +1 -1
  210. package/cjs/data/initialize.js +2 -1
  211. package/cjs/index.d.ts +6 -6
  212. package/cjs/index.js +4 -4
  213. package/cjs/index.js.map +1 -1
  214. package/cjs/layout/base-layout.d.ts +24 -0
  215. package/cjs/layout/base-layout.js +123 -0
  216. package/cjs/layout/base-layout.js.map +1 -0
  217. package/cjs/layout/grid-layout/grid-layout.d.ts +5 -35
  218. package/cjs/layout/grid-layout/grid-layout.js +2 -1
  219. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  220. package/cjs/layout/index.d.ts +6 -24
  221. package/cjs/layout/index.js +25 -115
  222. package/cjs/layout/index.js.map +1 -1
  223. package/cjs/layout/interface.d.ts +31 -3
  224. package/cjs/layout/interface.js.map +1 -1
  225. package/cjs/layout/layout3d/index.d.ts +1 -1
  226. package/cjs/layout/layout3d/index.js +2 -2
  227. package/cjs/layout/layout3d/index.js.map +1 -1
  228. package/cjs/mark/arc-3d.d.ts +9 -0
  229. package/cjs/mark/arc-3d.js +16 -0
  230. package/cjs/mark/arc-3d.js.map +1 -0
  231. package/cjs/mark/arc.d.ts +5 -9
  232. package/cjs/mark/arc.js +12 -22
  233. package/cjs/mark/arc.js.map +1 -1
  234. package/cjs/mark/area.js +1 -1
  235. package/cjs/mark/base/base-line.js +3 -3
  236. package/cjs/mark/base/base-line.js.map +1 -1
  237. package/cjs/mark/base/base-mark.d.ts +7 -0
  238. package/cjs/mark/base/base-mark.js +10 -6
  239. package/cjs/mark/base/base-mark.js.map +1 -1
  240. package/cjs/mark/box-plot.js +1 -1
  241. package/cjs/mark/cell.js +1 -1
  242. package/cjs/mark/index.d.ts +21 -0
  243. package/cjs/{export/mark.js → mark/index.js} +49 -37
  244. package/cjs/mark/index.js.map +1 -0
  245. package/cjs/mark/{linkPath.js → link-path.js} +1 -1
  246. package/cjs/mark/link-path.js.map +1 -0
  247. package/cjs/mark/polygon/base-polygon.d.ts +6 -0
  248. package/cjs/mark/polygon/base-polygon.js +18 -0
  249. package/cjs/mark/polygon/base-polygon.js.map +1 -0
  250. package/cjs/mark/polygon/polygon.d.ts +9 -0
  251. package/cjs/mark/polygon/polygon.js +16 -0
  252. package/cjs/mark/polygon/polygon.js.map +1 -0
  253. package/cjs/mark/polygon/pyramid-3d.d.ts +9 -0
  254. package/cjs/mark/polygon/pyramid-3d.js +16 -0
  255. package/cjs/mark/polygon/pyramid-3d.js.map +1 -0
  256. package/cjs/mark/rect-3d.d.ts +10 -0
  257. package/cjs/mark/rect-3d.js +23 -0
  258. package/cjs/mark/rect-3d.js.map +1 -0
  259. package/cjs/mark/rect.d.ts +1 -7
  260. package/cjs/mark/rect.js +1 -16
  261. package/cjs/mark/rect.js.map +1 -1
  262. package/cjs/mark/utils/common.d.ts +0 -12
  263. package/cjs/mark/utils/common.js +2 -13
  264. package/cjs/mark/utils/common.js.map +1 -1
  265. package/cjs/model/base-model.js +1 -1
  266. package/cjs/model/interface.js +1 -1
  267. package/cjs/model/layout-item.js +1 -1
  268. package/cjs/model/model-state-manager.js +1 -1
  269. package/cjs/model/tooltip-helper.d.ts +3 -4
  270. package/cjs/model/tooltip-helper.js +5 -10
  271. package/cjs/model/tooltip-helper.js.map +1 -1
  272. package/cjs/region/interface.js +1 -1
  273. package/cjs/region/region.js +5 -10
  274. package/cjs/region/region.js.map +1 -1
  275. package/cjs/series/area/area.js +3 -1
  276. package/cjs/series/area/area.js.map +1 -1
  277. package/cjs/series/bar/bar-3d.d.ts +11 -0
  278. package/cjs/series/bar/bar-3d.js +25 -0
  279. package/cjs/series/bar/bar-3d.js.map +1 -0
  280. package/cjs/series/bar/bar.d.ts +0 -7
  281. package/cjs/series/bar/bar.js +3 -18
  282. package/cjs/series/bar/bar.js.map +1 -1
  283. package/cjs/series/base/base-series.js +1 -1
  284. package/cjs/series/base/base-series.js.map +1 -1
  285. package/cjs/series/base/tooltip-helper.d.ts +9 -8
  286. package/cjs/series/base/tooltip-helper.js +23 -12
  287. package/cjs/series/base/tooltip-helper.js.map +1 -1
  288. package/cjs/series/box-plot/box-plot.js +5 -1
  289. package/cjs/series/box-plot/box-plot.js.map +1 -1
  290. package/cjs/series/circle-packing/circle-packing.js +3 -1
  291. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  292. package/cjs/series/dot/dot.js +3 -1
  293. package/cjs/series/dot/dot.js.map +1 -1
  294. package/cjs/series/dot/tooltip-helper.d.ts +1 -2
  295. package/cjs/series/dot/tooltip-helper.js +6 -5
  296. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  297. package/cjs/series/funnel/funnel-3d.d.ts +18 -0
  298. package/cjs/series/funnel/funnel-3d.js +104 -0
  299. package/cjs/series/funnel/funnel-3d.js.map +1 -0
  300. package/cjs/series/funnel/funnel.d.ts +3 -15
  301. package/cjs/series/funnel/funnel.js +12 -104
  302. package/cjs/series/funnel/funnel.js.map +1 -1
  303. package/cjs/series/funnel/tooltip-helper.d.ts +5 -3
  304. package/cjs/series/funnel/tooltip-helper.js +10 -8
  305. package/cjs/series/funnel/tooltip-helper.js.map +1 -1
  306. package/cjs/series/gauge/gauge-pointer.js +3 -1
  307. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  308. package/cjs/series/gauge/gauge.js +3 -1
  309. package/cjs/series/gauge/gauge.js.map +1 -1
  310. package/cjs/series/heatmap/heatmap.js +2 -2
  311. package/cjs/series/heatmap/heatmap.js.map +1 -1
  312. package/cjs/series/index.d.ts +66 -0
  313. package/cjs/{export/series.js → series/index.js} +70 -50
  314. package/cjs/series/index.js.map +1 -0
  315. package/cjs/series/interface/series.d.ts +2 -1
  316. package/cjs/series/interface/series.js.map +1 -1
  317. package/cjs/series/interface/tooltip-helper.d.ts +6 -6
  318. package/cjs/series/interface/tooltip-helper.js.map +1 -1
  319. package/cjs/series/line/line.js +3 -1
  320. package/cjs/series/line/line.js.map +1 -1
  321. package/cjs/series/link/link.js +3 -1
  322. package/cjs/series/link/link.js.map +1 -1
  323. package/cjs/series/map/map.js +2 -2
  324. package/cjs/series/map/map.js.map +1 -1
  325. package/cjs/series/pie/pie-3d.d.ts +16 -0
  326. package/cjs/series/pie/pie-3d.js +97 -0
  327. package/cjs/series/pie/pie-3d.js.map +1 -0
  328. package/cjs/series/pie/pie.d.ts +1 -11
  329. package/cjs/series/pie/pie.js +4 -89
  330. package/cjs/series/pie/pie.js.map +1 -1
  331. package/cjs/series/polar/animation.d.ts +1 -1
  332. package/cjs/series/polar/animation.js.map +1 -1
  333. package/cjs/series/progress/circular/circular.js +3 -1
  334. package/cjs/series/progress/circular/circular.js.map +1 -1
  335. package/cjs/series/progress/linear/linear.js +3 -1
  336. package/cjs/series/progress/linear/linear.js.map +1 -1
  337. package/cjs/series/radar/animation.d.ts +1 -1
  338. package/cjs/series/radar/animation.js.map +1 -1
  339. package/cjs/series/radar/radar.js +3 -1
  340. package/cjs/series/radar/radar.js.map +1 -1
  341. package/cjs/series/range-column/rangeColumn-3d.d.ts +10 -0
  342. package/cjs/series/range-column/rangeColumn-3d.js +19 -0
  343. package/cjs/series/range-column/rangeColumn-3d.js.map +1 -0
  344. package/cjs/series/range-column/rangeColumn.d.ts +0 -6
  345. package/cjs/series/range-column/rangeColumn.js +1 -10
  346. package/cjs/series/range-column/rangeColumn.js.map +1 -1
  347. package/cjs/series/rose/rose.js +2 -2
  348. package/cjs/series/rose/rose.js.map +1 -1
  349. package/cjs/series/sankey/sankey.js +2 -1
  350. package/cjs/series/sankey/sankey.js.map +1 -1
  351. package/cjs/series/scatter/scatter.js +3 -1
  352. package/cjs/series/scatter/scatter.js.map +1 -1
  353. package/cjs/series/sunburst/sunburst.js +3 -1
  354. package/cjs/series/sunburst/sunburst.js.map +1 -1
  355. package/cjs/series/treemap/treemap.js +3 -1
  356. package/cjs/series/treemap/treemap.js.map +1 -1
  357. package/cjs/series/waterfall/waterfall.js +2 -2
  358. package/cjs/series/waterfall/waterfall.js.map +1 -1
  359. package/cjs/series/word-cloud/base.d.ts +60 -0
  360. package/cjs/series/word-cloud/base.js +254 -0
  361. package/cjs/series/word-cloud/base.js.map +1 -0
  362. package/cjs/series/word-cloud/word-cloud-3d.d.ts +11 -0
  363. package/cjs/series/word-cloud/word-cloud-3d.js +199 -0
  364. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -0
  365. package/cjs/series/word-cloud/word-cloud.d.ts +2 -69
  366. package/cjs/series/word-cloud/word-cloud.js +5 -441
  367. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  368. package/cjs/theme/buildin-theme/index.d.ts +0 -1
  369. package/cjs/theme/buildin-theme/index.js +3 -3
  370. package/cjs/theme/buildin-theme/index.js.map +1 -1
  371. package/cjs/theme/buildin-theme/light/component/crosshair.js +4 -4
  372. package/cjs/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  373. package/cjs/theme/buildin-theme/light/component/tooltip.js +1 -0
  374. package/cjs/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  375. package/cjs/typings/spec/common.d.ts +1 -1
  376. package/cjs/typings/spec/common.js.map +1 -1
  377. package/cjs/typings/tooltip/common.d.ts +7 -1
  378. package/cjs/typings/tooltip/common.js.map +1 -1
  379. package/cjs/typings/tooltip/handler.d.ts +1 -1
  380. package/cjs/typings/tooltip/handler.js.map +1 -1
  381. package/cjs/typings/tooltip/line.d.ts +6 -4
  382. package/cjs/typings/tooltip/line.js.map +1 -1
  383. package/cjs/typings/tooltip/shape.d.ts +3 -3
  384. package/cjs/typings/tooltip/shape.js.map +1 -1
  385. package/cjs/typings/tooltip/tooltip.d.ts +11 -8
  386. package/cjs/typings/tooltip/tooltip.js.map +1 -1
  387. package/cjs/typings/visual.d.ts +4 -11
  388. package/cjs/typings/visual.js.map +1 -1
  389. package/cjs/util/debug.d.ts +3 -3
  390. package/cjs/util/debug.js +11 -20
  391. package/cjs/util/debug.js.map +1 -1
  392. package/cjs/util/index.d.ts +1 -0
  393. package/cjs/util/index.js +2 -1
  394. package/cjs/util/index.js.map +1 -1
  395. package/cjs/util/style.js +3 -7
  396. package/cjs/util/style.js.map +1 -1
  397. package/cjs/vchart-all.d.ts +1 -1
  398. package/cjs/vchart-all.js +3 -5
  399. package/cjs/vchart-all.js.map +1 -1
  400. package/cjs/vchart-simple.d.ts +1 -1
  401. package/cjs/vchart-simple.js +2 -4
  402. package/cjs/vchart-simple.js.map +1 -1
  403. package/component.d.ts +1 -1
  404. package/component.js +1 -1
  405. package/core.d.ts +1 -1
  406. package/core.js +1 -1
  407. package/esm/chart/area/area.d.ts +1 -0
  408. package/esm/chart/area/area.js +11 -0
  409. package/esm/chart/area/area.js.map +1 -1
  410. package/esm/chart/bar/bar-3d.d.ts +7 -0
  411. package/esm/chart/bar/bar-3d.js +20 -0
  412. package/esm/chart/bar/bar-3d.js.map +1 -0
  413. package/esm/chart/bar/bar.d.ts +1 -6
  414. package/esm/chart/bar/bar.js +11 -8
  415. package/esm/chart/bar/bar.js.map +1 -1
  416. package/esm/chart/bar/index.d.ts +1 -0
  417. package/esm/chart/bar/index.js +2 -0
  418. package/esm/chart/bar/index.js.map +1 -1
  419. package/esm/chart/base-chart.d.ts +1 -1
  420. package/esm/chart/base-chart.js +2 -1
  421. package/esm/chart/base-chart.js.map +1 -1
  422. package/esm/chart/box-plot/box-plot.js +9 -1
  423. package/esm/chart/box-plot/box-plot.js.map +1 -1
  424. package/esm/chart/circle-packing/circle-packing.js +6 -0
  425. package/esm/chart/circle-packing/circle-packing.js.map +1 -1
  426. package/esm/chart/funnel/base.d.ts +9 -0
  427. package/esm/chart/funnel/base.js +39 -0
  428. package/esm/chart/funnel/base.js.map +1 -0
  429. package/esm/chart/funnel/funnel-3d.d.ts +7 -0
  430. package/esm/chart/funnel/funnel-3d.js +20 -0
  431. package/esm/chart/funnel/funnel-3d.js.map +1 -0
  432. package/esm/chart/funnel/funnel.d.ts +1 -16
  433. package/esm/chart/funnel/funnel.js +7 -46
  434. package/esm/chart/funnel/funnel.js.map +1 -1
  435. package/esm/chart/funnel/index.d.ts +1 -0
  436. package/esm/chart/funnel/index.js +2 -0
  437. package/esm/chart/funnel/index.js.map +1 -1
  438. package/esm/chart/gauge/gauge.js +6 -0
  439. package/esm/chart/gauge/gauge.js.map +1 -1
  440. package/esm/chart/heatmap/heatmap.js +6 -0
  441. package/esm/chart/heatmap/heatmap.js.map +1 -1
  442. package/esm/chart/histogram/base.d.ts +5 -0
  443. package/esm/chart/histogram/base.js +14 -0
  444. package/esm/chart/histogram/base.js.map +1 -0
  445. package/esm/chart/histogram/histogram-3d.d.ts +7 -0
  446. package/esm/chart/histogram/histogram-3d.js +20 -0
  447. package/esm/chart/histogram/histogram-3d.js.map +1 -0
  448. package/esm/chart/histogram/histogram.d.ts +2 -12
  449. package/esm/chart/histogram/histogram.js +12 -21
  450. package/esm/chart/histogram/histogram.js.map +1 -1
  451. package/esm/chart/histogram/index.d.ts +1 -0
  452. package/esm/chart/histogram/index.js +2 -0
  453. package/esm/chart/histogram/index.js.map +1 -1
  454. package/esm/chart/index.d.ts +57 -22
  455. package/esm/chart/index.js +36 -22
  456. package/esm/chart/index.js.map +1 -1
  457. package/esm/chart/line/line.d.ts +1 -0
  458. package/esm/chart/line/line.js +11 -0
  459. package/esm/chart/line/line.js.map +1 -1
  460. package/esm/chart/map/map.js +6 -0
  461. package/esm/chart/map/map.js.map +1 -1
  462. package/esm/chart/pie/base.d.ts +5 -0
  463. package/esm/chart/pie/base.js +18 -0
  464. package/esm/chart/pie/base.js.map +1 -0
  465. package/esm/chart/pie/index.d.ts +1 -0
  466. package/esm/chart/pie/index.js +2 -0
  467. package/esm/chart/pie/index.js.map +1 -1
  468. package/esm/chart/pie/pie-3d.d.ts +8 -0
  469. package/esm/chart/pie/pie-3d.js +25 -0
  470. package/esm/chart/pie/pie-3d.js.map +1 -0
  471. package/esm/chart/pie/pie.d.ts +1 -13
  472. package/esm/chart/pie/pie.js +6 -29
  473. package/esm/chart/pie/pie.js.map +1 -1
  474. package/esm/chart/progress/circular/circular.js +6 -0
  475. package/esm/chart/progress/circular/circular.js.map +1 -1
  476. package/esm/chart/progress/linear/linear.js +6 -0
  477. package/esm/chart/progress/linear/linear.js.map +1 -1
  478. package/esm/chart/radar/radar.js +6 -0
  479. package/esm/chart/radar/radar.js.map +1 -1
  480. package/esm/chart/range-area/range-area.d.ts +1 -0
  481. package/esm/chart/range-area/range-area.js +11 -0
  482. package/esm/chart/range-area/range-area.js.map +1 -1
  483. package/esm/chart/range-column/index.d.ts +2 -1
  484. package/esm/chart/range-column/index.js +3 -1
  485. package/esm/chart/range-column/index.js.map +1 -1
  486. package/esm/chart/range-column/{rangeColumn.d.ts → range-column-3d.d.ts} +0 -7
  487. package/esm/chart/range-column/{rangeColumn.js → range-column-3d.js} +5 -13
  488. package/esm/chart/range-column/range-column-3d.js.map +1 -0
  489. package/esm/chart/range-column/range-column.d.ts +9 -0
  490. package/esm/chart/range-column/range-column.js +33 -0
  491. package/esm/chart/range-column/range-column.js.map +1 -0
  492. package/esm/chart/rose/rose.js +6 -0
  493. package/esm/chart/rose/rose.js.map +1 -1
  494. package/esm/chart/sankey/sankey.js +6 -0
  495. package/esm/chart/sankey/sankey.js.map +1 -1
  496. package/esm/chart/scatter/scatter.js +6 -0
  497. package/esm/chart/scatter/scatter.js.map +1 -1
  498. package/esm/chart/sequence/sequence.js +6 -0
  499. package/esm/chart/sequence/sequence.js.map +1 -1
  500. package/esm/chart/sunburst/sunburst.js +6 -0
  501. package/esm/chart/sunburst/sunburst.js.map +1 -1
  502. package/esm/chart/treemap/treemap.js +6 -0
  503. package/esm/chart/treemap/treemap.js.map +1 -1
  504. package/esm/chart/util.d.ts +2 -0
  505. package/esm/chart/util.js +16 -0
  506. package/esm/chart/util.js.map +1 -0
  507. package/esm/chart/waterfall/waterfall.js +9 -1
  508. package/esm/chart/waterfall/waterfall.js.map +1 -1
  509. package/esm/chart/word-cloud/base.d.ts +6 -0
  510. package/esm/chart/word-cloud/base.js +21 -0
  511. package/esm/chart/word-cloud/base.js.map +1 -0
  512. package/esm/chart/word-cloud/index.d.ts +1 -0
  513. package/esm/chart/word-cloud/index.js +2 -0
  514. package/esm/chart/word-cloud/index.js.map +1 -1
  515. package/esm/chart/word-cloud/word-cloud-3d.d.ts +9 -0
  516. package/esm/chart/word-cloud/word-cloud-3d.js +47 -0
  517. package/esm/chart/word-cloud/word-cloud-3d.js.map +1 -0
  518. package/esm/chart/word-cloud/word-cloud.d.ts +2 -15
  519. package/esm/chart/word-cloud/word-cloud.js +6 -50
  520. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  521. package/esm/component/axis/cartesian/axis.js +2 -2
  522. package/esm/component/axis/cartesian/axis.js.map +1 -1
  523. package/esm/component/crosshair/base.js +1 -2
  524. package/esm/component/crosshair/base.js.map +1 -1
  525. package/esm/component/crosshair/interface/spec.d.ts +1 -1
  526. package/esm/component/crosshair/interface/spec.js.map +1 -1
  527. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  528. package/esm/component/index.d.ts +39 -1
  529. package/esm/component/index.js +39 -2
  530. package/esm/component/index.js.map +1 -1
  531. package/esm/component/legend/base-legend.d.ts +1 -1
  532. package/esm/component/legend/base-legend.js +7 -3
  533. package/esm/component/legend/base-legend.js.map +1 -1
  534. package/esm/component/legend/util.d.ts +3 -3
  535. package/esm/component/player/utils/transform.js +1 -3
  536. package/esm/component/player/utils/transform.js.map +1 -1
  537. package/esm/component/tooltip/handler/base.d.ts +5 -4
  538. package/esm/component/tooltip/handler/base.js +45 -35
  539. package/esm/component/tooltip/handler/base.js.map +1 -1
  540. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  541. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -3
  542. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  543. package/esm/component/tooltip/handler/constants.d.ts +4 -0
  544. package/esm/component/tooltip/handler/constants.js +9 -0
  545. package/esm/component/tooltip/handler/constants.js.map +1 -1
  546. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
  547. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -12
  548. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  549. package/esm/component/tooltip/handler/dom/interface.d.ts +16 -5
  550. package/esm/component/tooltip/handler/dom/interface.js.map +1 -1
  551. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
  552. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js +11 -29
  553. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  554. package/esm/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
  555. package/esm/component/tooltip/handler/dom/model/content-column-model.js +46 -24
  556. package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  557. package/esm/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
  558. package/esm/component/tooltip/handler/dom/model/content-model.js +5 -5
  559. package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  560. package/esm/component/tooltip/handler/dom/model/interface.d.ts +4 -0
  561. package/esm/component/tooltip/handler/dom/model/interface.js.map +1 -1
  562. package/esm/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
  563. package/esm/component/tooltip/handler/dom/model/shape-model.js +4 -4
  564. package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  565. package/esm/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
  566. package/esm/component/tooltip/handler/dom/model/style-constants.js +18 -20
  567. package/esm/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  568. package/esm/component/tooltip/handler/dom/model/text-model.js +1 -0
  569. package/esm/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  570. package/esm/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
  571. package/esm/component/tooltip/handler/dom/model/title-model.js +15 -19
  572. package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  573. package/esm/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
  574. package/esm/component/tooltip/handler/dom/model/tooltip-model.js +22 -16
  575. package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  576. package/esm/component/tooltip/handler/dom/util.d.ts +5 -0
  577. package/esm/component/tooltip/handler/dom/util.js +71 -0
  578. package/esm/component/tooltip/handler/dom/util.js.map +1 -0
  579. package/esm/component/tooltip/handler/interface/index.d.ts +0 -1
  580. package/esm/component/tooltip/handler/interface/index.js +0 -2
  581. package/esm/component/tooltip/handler/interface/index.js.map +1 -1
  582. package/esm/component/tooltip/handler/utils/attribute.js +11 -7
  583. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  584. package/esm/component/tooltip/handler/utils/common.d.ts +6 -2
  585. package/esm/component/tooltip/handler/utils/common.js +25 -2
  586. package/esm/component/tooltip/handler/utils/common.js.map +1 -1
  587. package/esm/component/tooltip/handler/utils/compose.d.ts +3 -2
  588. package/esm/component/tooltip/handler/utils/compose.js +52 -43
  589. package/esm/component/tooltip/handler/utils/compose.js.map +1 -1
  590. package/esm/component/tooltip/handler/utils/get-spec.js +60 -23
  591. package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
  592. package/esm/component/tooltip/handler/utils/style.d.ts +2 -1
  593. package/esm/component/tooltip/handler/utils/style.js +4 -4
  594. package/esm/component/tooltip/handler/utils/style.js.map +1 -1
  595. package/esm/component/tooltip/tooltip.d.ts +3 -1
  596. package/esm/component/tooltip/tooltip.js +33 -18
  597. package/esm/component/tooltip/tooltip.js.map +1 -1
  598. package/esm/component/tooltip/utils/common.js +4 -2
  599. package/esm/component/tooltip/utils/common.js.map +1 -1
  600. package/esm/constant/word-cloud.js +2 -1
  601. package/esm/core/factory.js +1 -2
  602. package/esm/{export/core.d.ts → core/index.d.ts} +4 -4
  603. package/esm/{export/core.js → core/index.js} +5 -5
  604. package/esm/core/index.js.map +1 -0
  605. package/esm/core/instance-manager.d.ts +1 -1
  606. package/esm/core/instance-manager.js +1 -1
  607. package/esm/core/instance-manager.js.map +1 -1
  608. package/esm/core/interface.js +1 -1
  609. package/esm/core/vchart.d.ts +1 -0
  610. package/esm/core/vchart.js +10 -3
  611. package/esm/core/vchart.js.map +1 -1
  612. package/esm/data/initialize.js +2 -1
  613. package/esm/index.d.ts +6 -6
  614. package/esm/index.js +6 -6
  615. package/esm/index.js.map +1 -1
  616. package/esm/layout/base-layout.d.ts +24 -0
  617. package/esm/layout/base-layout.js +115 -0
  618. package/esm/layout/base-layout.js.map +1 -0
  619. package/esm/layout/grid-layout/grid-layout.d.ts +5 -35
  620. package/esm/layout/grid-layout/grid-layout.js +2 -1
  621. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  622. package/esm/layout/index.d.ts +6 -24
  623. package/esm/layout/index.js +8 -115
  624. package/esm/layout/index.js.map +1 -1
  625. package/esm/layout/interface.d.ts +31 -3
  626. package/esm/layout/interface.js.map +1 -1
  627. package/esm/layout/layout3d/index.d.ts +1 -1
  628. package/esm/layout/layout3d/index.js +1 -1
  629. package/esm/layout/layout3d/index.js.map +1 -1
  630. package/esm/mark/arc-3d.d.ts +9 -0
  631. package/esm/mark/arc-3d.js +12 -0
  632. package/esm/mark/arc-3d.js.map +1 -0
  633. package/esm/mark/arc.d.ts +5 -9
  634. package/esm/mark/arc.js +11 -21
  635. package/esm/mark/arc.js.map +1 -1
  636. package/esm/mark/area.js +1 -1
  637. package/esm/mark/base/base-line.js +2 -4
  638. package/esm/mark/base/base-line.js.map +1 -1
  639. package/esm/mark/base/base-mark.d.ts +7 -0
  640. package/esm/mark/base/base-mark.js +9 -7
  641. package/esm/mark/base/base-mark.js.map +1 -1
  642. package/esm/mark/box-plot.js +1 -1
  643. package/esm/mark/cell.js +1 -1
  644. package/esm/mark/index.d.ts +21 -0
  645. package/esm/mark/index.js +40 -0
  646. package/esm/mark/index.js.map +1 -0
  647. package/esm/mark/{linkPath.js → link-path.js} +1 -1
  648. package/esm/mark/link-path.js.map +1 -0
  649. package/esm/mark/polygon/base-polygon.d.ts +6 -0
  650. package/esm/mark/polygon/base-polygon.js +10 -0
  651. package/esm/mark/polygon/base-polygon.js.map +1 -0
  652. package/esm/mark/polygon/polygon.d.ts +9 -0
  653. package/esm/mark/polygon/polygon.js +12 -0
  654. package/esm/mark/polygon/polygon.js.map +1 -0
  655. package/esm/mark/polygon/pyramid-3d.d.ts +9 -0
  656. package/esm/mark/polygon/pyramid-3d.js +12 -0
  657. package/esm/mark/polygon/pyramid-3d.js.map +1 -0
  658. package/esm/mark/rect-3d.d.ts +10 -0
  659. package/esm/mark/rect-3d.js +19 -0
  660. package/esm/mark/rect-3d.js.map +1 -0
  661. package/esm/mark/rect.d.ts +1 -7
  662. package/esm/mark/rect.js +0 -15
  663. package/esm/mark/rect.js.map +1 -1
  664. package/esm/mark/utils/common.d.ts +0 -12
  665. package/esm/mark/utils/common.js +0 -13
  666. package/esm/mark/utils/common.js.map +1 -1
  667. package/esm/model/base-model.js +1 -1
  668. package/esm/model/interface.js +1 -1
  669. package/esm/model/layout-item.js +1 -1
  670. package/esm/model/model-state-manager.js +1 -1
  671. package/esm/model/tooltip-helper.d.ts +3 -4
  672. package/esm/model/tooltip-helper.js +5 -10
  673. package/esm/model/tooltip-helper.js.map +1 -1
  674. package/esm/region/interface.js +1 -1
  675. package/esm/region/region.js +6 -10
  676. package/esm/region/region.js.map +1 -1
  677. package/esm/series/area/area.js +12 -0
  678. package/esm/series/area/area.js.map +1 -1
  679. package/esm/series/bar/bar-3d.d.ts +11 -0
  680. package/esm/series/bar/bar-3d.js +30 -0
  681. package/esm/series/bar/bar-3d.js.map +1 -0
  682. package/esm/series/bar/bar.d.ts +0 -7
  683. package/esm/series/bar/bar.js +8 -14
  684. package/esm/series/bar/bar.js.map +1 -1
  685. package/esm/series/base/base-series.js +1 -1
  686. package/esm/series/base/base-series.js.map +1 -1
  687. package/esm/series/base/tooltip-helper.d.ts +9 -8
  688. package/esm/series/base/tooltip-helper.js +23 -12
  689. package/esm/series/base/tooltip-helper.js.map +1 -1
  690. package/esm/series/box-plot/box-plot.js +8 -0
  691. package/esm/series/box-plot/box-plot.js.map +1 -1
  692. package/esm/series/circle-packing/circle-packing.js +8 -0
  693. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  694. package/esm/series/dot/dot.js +12 -0
  695. package/esm/series/dot/dot.js.map +1 -1
  696. package/esm/series/dot/tooltip-helper.d.ts +1 -2
  697. package/esm/series/dot/tooltip-helper.js +7 -4
  698. package/esm/series/dot/tooltip-helper.js.map +1 -1
  699. package/esm/series/funnel/funnel-3d.d.ts +18 -0
  700. package/esm/series/funnel/funnel-3d.js +113 -0
  701. package/esm/series/funnel/funnel-3d.js.map +1 -0
  702. package/esm/series/funnel/funnel.d.ts +3 -15
  703. package/esm/series/funnel/funnel.js +18 -101
  704. package/esm/series/funnel/funnel.js.map +1 -1
  705. package/esm/series/funnel/tooltip-helper.d.ts +5 -3
  706. package/esm/series/funnel/tooltip-helper.js +11 -7
  707. package/esm/series/funnel/tooltip-helper.js.map +1 -1
  708. package/esm/series/gauge/gauge-pointer.js +8 -0
  709. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  710. package/esm/series/gauge/gauge.js +6 -0
  711. package/esm/series/gauge/gauge.js.map +1 -1
  712. package/esm/series/heatmap/heatmap.js +8 -0
  713. package/esm/series/heatmap/heatmap.js.map +1 -1
  714. package/esm/series/index.d.ts +66 -0
  715. package/esm/series/index.js +70 -0
  716. package/esm/series/index.js.map +1 -0
  717. package/esm/series/interface/series.d.ts +2 -1
  718. package/esm/series/interface/series.js.map +1 -1
  719. package/esm/series/interface/tooltip-helper.d.ts +6 -6
  720. package/esm/series/interface/tooltip-helper.js.map +1 -1
  721. package/esm/series/line/line.js +10 -0
  722. package/esm/series/line/line.js.map +1 -1
  723. package/esm/series/link/link.js +8 -0
  724. package/esm/series/link/link.js.map +1 -1
  725. package/esm/series/map/map.js +7 -1
  726. package/esm/series/map/map.js.map +1 -1
  727. package/esm/series/pie/pie-3d.d.ts +16 -0
  728. package/esm/series/pie/pie-3d.js +107 -0
  729. package/esm/series/pie/pie-3d.js.map +1 -0
  730. package/esm/series/pie/pie.d.ts +1 -11
  731. package/esm/series/pie/pie.js +10 -83
  732. package/esm/series/pie/pie.js.map +1 -1
  733. package/esm/series/polar/animation.d.ts +1 -1
  734. package/esm/series/polar/animation.js.map +1 -1
  735. package/esm/series/progress/circular/circular.js +8 -0
  736. package/esm/series/progress/circular/circular.js.map +1 -1
  737. package/esm/series/progress/linear/linear.js +6 -0
  738. package/esm/series/progress/linear/linear.js.map +1 -1
  739. package/esm/series/radar/animation.d.ts +1 -1
  740. package/esm/series/radar/animation.js.map +1 -1
  741. package/esm/series/radar/radar.js +12 -0
  742. package/esm/series/radar/radar.js.map +1 -1
  743. package/esm/series/range-column/rangeColumn-3d.d.ts +10 -0
  744. package/esm/series/range-column/rangeColumn-3d.js +23 -0
  745. package/esm/series/range-column/rangeColumn-3d.js.map +1 -0
  746. package/esm/series/range-column/rangeColumn.d.ts +0 -6
  747. package/esm/series/range-column/rangeColumn.js +0 -9
  748. package/esm/series/range-column/rangeColumn.js.map +1 -1
  749. package/esm/series/rose/rose.js +8 -0
  750. package/esm/series/rose/rose.js.map +1 -1
  751. package/esm/series/sankey/sankey.js +9 -1
  752. package/esm/series/sankey/sankey.js.map +1 -1
  753. package/esm/series/scatter/scatter.js +8 -0
  754. package/esm/series/scatter/scatter.js.map +1 -1
  755. package/esm/series/sunburst/sunburst.js +8 -0
  756. package/esm/series/sunburst/sunburst.js.map +1 -1
  757. package/esm/series/treemap/treemap.js +8 -0
  758. package/esm/series/treemap/treemap.js.map +1 -1
  759. package/esm/series/waterfall/waterfall.js +6 -0
  760. package/esm/series/waterfall/waterfall.js.map +1 -1
  761. package/esm/series/word-cloud/base.d.ts +60 -0
  762. package/esm/series/word-cloud/base.js +278 -0
  763. package/esm/series/word-cloud/base.js.map +1 -0
  764. package/esm/series/word-cloud/word-cloud-3d.d.ts +11 -0
  765. package/esm/series/word-cloud/word-cloud-3d.js +205 -0
  766. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -0
  767. package/esm/series/word-cloud/word-cloud.d.ts +2 -69
  768. package/esm/series/word-cloud/word-cloud.js +2 -461
  769. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  770. package/esm/theme/buildin-theme/index.d.ts +0 -1
  771. package/esm/theme/buildin-theme/index.js +1 -5
  772. package/esm/theme/buildin-theme/index.js.map +1 -1
  773. package/esm/theme/buildin-theme/light/component/crosshair.js +4 -4
  774. package/esm/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  775. package/esm/theme/buildin-theme/light/component/tooltip.js +1 -0
  776. package/esm/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  777. package/esm/typings/spec/common.d.ts +1 -1
  778. package/esm/typings/spec/common.js.map +1 -1
  779. package/esm/typings/tooltip/common.d.ts +7 -1
  780. package/esm/typings/tooltip/common.js.map +1 -1
  781. package/esm/typings/tooltip/handler.d.ts +1 -1
  782. package/esm/typings/tooltip/handler.js.map +1 -1
  783. package/esm/typings/tooltip/line.d.ts +6 -4
  784. package/esm/typings/tooltip/line.js.map +1 -1
  785. package/esm/typings/tooltip/shape.d.ts +3 -3
  786. package/esm/typings/tooltip/shape.js.map +1 -1
  787. package/esm/typings/tooltip/tooltip.d.ts +11 -8
  788. package/esm/typings/tooltip/tooltip.js.map +1 -1
  789. package/esm/typings/visual.d.ts +4 -11
  790. package/esm/typings/visual.js.map +1 -1
  791. package/esm/util/debug.d.ts +3 -3
  792. package/esm/util/debug.js +11 -14
  793. package/esm/util/debug.js.map +1 -1
  794. package/esm/util/index.d.ts +1 -0
  795. package/esm/util/index.js +2 -0
  796. package/esm/util/index.js.map +1 -1
  797. package/esm/util/style.js +3 -8
  798. package/esm/util/style.js.map +1 -1
  799. package/esm/vchart-all.d.ts +1 -1
  800. package/esm/vchart-all.js +4 -12
  801. package/esm/vchart-all.js.map +1 -1
  802. package/esm/vchart-simple.d.ts +1 -1
  803. package/esm/vchart-simple.js +4 -10
  804. package/esm/vchart-simple.js.map +1 -1
  805. package/layout.d.ts +1 -1
  806. package/layout.js +1 -1
  807. package/mark.d.ts +1 -1
  808. package/mark.js +1 -1
  809. package/package.json +35 -39
  810. package/series.d.ts +1 -1
  811. package/series.js +1 -1
  812. package/cjs/chart/range-column/rangeColumn.js.map +0 -1
  813. package/cjs/component/tooltip/handler/dom/utils/style.d.ts +0 -3
  814. package/cjs/component/tooltip/handler/dom/utils/style.js.map +0 -1
  815. package/cjs/component/tooltip/handler/interface/cache.d.ts +0 -28
  816. package/cjs/component/tooltip/handler/interface/cache.js +0 -6
  817. package/cjs/component/tooltip/handler/interface/cache.js.map +0 -1
  818. package/cjs/export/chart.d.ts +0 -57
  819. package/cjs/export/chart.js +0 -298
  820. package/cjs/export/chart.js.map +0 -1
  821. package/cjs/export/component.d.ts +0 -39
  822. package/cjs/export/component.js +0 -207
  823. package/cjs/export/component.js.map +0 -1
  824. package/cjs/export/core.js.map +0 -1
  825. package/cjs/export/layout.d.ts +0 -7
  826. package/cjs/export/layout.js +0 -33
  827. package/cjs/export/layout.js.map +0 -1
  828. package/cjs/export/mark.d.ts +0 -18
  829. package/cjs/export/mark.js.map +0 -1
  830. package/cjs/export/series.d.ts +0 -61
  831. package/cjs/export/series.js.map +0 -1
  832. package/cjs/mark/linkPath.js.map +0 -1
  833. package/cjs/mark/polygon.d.ts +0 -18
  834. package/cjs/mark/polygon.js +0 -32
  835. package/cjs/mark/polygon.js.map +0 -1
  836. package/cjs/theme/buildin-theme/dark.d.ts +0 -2
  837. package/cjs/theme/buildin-theme/dark.js +0 -16
  838. package/cjs/theme/buildin-theme/dark.js.map +0 -1
  839. package/esm/chart/range-column/rangeColumn.js.map +0 -1
  840. package/esm/component/tooltip/handler/dom/utils/style.d.ts +0 -3
  841. package/esm/component/tooltip/handler/dom/utils/style.js +0 -59
  842. package/esm/component/tooltip/handler/dom/utils/style.js.map +0 -1
  843. package/esm/component/tooltip/handler/interface/cache.d.ts +0 -28
  844. package/esm/component/tooltip/handler/interface/cache.js +0 -2
  845. package/esm/component/tooltip/handler/interface/cache.js.map +0 -1
  846. package/esm/export/chart.d.ts +0 -57
  847. package/esm/export/chart.js +0 -58
  848. package/esm/export/chart.js.map +0 -1
  849. package/esm/export/component.d.ts +0 -39
  850. package/esm/export/component.js +0 -40
  851. package/esm/export/component.js.map +0 -1
  852. package/esm/export/core.js.map +0 -1
  853. package/esm/export/layout.d.ts +0 -7
  854. package/esm/export/layout.js +0 -8
  855. package/esm/export/layout.js.map +0 -1
  856. package/esm/export/mark.d.ts +0 -18
  857. package/esm/export/mark.js +0 -34
  858. package/esm/export/mark.js.map +0 -1
  859. package/esm/export/series.d.ts +0 -61
  860. package/esm/export/series.js +0 -60
  861. package/esm/export/series.js.map +0 -1
  862. package/esm/mark/linkPath.js.map +0 -1
  863. package/esm/mark/polygon.d.ts +0 -18
  864. package/esm/mark/polygon.js +0 -28
  865. package/esm/mark/polygon.js.map +0 -1
  866. package/esm/theme/buildin-theme/dark.d.ts +0 -2
  867. package/esm/theme/buildin-theme/dark.js +0 -12
  868. package/esm/theme/buildin-theme/dark.js.map +0 -1
  869. /package/cjs/mark/{linkPath.d.ts → link-path.d.ts} +0 -0
  870. /package/esm/mark/{linkPath.d.ts → link-path.d.ts} +0 -0
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.BaseWordCloudChart = void 0;
6
+
7
+ const interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_chart_1 = require("../base-chart");
8
+
9
+ class BaseWordCloudChart extends base_chart_1.BaseChart {
10
+ constructor() {
11
+ super(...arguments), this.type = interface_2.ChartTypeEnum.wordCloud, this.seriesType = interface_1.SeriesTypeEnum.wordCloud;
12
+ }
13
+ transformSpec(spec) {
14
+ super.transformSpec(spec);
15
+ const defaultSeriesSpec = this._getDefaultSeriesSpec(spec);
16
+ spec.series && 0 !== spec.series.length ? spec.series.forEach((s => {
17
+ this.isValidSeries(s.type) && Object.keys(defaultSeriesSpec).forEach((k => {
18
+ k in s || (s[k] = defaultSeriesSpec[k]);
19
+ }));
20
+ })) : spec.series = [ defaultSeriesSpec ];
21
+ }
22
+ }
23
+
24
+ exports.BaseWordCloudChart = BaseWordCloudChart;
25
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/chart/word-cloud/base.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AACxD,4CAA6C;AAG7C,8CAA0C;AAE1C,MAAa,kBAAmB,SAAQ,sBAAS;IAAjD;;QACW,SAAI,GAAW,yBAAa,CAAC,SAAS,CAAC;QACvC,eAAU,GAAW,0BAAc,CAAC,SAAS,CAAC;IAsBzD,CAAC;IApBC,aAAa,CAAC,IAAS;QACrB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAG1B,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5C,IAAI,CAAC,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACnC;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAU,EAAE,EAAE;gBACjC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBAC/B,OAAO;iBACR;gBACD,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACzC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE;wBACb,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;qBAC7B;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;CACF;AAxBD,gDAwBC","file":"base.js","sourcesContent":["import { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../series/interface';\nimport { BaseChart } from '../base-chart';\n\nexport class BaseWordCloudChart extends BaseChart {\n readonly type: string = ChartTypeEnum.wordCloud;\n readonly seriesType: string = SeriesTypeEnum.wordCloud;\n\n transformSpec(spec: any): void {\n super.transformSpec(spec);\n\n /* 处理 series 配置 */\n const defaultSeriesSpec = this._getDefaultSeriesSpec(spec);\n if (!spec.series || spec.series.length === 0) {\n spec.series = [defaultSeriesSpec];\n } else {\n spec.series.forEach((s: ISeries) => {\n if (!this.isValidSeries(s.type)) {\n return;\n }\n Object.keys(defaultSeriesSpec).forEach(k => {\n if (!(k in s)) {\n s[k] = defaultSeriesSpec[k];\n }\n });\n });\n }\n }\n}\n"]}
@@ -1,2 +1,3 @@
1
1
  export * from './word-cloud';
2
+ export * from './word-cloud-3d';
2
3
  export * from './interface';
@@ -17,5 +17,6 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
17
17
 
18
18
  Object.defineProperty(exports, "__esModule", {
19
19
  value: !0
20
- }), __exportStar(require("./word-cloud"), exports), __exportStar(require("./interface"), exports);
20
+ }), __exportStar(require("./word-cloud"), exports), __exportStar(require("./word-cloud-3d"), exports),
21
+ __exportStar(require("./interface"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/word-cloud/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,8CAA4B","file":"index.js","sourcesContent":["export * from './word-cloud';\nexport * from './interface';\n"]}
1
+ {"version":3,"sources":["../src/chart/word-cloud/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,8CAA4B","file":"index.js","sourcesContent":["export * from './word-cloud';\nexport * from './word-cloud-3d';\nexport * from './interface';\n"]}
@@ -0,0 +1,9 @@
1
+ import type { IWordCloud3dChartSpec } from './interface';
2
+ import { BaseWordCloudChart } from './base';
3
+ export declare class WordCloud3dChart extends BaseWordCloudChart {
4
+ static readonly type: string;
5
+ static readonly view: string;
6
+ readonly type: string;
7
+ readonly seriesType: string;
8
+ protected _getDefaultSeriesSpec(spec: IWordCloud3dChartSpec): any;
9
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.WordCloud3dChart = void 0;
6
+
7
+ const interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_1 = require("./base"), vchart_1 = require("../../core/vchart"), series_1 = require("../../series");
8
+
9
+ vchart_1.VChart.useSeries([ series_1.WordCloud3dSeries ]);
10
+
11
+ class WordCloud3dChart extends base_1.BaseWordCloudChart {
12
+ constructor() {
13
+ super(...arguments), this.type = interface_2.ChartTypeEnum.wordCloud3d, this.seriesType = interface_1.SeriesTypeEnum.wordCloud3d;
14
+ }
15
+ _getDefaultSeriesSpec(spec) {
16
+ const series = Object.assign(Object.assign({}, super._getDefaultSeriesSpec(spec)), {
17
+ nameField: spec.nameField,
18
+ valueField: spec.valueField,
19
+ seriesField: spec.seriesField,
20
+ fontFamilyField: spec.fontFamilyField,
21
+ fontWeightField: spec.fontWeightField,
22
+ fontStyleField: spec.fontStyleField,
23
+ colorHexField: spec.colorHexField,
24
+ colorMode: spec.colorMode,
25
+ colorList: spec.colorList,
26
+ rotateAngles: spec.rotateAngles,
27
+ fontWeightRange: spec.fontWeightRange,
28
+ fontSizeRange: spec.fontSizeRange,
29
+ depth_3d: spec.depth_3d,
30
+ maskShape: spec.maskShape,
31
+ keepAspect: spec.keepAspect,
32
+ random: spec.random,
33
+ wordCloudConfig: spec.wordCloudConfig,
34
+ wordCloudShapeConfig: spec.wordCloudShapeConfig,
35
+ word: spec.word,
36
+ fillingWord: spec.fillingWord,
37
+ chartPadding: spec.padding
38
+ }), seriesType = this.seriesType;
39
+ return seriesType && (series.type = seriesType, series[seriesType] = spec[seriesType]),
40
+ series;
41
+ }
42
+ }
43
+
44
+ exports.WordCloud3dChart = WordCloud3dChart, WordCloud3dChart.type = interface_2.ChartTypeEnum.wordCloud3d,
45
+ WordCloud3dChart.view = "singleDefault";
46
+ //# sourceMappingURL=word-cloud-3d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/chart/word-cloud/word-cloud-3d.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AACxD,4CAA6C;AAE7C,iCAA4C;AAC5C,8CAA2C;AAC3C,yCAAiD;AACjD,eAAM,CAAC,SAAS,CAAC,CAAC,0BAAiB,CAAC,CAAC,CAAC;AAEtC,MAAa,gBAAiB,SAAQ,yBAAkB;IAAxD;;QAGW,SAAI,GAAW,yBAAa,CAAC,WAAW,CAAC;QACzC,eAAU,GAAW,0BAAc,CAAC,WAAW,CAAC;IAmC3D,CAAC;IAjCW,qBAAqB,CAAC,IAA2B;QACzD,MAAM,MAAM,mCACP,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,YAAY,EAAE,IAAI,CAAC,OAAO,GAC3B,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;YACzB,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;SACvC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;;AAtCH,4CAuCC;AAtCiB,qBAAI,GAAW,yBAAa,CAAC,WAAW,CAAC;AACzC,qBAAI,GAAW,eAAe,CAAC","file":"word-cloud-3d.js","sourcesContent":["import { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\nimport type { IWordCloud3dChartSpec } from './interface';\nimport { BaseWordCloudChart } from './base';\nimport { VChart } from '../../core/vchart';\nimport { WordCloud3dSeries } from '../../series';\nVChart.useSeries([WordCloud3dSeries]);\n\nexport class WordCloud3dChart extends BaseWordCloudChart {\n static readonly type: string = ChartTypeEnum.wordCloud3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.wordCloud3d;\n readonly seriesType: string = SeriesTypeEnum.wordCloud3d;\n\n protected _getDefaultSeriesSpec(spec: IWordCloud3dChartSpec): any {\n const series: any = {\n ...super._getDefaultSeriesSpec(spec),\n nameField: spec.nameField,\n valueField: spec.valueField,\n seriesField: spec.seriesField,\n fontFamilyField: spec.fontFamilyField,\n fontWeightField: spec.fontWeightField,\n fontStyleField: spec.fontStyleField,\n colorHexField: spec.colorHexField,\n colorMode: spec.colorMode,\n colorList: spec.colorList,\n rotateAngles: spec.rotateAngles,\n fontWeightRange: spec.fontWeightRange,\n fontSizeRange: spec.fontSizeRange,\n depth_3d: spec.depth_3d,\n maskShape: spec.maskShape,\n keepAspect: spec.keepAspect,\n random: spec.random,\n wordCloudConfig: spec.wordCloudConfig,\n wordCloudShapeConfig: spec.wordCloudShapeConfig,\n word: spec.word,\n fillingWord: spec.fillingWord,\n chartPadding: spec.padding\n };\n const seriesType = this.seriesType;\n if (seriesType) {\n series.type = seriesType;\n series[seriesType] = spec[seriesType];\n }\n\n return series;\n }\n}\n"]}
@@ -1,10 +1,5 @@
1
- import { BaseChart } from '../base-chart';
2
- import type { IWordCloud3dChartSpec, IWordCloudChartSpec } from './interface';
3
- declare class BaseWordCloudChart extends BaseChart {
4
- readonly type: string;
5
- readonly seriesType: string;
6
- transformSpec(spec: any): void;
7
- }
1
+ import type { IWordCloudChartSpec } from './interface';
2
+ import { BaseWordCloudChart } from './base';
8
3
  export declare class WordCloudChart extends BaseWordCloudChart {
9
4
  static readonly type: string;
10
5
  static readonly view: string;
@@ -12,11 +7,3 @@ export declare class WordCloudChart extends BaseWordCloudChart {
12
7
  readonly seriesType: string;
13
8
  protected _getDefaultSeriesSpec(spec: IWordCloudChartSpec): any;
14
9
  }
15
- export declare class WordCloud3dChart extends BaseWordCloudChart {
16
- static readonly type: string;
17
- static readonly view: string;
18
- readonly type: string;
19
- readonly seriesType: string;
20
- protected _getDefaultSeriesSpec(spec: IWordCloud3dChartSpec): any;
21
- }
22
- export {};
@@ -2,26 +2,13 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
- }), exports.WordCloud3dChart = exports.WordCloudChart = void 0;
5
+ }), exports.WordCloudChart = void 0;
6
6
 
7
- const interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_chart_1 = require("../base-chart");
7
+ const interface_1 = require("../../series/interface"), interface_2 = require("../interface"), base_1 = require("./base"), vchart_1 = require("../../core/vchart"), series_1 = require("../../series");
8
8
 
9
- class BaseWordCloudChart extends base_chart_1.BaseChart {
10
- constructor() {
11
- super(...arguments), this.type = interface_2.ChartTypeEnum.wordCloud, this.seriesType = interface_1.SeriesTypeEnum.wordCloud;
12
- }
13
- transformSpec(spec) {
14
- super.transformSpec(spec);
15
- const defaultSeriesSpec = this._getDefaultSeriesSpec(spec);
16
- spec.series && 0 !== spec.series.length ? spec.series.forEach((s => {
17
- this.isValidSeries(s.type) && Object.keys(defaultSeriesSpec).forEach((k => {
18
- k in s || (s[k] = defaultSeriesSpec[k]);
19
- }));
20
- })) : spec.series = [ defaultSeriesSpec ];
21
- }
22
- }
9
+ vchart_1.VChart.useSeries([ series_1.WordCloudSeries ]);
23
10
 
24
- class WordCloudChart extends BaseWordCloudChart {
11
+ class WordCloudChart extends base_1.BaseWordCloudChart {
25
12
  constructor() {
26
13
  super(...arguments), this.type = interface_2.ChartTypeEnum.wordCloud, this.seriesType = interface_1.SeriesTypeEnum.wordCloud;
27
14
  }
@@ -55,40 +42,4 @@ class WordCloudChart extends BaseWordCloudChart {
55
42
 
56
43
  exports.WordCloudChart = WordCloudChart, WordCloudChart.type = interface_2.ChartTypeEnum.wordCloud,
57
44
  WordCloudChart.view = "singleDefault";
58
-
59
- class WordCloud3dChart extends BaseWordCloudChart {
60
- constructor() {
61
- super(...arguments), this.type = interface_2.ChartTypeEnum.wordCloud3d, this.seriesType = interface_1.SeriesTypeEnum.wordCloud3d;
62
- }
63
- _getDefaultSeriesSpec(spec) {
64
- const series = Object.assign(Object.assign({}, super._getDefaultSeriesSpec(spec)), {
65
- nameField: spec.nameField,
66
- valueField: spec.valueField,
67
- seriesField: spec.seriesField,
68
- fontFamilyField: spec.fontFamilyField,
69
- fontWeightField: spec.fontWeightField,
70
- fontStyleField: spec.fontStyleField,
71
- colorHexField: spec.colorHexField,
72
- colorMode: spec.colorMode,
73
- colorList: spec.colorList,
74
- rotateAngles: spec.rotateAngles,
75
- fontWeightRange: spec.fontWeightRange,
76
- fontSizeRange: spec.fontSizeRange,
77
- depth_3d: spec.depth_3d,
78
- maskShape: spec.maskShape,
79
- keepAspect: spec.keepAspect,
80
- random: spec.random,
81
- wordCloudConfig: spec.wordCloudConfig,
82
- wordCloudShapeConfig: spec.wordCloudShapeConfig,
83
- word: spec.word,
84
- fillingWord: spec.fillingWord,
85
- chartPadding: spec.padding
86
- }), seriesType = this.seriesType;
87
- return seriesType && (series.type = seriesType, series[seriesType] = spec[seriesType]),
88
- series;
89
- }
90
- }
91
-
92
- exports.WordCloud3dChart = WordCloud3dChart, WordCloud3dChart.type = interface_2.ChartTypeEnum.wordCloud3d,
93
- WordCloud3dChart.view = "singleDefault";
94
45
  //# sourceMappingURL=word-cloud.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/word-cloud/word-cloud.ts"],"names":[],"mappings":"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","file":"word-cloud.js","sourcesContent":["import { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../series/interface';\nimport { BaseChart } from '../base-chart';\nimport type { IWordCloud3dChartSpec, IWordCloudChartSpec } from './interface';\n\nclass BaseWordCloudChart extends BaseChart {\n readonly type: string = ChartTypeEnum.wordCloud;\n readonly seriesType: string = SeriesTypeEnum.wordCloud;\n\n transformSpec(spec: any): void {\n super.transformSpec(spec);\n\n /* 处理 series 配置 */\n const defaultSeriesSpec = this._getDefaultSeriesSpec(spec);\n if (!spec.series || spec.series.length === 0) {\n spec.series = [defaultSeriesSpec];\n } else {\n spec.series.forEach((s: ISeries) => {\n if (!this.isValidSeries(s.type)) {\n return;\n }\n Object.keys(defaultSeriesSpec).forEach(k => {\n if (!(k in s)) {\n s[k] = defaultSeriesSpec[k];\n }\n });\n });\n }\n }\n}\n\nexport class WordCloudChart extends BaseWordCloudChart {\n static readonly type: string = ChartTypeEnum.wordCloud;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.wordCloud;\n readonly seriesType: string = SeriesTypeEnum.wordCloud;\n\n protected _getDefaultSeriesSpec(spec: IWordCloudChartSpec): any {\n const series: any = {\n ...super._getDefaultSeriesSpec(spec),\n nameField: spec.nameField,\n valueField: spec.valueField,\n seriesField: spec.seriesField,\n fontFamilyField: spec.fontFamilyField,\n fontWeightField: spec.fontWeightField,\n fontStyleField: spec.fontStyleField,\n colorHexField: spec.colorHexField,\n colorMode: spec.colorMode,\n colorList: spec.colorList,\n rotateAngles: spec.rotateAngles,\n fontWeightRange: spec.fontWeightRange,\n fontSizeRange: spec.fontSizeRange,\n maskShape: spec.maskShape,\n keepAspect: spec.keepAspect,\n random: spec.random,\n wordCloudConfig: spec.wordCloudConfig,\n wordCloudShapeConfig: spec.wordCloudShapeConfig,\n word: spec.word,\n fillingWord: spec.fillingWord,\n chartPadding: spec.padding\n };\n const seriesType = this.seriesType;\n if (seriesType) {\n series.type = seriesType;\n series[seriesType] = spec[seriesType];\n }\n\n return series;\n }\n}\n\nexport class WordCloud3dChart extends BaseWordCloudChart {\n static readonly type: string = ChartTypeEnum.wordCloud3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.wordCloud3d;\n readonly seriesType: string = SeriesTypeEnum.wordCloud3d;\n\n protected _getDefaultSeriesSpec(spec: IWordCloud3dChartSpec): any {\n const series: any = {\n ...super._getDefaultSeriesSpec(spec),\n nameField: spec.nameField,\n valueField: spec.valueField,\n seriesField: spec.seriesField,\n fontFamilyField: spec.fontFamilyField,\n fontWeightField: spec.fontWeightField,\n fontStyleField: spec.fontStyleField,\n colorHexField: spec.colorHexField,\n colorMode: spec.colorMode,\n colorList: spec.colorList,\n rotateAngles: spec.rotateAngles,\n fontWeightRange: spec.fontWeightRange,\n fontSizeRange: spec.fontSizeRange,\n depth_3d: spec.depth_3d,\n maskShape: spec.maskShape,\n keepAspect: spec.keepAspect,\n random: spec.random,\n wordCloudConfig: spec.wordCloudConfig,\n wordCloudShapeConfig: spec.wordCloudShapeConfig,\n word: spec.word,\n fillingWord: spec.fillingWord,\n chartPadding: spec.padding\n };\n const seriesType = this.seriesType;\n if (seriesType) {\n series.type = seriesType;\n series[seriesType] = spec[seriesType];\n }\n\n return series;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/chart/word-cloud/word-cloud.ts"],"names":[],"mappings":";;;AAAA,sDAAwD;AACxD,4CAA6C;AAG7C,iCAA4C;AAC5C,8CAA2C;AAC3C,yCAA+C;AAC/C,eAAM,CAAC,SAAS,CAAC,CAAC,wBAAe,CAAC,CAAC,CAAC;AAEpC,MAAa,cAAe,SAAQ,yBAAkB;IAAtD;;QAGW,SAAI,GAAW,yBAAa,CAAC,SAAS,CAAC;QACvC,eAAU,GAAW,0BAAc,CAAC,SAAS,CAAC;IAkCzD,CAAC;IAhCW,qBAAqB,CAAC,IAAyB;QACvD,MAAM,MAAM,mCACP,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAC/C,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,YAAY,EAAE,IAAI,CAAC,OAAO,GAC3B,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;YACzB,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;SACvC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;;AArCH,wCAsCC;AArCiB,mBAAI,GAAW,yBAAa,CAAC,SAAS,CAAC;AACvC,mBAAI,GAAW,eAAe,CAAC","file":"word-cloud.js","sourcesContent":["import { SeriesTypeEnum } from '../../series/interface';\nimport { ChartTypeEnum } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IWordCloudChartSpec } from './interface';\nimport { BaseWordCloudChart } from './base';\nimport { VChart } from '../../core/vchart';\nimport { WordCloudSeries } from '../../series';\nVChart.useSeries([WordCloudSeries]);\n\nexport class WordCloudChart extends BaseWordCloudChart {\n static readonly type: string = ChartTypeEnum.wordCloud;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.wordCloud;\n readonly seriesType: string = SeriesTypeEnum.wordCloud;\n\n protected _getDefaultSeriesSpec(spec: IWordCloudChartSpec): any {\n const series: any = {\n ...super._getDefaultSeriesSpec(spec),\n nameField: spec.nameField,\n valueField: spec.valueField,\n seriesField: spec.seriesField,\n fontFamilyField: spec.fontFamilyField,\n fontWeightField: spec.fontWeightField,\n fontStyleField: spec.fontStyleField,\n colorHexField: spec.colorHexField,\n colorMode: spec.colorMode,\n colorList: spec.colorList,\n rotateAngles: spec.rotateAngles,\n fontWeightRange: spec.fontWeightRange,\n fontSizeRange: spec.fontSizeRange,\n maskShape: spec.maskShape,\n keepAspect: spec.keepAspect,\n random: spec.random,\n wordCloudConfig: spec.wordCloudConfig,\n wordCloudShapeConfig: spec.wordCloudShapeConfig,\n word: spec.word,\n fillingWord: spec.fillingWord,\n chartPadding: spec.padding\n };\n const seriesType = this.seriesType;\n if (seriesType) {\n series.type = seriesType;\n series[seriesType] = spec[seriesType];\n }\n\n return series;\n }\n}\n"]}
@@ -293,7 +293,7 @@ class CartesianAxis extends base_axis_1.AxisComponent {
293
293
  }
294
294
  _getTitleLimit(isX) {
295
295
  var _a, _b;
296
- if (this._spec.title.visible && !(null === (_a = this._spec.title.style) || void 0 === _a ? void 0 : _a.limit)) {
296
+ if (this._spec.title.visible && (0, util_1.isNil)(null === (_a = this._spec.title.style) || void 0 === _a ? void 0 : _a.maxLineWidth)) {
297
297
  const angle = (null === (_b = this._spec.title.style) || void 0 === _b ? void 0 : _b.angle) || 0;
298
298
  if (isX) {
299
299
  const width = this.getLayoutRect().width, cosValue = Math.abs(Math.cos(angle));
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/axis/cartesian/axis.ts"],"names":[],"mappings":"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","file":"axis.js","sourcesContent":["/**\n * @todo vgrammar axis 支持 mode: '3d' 配置传入\n */\nimport type { IBounds, IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IEffect, IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { ICartesianSeries } from '../../../series/interface';\nimport type { IRegion } from '../../../region/interface';\nimport type { IAxisLocationCfg, ICartesianAxisCommonSpec, IAxisHelper, ICartesianAxisCommonTheme } from './interface';\nimport { isArray, isValid, isValidNumber, merge, eachSeries, getFieldAlias } from '../../../util';\nimport type { IOrientType } from '../../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../../typings/space';\nimport type { IBaseScale, ILinearScale } from '@visactor/vscale';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport { Factory } from '../../../core/factory';\nimport { autoAxisType, isXAxis, getOrient, isZAxis, isYAxis } from './util';\nimport { ChartEvent, DEFAULT_LAYOUT_RECT_LEVEL, LayoutZIndex } from '../../../constant';\nimport { LayoutLevel } from '../../../constant/index';\nimport pluginMap from '../../../plugin/components';\nimport type { IPoint, StringOrNumber } from '../../../typings';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport { HOOK_EVENT } from '@visactor/vgrammar';\nimport type { LineAxisAttributes } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValidCartesianAxis } from '../utils';\nimport type { IAxis, ITick } from '../interface';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../../data/register';\nimport { scaleParser } from '../../../data/parser/scale';\nimport type { ICartesianTickDataOpt } from '../../../data/transforms/tick-data';\n// eslint-disable-next-line no-duplicate-imports\nimport { ticks } from '../../../data/transforms/tick-data';\nimport type { DataSet } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport { CompilableData } from '../../../compile/data';\nimport { AxisComponent } from '../base-axis';\n\nconst CartesianAxisPlugin = [pluginMap.AxisLabelOverlapPlugin];\n\nexport abstract class CartesianAxis extends AxisComponent implements IAxis {\n static type = ComponentTypeEnum.cartesianAxis;\n type = ComponentTypeEnum.cartesianAxis;\n name: string = ComponentTypeEnum.cartesianAxis;\n\n // 标记这个布局Item的方向(left->right, right->left, top->bottom, bottom->top)\n declare directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';\n\n layoutType: LayoutItem['layoutType'] = 'region-relative';\n layoutZIndex: number = LayoutZIndex.Axis;\n layoutLevel: number = LayoutLevel.Axis;\n\n protected _dataSet: DataSet;\n\n layout3dBox?: { width: number; height: number; length: number };\n\n protected _orient: IOrientType = 'left';\n get orient() {\n return this._orient;\n }\n\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: IOrientType) {\n this._orient = v;\n this._layoutOrient = v;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected declare _theme: ICartesianAxisCommonTheme;\n\n protected _statisticsDomain: {\n domain: any[];\n index: { [key in StringOrNumber]: number };\n } = { domain: [], index: {} };\n getStatisticsDomain() {\n return this._statisticsDomain;\n }\n\n protected _tick: ITick | undefined = undefined;\n\n private _axisStyle: Partial<LineAxisAttributes>;\n private _latestBounds: IBounds;\n\n constructor(spec: ICartesianAxisCommonSpec, options: IComponentOption) {\n super(spec, {\n ...options\n });\n this._orient = getOrient(spec, ['z']);\n if (isZAxis(this._orient)) {\n this.layoutType = 'absolute';\n }\n isValid(spec.autoIndent) && (this._autoIndent = spec.autoIndent);\n this._layoutOrient = this._orient;\n this._dataSet = options.dataSet;\n }\n\n static createAxis(spec: any, options: IComponentOption, isHorizontal: boolean = false): IAxis {\n const axisType = spec.type ?? autoAxisType(spec.orient, isHorizontal);\n const componentName = `${CartesianAxis.type}-${axisType}`;\n const C = Factory.getComponentInKey(componentName);\n if (C) {\n // 这里处理下 direction === 'horizontal' 下的 Y 轴\n // 因为 Y 轴绘制的时候默认是从下至上绘制的,但是在 direction === 'horizontal' 场景下,图表应该是按照从上至下阅读的\n // 所以这里在这种场景下坐标轴会默认 inverse 已达到效果\n let inverse = spec.inverse;\n if (isHorizontal && !isXAxis(spec.orient)) {\n inverse = isValid(spec.inverse) ? !spec.inverse : true;\n }\n\n return new C(\n {\n ...spec,\n inverse\n },\n options\n ) as IAxis;\n }\n throw `Component ${componentName} not found`;\n }\n\n static createComponent(spec: any, options: IComponentOption) {\n if (!this.type.startsWith(CartesianAxis.type)) {\n return null;\n }\n const regions = options.getRegionsInIndex();\n if (regions.find(r => r.coordinate !== 'cartesian')) {\n return null;\n }\n let axesSpec = spec[CartesianAxis.specKey] || options.defaultSpec;\n if (!axesSpec) {\n return null;\n }\n const isHorizontal = spec.direction === Direction.horizontal;\n if (!isArray(axesSpec)) {\n // 如果非法,或者只有一个z轴就不创建\n if (!isValidCartesianAxis(axesSpec)) {\n return null;\n }\n return CartesianAxis.createAxis(axesSpec, options, isHorizontal);\n }\n // 处理spec\n const zAxis = axesSpec.filter(s => s.orient === 'z')[0];\n let valid = true;\n if (zAxis) {\n const xAxis = axesSpec.filter(s => s.orient === 'bottom')[0];\n const yAxis = axesSpec.filter(s => isYAxis(s.orient))[0];\n // 必须有x和y,且x必须是bottom\n valid = axesSpec.length === 3 && xAxis && yAxis;\n }\n if (!valid) {\n axesSpec = axesSpec.filter(s => s.orient !== 'z');\n }\n const axes: IAxis[] = [];\n axesSpec.forEach((s: any, i: any) => {\n if (!isValidCartesianAxis(s)) {\n return;\n }\n axes.push(\n CartesianAxis.createAxis(\n s,\n {\n ...options,\n specIndex: i,\n specKey: CartesianAxis.specKey\n },\n isHorizontal\n ) as IAxis\n );\n });\n return axes;\n }\n\n setLayout3dBox(box3d: { width: number; height: number; length: number }) {\n this.layout3dBox = box3d;\n }\n\n effect: IEffect = {\n scaleUpdate: () => {\n this.computeData();\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.orient)) {\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.orient)) {\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.orient)) {\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n };\n\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract dataToPosition(values: any[], cfg?: IAxisLocationCfg): number;\n abstract valueToPosition(value: any): number;\n\n protected updateScaleRange() {\n let isScaleChange = false;\n const { width, height } = this.getLayoutRect();\n const inverse = this._spec.inverse;\n let newRange: number[] = [];\n if (isXAxis(this.orient)) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n }\n } else if (isZAxis(this.orient)) {\n if (isValidNumber(width)) {\n // TODO 这里需要设置布局\n newRange = inverse ? [width, 0] : [0, width];\n this._scale.range(newRange);\n }\n } else {\n if (isValidNumber(height)) {\n newRange = inverse ? [0, height] : [height, 0];\n }\n }\n\n const [start, end] = this._scale.range();\n if (newRange[0] !== start || newRange[1] !== end) {\n isScaleChange = true;\n this._scale.range(newRange);\n }\n\n return isScaleChange;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n this.pluginService?.load(CartesianAxisPlugin.map(P => new P()));\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n const axisStyle: any = this._getAxisAttributes();\n axisStyle.label.formatMethod = this.getLabelFormatMethod();\n axisStyle.verticalFactor = this.orient === 'top' || this.orient === 'right' ? -1 : 1;\n this._axisStyle = axisStyle;\n\n this._tick = this._spec.tick;\n }\n\n protected getSeriesStatisticsField(s: ICartesianSeries) {\n let f: string[];\n if (isXAxis(this.orient)) {\n f = s.fieldX;\n } else if (isZAxis(this.orient)) {\n f = s.fieldZ;\n } else {\n f = s.fieldY;\n }\n if (isContinuous(this._scale.type)) {\n return f;\n }\n return [f[0]];\n }\n\n protected _initData() {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n\n const label = this._spec.label || {};\n const tick = this._tick || {};\n const tickData = new DataView(this._option.dataSet)\n .parse(this._scale, {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options: {\n tickCount: tick.tickCount,\n forceTickCount: tick.forceTickCount,\n tickStep: tick.tickStep,\n\n axisOrientType: this._orient,\n coordinateType: 'cartesian',\n\n labelStyle: label.style,\n labelFormatter: label.formatMethod,\n labelGap: label.minGap,\n\n labelLastVisible: label.lastVisible,\n labelFlush: label.flush\n } as ICartesianTickDataOpt\n },\n false\n );\n tickData.target.addListener('change', this._forceLayout.bind(this));\n\n this._tickData = new CompilableData(this._option, tickData);\n }\n\n protected axisHelper(): IAxisHelper {\n const getScale = (depth: number = 0) => {\n return this._scales[depth];\n };\n return {\n dataToPosition: this.dataToPosition.bind(this),\n getScale,\n // TODO 轴可以设置domain\n getStatisticsDomain: () => this.getStatisticsDomain(),\n getAxisType: () => this.type,\n getAxisId: () => this.id\n };\n }\n\n onLayoutStart(ctx: any): void {\n const product = this.getMarks()[0]?.getProduct();\n if (product) {\n product.addEventListener(HOOK_EVENT.AFTER_ELEMENT_ENCODE, () => {\n if (this._isLayout === false) {\n // 布局结束之后再进行插件的调用\n // 插件在布局后\n if (isXAxis(this.orient)) {\n this.callPlugin(plugin => {\n this.pluginService &&\n plugin.onDidLayoutHorizontal &&\n plugin.onDidLayoutHorizontal(this.pluginService, this);\n });\n } else {\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidLayoutVertical && plugin.onDidLayoutVertical(this.pluginService, this);\n });\n }\n\n // 代理组件上的事件,目前坐标轴组件比较特殊,包含了网格线,但是事件这块只提供不包含网格线部分的响应\n this._delegateAxisContainerEvent(product.getGroupGraphicItem());\n }\n });\n }\n }\n\n /** LifeCycle API**/\n onLayoutEnd(ctx: any): void {\n const isRangeChange = this.updateScaleRange();\n if (isRangeChange) {\n this.event.emit(ChartEvent.scaleUpdate, { model: this });\n // 这里会执行 computeData ,会执行系列scale更新\n } else {\n this.updateSeriesScale();\n }\n super.onLayoutEnd(ctx);\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n protected collectScale() {\n const scales: IBaseScale[] = [];\n eachSeries(\n this._regions,\n s => {\n scales.push(\n this.orient === 'left' || this.orient === 'right'\n ? (s as ICartesianSeries).scaleY\n : (s as ICartesianSeries).scaleX\n );\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return scales;\n }\n\n protected collectData(depth?: number) {\n const data: { min: number; max: number; values: any[] }[] = [];\n eachSeries(\n this._regions,\n s => {\n let field: string | string[];\n if (depth > 0) {\n field = s.getGroups()?.fields?.[depth];\n } else {\n if (isXAxis(this.orient)) {\n field = (s as ICartesianSeries).fieldX;\n } else if (isZAxis(this.orient)) {\n field = (s as ICartesianSeries).fieldZ;\n } else {\n field = (s as ICartesianSeries).fieldY;\n }\n }\n field = (isArray(field) ? (isContinuous(this._scale.type) ? field : [field[0]]) : [field]) as string[];\n if (!depth) {\n this._dataFieldText = s.getFieldAlias(field[0]);\n }\n const seriesData = s.getViewDataStatistics?.();\n if (field) {\n field.forEach(f => {\n if (seriesData?.latestData?.[f]) {\n data.push(seriesData.latestData[f]);\n }\n });\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return data;\n }\n\n protected updateSeriesScale() {\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.orient)) {\n (s as ICartesianSeries).setScaleX(this._scale);\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.orient)) {\n (s as ICartesianSeries).setScaleY(this._scale);\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.orient)) {\n (s as ICartesianSeries).setScaleZ(this._scale);\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n setLayoutStartPosition(pos: Partial<IPoint>): void {\n let { x, y } = pos;\n\n if (isValidNumber(x)) {\n x += Number(this._orient === 'left') * this.getLayoutRect().width;\n }\n if (isValidNumber(y)) {\n y += Number(this._orient === 'top') * this.getLayoutRect().height;\n }\n super.setLayoutStartPosition({ x, y });\n }\n\n computeBoundsInRect(rect: ILayoutRect) {\n const result = super.computeBoundsInRect(rect);\n if (!this._visible) {\n return result;\n }\n const bounds = this._latestBounds.clone().translate(-this.getLayoutStartPoint().x, -this.getLayoutStartPoint().y);\n switch (this._layoutOrient) {\n case 'left':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x1 < 0 ? -bounds.x1 : 0;\n }\n break;\n case 'right':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x2 > 0 ? bounds.x2 : 0;\n }\n break;\n case 'top':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y1 < 0 ? -bounds.y1 : 0;\n }\n break;\n case 'bottom':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y2 > 0 ? bounds.y2 : 0;\n }\n break;\n default:\n break;\n }\n result.width = Math.ceil(result.width);\n result.height = Math.ceil(result.height);\n return result;\n }\n /**\n * bounds 预计算\n * @param rect\n * @returns\n */\n boundsInRect(rect: ILayoutRect): IBoundsLike {\n let result: IBoundsLike = { x1: 0, y1: 0, x2: 0, y2: 0 };\n if (!this._visible) {\n return result;\n }\n\n this.setLayoutRect(rect);\n this.updateScaleRange();\n this.computeData();\n const isX = isXAxis(this.orient);\n const context = { skipLayout: false };\n\n if (isX) {\n // 钩子直接传 vchart 的 component 实例\n this.pluginService &&\n this.callPlugin(plugin => {\n plugin.onWillLayoutHorizontal && plugin.onWillLayoutHorizontal(this.pluginService, context, this);\n });\n } else {\n this.pluginService &&\n this.callPlugin(plugin => {\n plugin.onWillLayoutVertical && plugin.onWillLayoutVertical(this.pluginService, context, this);\n });\n }\n const product = this.getMarks()[0].getProduct();\n this._latestBounds = product.getBounds();\n if (!context.skipLayout) {\n const attrs = this._getUpdateAttribute(true);\n const axisComponent = product.getGroupGraphicItem();\n const updateBounds = axisComponent.getBoundsWithoutRender(\n merge({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs)\n );\n if (isFinite(updateBounds.width())) {\n result = updateBounds;\n this._latestBounds = updateBounds;\n }\n }\n return result;\n }\n\n updateLayoutAttribute(): void {\n if (!this.visible) {\n return;\n }\n // 正式的更新布局属性\n const attrs = this._getUpdateAttribute(false);\n const product = this.getMarks()[0].getProduct(); // 获取语法元素\n const axisAttrs = merge({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs);\n product.encode(axisAttrs);\n\n super.updateLayoutAttribute();\n }\n\n private _getTitleLimit(isX: boolean) {\n if (this._spec.title.visible && !this._spec.title.style?.limit) {\n const angle = this._spec.title.style?.angle || 0;\n if (isX) {\n const width = this.getLayoutRect().width;\n const cosValue = Math.abs(Math.cos(angle));\n // VRender 接收到的limit是考虑角度计算后的宽度\n // TODO:还需要考虑angle后,高度是否太高,综合计算一个limit,比如高度不能超过图表整体高度的1/4\n return cosValue < 1e-6 ? Infinity : width / cosValue;\n }\n const height = this.getLayoutRect().height;\n const sinValue = Math.abs(Math.sin(angle));\n\n // TODO:还需要考虑angle后,宽度是否太宽,综合计算一个limit,比如宽度度不能超过图表整体宽度的1/4\n return sinValue < 1e-6 ? Infinity : height / sinValue;\n }\n\n return null;\n }\n\n private _getUpdateAttribute(ignoreGrid: boolean) {\n // 获取更新的坐标轴属性\n let regionHeight = 0;\n let regionWidth = 0;\n\n if (!ignoreGrid) {\n const regions = this.getRegions();\n let { x: minX, y: minY } = regions[0].getLayoutStartPoint();\n let maxX = minX + regions[0].getLayoutRect().width;\n let maxY = minY + regions[0].getLayoutRect().height;\n\n for (let index = 1; index < regions.length; index++) {\n const region = regions[index];\n const { x, y } = region.getLayoutStartPoint();\n const { width, height } = region.getLayoutRect();\n\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, width + x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, height + y);\n }\n regionHeight = Math.abs(maxY - minY);\n regionWidth = Math.abs(maxX - minX);\n }\n\n const { width, height } = this.getLayoutRect();\n const isX = isXAxis(this._orient);\n const isY = isYAxis(this._orient);\n const isZ = isZAxis(this._orient);\n let end = { x: 0, y: 0 };\n let gridLength = 0;\n let axisLength = 0;\n const depth = this.layout3dBox ? this.layout3dBox.length : 0;\n if (isX) {\n end = { x: width, y: 0 };\n gridLength = regionHeight;\n axisLength = width;\n } else if (isY) {\n end = { x: 0, y: height };\n gridLength = regionWidth;\n axisLength = height;\n }\n if (isZ) {\n const directionStr = this.directionStr ?? 'r2l';\n const depthZ = this.layout3dBox ? this.layout3dBox.width : 0;\n let anchor3d = [0, 0];\n let alpha = -Math.PI / 2;\n let z = 0;\n if (directionStr === 'l2r') {\n z = this.layout3dBox.length;\n anchor3d = [0, 0, 0];\n alpha = Math.PI / 2;\n }\n return {\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n z: z,\n alpha,\n anchor3d,\n grid: {\n type: 'line',\n depth: depthZ,\n length: regionHeight,\n visible: this._spec.grid.visible && !ignoreGrid\n },\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items: this.getLabelItems(width)\n } as LineAxisAttributes;\n }\n const attrs: LineAxisAttributes = {\n start: { x: 0, y: 0 },\n end,\n grid: {\n type: 'line',\n depth,\n length: gridLength,\n visible: this._spec.grid.visible && !ignoreGrid\n },\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items: this.getLabelItems(axisLength)\n };\n\n return attrs;\n }\n\n protected initEvent() {\n super.initEvent();\n\n if (this.visible) {\n // 布局结束之后处理 0 基线问题\n this.event.on(ChartEvent.layoutEnd, this._fixAxisOnZero);\n }\n }\n\n private _fixAxisOnZero = () => {\n // 在布局结束之后调整坐标轴零基线\n const { onZero, visible } = this._spec.domainLine;\n if (this.visible && onZero && visible !== false) {\n const { onZeroAxisId, onZeroAxisIndex } = this._spec.domainLine;\n const axesComponents = this._option.getComponentsByKey('axes') as IAxis[];\n const isX = isXAxis(this.orient);\n\n // 判断坐标轴是否可用\n const isValidAxis = (item: any) => {\n return (\n (isX ? !isXAxis(item.orient) : isXAxis(item.orient)) &&\n isContinuous(item.getScale().type) &&\n (item.getScale() as ILinearScale).ticks().includes(0)\n );\n };\n const relativeAxes = axesComponents.filter(item => isValidAxis(item));\n if (relativeAxes.length) {\n let bindAxis;\n if (isValid(onZeroAxisId)) {\n bindAxis = relativeAxes.find(axis => axis.id === onZeroAxisId);\n } else if (isValid(onZeroAxisIndex)) {\n const indexAxis = axesComponents[onZeroAxisIndex];\n if (isValidAxis(indexAxis)) {\n bindAxis = indexAxis;\n }\n } else {\n // 默认绑定第一条的相对坐标轴\n bindAxis = relativeAxes[0];\n }\n if (bindAxis) {\n const axisMark = this.getMarks()[0].getProduct();\n // 找到了绑定的 axis,获取基线的位置\n const position = bindAxis.valueToPosition(0);\n // 获取偏移量\n if (isX) {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dy: this._orient === 'bottom' ? -(bindAxis.getScale().range()[0] - position) : position\n }\n });\n } else {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dx: this._orient === 'left' ? position : -(bindAxis.getScale().range()[1] - position)\n }\n });\n }\n }\n }\n }\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/component/axis/cartesian/axis.ts"],"names":[],"mappings":"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","file":"axis.js","sourcesContent":["/**\n * @todo vgrammar axis 支持 mode: '3d' 配置传入\n */\nimport type { IBounds, IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IEffect, IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { ICartesianSeries } from '../../../series/interface';\nimport type { IRegion } from '../../../region/interface';\nimport type { IAxisLocationCfg, ICartesianAxisCommonSpec, IAxisHelper, ICartesianAxisCommonTheme } from './interface';\nimport { isArray, isValid, isValidNumber, merge, eachSeries, getFieldAlias, isNil } from '../../../util';\nimport type { IOrientType } from '../../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../../typings/space';\nimport type { IBaseScale, ILinearScale } from '@visactor/vscale';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport { Factory } from '../../../core/factory';\nimport { autoAxisType, isXAxis, getOrient, isZAxis, isYAxis } from './util';\nimport { ChartEvent, DEFAULT_LAYOUT_RECT_LEVEL, LayoutZIndex } from '../../../constant';\nimport { LayoutLevel } from '../../../constant/index';\nimport pluginMap from '../../../plugin/components';\nimport type { IPoint, StringOrNumber } from '../../../typings';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport { HOOK_EVENT } from '@visactor/vgrammar';\nimport type { LineAxisAttributes } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValidCartesianAxis } from '../utils';\nimport type { IAxis, ITick } from '../interface';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../../data/register';\nimport { scaleParser } from '../../../data/parser/scale';\nimport type { ICartesianTickDataOpt } from '../../../data/transforms/tick-data';\n// eslint-disable-next-line no-duplicate-imports\nimport { ticks } from '../../../data/transforms/tick-data';\nimport type { DataSet } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport { CompilableData } from '../../../compile/data';\nimport { AxisComponent } from '../base-axis';\n\nconst CartesianAxisPlugin = [pluginMap.AxisLabelOverlapPlugin];\n\nexport abstract class CartesianAxis extends AxisComponent implements IAxis {\n static type = ComponentTypeEnum.cartesianAxis;\n type = ComponentTypeEnum.cartesianAxis;\n name: string = ComponentTypeEnum.cartesianAxis;\n\n // 标记这个布局Item的方向(left->right, right->left, top->bottom, bottom->top)\n declare directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';\n\n layoutType: LayoutItem['layoutType'] = 'region-relative';\n layoutZIndex: number = LayoutZIndex.Axis;\n layoutLevel: number = LayoutLevel.Axis;\n\n protected _dataSet: DataSet;\n\n layout3dBox?: { width: number; height: number; length: number };\n\n protected _orient: IOrientType = 'left';\n get orient() {\n return this._orient;\n }\n\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: IOrientType) {\n this._orient = v;\n this._layoutOrient = v;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected declare _theme: ICartesianAxisCommonTheme;\n\n protected _statisticsDomain: {\n domain: any[];\n index: { [key in StringOrNumber]: number };\n } = { domain: [], index: {} };\n getStatisticsDomain() {\n return this._statisticsDomain;\n }\n\n protected _tick: ITick | undefined = undefined;\n\n private _axisStyle: Partial<LineAxisAttributes>;\n private _latestBounds: IBounds;\n\n constructor(spec: ICartesianAxisCommonSpec, options: IComponentOption) {\n super(spec, {\n ...options\n });\n this._orient = getOrient(spec, ['z']);\n if (isZAxis(this._orient)) {\n this.layoutType = 'absolute';\n }\n isValid(spec.autoIndent) && (this._autoIndent = spec.autoIndent);\n this._layoutOrient = this._orient;\n this._dataSet = options.dataSet;\n }\n\n static createAxis(spec: any, options: IComponentOption, isHorizontal: boolean = false): IAxis {\n const axisType = spec.type ?? autoAxisType(spec.orient, isHorizontal);\n const componentName = `${CartesianAxis.type}-${axisType}`;\n const C = Factory.getComponentInKey(componentName);\n if (C) {\n // 这里处理下 direction === 'horizontal' 下的 Y 轴\n // 因为 Y 轴绘制的时候默认是从下至上绘制的,但是在 direction === 'horizontal' 场景下,图表应该是按照从上至下阅读的\n // 所以这里在这种场景下坐标轴会默认 inverse 已达到效果\n let inverse = spec.inverse;\n if (isHorizontal && !isXAxis(spec.orient)) {\n inverse = isValid(spec.inverse) ? !spec.inverse : true;\n }\n\n return new C(\n {\n ...spec,\n inverse\n },\n options\n ) as IAxis;\n }\n throw `Component ${componentName} not found`;\n }\n\n static createComponent(spec: any, options: IComponentOption) {\n if (!this.type.startsWith(CartesianAxis.type)) {\n return null;\n }\n const regions = options.getRegionsInIndex();\n if (regions.find(r => r.coordinate !== 'cartesian')) {\n return null;\n }\n let axesSpec = spec[CartesianAxis.specKey] || options.defaultSpec;\n if (!axesSpec) {\n return null;\n }\n const isHorizontal = spec.direction === Direction.horizontal;\n if (!isArray(axesSpec)) {\n // 如果非法,或者只有一个z轴就不创建\n if (!isValidCartesianAxis(axesSpec)) {\n return null;\n }\n return CartesianAxis.createAxis(axesSpec, options, isHorizontal);\n }\n // 处理spec\n const zAxis = axesSpec.filter(s => s.orient === 'z')[0];\n let valid = true;\n if (zAxis) {\n const xAxis = axesSpec.filter(s => s.orient === 'bottom')[0];\n const yAxis = axesSpec.filter(s => isYAxis(s.orient))[0];\n // 必须有x和y,且x必须是bottom\n valid = axesSpec.length === 3 && xAxis && yAxis;\n }\n if (!valid) {\n axesSpec = axesSpec.filter(s => s.orient !== 'z');\n }\n const axes: IAxis[] = [];\n axesSpec.forEach((s: any, i: any) => {\n if (!isValidCartesianAxis(s)) {\n return;\n }\n axes.push(\n CartesianAxis.createAxis(\n s,\n {\n ...options,\n specIndex: i,\n specKey: CartesianAxis.specKey\n },\n isHorizontal\n ) as IAxis\n );\n });\n return axes;\n }\n\n setLayout3dBox(box3d: { width: number; height: number; length: number }) {\n this.layout3dBox = box3d;\n }\n\n effect: IEffect = {\n scaleUpdate: () => {\n this.computeData();\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.orient)) {\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.orient)) {\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.orient)) {\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n };\n\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract dataToPosition(values: any[], cfg?: IAxisLocationCfg): number;\n abstract valueToPosition(value: any): number;\n\n protected updateScaleRange() {\n let isScaleChange = false;\n const { width, height } = this.getLayoutRect();\n const inverse = this._spec.inverse;\n let newRange: number[] = [];\n if (isXAxis(this.orient)) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n }\n } else if (isZAxis(this.orient)) {\n if (isValidNumber(width)) {\n // TODO 这里需要设置布局\n newRange = inverse ? [width, 0] : [0, width];\n this._scale.range(newRange);\n }\n } else {\n if (isValidNumber(height)) {\n newRange = inverse ? [0, height] : [height, 0];\n }\n }\n\n const [start, end] = this._scale.range();\n if (newRange[0] !== start || newRange[1] !== end) {\n isScaleChange = true;\n this._scale.range(newRange);\n }\n\n return isScaleChange;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n this.pluginService?.load(CartesianAxisPlugin.map(P => new P()));\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n const axisStyle: any = this._getAxisAttributes();\n axisStyle.label.formatMethod = this.getLabelFormatMethod();\n axisStyle.verticalFactor = this.orient === 'top' || this.orient === 'right' ? -1 : 1;\n this._axisStyle = axisStyle;\n\n this._tick = this._spec.tick;\n }\n\n protected getSeriesStatisticsField(s: ICartesianSeries) {\n let f: string[];\n if (isXAxis(this.orient)) {\n f = s.fieldX;\n } else if (isZAxis(this.orient)) {\n f = s.fieldZ;\n } else {\n f = s.fieldY;\n }\n if (isContinuous(this._scale.type)) {\n return f;\n }\n return [f[0]];\n }\n\n protected _initData() {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n\n const label = this._spec.label || {};\n const tick = this._tick || {};\n const tickData = new DataView(this._option.dataSet)\n .parse(this._scale, {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options: {\n tickCount: tick.tickCount,\n forceTickCount: tick.forceTickCount,\n tickStep: tick.tickStep,\n\n axisOrientType: this._orient,\n coordinateType: 'cartesian',\n\n labelStyle: label.style,\n labelFormatter: label.formatMethod,\n labelGap: label.minGap,\n\n labelLastVisible: label.lastVisible,\n labelFlush: label.flush\n } as ICartesianTickDataOpt\n },\n false\n );\n tickData.target.addListener('change', this._forceLayout.bind(this));\n\n this._tickData = new CompilableData(this._option, tickData);\n }\n\n protected axisHelper(): IAxisHelper {\n const getScale = (depth: number = 0) => {\n return this._scales[depth];\n };\n return {\n dataToPosition: this.dataToPosition.bind(this),\n getScale,\n // TODO 轴可以设置domain\n getStatisticsDomain: () => this.getStatisticsDomain(),\n getAxisType: () => this.type,\n getAxisId: () => this.id\n };\n }\n\n onLayoutStart(ctx: any): void {\n const product = this.getMarks()[0]?.getProduct();\n if (product) {\n product.addEventListener(HOOK_EVENT.AFTER_ELEMENT_ENCODE, () => {\n if (this._isLayout === false) {\n // 布局结束之后再进行插件的调用\n // 插件在布局后\n if (isXAxis(this.orient)) {\n this.callPlugin(plugin => {\n this.pluginService &&\n plugin.onDidLayoutHorizontal &&\n plugin.onDidLayoutHorizontal(this.pluginService, this);\n });\n } else {\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidLayoutVertical && plugin.onDidLayoutVertical(this.pluginService, this);\n });\n }\n\n // 代理组件上的事件,目前坐标轴组件比较特殊,包含了网格线,但是事件这块只提供不包含网格线部分的响应\n this._delegateAxisContainerEvent(product.getGroupGraphicItem());\n }\n });\n }\n }\n\n /** LifeCycle API**/\n onLayoutEnd(ctx: any): void {\n const isRangeChange = this.updateScaleRange();\n if (isRangeChange) {\n this.event.emit(ChartEvent.scaleUpdate, { model: this });\n // 这里会执行 computeData ,会执行系列scale更新\n } else {\n this.updateSeriesScale();\n }\n super.onLayoutEnd(ctx);\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n protected collectScale() {\n const scales: IBaseScale[] = [];\n eachSeries(\n this._regions,\n s => {\n scales.push(\n this.orient === 'left' || this.orient === 'right'\n ? (s as ICartesianSeries).scaleY\n : (s as ICartesianSeries).scaleX\n );\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return scales;\n }\n\n protected collectData(depth?: number) {\n const data: { min: number; max: number; values: any[] }[] = [];\n eachSeries(\n this._regions,\n s => {\n let field: string | string[];\n if (depth > 0) {\n field = s.getGroups()?.fields?.[depth];\n } else {\n if (isXAxis(this.orient)) {\n field = (s as ICartesianSeries).fieldX;\n } else if (isZAxis(this.orient)) {\n field = (s as ICartesianSeries).fieldZ;\n } else {\n field = (s as ICartesianSeries).fieldY;\n }\n }\n field = (isArray(field) ? (isContinuous(this._scale.type) ? field : [field[0]]) : [field]) as string[];\n if (!depth) {\n this._dataFieldText = s.getFieldAlias(field[0]);\n }\n const seriesData = s.getViewDataStatistics?.();\n if (field) {\n field.forEach(f => {\n if (seriesData?.latestData?.[f]) {\n data.push(seriesData.latestData[f]);\n }\n });\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return data;\n }\n\n protected updateSeriesScale() {\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.orient)) {\n (s as ICartesianSeries).setScaleX(this._scale);\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.orient)) {\n (s as ICartesianSeries).setScaleY(this._scale);\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.orient)) {\n (s as ICartesianSeries).setScaleZ(this._scale);\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n setLayoutStartPosition(pos: Partial<IPoint>): void {\n let { x, y } = pos;\n\n if (isValidNumber(x)) {\n x += Number(this._orient === 'left') * this.getLayoutRect().width;\n }\n if (isValidNumber(y)) {\n y += Number(this._orient === 'top') * this.getLayoutRect().height;\n }\n super.setLayoutStartPosition({ x, y });\n }\n\n computeBoundsInRect(rect: ILayoutRect) {\n const result = super.computeBoundsInRect(rect);\n if (!this._visible) {\n return result;\n }\n const bounds = this._latestBounds.clone().translate(-this.getLayoutStartPoint().x, -this.getLayoutStartPoint().y);\n switch (this._layoutOrient) {\n case 'left':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x1 < 0 ? -bounds.x1 : 0;\n }\n break;\n case 'right':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x2 > 0 ? bounds.x2 : 0;\n }\n break;\n case 'top':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y1 < 0 ? -bounds.y1 : 0;\n }\n break;\n case 'bottom':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y2 > 0 ? bounds.y2 : 0;\n }\n break;\n default:\n break;\n }\n result.width = Math.ceil(result.width);\n result.height = Math.ceil(result.height);\n return result;\n }\n /**\n * bounds 预计算\n * @param rect\n * @returns\n */\n boundsInRect(rect: ILayoutRect): IBoundsLike {\n let result: IBoundsLike = { x1: 0, y1: 0, x2: 0, y2: 0 };\n if (!this._visible) {\n return result;\n }\n\n this.setLayoutRect(rect);\n this.updateScaleRange();\n this.computeData();\n const isX = isXAxis(this.orient);\n const context = { skipLayout: false };\n\n if (isX) {\n // 钩子直接传 vchart 的 component 实例\n this.pluginService &&\n this.callPlugin(plugin => {\n plugin.onWillLayoutHorizontal && plugin.onWillLayoutHorizontal(this.pluginService, context, this);\n });\n } else {\n this.pluginService &&\n this.callPlugin(plugin => {\n plugin.onWillLayoutVertical && plugin.onWillLayoutVertical(this.pluginService, context, this);\n });\n }\n const product = this.getMarks()[0].getProduct();\n this._latestBounds = product.getBounds();\n if (!context.skipLayout) {\n const attrs = this._getUpdateAttribute(true);\n const axisComponent = product.getGroupGraphicItem();\n const updateBounds = axisComponent.getBoundsWithoutRender(\n merge({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs)\n );\n if (isFinite(updateBounds.width())) {\n result = updateBounds;\n this._latestBounds = updateBounds;\n }\n }\n return result;\n }\n\n updateLayoutAttribute(): void {\n if (!this.visible) {\n return;\n }\n // 正式的更新布局属性\n const attrs = this._getUpdateAttribute(false);\n const product = this.getMarks()[0].getProduct(); // 获取语法元素\n const axisAttrs = merge({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs);\n product.encode(axisAttrs);\n\n super.updateLayoutAttribute();\n }\n\n private _getTitleLimit(isX: boolean) {\n if (this._spec.title.visible && isNil(this._spec.title.style?.maxLineWidth)) {\n const angle = this._spec.title.style?.angle || 0;\n if (isX) {\n const width = this.getLayoutRect().width;\n const cosValue = Math.abs(Math.cos(angle));\n // VRender 接收到的limit是考虑角度计算后的宽度\n // TODO:还需要考虑angle后,高度是否太高,综合计算一个limit,比如高度不能超过图表整体高度的1/4\n return cosValue < 1e-6 ? Infinity : width / cosValue;\n }\n const height = this.getLayoutRect().height;\n const sinValue = Math.abs(Math.sin(angle));\n\n // TODO:还需要考虑angle后,宽度是否太宽,综合计算一个limit,比如宽度度不能超过图表整体宽度的1/4\n return sinValue < 1e-6 ? Infinity : height / sinValue;\n }\n\n return null;\n }\n\n private _getUpdateAttribute(ignoreGrid: boolean) {\n // 获取更新的坐标轴属性\n let regionHeight = 0;\n let regionWidth = 0;\n\n if (!ignoreGrid) {\n const regions = this.getRegions();\n let { x: minX, y: minY } = regions[0].getLayoutStartPoint();\n let maxX = minX + regions[0].getLayoutRect().width;\n let maxY = minY + regions[0].getLayoutRect().height;\n\n for (let index = 1; index < regions.length; index++) {\n const region = regions[index];\n const { x, y } = region.getLayoutStartPoint();\n const { width, height } = region.getLayoutRect();\n\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, width + x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, height + y);\n }\n regionHeight = Math.abs(maxY - minY);\n regionWidth = Math.abs(maxX - minX);\n }\n\n const { width, height } = this.getLayoutRect();\n const isX = isXAxis(this._orient);\n const isY = isYAxis(this._orient);\n const isZ = isZAxis(this._orient);\n let end = { x: 0, y: 0 };\n let gridLength = 0;\n let axisLength = 0;\n const depth = this.layout3dBox ? this.layout3dBox.length : 0;\n if (isX) {\n end = { x: width, y: 0 };\n gridLength = regionHeight;\n axisLength = width;\n } else if (isY) {\n end = { x: 0, y: height };\n gridLength = regionWidth;\n axisLength = height;\n }\n if (isZ) {\n const directionStr = this.directionStr ?? 'r2l';\n const depthZ = this.layout3dBox ? this.layout3dBox.width : 0;\n let anchor3d = [0, 0];\n let alpha = -Math.PI / 2;\n let z = 0;\n if (directionStr === 'l2r') {\n z = this.layout3dBox.length;\n anchor3d = [0, 0, 0];\n alpha = Math.PI / 2;\n }\n return {\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n z: z,\n alpha,\n anchor3d,\n grid: {\n type: 'line',\n depth: depthZ,\n length: regionHeight,\n visible: this._spec.grid.visible && !ignoreGrid\n },\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items: this.getLabelItems(width)\n } as LineAxisAttributes;\n }\n const attrs: LineAxisAttributes = {\n start: { x: 0, y: 0 },\n end,\n grid: {\n type: 'line',\n depth,\n length: gridLength,\n visible: this._spec.grid.visible && !ignoreGrid\n },\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items: this.getLabelItems(axisLength)\n };\n\n return attrs;\n }\n\n protected initEvent() {\n super.initEvent();\n\n if (this.visible) {\n // 布局结束之后处理 0 基线问题\n this.event.on(ChartEvent.layoutEnd, this._fixAxisOnZero);\n }\n }\n\n private _fixAxisOnZero = () => {\n // 在布局结束之后调整坐标轴零基线\n const { onZero, visible } = this._spec.domainLine;\n if (this.visible && onZero && visible !== false) {\n const { onZeroAxisId, onZeroAxisIndex } = this._spec.domainLine;\n const axesComponents = this._option.getComponentsByKey('axes') as IAxis[];\n const isX = isXAxis(this.orient);\n\n // 判断坐标轴是否可用\n const isValidAxis = (item: any) => {\n return (\n (isX ? !isXAxis(item.orient) : isXAxis(item.orient)) &&\n isContinuous(item.getScale().type) &&\n (item.getScale() as ILinearScale).ticks().includes(0)\n );\n };\n const relativeAxes = axesComponents.filter(item => isValidAxis(item));\n if (relativeAxes.length) {\n let bindAxis;\n if (isValid(onZeroAxisId)) {\n bindAxis = relativeAxes.find(axis => axis.id === onZeroAxisId);\n } else if (isValid(onZeroAxisIndex)) {\n const indexAxis = axesComponents[onZeroAxisIndex];\n if (isValidAxis(indexAxis)) {\n bindAxis = indexAxis;\n }\n } else {\n // 默认绑定第一条的相对坐标轴\n bindAxis = relativeAxes[0];\n }\n if (bindAxis) {\n const axisMark = this.getMarks()[0].getProduct();\n // 找到了绑定的 axis,获取基线的位置\n const position = bindAxis.valueToPosition(0);\n // 获取偏移量\n if (isX) {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dy: this._orient === 'bottom' ? -(bindAxis.getScale().range()[0] - position) : position\n }\n });\n } else {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dx: this._orient === 'left' ? position : -(bindAxis.getScale().range()[1] - position)\n }\n });\n }\n }\n }\n }\n };\n}\n"]}
@@ -165,7 +165,7 @@ class BaseCrossHair extends base_1.BaseComponent {
165
165
  const percent = parseInt(line.width.substring(0, line.width.length - 1), 10) / 100;
166
166
  hair.style.sizePercent = percent;
167
167
  } else "number" == typeof (null == line ? void 0 : line.width) && (hair.style.size = line.width);
168
- const labelBackground = null == label ? void 0 : label.labelBackground, labelStyle = (null == label ? void 0 : label.style) || {}, _f = (null == labelBackground ? void 0 : labelBackground.style) || {}, {fill: rectFill = "rgba(47, 59, 82, 0.9)", cornerRadius: borderRadius = 0, stroke: rectStroke} = _f, rectStyle = __rest(_f, [ "fill", "cornerRadius", "stroke" ]);
168
+ const labelBackground = null == label ? void 0 : label.labelBackground, labelStyle = (null == label ? void 0 : label.style) || {}, _f = (null == labelBackground ? void 0 : labelBackground.style) || {}, {fill: rectFill = "rgba(47, 59, 82, 0.9)", stroke: rectStroke} = _f, rectStyle = __rest(_f, [ "fill", "stroke" ]);
169
169
  return hair.label = {
170
170
  visible: !!(null == label ? void 0 : label.visible),
171
171
  formatMethod: null == label ? void 0 : label.formatMethod,
@@ -183,7 +183,6 @@ class BaseCrossHair extends base_1.BaseComponent {
183
183
  visible: (0, util_1.isBoolean)(null == labelBackground ? void 0 : labelBackground.visible) ? null == labelBackground ? void 0 : labelBackground.visible : !!labelBackground,
184
184
  pickable: !1,
185
185
  fill: rectFill,
186
- borderRadius: borderRadius,
187
186
  stroke: rectStroke
188
187
  }, rectStyle),
189
188
  zIndex: this.labelZIndex