@visactor/vchart 1.3.0-beta.8 → 1.3.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 (985) hide show
  1. package/build/es5/index.js +3 -3
  2. package/build/index.js +17083 -16200
  3. package/build/index.min.js +2 -2
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/utils.js +2 -2
  6. package/cjs/animation/utils.js.map +1 -1
  7. package/cjs/chart/area/area.js +2 -2
  8. package/cjs/chart/area/area.js.map +1 -1
  9. package/cjs/chart/bar/bar-3d.js +2 -2
  10. package/cjs/chart/bar/bar-3d.js.map +1 -1
  11. package/cjs/chart/bar/bar.js +2 -2
  12. package/cjs/chart/bar/bar.js.map +1 -1
  13. package/cjs/chart/base-chart.d.ts +1 -0
  14. package/cjs/chart/base-chart.js +14 -8
  15. package/cjs/chart/base-chart.js.map +1 -1
  16. package/cjs/chart/box-plot/box-plot.js +2 -2
  17. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  18. package/cjs/chart/cartesian/cartesian.js +1 -1
  19. package/cjs/chart/cartesian/cartesian.js.map +1 -1
  20. package/cjs/chart/circle-packing/circle-packing.js +2 -2
  21. package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
  22. package/cjs/chart/funnel/funnel-3d.js +2 -2
  23. package/cjs/chart/funnel/funnel-3d.js.map +1 -1
  24. package/cjs/chart/funnel/funnel.js +2 -2
  25. package/cjs/chart/funnel/funnel.js.map +1 -1
  26. package/cjs/chart/gauge/gauge.js +2 -2
  27. package/cjs/chart/gauge/gauge.js.map +1 -1
  28. package/cjs/chart/heatmap/heatmap.js +2 -2
  29. package/cjs/chart/heatmap/heatmap.js.map +1 -1
  30. package/cjs/chart/histogram/histogram-3d.js +2 -2
  31. package/cjs/chart/histogram/histogram-3d.js.map +1 -1
  32. package/cjs/chart/histogram/histogram.js +2 -2
  33. package/cjs/chart/histogram/histogram.js.map +1 -1
  34. package/cjs/chart/index.d.ts +1 -1
  35. package/cjs/chart/index.js.map +1 -1
  36. package/cjs/chart/line/line.js +2 -2
  37. package/cjs/chart/line/line.js.map +1 -1
  38. package/cjs/chart/map/map.js +2 -2
  39. package/cjs/chart/map/map.js.map +1 -1
  40. package/cjs/chart/pie/pie-3d.js +2 -2
  41. package/cjs/chart/pie/pie-3d.js.map +1 -1
  42. package/cjs/chart/pie/pie.js +2 -2
  43. package/cjs/chart/pie/pie.js.map +1 -1
  44. package/cjs/chart/polar/progress-like.js +2 -2
  45. package/cjs/chart/polar/progress-like.js.map +1 -1
  46. package/cjs/chart/polar/rose-like.js +1 -1
  47. package/cjs/chart/polar/rose-like.js.map +1 -1
  48. package/cjs/chart/progress/circular/circular.js +2 -2
  49. package/cjs/chart/progress/circular/circular.js.map +1 -1
  50. package/cjs/chart/progress/linear/linear.js +4 -4
  51. package/cjs/chart/progress/linear/linear.js.map +1 -1
  52. package/cjs/chart/radar/radar.js +4 -4
  53. package/cjs/chart/radar/radar.js.map +1 -1
  54. package/cjs/chart/range-area/range-area.js +2 -2
  55. package/cjs/chart/range-area/range-area.js.map +1 -1
  56. package/cjs/chart/range-column/range-column-3d.js +2 -2
  57. package/cjs/chart/range-column/range-column-3d.js.map +1 -1
  58. package/cjs/chart/range-column/range-column.js +2 -2
  59. package/cjs/chart/range-column/range-column.js.map +1 -1
  60. package/cjs/chart/rose/rose.js +3 -3
  61. package/cjs/chart/rose/rose.js.map +1 -1
  62. package/cjs/chart/sankey/sankey.js +2 -2
  63. package/cjs/chart/sankey/sankey.js.map +1 -1
  64. package/cjs/chart/scatter/scatter.js +2 -2
  65. package/cjs/chart/scatter/scatter.js.map +1 -1
  66. package/cjs/chart/sequence/sequence.js +2 -2
  67. package/cjs/chart/sequence/sequence.js.map +1 -1
  68. package/cjs/chart/stack.js.map +1 -1
  69. package/cjs/chart/sunburst/sunburst.js +2 -2
  70. package/cjs/chart/sunburst/sunburst.js.map +1 -1
  71. package/cjs/chart/treemap/treemap.js +2 -2
  72. package/cjs/chart/treemap/treemap.js.map +1 -1
  73. package/cjs/chart/util.js +1 -1
  74. package/cjs/chart/util.js.map +1 -1
  75. package/cjs/chart/waterfall/waterfall.js +2 -2
  76. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  77. package/cjs/chart/word-cloud/word-cloud-3d.js +2 -2
  78. package/cjs/chart/word-cloud/word-cloud-3d.js.map +1 -1
  79. package/cjs/chart/word-cloud/word-cloud.js +2 -2
  80. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  81. package/cjs/compile/compiler.d.ts +4 -0
  82. package/cjs/compile/compiler.js +4 -0
  83. package/cjs/compile/compiler.js.map +1 -1
  84. package/cjs/compile/interface/compilable-item.d.ts +1 -0
  85. package/cjs/compile/interface/compilable-item.js.map +1 -1
  86. package/cjs/compile/mark/compilable-mark.js +9 -10
  87. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  88. package/cjs/compile/mark/interface.d.ts +0 -1
  89. package/cjs/compile/mark/interface.js.map +1 -1
  90. package/cjs/compile/mark/util.d.ts +2 -1
  91. package/cjs/compile/mark/util.js +21 -5
  92. package/cjs/compile/mark/util.js.map +1 -1
  93. package/cjs/component/axis/base-axis.d.ts +1 -14
  94. package/cjs/component/axis/base-axis.js +18 -29
  95. package/cjs/component/axis/base-axis.js.map +1 -1
  96. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  97. package/cjs/component/axis/cartesian/axis.js +24 -23
  98. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  99. package/cjs/component/axis/cartesian/band-axis.d.ts +1 -0
  100. package/cjs/component/axis/cartesian/band-axis.js +1 -0
  101. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  102. package/cjs/component/axis/cartesian/index.d.ts +1 -0
  103. package/cjs/component/axis/cartesian/index.js +2 -1
  104. package/cjs/component/axis/cartesian/index.js.map +1 -1
  105. package/cjs/component/axis/cartesian/interface/common.d.ts +2 -0
  106. package/cjs/component/axis/cartesian/interface/common.js.map +1 -1
  107. package/cjs/component/axis/cartesian/interface/spec.d.ts +4 -1
  108. package/cjs/component/axis/cartesian/interface/spec.js.map +1 -1
  109. package/cjs/component/axis/cartesian/linear-axis.js +4 -3
  110. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  111. package/cjs/component/axis/cartesian/symlog-axis.d.ts +16 -0
  112. package/cjs/component/axis/cartesian/symlog-axis.js +23 -0
  113. package/cjs/component/axis/cartesian/symlog-axis.js.map +1 -0
  114. package/cjs/component/axis/cartesian/time-axis.js +2 -2
  115. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  116. package/cjs/component/axis/interface.d.ts +4 -8
  117. package/cjs/component/axis/interface.js.map +1 -1
  118. package/cjs/component/axis/mixin/linear-axis-mixin.js +3 -3
  119. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  120. package/cjs/component/axis/polar/axis.d.ts +2 -1
  121. package/cjs/component/axis/polar/axis.js +15 -14
  122. package/cjs/component/axis/polar/axis.js.map +1 -1
  123. package/cjs/component/axis/polar/band-axis.d.ts +1 -0
  124. package/cjs/component/axis/polar/interface/common.d.ts +1 -1
  125. package/cjs/component/axis/polar/interface/common.js.map +1 -1
  126. package/cjs/component/axis/{utils.d.ts → util.d.ts} +1 -1
  127. package/cjs/component/axis/{utils.js → util.js} +6 -6
  128. package/cjs/component/axis/util.js.map +1 -0
  129. package/cjs/component/base/base-component.d.ts +10 -2
  130. package/cjs/component/base/base-component.js +10 -5
  131. package/cjs/component/base/base-component.js.map +1 -1
  132. package/cjs/component/base/interface.d.ts +8 -0
  133. package/cjs/component/base/interface.js +6 -0
  134. package/cjs/component/base/interface.js.map +1 -0
  135. package/cjs/component/base/util.d.ts +2 -1
  136. package/cjs/component/base/util.js +21 -16
  137. package/cjs/component/base/util.js.map +1 -1
  138. package/cjs/component/brush/brush.d.ts +12 -2
  139. package/cjs/component/brush/brush.js +74 -63
  140. package/cjs/component/brush/brush.js.map +1 -1
  141. package/cjs/component/crosshair/base.d.ts +2 -2
  142. package/cjs/component/crosshair/base.js +1 -1
  143. package/cjs/component/crosshair/base.js.map +1 -1
  144. package/cjs/component/crosshair/cartesian.js +9 -9
  145. package/cjs/component/crosshair/cartesian.js.map +1 -1
  146. package/cjs/component/crosshair/interface/spec.d.ts +8 -8
  147. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  148. package/cjs/component/crosshair/interface/theme.d.ts +3 -1
  149. package/cjs/component/crosshair/interface/theme.js.map +1 -1
  150. package/cjs/component/crosshair/polar.js +9 -9
  151. package/cjs/component/crosshair/polar.js.map +1 -1
  152. package/cjs/component/crosshair/util.d.ts +5 -0
  153. package/cjs/component/crosshair/util.js +41 -4
  154. package/cjs/component/crosshair/util.js.map +1 -1
  155. package/cjs/component/custom-mark/custom-mark.d.ts +1 -1
  156. package/cjs/component/custom-mark/custom-mark.js +3 -3
  157. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  158. package/cjs/component/data-zoom/data-filter-base-component.d.ts +0 -1
  159. package/cjs/component/data-zoom/data-filter-base-component.js +2 -9
  160. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  161. package/cjs/component/data-zoom/data-zoom/data-zoom.js +6 -6
  162. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  163. package/cjs/component/data-zoom/data-zoom/interface.d.ts +2 -2
  164. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  165. package/cjs/component/data-zoom/interface.d.ts +2 -5
  166. package/cjs/component/data-zoom/interface.js.map +1 -1
  167. package/cjs/component/geo/geo-coordinate.d.ts +2 -0
  168. package/cjs/component/geo/geo-coordinate.js +29 -3
  169. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  170. package/cjs/component/geo/projection.d.ts +1 -0
  171. package/cjs/component/geo/projection.js +4 -0
  172. package/cjs/component/geo/projection.js.map +1 -1
  173. package/cjs/component/index.d.ts +2 -2
  174. package/cjs/component/index.js +6 -1
  175. package/cjs/component/index.js.map +1 -1
  176. package/cjs/component/indicator/indicator.d.ts +1 -0
  177. package/cjs/component/indicator/indicator.js +10 -7
  178. package/cjs/component/indicator/indicator.js.map +1 -1
  179. package/cjs/component/indicator/interface.d.ts +5 -6
  180. package/cjs/component/indicator/interface.js.map +1 -1
  181. package/cjs/component/interface/theme.d.ts +2 -2
  182. package/cjs/component/interface/theme.js.map +1 -1
  183. package/cjs/component/interface/type.d.ts +1 -0
  184. package/cjs/component/interface/type.js +12 -11
  185. package/cjs/component/interface/type.js.map +1 -1
  186. package/cjs/component/label/base-label.d.ts +0 -1
  187. package/cjs/component/label/base-label.js +0 -5
  188. package/cjs/component/label/base-label.js.map +1 -1
  189. package/cjs/component/label/interface.d.ts +2 -1
  190. package/cjs/component/label/interface.js.map +1 -1
  191. package/cjs/component/label/label.d.ts +0 -1
  192. package/cjs/component/label/label.js +1 -6
  193. package/cjs/component/label/label.js.map +1 -1
  194. package/cjs/component/label/totalLabel.js +1 -1
  195. package/cjs/component/label/totalLabel.js.map +1 -1
  196. package/cjs/component/legend/base-legend.js +4 -4
  197. package/cjs/component/legend/base-legend.js.map +1 -1
  198. package/cjs/component/legend/continuous/util.js +4 -4
  199. package/cjs/component/legend/continuous/util.js.map +1 -1
  200. package/cjs/component/legend/discrete/interface.d.ts +3 -1
  201. package/cjs/component/legend/discrete/interface.js.map +1 -1
  202. package/cjs/component/legend/discrete/legend.js +2 -2
  203. package/cjs/component/legend/discrete/legend.js.map +1 -1
  204. package/cjs/component/legend/discrete/util.js +2 -2
  205. package/cjs/component/legend/discrete/util.js.map +1 -1
  206. package/cjs/component/legend/interface.d.ts +2 -6
  207. package/cjs/component/legend/interface.js.map +1 -1
  208. package/cjs/component/legend/util.js +2 -2
  209. package/cjs/component/legend/util.js.map +1 -1
  210. package/cjs/component/marker/interface.d.ts +2 -2
  211. package/cjs/component/marker/interface.js.map +1 -1
  212. package/cjs/component/poptip/interface.d.ts +15 -0
  213. package/cjs/component/poptip/interface.js +6 -0
  214. package/cjs/component/poptip/interface.js.map +1 -0
  215. package/cjs/component/title/interface/spec.d.ts +2 -2
  216. package/cjs/component/title/interface/spec.js.map +1 -1
  217. package/cjs/component/tooltip/handler/dom/model/content-column-model.js +5 -5
  218. package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  219. package/cjs/component/tooltip/handler/dom/model/content-model.js +2 -2
  220. package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  221. package/cjs/component/tooltip/handler/dom/model/title-model.js +2 -2
  222. package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  223. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js +2 -2
  224. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  225. package/cjs/component/tooltip/handler/dom/util.js +3 -3
  226. package/cjs/component/tooltip/handler/dom/util.js.map +1 -1
  227. package/cjs/component/tooltip/handler/utils/attribute.js +3 -3
  228. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  229. package/cjs/component/tooltip/handler/utils/get-spec.js +1 -1
  230. package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
  231. package/cjs/component/tooltip/handler/utils/style.js +2 -2
  232. package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
  233. package/cjs/component/tooltip/processor/base.js +1 -1
  234. package/cjs/component/tooltip/processor/base.js.map +1 -1
  235. package/cjs/component/tooltip/tooltip.js +3 -2
  236. package/cjs/component/tooltip/tooltip.js.map +1 -1
  237. package/cjs/core/index.d.ts +1 -1
  238. package/cjs/core/index.js +1 -1
  239. package/cjs/core/index.js.map +1 -1
  240. package/cjs/core/vchart.js +20 -17
  241. package/cjs/core/vchart.js.map +1 -1
  242. package/cjs/data/transforms/dimension-statistics.d.ts +11 -5
  243. package/cjs/data/transforms/dimension-statistics.js +34 -22
  244. package/cjs/data/transforms/dimension-statistics.js.map +1 -1
  245. package/cjs/data/transforms/legend-data/discrete/discrete.js +4 -2
  246. package/cjs/data/transforms/legend-data/discrete/discrete.js.map +1 -1
  247. package/cjs/data/transforms/tick-data/discrete/polar-angle.js +2 -2
  248. package/cjs/data/transforms/tick-data/discrete/polar-angle.js.map +1 -1
  249. package/cjs/data/transforms/tick-data/util.js +5 -5
  250. package/cjs/data/transforms/tick-data/util.js.map +1 -1
  251. package/cjs/event/events/dimension/util/cartesian.js +2 -2
  252. package/cjs/event/events/dimension/util/cartesian.js.map +1 -1
  253. package/cjs/event/events/dimension/util/polar.js +1 -1
  254. package/cjs/event/events/dimension/util/polar.js.map +1 -1
  255. package/cjs/interaction/trigger.js +2 -2
  256. package/cjs/interaction/trigger.js.map +1 -1
  257. package/cjs/mark/base/base-mark.d.ts +1 -0
  258. package/cjs/mark/base/base-mark.js +21 -4
  259. package/cjs/mark/base/base-mark.js.map +1 -1
  260. package/cjs/mark/mark-set/index.d.ts +1 -0
  261. package/cjs/mark/mark-set/index.js.map +1 -1
  262. package/cjs/mark/symbol.js +1 -1
  263. package/cjs/mark/symbol.js.map +1 -1
  264. package/cjs/model/base-model.js +2 -2
  265. package/cjs/model/base-model.js.map +1 -1
  266. package/cjs/model/interface.d.ts +1 -1
  267. package/cjs/model/interface.js.map +1 -1
  268. package/cjs/plugin/components/index.d.ts +0 -2
  269. package/cjs/plugin/components/index.js +1 -2
  270. package/cjs/plugin/components/index.js.map +1 -1
  271. package/cjs/series/area/area.d.ts +4 -1
  272. package/cjs/series/area/area.js +9 -5
  273. package/cjs/series/area/area.js.map +1 -1
  274. package/cjs/series/bar/bar.js +10 -10
  275. package/cjs/series/bar/bar.js.map +1 -1
  276. package/cjs/series/base/base-series.d.ts +2 -0
  277. package/cjs/series/base/base-series.js +71 -15
  278. package/cjs/series/base/base-series.js.map +1 -1
  279. package/cjs/series/base/tooltip-helper.js +4 -2
  280. package/cjs/series/base/tooltip-helper.js.map +1 -1
  281. package/cjs/series/box-plot/box-plot.js +1 -1
  282. package/cjs/series/box-plot/box-plot.js.map +1 -1
  283. package/cjs/series/cartesian/cartesian.d.ts +10 -3
  284. package/cjs/series/cartesian/cartesian.js +39 -27
  285. package/cjs/series/cartesian/cartesian.js.map +1 -1
  286. package/cjs/series/cartesian/interface.d.ts +1 -0
  287. package/cjs/series/cartesian/interface.js.map +1 -1
  288. package/cjs/series/dot/dot.js +1 -1
  289. package/cjs/series/dot/dot.js.map +1 -1
  290. package/cjs/series/funnel/funnel.js +13 -3
  291. package/cjs/series/funnel/funnel.js.map +1 -1
  292. package/cjs/series/heatmap/heatmap.js +1 -1
  293. package/cjs/series/heatmap/heatmap.js.map +1 -1
  294. package/cjs/series/line/interface.d.ts +0 -2
  295. package/cjs/series/line/interface.js.map +1 -1
  296. package/cjs/series/line/line.d.ts +1 -0
  297. package/cjs/series/line/line.js +1 -1
  298. package/cjs/series/line/line.js.map +1 -1
  299. package/cjs/series/link/link.js +1 -1
  300. package/cjs/series/link/link.js.map +1 -1
  301. package/cjs/series/map/geo-source.js +2 -2
  302. package/cjs/series/map/geo-source.js.map +1 -1
  303. package/cjs/series/map/interface.d.ts +1 -0
  304. package/cjs/series/map/interface.js.map +1 -1
  305. package/cjs/series/map/map.js +8 -4
  306. package/cjs/series/map/map.js.map +1 -1
  307. package/cjs/series/mixin/line-mixin.d.ts +3 -2
  308. package/cjs/series/mixin/line-mixin.js +30 -13
  309. package/cjs/series/mixin/line-mixin.js.map +1 -1
  310. package/cjs/series/pie/pie.js +1 -1
  311. package/cjs/series/pie/pie.js.map +1 -1
  312. package/cjs/series/polar/interface.d.ts +1 -0
  313. package/cjs/series/polar/interface.js.map +1 -1
  314. package/cjs/series/polar/polar.d.ts +4 -0
  315. package/cjs/series/polar/polar.js +15 -3
  316. package/cjs/series/polar/polar.js.map +1 -1
  317. package/cjs/series/radar/radar.d.ts +1 -0
  318. package/cjs/series/radar/radar.js +1 -1
  319. package/cjs/series/radar/radar.js.map +1 -1
  320. package/cjs/series/range-area/range-area.d.ts +2 -0
  321. package/cjs/series/range-area/range-area.js +3 -0
  322. package/cjs/series/range-area/range-area.js.map +1 -1
  323. package/cjs/series/range-column/range-column.js +2 -2
  324. package/cjs/series/range-column/range-column.js.map +1 -1
  325. package/cjs/series/rose/rose.js +1 -1
  326. package/cjs/series/rose/rose.js.map +1 -1
  327. package/cjs/series/sankey/interface.d.ts +3 -2
  328. package/cjs/series/sankey/interface.js.map +1 -1
  329. package/cjs/series/sankey/sankey.d.ts +5 -0
  330. package/cjs/series/sankey/sankey.js +246 -92
  331. package/cjs/series/sankey/sankey.js.map +1 -1
  332. package/cjs/series/scatter/scatter.d.ts +1 -1
  333. package/cjs/series/scatter/scatter.js +13 -8
  334. package/cjs/series/scatter/scatter.js.map +1 -1
  335. package/cjs/series/util/utils.d.ts +4 -1
  336. package/cjs/series/util/utils.js +8 -6
  337. package/cjs/series/util/utils.js.map +1 -1
  338. package/cjs/theme/builtin/common/component/axis/cartesian-axis.js +4 -4
  339. package/cjs/theme/builtin/common/component/axis/cartesian-axis.js.map +1 -1
  340. package/cjs/theme/builtin/common/component/axis/common-axis.js +12 -6
  341. package/cjs/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  342. package/cjs/theme/builtin/common/component/axis/polar-axis.js +1 -1
  343. package/cjs/theme/builtin/common/component/axis/polar-axis.js.map +1 -1
  344. package/cjs/theme/builtin/common/component/crosshair.js +73 -117
  345. package/cjs/theme/builtin/common/component/crosshair.js.map +1 -1
  346. package/cjs/theme/builtin/common/component/data-zoom.js +19 -7
  347. package/cjs/theme/builtin/common/component/data-zoom.js.map +1 -1
  348. package/cjs/theme/builtin/common/component/indicator.js +17 -5
  349. package/cjs/theme/builtin/common/component/indicator.js.map +1 -1
  350. package/cjs/theme/builtin/common/component/legend/color-legend.js +31 -5
  351. package/cjs/theme/builtin/common/component/legend/color-legend.js.map +1 -1
  352. package/cjs/theme/builtin/common/component/legend/continuous.js +26 -12
  353. package/cjs/theme/builtin/common/component/legend/continuous.js.map +1 -1
  354. package/cjs/theme/builtin/common/component/legend/discrete-legend.js +22 -9
  355. package/cjs/theme/builtin/common/component/legend/discrete-legend.js.map +1 -1
  356. package/cjs/theme/builtin/common/component/legend/size-legend.js +54 -15
  357. package/cjs/theme/builtin/common/component/legend/size-legend.js.map +1 -1
  358. package/cjs/theme/builtin/common/component/map-label.js +5 -5
  359. package/cjs/theme/builtin/common/component/map-label.js.map +1 -1
  360. package/cjs/theme/builtin/common/component/mark-area.js +7 -2
  361. package/cjs/theme/builtin/common/component/mark-area.js.map +1 -1
  362. package/cjs/theme/builtin/common/component/mark-line.js +7 -2
  363. package/cjs/theme/builtin/common/component/mark-line.js.map +1 -1
  364. package/cjs/theme/builtin/common/component/player.js +33 -7
  365. package/cjs/theme/builtin/common/component/player.js.map +1 -1
  366. package/cjs/theme/builtin/common/component/poptip.d.ts +2 -2
  367. package/cjs/theme/builtin/common/component/poptip.js +20 -12
  368. package/cjs/theme/builtin/common/component/poptip.js.map +1 -1
  369. package/cjs/theme/builtin/common/component/title.js +9 -5
  370. package/cjs/theme/builtin/common/component/title.js.map +1 -1
  371. package/cjs/theme/builtin/common/component/tooltip.js +13 -10
  372. package/cjs/theme/builtin/common/component/tooltip.js.map +1 -1
  373. package/cjs/theme/builtin/common/component/total-label.js +4 -4
  374. package/cjs/theme/builtin/common/component/total-label.js.map +1 -1
  375. package/cjs/theme/builtin/common/constants.js +17 -10
  376. package/cjs/theme/builtin/common/constants.js.map +1 -1
  377. package/cjs/theme/builtin/common/mark.js +8 -4
  378. package/cjs/theme/builtin/common/mark.js.map +1 -1
  379. package/cjs/theme/builtin/common/series/area.js +2 -7
  380. package/cjs/theme/builtin/common/series/area.js.map +1 -1
  381. package/cjs/theme/builtin/common/series/bar.js +2 -7
  382. package/cjs/theme/builtin/common/series/bar.js.map +1 -1
  383. package/cjs/theme/builtin/common/series/bar3d.js +1 -6
  384. package/cjs/theme/builtin/common/series/bar3d.js.map +1 -1
  385. package/cjs/theme/builtin/common/series/circle-packing.js +11 -5
  386. package/cjs/theme/builtin/common/series/circle-packing.js.map +1 -1
  387. package/cjs/theme/builtin/common/series/dot.js +11 -3
  388. package/cjs/theme/builtin/common/series/dot.js.map +1 -1
  389. package/cjs/theme/builtin/common/series/funnel.js +7 -4
  390. package/cjs/theme/builtin/common/series/funnel.js.map +1 -1
  391. package/cjs/theme/builtin/common/series/funnel3d.js +7 -4
  392. package/cjs/theme/builtin/common/series/funnel3d.js.map +1 -1
  393. package/cjs/theme/builtin/common/series/line.js +2 -7
  394. package/cjs/theme/builtin/common/series/line.js.map +1 -1
  395. package/cjs/theme/builtin/common/series/map.js +4 -2
  396. package/cjs/theme/builtin/common/series/map.js.map +1 -1
  397. package/cjs/theme/builtin/common/series/pie.js +1 -6
  398. package/cjs/theme/builtin/common/series/pie.js.map +1 -1
  399. package/cjs/theme/builtin/common/series/pie3d.js +2 -9
  400. package/cjs/theme/builtin/common/series/pie3d.js.map +1 -1
  401. package/cjs/theme/builtin/common/series/radar.js +2 -7
  402. package/cjs/theme/builtin/common/series/radar.js.map +1 -1
  403. package/cjs/theme/builtin/common/series/rangeColumn.js +2 -3
  404. package/cjs/theme/builtin/common/series/rangeColumn.js.map +1 -1
  405. package/cjs/theme/builtin/common/series/rose.js +1 -2
  406. package/cjs/theme/builtin/common/series/rose.js.map +1 -1
  407. package/cjs/theme/builtin/common/series/sankey.js +0 -1
  408. package/cjs/theme/builtin/common/series/sankey.js.map +1 -1
  409. package/cjs/theme/builtin/common/series/scatter.js +2 -7
  410. package/cjs/theme/builtin/common/series/scatter.js.map +1 -1
  411. package/cjs/theme/builtin/common/series/sunburst.js +5 -2
  412. package/cjs/theme/builtin/common/series/sunburst.js.map +1 -1
  413. package/cjs/theme/builtin/common/series/treemap.js +9 -5
  414. package/cjs/theme/builtin/common/series/treemap.js.map +1 -1
  415. package/cjs/theme/builtin/common/series/waterfall.js +5 -6
  416. package/cjs/theme/builtin/common/series/waterfall.js.map +1 -1
  417. package/cjs/theme/builtin/dark/color-scheme.js +5 -3
  418. package/cjs/theme/builtin/dark/color-scheme.js.map +1 -1
  419. package/cjs/theme/builtin/index.d.ts +0 -1
  420. package/cjs/theme/builtin/index.js +1 -2
  421. package/cjs/theme/builtin/index.js.map +1 -1
  422. package/cjs/theme/builtin/light/color-scheme.js +4 -2
  423. package/cjs/theme/builtin/light/color-scheme.js.map +1 -1
  424. package/cjs/theme/builtin/light/index.js +2 -2
  425. package/cjs/theme/builtin/light/index.js.map +1 -1
  426. package/cjs/theme/color-scheme/builtin/interface.d.ts +22 -0
  427. package/cjs/theme/color-scheme/builtin/interface.js +6 -0
  428. package/cjs/theme/color-scheme/builtin/interface.js.map +1 -0
  429. package/cjs/theme/color-scheme/interface.d.ts +3 -2
  430. package/cjs/theme/color-scheme/interface.js.map +1 -1
  431. package/cjs/theme/color-scheme/util.js +8 -2
  432. package/cjs/theme/color-scheme/util.js.map +1 -1
  433. package/cjs/theme/interface.d.ts +16 -5
  434. package/cjs/theme/interface.js.map +1 -1
  435. package/cjs/typings/spec/common.d.ts +2 -1
  436. package/cjs/typings/spec/common.js.map +1 -1
  437. package/cjs/typings/visual.d.ts +10 -20
  438. package/cjs/typings/visual.js.map +1 -1
  439. package/cjs/util/data.d.ts +0 -8
  440. package/cjs/util/data.js +2 -9
  441. package/cjs/util/data.js.map +1 -1
  442. package/cjs/util/object.d.ts +2 -4
  443. package/cjs/util/object.js +2 -18
  444. package/cjs/util/object.js.map +1 -1
  445. package/cjs/util/scale.d.ts +2 -6
  446. package/cjs/util/scale.js +1 -6
  447. package/cjs/util/scale.js.map +1 -1
  448. package/cjs/util/space.d.ts +3 -10
  449. package/cjs/util/space.js +13 -28
  450. package/cjs/util/space.js.map +1 -1
  451. package/cjs/util/spec/background.d.ts +4 -0
  452. package/cjs/util/spec/background.js +27 -0
  453. package/cjs/util/spec/background.js.map +1 -0
  454. package/cjs/util/spec/clone-deep.d.ts +1 -0
  455. package/cjs/util/spec/clone-deep.js +27 -0
  456. package/cjs/util/spec/clone-deep.js.map +1 -0
  457. package/cjs/util/spec/common.d.ts +3 -0
  458. package/cjs/util/spec/common.js +23 -0
  459. package/cjs/util/spec/common.js.map +1 -0
  460. package/cjs/util/spec/index.d.ts +7 -0
  461. package/cjs/util/spec/index.js +24 -0
  462. package/cjs/util/spec/index.js.map +1 -0
  463. package/cjs/util/spec/merge-spec.d.ts +1 -0
  464. package/cjs/util/spec/merge-spec.js +58 -0
  465. package/cjs/util/spec/merge-spec.js.map +1 -0
  466. package/cjs/util/spec/merge-theme.d.ts +3 -0
  467. package/cjs/util/spec/merge-theme.js +37 -0
  468. package/cjs/util/spec/merge-theme.js.map +1 -0
  469. package/cjs/util/spec/preprocess.d.ts +3 -0
  470. package/cjs/util/spec/preprocess.js +24 -0
  471. package/cjs/util/spec/preprocess.js.map +1 -0
  472. package/cjs/util/spec/transform.d.ts +3 -0
  473. package/cjs/util/spec/transform.js +28 -0
  474. package/cjs/util/spec/transform.js.map +1 -0
  475. package/cjs/util/text.d.ts +1 -2
  476. package/cjs/util/text.js +4 -14
  477. package/cjs/util/text.js.map +1 -1
  478. package/cjs/vchart-all.js +1 -1
  479. package/cjs/vchart-all.js.map +1 -1
  480. package/cjs/vchart-simple.js +3 -4
  481. package/cjs/vchart-simple.js.map +1 -1
  482. package/esm/animation/utils.js +3 -3
  483. package/esm/animation/utils.js.map +1 -1
  484. package/esm/chart/area/area.js +3 -3
  485. package/esm/chart/area/area.js.map +1 -1
  486. package/esm/chart/bar/bar-3d.js +2 -2
  487. package/esm/chart/bar/bar-3d.js.map +1 -1
  488. package/esm/chart/bar/bar.js +2 -2
  489. package/esm/chart/bar/bar.js.map +1 -1
  490. package/esm/chart/base-chart.d.ts +1 -0
  491. package/esm/chart/base-chart.js +14 -8
  492. package/esm/chart/base-chart.js.map +1 -1
  493. package/esm/chart/box-plot/box-plot.js +1 -1
  494. package/esm/chart/box-plot/box-plot.js.map +1 -1
  495. package/esm/chart/cartesian/cartesian.js +1 -1
  496. package/esm/chart/cartesian/cartesian.js.map +1 -1
  497. package/esm/chart/circle-packing/circle-packing.js +1 -1
  498. package/esm/chart/circle-packing/circle-packing.js.map +1 -1
  499. package/esm/chart/funnel/funnel-3d.js +1 -1
  500. package/esm/chart/funnel/funnel-3d.js.map +1 -1
  501. package/esm/chart/funnel/funnel.js +1 -1
  502. package/esm/chart/funnel/funnel.js.map +1 -1
  503. package/esm/chart/gauge/gauge.js +2 -2
  504. package/esm/chart/gauge/gauge.js.map +1 -1
  505. package/esm/chart/heatmap/heatmap.js +1 -1
  506. package/esm/chart/heatmap/heatmap.js.map +1 -1
  507. package/esm/chart/histogram/histogram-3d.js +2 -2
  508. package/esm/chart/histogram/histogram-3d.js.map +1 -1
  509. package/esm/chart/histogram/histogram.js +2 -2
  510. package/esm/chart/histogram/histogram.js.map +1 -1
  511. package/esm/chart/index.d.ts +1 -1
  512. package/esm/chart/index.js.map +1 -1
  513. package/esm/chart/line/line.js +1 -1
  514. package/esm/chart/line/line.js.map +1 -1
  515. package/esm/chart/map/map.js +2 -2
  516. package/esm/chart/map/map.js.map +1 -1
  517. package/esm/chart/pie/pie-3d.js +2 -2
  518. package/esm/chart/pie/pie-3d.js.map +1 -1
  519. package/esm/chart/pie/pie.js +2 -2
  520. package/esm/chart/pie/pie.js.map +1 -1
  521. package/esm/chart/polar/progress-like.js +1 -1
  522. package/esm/chart/polar/progress-like.js.map +1 -1
  523. package/esm/chart/polar/rose-like.js +1 -1
  524. package/esm/chart/polar/rose-like.js.map +1 -1
  525. package/esm/chart/progress/circular/circular.js +1 -1
  526. package/esm/chart/progress/circular/circular.js.map +1 -1
  527. package/esm/chart/progress/linear/linear.js +2 -2
  528. package/esm/chart/progress/linear/linear.js.map +1 -1
  529. package/esm/chart/radar/radar.js +5 -5
  530. package/esm/chart/radar/radar.js.map +1 -1
  531. package/esm/chart/range-area/range-area.js +1 -1
  532. package/esm/chart/range-area/range-area.js.map +1 -1
  533. package/esm/chart/range-column/range-column-3d.js +1 -1
  534. package/esm/chart/range-column/range-column-3d.js.map +1 -1
  535. package/esm/chart/range-column/range-column.js +1 -1
  536. package/esm/chart/range-column/range-column.js.map +1 -1
  537. package/esm/chart/rose/rose.js +4 -4
  538. package/esm/chart/rose/rose.js.map +1 -1
  539. package/esm/chart/sankey/sankey.js +1 -1
  540. package/esm/chart/sankey/sankey.js.map +1 -1
  541. package/esm/chart/scatter/scatter.js +2 -2
  542. package/esm/chart/scatter/scatter.js.map +1 -1
  543. package/esm/chart/sequence/sequence.js +4 -2
  544. package/esm/chart/sequence/sequence.js.map +1 -1
  545. package/esm/chart/stack.js.map +1 -1
  546. package/esm/chart/sunburst/sunburst.js +1 -1
  547. package/esm/chart/sunburst/sunburst.js.map +1 -1
  548. package/esm/chart/treemap/treemap.js +1 -1
  549. package/esm/chart/treemap/treemap.js.map +1 -1
  550. package/esm/chart/util.js +2 -2
  551. package/esm/chart/util.js.map +1 -1
  552. package/esm/chart/waterfall/waterfall.js +1 -1
  553. package/esm/chart/waterfall/waterfall.js.map +1 -1
  554. package/esm/chart/word-cloud/word-cloud-3d.js +1 -1
  555. package/esm/chart/word-cloud/word-cloud-3d.js.map +1 -1
  556. package/esm/chart/word-cloud/word-cloud.js +1 -1
  557. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  558. package/esm/compile/compiler.d.ts +4 -0
  559. package/esm/compile/compiler.js +4 -0
  560. package/esm/compile/compiler.js.map +1 -1
  561. package/esm/compile/interface/compilable-item.d.ts +1 -0
  562. package/esm/compile/interface/compilable-item.js.map +1 -1
  563. package/esm/compile/mark/compilable-mark.js +9 -11
  564. package/esm/compile/mark/compilable-mark.js.map +1 -1
  565. package/esm/compile/mark/interface.d.ts +0 -1
  566. package/esm/compile/mark/interface.js.map +1 -1
  567. package/esm/compile/mark/util.d.ts +2 -1
  568. package/esm/compile/mark/util.js +19 -3
  569. package/esm/compile/mark/util.js.map +1 -1
  570. package/esm/component/axis/base-axis.d.ts +1 -14
  571. package/esm/component/axis/base-axis.js +19 -30
  572. package/esm/component/axis/base-axis.js.map +1 -1
  573. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  574. package/esm/component/axis/cartesian/axis.js +21 -20
  575. package/esm/component/axis/cartesian/axis.js.map +1 -1
  576. package/esm/component/axis/cartesian/band-axis.d.ts +1 -0
  577. package/esm/component/axis/cartesian/band-axis.js +1 -0
  578. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  579. package/esm/component/axis/cartesian/index.d.ts +1 -0
  580. package/esm/component/axis/cartesian/index.js +2 -0
  581. package/esm/component/axis/cartesian/index.js.map +1 -1
  582. package/esm/component/axis/cartesian/interface/common.d.ts +2 -0
  583. package/esm/component/axis/cartesian/interface/common.js.map +1 -1
  584. package/esm/component/axis/cartesian/interface/spec.d.ts +4 -1
  585. package/esm/component/axis/cartesian/interface/spec.js.map +1 -1
  586. package/esm/component/axis/cartesian/linear-axis.js +3 -4
  587. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  588. package/esm/component/axis/cartesian/symlog-axis.d.ts +16 -0
  589. package/esm/component/axis/cartesian/symlog-axis.js +24 -0
  590. package/esm/component/axis/cartesian/symlog-axis.js.map +1 -0
  591. package/esm/component/axis/cartesian/time-axis.js +3 -3
  592. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  593. package/esm/component/axis/interface.d.ts +4 -8
  594. package/esm/component/axis/interface.js.map +1 -1
  595. package/esm/component/axis/mixin/linear-axis-mixin.js +1 -1
  596. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  597. package/esm/component/axis/polar/axis.d.ts +2 -1
  598. package/esm/component/axis/polar/axis.js +14 -13
  599. package/esm/component/axis/polar/axis.js.map +1 -1
  600. package/esm/component/axis/polar/band-axis.d.ts +1 -0
  601. package/esm/component/axis/polar/interface/common.d.ts +1 -1
  602. package/esm/component/axis/polar/interface/common.js.map +1 -1
  603. package/esm/component/axis/{utils.d.ts → util.d.ts} +1 -1
  604. package/esm/component/axis/{utils.js → util.js} +7 -5
  605. package/esm/component/axis/util.js.map +1 -0
  606. package/esm/component/base/base-component.d.ts +10 -2
  607. package/esm/component/base/base-component.js +9 -5
  608. package/esm/component/base/base-component.js.map +1 -1
  609. package/esm/component/base/interface.d.ts +8 -0
  610. package/esm/component/base/interface.js +2 -0
  611. package/esm/component/base/interface.js.map +1 -0
  612. package/esm/component/base/util.d.ts +2 -1
  613. package/esm/component/base/util.js +14 -7
  614. package/esm/component/base/util.js.map +1 -1
  615. package/esm/component/brush/brush.d.ts +12 -2
  616. package/esm/component/brush/brush.js +74 -62
  617. package/esm/component/brush/brush.js.map +1 -1
  618. package/esm/component/crosshair/base.d.ts +2 -2
  619. package/esm/component/crosshair/base.js +1 -1
  620. package/esm/component/crosshair/base.js.map +1 -1
  621. package/esm/component/crosshair/cartesian.js +7 -7
  622. package/esm/component/crosshair/cartesian.js.map +1 -1
  623. package/esm/component/crosshair/interface/spec.d.ts +8 -8
  624. package/esm/component/crosshair/interface/spec.js.map +1 -1
  625. package/esm/component/crosshair/interface/theme.d.ts +3 -1
  626. package/esm/component/crosshair/interface/theme.js.map +1 -1
  627. package/esm/component/crosshair/polar.js +8 -8
  628. package/esm/component/crosshair/polar.js.map +1 -1
  629. package/esm/component/crosshair/util.d.ts +5 -0
  630. package/esm/component/crosshair/util.js +34 -0
  631. package/esm/component/crosshair/util.js.map +1 -1
  632. package/esm/component/custom-mark/custom-mark.d.ts +1 -1
  633. package/esm/component/custom-mark/custom-mark.js +4 -4
  634. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  635. package/esm/component/data-zoom/data-filter-base-component.d.ts +0 -1
  636. package/esm/component/data-zoom/data-filter-base-component.js +2 -9
  637. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  638. package/esm/component/data-zoom/data-zoom/data-zoom.js +8 -6
  639. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  640. package/esm/component/data-zoom/data-zoom/interface.d.ts +2 -2
  641. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  642. package/esm/component/data-zoom/interface.d.ts +2 -5
  643. package/esm/component/data-zoom/interface.js.map +1 -1
  644. package/esm/component/geo/geo-coordinate.d.ts +2 -0
  645. package/esm/component/geo/geo-coordinate.js +30 -4
  646. package/esm/component/geo/geo-coordinate.js.map +1 -1
  647. package/esm/component/geo/projection.d.ts +1 -0
  648. package/esm/component/geo/projection.js +4 -0
  649. package/esm/component/geo/projection.js.map +1 -1
  650. package/esm/component/index.d.ts +2 -2
  651. package/esm/component/index.js +2 -2
  652. package/esm/component/index.js.map +1 -1
  653. package/esm/component/indicator/indicator.d.ts +1 -0
  654. package/esm/component/indicator/indicator.js +8 -7
  655. package/esm/component/indicator/indicator.js.map +1 -1
  656. package/esm/component/indicator/interface.d.ts +5 -6
  657. package/esm/component/indicator/interface.js.map +1 -1
  658. package/esm/component/interface/theme.d.ts +2 -2
  659. package/esm/component/interface/theme.js.map +1 -1
  660. package/esm/component/interface/type.d.ts +1 -0
  661. package/esm/component/interface/type.js +12 -11
  662. package/esm/component/interface/type.js.map +1 -1
  663. package/esm/component/label/base-label.d.ts +0 -1
  664. package/esm/component/label/base-label.js +0 -5
  665. package/esm/component/label/base-label.js.map +1 -1
  666. package/esm/component/label/interface.d.ts +2 -1
  667. package/esm/component/label/interface.js.map +1 -1
  668. package/esm/component/label/label.d.ts +0 -1
  669. package/esm/component/label/label.js +2 -7
  670. package/esm/component/label/label.js.map +1 -1
  671. package/esm/component/label/totalLabel.js +2 -2
  672. package/esm/component/label/totalLabel.js.map +1 -1
  673. package/esm/component/legend/base-legend.js +5 -5
  674. package/esm/component/legend/base-legend.js.map +1 -1
  675. package/esm/component/legend/continuous/util.js +5 -3
  676. package/esm/component/legend/continuous/util.js.map +1 -1
  677. package/esm/component/legend/discrete/interface.d.ts +3 -1
  678. package/esm/component/legend/discrete/interface.js.map +1 -1
  679. package/esm/component/legend/discrete/legend.js +2 -2
  680. package/esm/component/legend/discrete/legend.js.map +1 -1
  681. package/esm/component/legend/discrete/util.js +4 -4
  682. package/esm/component/legend/discrete/util.js.map +1 -1
  683. package/esm/component/legend/interface.d.ts +2 -6
  684. package/esm/component/legend/interface.js.map +1 -1
  685. package/esm/component/legend/util.js +4 -2
  686. package/esm/component/legend/util.js.map +1 -1
  687. package/esm/component/marker/interface.d.ts +2 -2
  688. package/esm/component/marker/interface.js.map +1 -1
  689. package/esm/component/poptip/interface.d.ts +15 -0
  690. package/esm/component/poptip/interface.js +2 -0
  691. package/esm/component/poptip/interface.js.map +1 -0
  692. package/esm/component/title/interface/spec.d.ts +2 -2
  693. package/esm/component/title/interface/spec.js.map +1 -1
  694. package/esm/component/tooltip/handler/dom/model/content-column-model.js +7 -5
  695. package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  696. package/esm/component/tooltip/handler/dom/model/content-model.js +2 -2
  697. package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  698. package/esm/component/tooltip/handler/dom/model/title-model.js +3 -3
  699. package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  700. package/esm/component/tooltip/handler/dom/model/tooltip-model.js +4 -2
  701. package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  702. package/esm/component/tooltip/handler/dom/util.js +4 -4
  703. package/esm/component/tooltip/handler/dom/util.js.map +1 -1
  704. package/esm/component/tooltip/handler/utils/attribute.js +5 -5
  705. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  706. package/esm/component/tooltip/handler/utils/get-spec.js +2 -2
  707. package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
  708. package/esm/component/tooltip/handler/utils/style.js +2 -2
  709. package/esm/component/tooltip/handler/utils/style.js.map +1 -1
  710. package/esm/component/tooltip/processor/base.js +1 -1
  711. package/esm/component/tooltip/processor/base.js.map +1 -1
  712. package/esm/component/tooltip/tooltip.js +4 -3
  713. package/esm/component/tooltip/tooltip.js.map +1 -1
  714. package/esm/core/index.d.ts +1 -1
  715. package/esm/core/index.js +1 -1
  716. package/esm/core/index.js.map +1 -1
  717. package/esm/core/vchart.js +22 -19
  718. package/esm/core/vchart.js.map +1 -1
  719. package/esm/data/transforms/dimension-statistics.d.ts +11 -5
  720. package/esm/data/transforms/dimension-statistics.js +33 -22
  721. package/esm/data/transforms/dimension-statistics.js.map +1 -1
  722. package/esm/data/transforms/legend-data/discrete/discrete.js +4 -3
  723. package/esm/data/transforms/legend-data/discrete/discrete.js.map +1 -1
  724. package/esm/data/transforms/tick-data/discrete/polar-angle.js +1 -1
  725. package/esm/data/transforms/tick-data/discrete/polar-angle.js.map +1 -1
  726. package/esm/data/transforms/tick-data/util.js +1 -1
  727. package/esm/data/transforms/tick-data/util.js.map +1 -1
  728. package/esm/event/events/dimension/util/cartesian.js +2 -2
  729. package/esm/event/events/dimension/util/cartesian.js.map +1 -1
  730. package/esm/event/events/dimension/util/polar.js +1 -1
  731. package/esm/event/events/dimension/util/polar.js.map +1 -1
  732. package/esm/interaction/trigger.js +3 -3
  733. package/esm/interaction/trigger.js.map +1 -1
  734. package/esm/mark/base/base-mark.d.ts +1 -0
  735. package/esm/mark/base/base-mark.js +22 -5
  736. package/esm/mark/base/base-mark.js.map +1 -1
  737. package/esm/mark/mark-set/index.d.ts +1 -0
  738. package/esm/mark/mark-set/index.js.map +1 -1
  739. package/esm/mark/symbol.js +1 -1
  740. package/esm/mark/symbol.js.map +1 -1
  741. package/esm/model/base-model.js +4 -4
  742. package/esm/model/base-model.js.map +1 -1
  743. package/esm/model/interface.d.ts +1 -1
  744. package/esm/model/interface.js.map +1 -1
  745. package/esm/plugin/components/index.d.ts +0 -2
  746. package/esm/plugin/components/index.js +0 -3
  747. package/esm/plugin/components/index.js.map +1 -1
  748. package/esm/series/area/area.d.ts +4 -1
  749. package/esm/series/area/area.js +10 -7
  750. package/esm/series/area/area.js.map +1 -1
  751. package/esm/series/bar/bar.js +3 -5
  752. package/esm/series/bar/bar.js.map +1 -1
  753. package/esm/series/base/base-series.d.ts +2 -0
  754. package/esm/series/base/base-series.js +71 -16
  755. package/esm/series/base/base-series.js.map +1 -1
  756. package/esm/series/base/tooltip-helper.js +4 -2
  757. package/esm/series/base/tooltip-helper.js.map +1 -1
  758. package/esm/series/box-plot/box-plot.js +1 -1
  759. package/esm/series/box-plot/box-plot.js.map +1 -1
  760. package/esm/series/cartesian/cartesian.d.ts +10 -3
  761. package/esm/series/cartesian/cartesian.js +37 -26
  762. package/esm/series/cartesian/cartesian.js.map +1 -1
  763. package/esm/series/cartesian/interface.d.ts +1 -0
  764. package/esm/series/cartesian/interface.js.map +1 -1
  765. package/esm/series/dot/dot.js +2 -2
  766. package/esm/series/dot/dot.js.map +1 -1
  767. package/esm/series/funnel/funnel.js +12 -2
  768. package/esm/series/funnel/funnel.js.map +1 -1
  769. package/esm/series/heatmap/heatmap.js +2 -2
  770. package/esm/series/heatmap/heatmap.js.map +1 -1
  771. package/esm/series/line/interface.d.ts +0 -2
  772. package/esm/series/line/interface.js.map +1 -1
  773. package/esm/series/line/line.d.ts +1 -0
  774. package/esm/series/line/line.js +1 -1
  775. package/esm/series/line/line.js.map +1 -1
  776. package/esm/series/link/link.js +1 -1
  777. package/esm/series/link/link.js.map +1 -1
  778. package/esm/series/map/geo-source.js +3 -1
  779. package/esm/series/map/geo-source.js.map +1 -1
  780. package/esm/series/map/interface.d.ts +1 -0
  781. package/esm/series/map/interface.js.map +1 -1
  782. package/esm/series/map/map.js +9 -3
  783. package/esm/series/map/map.js.map +1 -1
  784. package/esm/series/mixin/line-mixin.d.ts +3 -2
  785. package/esm/series/mixin/line-mixin.js +32 -13
  786. package/esm/series/mixin/line-mixin.js.map +1 -1
  787. package/esm/series/pie/pie.js +2 -2
  788. package/esm/series/pie/pie.js.map +1 -1
  789. package/esm/series/polar/interface.d.ts +1 -0
  790. package/esm/series/polar/interface.js.map +1 -1
  791. package/esm/series/polar/polar.d.ts +4 -0
  792. package/esm/series/polar/polar.js +15 -2
  793. package/esm/series/polar/polar.js.map +1 -1
  794. package/esm/series/radar/radar.d.ts +1 -0
  795. package/esm/series/radar/radar.js +1 -1
  796. package/esm/series/radar/radar.js.map +1 -1
  797. package/esm/series/range-area/range-area.d.ts +2 -0
  798. package/esm/series/range-area/range-area.js +3 -0
  799. package/esm/series/range-area/range-area.js.map +1 -1
  800. package/esm/series/range-column/range-column.js +3 -3
  801. package/esm/series/range-column/range-column.js.map +1 -1
  802. package/esm/series/rose/rose.js +2 -2
  803. package/esm/series/rose/rose.js.map +1 -1
  804. package/esm/series/sankey/interface.d.ts +3 -2
  805. package/esm/series/sankey/interface.js.map +1 -1
  806. package/esm/series/sankey/sankey.d.ts +5 -0
  807. package/esm/series/sankey/sankey.js +248 -93
  808. package/esm/series/sankey/sankey.js.map +1 -1
  809. package/esm/series/scatter/scatter.d.ts +1 -1
  810. package/esm/series/scatter/scatter.js +14 -9
  811. package/esm/series/scatter/scatter.js.map +1 -1
  812. package/esm/series/util/utils.d.ts +4 -1
  813. package/esm/series/util/utils.js +6 -4
  814. package/esm/series/util/utils.js.map +1 -1
  815. package/esm/theme/builtin/common/component/axis/cartesian-axis.js +4 -4
  816. package/esm/theme/builtin/common/component/axis/cartesian-axis.js.map +1 -1
  817. package/esm/theme/builtin/common/component/axis/common-axis.js +12 -6
  818. package/esm/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  819. package/esm/theme/builtin/common/component/axis/polar-axis.js +1 -1
  820. package/esm/theme/builtin/common/component/axis/polar-axis.js.map +1 -1
  821. package/esm/theme/builtin/common/component/crosshair.js +73 -117
  822. package/esm/theme/builtin/common/component/crosshair.js.map +1 -1
  823. package/esm/theme/builtin/common/component/data-zoom.js +16 -6
  824. package/esm/theme/builtin/common/component/data-zoom.js.map +1 -1
  825. package/esm/theme/builtin/common/component/indicator.js +14 -4
  826. package/esm/theme/builtin/common/component/indicator.js.map +1 -1
  827. package/esm/theme/builtin/common/component/legend/color-legend.js +32 -4
  828. package/esm/theme/builtin/common/component/legend/color-legend.js.map +1 -1
  829. package/esm/theme/builtin/common/component/legend/continuous.js +26 -12
  830. package/esm/theme/builtin/common/component/legend/continuous.js.map +1 -1
  831. package/esm/theme/builtin/common/component/legend/discrete-legend.js +22 -9
  832. package/esm/theme/builtin/common/component/legend/discrete-legend.js.map +1 -1
  833. package/esm/theme/builtin/common/component/legend/size-legend.js +55 -14
  834. package/esm/theme/builtin/common/component/legend/size-legend.js.map +1 -1
  835. package/esm/theme/builtin/common/component/map-label.js +4 -6
  836. package/esm/theme/builtin/common/component/map-label.js.map +1 -1
  837. package/esm/theme/builtin/common/component/mark-area.js +4 -1
  838. package/esm/theme/builtin/common/component/mark-area.js.map +1 -1
  839. package/esm/theme/builtin/common/component/mark-line.js +4 -1
  840. package/esm/theme/builtin/common/component/mark-line.js.map +1 -1
  841. package/esm/theme/builtin/common/component/player.js +33 -7
  842. package/esm/theme/builtin/common/component/player.js.map +1 -1
  843. package/esm/theme/builtin/common/component/poptip.d.ts +2 -2
  844. package/esm/theme/builtin/common/component/poptip.js +17 -11
  845. package/esm/theme/builtin/common/component/poptip.js.map +1 -1
  846. package/esm/theme/builtin/common/component/title.js +9 -5
  847. package/esm/theme/builtin/common/component/title.js.map +1 -1
  848. package/esm/theme/builtin/common/component/tooltip.js +12 -11
  849. package/esm/theme/builtin/common/component/tooltip.js.map +1 -1
  850. package/esm/theme/builtin/common/component/total-label.js +3 -5
  851. package/esm/theme/builtin/common/component/total-label.js.map +1 -1
  852. package/esm/theme/builtin/common/constants.js +16 -7
  853. package/esm/theme/builtin/common/constants.js.map +1 -1
  854. package/esm/theme/builtin/common/mark.js +8 -4
  855. package/esm/theme/builtin/common/mark.js.map +1 -1
  856. package/esm/theme/builtin/common/series/area.js +1 -4
  857. package/esm/theme/builtin/common/series/area.js.map +1 -1
  858. package/esm/theme/builtin/common/series/bar.js +1 -4
  859. package/esm/theme/builtin/common/series/bar.js.map +1 -1
  860. package/esm/theme/builtin/common/series/bar3d.js +0 -3
  861. package/esm/theme/builtin/common/series/bar3d.js.map +1 -1
  862. package/esm/theme/builtin/common/series/circle-packing.js +8 -4
  863. package/esm/theme/builtin/common/series/circle-packing.js.map +1 -1
  864. package/esm/theme/builtin/common/series/dot.js +8 -2
  865. package/esm/theme/builtin/common/series/dot.js.map +1 -1
  866. package/esm/theme/builtin/common/series/funnel.js +6 -5
  867. package/esm/theme/builtin/common/series/funnel.js.map +1 -1
  868. package/esm/theme/builtin/common/series/funnel3d.js +6 -5
  869. package/esm/theme/builtin/common/series/funnel3d.js.map +1 -1
  870. package/esm/theme/builtin/common/series/line.js +1 -4
  871. package/esm/theme/builtin/common/series/line.js.map +1 -1
  872. package/esm/theme/builtin/common/series/map.js +4 -2
  873. package/esm/theme/builtin/common/series/map.js.map +1 -1
  874. package/esm/theme/builtin/common/series/pie.js +0 -3
  875. package/esm/theme/builtin/common/series/pie.js.map +1 -1
  876. package/esm/theme/builtin/common/series/pie3d.js +1 -6
  877. package/esm/theme/builtin/common/series/pie3d.js.map +1 -1
  878. package/esm/theme/builtin/common/series/radar.js +1 -4
  879. package/esm/theme/builtin/common/series/radar.js.map +1 -1
  880. package/esm/theme/builtin/common/series/rangeColumn.js +1 -4
  881. package/esm/theme/builtin/common/series/rangeColumn.js.map +1 -1
  882. package/esm/theme/builtin/common/series/rose.js +1 -2
  883. package/esm/theme/builtin/common/series/rose.js.map +1 -1
  884. package/esm/theme/builtin/common/series/sankey.js +0 -1
  885. package/esm/theme/builtin/common/series/sankey.js.map +1 -1
  886. package/esm/theme/builtin/common/series/scatter.js +1 -4
  887. package/esm/theme/builtin/common/series/scatter.js.map +1 -1
  888. package/esm/theme/builtin/common/series/sunburst.js +6 -1
  889. package/esm/theme/builtin/common/series/sunburst.js.map +1 -1
  890. package/esm/theme/builtin/common/series/treemap.js +8 -6
  891. package/esm/theme/builtin/common/series/treemap.js.map +1 -1
  892. package/esm/theme/builtin/common/series/waterfall.js +4 -7
  893. package/esm/theme/builtin/common/series/waterfall.js.map +1 -1
  894. package/esm/theme/builtin/dark/color-scheme.js +5 -3
  895. package/esm/theme/builtin/dark/color-scheme.js.map +1 -1
  896. package/esm/theme/builtin/index.d.ts +0 -1
  897. package/esm/theme/builtin/index.js +0 -2
  898. package/esm/theme/builtin/index.js.map +1 -1
  899. package/esm/theme/builtin/light/color-scheme.js +4 -2
  900. package/esm/theme/builtin/light/color-scheme.js.map +1 -1
  901. package/esm/theme/builtin/light/index.js +2 -2
  902. package/esm/theme/builtin/light/index.js.map +1 -1
  903. package/esm/theme/color-scheme/builtin/interface.d.ts +22 -0
  904. package/esm/theme/color-scheme/builtin/interface.js +2 -0
  905. package/esm/theme/color-scheme/builtin/interface.js.map +1 -0
  906. package/esm/theme/color-scheme/interface.d.ts +3 -2
  907. package/esm/theme/color-scheme/interface.js.map +1 -1
  908. package/esm/theme/color-scheme/util.js +8 -3
  909. package/esm/theme/color-scheme/util.js.map +1 -1
  910. package/esm/theme/interface.d.ts +16 -5
  911. package/esm/theme/interface.js.map +1 -1
  912. package/esm/typings/spec/common.d.ts +2 -1
  913. package/esm/typings/spec/common.js.map +1 -1
  914. package/esm/typings/visual.d.ts +10 -20
  915. package/esm/typings/visual.js.map +1 -1
  916. package/esm/util/data.d.ts +0 -8
  917. package/esm/util/data.js +1 -7
  918. package/esm/util/data.js.map +1 -1
  919. package/esm/util/object.d.ts +2 -4
  920. package/esm/util/object.js +2 -13
  921. package/esm/util/object.js.map +1 -1
  922. package/esm/util/scale.d.ts +2 -6
  923. package/esm/util/scale.js +1 -5
  924. package/esm/util/scale.js.map +1 -1
  925. package/esm/util/space.d.ts +3 -10
  926. package/esm/util/space.js +5 -23
  927. package/esm/util/space.js.map +1 -1
  928. package/esm/util/spec/background.d.ts +4 -0
  929. package/esm/util/spec/background.js +21 -0
  930. package/esm/util/spec/background.js.map +1 -0
  931. package/esm/util/spec/clone-deep.d.ts +1 -0
  932. package/esm/util/spec/clone-deep.js +20 -0
  933. package/esm/util/spec/clone-deep.js.map +1 -0
  934. package/esm/util/spec/common.d.ts +3 -0
  935. package/esm/util/spec/common.js +15 -0
  936. package/esm/util/spec/common.js.map +1 -0
  937. package/esm/util/spec/index.d.ts +7 -0
  938. package/esm/util/spec/index.js +14 -0
  939. package/esm/util/spec/index.js.map +1 -0
  940. package/esm/util/spec/merge-spec.d.ts +1 -0
  941. package/esm/util/spec/merge-spec.js +48 -0
  942. package/esm/util/spec/merge-spec.js.map +1 -0
  943. package/esm/util/spec/merge-theme.d.ts +3 -0
  944. package/esm/util/spec/merge-theme.js +34 -0
  945. package/esm/util/spec/merge-theme.js.map +1 -0
  946. package/esm/util/spec/preprocess.d.ts +3 -0
  947. package/esm/util/spec/preprocess.js +20 -0
  948. package/esm/util/spec/preprocess.js.map +1 -0
  949. package/esm/util/spec/transform.d.ts +3 -0
  950. package/esm/util/spec/transform.js +20 -0
  951. package/esm/util/spec/transform.js.map +1 -0
  952. package/esm/util/text.d.ts +1 -2
  953. package/esm/util/text.js +4 -12
  954. package/esm/util/text.js.map +1 -1
  955. package/esm/vchart-all.js +2 -2
  956. package/esm/vchart-all.js.map +1 -1
  957. package/esm/vchart-simple.js +18 -2
  958. package/esm/vchart-simple.js.map +1 -1
  959. package/package.json +20 -13
  960. package/cjs/component/axis/utils.js.map +0 -1
  961. package/cjs/plugin/components/axis-label-overlap-plugin.d.ts +0 -10
  962. package/cjs/plugin/components/axis-label-overlap-plugin.js +0 -75
  963. package/cjs/plugin/components/axis-label-overlap-plugin.js.map +0 -1
  964. package/cjs/theme/builtin/common/component/axis/log-axis.d.ts +0 -2
  965. package/cjs/theme/builtin/common/component/axis/log-axis.js +0 -22
  966. package/cjs/theme/builtin/common/component/axis/log-axis.js.map +0 -1
  967. package/cjs/theme/builtin/constant.d.ts +0 -2
  968. package/cjs/theme/builtin/constant.js +0 -8
  969. package/cjs/theme/builtin/constant.js.map +0 -1
  970. package/cjs/util/spec.d.ts +0 -17
  971. package/cjs/util/spec.js +0 -121
  972. package/cjs/util/spec.js.map +0 -1
  973. package/esm/component/axis/utils.js.map +0 -1
  974. package/esm/plugin/components/axis-label-overlap-plugin.d.ts +0 -10
  975. package/esm/plugin/components/axis-label-overlap-plugin.js +0 -72
  976. package/esm/plugin/components/axis-label-overlap-plugin.js.map +0 -1
  977. package/esm/theme/builtin/common/component/axis/log-axis.d.ts +0 -2
  978. package/esm/theme/builtin/common/component/axis/log-axis.js +0 -18
  979. package/esm/theme/builtin/common/component/axis/log-axis.js.map +0 -1
  980. package/esm/theme/builtin/constant.d.ts +0 -2
  981. package/esm/theme/builtin/constant.js +0 -4
  982. package/esm/theme/builtin/constant.js.map +0 -1
  983. package/esm/util/spec.d.ts +0 -17
  984. package/esm/util/spec.js +0 -112
  985. package/esm/util/spec.js.map +0 -1
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.SankeySeries = void 0;
6
6
 
