@visactor/vchart 1.13.7-alpha.0 → 2.0.0-alpha.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 (1300) hide show
  1. package/build/es5/index.js +2 -2
  2. package/build/index.es.js +34518 -41938
  3. package/build/index.js +34522 -41972
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/animate-manager.d.ts +2 -4
  7. package/cjs/animation/animate-manager.js +6 -9
  8. package/cjs/animation/animate-manager.js.map +1 -1
  9. package/cjs/animation/config.js +10 -20
  10. package/cjs/animation/config.js.map +1 -1
  11. package/cjs/animation/interface.d.ts +86 -2
  12. package/cjs/animation/interface.js.map +1 -1
  13. package/cjs/animation/spec.d.ts +27 -3
  14. package/cjs/animation/spec.js.map +1 -1
  15. package/cjs/animation/utils.d.ts +3 -4
  16. package/cjs/animation/utils.js +11 -10
  17. package/cjs/animation/utils.js.map +1 -1
  18. package/cjs/chart/area/area.js +3 -2
  19. package/cjs/chart/area/area.js.map +1 -1
  20. package/cjs/chart/bar/bar.js +3 -2
  21. package/cjs/chart/bar/bar.js.map +1 -1
  22. package/cjs/chart/base/base-chart-transformer.js +2 -2
  23. package/cjs/chart/base/base-chart-transformer.js.map +1 -1
  24. package/cjs/chart/base/base-chart.d.ts +10 -7
  25. package/cjs/chart/base/base-chart.js +78 -64
  26. package/cjs/chart/base/base-chart.js.map +1 -1
  27. package/cjs/chart/box-plot/box-plot.js +3 -2
  28. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  29. package/cjs/chart/funnel/funnel-transformer.js +1 -1
  30. package/cjs/chart/funnel/funnel-transformer.js.map +1 -1
  31. package/cjs/chart/funnel/util.d.ts +2 -0
  32. package/cjs/chart/funnel/util.js +14 -0
  33. package/cjs/chart/funnel/util.js.map +1 -0
  34. package/cjs/chart/histogram/3d/histogram-3d.js +3 -2
  35. package/cjs/chart/histogram/3d/histogram-3d.js.map +1 -1
  36. package/cjs/chart/histogram/histogram.js +3 -2
  37. package/cjs/chart/histogram/histogram.js.map +1 -1
  38. package/cjs/chart/index.js +1 -2
  39. package/cjs/chart/interface/chart.d.ts +3 -4
  40. package/cjs/chart/interface/chart.js.map +1 -1
  41. package/cjs/chart/interface/common.d.ts +2 -9
  42. package/cjs/chart/interface/common.js.map +1 -1
  43. package/cjs/chart/line/line.js +3 -2
  44. package/cjs/chart/line/line.js.map +1 -1
  45. package/cjs/chart/mosaic/mosaic.js +3 -2
  46. package/cjs/chart/mosaic/mosaic.js.map +1 -1
  47. package/cjs/chart/progress/circular/circular.js +3 -2
  48. package/cjs/chart/progress/circular/circular.js.map +1 -1
  49. package/cjs/chart/progress/linear/linear.js +3 -2
  50. package/cjs/chart/progress/linear/linear.js.map +1 -1
  51. package/cjs/chart/radar/radar.js +3 -2
  52. package/cjs/chart/radar/radar.js.map +1 -1
  53. package/cjs/chart/range-area/range-area.js +3 -2
  54. package/cjs/chart/range-area/range-area.js.map +1 -1
  55. package/cjs/chart/range-column/3d/range-column-3d.js +3 -3
  56. package/cjs/chart/range-column/3d/range-column-3d.js.map +1 -1
  57. package/cjs/chart/range-column/range-column.js +3 -2
  58. package/cjs/chart/range-column/range-column.js.map +1 -1
  59. package/cjs/chart/rose/rose.js +3 -2
  60. package/cjs/chart/rose/rose.js.map +1 -1
  61. package/cjs/chart/sankey/sankey.d.ts +1 -1
  62. package/cjs/chart/sankey/sankey.js +20 -18
  63. package/cjs/chart/sankey/sankey.js.map +1 -1
  64. package/cjs/chart/scatter/scatter.js +3 -2
  65. package/cjs/chart/scatter/scatter.js.map +1 -1
  66. package/cjs/chart/sequence/sequence-transformer.js +2 -2
  67. package/cjs/chart/sequence/sequence-transformer.js.map +1 -1
  68. package/cjs/chart/util.js +2 -2
  69. package/cjs/chart/util.js.map +1 -1
  70. package/cjs/chart/waterfall/waterfall.js +3 -2
  71. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  72. package/cjs/compile/compilable-base.d.ts +1 -1
  73. package/cjs/compile/compilable-base.js +2 -2
  74. package/cjs/compile/compilable-base.js.map +1 -1
  75. package/cjs/compile/compiler.d.ts +35 -25
  76. package/cjs/compile/compiler.js +183 -144
  77. package/cjs/compile/compiler.js.map +1 -1
  78. package/cjs/compile/data/compilable-data.d.ts +7 -7
  79. package/cjs/compile/data/compilable-data.js +20 -20
  80. package/cjs/compile/data/compilable-data.js.map +1 -1
  81. package/cjs/compile/data/interface.d.ts +4 -1
  82. package/cjs/compile/data/interface.js.map +1 -1
  83. package/cjs/compile/grammar-item.d.ts +7 -13
  84. package/cjs/compile/grammar-item.js +14 -34
  85. package/cjs/compile/grammar-item.js.map +1 -1
  86. package/cjs/compile/interface/compilable-item.d.ts +22 -28
  87. package/cjs/compile/interface/compilable-item.js +1 -1
  88. package/cjs/compile/interface/compilable-item.js.map +1 -1
  89. package/cjs/compile/interface/compiler.d.ts +13 -4
  90. package/cjs/compile/interface/compiler.js +6 -1
  91. package/cjs/compile/interface/compiler.js.map +1 -1
  92. package/cjs/compile/mark/index.d.ts +0 -1
  93. package/cjs/compile/mark/index.js +1 -2
  94. package/cjs/compile/mark/index.js.map +1 -1
  95. package/cjs/compile/mark/interface.d.ts +42 -33
  96. package/cjs/compile/mark/interface.js +2 -1
  97. package/cjs/compile/mark/interface.js.map +1 -1
  98. package/cjs/compile/mark/mark-state-manager.d.ts +11 -13
  99. package/cjs/compile/mark/mark-state-manager.js +25 -32
  100. package/cjs/compile/mark/mark-state-manager.js.map +1 -1
  101. package/cjs/compile/mark/util.d.ts +1 -1
  102. package/cjs/compile/mark/util.js.map +1 -1
  103. package/cjs/compile/state-manager.d.ts +11 -0
  104. package/cjs/compile/state-manager.js +29 -0
  105. package/cjs/compile/state-manager.js.map +1 -0
  106. package/cjs/compile/util.d.ts +14 -0
  107. package/cjs/compile/util.js +116 -13
  108. package/cjs/compile/util.js.map +1 -1
  109. package/cjs/component/axis/base-axis.d.ts +5 -3
  110. package/cjs/component/axis/base-axis.js +20 -17
  111. package/cjs/component/axis/base-axis.js.map +1 -1
  112. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  113. package/cjs/component/axis/cartesian/axis.js +19 -21
  114. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  115. package/cjs/component/axis/cartesian/band-axis.js +4 -3
  116. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  117. package/cjs/component/axis/cartesian/linear-axis.js +3 -2
  118. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  119. package/cjs/component/axis/cartesian/log-axis.js +3 -2
  120. package/cjs/component/axis/cartesian/log-axis.js.map +1 -1
  121. package/cjs/component/axis/cartesian/symlog-axis.js +3 -2
  122. package/cjs/component/axis/cartesian/symlog-axis.js.map +1 -1
  123. package/cjs/component/axis/cartesian/time-axis.d.ts +1 -0
  124. package/cjs/component/axis/cartesian/time-axis.js +7 -2
  125. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  126. package/cjs/component/axis/interface/common.d.ts +8 -0
  127. package/cjs/component/axis/interface/common.js +7 -1
  128. package/cjs/component/axis/interface/common.js.map +1 -1
  129. package/cjs/component/axis/polar/axis.js +2 -2
  130. package/cjs/component/axis/polar/axis.js.map +1 -1
  131. package/cjs/component/axis/polar/band-axis.js +5 -3
  132. package/cjs/component/axis/polar/band-axis.js.map +1 -1
  133. package/cjs/component/axis/polar/linear-axis.js +5 -3
  134. package/cjs/component/axis/polar/linear-axis.js.map +1 -1
  135. package/cjs/component/base/base-component.d.ts +1 -2
  136. package/cjs/component/base/base-component.js.map +1 -1
  137. package/cjs/component/brush/brush.d.ts +12 -10
  138. package/cjs/component/brush/brush.js +25 -28
  139. package/cjs/component/brush/brush.js.map +1 -1
  140. package/cjs/component/crosshair/base.d.ts +2 -2
  141. package/cjs/component/crosshair/base.js +2 -2
  142. package/cjs/component/crosshair/base.js.map +1 -1
  143. package/cjs/component/custom-mark/custom-mark.d.ts +0 -1
  144. package/cjs/component/custom-mark/custom-mark.js +3 -25
  145. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  146. package/cjs/component/data-zoom/data-filter-base-component.d.ts +2 -2
  147. package/cjs/component/data-zoom/data-filter-base-component.js +4 -4
  148. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  149. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  150. package/cjs/component/data-zoom/data-zoom/data-zoom.js +2 -2
  151. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  152. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  153. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +2 -2
  154. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  155. package/cjs/component/geo/geo-coordinate.d.ts +2 -2
  156. package/cjs/component/geo/geo-coordinate.js +4 -4
  157. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  158. package/cjs/component/geo/interface.d.ts +1 -1
  159. package/cjs/component/geo/interface.js.map +1 -1
  160. package/cjs/component/indicator/indicator.js +13 -14
  161. package/cjs/component/indicator/indicator.js.map +1 -1
  162. package/cjs/component/label/base-label.d.ts +5 -0
  163. package/cjs/component/label/base-label.js +45 -1
  164. package/cjs/component/label/base-label.js.map +1 -1
  165. package/cjs/component/label/interface.d.ts +2 -3
  166. package/cjs/component/label/interface.js.map +1 -1
  167. package/cjs/component/label/label.d.ts +3 -3
  168. package/cjs/component/label/label.js +63 -52
  169. package/cjs/component/label/label.js.map +1 -1
  170. package/cjs/component/label/total-label.js +40 -36
  171. package/cjs/component/label/total-label.js.map +1 -1
  172. package/cjs/component/label/util.d.ts +9 -10
  173. package/cjs/component/label/util.js +13 -14
  174. package/cjs/component/label/util.js.map +1 -1
  175. package/cjs/component/legend/util.d.ts +3 -3
  176. package/cjs/component/map-label/component.js +14 -14
  177. package/cjs/component/map-label/component.js.map +1 -1
  178. package/cjs/component/marker/base-marker.d.ts +1 -1
  179. package/cjs/component/marker/base-marker.js +2 -2
  180. package/cjs/component/marker/base-marker.js.map +1 -1
  181. package/cjs/component/tooltip/processor/interface.d.ts +1 -1
  182. package/cjs/component/tooltip/processor/interface.js.map +1 -1
  183. package/cjs/component/tooltip/processor/mark-tooltip.js +4 -4
  184. package/cjs/component/tooltip/processor/mark-tooltip.js.map +1 -1
  185. package/cjs/component/tooltip/processor/util.d.ts +1 -1
  186. package/cjs/component/tooltip/tooltip.d.ts +2 -3
  187. package/cjs/component/tooltip/tooltip.js +1 -2
  188. package/cjs/component/tooltip/tooltip.js.map +1 -1
  189. package/cjs/component/tooltip/utils/show-tooltip.js +2 -4
  190. package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
  191. package/cjs/constant/data.d.ts +1 -0
  192. package/cjs/constant/data.js +2 -2
  193. package/cjs/constant/data.js.map +1 -1
  194. package/cjs/constant/event.d.ts +53 -2
  195. package/cjs/constant/event.js +31 -11
  196. package/cjs/constant/event.js.map +1 -1
  197. package/cjs/core/factory.d.ts +28 -3
  198. package/cjs/core/factory.js +33 -5
  199. package/cjs/core/factory.js.map +1 -1
  200. package/cjs/core/index.d.ts +2 -1
  201. package/cjs/core/index.js +1 -1
  202. package/cjs/core/index.js.map +1 -1
  203. package/cjs/core/interface.d.ts +13 -4
  204. package/cjs/core/interface.js.map +1 -1
  205. package/cjs/core/vchart.d.ts +6 -6
  206. package/cjs/core/vchart.js +31 -57
  207. package/cjs/core/vchart.js.map +1 -1
  208. package/cjs/data/transforms/dimension-data.js.map +1 -1
  209. package/cjs/data/transforms/obj-flat.js +11 -5
  210. package/cjs/data/transforms/obj-flat.js.map +1 -1
  211. package/cjs/data/transforms/treemap.d.ts +10 -0
  212. package/cjs/data/transforms/treemap.js +22 -0
  213. package/cjs/data/transforms/treemap.js.map +1 -0
  214. package/cjs/data/transforms/venn.d.ts +10 -0
  215. package/cjs/data/transforms/venn.js +16 -0
  216. package/cjs/data/transforms/venn.js.map +1 -0
  217. package/cjs/event/event-dispatcher.js +17 -23
  218. package/cjs/event/event-dispatcher.js.map +1 -1
  219. package/cjs/event/events/base.d.ts +1 -2
  220. package/cjs/event/events/base.js.map +1 -1
  221. package/cjs/event/interface.d.ts +6 -9
  222. package/cjs/event/interface.js.map +1 -1
  223. package/cjs/index-harmony-simple.d.ts +2 -1
  224. package/cjs/index-harmony-simple.js +15 -11
  225. package/cjs/index-harmony-simple.js.map +1 -1
  226. package/cjs/index-harmony.js +3 -3
  227. package/cjs/index-harmony.js.map +1 -1
  228. package/cjs/index-lark.js +2 -2
  229. package/cjs/index-lark.js.map +1 -1
  230. package/cjs/index-wx-simple.js +2 -2
  231. package/cjs/index-wx-simple.js.map +1 -1
  232. package/cjs/index-wx.js +2 -2
  233. package/cjs/index-wx.js.map +1 -1
  234. package/cjs/index.d.ts +0 -3
  235. package/cjs/index.js +1 -3
  236. package/cjs/index.js.map +1 -1
  237. package/cjs/interaction/config.d.ts +13 -0
  238. package/cjs/interaction/config.js +17 -2
  239. package/cjs/interaction/config.js.map +1 -1
  240. package/cjs/interaction/index.d.ts +9 -1
  241. package/cjs/interaction/index.js +55 -18
  242. package/cjs/interaction/index.js.map +1 -1
  243. package/cjs/interaction/interaction.d.ts +17 -25
  244. package/cjs/interaction/interaction.js +84 -86
  245. package/cjs/interaction/interaction.js.map +1 -1
  246. package/cjs/interaction/interface/common.d.ts +22 -0
  247. package/cjs/{compile/signal/interface.js → interaction/interface/common.js} +1 -1
  248. package/cjs/interaction/interface/common.js.map +1 -0
  249. package/cjs/interaction/interface/spec.d.ts +53 -0
  250. package/cjs/interaction/{interface.js → interface/spec.js} +1 -1
  251. package/cjs/interaction/interface/spec.js.map +1 -0
  252. package/cjs/interaction/interface/trigger.d.ts +87 -0
  253. package/cjs/interaction/interface/trigger.js +6 -0
  254. package/cjs/interaction/interface/trigger.js.map +1 -0
  255. package/cjs/interaction/triggers/base.d.ts +28 -0
  256. package/cjs/interaction/triggers/base.js +77 -0
  257. package/cjs/interaction/triggers/base.js.map +1 -0
  258. package/cjs/interaction/triggers/dimension-hover.d.ts +22 -0
  259. package/cjs/interaction/triggers/dimension-hover.js +77 -0
  260. package/cjs/interaction/triggers/dimension-hover.js.map +1 -0
  261. package/cjs/interaction/triggers/element-active-by-legend.d.ts +21 -0
  262. package/cjs/interaction/triggers/element-active-by-legend.js +66 -0
  263. package/cjs/interaction/triggers/element-active-by-legend.js.map +1 -0
  264. package/cjs/interaction/triggers/element-active.d.ts +20 -0
  265. package/cjs/interaction/triggers/element-active.js +52 -0
  266. package/cjs/interaction/triggers/element-active.js.map +1 -0
  267. package/cjs/interaction/triggers/element-highlight-by-graphic-name.d.ts +13 -0
  268. package/cjs/interaction/triggers/element-highlight-by-graphic-name.js +53 -0
  269. package/cjs/interaction/triggers/element-highlight-by-graphic-name.js.map +1 -0
  270. package/cjs/interaction/triggers/element-highlight-by-group.d.ts +23 -0
  271. package/cjs/interaction/triggers/element-highlight-by-group.js +74 -0
  272. package/cjs/interaction/triggers/element-highlight-by-group.js.map +1 -0
  273. package/cjs/interaction/triggers/element-highlight-by-key.d.ts +9 -0
  274. package/cjs/interaction/triggers/element-highlight-by-key.js +26 -0
  275. package/cjs/interaction/triggers/element-highlight-by-key.js.map +1 -0
  276. package/cjs/interaction/triggers/element-highlight-by-legend.d.ts +22 -0
  277. package/cjs/interaction/triggers/element-highlight-by-legend.js +72 -0
  278. package/cjs/interaction/triggers/element-highlight-by-legend.js.map +1 -0
  279. package/cjs/interaction/triggers/element-highlight-by-name.d.ts +24 -0
  280. package/cjs/interaction/triggers/element-highlight-by-name.js +81 -0
  281. package/cjs/interaction/triggers/element-highlight-by-name.js.map +1 -0
  282. package/cjs/interaction/triggers/element-highlight.d.ts +25 -0
  283. package/cjs/interaction/triggers/element-highlight.js +76 -0
  284. package/cjs/interaction/triggers/element-highlight.js.map +1 -0
  285. package/cjs/interaction/triggers/element-select-by-graphic-name.d.ts +8 -0
  286. package/cjs/interaction/triggers/element-select-by-graphic-name.js +31 -0
  287. package/cjs/interaction/triggers/element-select-by-graphic-name.js.map +1 -0
  288. package/cjs/interaction/triggers/element-select.d.ts +24 -0
  289. package/cjs/interaction/triggers/element-select.js +79 -0
  290. package/cjs/interaction/triggers/element-select.js.map +1 -0
  291. package/cjs/interaction/triggers/enum.d.ts +8 -0
  292. package/cjs/interaction/triggers/enum.js +13 -0
  293. package/cjs/interaction/triggers/enum.js.map +1 -0
  294. package/cjs/interaction/triggers/util.d.ts +12 -0
  295. package/cjs/interaction/triggers/util.js +58 -0
  296. package/cjs/interaction/triggers/util.js.map +1 -0
  297. package/cjs/interaction/zoom/zoomable.js +1 -1
  298. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  299. package/cjs/layout/interface.d.ts +2 -2
  300. package/cjs/layout/interface.js.map +1 -1
  301. package/cjs/layout/layout-item.d.ts +2 -3
  302. package/cjs/layout/layout-item.js +2 -2
  303. package/cjs/layout/layout-item.js.map +1 -1
  304. package/cjs/mark/arc-3d.js +4 -3
  305. package/cjs/mark/arc-3d.js.map +1 -1
  306. package/cjs/mark/arc.d.ts +2 -2
  307. package/cjs/mark/arc.js +8 -7
  308. package/cjs/mark/arc.js.map +1 -1
  309. package/cjs/mark/area.d.ts +2 -0
  310. package/cjs/mark/area.js +9 -4
  311. package/cjs/mark/area.js.map +1 -1
  312. package/cjs/mark/base/base-line.d.ts +16 -2
  313. package/cjs/mark/base/base-line.js +65 -11
  314. package/cjs/mark/base/base-line.js.map +1 -1
  315. package/cjs/mark/base/base-mark.d.ts +131 -13
  316. package/cjs/mark/base/base-mark.js +422 -43
  317. package/cjs/mark/base/base-mark.js.map +1 -1
  318. package/cjs/mark/box-plot.d.ts +11 -5
  319. package/cjs/mark/box-plot.js +216 -10
  320. package/cjs/mark/box-plot.js.map +1 -1
  321. package/cjs/mark/cell.d.ts +5 -2
  322. package/cjs/mark/cell.js +16 -4
  323. package/cjs/mark/cell.js.map +1 -1
  324. package/cjs/mark/component.d.ts +11 -3
  325. package/cjs/mark/component.js +34 -7
  326. package/cjs/mark/component.js.map +1 -1
  327. package/cjs/mark/glyph.d.ts +29 -0
  328. package/cjs/mark/glyph.js +73 -0
  329. package/cjs/mark/glyph.js.map +1 -0
  330. package/cjs/mark/group.d.ts +10 -6
  331. package/cjs/mark/group.js +30 -16
  332. package/cjs/mark/group.js.map +1 -1
  333. package/cjs/mark/image.js +3 -2
  334. package/cjs/mark/image.js.map +1 -1
  335. package/cjs/mark/index.d.ts +3 -1
  336. package/cjs/mark/index.js +19 -1
  337. package/cjs/mark/index.js.map +1 -1
  338. package/cjs/mark/interface/common.d.ts +61 -9
  339. package/cjs/mark/interface/common.js.map +1 -1
  340. package/cjs/mark/interface/enum.d.ts +6 -0
  341. package/cjs/mark/interface/enum.js +11 -0
  342. package/cjs/mark/interface/enum.js.map +1 -0
  343. package/cjs/mark/interface/index.d.ts +1 -0
  344. package/cjs/mark/interface/index.js +1 -1
  345. package/cjs/mark/interface/index.js.map +1 -1
  346. package/cjs/mark/interface/mark.d.ts +18 -1
  347. package/cjs/mark/interface/mark.js.map +1 -1
  348. package/cjs/mark/interface/type.d.ts +1 -0
  349. package/cjs/mark/interface/type.js +2 -2
  350. package/cjs/mark/interface/type.js.map +1 -1
  351. package/cjs/mark/label.d.ts +4 -3
  352. package/cjs/mark/label.js +3 -2
  353. package/cjs/mark/label.js.map +1 -1
  354. package/cjs/mark/line.js +5 -3
  355. package/cjs/mark/line.js.map +1 -1
  356. package/cjs/mark/link-path.d.ts +35 -5
  357. package/cjs/mark/link-path.js +65 -11
  358. package/cjs/mark/link-path.js.map +1 -1
  359. package/cjs/mark/liquid.d.ts +47 -5
  360. package/cjs/mark/liquid.js +62 -9
  361. package/cjs/mark/liquid.js.map +1 -1
  362. package/cjs/mark/path.js +3 -2
  363. package/cjs/mark/path.js.map +1 -1
  364. package/cjs/mark/polygon/polygon.js +4 -3
  365. package/cjs/mark/polygon/polygon.js.map +1 -1
  366. package/cjs/mark/polygon/pyramid-3d.js +4 -3
  367. package/cjs/mark/polygon/pyramid-3d.js.map +1 -1
  368. package/cjs/mark/rect-3d.js +4 -3
  369. package/cjs/mark/rect-3d.js.map +1 -1
  370. package/cjs/mark/rect.js +4 -3
  371. package/cjs/mark/rect.js.map +1 -1
  372. package/cjs/mark/ripple.d.ts +39 -4
  373. package/cjs/mark/ripple.js +41 -9
  374. package/cjs/mark/ripple.js.map +1 -1
  375. package/cjs/mark/rule.d.ts +3 -0
  376. package/cjs/mark/rule.js +28 -2
  377. package/cjs/mark/rule.js.map +1 -1
  378. package/cjs/mark/symbol.d.ts +4 -4
  379. package/cjs/mark/symbol.js +14 -11
  380. package/cjs/mark/symbol.js.map +1 -1
  381. package/cjs/mark/text.d.ts +4 -2
  382. package/cjs/mark/text.js +15 -9
  383. package/cjs/mark/text.js.map +1 -1
  384. package/cjs/mark/transform/data-sampling.d.ts +10 -0
  385. package/cjs/mark/transform/data-sampling.js +119 -0
  386. package/cjs/mark/transform/data-sampling.js.map +1 -0
  387. package/cjs/mark/transform/filter.d.ts +1 -0
  388. package/cjs/mark/transform/filter.js +14 -0
  389. package/cjs/mark/transform/filter.js.map +1 -0
  390. package/cjs/mark/transform/map.d.ts +1 -0
  391. package/cjs/mark/transform/map.js +16 -0
  392. package/cjs/mark/transform/map.js.map +1 -0
  393. package/cjs/mark/transform/symbol-overlap.d.ts +14 -0
  394. package/cjs/mark/transform/symbol-overlap.js +93 -0
  395. package/cjs/mark/transform/symbol-overlap.js.map +1 -0
  396. package/cjs/mark/utils/common.d.ts +4 -0
  397. package/cjs/mark/utils/common.js +44 -4
  398. package/cjs/mark/utils/common.js.map +1 -1
  399. package/cjs/mark/utils/glyph.d.ts +2 -0
  400. package/cjs/mark/utils/glyph.js +13 -0
  401. package/cjs/mark/utils/glyph.js.map +1 -0
  402. package/cjs/mark/utils/index.d.ts +2 -0
  403. package/cjs/mark/utils/index.js +2 -1
  404. package/cjs/mark/utils/index.js.map +1 -1
  405. package/cjs/mark/utils/line.d.ts +3 -0
  406. package/cjs/mark/utils/line.js +29 -0
  407. package/cjs/mark/utils/line.js.map +1 -0
  408. package/cjs/model/base-model.d.ts +8 -8
  409. package/cjs/model/base-model.js +20 -9
  410. package/cjs/model/base-model.js.map +1 -1
  411. package/cjs/model/interface.d.ts +4 -8
  412. package/cjs/model/interface.js.map +1 -1
  413. package/cjs/model/layout-model.d.ts +2 -2
  414. package/cjs/model/layout-model.js +4 -4
  415. package/cjs/model/layout-model.js.map +1 -1
  416. package/cjs/plugin/components/tooltip-handler/base.d.ts +2 -2
  417. package/cjs/plugin/components/tooltip-handler/base.js +1 -1
  418. package/cjs/plugin/components/tooltip-handler/base.js.map +1 -1
  419. package/cjs/plugin/other.d.ts +3 -3
  420. package/cjs/plugin/other.js +16 -18
  421. package/cjs/plugin/other.js.map +1 -1
  422. package/cjs/region/interface.d.ts +0 -2
  423. package/cjs/region/interface.js.map +1 -1
  424. package/cjs/region/region.d.ts +3 -9
  425. package/cjs/region/region.js +12 -32
  426. package/cjs/region/region.js.map +1 -1
  427. package/cjs/series/area/animation.d.ts +1 -1
  428. package/cjs/series/area/animation.js.map +1 -1
  429. package/cjs/series/area/area.d.ts +1 -1
  430. package/cjs/series/area/area.js +9 -16
  431. package/cjs/series/area/area.js.map +1 -1
  432. package/cjs/series/bar/animation.d.ts +1 -1
  433. package/cjs/series/bar/animation.js.map +1 -1
  434. package/cjs/series/bar/bar.d.ts +3 -3
  435. package/cjs/series/bar/bar.js +11 -25
  436. package/cjs/series/bar/bar.js.map +1 -1
  437. package/cjs/series/base/base-series.d.ts +26 -42
  438. package/cjs/series/base/base-series.js +57 -70
  439. package/cjs/series/base/base-series.js.map +1 -1
  440. package/cjs/series/base/tooltip-helper.d.ts +1 -2
  441. package/cjs/series/base/tooltip-helper.js.map +1 -1
  442. package/cjs/series/box-plot/box-plot.d.ts +3 -3
  443. package/cjs/series/box-plot/box-plot.js +12 -15
  444. package/cjs/series/box-plot/box-plot.js.map +1 -1
  445. package/cjs/series/cartesian/cartesian.d.ts +1 -1
  446. package/cjs/series/circle-packing/animation.d.ts +1 -1
  447. package/cjs/series/circle-packing/animation.js.map +1 -1
  448. package/cjs/series/circle-packing/circle-packing.d.ts +1 -1
  449. package/cjs/series/circle-packing/circle-packing.js +3 -5
  450. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  451. package/cjs/series/correlation/animation.d.ts +1 -1
  452. package/cjs/series/correlation/animation.js.map +1 -1
  453. package/cjs/series/correlation/correlation.d.ts +3 -4
  454. package/cjs/series/correlation/correlation.js +6 -13
  455. package/cjs/series/correlation/correlation.js.map +1 -1
  456. package/cjs/series/dot/dot.d.ts +2 -2
  457. package/cjs/series/dot/dot.js +4 -3
  458. package/cjs/series/dot/dot.js.map +1 -1
  459. package/cjs/series/funnel/3d/funnel-3d.js +3 -4
  460. package/cjs/series/funnel/3d/funnel-3d.js.map +1 -1
  461. package/cjs/series/funnel/funnel.d.ts +3 -2
  462. package/cjs/series/funnel/funnel.js +57 -45
  463. package/cjs/series/funnel/funnel.js.map +1 -1
  464. package/cjs/series/funnel/interface.d.ts +0 -1
  465. package/cjs/series/funnel/interface.js.map +1 -1
  466. package/cjs/series/funnel/tooltip-helper.d.ts +2 -4
  467. package/cjs/series/funnel/tooltip-helper.js +5 -6
  468. package/cjs/series/funnel/tooltip-helper.js.map +1 -1
  469. package/cjs/series/gauge/animation.d.ts +1 -1
  470. package/cjs/series/gauge/animation.js.map +1 -1
  471. package/cjs/series/gauge/gauge-pointer.d.ts +4 -1
  472. package/cjs/series/gauge/gauge-pointer.js +2 -2
  473. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  474. package/cjs/series/gauge/gauge.d.ts +2 -2
  475. package/cjs/series/gauge/gauge.js +2 -2
  476. package/cjs/series/gauge/gauge.js.map +1 -1
  477. package/cjs/series/geo/geo.d.ts +2 -2
  478. package/cjs/series/geo/geo.js.map +1 -1
  479. package/cjs/series/heatmap/animation.d.ts +1 -1
  480. package/cjs/series/heatmap/animation.js.map +1 -1
  481. package/cjs/series/heatmap/heatmap.d.ts +4 -1
  482. package/cjs/series/heatmap/heatmap.js +5 -18
  483. package/cjs/series/heatmap/heatmap.js.map +1 -1
  484. package/cjs/series/interface/common.d.ts +1 -4
  485. package/cjs/series/interface/common.js.map +1 -1
  486. package/cjs/series/interface/series.d.ts +6 -1
  487. package/cjs/series/interface/series.js.map +1 -1
  488. package/cjs/series/line/animation.d.ts +1 -1
  489. package/cjs/series/line/animation.js.map +1 -1
  490. package/cjs/series/line/line.d.ts +1 -1
  491. package/cjs/series/line/line.js +6 -11
  492. package/cjs/series/line/line.js.map +1 -1
  493. package/cjs/series/link/link.d.ts +5 -2
  494. package/cjs/series/link/link.js +3 -3
  495. package/cjs/series/link/link.js.map +1 -1
  496. package/cjs/series/liquid/animation.d.ts +1 -1
  497. package/cjs/series/liquid/animation.js.map +1 -1
  498. package/cjs/series/liquid/liquid.d.ts +4 -1
  499. package/cjs/series/liquid/liquid.js +5 -5
  500. package/cjs/series/liquid/liquid.js.map +1 -1
  501. package/cjs/series/map/interface.d.ts +10 -0
  502. package/cjs/series/map/interface.js.map +1 -1
  503. package/cjs/series/map/map.js +12 -14
  504. package/cjs/series/map/map.js.map +1 -1
  505. package/cjs/series/mixin/line-mixin.d.ts +5 -5
  506. package/cjs/series/mixin/line-mixin.js +17 -25
  507. package/cjs/series/mixin/line-mixin.js.map +1 -1
  508. package/cjs/series/pictogram/pictogram.d.ts +13 -19
  509. package/cjs/series/pictogram/pictogram.js +18 -28
  510. package/cjs/series/pictogram/pictogram.js.map +1 -1
  511. package/cjs/series/pie/animation/animation.d.ts +4 -3
  512. package/cjs/series/pie/animation/animation.js.map +1 -1
  513. package/cjs/series/pie/animation/centerOffset.d.ts +1 -1
  514. package/cjs/series/pie/animation/centerOffset.js.map +1 -1
  515. package/cjs/series/pie/interface.d.ts +2 -2
  516. package/cjs/series/pie/interface.js.map +1 -1
  517. package/cjs/series/pie/pie.d.ts +8 -6
  518. package/cjs/series/pie/pie.js +14 -17
  519. package/cjs/series/pie/pie.js.map +1 -1
  520. package/cjs/series/polar/progress-like/animation.d.ts +1 -1
  521. package/cjs/series/polar/progress-like/animation.js.map +1 -1
  522. package/cjs/series/polar/progress-like/progress-like.d.ts +1 -2
  523. package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
  524. package/cjs/series/progress/circular/circular.d.ts +4 -1
  525. package/cjs/series/progress/circular/circular.js +5 -12
  526. package/cjs/series/progress/circular/circular.js.map +1 -1
  527. package/cjs/series/progress/linear/animation.d.ts +1 -1
  528. package/cjs/series/progress/linear/animation.js.map +1 -1
  529. package/cjs/series/progress/linear/linear.d.ts +4 -1
  530. package/cjs/series/progress/linear/linear.js +7 -13
  531. package/cjs/series/progress/linear/linear.js.map +1 -1
  532. package/cjs/series/radar/animation.d.ts +11 -9
  533. package/cjs/series/radar/animation.js.map +1 -1
  534. package/cjs/series/radar/radar.d.ts +2 -2
  535. package/cjs/series/radar/radar.js +6 -15
  536. package/cjs/series/radar/radar.js.map +1 -1
  537. package/cjs/series/range-area/range-area.js +1 -5
  538. package/cjs/series/range-area/range-area.js.map +1 -1
  539. package/cjs/series/range-column/animation.d.ts +1 -1
  540. package/cjs/series/range-column/animation.js.map +1 -1
  541. package/cjs/series/range-column/range-column.js +6 -8
  542. package/cjs/series/range-column/range-column.js.map +1 -1
  543. package/cjs/series/rose/animation.d.ts +1 -1
  544. package/cjs/series/rose/animation.js.map +1 -1
  545. package/cjs/series/rose/rose.js +1 -4
  546. package/cjs/series/rose/rose.js.map +1 -1
  547. package/cjs/series/sankey/animation.d.ts +1 -1
  548. package/cjs/series/sankey/animation.js.map +1 -1
  549. package/cjs/series/sankey/sankey.d.ts +11 -12
  550. package/cjs/series/sankey/sankey.js +85 -99
  551. package/cjs/series/sankey/sankey.js.map +1 -1
  552. package/cjs/series/sankey/tooltip-helper.d.ts +1 -1
  553. package/cjs/series/sankey/tooltip-helper.js.map +1 -1
  554. package/cjs/series/scatter/animation.d.ts +1 -1
  555. package/cjs/series/scatter/animation.js.map +1 -1
  556. package/cjs/series/scatter/scatter.js +7 -13
  557. package/cjs/series/scatter/scatter.js.map +1 -1
  558. package/cjs/series/sunburst/animation/enter.d.ts +1 -1
  559. package/cjs/series/sunburst/animation/enter.js +4 -4
  560. package/cjs/series/sunburst/animation/enter.js.map +1 -1
  561. package/cjs/series/sunburst/animation/exit.d.ts +1 -1
  562. package/cjs/series/sunburst/animation/exit.js +4 -4
  563. package/cjs/series/sunburst/animation/exit.js.map +1 -1
  564. package/cjs/series/sunburst/animation/preset.d.ts +1 -1
  565. package/cjs/series/sunburst/animation/preset.js.map +1 -1
  566. package/cjs/series/sunburst/animation/utils.d.ts +2 -2
  567. package/cjs/series/sunburst/animation/utils.js +9 -9
  568. package/cjs/series/sunburst/animation/utils.js.map +1 -1
  569. package/cjs/series/sunburst/sunburst.d.ts +1 -1
  570. package/cjs/series/sunburst/sunburst.js +3 -7
  571. package/cjs/series/sunburst/sunburst.js.map +1 -1
  572. package/cjs/series/treemap/animation.d.ts +1 -1
  573. package/cjs/series/treemap/animation.js.map +1 -1
  574. package/cjs/series/treemap/treemap.d.ts +1 -2
  575. package/cjs/series/treemap/treemap.js +37 -56
  576. package/cjs/series/treemap/treemap.js.map +1 -1
  577. package/cjs/series/venn/animation.d.ts +1 -1
  578. package/cjs/series/venn/animation.js.map +1 -1
  579. package/cjs/series/venn/venn.d.ts +2 -1
  580. package/cjs/series/venn/venn.js +24 -15
  581. package/cjs/series/venn/venn.js.map +1 -1
  582. package/cjs/series/waterfall/animation.d.ts +1 -1
  583. package/cjs/series/waterfall/animation.js.map +1 -1
  584. package/cjs/series/waterfall/waterfall.d.ts +2 -3
  585. package/cjs/series/waterfall/waterfall.js +7 -15
  586. package/cjs/series/waterfall/waterfall.js.map +1 -1
  587. package/cjs/series/word-cloud/animation.d.ts +1 -1
  588. package/cjs/series/word-cloud/animation.js +1 -1
  589. package/cjs/series/word-cloud/animation.js.map +1 -1
  590. package/cjs/series/word-cloud/base.d.ts +1 -1
  591. package/cjs/series/word-cloud/base.js +8 -11
  592. package/cjs/series/word-cloud/base.js.map +1 -1
  593. package/cjs/series/word-cloud/interface.d.ts +1 -1
  594. package/cjs/series/word-cloud/interface.js.map +1 -1
  595. package/cjs/series/word-cloud/word-cloud-3d.js +5 -5
  596. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  597. package/cjs/series/word-cloud/word-cloud.js +7 -3
  598. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  599. package/cjs/typings/common.d.ts +13 -0
  600. package/cjs/typings/common.js.map +1 -1
  601. package/cjs/typings/spec/common.d.ts +37 -36
  602. package/cjs/typings/spec/common.js.map +1 -1
  603. package/cjs/typings/visual.d.ts +2 -2
  604. package/cjs/typings/visual.js.map +1 -1
  605. package/cjs/util/array.d.ts +1 -0
  606. package/cjs/util/array.js +8 -2
  607. package/cjs/util/array.js.map +1 -1
  608. package/cjs/util/debug.js +1 -1
  609. package/cjs/util/debug.js.map +1 -1
  610. package/cjs/util/index.d.ts +1 -0
  611. package/cjs/util/index.js +2 -1
  612. package/cjs/util/index.js.map +1 -1
  613. package/cjs/util/mark.d.ts +5 -0
  614. package/cjs/util/mark.js +27 -0
  615. package/cjs/util/mark.js.map +1 -0
  616. package/cjs/util/math.d.ts +1 -1
  617. package/cjs/util/math.js.map +1 -1
  618. package/cjs/util/scale.d.ts +0 -1
  619. package/cjs/util/scale.js +2 -9
  620. package/cjs/util/scale.js.map +1 -1
  621. package/esm/animation/animate-manager.d.ts +2 -4
  622. package/esm/animation/animate-manager.js +6 -11
  623. package/esm/animation/animate-manager.js.map +1 -1
  624. package/esm/animation/config.js +9 -21
  625. package/esm/animation/config.js.map +1 -1
  626. package/esm/animation/interface.d.ts +86 -2
  627. package/esm/animation/interface.js.map +1 -1
  628. package/esm/animation/spec.d.ts +27 -3
  629. package/esm/animation/spec.js.map +1 -1
  630. package/esm/animation/utils.d.ts +3 -4
  631. package/esm/animation/utils.js +9 -8
  632. package/esm/animation/utils.js.map +1 -1
  633. package/esm/chart/area/area.js +3 -1
  634. package/esm/chart/area/area.js.map +1 -1
  635. package/esm/chart/bar/bar.js +3 -1
  636. package/esm/chart/bar/bar.js.map +1 -1
  637. package/esm/chart/base/base-chart-transformer.js +2 -2
  638. package/esm/chart/base/base-chart-transformer.js.map +1 -1
  639. package/esm/chart/base/base-chart.d.ts +10 -7
  640. package/esm/chart/base/base-chart.js +81 -65
  641. package/esm/chart/base/base-chart.js.map +1 -1
  642. package/esm/chart/box-plot/box-plot.js +3 -1
  643. package/esm/chart/box-plot/box-plot.js.map +1 -1
  644. package/esm/chart/funnel/funnel-transformer.js +1 -1
  645. package/esm/chart/funnel/funnel-transformer.js.map +1 -1
  646. package/esm/chart/funnel/util.d.ts +2 -0
  647. package/esm/chart/funnel/util.js +6 -0
  648. package/esm/chart/funnel/util.js.map +1 -0
  649. package/esm/chart/histogram/3d/histogram-3d.js +3 -1
  650. package/esm/chart/histogram/3d/histogram-3d.js.map +1 -1
  651. package/esm/chart/histogram/histogram.js +3 -1
  652. package/esm/chart/histogram/histogram.js.map +1 -1
  653. package/esm/chart/index.js +1 -2
  654. package/esm/chart/interface/chart.d.ts +3 -4
  655. package/esm/chart/interface/chart.js.map +1 -1
  656. package/esm/chart/interface/common.d.ts +2 -9
  657. package/esm/chart/interface/common.js.map +1 -1
  658. package/esm/chart/line/line.js +3 -1
  659. package/esm/chart/line/line.js.map +1 -1
  660. package/esm/chart/mosaic/mosaic.js +3 -1
  661. package/esm/chart/mosaic/mosaic.js.map +1 -1
  662. package/esm/chart/progress/circular/circular.js +3 -1
  663. package/esm/chart/progress/circular/circular.js.map +1 -1
  664. package/esm/chart/progress/linear/linear.js +3 -1
  665. package/esm/chart/progress/linear/linear.js.map +1 -1
  666. package/esm/chart/radar/radar.js +3 -1
  667. package/esm/chart/radar/radar.js.map +1 -1
  668. package/esm/chart/range-area/range-area.js +3 -1
  669. package/esm/chart/range-area/range-area.js.map +1 -1
  670. package/esm/chart/range-column/3d/range-column-3d.js +3 -1
  671. package/esm/chart/range-column/3d/range-column-3d.js.map +1 -1
  672. package/esm/chart/range-column/range-column.js +3 -1
  673. package/esm/chart/range-column/range-column.js.map +1 -1
  674. package/esm/chart/rose/rose.js +3 -1
  675. package/esm/chart/rose/rose.js.map +1 -1
  676. package/esm/chart/sankey/sankey.d.ts +1 -1
  677. package/esm/chart/sankey/sankey.js +21 -17
  678. package/esm/chart/sankey/sankey.js.map +1 -1
  679. package/esm/chart/scatter/scatter.js +3 -1
  680. package/esm/chart/scatter/scatter.js.map +1 -1
  681. package/esm/chart/sequence/sequence-transformer.js +2 -2
  682. package/esm/chart/sequence/sequence-transformer.js.map +1 -1
  683. package/esm/chart/util.js +1 -1
  684. package/esm/chart/util.js.map +1 -1
  685. package/esm/chart/waterfall/waterfall.js +3 -1
  686. package/esm/chart/waterfall/waterfall.js.map +1 -1
  687. package/esm/compile/compilable-base.d.ts +1 -1
  688. package/esm/compile/compilable-base.js +2 -2
  689. package/esm/compile/compilable-base.js.map +1 -1
  690. package/esm/compile/compiler.d.ts +35 -25
  691. package/esm/compile/compiler.js +190 -149
  692. package/esm/compile/compiler.js.map +1 -1
  693. package/esm/compile/data/compilable-data.d.ts +7 -7
  694. package/esm/compile/data/compilable-data.js +19 -22
  695. package/esm/compile/data/compilable-data.js.map +1 -1
  696. package/esm/compile/data/interface.d.ts +4 -1
  697. package/esm/compile/data/interface.js.map +1 -1
  698. package/esm/compile/grammar-item.d.ts +7 -13
  699. package/esm/compile/grammar-item.js +15 -34
  700. package/esm/compile/grammar-item.js.map +1 -1
  701. package/esm/compile/interface/compilable-item.d.ts +22 -28
  702. package/esm/compile/interface/compilable-item.js +1 -1
  703. package/esm/compile/interface/compilable-item.js.map +1 -1
  704. package/esm/compile/interface/compiler.d.ts +13 -4
  705. package/esm/compile/interface/compiler.js +6 -1
  706. package/esm/compile/interface/compiler.js.map +1 -1
  707. package/esm/compile/mark/index.d.ts +0 -1
  708. package/esm/compile/mark/index.js +0 -2
  709. package/esm/compile/mark/index.js.map +1 -1
  710. package/esm/compile/mark/interface.d.ts +42 -33
  711. package/esm/compile/mark/interface.js +2 -1
  712. package/esm/compile/mark/interface.js.map +1 -1
  713. package/esm/compile/mark/mark-state-manager.d.ts +11 -13
  714. package/esm/compile/mark/mark-state-manager.js +26 -32
  715. package/esm/compile/mark/mark-state-manager.js.map +1 -1
  716. package/esm/compile/mark/util.d.ts +1 -1
  717. package/esm/compile/mark/util.js.map +1 -1
  718. package/esm/compile/state-manager.d.ts +11 -0
  719. package/esm/compile/state-manager.js +23 -0
  720. package/esm/compile/state-manager.js.map +1 -0
  721. package/esm/compile/util.d.ts +14 -0
  722. package/esm/compile/util.js +104 -0
  723. package/esm/compile/util.js.map +1 -1
  724. package/esm/component/axis/base-axis.d.ts +5 -3
  725. package/esm/component/axis/base-axis.js +19 -16
  726. package/esm/component/axis/base-axis.js.map +1 -1
  727. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  728. package/esm/component/axis/cartesian/axis.js +18 -23
  729. package/esm/component/axis/cartesian/axis.js.map +1 -1
  730. package/esm/component/axis/cartesian/band-axis.js +8 -4
  731. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  732. package/esm/component/axis/cartesian/linear-axis.js +6 -4
  733. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  734. package/esm/component/axis/cartesian/log-axis.js +6 -4
  735. package/esm/component/axis/cartesian/log-axis.js.map +1 -1
  736. package/esm/component/axis/cartesian/symlog-axis.js +6 -4
  737. package/esm/component/axis/cartesian/symlog-axis.js.map +1 -1
  738. package/esm/component/axis/cartesian/time-axis.d.ts +1 -0
  739. package/esm/component/axis/cartesian/time-axis.js +10 -4
  740. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  741. package/esm/component/axis/interface/common.d.ts +8 -0
  742. package/esm/component/axis/interface/common.js +11 -1
  743. package/esm/component/axis/interface/common.js.map +1 -1
  744. package/esm/component/axis/polar/axis.js +2 -2
  745. package/esm/component/axis/polar/axis.js.map +1 -1
  746. package/esm/component/axis/polar/band-axis.js +7 -4
  747. package/esm/component/axis/polar/band-axis.js.map +1 -1
  748. package/esm/component/axis/polar/linear-axis.js +7 -4
  749. package/esm/component/axis/polar/linear-axis.js.map +1 -1
  750. package/esm/component/base/base-component.d.ts +1 -2
  751. package/esm/component/base/base-component.js.map +1 -1
  752. package/esm/component/brush/brush.d.ts +12 -10
  753. package/esm/component/brush/brush.js +25 -28
  754. package/esm/component/brush/brush.js.map +1 -1
  755. package/esm/component/crosshair/base.d.ts +2 -2
  756. package/esm/component/crosshair/base.js +2 -2
  757. package/esm/component/crosshair/base.js.map +1 -1
  758. package/esm/component/custom-mark/custom-mark.d.ts +0 -1
  759. package/esm/component/custom-mark/custom-mark.js +3 -25
  760. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  761. package/esm/component/data-zoom/data-filter-base-component.d.ts +2 -2
  762. package/esm/component/data-zoom/data-filter-base-component.js +4 -4
  763. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  764. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  765. package/esm/component/data-zoom/data-zoom/data-zoom.js +2 -2
  766. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  767. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  768. package/esm/component/data-zoom/scroll-bar/scroll-bar.js +2 -2
  769. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  770. package/esm/component/geo/geo-coordinate.d.ts +2 -2
  771. package/esm/component/geo/geo-coordinate.js +4 -4
  772. package/esm/component/geo/geo-coordinate.js.map +1 -1
  773. package/esm/component/geo/interface.d.ts +1 -1
  774. package/esm/component/geo/interface.js.map +1 -1
  775. package/esm/component/indicator/indicator.js +14 -13
  776. package/esm/component/indicator/indicator.js.map +1 -1
  777. package/esm/component/label/base-label.d.ts +5 -0
  778. package/esm/component/label/base-label.js +49 -1
  779. package/esm/component/label/base-label.js.map +1 -1
  780. package/esm/component/label/interface.d.ts +2 -3
  781. package/esm/component/label/interface.js.map +1 -1
  782. package/esm/component/label/label.d.ts +3 -3
  783. package/esm/component/label/label.js +64 -52
  784. package/esm/component/label/label.js.map +1 -1
  785. package/esm/component/label/total-label.js +41 -36
  786. package/esm/component/label/total-label.js.map +1 -1
  787. package/esm/component/label/util.d.ts +9 -10
  788. package/esm/component/label/util.js +13 -13
  789. package/esm/component/label/util.js.map +1 -1
  790. package/esm/component/legend/util.d.ts +3 -3
  791. package/esm/component/map-label/component.js +15 -13
  792. package/esm/component/map-label/component.js.map +1 -1
  793. package/esm/component/marker/base-marker.d.ts +1 -1
  794. package/esm/component/marker/base-marker.js +2 -2
  795. package/esm/component/marker/base-marker.js.map +1 -1
  796. package/esm/component/tooltip/processor/interface.d.ts +1 -1
  797. package/esm/component/tooltip/processor/interface.js.map +1 -1
  798. package/esm/component/tooltip/processor/mark-tooltip.js +4 -3
  799. package/esm/component/tooltip/processor/mark-tooltip.js.map +1 -1
  800. package/esm/component/tooltip/processor/util.d.ts +1 -1
  801. package/esm/component/tooltip/tooltip.d.ts +2 -3
  802. package/esm/component/tooltip/tooltip.js +1 -2
  803. package/esm/component/tooltip/tooltip.js.map +1 -1
  804. package/esm/component/tooltip/utils/show-tooltip.js +2 -4
  805. package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
  806. package/esm/constant/data.d.ts +1 -0
  807. package/esm/constant/data.js +2 -0
  808. package/esm/constant/data.js.map +1 -1
  809. package/esm/constant/event.d.ts +53 -2
  810. package/esm/constant/event.js +30 -2
  811. package/esm/constant/event.js.map +1 -1
  812. package/esm/core/factory.d.ts +28 -3
  813. package/esm/core/factory.js +33 -6
  814. package/esm/core/factory.js.map +1 -1
  815. package/esm/core/index.d.ts +2 -1
  816. package/esm/core/index.js +1 -1
  817. package/esm/core/index.js.map +1 -1
  818. package/esm/core/interface.d.ts +13 -4
  819. package/esm/core/interface.js.map +1 -1
  820. package/esm/core/vchart.d.ts +6 -6
  821. package/esm/core/vchart.js +40 -62
  822. package/esm/core/vchart.js.map +1 -1
  823. package/esm/data/transforms/dimension-data.js.map +1 -1
  824. package/esm/data/transforms/obj-flat.js +16 -4
  825. package/esm/data/transforms/obj-flat.js.map +1 -1
  826. package/esm/data/transforms/treemap.d.ts +10 -0
  827. package/esm/data/transforms/treemap.js +18 -0
  828. package/esm/data/transforms/treemap.js.map +1 -0
  829. package/esm/data/transforms/venn.d.ts +10 -0
  830. package/esm/data/transforms/venn.js +10 -0
  831. package/esm/data/transforms/venn.js.map +1 -0
  832. package/esm/event/event-dispatcher.js +19 -23
  833. package/esm/event/event-dispatcher.js.map +1 -1
  834. package/esm/event/events/base.d.ts +1 -2
  835. package/esm/event/events/base.js.map +1 -1
  836. package/esm/event/interface.d.ts +6 -9
  837. package/esm/event/interface.js.map +1 -1
  838. package/esm/index-harmony-simple.d.ts +2 -1
  839. package/esm/index-harmony-simple.js +4 -2
  840. package/esm/index-harmony-simple.js.map +1 -1
  841. package/esm/index-harmony.js +4 -2
  842. package/esm/index-harmony.js.map +1 -1
  843. package/esm/index-lark.js +3 -1
  844. package/esm/index-lark.js.map +1 -1
  845. package/esm/index-wx-simple.js +3 -1
  846. package/esm/index-wx-simple.js.map +1 -1
  847. package/esm/index-wx.js +3 -1
  848. package/esm/index-wx.js.map +1 -1
  849. package/esm/index.d.ts +0 -3
  850. package/esm/index.js +0 -6
  851. package/esm/index.js.map +1 -1
  852. package/esm/interaction/config.d.ts +13 -0
  853. package/esm/interaction/config.js +15 -0
  854. package/esm/interaction/config.js.map +1 -1
  855. package/esm/interaction/index.d.ts +9 -1
  856. package/esm/interaction/index.js +17 -1
  857. package/esm/interaction/index.js.map +1 -1
  858. package/esm/interaction/interaction.d.ts +17 -25
  859. package/esm/interaction/interaction.js +84 -88
  860. package/esm/interaction/interaction.js.map +1 -1
  861. package/esm/interaction/interface/common.d.ts +22 -0
  862. package/esm/interaction/interface/common.js +2 -0
  863. package/esm/interaction/interface/common.js.map +1 -0
  864. package/esm/interaction/interface/spec.d.ts +53 -0
  865. package/esm/interaction/interface/spec.js +2 -0
  866. package/esm/interaction/interface/spec.js.map +1 -0
  867. package/esm/interaction/interface/trigger.d.ts +87 -0
  868. package/esm/interaction/interface/trigger.js +2 -0
  869. package/esm/interaction/interface/trigger.js.map +1 -0
  870. package/esm/interaction/triggers/base.d.ts +28 -0
  871. package/esm/interaction/triggers/base.js +73 -0
  872. package/esm/interaction/triggers/base.js.map +1 -0
  873. package/esm/interaction/triggers/dimension-hover.d.ts +22 -0
  874. package/esm/interaction/triggers/dimension-hover.js +80 -0
  875. package/esm/interaction/triggers/dimension-hover.js.map +1 -0
  876. package/esm/interaction/triggers/element-active-by-legend.d.ts +21 -0
  877. package/esm/interaction/triggers/element-active-by-legend.js +68 -0
  878. package/esm/interaction/triggers/element-active-by-legend.js.map +1 -0
  879. package/esm/interaction/triggers/element-active.d.ts +20 -0
  880. package/esm/interaction/triggers/element-active.js +50 -0
  881. package/esm/interaction/triggers/element-active.js.map +1 -0
  882. package/esm/interaction/triggers/element-highlight-by-graphic-name.d.ts +13 -0
  883. package/esm/interaction/triggers/element-highlight-by-graphic-name.js +51 -0
  884. package/esm/interaction/triggers/element-highlight-by-graphic-name.js.map +1 -0
  885. package/esm/interaction/triggers/element-highlight-by-group.d.ts +23 -0
  886. package/esm/interaction/triggers/element-highlight-by-group.js +73 -0
  887. package/esm/interaction/triggers/element-highlight-by-group.js.map +1 -0
  888. package/esm/interaction/triggers/element-highlight-by-key.d.ts +9 -0
  889. package/esm/interaction/triggers/element-highlight-by-key.js +22 -0
  890. package/esm/interaction/triggers/element-highlight-by-key.js.map +1 -0
  891. package/esm/interaction/triggers/element-highlight-by-legend.d.ts +22 -0
  892. package/esm/interaction/triggers/element-highlight-by-legend.js +73 -0
  893. package/esm/interaction/triggers/element-highlight-by-legend.js.map +1 -0
  894. package/esm/interaction/triggers/element-highlight-by-name.d.ts +24 -0
  895. package/esm/interaction/triggers/element-highlight-by-name.js +82 -0
  896. package/esm/interaction/triggers/element-highlight-by-name.js.map +1 -0
  897. package/esm/interaction/triggers/element-highlight.d.ts +25 -0
  898. package/esm/interaction/triggers/element-highlight.js +75 -0
  899. package/esm/interaction/triggers/element-highlight.js.map +1 -0
  900. package/esm/interaction/triggers/element-select-by-graphic-name.d.ts +8 -0
  901. package/esm/interaction/triggers/element-select-by-graphic-name.js +27 -0
  902. package/esm/interaction/triggers/element-select-by-graphic-name.js.map +1 -0
  903. package/esm/interaction/triggers/element-select.d.ts +24 -0
  904. package/esm/interaction/triggers/element-select.js +81 -0
  905. package/esm/interaction/triggers/element-select.js.map +1 -0
  906. package/esm/interaction/triggers/enum.d.ts +8 -0
  907. package/esm/interaction/triggers/enum.js +9 -0
  908. package/esm/interaction/triggers/enum.js.map +1 -0
  909. package/esm/interaction/triggers/util.d.ts +12 -0
  910. package/esm/interaction/triggers/util.js +52 -0
  911. package/esm/interaction/triggers/util.js.map +1 -0
  912. package/esm/interaction/zoom/zoomable.js +1 -1
  913. package/esm/interaction/zoom/zoomable.js.map +1 -1
  914. package/esm/layout/interface.d.ts +2 -2
  915. package/esm/layout/interface.js.map +1 -1
  916. package/esm/layout/layout-item.d.ts +2 -3
  917. package/esm/layout/layout-item.js +2 -2
  918. package/esm/layout/layout-item.js.map +1 -1
  919. package/esm/mark/arc-3d.js +6 -3
  920. package/esm/mark/arc-3d.js.map +1 -1
  921. package/esm/mark/arc.d.ts +2 -2
  922. package/esm/mark/arc.js +12 -7
  923. package/esm/mark/arc.js.map +1 -1
  924. package/esm/mark/area.d.ts +2 -0
  925. package/esm/mark/area.js +16 -5
  926. package/esm/mark/area.js.map +1 -1
  927. package/esm/mark/base/base-line.d.ts +16 -2
  928. package/esm/mark/base/base-line.js +65 -9
  929. package/esm/mark/base/base-line.js.map +1 -1
  930. package/esm/mark/base/base-mark.d.ts +131 -13
  931. package/esm/mark/base/base-mark.js +441 -43
  932. package/esm/mark/base/base-mark.js.map +1 -1
  933. package/esm/mark/box-plot.d.ts +11 -5
  934. package/esm/mark/box-plot.js +220 -11
  935. package/esm/mark/box-plot.js.map +1 -1
  936. package/esm/mark/cell.d.ts +5 -2
  937. package/esm/mark/cell.js +22 -4
  938. package/esm/mark/cell.js.map +1 -1
  939. package/esm/mark/component.d.ts +11 -3
  940. package/esm/mark/component.js +39 -8
  941. package/esm/mark/component.js.map +1 -1
  942. package/esm/mark/glyph.d.ts +29 -0
  943. package/esm/mark/glyph.js +72 -0
  944. package/esm/mark/glyph.js.map +1 -0
  945. package/esm/mark/group.d.ts +10 -6
  946. package/esm/mark/group.js +35 -17
  947. package/esm/mark/group.js.map +1 -1
  948. package/esm/mark/image.js +5 -2
  949. package/esm/mark/image.js.map +1 -1
  950. package/esm/mark/index.d.ts +3 -1
  951. package/esm/mark/index.js +5 -1
  952. package/esm/mark/index.js.map +1 -1
  953. package/esm/mark/interface/common.d.ts +61 -9
  954. package/esm/mark/interface/common.js.map +1 -1
  955. package/esm/mark/interface/enum.d.ts +6 -0
  956. package/esm/mark/interface/enum.js +7 -0
  957. package/esm/mark/interface/enum.js.map +1 -0
  958. package/esm/mark/interface/index.d.ts +1 -0
  959. package/esm/mark/interface/index.js +2 -0
  960. package/esm/mark/interface/index.js.map +1 -1
  961. package/esm/mark/interface/mark.d.ts +18 -1
  962. package/esm/mark/interface/mark.js.map +1 -1
  963. package/esm/mark/interface/type.d.ts +1 -0
  964. package/esm/mark/interface/type.js +2 -2
  965. package/esm/mark/interface/type.js.map +1 -1
  966. package/esm/mark/label.d.ts +4 -3
  967. package/esm/mark/label.js +3 -4
  968. package/esm/mark/label.js.map +1 -1
  969. package/esm/mark/line.js +9 -3
  970. package/esm/mark/line.js.map +1 -1
  971. package/esm/mark/link-path.d.ts +35 -5
  972. package/esm/mark/link-path.js +65 -11
  973. package/esm/mark/link-path.js.map +1 -1
  974. package/esm/mark/liquid.d.ts +47 -5
  975. package/esm/mark/liquid.js +64 -11
  976. package/esm/mark/liquid.js.map +1 -1
  977. package/esm/mark/path.js +5 -2
  978. package/esm/mark/path.js.map +1 -1
  979. package/esm/mark/polygon/polygon.js +6 -3
  980. package/esm/mark/polygon/polygon.js.map +1 -1
  981. package/esm/mark/polygon/pyramid-3d.js +6 -4
  982. package/esm/mark/polygon/pyramid-3d.js.map +1 -1
  983. package/esm/mark/rect-3d.js +6 -3
  984. package/esm/mark/rect-3d.js.map +1 -1
  985. package/esm/mark/rect.js +8 -3
  986. package/esm/mark/rect.js.map +1 -1
  987. package/esm/mark/ripple.d.ts +39 -4
  988. package/esm/mark/ripple.js +45 -10
  989. package/esm/mark/ripple.js.map +1 -1
  990. package/esm/mark/rule.d.ts +3 -0
  991. package/esm/mark/rule.js +30 -2
  992. package/esm/mark/rule.js.map +1 -1
  993. package/esm/mark/symbol.d.ts +4 -4
  994. package/esm/mark/symbol.js +18 -8
  995. package/esm/mark/symbol.js.map +1 -1
  996. package/esm/mark/text.d.ts +4 -2
  997. package/esm/mark/text.js +17 -8
  998. package/esm/mark/text.js.map +1 -1
  999. package/esm/mark/transform/data-sampling.d.ts +10 -0
  1000. package/esm/mark/transform/data-sampling.js +115 -0
  1001. package/esm/mark/transform/data-sampling.js.map +1 -0
  1002. package/esm/mark/transform/filter.d.ts +1 -0
  1003. package/esm/mark/transform/filter.js +8 -0
  1004. package/esm/mark/transform/filter.js.map +1 -0
  1005. package/esm/mark/transform/map.d.ts +1 -0
  1006. package/esm/mark/transform/map.js +10 -0
  1007. package/esm/mark/transform/map.js.map +1 -0
  1008. package/esm/mark/transform/symbol-overlap.d.ts +14 -0
  1009. package/esm/mark/transform/symbol-overlap.js +87 -0
  1010. package/esm/mark/transform/symbol-overlap.js.map +1 -0
  1011. package/esm/mark/utils/common.d.ts +4 -0
  1012. package/esm/mark/utils/common.js +37 -0
  1013. package/esm/mark/utils/common.js.map +1 -1
  1014. package/esm/mark/utils/glyph.d.ts +2 -0
  1015. package/esm/mark/utils/glyph.js +5 -0
  1016. package/esm/mark/utils/glyph.js.map +1 -0
  1017. package/esm/mark/utils/index.d.ts +2 -0
  1018. package/esm/mark/utils/index.js +4 -0
  1019. package/esm/mark/utils/index.js.map +1 -1
  1020. package/esm/mark/utils/line.d.ts +3 -0
  1021. package/esm/mark/utils/line.js +20 -0
  1022. package/esm/mark/utils/line.js.map +1 -0
  1023. package/esm/model/base-model.d.ts +8 -8
  1024. package/esm/model/base-model.js +20 -9
  1025. package/esm/model/base-model.js.map +1 -1
  1026. package/esm/model/interface.d.ts +4 -8
  1027. package/esm/model/interface.js.map +1 -1
  1028. package/esm/model/layout-model.d.ts +2 -2
  1029. package/esm/model/layout-model.js +4 -4
  1030. package/esm/model/layout-model.js.map +1 -1
  1031. package/esm/plugin/components/tooltip-handler/base.d.ts +2 -2
  1032. package/esm/plugin/components/tooltip-handler/base.js +1 -1
  1033. package/esm/plugin/components/tooltip-handler/base.js.map +1 -1
  1034. package/esm/plugin/other.d.ts +3 -3
  1035. package/esm/plugin/other.js +13 -5
  1036. package/esm/plugin/other.js.map +1 -1
  1037. package/esm/region/interface.d.ts +0 -2
  1038. package/esm/region/interface.js.map +1 -1
  1039. package/esm/region/region.d.ts +3 -9
  1040. package/esm/region/region.js +11 -36
  1041. package/esm/region/region.js.map +1 -1
  1042. package/esm/series/area/animation.d.ts +1 -1
  1043. package/esm/series/area/animation.js.map +1 -1
  1044. package/esm/series/area/area.d.ts +1 -1
  1045. package/esm/series/area/area.js +13 -18
  1046. package/esm/series/area/area.js.map +1 -1
  1047. package/esm/series/bar/animation.d.ts +1 -1
  1048. package/esm/series/bar/animation.js.map +1 -1
  1049. package/esm/series/bar/bar.d.ts +3 -3
  1050. package/esm/series/bar/bar.js +14 -28
  1051. package/esm/series/bar/bar.js.map +1 -1
  1052. package/esm/series/base/base-series.d.ts +26 -42
  1053. package/esm/series/base/base-series.js +61 -71
  1054. package/esm/series/base/base-series.js.map +1 -1
  1055. package/esm/series/base/tooltip-helper.d.ts +1 -2
  1056. package/esm/series/base/tooltip-helper.js.map +1 -1
  1057. package/esm/series/box-plot/box-plot.d.ts +3 -3
  1058. package/esm/series/box-plot/box-plot.js +13 -16
  1059. package/esm/series/box-plot/box-plot.js.map +1 -1
  1060. package/esm/series/cartesian/cartesian.d.ts +1 -1
  1061. package/esm/series/circle-packing/animation.d.ts +1 -1
  1062. package/esm/series/circle-packing/animation.js.map +1 -1
  1063. package/esm/series/circle-packing/circle-packing.d.ts +1 -1
  1064. package/esm/series/circle-packing/circle-packing.js +3 -5
  1065. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  1066. package/esm/series/correlation/animation.d.ts +1 -1
  1067. package/esm/series/correlation/animation.js.map +1 -1
  1068. package/esm/series/correlation/correlation.d.ts +3 -4
  1069. package/esm/series/correlation/correlation.js +7 -14
  1070. package/esm/series/correlation/correlation.js.map +1 -1
  1071. package/esm/series/dot/dot.d.ts +2 -2
  1072. package/esm/series/dot/dot.js +4 -3
  1073. package/esm/series/dot/dot.js.map +1 -1
  1074. package/esm/series/funnel/3d/funnel-3d.js +3 -4
  1075. package/esm/series/funnel/3d/funnel-3d.js.map +1 -1
  1076. package/esm/series/funnel/funnel.d.ts +3 -2
  1077. package/esm/series/funnel/funnel.js +60 -46
  1078. package/esm/series/funnel/funnel.js.map +1 -1
  1079. package/esm/series/funnel/interface.d.ts +0 -1
  1080. package/esm/series/funnel/interface.js.map +1 -1
  1081. package/esm/series/funnel/tooltip-helper.d.ts +2 -4
  1082. package/esm/series/funnel/tooltip-helper.js +5 -6
  1083. package/esm/series/funnel/tooltip-helper.js.map +1 -1
  1084. package/esm/series/gauge/animation.d.ts +1 -1
  1085. package/esm/series/gauge/animation.js.map +1 -1
  1086. package/esm/series/gauge/gauge-pointer.d.ts +4 -1
  1087. package/esm/series/gauge/gauge-pointer.js +2 -2
  1088. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  1089. package/esm/series/gauge/gauge.d.ts +2 -2
  1090. package/esm/series/gauge/gauge.js +2 -2
  1091. package/esm/series/gauge/gauge.js.map +1 -1
  1092. package/esm/series/geo/geo.d.ts +2 -2
  1093. package/esm/series/geo/geo.js.map +1 -1
  1094. package/esm/series/heatmap/animation.d.ts +1 -1
  1095. package/esm/series/heatmap/animation.js.map +1 -1
  1096. package/esm/series/heatmap/heatmap.d.ts +4 -1
  1097. package/esm/series/heatmap/heatmap.js +5 -18
  1098. package/esm/series/heatmap/heatmap.js.map +1 -1
  1099. package/esm/series/interface/common.d.ts +1 -4
  1100. package/esm/series/interface/common.js.map +1 -1
  1101. package/esm/series/interface/series.d.ts +6 -1
  1102. package/esm/series/interface/series.js.map +1 -1
  1103. package/esm/series/line/animation.d.ts +1 -1
  1104. package/esm/series/line/animation.js.map +1 -1
  1105. package/esm/series/line/line.d.ts +1 -1
  1106. package/esm/series/line/line.js +10 -13
  1107. package/esm/series/line/line.js.map +1 -1
  1108. package/esm/series/link/link.d.ts +5 -2
  1109. package/esm/series/link/link.js +3 -3
  1110. package/esm/series/link/link.js.map +1 -1
  1111. package/esm/series/liquid/animation.d.ts +1 -1
  1112. package/esm/series/liquid/animation.js.map +1 -1
  1113. package/esm/series/liquid/liquid.d.ts +4 -1
  1114. package/esm/series/liquid/liquid.js +5 -5
  1115. package/esm/series/liquid/liquid.js.map +1 -1
  1116. package/esm/series/map/interface.d.ts +10 -0
  1117. package/esm/series/map/interface.js.map +1 -1
  1118. package/esm/series/map/map.js +13 -15
  1119. package/esm/series/map/map.js.map +1 -1
  1120. package/esm/series/mixin/line-mixin.d.ts +5 -5
  1121. package/esm/series/mixin/line-mixin.js +17 -25
  1122. package/esm/series/mixin/line-mixin.js.map +1 -1
  1123. package/esm/series/pictogram/pictogram.d.ts +13 -19
  1124. package/esm/series/pictogram/pictogram.js +22 -31
  1125. package/esm/series/pictogram/pictogram.js.map +1 -1
  1126. package/esm/series/pie/animation/animation.d.ts +4 -3
  1127. package/esm/series/pie/animation/animation.js.map +1 -1
  1128. package/esm/series/pie/animation/centerOffset.d.ts +1 -1
  1129. package/esm/series/pie/animation/centerOffset.js.map +1 -1
  1130. package/esm/series/pie/interface.d.ts +2 -2
  1131. package/esm/series/pie/interface.js.map +1 -1
  1132. package/esm/series/pie/pie.d.ts +8 -6
  1133. package/esm/series/pie/pie.js +15 -18
  1134. package/esm/series/pie/pie.js.map +1 -1
  1135. package/esm/series/polar/progress-like/animation.d.ts +1 -1
  1136. package/esm/series/polar/progress-like/animation.js.map +1 -1
  1137. package/esm/series/polar/progress-like/progress-like.d.ts +1 -2
  1138. package/esm/series/polar/progress-like/progress-like.js.map +1 -1
  1139. package/esm/series/progress/circular/circular.d.ts +4 -1
  1140. package/esm/series/progress/circular/circular.js +5 -12
  1141. package/esm/series/progress/circular/circular.js.map +1 -1
  1142. package/esm/series/progress/linear/animation.d.ts +1 -1
  1143. package/esm/series/progress/linear/animation.js.map +1 -1
  1144. package/esm/series/progress/linear/linear.d.ts +4 -1
  1145. package/esm/series/progress/linear/linear.js +8 -14
  1146. package/esm/series/progress/linear/linear.js.map +1 -1
  1147. package/esm/series/radar/animation.d.ts +11 -9
  1148. package/esm/series/radar/animation.js.map +1 -1
  1149. package/esm/series/radar/radar.d.ts +2 -2
  1150. package/esm/series/radar/radar.js +6 -15
  1151. package/esm/series/radar/radar.js.map +1 -1
  1152. package/esm/series/range-area/range-area.js +1 -5
  1153. package/esm/series/range-area/range-area.js.map +1 -1
  1154. package/esm/series/range-column/animation.d.ts +1 -1
  1155. package/esm/series/range-column/animation.js.map +1 -1
  1156. package/esm/series/range-column/range-column.js +6 -8
  1157. package/esm/series/range-column/range-column.js.map +1 -1
  1158. package/esm/series/rose/animation.d.ts +1 -1
  1159. package/esm/series/rose/animation.js.map +1 -1
  1160. package/esm/series/rose/rose.js +1 -4
  1161. package/esm/series/rose/rose.js.map +1 -1
  1162. package/esm/series/sankey/animation.d.ts +1 -1
  1163. package/esm/series/sankey/animation.js.map +1 -1
  1164. package/esm/series/sankey/sankey.d.ts +11 -12
  1165. package/esm/series/sankey/sankey.js +87 -100
  1166. package/esm/series/sankey/sankey.js.map +1 -1
  1167. package/esm/series/sankey/tooltip-helper.d.ts +1 -1
  1168. package/esm/series/sankey/tooltip-helper.js.map +1 -1
  1169. package/esm/series/scatter/animation.d.ts +1 -1
  1170. package/esm/series/scatter/animation.js.map +1 -1
  1171. package/esm/series/scatter/scatter.js +7 -13
  1172. package/esm/series/scatter/scatter.js.map +1 -1
  1173. package/esm/series/sunburst/animation/enter.d.ts +1 -1
  1174. package/esm/series/sunburst/animation/enter.js +4 -4
  1175. package/esm/series/sunburst/animation/enter.js.map +1 -1
  1176. package/esm/series/sunburst/animation/exit.d.ts +1 -1
  1177. package/esm/series/sunburst/animation/exit.js +4 -4
  1178. package/esm/series/sunburst/animation/exit.js.map +1 -1
  1179. package/esm/series/sunburst/animation/preset.d.ts +1 -1
  1180. package/esm/series/sunburst/animation/preset.js.map +1 -1
  1181. package/esm/series/sunburst/animation/utils.d.ts +2 -2
  1182. package/esm/series/sunburst/animation/utils.js +9 -9
  1183. package/esm/series/sunburst/animation/utils.js.map +1 -1
  1184. package/esm/series/sunburst/sunburst.d.ts +1 -1
  1185. package/esm/series/sunburst/sunburst.js +3 -7
  1186. package/esm/series/sunburst/sunburst.js.map +1 -1
  1187. package/esm/series/treemap/animation.d.ts +1 -1
  1188. package/esm/series/treemap/animation.js.map +1 -1
  1189. package/esm/series/treemap/treemap.d.ts +1 -2
  1190. package/esm/series/treemap/treemap.js +43 -60
  1191. package/esm/series/treemap/treemap.js.map +1 -1
  1192. package/esm/series/venn/animation.d.ts +1 -1
  1193. package/esm/series/venn/animation.js.map +1 -1
  1194. package/esm/series/venn/venn.d.ts +2 -1
  1195. package/esm/series/venn/venn.js +28 -14
  1196. package/esm/series/venn/venn.js.map +1 -1
  1197. package/esm/series/waterfall/animation.d.ts +1 -1
  1198. package/esm/series/waterfall/animation.js.map +1 -1
  1199. package/esm/series/waterfall/waterfall.d.ts +2 -3
  1200. package/esm/series/waterfall/waterfall.js +9 -17
  1201. package/esm/series/waterfall/waterfall.js.map +1 -1
  1202. package/esm/series/word-cloud/animation.d.ts +1 -1
  1203. package/esm/series/word-cloud/animation.js +1 -1
  1204. package/esm/series/word-cloud/animation.js.map +1 -1
  1205. package/esm/series/word-cloud/base.d.ts +1 -1
  1206. package/esm/series/word-cloud/base.js +8 -11
  1207. package/esm/series/word-cloud/base.js.map +1 -1
  1208. package/esm/series/word-cloud/interface.d.ts +1 -1
  1209. package/esm/series/word-cloud/interface.js.map +1 -1
  1210. package/esm/series/word-cloud/word-cloud-3d.js +3 -9
  1211. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  1212. package/esm/series/word-cloud/word-cloud.js +10 -6
  1213. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  1214. package/esm/typings/common.d.ts +13 -0
  1215. package/esm/typings/common.js.map +1 -1
  1216. package/esm/typings/spec/common.d.ts +37 -36
  1217. package/esm/typings/spec/common.js.map +1 -1
  1218. package/esm/typings/visual.d.ts +2 -2
  1219. package/esm/typings/visual.js.map +1 -1
  1220. package/esm/util/array.d.ts +1 -0
  1221. package/esm/util/array.js +5 -0
  1222. package/esm/util/array.js.map +1 -1
  1223. package/esm/util/debug.js +1 -1
  1224. package/esm/util/debug.js.map +1 -1
  1225. package/esm/util/index.d.ts +1 -0
  1226. package/esm/util/index.js +2 -0
  1227. package/esm/util/index.js.map +1 -1
  1228. package/esm/util/mark.d.ts +5 -0
  1229. package/esm/util/mark.js +16 -0
  1230. package/esm/util/mark.js.map +1 -0
  1231. package/esm/util/math.d.ts +1 -1
  1232. package/esm/util/math.js.map +1 -1
  1233. package/esm/util/scale.d.ts +0 -1
  1234. package/esm/util/scale.js +0 -6
  1235. package/esm/util/scale.js.map +1 -1
  1236. package/package.json +15 -15
  1237. package/cjs/compile/mark/compilable-mark.d.ts +0 -87
  1238. package/cjs/compile/mark/compilable-mark.js +0 -261
  1239. package/cjs/compile/mark/compilable-mark.js.map +0 -1
  1240. package/cjs/compile/mark/mark-data.d.ts +0 -9
  1241. package/cjs/compile/mark/mark-data.js +0 -28
  1242. package/cjs/compile/mark/mark-data.js.map +0 -1
  1243. package/cjs/compile/signal/compilable-signal.d.ts +0 -21
  1244. package/cjs/compile/signal/compilable-signal.js +0 -42
  1245. package/cjs/compile/signal/compilable-signal.js.map +0 -1
  1246. package/cjs/compile/signal/index.d.ts +0 -4
  1247. package/cjs/compile/signal/index.js +0 -22
  1248. package/cjs/compile/signal/index.js.map +0 -1
  1249. package/cjs/compile/signal/interface.d.ts +0 -12
  1250. package/cjs/compile/signal/interface.js.map +0 -1
  1251. package/cjs/compile/signal/signal-manager.d.ts +0 -11
  1252. package/cjs/compile/signal/signal-manager.js +0 -36
  1253. package/cjs/compile/signal/signal-manager.js.map +0 -1
  1254. package/cjs/compile/signal/state-manager.d.ts +0 -12
  1255. package/cjs/compile/signal/state-manager.js +0 -37
  1256. package/cjs/compile/signal/state-manager.js.map +0 -1
  1257. package/cjs/interaction/dimension-trigger.d.ts +0 -27
  1258. package/cjs/interaction/dimension-trigger.js +0 -73
  1259. package/cjs/interaction/dimension-trigger.js.map +0 -1
  1260. package/cjs/interaction/interface.d.ts +0 -73
  1261. package/cjs/interaction/interface.js.map +0 -1
  1262. package/cjs/series/base/series-data.d.ts +0 -5
  1263. package/cjs/series/base/series-data.js +0 -22
  1264. package/cjs/series/base/series-data.js.map +0 -1
  1265. package/cjs/vrender-tools.d.ts +0 -1
  1266. package/cjs/vrender-tools.js +0 -110
  1267. package/cjs/vrender-tools.js.map +0 -1
  1268. package/esm/compile/mark/compilable-mark.d.ts +0 -87
  1269. package/esm/compile/mark/compilable-mark.js +0 -274
  1270. package/esm/compile/mark/compilable-mark.js.map +0 -1
  1271. package/esm/compile/mark/mark-data.d.ts +0 -9
  1272. package/esm/compile/mark/mark-data.js +0 -24
  1273. package/esm/compile/mark/mark-data.js.map +0 -1
  1274. package/esm/compile/signal/compilable-signal.d.ts +0 -21
  1275. package/esm/compile/signal/compilable-signal.js +0 -38
  1276. package/esm/compile/signal/compilable-signal.js.map +0 -1
  1277. package/esm/compile/signal/index.d.ts +0 -4
  1278. package/esm/compile/signal/index.js +0 -8
  1279. package/esm/compile/signal/index.js.map +0 -1
  1280. package/esm/compile/signal/interface.d.ts +0 -12
  1281. package/esm/compile/signal/interface.js +0 -2
  1282. package/esm/compile/signal/interface.js.map +0 -1
  1283. package/esm/compile/signal/signal-manager.d.ts +0 -11
  1284. package/esm/compile/signal/signal-manager.js +0 -30
  1285. package/esm/compile/signal/signal-manager.js.map +0 -1
  1286. package/esm/compile/signal/state-manager.d.ts +0 -12
  1287. package/esm/compile/signal/state-manager.js +0 -30
  1288. package/esm/compile/signal/state-manager.js.map +0 -1
  1289. package/esm/interaction/dimension-trigger.d.ts +0 -27
  1290. package/esm/interaction/dimension-trigger.js +0 -70
  1291. package/esm/interaction/dimension-trigger.js.map +0 -1
  1292. package/esm/interaction/interface.d.ts +0 -73
  1293. package/esm/interaction/interface.js +0 -2
  1294. package/esm/interaction/interface.js.map +0 -1
  1295. package/esm/series/base/series-data.d.ts +0 -5
  1296. package/esm/series/base/series-data.js +0 -16
  1297. package/esm/series/base/series-data.js.map +0 -1
  1298. package/esm/vrender-tools.d.ts +0 -1
  1299. package/esm/vrender-tools.js +0 -2
  1300. package/esm/vrender-tools.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":"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","file":"gauge.js","sourcesContent":["import type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IGaugeSeriesSpec } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant/data';\nimport type { Datum } from '@visactor/vgrammar-core';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { gaugeSeriesMark } from './constant';\nimport { clamper, degreeToRadian, isValid } from '@visactor/vutils';\nimport { Factory } from '../../core/factory';\nimport { registerProgressLikeAnimation } from '../polar/progress-like';\nimport type { IArcMark, IMark } from '../../mark/interface';\nimport { GaugeSeriesSpecTransformer } from './gauge-transformer';\nimport { registerArcMark } from '../../mark/arc';\nimport { registerPolarLinearAxis } from '../../component/axis/polar';\nimport { AttributeLevel } from '../../constant/attribute';\n\nexport class GaugeSeries<T extends IGaugeSeriesSpec = IGaugeSeriesSpec> extends ProgressLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n static readonly mark: SeriesMarkMap = gaugeSeriesMark;\n static readonly transformerConstructor = GaugeSeriesSpecTransformer as any;\n readonly transformerConstructor = GaugeSeriesSpecTransformer;\n\n private _segmentMark: IArcMark | null = null;\n private _trackMark: IArcMark | null = null;\n\n protected _padAngle: number = 0;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n this._padAngle = degreeToRadian(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Datum[], op: string) => {\n // 数据处理\n const dataCollect = data.slice();\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n registerDataSetInstanceTransform(this._option.dataSet, 'spiltSegment', spiltSegment);\n this.getViewData()?.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n }\n\n initMark(): void {\n super.initMark();\n this._trackMark = this._createMark(GaugeSeries.mark.track, {\n parent: this._arcGroupMark,\n dataView: false\n }) as IArcMark;\n this._segmentMark = this._createMark(GaugeSeries.mark.segment, {\n parent: this._arcGroupMark,\n isSeriesMark: true\n }) as IArcMark;\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n }\n }\n\n protected generateRadiusStyle(spec: any) {\n if (!spec) {\n return;\n }\n const style: any = {};\n spec.outerRadius && (style.outerRadius = () => this._computeLayoutRadius() * spec.outerRadius);\n spec.innerRadius && (style.innerRadius = () => this._computeLayoutRadius() * spec.innerRadius);\n return style;\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any, key?: string): void {\n super.initMarkStyleWithSpec(mark, spec, key);\n if (mark && mark.name === SeriesMarkNameEnum.segment) {\n // radius 配置需要额外处理比例值\n const segmentSpec = this.getSpec()[SeriesMarkNameEnum.segment];\n if (segmentSpec) {\n for (const state in segmentSpec.state || {}) {\n this.setMarkStyle(mark, this.generateRadiusStyle(segmentSpec.state[state]), state, AttributeLevel.User_Mark);\n }\n }\n }\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._segmentMark && this._tooltipHelper.activeTriggerSet.mark.add(this._segmentMark);\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n }\n }\n\n protected _getAngleValueStartWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return clamper(\n startAngle,\n (startAngle + endAngle) / 2\n )(startAngle + (endAngle > startAngle ? 1 : -1) * Math.abs(this._padAngle / 2));\n }\n\n protected _getAngleValueEndWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return clamper(\n endAngle,\n (startAngle + endAngle) / 2\n )(endAngle - (endAngle > startAngle ? 1 : -1) * Math.abs(this._padAngle / 2));\n }\n\n protected _getAngleValueStartWithoutPadAngle(datum: Datum) {\n return isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n }\n\n protected _getAngleValueEndWithoutPadAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._segmentMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circularProgress')?.(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.segment, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n\nexport const registerGaugeSeries = () => {\n Factory.registerSeries(GaugeSeries.type, GaugeSeries);\n registerArcMark();\n registerProgressLikeAnimation();\n // 仪表盘只使用了角度轴\n registerPolarLinearAxis();\n};\n"]}
1
+ {"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":"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","file":"gauge.js","sourcesContent":["import type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IGaugeSeriesSpec } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant/data';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { gaugeSeriesMark } from './constant';\nimport { clamper, degreeToRadian, isValid } from '@visactor/vutils';\nimport { Factory } from '../../core/factory';\nimport { registerProgressLikeAnimation } from '../polar/progress-like';\nimport type { IArcMark, IMark } from '../../mark/interface';\nimport { GaugeSeriesSpecTransformer } from './gauge-transformer';\nimport { registerArcMark } from '../../mark/arc';\nimport { registerPolarLinearAxis } from '../../component/axis/polar';\nimport { AttributeLevel } from '../../constant/attribute';\nimport type { Datum } from '../../typings/common';\n\nexport class GaugeSeries<T extends IGaugeSeriesSpec = IGaugeSeriesSpec> extends ProgressLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n static readonly mark: SeriesMarkMap = gaugeSeriesMark;\n static readonly transformerConstructor = GaugeSeriesSpecTransformer as any;\n readonly transformerConstructor = GaugeSeriesSpecTransformer;\n\n private _segmentMark: IArcMark | null = null;\n private _trackMark: IArcMark | null = null;\n\n protected _padAngle: number = 0;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n this._padAngle = degreeToRadian(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Datum[], op: string) => {\n // 数据处理\n const dataCollect = data.slice();\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n registerDataSetInstanceTransform(this._option.dataSet, 'spiltSegment', spiltSegment);\n this.getViewData()?.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n }\n\n initMark(): void {\n super.initMark();\n this._trackMark = this._createMark(GaugeSeries.mark.track, {\n parent: this._arcGroupMark,\n dataView: false\n }) as IArcMark;\n this._segmentMark = this._createMark(GaugeSeries.mark.segment, {\n parent: this._arcGroupMark,\n isSeriesMark: true\n }) as IArcMark;\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n }\n }\n\n protected generateRadiusStyle(spec: any) {\n if (!spec) {\n return;\n }\n const style: any = {};\n spec.outerRadius && (style.outerRadius = () => this._computeLayoutRadius() * spec.outerRadius);\n spec.innerRadius && (style.innerRadius = () => this._computeLayoutRadius() * spec.innerRadius);\n return style;\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any): void {\n super.initMarkStyleWithSpec(mark, spec);\n if (mark && mark.name === SeriesMarkNameEnum.segment) {\n // radius 配置需要额外处理比例值\n const segmentSpec = this.getSpec()[SeriesMarkNameEnum.segment];\n if (segmentSpec) {\n for (const state in segmentSpec.state || {}) {\n this.setMarkStyle(mark, this.generateRadiusStyle(segmentSpec.state[state]), state, AttributeLevel.User_Mark);\n }\n }\n }\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._segmentMark && this._tooltipHelper.activeTriggerSet.mark.add(this._segmentMark);\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n }\n }\n\n protected _getAngleValueStartWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return clamper(\n startAngle,\n (startAngle + endAngle) / 2\n )(startAngle + (endAngle > startAngle ? 1 : -1) * Math.abs(this._padAngle / 2));\n }\n\n protected _getAngleValueEndWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return clamper(\n endAngle,\n (startAngle + endAngle) / 2\n )(endAngle - (endAngle > startAngle ? 1 : -1) * Math.abs(this._padAngle / 2));\n }\n\n protected _getAngleValueStartWithoutPadAngle(datum: Datum) {\n return isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n }\n\n protected _getAngleValueEndWithoutPadAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._segmentMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circularProgress')?.(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.segment, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n\nexport const registerGaugeSeries = () => {\n Factory.registerSeries(GaugeSeries.type, GaugeSeries);\n registerArcMark();\n registerProgressLikeAnimation();\n // 仪表盘只使用了角度轴\n registerPolarLinearAxis();\n};\n"]}
@@ -3,14 +3,14 @@ import type { IPoint } from '../../typings';
3
3
  import type { IGeoSeries } from '../interface';
4
4
  import { SeriesTypeEnum } from '../interface/type';
5
5
  import { BaseSeries } from '../base/base-series';
6
- import type { SeriesData } from '../base/series-data';
7
6
  import type { DataView } from '@visactor/vdataset';
8
7
  import type { IGeoSeriesSpec } from './interface';
9
8
  import type { IMark } from '../../mark/interface';
9
+ import type { ICompilableData } from '../../compile/data';
10
10
  export declare abstract class GeoSeries<T extends IGeoSeriesSpec = IGeoSeriesSpec> extends BaseSeries<T> implements IGeoSeries {
11
11
  type: SeriesTypeEnum;
12
12
  readonly coordinate = "geo";
13
- protected _mapViewData: SeriesData;
13
+ protected _mapViewData: ICompilableData;
14
14
  getMapViewData(): DataView;
15
15
  protected _mapViewDataStatistics: DataView;
16
16
  _nameField: string;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/geo/geo.ts"],"names":[],"mappings":"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","file":"geo.js","sourcesContent":["import type { IGeoCoordinateHelper } from '../../component/geo/interface';\nimport type { IPoint } from '../../typings';\nimport type { IGeoSeries } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\nimport { BaseSeries } from '../base/base-series';\nimport { isNil } from '@visactor/vutils';\nimport type { SeriesData } from '../base/series-data';\nimport type { DataView } from '@visactor/vdataset';\nimport { PREFIX } from '../../constant/base';\nimport type { IGeoSeriesSpec } from './interface';\nimport type { IMark } from '../../mark/interface';\n\nexport abstract class GeoSeries<T extends IGeoSeriesSpec = IGeoSeriesSpec> extends BaseSeries<T> implements IGeoSeries {\n type = SeriesTypeEnum.geo;\n readonly coordinate = 'geo';\n\n protected _mapViewData: SeriesData;\n getMapViewData() {\n return this._mapViewData?.getDataView();\n }\n\n protected _mapViewDataStatistics!: DataView;\n\n _nameField!: string;\n get nameField() {\n return this._nameField;\n }\n set nameField(f: string) {\n this._nameField = f;\n }\n\n _valueField!: string;\n get valueField() {\n return this._valueField;\n }\n set valueField(f: string) {\n this._valueField = f;\n }\n\n protected _nameProperty: string = 'name';\n getNameProperty() {\n return this._nameProperty;\n }\n\n protected _centroidProperty?: string;\n getCentroidProperty() {\n return this._centroidProperty;\n }\n\n _coordinateHelper!: IGeoCoordinateHelper;\n getCoordinateHelper() {\n return this._coordinateHelper;\n }\n setCoordinateHelper(h: IGeoCoordinateHelper) {\n this._coordinateHelper = h;\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: Array<'max' | 'min' | 'values'> }[] = [];\n fields.push({ key: this._nameField, operations: ['values'] });\n fields.push({ key: this._valueField, operations: ['max', 'min'] });\n return fields;\n }\n\n getGroupFields(): string[] {\n return null;\n }\n\n // position\n dataToPosition(datum: any, checkInViewData?: boolean): IPoint | null {\n let result: IPoint | null = null;\n\n if (!datum) {\n return result;\n }\n if (checkInViewData && !this.isDatumInViewData(datum)) {\n return result;\n }\n const { dataToPosition, latitudeField, longitudeField } = this._coordinateHelper;\n\n // 从地理数据映射中获取\n result = this.nameToPosition(datum);\n\n // 从用户传入的经纬度获取\n if (result === null) {\n const lonValue = longitudeField ? datum?.[longitudeField] : Number.NaN;\n const latValue = latitudeField ? datum?.[latitudeField] : Number.NaN;\n result = dataToPosition?.([lonValue, latValue]) ?? null;\n }\n\n return result;\n }\n\n protected nameToPosition(datum: any): IPoint | null {\n const name = this.getDatumName(datum);\n if (isNil(name)) {\n return null;\n }\n return this.nameValueToPosition(name);\n }\n\n nameValueToPosition(name: string): IPoint | null {\n const mapData = this.getMapViewData()?.latestData?.filter((data: any) => this.getDatumName(data) === name)[0];\n if (isNil(mapData)) {\n return null;\n }\n\n const { dataToPosition } = this._coordinateHelper;\n const center = this.getDatumCenter(mapData);\n\n const pos = dataToPosition?.(center);\n if (isNil(pos) || isNaN(pos.x) || isNaN(pos.y)) {\n return null;\n }\n return pos;\n }\n\n abstract getDatumCenter(datum: any): [number, number];\n abstract getDatumName(datum: any): string;\n\n dataToLatitude(latValue: number) {\n if (!this._coordinateHelper) {\n return Number.NaN;\n }\n const { dataToLatitude } = this._coordinateHelper;\n return dataToLatitude(latValue);\n }\n\n dataToLongitude(lonValue: number) {\n if (!this._coordinateHelper) {\n return Number.NaN;\n }\n const { dataToLatitude } = this._coordinateHelper;\n return dataToLatitude(lonValue);\n }\n\n valueToPosition(lonValue: number, latValue: number): IPoint {\n return {\n x: this.dataToLongitude(lonValue),\n y: this.dataToLatitude(latValue)\n };\n }\n\n positionToData(p: IPoint) {\n // TODO\n }\n latitudeToData(lat: number) {\n // TODO\n }\n longitudeToData(lon: number) {\n // TODO\n }\n\n dataToPositionX(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n dataToPositionY(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n dataToPositionZ(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n\n release() {\n super.release();\n this._mapViewData.release();\n this._mapViewData = this._mapViewDataStatistics = null;\n }\n\n // TODO: geo 不支持 stack,这些方法没有意义\n getStackGroupFields() {\n return [this._nameField];\n }\n\n getStackValueField() {\n // TODO: hack\n return this._spec.valueField;\n }\n\n compileData() {\n this._mapViewData?.compile();\n }\n\n protected initStatisticalData(): void {\n super.initStatisticalData();\n if (this._mapViewData) {\n const viewDataName = `${PREFIX}_series_${this.id}_mapViewDataStatic`;\n this._mapViewDataStatistics = this.createStatisticalData(viewDataName, this._mapViewData.getDataView());\n this._mapViewData.getDataView().target.removeListener('change', this._mapViewDataStatistics.reRunAllTransform);\n }\n }\n\n /** seriesField */\n getSeriesKeys(): string[] {\n if (this._seriesField) {\n return (\n this.getRawDataStatisticsByField(this._seriesField)?.values ??\n this._mapViewDataStatistics?.latestData[this._seriesField]?.values ??\n []\n );\n }\n if (this.name) {\n return [this.name];\n }\n if (this.userId) {\n return [`${this.userId}`];\n }\n return [`${this.type}_${this.id}`];\n }\n\n fillData() {\n super.fillData();\n this._mapViewData.getDataView()?.reRunAllTransform();\n this._mapViewDataStatistics?.reRunAllTransform();\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/geo/geo.ts"],"names":[],"mappings":"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","file":"geo.js","sourcesContent":["import type { IGeoCoordinateHelper } from '../../component/geo/interface';\nimport type { IPoint } from '../../typings';\nimport type { IGeoSeries } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\nimport { BaseSeries } from '../base/base-series';\nimport { isNil } from '@visactor/vutils';\nimport type { DataView } from '@visactor/vdataset';\nimport { PREFIX } from '../../constant/base';\nimport type { IGeoSeriesSpec } from './interface';\nimport type { IMark } from '../../mark/interface';\nimport type { ICompilableData } from '../../compile/data';\n\nexport abstract class GeoSeries<T extends IGeoSeriesSpec = IGeoSeriesSpec> extends BaseSeries<T> implements IGeoSeries {\n type = SeriesTypeEnum.geo;\n readonly coordinate = 'geo';\n\n protected _mapViewData: ICompilableData;\n getMapViewData() {\n return this._mapViewData?.getDataView();\n }\n\n protected _mapViewDataStatistics!: DataView;\n\n _nameField!: string;\n get nameField() {\n return this._nameField;\n }\n set nameField(f: string) {\n this._nameField = f;\n }\n\n _valueField!: string;\n get valueField() {\n return this._valueField;\n }\n set valueField(f: string) {\n this._valueField = f;\n }\n\n protected _nameProperty: string = 'name';\n getNameProperty() {\n return this._nameProperty;\n }\n\n protected _centroidProperty?: string;\n getCentroidProperty() {\n return this._centroidProperty;\n }\n\n _coordinateHelper!: IGeoCoordinateHelper;\n getCoordinateHelper() {\n return this._coordinateHelper;\n }\n setCoordinateHelper(h: IGeoCoordinateHelper) {\n this._coordinateHelper = h;\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: Array<'max' | 'min' | 'values'> }[] = [];\n fields.push({ key: this._nameField, operations: ['values'] });\n fields.push({ key: this._valueField, operations: ['max', 'min'] });\n return fields;\n }\n\n getGroupFields(): string[] {\n return null;\n }\n\n // position\n dataToPosition(datum: any, checkInViewData?: boolean): IPoint | null {\n let result: IPoint | null = null;\n\n if (!datum) {\n return result;\n }\n if (checkInViewData && !this.isDatumInViewData(datum)) {\n return result;\n }\n const { dataToPosition, latitudeField, longitudeField } = this._coordinateHelper;\n\n // 从地理数据映射中获取\n result = this.nameToPosition(datum);\n\n // 从用户传入的经纬度获取\n if (result === null) {\n const lonValue = longitudeField ? datum?.[longitudeField] : Number.NaN;\n const latValue = latitudeField ? datum?.[latitudeField] : Number.NaN;\n result = dataToPosition?.([lonValue, latValue]) ?? null;\n }\n\n return result;\n }\n\n protected nameToPosition(datum: any): IPoint | null {\n const name = this.getDatumName(datum);\n if (isNil(name)) {\n return null;\n }\n return this.nameValueToPosition(name);\n }\n\n nameValueToPosition(name: string): IPoint | null {\n const mapData = this.getMapViewData()?.latestData?.filter((data: any) => this.getDatumName(data) === name)[0];\n if (isNil(mapData)) {\n return null;\n }\n\n const { dataToPosition } = this._coordinateHelper;\n const center = this.getDatumCenter(mapData);\n\n const pos = dataToPosition?.(center);\n if (isNil(pos) || isNaN(pos.x) || isNaN(pos.y)) {\n return null;\n }\n return pos;\n }\n\n abstract getDatumCenter(datum: any): [number, number];\n abstract getDatumName(datum: any): string;\n\n dataToLatitude(latValue: number) {\n if (!this._coordinateHelper) {\n return Number.NaN;\n }\n const { dataToLatitude } = this._coordinateHelper;\n return dataToLatitude(latValue);\n }\n\n dataToLongitude(lonValue: number) {\n if (!this._coordinateHelper) {\n return Number.NaN;\n }\n const { dataToLatitude } = this._coordinateHelper;\n return dataToLatitude(lonValue);\n }\n\n valueToPosition(lonValue: number, latValue: number): IPoint {\n return {\n x: this.dataToLongitude(lonValue),\n y: this.dataToLatitude(latValue)\n };\n }\n\n positionToData(p: IPoint) {\n // TODO\n }\n latitudeToData(lat: number) {\n // TODO\n }\n longitudeToData(lon: number) {\n // TODO\n }\n\n dataToPositionX(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n dataToPositionY(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n dataToPositionZ(data: any): number {\n this._option?.onError('Method not implemented.');\n return 0;\n }\n\n release() {\n super.release();\n this._mapViewData.release();\n this._mapViewData = this._mapViewDataStatistics = null;\n }\n\n // TODO: geo 不支持 stack,这些方法没有意义\n getStackGroupFields() {\n return [this._nameField];\n }\n\n getStackValueField() {\n // TODO: hack\n return this._spec.valueField;\n }\n\n compileData() {\n this._mapViewData?.compile();\n }\n\n protected initStatisticalData(): void {\n super.initStatisticalData();\n if (this._mapViewData) {\n const viewDataName = `${PREFIX}_series_${this.id}_mapViewDataStatic`;\n this._mapViewDataStatistics = this.createStatisticalData(viewDataName, this._mapViewData.getDataView());\n this._mapViewData.getDataView().target.removeListener('change', this._mapViewDataStatistics.reRunAllTransform);\n }\n }\n\n /** seriesField */\n getSeriesKeys(): string[] {\n if (this._seriesField) {\n return (\n this.getRawDataStatisticsByField(this._seriesField)?.values ??\n this._mapViewDataStatistics?.latestData[this._seriesField]?.values ??\n []\n );\n }\n if (this.name) {\n return [this.name];\n }\n if (this.userId) {\n return [`${this.userId}`];\n }\n return [`${this.type}_${this.id}`];\n }\n\n fillData() {\n super.fillData();\n this._mapViewData.getDataView()?.reRunAllTransform();\n this._mapViewDataStatistics?.reRunAllTransform();\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { IAnimationTypeConfig } from '@visactor/vgrammar-core';
2
1
  import type { HeatmapAppearPreset } from './interface';
2
+ import type { IAnimationTypeConfig } from '../../animation/interface';
3
3
  export declare function heatmapPresetAnimation(preset: HeatmapAppearPreset | boolean): IAnimationTypeConfig;
4
4
  export declare const registerHeatmapAnimation: () => void;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/heatmap/animation.ts"],"names":[],"mappings":";;;AACA,gDAA6C;AAC7C,mDAA4D;AAG5D,SAAgB,sBAAsB,CAAC,MAAqC;IAC1E,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,OAAO,EAAE,CAAC;KACX;IACD,OAAO;QACL,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC;AAPD,wDAOC;AAEM,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,iBAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC,MAAW,EAAE,MAA2B,EAAE,EAAE;QAChF,uCACK,2BAAkB,KACrB,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,IACtC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAPW,QAAA,wBAAwB,4BAOnC","file":"animation.js","sourcesContent":["import type { IAnimationTypeConfig } from '@visactor/vgrammar-core';\nimport { Factory } from '../../core/factory';\nimport { FadeInOutAnimation } from '../../animation/config';\nimport type { HeatmapAppearPreset } from './interface';\n\nexport function heatmapPresetAnimation(preset: HeatmapAppearPreset | boolean): IAnimationTypeConfig {\n if (preset === false) {\n return {};\n }\n return {\n type: 'fadeIn'\n };\n}\n\nexport const registerHeatmapAnimation = () => {\n Factory.registerAnimation('heatmap', (params: any, preset: HeatmapAppearPreset) => {\n return {\n ...FadeInOutAnimation,\n appear: heatmapPresetAnimation(preset)\n };\n });\n};\n"]}
1
+ {"version":3,"sources":["../src/series/heatmap/animation.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAC7C,mDAA4D;AAI5D,SAAgB,sBAAsB,CAAC,MAAqC;IAC1E,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,OAAO,EAAE,CAAC;KACX;IACD,OAAO;QACL,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC;AAPD,wDAOC;AAEM,MAAM,wBAAwB,GAAG,GAAG,EAAE;IAC3C,iBAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC,MAAW,EAAE,MAA2B,EAAE,EAAE;QAChF,uCACK,2BAAkB,KACrB,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,IACtC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAPW,QAAA,wBAAwB,4BAOnC","file":"animation.js","sourcesContent":["import { Factory } from '../../core/factory';\nimport { FadeInOutAnimation } from '../../animation/config';\nimport type { HeatmapAppearPreset } from './interface';\nimport type { IAnimationTypeConfig } from '../../animation/interface';\n\nexport function heatmapPresetAnimation(preset: HeatmapAppearPreset | boolean): IAnimationTypeConfig {\n if (preset === false) {\n return {};\n }\n return {\n type: 'fadeIn'\n };\n}\n\nexport const registerHeatmapAnimation = () => {\n Factory.registerAnimation('heatmap', (params: any, preset: HeatmapAppearPreset) => {\n return {\n ...FadeInOutAnimation,\n appear: heatmapPresetAnimation(preset)\n };\n });\n};\n"]}
@@ -27,7 +27,10 @@ export declare class HeatmapSeries<T extends IHeatmapSeriesSpec = IHeatmapSeries
27
27
  scale: any;
28
28
  field: any;
29
29
  };
30
- initInteraction(): void;
30
+ getInteractionTriggers(): {
31
+ trigger: Partial<import("../../interaction/interface/trigger").IBaseTriggerOptions>;
32
+ marks: IMark[];
33
+ }[];
31
34
  initAnimation(): void;
32
35
  protected getCellSize(axisHelper: IAxisHelper): number;
33
36
  protected initTooltip(): void;
@@ -22,25 +22,12 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
22
22
  super.setAttrFromSpec(), this.setFieldValue(this._spec.valueField);
23
23
  }
24
24
  initMark() {
25
- var _a, _b, _c, _d;
26
- const progressive = {
27
- progressiveStep: this._spec.progressiveStep,
28
- progressiveThreshold: this._spec.progressiveThreshold,
29
- large: this._spec.large,
30
- largeThreshold: this._spec.largeThreshold
31
- };
32
25
  this._cellMark = this._createMark(HeatmapSeries.mark.cell, {
33
- isSeriesMark: !0,
34
- stateSort: null === (_a = this._spec.cell) || void 0 === _a ? void 0 : _a.stateSort
35
- }, Object.assign(Object.assign({}, progressive), {
36
- setCustomizedShape: null === (_b = this._spec.cell) || void 0 === _b ? void 0 : _b.customShape,
26
+ isSeriesMark: !0
27
+ }, {
37
28
  morph: (0, utils_1.shouldMarkDoMorph)(this._spec, HeatmapSeries.mark.cell.name),
38
29
  morphElementKey: this.getDimensionField()[0]
39
- })), this._backgroundMark = this._createMark(HeatmapSeries.mark.cellBackground, {
40
- stateSort: null === (_c = this._spec.cellBackground) || void 0 === _c ? void 0 : _c.stateSort
41
- }, Object.assign(Object.assign({}, progressive), {
42
- setCustomizedShape: null === (_d = this._spec.cellBackground) || void 0 === _d ? void 0 : _d.customShape
43
- }));
30
+ }), this._backgroundMark = this._createMark(HeatmapSeries.mark.cellBackground);
44
31
  }
