@visactor/vchart 1.7.5 → 1.8.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1976) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +38431 -38711
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/config.d.ts +5 -1
  6. package/cjs/animation/config.js +28 -4
  7. package/cjs/animation/config.js.map +1 -1
  8. package/cjs/animation/utils.d.ts +2 -2
  9. package/cjs/chart/area/area-transformer.d.ts +6 -0
  10. package/cjs/chart/area/area-transformer.js +32 -0
  11. package/cjs/chart/area/area-transformer.js.map +1 -0
  12. package/cjs/chart/area/area.d.ts +6 -4
  13. package/cjs/chart/area/area.js +6 -23
  14. package/cjs/chart/area/area.js.map +1 -1
  15. package/cjs/chart/area/index.d.ts +1 -0
  16. package/cjs/chart/area/index.js +2 -1
  17. package/cjs/chart/area/index.js.map +1 -1
  18. package/cjs/chart/bar/3d/bar-3d-transformer.d.ts +6 -0
  19. package/cjs/chart/bar/3d/bar-3d-transformer.js +21 -0
  20. package/cjs/chart/bar/3d/bar-3d-transformer.js.map +1 -0
  21. package/cjs/chart/bar/3d/bar-3d.d.ts +14 -0
  22. package/cjs/chart/bar/3d/bar-3d.js +24 -0
  23. package/cjs/chart/bar/3d/bar-3d.js.map +1 -0
  24. package/cjs/chart/bar/3d/index.d.ts +2 -0
  25. package/cjs/chart/bar/3d/index.js +21 -0
  26. package/cjs/chart/bar/3d/index.js.map +1 -0
  27. package/cjs/chart/bar/bar-transformer.d.ts +6 -0
  28. package/cjs/chart/bar/bar-transformer.js +28 -0
  29. package/cjs/chart/bar/bar-transformer.js.map +1 -0
  30. package/cjs/chart/bar/bar.d.ts +7 -4
  31. package/cjs/chart/bar/bar.js +6 -19
  32. package/cjs/chart/bar/bar.js.map +1 -1
  33. package/cjs/chart/bar/index.d.ts +2 -1
  34. package/cjs/chart/bar/index.js +2 -2
  35. package/cjs/chart/bar/index.js.map +1 -1
  36. package/cjs/chart/base/base-chart-transformer.d.ts +21 -0
  37. package/cjs/chart/base/base-chart-transformer.js +134 -0
  38. package/cjs/chart/base/base-chart-transformer.js.map +1 -0
  39. package/{esm/chart → cjs/chart/base}/base-chart.d.ts +29 -29
  40. package/cjs/chart/{base-chart.js → base/base-chart.js} +53 -102
  41. package/cjs/chart/base/base-chart.js.map +1 -0
  42. package/cjs/chart/base/index.d.ts +2 -0
  43. package/cjs/chart/base/index.js +21 -0
  44. package/cjs/chart/base/index.js.map +1 -0
  45. package/cjs/chart/box-plot/box-plot-transformer.d.ts +6 -0
  46. package/cjs/chart/box-plot/box-plot-transformer.js +36 -0
  47. package/cjs/chart/box-plot/box-plot-transformer.js.map +1 -0
  48. package/cjs/chart/box-plot/box-plot.d.ts +6 -4
  49. package/cjs/chart/box-plot/box-plot.js +6 -27
  50. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  51. package/cjs/chart/box-plot/index.d.ts +1 -0
  52. package/cjs/chart/box-plot/index.js +2 -1
  53. package/cjs/chart/box-plot/index.js.map +1 -1
  54. package/cjs/chart/cartesian/cartesian-transformer.d.ts +8 -0
  55. package/cjs/chart/cartesian/{cartesian.js → cartesian-transformer.js} +11 -11
  56. package/cjs/chart/cartesian/cartesian-transformer.js.map +1 -0
  57. package/cjs/chart/cartesian/index.d.ts +1 -1
  58. package/cjs/chart/cartesian/index.js +1 -1
  59. package/cjs/chart/cartesian/index.js.map +1 -1
  60. package/cjs/chart/chart-meta/data.js.map +1 -1
  61. package/cjs/chart/circle-packing/circle-packing-transformer.d.ts +7 -0
  62. package/cjs/chart/circle-packing/circle-packing-transformer.js +35 -0
  63. package/cjs/chart/circle-packing/circle-packing-transformer.js.map +1 -0
  64. package/cjs/chart/circle-packing/circle-packing.d.ts +6 -5
  65. package/cjs/chart/circle-packing/circle-packing.js +5 -25
  66. package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
  67. package/cjs/chart/circle-packing/index.d.ts +1 -0
  68. package/cjs/chart/circle-packing/index.js +2 -1
  69. package/cjs/chart/circle-packing/index.js.map +1 -1
  70. package/cjs/chart/common/common-transformer.d.ts +7 -0
  71. package/cjs/chart/common/common-transformer.js +30 -0
  72. package/cjs/chart/common/common-transformer.js.map +1 -0
  73. package/cjs/chart/common/common.d.ts +7 -4
  74. package/cjs/chart/common/common.js +4 -20
  75. package/cjs/chart/common/common.js.map +1 -1
  76. package/cjs/chart/common/index.d.ts +1 -0
  77. package/cjs/chart/common/index.js +2 -1
  78. package/cjs/chart/common/index.js.map +1 -1
  79. package/cjs/chart/correlation/correlation-transformer.d.ts +6 -0
  80. package/cjs/chart/correlation/correlation-transformer.js +43 -0
  81. package/cjs/chart/correlation/correlation-transformer.js.map +1 -0
  82. package/cjs/chart/correlation/correlation.d.ts +6 -4
  83. package/cjs/chart/correlation/correlation.js +5 -33
  84. package/cjs/chart/correlation/correlation.js.map +1 -1
  85. package/cjs/chart/correlation/index.d.ts +1 -0
  86. package/cjs/chart/correlation/index.js +2 -1
  87. package/cjs/chart/correlation/index.js.map +1 -1
  88. package/cjs/chart/funnel/3d/funnel-3d.d.ts +14 -0
  89. package/cjs/chart/funnel/3d/funnel-3d.js +25 -0
  90. package/cjs/chart/funnel/3d/funnel-3d.js.map +1 -0
  91. package/cjs/chart/funnel/3d/index.d.ts +1 -0
  92. package/cjs/chart/funnel/3d/index.js +21 -0
  93. package/cjs/chart/funnel/3d/index.js.map +1 -0
  94. package/cjs/chart/funnel/funnel-transformer.d.ts +8 -0
  95. package/cjs/chart/funnel/{base.js → funnel-transformer.js} +6 -6
  96. package/cjs/chart/funnel/funnel-transformer.js.map +1 -0
  97. package/cjs/chart/funnel/funnel.d.ts +7 -2
  98. package/cjs/chart/funnel/funnel.js +6 -4
  99. package/cjs/chart/funnel/funnel.js.map +1 -1
  100. package/cjs/chart/funnel/index.d.ts +2 -1
  101. package/cjs/chart/funnel/index.js +2 -2
  102. package/cjs/chart/funnel/index.js.map +1 -1
  103. package/cjs/chart/funnel/interface.d.ts +1 -1
  104. package/cjs/chart/funnel/interface.js.map +1 -1
  105. package/cjs/chart/gauge/gauge-transformer.d.ts +9 -0
  106. package/cjs/chart/gauge/gauge-transformer.js +75 -0
  107. package/cjs/chart/gauge/gauge-transformer.js.map +1 -0
  108. package/cjs/chart/gauge/gauge.d.ts +8 -6
  109. package/cjs/chart/gauge/gauge.js +6 -66
  110. package/cjs/chart/gauge/gauge.js.map +1 -1
  111. package/cjs/chart/gauge/index.d.ts +1 -0
  112. package/cjs/chart/gauge/index.js +2 -1
  113. package/cjs/chart/gauge/index.js.map +1 -1
  114. package/cjs/chart/gauge/interface.d.ts +2 -2
  115. package/cjs/chart/gauge/interface.js.map +1 -1
  116. package/cjs/chart/heatmap/heatmap-transformer.d.ts +5 -0
  117. package/cjs/chart/heatmap/heatmap-transformer.js +20 -0
  118. package/cjs/chart/heatmap/heatmap-transformer.js.map +1 -0
  119. package/cjs/chart/heatmap/heatmap.d.ts +7 -3
  120. package/cjs/chart/heatmap/heatmap.js +6 -11
  121. package/cjs/chart/heatmap/heatmap.js.map +1 -1
  122. package/cjs/chart/heatmap/index.d.ts +1 -0
  123. package/cjs/chart/heatmap/index.js +2 -1
  124. package/cjs/chart/heatmap/index.js.map +1 -1
  125. package/cjs/chart/histogram/3d/histogram-3d.d.ts +14 -0
  126. package/cjs/chart/histogram/3d/histogram-3d.js +25 -0
  127. package/cjs/chart/histogram/3d/histogram-3d.js.map +1 -0
  128. package/cjs/chart/histogram/3d/index.d.ts +1 -0
  129. package/cjs/chart/histogram/3d/index.js +21 -0
  130. package/cjs/chart/histogram/3d/index.js.map +1 -0
  131. package/cjs/chart/histogram/base/base.d.ts +8 -0
  132. package/cjs/chart/histogram/base/base.js +17 -0
  133. package/cjs/chart/histogram/base/base.js.map +1 -0
  134. package/cjs/chart/histogram/base/histogram-base-transformer.d.ts +6 -0
  135. package/cjs/chart/histogram/{base.js → base/histogram-base-transformer.js} +5 -8
  136. package/cjs/chart/histogram/base/histogram-base-transformer.js.map +1 -0
  137. package/cjs/chart/histogram/base/index.d.ts +2 -0
  138. package/cjs/chart/histogram/base/index.js +21 -0
  139. package/cjs/chart/histogram/base/index.js.map +1 -0
  140. package/cjs/chart/histogram/histogram-transformer.d.ts +5 -0
  141. package/cjs/chart/histogram/histogram-transformer.js +16 -0
  142. package/cjs/chart/histogram/histogram-transformer.js.map +1 -0
  143. package/cjs/chart/histogram/histogram.d.ts +7 -3
  144. package/cjs/chart/histogram/histogram.js +5 -6
  145. package/cjs/chart/histogram/histogram.js.map +1 -1
  146. package/cjs/chart/histogram/index.d.ts +2 -1
  147. package/cjs/chart/histogram/index.js +2 -2
  148. package/cjs/chart/histogram/index.js.map +1 -1
  149. package/cjs/chart/index.d.ts +2 -4
  150. package/cjs/chart/index.js +4 -31
  151. package/cjs/chart/index.js.map +1 -1
  152. package/cjs/chart/interface/chart.d.ts +20 -7
  153. package/cjs/chart/interface/chart.js.map +1 -1
  154. package/cjs/chart/interface/common.d.ts +17 -1
  155. package/cjs/chart/interface/common.js.map +1 -1
  156. package/cjs/chart/line/index.d.ts +1 -0
  157. package/cjs/chart/line/index.js +2 -1
  158. package/cjs/chart/line/index.js.map +1 -1
  159. package/cjs/chart/line/interface.d.ts +1 -1
  160. package/cjs/chart/line/interface.js.map +1 -1
  161. package/cjs/chart/line/line-transformer.d.ts +6 -0
  162. package/cjs/chart/line/line-transformer.js +31 -0
  163. package/cjs/chart/line/line-transformer.js.map +1 -0
  164. package/cjs/chart/line/line.d.ts +6 -4
  165. package/cjs/chart/line/line.js +6 -22
  166. package/cjs/chart/line/line.js.map +1 -1
  167. package/cjs/chart/map/index.d.ts +1 -0
  168. package/cjs/chart/map/index.js +2 -1
  169. package/cjs/chart/map/index.js.map +1 -1
  170. package/cjs/chart/map/map-transformer.d.ts +8 -0
  171. package/cjs/chart/map/map-transformer.js +41 -0
  172. package/cjs/chart/map/map-transformer.js.map +1 -0
  173. package/cjs/chart/map/map.d.ts +6 -6
  174. package/cjs/chart/map/map.js +5 -31
  175. package/cjs/chart/map/map.js.map +1 -1
  176. package/cjs/chart/pie/3d/index.d.ts +1 -0
  177. package/cjs/{theme/builtin/common/legacy → chart/pie/3d}/index.js +1 -1
  178. package/cjs/chart/pie/3d/index.js.map +1 -0
  179. package/cjs/chart/pie/3d/pie-3d.d.ts +17 -0
  180. package/cjs/chart/pie/3d/pie-3d.js +34 -0
  181. package/cjs/chart/pie/3d/pie-3d.js.map +1 -0
  182. package/cjs/chart/pie/base/base.d.ts +8 -0
  183. package/cjs/chart/pie/base/base.js +16 -0
  184. package/cjs/chart/pie/base/base.js.map +1 -0
  185. package/cjs/chart/pie/base/index.d.ts +2 -0
  186. package/cjs/chart/pie/base/index.js +21 -0
  187. package/cjs/chart/pie/base/index.js.map +1 -0
  188. package/cjs/chart/pie/base/pie-transformer.d.ts +7 -0
  189. package/cjs/chart/pie/{base.js → base/pie-transformer.js} +5 -5
  190. package/cjs/chart/pie/base/pie-transformer.js.map +1 -0
  191. package/cjs/chart/pie/index.d.ts +2 -1
  192. package/cjs/chart/pie/index.js +2 -2
  193. package/cjs/chart/pie/index.js.map +1 -1
  194. package/cjs/chart/pie/pie.d.ts +7 -2
  195. package/cjs/chart/pie/pie.js +5 -3
  196. package/cjs/chart/pie/pie.js.map +1 -1
  197. package/cjs/chart/polar/index.d.ts +1 -1
  198. package/cjs/chart/polar/index.js +2 -2
  199. package/cjs/chart/polar/index.js.map +1 -1
  200. package/cjs/chart/polar/polar-transformer.d.ts +9 -0
  201. package/cjs/chart/polar/{polar.js → polar-transformer.js} +15 -15
  202. package/cjs/chart/polar/polar-transformer.js.map +1 -0
  203. package/cjs/chart/polar/progress-like/index.d.ts +1 -0
  204. package/cjs/chart/polar/progress-like/index.js +21 -0
  205. package/cjs/chart/polar/progress-like/index.js.map +1 -0
  206. package/cjs/chart/polar/progress-like/progress-like-transformer.d.ts +8 -0
  207. package/cjs/chart/polar/{progress-like.js → progress-like/progress-like-transformer.js} +5 -5
  208. package/cjs/chart/polar/progress-like/progress-like-transformer.js.map +1 -0
  209. package/cjs/chart/polar/rose-like/index.d.ts +1 -0
  210. package/cjs/chart/polar/rose-like/index.js +21 -0
  211. package/cjs/chart/polar/rose-like/index.js.map +1 -0
  212. package/cjs/chart/polar/rose-like/rose-like-transformer.d.ts +7 -0
  213. package/cjs/chart/polar/{rose-like.js → rose-like/rose-like-transformer.js} +5 -8
  214. package/cjs/chart/polar/rose-like/rose-like-transformer.js.map +1 -0
  215. package/cjs/chart/progress/circular/circular-progress-transformer.d.ts +7 -0
  216. package/cjs/chart/progress/circular/circular-progress-transformer.js +33 -0
  217. package/cjs/chart/progress/circular/circular-progress-transformer.js.map +1 -0
  218. package/cjs/chart/progress/circular/circular.d.ts +8 -4
  219. package/cjs/chart/progress/circular/circular.js +6 -24
  220. package/cjs/chart/progress/circular/circular.js.map +1 -1
  221. package/cjs/chart/progress/circular/index.d.ts +1 -0
  222. package/cjs/chart/progress/circular/index.js +2 -1
  223. package/cjs/chart/progress/circular/index.js.map +1 -1
  224. package/cjs/chart/progress/circular/interface.d.ts +1 -1
  225. package/cjs/chart/progress/circular/interface.js.map +1 -1
  226. package/cjs/chart/progress/linear/index.d.ts +1 -0
  227. package/cjs/chart/progress/linear/index.js +2 -1
  228. package/cjs/chart/progress/linear/index.js.map +1 -1
  229. package/cjs/chart/progress/linear/interface.d.ts +1 -1
  230. package/cjs/chart/progress/linear/interface.js.map +1 -1
  231. package/cjs/chart/progress/linear/linear-progress-transformer.d.ts +7 -0
  232. package/cjs/chart/progress/linear/linear-progress-transformer.js +68 -0
  233. package/cjs/chart/progress/linear/linear-progress-transformer.js.map +1 -0
  234. package/cjs/chart/progress/linear/linear.d.ts +6 -5
  235. package/cjs/chart/progress/linear/linear.js +6 -59
  236. package/cjs/chart/progress/linear/linear.js.map +1 -1
  237. package/cjs/chart/radar/index.d.ts +1 -0
  238. package/cjs/chart/radar/index.js +2 -1
  239. package/cjs/chart/radar/index.js.map +1 -1
  240. package/cjs/chart/radar/radar-transformer.d.ts +6 -0
  241. package/cjs/chart/radar/radar-transformer.js +53 -0
  242. package/cjs/chart/radar/radar-transformer.js.map +1 -0
  243. package/cjs/chart/radar/radar.d.ts +8 -4
  244. package/cjs/chart/radar/radar.js +7 -44
  245. package/cjs/chart/radar/radar.js.map +1 -1
  246. package/cjs/chart/range-area/index.d.ts +1 -0
  247. package/cjs/chart/range-area/index.js +2 -1
  248. package/cjs/chart/range-area/index.js.map +1 -1
  249. package/cjs/chart/range-area/range-area-transformer.d.ts +6 -0
  250. package/cjs/chart/range-area/range-area-transformer.js +22 -0
  251. package/cjs/chart/range-area/range-area-transformer.js.map +1 -0
  252. package/cjs/chart/range-area/range-area.d.ts +7 -4
  253. package/cjs/chart/range-area/range-area.js +6 -13
  254. package/cjs/chart/range-area/range-area.js.map +1 -1
  255. package/cjs/chart/range-column/3d/index.d.ts +2 -0
  256. package/cjs/chart/range-column/3d/index.js +21 -0
  257. package/cjs/chart/range-column/3d/index.js.map +1 -0
  258. package/cjs/chart/range-column/3d/range-column-3d-transformer.d.ts +5 -0
  259. package/cjs/chart/range-column/3d/range-column-3d-transformer.js +21 -0
  260. package/cjs/chart/range-column/3d/range-column-3d-transformer.js.map +1 -0
  261. package/cjs/chart/range-column/3d/range-column-3d.d.ts +13 -0
  262. package/cjs/chart/range-column/3d/range-column-3d.js +25 -0
  263. package/cjs/chart/range-column/3d/range-column-3d.js.map +1 -0
  264. package/cjs/chart/range-column/index.d.ts +2 -1
  265. package/cjs/chart/range-column/index.js +2 -2
  266. package/cjs/chart/range-column/index.js.map +1 -1
  267. package/cjs/chart/range-column/range-column-transformer.d.ts +6 -0
  268. package/cjs/chart/range-column/range-column-transformer.js +25 -0
  269. package/cjs/chart/range-column/range-column-transformer.js.map +1 -0
  270. package/cjs/chart/range-column/range-column.d.ts +7 -4
  271. package/cjs/chart/range-column/range-column.js +6 -16
  272. package/cjs/chart/range-column/range-column.js.map +1 -1
  273. package/cjs/chart/rose/index.d.ts +1 -0
  274. package/cjs/chart/rose/index.js +2 -1
  275. package/cjs/chart/rose/index.js.map +1 -1
  276. package/cjs/chart/rose/rose-transformer.d.ts +6 -0
  277. package/cjs/chart/rose/rose-transformer.js +43 -0
  278. package/cjs/chart/rose/rose-transformer.js.map +1 -0
  279. package/cjs/chart/rose/rose.d.ts +8 -4
  280. package/cjs/chart/rose/rose.js +7 -34
  281. package/cjs/chart/rose/rose.js.map +1 -1
  282. package/cjs/chart/sankey/index.d.ts +1 -0
  283. package/cjs/chart/sankey/index.js +2 -1
  284. package/cjs/chart/sankey/index.js.map +1 -1
  285. package/cjs/chart/sankey/sankey-transformer.d.ts +6 -0
  286. package/cjs/chart/sankey/sankey-transformer.js +49 -0
  287. package/cjs/chart/sankey/sankey-transformer.js.map +1 -0
  288. package/cjs/chart/sankey/sankey.d.ts +6 -4
  289. package/cjs/chart/sankey/sankey.js +5 -39
  290. package/cjs/chart/sankey/sankey.js.map +1 -1
  291. package/cjs/chart/scatter/index.d.ts +1 -0
  292. package/cjs/chart/scatter/index.js +2 -1
  293. package/cjs/chart/scatter/index.js.map +1 -1
  294. package/cjs/chart/scatter/scatter-transformer.d.ts +5 -0
  295. package/cjs/chart/scatter/scatter-transformer.js +22 -0
  296. package/cjs/chart/scatter/scatter-transformer.js.map +1 -0
  297. package/cjs/chart/scatter/scatter.d.ts +6 -3
  298. package/cjs/chart/scatter/scatter.js +6 -13
  299. package/cjs/chart/scatter/scatter.js.map +1 -1
  300. package/cjs/chart/sequence/index.d.ts +1 -0
  301. package/cjs/chart/sequence/index.js +2 -1
  302. package/cjs/chart/sequence/index.js.map +1 -1
  303. package/cjs/chart/sequence/sequence-transformer.d.ts +7 -0
  304. package/cjs/chart/sequence/sequence-transformer.js +181 -0
  305. package/cjs/chart/sequence/sequence-transformer.js.map +1 -0
  306. package/cjs/chart/sequence/sequence.d.ts +9 -7
  307. package/cjs/chart/sequence/sequence.js +26 -185
  308. package/cjs/chart/sequence/sequence.js.map +1 -1
  309. package/cjs/chart/stack.js +1 -2
  310. package/cjs/chart/stack.js.map +1 -1
  311. package/cjs/chart/sunburst/index.d.ts +1 -0
  312. package/cjs/chart/sunburst/index.js +2 -1
  313. package/cjs/chart/sunburst/index.js.map +1 -1
  314. package/cjs/chart/sunburst/sunburst-transformer.d.ts +7 -0
  315. package/cjs/chart/sunburst/sunburst-transformer.js +45 -0
  316. package/cjs/chart/sunburst/sunburst-transformer.js.map +1 -0
  317. package/cjs/chart/sunburst/sunburst.d.ts +6 -5
  318. package/cjs/chart/sunburst/sunburst.js +5 -35
  319. package/cjs/chart/sunburst/sunburst.js.map +1 -1
  320. package/cjs/chart/treemap/index.d.ts +1 -0
  321. package/cjs/chart/treemap/index.js +2 -1
  322. package/cjs/chart/treemap/index.js.map +1 -1
  323. package/cjs/chart/treemap/treemap-transformer.d.ts +7 -0
  324. package/cjs/chart/treemap/treemap-transformer.js +45 -0
  325. package/cjs/chart/treemap/treemap-transformer.js.map +1 -0
  326. package/cjs/chart/treemap/treemap.d.ts +7 -4
  327. package/cjs/chart/treemap/treemap.js +5 -35
  328. package/cjs/chart/treemap/treemap.js.map +1 -1
  329. package/cjs/chart/util.d.ts +3 -3
  330. package/cjs/chart/util.js +9 -4
  331. package/cjs/chart/util.js.map +1 -1
  332. package/cjs/chart/waterfall/index.d.ts +1 -0
  333. package/cjs/chart/waterfall/index.js +2 -1
  334. package/cjs/chart/waterfall/index.js.map +1 -1
  335. package/cjs/chart/waterfall/waterfall-transformer.d.ts +7 -0
  336. package/cjs/chart/waterfall/waterfall-transformer.js +26 -0
  337. package/cjs/chart/waterfall/waterfall-transformer.js.map +1 -0
  338. package/cjs/chart/waterfall/waterfall.d.ts +6 -3
  339. package/cjs/chart/waterfall/waterfall.js +5 -16
  340. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  341. package/cjs/chart/word-cloud/3d/index.d.ts +2 -0
  342. package/cjs/chart/word-cloud/3d/index.js +21 -0
  343. package/cjs/chart/word-cloud/3d/index.js.map +1 -0
  344. package/cjs/chart/word-cloud/3d/word-cloud-3d-transformer.d.ts +6 -0
  345. package/{esm/chart/word-cloud/word-cloud-3d.js → cjs/chart/word-cloud/3d/word-cloud-3d-transformer.js} +8 -21
  346. package/cjs/chart/word-cloud/3d/word-cloud-3d-transformer.js.map +1 -0
  347. package/cjs/chart/word-cloud/3d/word-cloud-3d.d.ts +15 -0
  348. package/cjs/chart/word-cloud/3d/word-cloud-3d.js +31 -0
  349. package/cjs/chart/word-cloud/3d/word-cloud-3d.js.map +1 -0
  350. package/cjs/chart/word-cloud/base/base.d.ts +9 -0
  351. package/cjs/chart/word-cloud/base/base.js +17 -0
  352. package/cjs/chart/word-cloud/base/base.js.map +1 -0
  353. package/cjs/chart/word-cloud/base/index.d.ts +2 -0
  354. package/cjs/chart/word-cloud/base/index.js +21 -0
  355. package/cjs/chart/word-cloud/base/index.js.map +1 -0
  356. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.d.ts +5 -0
  357. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.js +22 -0
  358. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.js.map +1 -0
  359. package/cjs/chart/word-cloud/index.d.ts +2 -1
  360. package/cjs/chart/word-cloud/index.js +2 -2
  361. package/cjs/chart/word-cloud/index.js.map +1 -1
  362. package/cjs/chart/word-cloud/word-cloud-transformer.d.ts +5 -0
  363. package/cjs/chart/word-cloud/word-cloud-transformer.js +38 -0
  364. package/cjs/chart/word-cloud/word-cloud-transformer.js.map +1 -0
  365. package/cjs/chart/word-cloud/word-cloud.d.ts +6 -3
  366. package/cjs/chart/word-cloud/word-cloud.js +5 -28
  367. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  368. package/cjs/compile/interface/compiler.d.ts +5 -0
  369. package/cjs/compile/interface/compiler.js.map +1 -1
  370. package/cjs/compile/mark/compilable-mark.d.ts +0 -5
  371. package/cjs/compile/mark/compilable-mark.js +0 -9
  372. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  373. package/cjs/compile/mark/interface.d.ts +1 -4
  374. package/cjs/compile/mark/interface.js.map +1 -1
  375. package/cjs/component/axis/base-axis.d.ts +27 -4
  376. package/cjs/component/axis/base-axis.js +36 -20
  377. package/cjs/component/axis/base-axis.js.map +1 -1
  378. package/cjs/component/axis/cartesian/axis.d.ts +6 -7
  379. package/cjs/component/axis/cartesian/axis.js +43 -31
  380. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  381. package/cjs/component/axis/cartesian/band-axis.d.ts +1 -0
  382. package/cjs/component/axis/cartesian/band-axis.js +2 -2
  383. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  384. package/cjs/component/axis/cartesian/interface/spec.js.map +1 -1
  385. package/cjs/component/axis/cartesian/linear-axis.d.ts +1 -0
  386. package/cjs/component/axis/cartesian/linear-axis.js +1 -1
  387. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  388. package/cjs/component/axis/cartesian/log-axis.d.ts +1 -0
  389. package/cjs/component/axis/cartesian/log-axis.js +1 -1
  390. package/cjs/component/axis/cartesian/log-axis.js.map +1 -1
  391. package/cjs/component/axis/cartesian/symlog-axis.d.ts +1 -0
  392. package/cjs/component/axis/cartesian/symlog-axis.js +1 -1
  393. package/cjs/component/axis/cartesian/symlog-axis.js.map +1 -1
  394. package/cjs/component/axis/cartesian/time-axis.d.ts +1 -0
  395. package/cjs/component/axis/cartesian/time-axis.js +2 -1
  396. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  397. package/cjs/component/axis/cartesian/util/common.d.ts +4 -0
  398. package/cjs/component/axis/cartesian/util/common.js +13 -3
  399. package/cjs/component/axis/cartesian/util/common.js.map +1 -1
  400. package/cjs/component/axis/interface/common.d.ts +1 -0
  401. package/cjs/component/axis/interface/common.js.map +1 -1
  402. package/cjs/component/axis/polar/axis.d.ts +7 -7
  403. package/cjs/component/axis/polar/axis.js +49 -36
  404. package/cjs/component/axis/polar/axis.js.map +1 -1
  405. package/cjs/component/axis/polar/band-axis.d.ts +1 -0
  406. package/cjs/component/axis/polar/band-axis.js +1 -1
  407. package/cjs/component/axis/polar/band-axis.js.map +1 -1
  408. package/cjs/component/axis/polar/interface/common.d.ts +0 -1
  409. package/cjs/component/axis/polar/interface/common.js.map +1 -1
  410. package/cjs/component/axis/polar/linear-axis.d.ts +1 -0
  411. package/cjs/component/axis/polar/linear-axis.js +1 -1
  412. package/cjs/component/axis/polar/linear-axis.js.map +1 -1
  413. package/cjs/component/axis/polar/util/common.d.ts +5 -0
  414. package/cjs/component/axis/polar/util/common.js +17 -0
  415. package/cjs/component/axis/polar/util/common.js.map +1 -0
  416. package/cjs/component/axis/polar/util/index.d.ts +1 -0
  417. package/cjs/component/axis/polar/util/index.js +21 -0
  418. package/cjs/component/axis/polar/util/index.js.map +1 -0
  419. package/cjs/component/axis/util.d.ts +4 -3
  420. package/cjs/component/axis/util.js +16 -12
  421. package/cjs/component/axis/util.js.map +1 -1
  422. package/cjs/component/base/base-component-transformer.d.ts +10 -0
  423. package/cjs/component/base/base-component-transformer.js +30 -0
  424. package/cjs/component/base/base-component-transformer.js.map +1 -0
  425. package/cjs/component/base/base-component.d.ts +10 -6
  426. package/cjs/component/base/base-component.js +32 -22
  427. package/cjs/component/base/base-component.js.map +1 -1
  428. package/cjs/component/base/index.d.ts +1 -0
  429. package/cjs/component/base/index.js +1 -1
  430. package/cjs/component/base/index.js.map +1 -1
  431. package/cjs/component/base/util.d.ts +2 -2
  432. package/cjs/component/base/util.js +14 -16
  433. package/cjs/component/base/util.js.map +1 -1
  434. package/cjs/component/brush/brush.d.ts +9 -5
  435. package/cjs/component/brush/brush.js +55 -40
  436. package/cjs/component/brush/brush.js.map +1 -1
  437. package/cjs/component/crosshair/base.d.ts +5 -4
  438. package/cjs/component/crosshair/base.js +19 -13
  439. package/cjs/component/crosshair/base.js.map +1 -1
  440. package/cjs/component/crosshair/cartesian.d.ts +3 -2
  441. package/cjs/component/crosshair/cartesian.js +17 -11
  442. package/cjs/component/crosshair/cartesian.js.map +1 -1
  443. package/cjs/component/crosshair/polar.d.ts +3 -2
  444. package/cjs/component/crosshair/polar.js +17 -11
  445. package/cjs/component/crosshair/polar.js.map +1 -1
  446. package/cjs/component/crosshair/util.d.ts +3 -4
  447. package/cjs/component/crosshair/util.js +16 -17
  448. package/cjs/component/crosshair/util.js.map +1 -1
  449. package/cjs/component/custom-mark/custom-mark.d.ts +7 -5
  450. package/cjs/component/custom-mark/custom-mark.js +19 -13
  451. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  452. package/cjs/component/data-zoom/data-filter-base-component.d.ts +3 -3
  453. package/cjs/component/data-zoom/data-filter-base-component.js +11 -10
  454. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  455. package/cjs/component/data-zoom/data-zoom/data-zoom-transformer.d.ts +9 -0
  456. package/cjs/component/data-zoom/data-zoom/data-zoom-transformer.js +37 -0
  457. package/cjs/component/data-zoom/data-zoom/data-zoom-transformer.js.map +1 -0
  458. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +12 -2
  459. package/cjs/component/data-zoom/data-zoom/data-zoom.js +38 -40
  460. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  461. package/cjs/component/data-zoom/data-zoom/index.d.ts +1 -0
  462. package/cjs/component/data-zoom/data-zoom/index.js +2 -1
  463. package/cjs/component/data-zoom/data-zoom/index.js.map +1 -1
  464. package/cjs/component/data-zoom/data-zoom/interface.d.ts +2 -2
  465. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  466. package/cjs/component/data-zoom/interface.d.ts +1 -1
  467. package/cjs/component/data-zoom/interface.js.map +1 -1
  468. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +5 -1
  469. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +20 -11
  470. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  471. package/cjs/component/data-zoom/util.d.ts +2 -2
  472. package/cjs/component/data-zoom/util.js +2 -2
  473. package/cjs/component/data-zoom/util.js.map +1 -1
  474. package/cjs/component/geo/geo-coordinate.d.ts +4 -7
  475. package/cjs/component/geo/geo-coordinate.js +26 -24
  476. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  477. package/cjs/component/index.d.ts +1 -1
  478. package/cjs/component/index.js +3 -3
  479. package/cjs/component/index.js.map +1 -1
  480. package/cjs/component/indicator/indicator.d.ts +5 -4
  481. package/cjs/component/indicator/indicator.js +19 -7
  482. package/cjs/component/indicator/indicator.js.map +1 -1
  483. package/cjs/component/interface/common.d.ts +6 -4
  484. package/cjs/component/interface/common.js.map +1 -1
  485. package/cjs/component/interface/type.d.ts +8 -0
  486. package/cjs/component/interface/type.js +11 -3
  487. package/cjs/component/interface/type.js.map +1 -1
  488. package/cjs/component/label/base-label.d.ts +2 -2
  489. package/cjs/component/label/base-label.js +3 -3
  490. package/cjs/component/label/base-label.js.map +1 -1
  491. package/cjs/component/label/index.d.ts +2 -0
  492. package/cjs/component/label/index.js +2 -1
  493. package/cjs/component/label/index.js.map +1 -1
  494. package/cjs/component/label/interface.d.ts +2 -2
  495. package/cjs/component/label/interface.js.map +1 -1
  496. package/cjs/component/label/label-transformer.d.ts +8 -0
  497. package/cjs/component/label/label-transformer.js +19 -0
  498. package/cjs/component/label/label-transformer.js.map +1 -0
  499. package/cjs/component/label/label.d.ts +13 -5
  500. package/cjs/component/label/label.js +36 -28
  501. package/cjs/component/label/label.js.map +1 -1
  502. package/cjs/component/label/{totalLabel.d.ts → total-label.d.ts} +7 -6
  503. package/cjs/component/label/{totalLabel.js → total-label.js} +33 -26
  504. package/cjs/component/label/total-label.js.map +1 -0
  505. package/cjs/component/label/util.d.ts +1 -0
  506. package/cjs/component/label/util.js +2 -1
  507. package/cjs/component/label/util.js.map +1 -1
  508. package/cjs/component/legend/base-legend.d.ts +3 -1
  509. package/cjs/component/legend/base-legend.js +7 -9
  510. package/cjs/component/legend/base-legend.js.map +1 -1
  511. package/cjs/component/legend/continuous/legend.d.ts +4 -6
  512. package/cjs/component/legend/continuous/legend.js +15 -12
  513. package/cjs/component/legend/continuous/legend.js.map +1 -1
  514. package/cjs/component/legend/discrete/legend.d.ts +4 -7
  515. package/cjs/component/legend/discrete/legend.js +17 -12
  516. package/cjs/component/legend/discrete/legend.js.map +1 -1
  517. package/cjs/component/legend/discrete/util.js +1 -1
  518. package/cjs/component/legend/discrete/util.js.map +1 -1
  519. package/cjs/component/legend/util.d.ts +1 -1
  520. package/cjs/component/map-label/component.d.ts +5 -2
  521. package/cjs/component/map-label/component.js +10 -5
  522. package/cjs/component/map-label/component.js.map +1 -1
  523. package/cjs/component/marker/mark-area/mark-area.d.ts +6 -4
  524. package/cjs/component/marker/mark-area/mark-area.js +18 -10
  525. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  526. package/cjs/component/marker/mark-line/mark-line.d.ts +6 -4
  527. package/cjs/component/marker/mark-line/mark-line.js +18 -10
  528. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  529. package/cjs/component/marker/mark-point/mark-point.d.ts +6 -4
  530. package/cjs/component/marker/mark-point/mark-point.js +18 -10
  531. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  532. package/cjs/component/player/player.d.ts +4 -4
  533. package/cjs/component/player/player.js +9 -4
  534. package/cjs/component/player/player.js.map +1 -1
  535. package/cjs/component/title/title.d.ts +9 -6
  536. package/cjs/component/title/title.js +21 -15
  537. package/cjs/component/title/title.js.map +1 -1
  538. package/cjs/component/tooltip/handler/base.js +10 -9
  539. package/cjs/component/tooltip/handler/base.js.map +1 -1
  540. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js +7 -2
  541. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  542. package/cjs/component/tooltip/index.d.ts +1 -0
  543. package/cjs/component/tooltip/index.js +2 -1
  544. package/cjs/component/tooltip/index.js.map +1 -1
  545. package/cjs/component/tooltip/tooltip-transformer.d.ts +8 -0
  546. package/cjs/component/tooltip/tooltip-transformer.js +23 -0
  547. package/cjs/component/tooltip/tooltip-transformer.js.map +1 -0
  548. package/cjs/component/tooltip/tooltip.d.ts +10 -8
  549. package/cjs/component/tooltip/tooltip.js +23 -21
  550. package/cjs/component/tooltip/tooltip.js.map +1 -1
  551. package/cjs/component/util.d.ts +2 -2
  552. package/cjs/component/util.js +2 -2
  553. package/cjs/component/util.js.map +1 -1
  554. package/cjs/constant/event.d.ts +1 -0
  555. package/cjs/constant/event.js +7 -6
  556. package/cjs/constant/event.js.map +1 -1
  557. package/cjs/constant/polar.d.ts +0 -10
  558. package/cjs/constant/polar.js +2 -7
  559. package/cjs/constant/polar.js.map +1 -1
  560. package/cjs/constant/scatter.js +2 -1
  561. package/cjs/constant/scroll-bar.js +1 -2
  562. package/cjs/core/factory.d.ts +12 -3
  563. package/cjs/core/factory.js +28 -1
  564. package/cjs/core/factory.js.map +1 -1
  565. package/cjs/core/index.d.ts +2 -1
  566. package/cjs/core/index.js +2 -2
  567. package/cjs/core/index.js.map +1 -1
  568. package/cjs/core/interface.d.ts +17 -11
  569. package/cjs/core/interface.js.map +1 -1
  570. package/cjs/core/vchart.d.ts +30 -7
  571. package/cjs/core/vchart.js +200 -133
  572. package/cjs/core/vchart.js.map +1 -1
  573. package/cjs/event/bubble.js +2 -1
  574. package/cjs/event/event-dispatcher.js +1 -2
  575. package/cjs/index-lark.js +2 -2
  576. package/cjs/index-lark.js.map +1 -1
  577. package/cjs/index-wx.js +2 -2
  578. package/cjs/index-wx.js.map +1 -1
  579. package/cjs/interaction/config.js +1 -1
  580. package/cjs/interaction/dimension-trigger.js +1 -1
  581. package/cjs/interaction/interaction.js +1 -1
  582. package/cjs/interaction/zoom/zoomable.js +17 -8
  583. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  584. package/cjs/layout/base-layout.js +1 -1
  585. package/cjs/layout/index.js +1 -1
  586. package/cjs/layout/interface.js +1 -1
  587. package/cjs/layout/layout-item.js +1 -1
  588. package/cjs/mark/arc-3d.d.ts +2 -0
  589. package/cjs/mark/arc-3d.js +10 -3
  590. package/cjs/mark/arc-3d.js.map +1 -1
  591. package/cjs/mark/arc.d.ts +1 -0
  592. package/cjs/mark/arc.js +9 -2
  593. package/cjs/mark/arc.js.map +1 -1
  594. package/cjs/mark/area.d.ts +1 -0
  595. package/cjs/mark/area.js +9 -2
  596. package/cjs/mark/area.js.map +1 -1
  597. package/cjs/mark/box-plot.d.ts +1 -0
  598. package/cjs/mark/box-plot.js +10 -5
  599. package/cjs/mark/box-plot.js.map +1 -1
  600. package/cjs/mark/cell.d.ts +1 -0
  601. package/cjs/mark/cell.js +9 -2
  602. package/cjs/mark/cell.js.map +1 -1
  603. package/cjs/mark/component.d.ts +1 -0
  604. package/cjs/mark/component.js +8 -2
  605. package/cjs/mark/component.js.map +1 -1
  606. package/cjs/mark/group.d.ts +2 -1
  607. package/cjs/mark/group.js +8 -2
  608. package/cjs/mark/group.js.map +1 -1
  609. package/cjs/mark/image.d.ts +1 -0
  610. package/cjs/mark/image.js +8 -2
  611. package/cjs/mark/image.js.map +1 -1
  612. package/cjs/mark/label.d.ts +1 -0
  613. package/cjs/mark/label.js +8 -2
  614. package/cjs/mark/label.js.map +1 -1
  615. package/cjs/mark/line.d.ts +1 -0
  616. package/cjs/mark/line.js +9 -2
  617. package/cjs/mark/line.js.map +1 -1
  618. package/cjs/mark/link-path.d.ts +1 -0
  619. package/cjs/mark/link-path.js +8 -3
  620. package/cjs/mark/link-path.js.map +1 -1
  621. package/cjs/mark/path.d.ts +1 -0
  622. package/cjs/mark/path.js +8 -2
  623. package/cjs/mark/path.js.map +1 -1
  624. package/cjs/mark/polygon/polygon.d.ts +1 -0
  625. package/cjs/mark/polygon/polygon.js +9 -2
  626. package/cjs/mark/polygon/polygon.js.map +1 -1
  627. package/cjs/mark/polygon/pyramid-3d.d.ts +1 -0
  628. package/cjs/mark/polygon/pyramid-3d.js +9 -2
  629. package/cjs/mark/polygon/pyramid-3d.js.map +1 -1
  630. package/cjs/mark/progress-arc.d.ts +1 -0
  631. package/cjs/mark/progress-arc.js +9 -2
  632. package/cjs/mark/progress-arc.js.map +1 -1
  633. package/cjs/mark/rect-3d.d.ts +1 -0
  634. package/cjs/mark/rect-3d.js +9 -2
  635. package/cjs/mark/rect-3d.js.map +1 -1
  636. package/cjs/mark/rect.d.ts +1 -0
  637. package/cjs/mark/rect.js +9 -2
  638. package/cjs/mark/rect.js.map +1 -1
  639. package/cjs/mark/ripple.d.ts +1 -0
  640. package/cjs/mark/ripple.js +8 -3
  641. package/cjs/mark/ripple.js.map +1 -1
  642. package/cjs/mark/rule.d.ts +1 -0
  643. package/cjs/mark/rule.js +8 -2
  644. package/cjs/mark/rule.js.map +1 -1
  645. package/cjs/mark/symbol.d.ts +1 -0
  646. package/cjs/mark/symbol.js +8 -2
  647. package/cjs/mark/symbol.js.map +1 -1
  648. package/cjs/mark/text.d.ts +1 -0
  649. package/cjs/mark/text.js +8 -2
  650. package/cjs/mark/text.js.map +1 -1
  651. package/cjs/model/base-model-transformer.d.ts +24 -0
  652. package/cjs/model/base-model-transformer.js +46 -0
  653. package/cjs/model/base-model-transformer.js.map +1 -0
  654. package/cjs/model/base-model.d.ts +9 -14
  655. package/cjs/model/base-model.js +24 -38
  656. package/cjs/model/base-model.js.map +1 -1
  657. package/cjs/model/index.d.ts +3 -0
  658. package/cjs/model/index.js +22 -0
  659. package/cjs/model/index.js.map +1 -0
  660. package/cjs/model/interface.d.ts +31 -4
  661. package/cjs/model/interface.js.map +1 -1
  662. package/cjs/model/layout-model.js.map +1 -1
  663. package/cjs/plugin/base/base-plugin-service.d.ts +13 -0
  664. package/cjs/plugin/base/base-plugin-service.js +48 -0
  665. package/cjs/plugin/base/base-plugin-service.js.map +1 -0
  666. package/cjs/plugin/base/base-plugin.d.ts +9 -0
  667. package/cjs/plugin/base/base-plugin.js +19 -0
  668. package/cjs/plugin/base/base-plugin.js.map +1 -0
  669. package/cjs/plugin/base/interface.d.ts +22 -0
  670. package/cjs/plugin/base/interface.js +6 -0
  671. package/cjs/plugin/base/interface.js.map +1 -0
  672. package/cjs/plugin/chart/index.d.ts +2 -0
  673. package/cjs/plugin/chart/index.js +21 -0
  674. package/cjs/plugin/chart/index.js.map +1 -0
  675. package/cjs/plugin/chart/interface.d.ts +22 -2
  676. package/cjs/plugin/chart/interface.js.map +1 -1
  677. package/cjs/plugin/chart/media-query/index.d.ts +2 -0
  678. package/cjs/plugin/chart/media-query/index.js +21 -0
  679. package/cjs/plugin/chart/media-query/index.js.map +1 -0
  680. package/cjs/plugin/chart/media-query/interface/common.d.ts +28 -0
  681. package/cjs/plugin/chart/media-query/interface/common.js +6 -0
  682. package/cjs/plugin/chart/media-query/interface/common.js.map +1 -0
  683. package/cjs/plugin/chart/media-query/interface/index.d.ts +2 -0
  684. package/cjs/plugin/chart/media-query/interface/index.js +21 -0
  685. package/cjs/plugin/chart/media-query/interface/index.js.map +1 -0
  686. package/cjs/plugin/chart/media-query/interface/spec.d.ts +25 -0
  687. package/cjs/plugin/chart/media-query/interface/spec.js +6 -0
  688. package/cjs/plugin/chart/media-query/interface/spec.js.map +1 -0
  689. package/cjs/plugin/chart/media-query/media-query.d.ts +28 -0
  690. package/cjs/plugin/chart/media-query/media-query.js +119 -0
  691. package/cjs/plugin/chart/media-query/media-query.js.map +1 -0
  692. package/cjs/plugin/chart/media-query/util/action.d.ts +3 -0
  693. package/cjs/plugin/chart/media-query/util/action.js +34 -0
  694. package/cjs/plugin/chart/media-query/util/action.js.map +1 -0
  695. package/cjs/plugin/chart/media-query/util/filter.d.ts +4 -0
  696. package/cjs/plugin/chart/media-query/util/filter.js +84 -0
  697. package/cjs/plugin/chart/media-query/util/filter.js.map +1 -0
  698. package/cjs/plugin/chart/media-query/util/index.d.ts +2 -0
  699. package/cjs/plugin/chart/media-query/util/index.js +21 -0
  700. package/cjs/plugin/chart/media-query/util/index.js.map +1 -0
  701. package/cjs/plugin/chart/media-query/util/query.d.ts +3 -0
  702. package/cjs/plugin/chart/media-query/util/query.js +32 -0
  703. package/cjs/plugin/chart/media-query/util/query.js.map +1 -0
  704. package/cjs/plugin/chart/plugin-service.d.ts +12 -0
  705. package/cjs/plugin/chart/plugin-service.js +36 -0
  706. package/cjs/plugin/chart/plugin-service.js.map +1 -0
  707. package/cjs/plugin/chart/register.d.ts +2 -0
  708. package/cjs/plugin/chart/register.js +12 -0
  709. package/cjs/plugin/chart/register.js.map +1 -0
  710. package/cjs/plugin/components/axis-sync-plugin/axis-sync.d.ts +5 -3
  711. package/cjs/plugin/components/axis-sync-plugin/axis-sync.js +5 -4
  712. package/cjs/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  713. package/cjs/plugin/components/interface.d.ts +15 -25
  714. package/cjs/plugin/components/interface.js.map +1 -1
  715. package/cjs/plugin/components/plugin-service.d.ts +2 -10
  716. package/cjs/plugin/components/plugin-service.js +3 -35
  717. package/cjs/plugin/components/plugin-service.js.map +1 -1
  718. package/cjs/plugin/index.d.ts +1 -0
  719. package/cjs/plugin/index.js +21 -0
  720. package/cjs/plugin/index.js.map +1 -0
  721. package/cjs/region/index.d.ts +3 -0
  722. package/cjs/region/index.js +22 -0
  723. package/cjs/region/index.js.map +1 -0
  724. package/cjs/region/interface.d.ts +10 -2
  725. package/cjs/region/interface.js.map +1 -1
  726. package/cjs/region/region-transformer.d.ts +8 -0
  727. package/cjs/region/region-transformer.js +19 -0
  728. package/cjs/region/region-transformer.js.map +1 -0
  729. package/cjs/region/region.d.ts +7 -4
  730. package/cjs/region/region.js +11 -14
  731. package/cjs/region/region.js.map +1 -1
  732. package/cjs/series/area/area-transformer.d.ts +5 -0
  733. package/cjs/series/area/area-transformer.js +18 -0
  734. package/cjs/series/area/area-transformer.js.map +1 -0
  735. package/cjs/series/area/area.d.ts +5 -3
  736. package/cjs/series/area/area.js +10 -12
  737. package/cjs/series/area/area.js.map +1 -1
  738. package/cjs/series/bar/bar-3d.js +2 -2
  739. package/cjs/series/bar/bar-3d.js.map +1 -1
  740. package/cjs/series/bar/bar-transformer.d.ts +5 -0
  741. package/cjs/series/bar/bar-transformer.js +16 -0
  742. package/cjs/series/bar/bar-transformer.js.map +1 -0
  743. package/cjs/series/bar/bar.d.ts +5 -3
  744. package/cjs/series/bar/bar.js +7 -6
  745. package/cjs/series/bar/bar.js.map +1 -1
  746. package/cjs/series/base/base-series-transformer.d.ts +18 -0
  747. package/cjs/series/base/base-series-transformer.js +57 -0
  748. package/cjs/series/base/base-series-transformer.js.map +1 -0
  749. package/cjs/series/base/base-series.d.ts +7 -8
  750. package/cjs/series/base/base-series.js +27 -39
  751. package/cjs/series/base/base-series.js.map +1 -1
  752. package/cjs/series/base/index.d.ts +2 -0
  753. package/cjs/series/base/index.js +21 -0
  754. package/cjs/series/base/index.js.map +1 -0
  755. package/cjs/series/box-plot/box-plot.d.ts +2 -3
  756. package/cjs/series/box-plot/box-plot.js +2 -3
  757. package/cjs/series/box-plot/box-plot.js.map +1 -1
  758. package/cjs/series/box-plot/interface.d.ts +1 -2
  759. package/cjs/series/box-plot/interface.js.map +1 -1
  760. package/cjs/series/cartesian/cartesian.d.ts +1 -1
  761. package/cjs/series/cartesian/cartesian.js +2 -2
  762. package/cjs/series/cartesian/cartesian.js.map +1 -1
  763. package/cjs/series/circle-packing/circle-packing.js +2 -2
  764. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  765. package/cjs/series/circle-packing/interface.d.ts +1 -2
  766. package/cjs/series/circle-packing/interface.js.map +1 -1
  767. package/cjs/series/correlation/correlation-transformer.d.ts +5 -0
  768. package/cjs/series/correlation/correlation-transformer.js +16 -0
  769. package/cjs/series/correlation/correlation-transformer.js.map +1 -0
  770. package/cjs/series/correlation/correlation.d.ts +5 -4
  771. package/cjs/series/correlation/correlation.js +6 -8
  772. package/cjs/series/correlation/correlation.js.map +1 -1
  773. package/cjs/series/dot/dot.d.ts +2 -3
  774. package/cjs/series/dot/dot.js +2 -3
  775. package/cjs/series/dot/dot.js.map +1 -1
  776. package/cjs/series/funnel/3d/funnel-3d-transformer.d.ts +6 -0
  777. package/cjs/series/funnel/3d/funnel-3d-transformer.js +16 -0
  778. package/cjs/series/funnel/3d/funnel-3d-transformer.js.map +1 -0
  779. package/cjs/series/funnel/{funnel-3d.d.ts → 3d/funnel-3d.d.ts} +9 -9
  780. package/cjs/series/funnel/{funnel-3d.js → 3d/funnel-3d.js} +4 -6
  781. package/cjs/series/funnel/3d/funnel-3d.js.map +1 -0
  782. package/cjs/series/funnel/3d/index.d.ts +2 -0
  783. package/cjs/series/funnel/3d/index.js +21 -0
  784. package/cjs/series/funnel/3d/index.js.map +1 -0
  785. package/cjs/series/funnel/funnel-transformer.d.ts +5 -0
  786. package/cjs/series/funnel/funnel-transformer.js +16 -0
  787. package/cjs/series/funnel/funnel-transformer.js.map +1 -0
  788. package/cjs/series/funnel/funnel.d.ts +5 -3
  789. package/cjs/series/funnel/funnel.js +6 -9
  790. package/cjs/series/funnel/funnel.js.map +1 -1
  791. package/cjs/series/gauge/gauge-pointer.d.ts +2 -3
  792. package/cjs/series/gauge/gauge-pointer.js +2 -3
  793. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  794. package/cjs/series/gauge/gauge-transformer.d.ts +5 -0
  795. package/cjs/series/gauge/gauge-transformer.js +16 -0
  796. package/cjs/series/gauge/gauge-transformer.js.map +1 -0
  797. package/cjs/series/gauge/gauge.d.ts +4 -3
  798. package/cjs/series/gauge/gauge.js +8 -9
  799. package/cjs/series/gauge/gauge.js.map +1 -1
  800. package/cjs/series/geo/interface.d.ts +1 -1
  801. package/cjs/series/geo/interface.js.map +1 -1
  802. package/cjs/series/heatmap/heatmap-transformer.d.ts +5 -0
  803. package/cjs/series/heatmap/heatmap-transformer.js +16 -0
  804. package/cjs/series/heatmap/heatmap-transformer.js.map +1 -0
  805. package/cjs/series/heatmap/heatmap.d.ts +5 -4
  806. package/cjs/series/heatmap/heatmap.js +5 -7
  807. package/cjs/series/heatmap/heatmap.js.map +1 -1
  808. package/cjs/series/index.d.ts +3 -3
  809. package/cjs/series/index.js +3 -3
  810. package/cjs/series/index.js.map +1 -1
  811. package/cjs/series/interface/common.d.ts +11 -6
  812. package/cjs/series/interface/common.js.map +1 -1
  813. package/cjs/series/interface/series.d.ts +2 -3
  814. package/cjs/series/interface/series.js.map +1 -1
  815. package/cjs/series/line/line.d.ts +5 -3
  816. package/cjs/series/line/line.js +6 -5
  817. package/cjs/series/line/line.js.map +1 -1
  818. package/cjs/series/link/link.d.ts +2 -3
  819. package/cjs/series/link/link.js +1 -2
  820. package/cjs/series/link/link.js.map +1 -1
  821. package/cjs/series/map/map-transformer.d.ts +5 -0
  822. package/cjs/series/map/map-transformer.js +16 -0
  823. package/cjs/series/map/map-transformer.js.map +1 -0
  824. package/cjs/series/map/map.d.ts +8 -3
  825. package/cjs/series/map/map.js +10 -6
  826. package/cjs/series/map/map.js.map +1 -1
  827. package/cjs/series/mixin/line-mixin-transformer.d.ts +5 -0
  828. package/cjs/series/mixin/line-mixin-transformer.js +18 -0
  829. package/cjs/series/mixin/line-mixin-transformer.js.map +1 -0
  830. package/cjs/series/mixin/line-mixin.d.ts +1 -2
  831. package/cjs/series/mixin/line-mixin.js +3 -7
  832. package/cjs/series/mixin/line-mixin.js.map +1 -1
  833. package/cjs/series/pie/3d/index.d.ts +2 -0
  834. package/cjs/series/pie/3d/index.js +21 -0
  835. package/cjs/series/pie/3d/index.js.map +1 -0
  836. package/cjs/series/pie/3d/pie-3d-transformer.d.ts +5 -0
  837. package/cjs/series/pie/3d/pie-3d-transformer.js +16 -0
  838. package/cjs/series/pie/3d/pie-3d-transformer.js.map +1 -0
  839. package/cjs/series/pie/3d/pie-3d.d.ts +20 -0
  840. package/cjs/series/pie/3d/pie-3d.js +51 -0
  841. package/cjs/series/pie/3d/pie-3d.js.map +1 -0
  842. package/cjs/series/pie/interface.d.ts +3 -0
  843. package/cjs/series/pie/interface.js.map +1 -1
  844. package/cjs/series/pie/pie-transformer.d.ts +9 -0
  845. package/cjs/series/pie/pie-transformer.js +30 -0
  846. package/cjs/series/pie/pie-transformer.js.map +1 -0
  847. package/cjs/series/pie/pie.d.ts +6 -13
  848. package/cjs/series/pie/pie.js +9 -55
  849. package/cjs/series/pie/pie.js.map +1 -1
  850. package/cjs/series/polar/index.d.ts +3 -0
  851. package/cjs/series/polar/index.js +22 -0
  852. package/cjs/series/polar/index.js.map +1 -0
  853. package/cjs/series/polar/polar.d.ts +0 -1
  854. package/cjs/series/polar/polar.js +0 -7
  855. package/cjs/series/polar/polar.js.map +1 -1
  856. package/cjs/series/progress/circular/circular.d.ts +2 -3
  857. package/cjs/series/progress/circular/circular.js +3 -3
  858. package/cjs/series/progress/circular/circular.js.map +1 -1
  859. package/cjs/series/progress/linear/linear.d.ts +1 -3
  860. package/cjs/series/progress/linear/linear.js +2 -2
  861. package/cjs/series/progress/linear/linear.js.map +1 -1
  862. package/cjs/series/radar/radar.d.ts +5 -3
  863. package/cjs/series/radar/radar.js +8 -6
  864. package/cjs/series/radar/radar.js.map +1 -1
  865. package/cjs/series/range-area/range-area.js +1 -1
  866. package/cjs/series/range-area/range-area.js.map +1 -1
  867. package/cjs/series/range-column/3d/index.d.ts +2 -0
  868. package/cjs/series/range-column/3d/index.js +21 -0
  869. package/cjs/series/range-column/3d/index.js.map +1 -0
  870. package/cjs/series/range-column/3d/range-column-3d-transformer.d.ts +5 -0
  871. package/cjs/series/range-column/3d/range-column-3d-transformer.js +17 -0
  872. package/cjs/series/range-column/3d/range-column-3d-transformer.js.map +1 -0
  873. package/cjs/series/range-column/{range-column-3d.d.ts → 3d/range-column-3d.d.ts} +6 -6
  874. package/cjs/series/range-column/{range-column-3d.js → 3d/range-column-3d.js} +2 -3
  875. package/cjs/series/range-column/3d/range-column-3d.js.map +1 -0
  876. package/cjs/series/range-column/range-column-transformer.d.ts +5 -0
  877. package/cjs/series/range-column/range-column-transformer.js +17 -0
  878. package/cjs/series/range-column/range-column-transformer.js.map +1 -0
  879. package/cjs/series/range-column/range-column.d.ts +2 -0
  880. package/cjs/series/range-column/range-column.js +6 -7
  881. package/cjs/series/range-column/range-column.js.map +1 -1
  882. package/cjs/series/rose/rose-transformer.d.ts +5 -0
  883. package/cjs/series/rose/rose-transformer.js +16 -0
  884. package/cjs/series/rose/rose-transformer.js.map +1 -0
  885. package/cjs/series/rose/rose.d.ts +4 -3
  886. package/cjs/series/rose/rose.js +6 -6
  887. package/cjs/series/rose/rose.js.map +1 -1
  888. package/cjs/series/sankey/sankey.js +3 -4
  889. package/cjs/series/sankey/sankey.js.map +1 -1
  890. package/cjs/series/scatter/scatter-transformer.d.ts +5 -0
  891. package/cjs/series/scatter/scatter-transformer.js +16 -0
  892. package/cjs/series/scatter/scatter-transformer.js.map +1 -0
  893. package/cjs/series/scatter/scatter.d.ts +5 -3
  894. package/cjs/series/scatter/scatter.js +6 -6
  895. package/cjs/series/scatter/scatter.js.map +1 -1
  896. package/cjs/series/sunburst/sunburst.d.ts +1 -1
  897. package/cjs/series/sunburst/sunburst.js +3 -3
  898. package/cjs/series/sunburst/sunburst.js.map +1 -1
  899. package/cjs/series/treemap/treemap.js +2 -3
  900. package/cjs/series/treemap/treemap.js.map +1 -1
  901. package/cjs/series/waterfall/waterfall-transformer.d.ts +5 -0
  902. package/cjs/series/waterfall/waterfall-transformer.js +16 -0
  903. package/cjs/series/waterfall/waterfall-transformer.js.map +1 -0
  904. package/cjs/series/waterfall/waterfall.d.ts +4 -3
  905. package/cjs/series/waterfall/waterfall.js +8 -10
  906. package/cjs/series/waterfall/waterfall.js.map +1 -1
  907. package/cjs/series/word-cloud/word-cloud-3d.js +2 -3
  908. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  909. package/cjs/series/word-cloud/word-cloud.js +3 -3
  910. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  911. package/cjs/theme/builtin/common/component/axis/common-axis.js +4 -0
  912. package/cjs/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  913. package/cjs/theme/builtin/common/component/crosshair.js +8 -0
  914. package/cjs/theme/builtin/common/component/crosshair.js.map +1 -1
  915. package/cjs/theme/builtin/common/component/data-zoom.js +2 -4
  916. package/cjs/theme/builtin/common/component/data-zoom.js.map +1 -1
  917. package/cjs/theme/builtin/index.d.ts +0 -1
  918. package/cjs/theme/builtin/index.js +1 -2
  919. package/cjs/theme/builtin/index.js.map +1 -1
  920. package/cjs/theme/color-scheme/util.js +4 -3
  921. package/cjs/theme/color-scheme/util.js.map +1 -1
  922. package/cjs/typings/spec/common.d.ts +2 -0
  923. package/cjs/typings/spec/common.js.map +1 -1
  924. package/cjs/util/color.d.ts +1 -3
  925. package/cjs/util/color.js +7 -2
  926. package/cjs/util/color.js.map +1 -1
  927. package/cjs/util/space.d.ts +1 -3
  928. package/cjs/util/space.js +4 -16
  929. package/cjs/util/space.js.map +1 -1
  930. package/cjs/vchart-all.js +2 -2
  931. package/cjs/vchart-all.js.map +1 -1
  932. package/esm/animation/config.d.ts +5 -1
  933. package/esm/animation/config.js +18 -2
  934. package/esm/animation/config.js.map +1 -1
  935. package/esm/animation/utils.d.ts +2 -2
  936. package/esm/chart/area/area-transformer.d.ts +6 -0
  937. package/esm/chart/area/area-transformer.js +26 -0
  938. package/esm/chart/area/area-transformer.js.map +1 -0
  939. package/esm/chart/area/area.d.ts +6 -4
  940. package/esm/chart/area/area.js +9 -27
  941. package/esm/chart/area/area.js.map +1 -1
  942. package/esm/chart/area/index.d.ts +1 -0
  943. package/esm/chart/area/index.js +2 -0
  944. package/esm/chart/area/index.js.map +1 -1
  945. package/esm/chart/bar/3d/bar-3d-transformer.d.ts +6 -0
  946. package/esm/chart/bar/3d/bar-3d-transformer.js +13 -0
  947. package/esm/chart/bar/3d/bar-3d-transformer.js.map +1 -0
  948. package/esm/chart/bar/3d/bar-3d.d.ts +14 -0
  949. package/esm/chart/bar/3d/bar-3d.js +26 -0
  950. package/esm/chart/bar/3d/bar-3d.js.map +1 -0
  951. package/esm/chart/bar/3d/index.d.ts +2 -0
  952. package/esm/chart/bar/3d/index.js +4 -0
  953. package/esm/chart/bar/3d/index.js.map +1 -0
  954. package/esm/chart/bar/bar-transformer.d.ts +6 -0
  955. package/esm/chart/bar/bar-transformer.js +22 -0
  956. package/esm/chart/bar/bar-transformer.js.map +1 -0
  957. package/esm/chart/bar/bar.d.ts +7 -4
  958. package/esm/chart/bar/bar.js +9 -23
  959. package/esm/chart/bar/bar.js.map +1 -1
  960. package/esm/chart/bar/index.d.ts +2 -1
  961. package/esm/chart/bar/index.js +3 -1
  962. package/esm/chart/bar/index.js.map +1 -1
  963. package/esm/chart/base/base-chart-transformer.d.ts +21 -0
  964. package/esm/chart/base/base-chart-transformer.js +129 -0
  965. package/esm/chart/base/base-chart-transformer.js.map +1 -0
  966. package/{cjs/chart → esm/chart/base}/base-chart.d.ts +29 -29
  967. package/esm/chart/{base-chart.js → base/base-chart.js} +70 -119
  968. package/esm/chart/base/base-chart.js.map +1 -0
  969. package/esm/chart/base/index.d.ts +2 -0
  970. package/esm/chart/base/index.js +4 -0
  971. package/esm/chart/base/index.js.map +1 -0
  972. package/esm/chart/box-plot/box-plot-transformer.d.ts +6 -0
  973. package/esm/chart/box-plot/box-plot-transformer.js +32 -0
  974. package/esm/chart/box-plot/box-plot-transformer.js.map +1 -0
  975. package/esm/chart/box-plot/box-plot.d.ts +6 -4
  976. package/esm/chart/box-plot/box-plot.js +9 -32
  977. package/esm/chart/box-plot/box-plot.js.map +1 -1
  978. package/esm/chart/box-plot/index.d.ts +1 -0
  979. package/esm/chart/box-plot/index.js +2 -0
  980. package/esm/chart/box-plot/index.js.map +1 -1
  981. package/esm/chart/cartesian/cartesian-transformer.d.ts +8 -0
  982. package/esm/chart/cartesian/{cartesian.js → cartesian-transformer.js} +9 -11
  983. package/esm/chart/cartesian/cartesian-transformer.js.map +1 -0
  984. package/esm/chart/cartesian/index.d.ts +1 -1
  985. package/esm/chart/cartesian/index.js +2 -2
  986. package/esm/chart/cartesian/index.js.map +1 -1
  987. package/esm/chart/chart-meta/data.js.map +1 -1
  988. package/esm/chart/circle-packing/circle-packing-transformer.d.ts +7 -0
  989. package/esm/chart/circle-packing/circle-packing-transformer.js +29 -0
  990. package/esm/chart/circle-packing/circle-packing-transformer.js.map +1 -0
  991. package/esm/chart/circle-packing/circle-packing.d.ts +6 -5
  992. package/esm/chart/circle-packing/circle-packing.js +7 -25
  993. package/esm/chart/circle-packing/circle-packing.js.map +1 -1
  994. package/esm/chart/circle-packing/index.d.ts +1 -0
  995. package/esm/chart/circle-packing/index.js +2 -0
  996. package/esm/chart/circle-packing/index.js.map +1 -1
  997. package/esm/chart/common/common-transformer.d.ts +7 -0
  998. package/esm/chart/common/common-transformer.js +26 -0
  999. package/esm/chart/common/common-transformer.js.map +1 -0
  1000. package/esm/chart/common/common.d.ts +7 -4
  1001. package/esm/chart/common/common.js +5 -25
  1002. package/esm/chart/common/common.js.map +1 -1
  1003. package/esm/chart/common/index.d.ts +1 -0
  1004. package/esm/chart/common/index.js +2 -0
  1005. package/esm/chart/common/index.js.map +1 -1
  1006. package/esm/chart/correlation/correlation-transformer.d.ts +6 -0
  1007. package/esm/chart/correlation/correlation-transformer.js +37 -0
  1008. package/esm/chart/correlation/correlation-transformer.js.map +1 -0
  1009. package/esm/chart/correlation/correlation.d.ts +6 -4
  1010. package/esm/chart/correlation/correlation.js +7 -33
  1011. package/esm/chart/correlation/correlation.js.map +1 -1
  1012. package/esm/chart/correlation/index.d.ts +1 -0
  1013. package/esm/chart/correlation/index.js +2 -0
  1014. package/esm/chart/correlation/index.js.map +1 -1
  1015. package/esm/chart/funnel/3d/funnel-3d.d.ts +14 -0
  1016. package/esm/chart/funnel/3d/funnel-3d.js +26 -0
  1017. package/esm/chart/funnel/3d/funnel-3d.js.map +1 -0
  1018. package/esm/chart/funnel/3d/index.d.ts +1 -0
  1019. package/esm/chart/funnel/3d/index.js +2 -0
  1020. package/esm/chart/funnel/3d/index.js.map +1 -0
  1021. package/esm/chart/funnel/funnel-transformer.d.ts +8 -0
  1022. package/esm/chart/funnel/{base.js → funnel-transformer.js} +4 -4
  1023. package/esm/chart/funnel/funnel-transformer.js.map +1 -0
  1024. package/esm/chart/funnel/funnel.d.ts +7 -2
  1025. package/esm/chart/funnel/funnel.js +9 -5
  1026. package/esm/chart/funnel/funnel.js.map +1 -1
  1027. package/esm/chart/funnel/index.d.ts +2 -1
  1028. package/esm/chart/funnel/index.js +3 -1
  1029. package/esm/chart/funnel/index.js.map +1 -1
  1030. package/esm/chart/funnel/interface.d.ts +1 -1
  1031. package/esm/chart/funnel/interface.js.map +1 -1
  1032. package/esm/chart/gauge/gauge-transformer.d.ts +9 -0
  1033. package/esm/chart/gauge/gauge-transformer.js +71 -0
  1034. package/esm/chart/gauge/gauge-transformer.js.map +1 -0
  1035. package/esm/chart/gauge/gauge.d.ts +8 -6
  1036. package/esm/chart/gauge/gauge.js +8 -68
  1037. package/esm/chart/gauge/gauge.js.map +1 -1
  1038. package/esm/chart/gauge/index.d.ts +1 -0
  1039. package/esm/chart/gauge/index.js +2 -0
  1040. package/esm/chart/gauge/index.js.map +1 -1
  1041. package/esm/chart/gauge/interface.d.ts +2 -2
  1042. package/esm/chart/gauge/interface.js.map +1 -1
  1043. package/esm/chart/heatmap/heatmap-transformer.d.ts +5 -0
  1044. package/esm/chart/heatmap/heatmap-transformer.js +12 -0
  1045. package/esm/chart/heatmap/heatmap-transformer.js.map +1 -0
  1046. package/esm/chart/heatmap/heatmap.d.ts +7 -3
  1047. package/esm/chart/heatmap/heatmap.js +9 -12
  1048. package/esm/chart/heatmap/heatmap.js.map +1 -1
  1049. package/esm/chart/heatmap/index.d.ts +1 -0
  1050. package/esm/chart/heatmap/index.js +2 -0
  1051. package/esm/chart/heatmap/index.js.map +1 -1
  1052. package/esm/chart/histogram/3d/histogram-3d.d.ts +14 -0
  1053. package/esm/chart/histogram/3d/histogram-3d.js +26 -0
  1054. package/esm/chart/histogram/3d/histogram-3d.js.map +1 -0
  1055. package/esm/chart/histogram/3d/index.d.ts +1 -0
  1056. package/esm/chart/histogram/3d/index.js +2 -0
  1057. package/esm/chart/histogram/3d/index.js.map +1 -0
  1058. package/esm/chart/histogram/base/base.d.ts +8 -0
  1059. package/esm/chart/histogram/base/base.js +13 -0
  1060. package/esm/chart/histogram/base/base.js.map +1 -0
  1061. package/esm/chart/histogram/base/histogram-base-transformer.d.ts +6 -0
  1062. package/esm/chart/histogram/{base.js → base/histogram-base-transformer.js} +3 -6
  1063. package/esm/chart/histogram/base/histogram-base-transformer.js.map +1 -0
  1064. package/esm/chart/histogram/base/index.d.ts +2 -0
  1065. package/esm/chart/histogram/base/index.js +4 -0
  1066. package/esm/chart/histogram/base/index.js.map +1 -0
  1067. package/esm/chart/histogram/histogram-transformer.d.ts +5 -0
  1068. package/esm/chart/histogram/histogram-transformer.js +10 -0
  1069. package/esm/chart/histogram/histogram-transformer.js.map +1 -0
  1070. package/esm/chart/histogram/histogram.d.ts +7 -3
  1071. package/esm/chart/histogram/histogram.js +7 -8
  1072. package/esm/chart/histogram/histogram.js.map +1 -1
  1073. package/esm/chart/histogram/index.d.ts +2 -1
  1074. package/esm/chart/histogram/index.js +3 -1
  1075. package/esm/chart/histogram/index.js.map +1 -1
  1076. package/esm/chart/index.d.ts +2 -4
  1077. package/esm/chart/index.js +4 -7
  1078. package/esm/chart/index.js.map +1 -1
  1079. package/esm/chart/interface/chart.d.ts +20 -7
  1080. package/esm/chart/interface/chart.js.map +1 -1
  1081. package/esm/chart/interface/common.d.ts +17 -1
  1082. package/esm/chart/interface/common.js.map +1 -1
  1083. package/esm/chart/line/index.d.ts +1 -0
  1084. package/esm/chart/line/index.js +2 -0
  1085. package/esm/chart/line/index.js.map +1 -1
  1086. package/esm/chart/line/interface.d.ts +1 -1
  1087. package/esm/chart/line/interface.js.map +1 -1
  1088. package/esm/chart/line/line-transformer.d.ts +6 -0
  1089. package/esm/chart/line/line-transformer.js +25 -0
  1090. package/esm/chart/line/line-transformer.js.map +1 -0
  1091. package/esm/chart/line/line.d.ts +6 -4
  1092. package/esm/chart/line/line.js +9 -26
  1093. package/esm/chart/line/line.js.map +1 -1
  1094. package/esm/chart/map/index.d.ts +1 -0
  1095. package/esm/chart/map/index.js +2 -0
  1096. package/esm/chart/map/index.js.map +1 -1
  1097. package/esm/chart/map/map-transformer.d.ts +8 -0
  1098. package/esm/chart/map/map-transformer.js +35 -0
  1099. package/esm/chart/map/map-transformer.js.map +1 -0
  1100. package/esm/chart/map/map.d.ts +6 -6
  1101. package/esm/chart/map/map.js +7 -31
  1102. package/esm/chart/map/map.js.map +1 -1
  1103. package/esm/chart/pie/3d/index.d.ts +1 -0
  1104. package/esm/{theme/builtin/common/legacy → chart/pie/3d}/index.js +1 -1
  1105. package/esm/chart/pie/3d/index.js.map +1 -0
  1106. package/esm/chart/pie/3d/pie-3d.d.ts +17 -0
  1107. package/esm/chart/pie/3d/pie-3d.js +34 -0
  1108. package/esm/chart/pie/3d/pie-3d.js.map +1 -0
  1109. package/esm/chart/pie/base/base.d.ts +8 -0
  1110. package/esm/chart/pie/base/base.js +12 -0
  1111. package/esm/chart/pie/base/base.js.map +1 -0
  1112. package/esm/chart/pie/base/index.d.ts +2 -0
  1113. package/esm/chart/pie/base/index.js +4 -0
  1114. package/esm/chart/pie/base/index.js.map +1 -0
  1115. package/esm/chart/pie/base/pie-transformer.d.ts +7 -0
  1116. package/esm/chart/pie/{base.js → base/pie-transformer.js} +3 -3
  1117. package/esm/chart/pie/base/pie-transformer.js.map +1 -0
  1118. package/esm/chart/pie/index.d.ts +2 -1
  1119. package/esm/chart/pie/index.js +3 -1
  1120. package/esm/chart/pie/index.js.map +1 -1
  1121. package/esm/chart/pie/pie.d.ts +7 -2
  1122. package/esm/chart/pie/pie.js +7 -3
  1123. package/esm/chart/pie/pie.js.map +1 -1
  1124. package/esm/chart/polar/index.d.ts +1 -1
  1125. package/esm/chart/polar/index.js +2 -2
  1126. package/esm/chart/polar/index.js.map +1 -1
  1127. package/esm/chart/polar/polar-transformer.d.ts +9 -0
  1128. package/esm/chart/polar/{polar.js → polar-transformer.js} +14 -14
  1129. package/esm/chart/polar/polar-transformer.js.map +1 -0
  1130. package/esm/chart/polar/progress-like/index.d.ts +1 -0
  1131. package/esm/chart/polar/progress-like/index.js +2 -0
  1132. package/esm/chart/polar/progress-like/index.js.map +1 -0
  1133. package/esm/chart/polar/progress-like/progress-like-transformer.d.ts +8 -0
  1134. package/esm/chart/polar/{progress-like.js → progress-like/progress-like-transformer.js} +5 -5
  1135. package/esm/chart/polar/progress-like/progress-like-transformer.js.map +1 -0
  1136. package/esm/chart/polar/rose-like/index.d.ts +1 -0
  1137. package/esm/chart/polar/rose-like/index.js +2 -0
  1138. package/esm/chart/polar/rose-like/index.js.map +1 -0
  1139. package/esm/chart/polar/rose-like/rose-like-transformer.d.ts +7 -0
  1140. package/esm/chart/polar/{rose-like.js → rose-like/rose-like-transformer.js} +3 -6
  1141. package/esm/chart/polar/rose-like/rose-like-transformer.js.map +1 -0
  1142. package/esm/chart/progress/circular/circular-progress-transformer.d.ts +7 -0
  1143. package/esm/chart/progress/circular/circular-progress-transformer.js +25 -0
  1144. package/esm/chart/progress/circular/circular-progress-transformer.js.map +1 -0
  1145. package/esm/chart/progress/circular/circular.d.ts +8 -4
  1146. package/esm/chart/progress/circular/circular.js +9 -25
  1147. package/esm/chart/progress/circular/circular.js.map +1 -1
  1148. package/esm/chart/progress/circular/index.d.ts +1 -0
  1149. package/esm/chart/progress/circular/index.js +2 -0
  1150. package/esm/chart/progress/circular/index.js.map +1 -1
  1151. package/esm/chart/progress/circular/interface.d.ts +1 -1
  1152. package/esm/chart/progress/circular/interface.js.map +1 -1
  1153. package/esm/chart/progress/linear/index.d.ts +1 -0
  1154. package/esm/chart/progress/linear/index.js +2 -0
  1155. package/esm/chart/progress/linear/index.js.map +1 -1
  1156. package/esm/chart/progress/linear/interface.d.ts +1 -1
  1157. package/esm/chart/progress/linear/interface.js.map +1 -1
  1158. package/esm/chart/progress/linear/linear-progress-transformer.d.ts +7 -0
  1159. package/esm/chart/progress/linear/linear-progress-transformer.js +64 -0
  1160. package/esm/chart/progress/linear/linear-progress-transformer.js.map +1 -0
  1161. package/esm/chart/progress/linear/linear.d.ts +6 -5
  1162. package/esm/chart/progress/linear/linear.js +9 -64
  1163. package/esm/chart/progress/linear/linear.js.map +1 -1
  1164. package/esm/chart/radar/index.d.ts +1 -0
  1165. package/esm/chart/radar/index.js +2 -0
  1166. package/esm/chart/radar/index.js.map +1 -1
  1167. package/esm/chart/radar/radar-transformer.d.ts +6 -0
  1168. package/esm/chart/radar/radar-transformer.js +46 -0
  1169. package/esm/chart/radar/radar-transformer.js.map +1 -0
  1170. package/esm/chart/radar/radar.d.ts +8 -4
  1171. package/esm/chart/radar/radar.js +9 -46
  1172. package/esm/chart/radar/radar.js.map +1 -1
  1173. package/esm/chart/range-area/index.d.ts +1 -0
  1174. package/esm/chart/range-area/index.js +2 -0
  1175. package/esm/chart/range-area/index.js.map +1 -1
  1176. package/esm/chart/range-area/range-area-transformer.d.ts +6 -0
  1177. package/esm/chart/range-area/range-area-transformer.js +18 -0
  1178. package/esm/chart/range-area/range-area-transformer.js.map +1 -0
  1179. package/esm/chart/range-area/range-area.d.ts +7 -4
  1180. package/esm/chart/range-area/range-area.js +9 -18
  1181. package/esm/chart/range-area/range-area.js.map +1 -1
  1182. package/esm/chart/range-column/3d/index.d.ts +2 -0
  1183. package/esm/chart/range-column/3d/index.js +4 -0
  1184. package/esm/chart/range-column/3d/index.js.map +1 -0
  1185. package/esm/chart/range-column/3d/range-column-3d-transformer.d.ts +5 -0
  1186. package/esm/chart/range-column/3d/range-column-3d-transformer.js +15 -0
  1187. package/esm/chart/range-column/3d/range-column-3d-transformer.js.map +1 -0
  1188. package/esm/chart/range-column/3d/range-column-3d.d.ts +13 -0
  1189. package/esm/chart/range-column/3d/range-column-3d.js +26 -0
  1190. package/esm/chart/range-column/3d/range-column-3d.js.map +1 -0
  1191. package/esm/chart/range-column/index.d.ts +2 -1
  1192. package/esm/chart/range-column/index.js +3 -1
  1193. package/esm/chart/range-column/index.js.map +1 -1
  1194. package/esm/chart/range-column/range-column-transformer.d.ts +6 -0
  1195. package/esm/chart/range-column/range-column-transformer.js +21 -0
  1196. package/esm/chart/range-column/range-column-transformer.js.map +1 -0
  1197. package/esm/chart/range-column/range-column.d.ts +7 -4
  1198. package/esm/chart/range-column/range-column.js +9 -21
  1199. package/esm/chart/range-column/range-column.js.map +1 -1
  1200. package/esm/chart/rose/index.d.ts +1 -0
  1201. package/esm/chart/rose/index.js +2 -0
  1202. package/esm/chart/rose/index.js.map +1 -1
  1203. package/esm/chart/rose/rose-transformer.d.ts +6 -0
  1204. package/esm/chart/rose/rose-transformer.js +40 -0
  1205. package/esm/chart/rose/rose-transformer.js.map +1 -0
  1206. package/esm/chart/rose/rose.d.ts +8 -4
  1207. package/esm/chart/rose/rose.js +8 -37
  1208. package/esm/chart/rose/rose.js.map +1 -1
  1209. package/esm/chart/sankey/index.d.ts +1 -0
  1210. package/esm/chart/sankey/index.js +2 -0
  1211. package/esm/chart/sankey/index.js.map +1 -1
  1212. package/esm/chart/sankey/sankey-transformer.d.ts +6 -0
  1213. package/esm/chart/sankey/sankey-transformer.js +41 -0
  1214. package/esm/chart/sankey/sankey-transformer.js.map +1 -0
  1215. package/esm/chart/sankey/sankey.d.ts +6 -4
  1216. package/esm/chart/sankey/sankey.js +7 -39
  1217. package/esm/chart/sankey/sankey.js.map +1 -1
  1218. package/esm/chart/scatter/index.d.ts +1 -0
  1219. package/esm/chart/scatter/index.js +2 -0
  1220. package/esm/chart/scatter/index.js.map +1 -1
  1221. package/esm/chart/scatter/scatter-transformer.d.ts +5 -0
  1222. package/esm/chart/scatter/scatter-transformer.js +14 -0
  1223. package/esm/chart/scatter/scatter-transformer.js.map +1 -0
  1224. package/esm/chart/scatter/scatter.d.ts +6 -3
  1225. package/esm/chart/scatter/scatter.js +9 -15
  1226. package/esm/chart/scatter/scatter.js.map +1 -1
  1227. package/esm/chart/sequence/index.d.ts +1 -0
  1228. package/esm/chart/sequence/index.js +2 -0
  1229. package/esm/chart/sequence/index.js.map +1 -1
  1230. package/esm/chart/sequence/sequence-transformer.d.ts +7 -0
  1231. package/esm/chart/sequence/sequence-transformer.js +185 -0
  1232. package/esm/chart/sequence/sequence-transformer.js.map +1 -0
  1233. package/esm/chart/sequence/sequence.d.ts +9 -7
  1234. package/esm/chart/sequence/sequence.js +28 -194
  1235. package/esm/chart/sequence/sequence.js.map +1 -1
  1236. package/esm/chart/stack.js +1 -2
  1237. package/esm/chart/stack.js.map +1 -1
  1238. package/esm/chart/sunburst/index.d.ts +1 -0
  1239. package/esm/chart/sunburst/index.js +2 -0
  1240. package/esm/chart/sunburst/index.js.map +1 -1
  1241. package/esm/chart/sunburst/sunburst-transformer.d.ts +7 -0
  1242. package/esm/chart/sunburst/sunburst-transformer.js +42 -0
  1243. package/esm/chart/sunburst/sunburst-transformer.js.map +1 -0
  1244. package/esm/chart/sunburst/sunburst.d.ts +6 -5
  1245. package/esm/chart/sunburst/sunburst.js +7 -38
  1246. package/esm/chart/sunburst/sunburst.js.map +1 -1
  1247. package/esm/chart/treemap/index.d.ts +1 -0
  1248. package/esm/chart/treemap/index.js +2 -0
  1249. package/esm/chart/treemap/index.js.map +1 -1
  1250. package/esm/chart/treemap/treemap-transformer.d.ts +7 -0
  1251. package/esm/chart/treemap/treemap-transformer.js +37 -0
  1252. package/esm/chart/treemap/treemap-transformer.js.map +1 -0
  1253. package/esm/chart/treemap/treemap.d.ts +7 -4
  1254. package/esm/chart/treemap/treemap.js +7 -35
  1255. package/esm/chart/treemap/treemap.js.map +1 -1
  1256. package/esm/chart/util.d.ts +3 -3
  1257. package/esm/chart/util.js +9 -4
  1258. package/esm/chart/util.js.map +1 -1
  1259. package/esm/chart/waterfall/index.d.ts +1 -0
  1260. package/esm/chart/waterfall/index.js +2 -0
  1261. package/esm/chart/waterfall/index.js.map +1 -1
  1262. package/esm/chart/waterfall/waterfall-transformer.d.ts +7 -0
  1263. package/esm/chart/waterfall/waterfall-transformer.js +22 -0
  1264. package/esm/chart/waterfall/waterfall-transformer.js.map +1 -0
  1265. package/esm/chart/waterfall/waterfall.d.ts +6 -3
  1266. package/esm/chart/waterfall/waterfall.js +6 -19
  1267. package/esm/chart/waterfall/waterfall.js.map +1 -1
  1268. package/esm/chart/word-cloud/3d/index.d.ts +2 -0
  1269. package/esm/chart/word-cloud/3d/index.js +4 -0
  1270. package/esm/chart/word-cloud/3d/index.js.map +1 -0
  1271. package/esm/chart/word-cloud/3d/word-cloud-3d-transformer.d.ts +6 -0
  1272. package/esm/chart/word-cloud/3d/word-cloud-3d-transformer.js +31 -0
  1273. package/esm/chart/word-cloud/3d/word-cloud-3d-transformer.js.map +1 -0
  1274. package/esm/chart/word-cloud/3d/word-cloud-3d.d.ts +15 -0
  1275. package/esm/chart/word-cloud/3d/word-cloud-3d.js +30 -0
  1276. package/esm/chart/word-cloud/3d/word-cloud-3d.js.map +1 -0
  1277. package/esm/chart/word-cloud/base/base.d.ts +9 -0
  1278. package/esm/chart/word-cloud/base/base.js +17 -0
  1279. package/esm/chart/word-cloud/base/base.js.map +1 -0
  1280. package/esm/chart/word-cloud/base/index.d.ts +2 -0
  1281. package/esm/chart/word-cloud/base/index.js +4 -0
  1282. package/esm/chart/word-cloud/base/index.js.map +1 -0
  1283. package/esm/chart/word-cloud/base/word-cloud-base-transformer.d.ts +5 -0
  1284. package/esm/chart/word-cloud/base/word-cloud-base-transformer.js +14 -0
  1285. package/esm/chart/word-cloud/base/word-cloud-base-transformer.js.map +1 -0
  1286. package/esm/chart/word-cloud/index.d.ts +2 -1
  1287. package/esm/chart/word-cloud/index.js +3 -1
  1288. package/esm/chart/word-cloud/index.js.map +1 -1
  1289. package/esm/chart/word-cloud/word-cloud-transformer.d.ts +5 -0
  1290. package/esm/chart/word-cloud/word-cloud-transformer.js +30 -0
  1291. package/esm/chart/word-cloud/word-cloud-transformer.js.map +1 -0
  1292. package/esm/chart/word-cloud/word-cloud.d.ts +6 -3
  1293. package/esm/chart/word-cloud/word-cloud.js +7 -28
  1294. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  1295. package/esm/compile/interface/compiler.d.ts +5 -0
  1296. package/esm/compile/interface/compiler.js.map +1 -1
  1297. package/esm/compile/mark/compilable-mark.d.ts +0 -5
  1298. package/esm/compile/mark/compilable-mark.js +1 -10
  1299. package/esm/compile/mark/compilable-mark.js.map +1 -1
  1300. package/esm/compile/mark/interface.d.ts +1 -4
  1301. package/esm/compile/mark/interface.js.map +1 -1
  1302. package/esm/component/axis/base-axis.d.ts +27 -4
  1303. package/esm/component/axis/base-axis.js +37 -22
  1304. package/esm/component/axis/base-axis.js.map +1 -1
  1305. package/esm/component/axis/cartesian/axis.d.ts +6 -7
  1306. package/esm/component/axis/cartesian/axis.js +42 -31
  1307. package/esm/component/axis/cartesian/axis.js.map +1 -1
  1308. package/esm/component/axis/cartesian/band-axis.d.ts +1 -0
  1309. package/esm/component/axis/cartesian/band-axis.js +3 -2
  1310. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  1311. package/esm/component/axis/cartesian/interface/spec.js.map +1 -1
  1312. package/esm/component/axis/cartesian/linear-axis.d.ts +1 -0
  1313. package/esm/component/axis/cartesian/linear-axis.js +2 -1
  1314. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  1315. package/esm/component/axis/cartesian/log-axis.d.ts +1 -0
  1316. package/esm/component/axis/cartesian/log-axis.js +2 -1
  1317. package/esm/component/axis/cartesian/log-axis.js.map +1 -1
  1318. package/esm/component/axis/cartesian/symlog-axis.d.ts +1 -0
  1319. package/esm/component/axis/cartesian/symlog-axis.js +2 -1
  1320. package/esm/component/axis/cartesian/symlog-axis.js.map +1 -1
  1321. package/esm/component/axis/cartesian/time-axis.d.ts +1 -0
  1322. package/esm/component/axis/cartesian/time-axis.js +1 -1
  1323. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  1324. package/esm/component/axis/cartesian/util/common.d.ts +4 -0
  1325. package/esm/component/axis/cartesian/util/common.js +11 -0
  1326. package/esm/component/axis/cartesian/util/common.js.map +1 -1
  1327. package/esm/component/axis/interface/common.d.ts +1 -0
  1328. package/esm/component/axis/interface/common.js.map +1 -1
  1329. package/esm/component/axis/polar/axis.d.ts +7 -7
  1330. package/esm/component/axis/polar/axis.js +49 -35
  1331. package/esm/component/axis/polar/axis.js.map +1 -1
  1332. package/esm/component/axis/polar/band-axis.d.ts +1 -0
  1333. package/esm/component/axis/polar/band-axis.js +2 -1
  1334. package/esm/component/axis/polar/band-axis.js.map +1 -1
  1335. package/esm/component/axis/polar/interface/common.d.ts +0 -1
  1336. package/esm/component/axis/polar/interface/common.js.map +1 -1
  1337. package/esm/component/axis/polar/linear-axis.d.ts +1 -0
  1338. package/esm/component/axis/polar/linear-axis.js +2 -1
  1339. package/esm/component/axis/polar/linear-axis.js.map +1 -1
  1340. package/esm/component/axis/polar/util/common.d.ts +5 -0
  1341. package/esm/component/axis/polar/util/common.js +11 -0
  1342. package/esm/component/axis/polar/util/common.js.map +1 -0
  1343. package/esm/component/axis/polar/util/index.d.ts +1 -0
  1344. package/esm/component/axis/polar/util/index.js +2 -0
  1345. package/esm/component/axis/polar/util/index.js.map +1 -0
  1346. package/esm/component/axis/util.d.ts +4 -3
  1347. package/esm/component/axis/util.js +8 -6
  1348. package/esm/component/axis/util.js.map +1 -1
  1349. package/esm/component/base/base-component-transformer.d.ts +10 -0
  1350. package/esm/component/base/base-component-transformer.js +25 -0
  1351. package/esm/component/base/base-component-transformer.js.map +1 -0
  1352. package/esm/component/base/base-component.d.ts +10 -6
  1353. package/esm/component/base/base-component.js +34 -23
  1354. package/esm/component/base/base-component.js.map +1 -1
  1355. package/esm/component/base/index.d.ts +1 -0
  1356. package/esm/component/base/index.js +2 -0
  1357. package/esm/component/base/index.js.map +1 -1
  1358. package/esm/component/base/util.d.ts +2 -2
  1359. package/esm/component/base/util.js +14 -16
  1360. package/esm/component/base/util.js.map +1 -1
  1361. package/esm/component/brush/brush.d.ts +9 -5
  1362. package/esm/component/brush/brush.js +58 -44
  1363. package/esm/component/brush/brush.js.map +1 -1
  1364. package/esm/component/crosshair/base.d.ts +5 -4
  1365. package/esm/component/crosshair/base.js +21 -13
  1366. package/esm/component/crosshair/base.js.map +1 -1
  1367. package/esm/component/crosshair/cartesian.d.ts +3 -2
  1368. package/esm/component/crosshair/cartesian.js +17 -10
  1369. package/esm/component/crosshair/cartesian.js.map +1 -1
  1370. package/esm/component/crosshair/polar.d.ts +3 -2
  1371. package/esm/component/crosshair/polar.js +17 -10
  1372. package/esm/component/crosshair/polar.js.map +1 -1
  1373. package/esm/component/crosshair/util.d.ts +3 -4
  1374. package/esm/component/crosshair/util.js +15 -13
  1375. package/esm/component/crosshair/util.js.map +1 -1
  1376. package/esm/component/custom-mark/custom-mark.d.ts +7 -5
  1377. package/esm/component/custom-mark/custom-mark.js +18 -14
  1378. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  1379. package/esm/component/data-zoom/data-filter-base-component.d.ts +3 -3
  1380. package/esm/component/data-zoom/data-filter-base-component.js +12 -11
  1381. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  1382. package/esm/component/data-zoom/data-zoom/data-zoom-transformer.d.ts +9 -0
  1383. package/esm/component/data-zoom/data-zoom/data-zoom-transformer.js +31 -0
  1384. package/esm/component/data-zoom/data-zoom/data-zoom-transformer.js.map +1 -0
  1385. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +12 -2
  1386. package/esm/component/data-zoom/data-zoom/data-zoom.js +38 -39
  1387. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  1388. package/esm/component/data-zoom/data-zoom/index.d.ts +1 -0
  1389. package/esm/component/data-zoom/data-zoom/index.js +2 -0
  1390. package/esm/component/data-zoom/data-zoom/index.js.map +1 -1
  1391. package/esm/component/data-zoom/data-zoom/interface.d.ts +2 -2
  1392. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  1393. package/esm/component/data-zoom/interface.d.ts +1 -1
  1394. package/esm/component/data-zoom/interface.js.map +1 -1
  1395. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +5 -1
  1396. package/esm/component/data-zoom/scroll-bar/scroll-bar.js +17 -10
  1397. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  1398. package/esm/component/data-zoom/util.d.ts +2 -2
  1399. package/esm/component/data-zoom/util.js +2 -2
  1400. package/esm/component/data-zoom/util.js.map +1 -1
  1401. package/esm/component/geo/geo-coordinate.d.ts +4 -7
  1402. package/esm/component/geo/geo-coordinate.js +27 -25
  1403. package/esm/component/geo/geo-coordinate.js.map +1 -1
  1404. package/esm/component/index.d.ts +1 -1
  1405. package/esm/component/index.js +1 -1
  1406. package/esm/component/index.js.map +1 -1
  1407. package/esm/component/indicator/indicator.d.ts +5 -4
  1408. package/esm/component/indicator/indicator.js +20 -9
  1409. package/esm/component/indicator/indicator.js.map +1 -1
  1410. package/esm/component/interface/common.d.ts +6 -4
  1411. package/esm/component/interface/common.js.map +1 -1
  1412. package/esm/component/interface/type.d.ts +8 -0
  1413. package/esm/component/interface/type.js +13 -0
  1414. package/esm/component/interface/type.js.map +1 -1
  1415. package/esm/component/label/base-label.d.ts +2 -2
  1416. package/esm/component/label/base-label.js +3 -4
  1417. package/esm/component/label/base-label.js.map +1 -1
  1418. package/esm/component/label/index.d.ts +2 -0
  1419. package/esm/component/label/index.js +4 -0
  1420. package/esm/component/label/index.js.map +1 -1
  1421. package/esm/component/label/interface.d.ts +2 -2
  1422. package/esm/component/label/interface.js.map +1 -1
  1423. package/esm/component/label/label-transformer.d.ts +8 -0
  1424. package/esm/component/label/label-transformer.js +11 -0
  1425. package/esm/component/label/label-transformer.js.map +1 -0
  1426. package/esm/component/label/label.d.ts +13 -5
  1427. package/esm/component/label/label.js +39 -30
  1428. package/esm/component/label/label.js.map +1 -1
  1429. package/esm/component/label/{totalLabel.d.ts → total-label.d.ts} +7 -6
  1430. package/esm/component/label/{totalLabel.js → total-label.js} +35 -29
  1431. package/esm/component/label/total-label.js.map +1 -0
  1432. package/esm/component/label/util.d.ts +1 -0
  1433. package/esm/component/label/util.js +2 -1
  1434. package/esm/component/label/util.js.map +1 -1
  1435. package/esm/component/legend/base-legend.d.ts +3 -1
  1436. package/esm/component/legend/base-legend.js +8 -7
  1437. package/esm/component/legend/base-legend.js.map +1 -1
  1438. package/esm/component/legend/continuous/legend.d.ts +4 -6
  1439. package/esm/component/legend/continuous/legend.js +15 -12
  1440. package/esm/component/legend/continuous/legend.js.map +1 -1
  1441. package/esm/component/legend/discrete/legend.d.ts +4 -7
  1442. package/esm/component/legend/discrete/legend.js +17 -12
  1443. package/esm/component/legend/discrete/legend.js.map +1 -1
  1444. package/esm/component/legend/discrete/util.js +1 -1
  1445. package/esm/component/legend/discrete/util.js.map +1 -1
  1446. package/esm/component/legend/util.d.ts +1 -1
  1447. package/esm/component/map-label/component.d.ts +5 -2
  1448. package/esm/component/map-label/component.js +10 -5
  1449. package/esm/component/map-label/component.js.map +1 -1
  1450. package/esm/component/marker/mark-area/mark-area.d.ts +6 -4
  1451. package/esm/component/marker/mark-area/mark-area.js +17 -10
  1452. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  1453. package/esm/component/marker/mark-line/mark-line.d.ts +6 -4
  1454. package/esm/component/marker/mark-line/mark-line.js +17 -10
  1455. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  1456. package/esm/component/marker/mark-point/mark-point.d.ts +6 -4
  1457. package/esm/component/marker/mark-point/mark-point.js +17 -10
  1458. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  1459. package/esm/component/player/player.d.ts +4 -4
  1460. package/esm/component/player/player.js +9 -4
  1461. package/esm/component/player/player.js.map +1 -1
  1462. package/esm/component/title/title.d.ts +9 -6
  1463. package/esm/component/title/title.js +22 -16
  1464. package/esm/component/title/title.js.map +1 -1
  1465. package/esm/component/tooltip/handler/base.js +8 -10
  1466. package/esm/component/tooltip/handler/base.js.map +1 -1
  1467. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js +7 -2
  1468. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  1469. package/esm/component/tooltip/index.d.ts +1 -0
  1470. package/esm/component/tooltip/index.js +2 -0
  1471. package/esm/component/tooltip/index.js.map +1 -1
  1472. package/esm/component/tooltip/tooltip-transformer.d.ts +8 -0
  1473. package/esm/component/tooltip/tooltip-transformer.js +17 -0
  1474. package/esm/component/tooltip/tooltip-transformer.js.map +1 -0
  1475. package/esm/component/tooltip/tooltip.d.ts +10 -8
  1476. package/esm/component/tooltip/tooltip.js +23 -22
  1477. package/esm/component/tooltip/tooltip.js.map +1 -1
  1478. package/esm/component/util.d.ts +2 -2
  1479. package/esm/component/util.js +2 -2
  1480. package/esm/component/util.js.map +1 -1
  1481. package/esm/constant/event.d.ts +1 -0
  1482. package/esm/constant/event.js +7 -6
  1483. package/esm/constant/event.js.map +1 -1
  1484. package/esm/constant/polar.d.ts +0 -10
  1485. package/esm/constant/polar.js +0 -20
  1486. package/esm/constant/polar.js.map +1 -1
  1487. package/esm/constant/scatter.js +2 -1
  1488. package/esm/constant/scroll-bar.js +1 -2
  1489. package/esm/core/factory.d.ts +12 -3
  1490. package/esm/core/factory.js +29 -1
  1491. package/esm/core/factory.js.map +1 -1
  1492. package/esm/core/index.d.ts +2 -1
  1493. package/esm/core/index.js +3 -1
  1494. package/esm/core/index.js.map +1 -1
  1495. package/esm/core/interface.d.ts +17 -11
  1496. package/esm/core/interface.js.map +1 -1
  1497. package/esm/core/vchart.d.ts +30 -7
  1498. package/esm/core/vchart.js +204 -137
  1499. package/esm/core/vchart.js.map +1 -1
  1500. package/esm/event/bubble.js +2 -1
  1501. package/esm/event/event-dispatcher.js +1 -2
  1502. package/esm/index-lark.js +1 -1
  1503. package/esm/index-lark.js.map +1 -1
  1504. package/esm/index-wx.js +1 -1
  1505. package/esm/index-wx.js.map +1 -1
  1506. package/esm/interaction/config.js +1 -1
  1507. package/esm/interaction/dimension-trigger.js +1 -1
  1508. package/esm/interaction/interaction.js +1 -1
  1509. package/esm/interaction/zoom/zoomable.js +17 -10
  1510. package/esm/interaction/zoom/zoomable.js.map +1 -1
  1511. package/esm/layout/base-layout.js +1 -1
  1512. package/esm/layout/index.js +1 -1
  1513. package/esm/layout/interface.js +1 -1
  1514. package/esm/layout/layout-item.js +1 -1
  1515. package/esm/mark/arc-3d.d.ts +2 -0
  1516. package/esm/mark/arc-3d.js +11 -1
  1517. package/esm/mark/arc-3d.js.map +1 -1
  1518. package/esm/mark/arc.d.ts +1 -0
  1519. package/esm/mark/arc.js +10 -0
  1520. package/esm/mark/arc.js.map +1 -1
  1521. package/esm/mark/area.d.ts +1 -0
  1522. package/esm/mark/area.js +10 -0
  1523. package/esm/mark/area.js.map +1 -1
  1524. package/esm/mark/box-plot.d.ts +1 -0
  1525. package/esm/mark/box-plot.js +7 -3
  1526. package/esm/mark/box-plot.js.map +1 -1
  1527. package/esm/mark/cell.d.ts +1 -0
  1528. package/esm/mark/cell.js +8 -0
  1529. package/esm/mark/cell.js.map +1 -1
  1530. package/esm/mark/component.d.ts +1 -0
  1531. package/esm/mark/component.js +6 -0
  1532. package/esm/mark/component.js.map +1 -1
  1533. package/esm/mark/group.d.ts +2 -1
  1534. package/esm/mark/group.js +8 -0
  1535. package/esm/mark/group.js.map +1 -1
  1536. package/esm/mark/image.d.ts +1 -0
  1537. package/esm/mark/image.js +8 -0
  1538. package/esm/mark/image.js.map +1 -1
  1539. package/esm/mark/label.d.ts +1 -0
  1540. package/esm/mark/label.js +8 -0
  1541. package/esm/mark/label.js.map +1 -1
  1542. package/esm/mark/line.d.ts +1 -0
  1543. package/esm/mark/line.js +10 -0
  1544. package/esm/mark/line.js.map +1 -1
  1545. package/esm/mark/link-path.d.ts +1 -0
  1546. package/esm/mark/link-path.js +6 -1
  1547. package/esm/mark/link-path.js.map +1 -1
  1548. package/esm/mark/path.d.ts +1 -0
  1549. package/esm/mark/path.js +8 -0
  1550. package/esm/mark/path.js.map +1 -1
  1551. package/esm/mark/polygon/polygon.d.ts +1 -0
  1552. package/esm/mark/polygon/polygon.js +10 -0
  1553. package/esm/mark/polygon/polygon.js.map +1 -1
  1554. package/esm/mark/polygon/pyramid-3d.d.ts +1 -0
  1555. package/esm/mark/polygon/pyramid-3d.js +11 -0
  1556. package/esm/mark/polygon/pyramid-3d.js.map +1 -1
  1557. package/esm/mark/progress-arc.d.ts +1 -0
  1558. package/esm/mark/progress-arc.js +10 -0
  1559. package/esm/mark/progress-arc.js.map +1 -1
  1560. package/esm/mark/rect-3d.d.ts +1 -0
  1561. package/esm/mark/rect-3d.js +10 -0
  1562. package/esm/mark/rect-3d.js.map +1 -1
  1563. package/esm/mark/rect.d.ts +1 -0
  1564. package/esm/mark/rect.js +10 -0
  1565. package/esm/mark/rect.js.map +1 -1
  1566. package/esm/mark/ripple.d.ts +1 -0
  1567. package/esm/mark/ripple.js +6 -1
  1568. package/esm/mark/ripple.js.map +1 -1
  1569. package/esm/mark/rule.d.ts +1 -0
  1570. package/esm/mark/rule.js +8 -0
  1571. package/esm/mark/rule.js.map +1 -1
  1572. package/esm/mark/symbol.d.ts +1 -0
  1573. package/esm/mark/symbol.js +8 -0
  1574. package/esm/mark/symbol.js.map +1 -1
  1575. package/esm/mark/text.d.ts +1 -0
  1576. package/esm/mark/text.js +7 -1
  1577. package/esm/mark/text.js.map +1 -1
  1578. package/esm/model/base-model-transformer.d.ts +24 -0
  1579. package/esm/model/base-model-transformer.js +37 -0
  1580. package/esm/model/base-model-transformer.js.map +1 -0
  1581. package/esm/model/base-model.d.ts +9 -14
  1582. package/esm/model/base-model.js +27 -40
  1583. package/esm/model/base-model.js.map +1 -1
  1584. package/esm/model/index.d.ts +3 -0
  1585. package/esm/model/index.js +6 -0
  1586. package/esm/model/index.js.map +1 -0
  1587. package/esm/model/interface.d.ts +31 -4
  1588. package/esm/model/interface.js.map +1 -1
  1589. package/esm/model/layout-model.js.map +1 -1
  1590. package/esm/plugin/base/base-plugin-service.d.ts +13 -0
  1591. package/esm/plugin/base/base-plugin-service.js +42 -0
  1592. package/esm/plugin/base/base-plugin-service.js.map +1 -0
  1593. package/esm/plugin/base/base-plugin.d.ts +9 -0
  1594. package/esm/plugin/base/base-plugin.js +11 -0
  1595. package/esm/plugin/base/base-plugin.js.map +1 -0
  1596. package/esm/plugin/base/interface.d.ts +22 -0
  1597. package/esm/plugin/base/interface.js +2 -0
  1598. package/esm/plugin/base/interface.js.map +1 -0
  1599. package/esm/plugin/chart/index.d.ts +2 -0
  1600. package/esm/plugin/chart/index.js +4 -0
  1601. package/esm/plugin/chart/index.js.map +1 -0
  1602. package/esm/plugin/chart/interface.d.ts +22 -2
  1603. package/esm/plugin/chart/interface.js.map +1 -1
  1604. package/esm/plugin/chart/media-query/index.d.ts +2 -0
  1605. package/esm/plugin/chart/media-query/index.js +4 -0
  1606. package/esm/plugin/chart/media-query/index.js.map +1 -0
  1607. package/esm/plugin/chart/media-query/interface/common.d.ts +28 -0
  1608. package/esm/plugin/chart/media-query/interface/common.js +2 -0
  1609. package/esm/plugin/chart/media-query/interface/common.js.map +1 -0
  1610. package/esm/plugin/chart/media-query/interface/index.d.ts +2 -0
  1611. package/esm/plugin/chart/media-query/interface/index.js +4 -0
  1612. package/esm/plugin/chart/media-query/interface/index.js.map +1 -0
  1613. package/esm/plugin/chart/media-query/interface/spec.d.ts +25 -0
  1614. package/esm/plugin/chart/media-query/interface/spec.js +2 -0
  1615. package/esm/plugin/chart/media-query/interface/spec.js.map +1 -0
  1616. package/esm/plugin/chart/media-query/media-query.d.ts +28 -0
  1617. package/esm/plugin/chart/media-query/media-query.js +118 -0
  1618. package/esm/plugin/chart/media-query/media-query.js.map +1 -0
  1619. package/esm/plugin/chart/media-query/util/action.d.ts +3 -0
  1620. package/esm/plugin/chart/media-query/util/action.js +30 -0
  1621. package/esm/plugin/chart/media-query/util/action.js.map +1 -0
  1622. package/esm/plugin/chart/media-query/util/filter.d.ts +4 -0
  1623. package/esm/plugin/chart/media-query/util/filter.js +83 -0
  1624. package/esm/plugin/chart/media-query/util/filter.js.map +1 -0
  1625. package/esm/plugin/chart/media-query/util/index.d.ts +2 -0
  1626. package/esm/plugin/chart/media-query/util/index.js +4 -0
  1627. package/esm/plugin/chart/media-query/util/index.js.map +1 -0
  1628. package/esm/plugin/chart/media-query/util/query.d.ts +3 -0
  1629. package/esm/plugin/chart/media-query/util/query.js +26 -0
  1630. package/esm/plugin/chart/media-query/util/query.js.map +1 -0
  1631. package/esm/plugin/chart/plugin-service.d.ts +12 -0
  1632. package/esm/plugin/chart/plugin-service.js +28 -0
  1633. package/esm/plugin/chart/plugin-service.js.map +1 -0
  1634. package/esm/plugin/chart/register.d.ts +2 -0
  1635. package/esm/plugin/chart/register.js +6 -0
  1636. package/esm/plugin/chart/register.js.map +1 -0
  1637. package/esm/plugin/components/axis-sync-plugin/axis-sync.d.ts +5 -3
  1638. package/esm/plugin/components/axis-sync-plugin/axis-sync.js +6 -4
  1639. package/esm/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  1640. package/esm/plugin/components/interface.d.ts +15 -25
  1641. package/esm/plugin/components/interface.js.map +1 -1
  1642. package/esm/plugin/components/plugin-service.d.ts +2 -10
  1643. package/esm/plugin/components/plugin-service.js +3 -37
  1644. package/esm/plugin/components/plugin-service.js.map +1 -1
  1645. package/esm/plugin/index.d.ts +1 -0
  1646. package/esm/plugin/index.js +2 -0
  1647. package/esm/plugin/index.js.map +1 -0
  1648. package/esm/region/index.d.ts +3 -0
  1649. package/esm/region/index.js +6 -0
  1650. package/esm/region/index.js.map +1 -0
  1651. package/esm/region/interface.d.ts +10 -2
  1652. package/esm/region/interface.js.map +1 -1
  1653. package/esm/region/region-transformer.d.ts +8 -0
  1654. package/esm/region/region-transformer.js +11 -0
  1655. package/esm/region/region-transformer.js.map +1 -0
  1656. package/esm/region/region.d.ts +7 -4
  1657. package/esm/region/region.js +10 -14
  1658. package/esm/region/region.js.map +1 -1
  1659. package/esm/series/area/area-transformer.d.ts +5 -0
  1660. package/esm/series/area/area-transformer.js +12 -0
  1661. package/esm/series/area/area-transformer.js.map +1 -0
  1662. package/esm/series/area/area.d.ts +5 -3
  1663. package/esm/series/area/area.js +15 -17
  1664. package/esm/series/area/area.js.map +1 -1
  1665. package/esm/series/bar/bar-3d.js +2 -3
  1666. package/esm/series/bar/bar-3d.js.map +1 -1
  1667. package/esm/series/bar/bar-transformer.d.ts +5 -0
  1668. package/esm/series/bar/bar-transformer.js +10 -0
  1669. package/esm/series/bar/bar-transformer.js.map +1 -0
  1670. package/esm/series/bar/bar.d.ts +5 -3
  1671. package/esm/series/bar/bar.js +7 -6
  1672. package/esm/series/bar/bar.js.map +1 -1
  1673. package/esm/series/base/base-series-transformer.d.ts +18 -0
  1674. package/esm/series/base/base-series-transformer.js +51 -0
  1675. package/esm/series/base/base-series-transformer.js.map +1 -0
  1676. package/esm/series/base/base-series.d.ts +7 -8
  1677. package/esm/series/base/base-series.js +26 -38
  1678. package/esm/series/base/base-series.js.map +1 -1
  1679. package/esm/series/base/index.d.ts +2 -0
  1680. package/esm/series/base/index.js +4 -0
  1681. package/esm/series/base/index.js.map +1 -0
  1682. package/esm/series/box-plot/box-plot.d.ts +2 -3
  1683. package/esm/series/box-plot/box-plot.js +3 -4
  1684. package/esm/series/box-plot/box-plot.js.map +1 -1
  1685. package/esm/series/box-plot/interface.d.ts +1 -2
  1686. package/esm/series/box-plot/interface.js.map +1 -1
  1687. package/esm/series/cartesian/cartesian.d.ts +1 -1
  1688. package/esm/series/cartesian/cartesian.js +2 -2
  1689. package/esm/series/cartesian/cartesian.js.map +1 -1
  1690. package/esm/series/circle-packing/circle-packing.js +4 -5
  1691. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  1692. package/esm/series/circle-packing/interface.d.ts +1 -2
  1693. package/esm/series/circle-packing/interface.js.map +1 -1
  1694. package/esm/series/correlation/correlation-transformer.d.ts +5 -0
  1695. package/esm/series/correlation/correlation-transformer.js +10 -0
  1696. package/esm/series/correlation/correlation-transformer.js.map +1 -0
  1697. package/esm/series/correlation/correlation.d.ts +5 -4
  1698. package/esm/series/correlation/correlation.js +10 -8
  1699. package/esm/series/correlation/correlation.js.map +1 -1
  1700. package/esm/series/dot/dot.d.ts +2 -3
  1701. package/esm/series/dot/dot.js +5 -6
  1702. package/esm/series/dot/dot.js.map +1 -1
  1703. package/esm/series/funnel/3d/funnel-3d-transformer.d.ts +6 -0
  1704. package/esm/series/funnel/3d/funnel-3d-transformer.js +10 -0
  1705. package/esm/series/funnel/3d/funnel-3d-transformer.js.map +1 -0
  1706. package/esm/series/funnel/{funnel-3d.d.ts → 3d/funnel-3d.d.ts} +9 -9
  1707. package/esm/series/funnel/{funnel-3d.js → 3d/funnel-3d.js} +15 -14
  1708. package/esm/series/funnel/3d/funnel-3d.js.map +1 -0
  1709. package/esm/series/funnel/3d/index.d.ts +2 -0
  1710. package/esm/series/funnel/3d/index.js +4 -0
  1711. package/esm/series/funnel/3d/index.js.map +1 -0
  1712. package/esm/series/funnel/funnel-transformer.d.ts +5 -0
  1713. package/esm/series/funnel/funnel-transformer.js +10 -0
  1714. package/esm/series/funnel/funnel-transformer.js.map +1 -0
  1715. package/esm/series/funnel/funnel.d.ts +5 -3
  1716. package/esm/series/funnel/funnel.js +11 -10
  1717. package/esm/series/funnel/funnel.js.map +1 -1
  1718. package/esm/series/gauge/gauge-pointer.d.ts +2 -3
  1719. package/esm/series/gauge/gauge-pointer.js +3 -4
  1720. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  1721. package/esm/series/gauge/gauge-transformer.d.ts +5 -0
  1722. package/esm/series/gauge/gauge-transformer.js +10 -0
  1723. package/esm/series/gauge/gauge-transformer.js.map +1 -0
  1724. package/esm/series/gauge/gauge.d.ts +4 -3
  1725. package/esm/series/gauge/gauge.js +9 -9
  1726. package/esm/series/gauge/gauge.js.map +1 -1
  1727. package/esm/series/geo/interface.d.ts +1 -1
  1728. package/esm/series/geo/interface.js.map +1 -1
  1729. package/esm/series/heatmap/heatmap-transformer.d.ts +5 -0
  1730. package/esm/series/heatmap/heatmap-transformer.js +10 -0
  1731. package/esm/series/heatmap/heatmap-transformer.js.map +1 -0
  1732. package/esm/series/heatmap/heatmap.d.ts +5 -4
  1733. package/esm/series/heatmap/heatmap.js +10 -11
  1734. package/esm/series/heatmap/heatmap.js.map +1 -1
  1735. package/esm/series/index.d.ts +3 -3
  1736. package/esm/series/index.js +3 -3
  1737. package/esm/series/index.js.map +1 -1
  1738. package/esm/series/interface/common.d.ts +11 -6
  1739. package/esm/series/interface/common.js.map +1 -1
  1740. package/esm/series/interface/series.d.ts +2 -3
  1741. package/esm/series/interface/series.js.map +1 -1
  1742. package/esm/series/line/line.d.ts +5 -3
  1743. package/esm/series/line/line.js +10 -7
  1744. package/esm/series/line/line.js.map +1 -1
  1745. package/esm/series/link/link.d.ts +2 -3
  1746. package/esm/series/link/link.js +3 -4
  1747. package/esm/series/link/link.js.map +1 -1
  1748. package/esm/series/map/map-transformer.d.ts +5 -0
  1749. package/esm/series/map/map-transformer.js +10 -0
  1750. package/esm/series/map/map-transformer.js.map +1 -0
  1751. package/esm/series/map/map.d.ts +8 -3
  1752. package/esm/series/map/map.js +13 -8
  1753. package/esm/series/map/map.js.map +1 -1
  1754. package/esm/series/mixin/line-mixin-transformer.d.ts +5 -0
  1755. package/esm/series/mixin/line-mixin-transformer.js +12 -0
  1756. package/esm/series/mixin/line-mixin-transformer.js.map +1 -0
  1757. package/esm/series/mixin/line-mixin.d.ts +1 -2
  1758. package/esm/series/mixin/line-mixin.js +3 -7
  1759. package/esm/series/mixin/line-mixin.js.map +1 -1
  1760. package/esm/series/pie/3d/index.d.ts +2 -0
  1761. package/esm/series/pie/3d/index.js +4 -0
  1762. package/esm/series/pie/3d/index.js.map +1 -0
  1763. package/esm/series/pie/3d/pie-3d-transformer.d.ts +5 -0
  1764. package/esm/series/pie/3d/pie-3d-transformer.js +10 -0
  1765. package/esm/series/pie/3d/pie-3d-transformer.js.map +1 -0
  1766. package/esm/series/pie/3d/pie-3d.d.ts +20 -0
  1767. package/esm/series/pie/3d/pie-3d.js +59 -0
  1768. package/esm/series/pie/3d/pie-3d.js.map +1 -0
  1769. package/esm/series/pie/interface.d.ts +3 -0
  1770. package/esm/series/pie/interface.js.map +1 -1
  1771. package/esm/series/pie/pie-transformer.d.ts +9 -0
  1772. package/esm/series/pie/pie-transformer.js +24 -0
  1773. package/esm/series/pie/pie-transformer.js.map +1 -0
  1774. package/esm/series/pie/pie.d.ts +6 -13
  1775. package/esm/series/pie/pie.js +12 -58
  1776. package/esm/series/pie/pie.js.map +1 -1
  1777. package/esm/series/polar/index.d.ts +3 -0
  1778. package/esm/series/polar/index.js +6 -0
  1779. package/esm/series/polar/index.js.map +1 -0
  1780. package/esm/series/polar/polar.d.ts +0 -1
  1781. package/esm/series/polar/polar.js +0 -7
  1782. package/esm/series/polar/polar.js.map +1 -1
  1783. package/esm/series/progress/circular/circular.d.ts +2 -3
  1784. package/esm/series/progress/circular/circular.js +4 -5
  1785. package/esm/series/progress/circular/circular.js.map +1 -1
  1786. package/esm/series/progress/linear/linear.d.ts +1 -3
  1787. package/esm/series/progress/linear/linear.js +3 -3
  1788. package/esm/series/progress/linear/linear.js.map +1 -1
  1789. package/esm/series/radar/radar.d.ts +5 -3
  1790. package/esm/series/radar/radar.js +11 -8
  1791. package/esm/series/radar/radar.js.map +1 -1
  1792. package/esm/series/range-area/range-area.js +2 -2
  1793. package/esm/series/range-area/range-area.js.map +1 -1
  1794. package/esm/series/range-column/3d/index.d.ts +2 -0
  1795. package/esm/series/range-column/3d/index.js +4 -0
  1796. package/esm/series/range-column/3d/index.js.map +1 -0
  1797. package/esm/series/range-column/3d/range-column-3d-transformer.d.ts +5 -0
  1798. package/esm/series/range-column/3d/range-column-3d-transformer.js +13 -0
  1799. package/esm/series/range-column/3d/range-column-3d-transformer.js.map +1 -0
  1800. package/esm/series/range-column/{range-column-3d.d.ts → 3d/range-column-3d.d.ts} +6 -6
  1801. package/esm/series/range-column/{range-column-3d.js → 3d/range-column-3d.js} +7 -7
  1802. package/esm/series/range-column/3d/range-column-3d.js.map +1 -0
  1803. package/esm/series/range-column/range-column-transformer.d.ts +5 -0
  1804. package/esm/series/range-column/range-column-transformer.js +13 -0
  1805. package/esm/series/range-column/range-column-transformer.js.map +1 -0
  1806. package/esm/series/range-column/range-column.d.ts +2 -0
  1807. package/esm/series/range-column/range-column.js +10 -8
  1808. package/esm/series/range-column/range-column.js.map +1 -1
  1809. package/esm/series/rose/rose-transformer.d.ts +5 -0
  1810. package/esm/series/rose/rose-transformer.js +10 -0
  1811. package/esm/series/rose/rose-transformer.js.map +1 -0
  1812. package/esm/series/rose/rose.d.ts +4 -3
  1813. package/esm/series/rose/rose.js +7 -7
  1814. package/esm/series/rose/rose.js.map +1 -1
  1815. package/esm/series/sankey/sankey.js +5 -6
  1816. package/esm/series/sankey/sankey.js.map +1 -1
  1817. package/esm/series/scatter/scatter-transformer.d.ts +5 -0
  1818. package/esm/series/scatter/scatter-transformer.js +10 -0
  1819. package/esm/series/scatter/scatter-transformer.js.map +1 -0
  1820. package/esm/series/scatter/scatter.d.ts +5 -3
  1821. package/esm/series/scatter/scatter.js +8 -6
  1822. package/esm/series/scatter/scatter.js.map +1 -1
  1823. package/esm/series/sunburst/sunburst.d.ts +1 -1
  1824. package/esm/series/sunburst/sunburst.js +4 -5
  1825. package/esm/series/sunburst/sunburst.js.map +1 -1
  1826. package/esm/series/treemap/treemap.js +4 -5
  1827. package/esm/series/treemap/treemap.js.map +1 -1
  1828. package/esm/series/waterfall/waterfall-transformer.d.ts +5 -0
  1829. package/esm/series/waterfall/waterfall-transformer.js +10 -0
  1830. package/esm/series/waterfall/waterfall-transformer.js.map +1 -0
  1831. package/esm/series/waterfall/waterfall.d.ts +4 -3
  1832. package/esm/series/waterfall/waterfall.js +12 -11
  1833. package/esm/series/waterfall/waterfall.js.map +1 -1
  1834. package/esm/series/word-cloud/word-cloud-3d.js +5 -5
  1835. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  1836. package/esm/series/word-cloud/word-cloud.js +6 -6
  1837. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  1838. package/esm/theme/builtin/common/component/axis/common-axis.js +4 -0
  1839. package/esm/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  1840. package/esm/theme/builtin/common/component/crosshair.js +8 -0
  1841. package/esm/theme/builtin/common/component/crosshair.js.map +1 -1
  1842. package/esm/theme/builtin/common/component/data-zoom.js +2 -4
  1843. package/esm/theme/builtin/common/component/data-zoom.js.map +1 -1
  1844. package/esm/theme/builtin/index.d.ts +0 -1
  1845. package/esm/theme/builtin/index.js +0 -2
  1846. package/esm/theme/builtin/index.js.map +1 -1
  1847. package/esm/theme/color-scheme/util.js +2 -4
  1848. package/esm/theme/color-scheme/util.js.map +1 -1
  1849. package/esm/typings/spec/common.d.ts +2 -0
  1850. package/esm/typings/spec/common.js.map +1 -1
  1851. package/esm/util/color.d.ts +1 -3
  1852. package/esm/util/color.js +1 -5
  1853. package/esm/util/color.js.map +1 -1
  1854. package/esm/util/space.d.ts +1 -3
  1855. package/esm/util/space.js +0 -12
  1856. package/esm/util/space.js.map +1 -1
  1857. package/esm/vchart-all.js +1 -1
  1858. package/esm/vchart-all.js.map +1 -1
  1859. package/package.json +16 -16
  1860. package/cjs/chart/bar/bar-3d.d.ts +0 -9
  1861. package/cjs/chart/bar/bar-3d.js +0 -30
  1862. package/cjs/chart/bar/bar-3d.js.map +0 -1
  1863. package/cjs/chart/base-chart.js.map +0 -1
  1864. package/cjs/chart/cartesian/cartesian.d.ts +0 -8
  1865. package/cjs/chart/cartesian/cartesian.js.map +0 -1
  1866. package/cjs/chart/funnel/base.d.ts +0 -9
  1867. package/cjs/chart/funnel/base.js.map +0 -1
  1868. package/cjs/chart/funnel/funnel-3d.d.ts +0 -8
  1869. package/cjs/chart/funnel/funnel-3d.js +0 -23
  1870. package/cjs/chart/funnel/funnel-3d.js.map +0 -1
  1871. package/cjs/chart/histogram/base.d.ts +0 -6
  1872. package/cjs/chart/histogram/base.js.map +0 -1
  1873. package/cjs/chart/histogram/histogram-3d.d.ts +0 -8
  1874. package/cjs/chart/histogram/histogram-3d.js +0 -23
  1875. package/cjs/chart/histogram/histogram-3d.js.map +0 -1
  1876. package/cjs/chart/pie/base.d.ts +0 -5
  1877. package/cjs/chart/pie/base.js.map +0 -1
  1878. package/cjs/chart/pie/pie-3d.d.ts +0 -9
  1879. package/cjs/chart/pie/pie-3d.js +0 -27
  1880. package/cjs/chart/pie/pie-3d.js.map +0 -1
  1881. package/cjs/chart/polar/polar.d.ts +0 -9
  1882. package/cjs/chart/polar/polar.js.map +0 -1
  1883. package/cjs/chart/polar/progress-like.d.ts +0 -7
  1884. package/cjs/chart/polar/progress-like.js.map +0 -1
  1885. package/cjs/chart/polar/rose-like.d.ts +0 -7
  1886. package/cjs/chart/polar/rose-like.js.map +0 -1
  1887. package/cjs/chart/range-column/range-column-3d.d.ts +0 -9
  1888. package/cjs/chart/range-column/range-column-3d.js +0 -31
  1889. package/cjs/chart/range-column/range-column-3d.js.map +0 -1
  1890. package/cjs/chart/word-cloud/base.d.ts +0 -6
  1891. package/cjs/chart/word-cloud/base.js +0 -25
  1892. package/cjs/chart/word-cloud/base.js.map +0 -1
  1893. package/cjs/chart/word-cloud/word-cloud-3d.d.ts +0 -11
  1894. package/cjs/chart/word-cloud/word-cloud-3d.js +0 -55
  1895. package/cjs/chart/word-cloud/word-cloud-3d.js.map +0 -1
  1896. package/cjs/component/label/totalLabel.js.map +0 -1
  1897. package/cjs/plugin/components/basic-plugin.d.ts +0 -9
  1898. package/cjs/plugin/components/basic-plugin.js +0 -19
  1899. package/cjs/plugin/components/basic-plugin.js.map +0 -1
  1900. package/cjs/series/funnel/funnel-3d.js.map +0 -1
  1901. package/cjs/series/pie/pie-3d.d.ts +0 -16
  1902. package/cjs/series/pie/pie-3d.js +0 -93
  1903. package/cjs/series/pie/pie-3d.js.map +0 -1
  1904. package/cjs/series/range-column/range-column-3d.js.map +0 -1
  1905. package/cjs/theme/builtin/common/legacy/index.d.ts +0 -1
  1906. package/cjs/theme/builtin/common/legacy/index.js.map +0 -1
  1907. package/cjs/theme/builtin/common/legacy/legend/color-legend.d.ts +0 -2
  1908. package/cjs/theme/builtin/common/legacy/legend/color-legend.js +0 -43
  1909. package/cjs/theme/builtin/common/legacy/legend/color-legend.js.map +0 -1
  1910. package/cjs/theme/builtin/common/legacy/legend/continuous.d.ts +0 -2
  1911. package/cjs/theme/builtin/common/legacy/legend/continuous.js +0 -60
  1912. package/cjs/theme/builtin/common/legacy/legend/continuous.js.map +0 -1
  1913. package/cjs/theme/builtin/common/legacy/legend/index.d.ts +0 -2
  1914. package/cjs/theme/builtin/common/legacy/legend/index.js +0 -24
  1915. package/cjs/theme/builtin/common/legacy/legend/index.js.map +0 -1
  1916. package/cjs/theme/builtin/common/legacy/legend/size-legend.d.ts +0 -2
  1917. package/cjs/theme/builtin/common/legacy/legend/size-legend.js +0 -56
  1918. package/cjs/theme/builtin/common/legacy/legend/size-legend.js.map +0 -1
  1919. package/esm/chart/bar/bar-3d.d.ts +0 -9
  1920. package/esm/chart/bar/bar-3d.js +0 -30
  1921. package/esm/chart/bar/bar-3d.js.map +0 -1
  1922. package/esm/chart/base-chart.js.map +0 -1
  1923. package/esm/chart/cartesian/cartesian.d.ts +0 -8
  1924. package/esm/chart/cartesian/cartesian.js.map +0 -1
  1925. package/esm/chart/funnel/base.d.ts +0 -9
  1926. package/esm/chart/funnel/base.js.map +0 -1
  1927. package/esm/chart/funnel/funnel-3d.d.ts +0 -8
  1928. package/esm/chart/funnel/funnel-3d.js +0 -22
  1929. package/esm/chart/funnel/funnel-3d.js.map +0 -1
  1930. package/esm/chart/histogram/base.d.ts +0 -6
  1931. package/esm/chart/histogram/base.js.map +0 -1
  1932. package/esm/chart/histogram/histogram-3d.d.ts +0 -8
  1933. package/esm/chart/histogram/histogram-3d.js +0 -22
  1934. package/esm/chart/histogram/histogram-3d.js.map +0 -1
  1935. package/esm/chart/pie/base.d.ts +0 -5
  1936. package/esm/chart/pie/base.js.map +0 -1
  1937. package/esm/chart/pie/pie-3d.d.ts +0 -9
  1938. package/esm/chart/pie/pie-3d.js +0 -27
  1939. package/esm/chart/pie/pie-3d.js.map +0 -1
  1940. package/esm/chart/polar/polar.d.ts +0 -9
  1941. package/esm/chart/polar/polar.js.map +0 -1
  1942. package/esm/chart/polar/progress-like.d.ts +0 -7
  1943. package/esm/chart/polar/progress-like.js.map +0 -1
  1944. package/esm/chart/polar/rose-like.d.ts +0 -7
  1945. package/esm/chart/polar/rose-like.js.map +0 -1
  1946. package/esm/chart/range-column/range-column-3d.d.ts +0 -9
  1947. package/esm/chart/range-column/range-column-3d.js +0 -32
  1948. package/esm/chart/range-column/range-column-3d.js.map +0 -1
  1949. package/esm/chart/word-cloud/base.d.ts +0 -6
  1950. package/esm/chart/word-cloud/base.js +0 -21
  1951. package/esm/chart/word-cloud/base.js.map +0 -1
  1952. package/esm/chart/word-cloud/word-cloud-3d.d.ts +0 -11
  1953. package/esm/chart/word-cloud/word-cloud-3d.js.map +0 -1
  1954. package/esm/component/label/totalLabel.js.map +0 -1
  1955. package/esm/plugin/components/basic-plugin.d.ts +0 -9
  1956. package/esm/plugin/components/basic-plugin.js +0 -11
  1957. package/esm/plugin/components/basic-plugin.js.map +0 -1
  1958. package/esm/series/funnel/funnel-3d.js.map +0 -1
  1959. package/esm/series/pie/pie-3d.d.ts +0 -16
  1960. package/esm/series/pie/pie-3d.js +0 -99
  1961. package/esm/series/pie/pie-3d.js.map +0 -1
  1962. package/esm/series/range-column/range-column-3d.js.map +0 -1
  1963. package/esm/theme/builtin/common/legacy/index.d.ts +0 -1
  1964. package/esm/theme/builtin/common/legacy/index.js.map +0 -1
  1965. package/esm/theme/builtin/common/legacy/legend/color-legend.d.ts +0 -2
  1966. package/esm/theme/builtin/common/legacy/legend/color-legend.js +0 -39
  1967. package/esm/theme/builtin/common/legacy/legend/color-legend.js.map +0 -1
  1968. package/esm/theme/builtin/common/legacy/legend/continuous.d.ts +0 -2
  1969. package/esm/theme/builtin/common/legacy/legend/continuous.js +0 -54
  1970. package/esm/theme/builtin/common/legacy/legend/continuous.js.map +0 -1
  1971. package/esm/theme/builtin/common/legacy/legend/index.d.ts +0 -2
  1972. package/esm/theme/builtin/common/legacy/legend/index.js +0 -4
  1973. package/esm/theme/builtin/common/legacy/legend/index.js.map +0 -1
  1974. package/esm/theme/builtin/common/legacy/legend/size-legend.d.ts +0 -2
  1975. package/esm/theme/builtin/common/legacy/legend/size-legend.js +0 -54
  1976. package/esm/theme/builtin/common/legacy/legend/size-legend.js.map +0 -1