7
- const cartesian_1 = require("../cartesian/cartesian"), interface_1 = require("../interface"), vgrammar_sankey_1 = require("@visactor/vgrammar-sankey"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), register_1 = require("../../data/register"), sankey_1 = require("../../data/transforms/sankey"), sankey_nodes_1 = require("../../data/transforms/sankey-nodes"), sankey_links_1 = require("../../data/transforms/sankey-links"), mark_1 = require("../../compile/mark"), vdataset_1 = require("@visactor/vdataset"), constant_1 = require("../../constant"), series_data_1 = require("../base/series-data"), add_property_1 = require("../../data/transforms/add-property"), data_key_1 = require("../../data/transforms/data-key"), util_1 = require("../../theme/color-scheme/util"), tooltip_helper_1 = require("./tooltip-helper"), vutils_1 = require("@visactor/vutils"), util_2 = require("../../util"), color_ordinal_scale_1 = require("../../scale/color-ordinal-scale"), vchart_1 = require("../../core/vchart"), rect_1 = require("../../mark/rect"), text_1 = require("../../mark/text"), link_path_1 = require("../../mark/link-path"), constant_2 = require("./constant");
7
+ const cartesian_1 = require("../cartesian/cartesian"), interface_1 = require("../interface"), vgrammar_sankey_1 = require("@visactor/vgrammar-sankey"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), register_1 = require("../../data/register"), sankey_1 = require("../../data/transforms/sankey"), sankey_nodes_1 = require("../../data/transforms/sankey-nodes"), sankey_links_1 = require("../../data/transforms/sankey-links"), mark_1 = require("../../compile/mark"), vdataset_1 = require("@visactor/vdataset"), constant_1 = require("../../constant"), series_data_1 = require("../base/series-data"), add_property_1 = require("../../data/transforms/add-property"), data_key_1 = require("../../data/transforms/data-key"), util_1 = require("../../theme/color-scheme/util"), tooltip_helper_1 = require("./tooltip-helper"), vutils_1 = require("@visactor/vutils"), util_2 = require("../../util"), color_ordinal_scale_1 = require("../../scale/color-ordinal-scale"), vchart_1 = require("../../core/vchart"), rect_1 = require("../../mark/rect"), text_1 = require("../../mark/text"), link_path_1 = require("../../mark/link-path"), constant_2 = require("./constant"), flatten_1 = require("../../data/transforms/flatten");
8
8
 