45
32
  initMarkStyle() {
46
33
  this.initCellMarkStyle(), this.initCellBackgroundMarkStyle();
@@ -82,8 +69,8 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
82
69
  field: this.getFieldValue[0]
83
70
  };
84
71
  }
85
- initInteraction() {
86
- this._parseInteractionConfig(this._cellMark ? [ this._cellMark ] : []);
72
+ getInteractionTriggers() {
73
+ return this._parseInteractionConfig(this._cellMark ? [ this._cellMark ] : []);
87
74
  }
88
75
  initAnimation() {
89
76
  var _a, _b, _c;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/heatmap/heatmap.ts"],"names":[],"mappings":"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","file":"heatmap.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { registerCellMark } from './../../mark/cell';\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport { AttributeLevel } from '../../constant/attribute';\nimport type { Datum } from '../../typings';\nimport { registerHeatmapAnimation } from './animation';\nimport { animationConfig, shouldMarkDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { HeatmapAppearPreset, IHeatmapSeriesSpec } from './interface';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport { registerTextMark } from '../../mark/text';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { normalizePadding, array } from '@visactor/vutils';\nimport { HeatmapSeriesTooltipHelper } from './tooltip-helper';\nimport { heatmapSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport type { ICellMark, IMark, ITextMark } from '../../mark/interface';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { HeatmapSeriesSpecTransformer } from './heatmap-transformer';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class HeatmapSeries<T extends IHeatmapSeriesSpec = IHeatmapSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.heatmap;\n type = SeriesTypeEnum.heatmap;\n\n static readonly mark: SeriesMarkMap = heatmapSeriesMark;\n static readonly transformerConstructor = HeatmapSeriesSpecTransformer as any;\n readonly transformerConstructor = HeatmapSeriesSpecTransformer;\n\n protected _cellMark: ICellMark;\n protected _backgroundMark: ICellMark;\n\n protected _fieldValue!: string[];\n getFieldValue() {\n return this._fieldValue;\n }\n setFieldValue(f: string | string[]) {\n this._fieldValue = array(f);\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldValue(this._spec.valueField);\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n this._cellMark = this._createMark(\n HeatmapSeries.mark.cell,\n {\n isSeriesMark: true,\n stateSort: this._spec.cell?.stateSort\n },\n {\n ...progressive,\n setCustomizedShape: this._spec.cell?.customShape,\n morph: shouldMarkDoMorph(this._spec, HeatmapSeries.mark.cell.name),\n morphElementKey: this.getDimensionField()[0]\n }\n ) as ICellMark;\n\n this._backgroundMark = this._createMark(\n HeatmapSeries.mark.cellBackground,\n {\n stateSort: this._spec.cellBackground?.stateSort\n },\n {\n ...progressive,\n setCustomizedShape: this._spec.cellBackground?.customShape\n }\n ) as ICellMark;\n }\n\n initMarkStyle(): void {\n this.initCellMarkStyle();\n this.initCellBackgroundMarkStyle();\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getMeasureField()[0]];\n }\n });\n }\n\n initCellMarkStyle() {\n this.setMarkStyle(\n this._cellMark,\n {\n x: (datum: Datum) => {\n const pos = this.dataToPositionX(datum);\n return pos;\n },\n y: (datum: Datum) => {\n const pos = this.dataToPositionY(datum);\n return pos;\n },\n size: () => {\n return [this.getCellSize(this._xAxisHelper), this.getCellSize(this._yAxisHelper)];\n },\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n initCellBackgroundMarkStyle() {\n const padding = normalizePadding(this._spec.cellBackground?.style?.padding ?? 0);\n this.setMarkStyle(\n this._backgroundMark,\n {\n x: (datum: Datum) => {\n const width = this.getCellSize(this._xAxisHelper);\n const pos = this.dataToPositionX(datum);\n return pos - width / 2 + padding[3];\n },\n y: (datum: Datum) => {\n const height = this.getCellSize(this._yAxisHelper);\n const pos = this.dataToPositionY(datum);\n return pos - height / 2 + padding[0];\n },\n width: () => {\n return this.getCellSize(this._xAxisHelper) - padding[1] - padding[3];\n },\n height: () => {\n return this.getCellSize(this._yAxisHelper) - padding[0] - padding[2];\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n // 通用的默认颜色映射 用户设置优先级比这个高,会在setStyle中处理\n getColorAttribute() {\n return {\n // TODO: 为热力图实现默认线性颜色 scale\n scale: this._option.globalScale.getScale('color') ?? this._getDefaultColorScale(),\n field: this.getFieldValue[0]\n };\n }\n\n initInteraction(): void {\n this._parseInteractionConfig(this._cellMark ? [this._cellMark] : []);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<HeatmapAppearPreset>)?.preset;\n const animationParams = getGroupAnimationParams(this);\n\n this._cellMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('heatmap')?.(appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.cell, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n }\n\n protected getCellSize(axisHelper: IAxisHelper) {\n return axisHelper.getBandwidth?.(0) ?? DefaultBandWidth;\n }\n\n protected initTooltip() {\n this._tooltipHelper = new HeatmapSeriesTooltipHelper(this);\n this._cellMark && this._tooltipHelper.activeTriggerSet.mark.add(this._cellMark);\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getDimensionField(): string[] {\n return [].concat(this.fieldX, this.fieldY);\n }\n\n getMeasureField(): string[] {\n return this.getFieldValue();\n }\n\n getActiveMarks(): IMark[] {\n return [this._cellMark];\n }\n}\n\nexport const registerHeatmapSeries = () => {\n registerTextMark();\n registerCellMark();\n registerHeatmapAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(HeatmapSeries.type, HeatmapSeries);\n};\n"]}
1
+ {"version":3,"sources":["../src/series/heatmap/heatmap.ts"],"names":[],"mappings":"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","file":"heatmap.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { registerCellMark } from './../../mark/cell';\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport { AttributeLevel } from '../../constant/attribute';\nimport type { Datum } from '../../typings';\nimport { registerHeatmapAnimation } from './animation';\nimport { animationConfig, shouldMarkDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { HeatmapAppearPreset, IHeatmapSeriesSpec } from './interface';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport { registerTextMark } from '../../mark/text';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { normalizePadding, array } from '@visactor/vutils';\nimport { HeatmapSeriesTooltipHelper } from './tooltip-helper';\nimport { heatmapSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport type { ICellMark, IMark, ITextMark } from '../../mark/interface';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { HeatmapSeriesSpecTransformer } from './heatmap-transformer';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class HeatmapSeries<T extends IHeatmapSeriesSpec = IHeatmapSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.heatmap;\n type = SeriesTypeEnum.heatmap;\n\n static readonly mark: SeriesMarkMap = heatmapSeriesMark;\n static readonly transformerConstructor = HeatmapSeriesSpecTransformer as any;\n readonly transformerConstructor = HeatmapSeriesSpecTransformer;\n\n protected _cellMark: ICellMark;\n protected _backgroundMark: ICellMark;\n\n protected _fieldValue!: string[];\n getFieldValue() {\n return this._fieldValue;\n }\n setFieldValue(f: string | string[]) {\n this._fieldValue = array(f);\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldValue(this._spec.valueField);\n }\n\n initMark(): void {\n this._cellMark = this._createMark(\n HeatmapSeries.mark.cell,\n {\n isSeriesMark: true\n },\n {\n morph: shouldMarkDoMorph(this._spec, HeatmapSeries.mark.cell.name),\n morphElementKey: this.getDimensionField()[0]\n }\n ) as ICellMark;\n\n this._backgroundMark = this._createMark(HeatmapSeries.mark.cellBackground) as ICellMark;\n }\n\n initMarkStyle(): void {\n this.initCellMarkStyle();\n this.initCellBackgroundMarkStyle();\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getMeasureField()[0]];\n }\n });\n }\n\n initCellMarkStyle() {\n this.setMarkStyle(\n this._cellMark,\n {\n x: (datum: Datum) => {\n const pos = this.dataToPositionX(datum);\n return pos;\n },\n y: (datum: Datum) => {\n const pos = this.dataToPositionY(datum);\n return pos;\n },\n size: () => {\n return [this.getCellSize(this._xAxisHelper), this.getCellSize(this._yAxisHelper)];\n },\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n initCellBackgroundMarkStyle() {\n const padding = normalizePadding(this._spec.cellBackground?.style?.padding ?? 0);\n this.setMarkStyle(\n this._backgroundMark,\n {\n x: (datum: Datum) => {\n const width = this.getCellSize(this._xAxisHelper);\n const pos = this.dataToPositionX(datum);\n return pos - width / 2 + padding[3];\n },\n y: (datum: Datum) => {\n const height = this.getCellSize(this._yAxisHelper);\n const pos = this.dataToPositionY(datum);\n return pos - height / 2 + padding[0];\n },\n width: () => {\n return this.getCellSize(this._xAxisHelper) - padding[1] - padding[3];\n },\n height: () => {\n return this.getCellSize(this._yAxisHelper) - padding[0] - padding[2];\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n // 通用的默认颜色映射 用户设置优先级比这个高,会在setStyle中处理\n getColorAttribute() {\n return {\n // TODO: 为热力图实现默认线性颜色 scale\n scale: this._option.globalScale.getScale('color') ?? this._getDefaultColorScale(),\n field: this.getFieldValue[0]\n };\n }\n\n getInteractionTriggers() {\n return this._parseInteractionConfig(this._cellMark ? [this._cellMark] : []);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<HeatmapAppearPreset>)?.preset;\n const animationParams = getGroupAnimationParams(this);\n\n this._cellMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('heatmap')?.(appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.cell, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n }\n\n protected getCellSize(axisHelper: IAxisHelper) {\n return axisHelper.getBandwidth?.(0) ?? DefaultBandWidth;\n }\n\n protected initTooltip() {\n this._tooltipHelper = new HeatmapSeriesTooltipHelper(this);\n this._cellMark && this._tooltipHelper.activeTriggerSet.mark.add(this._cellMark);\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getDimensionField(): string[] {\n return [].concat(this.fieldX, this.fieldY);\n }\n\n getMeasureField(): string[] {\n return this.getFieldValue();\n }\n\n getActiveMarks(): IMark[] {\n return [this._cellMark];\n }\n}\n\nexport const registerHeatmapSeries = () => {\n registerTextMark();\n registerCellMark();\n registerHeatmapAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(HeatmapSeries.type, HeatmapSeries);\n};\n"]}
@@ -1,10 +1,9 @@
1
1
  import type { DataView } from '@visactor/vdataset';
2
- import type { IGrammarItem } from '../../compile/interface';
3
2
  import type { IBaseModelSpecTransformerResult, IModelConstructor, IModelMarkInfo, IModelOption, IModelSpecInfo } from '../../model/interface';
4
3
  import type { IRegion } from '../../region/interface';
5
4
  import type { RenderMode } from '../../typings/spec/common';
6
5
  import type { ISeries } from './series';
7
- import type { IGroupMark, IMarkOption } from '../../mark/interface';
6
+ import type { IMarkOption } from '../../mark/interface';
8
7
  import type { ISeriesSpec, StringOrNumber } from '../../typings';
9
8
  import type { TransformedLabelSpec } from '../../component/label/interface';
10
9
  import type { SeriesMarkNameEnum, SeriesTypeEnum } from './type';
@@ -55,9 +54,7 @@ export interface ISeriesMarkInitOption extends Partial<IMarkOption> {
55
54
  themeSpec?: any;
56
55
  markSpec?: any;
57
56
  skipBeforeLayouted?: boolean;
58
- parent?: IGroupMark | false;
59
57
  isSeriesMark?: boolean;
60
- depend?: IGrammarItem | IGrammarItem[];
61
58
  key?: string | ((datum: any) => string);
62
59
  groupKey?: string;
63
60
  dataView?: DataView | false;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/interface/common.ts"],"names":[],"mappings":"","file":"common.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport type { IGrammarItem } from '../../compile/interface';\nimport type {\n IBaseModelSpecTransformerResult,\n IModelConstructor,\n IModelMarkInfo,\n IModelOption,\n IModelSpecInfo\n} from '../../model/interface';\nimport type { IRegion } from '../../region/interface';\nimport type { RenderMode } from '../../typings/spec/common';\nimport type { ISeries } from './series';\nimport type { IGroupMark, IMarkOption } from '../../mark/interface';\nimport type { ISeriesSpec, StringOrNumber } from '../../typings';\nimport type { TransformedLabelSpec } from '../../component/label/interface';\nimport type { SeriesMarkNameEnum, SeriesTypeEnum } from './type';\n\n// export type SeriesStyle = 'color' | 'size' | 'shape';\n\nexport interface ISeriesSeriesInfo {\n key: string;\n /** 直接取 datum 里的原始值 */\n originalKey: any;\n index?: number;\n // 样式的值类型可能是 StringOrNumber | number[] | xxxx\n style: (attribute: string) => any;\n /** series 对应的缩略图类型 */\n shapeType: string;\n}\n\nexport interface ISeriesOption extends IModelOption {\n mode: RenderMode;\n region: IRegion;\n sourceDataList: DataView[];\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n}\n\nexport interface ISeriesConstructor extends IModelConstructor {\n readonly type: string;\n mark?: SeriesMarkMap;\n new (spec: any, options: ISeriesOption): ISeries;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface ISeriesInitOption {}\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface ISeriesUpdateDataOption {}\n\nexport interface ISeriesStackDataNode {\n groupField?: string;\n nodes: {\n [key: string]: ISeriesStackDataMeta;\n };\n}\nexport interface ISeriesStackDataLeaf {\n groupField?: string;\n values: any[];\n total?: number;\n}\n\nexport type ISeriesStackDataMeta = ISeriesStackDataNode | ISeriesStackDataLeaf;\nexport type ISeriesStackData = ISeriesStackDataNode;\n\n/**\n * 设置图表中系列分组的样式,这里的分组对应了相同的分组字段值\n */\nexport type ISeriesStyle = ISeriesStyleItem[];\n\n/**\n * 特定系列分组的样式配置\n */\nexport type ISeriesStyleItem = {\n /**\n * 系列的分组名称\n */\n name: string;\n} & {\n /**\n * 设置该系列分组下各种图元对应的样式\n */\n [markName: string]: {\n /**\n * 图元的样式\n */\n style?: any;\n };\n};\n\nexport interface ISeriesMarkInitOption extends Partial<IMarkOption> {\n /** theme spec */\n themeSpec?: any;\n\n /** mark spec */\n markSpec?: any;\n\n /** 是否在编译时更新实际数据 */\n skipBeforeLayouted?: boolean;\n\n /** 父级 mark(如果是 undefined 则默认是系列的 root mark,如果是 false 则不配置父级 mark) */\n parent?: IGroupMark | false;\n\n /** 是否是 series field 所作用的 mark(用于 tooltip shape 取色等) */\n isSeriesMark?: boolean;\n\n /** 该 mark 依赖于哪些语法元素 */\n depend?: IGrammarItem | IGrammarItem[];\n\n /** 数据 key 值 */\n key?: string | ((datum: any) => string);\n\n /** 分组 key 值 */\n groupKey?: string;\n\n /** 绑定系列数据(如果是 undefined 则默认是系列的 data,如果是 false 则不配置数据) */\n dataView?: DataView | false;\n /** 系列数据编译产物的名称 */\n dataProductId?: string;\n /** mark scale 如果需要使用统计信息设置domain的话,使用的series对应的统计数据 */\n seriesId?: number;\n\n /**\n * 状态排序方法,默认状态都是按照添加的顺序处理的,如果有特殊的需求,需要指定状态顺序,可以通过这个方法实现\n * @since 1.9.0\n */\n stateSort?: (stateA: string, stateB: string) => number;\n /**\n * use component in extension mark\n * @since 1.9.0\n */\n componentType?: string;\n}\n\nexport interface ISeriesMarkInfo extends IModelMarkInfo {\n /** mark 名称 */\n name: SeriesMarkNameEnum | string;\n}\n\nexport type SeriesMarkMap = Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>>;\n\nexport interface ISeriesSpecInfo<T extends ISeriesSpec = ISeriesSpec>\n extends IModelSpecInfo,\n ISeriesSpecTransformerResult<T, any> {\n /** model 具体类型 */\n type: string | SeriesTypeEnum;\n /** model spec */\n spec: T;\n /** model theme */\n theme: any;\n}\n\nexport interface ISeriesSpecTransformerResult<T, K> extends IBaseModelSpecTransformerResult<T, K> {\n /** 当前的 mark 标签 spec */\n markLabelSpec?: Partial<Record<SeriesMarkNameEnum, TransformedLabelSpec[]>>;\n /** 是否堆叠 */\n stack?: boolean;\n}\n"]}
1
+ {"version":3,"sources":["../src/series/interface/common.ts"],"names":[],"mappings":"","file":"common.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport type { IGrammarItem } from '../../compile/interface';\nimport type {\n IBaseModelSpecTransformerResult,\n IModelConstructor,\n IModelMarkInfo,\n IModelOption,\n IModelSpecInfo\n} from '../../model/interface';\nimport type { IRegion } from '../../region/interface';\nimport type { RenderMode } from '../../typings/spec/common';\nimport type { ISeries } from './series';\nimport type { IGroupMark, IMarkOption } from '../../mark/interface';\nimport type { ISeriesSpec, StringOrNumber } from '../../typings';\nimport type { TransformedLabelSpec } from '../../component/label/interface';\nimport type { SeriesMarkNameEnum, SeriesTypeEnum } from './type';\n\n// export type SeriesStyle = 'color' | 'size' | 'shape';\n\nexport interface ISeriesSeriesInfo {\n key: string;\n /** 直接取 datum 里的原始值 */\n originalKey: any;\n index?: number;\n // 样式的值类型可能是 StringOrNumber | number[] | xxxx\n style: (attribute: string) => any;\n /** series 对应的缩略图类型 */\n shapeType: string;\n}\n\nexport interface ISeriesOption extends IModelOption {\n mode: RenderMode;\n region: IRegion;\n sourceDataList: DataView[];\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n}\n\nexport interface ISeriesConstructor extends IModelConstructor {\n readonly type: string;\n mark?: SeriesMarkMap;\n new (spec: any, options: ISeriesOption): ISeries;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface ISeriesInitOption {}\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface ISeriesUpdateDataOption {}\n\nexport interface ISeriesStackDataNode {\n groupField?: string;\n nodes: {\n [key: string]: ISeriesStackDataMeta;\n };\n}\nexport interface ISeriesStackDataLeaf {\n groupField?: string;\n values: any[];\n total?: number;\n}\n\nexport type ISeriesStackDataMeta = ISeriesStackDataNode | ISeriesStackDataLeaf;\nexport type ISeriesStackData = ISeriesStackDataNode;\n\n/**\n * 设置图表中系列分组的样式,这里的分组对应了相同的分组字段值\n */\nexport type ISeriesStyle = ISeriesStyleItem[];\n\n/**\n * 特定系列分组的样式配置\n */\nexport type ISeriesStyleItem = {\n /**\n * 系列的分组名称\n */\n name: string;\n} & {\n /**\n * 设置该系列分组下各种图元对应的样式\n */\n [markName: string]: {\n /**\n * 图元的样式\n */\n style?: any;\n };\n};\n\nexport interface ISeriesMarkInitOption extends Partial<IMarkOption> {\n /** theme spec */\n themeSpec?: any;\n\n /** mark spec */\n markSpec?: any;\n\n /** 是否在编译时更新实际数据 */\n skipBeforeLayouted?: boolean;\n\n /** 是否是 series field 所作用的 mark(用于 tooltip shape 取色等) */\n isSeriesMark?: boolean;\n\n /** 数据 key 值 */\n key?: string | ((datum: any) => string);\n\n /** 分组 key 值 */\n groupKey?: string;\n\n /** 绑定系列数据(如果是 undefined 则默认是系列的 data,如果是 false 则不配置数据) */\n dataView?: DataView | false;\n /** 系列数据编译产物的名称 */\n dataProductId?: string;\n /** mark scale 如果需要使用统计信息设置domain的话,使用的series对应的统计数据 */\n seriesId?: number;\n\n /**\n * 状态排序方法,默认状态都是按照添加的顺序处理的,如果有特殊的需求,需要指定状态顺序,可以通过这个方法实现\n * @since 1.9.0\n */\n stateSort?: (stateA: string, stateB: string) => number;\n /**\n * use component in extension mark\n * @since 1.9.0\n */\n componentType?: string;\n}\n\nexport interface ISeriesMarkInfo extends IModelMarkInfo {\n /** mark 名称 */\n name: SeriesMarkNameEnum | string;\n}\n\nexport type SeriesMarkMap = Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>>;\n\nexport interface ISeriesSpecInfo<T extends ISeriesSpec = ISeriesSpec>\n extends IModelSpecInfo,\n ISeriesSpecTransformerResult<T, any> {\n /** model 具体类型 */\n type: string | SeriesTypeEnum;\n /** model spec */\n spec: T;\n /** model theme */\n theme: any;\n}\n\nexport interface ISeriesSpecTransformerResult<T, K> extends IBaseModelSpecTransformerResult<T, K> {\n /** 当前的 mark 标签 spec */\n markLabelSpec?: Partial<Record<SeriesMarkNameEnum, TransformedLabelSpec[]>>;\n /** 是否堆叠 */\n stack?: boolean;\n}\n"]}
@@ -15,13 +15,14 @@ import type { IGeoCoordinateHelper } from '../../component/geo/interface';
15
15
  import type { ILabelSpec, ILabelInfo } from '../../component/label/interface';
16
16
  import type { StatisticOperations } from '../../data/transforms/interface';
17
17
  import type { ILegend } from '../../component/legend/interface';
18
+ import type { IBaseTriggerOptions } from '../../interaction/interface/trigger';
18
19
  export interface ISeries extends IModel {
19
20
  readonly type: string;
20
21
  readonly name?: string;
21
22
  tooltipHelper: ISeriesTooltipHelper;
22
23
  getSpec: () => any;
23
24
  readonly coordinate: CoordinateType;
24
- onLayoutEnd: (ctx: any) => void;
25
+ onLayoutEnd: () => void;
25
26
  getRawData: () => DataView | undefined;
26
27
  getViewDataFilter: () => DataView | undefined;
27
28
  getViewData: () => DataView | undefined;
@@ -104,6 +105,10 @@ export interface ISeries extends IModel {
104
105
  getSeriesFieldValue: (datum: Datum, seriesField?: string) => any;
105
106
  legendSelectedFilter?: (component: ILegend, selectedKeys: StringOrNumber[]) => StringOrNumber[];
106
107
  parseLabelStyle?: (labelStyle: any, labelSpec: any, labelMark?: ILabelMark) => any;
108
+ getInteractionTriggers?: () => {
109
+ trigger: Partial<IBaseTriggerOptions>;
110
+ marks: IMark[];
111
+ }[];
107
112
  }
108
113
  export interface ICartesianSeries extends ISeries {
109
114
  readonly coordinate: 'cartesian';
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/interface/series.ts"],"names":[],"mappings":"","file":"series.js","sourcesContent":["import type { PanEventParam, ZoomEventParam } from '../../event/interface';\nimport type { IModel } from '../../model/interface';\nimport type { DataSet, DataView, ITransformOptions } from '@visactor/vdataset';\nimport type { IGroupMark, ILabelMark, IMark } from '../../mark/interface';\nimport type { CoordinateType, IPoint, IPolarPoint } from '../../typings/coordinate';\nimport type { IRegion } from '../../region/interface';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { IPolarAxisHelper } from '../../component/axis/polar/interface';\nimport type { ISeriesSeriesInfo, ISeriesSpecInfo, ISeriesStackData } from './common';\nimport type { ISeriesTooltipHelper } from './tooltip-helper';\nimport type { IInvalidType, Datum, DirectionType, IGroup, StringOrNumber } from '../../typings';\nimport type { ISeriesMarkAttributeContext, StateValueType } from '../../compile/mark/interface';\nimport type { IGeoCoordinateHelper } from '../../component/geo/interface';\nimport type { ILabelSpec, ILabelInfo } from '../../component/label/interface';\nimport type { StatisticOperations } from '../../data/transforms/interface';\nimport type { ILegend } from '../../component/legend/interface';\n\n// 使用类型约束系列支持的样式,但是感觉这样不合理 不使用这样的方式去做\n// export interface ISeries<A extends string> extends IModel\n\nexport interface ISeries extends IModel {\n readonly type: string;\n readonly name?: string;\n\n // tooltip\n tooltipHelper: ISeriesTooltipHelper;\n\n // 配置\n getSpec: () => any;\n\n // 坐标系信息\n readonly coordinate: CoordinateType;\n\n // layout\n onLayoutEnd: (ctx: any) => void;\n\n // 数据\n getRawData: () => DataView | undefined;\n getViewDataFilter: () => DataView | undefined;\n getViewData: () => DataView | undefined;\n getViewDataProductId: () => string | undefined;\n getRawDataStatisticsByField: (field: string, isNumeric?: boolean) => { values?: any[]; min?: number; max?: number };\n getViewDataStatistics?: () => DataView | undefined;\n getDataSet?: () => DataSet;\n getFieldAlias: (field: string) => string;\n // 更新原始数据\n updateRawData: (d: any) => void;\n setData?: (dv: DataView) => void;\n rawDataUpdate: (d: DataView) => void;\n viewDataUpdate: (d: DataView) => void;\n viewDataStatisticsUpdate: (d: DataView) => void;\n addViewDataFilter: (option: ITransformOptions) => void;\n reFilterViewData: () => void;\n reTransformViewData: () => void;\n fillData: () => void;\n isHierarchyData?: () => boolean;\n getMarkData?: (d: Datum) => Datum;\n\n /**\n * 常见数据使用问题\n *\n * 一、使用图表最终展示数据\n * 比如 markline,数值轴 这样的组件\n * 需要操作展示数据,做 筛选 | 变换 的\n * 比如图例,datazoom\n series.getViewData().transform({},false)\n * 需要获取展示数据,生成自身数据做自身展示的 使用消息机制。比如 轴\n series.event.on('viewDataStatisticsUpdate' | 'viewDataUpdate', { filter: ({ model }) => model?.id === series.id }, () => {\n this.updateData();\n });\n *\n * 二、使用图表原始数据\n * 比如图例,datazoom\n * 需要使用原始数据信息,生成自身数据\n * 比如图例,datazoom\n series.getRawData().parserData | latestData // parserData latestData 区别见下面说明\n series.getRawDataStatistics().latestData\n\n series.event.on('rawDataUpdate', { filter: ({ model }) => model?.id === series.id }, () => {\n this.updateData();\n });\n * 或者使用系列自身的特殊api 特殊情况外不建议这样用\n series.getSeriesInfoList()\n\n * 建议:使用数据时需要注意数据更新,使用系列数据更新组件数据的场景,只建议使用消息监听\n series.event.on(\n 'viewDataStatisticsUpdate' |\n 'viewDataUpdate' |\n 'rawDataUpdate',\n { filter: ({ model }) => model?.id === series.id })\n */\n\n // 区域\n getRegion: () => IRegion;\n\n // mark\n initMark: () => void;\n getMarks: () => IMark[];\n getMarksWithoutRoot: () => IMark[];\n getMarkNameMap: () => Record<string, IMark>;\n getMarksInType: (type: string | string[]) => IMark[];\n getMarkInName: (name: string) => IMark | undefined;\n getMarkInId: (id: number) => IMark | undefined;\n\n getRootMark: () => IGroupMark;\n getActiveMarks: () => IMark[];\n getSeriesMark: () => IMark;\n\n // example\n /**\n * [\n * {\n * fields: {\n * x: '周一',\n * __VChart_STACK: 'stack'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20}];\n * },\n * {\n * fields: {\n * x: '周一',\n * stack: 'stackA'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20, stack: 'stackA'}];\n * },\n * {\n * fields: {\n * x: '周一',\n * stack: 'stackB'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20, stack: 'stackB'}];\n * },\n * ]\n */\n getStackData: () => ISeriesStackData;\n\n getStack: () => boolean;\n getStackValue: () => StringOrNumber | undefined;\n getPercent: () => boolean;\n getStackOffsetSilhouette: () => boolean;\n\n getStackValueField: () => string;\n setValueFieldToStack: () => void;\n setValueFieldToPercent: () => void;\n setValueFieldToStackOffsetSilhouette: () => void;\n\n getStackGroupFields: () => string[];\n getSeriesField: () => string | undefined;\n getSeriesKeys: () => string[];\n getSeriesStyle: (datum: Datum) => ISeriesSeriesInfo['style'];\n getSeriesInfoInField: (field: string) => ISeriesSeriesInfo[];\n getSeriesInfoList: () => ISeriesSeriesInfo[];\n getGroups: () => IGroup | undefined;\n getDimensionField: () => string[];\n getMeasureField: () => string[];\n getStatisticFields: () => { key: string; operations: StatisticOperations }[];\n getDatumPositionValues: (datum: Datum, fields: string | string[]) => any[];\n getDatumPositionValue: (datum: Datum, field: string) => any;\n\n setSeriesField: (field: string) => void;\n handleZoom?: (e: ZoomEventParam) => void;\n handlePan?: (e: PanEventParam) => void;\n\n // 数据映射\n dataToPosition: (datum: Datum, checkInViewData?: boolean) => IPoint | null;\n dataToPositionX: (datum: Datum) => number | null;\n dataToPositionY: (datum: Datum) => number | null;\n dataToPositionZ?: (datum: Datum) => number | null;\n valueToPosition: (value1: any, value2?: any) => IPoint;\n\n getColorAttribute: () => { scale: IBaseScale; field: string };\n getDefaultColorDomain: () => any[];\n\n getInvalidType: () => IInvalidType;\n\n // 交互\n\n /**\n * 获取系列默认的缩略图形\n * @returns 默认的缩略图形\n */\n getDefaultShapeType: () => string;\n /** 获取系列标签配置 */\n initLabelMarkStyle?: (labelMark: ILabelMark, labelSpec: ILabelSpec) => void;\n /** 设置总计标签配置 */\n initTotalLabelMarkStyle?: (labelMark: ILabelMark) => void;\n getTotalLabelComponentStyle?: (info: Pick<ILabelInfo, 'baseMark' | 'labelMark'>) => any;\n\n getGroupFields: () => string[];\n\n getSpecInfo: () => ISeriesSpecInfo;\n getMarkAttributeContext: () => ISeriesMarkAttributeContext;\n\n getSeriesFieldValue: (datum: Datum, seriesField?: string) => any;\n\n legendSelectedFilter?: (component: ILegend, selectedKeys: StringOrNumber[]) => StringOrNumber[];\n parseLabelStyle?: (labelStyle: any, labelSpec: any, labelMark?: ILabelMark) => any;\n}\n\nexport interface ICartesianSeries extends ISeries {\n readonly coordinate: 'cartesian';\n readonly direction: DirectionType;\n\n scaleX: IBaseScale;\n setScaleX: (s: IBaseScale) => void;\n scaleY: IBaseScale;\n setScaleY: (s: IBaseScale) => void;\n scaleZ?: IBaseScale;\n setScaleZ: (s: IBaseScale) => void;\n // 要考虑基于多个field的场景\n fieldX: string[];\n setFieldX: (field: string | string[], level?: number) => void;\n fieldX2: string;\n setFieldX2: (field: string) => void;\n fieldY: string[];\n setFieldY: (field: string | string[], level?: number) => void;\n fieldY2: string;\n setFieldY2: (field: string) => void;\n fieldZ?: string[];\n setFieldZ: (field: string | string[], level?: number) => void;\n\n positionToData: (p: IPoint) => any | null;\n positionToDataX: (xPos: number) => any | null;\n positionToDataY: (yPos: number) => any | null;\n\n // 轴API\n getXAxisHelper: () => IAxisHelper;\n setXAxisHelper: (h: IAxisHelper) => void;\n getYAxisHelper: () => IAxisHelper;\n setYAxisHelper: (h: IAxisHelper) => void;\n getZAxisHelper: () => IAxisHelper | undefined;\n setZAxisHelper: (h: IAxisHelper) => void;\n\n dataToPositionX1: (datum: Datum) => number | null;\n dataToPositionY1: (datum: Datum) => number | null;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n valueToPositionX: (value: StringOrNumber | StringOrNumber[], datum?: any) => any;\n valueToPositionY: (value: StringOrNumber | StringOrNumber[], datum?: any) => any;\n}\n\nexport interface IPolarSeries extends ISeries {\n readonly coordinate: 'polar';\n\n outerRadius: number;\n innerRadius: number;\n\n getRadiusField: () => string[];\n setRadiusField: (field: string | string[], level?: number) => void;\n getAngleField: () => string[];\n setAngleField: (field: string | string[], level?: number) => void;\n\n // 轴将是一个实现了 scale 的组件。这里接收的可以是一个轴\n radiusScale: IBaseScale;\n setRadiusScale: (s: IBaseScale) => void;\n angleScale: IBaseScale;\n setAngleScale: (s: IBaseScale) => void;\n\n // TODO:\n positionToData: (point: IPolarPoint) => any;\n radiusToData: (radius: number) => any;\n angleToData: (angle: number) => any;\n\n // 轴\n radiusAxisHelper: IPolarAxisHelper;\n angleAxisHelper: IPolarAxisHelper;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n}\n\nexport interface IGeoSeries extends ISeries {\n readonly coordinate: 'geo';\n\n nameField?: string;\n valueField?: string;\n\n getMapViewData: () => DataView;\n getNameProperty: () => string;\n\n dataToPosition: (datum: any, checkInViewData?: boolean) => IPoint | null;\n dataToLatitude: (latValue: any) => number | null;\n dataToLongitude: (lonValue: any) => number | null;\n nameValueToPosition: (name: string) => IPoint | null;\n\n positionToData: (p: IPoint) => any;\n latitudeToData: (lat: number) => any;\n longitudeToData: (lon: number) => any;\n\n getCoordinateHelper: () => IGeoCoordinateHelper;\n setCoordinateHelper: (helper: IGeoCoordinateHelper) => void;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n getDatumCenter: (datum: any) => [number, number];\n}\n\n// 收拢扇区标签形式依赖的 api\nexport interface IArcSeries extends IPolarSeries {\n getCenter: () => IPoint;\n getRadius: (state?: StateValueType) => number;\n getInnerRadius: (state?: StateValueType) => number;\n\n computeRadius: (r: number, k?: number) => number;\n computeDatumRadius: (datum: any, state?: StateValueType) => number;\n}\n\nexport interface IFunnelSeries extends ISeries {\n getPoints: (datum: any) => IPoint[];\n getCategoryField: () => string;\n\n valueToPosition: (value: any) => IPoint;\n}\n"]}
1
+ {"version":3,"sources":["../src/series/interface/series.ts"],"names":[],"mappings":"","file":"series.js","sourcesContent":["import type { PanEventParam, ZoomEventParam } from '../../event/interface';\nimport type { IModel } from '../../model/interface';\nimport type { DataSet, DataView, ITransformOptions } from '@visactor/vdataset';\nimport type { IGroupMark, ILabelMark, IMark } from '../../mark/interface';\nimport type { CoordinateType, IPoint, IPolarPoint } from '../../typings/coordinate';\nimport type { IRegion } from '../../region/interface';\nimport type { IBaseScale } from '@visactor/vscale';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { IPolarAxisHelper } from '../../component/axis/polar/interface';\nimport type { ISeriesSeriesInfo, ISeriesSpecInfo, ISeriesStackData } from './common';\nimport type { ISeriesTooltipHelper } from './tooltip-helper';\nimport type { IInvalidType, Datum, DirectionType, IGroup, StringOrNumber } from '../../typings';\nimport type { ISeriesMarkAttributeContext, StateValueType } from '../../compile/mark/interface';\nimport type { IGeoCoordinateHelper } from '../../component/geo/interface';\nimport type { ILabelSpec, ILabelInfo } from '../../component/label/interface';\nimport type { StatisticOperations } from '../../data/transforms/interface';\nimport type { ILegend } from '../../component/legend/interface';\nimport type { IBaseTriggerOptions } from '../../interaction/interface/trigger';\n\n// 使用类型约束系列支持的样式,但是感觉这样不合理 不使用这样的方式去做\n// export interface ISeries<A extends string> extends IModel\n\nexport interface ISeries extends IModel {\n readonly type: string;\n readonly name?: string;\n\n // tooltip\n tooltipHelper: ISeriesTooltipHelper;\n\n // 配置\n getSpec: () => any;\n\n // 坐标系信息\n readonly coordinate: CoordinateType;\n\n // layout\n onLayoutEnd: () => void;\n\n // 数据\n getRawData: () => DataView | undefined;\n getViewDataFilter: () => DataView | undefined;\n getViewData: () => DataView | undefined;\n getViewDataProductId: () => string | undefined;\n getRawDataStatisticsByField: (field: string, isNumeric?: boolean) => { values?: any[]; min?: number; max?: number };\n getViewDataStatistics?: () => DataView | undefined;\n getDataSet?: () => DataSet;\n getFieldAlias: (field: string) => string;\n // 更新原始数据\n updateRawData: (d: any) => void;\n setData?: (dv: DataView) => void;\n rawDataUpdate: (d: DataView) => void;\n viewDataUpdate: (d: DataView) => void;\n viewDataStatisticsUpdate: (d: DataView) => void;\n addViewDataFilter: (option: ITransformOptions) => void;\n reFilterViewData: () => void;\n reTransformViewData: () => void;\n fillData: () => void;\n isHierarchyData?: () => boolean;\n getMarkData?: (d: Datum) => Datum;\n\n /**\n * 常见数据使用问题\n *\n * 一、使用图表最终展示数据\n * 比如 markline,数值轴 这样的组件\n * 需要操作展示数据,做 筛选 | 变换 的\n * 比如图例,datazoom\n series.getViewData().transform({},false)\n * 需要获取展示数据,生成自身数据做自身展示的 使用消息机制。比如 轴\n series.event.on('viewDataStatisticsUpdate' | 'viewDataUpdate', { filter: ({ model }) => model?.id === series.id }, () => {\n this.updateData();\n });\n *\n * 二、使用图表原始数据\n * 比如图例,datazoom\n * 需要使用原始数据信息,生成自身数据\n * 比如图例,datazoom\n series.getRawData().parserData | latestData // parserData latestData 区别见下面说明\n series.getRawDataStatistics().latestData\n\n series.event.on('rawDataUpdate', { filter: ({ model }) => model?.id === series.id }, () => {\n this.updateData();\n });\n * 或者使用系列自身的特殊api 特殊情况外不建议这样用\n series.getSeriesInfoList()\n\n * 建议:使用数据时需要注意数据更新,使用系列数据更新组件数据的场景,只建议使用消息监听\n series.event.on(\n 'viewDataStatisticsUpdate' |\n 'viewDataUpdate' |\n 'rawDataUpdate',\n { filter: ({ model }) => model?.id === series.id })\n */\n\n // 区域\n getRegion: () => IRegion;\n\n // mark\n initMark: () => void;\n getMarks: () => IMark[];\n getMarksWithoutRoot: () => IMark[];\n getMarkNameMap: () => Record<string, IMark>;\n getMarksInType: (type: string | string[]) => IMark[];\n getMarkInName: (name: string) => IMark | undefined;\n getMarkInId: (id: number) => IMark | undefined;\n\n getRootMark: () => IGroupMark;\n getActiveMarks: () => IMark[];\n getSeriesMark: () => IMark;\n\n // example\n /**\n * [\n * {\n * fields: {\n * x: '周一',\n * __VChart_STACK: 'stack'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20}];\n * },\n * {\n * fields: {\n * x: '周一',\n * stack: 'stackA'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20, stack: 'stackA'}];\n * },\n * {\n * fields: {\n * x: '周一',\n * stack: 'stackB'\n * },\n * valueField: 'y',\n * values: [{x: '周一', y: 20, stack: 'stackB'}];\n * },\n * ]\n */\n getStackData: () => ISeriesStackData;\n\n getStack: () => boolean;\n getStackValue: () => StringOrNumber | undefined;\n getPercent: () => boolean;\n getStackOffsetSilhouette: () => boolean;\n\n getStackValueField: () => string;\n setValueFieldToStack: () => void;\n setValueFieldToPercent: () => void;\n setValueFieldToStackOffsetSilhouette: () => void;\n\n getStackGroupFields: () => string[];\n getSeriesField: () => string | undefined;\n getSeriesKeys: () => string[];\n getSeriesStyle: (datum: Datum) => ISeriesSeriesInfo['style'];\n getSeriesInfoInField: (field: string) => ISeriesSeriesInfo[];\n getSeriesInfoList: () => ISeriesSeriesInfo[];\n getGroups: () => IGroup | undefined;\n getDimensionField: () => string[];\n getMeasureField: () => string[];\n getStatisticFields: () => { key: string; operations: StatisticOperations }[];\n getDatumPositionValues: (datum: Datum, fields: string | string[]) => any[];\n getDatumPositionValue: (datum: Datum, field: string) => any;\n\n setSeriesField: (field: string) => void;\n handleZoom?: (e: ZoomEventParam) => void;\n handlePan?: (e: PanEventParam) => void;\n\n // 数据映射\n dataToPosition: (datum: Datum, checkInViewData?: boolean) => IPoint | null;\n dataToPositionX: (datum: Datum) => number | null;\n dataToPositionY: (datum: Datum) => number | null;\n dataToPositionZ?: (datum: Datum) => number | null;\n valueToPosition: (value1: any, value2?: any) => IPoint;\n\n getColorAttribute: () => { scale: IBaseScale; field: string };\n getDefaultColorDomain: () => any[];\n\n getInvalidType: () => IInvalidType;\n\n // 交互\n\n /**\n * 获取系列默认的缩略图形\n * @returns 默认的缩略图形\n */\n getDefaultShapeType: () => string;\n /** 获取系列标签配置 */\n initLabelMarkStyle?: (labelMark: ILabelMark, labelSpec: ILabelSpec) => void;\n /** 设置总计标签配置 */\n initTotalLabelMarkStyle?: (labelMark: ILabelMark) => void;\n getTotalLabelComponentStyle?: (info: Pick<ILabelInfo, 'baseMark' | 'labelMark'>) => any;\n\n getGroupFields: () => string[];\n\n getSpecInfo: () => ISeriesSpecInfo;\n getMarkAttributeContext: () => ISeriesMarkAttributeContext;\n\n getSeriesFieldValue: (datum: Datum, seriesField?: string) => any;\n\n legendSelectedFilter?: (component: ILegend, selectedKeys: StringOrNumber[]) => StringOrNumber[];\n parseLabelStyle?: (labelStyle: any, labelSpec: any, labelMark?: ILabelMark) => any;\n\n getInteractionTriggers?: () => { trigger: Partial<IBaseTriggerOptions>; marks: IMark[] }[];\n}\n\nexport interface ICartesianSeries extends ISeries {\n readonly coordinate: 'cartesian';\n readonly direction: DirectionType;\n\n scaleX: IBaseScale;\n setScaleX: (s: IBaseScale) => void;\n scaleY: IBaseScale;\n setScaleY: (s: IBaseScale) => void;\n scaleZ?: IBaseScale;\n setScaleZ: (s: IBaseScale) => void;\n // 要考虑基于多个field的场景\n fieldX: string[];\n setFieldX: (field: string | string[], level?: number) => void;\n fieldX2: string;\n setFieldX2: (field: string) => void;\n fieldY: string[];\n setFieldY: (field: string | string[], level?: number) => void;\n fieldY2: string;\n setFieldY2: (field: string) => void;\n fieldZ?: string[];\n setFieldZ: (field: string | string[], level?: number) => void;\n\n positionToData: (p: IPoint) => any | null;\n positionToDataX: (xPos: number) => any | null;\n positionToDataY: (yPos: number) => any | null;\n\n // 轴API\n getXAxisHelper: () => IAxisHelper;\n setXAxisHelper: (h: IAxisHelper) => void;\n getYAxisHelper: () => IAxisHelper;\n setYAxisHelper: (h: IAxisHelper) => void;\n getZAxisHelper: () => IAxisHelper | undefined;\n setZAxisHelper: (h: IAxisHelper) => void;\n\n dataToPositionX1: (datum: Datum) => number | null;\n dataToPositionY1: (datum: Datum) => number | null;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n valueToPositionX: (value: StringOrNumber | StringOrNumber[], datum?: any) => any;\n valueToPositionY: (value: StringOrNumber | StringOrNumber[], datum?: any) => any;\n}\n\nexport interface IPolarSeries extends ISeries {\n readonly coordinate: 'polar';\n\n outerRadius: number;\n innerRadius: number;\n\n getRadiusField: () => string[];\n setRadiusField: (field: string | string[], level?: number) => void;\n getAngleField: () => string[];\n setAngleField: (field: string | string[], level?: number) => void;\n\n // 轴将是一个实现了 scale 的组件。这里接收的可以是一个轴\n radiusScale: IBaseScale;\n setRadiusScale: (s: IBaseScale) => void;\n angleScale: IBaseScale;\n setAngleScale: (s: IBaseScale) => void;\n\n // TODO:\n positionToData: (point: IPolarPoint) => any;\n radiusToData: (radius: number) => any;\n angleToData: (angle: number) => any;\n\n // 轴\n radiusAxisHelper: IPolarAxisHelper;\n angleAxisHelper: IPolarAxisHelper;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n}\n\nexport interface IGeoSeries extends ISeries {\n readonly coordinate: 'geo';\n\n nameField?: string;\n valueField?: string;\n\n getMapViewData: () => DataView;\n getNameProperty: () => string;\n\n dataToPosition: (datum: any, checkInViewData?: boolean) => IPoint | null;\n dataToLatitude: (latValue: any) => number | null;\n dataToLongitude: (lonValue: any) => number | null;\n nameValueToPosition: (name: string) => IPoint | null;\n\n positionToData: (p: IPoint) => any;\n latitudeToData: (lat: number) => any;\n longitudeToData: (lon: number) => any;\n\n getCoordinateHelper: () => IGeoCoordinateHelper;\n setCoordinateHelper: (helper: IGeoCoordinateHelper) => void;\n\n valueToPosition: (value1: any, value2: any) => IPoint;\n getDatumCenter: (datum: any) => [number, number];\n}\n\n// 收拢扇区标签形式依赖的 api\nexport interface IArcSeries extends IPolarSeries {\n getCenter: () => IPoint;\n getRadius: (state?: StateValueType) => number;\n getInnerRadius: (state?: StateValueType) => number;\n\n computeRadius: (r: number, k?: number) => number;\n computeDatumRadius: (datum: any, state?: StateValueType) => number;\n}\n\nexport interface IFunnelSeries extends ISeries {\n getPoints: (datum: any) => IPoint[];\n getCategoryField: () => string;\n\n valueToPosition: (value: any) => IPoint;\n}\n"]}
@@ -1,3 +1,3 @@
1
- import type { IAnimationTypeConfig } from '@visactor/vgrammar-core';
1
+ import type { IAnimationTypeConfig } from '../../animation/interface';
2
2
  import type { ILineAnimationParams, LineAppearPreset } from './interface';
3
3
  export declare function linePresetAnimation(params: ILineAnimationParams, preset: LineAppearPreset): IAnimationTypeConfig;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/line/animation.ts"],"names":[],"mappings":";;;AAIA,MAAM,aAAa,GAAG,CAAC,MAA4B,EAAwB,EAAE;IAC3E,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP,aAAa,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;SACrE;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAyB;IAC1C,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,MAA4B,EAAwB,EAAE;IACzE,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe;QACnF,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;SAC5E;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,SAAgB,mBAAmB,CAAC,MAA4B,EAAE,MAAwB;IACxF,QAAQ,MAAM,EAAE;QACd,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB;YACE,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;KAChC;AACH,CAAC;AATD,kDASC","file":"animation.js","sourcesContent":["import { Direction } from '../../typings/space';\nimport type { IAnimationTypeConfig } from '@visactor/vgrammar-core';\nimport type { ILineAnimationParams, LineAppearPreset } from './interface';\n\nconst Appear_ClipIn = (params: ILineAnimationParams): IAnimationTypeConfig => {\n return {\n type: 'clipIn',\n options: {\n clipDimension: params.direction === Direction.horizontal ? 'y' : 'x'\n }\n };\n};\n\nconst Appear_FadeIn: IAnimationTypeConfig = {\n type: 'fadeIn'\n};\n\nconst Appear_Grow = (params: ILineAnimationParams): IAnimationTypeConfig => {\n return {\n type: params.direction === Direction.horizontal ? 'growPointsXIn' : 'growPointsYIn',\n options: {\n orient: params.direction === Direction.horizontal ? 'positive' : 'negative'\n }\n };\n};\n\nexport function linePresetAnimation(params: ILineAnimationParams, preset: LineAppearPreset): IAnimationTypeConfig {\n switch (preset) {\n case 'grow':\n return Appear_Grow(params);\n case 'fadeIn':\n return Appear_FadeIn;\n default:\n return Appear_ClipIn(params);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/line/animation.ts"],"names":[],"mappings":";;;AAIA,MAAM,aAAa,GAAG,CAAC,MAA4B,EAAwB,EAAE;IAC3E,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP,aAAa,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;SACrE;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAyB;IAC1C,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,MAA4B,EAAwB,EAAE;IACzE,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe;QACnF,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,SAAS,iBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;SAC5E;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,SAAgB,mBAAmB,CAAC,MAA4B,EAAE,MAAwB;IACxF,QAAQ,MAAM,EAAE;QACd,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB;YACE,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;KAChC;AACH,CAAC;AATD,kDASC","file":"animation.js","sourcesContent":["import type { IAnimationTypeConfig } from '../../animation/interface';\nimport { Direction } from '../../typings/space';\nimport type { ILineAnimationParams, LineAppearPreset } from './interface';\n\nconst Appear_ClipIn = (params: ILineAnimationParams): IAnimationTypeConfig => {\n return {\n type: 'clipIn',\n options: {\n clipDimension: params.direction === Direction.horizontal ? 'y' : 'x'\n }\n };\n};\n\nconst Appear_FadeIn: IAnimationTypeConfig = {\n type: 'fadeIn'\n};\n\nconst Appear_Grow = (params: ILineAnimationParams): IAnimationTypeConfig => {\n return {\n type: params.direction === Direction.horizontal ? 'growPointsXIn' : 'growPointsYIn',\n options: {\n orient: params.direction === Direction.horizontal ? 'positive' : 'negative'\n }\n };\n};\n\nexport function linePresetAnimation(params: ILineAnimationParams, preset: LineAppearPreset): IAnimationTypeConfig {\n switch (preset) {\n case 'grow':\n return Appear_Grow(params);\n case 'fadeIn':\n return Appear_FadeIn;\n default:\n return Appear_ClipIn(params);\n }\n}\n"]}
@@ -20,7 +20,7 @@ export declare class LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec> ext
20
20
  protected initTooltip(): void;
21
21
  initMarkStyle(): void;
22
22
  initAnimation(): void;
23
- onLayoutEnd(ctx: any): void;
23
+ onLayoutEnd(): void;
24
24
  getSeriesStyle(datum: Datum): (attribute: string) => unknown;
25
25
  getDefaultShapeType(): string;
26
26
  getActiveMarks(): IMark[];
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerLineSeries = exports.LineSeries = void 0;
6
6
 
7
- const cartesian_1 = require("../cartesian/cartesian"), type_1 = require("../interface/type"), line_mixin_1 = require("../mixin/line-mixin"), vutils_1 = require("@visactor/vutils"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), constant_1 = require("./constant"), line_1 = require("../../mark/line"), symbol_1 = require("../../mark/symbol"), factory_1 = require("../../core/factory"), vgrammar_core_1 = require("@visactor/vgrammar-core"), line_mixin_transformer_1 = require("../mixin/line-mixin-transformer"), utils_2 = require("../util/utils"), cartesian_2 = require("../../component/axis/cartesian");
7
+ const cartesian_1 = require("../cartesian/cartesian"), type_1 = require("../interface/type"), line_mixin_1 = require("../mixin/line-mixin"), vutils_1 = require("@visactor/vutils"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), constant_1 = require("./constant"), line_1 = require("../../mark/line"), symbol_1 = require("../../mark/symbol"), factory_1 = require("../../core/factory"), line_mixin_transformer_1 = require("../mixin/line-mixin-transformer"), utils_2 = require("../util/utils"), cartesian_2 = require("../../component/axis/cartesian"), symbol_overlap_1 = require("../../mark/transform/symbol-overlap"), data_sampling_1 = require("../../mark/transform/data-sampling");
8
8
 
9
9
  class LineSeries extends cartesian_1.CartesianSeries {
10
10
  constructor() {
@@ -16,13 +16,8 @@ class LineSeries extends cartesian_1.CartesianSeries {
16
16
  }
17
17
  initMark() {
18
18
  var _a;
19
- const progressive = {
20
- progressiveStep: this._spec.progressiveStep,
21
- progressiveThreshold: this._spec.progressiveThreshold,
22
- large: this._spec.large,
23
- largeThreshold: this._spec.largeThreshold
24
- }, seriesMark = null !== (_a = this._spec.seriesMark) && void 0 !== _a ? _a : "line";
25
- this.initLineMark(progressive, "line" === seriesMark), this.initSymbolMark(progressive, "point" === seriesMark);
19
+ const seriesMark = null !== (_a = this._spec.seriesMark) && void 0 !== _a ? _a : "line";
20
+ this.initLineMark("line" === seriesMark), this.initSymbolMark("point" === seriesMark);
26
21
  }
27
22
  initTooltip() {
28
23
  super.initTooltip();
@@ -46,8 +41,8 @@ class LineSeries extends cartesian_1.CartesianSeries {
46
41
  utils_1.userAnimationConfig)("point", this._spec, this._markAttributeContext), animationParams));
47
42
  }
48
43
  }
49
- onLayoutEnd(ctx) {
50
- super.onLayoutEnd(ctx), this.reCompileSampling();
44
+ onLayoutEnd() {
45
+ super.onLayoutEnd(), this.reCompileSampling();
51
46
  }
52
47
  getSeriesStyle(datum) {
53
48
  var _a;
@@ -70,7 +65,7 @@ LineSeries.transformerConstructor = line_mixin_transformer_1.LineLikeSeriesSpecT
70
65
  (0, vutils_1.mixin)(LineSeries, line_mixin_1.LineLikeSeriesMixin);
71
66
 
72
67
  const registerLineSeries = () => {
73
- (0, vgrammar_core_1.registerSampleTransform)(), (0, vgrammar_core_1.registerMarkOverlapTransform)(),
68
+ (0, data_sampling_1.registerDataSamplingTransform)(), (0, symbol_overlap_1.registerSymbolOverlapTransform)(),
74
69
  (0, line_1.registerLineMark)(), (0, symbol_1.registerSymbolMark)(), (0, config_1.registerLineAnimation)(),
75
70
  (0, config_1.registerScaleInOutAnimation)(), (0, cartesian_2.registerCartesianBandAxis)(),
76
71
  (0, cartesian_2.registerCartesianLinearAxis)(), factory_1.Factory.registerSeries(LineSeries.type, LineSeries);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/line/line.ts"],"names":[],"mappings":"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","file":"line.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { LineLikeSeriesMixin } from '../mixin/line-mixin';\nimport { mixin } from '@visactor/vutils';\nimport type { Datum } from '../../typings';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerLineAnimation, registerScaleInOutAnimation } from '../../animation/config';\nimport type { ILineSeriesSpec, LineAppearPreset } from './interface';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { lineSeriesMark } from './constant';\nimport { registerLineMark } from '../../mark/line';\nimport { registerSymbolMark } from '../../mark/symbol';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\nimport { registerSampleTransform, registerMarkOverlapTransform } from '@visactor/vgrammar-core';\nimport { LineLikeSeriesSpecTransformer } from '../mixin/line-mixin-transformer';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\n\nexport interface LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec>\n extends Pick<\n LineLikeSeriesMixin,\n | 'initLineMark'\n | 'initSymbolMark'\n | 'initLabelMarkStyle'\n | 'initLineMarkStyle'\n | 'initSymbolMarkStyle'\n | '_lineMark'\n | '_symbolMark'\n | 'addSamplingCompile'\n | 'addOverlapCompile'\n | 'reCompileSampling'\n >,\n CartesianSeries<T> {}\n\nexport class LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.line;\n type = SeriesTypeEnum.line;\n\n static readonly mark: SeriesMarkMap = lineSeriesMark;\n static readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n\n protected _sortDataByAxis: boolean = false;\n\n compile(): void {\n super.compile();\n this.addSamplingCompile();\n this.addOverlapCompile();\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n const seriesMark = this._spec.seriesMark ?? 'line';\n this.initLineMark(progressive, seriesMark === 'line');\n this.initSymbolMark(progressive, seriesMark === 'point');\n }\n\n protected initTooltip() {\n super.initTooltip();\n const { group, mark } = this._tooltipHelper.activeTriggerSet;\n if (this._lineMark) {\n group.add(this._lineMark);\n }\n if (this._symbolMark) {\n mark.add(this._symbolMark);\n group.add(this._symbolMark);\n }\n }\n\n initMarkStyle(): void {\n this.initLineMarkStyle(this._direction);\n this.initSymbolMarkStyle();\n }\n\n initAnimation() {\n const lineAnimationParams = { direction: this.direction };\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<LineAppearPreset>)?.preset;\n this._lineMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('line')?.(lineAnimationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.line, this._spec, this._markAttributeContext)\n )\n );\n\n if (this._symbolMark) {\n const animationParams = getGroupAnimationParams(this);\n this._symbolMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('scaleInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.point, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this.reCompileSampling();\n }\n\n getSeriesStyle(datum: Datum) {\n const isLineAsSeriesMark = this._spec?.seriesMark !== 'point'; // 加判空防止某些特殊时刻(如 updateSpec 时)鼠标滑过图表导致报错\n return (attribute: string) => {\n if (isLineAsSeriesMark) {\n // 增加一个标识位,用于是否替换,因为图例获取颜色的时候是不需要替换的\n attribute === 'fill' && (attribute = 'stroke');\n }\n return this._seriesMark?.getAttribute(attribute as any, datum) ?? undefined;\n };\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [this._lineMark, this._symbolMark];\n }\n}\n\nmixin(LineSeries, LineLikeSeriesMixin);\n\nexport const registerLineSeries = () => {\n registerSampleTransform();\n registerMarkOverlapTransform();\n registerLineMark();\n registerSymbolMark();\n registerLineAnimation();\n registerScaleInOutAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(LineSeries.type, LineSeries);\n};\n"]}
1
+ {"version":3,"sources":["../src/series/line/line.ts"],"names":[],"mappings":";;;AACA,sDAAyD;AAEzD,4CAAuE;AACvE,oDAA0D;AAC1D,6CAAyC;AAEzC,iDAA6E;AAC7E,mDAA4F;AAG5F,yCAA4C;AAC5C,0CAAmD;AACnD,8CAAuD;AACvD,gDAA6C;AAE7C,4EAAgF;AAChF,yCAAwD;AACxD,8DAAwG;AACxG,wEAAqF;AACrF,sEAAmF;AAkBnF,MAAa,UAAwD,SAAQ,2BAAkB;IAA/F;;QAEE,SAAI,GAAG,qBAAc,CAAC,IAAI,CAAC;QAIlB,2BAAsB,GAAG,sDAA6B,CAAC;QAEtD,oBAAe,GAAY,KAAK,CAAC;IA4E7C,CAAC;IA1EC,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,QAAQ;;QACN,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,UAAU,mCAAI,MAAM,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC;IAC9C,CAAC;IAES,WAAW;QACnB,KAAK,CAAC,WAAW,EAAE,CAAC;QACpB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;QAC7D,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC3B;QACD,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;IACH,CAAC;IAED,aAAa;QACX,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED,aAAa;;QACX,MAAM,mBAAmB,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1D,MAAM,YAAY,GAAG,MAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,eAAuD,0CAAE,MAAM,CAAC;QAClG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAC/B,IAAA,uBAAe,EACb,MAAA,iBAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,0CAAG,mBAAmB,EAAE,YAAY,CAAC,EACtE,IAAA,2BAAmB,UAA0B,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CACrF,CACF,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,eAAe,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,CAAC,kBAAkB,CACjC,IAAA,uBAAe,EACb,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,EAC3C,IAAA,2BAAmB,WAA2B,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,EACrF,eAAe,CAChB,CACF,CAAC;SACH;IACH,CAAC;IAED,WAAW;QACT,KAAK,CAAC,WAAW,EAAE,CAAC;QACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,cAAc,CAAC,KAAY;;QACzB,MAAM,kBAAkB,GAAG,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,MAAK,OAAO,CAAC;QAC9D,OAAO,CAAC,SAAiB,EAAE,EAAE;;YAC3B,IAAI,kBAAkB,EAAE;gBAEtB,SAAS,KAAK,MAAM,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC;aAChD;YACD,OAAO,MAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,YAAY,CAAC,SAAgB,EAAE,KAAK,CAAC,mCAAI,SAAS,CAAC;QAC9E,CAAC,CAAC;IACJ,CAAC;IAED,mBAAmB;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;;AAnFH,gCAoFC;AAnFiB,eAAI,GAAW,qBAAc,CAAC,IAAI,CAAC;AAGnC,eAAI,GAAkB,yBAAc,CAAC;AACrC,iCAAsB,GAAG,sDAA6B,CAAC;AAiFzE,IAAA,cAAK,EAAC,UAAU,EAAE,gCAAmB,CAAC,CAAC;AAEhC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,6CAA6B,GAAE,CAAC;IAChC,IAAA,+CAA8B,GAAE,CAAC;IACjC,IAAA,uBAAgB,GAAE,CAAC;IACnB,IAAA,2BAAkB,GAAE,CAAC;IACrB,IAAA,8BAAqB,GAAE,CAAC;IACxB,IAAA,oCAA2B,GAAE,CAAC;IAC9B,IAAA,qCAAyB,GAAE,CAAC;IAC5B,IAAA,uCAA2B,GAAE,CAAC;IAC9B,iBAAO,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B","file":"line.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { LineLikeSeriesMixin } from '../mixin/line-mixin';\nimport { mixin } from '@visactor/vutils';\nimport type { Datum } from '../../typings';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerLineAnimation, registerScaleInOutAnimation } from '../../animation/config';\nimport type { ILineSeriesSpec, LineAppearPreset } from './interface';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { lineSeriesMark } from './constant';\nimport { registerLineMark } from '../../mark/line';\nimport { registerSymbolMark } from '../../mark/symbol';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\nimport { LineLikeSeriesSpecTransformer } from '../mixin/line-mixin-transformer';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\nimport { registerSymbolOverlapTransform } from '../../mark/transform/symbol-overlap';\nimport { registerDataSamplingTransform } from '../../mark/transform/data-sampling';\n\nexport interface LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec>\n extends Pick<\n LineLikeSeriesMixin,\n | 'initLineMark'\n | 'initSymbolMark'\n | 'initLabelMarkStyle'\n | 'initLineMarkStyle'\n | 'initSymbolMarkStyle'\n | '_lineMark'\n | '_symbolMark'\n | 'addSamplingCompile'\n | 'addOverlapCompile'\n | 'reCompileSampling'\n >,\n CartesianSeries<T> {}\n\nexport class LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.line;\n type = SeriesTypeEnum.line;\n\n static readonly mark: SeriesMarkMap = lineSeriesMark;\n static readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n\n protected _sortDataByAxis: boolean = false;\n\n compile(): void {\n super.compile();\n this.addSamplingCompile();\n this.addOverlapCompile();\n }\n\n initMark(): void {\n const seriesMark = this._spec.seriesMark ?? 'line';\n this.initLineMark(seriesMark === 'line');\n this.initSymbolMark(seriesMark === 'point');\n }\n\n protected initTooltip() {\n super.initTooltip();\n const { group, mark } = this._tooltipHelper.activeTriggerSet;\n if (this._lineMark) {\n group.add(this._lineMark);\n }\n if (this._symbolMark) {\n mark.add(this._symbolMark);\n group.add(this._symbolMark);\n }\n }\n\n initMarkStyle(): void {\n this.initLineMarkStyle(this._direction);\n this.initSymbolMarkStyle();\n }\n\n initAnimation() {\n const lineAnimationParams = { direction: this.direction };\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<LineAppearPreset>)?.preset;\n this._lineMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('line')?.(lineAnimationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.line, this._spec, this._markAttributeContext)\n )\n );\n\n if (this._symbolMark) {\n const animationParams = getGroupAnimationParams(this);\n this._symbolMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('scaleInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.point, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n }\n }\n\n onLayoutEnd(): void {\n super.onLayoutEnd();\n this.reCompileSampling();\n }\n\n getSeriesStyle(datum: Datum) {\n const isLineAsSeriesMark = this._spec?.seriesMark !== 'point'; // 加判空防止某些特殊时刻(如 updateSpec 时)鼠标滑过图表导致报错\n return (attribute: string) => {\n if (isLineAsSeriesMark) {\n // 增加一个标识位,用于是否替换,因为图例获取颜色的时候是不需要替换的\n attribute === 'fill' && (attribute = 'stroke');\n }\n return this._seriesMark?.getAttribute(attribute as any, datum) ?? undefined;\n };\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [this._lineMark, this._symbolMark];\n }\n}\n\nmixin(LineSeries, LineLikeSeriesMixin);\n\nexport const registerLineSeries = () => {\n registerDataSamplingTransform();\n registerSymbolOverlapTransform();\n registerLineMark();\n registerSymbolMark();\n registerLineAnimation();\n registerScaleInOutAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(LineSeries.type, LineSeries);\n};\n"]}
@@ -44,10 +44,13 @@ export declare class LinkSeries<T extends ILinkSeriesSpec = ILinkSeriesSpec> ext
44
44
  scale: any;
45
45
  field: string;
46
46
  };
47
- initInteraction(): void;
47
+ getInteractionTriggers(): {
48
+ trigger: Partial<import("../../interaction/interface/trigger").IBaseTriggerOptions>;
49
+ marks: IMark[];
50
+ }[];
48
51
  protected initTooltip(): void;
49
52
  protected onMarkTreePositionUpdate(marks: IMark[]): void;
50
- getDotInfoData(): import("../../compile/mark").IMarkData;
53
+ getDotInfoData(): import("../../compile/data").ICompilableData;
51
54
  getActiveMarks(): IMark[];
52
55
  }
53
56
  export declare const registerLinkSeries: () => void;
@@ -176,9 +176,9 @@ class LinkSeries extends cartesian_1.CartesianSeries {
176
176
  field: null !== (_c = null !== (_b = this._dotTypeField) && void 0 !== _b ? _b : this._seriesField) && void 0 !== _c ? _c : data_1.DEFAULT_DATA_SERIES_FIELD
177
177
  };
178
178
  }
179
- initInteraction() {
179
+ getInteractionTriggers() {
180
180
  const marks = [];
181
- this._linkMark && marks.push(this._linkMark), this._arrowMark && marks.push(this._arrowMark),
181
+ return this._linkMark && marks.push(this._linkMark), this._arrowMark && marks.push(this._arrowMark),
182
182
  this._parseInteractionConfig(marks);
183
183
  }
184
184
  initTooltip() {
@@ -187,7 +187,7 @@ class LinkSeries extends cartesian_1.CartesianSeries {
187
187
  }
188
188
  onMarkTreePositionUpdate(marks) {
189
189
  marks.forEach((m => {
190
- "group" === m.type ? this.onMarkTreePositionUpdate(m.getMarks()) : m.updateLayoutState();
190
+ m.commit(!1, !0);
191
191
  }));
192
192
  }
193
193
  getDotInfoData() {