@@ -11,29 +11,35 @@ class Title extends base_component_1.BaseComponent {
11
11
  return this._orient;
12
12
  }
13
13
  constructor(spec, options) {
14
- super(spec, options), this.type = type_1.ComponentTypeEnum.title, this.layoutType = "normal",
15
- this.layoutZIndex = constant_1.LayoutZIndex.Title, this.layoutLevel = constant_1.LayoutLevel.Title,
14
+ super(spec, options), this.type = type_1.ComponentTypeEnum.title, this.specKey = "title",
15
+ this.layoutType = "normal", this.layoutZIndex = constant_1.LayoutZIndex.Title, this.layoutLevel = constant_1.LayoutLevel.Title,
16
16
  this._orient = "top", this._orient = (0, space_1.isValidOrient)(spec.orient) ? spec.orient : "top";
17
17
  }
18
18
  initLayout() {
19
19
  super.initLayout(), this._layout && (this._layout.layoutOrient = this._orient);
20
20
  }
21
- static createComponent(spec, options) {
22
- const titleSpec = spec.title;
21
+ static getSpecInfo(chartSpec) {
22
+ const titleSpec = chartSpec[this.specKey];
23
23
  if (!titleSpec || !1 === titleSpec.visible) return null;
24
- if (!(0, vutils_1.isArray)(titleSpec)) return new Title(titleSpec, options);
25
- const titles = [];
24
+ if (!(0, vutils_1.isArray)(titleSpec)) return [ {
25
+ spec: titleSpec,
26
+ specPath: [ this.specKey ],
27
+ type: type_1.ComponentTypeEnum.title
28
+ } ];
29
+ const specInfos = [];
26
30
  return titleSpec.forEach(((s, i) => {
27
- !1 !== s.visible && titles.push(new Title(s, Object.assign(Object.assign({}, options), {
28
- specIndex: i
29
- })));
30
- })), titles;
31
+ !1 !== s.visible && specInfos.push({
32
+ spec: s,
33
+ specIndex: i,
34
+ specPath: [ this.specKey, i ],
35
+ type: type_1.ComponentTypeEnum.title
36
+ });
37
+ })), specInfos;
31
38
  }