9
9
  vchart_1.VChart.useMark([ rect_1.RectMark, link_path_1.LinkPathMark, text_1.TextMark ]),
10
10
  (0, vgrammar_sankey_1.registerSankeyTransforms)();
@@ -15,10 +15,21 @@ class SankeySeries extends cartesian_1.CartesianSeries {
15
15
  this._labelLayoutZIndex = constant_1.LayoutZIndex.Label, this._viewBox = new vutils_1.Bounds,
16
16
  this._handleAdjacencyClick = params => {
17
17
  const element = params.item;
18
- element && element.mark.id().includes("node") ? this._handleNodeAdjacencyClick(element) : element && element.mark.id().includes("link") && this._handleLinkAdjacencyClick(element);
18
+ element && element.mark.id().includes("node") ? this._handleNodeAdjacencyClick(element) : element && element.mark.id().includes("link") ? this._handleLinkAdjacencyClick(element) : this._handleClearEmpty();
19
19
  }, this._handleRelatedClick = params => {
20
20
  const element = params.item;
21
- element && element.mark.id().includes("node") ? this._handleNodeRelatedClick(element) : element && element.mark.id().includes("link") && this._handleLinkRelatedClick(element);
21
+ element && element.mark.id().includes("node") ? this._handleNodeRelatedClick(element) : element && element.mark.id().includes("link") ? this._handleLinkRelatedClick(element) : this._handleClearEmpty();
22
+ }, this._handleClearEmpty = () => {
23
+ const nodeVGrammarMark = this._nodeMark.getProduct();
24
+ if (!nodeVGrammarMark || !nodeVGrammarMark.elements || !nodeVGrammarMark.elements.length) return;
25
+ const allNodeElements = nodeVGrammarMark.elements, linkVGrammarMark = this._linkMark.getProduct();
26
+ if (!linkVGrammarMark || !linkVGrammarMark.elements || !linkVGrammarMark.elements.length) return;
27
+ const allLinkElements = linkVGrammarMark.elements;
28
+ allNodeElements.forEach((el => {
29
+ el.clearStates();
30
+ })), allLinkElements.forEach((el => {
31
+ el.clearStates();
32
+ }));
22
33
  }, this._handleNodeAdjacencyClick = element => {
23
34
  const nodeDatum = element.getDatum(), highlightNodes = [ nodeDatum.key ];
24
35
  [ this._linkMark ].forEach((mark => {
@@ -32,7 +43,8 @@ class SankeySeries extends cartesian_1.CartesianSeries {
32
43
  if (highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
33
44
  highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
34
45
  "parents" === father) {
35
- ratio = linkDatum.datum.filter((entry => entry.parents.some((par => par.key === nodeDatum.key)))).reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
46
+ const originalDatum = linkDatum.datum;
47
+ ratio = (originalDatum ? originalDatum.filter((entry => entry.parents.some((par => par.key === nodeDatum.key)))).reduce(((sum, d) => sum + d.value), 0) : 0) / linkDatum.value;
36
48
  }
37
49
  linkEl.addState("selected", {
38
50
  ratio: ratio
@@ -66,10 +78,11 @@ class SankeySeries extends cartesian_1.CartesianSeries {
66
78
  if (highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
67
79
  highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
68
80
  "parents" === father) {
69
- ratio = linkDatum.datum.filter((entry => entry.parents.some(((par, index) => {
81
+ const originalDatum = linkDatum.datum;
82
+ ratio = (originalDatum ? originalDatum.filter((entry => entry.parents.some(((par, index) => {
70
83
  var _a;
71
84
  return par.key === curLinkDatum.source && (null === (_a = entry.parents[index + 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.target;
72
- })))).reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
85
+ })))).reduce(((sum, d) => sum + d.value), 0) : 0) / linkDatum.value;
73
86
  }
74
87
  linkEl.addState("selected", {
75
88
  ratio: ratio
@@ -90,81 +103,126 @@ class SankeySeries extends cartesian_1.CartesianSeries {
90
103
  }));
91
104
  }));
92
105
  }, this._handleNodeRelatedClick = element => {
93
- const nodeDatum = element.getDatum(), highlightNodes = [ nodeDatum.key ], highlightLinks = [], nodeVGrammarMark = this._nodeMark.getProduct();
106
+ var _a;
107
+ const nodeDatum = element.getDatum(), nodeVGrammarMark = this._nodeMark.getProduct();
94
108
  if (!nodeVGrammarMark || !nodeVGrammarMark.elements || !nodeVGrammarMark.elements.length) return;
95
109
  const allNodeElements = nodeVGrammarMark.elements, linkVGrammarMark = this._linkMark.getProduct();
96
110
  if (!linkVGrammarMark || !linkVGrammarMark.elements || !linkVGrammarMark.elements.length) return;
97
- linkVGrammarMark.elements.forEach(((linkEl, i) => {
98
- var _a, _b, _c, _d;
99
- linkEl.clearStates();
100
- const linkDatum = linkEl.getDatum(), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source";
101
- if ((0, util_2.array)(linkDatum[father]).includes(nodeDatum.key)) {
102
- if (highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) || highlightLinks.push(null !== (_b = linkDatum.key) && void 0 !== _b ? _b : linkDatum.index),
103
- highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
104
- !highlightNodes.includes(linkDatum.target)) {
105
- highlightNodes.push(linkDatum.target);
106
- let targetNodeSourceLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.target)).data[0].sourceLinks;
107
- for (;(null == targetNodeSourceLinks ? void 0 : targetNodeSourceLinks.length) > 0; ) {
108
- const newTargetNodeSourceLinks = [];
109
- return targetNodeSourceLinks.forEach((targetNodeSourceLinkDatum => {
111
+ const allLinkElements = linkVGrammarMark.elements;
112
+ if ("source" === ((null === (_a = allLinkElements[0].getDatum()) || void 0 === _a ? void 0 : _a.parents) ? "parents" : "source")) {
113
+ const highlightNodes = [ nodeDatum.key ], highlightLinks = [];
114
+ allLinkElements.forEach(((linkEl, i) => {
115
+ var _a, _b, _c, _d;
116
+ linkEl.clearStates();
117
+ const linkDatum = linkEl.getDatum(), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source";
118
+ if ((0, util_2.array)(linkDatum[father]).includes(nodeDatum.key)) {
119
+ if (highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) || highlightLinks.push(null !== (_b = linkDatum.key) && void 0 !== _b ? _b : linkDatum.index),
120
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
121
+ !highlightNodes.includes(linkDatum.target)) {
122
+ highlightNodes.push(linkDatum.target);
123
+ let targetNodeSourceLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.target)).data[0].sourceLinks;
124
+ for (;(null == targetNodeSourceLinks ? void 0 : targetNodeSourceLinks.length) > 0; ) {
125
+ const newTargetNodeSourceLinks = [];
126
+ return targetNodeSourceLinks.forEach((targetNodeSourceLinkDatum => {
127
+ var _a, _b;
128
+ if (!highlightLinks.includes(null !== (_a = targetNodeSourceLinkDatum.key) && void 0 !== _a ? _a : targetNodeSourceLinkDatum.index) && (highlightLinks.push(null !== (_b = targetNodeSourceLinkDatum.key) && void 0 !== _b ? _b : targetNodeSourceLinkDatum.index),
129
+ !highlightNodes.includes(targetNodeSourceLinkDatum.target))) {
130
+ highlightNodes.push(targetNodeSourceLinkDatum.target);
131
+ const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === targetNodeSourceLinkDatum.target));
132
+ newTargetNodeSourceLinks.push(sourceNodeTemp.data[0].targetLinks);
133
+ }
134
+ })), void (targetNodeSourceLinks = newTargetNodeSourceLinks);
135
+ }
136
+ }
137
+ } else if (linkDatum.target === nodeDatum.key && (highlightLinks.includes(null !== (_c = linkDatum.key) && void 0 !== _c ? _c : linkDatum.index) || highlightLinks.push(null !== (_d = linkDatum.key) && void 0 !== _d ? _d : linkDatum.index),
138
+ !highlightNodes.includes(linkDatum.source))) {
139
+ highlightNodes.push(linkDatum.source);
140
+ let sourceNodeTargetLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.source)).data[0].targetLinks;
141
+ for (;(null == sourceNodeTargetLinks ? void 0 : sourceNodeTargetLinks.length) > 0; ) {
142
+ const newSourceNodeTargetLinks = [];
143
+ return sourceNodeTargetLinks.forEach((sourceNodeTargetLinkDatum => {
110
144
  var _a, _b;
111
- if (!highlightLinks.includes(null !== (_a = targetNodeSourceLinkDatum.key) && void 0 !== _a ? _a : targetNodeSourceLinkDatum.index) && (highlightLinks.push(null !== (_b = targetNodeSourceLinkDatum.key) && void 0 !== _b ? _b : targetNodeSourceLinkDatum.index),
112
- !highlightNodes.includes(targetNodeSourceLinkDatum.target))) {
113
- highlightNodes.push(targetNodeSourceLinkDatum.target);
114
- const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === targetNodeSourceLinkDatum.target));
115
- newTargetNodeSourceLinks.push(sourceNodeTemp.data[0].targetLinks);
145
+ if (!highlightLinks.includes(null !== (_a = sourceNodeTargetLinkDatum.key) && void 0 !== _a ? _a : sourceNodeTargetLinkDatum.index) && (highlightLinks.push(null !== (_b = sourceNodeTargetLinkDatum.key) && void 0 !== _b ? _b : sourceNodeTargetLinkDatum.index),
146
+ !highlightNodes.includes(sourceNodeTargetLinkDatum.source))) {
147
+ highlightNodes.push(sourceNodeTargetLinkDatum.source);
148
+ const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === sourceNodeTargetLinkDatum.source));
149
+ newSourceNodeTargetLinks.push(sourceNodeTemp.data[0].targetLinks);
116
150
  }
117
- })), void (targetNodeSourceLinks = newTargetNodeSourceLinks);
151
+ })), void (sourceNodeTargetLinks = newSourceNodeTargetLinks);
118
152
  }
119
153
  }
120
- } else if (linkDatum.target === nodeDatum.key && (highlightLinks.includes(null !== (_c = linkDatum.key) && void 0 !== _c ? _c : linkDatum.index) || highlightLinks.push(null !== (_d = linkDatum.key) && void 0 !== _d ? _d : linkDatum.index),
121
- !highlightNodes.includes(linkDatum.source))) {
122
- highlightNodes.push(linkDatum.source);
123
- let sourceNodeTargetLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.source)).data[0].targetLinks;
124
- for (;(null == sourceNodeTargetLinks ? void 0 : sourceNodeTargetLinks.length) > 0; ) {
125
- const newSourceNodeTargetLinks = [];
126
- return sourceNodeTargetLinks.forEach((sourceNodeTargetLinkDatum => {
127
- var _a, _b;
128
- if (!highlightLinks.includes(null !== (_a = sourceNodeTargetLinkDatum.key) && void 0 !== _a ? _a : sourceNodeTargetLinkDatum.index) && (highlightLinks.push(null !== (_b = sourceNodeTargetLinkDatum.key) && void 0 !== _b ? _b : sourceNodeTargetLinkDatum.index),
129
- !highlightNodes.includes(sourceNodeTargetLinkDatum.source))) {
130
- highlightNodes.push(sourceNodeTargetLinkDatum.source);
131
- const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === sourceNodeTargetLinkDatum.source));
132
- newSourceNodeTargetLinks.push(sourceNodeTemp.data[0].targetLinks);
133
- }
134
- })), void (sourceNodeTargetLinks = newSourceNodeTargetLinks);
154
+ })), [ this._linkMark ].forEach((mark => {
155
+ const vGrammarMark = mark.getProduct();
156
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
157
+ vGrammarMark.elements.forEach(((linkEl, i) => {
158
+ var _a;
159
+ linkEl.clearStates(), highlightLinks.includes(null !== (_a = linkEl.getDatum().key) && void 0 !== _a ? _a : linkEl.getDatum().index) ? linkEl.useStates([ "selected" ]) : linkEl.useStates([ "blur" ]);
160
+ }));
161
+ })), [ this._nodeMark ].forEach((mark => {
162
+ const vGrammarMark = mark.getProduct();
163
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
164
+ vGrammarMark.elements.forEach((el => {
165
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
166
+ }));
167
+ })), [ this._labelMark ].forEach((mark => {
168
+ const vGrammarMark = mark.getProduct();
169
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
170
+ vGrammarMark.elements.forEach((el => {
171
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
172
+ }));
173
+ }));
174
+ } else {
175
+ const highlightNodes = [ nodeDatum.key ], upstreamLinks = nodeDatum.targetLinks.reduce(((res, link) => ((0,
176
+ util_2.array)(link.datum).forEach((dividedLink => {
177
+ const parents = dividedLink.parents, len = parents.length;
178
+ for (let i = 0; i < len; i++) {
179
+ const source = parents[i].key, target = parents[i + 1] ? parents[i + 1].key : nodeDatum.key, value = dividedLink.value, existingItem = res.find((item => item.source === source && item.target === target));
180
+ existingItem ? existingItem.value += value : res.push({
181
+ source: source,
182
+ target: target,
183
+ value: value
184
+ });
135
185
  }
136
- }
137
- })), [ this._linkMark ].forEach((mark => {
138
- const vGrammarMark = mark.getProduct();
139
- if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
140
- vGrammarMark.elements.forEach(((linkEl, i) => {
141
- var _a;
142
- if (linkEl.clearStates(), highlightLinks.includes(null !== (_a = linkEl.getDatum().key) && void 0 !== _a ? _a : linkEl.getDatum().index)) {
143
- const linkDatum = linkEl.getDatum();
144
- let ratio;
145
- if ("parents" === ((null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source")) {
146
- ratio = linkDatum.datum.filter((entry => entry.parents.some((par => par.key === nodeDatum.key)))).reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
147
- }
148
- linkEl.addState("selected", {
186
+ })), res)), []);
187
+ allLinkElements.forEach(((linkEl, i) => {
188
+ linkEl.clearStates();
189
+ const linkDatum = linkEl.getDatum(), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source", originalDatum = linkDatum.datum, selectedDatum = originalDatum ? originalDatum.filter((entry => entry[father].some((par => par.key === nodeDatum.key)))) : null, upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
190
+ if (selectedDatum && selectedDatum.length) {
191
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
192
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
193
+ const ratio = selectedDatum.reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
194
+ return linkEl.useStates([ "selected" ]), void linkEl.addState("selected", {
149
195
  ratio: ratio
150
196
  });
151
- } else linkEl.useStates([ "blur" ]);
152
- }));
153
- })), [ this._nodeMark ].forEach((mark => {
154
- const vGrammarMark = mark.getProduct();
155
- if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
156
- vGrammarMark.elements.forEach((el => {
157
- el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
158
- }));
159
- })), [ this._labelMark ].forEach((mark => {
160
- const vGrammarMark = mark.getProduct();
161
- if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
162
- vGrammarMark.elements.forEach((el => {
163
- el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
197
+ }
198
+ if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
199
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
200
+ linkEl.useStates([ "selected" ]), void linkEl.addState("selected", {
201
+ ratio: upSelectedLink.value / linkDatum.value
202
+ });
203
+ linkEl.useStates([ "blur" ]);
204
+ })), [ this._nodeMark ].forEach((mark => {
205
+ const vGrammarMark = mark.getProduct();
206
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
207
+ vGrammarMark.elements.forEach((el => {
208
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
209
+ }));
210
+ })), [ this._labelMark ].forEach((mark => {
211
+ const vGrammarMark = mark.getProduct();
212
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
213
+ vGrammarMark.elements.forEach((el => {
214
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
215
+ }));
164
216
  }));
165
- }));
217
+ }
166
218
  }, this._handleLinkRelatedClick = element => {
167
- [ this._linkMark ].forEach((mark => {
219
+ var _a;
220
+ const nodeVGrammarMark = this._nodeMark.getProduct();
221
+ if (!nodeVGrammarMark || !nodeVGrammarMark.elements || !nodeVGrammarMark.elements.length) return;
222
+ const allNodeElements = nodeVGrammarMark.elements, linkVGrammarMark = this._linkMark.getProduct();
223
+ if (!linkVGrammarMark || !linkVGrammarMark.elements || !linkVGrammarMark.elements.length) return;
224
+ const allLinkElements = linkVGrammarMark.elements;
225
+ if ("source" === ((null === (_a = element.getDatum()) || void 0 === _a ? void 0 : _a.parents) ? "parents" : "source")) [ this._linkMark ].forEach((mark => {
168
226
  const vGrammarMark = mark.getProduct();
169
227
  if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
170
228
  vGrammarMark.elements.forEach((linkEl => {
@@ -182,7 +240,61 @@ class SankeySeries extends cartesian_1.CartesianSeries {
182
240
  vGrammarMark.elements.forEach((el => {
183
241
  el.clearStates();
184
242
  }));
185
- }));
243
+ })); else {
244
+ const curLinkDatum = element.getDatum(), highlightNodes = [ curLinkDatum.source, curLinkDatum.target ], upstreamLinks = [];
245
+ (0, util_2.array)(curLinkDatum.datum).forEach((dividedLink => {
246
+ const parents = dividedLink.parents, len = parents.length;
247
+ for (let i = 0; i < len - 1; i++) {
248
+ const source = parents[i].key, target = parents[i + 1].key, value = dividedLink.value, existingItem = upstreamLinks.find((item => item.source === source && item.target === target));
249
+ upstreamLinks.push({
250
+ source: parents[i].key,
251
+ target: parents[i + 1].key,
252
+ value: dividedLink.value
253
+ }), existingItem ? existingItem.value += value : upstreamLinks.push({
254
+ source: source,
255
+ target: target,
256
+ value: value
257
+ });
258
+ }
259
+ })), allLinkElements.forEach((linkEl => {
260
+ linkEl.clearStates();
261
+ const linkDatum = linkEl.getDatum(), originalDatum = linkDatum.datum;
262
+ if (linkDatum.source === curLinkDatum.source && linkDatum.target === curLinkDatum.target) return linkEl.useStates([ "selected" ]),
263
+ void linkEl.addState("selected", {
264
+ ratio: 1
265
+ });
266
+ const selectedDatum = originalDatum ? originalDatum.filter(((entry, index) => entry.parents.some((par => {
267
+ var _a;
268
+ return par.key === curLinkDatum.target && (null === (_a = entry.parents[index - 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.source;
269
+ })))) : null;
270
+ if (selectedDatum && selectedDatum.length) {
271
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
272
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
273
+ const val = selectedDatum.filter((entry => entry.parents.some(((par, index) => {
274
+ var _a;
275
+ return par.key === curLinkDatum.source && (null === (_a = entry.parents[index + 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.target;
276
+ })))).reduce(((sum, d) => sum + d.value), 0), ratio = val / linkDatum.value;
277
+ return linkEl.useStates([ "selected" ]), void linkEl.addState("selected", {
278
+ ratio: ratio
279
+ });
280
+ }
281
+ const upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
282
+ if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
283
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
284
+ linkEl.useStates([ "selected" ]), void linkEl.addState("selected", {
285
+ ratio: upSelectedLink.value / linkDatum.value
286
+ });
287
+ linkEl.useStates([ "blur" ]);
288
+ })), allNodeElements.forEach((el => {
289
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
290
+ })), [ this._labelMark ].forEach((mark => {
291
+ const vGrammarMark = mark.getProduct();
292
+ if (!vGrammarMark || !vGrammarMark.elements || !vGrammarMark.elements.length) return;
293
+ vGrammarMark.elements.forEach((el => {
294
+ el.clearStates(), highlightNodes.includes(el.getDatum().key) || el.useStates([ "blur" ]);
295
+ }));
296
+ }));
297
+ }
186
298
  };
187
299
  }
188
300
  getCategoryField() {
@@ -204,7 +316,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
204
316
  this._labelLimit = null !== (_c = null === (_b = this._spec.label) || void 0 === _b ? void 0 : _b.limit) && void 0 !== _c ? _c : 100;
205
317
  }
206
318
  initData() {
207
- var _a, _b, _c, _d;
319
+ var _a, _b, _c, _d, _e, _f;
208
320
  if (super.initData(), this._viewDataFilter) {
209
321
  (0, register_1.registerDataSetInstanceTransform)(this._dataSet, "sankey", sankey_1.sankey),
210
322
  this.addViewDataFilter({
@@ -236,19 +348,32 @@ class SankeySeries extends cartesian_1.CartesianSeries {
236
348
  const nodesDataSet = new vdataset_1.DataSet;
237
349
  (0, register_1.registerDataSetInstanceParser)(nodesDataSet, "dataview", vdataset_1.dataViewParser),
238
350
  (0, register_1.registerDataSetInstanceTransform)(nodesDataSet, "sankeyNodes", sankey_nodes_1.sankeyNodes),
239
- (0, register_1.registerDataSetInstanceTransform)(nodesDataSet, "addVChartProperty", add_property_1.addVChartProperty);
351
+ (0, register_1.registerDataSetInstanceTransform)(nodesDataSet, "addVChartProperty", add_property_1.addVChartProperty),
352
+ (0, register_1.registerDataSetInstanceTransform)(nodesDataSet, "flatten", flatten_1.flatten);
240
353
  const nodesDataView = new vdataset_1.DataView(nodesDataSet);
241
354
  nodesDataView.parse([ this.getViewData() ], {
242
355
  type: "dataview"
243
356
  }), nodesDataView.transform({
244
357
  type: "sankeyNodes"
358
+ }), nodesDataView.transform({
359
+ type: "flatten",
360
+ options: {
361
+ callback: node => {
362
+ if (node.datum) {
363
+ const nodeData = node.datum[node.depth];
364
+ return Object.assign(Object.assign({}, node), nodeData);
365
+ }
366
+ return node;
367
+ }
368
+ }
245
369
  }), nodesDataView.transform({
246
370
  type: "addVChartProperty",
247
371
  options: {
248
372
  beforeCall: data_key_1.initKeyMap,
249
373
  call: data_key_1.addDataKey.bind(this)
250
374
  }
251
- }, !1), this._nodesSeriesData = new series_data_1.SeriesData(this._option, nodesDataView);
375
+ }, !1), null === (_e = this._data) || void 0 === _e || _e.getDataView().target.addListener("change", nodesDataView.reRunAllTransform),
376
+ this._nodesSeriesData = new series_data_1.SeriesData(this._option, nodesDataView);
252
377
  const linksDataSet = new vdataset_1.DataSet;
253
378
  (0, register_1.registerDataSetInstanceParser)(linksDataSet, "dataview", vdataset_1.dataViewParser),
254
379
  (0, register_1.registerDataSetInstanceTransform)(linksDataSet, "sankeyLinks", sankey_links_1.sankeyLinks),
@@ -264,7 +389,8 @@ class SankeySeries extends cartesian_1.CartesianSeries {
264
389
  beforeCall: data_key_1.initKeyMap,
265
390
  call: data_key_1.addDataKey.bind(this)
266
391
  }
267
- }, !1), this._linksSeriesData = new series_data_1.SeriesData(this._option, linksDataView);
392
+ }, !1), null === (_f = this._data) || void 0 === _f || _f.getDataView().target.addListener("change", linksDataView.reRunAllTransform),
393
+ this._linksSeriesData = new series_data_1.SeriesData(this._option, linksDataView);
268
394
  }
269
395
  }
270
396
  initMark() {
@@ -302,8 +428,9 @@ class SankeySeries extends cartesian_1.CartesianSeries {
302
428
  y: datum => datum.y0,
303
429
  y1: datum => datum.y1,
304
430
  fill: datum => {
305
- var _a, _b, _c;
306
- return null !== (_c = null === (_b = null === (_a = this._spec.node) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fill) && void 0 !== _c ? _c : this.getNodeOrdinalColorScale(datum.key);
431
+ var _a, _b, _c, _d, _e;
432
+ const nodeName = null !== (_b = null !== (_a = datum.key) && void 0 !== _a ? _a : datum[this._spec.categoryField]) && void 0 !== _b ? _b : "";
433
+ return null !== (_e = null === (_d = null === (_c = this._spec.node) || void 0 === _c ? void 0 : _c.style) || void 0 === _d ? void 0 : _d.fill) && void 0 !== _e ? _e : this.getNodeOrdinalColorScale(nodeName);
307
434
  }
308
435
  }, mark_1.STATE_VALUE_ENUM.STATE_NORMAL, constant_1.AttributeLevel.Mark), this._trigger.registerMark(nodeMark),
309
436
  null === (_a = this._tooltipHelper) || void 0 === _a || _a.activeTriggerSet.mark.add(nodeMark));
@@ -331,7 +458,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
331
458
  x: datum => datum.x0,
332
459
  y: datum => (datum.y0 + datum.y1) / 2,
333
460
  fill: "#ffffff",
334
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
461
+ text: datum => this._createText(datum),
335
462
  limit: datum => {
336
463
  var _a;
337
464
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -342,7 +469,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
342
469
  x: datum => (datum.x0 + datum.x1) / 2,
343
470
  y: datum => (datum.y0 + datum.y1) / 2,
344
471
  fill: "#ffffff",
345
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
472
+ text: datum => this._createText(datum),
346
473
  limit: datum => {
347
474
  var _a;
348
475
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -353,7 +480,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
353
480
  x: datum => datum.x1,
354
481
  y: datum => (datum.y0 + datum.y1) / 2,
355
482
  fill: "#ffffff",
356
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
483
+ text: datum => this._createText(datum),
357
484
  limit: datum => {
358
485
  var _a;
359
486
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -367,7 +494,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
367
494
  var _a, _b, _c;
368
495
  return null !== (_c = null === (_b = null === (_a = this._spec.node) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fill) && void 0 !== _c ? _c : this.getNodeOrdinalColorScale(datum.key);
369
496
  },
370
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
497
+ text: datum => this._createText(datum),
371
498
  limit: this._labelLimit,
372
499
  textAlign: "center",
373
500
  textBaseline: datum => datum.y1 >= this._viewBox.y2 ? "bottom" : "top"
@@ -375,7 +502,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
375
502
  x: datum => datum.x0,
376
503
  y: datum => (datum.y0 + datum.y1) / 2,
377
504
  fill: "#ffffff",
378
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
505
+ text: datum => this._createText(datum),
379
506
  limit: datum => {
380
507
  var _a;
381
508
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -386,7 +513,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
386
513
  x: datum => (datum.x0 + datum.x1) / 2,
387
514
  y: datum => (datum.y0 + datum.y1) / 2,
388
515
  fill: "#ffffff",
389
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
516
+ text: datum => this._createText(datum),
390
517
  limit: datum => {
391
518
  var _a;
392
519
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -397,7 +524,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
397
524
  x: datum => datum.x1,
398
525
  y: datum => (datum.y0 + datum.y1) / 2,
399
526
  fill: "#ffffff",
400
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
527
+ text: datum => this._createText(datum),
401
528
  limit: datum => {
402
529
  var _a;
403
530
  return null !== (_a = this._spec.label.limit) && void 0 !== _a ? _a : datum.x1 - datum.x0;
@@ -411,7 +538,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
411
538
  var _a, _b, _c;
412
539
  return null !== (_c = null === (_b = null === (_a = this._spec.node) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fill) && void 0 !== _c ? _c : this.getNodeOrdinalColorScale(datum.key);
413
540
  },
414
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
541
+ text: datum => this._createText(datum),
415
542
  limit: this._labelLimit,
416
543
  textAlign: "right",
417
544
  textBaseline: "middle"
@@ -422,7 +549,7 @@ class SankeySeries extends cartesian_1.CartesianSeries {
422
549
  var _a, _b, _c;
423
550
  return null !== (_c = null === (_b = null === (_a = this._spec.node) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fill) && void 0 !== _c ? _c : this.getNodeOrdinalColorScale(datum.key);
424
551
  },
425
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
552
+ text: datum => this._createText(datum),
426
553
  limit: this._labelLimit,
427
554
  textAlign: "left",
428
555
  textBaseline: "middle"
@@ -433,13 +560,20 @@ class SankeySeries extends cartesian_1.CartesianSeries {
433
560
  var _a, _b, _c;
434
561
  return null !== (_c = null === (_b = null === (_a = this._spec.node) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fill) && void 0 !== _c ? _c : this.getNodeOrdinalColorScale(datum.key);
435
562
  },
436
- text: datum => (null == datum ? void 0 : datum.datum) ? datum.datum[this._spec.categoryField] : "",
563
+ text: datum => this._createText(datum),
437
564
  limit: this._labelLimit,
438
565
  textAlign: datum => datum.x1 >= this._viewBox.x2 ? "right" : "left",
439
566
  textBaseline: "middle"
440
567
  }, mark_1.STATE_VALUE_ENUM.STATE_NORMAL, constant_1.AttributeLevel.Series), this._labelMark.setZIndex(this._labelLayoutZIndex),
441
568
  this._trigger.registerMark(this._labelMark), null === (_a = this._tooltipHelper) || void 0 === _a || _a.activeTriggerSet.mark.add(this._labelMark));
442
569
  }
570
+ _createText(datum) {
571
+ var _a;
572
+ if ((0, util_2.isNil)(datum) || (0, util_2.isNil)(datum.datum)) return "";
573
+ let text = datum.datum[this._spec.categoryField] || "";
574
+ return (null === (_a = this._spec.label) || void 0 === _a ? void 0 : _a.formatMethod) && (text = this._spec.label.formatMethod(text, datum.datum)),
575
+ text;
576
+ }
443
577
  initAnimation() {
444
578
  var _a, _b;
445
579
  const animationParams = {
@@ -457,27 +591,47 @@ class SankeySeries extends cartesian_1.CartesianSeries {
457
591
  utils_1.userAnimationConfig)(interface_1.SeriesMarkNameEnum.label, this._spec)));
458
592
  }
459
593
  initEvent() {
460
- var _a, _b, _c, _d, _e, _f;
461
- super.initEvent(), (null === (_a = this._spec.emphasis) || void 0 === _a ? void 0 : _a.enable) && "adjacency" === (null === (_b = this._spec.emphasis) || void 0 === _b ? void 0 : _b.effect) && ("hover" === (null === (_c = this._spec.emphasis) || void 0 === _c ? void 0 : _c.trigger) ? this.event.on("pointerover", {
594
+ var _a, _b, _c, _d, _e, _f, _g, _h;
595
+ super.initEvent(), null === (_a = this._nodesSeriesData.getDataView()) || void 0 === _a || _a.target.addListener("change", this.nodesSeriesDataUpdate.bind(this)),
596
+ null === (_b = this._linksSeriesData.getDataView()) || void 0 === _b || _b.target.addListener("change", this.linksSeriesDataUpdate.bind(this)),
597
+ (null === (_c = this._spec.emphasis) || void 0 === _c ? void 0 : _c.enable) && "adjacency" === (null === (_d = this._spec.emphasis) || void 0 === _d ? void 0 : _d.effect) && ("hover" === (null === (_e = this._spec.emphasis) || void 0 === _e ? void 0 : _e.trigger) ? this.event.on("pointerover", {
462
598
  level: constant_1.Event_Bubble_Level.mark
463
599
  }, this._handleAdjacencyClick) : this.event.on("pointerdown", {
464
600
  level: constant_1.Event_Bubble_Level.mark
465
- }, this._handleAdjacencyClick)), (null === (_d = this._spec.emphasis) || void 0 === _d ? void 0 : _d.enable) && "related" === (null === (_e = this._spec.emphasis) || void 0 === _e ? void 0 : _e.effect) && ("hover" === (null === (_f = this._spec.emphasis) || void 0 === _f ? void 0 : _f.trigger) ? this.event.on("pointerover", {
601
+ }, this._handleAdjacencyClick)), (null === (_f = this._spec.emphasis) || void 0 === _f ? void 0 : _f.enable) && "related" === (null === (_g = this._spec.emphasis) || void 0 === _g ? void 0 : _g.effect) && ("hover" === (null === (_h = this._spec.emphasis) || void 0 === _h ? void 0 : _h.trigger) ? this.event.on("pointerover", {
466
602
  level: constant_1.Event_Bubble_Level.mark
467
603
  }, this._handleRelatedClick) : this.event.on("pointerdown", {
468
604
  level: constant_1.Event_Bubble_Level.mark
469
605
  }, this._handleRelatedClick));
470
606
  }
607
+ nodesSeriesDataUpdate() {
608
+ this.event.emit(constant_1.ChartEvent.legendFilter, {
609
+ model: this
610
+ }), this._nodesSeriesData.updateData();
611
+ }
612
+ linksSeriesDataUpdate() {
613
+ this.event.emit(constant_1.ChartEvent.legendFilter, {
614
+ model: this
615
+ }), this._linksSeriesData.updateData();
616
+ }
471
617
  initTooltip() {
472
618
  this._tooltipHelper = new tooltip_helper_1.SankeySeriesTooltipHelper(this);
473
619
  }
474
620
  getNodeOrdinalColorScale(item) {
475
- var _a, _b, _c, _d;
476
- const colorDomain = this._nodesSeriesData.getDataView().latestData.map((datum => datum.key)), colorRange = null !== (_b = null === (_a = this._option.globalScale.color) || void 0 === _a ? void 0 : _a.range()) && void 0 !== _b ? _b : (0,
621
+ var _a, _b, _c, _d, _e, _f, _g;
622
+ const colorDomain = (null === (_a = this._rawData.latestData[0]) || void 0 === _a ? void 0 : _a.nodes) ? (null === (_b = this._rawData.latestData[0].nodes[0]) || void 0 === _b ? void 0 : _b.children) ? Array.from(this.extractNamesFromTree(this._rawData.latestData[0].nodes)) : this._rawData.latestData[0].nodes.map(((datum, index) => this._spec.nodeKey ? datum[this._spec.categoryField] : index)) : null === (_c = this._rawData.latestData[0]) || void 0 === _c ? void 0 : _c.values.map(((datum, index) => this._spec.nodeKey ? datum[this._spec.categoryField] : index)), colorRange = null !== (_e = null === (_d = this._option.globalScale.color) || void 0 === _d ? void 0 : _d.range()) && void 0 !== _e ? _e : (0,
477
623
  util_1.getDataScheme)(this._option.getTheme().colorScheme, this.type), ordinalScale = new color_ordinal_scale_1.ColorOrdinalScale;
478
- return null === (_d = (_c = ordinalScale.domain(colorDomain)).range) || void 0 === _d || _d.call(_c, colorRange),
624
+ return null === (_g = (_f = ordinalScale.domain(colorDomain)).range) || void 0 === _g || _g.call(_f, colorRange),
479
625
  ordinalScale.scale(item);
480
626
  }
627
+ extractNamesFromTree(tree) {
628
+ const uniqueNames = new Set;
629
+ return tree.forEach((node => {
630
+ if (uniqueNames.add(node.name), node.children) {
631
+ this.extractNamesFromTree(node.children).forEach((name => uniqueNames.add(name)));
632
+ }
633
+ })), uniqueNames;
634
+ }
481
635
  getDimensionField() {
482
636
  return [ this._spec.categoryField ];
483
637
  }