@visactor/vchart-extension 2.0.0-alpha.0 → 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (739) hide show
  1. package/build/index.js +14841 -4920
  2. package/build/index.min.js +2 -2
  3. package/cjs/charts/3d/arc-3d.d.ts +11 -0
  4. package/cjs/charts/3d/arc-3d.js +30 -0
  5. package/cjs/charts/3d/arc-3d.js.map +1 -0
  6. package/cjs/charts/3d/enum.d.ts +33 -0
  7. package/cjs/charts/3d/enum.js +28 -0
  8. package/cjs/charts/3d/enum.js.map +1 -0
  9. package/cjs/charts/3d/interface.d.ts +13 -0
  10. package/cjs/charts/3d/interface.js +6 -0
  11. package/cjs/charts/3d/interface.js.map +1 -0
  12. package/cjs/charts/3d/layout.d.ts +21 -0
  13. package/cjs/charts/3d/layout.js +97 -0
  14. package/cjs/charts/3d/layout.js.map +1 -0
  15. package/cjs/charts/3d/plugin.d.ts +12 -0
  16. package/cjs/charts/3d/plugin.js +35 -0
  17. package/cjs/charts/3d/plugin.js.map +1 -0
  18. package/cjs/charts/3d/pyramid-3d.d.ts +11 -0
  19. package/cjs/charts/3d/pyramid-3d.js +31 -0
  20. package/cjs/charts/3d/pyramid-3d.js.map +1 -0
  21. package/cjs/charts/3d/rect-3d.d.ts +13 -0
  22. package/cjs/charts/3d/rect-3d.js +36 -0
  23. package/cjs/charts/3d/rect-3d.js.map +1 -0
  24. package/cjs/charts/3d/util.d.ts +3 -0
  25. package/cjs/charts/3d/util.js +19 -0
  26. package/cjs/charts/3d/util.js.map +1 -0
  27. package/cjs/charts/axis-3d/band-axis.d.ts +46 -0
  28. package/cjs/charts/axis-3d/band-axis.js +27 -0
  29. package/cjs/charts/axis-3d/band-axis.js.map +1 -0
  30. package/cjs/charts/axis-3d/index.d.ts +1 -0
  31. package/cjs/charts/axis-3d/index.js +14 -0
  32. package/cjs/charts/axis-3d/index.js.map +1 -0
  33. package/cjs/charts/axis-3d/linear-axis.d.ts +42 -0
  34. package/cjs/charts/axis-3d/linear-axis.js +32 -0
  35. package/cjs/charts/axis-3d/linear-axis.js.map +1 -0
  36. package/cjs/charts/axis-3d/log-axis.d.ts +46 -0
  37. package/cjs/charts/axis-3d/log-axis.js +27 -0
  38. package/cjs/charts/axis-3d/log-axis.js.map +1 -0
  39. package/cjs/charts/axis-3d/symlog-axis.d.ts +46 -0
  40. package/cjs/charts/axis-3d/symlog-axis.js +27 -0
  41. package/cjs/charts/axis-3d/symlog-axis.js.map +1 -0
  42. package/cjs/charts/axis-3d/theme.d.ts +2 -0
  43. package/cjs/charts/axis-3d/theme.js +10 -0
  44. package/cjs/charts/axis-3d/theme.js.map +1 -0
  45. package/cjs/charts/axis-3d/time-axis.d.ts +45 -0
  46. package/cjs/charts/axis-3d/time-axis.js +26 -0
  47. package/cjs/charts/axis-3d/time-axis.js.map +1 -0
  48. package/cjs/charts/axis-3d/util.d.ts +2 -0
  49. package/cjs/charts/axis-3d/util.js +45 -0
  50. package/cjs/charts/axis-3d/util.js.map +1 -0
  51. package/cjs/charts/bar-3d/animation.d.ts +1 -0
  52. package/cjs/charts/bar-3d/animation.js +17 -0
  53. package/cjs/charts/bar-3d/animation.js.map +1 -0
  54. package/cjs/charts/bar-3d/chart-spec-transformer.d.ts +6 -0
  55. package/cjs/charts/bar-3d/chart-spec-transformer.js +19 -0
  56. package/cjs/charts/bar-3d/chart-spec-transformer.js.map +1 -0
  57. package/cjs/charts/bar-3d/chart.d.ts +13 -0
  58. package/cjs/charts/bar-3d/chart.js +25 -0
  59. package/cjs/charts/bar-3d/chart.js.map +1 -0
  60. package/cjs/charts/bar-3d/constant.d.ts +12 -0
  61. package/cjs/charts/bar-3d/constant.js +15 -0
  62. package/cjs/charts/bar-3d/constant.js.map +1 -0
  63. package/cjs/charts/bar-3d/index.d.ts +5 -0
  64. package/cjs/charts/bar-3d/index.js +23 -0
  65. package/cjs/charts/bar-3d/index.js.map +1 -0
  66. package/cjs/charts/bar-3d/interface.d.ts +13 -0
  67. package/cjs/charts/bar-3d/interface.js +6 -0
  68. package/cjs/charts/bar-3d/interface.js.map +1 -0
  69. package/cjs/charts/bar-3d/series-spec-transformer.d.ts +5 -0
  70. package/cjs/charts/bar-3d/series-spec-transformer.js +15 -0
  71. package/cjs/charts/bar-3d/series-spec-transformer.js.map +1 -0
  72. package/cjs/charts/bar-3d/series.d.ts +17 -0
  73. package/cjs/charts/bar-3d/series.js +28 -0
  74. package/cjs/charts/bar-3d/series.js.map +1 -0
  75. package/cjs/charts/bar-3d/theme.d.ts +2 -0
  76. package/cjs/charts/bar-3d/theme.js +19 -0
  77. package/cjs/charts/bar-3d/theme.js.map +1 -0
  78. package/cjs/charts/conversion-funnel/arrow-data-transform.js.map +1 -1
  79. package/cjs/charts/conversion-funnel/constants.d.ts +21 -0
  80. package/cjs/charts/conversion-funnel/constants.js +24 -0
  81. package/cjs/charts/conversion-funnel/constants.js.map +1 -0
  82. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.d.ts +2 -3
  83. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.js +7 -6
  84. package/cjs/charts/conversion-funnel/conversion-funnel-transformer.js.map +1 -1
  85. package/cjs/charts/conversion-funnel/conversion-funnel.d.ts +0 -21
  86. package/cjs/charts/conversion-funnel/conversion-funnel.js +2 -19
  87. package/cjs/charts/conversion-funnel/conversion-funnel.js.map +1 -1
  88. package/cjs/charts/conversion-funnel/index.js.map +1 -1
  89. package/cjs/charts/conversion-funnel/interface.js +1 -1
  90. package/cjs/charts/conversion-funnel/interface.js.map +1 -1
  91. package/cjs/charts/conversion-funnel/util.d.ts +1 -1
  92. package/cjs/charts/conversion-funnel/util.js +1 -1
  93. package/cjs/charts/conversion-funnel/util.js.map +1 -1
  94. package/cjs/charts/funnel-3d/chart.d.ts +12 -0
  95. package/cjs/charts/funnel-3d/chart.js +25 -0
  96. package/cjs/charts/funnel-3d/chart.js.map +1 -0
  97. package/cjs/charts/funnel-3d/constant.d.ts +80 -0
  98. package/cjs/charts/funnel-3d/constant.js +31 -0
  99. package/cjs/charts/funnel-3d/constant.js.map +1 -0
  100. package/cjs/charts/funnel-3d/index.d.ts +4 -0
  101. package/cjs/charts/funnel-3d/index.js +22 -0
  102. package/cjs/charts/funnel-3d/index.js.map +1 -0
  103. package/cjs/charts/funnel-3d/interface.d.ts +18 -0
  104. package/cjs/charts/funnel-3d/interface.js +6 -0
  105. package/cjs/charts/funnel-3d/interface.js.map +1 -0
  106. package/cjs/charts/funnel-3d/series-spec-transformer.d.ts +5 -0
  107. package/cjs/charts/funnel-3d/series-spec-transformer.js +16 -0
  108. package/cjs/charts/funnel-3d/series-spec-transformer.js.map +1 -0
  109. package/cjs/charts/funnel-3d/series.d.ts +99 -0
  110. package/cjs/charts/funnel-3d/series.js +83 -0
  111. package/cjs/charts/funnel-3d/series.js.map +1 -0
  112. package/cjs/charts/funnel-3d/theme.d.ts +1 -0
  113. package/cjs/charts/funnel-3d/theme.js +10 -0
  114. package/cjs/charts/funnel-3d/theme.js.map +1 -0
  115. package/cjs/charts/histogram-3d/chart.d.ts +12 -0
  116. package/cjs/charts/histogram-3d/chart.js +31 -0
  117. package/cjs/charts/histogram-3d/chart.js.map +1 -0
  118. package/cjs/charts/histogram-3d/index.d.ts +2 -0
  119. package/cjs/charts/histogram-3d/index.js +21 -0
  120. package/cjs/charts/histogram-3d/index.js.map +1 -0
  121. package/cjs/charts/histogram-3d/interface.d.ts +5 -0
  122. package/cjs/charts/histogram-3d/interface.js +6 -0
  123. package/cjs/charts/histogram-3d/interface.js.map +1 -0
  124. package/cjs/charts/image-cloud/image-cloud-transformer.d.ts +6 -0
  125. package/cjs/charts/image-cloud/image-cloud-transformer.js +19 -0
  126. package/cjs/charts/image-cloud/image-cloud-transformer.js.map +1 -0
  127. package/cjs/charts/image-cloud/image-cloud.d.ts +12 -0
  128. package/cjs/charts/image-cloud/image-cloud.js +24 -0
  129. package/cjs/charts/image-cloud/image-cloud.js.map +1 -0
  130. package/cjs/charts/image-cloud/index.d.ts +2 -0
  131. package/cjs/charts/image-cloud/index.js +21 -0
  132. package/cjs/charts/image-cloud/index.js.map +1 -0
  133. package/cjs/charts/image-cloud/interface.d.ts +6 -0
  134. package/cjs/charts/image-cloud/interface.js +6 -0
  135. package/cjs/charts/image-cloud/interface.js.map +1 -0
  136. package/cjs/charts/image-cloud/series/animation.d.ts +23 -0
  137. package/cjs/charts/image-cloud/series/animation.js +100 -0
  138. package/cjs/charts/image-cloud/series/animation.js.map +1 -0
  139. package/cjs/charts/image-cloud/series/constant.d.ts +76 -0
  140. package/cjs/charts/image-cloud/series/constant.js +25 -0
  141. package/cjs/charts/image-cloud/series/constant.js.map +1 -0
  142. package/cjs/charts/image-cloud/series/image-cloud.d.ts +137 -0
  143. package/cjs/charts/image-cloud/series/image-cloud.js +196 -0
  144. package/cjs/charts/image-cloud/series/image-cloud.js.map +1 -0
  145. package/cjs/charts/image-cloud/series/index.d.ts +2 -0
  146. package/cjs/charts/image-cloud/series/index.js +21 -0
  147. package/cjs/charts/image-cloud/series/index.js.map +1 -0
  148. package/cjs/charts/image-cloud/series/interface.d.ts +25 -0
  149. package/cjs/charts/image-cloud/series/interface.js +6 -0
  150. package/cjs/charts/image-cloud/series/interface.js.map +1 -0
  151. package/cjs/charts/image-cloud/series/tooltip-helper.d.ts +10 -0
  152. package/cjs/charts/image-cloud/series/tooltip-helper.js +30 -0
  153. package/cjs/charts/image-cloud/series/tooltip-helper.js.map +1 -0
  154. package/cjs/charts/pictogram/element-highlight-by-graphic-name.d.ts +12 -0
  155. package/cjs/charts/pictogram/element-highlight-by-graphic-name.js +53 -0
  156. package/cjs/charts/pictogram/element-highlight-by-graphic-name.js.map +1 -0
  157. package/cjs/charts/pictogram/element-select-by-graphic-name.d.ts +8 -0
  158. package/cjs/charts/pictogram/element-select-by-graphic-name.js +31 -0
  159. package/cjs/charts/pictogram/element-select-by-graphic-name.js.map +1 -0
  160. package/cjs/charts/pictogram/index.d.ts +5 -0
  161. package/cjs/charts/pictogram/index.js +23 -0
  162. package/cjs/charts/pictogram/index.js.map +1 -0
  163. package/cjs/charts/pictogram/interface.d.ts +6 -0
  164. package/cjs/charts/pictogram/interface.js +6 -0
  165. package/cjs/charts/pictogram/interface.js.map +1 -0
  166. package/cjs/charts/pictogram/pictogram-transformer.d.ts +8 -0
  167. package/cjs/charts/pictogram/pictogram-transformer.js +24 -0
  168. package/cjs/charts/pictogram/pictogram-transformer.js.map +1 -0
  169. package/cjs/charts/pictogram/pictogram.d.ts +12 -0
  170. package/cjs/charts/pictogram/pictogram.js +25 -0
  171. package/cjs/charts/pictogram/pictogram.js.map +1 -0
  172. package/cjs/charts/pictogram/series/constant.d.ts +73 -0
  173. package/cjs/charts/pictogram/series/constant.js +22 -0
  174. package/cjs/charts/pictogram/series/constant.js.map +1 -0
  175. package/cjs/charts/pictogram/series/interface.d.ts +13 -0
  176. package/cjs/charts/pictogram/series/interface.js +6 -0
  177. package/cjs/charts/pictogram/series/interface.js.map +1 -0
  178. package/cjs/charts/pictogram/series/pictogram-transformer.d.ts +4 -0
  179. package/cjs/charts/pictogram/series/pictogram-transformer.js +23 -0
  180. package/cjs/charts/pictogram/series/pictogram-transformer.js.map +1 -0
  181. package/cjs/charts/pictogram/series/pictogram.d.ts +129 -0
  182. package/cjs/charts/pictogram/series/pictogram.js +296 -0
  183. package/cjs/charts/pictogram/series/pictogram.js.map +1 -0
  184. package/cjs/charts/pictogram/series/svg-source.d.ts +7 -0
  185. package/cjs/charts/pictogram/series/svg-source.js +38 -0
  186. package/cjs/charts/pictogram/series/svg-source.js.map +1 -0
  187. package/cjs/charts/pictogram/series/tooltip-helper.d.ts +7 -0
  188. package/cjs/charts/pictogram/series/tooltip-helper.js +26 -0
  189. package/cjs/charts/pictogram/series/tooltip-helper.js.map +1 -0
  190. package/cjs/charts/pictogram/series/transform.d.ts +76 -0
  191. package/cjs/charts/pictogram/series/transform.js +150 -0
  192. package/cjs/charts/pictogram/series/transform.js.map +1 -0
  193. package/cjs/charts/pie-3d/animation.d.ts +1 -0
  194. package/cjs/charts/pie-3d/animation.js +17 -0
  195. package/cjs/charts/pie-3d/animation.js.map +1 -0
  196. package/cjs/charts/pie-3d/chart-spec-transformer.d.ts +6 -0
  197. package/cjs/charts/pie-3d/chart-spec-transformer.js +18 -0
  198. package/cjs/charts/pie-3d/chart-spec-transformer.js.map +1 -0
  199. package/cjs/charts/pie-3d/chart.d.ts +13 -0
  200. package/cjs/charts/pie-3d/chart.js +25 -0
  201. package/cjs/charts/pie-3d/chart.js.map +1 -0
  202. package/cjs/charts/pie-3d/constant.d.ts +70 -0
  203. package/cjs/charts/pie-3d/constant.js +19 -0
  204. package/cjs/charts/pie-3d/constant.js.map +1 -0
  205. package/cjs/charts/pie-3d/index.d.ts +5 -0
  206. package/cjs/charts/pie-3d/index.js +23 -0
  207. package/cjs/charts/pie-3d/index.js.map +1 -0
  208. package/cjs/charts/pie-3d/interface.d.ts +17 -0
  209. package/cjs/charts/pie-3d/interface.js +6 -0
  210. package/cjs/charts/pie-3d/interface.js.map +1 -0
  211. package/cjs/charts/pie-3d/series-spec-transformer.d.ts +5 -0
  212. package/cjs/charts/pie-3d/series-spec-transformer.js +16 -0
  213. package/cjs/charts/pie-3d/series-spec-transformer.js.map +1 -0
  214. package/cjs/charts/pie-3d/series.d.ts +88 -0
  215. package/cjs/charts/pie-3d/series.js +42 -0
  216. package/cjs/charts/pie-3d/series.js.map +1 -0
  217. package/cjs/charts/pie-3d/theme.d.ts +2 -0
  218. package/cjs/charts/pie-3d/theme.js +19 -0
  219. package/cjs/charts/pie-3d/theme.js.map +1 -0
  220. package/cjs/charts/range-column-3d/chart-spec-transformer.d.ts +5 -0
  221. package/cjs/charts/range-column-3d/chart-spec-transformer.js +19 -0
  222. package/cjs/charts/range-column-3d/chart-spec-transformer.js.map +1 -0
  223. package/cjs/charts/range-column-3d/chart.d.ts +13 -0
  224. package/cjs/charts/range-column-3d/chart.js +31 -0
  225. package/cjs/charts/range-column-3d/chart.js.map +1 -0
  226. package/cjs/charts/range-column-3d/constant.d.ts +19 -0
  227. package/cjs/charts/range-column-3d/constant.js +19 -0
  228. package/cjs/charts/range-column-3d/constant.js.map +1 -0
  229. package/cjs/charts/range-column-3d/index.d.ts +5 -0
  230. package/cjs/charts/range-column-3d/index.js +23 -0
  231. package/cjs/charts/range-column-3d/index.js.map +1 -0
  232. package/cjs/charts/range-column-3d/interface.d.ts +8 -0
  233. package/cjs/charts/range-column-3d/interface.js +6 -0
  234. package/cjs/charts/range-column-3d/interface.js.map +1 -0
  235. package/cjs/charts/range-column-3d/series-spec-transformer.d.ts +6 -0
  236. package/cjs/charts/range-column-3d/series-spec-transformer.js +17 -0
  237. package/cjs/charts/range-column-3d/series-spec-transformer.js.map +1 -0
  238. package/cjs/charts/range-column-3d/series.d.ts +30 -0
  239. package/cjs/charts/range-column-3d/series.js +27 -0
  240. package/cjs/charts/range-column-3d/series.js.map +1 -0
  241. package/cjs/charts/ranking-bar/interface.js +1 -1
  242. package/cjs/charts/ranking-bar/interface.js.map +1 -1
  243. package/cjs/charts/ranking-bar/ranking-bar-transformer.js +1 -1
  244. package/cjs/charts/ranking-bar/ranking-bar-transformer.js.map +1 -1
  245. package/cjs/charts/ranking-bar/ranking-bar.js +1 -1
  246. package/cjs/charts/ranking-bar/ranking-bar.js.map +1 -1
  247. package/cjs/charts/ranking-list/constant.d.ts +2 -0
  248. package/cjs/charts/ranking-list/constant.js +75 -0
  249. package/cjs/charts/ranking-list/constant.js.map +1 -0
  250. package/cjs/charts/ranking-list/interface.d.ts +74 -0
  251. package/cjs/charts/ranking-list/interface.js +6 -0
  252. package/cjs/charts/ranking-list/interface.js.map +1 -0
  253. package/cjs/charts/ranking-list/ranking-list-transformer.d.ts +460 -0
  254. package/cjs/charts/ranking-list/ranking-list-transformer.js +383 -0
  255. package/cjs/charts/ranking-list/ranking-list-transformer.js.map +1 -0
  256. package/cjs/charts/ranking-list/ranking-list.d.ts +16 -0
  257. package/cjs/charts/ranking-list/ranking-list.js +34 -0
  258. package/cjs/charts/ranking-list/ranking-list.js.map +1 -0
  259. package/cjs/charts/ranking-list/utils.d.ts +7 -0
  260. package/cjs/charts/ranking-list/utils.js +51 -0
  261. package/cjs/charts/ranking-list/utils.js.map +1 -0
  262. package/cjs/charts/sequence-scatter-kde/constant.d.ts +3 -0
  263. package/cjs/charts/sequence-scatter-kde/constant.js +7 -0
  264. package/cjs/charts/sequence-scatter-kde/constant.js.map +1 -0
  265. package/cjs/charts/sequence-scatter-kde/interface.d.ts +29 -0
  266. package/cjs/charts/sequence-scatter-kde/interface.js +6 -0
  267. package/cjs/charts/sequence-scatter-kde/interface.js.map +1 -0
  268. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.d.ts +6 -0
  269. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js +142 -0
  270. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js.map +1 -0
  271. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.d.ts +16 -0
  272. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.js +34 -0
  273. package/cjs/charts/sequence-scatter-kde/sequence-scatter-kde.js.map +1 -0
  274. package/cjs/charts/sequence-scatter-kde/utils.d.ts +9 -0
  275. package/cjs/charts/sequence-scatter-kde/utils.js +42 -0
  276. package/cjs/charts/sequence-scatter-kde/utils.js.map +1 -0
  277. package/cjs/charts/sequence-scatter-link/interface.d.ts +59 -0
  278. package/cjs/charts/sequence-scatter-link/interface.js +6 -0
  279. package/cjs/charts/sequence-scatter-link/interface.js.map +1 -0
  280. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.d.ts +6 -0
  281. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.js +328 -0
  282. package/cjs/charts/sequence-scatter-link/sequence-scatter-link-transformer.js.map +1 -0
  283. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.d.ts +16 -0
  284. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.js +34 -0
  285. package/cjs/charts/sequence-scatter-link/sequence-scatter-link.js.map +1 -0
  286. package/cjs/charts/sequence-scatter-pixel/constant.d.ts +3 -0
  287. package/cjs/charts/sequence-scatter-pixel/constant.js +7 -0
  288. package/cjs/charts/sequence-scatter-pixel/constant.js.map +1 -0
  289. package/cjs/charts/sequence-scatter-pixel/interface.d.ts +29 -0
  290. package/cjs/charts/sequence-scatter-pixel/interface.js +6 -0
  291. package/cjs/charts/sequence-scatter-pixel/interface.js.map +1 -0
  292. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.d.ts +4 -0
  293. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js +68 -0
  294. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js.map +1 -0
  295. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.d.ts +16 -0
  296. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.js +34 -0
  297. package/cjs/charts/sequence-scatter-pixel/sequence-scatter-pixel.js.map +1 -0
  298. package/cjs/charts/sequence-scatter-pixel/utils.d.ts +3 -0
  299. package/cjs/charts/sequence-scatter-pixel/utils.js +54 -0
  300. package/cjs/charts/sequence-scatter-pixel/utils.js.map +1 -0
  301. package/cjs/charts/word-cloud-3d/animation.d.ts +4 -0
  302. package/cjs/charts/word-cloud-3d/animation.js +24 -0
  303. package/cjs/charts/word-cloud-3d/animation.js.map +1 -0
  304. package/cjs/charts/word-cloud-3d/chart-spec-transformer.d.ts +5 -0
  305. package/cjs/charts/word-cloud-3d/chart-spec-transformer.js +17 -0
  306. package/cjs/charts/word-cloud-3d/chart-spec-transformer.js.map +1 -0
  307. package/cjs/charts/word-cloud-3d/chart.d.ts +14 -0
  308. package/cjs/charts/word-cloud-3d/chart.js +31 -0
  309. package/cjs/charts/word-cloud-3d/chart.js.map +1 -0
  310. package/cjs/charts/word-cloud-3d/index.d.ts +4 -0
  311. package/cjs/charts/word-cloud-3d/index.js +22 -0
  312. package/cjs/charts/word-cloud-3d/index.js.map +1 -0
  313. package/cjs/charts/word-cloud-3d/interface.d.ts +22 -0
  314. package/cjs/charts/word-cloud-3d/interface.js +6 -0
  315. package/cjs/charts/word-cloud-3d/interface.js.map +1 -0
  316. package/cjs/charts/word-cloud-3d/series.d.ts +37 -0
  317. package/cjs/charts/word-cloud-3d/series.js +80 -0
  318. package/cjs/charts/word-cloud-3d/series.js.map +1 -0
  319. package/cjs/charts/word-cloud-3d/theme.d.ts +2 -0
  320. package/cjs/charts/word-cloud-3d/theme.js +14 -0
  321. package/cjs/charts/word-cloud-3d/theme.js.map +1 -0
  322. package/cjs/components/bar-link/bar-link.d.ts +1 -1
  323. package/cjs/components/bar-link/bar-link.js +5 -5
  324. package/cjs/components/bar-link/bar-link.js.map +1 -1
  325. package/cjs/components/bar-link/constant.js.map +1 -1
  326. package/cjs/components/bar-link/index.js +2 -1
  327. package/cjs/components/bar-link/index.js.map +1 -1
  328. package/cjs/components/bar-link/type.js.map +1 -1
  329. package/cjs/components/bar-link/util.d.ts +3 -4
  330. package/cjs/components/bar-link/util.js +10 -10
  331. package/cjs/components/bar-link/util.js.map +1 -1
  332. package/cjs/components/map-label/index.d.ts +2 -0
  333. package/cjs/components/map-label/index.js +21 -0
  334. package/cjs/components/map-label/index.js.map +1 -0
  335. package/cjs/components/map-label/layout.d.ts +23 -0
  336. package/cjs/components/map-label/layout.js +154 -0
  337. package/cjs/components/map-label/layout.js.map +1 -0
  338. package/cjs/components/map-label/map-label-transformer.d.ts +5 -0
  339. package/cjs/components/map-label/map-label-transformer.js +16 -0
  340. package/cjs/components/map-label/map-label-transformer.js.map +1 -0
  341. package/cjs/components/map-label/map-label.d.ts +53 -0
  342. package/cjs/components/map-label/map-label.js +266 -0
  343. package/cjs/components/map-label/map-label.js.map +1 -0
  344. package/cjs/components/map-label/theme.d.ts +2 -0
  345. package/cjs/components/map-label/theme.js +63 -0
  346. package/cjs/components/map-label/theme.js.map +1 -0
  347. package/cjs/components/map-label/type.d.ts +39 -0
  348. package/cjs/components/map-label/type.js +6 -0
  349. package/cjs/components/map-label/type.js.map +1 -0
  350. package/cjs/components/series-break/constant.js +1 -2
  351. package/cjs/components/series-break/constant.js.map +1 -1
  352. package/cjs/components/series-break/index.js.map +1 -1
  353. package/cjs/components/series-break/series-break.js.map +1 -1
  354. package/cjs/components/series-break/type.js.map +1 -1
  355. package/cjs/components/series-break/util.d.ts +2 -2
  356. package/cjs/components/series-break/util.js.map +1 -1
  357. package/cjs/components/series-label/constant.js.map +1 -1
  358. package/cjs/components/series-label/index.js.map +1 -1
  359. package/cjs/components/series-label/series-label.js +2 -2
  360. package/cjs/components/series-label/series-label.js.map +1 -1
  361. package/cjs/components/series-label/type.js.map +1 -1
  362. package/cjs/components/series-label/util.js +4 -4
  363. package/cjs/components/series-label/util.js.map +1 -1
  364. package/cjs/index.d.ts +13 -0
  365. package/cjs/index.js +19 -3
  366. package/cjs/index.js.map +1 -1
  367. package/cjs/type/index.js.map +1 -1
  368. package/cjs/type/type.js.map +1 -1
  369. package/cjs/utils/element.js.map +1 -1
  370. package/cjs/utils/math.js.map +1 -1
  371. package/esm/charts/3d/arc-3d.d.ts +11 -0
  372. package/esm/charts/3d/arc-3d.js +25 -0
  373. package/esm/charts/3d/arc-3d.js.map +1 -0
  374. package/esm/charts/3d/enum.d.ts +33 -0
  375. package/esm/charts/3d/enum.js +36 -0
  376. package/esm/charts/3d/enum.js.map +1 -0
  377. package/esm/charts/3d/interface.d.ts +13 -0
  378. package/esm/charts/3d/interface.js +2 -0
  379. package/esm/charts/3d/interface.js.map +1 -0
  380. package/esm/charts/3d/layout.d.ts +21 -0
  381. package/esm/charts/3d/layout.js +87 -0
  382. package/esm/charts/3d/layout.js.map +1 -0
  383. package/esm/charts/3d/plugin.d.ts +12 -0
  384. package/esm/charts/3d/plugin.js +31 -0
  385. package/esm/charts/3d/plugin.js.map +1 -0
  386. package/esm/charts/3d/pyramid-3d.d.ts +11 -0
  387. package/esm/charts/3d/pyramid-3d.js +26 -0
  388. package/esm/charts/3d/pyramid-3d.js.map +1 -0
  389. package/esm/charts/3d/rect-3d.d.ts +13 -0
  390. package/esm/charts/3d/rect-3d.js +32 -0
  391. package/esm/charts/3d/rect-3d.js.map +1 -0
  392. package/esm/charts/3d/util.d.ts +3 -0
  393. package/esm/charts/3d/util.js +10 -0
  394. package/esm/charts/3d/util.js.map +1 -0
  395. package/esm/charts/axis-3d/band-axis.d.ts +46 -0
  396. package/esm/charts/axis-3d/band-axis.js +25 -0
  397. package/esm/charts/axis-3d/band-axis.js.map +1 -0
  398. package/esm/charts/axis-3d/index.d.ts +1 -0
  399. package/esm/charts/axis-3d/index.js +19 -0
  400. package/esm/charts/axis-3d/index.js.map +1 -0
  401. package/esm/charts/axis-3d/linear-axis.d.ts +42 -0
  402. package/esm/charts/axis-3d/linear-axis.js +30 -0
  403. package/esm/charts/axis-3d/linear-axis.js.map +1 -0
  404. package/esm/charts/axis-3d/log-axis.d.ts +46 -0
  405. package/esm/charts/axis-3d/log-axis.js +25 -0
  406. package/esm/charts/axis-3d/log-axis.js.map +1 -0
  407. package/esm/charts/axis-3d/symlog-axis.d.ts +46 -0
  408. package/esm/charts/axis-3d/symlog-axis.js +25 -0
  409. package/esm/charts/axis-3d/symlog-axis.js.map +1 -0
  410. package/esm/charts/axis-3d/theme.d.ts +2 -0
  411. package/esm/charts/axis-3d/theme.js +6 -0
  412. package/esm/charts/axis-3d/theme.js.map +1 -0
  413. package/esm/charts/axis-3d/time-axis.d.ts +45 -0
  414. package/esm/charts/axis-3d/time-axis.js +24 -0
  415. package/esm/charts/axis-3d/time-axis.js.map +1 -0
  416. package/esm/charts/axis-3d/util.d.ts +2 -0
  417. package/esm/charts/axis-3d/util.js +39 -0
  418. package/esm/charts/axis-3d/util.js.map +1 -0
  419. package/esm/charts/bar-3d/animation.d.ts +1 -0
  420. package/esm/charts/bar-3d/animation.js +11 -0
  421. package/esm/charts/bar-3d/animation.js.map +1 -0
  422. package/esm/charts/bar-3d/chart-spec-transformer.d.ts +6 -0
  423. package/esm/charts/bar-3d/chart-spec-transformer.js +11 -0
  424. package/esm/charts/bar-3d/chart-spec-transformer.js.map +1 -0
  425. package/esm/charts/bar-3d/chart.d.ts +13 -0
  426. package/esm/charts/bar-3d/chart.js +25 -0
  427. package/esm/charts/bar-3d/chart.js.map +1 -0
  428. package/esm/charts/bar-3d/constant.d.ts +12 -0
  429. package/esm/charts/bar-3d/constant.js +11 -0
  430. package/esm/charts/bar-3d/constant.js.map +1 -0
  431. package/esm/charts/bar-3d/index.d.ts +5 -0
  432. package/esm/charts/bar-3d/index.js +10 -0
  433. package/esm/charts/bar-3d/index.js.map +1 -0
  434. package/esm/charts/bar-3d/interface.d.ts +13 -0
  435. package/esm/charts/bar-3d/interface.js +2 -0
  436. package/esm/charts/bar-3d/interface.js.map +1 -0
  437. package/esm/charts/bar-3d/series-spec-transformer.d.ts +5 -0
  438. package/esm/charts/bar-3d/series-spec-transformer.js +7 -0
  439. package/esm/charts/bar-3d/series-spec-transformer.js.map +1 -0
  440. package/esm/charts/bar-3d/series.d.ts +17 -0
  441. package/esm/charts/bar-3d/series.js +30 -0
  442. package/esm/charts/bar-3d/series.js.map +1 -0
  443. package/esm/charts/bar-3d/theme.d.ts +2 -0
  444. package/esm/charts/bar-3d/theme.js +15 -0
  445. package/esm/charts/bar-3d/theme.js.map +1 -0
  446. package/esm/charts/conversion-funnel/arrow-data-transform.js.map +1 -1
  447. package/esm/charts/conversion-funnel/constants.d.ts +21 -0
  448. package/esm/charts/conversion-funnel/constants.js +25 -0
  449. package/esm/charts/conversion-funnel/constants.js.map +1 -0
  450. package/esm/charts/conversion-funnel/conversion-funnel-transformer.d.ts +2 -3
  451. package/esm/charts/conversion-funnel/conversion-funnel-transformer.js +4 -3
  452. package/esm/charts/conversion-funnel/conversion-funnel-transformer.js.map +1 -1
  453. package/esm/charts/conversion-funnel/conversion-funnel.d.ts +0 -21
  454. package/esm/charts/conversion-funnel/conversion-funnel.js +0 -25
  455. package/esm/charts/conversion-funnel/conversion-funnel.js.map +1 -1
  456. package/esm/charts/conversion-funnel/index.js.map +1 -1
  457. package/esm/charts/conversion-funnel/interface.js +1 -1
  458. package/esm/charts/conversion-funnel/interface.js.map +1 -1
  459. package/esm/charts/conversion-funnel/util.d.ts +1 -1
  460. package/esm/charts/conversion-funnel/util.js +1 -1
  461. package/esm/charts/conversion-funnel/util.js.map +1 -1
  462. package/esm/charts/funnel-3d/chart.d.ts +12 -0
  463. package/esm/charts/funnel-3d/chart.js +25 -0
  464. package/esm/charts/funnel-3d/chart.js.map +1 -0
  465. package/esm/charts/funnel-3d/constant.d.ts +80 -0
  466. package/esm/charts/funnel-3d/constant.js +25 -0
  467. package/esm/charts/funnel-3d/constant.js.map +1 -0
  468. package/esm/charts/funnel-3d/index.d.ts +4 -0
  469. package/esm/charts/funnel-3d/index.js +8 -0
  470. package/esm/charts/funnel-3d/index.js.map +1 -0
  471. package/esm/charts/funnel-3d/interface.d.ts +18 -0
  472. package/esm/charts/funnel-3d/interface.js +2 -0
  473. package/esm/charts/funnel-3d/interface.js.map +1 -0
  474. package/esm/charts/funnel-3d/series-spec-transformer.d.ts +5 -0
  475. package/esm/charts/funnel-3d/series-spec-transformer.js +8 -0
  476. package/esm/charts/funnel-3d/series-spec-transformer.js.map +1 -0
  477. package/esm/charts/funnel-3d/series.d.ts +99 -0
  478. package/esm/charts/funnel-3d/series.js +84 -0
  479. package/esm/charts/funnel-3d/series.js.map +1 -0
  480. package/esm/charts/funnel-3d/theme.d.ts +1 -0
  481. package/esm/charts/funnel-3d/theme.js +4 -0
  482. package/esm/charts/funnel-3d/theme.js.map +1 -0
  483. package/esm/charts/histogram-3d/chart.d.ts +12 -0
  484. package/esm/charts/histogram-3d/chart.js +30 -0
  485. package/esm/charts/histogram-3d/chart.js.map +1 -0
  486. package/esm/charts/histogram-3d/index.d.ts +2 -0
  487. package/esm/charts/histogram-3d/index.js +4 -0
  488. package/esm/charts/histogram-3d/index.js.map +1 -0
  489. package/esm/charts/histogram-3d/interface.d.ts +5 -0
  490. package/esm/charts/histogram-3d/interface.js +2 -0
  491. package/esm/charts/histogram-3d/interface.js.map +1 -0
  492. package/esm/charts/image-cloud/image-cloud-transformer.d.ts +6 -0
  493. package/esm/charts/image-cloud/image-cloud-transformer.js +11 -0
  494. package/esm/charts/image-cloud/image-cloud-transformer.js.map +1 -0
  495. package/esm/charts/image-cloud/image-cloud.d.ts +12 -0
  496. package/esm/charts/image-cloud/image-cloud.js +22 -0
  497. package/esm/charts/image-cloud/image-cloud.js.map +1 -0
  498. package/esm/charts/image-cloud/index.d.ts +2 -0
  499. package/esm/charts/image-cloud/index.js +4 -0
  500. package/esm/charts/image-cloud/index.js.map +1 -0
  501. package/esm/charts/image-cloud/interface.d.ts +6 -0
  502. package/esm/charts/image-cloud/interface.js +2 -0
  503. package/esm/charts/image-cloud/interface.js.map +1 -0
  504. package/esm/charts/image-cloud/series/animation.d.ts +23 -0
  505. package/esm/charts/image-cloud/series/animation.js +94 -0
  506. package/esm/charts/image-cloud/series/animation.js.map +1 -0
  507. package/esm/charts/image-cloud/series/constant.d.ts +76 -0
  508. package/esm/charts/image-cloud/series/constant.js +23 -0
  509. package/esm/charts/image-cloud/series/constant.js.map +1 -0
  510. package/esm/charts/image-cloud/series/image-cloud.d.ts +137 -0
  511. package/esm/charts/image-cloud/series/image-cloud.js +198 -0
  512. package/esm/charts/image-cloud/series/image-cloud.js.map +1 -0
  513. package/esm/charts/image-cloud/series/index.d.ts +2 -0
  514. package/esm/charts/image-cloud/series/index.js +4 -0
  515. package/esm/charts/image-cloud/series/index.js.map +1 -0
  516. package/esm/charts/image-cloud/series/interface.d.ts +25 -0
  517. package/esm/charts/image-cloud/series/interface.js +2 -0
  518. package/esm/charts/image-cloud/series/interface.js.map +1 -0
  519. package/esm/charts/image-cloud/series/tooltip-helper.d.ts +10 -0
  520. package/esm/charts/image-cloud/series/tooltip-helper.js +22 -0
  521. package/esm/charts/image-cloud/series/tooltip-helper.js.map +1 -0
  522. package/esm/charts/pictogram/element-highlight-by-graphic-name.d.ts +12 -0
  523. package/esm/charts/pictogram/element-highlight-by-graphic-name.js +49 -0
  524. package/esm/charts/pictogram/element-highlight-by-graphic-name.js.map +1 -0
  525. package/esm/charts/pictogram/element-select-by-graphic-name.d.ts +8 -0
  526. package/esm/charts/pictogram/element-select-by-graphic-name.js +25 -0
  527. package/esm/charts/pictogram/element-select-by-graphic-name.js.map +1 -0
  528. package/esm/charts/pictogram/index.d.ts +5 -0
  529. package/esm/charts/pictogram/index.js +10 -0
  530. package/esm/charts/pictogram/index.js.map +1 -0
  531. package/esm/charts/pictogram/interface.d.ts +6 -0
  532. package/esm/charts/pictogram/interface.js +2 -0
  533. package/esm/charts/pictogram/interface.js.map +1 -0
  534. package/esm/charts/pictogram/pictogram-transformer.d.ts +8 -0
  535. package/esm/charts/pictogram/pictogram-transformer.js +18 -0
  536. package/esm/charts/pictogram/pictogram-transformer.js.map +1 -0
  537. package/esm/charts/pictogram/pictogram.d.ts +12 -0
  538. package/esm/charts/pictogram/pictogram.js +22 -0
  539. package/esm/charts/pictogram/pictogram.js.map +1 -0
  540. package/esm/charts/pictogram/series/constant.d.ts +73 -0
  541. package/esm/charts/pictogram/series/constant.js +23 -0
  542. package/esm/charts/pictogram/series/constant.js.map +1 -0
  543. package/esm/charts/pictogram/series/interface.d.ts +13 -0
  544. package/esm/charts/pictogram/series/interface.js +2 -0
  545. package/esm/charts/pictogram/series/interface.js.map +1 -0
  546. package/esm/charts/pictogram/series/pictogram-transformer.d.ts +4 -0
  547. package/esm/charts/pictogram/series/pictogram-transformer.js +19 -0
  548. package/esm/charts/pictogram/series/pictogram-transformer.js.map +1 -0
  549. package/esm/charts/pictogram/series/pictogram.d.ts +129 -0
  550. package/esm/charts/pictogram/series/pictogram.js +305 -0
  551. package/esm/charts/pictogram/series/pictogram.js.map +1 -0
  552. package/esm/charts/pictogram/series/svg-source.d.ts +7 -0
  553. package/esm/charts/pictogram/series/svg-source.js +33 -0
  554. package/esm/charts/pictogram/series/svg-source.js.map +1 -0
  555. package/esm/charts/pictogram/series/tooltip-helper.d.ts +7 -0
  556. package/esm/charts/pictogram/series/tooltip-helper.js +18 -0
  557. package/esm/charts/pictogram/series/tooltip-helper.js.map +1 -0
  558. package/esm/charts/pictogram/series/transform.d.ts +76 -0
  559. package/esm/charts/pictogram/series/transform.js +144 -0
  560. package/esm/charts/pictogram/series/transform.js.map +1 -0
  561. package/esm/charts/pie-3d/animation.d.ts +1 -0
  562. package/esm/charts/pie-3d/animation.js +11 -0
  563. package/esm/charts/pie-3d/animation.js.map +1 -0
  564. package/esm/charts/pie-3d/chart-spec-transformer.d.ts +6 -0
  565. package/esm/charts/pie-3d/chart-spec-transformer.js +10 -0
  566. package/esm/charts/pie-3d/chart-spec-transformer.js.map +1 -0
  567. package/esm/charts/pie-3d/chart.d.ts +13 -0
  568. package/esm/charts/pie-3d/chart.js +26 -0
  569. package/esm/charts/pie-3d/chart.js.map +1 -0
  570. package/esm/charts/pie-3d/constant.d.ts +70 -0
  571. package/esm/charts/pie-3d/constant.js +13 -0
  572. package/esm/charts/pie-3d/constant.js.map +1 -0
  573. package/esm/charts/pie-3d/index.d.ts +5 -0
  574. package/esm/charts/pie-3d/index.js +10 -0
  575. package/esm/charts/pie-3d/index.js.map +1 -0
  576. package/esm/charts/pie-3d/interface.d.ts +17 -0
  577. package/esm/charts/pie-3d/interface.js +2 -0
  578. package/esm/charts/pie-3d/interface.js.map +1 -0
  579. package/esm/charts/pie-3d/series-spec-transformer.d.ts +5 -0
  580. package/esm/charts/pie-3d/series-spec-transformer.js +8 -0
  581. package/esm/charts/pie-3d/series-spec-transformer.js.map +1 -0
  582. package/esm/charts/pie-3d/series.d.ts +88 -0
  583. package/esm/charts/pie-3d/series.js +45 -0
  584. package/esm/charts/pie-3d/series.js.map +1 -0
  585. package/esm/charts/pie-3d/theme.d.ts +2 -0
  586. package/esm/charts/pie-3d/theme.js +15 -0
  587. package/esm/charts/pie-3d/theme.js.map +1 -0
  588. package/esm/charts/range-column-3d/chart-spec-transformer.d.ts +5 -0
  589. package/esm/charts/range-column-3d/chart-spec-transformer.js +11 -0
  590. package/esm/charts/range-column-3d/chart-spec-transformer.js.map +1 -0
  591. package/esm/charts/range-column-3d/chart.d.ts +13 -0
  592. package/esm/charts/range-column-3d/chart.js +32 -0
  593. package/esm/charts/range-column-3d/chart.js.map +1 -0
  594. package/esm/charts/range-column-3d/constant.d.ts +19 -0
  595. package/esm/charts/range-column-3d/constant.js +13 -0
  596. package/esm/charts/range-column-3d/constant.js.map +1 -0
  597. package/esm/charts/range-column-3d/index.d.ts +5 -0
  598. package/esm/charts/range-column-3d/index.js +10 -0
  599. package/esm/charts/range-column-3d/index.js.map +1 -0
  600. package/esm/charts/range-column-3d/interface.d.ts +8 -0
  601. package/esm/charts/range-column-3d/interface.js +2 -0
  602. package/esm/charts/range-column-3d/interface.js.map +1 -0
  603. package/esm/charts/range-column-3d/series-spec-transformer.d.ts +6 -0
  604. package/esm/charts/range-column-3d/series-spec-transformer.js +9 -0
  605. package/esm/charts/range-column-3d/series-spec-transformer.js.map +1 -0
  606. package/esm/charts/range-column-3d/series.d.ts +30 -0
  607. package/esm/charts/range-column-3d/series.js +24 -0
  608. package/esm/charts/range-column-3d/series.js.map +1 -0
  609. package/esm/charts/ranking-bar/interface.js +1 -1
  610. package/esm/charts/ranking-bar/interface.js.map +1 -1
  611. package/esm/charts/ranking-bar/ranking-bar-transformer.js +1 -1
  612. package/esm/charts/ranking-bar/ranking-bar-transformer.js.map +1 -1
  613. package/esm/charts/ranking-bar/ranking-bar.js +1 -1
  614. package/esm/charts/ranking-bar/ranking-bar.js.map +1 -1
  615. package/esm/charts/ranking-list/constant.d.ts +2 -0
  616. package/esm/charts/ranking-list/constant.js +69 -0
  617. package/esm/charts/ranking-list/constant.js.map +1 -0
  618. package/esm/charts/ranking-list/interface.d.ts +74 -0
  619. package/esm/charts/ranking-list/interface.js +2 -0
  620. package/esm/charts/ranking-list/interface.js.map +1 -0
  621. package/esm/charts/ranking-list/ranking-list-transformer.d.ts +460 -0
  622. package/esm/charts/ranking-list/ranking-list-transformer.js +383 -0
  623. package/esm/charts/ranking-list/ranking-list-transformer.js.map +1 -0
  624. package/esm/charts/ranking-list/ranking-list.d.ts +16 -0
  625. package/esm/charts/ranking-list/ranking-list.js +27 -0
  626. package/esm/charts/ranking-list/ranking-list.js.map +1 -0
  627. package/esm/charts/ranking-list/utils.d.ts +7 -0
  628. package/esm/charts/ranking-list/utils.js +41 -0
  629. package/esm/charts/ranking-list/utils.js.map +1 -0
  630. package/esm/charts/sequence-scatter-kde/constant.d.ts +3 -0
  631. package/esm/charts/sequence-scatter-kde/constant.js +6 -0
  632. package/esm/charts/sequence-scatter-kde/constant.js.map +1 -0
  633. package/esm/charts/sequence-scatter-kde/interface.d.ts +29 -0
  634. package/esm/charts/sequence-scatter-kde/interface.js +2 -0
  635. package/esm/charts/sequence-scatter-kde/interface.js.map +1 -0
  636. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.d.ts +6 -0
  637. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js +137 -0
  638. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde-transformer.js.map +1 -0
  639. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.d.ts +16 -0
  640. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.js +28 -0
  641. package/esm/charts/sequence-scatter-kde/sequence-scatter-kde.js.map +1 -0
  642. package/esm/charts/sequence-scatter-kde/utils.d.ts +9 -0
  643. package/esm/charts/sequence-scatter-kde/utils.js +34 -0
  644. package/esm/charts/sequence-scatter-kde/utils.js.map +1 -0
  645. package/esm/charts/sequence-scatter-link/interface.d.ts +59 -0
  646. package/esm/charts/sequence-scatter-link/interface.js +2 -0
  647. package/esm/charts/sequence-scatter-link/interface.js.map +1 -0
  648. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.d.ts +6 -0
  649. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.js +321 -0
  650. package/esm/charts/sequence-scatter-link/sequence-scatter-link-transformer.js.map +1 -0
  651. package/esm/charts/sequence-scatter-link/sequence-scatter-link.d.ts +16 -0
  652. package/esm/charts/sequence-scatter-link/sequence-scatter-link.js +28 -0
  653. package/esm/charts/sequence-scatter-link/sequence-scatter-link.js.map +1 -0
  654. package/esm/charts/sequence-scatter-pixel/constant.d.ts +3 -0
  655. package/esm/charts/sequence-scatter-pixel/constant.js +6 -0
  656. package/esm/charts/sequence-scatter-pixel/constant.js.map +1 -0
  657. package/esm/charts/sequence-scatter-pixel/interface.d.ts +29 -0
  658. package/esm/charts/sequence-scatter-pixel/interface.js +2 -0
  659. package/esm/charts/sequence-scatter-pixel/interface.js.map +1 -0
  660. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.d.ts +4 -0
  661. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js +64 -0
  662. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel-transformer.js.map +1 -0
  663. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.d.ts +16 -0
  664. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.js +28 -0
  665. package/esm/charts/sequence-scatter-pixel/sequence-scatter-pixel.js.map +1 -0
  666. package/esm/charts/sequence-scatter-pixel/utils.d.ts +3 -0
  667. package/esm/charts/sequence-scatter-pixel/utils.js +46 -0
  668. package/esm/charts/sequence-scatter-pixel/utils.js.map +1 -0
  669. package/esm/charts/word-cloud-3d/animation.d.ts +4 -0
  670. package/esm/charts/word-cloud-3d/animation.js +18 -0
  671. package/esm/charts/word-cloud-3d/animation.js.map +1 -0
  672. package/esm/charts/word-cloud-3d/chart-spec-transformer.d.ts +5 -0
  673. package/esm/charts/word-cloud-3d/chart-spec-transformer.js +9 -0
  674. package/esm/charts/word-cloud-3d/chart-spec-transformer.js.map +1 -0
  675. package/esm/charts/word-cloud-3d/chart.d.ts +14 -0
  676. package/esm/charts/word-cloud-3d/chart.js +29 -0
  677. package/esm/charts/word-cloud-3d/chart.js.map +1 -0
  678. package/esm/charts/word-cloud-3d/index.d.ts +4 -0
  679. package/esm/charts/word-cloud-3d/index.js +8 -0
  680. package/esm/charts/word-cloud-3d/index.js.map +1 -0
  681. package/esm/charts/word-cloud-3d/interface.d.ts +22 -0
  682. package/esm/charts/word-cloud-3d/interface.js +2 -0
  683. package/esm/charts/word-cloud-3d/interface.js.map +1 -0
  684. package/esm/charts/word-cloud-3d/series.d.ts +37 -0
  685. package/esm/charts/word-cloud-3d/series.js +74 -0
  686. package/esm/charts/word-cloud-3d/series.js.map +1 -0
  687. package/esm/charts/word-cloud-3d/theme.d.ts +2 -0
  688. package/esm/charts/word-cloud-3d/theme.js +10 -0
  689. package/esm/charts/word-cloud-3d/theme.js.map +1 -0
  690. package/esm/components/bar-link/bar-link.d.ts +1 -1
  691. package/esm/components/bar-link/bar-link.js +1 -1
  692. package/esm/components/bar-link/bar-link.js.map +1 -1
  693. package/esm/components/bar-link/constant.js.map +1 -1
  694. package/esm/components/bar-link/index.js +2 -1
  695. package/esm/components/bar-link/index.js.map +1 -1
  696. package/esm/components/bar-link/type.js.map +1 -1
  697. package/esm/components/bar-link/util.d.ts +3 -4
  698. package/esm/components/bar-link/util.js +10 -11
  699. package/esm/components/bar-link/util.js.map +1 -1
  700. package/esm/components/map-label/index.d.ts +2 -0
  701. package/esm/components/map-label/index.js +4 -0
  702. package/esm/components/map-label/index.js.map +1 -0
  703. package/esm/components/map-label/layout.d.ts +23 -0
  704. package/esm/components/map-label/layout.js +143 -0
  705. package/esm/components/map-label/layout.js.map +1 -0
  706. package/esm/components/map-label/map-label-transformer.d.ts +5 -0
  707. package/esm/components/map-label/map-label-transformer.js +10 -0
  708. package/esm/components/map-label/map-label-transformer.js.map +1 -0
  709. package/esm/components/map-label/map-label.d.ts +53 -0
  710. package/esm/components/map-label/map-label.js +265 -0
  711. package/esm/components/map-label/map-label.js.map +1 -0
  712. package/esm/components/map-label/theme.d.ts +2 -0
  713. package/esm/components/map-label/theme.js +57 -0
  714. package/esm/components/map-label/theme.js.map +1 -0
  715. package/esm/components/map-label/type.d.ts +39 -0
  716. package/esm/components/map-label/type.js +2 -0
  717. package/esm/components/map-label/type.js.map +1 -0
  718. package/esm/components/series-break/constant.js +1 -2
  719. package/esm/components/series-break/constant.js.map +1 -1
  720. package/esm/components/series-break/index.js.map +1 -1
  721. package/esm/components/series-break/series-break.js.map +1 -1
  722. package/esm/components/series-break/type.js.map +1 -1
  723. package/esm/components/series-break/util.d.ts +2 -2
  724. package/esm/components/series-break/util.js.map +1 -1
  725. package/esm/components/series-label/constant.js.map +1 -1
  726. package/esm/components/series-label/index.js.map +1 -1
  727. package/esm/components/series-label/series-label.js +1 -1
  728. package/esm/components/series-label/series-label.js.map +1 -1
  729. package/esm/components/series-label/type.js.map +1 -1
  730. package/esm/components/series-label/util.js +4 -4
  731. package/esm/components/series-label/util.js.map +1 -1
  732. package/esm/index.d.ts +13 -0
  733. package/esm/index.js +27 -1
  734. package/esm/index.js.map +1 -1
  735. package/esm/type/index.js.map +1 -1
  736. package/esm/type/type.js.map +1 -1
  737. package/esm/utils/element.js.map +1 -1
  738. package/esm/utils/math.js.map +1 -1
  739. package/package.json +10 -9
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-break/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["/**\n * 支持轴翻转\n */\nimport type { ILinearAxisBreakSpec, ILinearAxisSpec } from '@visactor/vchart/esm/component/axis';\nimport { ICartesianSeries, IMarkGraphic, ISpec } from '@visactor/vchart';\nimport { SeriesBreakData } from './type';\nimport { array, getIntersectPoint, IPointLike, isValid, PointService } from '@visactor/vutils';\nimport { Point } from '@visactor/vrender-components';\nimport { IArea, ILine } from '@visactor/vrender-core';\nimport { getAllRegionBounds } from '../../utils/element';\nimport { isNumberEqual } from '../../utils/math';\nimport { SERIES_BREAK } from './constant';\n\nconst barOffset = 2;\nconst lineOffset = 10;\nconst areaOffset = 0;\n\n/**\n * 获取系列标签的 spec 配置\n * @param position 显示位置\n * @param config 系列标签的样式配置\n * @returns\n */\nexport function getSeriesBreakConfig(axesSpec: ILinearAxisSpec[], axesIndex?: number[]) {\n return {\n type: 'component',\n componentType: SERIES_BREAK,\n interactive: true,\n zIndex: 500,\n\n style: {\n data: (datum: any, ctx: any) => {\n const seriesBreakData: SeriesBreakData[] = [];\n const vchart = ctx.vchart;\n const chart = vchart.getChart();\n const series = chart.getAllSeries()[0] as ICartesianSeries;\n const isHorizontal = series.direction === 'horizontal';\n axesSpec.forEach((spec: any, index: number) => {\n const axisId = spec.id;\n const axisModel = isValid(axisId)\n ? chart.getComponentByUserId(axisId)\n : axesIndex && isValid(axesIndex[index])\n ? chart.getComponentByIndex('axes', axesIndex[index])\n : chart.getComponentsByKey('axes').filter((axis: { getSpec: () => any }) => {\n const axisInnerSpec = axis.getSpec();\n\n return axisInnerSpec.breaks === spec.breaks;\n })?.[0];\n\n if (!axisModel) {\n return;\n }\n const parsedAxisId = axisId ?? `${axisModel.type}-${axisModel.id}`;\n\n const regionBounds = getAllRegionBounds(axisModel.getRegions());\n\n // todo 这里用到了内部变量,不太安全\n array(axisModel._break?.breaks).forEach((breakConfig: ILinearAxisBreakSpec) => {\n const { range, breakSymbol, gap = 5 } = breakConfig;\n const pos1 = axisModel.valueToPosition(range[0]);\n const pos2 = axisModel.valueToPosition(range[1]);\n\n const posY = (pos1 + pos2) / 2 + (isHorizontal ? regionBounds.x1 : regionBounds.y1);\n\n chart.getAllSeries().forEach((s: ICartesianSeries) => {\n if (s.type === 'bar' || s.type === 'waterfall') {\n const mark = s.getMarkInName('bar');\n const graphics = mark.getGraphics();\n\n graphics.forEach((element: IMarkGraphic) => {\n const elementBounds = element.AABBBounds;\n let shouldDrawBreak = false;\n let startX;\n let startY;\n let endX;\n let endY;\n if (isHorizontal) {\n shouldDrawBreak =\n elementBounds.x1 < (pos1 + pos2 - (gap as number)) / 2 &&\n elementBounds.x2 > (pos1 + pos2 + gap) / 2;\n\n startX = posY;\n startY = Math.max(elementBounds.y1 + regionBounds.y1 - barOffset, regionBounds.y1);\n\n endX = posY;\n endY = Math.min(elementBounds.y2 + regionBounds.y1 + barOffset, regionBounds.y2);\n } else {\n shouldDrawBreak =\n elementBounds.y1 < (pos1 + pos2 - (gap as number)) / 2 &&\n elementBounds.y2 > (pos1 + pos2 + gap) / 2;\n startX = Math.max(elementBounds.x1 + regionBounds.x1 - barOffset, regionBounds.x1);\n startY = posY;\n endX = Math.min(elementBounds.x2 + regionBounds.x1 + barOffset, regionBounds.x2);\n endY = posY;\n }\n\n if (shouldDrawBreak) {\n seriesBreakData.push({\n start: {\n x: startX,\n y: startY\n },\n end: {\n x: endX,\n y: endY\n },\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n }\n });\n } else if (s.type === 'line') {\n // 求水平直线/垂直线同 line path 的交点\n const mark = s.getMarkInName(s.type);\n const graphics = mark.getGraphics();\n graphics.forEach(graphicItem => {\n const points = getAreaOrLinePathPoints(graphicItem, 'line');\n points.forEach(linePoints => {\n // 开始查找交点\n const intersections = getIntersectionsFromLineAndPolyline(\n isHorizontal\n ? {\n start: { x: (pos1 + pos2) / 2, y: 0 },\n end: { x: (pos1 + pos2) / 2, y: regionBounds.y2 - regionBounds.y1 }\n }\n : {\n start: { x: 0, y: (pos1 + pos2) / 2 },\n end: { x: regionBounds.x2 - regionBounds.x1, y: (pos1 + pos2) / 2 }\n },\n linePoints\n );\n\n intersections.forEach(intersection => {\n let start;\n let end;\n if (isHorizontal) {\n start = {\n x: posY,\n y: Math.max(intersection[1] + regionBounds.y1 - lineOffset, regionBounds.y1)\n };\n end = {\n x: posY,\n y: Math.min(intersection[1] + regionBounds.y1 + lineOffset, regionBounds.y2)\n };\n } else {\n start = {\n x: Math.max(intersection[0] + regionBounds.x1 - lineOffset, regionBounds.x1),\n y: posY\n };\n end = {\n x: Math.min(intersection[0] + regionBounds.x1 + lineOffset, regionBounds.x2),\n y: posY\n };\n }\n seriesBreakData.push({\n start,\n end,\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n });\n });\n });\n } else if (s.type === 'area') {\n // 默认面积去全部堆叠\n const mark = s.getMarkInName('area');\n const graphics = mark.getGraphics();\n graphics.forEach(graphicItem => {\n const points = getAreaOrLinePathPoints(graphicItem, 'area');\n points.forEach(areaPoints => {\n const intersections = getIntersectionsFromLineAndPolyline(\n isHorizontal\n ? {\n start: { x: (pos1 + pos2) / 2, y: 0 },\n end: { x: (pos1 + pos2) / 2, y: regionBounds.y2 - regionBounds.y1 }\n }\n : {\n start: { x: 0, y: (pos1 + pos2) / 2 },\n end: { x: regionBounds.x2 - regionBounds.x1, y: (pos1 + pos2) / 2 }\n },\n areaPoints\n );\n\n intersections.sort((a, b) => a[0] - b[0]);\n\n for (let index = 0; index < intersections.length - 1; index++) {\n const lineStart = {\n x: intersections[index][0],\n y: intersections[index][1]\n };\n const lineEnd = {\n x: intersections[index + 1][0],\n y: intersections[index + 1][1]\n };\n if (\n isPointInPolygon(\n isHorizontal\n ? {\n x: lineStart.x,\n y: (lineStart.y + lineEnd.y) / 2\n }\n : {\n x: (lineStart.x + lineEnd.x) / 2,\n y: lineStart.y\n },\n areaPoints\n )\n ) {\n let start;\n let end;\n if (isHorizontal) {\n start = {\n x: lineStart.x + regionBounds.x1,\n y: Math.max(lineStart.y + regionBounds.y1 - areaOffset, regionBounds.y1)\n };\n end = {\n x: lineEnd.x + regionBounds.x1,\n y: Math.min(lineEnd.y + regionBounds.y1 + areaOffset, regionBounds.y2)\n };\n } else {\n start = {\n x: Math.max(lineStart.x + regionBounds.x1 - areaOffset, regionBounds.x1),\n y: lineStart.y + regionBounds.y1\n };\n end = {\n x: Math.min(lineEnd.x + regionBounds.x1 + areaOffset, regionBounds.x2),\n y: lineEnd.y + regionBounds.y1\n };\n }\n seriesBreakData.push({\n start,\n end,\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n }\n }\n });\n });\n }\n });\n });\n });\n\n return seriesBreakData;\n }\n }\n };\n}\n\nfunction getIntersectionsFromLineAndPolyline(line: { start: Point; end: Point }, points: Point[]) {\n const intersections: [number, number][] = [];\n for (let index = 1; index < points.length; index++) {\n const intersection = getIntersectPoint(\n [line.start.x, line.start.y],\n [line.end.x, line.end.y],\n [points[index].x, points[index].y],\n [points[index - 1].x, points[index - 1].y]\n );\n if (\n intersection &&\n !intersections.find(point =>\n isNumberEqual(\n PointService.distancePP(\n { x: point[0], y: point[1] },\n { x: (intersection as [number, number])[0], y: (intersection as [number, number])[1] }\n ),\n 0\n )\n )\n ) {\n intersections.push(intersection as [number, number]);\n }\n }\n return intersections;\n}\n\nfunction getAreaOrLinePathPoints(shape: IArea | ILine, type: 'line' | 'area') {\n const { points, segments } = shape.attribute;\n const pathPoints: Point[][] = [];\n let eachPathPoints: Point[] = [];\n const parsePoints = (points: IPointLike[]) => {\n if (points && points.length) {\n let basePoints: IPointLike[] = [];\n points.forEach(point => {\n if (point.defined === false) {\n pathPoints.push(eachPathPoints);\n if (type === 'area' && basePoints.length) {\n for (let i = basePoints.length - 1; i >= 0; i--) {\n eachPathPoints.push({\n x: basePoints[i].x,\n y: basePoints[i].y\n });\n }\n\n eachPathPoints.push(eachPathPoints[0]);\n }\n eachPathPoints = [];\n basePoints = [];\n } else {\n eachPathPoints.push({\n x: point.x,\n y: point.y\n });\n\n type === 'area' && basePoints.push({ x: point.x1 ?? point.x, y: point.y1 ?? point.y });\n }\n });\n\n if (type === 'area' && basePoints.length) {\n for (let i = basePoints.length - 1; i >= 0; i--) {\n eachPathPoints.push({\n x: basePoints[i].x,\n y: basePoints[i].y\n });\n }\n eachPathPoints.push(eachPathPoints[0]);\n }\n\n pathPoints.push(eachPathPoints);\n }\n };\n\n if (points && points.length) {\n parsePoints(points);\n } else if (segments && segments.length) {\n segments.forEach(seg => {\n parsePoints(seg.points);\n });\n }\n\n return pathPoints;\n}\n\nfunction isPointInPolygon(point: Point, polygon: Point[]) {\n const { x, y } = point;\n let inside = false;\n\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const { x: xi, y: yi } = polygon[i];\n const { x: xj, y: yj } = polygon[j];\n\n const intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;\n if (intersect) {\n inside = !inside;\n }\n }\n\n return inside;\n}\n\nexport const appendSeriesBreakConfig = (rawSpec: ISpec) => {\n if (rawSpec.axes?.length) {\n const breakedAxes = rawSpec.axes.filter((axis: any) => axis.breaks && axis.breaks.length && axis.visible !== false);\n\n if (breakedAxes.length) {\n (rawSpec as any).customMark = array((rawSpec as any).customMark).filter(\n (obj: any) => obj.componentType !== SERIES_BREAK\n );\n (rawSpec as any).customMark.push(\n getSeriesBreakConfig(\n breakedAxes as ILinearAxisSpec[],\n breakedAxes.map(axisSpec => {\n return rawSpec.axes.indexOf(axisSpec as any);\n })\n )\n );\n return true;\n }\n }\n\n return false;\n};\n"]}
1
+ {"version":3,"sources":["../src/components/series-break/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["/**\n * 支持轴翻转\n */\nimport type { ILinearAxisBreakSpec, ILinearAxisSpec } from '@visactor/vchart/esm/component/axis';\nimport type { ICartesianSeries, IMarkGraphic, ISpec } from '@visactor/vchart';\nimport type { SeriesBreakData } from './type';\nimport type { IPointLike } from '@visactor/vutils';\nimport { array, getIntersectPoint, isValid, PointService } from '@visactor/vutils';\nimport type { Point } from '@visactor/vrender-components';\nimport type { IArea, ILine } from '@visactor/vrender-core';\nimport { getAllRegionBounds } from '../../utils/element';\nimport { isNumberEqual } from '../../utils/math';\nimport { SERIES_BREAK } from './constant';\n\nconst barOffset = 2;\nconst lineOffset = 10;\nconst areaOffset = 0;\n\n/**\n * 获取系列标签的 spec 配置\n * @param position 显示位置\n * @param config 系列标签的样式配置\n * @returns\n */\nexport function getSeriesBreakConfig(axesSpec: ILinearAxisSpec[], axesIndex?: number[]) {\n return {\n type: 'component',\n componentType: SERIES_BREAK,\n interactive: true,\n zIndex: 500,\n\n style: {\n data: (datum: any, ctx: any) => {\n const seriesBreakData: SeriesBreakData[] = [];\n const vchart = ctx.vchart;\n const chart = vchart.getChart();\n const series = chart.getAllSeries()[0] as ICartesianSeries;\n const isHorizontal = series.direction === 'horizontal';\n axesSpec.forEach((spec: any, index: number) => {\n const axisId = spec.id;\n const axisModel = isValid(axisId)\n ? chart.getComponentByUserId(axisId)\n : axesIndex && isValid(axesIndex[index])\n ? chart.getComponentByIndex('axes', axesIndex[index])\n : chart.getComponentsByKey('axes').filter((axis: { getSpec: () => any }) => {\n const axisInnerSpec = axis.getSpec();\n\n return axisInnerSpec.breaks === spec.breaks;\n })?.[0];\n\n if (!axisModel) {\n return;\n }\n const parsedAxisId = axisId ?? `${axisModel.type}-${axisModel.id}`;\n\n const regionBounds = getAllRegionBounds(axisModel.getRegions());\n\n // todo 这里用到了内部变量,不太安全\n array(axisModel._break?.breaks).forEach((breakConfig: ILinearAxisBreakSpec) => {\n const { range, breakSymbol, gap = 5 } = breakConfig;\n const pos1 = axisModel.valueToPosition(range[0]);\n const pos2 = axisModel.valueToPosition(range[1]);\n\n const posY = (pos1 + pos2) / 2 + (isHorizontal ? regionBounds.x1 : regionBounds.y1);\n\n chart.getAllSeries().forEach((s: ICartesianSeries) => {\n if (s.type === 'bar' || s.type === 'waterfall') {\n const mark = s.getMarkInName('bar');\n const graphics = mark.getGraphics();\n\n graphics.forEach((element: IMarkGraphic) => {\n const elementBounds = element.AABBBounds;\n let shouldDrawBreak = false;\n let startX;\n let startY;\n let endX;\n let endY;\n if (isHorizontal) {\n shouldDrawBreak =\n elementBounds.x1 < (pos1 + pos2 - (gap as number)) / 2 &&\n elementBounds.x2 > (pos1 + pos2 + gap) / 2;\n\n startX = posY;\n startY = Math.max(elementBounds.y1 + regionBounds.y1 - barOffset, regionBounds.y1);\n\n endX = posY;\n endY = Math.min(elementBounds.y2 + regionBounds.y1 + barOffset, regionBounds.y2);\n } else {\n shouldDrawBreak =\n elementBounds.y1 < (pos1 + pos2 - (gap as number)) / 2 &&\n elementBounds.y2 > (pos1 + pos2 + gap) / 2;\n startX = Math.max(elementBounds.x1 + regionBounds.x1 - barOffset, regionBounds.x1);\n startY = posY;\n endX = Math.min(elementBounds.x2 + regionBounds.x1 + barOffset, regionBounds.x2);\n endY = posY;\n }\n\n if (shouldDrawBreak) {\n seriesBreakData.push({\n start: {\n x: startX,\n y: startY\n },\n end: {\n x: endX,\n y: endY\n },\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n }\n });\n } else if (s.type === 'line') {\n // 求水平直线/垂直线同 line path 的交点\n const mark = s.getMarkInName(s.type);\n const graphics = mark.getGraphics();\n graphics.forEach(graphicItem => {\n const points = getAreaOrLinePathPoints(graphicItem, 'line');\n points.forEach(linePoints => {\n // 开始查找交点\n const intersections = getIntersectionsFromLineAndPolyline(\n isHorizontal\n ? {\n start: { x: (pos1 + pos2) / 2, y: 0 },\n end: { x: (pos1 + pos2) / 2, y: regionBounds.y2 - regionBounds.y1 }\n }\n : {\n start: { x: 0, y: (pos1 + pos2) / 2 },\n end: { x: regionBounds.x2 - regionBounds.x1, y: (pos1 + pos2) / 2 }\n },\n linePoints\n );\n\n intersections.forEach(intersection => {\n let start;\n let end;\n if (isHorizontal) {\n start = {\n x: posY,\n y: Math.max(intersection[1] + regionBounds.y1 - lineOffset, regionBounds.y1)\n };\n end = {\n x: posY,\n y: Math.min(intersection[1] + regionBounds.y1 + lineOffset, regionBounds.y2)\n };\n } else {\n start = {\n x: Math.max(intersection[0] + regionBounds.x1 - lineOffset, regionBounds.x1),\n y: posY\n };\n end = {\n x: Math.min(intersection[0] + regionBounds.x1 + lineOffset, regionBounds.x2),\n y: posY\n };\n }\n seriesBreakData.push({\n start,\n end,\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n });\n });\n });\n } else if (s.type === 'area') {\n // 默认面积去全部堆叠\n const mark = s.getMarkInName('area');\n const graphics = mark.getGraphics();\n graphics.forEach(graphicItem => {\n const points = getAreaOrLinePathPoints(graphicItem, 'area');\n points.forEach(areaPoints => {\n const intersections = getIntersectionsFromLineAndPolyline(\n isHorizontal\n ? {\n start: { x: (pos1 + pos2) / 2, y: 0 },\n end: { x: (pos1 + pos2) / 2, y: regionBounds.y2 - regionBounds.y1 }\n }\n : {\n start: { x: 0, y: (pos1 + pos2) / 2 },\n end: { x: regionBounds.x2 - regionBounds.x1, y: (pos1 + pos2) / 2 }\n },\n areaPoints\n );\n\n intersections.sort((a, b) => a[0] - b[0]);\n\n for (let index = 0; index < intersections.length - 1; index++) {\n const lineStart = {\n x: intersections[index][0],\n y: intersections[index][1]\n };\n const lineEnd = {\n x: intersections[index + 1][0],\n y: intersections[index + 1][1]\n };\n if (\n isPointInPolygon(\n isHorizontal\n ? {\n x: lineStart.x,\n y: (lineStart.y + lineEnd.y) / 2\n }\n : {\n x: (lineStart.x + lineEnd.x) / 2,\n y: lineStart.y\n },\n areaPoints\n )\n ) {\n let start;\n let end;\n if (isHorizontal) {\n start = {\n x: lineStart.x + regionBounds.x1,\n y: Math.max(lineStart.y + regionBounds.y1 - areaOffset, regionBounds.y1)\n };\n end = {\n x: lineEnd.x + regionBounds.x1,\n y: Math.min(lineEnd.y + regionBounds.y1 + areaOffset, regionBounds.y2)\n };\n } else {\n start = {\n x: Math.max(lineStart.x + regionBounds.x1 - areaOffset, regionBounds.x1),\n y: lineStart.y + regionBounds.y1\n };\n end = {\n x: Math.min(lineEnd.x + regionBounds.x1 + areaOffset, regionBounds.x2),\n y: lineEnd.y + regionBounds.y1\n };\n }\n seriesBreakData.push({\n start,\n end,\n gap: gap as number,\n style: breakSymbol?.style,\n axisId: parsedAxisId,\n data: range\n });\n }\n }\n });\n });\n }\n });\n });\n });\n\n return seriesBreakData;\n }\n }\n };\n}\n\nfunction getIntersectionsFromLineAndPolyline(line: { start: Point; end: Point }, points: Point[]) {\n const intersections: [number, number][] = [];\n for (let index = 1; index < points.length; index++) {\n const intersection = getIntersectPoint(\n [line.start.x, line.start.y],\n [line.end.x, line.end.y],\n [points[index].x, points[index].y],\n [points[index - 1].x, points[index - 1].y]\n );\n if (\n intersection &&\n !intersections.find(point =>\n isNumberEqual(\n PointService.distancePP(\n { x: point[0], y: point[1] },\n { x: (intersection as [number, number])[0], y: (intersection as [number, number])[1] }\n ),\n 0\n )\n )\n ) {\n intersections.push(intersection as [number, number]);\n }\n }\n return intersections;\n}\n\nfunction getAreaOrLinePathPoints(shape: IArea | ILine, type: 'line' | 'area') {\n const { points, segments } = shape.attribute;\n const pathPoints: Point[][] = [];\n let eachPathPoints: Point[] = [];\n const parsePoints = (points: IPointLike[]) => {\n if (points && points.length) {\n let basePoints: IPointLike[] = [];\n points.forEach(point => {\n if (point.defined === false) {\n pathPoints.push(eachPathPoints);\n if (type === 'area' && basePoints.length) {\n for (let i = basePoints.length - 1; i >= 0; i--) {\n eachPathPoints.push({\n x: basePoints[i].x,\n y: basePoints[i].y\n });\n }\n\n eachPathPoints.push(eachPathPoints[0]);\n }\n eachPathPoints = [];\n basePoints = [];\n } else {\n eachPathPoints.push({\n x: point.x,\n y: point.y\n });\n\n type === 'area' && basePoints.push({ x: point.x1 ?? point.x, y: point.y1 ?? point.y });\n }\n });\n\n if (type === 'area' && basePoints.length) {\n for (let i = basePoints.length - 1; i >= 0; i--) {\n eachPathPoints.push({\n x: basePoints[i].x,\n y: basePoints[i].y\n });\n }\n eachPathPoints.push(eachPathPoints[0]);\n }\n\n pathPoints.push(eachPathPoints);\n }\n };\n\n if (points && points.length) {\n parsePoints(points);\n } else if (segments && segments.length) {\n segments.forEach(seg => {\n parsePoints(seg.points);\n });\n }\n\n return pathPoints;\n}\n\nfunction isPointInPolygon(point: Point, polygon: Point[]) {\n const { x, y } = point;\n let inside = false;\n\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const { x: xi, y: yi } = polygon[i];\n const { x: xj, y: yj } = polygon[j];\n\n const intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;\n if (intersect) {\n inside = !inside;\n }\n }\n\n return inside;\n}\n\nexport const appendSeriesBreakConfig = (rawSpec: ISpec) => {\n if (rawSpec.axes?.length) {\n const breakedAxes = (rawSpec.axes as any[]).filter(\n (axis: any) => axis.breaks && axis.breaks.length && (axis as any).visible !== false\n );\n\n if (breakedAxes.length) {\n (rawSpec as any).customMark = array((rawSpec as any).customMark).filter(\n (obj: any) => obj.componentType !== SERIES_BREAK\n );\n (rawSpec as any).customMark.push(\n getSeriesBreakConfig(\n breakedAxes as ILinearAxisSpec[],\n breakedAxes.map((axisSpec: any) => {\n return rawSpec.axes.indexOf(axisSpec as any);\n })\n )\n );\n return true;\n }\n }\n\n return false;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-label/constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC","file":"constant.js","sourcesContent":["export const SERIES_LABEL = 'seriesLabel';\n"]}
1
+ {"version":3,"sources":["../src/components/series-label/constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC","file":"constant.js","sourcesContent":["export const SERIES_LABEL = 'seriesLabel';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-label/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC","file":"index.js","sourcesContent":["export { SeriesLabelComponent, registerSeriesLabel } from './series-label';\nexport * from './type';\nexport { getSeriesLabelConfig, appendSeriesLabelConfig } from './util';\n"]}
1
+ {"version":3,"sources":["../src/components/series-label/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC","file":"index.js","sourcesContent":["export { SeriesLabelComponent, registerSeriesLabel } from './series-label';\nexport * from './type';\nexport { getSeriesLabelConfig, appendSeriesLabelConfig } from './util';\n"]}
@@ -2,7 +2,7 @@ import { AbstractComponent } from "@visactor/vrender-components";
2
2
 
3
3
  import { isEmpty } from "@visactor/vutils";
4
4
 
5
- import { Factory } from "@visactor/vgrammar-core";
5
+ import { Factory } from "@visactor/vchart";
6
6
 
7
7
  import { createText, createLine } from "@visactor/vrender-core";
8
8
 
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-label/series-label.ts"],"names":[],"mappings":"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","file":"series-label.js","sourcesContent":["/**\n * @description vchart 自定义组件,用于实现柱图、线图以及面积图的系列标签\n * @author zhangweixing\n */\n\nimport { AbstractComponent } from '@visactor/vrender-components';\nimport type { Dict } from '@visactor/vutils';\nimport { isEmpty } from '@visactor/vutils';\nimport { Factory } from '@visactor/vgrammar-core';\nimport { type IGraphic, type IText, createText, createLine } from '@visactor/vrender-core';\nimport { SeriesLabelAttrs, SeriesLabelData } from './type';\nimport { dodge, dodgeHorizontal } from './util';\nimport { SERIES_LABEL } from './constant';\n\nexport class SeriesLabelComponent extends AbstractComponent<Required<SeriesLabelAttrs>> {\n name = SERIES_LABEL;\n protected render() {\n this.removeAllChild();\n const { data, layout, label, line = {} } = this.attribute as SeriesLabelAttrs;\n if (isEmpty(data)) {\n return;\n }\n\n const labelStyleMap = label?.styleMap ?? {};\n const adjustedPoints: Dict<any> = {};\n const filteredData = (data as SeriesLabelData[]).filter(datum => labelStyleMap[datum.id]?.visible !== false);\n if (layout === 'vertical') {\n const lineHeight = (label?.style?.fontSize ?? 12) * 1.5; // 进行扰动,将重叠的文本抖开\n const createAndAddTextGraphic = (datum: any, textPoint: any, labelStyleMap: any) => {\n const { label: text, color, textAlign, textBaseline, id } = datum;\n const formatMethod = labelStyleMap[id]?.formatMethod ?? this.attribute.label?.formatMethod;\n const textGraphic = createText({\n text: formatMethod\n ? formatMethod(text, datum.datum, {\n series: datum.series\n })\n : text,\n ...this.attribute.label?.style,\n ...textPoint,\n textAlign,\n textBaseline,\n fill: this.attribute.label?.style?.fill ?? color,\n ...labelStyleMap[id]?.style\n });\n textGraphic.name = 'series-label-text';\n textGraphic.id = id;\n this.add(textGraphic);\n\n return textGraphic;\n };\n\n ['start', 'end'].forEach(position => {\n const posData = filteredData.filter(datum => datum.position === position);\n const posYArr = posData.map(datum => datum.point.y);\n const dodgedPosY = dodge(posYArr, lineHeight);\n posData.forEach((datum, index) => {\n const textPoint = {\n x: datum.point.x + (label?.space ?? 8) * (datum.textAlign === 'start' ? 1 : -1),\n y: dodgedPosY[index]\n };\n createAndAddTextGraphic(datum, textPoint, labelStyleMap);\n adjustedPoints[datum.id] = textPoint;\n });\n });\n } else {\n const startTexts: IText[] = [];\n const endTexts: IText[] = [];\n filteredData.forEach(datum => {\n const { point, label: text, color, textAlign, textBaseline, id, position } = datum;\n\n const textPoint = {\n x: point.x,\n y: point.y\n };\n\n const formatMethod = labelStyleMap[id]?.formatMethod ?? label?.formatMethod;\n\n const textGraphic = createText({\n text: formatMethod\n ? formatMethod(text, datum.datum, {\n series: datum.series\n })\n : text,\n ...label?.style,\n ...textPoint,\n textAlign,\n textBaseline,\n fill: label?.style?.fill ?? color,\n ...labelStyleMap[id]?.style\n });\n textGraphic.id = id;\n textGraphic.name = 'series-label-text';\n this.add(textGraphic);\n if (position === 'start') {\n startTexts.push(textGraphic);\n } else if (position === 'end') {\n endTexts.push(textGraphic);\n }\n });\n // 水平扰动,防重叠\n startTexts.length && dodgeHorizontal(startTexts as unknown as IText[], 4, 10);\n endTexts.length && dodgeHorizontal(endTexts as unknown as IText[], 4, 10);\n // 调整间距\n const labelSpace = label?.space ?? 8;\n [...startTexts, ...endTexts].forEach((text: IText) => {\n const flag = text.attribute.textBaseline === 'top' ? 1 : -1;\n text.setAttribute('y', (text.attribute.y as number) + labelSpace * flag);\n\n adjustedPoints[text.id] = {\n x: text.attribute.x,\n y: text.attribute.y\n };\n });\n }\n\n if (line.visible !== false) {\n filteredData.forEach(datum => {\n const { point: start, color, id } = datum;\n const end = {\n x: adjustedPoints[id].x + (labelStyleMap[id]?.style?.dx ?? 0),\n y: adjustedPoints[id].y + (labelStyleMap[id]?.style?.dy ?? 0)\n };\n\n if (line.autoVisible !== false) {\n if ((layout === 'vertical' && start.y !== end.y) || (layout === 'horizontal' && start.x !== end.x)) {\n const lineShape = createLine({\n points: [start, end],\n lineWidth: 1,\n stroke: color,\n ...line.style\n });\n lineShape.name = 'series-label-line';\n this.add(lineShape);\n }\n } else {\n const lineShape = createLine({\n points: [start, end],\n lineWidth: 1,\n stroke: color,\n ...line.style\n });\n lineShape.name = 'series-label-line';\n this.add(lineShape);\n }\n });\n }\n }\n}\n\nexport const registerSeriesLabel = () => {\n Factory.registerGraphicComponent(\n 'seriesLabel',\n (attrs: Required<SeriesLabelAttrs>) => new SeriesLabelComponent(attrs) as unknown as IGraphic\n );\n};\n"]}
1
+ {"version":3,"sources":["../src/components/series-label/series-label.ts"],"names":[],"mappings":"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","file":"series-label.js","sourcesContent":["/**\n * @description vchart 自定义组件,用于实现柱图、线图以及面积图的系列标签\n * @author zhangweixing\n */\n\nimport { AbstractComponent } from '@visactor/vrender-components';\nimport type { Dict } from '@visactor/vutils';\nimport { isEmpty } from '@visactor/vutils';\nimport { Factory } from '@visactor/vchart';\nimport { type IGraphic, type IText, createText, createLine } from '@visactor/vrender-core';\nimport { SeriesLabelAttrs, SeriesLabelData } from './type';\nimport { dodge, dodgeHorizontal } from './util';\nimport { SERIES_LABEL } from './constant';\n\nexport class SeriesLabelComponent extends AbstractComponent<Required<SeriesLabelAttrs>> {\n name = SERIES_LABEL;\n protected render() {\n this.removeAllChild();\n const { data, layout, label, line = {} } = this.attribute as SeriesLabelAttrs;\n if (isEmpty(data)) {\n return;\n }\n\n const labelStyleMap = label?.styleMap ?? {};\n const adjustedPoints: Dict<any> = {};\n const filteredData = (data as SeriesLabelData[]).filter(datum => labelStyleMap[datum.id]?.visible !== false);\n if (layout === 'vertical') {\n const lineHeight = (label?.style?.fontSize ?? 12) * 1.5; // 进行扰动,将重叠的文本抖开\n const createAndAddTextGraphic = (datum: any, textPoint: any, labelStyleMap: any) => {\n const { label: text, color, textAlign, textBaseline, id } = datum;\n const formatMethod = labelStyleMap[id]?.formatMethod ?? this.attribute.label?.formatMethod;\n const textGraphic = createText({\n text: formatMethod\n ? formatMethod(text, datum.datum, {\n series: datum.series\n })\n : text,\n ...this.attribute.label?.style,\n ...textPoint,\n textAlign,\n textBaseline,\n fill: this.attribute.label?.style?.fill ?? color,\n ...labelStyleMap[id]?.style\n });\n textGraphic.name = 'series-label-text';\n textGraphic.id = id;\n this.add(textGraphic);\n\n return textGraphic;\n };\n\n ['start', 'end'].forEach(position => {\n const posData = filteredData.filter(datum => datum.position === position);\n const posYArr = posData.map(datum => datum.point.y);\n const dodgedPosY = dodge(posYArr, lineHeight);\n posData.forEach((datum, index) => {\n const textPoint = {\n x: datum.point.x + (label?.space ?? 8) * (datum.textAlign === 'start' ? 1 : -1),\n y: dodgedPosY[index]\n };\n createAndAddTextGraphic(datum, textPoint, labelStyleMap);\n adjustedPoints[datum.id] = textPoint;\n });\n });\n } else {\n const startTexts: IText[] = [];\n const endTexts: IText[] = [];\n filteredData.forEach(datum => {\n const { point, label: text, color, textAlign, textBaseline, id, position } = datum;\n\n const textPoint = {\n x: point.x,\n y: point.y\n };\n\n const formatMethod = labelStyleMap[id]?.formatMethod ?? label?.formatMethod;\n\n const textGraphic = createText({\n text: formatMethod\n ? formatMethod(text, datum.datum, {\n series: datum.series\n })\n : text,\n ...label?.style,\n ...textPoint,\n textAlign,\n textBaseline,\n fill: label?.style?.fill ?? color,\n ...labelStyleMap[id]?.style\n });\n textGraphic.id = id;\n textGraphic.name = 'series-label-text';\n this.add(textGraphic);\n if (position === 'start') {\n startTexts.push(textGraphic);\n } else if (position === 'end') {\n endTexts.push(textGraphic);\n }\n });\n // 水平扰动,防重叠\n startTexts.length && dodgeHorizontal(startTexts as unknown as IText[], 4, 10);\n endTexts.length && dodgeHorizontal(endTexts as unknown as IText[], 4, 10);\n // 调整间距\n const labelSpace = label?.space ?? 8;\n [...startTexts, ...endTexts].forEach((text: IText) => {\n const flag = text.attribute.textBaseline === 'top' ? 1 : -1;\n text.setAttribute('y', (text.attribute.y as number) + labelSpace * flag);\n\n adjustedPoints[text.id] = {\n x: text.attribute.x,\n y: text.attribute.y\n };\n });\n }\n\n if (line.visible !== false) {\n filteredData.forEach(datum => {\n const { point: start, color, id } = datum;\n const end = {\n x: adjustedPoints[id].x + (labelStyleMap[id]?.style?.dx ?? 0),\n y: adjustedPoints[id].y + (labelStyleMap[id]?.style?.dy ?? 0)\n };\n\n if (line.autoVisible !== false) {\n if ((layout === 'vertical' && start.y !== end.y) || (layout === 'horizontal' && start.x !== end.x)) {\n const lineShape = createLine({\n points: [start, end],\n lineWidth: 1,\n stroke: color,\n ...line.style\n });\n lineShape.name = 'series-label-line';\n this.add(lineShape);\n }\n } else {\n const lineShape = createLine({\n points: [start, end],\n lineWidth: 1,\n stroke: color,\n ...line.style\n });\n lineShape.name = 'series-label-line';\n this.add(lineShape);\n }\n });\n }\n }\n}\n\nexport const registerSeriesLabel = () => {\n Factory.registerGraphicComponent(\n 'seriesLabel',\n (attrs: Required<SeriesLabelAttrs>) => new SeriesLabelComponent(attrs) as unknown as IGraphic\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-label/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import type {\n IGroupGraphicAttribute,\n ILineGraphicAttribute,\n ITextGraphicAttribute,\n TextAlignType,\n TextBaselineType\n} from '@visactor/vrender-core';\nimport type { ICartesianSeries } from '@visactor/vchart';\n\nexport type SeriesLabelData = {\n /**\n * 数据点位置\n */\n point: {\n x: number;\n y: number;\n };\n /**\n * 标签文本\n */\n label: string;\n /**\n * 标签颜色\n */\n color: string;\n textAlign: TextAlignType;\n textBaseline: TextBaselineType;\n series: ICartesianSeries;\n datum: any;\n id: string;\n position: string;\n};\n\nexport interface SeriesLabelAttrs extends IGroupGraphicAttribute {\n /**\n * 系列标签连接线\n */\n line?: {\n /**\n * 是否显示系列标签\n * @default true\n */\n visible?: boolean;\n /**\n * 是否智能显示,仅当 visible 开启的时候生效\n * @default true\n */\n autoVisible?: boolean;\n /**\n * 线样式\n */\n style?: ILineGraphicAttribute;\n };\n /**\n * 系列标签配置\n */\n label?: {\n /**\n * 文本格式化配置\n * @param text\n * @returns\n */\n formatMethod?: (text: string, datum: any, context: any) => string;\n /**\n * 文本样式配置\n */\n style?: ITextGraphicAttribute;\n /**\n * 标签距离数据点的间距\n */\n space?: number;\n styleMap?: {\n [key: string]: {\n visible?: boolean;\n style?: ITextGraphicAttribute;\n formatMethod?: (text: string, datum: any, context: any) => string;\n };\n };\n };\n /**\n * 标签数据\n */\n data: SeriesLabelData[];\n /**\n * 标签的布局方向,主要用于判断采用那个方向的抖动算法\n */\n layout: 'horizontal' | 'vertical';\n position: 'start' | 'end' | 'both-ends';\n}\n\nexport interface SeriesLabelSpec extends Partial<Pick<SeriesLabelAttrs, 'line' | 'label' | 'position'>> {\n visible?: boolean;\n}\n"]}
1
+ {"version":3,"sources":["../src/components/series-label/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import type {\n IGroupGraphicAttribute,\n ILineGraphicAttribute,\n ITextGraphicAttribute,\n TextAlignType,\n TextBaselineType\n} from '@visactor/vrender-core';\nimport type { ICartesianSeries } from '@visactor/vchart';\n\nexport type SeriesLabelData = {\n /**\n * 数据点位置\n */\n point: {\n x: number;\n y: number;\n };\n /**\n * 标签文本\n */\n label: string;\n /**\n * 标签颜色\n */\n color: string;\n textAlign: TextAlignType;\n textBaseline: TextBaselineType;\n series: ICartesianSeries;\n datum: any;\n id: string;\n position: string;\n};\n\nexport interface SeriesLabelAttrs extends IGroupGraphicAttribute {\n /**\n * 系列标签连接线\n */\n line?: {\n /**\n * 是否显示系列标签\n * @default true\n */\n visible?: boolean;\n /**\n * 是否智能显示,仅当 visible 开启的时候生效\n * @default true\n */\n autoVisible?: boolean;\n /**\n * 线样式\n */\n style?: ILineGraphicAttribute;\n };\n /**\n * 系列标签配置\n */\n label?: {\n /**\n * 文本格式化配置\n * @param text\n * @returns\n */\n formatMethod?: (text: string, datum: any, context: any) => string;\n /**\n * 文本样式配置\n */\n style?: ITextGraphicAttribute;\n /**\n * 标签距离数据点的间距\n */\n space?: number;\n styleMap?: {\n [key: string]: {\n visible?: boolean;\n style?: ITextGraphicAttribute;\n formatMethod?: (text: string, datum: any, context: any) => string;\n };\n };\n };\n /**\n * 标签数据\n */\n data: SeriesLabelData[];\n /**\n * 标签的布局方向,主要用于判断采用那个方向的抖动算法\n */\n layout: 'horizontal' | 'vertical';\n position: 'start' | 'end' | 'both-ends';\n}\n\nexport interface SeriesLabelSpec extends Partial<Pick<SeriesLabelAttrs, 'line' | 'label' | 'position'>> {\n visible?: boolean;\n}\n"]}
@@ -86,11 +86,11 @@ export function getSeriesLabelConfig(position, config) {
86
86
  const targetValue = "end" === pos ? last(bandAxisScale.domain()) : bandAxisScale.domain()[0], region = series.getRegion(), {x: regionStartX, y: regionStartY} = region.getLayoutStartPoint();
87
87
  let i = 0;
88
88
  chart.getAllSeries().forEach((s => {
89
- s.getMarkInName("waterfall" === seriesTypes[0] ? "bar" : seriesTypes[0]).getProduct().elements.forEach((element => {
89
+ s.getMarkInName("waterfall" === seriesTypes[0] ? "bar" : seriesTypes[0]).getGraphics().forEach((g => {
90
90
  var _a;
91
- const data = element.data.find((datum => datum[dimensionField] === targetValue));
91
+ const data = g.context.data.find((datum => datum[dimensionField] === targetValue));
92
92
  if (data) {
93
- const graphItem = element.getGraphicItem(), graphBounds = graphItem.AABBBounds;
93
+ const graphBounds = g.AABBBounds;
94
94
  let point, color, textAlign, textBaseline;
95
95
  "bar" === seriesTypes[0] || "waterfall" === seriesTypes[0] ? (point = "end" === pos ? {
96
96
  x: isTransposed ? (graphBounds.x1 + graphBounds.x2) / 2 : isBandAxisInverse ? graphBounds.x1 : graphBounds.x2,
@@ -98,7 +98,7 @@ export function getSeriesLabelConfig(position, config) {
98
98
  } : {
99
99
  x: isTransposed ? (graphBounds.x1 + graphBounds.x2) / 2 : isBandAxisInverse ? graphBounds.x2 : graphBounds.x1,
100
100
  y: isTransposed ? isBandAxisInverse ? graphBounds.y1 : graphBounds.y2 : (graphBounds.y1 + graphBounds.y2) / 2
101
- }, color = graphItem.attribute.fill) : (point = s.dataToPosition(data), color = graphItem.attribute.stroke || graphItem.attribute.fill),
101
+ }, color = g.attribute.fill) : (point = s.dataToPosition(data), color = g.attribute.stroke || g.attribute.fill),
102
102
  "end" === pos ? (textAlign = isTransposed ? "center" : isBandAxisInverse ? "end" : "start",
103
103
  textBaseline = isTransposed ? isBandAxisInverse ? "top" : "bottom" : "middle") : (textAlign = isTransposed ? "center" : isBandAxisInverse ? "start" : "end",
104
104
  textBaseline = isTransposed ? isBandAxisInverse ? "bottom" : "top" : "middle");
@@ -1 +1 @@
1
- {"version":3,"sources":["components/series-label/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["import type { ICartesianSeries, ISpec } from '@visactor/vchart';\nimport type { IText, TextAlignType, TextBaselineType } from '@visactor/vrender-core';\nimport { last, type IBoundsLike, array, get } from '@visactor/vutils';\nimport type { SeriesLabelAttrs, SeriesLabelData, SeriesLabelSpec } from './type';\nimport { SERIES_LABEL } from './constant';\n\nfunction range(start: number, stop?: any, step?: any) {\n start = +start;\n stop = +stop;\n\n let n = arguments.length;\n step = n < 2 ? ((stop = start), (start = 0), 1) : n < 3 ? 1 : +step;\n\n let i = -1;\n n = Math.max(0, Math.ceil((stop - start) / step)) | 0;\n const range = new Array(n);\n\n while (++i < n) {\n range[i] = start + i * step;\n }\n\n return range;\n}\n\nfunction ascending(a: number, b: number) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n\n/**\n * 文本垂直方向的扰动\n * @param positions y 坐标集合\n * @param separation 间距\n * @param maxIter 最大的迭代次数\n * @param maxError\n * @returns\n */\nexport function dodge(positions: number[], separation = 10, maxIter = 10, maxError = 1e-1) {\n const n = positions.length;\n if (!positions.every(isFinite)) {\n return positions;\n }\n if (!(n > 1)) {\n return positions;\n }\n const index = range(positions.length);\n for (let iter = 0; iter < maxIter; ++iter) {\n index.sort((i, j) => ascending(positions[i], positions[j]));\n let error = 0;\n for (let i = 1; i < n; ++i) {\n let delta = positions[index[i]] - positions[index[i - 1]];\n if (delta < separation) {\n delta = (separation - delta) / 2;\n error = Math.max(error, delta);\n positions[index[i - 1]] -= delta;\n positions[index[i]] += delta;\n }\n }\n if (error < maxError) {\n break;\n }\n }\n return positions;\n}\n\n// 检测两个包围盒是否重叠\nfunction isOverlap(box1: IBoundsLike, box2: IBoundsLike) {\n return !(box2.x1 > box1.x2 || box2.x2 < box1.x1 || box2.y1 > box1.y2 || box2.y2 < box1.y1);\n}\n\n/**\n * 水平方向的文本扰动算法\n * @param texts 文本实例集合\n * @param separation 间距\n * @param maxIter 最大迭代次数\n */\nexport function dodgeHorizontal(texts: IText[], separation = 10, maxIter = 10) {\n const n = texts.length;\n let hasOverlap;\n let iter = 0;\n do {\n hasOverlap = false;\n for (let i = 0; i < n; ++i) {\n for (let j = i + 1; j < n; ++j) {\n const box1 = texts[i].AABBBounds;\n const box2 = texts[j].AABBBounds;\n if (isOverlap(box1, box2)) {\n const delta = separation - (box2.x1 - box1.x2);\n if (delta > 0) {\n texts[j].attribute.x += delta;\n box2.x1 += delta;\n box2.x2 += delta;\n hasOverlap = true;\n }\n }\n }\n }\n iter++;\n } while (hasOverlap && iter < maxIter);\n}\n\n/**\n * 获取系列标签的 spec 配置\n * @param position 显示位置\n * @param config 系列标签的样式配置\n * @returns\n */\nexport function getSeriesLabelConfig(\n position: 'start' | 'end' | 'both-ends',\n config: Pick<SeriesLabelAttrs, 'line' | 'label'>\n) {\n const { label, line } = config;\n return {\n type: 'component',\n componentType: SERIES_LABEL,\n interactive: false,\n style: {\n position,\n layout: (datum: any, ctx: any) => {\n const vchart = ctx.vchart;\n const series = vchart.getChart().getAllSeries()[0];\n return series.getSpec().direction ?? 'vertical';\n },\n data: (datum: any, ctx: any) => {\n const vchart = ctx.vchart;\n const chart = vchart.getChart();\n const series = chart.getAllSeries()[0] as ICartesianSeries;\n const isTransposed = series.direction === 'horizontal';\n const bandAxisHelper = (isTransposed ? series.getYAxisHelper() : series.getXAxisHelper()) as any;\n const bandAxisScale = bandAxisHelper.getScale?.(0) as any;\n const isBandAxisInverse = bandAxisHelper.isInverse();\n const dimensionField = series.getDimensionField()[0];\n const seriesField = series.getSeriesField() as string;\n const seriesTypes = chart\n .getAllSeries()\n .map((s: ICartesianSeries) => s.type)\n .filter((value: string, index: number, self: string[]) => {\n return self.indexOf(value) === index;\n });\n const labelData: SeriesLabelData[] = [];\n\n // 系列标签目前不支持不同系列的组合图\n if (seriesTypes.length === 1 && ['bar', 'area', 'line', 'waterfall'].includes(seriesTypes[0])) {\n const positions = position === 'both-ends' ? ['start', 'end'] : [position];\n positions.forEach(pos => {\n const targetValue = pos === 'end' ? last(bandAxisScale.domain()) : bandAxisScale.domain()[0];\n const region = series.getRegion();\n const { x: regionStartX, y: regionStartY } = region.getLayoutStartPoint();\n let i = 0;\n chart.getAllSeries().forEach((s: ICartesianSeries) => {\n const mark = s.getMarkInName(seriesTypes[0] === 'waterfall' ? 'bar' : seriesTypes[0]);\n const vgrammarElements = mark.getProduct().elements;\n vgrammarElements.forEach((element: any) => {\n const data = element.data.find((datum: any) => datum[dimensionField] === targetValue);\n if (data) {\n const graphItem = element.getGraphicItem();\n const graphBounds = graphItem.AABBBounds;\n\n let point;\n let color;\n if (seriesTypes[0] === 'bar' || seriesTypes[0] === 'waterfall') {\n point =\n pos === 'end'\n ? {\n x: isTransposed\n ? (graphBounds.x1 + graphBounds.x2) / 2\n : isBandAxisInverse\n ? graphBounds.x1\n : graphBounds.x2,\n y: isTransposed\n ? isBandAxisInverse\n ? graphBounds.y2\n : graphBounds.y1\n : (graphBounds.y1 + graphBounds.y2) / 2\n }\n : {\n x: isTransposed\n ? (graphBounds.x1 + graphBounds.x2) / 2\n : isBandAxisInverse\n ? graphBounds.x2\n : graphBounds.x1,\n y: isTransposed\n ? isBandAxisInverse\n ? graphBounds.y1\n : graphBounds.y2\n : (graphBounds.y1 + graphBounds.y2) / 2\n };\n color = graphItem.attribute.fill;\n } else {\n point = s.dataToPosition(data);\n color = graphItem.attribute.stroke || graphItem.attribute.fill;\n }\n\n let textAlign: TextAlignType;\n let textBaseline: TextBaselineType;\n if (pos === 'end') {\n textAlign = isTransposed ? 'center' : isBandAxisInverse ? 'end' : 'start';\n textBaseline = isTransposed ? (isBandAxisInverse ? 'top' : 'bottom') : 'middle';\n } else {\n textAlign = isTransposed ? 'center' : isBandAxisInverse ? 'start' : 'end';\n textBaseline = isTransposed ? (isBandAxisInverse ? 'bottom' : 'top') : 'middle';\n }\n\n const labelValue = data[seriesField] ?? data[dimensionField];\n\n labelData.push({\n point: {\n x: point.x + regionStartX,\n y: point.y + regionStartY\n },\n label: labelValue,\n color,\n textAlign,\n textBaseline,\n series: s,\n datum: data,\n id: `${pos}-${i}`,\n position: pos\n });\n i++;\n }\n });\n });\n });\n }\n\n return labelData;\n },\n line,\n label: {\n space: 12,\n ...label\n }\n }\n };\n}\n\nexport function appendSeriesLabelConfig(rawSpec: ISpec, seriesLabelSpec?: SeriesLabelSpec) {\n (rawSpec as any).customMark = array((rawSpec as any).customMark).filter(\n (obj: any) => obj.componentType !== SERIES_LABEL\n );\n\n if (!seriesLabelSpec) {\n seriesLabelSpec = get(rawSpec, SERIES_LABEL) ?? get(rawSpec.series?.[0], SERIES_LABEL) ?? {};\n }\n if (seriesLabelSpec.visible) {\n const { position = 'end', ...rest } = seriesLabelSpec;\n (rawSpec as any).customMark.push(getSeriesLabelConfig(position, rest));\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/components/series-label/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["import type { ICartesianSeries, IMarkGraphic, ISpec } from '@visactor/vchart';\nimport type { IText, TextAlignType, TextBaselineType } from '@visactor/vrender-core';\nimport { last, type IBoundsLike, array, get } from '@visactor/vutils';\nimport type { SeriesLabelAttrs, SeriesLabelData, SeriesLabelSpec } from './type';\nimport { SERIES_LABEL } from './constant';\n\nfunction range(start: number, stop?: any, step?: any) {\n start = +start;\n stop = +stop;\n\n let n = arguments.length;\n step = n < 2 ? ((stop = start), (start = 0), 1) : n < 3 ? 1 : +step;\n\n let i = -1;\n n = Math.max(0, Math.ceil((stop - start) / step)) | 0;\n const range = new Array(n);\n\n while (++i < n) {\n range[i] = start + i * step;\n }\n\n return range;\n}\n\nfunction ascending(a: number, b: number) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n\n/**\n * 文本垂直方向的扰动\n * @param positions y 坐标集合\n * @param separation 间距\n * @param maxIter 最大的迭代次数\n * @param maxError\n * @returns\n */\nexport function dodge(positions: number[], separation = 10, maxIter = 10, maxError = 1e-1) {\n const n = positions.length;\n if (!positions.every(isFinite)) {\n return positions;\n }\n if (!(n > 1)) {\n return positions;\n }\n const index = range(positions.length);\n for (let iter = 0; iter < maxIter; ++iter) {\n index.sort((i, j) => ascending(positions[i], positions[j]));\n let error = 0;\n for (let i = 1; i < n; ++i) {\n let delta = positions[index[i]] - positions[index[i - 1]];\n if (delta < separation) {\n delta = (separation - delta) / 2;\n error = Math.max(error, delta);\n positions[index[i - 1]] -= delta;\n positions[index[i]] += delta;\n }\n }\n if (error < maxError) {\n break;\n }\n }\n return positions;\n}\n\n// 检测两个包围盒是否重叠\nfunction isOverlap(box1: IBoundsLike, box2: IBoundsLike) {\n return !(box2.x1 > box1.x2 || box2.x2 < box1.x1 || box2.y1 > box1.y2 || box2.y2 < box1.y1);\n}\n\n/**\n * 水平方向的文本扰动算法\n * @param texts 文本实例集合\n * @param separation 间距\n * @param maxIter 最大迭代次数\n */\nexport function dodgeHorizontal(texts: IText[], separation = 10, maxIter = 10) {\n const n = texts.length;\n let hasOverlap;\n let iter = 0;\n do {\n hasOverlap = false;\n for (let i = 0; i < n; ++i) {\n for (let j = i + 1; j < n; ++j) {\n const box1 = texts[i].AABBBounds;\n const box2 = texts[j].AABBBounds;\n if (isOverlap(box1, box2)) {\n const delta = separation - (box2.x1 - box1.x2);\n if (delta > 0) {\n texts[j].attribute.x += delta;\n box2.x1 += delta;\n box2.x2 += delta;\n hasOverlap = true;\n }\n }\n }\n }\n iter++;\n } while (hasOverlap && iter < maxIter);\n}\n\n/**\n * 获取系列标签的 spec 配置\n * @param position 显示位置\n * @param config 系列标签的样式配置\n * @returns\n */\nexport function getSeriesLabelConfig(\n position: 'start' | 'end' | 'both-ends',\n config: Pick<SeriesLabelAttrs, 'line' | 'label'>\n) {\n const { label, line } = config;\n return {\n type: 'component',\n componentType: SERIES_LABEL,\n interactive: false,\n style: {\n position,\n layout: (datum: any, ctx: any) => {\n const vchart = ctx.vchart;\n const series = vchart.getChart().getAllSeries()[0];\n return series.getSpec().direction ?? 'vertical';\n },\n data: (datum: any, ctx: any) => {\n const vchart = ctx.vchart;\n const chart = vchart.getChart();\n const series = chart.getAllSeries()[0] as ICartesianSeries;\n const isTransposed = series.direction === 'horizontal';\n const bandAxisHelper = (isTransposed ? series.getYAxisHelper() : series.getXAxisHelper()) as any;\n const bandAxisScale = bandAxisHelper.getScale?.(0) as any;\n const isBandAxisInverse = bandAxisHelper.isInverse();\n const dimensionField = series.getDimensionField()[0];\n const seriesField = series.getSeriesField() as string;\n const seriesTypes = chart\n .getAllSeries()\n .map((s: ICartesianSeries) => s.type)\n .filter((value: string, index: number, self: string[]) => {\n return self.indexOf(value) === index;\n });\n const labelData: SeriesLabelData[] = [];\n\n // 系列标签目前不支持不同系列的组合图\n if (seriesTypes.length === 1 && ['bar', 'area', 'line', 'waterfall'].includes(seriesTypes[0])) {\n const positions = position === 'both-ends' ? ['start', 'end'] : [position];\n positions.forEach(pos => {\n const targetValue = pos === 'end' ? last(bandAxisScale.domain()) : bandAxisScale.domain()[0];\n const region = series.getRegion();\n const { x: regionStartX, y: regionStartY } = region.getLayoutStartPoint();\n let i = 0;\n chart.getAllSeries().forEach((s: ICartesianSeries) => {\n const mark = s.getMarkInName(seriesTypes[0] === 'waterfall' ? 'bar' : seriesTypes[0]);\n const graphics = mark.getGraphics();\n\n graphics.forEach((g: IMarkGraphic) => {\n const data = g.context.data.find((datum: any) => datum[dimensionField] === targetValue);\n if (data) {\n const graphBounds = g.AABBBounds;\n\n let point;\n let color;\n if (seriesTypes[0] === 'bar' || seriesTypes[0] === 'waterfall') {\n point =\n pos === 'end'\n ? {\n x: isTransposed\n ? (graphBounds.x1 + graphBounds.x2) / 2\n : isBandAxisInverse\n ? graphBounds.x1\n : graphBounds.x2,\n y: isTransposed\n ? isBandAxisInverse\n ? graphBounds.y2\n : graphBounds.y1\n : (graphBounds.y1 + graphBounds.y2) / 2\n }\n : {\n x: isTransposed\n ? (graphBounds.x1 + graphBounds.x2) / 2\n : isBandAxisInverse\n ? graphBounds.x2\n : graphBounds.x1,\n y: isTransposed\n ? isBandAxisInverse\n ? graphBounds.y1\n : graphBounds.y2\n : (graphBounds.y1 + graphBounds.y2) / 2\n };\n color = g.attribute.fill;\n } else {\n point = s.dataToPosition(data);\n color = g.attribute.stroke || g.attribute.fill;\n }\n\n let textAlign: TextAlignType;\n let textBaseline: TextBaselineType;\n if (pos === 'end') {\n textAlign = isTransposed ? 'center' : isBandAxisInverse ? 'end' : 'start';\n textBaseline = isTransposed ? (isBandAxisInverse ? 'top' : 'bottom') : 'middle';\n } else {\n textAlign = isTransposed ? 'center' : isBandAxisInverse ? 'start' : 'end';\n textBaseline = isTransposed ? (isBandAxisInverse ? 'bottom' : 'top') : 'middle';\n }\n\n const labelValue = data[seriesField] ?? data[dimensionField];\n\n labelData.push({\n point: {\n x: point.x + regionStartX,\n y: point.y + regionStartY\n },\n label: labelValue,\n color: color as string,\n textAlign,\n textBaseline,\n series: s,\n datum: data,\n id: `${pos}-${i}`,\n position: pos\n });\n i++;\n }\n });\n });\n });\n }\n\n return labelData;\n },\n line,\n label: {\n space: 12,\n ...label\n }\n }\n };\n}\n\nexport function appendSeriesLabelConfig(rawSpec: ISpec, seriesLabelSpec?: SeriesLabelSpec) {\n (rawSpec as any).customMark = array((rawSpec as any).customMark).filter(\n (obj: any) => obj.componentType !== SERIES_LABEL\n );\n\n if (!seriesLabelSpec) {\n seriesLabelSpec = get(rawSpec, SERIES_LABEL) ?? get(rawSpec.series?.[0], SERIES_LABEL) ?? {};\n }\n if (seriesLabelSpec.visible) {\n const { position = 'end', ...rest } = seriesLabelSpec;\n (rawSpec as any).customMark.push(getSeriesLabelConfig(position, rest));\n }\n}\n"]}
package/esm/index.d.ts CHANGED
@@ -1,5 +1,18 @@
1
1
  export * from './charts/ranking-bar/ranking-bar';
2
+ export * from './charts/ranking-list/ranking-list';
2
3
  export * from './charts/conversion-funnel';
4
+ export * from './charts/sequence-scatter-link/sequence-scatter-link';
5
+ export * from './charts/sequence-scatter-kde/sequence-scatter-kde';
6
+ export * from './charts/sequence-scatter-pixel/sequence-scatter-pixel';
7
+ export * from './charts/bar-3d';
8
+ export * from './charts/funnel-3d';
9
+ export * from './charts/histogram-3d';
10
+ export * from './charts/pie-3d';
11
+ export * from './charts/word-cloud-3d';
12
+ export * from './charts/axis-3d';
13
+ export * from './charts/range-column-3d';
14
+ export { register3DPlugin } from './charts/3d/plugin';
3
15
  export * from './components/series-break';
4
16
  export * from './components/bar-link';
5
17
  export * from './components/series-label';
18
+ export * from './components/map-label';
package/esm/index.js CHANGED
@@ -1,9 +1,35 @@
1
1
  export * from "./charts/ranking-bar/ranking-bar";
2
2
 
3
+ export * from "./charts/ranking-list/ranking-list";
4
+
3
5
  export * from "./charts/conversion-funnel";
4
6
 
7
+ export * from "./charts/sequence-scatter-link/sequence-scatter-link";
8
+
9
+ export * from "./charts/sequence-scatter-kde/sequence-scatter-kde";
10
+
11
+ export * from "./charts/sequence-scatter-pixel/sequence-scatter-pixel";
12
+
13
+ export * from "./charts/bar-3d";
14
+
15
+ export * from "./charts/funnel-3d";
16
+
17
+ export * from "./charts/histogram-3d";
18
+
19
+ export * from "./charts/pie-3d";
20
+
21
+ export * from "./charts/word-cloud-3d";
22
+
23
+ export * from "./charts/axis-3d";
24
+
25
+ export * from "./charts/range-column-3d";
26
+
27
+ export { register3DPlugin } from "./charts/3d/plugin";
28
+
5
29
  export * from "./components/series-break";
6
30
 
7
31
  export * from "./components/bar-link";
8
32
 
9
- export * from "./components/series-label";
33
+ export * from "./components/series-label";
34
+
35
+ export * from "./components/map-label";
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAE3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC","file":"index.js","sourcesContent":["export * from './charts/ranking-bar/ranking-bar';\nexport * from './charts/conversion-funnel';\n\nexport * from './components/series-break';\nexport * from './components/bar-link';\nexport * from './components/series-label';\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sDAAsD,CAAC;AACrE,cAAc,oDAAoD,CAAC;AACnE,cAAc,wDAAwD,CAAC;AAEvE,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC","file":"index.js","sourcesContent":["export * from './charts/ranking-bar/ranking-bar';\nexport * from './charts/ranking-list/ranking-list';\nexport * from './charts/conversion-funnel';\nexport * from './charts/sequence-scatter-link/sequence-scatter-link';\nexport * from './charts/sequence-scatter-kde/sequence-scatter-kde';\nexport * from './charts/sequence-scatter-pixel/sequence-scatter-pixel';\n\nexport * from './charts/bar-3d';\nexport * from './charts/funnel-3d';\nexport * from './charts/histogram-3d';\nexport * from './charts/pie-3d';\nexport * from './charts/word-cloud-3d';\nexport * from './charts/axis-3d';\nexport * from './charts/range-column-3d';\nexport { register3DPlugin } from './charts/3d/plugin';\n\nexport * from './components/series-break';\nexport * from './components/bar-link';\nexport * from './components/series-label';\nexport * from './components/map-label';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["type/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC","file":"index.js","sourcesContent":["export * from '../charts/ranking-bar/interface';\n"]}
1
+ {"version":3,"sources":["../src/type/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC","file":"index.js","sourcesContent":["export * from '../charts/ranking-bar/interface';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["type/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import type { IStage } from '@visactor/vrender-core';\n\nexport type IContext = {\n dom: string | HTMLElement;\n width: number;\n height: number;\n stage: IStage;\n canvas: HTMLCanvasElement;\n};\n"]}
1
+ {"version":3,"sources":["../src/type/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import type { IStage } from '@visactor/vrender-core';\n\nexport type IContext = {\n dom: string | HTMLElement;\n width: number;\n height: number;\n stage: IStage;\n canvas: HTMLCanvasElement;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["utils/element.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,kBAAkB,CAAC,OAAkB;IACnD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;IAC5D,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;IACnD,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;IAEpD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAC9C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QAEjD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACjC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;KACnC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;KACT,CAAC;AACJ,CAAC","file":"element.js","sourcesContent":["import type { IRegion } from '@visactor/vchart';\nexport function getAllRegionBounds(regions: IRegion[]) {\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\n return {\n x1: minX,\n y1: minY,\n x2: maxX,\n y2: maxY\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/utils/element.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,kBAAkB,CAAC,OAAkB;IACnD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;IAC5D,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;IACnD,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;IAEpD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAC9C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QAEjD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACjC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;KACnC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;QACR,EAAE,EAAE,IAAI;KACT,CAAC;AACJ,CAAC","file":"element.js","sourcesContent":["import type { IRegion } from '@visactor/vchart';\nexport function getAllRegionBounds(regions: IRegion[]) {\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\n return {\n x1: minX,\n y1: minY,\n x2: maxX,\n y2: maxY\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["utils/math.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,SAAS,GAAG,CAAC;IAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;AACrC,CAAC","file":"math.js","sourcesContent":["export function isNumberEqual(a: number, b: number, precision = 1): boolean {\n return Math.abs(a - b) < precision;\n}\n"]}
1
+ {"version":3,"sources":["../src/utils/math.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,SAAS,GAAG,CAAC;IAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;AACrC,CAAC","file":"math.js","sourcesContent":["export function isNumberEqual(a: number, b: number, precision = 1): boolean {\n return Math.abs(a - b) < precision;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visactor/vchart-extension",
3
- "version": "2.0.0-alpha.0",
3
+ "version": "2.0.0-alpha.1",
4
4
  "description": "vchart extension package, including extension plugins and components",
5
5
  "sideEffects": false,
6
6
  "main": "cjs/index.js",
@@ -12,13 +12,14 @@
12
12
  "build"
13
13
  ],
14
14
  "dependencies": {
15
- "@visactor/vrender-core": "0.21.15",
16
- "@visactor/vrender-kits": "0.21.15",
17
- "@visactor/vrender-components": "0.21.15",
18
- "@visactor/vgrammar-core": "0.15.6",
19
- "@visactor/vutils": "~0.19.4",
20
- "@visactor/vdataset": "~0.19.4",
21
- "@visactor/vchart": "2.0.0-alpha.0"
15
+ "@visactor/vrender-core": "1.0.0-alpha.17",
16
+ "@visactor/vrender-kits": "1.0.0-alpha.17",
17
+ "@visactor/vrender-components": "1.0.0-alpha.17",
18
+ "@visactor/vrender-animate": "1.0.0-alpha.17",
19
+ "@visactor/vutils": "~1.0.6",
20
+ "@visactor/vdataset": "~1.0.6",
21
+ "@visactor/vlayouts": "~1.0.6",
22
+ "@visactor/vchart": "2.0.0-alpha.1"
22
23
  },
23
24
  "devDependencies": {
24
25
  "@rushstack/eslint-patch": "~1.1.4",
@@ -42,8 +43,8 @@
42
43
  "rollup-plugin-bundle-size": "1.0.3",
43
44
  "rollup-plugin-sizes": "1.0.5",
44
45
  "rollup": "3.20.5",
45
- "@internal/ts-config": "0.0.1",
46
46
  "@internal/eslint-config": "0.0.1",
47
+ "@internal/ts-config": "0.0.1",
47
48
  "@internal/bundler": "0.0.1"
48
49
  },
49
50
  "publishConfig": {