32
39
  onRender(ctx) {}
33
- _compareSpec() {
34
- var _a, _b;
35
- const result = super._compareSpec();
36
- return (null === (_a = this._originalSpec) || void 0 === _a ? void 0 : _a.orient) !== (null === (_b = this._spec) || void 0 === _b ? void 0 : _b.orient) && (result.reMake = !0),
40
+ _compareSpec(spec, prevSpec) {
41
+ const result = super._compareSpec(spec, prevSpec);
42
+ return (null == prevSpec ? void 0 : prevSpec.orient) !== (null == spec ? void 0 : spec.orient) && (result.reMake = !0),
37
43
  result.change = !0, result.reRender = !0, result;
38
44
  }
39
45
  changeRegions(regions) {}
@@ -106,7 +112,7 @@ class Title extends base_component_1.BaseComponent {
106
112
  }
107
113
  }
108
114
 
109
- exports.Title = Title, Title.type = type_1.ComponentTypeEnum.title;
115
+ exports.Title = Title, Title.type = type_1.ComponentTypeEnum.title, Title.specKey = "title";
110
116
 
111
117
  const registerTitle = () => {
112
118
  factory_1.Factory.registerComponent(Title.type, Title);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/title/title.ts"],"names":[],"mappings":"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","file":"title.js","sourcesContent":["import { LayoutLevel, LayoutZIndex } from '../../constant';\nimport { Factory } from '../../core/factory';\nimport type { IRegion } from '../../region/interface';\nimport type { IPoint, IOrientType, ILayoutType, ILayoutRect } from '../../typings';\nimport { isValidOrient } from '../../util/space';\nimport { BaseComponent } from '../base/base-component';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IComponentOption } from '../interface';\nimport { ComponentTypeEnum } from '../interface/type';\nimport type { ITitle, ITitleSpec, ITitleTheme } from './interface';\nimport { Title as TitleComponents } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TitleAttrs } from '@visactor/vrender-components';\nimport type { IGraphic, IGroup, INode } from '@visactor/vrender-core';\nimport { isEqual, isArray, isValidNumber, pickWithout } from '@visactor/vutils';\n\nexport class Title extends BaseComponent<ITitleSpec> implements ITitle {\n static type = ComponentTypeEnum.title;\n type = ComponentTypeEnum.title;\n\n layoutType: ILayoutType = 'normal';\n layoutZIndex: number = LayoutZIndex.Title;\n layoutLevel: number = LayoutLevel.Title;\n\n protected declare _theme: ITitleTheme;\n\n protected _orient: IOrientType = 'top';\n\n private _titleComponent: TitleComponents;\n private _cacheAttrs: TitleAttrs;\n\n get orient() {\n return this._orient;\n }\n\n constructor(spec: ITitleSpec, options: IComponentOption) {\n super(spec, options);\n this._orient = isValidOrient(spec.orient) ? spec.orient : 'top';\n }\n\n initLayout(): void {\n super.initLayout();\n this._layout && (this._layout.layoutOrient = this._orient);\n }\n\n static createComponent(spec: any, options: IComponentOption) {\n const titleSpec = spec.title;\n if (!titleSpec || titleSpec.visible === false) {\n return null;\n }\n if (!isArray(titleSpec)) {\n return new Title(titleSpec, options);\n }\n const titles: Title[] = [];\n titleSpec.forEach((s: any, i: number) => {\n if (s.visible !== false) {\n titles.push(new Title(s, { ...options, specIndex: i }));\n }\n });\n return titles;\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n /**\n * updateSpec\n */\n _compareSpec() {\n const result = super._compareSpec();\n if (this._originalSpec?.orient !== this._spec?.orient) {\n result.reMake = true;\n }\n\n result.change = true;\n result.reRender = true;\n return result;\n }\n\n // region\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n afterSetLayoutStartPoint(pos: IPoint): void {\n if (isValidNumber(pos.x)) {\n this._titleComponent && this._titleComponent.setAttribute('x', pos.x);\n }\n if (isValidNumber(pos.y)) {\n this._titleComponent && this._titleComponent.setAttribute('y', pos.y);\n }\n super.afterSetLayoutStartPoint(pos);\n }\n\n getBoundsInRect(rect: ILayoutRect) {\n let result: Partial<ILayoutRect> = {};\n this.setLayoutRect(rect);\n\n const attrs = this._getTitleAttrs();\n this._createOrUpdateTitleComponent(attrs);\n\n result = this._getTitleLayoutRect();\n const { x, y } = this.getLayoutStartPoint();\n return {\n x1: x,\n y1: y,\n x2: x + result.width,\n y2: y + result.height\n };\n }\n\n private _getTitleLayoutRect() {\n const titleBounds = this._titleComponent.AABBBounds;\n const width = this._spec.width ? this._spec.width : isValidNumber(titleBounds.width()) ? titleBounds.width() : 0;\n const height = this._spec.height\n ? this._spec.height\n : isValidNumber(titleBounds.height())\n ? titleBounds.height()\n : 0;\n return {\n width,\n height\n };\n }\n\n private _getTitleAttrs() {\n // 当 width 小于 0 时,设置为 0,负数场景容易引起不可预知的问题\n const realWidth = Math.max(0, this._spec.width ?? this.getLayoutRect().width);\n return {\n ...pickWithout(this._spec, ['padding']),\n textType: this._spec.textType ?? 'text',\n text: this._spec.text ?? '',\n subtextType: this._spec.subtextType ?? 'text',\n subtext: this._spec.subtext ?? '',\n x: this._spec.x ?? 0,\n y: this._spec.y ?? 0,\n width: realWidth,\n height: this._spec.height,\n minWidth: this._spec.minWidth,\n maxWidth: this._spec.maxWidth,\n minHeight: this._spec.minHeight,\n maxHeight: this._spec.maxHeight,\n padding: this._spec.innerPadding,\n align: this._spec.align ?? 'left',\n verticalAlign: this._spec.verticalAlign ?? 'top',\n textStyle: {\n width: realWidth,\n ...this._spec.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._spec.subtextStyle\n }\n } as TitleAttrs;\n }\n\n private _createOrUpdateTitleComponent(attrs: TitleAttrs): TitleComponents {\n if (this._titleComponent) {\n if (!isEqual(attrs, this._cacheAttrs)) {\n this._titleComponent.setAttributes(attrs);\n }\n } else {\n const container = this.getContainer();\n const title = new TitleComponents(attrs);\n title.name = 'title';\n container.add(title as unknown as INode);\n this._titleComponent = title;\n // 代理 title 组件上的事件\n title.on('*', (event: any, type: string) => this._delegateEvent(title as unknown as IGraphic, event, type));\n }\n this._cacheAttrs = attrs;\n return this._titleComponent;\n }\n\n protected _getNeedClearVRenderComponents(): IGraphic[] {\n return [this._titleComponent] as unknown as IGroup[];\n }\n\n clear(): void {\n super.clear();\n this._cacheAttrs = null;\n }\n}\n\nexport const registerTitle = () => {\n Factory.registerComponent(Title.type, Title);\n};\n"]}
1
+ {"version":3,"sources":["../src/component/title/title.ts"],"names":[],"mappings":"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","file":"title.js","sourcesContent":["import { LayoutLevel, LayoutZIndex } from '../../constant';\nimport { Factory } from '../../core/factory';\nimport type { IModelSpecInfo } from '../../model/interface';\nimport type { IRegion } from '../../region/interface';\nimport type { IPoint, IOrientType, ILayoutType, ILayoutRect } from '../../typings';\nimport { isValidOrient } from '../../util/space';\nimport { BaseComponent } from '../base/base-component';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IComponentOption } from '../interface';\nimport { ComponentTypeEnum } from '../interface/type';\nimport type { ITitle, ITitleSpec, ITitleTheme } from './interface';\nimport { Title as TitleComponents } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TitleAttrs } from '@visactor/vrender-components';\nimport type { IGraphic, IGroup, INode } from '@visactor/vrender-core';\nimport type { Maybe } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isEqual, isArray, isValidNumber, pickWithout } from '@visactor/vutils';\n\nexport class Title<T extends ITitleSpec = ITitleSpec> extends BaseComponent<T> implements ITitle {\n static type = ComponentTypeEnum.title;\n type = ComponentTypeEnum.title;\n\n static specKey = 'title';\n specKey = 'title';\n\n layoutType: ILayoutType = 'normal';\n layoutZIndex: number = LayoutZIndex.Title;\n layoutLevel: number = LayoutLevel.Title;\n\n protected _orient: IOrientType = 'top';\n\n private _titleComponent: TitleComponents;\n private _cacheAttrs: TitleAttrs;\n\n get orient() {\n return this._orient;\n }\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, options);\n this._orient = isValidOrient(spec.orient) ? spec.orient : 'top';\n }\n\n initLayout(): void {\n super.initLayout();\n this._layout && (this._layout.layoutOrient = this._orient);\n }\n\n static getSpecInfo(chartSpec: any): Maybe<IModelSpecInfo[]> {\n const titleSpec = chartSpec[this.specKey];\n if (!titleSpec || titleSpec.visible === false) {\n return null;\n }\n if (!isArray(titleSpec)) {\n return [\n {\n spec: titleSpec,\n specPath: [this.specKey],\n type: ComponentTypeEnum.title\n }\n ];\n }\n const specInfos: IModelSpecInfo[] = [];\n titleSpec.forEach((s: any, i: number) => {\n if (s.visible !== false) {\n specInfos.push({\n spec: s,\n specIndex: i,\n specPath: [this.specKey, i],\n type: ComponentTypeEnum.title\n });\n }\n });\n return specInfos;\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n /**\n * updateSpec\n */\n _compareSpec(spec: T, prevSpec: T) {\n const result = super._compareSpec(spec, prevSpec);\n if (prevSpec?.orient !== spec?.orient) {\n result.reMake = true;\n }\n\n result.change = true;\n result.reRender = true;\n return result;\n }\n\n // region\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n afterSetLayoutStartPoint(pos: IPoint): void {\n if (isValidNumber(pos.x)) {\n this._titleComponent && this._titleComponent.setAttribute('x', pos.x);\n }\n if (isValidNumber(pos.y)) {\n this._titleComponent && this._titleComponent.setAttribute('y', pos.y);\n }\n super.afterSetLayoutStartPoint(pos);\n }\n\n getBoundsInRect(rect: ILayoutRect) {\n let result: Partial<ILayoutRect> = {};\n this.setLayoutRect(rect);\n\n const attrs = this._getTitleAttrs();\n this._createOrUpdateTitleComponent(attrs);\n\n result = this._getTitleLayoutRect();\n const { x, y } = this.getLayoutStartPoint();\n return {\n x1: x,\n y1: y,\n x2: x + result.width,\n y2: y + result.height\n };\n }\n\n private _getTitleLayoutRect() {\n const titleBounds = this._titleComponent.AABBBounds;\n const width = this._spec.width ? this._spec.width : isValidNumber(titleBounds.width()) ? titleBounds.width() : 0;\n const height = this._spec.height\n ? this._spec.height\n : isValidNumber(titleBounds.height())\n ? titleBounds.height()\n : 0;\n return {\n width,\n height\n };\n }\n\n private _getTitleAttrs() {\n // 当 width 小于 0 时,设置为 0,负数场景容易引起不可预知的问题\n const realWidth = Math.max(0, this._spec.width ?? this.getLayoutRect().width);\n return {\n ...pickWithout(this._spec, ['padding']),\n textType: this._spec.textType ?? 'text',\n text: this._spec.text ?? '',\n subtextType: this._spec.subtextType ?? 'text',\n subtext: this._spec.subtext ?? '',\n x: this._spec.x ?? 0,\n y: this._spec.y ?? 0,\n width: realWidth,\n height: this._spec.height,\n minWidth: this._spec.minWidth,\n maxWidth: this._spec.maxWidth,\n minHeight: this._spec.minHeight,\n maxHeight: this._spec.maxHeight,\n padding: this._spec.innerPadding,\n align: this._spec.align ?? 'left',\n verticalAlign: this._spec.verticalAlign ?? 'top',\n textStyle: {\n width: realWidth,\n ...this._spec.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._spec.subtextStyle\n }\n } as TitleAttrs;\n }\n\n private _createOrUpdateTitleComponent(attrs: TitleAttrs): TitleComponents {\n if (this._titleComponent) {\n if (!isEqual(attrs, this._cacheAttrs)) {\n this._titleComponent.setAttributes(attrs);\n }\n } else {\n const container = this.getContainer();\n const title = new TitleComponents(attrs);\n title.name = 'title';\n container.add(title as unknown as INode);\n this._titleComponent = title;\n // 代理 title 组件上的事件\n title.on('*', (event: any, type: string) => this._delegateEvent(title as unknown as IGraphic, event, type));\n }\n this._cacheAttrs = attrs;\n return this._titleComponent;\n }\n\n protected _getNeedClearVRenderComponents(): IGraphic[] {\n return [this._titleComponent] as unknown as IGroup[];\n }\n\n clear(): void {\n super.clear();\n this._cacheAttrs = null;\n }\n}\n\nexport const registerTitle = () => {\n Factory.registerComponent(Title.type, Title);\n};\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.BaseTooltipHandler = void 0;
6
6
 
7
- const base_1 = require("../../../constant/base"), constants_1 = require("./constants"), position_1 = require("../../../typings/tooltip/position"), env_1 = require("../../../util/env"), common_1 = require("./utils/common"), position_2 = require("./utils/position"), compose_1 = require("./utils/compose"), get_spec_1 = require("./utils/get-spec"), common_2 = require("../interface/common"), vutils_1 = require("@visactor/vutils"), attribute_1 = require("./utils/attribute"), util_1 = require("../../../util");
7
+ const base_1 = require("../../../constant/base"), constants_1 = require("./constants"), position_1 = require("../../../typings/tooltip/position"), env_1 = require("../../../util/env"), common_1 = require("./utils/common"), position_2 = require("./utils/position"), compose_1 = require("./utils/compose"), get_spec_1 = require("./utils/get-spec"), common_2 = require("../interface/common"), vutils_1 = require("@visactor/vutils"), attribute_1 = require("./utils/attribute");
8
8
 
9
9
  class BaseTooltipHandler {
10
10
  get id() {
@@ -316,12 +316,12 @@ class BaseTooltipHandler {
316
316
  _isPointerMovingToTooltip(params) {
317
317
  if (!this._cacheTooltipPosition || !this._cacheTooltipSize || !this._cachePointerPosition) return !1;
318
318
  const {width: tooltipWidth, height: tooltipHeight} = this._cacheTooltipSize, {x: tooltipX = 0, y: tooltipY} = this._cacheTooltipPosition, pos = this._getPointerPositionRelativeToTooltipParent(params);
319
- if ((0, util_1.isPointInRect)(pos, {
320
- x: tooltipX,
321
- y: tooltipY,
322
- width: tooltipWidth,
323
- height: tooltipHeight
324
- })) return !0;
319
+ if ((0, vutils_1.pointInRect)(pos, {
320
+ x1: tooltipX,
321
+ y1: tooltipY,
322
+ x2: tooltipX + tooltipWidth,
323
+ y2: tooltipY + tooltipHeight
324
+ }, !1)) return !0;
325
325
  const a = {
326
326
  x: tooltipX,
327
327
  y: tooltipY
@@ -335,8 +335,9 @@ class BaseTooltipHandler {
335
335
  x: b.x,
336
336
  y: c.y
337
337
  }, oldPos = this._cachePointerPosition;
338
- return (0, util_1.isPointInTriangle)(pos, oldPos, a, b) || (0, util_1.isPointInTriangle)(pos, oldPos, c, d) || (0,
339
- util_1.isPointInTriangle)(pos, oldPos, a, d) || (0, util_1.isPointInTriangle)(pos, oldPos, b, c);
338
+ return (0, vutils_1.polygonContainPoint)([ oldPos, a, b ], pos.x, pos.y) || (0,
339
+ vutils_1.polygonContainPoint)([ oldPos, c, d ], pos.x, pos.y) || (0, vutils_1.polygonContainPoint)([ oldPos, a, d ], pos.x, pos.y) || (0,
340
+ vutils_1.polygonContainPoint)([ oldPos, b, c ], pos.x, pos.y);
340
341
  }
341
342
  _getParentElement(spec) {
342
343
  return spec.parentElement;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["import { DEFAULT_CHART_WIDTH, DEFAULT_CHART_HEIGHT } from '../../../constant/base';\nimport type { Options } from './constants';\n// eslint-disable-next-line no-duplicate-imports\nimport { DEFAULT_OPTIONS } from './constants';\nimport type { Maybe, IPoint, ILayoutPoint } from '../../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport { TooltipPositionMode } from '../../../typings/tooltip/position';\n// eslint-disable-next-line no-duplicate-imports\nimport { isTrueBrowser } from '../../../util/env';\nimport type {\n TooltipData,\n IToolTipActual,\n TooltipActiveType,\n ITooltipHandler,\n ITooltipPattern,\n ITooltipPositionActual,\n ITooltipPositionPattern\n} from '../../../typings/tooltip';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TooltipFixedPosition } from '../../../typings/tooltip';\nimport type { BaseEventParams } from '../../../event/interface';\nimport { getTooltipPatternValue, getScale } from './utils/common';\nimport { getActualTooltipPositionValue, getHorizontalPositionType, getVerticalPositionType } from './utils/position';\nimport { getShowContent } from './utils/compose';\nimport { getTooltipSpecForShow } from './utils/get-spec';\nimport type { Tooltip, TooltipActualTitleContent } from '../tooltip';\nimport type { ISeries } from '../../../series/interface';\nimport type { ITooltipSpec, TooltipHandlerParams } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { TooltipResult } from '../interface/common';\nimport type { IGroup } from '@visactor/vrender-core';\nimport type { AABBBounds } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isNumber, isObject, isValidNumber, isValid, throttle, isNil } from '@visactor/vutils';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport type { ILayoutModel, IModel } from '../../../model/interface';\nimport type { Compiler } from '../../../compile/compiler';\nimport type { IContainerSize, TooltipAttributes } from '@visactor/vrender-components';\nimport { getTooltipAttributes } from './utils/attribute';\nimport type { DimensionEventParams } from '../../../event/events/dimension/interface';\nimport type { IChartOption } from '../../../chart/interface';\nimport { isPointInRect, isPointInTriangle } from '../../../util';\n\ntype ChangeTooltipFunc = (\n visible: boolean,\n params: TooltipHandlerParams,\n changePositionOnly?: boolean,\n activeType?: TooltipActiveType,\n data?: TooltipData\n) => TooltipResult;\n\ntype ChangeTooltipPositionFunc = (\n changePositionOnly: boolean,\n data: TooltipData,\n params: TooltipHandlerParams\n) => TooltipResult;\n\n/**\n * The tooltip handler class.\n */\nexport abstract class BaseTooltipHandler implements ITooltipHandler {\n readonly type: string;\n\n /** 是否可见 */\n protected _visible = true;\n\n // protected _style: ITooltipStyle = {};\n\n protected _option: Options;\n\n protected _chartOption: IChartOption;\n\n protected _id = '';\n public get id() {\n return this._id;\n }\n\n protected _env;\n public get env() {\n return this._env;\n }\n\n protected _component: Tooltip;\n protected _attributes?: TooltipAttributes | null = null;\n\n protected _chartContainer: Maybe<HTMLElement>;\n protected _compiler: Compiler;\n\n protected _cacheViewSpec: ITooltipSpec | undefined;\n protected _cacheActualTooltip: IToolTipActual | undefined;\n\n protected _isTooltipPaused: boolean;\n protected _isPointerEscaped: boolean;\n protected _cachePointerTimer: number;\n protected _cachePointerPosition: ILayoutPoint;\n protected _cacheTooltipPosition: ILayoutPoint;\n protected _cacheTooltipSize: IContainerSize;\n\n // tooltip 容器\n protected _container!: Maybe<IGroup | HTMLElement>;\n\n protected _isReleased: boolean = false;\n\n /**\n * Create the tooltip handler.\n */\n constructor(tooltipId: string, component: Tooltip) {\n this._component = component;\n this._chartOption = component.getOption() as any;\n this._env = this._chartOption.mode;\n this._chartContainer = this._chartOption.globalInstance.getContainer();\n this._compiler = component.getCompiler();\n this._id = tooltipId; // 可能有多个 tooltip\n this._initFromSpec();\n }\n\n showTooltip = (activeType: TooltipActiveType, data: TooltipData, params: TooltipHandlerParams) => {\n let changePositionOnly = !!params.changePositionOnly;\n if (!params.changePositionOnly || this._cacheActualTooltip?.activeType !== activeType) {\n changePositionOnly = false;\n this._clearCacheOfContent();\n }\n\n if (changePositionOnly && this._cacheViewSpec && this._cacheActualTooltip) {\n return this.changeTooltipPosition(changePositionOnly, data, params);\n }\n return this.changeTooltip(true, params, changePositionOnly, activeType, data);\n };\n\n /** 改变 tooltip 内容和位置(带 throttle 版本),返回是否遇到异常 */\n protected changeTooltip: ChangeTooltipFunc;\n\n /** 改变 tooltip 内容和位置(不带 throttle 版本),返回是否遇到异常 */\n protected _changeTooltip: ChangeTooltipFunc = (\n visible: boolean,\n params: TooltipHandlerParams,\n changePositionOnly?: boolean,\n activeType?: TooltipActiveType,\n data?: TooltipData\n ) => {\n const tooltipSpec = this._component.getSpec() as ITooltipSpec;\n if (this._isReleased || !tooltipSpec) {\n return TooltipResult.failed;\n }\n\n /** 关闭 tooltip */\n if (!visible) {\n this._clearAllCache();\n\n /** 用户自定义逻辑 */\n if (tooltipSpec.handler) {\n return tooltipSpec.handler.hideTooltip?.(params) ?? TooltipResult.success;\n }\n /** 默认逻辑 */\n this._updateTooltip(false, params);\n return TooltipResult.success;\n }\n\n if (isNil(activeType) || isNil(data)) {\n return TooltipResult.failed;\n }\n\n /** spec 预处理 */\n let spec: ITooltipSpec | undefined;\n if (changePositionOnly && this._cacheViewSpec) {\n spec = this._cacheViewSpec;\n } else {\n spec = getTooltipSpecForShow(\n activeType!,\n tooltipSpec,\n (params as BaseEventParams).model as ISeries,\n (params as DimensionEventParams).dimensionInfo\n );\n this._cacheViewSpec = spec;\n }\n\n if (spec.visible === false) {\n return TooltipResult.failed;\n }\n\n /** 用户自定义逻辑 */\n if (spec.handler) {\n return spec.handler.showTooltip?.(activeType!, data!, params) ?? TooltipResult.success;\n }\n\n /** 默认逻辑 */\n const pattern = spec[activeType!] as ITooltipPattern;\n if (!pattern) {\n return TooltipResult.failed;\n }\n\n // 合成 tooltip 内容\n let actualTooltip: IToolTipActual | undefined;\n if (changePositionOnly && this._cacheActualTooltip) {\n actualTooltip = this._cacheActualTooltip;\n } else {\n actualTooltip = this._getActualTooltipContent(pattern, data!, params);\n actualTooltip.title = pattern.updateTitle?.(actualTooltip.title, data, params) ?? actualTooltip.title;\n actualTooltip.content = pattern.updateContent?.(actualTooltip.content, data, params) ?? actualTooltip.content;\n }\n\n // 判断 tooltip 是否为空\n if (isNil(actualTooltip.title?.key) && isNil(actualTooltip.title?.value) && !actualTooltip.content?.length) {\n return TooltipResult.failed;\n }\n\n this._cacheActualTooltip = actualTooltip;\n return this._changeTooltipPosition(!!changePositionOnly, data!, params);\n };\n\n /** 改变 tooltip 位置(带 throttle 版本),返回是否遇到异常 */\n protected changeTooltipPosition: ChangeTooltipPositionFunc;\n\n /** 改变 tooltip 位置(不带 throttle 版本),返回是否遇到异常 */\n protected _changeTooltipPosition: ChangeTooltipPositionFunc = (\n changePositionOnly: boolean,\n data: TooltipData,\n params: TooltipHandlerParams\n ) => {\n if (this._isReleased) {\n return TooltipResult.failed;\n }\n\n const event = params.event as MouseEvent;\n const spec = this._cacheViewSpec;\n const actualTooltip = this._cacheActualTooltip;\n if (!spec || !actualTooltip) {\n return TooltipResult.failed;\n }\n\n if (spec.enterable) {\n if (!this._isPointerEscaped && this._isPointerMovingToTooltip(params)) {\n if (!this._isTooltipPaused) {\n this._isTooltipPaused = true;\n this._cachePointerTimer = setTimeout(() => {\n this._isPointerEscaped = true;\n }, 300) as unknown as number;\n }\n return TooltipResult.success;\n }\n this._isTooltipPaused = false;\n this._isPointerEscaped = false;\n clearTimeout(this._cachePointerTimer);\n this._cachePointerPosition = this._getPointerPositionRelativeToTooltipParent(params);\n }\n\n const activeType = actualTooltip.activeType;\n\n /** 用户自定义逻辑 */\n if (spec.handler) {\n return spec.handler.showTooltip?.(activeType, data, params) ?? TooltipResult.success;\n }\n\n /** 默认逻辑 */\n const pattern = spec[activeType];\n if (!pattern) {\n return TooltipResult.failed;\n }\n\n // 计算 tooltip 位置\n const position = this._getActualTooltipPosition(\n actualTooltip,\n params,\n this._getTooltipBoxSize(actualTooltip, changePositionOnly)\n );\n actualTooltip.position = position;\n if (pattern.updatePosition) {\n actualTooltip.position = pattern.updatePosition(actualTooltip.position, data, params);\n }\n\n // 判断 tooltip 可见性\n let tooltipVisible = pattern?.visible !== false;\n if (\n !data ||\n event.type === 'pointerout' ||\n !actualTooltip.visible ||\n (!actualTooltip.title && !actualTooltip.content)\n ) {\n tooltipVisible = false;\n }\n\n this._updateTooltip(\n tooltipVisible,\n {\n ...params,\n changePositionOnly\n },\n actualTooltip\n );\n return TooltipResult.success;\n };\n\n hideTooltip(params: TooltipHandlerParams): TooltipResult {\n return this.changeTooltip(false, params);\n }\n\n release(): void {\n this._clearAllCache();\n const spec = this._component.getSpec() ?? {};\n /** 用户自定义逻辑 */\n if (spec.handler) {\n spec.handler.release?.();\n return;\n }\n /** 默认逻辑 */\n this._removeTooltip();\n\n this._isReleased = true;\n }\n\n protected _clearAllCache() {\n this._clearCacheOfContent();\n this._clearCacheOfPosition();\n }\n\n protected _clearCacheOfContent() {\n this._cacheViewSpec = undefined;\n this._cacheActualTooltip = undefined;\n }\n\n protected _clearCacheOfPosition() {\n this._isTooltipPaused = false;\n this._isPointerEscaped = false;\n clearTimeout(this._cachePointerTimer);\n this._cachePointerTimer = -1;\n this._cachePointerPosition = undefined;\n this._cacheTooltipPosition = undefined;\n this._cacheTooltipSize = undefined;\n }\n\n /* -----需要子类继承的方法开始----- */\n\n protected abstract _updateTooltip(visible: boolean, params: TooltipHandlerParams, domData?: IToolTipActual): void;\n protected abstract _removeTooltip(): void;\n\n /* -----需要子类继承的方法结束----- */\n\n protected _throttle(callback: any) {\n const tooltipSpec = this._component.getSpec();\n let wait: number;\n if (isNumber(tooltipSpec.throttleInterval)) {\n wait = tooltipSpec.throttleInterval;\n } else {\n if (tooltipSpec.renderMode !== 'html' || !tooltipSpec.transitionDuration) {\n wait = 10;\n } else {\n wait = 50;\n }\n }\n return throttle(callback, wait);\n }\n\n protected _getDefaultOption(): Options {\n const { offset } = this._component.getSpec();\n return {\n ...DEFAULT_OPTIONS,\n offsetX: offset?.x ?? DEFAULT_OPTIONS.offsetX,\n offsetY: offset?.y ?? DEFAULT_OPTIONS.offsetY\n };\n }\n\n /**\n * 计算实际的 tooltip 内容\n * @param pattern\n * @param data\n * @param event\n */\n protected _getActualTooltipContent = (\n pattern: ITooltipPattern,\n data: TooltipData,\n params: TooltipHandlerParams\n ): IToolTipActual => {\n // 可见性\n const patternVisible = getTooltipPatternValue(pattern.visible, data, params);\n\n // 数据\n let tooltipContent: TooltipActualTitleContent | null = null;\n tooltipContent = getShowContent(pattern, data, params);\n\n const actualTooltip: IToolTipActual = {\n ...tooltipContent,\n visible: isValid(tooltipContent) ? patternVisible !== false : false, // 最终展示数据为 null 则不展示\n activeType: pattern.activeType,\n data\n };\n\n return actualTooltip;\n };\n\n /**\n * 计算实际的 tooltip 位置\n */\n protected _getActualTooltipPosition = (\n actualTooltip: IToolTipActual,\n params: TooltipHandlerParams,\n tooltipBoxSize: IContainerSize | undefined\n ): ITooltipPositionActual => {\n const event = params.event as MouseEvent;\n\n const invalidPosition = {\n x: Infinity,\n y: Infinity\n };\n\n const { offsetX, offsetY } = this._option;\n const tooltipSpec = this._cacheViewSpec;\n if (!tooltipSpec) {\n this._cacheTooltipPosition = undefined;\n return invalidPosition;\n }\n\n const { activeType, data } = actualTooltip;\n const pattern = tooltipSpec[activeType];\n const position = getTooltipPatternValue(pattern.position, data, params);\n const positionMode = getTooltipPatternValue(pattern.positionMode, data, params);\n const tooltipParentElement = this._getParentElement(tooltipSpec);\n const { width: tooltipBoxWidth = 0, height: tooltipBoxHeight = 0 } = tooltipBoxSize ?? {};\n\n const isCanvas = tooltipSpec.renderMode === 'canvas';\n const canvasRect = params?.chart?.getCanvasRect();\n const canvasWidth = canvasRect?.width ?? DEFAULT_CHART_WIDTH;\n const canvasHeight = canvasRect?.height ?? DEFAULT_CHART_HEIGHT;\n let isFixedPosition = false;\n\n const containerSize = {\n width: 0,\n height: 0\n };\n let relativePosOffset = { x: 0, y: 0 };\n let tooltipParentElementRect: IPoint | DOMRect = { x: 0, y: 0 };\n let chartElementScale = 1;\n let tooltipParentElementScale = 1;\n\n if (isTrueBrowser(this._env) && !tooltipSpec.confine) {\n // 只有在 browser 模式下才可以获取到 window 对象\n containerSize.width = window.innerWidth;\n containerSize.height = window.innerHeight;\n\n if (!isCanvas) {\n tooltipParentElementRect = tooltipParentElement?.getBoundingClientRect() ?? invalidPosition;\n const chartElement = (this._compiler.getCanvas() ?? this._chartContainer) as HTMLElement;\n const chartElementRect = chartElement?.getBoundingClientRect();\n relativePosOffset = {\n x: chartElementRect.x - tooltipParentElementRect.x,\n y: chartElementRect.y - tooltipParentElementRect.y\n };\n chartElementScale = getScale(chartElement, chartElementRect);\n tooltipParentElementScale = getScale(tooltipParentElement, tooltipParentElementRect as DOMRect);\n }\n } else {\n containerSize.width = canvasWidth;\n containerSize.height = canvasHeight;\n }\n const tooltipSizeScale = tooltipParentElementScale / chartElementScale;\n\n /* 一、计算 left、top、right、bottom */\n let left: number | undefined;\n let top: number | undefined;\n let right: number | undefined;\n let bottom: number | undefined;\n if (isObject(position)) {\n const { left: posLeft, right: posRight, top: posTop, bottom: posBottom } = position as ITooltipPositionPattern;\n left = getActualTooltipPositionValue(posLeft, event);\n top = getActualTooltipPositionValue(posTop, event);\n right = getActualTooltipPositionValue(posRight, event);\n bottom = getActualTooltipPositionValue(posBottom, event);\n } else if (\n isValid(position) &&\n positionMode !== TooltipPositionMode.pointer &&\n actualTooltip.activeType === 'mark'\n ) {\n isFixedPosition = true;\n const element = params.item as IElement;\n const model = params.model as IModel;\n const bounds = element?.getBounds() as AABBBounds;\n const startPoint = (<ILayoutModel>(<unknown>model))?.getLayoutStartPoint();\n if (bounds && startPoint) {\n let { x1, y1, x2, y2 } = bounds;\n x1 += startPoint.x;\n x2 += startPoint.x;\n y1 += startPoint.y;\n y2 += startPoint.y;\n switch (getHorizontalPositionType(position)) {\n case 'left':\n left = x1 - tooltipBoxWidth * tooltipSizeScale - offsetX;\n break;\n case 'right':\n left = x2 + offsetX;\n break;\n case 'middle':\n left = (x1 + x2) / 2 - (tooltipBoxWidth * tooltipSizeScale) / 2;\n break;\n }\n switch (getVerticalPositionType(position)) {\n case 'top':\n top = y1 - tooltipBoxHeight * tooltipSizeScale - offsetY;\n break;\n case 'bottom':\n top = y2 + offsetY;\n break;\n case 'middle':\n top = (y1 + y2) / 2 - (tooltipBoxHeight * tooltipSizeScale) / 2;\n break;\n }\n }\n }\n\n /* 二、换算成 x 和 y */\n let x: number;\n let y: number;\n\n const { canvasX, canvasY } = event as any;\n if (isValidNumber(left)) {\n x = left;\n } else if (isValidNumber(right)) {\n x = canvasWidth - tooltipBoxWidth * tooltipSizeScale - right;\n } else {\n const x0 = canvasX;\n switch (getHorizontalPositionType(position as TooltipFixedPosition, 'right')) {\n case 'middle':\n x = x0 - (tooltipBoxWidth * tooltipSizeScale) / 2;\n break;\n case 'left':\n x = x0 - tooltipBoxWidth * tooltipSizeScale - offsetX;\n break;\n case 'right':\n x = x0 + offsetX;\n break;\n }\n }\n if (isValidNumber(top)) {\n y = top;\n } else if (isValidNumber(bottom)) {\n y = canvasHeight - tooltipBoxHeight * tooltipSizeScale - bottom;\n } else {\n const y0 = canvasY;\n switch (getVerticalPositionType(position as TooltipFixedPosition, 'bottom')) {\n case 'middle':\n y = y0 - (tooltipBoxHeight * tooltipSizeScale) / 2;\n break;\n case 'top':\n y = y0 - tooltipBoxHeight * tooltipSizeScale - offsetY;\n break;\n case 'bottom':\n y = y0 + offsetY;\n break;\n }\n }\n\n x *= chartElementScale;\n y *= chartElementScale;\n if (isTrueBrowser(this._env)) {\n x += relativePosOffset.x;\n y += relativePosOffset.y;\n }\n x /= tooltipParentElementScale;\n y /= tooltipParentElementScale;\n\n /* 三、确保tooltip在视区内 */\n const { width: containerWidth, height: containerHeight } = containerSize;\n\n const isLeftOut = () => x * tooltipParentElementScale + tooltipParentElementRect.x < 0;\n const isRightOut = () =>\n (x + tooltipBoxWidth) * tooltipParentElementScale + tooltipParentElementRect.x > containerWidth;\n const isTopOut = () => y * tooltipParentElementScale + tooltipParentElementRect.y < 0;\n const isBottomOut = () =>\n (y + tooltipBoxHeight) * tooltipParentElementScale + tooltipParentElementRect.y > containerHeight;\n\n const detectLeftFirst = () => {\n if (isLeftOut()) {\n // 位置不超出视区左界\n if (isFixedPosition) {\n x = -tooltipParentElementRect.x / tooltipParentElementScale;\n } else {\n if (getHorizontalPositionType(position as TooltipFixedPosition, 'right') === 'middle') {\n x += offsetX + tooltipBoxWidth / 2;\n } else {\n x += offsetX * 2 + tooltipBoxWidth;\n }\n }\n }\n };\n const detectLeftLast = () => {\n if (isLeftOut()) {\n // 位置不超出视区左界\n x = -tooltipParentElementRect.x / tooltipParentElementScale;\n }\n };\n const detectRightFirst = () => {\n if (isRightOut()) {\n // 位置不超出视区右界\n if (isFixedPosition) {\n x = (containerWidth - tooltipParentElementRect.x) / tooltipParentElementScale - tooltipBoxWidth;\n } else {\n if (getHorizontalPositionType(position as TooltipFixedPosition, 'right') === 'middle') {\n x -= offsetX + tooltipBoxWidth / 2;\n } else {\n x -= offsetX * 2 + tooltipBoxWidth;\n }\n }\n }\n };\n const detectRightLast = () => {\n if (isRightOut()) {\n // 位置不超出视区右界\n x = (containerWidth - tooltipParentElementRect.x) / tooltipParentElementScale - tooltipBoxWidth;\n }\n };\n const detectTopFirst = () => {\n if (isTopOut()) {\n // 位置不超出视区上界\n if (isFixedPosition) {\n y = -tooltipParentElementRect.y / tooltipParentElementScale;\n } else {\n if (getVerticalPositionType(position as TooltipFixedPosition, 'bottom') === 'middle') {\n y += offsetY + tooltipBoxHeight / 2;\n } else {\n y += offsetY * 2 + tooltipBoxHeight;\n }\n }\n }\n };\n const detectTopLast = () => {\n if (isTopOut()) {\n // 位置不超出视区上界\n y = 0 - tooltipParentElementRect.y / tooltipParentElementScale;\n }\n };\n const detectBottomFirst = () => {\n if (isBottomOut()) {\n // 位置不超出视区下界\n if (isFixedPosition) {\n y = (containerHeight - tooltipParentElementRect.y) / tooltipParentElementScale - tooltipBoxHeight;\n } else {\n if (getVerticalPositionType(position as TooltipFixedPosition, 'bottom') === 'middle') {\n y -= offsetY + tooltipBoxHeight / 2;\n } else {\n y -= offsetY * 2 + tooltipBoxHeight;\n }\n }\n }\n };\n const detectBottomLast = () => {\n if (isBottomOut()) {\n // 位置不超出视区下界\n y = (containerHeight - tooltipParentElementRect.y) / tooltipParentElementScale - tooltipBoxHeight;\n }\n };\n\n // 处理左右\n switch (getHorizontalPositionType(position as TooltipFixedPosition, 'right')) {\n case 'middle':\n if (isLeftOut()) {\n detectLeftFirst();\n detectRightLast();\n } else {\n detectRightFirst();\n detectLeftLast();\n }\n break;\n case 'left':\n detectLeftFirst();\n detectRightLast();\n break;\n case 'right':\n detectRightFirst();\n detectLeftLast();\n break;\n }\n // 处理上下\n switch (getVerticalPositionType(position as TooltipFixedPosition, 'bottom')) {\n case 'middle':\n if (isTopOut()) {\n detectTopFirst();\n detectBottomLast();\n } else {\n detectBottomFirst();\n detectTopLast();\n }\n break;\n case 'top':\n detectTopFirst();\n detectBottomLast();\n break;\n case 'bottom':\n detectBottomFirst();\n detectTopLast();\n break;\n }\n\n const result = { x, y };\n this._cacheTooltipPosition = result;\n this._cacheTooltipSize = { width: tooltipBoxWidth, height: tooltipBoxHeight };\n return result;\n };\n\n // 计算 tooltip 内容区域的宽高,并缓存结果\n protected _getTooltipBoxSize(actualTooltip: IToolTipActual, changePositionOnly: boolean): IContainerSize | undefined {\n if (!changePositionOnly || isNil(this._attributes)) {\n const chartTheme = this._chartOption?.getTheme() ?? {};\n this._attributes = getTooltipAttributes(actualTooltip, this._component.getSpec(), chartTheme);\n }\n return {\n width: this._attributes?.panel?.width,\n height: this._attributes?.panel?.height\n };\n }\n\n protected _getPointerPositionRelativeToTooltipParent(params: TooltipHandlerParams) {\n let { canvasX: x, canvasY: y } = params.event;\n\n const invalidPosition = {\n x: Infinity,\n y: Infinity\n };\n\n const tooltipSpec = this._cacheViewSpec;\n const isCanvas = tooltipSpec.renderMode === 'canvas';\n const tooltipParentElement = this._getParentElement(tooltipSpec);\n\n let relativePosOffset = { x: 0, y: 0 };\n let tooltipParentElementRect: IPoint | DOMRect = { x: 0, y: 0 };\n let chartElementScale = 1;\n let tooltipParentElementScale = 1;\n\n if (isTrueBrowser(this._env) && !tooltipSpec.confine) {\n if (!isCanvas) {\n tooltipParentElementRect = tooltipParentElement?.getBoundingClientRect() ?? invalidPosition;\n const chartElement = (this._compiler.getCanvas() ?? this._chartContainer) as HTMLElement;\n const chartElementRect = chartElement?.getBoundingClientRect();\n relativePosOffset = {\n x: chartElementRect.x - tooltipParentElementRect.x,\n y: chartElementRect.y - tooltipParentElementRect.y\n };\n chartElementScale = getScale(chartElement, chartElementRect);\n tooltipParentElementScale = getScale(tooltipParentElement, tooltipParentElementRect as DOMRect);\n }\n }\n\n x *= chartElementScale;\n y *= chartElementScale;\n if (isTrueBrowser(this._env)) {\n x += relativePosOffset.x;\n y += relativePosOffset.y;\n }\n x /= tooltipParentElementScale;\n y /= tooltipParentElementScale;\n return { x, y };\n }\n\n protected _isPointerMovingToTooltip(params: TooltipHandlerParams) {\n if (!this._cacheTooltipPosition || !this._cacheTooltipSize || !this._cachePointerPosition) {\n return false;\n }\n const { width: tooltipWidth, height: tooltipHeight } = this._cacheTooltipSize;\n const { x: tooltipX = 0, y: tooltipY } = this._cacheTooltipPosition;\n\n const pos = this._getPointerPositionRelativeToTooltipParent(params);\n\n if (\n isPointInRect(pos, {\n x: tooltipX,\n y: tooltipY,\n width: tooltipWidth,\n height: tooltipHeight\n })\n ) {\n return true;\n }\n\n // 确定 tooltip 四端点坐标\n const a = { x: tooltipX, y: tooltipY };\n const b = { x: a.x + tooltipWidth, y: a.y };\n const c = { x: a.x, y: a.y + tooltipHeight };\n const d = { x: b.x, y: c.y };\n const oldPos = this._cachePointerPosition;\n return (\n isPointInTriangle(pos, oldPos, a, b) ||\n isPointInTriangle(pos, oldPos, c, d) ||\n isPointInTriangle(pos, oldPos, a, d) ||\n isPointInTriangle(pos, oldPos, b, c)\n );\n }\n\n protected _getParentElement(spec: ITooltipSpec): HTMLElement {\n return spec.parentElement as any;\n }\n\n getTooltipContainer() {\n return this._container;\n }\n\n protected _initFromSpec() {\n this._option = this._getDefaultOption();\n // 为方法加防抖\n this.changeTooltip = this._throttle(this._changeTooltip) as any;\n this.changeTooltipPosition = this._throttle(this._changeTooltipPosition) as any;\n }\n\n reInit() {\n this._initFromSpec();\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/base.ts"],"names":[],"mappings":";;;AAAA,iDAAmF;AAGnF,2CAA8C;AAG9C,gEAAwE;AAExE,2CAAkD;AAalD,2CAAkE;AAClE,+CAAqH;AACrH,6CAAiD;AACjD,+CAAyD;AAKzD,gDAAoD;AAIpD,6CAS0B;AAK1B,iDAAyD;AAqBzD,MAAsB,kBAAkB;IAatC,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAGD,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IA0BD,YAAY,SAAiB,EAAE,SAAkB;QA1CvC,aAAQ,GAAG,IAAI,CAAC;QAQhB,QAAG,GAAG,EAAE,CAAC;QAWT,gBAAW,GAA8B,IAAI,CAAC;QAkB9C,gBAAW,GAAY,KAAK,CAAC;QAevC,gBAAW,GAAG,CAAC,UAA6B,EAAE,IAAiB,EAAE,MAA4B,EAAE,EAAE;;YAC/F,IAAI,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,UAAU,MAAK,UAAU,EAAE;gBACrF,kBAAkB,GAAG,KAAK,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,EAAE,CAAC;aAC7B;YAED,IAAI,kBAAkB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBACzE,OAAO,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;aACrE;YACD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAChF,CAAC,CAAC;QAMQ,mBAAc,GAAsB,CAC5C,OAAgB,EAChB,MAA4B,EAC5B,kBAA4B,EAC5B,UAA8B,EAC9B,IAAkB,EAClB,EAAE;;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAkB,CAAC;YAC9D,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE;gBACpC,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAGD,IAAI,CAAC,OAAO,EAAE;gBACZ,IAAI,CAAC,cAAc,EAAE,CAAC;gBAGtB,IAAI,WAAW,CAAC,OAAO,EAAE;oBACvB,OAAO,MAAA,MAAA,MAAA,WAAW,CAAC,OAAO,EAAC,WAAW,mDAAG,MAAM,CAAC,mCAAI,sBAAa,CAAC,OAAO,CAAC;iBAC3E;gBAED,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACnC,OAAO,sBAAa,CAAC,OAAO,CAAC;aAC9B;YAED,IAAI,IAAA,cAAK,EAAC,UAAU,CAAC,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,EAAE;gBACpC,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAGD,IAAI,IAA8B,CAAC;YACnC,IAAI,kBAAkB,IAAI,IAAI,CAAC,cAAc,EAAE;gBAC7C,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;aAC5B;iBAAM;gBACL,IAAI,GAAG,IAAA,gCAAqB,EAC1B,UAAW,EACX,WAAW,EACV,MAA0B,CAAC,KAAgB,EAC3C,MAA+B,CAAC,aAAa,CAC/C,CAAC;gBACF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;aAC5B;YAED,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;gBAC1B,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAGD,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,WAAW,mDAAG,UAAW,EAAE,IAAK,EAAE,MAAM,CAAC,mCAAI,sBAAa,CAAC,OAAO,CAAC;aACxF;YAGD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAW,CAAoB,CAAC;YACrD,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAGD,IAAI,aAAyC,CAAC;YAC9C,IAAI,kBAAkB,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAClD,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;aAC1C;iBAAM;gBACL,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,IAAK,EAAE,MAAM,CAAC,CAAC;gBACtE,aAAa,CAAC,KAAK,GAAG,MAAA,MAAA,OAAO,CAAC,WAAW,wDAAG,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,mCAAI,aAAa,CAAC,KAAK,CAAC;gBACtG,aAAa,CAAC,OAAO,GAAG,MAAA,MAAA,OAAO,CAAC,aAAa,wDAAG,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,mCAAI,aAAa,CAAC,OAAO,CAAC;aAC/G;YAGD,IAAI,IAAA,cAAK,EAAC,MAAA,aAAa,CAAC,KAAK,0CAAE,GAAG,CAAC,IAAI,IAAA,cAAK,EAAC,MAAA,aAAa,CAAC,KAAK,0CAAE,KAAK,CAAC,IAAI,CAAC,CAAA,MAAA,aAAa,CAAC,OAAO,0CAAE,MAAM,CAAA,EAAE;gBAC1G,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAED,IAAI,CAAC,mBAAmB,GAAG,aAAa,CAAC;YACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,kBAAkB,EAAE,IAAK,EAAE,MAAM,CAAC,CAAC;QAC1E,CAAC,CAAC;QAMQ,2BAAsB,GAA8B,CAC5D,kBAA2B,EAC3B,IAAiB,EACjB,MAA4B,EAC5B,EAAE;;YACF,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAmB,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;YACjC,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC/C,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;gBAC3B,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAED,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE;oBACrE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;wBAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;wBAC7B,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;4BACxC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;wBAChC,CAAC,EAAE,GAAG,CAAsB,CAAC;qBAC9B;oBACD,OAAO,sBAAa,CAAC,OAAO,CAAC;iBAC9B;gBACD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBAC/B,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACtC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,0CAA0C,CAAC,MAAM,CAAC,CAAC;aACtF;YAED,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;YAG5C,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,WAAW,mDAAG,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,mCAAI,sBAAa,CAAC,OAAO,CAAC;aACtF;YAGD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,sBAAa,CAAC,MAAM,CAAC;aAC7B;YAGD,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAC7C,aAAa,EACb,MAAM,EACN,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAC3D,CAAC;YACF,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAClC,IAAI,OAAO,CAAC,cAAc,EAAE;gBAC1B,aAAa,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;aACvF;YAGD,IAAI,cAAc,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,MAAK,KAAK,CAAC;YAChD,IACE,CAAC,IAAI;gBACL,KAAK,CAAC,IAAI,KAAK,YAAY;gBAC3B,CAAC,aAAa,CAAC,OAAO;gBACtB,CAAC,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAChD;gBACA,cAAc,GAAG,KAAK,CAAC;aACxB;YAED,IAAI,CAAC,cAAc,CACjB,cAAc,kCAET,MAAM,KACT,kBAAkB,KAEpB,aAAa,CACd,CAAC;YACF,OAAO,sBAAa,CAAC,OAAO,CAAC;QAC/B,CAAC,CAAC;QA6EQ,6BAAwB,GAAG,CACnC,OAAwB,EACxB,IAAiB,EACjB,MAA4B,EACZ,EAAE;YAElB,MAAM,cAAc,GAAG,IAAA,+BAAsB,EAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAG7E,IAAI,cAAc,GAAqC,IAAI,CAAC;YAC5D,cAAc,GAAG,IAAA,wBAAc,EAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAEvD,MAAM,aAAa,mCACd,cAAc,KACjB,OAAO,EAAE,IAAA,gBAAO,EAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,EACnE,UAAU,EAAE,OAAO,CAAC,UAAU,EAC9B,IAAI,GACL,CAAC;YAEF,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC;QAKQ,8BAAyB,GAAG,CACpC,aAA6B,EAC7B,MAA4B,EAC5B,cAA0C,EAClB,EAAE;;YAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAmB,CAAC;YAEzC,MAAM,eAAe,GAAG;gBACtB,CAAC,EAAE,QAAQ;gBACX,CAAC,EAAE,QAAQ;aACZ,CAAC;YAEF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;YACxC,IAAI,CAAC,WAAW,EAAE;gBAChB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;gBACvC,OAAO,eAAe,CAAC;aACxB;YAED,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC;YAC3C,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAA,+BAAsB,EAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACxE,MAAM,YAAY,GAAG,IAAA,+BAAsB,EAAC,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAChF,MAAM,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACjE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,CAAC,EAAE,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,EAAE,CAAC;YAE1F,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,KAAK,QAAQ,CAAC;YACrD,MAAM,UAAU,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,aAAa,EAAE,CAAC;YAClD,MAAM,WAAW,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,mCAAI,0BAAmB,CAAC;YAC7D,MAAM,YAAY,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,mCAAI,2BAAoB,CAAC;YAChE,IAAI,eAAe,GAAG,KAAK,CAAC;YAE5B,MAAM,aAAa,GAAG;gBACpB,KAAK,EAAE,CAAC;gBACR,MAAM,EAAE,CAAC;aACV,CAAC;YACF,IAAI,iBAAiB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YACvC,IAAI,wBAAwB,GAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YAChE,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,IAAI,yBAAyB,GAAG,CAAC,CAAC;YAElC,IAAI,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;gBAEpD,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;gBACxC,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;gBAE1C,IAAI,CAAC,QAAQ,EAAE;oBACb,wBAAwB,GAAG,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,qBAAqB,EAAE,mCAAI,eAAe,CAAC;oBAC5F,MAAM,YAAY,GAAG,CAAC,MAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,mCAAI,IAAI,CAAC,eAAe,CAAgB,CAAC;oBACzF,MAAM,gBAAgB,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,qBAAqB,EAAE,CAAC;oBAC/D,iBAAiB,GAAG;wBAClB,CAAC,EAAE,gBAAgB,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;wBAClD,CAAC,EAAE,gBAAgB,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;qBACnD,CAAC;oBACF,iBAAiB,GAAG,IAAA,iBAAQ,EAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;oBAC7D,yBAAyB,GAAG,IAAA,iBAAQ,EAAC,oBAAoB,EAAE,wBAAmC,CAAC,CAAC;iBACjG;aACF;iBAAM;gBACL,aAAa,CAAC,KAAK,GAAG,WAAW,CAAC;gBAClC,aAAa,CAAC,MAAM,GAAG,YAAY,CAAC;aACrC;YACD,MAAM,gBAAgB,GAAG,yBAAyB,GAAG,iBAAiB,CAAC;YAGvE,IAAI,IAAwB,CAAC;YAC7B,IAAI,GAAuB,CAAC;YAC5B,IAAI,KAAyB,CAAC;YAC9B,IAAI,MAA0B,CAAC;YAC/B,IAAI,IAAA,iBAAQ,EAAC,QAAQ,CAAC,EAAE;gBACtB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,QAAmC,CAAC;gBAC/G,IAAI,GAAG,IAAA,wCAA6B,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACrD,GAAG,GAAG,IAAA,wCAA6B,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnD,KAAK,GAAG,IAAA,wCAA6B,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACvD,MAAM,GAAG,IAAA,wCAA6B,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;aAC1D;iBAAM,IACL,IAAA,gBAAO,EAAC,QAAQ,CAAC;gBACjB,YAAY,KAAK,8BAAmB,CAAC,OAAO;gBAC5C,aAAa,CAAC,UAAU,KAAK,MAAM,EACnC;gBACA,eAAe,GAAG,IAAI,CAAC;gBACvB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAgB,CAAC;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAe,CAAC;gBACrC,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAgB,CAAC;gBAClD,MAAM,UAAU,GAA4B,KAAO,aAAP,KAAK,uBAAL,KAAK,CAAI,mBAAmB,EAAE,CAAC;gBAC3E,IAAI,MAAM,IAAI,UAAU,EAAE;oBACxB,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC;oBAChC,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;oBACnB,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;oBACnB,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;oBACnB,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;oBACnB,QAAQ,IAAA,oCAAyB,EAAC,QAAQ,CAAC,EAAE;wBAC3C,KAAK,MAAM;4BACT,IAAI,GAAG,EAAE,GAAG,eAAe,GAAG,gBAAgB,GAAG,OAAO,CAAC;4BACzD,MAAM;wBACR,KAAK,OAAO;4BACV,IAAI,GAAG,EAAE,GAAG,OAAO,CAAC;4BACpB,MAAM;wBACR,KAAK,QAAQ;4BACX,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;4BAChE,MAAM;qBACT;oBACD,QAAQ,IAAA,kCAAuB,EAAC,QAAQ,CAAC,EAAE;wBACzC,KAAK,KAAK;4BACR,GAAG,GAAG,EAAE,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,OAAO,CAAC;4BACzD,MAAM;wBACR,KAAK,QAAQ;4BACX,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;4BACnB,MAAM;wBACR,KAAK,QAAQ;4BACX,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;4BAChE,MAAM;qBACT;iBACF;aACF;YAGD,IAAI,CAAS,CAAC;YACd,IAAI,CAAS,CAAC;YAEd,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAY,CAAC;YAC1C,IAAI,IAAA,sBAAa,EAAC,IAAI,CAAC,EAAE;gBACvB,CAAC,GAAG,IAAI,CAAC;aACV;iBAAM,IAAI,IAAA,sBAAa,EAAC,KAAK,CAAC,EAAE;gBAC/B,CAAC,GAAG,WAAW,GAAG,eAAe,GAAG,gBAAgB,GAAG,KAAK,CAAC;aAC9D;iBAAM;gBACL,MAAM,EAAE,GAAG,OAAO,CAAC;gBACnB,QAAQ,IAAA,oCAAyB,EAAC,QAAgC,EAAE,OAAO,CAAC,EAAE;oBAC5E,KAAK,QAAQ;wBACX,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;wBAClD,MAAM;oBACR,KAAK,MAAM;wBACT,CAAC,GAAG,EAAE,GAAG,eAAe,GAAG,gBAAgB,GAAG,OAAO,CAAC;wBACtD,MAAM;oBACR,KAAK,OAAO;wBACV,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;wBACjB,MAAM;iBACT;aACF;YACD,IAAI,IAAA,sBAAa,EAAC,GAAG,CAAC,EAAE;gBACtB,CAAC,GAAG,GAAG,CAAC;aACT;iBAAM,IAAI,IAAA,sBAAa,EAAC,MAAM,CAAC,EAAE;gBAChC,CAAC,GAAG,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,MAAM,CAAC;aACjE;iBAAM;gBACL,MAAM,EAAE,GAAG,OAAO,CAAC;gBACnB,QAAQ,IAAA,kCAAuB,EAAC,QAAgC,EAAE,QAAQ,CAAC,EAAE;oBAC3E,KAAK,QAAQ;wBACX,CAAC,GAAG,EAAE,GAAG,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;wBACnD,MAAM;oBACR,KAAK,KAAK;wBACR,CAAC,GAAG,EAAE,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,OAAO,CAAC;wBACvD,MAAM;oBACR,KAAK,QAAQ;wBACX,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;wBACjB,MAAM;iBACT;aACF;YAED,CAAC,IAAI,iBAAiB,CAAC;YACvB,CAAC,IAAI,iBAAiB,CAAC;YACvB,IAAI,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5B,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;gBACzB,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;aAC1B;YACD,CAAC,IAAI,yBAAyB,CAAC;YAC/B,CAAC,IAAI,yBAAyB,CAAC;YAG/B,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,aAAa,CAAC;YAEzE,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,yBAAyB,GAAG,wBAAwB,CAAC,CAAC,GAAG,CAAC,CAAC;YACvF,MAAM,UAAU,GAAG,GAAG,EAAE,CACtB,CAAC,CAAC,GAAG,eAAe,CAAC,GAAG,yBAAyB,GAAG,wBAAwB,CAAC,CAAC,GAAG,cAAc,CAAC;YAClG,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,yBAAyB,GAAG,wBAAwB,CAAC,CAAC,GAAG,CAAC,CAAC;YACtF,MAAM,WAAW,GAAG,GAAG,EAAE,CACvB,CAAC,CAAC,GAAG,gBAAgB,CAAC,GAAG,yBAAyB,GAAG,wBAAwB,CAAC,CAAC,GAAG,eAAe,CAAC;YAEpG,MAAM,eAAe,GAAG,GAAG,EAAE;gBAC3B,IAAI,SAAS,EAAE,EAAE;oBAEf,IAAI,eAAe,EAAE;wBACnB,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,GAAG,yBAAyB,CAAC;qBAC7D;yBAAM;wBACL,IAAI,IAAA,oCAAyB,EAAC,QAAgC,EAAE,OAAO,CAAC,KAAK,QAAQ,EAAE;4BACrF,CAAC,IAAI,OAAO,GAAG,eAAe,GAAG,CAAC,CAAC;yBACpC;6BAAM;4BACL,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,eAAe,CAAC;yBACpC;qBACF;iBACF;YACH,CAAC,CAAC;YACF,MAAM,cAAc,GAAG,GAAG,EAAE;gBAC1B,IAAI,SAAS,EAAE,EAAE;oBAEf,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,GAAG,yBAAyB,CAAC;iBAC7D;YACH,CAAC,CAAC;YACF,MAAM,gBAAgB,GAAG,GAAG,EAAE;gBAC5B,IAAI,UAAU,EAAE,EAAE;oBAEhB,IAAI,eAAe,EAAE;wBACnB,CAAC,GAAG,CAAC,cAAc,GAAG,wBAAwB,CAAC,CAAC,CAAC,GAAG,yBAAyB,GAAG,eAAe,CAAC;qBACjG;yBAAM;wBACL,IAAI,IAAA,oCAAyB,EAAC,QAAgC,EAAE,OAAO,CAAC,KAAK,QAAQ,EAAE;4BACrF,CAAC,IAAI,OAAO,GAAG,eAAe,GAAG,CAAC,CAAC;yBACpC;6BAAM;4BACL,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,eAAe,CAAC;yBACpC;qBACF;iBACF;YACH,CAAC,CAAC;YACF,MAAM,eAAe,GAAG,GAAG,EAAE;gBAC3B,IAAI,UAAU,EAAE,EAAE;oBAEhB,CAAC,GAAG,CAAC,cAAc,GAAG,wBAAwB,CAAC,CAAC,CAAC,GAAG,yBAAyB,GAAG,eAAe,CAAC;iBACjG;YACH,CAAC,CAAC;YACF,MAAM,cAAc,GAAG,GAAG,EAAE;gBAC1B,IAAI,QAAQ,EAAE,EAAE;oBAEd,IAAI,eAAe,EAAE;wBACnB,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,GAAG,yBAAyB,CAAC;qBAC7D;yBAAM;wBACL,IAAI,IAAA,kCAAuB,EAAC,QAAgC,EAAE,QAAQ,CAAC,KAAK,QAAQ,EAAE;4BACpF,CAAC,IAAI,OAAO,GAAG,gBAAgB,GAAG,CAAC,CAAC;yBACrC;6BAAM;4BACL,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,gBAAgB,CAAC;yBACrC;qBACF;iBACF;YACH,CAAC,CAAC;YACF,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,IAAI,QAAQ,EAAE,EAAE;oBAEd,CAAC,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC,GAAG,yBAAyB,CAAC;iBAChE;YACH,CAAC,CAAC;YACF,MAAM,iBAAiB,GAAG,GAAG,EAAE;gBAC7B,IAAI,WAAW,EAAE,EAAE;oBAEjB,IAAI,eAAe,EAAE;wBACnB,CAAC,GAAG,CAAC,eAAe,GAAG,wBAAwB,CAAC,CAAC,CAAC,GAAG,yBAAyB,GAAG,gBAAgB,CAAC;qBACnG;yBAAM;wBACL,IAAI,IAAA,kCAAuB,EAAC,QAAgC,EAAE,QAAQ,CAAC,KAAK,QAAQ,EAAE;4BACpF,CAAC,IAAI,OAAO,GAAG,gBAAgB,GAAG,CAAC,CAAC;yBACrC;6BAAM;4BACL,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,gBAAgB,CAAC;yBACrC;qBACF;iBACF;YACH,CAAC,CAAC;YACF,MAAM,gBAAgB,GAAG,GAAG,EAAE;gBAC5B,IAAI,WAAW,EAAE,EAAE;oBAEjB,CAAC,GAAG,CAAC,eAAe,GAAG,wBAAwB,CAAC,CAAC,CAAC,GAAG,yBAAyB,GAAG,gBAAgB,CAAC;iBACnG;YACH,CAAC,CAAC;YAGF,QAAQ,IAAA,oCAAyB,EAAC,QAAgC,EAAE,OAAO,CAAC,EAAE;gBAC5E,KAAK,QAAQ;oBACX,IAAI,SAAS,EAAE,EAAE;wBACf,eAAe,EAAE,CAAC;wBAClB,eAAe,EAAE,CAAC;qBACnB;yBAAM;wBACL,gBAAgB,EAAE,CAAC;wBACnB,cAAc,EAAE,CAAC;qBAClB;oBACD,MAAM;gBACR,KAAK,MAAM;oBACT,eAAe,EAAE,CAAC;oBAClB,eAAe,EAAE,CAAC;oBAClB,MAAM;gBACR,KAAK,OAAO;oBACV,gBAAgB,EAAE,CAAC;oBACnB,cAAc,EAAE,CAAC;oBACjB,MAAM;aACT;YAED,QAAQ,IAAA,kCAAuB,EAAC,QAAgC,EAAE,QAAQ,CAAC,EAAE;gBAC3E,KAAK,QAAQ;oBACX,IAAI,QAAQ,EAAE,EAAE;wBACd,cAAc,EAAE,CAAC;wBACjB,gBAAgB,EAAE,CAAC;qBACpB;yBAAM;wBACL,iBAAiB,EAAE,CAAC;wBACpB,aAAa,EAAE,CAAC;qBACjB;oBACD,MAAM;gBACR,KAAK,KAAK;oBACR,cAAc,EAAE,CAAC;oBACjB,gBAAgB,EAAE,CAAC;oBACnB,MAAM;gBACR,KAAK,QAAQ;oBACX,iBAAiB,EAAE,CAAC;oBACpB,aAAa,EAAE,CAAC;oBAChB,MAAM;aACT;YAED,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;YAC9E,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QA3kBA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,SAAS,EAAS,CAAC;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACvE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACrB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAkLD,WAAW,CAAC,MAA4B;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO;;QACL,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,mCAAI,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,OAAO,kDAAI,CAAC;YACzB,OAAO;SACR;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAES,cAAc;QACtB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAES,oBAAoB;QAC5B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;IACvC,CAAC;IAES,qBAAqB;QAC7B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACrC,CAAC;IASS,SAAS,CAAC,QAAa;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC9C,IAAI,IAAY,CAAC;QACjB,IAAI,IAAA,iBAAQ,EAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE;YAC1C,IAAI,GAAG,WAAW,CAAC,gBAAgB,CAAC;SACrC;aAAM;YACL,IAAI,WAAW,CAAC,UAAU,KAAK,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;gBACxE,IAAI,GAAG,EAAE,CAAC;aACX;iBAAM;gBACL,IAAI,GAAG,EAAE,CAAC;aACX;SACF;QACD,OAAO,IAAA,iBAAQ,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAES,iBAAiB;;QACzB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC7C,uCACK,2BAAe,KAClB,OAAO,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,CAAC,mCAAI,2BAAe,CAAC,OAAO,EAC7C,OAAO,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,CAAC,mCAAI,2BAAe,CAAC,OAAO,IAC7C;IACJ,CAAC;IAkVS,kBAAkB,CAAC,aAA6B,EAAE,kBAA2B;;QACrF,IAAI,CAAC,kBAAkB,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAClD,MAAM,UAAU,GAAG,MAAA,MAAA,IAAI,CAAC,YAAY,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC;YACvD,IAAI,CAAC,WAAW,GAAG,IAAA,gCAAoB,EAAC,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;SAC/F;QACD,OAAO;YACL,KAAK,EAAE,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,0CAAE,KAAK;YACrC,MAAM,EAAE,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,0CAAE,MAAM;SACxC,CAAC;IACJ,CAAC;IAES,0CAA0C,CAAC,MAA4B;;QAC/E,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;QAE9C,MAAM,eAAe,GAAG;YACtB,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,QAAQ;SACZ,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;QACxC,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,KAAK,QAAQ,CAAC;QACrD,MAAM,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAEjE,IAAI,iBAAiB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACvC,IAAI,wBAAwB,GAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAChE,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,IAAI,yBAAyB,GAAG,CAAC,CAAC;QAElC,IAAI,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YACpD,IAAI,CAAC,QAAQ,EAAE;gBACb,wBAAwB,GAAG,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,qBAAqB,EAAE,mCAAI,eAAe,CAAC;gBAC5F,MAAM,YAAY,GAAG,CAAC,MAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,mCAAI,IAAI,CAAC,eAAe,CAAgB,CAAC;gBACzF,MAAM,gBAAgB,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,qBAAqB,EAAE,CAAC;gBAC/D,iBAAiB,GAAG;oBAClB,CAAC,EAAE,gBAAgB,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;oBAClD,CAAC,EAAE,gBAAgB,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;iBACnD,CAAC;gBACF,iBAAiB,GAAG,IAAA,iBAAQ,EAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;gBAC7D,yBAAyB,GAAG,IAAA,iBAAQ,EAAC,oBAAoB,EAAE,wBAAmC,CAAC,CAAC;aACjG;SACF;QAED,CAAC,IAAI,iBAAiB,CAAC;QACvB,CAAC,IAAI,iBAAiB,CAAC;QACvB,IAAI,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC5B,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;YACzB,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;SAC1B;QACD,CAAC,IAAI,yBAAyB,CAAC;QAC/B,CAAC,IAAI,yBAAyB,CAAC;QAC/B,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAClB,CAAC;IAES,yBAAyB,CAAC,MAA4B;QAC9D,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACzF,OAAO,KAAK,CAAC;SACd;QACD,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC9E,MAAM,EAAE,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAEpE,MAAM,GAAG,GAAG,IAAI,CAAC,0CAA0C,CAAC,MAAM,CAAC,CAAC;QAEpE,IACE,IAAA,oBAAW,EACT,GAAG,EACH;YACE,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,QAAQ,GAAG,YAAY;YAC3B,EAAE,EAAE,QAAQ,GAAG,aAAa;SAC7B,EACD,KAAK,CACN,EACD;YACA,OAAO,IAAI,CAAC;SACb;QAGD,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,EAAE,CAAC;QAC7C,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAE1C,OAAO,CACL,IAAA,4BAAmB,EAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjD,IAAA,4BAAmB,EAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjD,IAAA,4BAAmB,EAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjD,IAAA,4BAAmB,EAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAClD,CAAC;IACJ,CAAC;IAES,iBAAiB,CAAC,IAAkB;QAC5C,OAAO,IAAI,CAAC,aAAoB,CAAC;IACnC,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAES,aAAa;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAExC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAQ,CAAC;QAChE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,sBAAsB,CAAQ,CAAC;IAClF,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;CACF;AA3uBD,gDA2uBC","file":"base.js","sourcesContent":["import { DEFAULT_CHART_WIDTH, DEFAULT_CHART_HEIGHT } from '../../../constant/base';\nimport type { Options } from './constants';\n// eslint-disable-next-line no-duplicate-imports\nimport { DEFAULT_OPTIONS } from './constants';\nimport type { Maybe, IPoint, ILayoutPoint } from '../../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport { TooltipPositionMode } from '../../../typings/tooltip/position';\n// eslint-disable-next-line no-duplicate-imports\nimport { isTrueBrowser } from '../../../util/env';\nimport type {\n TooltipData,\n IToolTipActual,\n TooltipActiveType,\n ITooltipHandler,\n ITooltipPattern,\n ITooltipPositionActual,\n ITooltipPositionPattern\n} from '../../../typings/tooltip';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TooltipFixedPosition } from '../../../typings/tooltip';\nimport type { BaseEventParams } from '../../../event/interface';\nimport { getTooltipPatternValue, getScale } from './utils/common';\nimport { getActualTooltipPositionValue, getHorizontalPositionType, getVerticalPositionType } from './utils/position';\nimport { getShowContent } from './utils/compose';\nimport { getTooltipSpecForShow } from './utils/get-spec';\nimport type { Tooltip, TooltipActualTitleContent } from '../tooltip';\nimport type { ISeries } from '../../../series/interface';\nimport type { ITooltipSpec, TooltipHandlerParams } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { TooltipResult } from '../interface/common';\nimport type { IGroup } from '@visactor/vrender-core';\nimport type { AABBBounds } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport {\n isNumber,\n isObject,\n isValidNumber,\n isValid,\n throttle,\n isNil,\n polygonContainPoint,\n pointInRect\n} from '@visactor/vutils';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport type { ILayoutModel, IModel } from '../../../model/interface';\nimport type { Compiler } from '../../../compile/compiler';\nimport type { IContainerSize, TooltipAttributes } from '@visactor/vrender-components';\nimport { getTooltipAttributes } from './utils/attribute';\nimport type { DimensionEventParams } from '../../../event/events/dimension/interface';\nimport type { IChartOption } from '../../../chart/interface';\n\ntype ChangeTooltipFunc = (\n visible: boolean,\n params: TooltipHandlerParams,\n changePositionOnly?: boolean,\n activeType?: TooltipActiveType,\n data?: TooltipData\n) => TooltipResult;\n\ntype ChangeTooltipPositionFunc = (\n changePositionOnly: boolean,\n data: TooltipData,\n params: TooltipHandlerParams\n) => TooltipResult;\n\n/**\n * The tooltip handler class.\n */\nexport abstract class BaseTooltipHandler implements ITooltipHandler {\n readonly type: string;\n\n /** 是否可见 */\n protected _visible = true;\n\n // protected _style: ITooltipStyle = {};\n\n protected _option: Options;\n\n protected _chartOption: IChartOption;\n\n protected _id = '';\n public get id() {\n return this._id;\n }\n\n protected _env;\n public get env() {\n return this._env;\n }\n\n protected _component: Tooltip;\n protected _attributes?: TooltipAttributes | null = null;\n\n protected _chartContainer: Maybe<HTMLElement>;\n protected _compiler: Compiler;\n\n protected _cacheViewSpec: ITooltipSpec | undefined;\n protected _cacheActualTooltip: IToolTipActual | undefined;\n\n protected _isTooltipPaused: boolean;\n protected _isPointerEscaped: boolean;\n protected _cachePointerTimer: number;\n protected _cachePointerPosition: ILayoutPoint;\n protected _cacheTooltipPosition: ILayoutPoint;\n protected _cacheTooltipSize: IContainerSize;\n\n // tooltip 容器\n protected _container!: Maybe<IGroup | HTMLElement>;\n\n protected _isReleased: boolean = false;\n\n /**\n * Create the tooltip handler.\n */\n constructor(tooltipId: string, component: Tooltip) {\n this._component = component;\n this._chartOption = component.getOption() as any;\n this._env = this._chartOption.mode;\n this._chartContainer = this._chartOption.globalInstance.getContainer();\n this._compiler = component.getCompiler();\n this._id = tooltipId; // 可能有多个 tooltip\n this._initFromSpec();\n }\n\n showTooltip = (activeType: TooltipActiveType, data: TooltipData, params: TooltipHandlerParams) => {\n let changePositionOnly = !!params.changePositionOnly;\n if (!params.changePositionOnly || this._cacheActualTooltip?.activeType !== activeType) {\n changePositionOnly = false;\n this._clearCacheOfContent();\n }\n\n if (changePositionOnly && this._cacheViewSpec && this._cacheActualTooltip) {\n return this.changeTooltipPosition(changePositionOnly, data, params);\n }\n return this.changeTooltip(true, params, changePositionOnly, activeType, data);\n };\n\n /** 改变 tooltip 内容和位置(带 throttle 版本),返回是否遇到异常 */\n protected changeTooltip: ChangeTooltipFunc;\n\n /** 改变 tooltip 内容和位置(不带 throttle 版本),返回是否遇到异常 */\n protected _changeTooltip: ChangeTooltipFunc = (\n visible: boolean,\n params: TooltipHandlerParams,\n changePositionOnly?: boolean,\n activeType?: TooltipActiveType,\n data?: TooltipData\n ) => {\n const tooltipSpec = this._component.getSpec() as ITooltipSpec;\n if (this._isReleased || !tooltipSpec) {\n return TooltipResult.failed;\n }\n\n /** 关闭 tooltip */\n if (!visible) {\n this._clearAllCache();\n\n /** 用户自定义逻辑 */\n if (tooltipSpec.handler) {\n return tooltipSpec.handler.hideTooltip?.(params) ?? TooltipResult.success;\n }\n /** 默认逻辑 */\n this._updateTooltip(false, params);\n return TooltipResult.success;\n }\n\n if (isNil(activeType) || isNil(data)) {\n return TooltipResult.failed;\n }\n\n /** spec 预处理 */\n let spec: ITooltipSpec | undefined;\n if (changePositionOnly && this._cacheViewSpec) {\n spec = this._cacheViewSpec;\n } else {\n spec = getTooltipSpecForShow(\n activeType!,\n tooltipSpec,\n (params as BaseEventParams).model as ISeries,\n (params as DimensionEventParams).dimensionInfo\n );\n this._cacheViewSpec = spec;\n }\n\n if (spec.visible === false) {\n return TooltipResult.failed;\n }\n\n /** 用户自定义逻辑 */\n if (spec.handler) {\n return spec.handler.showTooltip?.(activeType!, data!, params) ?? TooltipResult.success;\n }\n\n /** 默认逻辑 */\n const pattern = spec[activeType!] as ITooltipPattern;\n if (!pattern) {\n return TooltipResult.failed;\n }\n\n // 合成 tooltip 内容\n let actualTooltip: IToolTipActual | undefined;\n if (changePositionOnly && this._cacheActualTooltip) {\n actualTooltip = this._cacheActualTooltip;\n } else {\n actualTooltip = this._getActualTooltipContent(pattern, data!, params);\n actualTooltip.title = pattern.updateTitle?.(actualTooltip.title, data, params) ?? actualTooltip.title;\n actualTooltip.content = pattern.updateContent?.(actualTooltip.content, data, params) ?? actualTooltip.content;\n }\n\n // 判断 tooltip 是否为空\n if (isNil(actualTooltip.title?.key) && isNil(actualTooltip.title?.value) && !actualTooltip.content?.length) {\n return TooltipResult.failed;\n }\n\n this._cacheActualTooltip = actualTooltip;\n return this._changeTooltipPosition(!!changePositionOnly, data!, params);\n };\n\n /** 改变 tooltip 位置(带 throttle 版本),返回是否遇到异常 */\n protected changeTooltipPosition: ChangeTooltipPositionFunc;\n\n /** 改变 tooltip 位置(不带 throttle 版本),返回是否遇到异常 */\n protected _changeTooltipPosition: ChangeTooltipPositionFunc = (\n changePositionOnly: boolean,\n data: TooltipData,\n params: TooltipHandlerParams\n ) => {\n if (this._isReleased) {\n return TooltipResult.failed;\n }\n\n const event = params.event as MouseEvent;\n const spec = this._cacheViewSpec;\n const actualTooltip = this._cacheActualTooltip;\n if (!spec || !actualTooltip) {\n return TooltipResult.failed;\n }\n\n if (spec.enterable) {\n if (!this._isPointerEscaped && this._isPointerMovingToTooltip(params)) {\n if (!this._isTooltipPaused) {\n this._isTooltipPaused = true;\n this._cachePointerTimer = setTimeout(() => {\n this._isPointerEscaped = true;\n }, 300) as unknown as number;\n }\n return TooltipResult.success;\n }\n this._isTooltipPaused = false;\n this._isPointerEscaped = false;\n clearTimeout(this._cachePointerTimer);\n this._cachePointerPosition = this._getPointerPositionRelativeToTooltipParent(params);\n }\n\n const activeType = actualTooltip.activeType;\n\n /** 用户自定义逻辑 */\n if (spec.handler) {\n return spec.handler.showTooltip?.(activeType, data, params) ?? TooltipResult.success;\n }\n\n /** 默认逻辑 */\n const pattern = spec[activeType];\n if (!pattern) {\n return TooltipResult.failed;\n }\n\n // 计算 tooltip 位置\n const position = this._getActualTooltipPosition(\n actualTooltip,\n params,\n this._getTooltipBoxSize(actualTooltip, changePositionOnly)\n );\n actualTooltip.position = position;\n if (pattern.updatePosition) {\n actualTooltip.position = pattern.updatePosition(actualTooltip.position, data, params);\n }\n\n // 判断 tooltip 可见性\n let tooltipVisible = pattern?.visible !== false;\n if (\n !data ||\n event.type === 'pointerout' ||\n !actualTooltip.visible ||\n (!actualTooltip.title && !actualTooltip.content)\n ) {\n tooltipVisible = false;\n }\n\n this._updateTooltip(\n tooltipVisible,\n {\n ...params,\n changePositionOnly\n },\n actualTooltip\n );\n return TooltipResult.success;\n };\n\n hideTooltip(params: TooltipHandlerParams): TooltipResult {\n return this.changeTooltip(false, params);\n }\n\n release(): void {\n this._clearAllCache();\n const spec = this._component.getSpec() ?? {};\n /** 用户自定义逻辑 */\n if (spec.handler) {\n spec.handler.release?.();\n return;\n }\n /** 默认逻辑 */\n this._removeTooltip();\n\n this._isReleased = true;\n }\n\n protected _clearAllCache() {\n this._clearCacheOfContent();\n this._clearCacheOfPosition();\n }\n\n protected _clearCacheOfContent() {\n this._cacheViewSpec = undefined;\n this._cacheActualTooltip = undefined;\n }\n\n protected _clearCacheOfPosition() {\n this._isTooltipPaused = false;\n this._isPointerEscaped = false;\n clearTimeout(this._cachePointerTimer);\n this._cachePointerTimer = -1;\n this._cachePointerPosition = undefined;\n this._cacheTooltipPosition = undefined;\n this._cacheTooltipSize = undefined;\n }\n\n /* -----需要子类继承的方法开始----- */\n\n protected abstract _updateTooltip(visible: boolean, params: TooltipHandlerParams, domData?: IToolTipActual): void;\n protected abstract _removeTooltip(): void;\n\n /* -----需要子类继承的方法结束----- */\n\n protected _throttle(callback: any) {\n const tooltipSpec = this._component.getSpec();\n let wait: number;\n if (isNumber(tooltipSpec.throttleInterval)) {\n wait = tooltipSpec.throttleInterval;\n } else {\n if (tooltipSpec.renderMode !== 'html' || !tooltipSpec.transitionDuration) {\n wait = 10;\n } else {\n wait = 50;\n }\n }\n return throttle(callback, wait);\n }\n\n protected _getDefaultOption(): Options {\n const { offset } = this._component.getSpec();\n return {\n ...DEFAULT_OPTIONS,\n offsetX: offset?.x ?? DEFAULT_OPTIONS.offsetX,\n offsetY: offset?.y ?? DEFAULT_OPTIONS.offsetY\n };\n }\n\n /**\n * 计算实际的 tooltip 内容\n * @param pattern\n * @param data\n * @param event\n */\n protected _getActualTooltipContent = (\n pattern: ITooltipPattern,\n data: TooltipData,\n params: TooltipHandlerParams\n ): IToolTipActual => {\n // 可见性\n const patternVisible = getTooltipPatternValue(pattern.visible, data, params);\n\n // 数据\n let tooltipContent: TooltipActualTitleContent | null = null;\n tooltipContent = getShowContent(pattern, data, params);\n\n const actualTooltip: IToolTipActual = {\n ...tooltipContent,\n visible: isValid(tooltipContent) ? patternVisible !== false : false, // 最终展示数据为 null 则不展示\n activeType: pattern.activeType,\n data\n };\n\n return actualTooltip;\n };\n\n /**\n * 计算实际的 tooltip 位置\n */\n protected _getActualTooltipPosition = (\n actualTooltip: IToolTipActual,\n params: TooltipHandlerParams,\n tooltipBoxSize: IContainerSize | undefined\n ): ITooltipPositionActual => {\n const event = params.event as MouseEvent;\n\n const invalidPosition = {\n x: Infinity,\n y: Infinity\n };\n\n const { offsetX, offsetY } = this._option;\n const tooltipSpec = this._cacheViewSpec;\n if (!tooltipSpec) {\n this._cacheTooltipPosition = undefined;\n return invalidPosition;\n }\n\n const { activeType, data } = actualTooltip;\n const pattern = tooltipSpec[activeType];\n const position = getTooltipPatternValue(pattern.position, data, params);\n const positionMode = getTooltipPatternValue(pattern.positionMode, data, params);\n const tooltipParentElement = this._getParentElement(tooltipSpec);\n const { width: tooltipBoxWidth = 0, height: tooltipBoxHeight = 0 } = tooltipBoxSize ?? {};\n\n const isCanvas = tooltipSpec.renderMode === 'canvas';\n const canvasRect = params?.chart?.getCanvasRect();\n const canvasWidth = canvasRect?.width ?? DEFAULT_CHART_WIDTH;\n const canvasHeight = canvasRect?.height ?? DEFAULT_CHART_HEIGHT;\n let isFixedPosition = false;\n\n const containerSize = {\n width: 0,\n height: 0\n };\n let relativePosOffset = { x: 0, y: 0 };\n let tooltipParentElementRect: IPoint | DOMRect = { x: 0, y: 0 };\n let chartElementScale = 1;\n let tooltipParentElementScale = 1;\n\n if (isTrueBrowser(this._env) && !tooltipSpec.confine) {\n // 只有在 browser 模式下才可以获取到 window 对象\n containerSize.width = window.innerWidth;\n containerSize.height = window.innerHeight;\n\n if (!isCanvas) {\n tooltipParentElementRect = tooltipParentElement?.getBoundingClientRect() ?? invalidPosition;\n const chartElement = (this._compiler.getCanvas() ?? this._chartContainer) as HTMLElement;\n const chartElementRect = chartElement?.getBoundingClientRect();\n relativePosOffset = {\n x: chartElementRect.x - tooltipParentElementRect.x,\n y: chartElementRect.y - tooltipParentElementRect.y\n };\n chartElementScale = getScale(chartElement, chartElementRect);\n tooltipParentElementScale = getScale(tooltipParentElement, tooltipParentElementRect as DOMRect);\n }\n } else {\n containerSize.width = canvasWidth;\n containerSize.height = canvasHeight;\n }\n const tooltipSizeScale = tooltipParentElementScale / chartElementScale;\n\n /* 一、计算 left、top、right、bottom */\n let left: number | undefined;\n let top: number | undefined;\n let right: number | undefined;\n let bottom: number | undefined;\n if (isObject(position)) {\n const { left: posLeft, right: posRight, top: posTop, bottom: posBottom } = position as ITooltipPositionPattern;\n left = getActualTooltipPositionValue(posLeft, event);\n top = getActualTooltipPositionValue(posTop, event);\n right = getActualTooltipPositionValue(posRight, event);\n bottom = getActualTooltipPositionValue(posBottom, event);\n } else if (\n isValid(position) &&\n positionMode !== TooltipPositionMode.pointer &&\n actualTooltip.activeType === 'mark'\n ) {\n isFixedPosition = true;\n const element = params.item as IElement;\n const model = params.model as IModel;\n const bounds = element?.getBounds() as AABBBounds;\n const startPoint = (<ILayoutModel>(<unknown>model))?.getLayoutStartPoint();\n if (bounds && startPoint) {\n let { x1, y1, x2, y2 } = bounds;\n x1 += startPoint.x;\n x2 += startPoint.x;\n y1 += startPoint.y;\n y2 += startPoint.y;\n switch (getHorizontalPositionType(position)) {\n case 'left':\n left = x1 - tooltipBoxWidth * tooltipSizeScale - offsetX;\n break;\n case 'right':\n left = x2 + offsetX;\n break;\n case 'middle':\n left = (x1 + x2) / 2 - (tooltipBoxWidth * tooltipSizeScale) / 2;\n break;\n }\n switch (getVerticalPositionType(position)) {\n case 'top':\n top = y1 - tooltipBoxHeight * tooltipSizeScale - offsetY;\n break;\n case 'bottom':\n top = y2 + offsetY;\n break;\n case 'middle':\n top = (y1 + y2) / 2 - (tooltipBoxHeight * tooltipSizeScale) / 2;\n break;\n }\n }\n }\n\n /* 二、换算成 x 和 y */\n let x: number;\n let y: number;\n\n const { canvasX, canvasY } = event as any;\n if (isValidNumber(left)) {\n x = left;\n } else if (isValidNumber(right)) {\n x = canvasWidth - tooltipBoxWidth * tooltipSizeScale - right;\n } else {\n const x0 = canvasX;\n switch (getHorizontalPositionType(position as TooltipFixedPosition, 'right')) {\n case 'middle':\n x = x0 - (tooltipBoxWidth * tooltipSizeScale) / 2;\n break;\n case 'left':\n x = x0 - tooltipBoxWidth * tooltipSizeScale - offsetX;\n break;\n case 'right':\n x = x0 + offsetX;\n break;\n }\n }\n if (isValidNumber(top)) {\n y = top;\n } else if (isValidNumber(bottom)) {\n y = canvasHeight - tooltipBoxHeight * tooltipSizeScale - bottom;\n } else {\n const y0 = canvasY;\n switch (getVerticalPositionType(position as TooltipFixedPosition, 'bottom')) {\n case 'middle':\n y = y0 - (tooltipBoxHeight * tooltipSizeScale) / 2;\n break;\n case 'top':\n y = y0 - tooltipBoxHeight * tooltipSizeScale - offsetY;\n break;\n case 'bottom':\n y = y0 + offsetY;\n break;\n }\n }\n\n x *= chartElementScale;\n y *= chartElementScale;\n if (isTrueBrowser(this._env)) {\n x += relativePosOffset.x;\n y += relativePosOffset.y;\n }\n x /= tooltipParentElementScale;\n y /= tooltipParentElementScale;\n\n /* 三、确保tooltip在视区内 */\n const { width: containerWidth, height: containerHeight } = containerSize;\n\n const isLeftOut = () => x * tooltipParentElementScale + tooltipParentElementRect.x < 0;\n const isRightOut = () =>\n (x + tooltipBoxWidth) * tooltipParentElementScale + tooltipParentElementRect.x > containerWidth;\n const isTopOut = () => y * tooltipParentElementScale + tooltipParentElementRect.y < 0;\n const isBottomOut = () =>\n (y + tooltipBoxHeight) * tooltipParentElementScale + tooltipParentElementRect.y > containerHeight;\n\n const detectLeftFirst = () => {\n if (isLeftOut()) {\n // 位置不超出视区左界\n if (isFixedPosition) {\n x = -tooltipParentElementRect.x / tooltipParentElementScale;\n } else {\n if (getHorizontalPositionType(position as TooltipFixedPosition, 'right') === 'middle') {\n x += offsetX + tooltipBoxWidth / 2;\n } else {\n x += offsetX * 2 + tooltipBoxWidth;\n }\n }\n }\n };\n const detectLeftLast = () => {\n if (isLeftOut()) {\n // 位置不超出视区左界\n x = -tooltipParentElementRect.x / tooltipParentElementScale;\n }\n };\n const detectRightFirst = () => {\n if (isRightOut()) {\n // 位置不超出视区右界\n if (isFixedPosition) {\n x = (containerWidth - tooltipParentElementRect.x) / tooltipParentElementScale - tooltipBoxWidth;\n } else {\n if (getHorizontalPositionType(position as TooltipFixedPosition, 'right') === 'middle') {\n x -= offsetX + tooltipBoxWidth / 2;\n } else {\n x -= offsetX * 2 + tooltipBoxWidth;\n }\n }\n }\n };\n const detectRightLast = () => {\n if (isRightOut()) {\n // 位置不超出视区右界\n x = (containerWidth - tooltipParentElementRect.x) / tooltipParentElementScale - tooltipBoxWidth;\n }\n };\n const detectTopFirst = () => {\n if (isTopOut()) {\n // 位置不超出视区上界\n if (isFixedPosition) {\n y = -tooltipParentElementRect.y / tooltipParentElementScale;\n } else {\n if (getVerticalPositionType(position as TooltipFixedPosition, 'bottom') === 'middle') {\n y += offsetY + tooltipBoxHeight / 2;\n } else {\n y += offsetY * 2 + tooltipBoxHeight;\n }\n }\n }\n };\n const detectTopLast = () => {\n if (isTopOut()) {\n // 位置不超出视区上界\n y = 0 - tooltipParentElementRect.y / tooltipParentElementScale;\n }\n };\n const detectBottomFirst = () => {\n if (isBottomOut()) {\n // 位置不超出视区下界\n if (isFixedPosition) {\n y = (containerHeight - tooltipParentElementRect.y) / tooltipParentElementScale - tooltipBoxHeight;\n } else {\n if (getVerticalPositionType(position as TooltipFixedPosition, 'bottom') === 'middle') {\n y -= offsetY + tooltipBoxHeight / 2;\n } else {\n y -= offsetY * 2 + tooltipBoxHeight;\n }\n }\n }\n };\n const detectBottomLast = () => {\n if (isBottomOut()) {\n // 位置不超出视区下界\n y = (containerHeight - tooltipParentElementRect.y) / tooltipParentElementScale - tooltipBoxHeight;\n }\n };\n\n // 处理左右\n switch (getHorizontalPositionType(position as TooltipFixedPosition, 'right')) {\n case 'middle':\n if (isLeftOut()) {\n detectLeftFirst();\n detectRightLast();\n } else {\n detectRightFirst();\n detectLeftLast();\n }\n break;\n case 'left':\n detectLeftFirst();\n detectRightLast();\n break;\n case 'right':\n detectRightFirst();\n detectLeftLast();\n break;\n }\n // 处理上下\n switch (getVerticalPositionType(position as TooltipFixedPosition, 'bottom')) {\n case 'middle':\n if (isTopOut()) {\n detectTopFirst();\n detectBottomLast();\n } else {\n detectBottomFirst();\n detectTopLast();\n }\n break;\n case 'top':\n detectTopFirst();\n detectBottomLast();\n break;\n case 'bottom':\n detectBottomFirst();\n detectTopLast();\n break;\n }\n\n const result = { x, y };\n this._cacheTooltipPosition = result;\n this._cacheTooltipSize = { width: tooltipBoxWidth, height: tooltipBoxHeight };\n return result;\n };\n\n // 计算 tooltip 内容区域的宽高,并缓存结果\n protected _getTooltipBoxSize(actualTooltip: IToolTipActual, changePositionOnly: boolean): IContainerSize | undefined {\n if (!changePositionOnly || isNil(this._attributes)) {\n const chartTheme = this._chartOption?.getTheme() ?? {};\n this._attributes = getTooltipAttributes(actualTooltip, this._component.getSpec(), chartTheme);\n }\n return {\n width: this._attributes?.panel?.width,\n height: this._attributes?.panel?.height\n };\n }\n\n protected _getPointerPositionRelativeToTooltipParent(params: TooltipHandlerParams) {\n let { canvasX: x, canvasY: y } = params.event;\n\n const invalidPosition = {\n x: Infinity,\n y: Infinity\n };\n\n const tooltipSpec = this._cacheViewSpec;\n const isCanvas = tooltipSpec.renderMode === 'canvas';\n const tooltipParentElement = this._getParentElement(tooltipSpec);\n\n let relativePosOffset = { x: 0, y: 0 };\n let tooltipParentElementRect: IPoint | DOMRect = { x: 0, y: 0 };\n let chartElementScale = 1;\n let tooltipParentElementScale = 1;\n\n if (isTrueBrowser(this._env) && !tooltipSpec.confine) {\n if (!isCanvas) {\n tooltipParentElementRect = tooltipParentElement?.getBoundingClientRect() ?? invalidPosition;\n const chartElement = (this._compiler.getCanvas() ?? this._chartContainer) as HTMLElement;\n const chartElementRect = chartElement?.getBoundingClientRect();\n relativePosOffset = {\n x: chartElementRect.x - tooltipParentElementRect.x,\n y: chartElementRect.y - tooltipParentElementRect.y\n };\n chartElementScale = getScale(chartElement, chartElementRect);\n tooltipParentElementScale = getScale(tooltipParentElement, tooltipParentElementRect as DOMRect);\n }\n }\n\n x *= chartElementScale;\n y *= chartElementScale;\n if (isTrueBrowser(this._env)) {\n x += relativePosOffset.x;\n y += relativePosOffset.y;\n }\n x /= tooltipParentElementScale;\n y /= tooltipParentElementScale;\n return { x, y };\n }\n\n protected _isPointerMovingToTooltip(params: TooltipHandlerParams) {\n if (!this._cacheTooltipPosition || !this._cacheTooltipSize || !this._cachePointerPosition) {\n return false;\n }\n const { width: tooltipWidth, height: tooltipHeight } = this._cacheTooltipSize;\n const { x: tooltipX = 0, y: tooltipY } = this._cacheTooltipPosition;\n\n const pos = this._getPointerPositionRelativeToTooltipParent(params);\n\n if (\n pointInRect(\n pos,\n {\n x1: tooltipX,\n y1: tooltipY,\n x2: tooltipX + tooltipWidth,\n y2: tooltipY + tooltipHeight\n },\n false\n )\n ) {\n return true;\n }\n\n // 确定 tooltip 四端点坐标\n const a = { x: tooltipX, y: tooltipY };\n const b = { x: a.x + tooltipWidth, y: a.y };\n const c = { x: a.x, y: a.y + tooltipHeight };\n const d = { x: b.x, y: c.y };\n const oldPos = this._cachePointerPosition;\n\n return (\n polygonContainPoint([oldPos, a, b], pos.x, pos.y) ||\n polygonContainPoint([oldPos, c, d], pos.x, pos.y) ||\n polygonContainPoint([oldPos, a, d], pos.x, pos.y) ||\n polygonContainPoint([oldPos, b, c], pos.x, pos.y)\n );\n }\n\n protected _getParentElement(spec: ITooltipSpec): HTMLElement {\n return spec.parentElement as any;\n }\n\n getTooltipContainer() {\n return this._container;\n }\n\n protected _initFromSpec() {\n this._option = this._getDefaultOption();\n // 为方法加防抖\n this.changeTooltip = this._throttle(this._changeTooltip) as any;\n this.changeTooltipPosition = this._throttle(this._changeTooltipPosition) as any;\n }\n\n reInit() {\n this._initFromSpec();\n }\n}\n"]}
@@ -41,8 +41,13 @@ class BaseTooltipModel {
41
41
  }
42
42
  release() {
43
43
  var _a;
44
- Object.values(this.children).forEach((c => c.release())), this.children = {}, this.product && (null === (_a = this.getParentEl()) || void 0 === _a || _a.removeChild(this.product),
45
- this.product = null);
44
+ if (Object.values(this.children).forEach((c => c.release())), this.children = {},
45
+ this.product) {
46
+ try {
47
+ null === (_a = this.getParentEl()) || void 0 === _a || _a.removeChild(this.product);
48
+ } catch (_b) {}
49
+ this.product = null;
50
+ }
46
51
  }
47
52
  createElement(tag, classList, style, id) {
48
53
  const element = null === env_1.domDocument || void 0 === env_1.domDocument ? void 0 : env_1.domDocument.createElement(tag), parentEl = this.getParentEl();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/handler/dom/model/base-tooltip-model.ts"],"names":[],"mappings":"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","file":"base-tooltip-model.js","sourcesContent":["import type { Maybe } from '@visactor/vutils';\nimport type { IToolTipLineActual } from '../../../../../typings';\nimport type { ITooltipModelOption } from './interface';\nimport { domDocument } from '../../../../../util/env';\n\nexport class BaseTooltipModel {\n static type = 'tooltipModel';\n static isInstance(obj: any): obj is BaseTooltipModel {\n if (!obj) {\n return false;\n }\n return obj.type === BaseTooltipModel.type;\n }\n readonly type = BaseTooltipModel.type;\n\n readonly parent: BaseTooltipModel | HTMLElement;\n readonly childIndex: number;\n\n protected _option: ITooltipModelOption;\n setOption(option: ITooltipModelOption) {\n this._option = option;\n Object.values(this.children).forEach(c => c.setOption(option));\n }\n\n protected _renderContentCache: IToolTipLineActual[] | null = null;\n\n children: Record<number, BaseTooltipModel> = {};\n\n product: Maybe<HTMLElement>;\n\n getParentEl() {\n if (BaseTooltipModel.isInstance(this.parent)) {\n return this.parent.product;\n }\n return this.parent;\n }\n\n constructor(parent: BaseTooltipModel | HTMLElement, option: ITooltipModelOption, childIndex?: number) {\n this.parent = parent;\n this._option = option;\n this.childIndex = childIndex ?? 0;\n }\n\n init(classList?: string[], id?: string) {\n // do nothing\n }\n\n initAll() {\n this.init();\n Object.values(this.children).forEach(c => c.initAll());\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>) {\n if (!this.product || !style) {\n return;\n }\n Object.keys(style).forEach(key => {\n if (this.product!.style[key] !== style[key]) {\n this.product!.style[key] = style[key];\n }\n });\n }\n\n setContent(content?: any) {\n // do nothing\n }\n\n setVisibility(visibility: boolean) {\n if (!this.product) {\n return;\n }\n const { style } = this.product;\n if (visibility) {\n style.visibility = 'visible';\n } else {\n style.visibility = 'hidden';\n }\n Object.values(this.children).forEach(c => c.setVisibility(visibility));\n }\n\n getVisibility() {\n if (!this.product?.style?.visibility) {\n return false;\n }\n return this.product.style.visibility !== 'hidden';\n }\n\n release() {\n Object.values(this.children).forEach(c => c.release());\n this.children = {};\n if (this.product) {\n this.getParentEl()?.removeChild(this.product);\n this.product = null;\n }\n }\n\n protected createElement(\n tag: keyof HTMLElementTagNameMap,\n classList?: string[],\n style?: Partial<CSSStyleDeclaration>,\n id?: string\n ) {\n const element = domDocument?.createElement(tag);\n const parentEl = this.getParentEl();\n if (!element || !parentEl) {\n return undefined;\n }\n\n if (classList) {\n element.classList.add(...classList);\n }\n if (style) {\n Object.keys(style).forEach(key => {\n element.style[key] = style[key];\n });\n }\n if (id) {\n element.id = id;\n }\n\n let ptr = this.childIndex;\n if (BaseTooltipModel.isInstance(this.parent)) {\n // 按照自身 childIndex 插入对应位置\n let nextChildIndex = Number.MAX_VALUE;\n for (let i = 0; i < parentEl.children.length; i++) {\n const childModel = Object.values(this.parent.children).find(c => c.product === parentEl.children[i])!;\n if (childModel.childIndex > this.childIndex && childModel.childIndex < nextChildIndex) {\n nextChildIndex = childModel.childIndex;\n ptr = i;\n }\n }\n }\n if (ptr >= parentEl.children.length) {\n parentEl.appendChild(element);\n } else {\n parentEl.insertBefore(element, parentEl.children[ptr]);\n }\n return element;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/handler/dom/model/base-tooltip-model.ts"],"names":[],"mappings":"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","file":"base-tooltip-model.js","sourcesContent":["import type { Maybe } from '@visactor/vutils';\nimport type { IToolTipLineActual } from '../../../../../typings';\nimport type { ITooltipModelOption } from './interface';\nimport { domDocument } from '../../../../../util/env';\n\nexport class BaseTooltipModel {\n static type = 'tooltipModel';\n static isInstance(obj: any): obj is BaseTooltipModel {\n if (!obj) {\n return false;\n }\n return obj.type === BaseTooltipModel.type;\n }\n readonly type = BaseTooltipModel.type;\n\n readonly parent: BaseTooltipModel | HTMLElement;\n readonly childIndex: number;\n\n protected _option: ITooltipModelOption;\n setOption(option: ITooltipModelOption) {\n this._option = option;\n Object.values(this.children).forEach(c => c.setOption(option));\n }\n\n protected _renderContentCache: IToolTipLineActual[] | null = null;\n\n children: Record<number, BaseTooltipModel> = {};\n\n product: Maybe<HTMLElement>;\n\n getParentEl() {\n if (BaseTooltipModel.isInstance(this.parent)) {\n return this.parent.product;\n }\n return this.parent;\n }\n\n constructor(parent: BaseTooltipModel | HTMLElement, option: ITooltipModelOption, childIndex?: number) {\n this.parent = parent;\n this._option = option;\n this.childIndex = childIndex ?? 0;\n }\n\n init(classList?: string[], id?: string) {\n // do nothing\n }\n\n initAll() {\n this.init();\n Object.values(this.children).forEach(c => c.initAll());\n }\n\n setStyle(style?: Partial<CSSStyleDeclaration>) {\n if (!this.product || !style) {\n return;\n }\n Object.keys(style).forEach(key => {\n if (this.product!.style[key] !== style[key]) {\n this.product!.style[key] = style[key];\n }\n });\n }\n\n setContent(content?: any) {\n // do nothing\n }\n\n setVisibility(visibility: boolean) {\n if (!this.product) {\n return;\n }\n const { style } = this.product;\n if (visibility) {\n style.visibility = 'visible';\n } else {\n style.visibility = 'hidden';\n }\n Object.values(this.children).forEach(c => c.setVisibility(visibility));\n }\n\n getVisibility() {\n if (!this.product?.style?.visibility) {\n return false;\n }\n return this.product.style.visibility !== 'hidden';\n }\n\n release() {\n Object.values(this.children).forEach(c => c.release());\n this.children = {};\n if (this.product) {\n try {\n this.getParentEl()?.removeChild(this.product);\n } catch {}\n this.product = null;\n }\n }\n\n protected createElement(\n tag: keyof HTMLElementTagNameMap,\n classList?: string[],\n style?: Partial<CSSStyleDeclaration>,\n id?: string\n ) {\n const element = domDocument?.createElement(tag);\n const parentEl = this.getParentEl();\n if (!element || !parentEl) {\n return undefined;\n }\n\n if (classList) {\n element.classList.add(...classList);\n }\n if (style) {\n Object.keys(style).forEach(key => {\n element.style[key] = style[key];\n });\n }\n if (id) {\n element.id = id;\n }\n\n let ptr = this.childIndex;\n if (BaseTooltipModel.isInstance(this.parent)) {\n // 按照自身 childIndex 插入对应位置\n let nextChildIndex = Number.MAX_VALUE;\n for (let i = 0; i < parentEl.children.length; i++) {\n const childModel = Object.values(this.parent.children).find(c => c.product === parentEl.children[i])!;\n if (childModel.childIndex > this.childIndex && childModel.childIndex < nextChildIndex) {\n nextChildIndex = childModel.childIndex;\n ptr = i;\n }\n }\n }\n if (ptr >= parentEl.children.length) {\n parentEl.appendChild(element);\n } else {\n parentEl.insertBefore(element, parentEl.children[ptr]);\n }\n return element;\n }\n}\n"]}
@@ -1,2 +1,3 @@
1
1
  export * from './tooltip';
2
2
  export * from './interface';
3
+ export * from './tooltip-transformer';
@@ -17,5 +17,6 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
17
17
 
18
18
  Object.defineProperty(exports, "__esModule", {
19
19
  value: !0
20
- }), __exportStar(require("./tooltip"), exports), __exportStar(require("./interface"), exports);
20
+ }), __exportStar(require("./tooltip"), exports), __exportStar(require("./interface"), exports),
21
+ __exportStar(require("./tooltip-transformer"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/tooltip/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,8CAA4B","file":"index.js","sourcesContent":["export * from './tooltip';\nexport * from './interface';\n"]}
1
+ {"version":3,"sources":["../src/component/tooltip/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,8CAA4B;AAC5B,wDAAsC","file":"index.js","sourcesContent":["export * from './tooltip';\nexport * from './interface';\nexport * from './tooltip-transformer';\n"]}
@@ -0,0 +1,8 @@
1
+ import { BaseComponentSpecTransformer } from '../base';
2
+ export declare class TooltipSpecTransformer extends BaseComponentSpecTransformer<any> {
3
+ protected _shouldMergeThemeToSpec(): boolean;
4
+ protected _initTheme(spec: any, chartSpec: any): {
5
+ spec: any;
6
+ theme: any;
7
+ };
8
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.TooltipSpecTransformer = void 0;
6
+
7
+ const util_1 = require("../../util"), base_1 = require("../base");
8
+
9
+ class TooltipSpecTransformer extends base_1.BaseComponentSpecTransformer {
10
+ _shouldMergeThemeToSpec() {
11
+ return !1;
12
+ }
13
+ _initTheme(spec, chartSpec) {
14
+ const {spec: newSpec, theme: theme} = super._initTheme(spec, chartSpec);
15
+ return newSpec.style = (0, util_1.mergeSpec)({}, this._theme, newSpec.style), {
16
+ spec: newSpec,
17
+ theme: theme
18
+ };
19
+ }
20
+ }
21
+
22
+ exports.TooltipSpecTransformer = TooltipSpecTransformer;
23
+ //# sourceMappingURL=tooltip-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/component/tooltip/tooltip-transformer.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,kCAAuD;AAEvD,MAAa,sBAAuB,SAAQ,mCAAiC;IACjE,uBAAuB;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IAES,UAAU,CAAC,IAAS,EAAE,SAAc;QAC5C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,GAAG,IAAA,gBAAS,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;CACF;AAVD,wDAUC","file":"tooltip-transformer.js","sourcesContent":["import { mergeSpec } from '../../util';\nimport { BaseComponentSpecTransformer } from '../base';\n\nexport class TooltipSpecTransformer extends BaseComponentSpecTransformer<any> {\n protected _shouldMergeThemeToSpec() {\n return false;\n }\n\n protected _initTheme(spec: any, chartSpec: any): { spec: any; theme: any } {\n const { spec: newSpec, theme } = super._initTheme(spec, chartSpec);\n newSpec.style = mergeSpec({}, this._theme, newSpec.style);\n return { spec: newSpec, theme };\n }\n}\n"]}
@@ -1,16 +1,17 @@
1
- import type { IComponentOption } from '../interface';
2
1
  import { ComponentTypeEnum } from '../interface/type';
3
- import type { IModelLayoutOption, IModelRenderOption } from '../../model/interface';
2
+ import type { IModelLayoutOption, IModelRenderOption, IModelSpecInfo } from '../../model/interface';
4
3
  import type { IRegion } from '../../region/interface';
5
4
  import { BaseComponent } from '../base/base-component';
6
5
  import type { BaseEventParams, EventCallback, EventQuery, EventType } from '../../event/interface';
7
6
  import type { ITooltipHandler, IToolTipLineActual, TooltipActiveType } from '../../typings/tooltip';
8
7
  import type { Datum, IShowTooltipOption } from '../../typings';
9
- import type { ITooltip, ITooltipActiveTypeAsKeys, ITooltipSpec, ITooltipTheme, TooltipHandlerParams, TotalMouseEventData } from './interface';
8
+ import type { ITooltip, ITooltipActiveTypeAsKeys, ITooltipSpec, TooltipHandlerParams, TotalMouseEventData } from './interface';
10
9
  import { TooltipResult } from './interface/common';
11
10
  import { DimensionTooltipProcessor } from './processor/dimension-tooltip';
12
11
  import { MarkTooltipProcessor } from './processor/mark-tooltip';
12
+ import type { Maybe } from '@visactor/vutils';
13
13
  import type { IGraphic } from '@visactor/vrender-core';
14
+ import { TooltipSpecTransformer } from './tooltip-transformer';
14
15
  export type TooltipActualTitleContent = {
15
16
  title?: IToolTipLineActual;
16
17
  content?: IToolTipLineActual[];
@@ -18,16 +19,19 @@ export type TooltipActualTitleContent = {
18
19
  export declare class Tooltip extends BaseComponent<any> implements ITooltip {
19
20
  protected layoutZIndex: number;
20
21
  static type: ComponentTypeEnum;
22
+ static readonly transformerConstructor: typeof TooltipSpecTransformer;
21
23
  type: ComponentTypeEnum;
22
24
  name: string;
25
+ readonly transformerConstructor: typeof TooltipSpecTransformer;
26
+ static specKey: string;
27
+ specKey: string;
23
28
  layoutType: 'none';
24
29
  protected _spec: ITooltipSpec;
25
- static createComponent(spec: any, options: IComponentOption): Tooltip | Tooltip[];
30
+ static getSpecInfo(chartSpec: any): Maybe<IModelSpecInfo[]>;
26
31
  tooltipHandler?: ITooltipHandler;
27
32
  private _alwaysShow;
28
33
  private _cacheInfo;
29
34
  private _eventList;
30
- protected _theme: ITooltipTheme;
31
35
  protected _processor: ITooltipActiveTypeAsKeys<MarkTooltipProcessor, DimensionTooltipProcessor>;
32
36
  protected _isTooltipShown: boolean;
33
37
  isTooltipShown(): boolean;
@@ -51,9 +55,7 @@ export declare class Tooltip extends BaseComponent<any> implements ITooltip {
51
55
  protected _showTooltipByMouseEvent: (activeType: TooltipActiveType, mouseEventData: TotalMouseEventData, params: BaseEventParams, useCache?: boolean) => boolean;
52
56
  protected _getMouseEventData: (params: BaseEventParams) => TotalMouseEventData;
53
57
  protected _hideTooltipByHandler: (params: TooltipHandlerParams) => TooltipResult;
54
- protected _initTheme(theme?: any): void;
55
- protected _shouldMergeThemeToSpec(): boolean;
56
- reInit(theme?: any): void;
58
+ reInit(spec?: any): void;
57
59
  setAttrFromSpec(): void;
58
60
  showTooltip(datum: Datum, options: IShowTooltipOption): false | "none" | TooltipActiveType;
59
61
  hideTooltip(): boolean;