@visactor/vchart 1.3.0-beta.7 → 1.3.0-beta.8

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 (1160) hide show
  1. package/build/es5/index.js +3 -3
  2. package/build/index.js +36794 -36453
  3. package/build/index.min.js +2 -2
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/chart/index.d.ts +2 -2
  6. package/cjs/chart/index.js +3 -3
  7. package/cjs/chart/index.js.map +1 -1
  8. package/cjs/chart/treemap/treemap.d.ts +1 -1
  9. package/cjs/chart/treemap/treemap.js +5 -5
  10. package/cjs/chart/treemap/treemap.js.map +1 -1
  11. package/cjs/component/axis/base-axis.d.ts +15 -14
  12. package/cjs/component/axis/base-axis.js.map +1 -1
  13. package/cjs/component/axis/cartesian/axis.d.ts +2 -2
  14. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  15. package/cjs/component/axis/cartesian/band-axis.d.ts +2 -3
  16. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  17. package/cjs/component/axis/cartesian/linear-axis.d.ts +3 -3
  18. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  19. package/cjs/component/axis/cartesian/log-axis.d.ts +3 -2
  20. package/cjs/component/axis/cartesian/log-axis.js.map +1 -1
  21. package/cjs/component/axis/cartesian/time-axis.d.ts +3 -2
  22. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  23. package/cjs/component/axis/interface.d.ts +6 -1
  24. package/cjs/component/axis/interface.js.map +1 -1
  25. package/cjs/component/axis/polar/axis.d.ts +2 -2
  26. package/cjs/component/axis/polar/axis.js.map +1 -1
  27. package/cjs/component/axis/polar/band-axis.d.ts +3 -2
  28. package/cjs/component/axis/polar/band-axis.js.map +1 -1
  29. package/cjs/component/axis/polar/interface/spec.d.ts +7 -2
  30. package/cjs/component/axis/polar/interface/spec.js.map +1 -1
  31. package/cjs/component/axis/polar/linear-axis.d.ts +2 -3
  32. package/cjs/component/axis/polar/linear-axis.js.map +1 -1
  33. package/cjs/component/base/base-component.d.ts +4 -2
  34. package/cjs/component/base/base-component.js +11 -4
  35. package/cjs/component/base/base-component.js.map +1 -1
  36. package/cjs/component/brush/brush.d.ts +2 -2
  37. package/cjs/component/brush/brush.js +1 -1
  38. package/cjs/component/brush/brush.js.map +1 -1
  39. package/cjs/component/brush/interface.d.ts +1 -0
  40. package/cjs/component/brush/interface.js.map +1 -1
  41. package/cjs/component/crosshair/base.d.ts +2 -2
  42. package/cjs/component/crosshair/base.js +1 -1
  43. package/cjs/component/crosshair/base.js.map +1 -1
  44. package/cjs/component/crosshair/cartesian.d.ts +3 -3
  45. package/cjs/component/crosshair/cartesian.js.map +1 -1
  46. package/cjs/component/crosshair/polar.d.ts +3 -3
  47. package/cjs/component/crosshair/polar.js.map +1 -1
  48. package/cjs/component/custom-mark/custom-mark.d.ts +1 -1
  49. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  50. package/cjs/component/data-zoom/data-filter-base-component.d.ts +4 -4
  51. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  52. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +5 -4
  53. package/cjs/component/data-zoom/data-zoom/data-zoom.js +1 -1
  54. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  55. package/cjs/component/data-zoom/data-zoom/interface.d.ts +3 -1
  56. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  57. package/cjs/component/data-zoom/interface.d.ts +4 -1
  58. package/cjs/component/data-zoom/interface.js.map +1 -1
  59. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +3 -2
  60. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  61. package/cjs/component/geo/geo-coordinate.d.ts +1 -2
  62. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  63. package/cjs/component/indicator/indicator.d.ts +2 -2
  64. package/cjs/component/indicator/indicator.js +1 -1
  65. package/cjs/component/indicator/indicator.js.map +1 -1
  66. package/cjs/component/indicator/interface.d.ts +2 -0
  67. package/cjs/component/indicator/interface.js.map +1 -1
  68. package/cjs/component/label/base-label.d.ts +2 -2
  69. package/cjs/component/label/base-label.js.map +1 -1
  70. package/cjs/component/label/interface.d.ts +3 -0
  71. package/cjs/component/label/interface.js.map +1 -1
  72. package/cjs/component/label/label.d.ts +4 -3
  73. package/cjs/component/label/label.js.map +1 -1
  74. package/cjs/component/legend/base-legend.d.ts +2 -2
  75. package/cjs/component/legend/base-legend.js.map +1 -1
  76. package/cjs/component/legend/continuous/legend.d.ts +3 -4
  77. package/cjs/component/legend/continuous/legend.js.map +1 -1
  78. package/cjs/component/legend/discrete/legend.d.ts +1 -2
  79. package/cjs/component/legend/discrete/legend.js.map +1 -1
  80. package/cjs/component/map-label/component.d.ts +1 -2
  81. package/cjs/component/map-label/component.js.map +1 -1
  82. package/cjs/component/marker/base-marker.d.ts +2 -2
  83. package/cjs/component/marker/base-marker.js.map +1 -1
  84. package/cjs/component/marker/mark-area/mark-area.d.ts +1 -2
  85. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  86. package/cjs/component/marker/mark-line/mark-line.d.ts +1 -2
  87. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  88. package/cjs/component/marker/mark-point/mark-point.d.ts +1 -2
  89. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  90. package/cjs/component/player/player.d.ts +1 -2
  91. package/cjs/component/player/player.js.map +1 -1
  92. package/cjs/component/title/title.d.ts +1 -2
  93. package/cjs/component/title/title.js.map +1 -1
  94. package/cjs/component/tooltip/handler/base.js +3 -3
  95. package/cjs/component/tooltip/handler/base.js.map +1 -1
  96. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +1 -1
  97. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  98. package/cjs/component/tooltip/handler/utils/attribute.js +1 -1
  99. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  100. package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
  101. package/cjs/component/tooltip/interface/theme.d.ts +6 -5
  102. package/cjs/component/tooltip/interface/theme.js.map +1 -1
  103. package/cjs/component/tooltip/tooltip.d.ts +3 -2
  104. package/cjs/component/tooltip/tooltip.js +4 -1
  105. package/cjs/component/tooltip/tooltip.js.map +1 -1
  106. package/cjs/core/index.d.ts +1 -1
  107. package/cjs/core/index.js +1 -1
  108. package/cjs/core/index.js.map +1 -1
  109. package/cjs/core/vchart.js +8 -3
  110. package/cjs/core/vchart.js.map +1 -1
  111. package/cjs/data/transforms/data-key.d.ts +2 -2
  112. package/cjs/data/transforms/data-key.js.map +1 -1
  113. package/cjs/model/base-model.d.ts +4 -4
  114. package/cjs/model/base-model.js +13 -15
  115. package/cjs/model/base-model.js.map +1 -1
  116. package/cjs/model/interface.d.ts +1 -0
  117. package/cjs/model/interface.js.map +1 -1
  118. package/cjs/model/layout-item.d.ts +3 -3
  119. package/cjs/model/layout-item.js.map +1 -1
  120. package/cjs/model/tooltip-helper.d.ts +0 -2
  121. package/cjs/model/tooltip-helper.js +0 -3
  122. package/cjs/model/tooltip-helper.js.map +1 -1
  123. package/cjs/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  124. package/cjs/region/region.d.ts +2 -3
  125. package/cjs/region/region.js.map +1 -1
  126. package/cjs/series/area/area.d.ts +3 -2
  127. package/cjs/series/area/area.js +10 -12
  128. package/cjs/series/area/area.js.map +1 -1
  129. package/cjs/series/area/constant.d.ts +2 -0
  130. package/cjs/series/area/constant.js +15 -0
  131. package/cjs/series/area/constant.js.map +1 -0
  132. package/cjs/series/area/interface.d.ts +2 -0
  133. package/cjs/series/area/interface.js.map +1 -1
  134. package/cjs/series/bar/bar-3d.d.ts +3 -1
  135. package/cjs/series/bar/bar-3d.js +2 -7
  136. package/cjs/series/bar/bar-3d.js.map +1 -1
  137. package/cjs/series/bar/bar.js +2 -7
  138. package/cjs/series/bar/bar.js.map +1 -1
  139. package/cjs/series/bar/constant.d.ts +3 -0
  140. package/cjs/series/bar/constant.js +20 -0
  141. package/cjs/series/bar/constant.js.map +1 -0
  142. package/cjs/series/bar/interface.d.ts +3 -2
  143. package/cjs/series/bar/interface.js.map +1 -1
  144. package/cjs/series/base/base-series.d.ts +3 -6
  145. package/cjs/series/base/base-series.js +3 -19
  146. package/cjs/series/base/base-series.js.map +1 -1
  147. package/cjs/series/base/constant.d.ts +2 -0
  148. package/cjs/series/base/constant.js +15 -0
  149. package/cjs/series/base/constant.js.map +1 -0
  150. package/cjs/series/base/tooltip-helper.d.ts +0 -1
  151. package/cjs/series/base/tooltip-helper.js +1 -4
  152. package/cjs/series/base/tooltip-helper.js.map +1 -1
  153. package/cjs/series/box-plot/box-plot.d.ts +1 -2
  154. package/cjs/series/box-plot/box-plot.js +5 -14
  155. package/cjs/series/box-plot/box-plot.js.map +1 -1
  156. package/cjs/series/box-plot/constant.d.ts +2 -0
  157. package/cjs/series/box-plot/constant.js +19 -0
  158. package/cjs/series/box-plot/constant.js.map +1 -0
  159. package/cjs/series/cartesian/interface.d.ts +2 -2
  160. package/cjs/series/cartesian/interface.js.map +1 -1
  161. package/cjs/series/circle-packing/circle-packing.d.ts +1 -2
  162. package/cjs/series/circle-packing/circle-packing.js +6 -11
  163. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  164. package/cjs/series/circle-packing/constant.d.ts +2 -0
  165. package/cjs/series/circle-packing/constant.js +15 -0
  166. package/cjs/series/circle-packing/constant.js.map +1 -0
  167. package/cjs/series/dot/constant.d.ts +2 -0
  168. package/cjs/series/dot/constant.js +39 -0
  169. package/cjs/series/dot/constant.js.map +1 -0
  170. package/cjs/series/dot/dot.d.ts +1 -1
  171. package/cjs/series/dot/dot.js +2 -31
  172. package/cjs/series/dot/dot.js.map +1 -1
  173. package/cjs/series/funnel/constant.d.ts +3 -0
  174. package/cjs/series/funnel/constant.js +52 -0
  175. package/cjs/series/funnel/constant.js.map +1 -0
  176. package/cjs/series/funnel/funnel-3d.d.ts +3 -2
  177. package/cjs/series/funnel/funnel-3d.js +2 -23
  178. package/cjs/series/funnel/funnel-3d.js.map +1 -1
  179. package/cjs/series/funnel/funnel.d.ts +1 -1
  180. package/cjs/series/funnel/funnel.js +2 -23
  181. package/cjs/series/funnel/funnel.js.map +1 -1
  182. package/cjs/series/gauge/constant.d.ts +3 -0
  183. package/cjs/series/gauge/constant.js +32 -0
  184. package/cjs/series/gauge/constant.js.map +1 -0
  185. package/cjs/series/gauge/gauge-pointer.d.ts +2 -2
  186. package/cjs/series/gauge/gauge-pointer.js +5 -15
  187. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  188. package/cjs/series/gauge/gauge.d.ts +2 -1
  189. package/cjs/series/gauge/gauge.js +8 -14
  190. package/cjs/series/gauge/gauge.js.map +1 -1
  191. package/cjs/series/heatmap/constant.d.ts +2 -0
  192. package/cjs/series/heatmap/constant.js +19 -0
  193. package/cjs/series/heatmap/constant.js.map +1 -0
  194. package/cjs/series/heatmap/heatmap.d.ts +1 -1
  195. package/cjs/series/heatmap/heatmap.js +5 -14
  196. package/cjs/series/heatmap/heatmap.js.map +1 -1
  197. package/cjs/series/index.d.ts +2 -2
  198. package/cjs/series/index.js +3 -3
  199. package/cjs/series/index.js.map +1 -1
  200. package/cjs/series/interface/theme.d.ts +3 -2
  201. package/cjs/series/interface/theme.js +34 -1
  202. package/cjs/series/interface/theme.js.map +1 -1
  203. package/cjs/series/line/constant.d.ts +2 -0
  204. package/cjs/series/line/constant.js +10 -0
  205. package/cjs/series/line/constant.js.map +1 -0
  206. package/cjs/series/line/interface.d.ts +4 -0
  207. package/cjs/series/line/interface.js.map +1 -1
  208. package/cjs/series/line/line.d.ts +3 -2
  209. package/cjs/series/line/line.js +5 -3
  210. package/cjs/series/line/line.js.map +1 -1
  211. package/cjs/series/link/constant.d.ts +2 -0
  212. package/cjs/series/link/constant.js +23 -0
  213. package/cjs/series/link/constant.js.map +1 -0
  214. package/cjs/series/link/link.d.ts +1 -1
  215. package/cjs/series/link/link.js +2 -15
  216. package/cjs/series/link/link.js.map +1 -1
  217. package/cjs/series/map/constant.d.ts +2 -0
  218. package/cjs/series/map/constant.js +15 -0
  219. package/cjs/series/map/constant.js.map +1 -0
  220. package/cjs/series/map/map.d.ts +1 -1
  221. package/cjs/series/map/map.js +2 -7
  222. package/cjs/series/map/map.js.map +1 -1
  223. package/cjs/series/mixin/line-mixin.d.ts +1 -1
  224. package/cjs/series/mixin/line-mixin.js +4 -4
  225. package/cjs/series/mixin/line-mixin.js.map +1 -1
  226. package/cjs/series/pie/constant.d.ts +3 -0
  227. package/cjs/series/pie/constant.js +28 -0
  228. package/cjs/series/pie/constant.js.map +1 -0
  229. package/cjs/series/pie/pie-3d.d.ts +1 -1
  230. package/cjs/series/pie/pie-3d.js +2 -11
  231. package/cjs/series/pie/pie-3d.js.map +1 -1
  232. package/cjs/series/pie/pie.d.ts +1 -1
  233. package/cjs/series/pie/pie.js +3 -12
  234. package/cjs/series/pie/pie.js.map +1 -1
  235. package/cjs/series/progress/circular/circular.d.ts +1 -1
  236. package/cjs/series/progress/circular/circular.js +6 -15
  237. package/cjs/series/progress/circular/circular.js.map +1 -1
  238. package/cjs/series/progress/circular/constant.d.ts +2 -0
  239. package/cjs/series/progress/circular/constant.js +19 -0
  240. package/cjs/series/progress/circular/constant.js.map +1 -0
  241. package/cjs/series/progress/linear/constant.d.ts +2 -0
  242. package/cjs/series/progress/linear/constant.js +23 -0
  243. package/cjs/series/progress/linear/constant.js.map +1 -0
  244. package/cjs/series/progress/linear/linear.d.ts +1 -1
  245. package/cjs/series/progress/linear/linear.js +2 -15
  246. package/cjs/series/progress/linear/linear.js.map +1 -1
  247. package/cjs/series/radar/constant.d.ts +2 -0
  248. package/cjs/series/radar/constant.js +15 -0
  249. package/cjs/series/radar/constant.js.map +1 -0
  250. package/cjs/series/radar/radar.d.ts +3 -2
  251. package/cjs/series/radar/radar.js +8 -10
  252. package/cjs/series/radar/radar.js.map +1 -1
  253. package/cjs/series/range-area/constant.d.ts +2 -0
  254. package/cjs/series/range-area/constant.js +10 -0
  255. package/cjs/series/range-area/constant.js.map +1 -0
  256. package/cjs/series/range-area/range-area.d.ts +2 -1
  257. package/cjs/series/range-area/range-area.js +2 -2
  258. package/cjs/series/range-area/range-area.js.map +1 -1
  259. package/cjs/series/range-column/constant.d.ts +3 -0
  260. package/cjs/series/range-column/constant.js +28 -0
  261. package/cjs/series/range-column/constant.js.map +1 -0
  262. package/cjs/series/range-column/range-column-3d.d.ts +5 -1
  263. package/cjs/series/range-column/range-column-3d.js +3 -2
  264. package/cjs/series/range-column/range-column-3d.js.map +1 -1
  265. package/cjs/series/range-column/range-column.d.ts +2 -2
  266. package/cjs/series/range-column/range-column.js +2 -11
  267. package/cjs/series/range-column/range-column.js.map +1 -1
  268. package/cjs/series/rose/constant.d.ts +2 -0
  269. package/cjs/series/rose/constant.js +15 -0
  270. package/cjs/series/rose/constant.js.map +1 -0
  271. package/cjs/series/rose/rose.d.ts +2 -1
  272. package/cjs/series/rose/rose.js +8 -10
  273. package/cjs/series/rose/rose.js.map +1 -1
  274. package/cjs/series/sankey/constant.d.ts +2 -0
  275. package/cjs/series/sankey/constant.js +19 -0
  276. package/cjs/series/sankey/constant.js.map +1 -0
  277. package/cjs/series/sankey/sankey.d.ts +1 -2
  278. package/cjs/series/sankey/sankey.js +2 -11
  279. package/cjs/series/sankey/sankey.js.map +1 -1
  280. package/cjs/series/scatter/constant.d.ts +2 -0
  281. package/cjs/series/scatter/constant.js +15 -0
  282. package/cjs/series/scatter/constant.js.map +1 -0
  283. package/cjs/series/scatter/interface.d.ts +2 -0
  284. package/cjs/series/scatter/interface.js.map +1 -1
  285. package/cjs/series/scatter/scatter.d.ts +2 -1
  286. package/cjs/series/scatter/scatter.js +8 -10
  287. package/cjs/series/scatter/scatter.js.map +1 -1
  288. package/cjs/series/sunburst/constant.d.ts +2 -0
  289. package/cjs/series/sunburst/constant.js +15 -0
  290. package/cjs/series/sunburst/constant.js.map +1 -0
  291. package/cjs/series/sunburst/sunburst.js +2 -7
  292. package/cjs/series/sunburst/sunburst.js.map +1 -1
  293. package/cjs/series/treemap/constant.d.ts +2 -0
  294. package/cjs/series/treemap/constant.js +23 -0
  295. package/cjs/series/treemap/constant.js.map +1 -0
  296. package/cjs/series/treemap/treemap.d.ts +1 -1
  297. package/cjs/series/treemap/treemap.js +10 -22
  298. package/cjs/series/treemap/treemap.js.map +1 -1
  299. package/cjs/series/waterfall/constant.d.ts +2 -0
  300. package/cjs/series/waterfall/constant.js +19 -0
  301. package/cjs/series/waterfall/constant.js.map +1 -0
  302. package/cjs/series/waterfall/waterfall.d.ts +2 -2
  303. package/cjs/series/waterfall/waterfall.js +2 -11
  304. package/cjs/series/waterfall/waterfall.js.map +1 -1
  305. package/cjs/series/word-cloud/base.js +3 -12
  306. package/cjs/series/word-cloud/base.js.map +1 -1
  307. package/cjs/series/word-cloud/constant.d.ts +2 -0
  308. package/cjs/series/word-cloud/constant.js +19 -0
  309. package/cjs/series/word-cloud/constant.js.map +1 -0
  310. package/cjs/series/word-cloud/word-cloud-3d.d.ts +1 -1
  311. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  312. package/cjs/series/word-cloud/word-cloud.d.ts +1 -1
  313. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  314. package/cjs/theme/builtin/common/component/axis/band-axis.d.ts +2 -0
  315. package/cjs/theme/builtin/common/component/axis/band-axis.js.map +1 -0
  316. package/cjs/theme/builtin/common/component/axis/cartesian-axis.js.map +1 -0
  317. package/cjs/theme/builtin/common/component/axis/common-axis.js.map +1 -0
  318. package/cjs/theme/builtin/common/component/axis/linear-axis.js.map +1 -0
  319. package/cjs/theme/builtin/common/component/axis/log-axis.js.map +1 -0
  320. package/cjs/theme/builtin/common/component/axis/polar-axis.js.map +1 -0
  321. package/cjs/theme/builtin/common/component/brush.js.map +1 -0
  322. package/cjs/theme/{buildin-theme/light → builtin/common}/component/crosshair.js +16 -4
  323. package/cjs/theme/builtin/common/component/crosshair.js.map +1 -0
  324. package/cjs/theme/builtin/common/component/data-zoom.js +160 -0
  325. package/cjs/theme/builtin/common/component/data-zoom.js.map +1 -0
  326. package/cjs/theme/builtin/common/component/index.js.map +1 -0
  327. package/cjs/theme/builtin/common/component/indicator.js.map +1 -0
  328. package/cjs/theme/builtin/common/component/legend/color-legend.js.map +1 -0
  329. package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/continuous.js +1 -1
  330. package/cjs/theme/builtin/common/component/legend/continuous.js.map +1 -0
  331. package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/discrete-legend.js +8 -5
  332. package/cjs/theme/builtin/common/component/legend/discrete-legend.js.map +1 -0
  333. package/cjs/theme/builtin/common/component/legend/size-legend.js.map +1 -0
  334. package/cjs/theme/builtin/common/component/map-label.js.map +1 -0
  335. package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-area.js +8 -2
  336. package/cjs/theme/builtin/common/component/mark-area.js.map +1 -0
  337. package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-line.js +8 -2
  338. package/cjs/theme/builtin/common/component/mark-line.js.map +1 -0
  339. package/cjs/theme/builtin/common/component/mark-point.js.map +1 -0
  340. package/cjs/theme/{buildin-theme/light → builtin/common}/component/player.js +4 -1
  341. package/cjs/theme/builtin/common/component/player.js.map +1 -0
  342. package/cjs/theme/{buildin-theme/light → builtin/common}/component/poptip.js +16 -4
  343. package/cjs/theme/builtin/common/component/poptip.js.map +1 -0
  344. package/cjs/theme/{buildin-theme/light → builtin/common}/component/title.js +2 -2
  345. package/cjs/theme/builtin/common/component/title.js.map +1 -0
  346. package/cjs/theme/{buildin-theme/light → builtin/common}/component/tooltip.js +25 -6
  347. package/cjs/theme/builtin/common/component/tooltip.js.map +1 -0
  348. package/cjs/theme/{buildin-theme/light → builtin/common}/component/total-label.js +4 -1
  349. package/cjs/theme/builtin/common/component/total-label.js.map +1 -0
  350. package/cjs/theme/{buildin-theme/light → builtin/common}/constants.js +3 -3
  351. package/cjs/theme/builtin/common/constants.js.map +1 -0
  352. package/cjs/theme/{buildin-theme/light → builtin/common}/mark.js +12 -3
  353. package/cjs/theme/builtin/common/mark.js.map +1 -0
  354. package/cjs/theme/builtin/common/series/area.js.map +1 -0
  355. package/cjs/theme/builtin/common/series/bar.js.map +1 -0
  356. package/cjs/theme/builtin/common/series/bar3d.js.map +1 -0
  357. package/cjs/theme/builtin/common/series/box-plot.js.map +1 -0
  358. package/cjs/theme/{buildin-theme/light → builtin/common}/series/circle-packing.js +8 -2
  359. package/cjs/theme/builtin/common/series/circle-packing.js.map +1 -0
  360. package/cjs/theme/builtin/common/series/circular-progress.js.map +1 -0
  361. package/cjs/theme/builtin/common/series/dot.js.map +1 -0
  362. package/cjs/theme/builtin/common/series/funnel.js.map +1 -0
  363. package/cjs/theme/builtin/common/series/funnel3d.js.map +1 -0
  364. package/cjs/theme/builtin/common/series/gauge-pointer.js.map +1 -0
  365. package/cjs/theme/builtin/common/series/gauge.js.map +1 -0
  366. package/cjs/theme/builtin/common/series/heatmap.js.map +1 -0
  367. package/cjs/theme/builtin/common/series/index.js.map +1 -0
  368. package/cjs/theme/builtin/common/series/line.js.map +1 -0
  369. package/cjs/theme/builtin/common/series/linear-progress.js.map +1 -0
  370. package/cjs/theme/builtin/common/series/link.js.map +1 -0
  371. package/cjs/theme/builtin/common/series/map.js.map +1 -0
  372. package/cjs/theme/builtin/common/series/pie.js.map +1 -0
  373. package/cjs/theme/builtin/common/series/pie3d.js.map +1 -0
  374. package/cjs/theme/builtin/common/series/radar.js.map +1 -0
  375. package/cjs/theme/{buildin-theme/light → builtin/common}/series/rangeColumn.js +4 -1
  376. package/cjs/theme/builtin/common/series/rangeColumn.js.map +1 -0
  377. package/cjs/theme/builtin/common/series/rose.js.map +1 -0
  378. package/cjs/theme/builtin/common/series/sankey.js.map +1 -0
  379. package/cjs/theme/builtin/common/series/scatter.js.map +1 -0
  380. package/cjs/theme/{buildin-theme/light → builtin/common}/series/sunburst.js +8 -2
  381. package/cjs/theme/builtin/common/series/sunburst.js.map +1 -0
  382. package/cjs/theme/builtin/common/series/treemap.js.map +1 -0
  383. package/cjs/theme/builtin/common/series/waterfall.js.map +1 -0
  384. package/cjs/theme/builtin/common/series/word-cloud.js.map +1 -0
  385. package/cjs/theme/builtin/common/series/word-cloud3d.js.map +1 -0
  386. package/cjs/theme/{buildin-theme/config.js → builtin/constant.js} +1 -1
  387. package/cjs/theme/builtin/constant.js.map +1 -0
  388. package/cjs/theme/builtin/dark/color-scheme.js +33 -0
  389. package/cjs/theme/builtin/dark/color-scheme.js.map +1 -0
  390. package/cjs/theme/builtin/dark/index.d.ts +2 -0
  391. package/cjs/theme/builtin/dark/index.js +13 -0
  392. package/cjs/theme/builtin/dark/index.js.map +1 -0
  393. package/{esm/theme/buildin-theme → cjs/theme/builtin}/index.d.ts +2 -2
  394. package/cjs/theme/{buildin-theme → builtin}/index.js +3 -3
  395. package/cjs/theme/builtin/index.js.map +1 -0
  396. package/cjs/theme/builtin/light/color-scheme.js +33 -0
  397. package/cjs/theme/builtin/light/color-scheme.js.map +1 -0
  398. package/cjs/theme/{buildin-theme → builtin}/light/index.js +5 -1
  399. package/cjs/theme/builtin/light/index.js.map +1 -0
  400. package/cjs/theme/color-scheme/builtin/default.d.ts +2 -0
  401. package/cjs/theme/color-scheme/builtin/default.js +11 -0
  402. package/cjs/theme/color-scheme/builtin/default.js.map +1 -0
  403. package/cjs/theme/color-scheme/util.d.ts +2 -1
  404. package/cjs/theme/color-scheme/util.js +9 -2
  405. package/cjs/theme/color-scheme/util.js.map +1 -1
  406. package/cjs/theme/index.d.ts +1 -1
  407. package/cjs/theme/index.js +1 -1
  408. package/cjs/theme/index.js.map +1 -1
  409. package/cjs/theme/interface.d.ts +2 -2
  410. package/cjs/theme/interface.js.map +1 -1
  411. package/cjs/theme/theme-manager.js +7 -7
  412. package/cjs/theme/theme-manager.js.map +1 -1
  413. package/cjs/typings/spec/common.d.ts +5 -0
  414. package/cjs/typings/spec/common.js.map +1 -1
  415. package/cjs/util/spec.d.ts +7 -0
  416. package/cjs/util/spec.js +55 -6
  417. package/cjs/util/spec.js.map +1 -1
  418. package/cjs/util/text.d.ts +0 -4
  419. package/cjs/util/text.js +6 -14
  420. package/cjs/util/text.js.map +1 -1
  421. package/cjs/vchart-all.js +1 -1
  422. package/cjs/vchart-all.js.map +1 -1
  423. package/esm/chart/index.d.ts +2 -2
  424. package/esm/chart/index.js +2 -2
  425. package/esm/chart/index.js.map +1 -1
  426. package/esm/chart/treemap/treemap.d.ts +1 -1
  427. package/esm/chart/treemap/treemap.js +4 -4
  428. package/esm/chart/treemap/treemap.js.map +1 -1
  429. package/esm/component/axis/base-axis.d.ts +15 -14
  430. package/esm/component/axis/base-axis.js.map +1 -1
  431. package/esm/component/axis/cartesian/axis.d.ts +2 -2
  432. package/esm/component/axis/cartesian/axis.js.map +1 -1
  433. package/esm/component/axis/cartesian/band-axis.d.ts +2 -3
  434. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  435. package/esm/component/axis/cartesian/linear-axis.d.ts +3 -3
  436. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  437. package/esm/component/axis/cartesian/log-axis.d.ts +3 -2
  438. package/esm/component/axis/cartesian/log-axis.js.map +1 -1
  439. package/esm/component/axis/cartesian/time-axis.d.ts +3 -2
  440. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  441. package/esm/component/axis/interface.d.ts +6 -1
  442. package/esm/component/axis/interface.js.map +1 -1
  443. package/esm/component/axis/polar/axis.d.ts +2 -2
  444. package/esm/component/axis/polar/axis.js.map +1 -1
  445. package/esm/component/axis/polar/band-axis.d.ts +3 -2
  446. package/esm/component/axis/polar/band-axis.js.map +1 -1
  447. package/esm/component/axis/polar/interface/spec.d.ts +7 -2
  448. package/esm/component/axis/polar/interface/spec.js.map +1 -1
  449. package/esm/component/axis/polar/linear-axis.d.ts +2 -3
  450. package/esm/component/axis/polar/linear-axis.js.map +1 -1
  451. package/esm/component/base/base-component.d.ts +4 -2
  452. package/esm/component/base/base-component.js +11 -1
  453. package/esm/component/base/base-component.js.map +1 -1
  454. package/esm/component/brush/brush.d.ts +2 -2
  455. package/esm/component/brush/brush.js +1 -1
  456. package/esm/component/brush/brush.js.map +1 -1
  457. package/esm/component/brush/interface.d.ts +1 -0
  458. package/esm/component/brush/interface.js.map +1 -1
  459. package/esm/component/crosshair/base.d.ts +2 -2
  460. package/esm/component/crosshair/base.js +1 -1
  461. package/esm/component/crosshair/base.js.map +1 -1
  462. package/esm/component/crosshair/cartesian.d.ts +3 -3
  463. package/esm/component/crosshair/cartesian.js.map +1 -1
  464. package/esm/component/crosshair/polar.d.ts +3 -3
  465. package/esm/component/crosshair/polar.js.map +1 -1
  466. package/esm/component/custom-mark/custom-mark.d.ts +1 -1
  467. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  468. package/esm/component/data-zoom/data-filter-base-component.d.ts +4 -4
  469. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  470. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +5 -4
  471. package/esm/component/data-zoom/data-zoom/data-zoom.js +1 -1
  472. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  473. package/esm/component/data-zoom/data-zoom/interface.d.ts +3 -1
  474. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  475. package/esm/component/data-zoom/interface.d.ts +4 -1
  476. package/esm/component/data-zoom/interface.js.map +1 -1
  477. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +3 -2
  478. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  479. package/esm/component/geo/geo-coordinate.d.ts +1 -2
  480. package/esm/component/geo/geo-coordinate.js.map +1 -1
  481. package/esm/component/indicator/indicator.d.ts +2 -2
  482. package/esm/component/indicator/indicator.js +1 -1
  483. package/esm/component/indicator/indicator.js.map +1 -1
  484. package/esm/component/indicator/interface.d.ts +2 -0
  485. package/esm/component/indicator/interface.js.map +1 -1
  486. package/esm/component/label/base-label.d.ts +2 -2
  487. package/esm/component/label/base-label.js.map +1 -1
  488. package/esm/component/label/interface.d.ts +3 -0
  489. package/esm/component/label/interface.js.map +1 -1
  490. package/esm/component/label/label.d.ts +4 -3
  491. package/esm/component/label/label.js.map +1 -1
  492. package/esm/component/legend/base-legend.d.ts +2 -2
  493. package/esm/component/legend/base-legend.js.map +1 -1
  494. package/esm/component/legend/continuous/legend.d.ts +3 -4
  495. package/esm/component/legend/continuous/legend.js.map +1 -1
  496. package/esm/component/legend/discrete/legend.d.ts +1 -2
  497. package/esm/component/legend/discrete/legend.js.map +1 -1
  498. package/esm/component/map-label/component.d.ts +1 -2
  499. package/esm/component/map-label/component.js.map +1 -1
  500. package/esm/component/marker/base-marker.d.ts +2 -2
  501. package/esm/component/marker/base-marker.js.map +1 -1
  502. package/esm/component/marker/mark-area/mark-area.d.ts +1 -2
  503. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  504. package/esm/component/marker/mark-line/mark-line.d.ts +1 -2
  505. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  506. package/esm/component/marker/mark-point/mark-point.d.ts +1 -2
  507. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  508. package/esm/component/player/player.d.ts +1 -2
  509. package/esm/component/player/player.js.map +1 -1
  510. package/esm/component/title/title.d.ts +1 -2
  511. package/esm/component/title/title.js.map +1 -1
  512. package/esm/component/tooltip/handler/base.js +3 -3
  513. package/esm/component/tooltip/handler/base.js.map +1 -1
  514. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +1 -1
  515. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  516. package/esm/component/tooltip/handler/utils/attribute.js +2 -2
  517. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  518. package/esm/component/tooltip/handler/utils/style.js.map +1 -1
  519. package/esm/component/tooltip/interface/theme.d.ts +6 -5
  520. package/esm/component/tooltip/interface/theme.js.map +1 -1
  521. package/esm/component/tooltip/tooltip.d.ts +3 -2
  522. package/esm/component/tooltip/tooltip.js +4 -1
  523. package/esm/component/tooltip/tooltip.js.map +1 -1
  524. package/esm/core/index.d.ts +1 -1
  525. package/esm/core/index.js +1 -1
  526. package/esm/core/index.js.map +1 -1
  527. package/esm/core/vchart.js +8 -3
  528. package/esm/core/vchart.js.map +1 -1
  529. package/esm/data/transforms/data-key.d.ts +2 -2
  530. package/esm/data/transforms/data-key.js.map +1 -1
  531. package/esm/model/base-model.d.ts +4 -4
  532. package/esm/model/base-model.js +14 -16
  533. package/esm/model/base-model.js.map +1 -1
  534. package/esm/model/interface.d.ts +1 -0
  535. package/esm/model/interface.js.map +1 -1
  536. package/esm/model/layout-item.d.ts +3 -3
  537. package/esm/model/layout-item.js.map +1 -1
  538. package/esm/model/tooltip-helper.d.ts +0 -2
  539. package/esm/model/tooltip-helper.js +0 -3
  540. package/esm/model/tooltip-helper.js.map +1 -1
  541. package/esm/plugin/components/axis-sync-plugin/axis-sync.js.map +1 -1
  542. package/esm/region/region.d.ts +2 -3
  543. package/esm/region/region.js.map +1 -1
  544. package/esm/series/area/area.d.ts +3 -2
  545. package/esm/series/area/area.js +7 -11
  546. package/esm/series/area/area.js.map +1 -1
  547. package/esm/series/area/constant.d.ts +2 -0
  548. package/esm/series/area/constant.js +15 -0
  549. package/esm/series/area/constant.js.map +1 -0
  550. package/esm/series/area/interface.d.ts +2 -0
  551. package/esm/series/area/interface.js.map +1 -1
  552. package/esm/series/bar/bar-3d.d.ts +3 -1
  553. package/esm/series/bar/bar-3d.js +3 -8
  554. package/esm/series/bar/bar-3d.js.map +1 -1
  555. package/esm/series/bar/bar.js +3 -8
  556. package/esm/series/bar/bar.js.map +1 -1
  557. package/esm/series/bar/constant.d.ts +3 -0
  558. package/esm/series/bar/constant.js +20 -0
  559. package/esm/series/bar/constant.js.map +1 -0
  560. package/esm/series/bar/interface.d.ts +3 -2
  561. package/esm/series/bar/interface.js.map +1 -1
  562. package/esm/series/base/base-series.d.ts +3 -6
  563. package/esm/series/base/base-series.js +4 -20
  564. package/esm/series/base/base-series.js.map +1 -1
  565. package/esm/series/base/constant.d.ts +2 -0
  566. package/esm/series/base/constant.js +11 -0
  567. package/esm/series/base/constant.js.map +1 -0
  568. package/esm/series/base/tooltip-helper.d.ts +0 -1
  569. package/esm/series/base/tooltip-helper.js +1 -4
  570. package/esm/series/base/tooltip-helper.js.map +1 -1
  571. package/esm/series/box-plot/box-plot.d.ts +1 -2
  572. package/esm/series/box-plot/box-plot.js +3 -14
  573. package/esm/series/box-plot/box-plot.js.map +1 -1
  574. package/esm/series/box-plot/constant.d.ts +2 -0
  575. package/esm/series/box-plot/constant.js +17 -0
  576. package/esm/series/box-plot/constant.js.map +1 -0
  577. package/esm/series/cartesian/interface.d.ts +2 -2
  578. package/esm/series/cartesian/interface.js.map +1 -1
  579. package/esm/series/circle-packing/circle-packing.d.ts +1 -2
  580. package/esm/series/circle-packing/circle-packing.js +4 -10
  581. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  582. package/esm/series/circle-packing/constant.d.ts +2 -0
  583. package/esm/series/circle-packing/constant.js +13 -0
  584. package/esm/series/circle-packing/constant.js.map +1 -0
  585. package/esm/series/dot/constant.d.ts +2 -0
  586. package/esm/series/dot/constant.js +37 -0
  587. package/esm/series/dot/constant.js.map +1 -0
  588. package/esm/series/dot/dot.d.ts +1 -1
  589. package/esm/series/dot/dot.js +3 -34
  590. package/esm/series/dot/dot.js.map +1 -1
  591. package/esm/series/funnel/constant.d.ts +3 -0
  592. package/esm/series/funnel/constant.js +52 -0
  593. package/esm/series/funnel/constant.js.map +1 -0
  594. package/esm/series/funnel/funnel-3d.d.ts +3 -2
  595. package/esm/series/funnel/funnel-3d.js +3 -24
  596. package/esm/series/funnel/funnel-3d.js.map +1 -1
  597. package/esm/series/funnel/funnel.d.ts +1 -1
  598. package/esm/series/funnel/funnel.js +3 -22
  599. package/esm/series/funnel/funnel.js.map +1 -1
  600. package/esm/series/gauge/constant.d.ts +3 -0
  601. package/esm/series/gauge/constant.js +32 -0
  602. package/esm/series/gauge/constant.js.map +1 -0
  603. package/esm/series/gauge/gauge-pointer.d.ts +2 -2
  604. package/esm/series/gauge/gauge-pointer.js +6 -16
  605. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  606. package/esm/series/gauge/gauge.d.ts +2 -1
  607. package/esm/series/gauge/gauge.js +6 -14
  608. package/esm/series/gauge/gauge.js.map +1 -1
  609. package/esm/series/heatmap/constant.d.ts +2 -0
  610. package/esm/series/heatmap/constant.js +17 -0
  611. package/esm/series/heatmap/constant.js.map +1 -0
  612. package/esm/series/heatmap/heatmap.d.ts +1 -1
  613. package/esm/series/heatmap/heatmap.js +3 -14
  614. package/esm/series/heatmap/heatmap.js.map +1 -1
  615. package/esm/series/index.d.ts +2 -2
  616. package/esm/series/index.js +2 -2
  617. package/esm/series/index.js.map +1 -1
  618. package/esm/series/interface/theme.d.ts +3 -2
  619. package/esm/series/interface/theme.js +78 -1
  620. package/esm/series/interface/theme.js.map +1 -1
  621. package/esm/series/line/constant.d.ts +2 -0
  622. package/esm/series/line/constant.js +6 -0
  623. package/esm/series/line/constant.js.map +1 -0
  624. package/esm/series/line/interface.d.ts +4 -0
  625. package/esm/series/line/interface.js.map +1 -1
  626. package/esm/series/line/line.d.ts +3 -2
  627. package/esm/series/line/line.js +7 -5
  628. package/esm/series/line/line.js.map +1 -1
  629. package/esm/series/link/constant.d.ts +2 -0
  630. package/esm/series/link/constant.js +21 -0
  631. package/esm/series/link/constant.js.map +1 -0
  632. package/esm/series/link/link.d.ts +1 -1
  633. package/esm/series/link/link.js +3 -20
  634. package/esm/series/link/link.js.map +1 -1
  635. package/esm/series/map/constant.d.ts +2 -0
  636. package/esm/series/map/constant.js +13 -0
  637. package/esm/series/map/constant.js.map +1 -0
  638. package/esm/series/map/map.d.ts +1 -1
  639. package/esm/series/map/map.js +3 -8
  640. package/esm/series/map/map.js.map +1 -1
  641. package/esm/series/mixin/line-mixin.d.ts +1 -1
  642. package/esm/series/mixin/line-mixin.js +3 -3
  643. package/esm/series/mixin/line-mixin.js.map +1 -1
  644. package/esm/series/pie/constant.d.ts +3 -0
  645. package/esm/series/pie/constant.js +28 -0
  646. package/esm/series/pie/constant.js.map +1 -0
  647. package/esm/series/pie/pie-3d.d.ts +1 -1
  648. package/esm/series/pie/pie-3d.js +3 -12
  649. package/esm/series/pie/pie-3d.js.map +1 -1
  650. package/esm/series/pie/pie.d.ts +1 -1
  651. package/esm/series/pie/pie.js +4 -13
  652. package/esm/series/pie/pie.js.map +1 -1
  653. package/esm/series/progress/circular/circular.d.ts +1 -1
  654. package/esm/series/progress/circular/circular.js +3 -14
  655. package/esm/series/progress/circular/circular.js.map +1 -1
  656. package/esm/series/progress/circular/constant.d.ts +2 -0
  657. package/esm/series/progress/circular/constant.js +17 -0
  658. package/esm/series/progress/circular/constant.js.map +1 -0
  659. package/esm/series/progress/linear/constant.d.ts +2 -0
  660. package/esm/series/progress/linear/constant.js +21 -0
  661. package/esm/series/progress/linear/constant.js.map +1 -0
  662. package/esm/series/progress/linear/linear.d.ts +1 -1
  663. package/esm/series/progress/linear/linear.js +3 -18
  664. package/esm/series/progress/linear/linear.js.map +1 -1
  665. package/esm/series/radar/constant.d.ts +2 -0
  666. package/esm/series/radar/constant.js +15 -0
  667. package/esm/series/radar/constant.js.map +1 -0
  668. package/esm/series/radar/radar.d.ts +3 -2
  669. package/esm/series/radar/radar.js +7 -11
  670. package/esm/series/radar/radar.js.map +1 -1
  671. package/esm/series/range-area/constant.d.ts +2 -0
  672. package/esm/series/range-area/constant.js +4 -0
  673. package/esm/series/range-area/constant.js.map +1 -0
  674. package/esm/series/range-area/range-area.d.ts +2 -1
  675. package/esm/series/range-area/range-area.js +3 -1
  676. package/esm/series/range-area/range-area.js.map +1 -1
  677. package/esm/series/range-column/constant.d.ts +3 -0
  678. package/esm/series/range-column/constant.js +28 -0
  679. package/esm/series/range-column/constant.js.map +1 -0
  680. package/esm/series/range-column/range-column-3d.d.ts +5 -1
  681. package/esm/series/range-column/range-column-3d.js +3 -1
  682. package/esm/series/range-column/range-column-3d.js.map +1 -1
  683. package/esm/series/range-column/range-column.d.ts +2 -2
  684. package/esm/series/range-column/range-column.js +3 -10
  685. package/esm/series/range-column/range-column.js.map +1 -1
  686. package/esm/series/rose/constant.d.ts +2 -0
  687. package/esm/series/rose/constant.js +13 -0
  688. package/esm/series/rose/constant.js.map +1 -0
  689. package/esm/series/rose/rose.d.ts +2 -1
  690. package/esm/series/rose/rose.js +6 -10
  691. package/esm/series/rose/rose.js.map +1 -1
  692. package/esm/series/sankey/constant.d.ts +2 -0
  693. package/esm/series/sankey/constant.js +17 -0
  694. package/esm/series/sankey/constant.js.map +1 -0
  695. package/esm/series/sankey/sankey.d.ts +1 -2
  696. package/esm/series/sankey/sankey.js +3 -14
  697. package/esm/series/sankey/sankey.js.map +1 -1
  698. package/esm/series/scatter/constant.d.ts +2 -0
  699. package/esm/series/scatter/constant.js +13 -0
  700. package/esm/series/scatter/constant.js.map +1 -0
  701. package/esm/series/scatter/interface.d.ts +2 -0
  702. package/esm/series/scatter/interface.js.map +1 -1
  703. package/esm/series/scatter/scatter.d.ts +2 -1
  704. package/esm/series/scatter/scatter.js +6 -10
  705. package/esm/series/scatter/scatter.js.map +1 -1
  706. package/esm/series/sunburst/constant.d.ts +2 -0
  707. package/esm/series/sunburst/constant.js +13 -0
  708. package/esm/series/sunburst/constant.js.map +1 -0
  709. package/esm/series/sunburst/sunburst.js +5 -9
  710. package/esm/series/sunburst/sunburst.js.map +1 -1
  711. package/esm/series/treemap/constant.d.ts +2 -0
  712. package/esm/series/treemap/constant.js +21 -0
  713. package/esm/series/treemap/constant.js.map +1 -0
  714. package/esm/series/treemap/treemap.d.ts +1 -1
  715. package/esm/series/treemap/treemap.js +10 -22
  716. package/esm/series/treemap/treemap.js.map +1 -1
  717. package/esm/series/waterfall/constant.d.ts +2 -0
  718. package/esm/series/waterfall/constant.js +17 -0
  719. package/esm/series/waterfall/constant.js.map +1 -0
  720. package/esm/series/waterfall/waterfall.d.ts +2 -2
  721. package/esm/series/waterfall/waterfall.js +3 -12
  722. package/esm/series/waterfall/waterfall.js.map +1 -1
  723. package/esm/series/word-cloud/base.js +3 -12
  724. package/esm/series/word-cloud/base.js.map +1 -1
  725. package/esm/series/word-cloud/constant.d.ts +2 -0
  726. package/esm/series/word-cloud/constant.js +17 -0
  727. package/esm/series/word-cloud/constant.js.map +1 -0
  728. package/esm/series/word-cloud/word-cloud-3d.d.ts +1 -1
  729. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  730. package/esm/series/word-cloud/word-cloud.d.ts +1 -1
  731. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  732. package/esm/theme/builtin/common/component/axis/band-axis.d.ts +2 -0
  733. package/esm/theme/builtin/common/component/axis/band-axis.js.map +1 -0
  734. package/esm/theme/builtin/common/component/axis/cartesian-axis.js.map +1 -0
  735. package/esm/theme/builtin/common/component/axis/common-axis.js.map +1 -0
  736. package/esm/theme/builtin/common/component/axis/linear-axis.js.map +1 -0
  737. package/esm/theme/builtin/common/component/axis/log-axis.js.map +1 -0
  738. package/esm/theme/builtin/common/component/axis/polar-axis.js.map +1 -0
  739. package/esm/theme/builtin/common/component/brush.js.map +1 -0
  740. package/esm/theme/{buildin-theme/light → builtin/common}/component/crosshair.js +16 -4
  741. package/esm/theme/builtin/common/component/crosshair.js.map +1 -0
  742. package/esm/theme/builtin/common/component/data-zoom.js +156 -0
  743. package/esm/theme/builtin/common/component/data-zoom.js.map +1 -0
  744. package/esm/theme/builtin/common/component/index.js.map +1 -0
  745. package/esm/theme/builtin/common/component/indicator.js.map +1 -0
  746. package/esm/theme/builtin/common/component/legend/color-legend.js.map +1 -0
  747. package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/continuous.js +1 -1
  748. package/esm/theme/builtin/common/component/legend/continuous.js.map +1 -0
  749. package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/discrete-legend.js +8 -5
  750. package/esm/theme/builtin/common/component/legend/discrete-legend.js.map +1 -0
  751. package/esm/theme/builtin/common/component/legend/size-legend.js.map +1 -0
  752. package/esm/theme/builtin/common/component/map-label.js.map +1 -0
  753. package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-area.js +8 -2
  754. package/esm/theme/builtin/common/component/mark-area.js.map +1 -0
  755. package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-line.js +8 -2
  756. package/esm/theme/builtin/common/component/mark-line.js.map +1 -0
  757. package/esm/theme/builtin/common/component/mark-point.js.map +1 -0
  758. package/esm/theme/{buildin-theme/light → builtin/common}/component/player.js +4 -1
  759. package/esm/theme/builtin/common/component/player.js.map +1 -0
  760. package/esm/theme/{buildin-theme/light → builtin/common}/component/poptip.js +16 -4
  761. package/esm/theme/builtin/common/component/poptip.js.map +1 -0
  762. package/esm/theme/{buildin-theme/light → builtin/common}/component/title.js +2 -2
  763. package/esm/theme/builtin/common/component/title.js.map +1 -0
  764. package/esm/theme/{buildin-theme/light → builtin/common}/component/tooltip.js +25 -6
  765. package/esm/theme/builtin/common/component/tooltip.js.map +1 -0
  766. package/esm/theme/{buildin-theme/light → builtin/common}/component/total-label.js +4 -1
  767. package/esm/theme/builtin/common/component/total-label.js.map +1 -0
  768. package/esm/theme/{buildin-theme/light → builtin/common}/constants.js +1 -1
  769. package/esm/theme/builtin/common/constants.js.map +1 -0
  770. package/esm/theme/{buildin-theme/light → builtin/common}/mark.js +12 -3
  771. package/esm/theme/builtin/common/mark.js.map +1 -0
  772. package/esm/theme/builtin/common/series/area.js.map +1 -0
  773. package/esm/theme/builtin/common/series/bar.js.map +1 -0
  774. package/esm/theme/builtin/common/series/bar3d.js.map +1 -0
  775. package/esm/theme/builtin/common/series/box-plot.js.map +1 -0
  776. package/esm/theme/{buildin-theme/light → builtin/common}/series/circle-packing.js +8 -2
  777. package/esm/theme/builtin/common/series/circle-packing.js.map +1 -0
  778. package/esm/theme/builtin/common/series/circular-progress.js.map +1 -0
  779. package/esm/theme/builtin/common/series/dot.js.map +1 -0
  780. package/esm/theme/builtin/common/series/funnel.js.map +1 -0
  781. package/esm/theme/builtin/common/series/funnel3d.js.map +1 -0
  782. package/esm/theme/builtin/common/series/gauge-pointer.js.map +1 -0
  783. package/esm/theme/builtin/common/series/gauge.js.map +1 -0
  784. package/esm/theme/builtin/common/series/heatmap.js.map +1 -0
  785. package/esm/theme/builtin/common/series/index.js.map +1 -0
  786. package/esm/theme/builtin/common/series/line.js.map +1 -0
  787. package/esm/theme/builtin/common/series/linear-progress.js.map +1 -0
  788. package/esm/theme/builtin/common/series/link.js.map +1 -0
  789. package/esm/theme/builtin/common/series/map.js.map +1 -0
  790. package/esm/theme/builtin/common/series/pie.js.map +1 -0
  791. package/esm/theme/builtin/common/series/pie3d.js.map +1 -0
  792. package/esm/theme/builtin/common/series/radar.js.map +1 -0
  793. package/esm/theme/{buildin-theme/light → builtin/common}/series/rangeColumn.js +4 -1
  794. package/esm/theme/builtin/common/series/rangeColumn.js.map +1 -0
  795. package/esm/theme/builtin/common/series/rose.js.map +1 -0
  796. package/esm/theme/builtin/common/series/sankey.js.map +1 -0
  797. package/esm/theme/builtin/common/series/scatter.js.map +1 -0
  798. package/esm/theme/{buildin-theme/light → builtin/common}/series/sunburst.js +8 -2
  799. package/esm/theme/builtin/common/series/sunburst.js.map +1 -0
  800. package/esm/theme/builtin/common/series/treemap.js.map +1 -0
  801. package/esm/theme/builtin/common/series/waterfall.js.map +1 -0
  802. package/esm/theme/builtin/common/series/word-cloud.js.map +1 -0
  803. package/esm/theme/builtin/common/series/word-cloud3d.js.map +1 -0
  804. package/esm/theme/{buildin-theme/config.js → builtin/constant.js} +1 -1
  805. package/esm/theme/builtin/constant.js.map +1 -0
  806. package/esm/theme/builtin/dark/color-scheme.d.ts +2 -0
  807. package/esm/theme/builtin/dark/color-scheme.js +27 -0
  808. package/esm/theme/builtin/dark/color-scheme.js.map +1 -0
  809. package/esm/theme/builtin/dark/index.d.ts +2 -0
  810. package/esm/theme/builtin/dark/index.js +7 -0
  811. package/esm/theme/builtin/dark/index.js.map +1 -0
  812. package/{cjs/theme/buildin-theme → esm/theme/builtin}/index.d.ts +2 -2
  813. package/esm/theme/builtin/index.js +12 -0
  814. package/esm/theme/builtin/index.js.map +1 -0
  815. package/esm/theme/builtin/light/color-scheme.d.ts +2 -0
  816. package/esm/theme/builtin/light/color-scheme.js +27 -0
  817. package/esm/theme/builtin/light/color-scheme.js.map +1 -0
  818. package/esm/theme/{buildin-theme → builtin}/light/index.js +8 -4
  819. package/esm/theme/builtin/light/index.js.map +1 -0
  820. package/esm/theme/color-scheme/builtin/default.d.ts +2 -0
  821. package/esm/theme/color-scheme/builtin/default.js +7 -0
  822. package/esm/theme/color-scheme/builtin/default.js.map +1 -0
  823. package/esm/theme/color-scheme/util.d.ts +2 -1
  824. package/esm/theme/color-scheme/util.js +6 -0
  825. package/esm/theme/color-scheme/util.js.map +1 -1
  826. package/esm/theme/index.d.ts +1 -1
  827. package/esm/theme/index.js +1 -1
  828. package/esm/theme/index.js.map +1 -1
  829. package/esm/theme/interface.d.ts +2 -2
  830. package/esm/theme/interface.js.map +1 -1
  831. package/esm/theme/theme-manager.js +6 -6
  832. package/esm/theme/theme-manager.js.map +1 -1
  833. package/esm/typings/spec/common.d.ts +5 -0
  834. package/esm/typings/spec/common.js.map +1 -1
  835. package/esm/util/spec.d.ts +7 -0
  836. package/esm/util/spec.js +52 -4
  837. package/esm/util/spec.js.map +1 -1
  838. package/esm/util/text.d.ts +0 -4
  839. package/esm/util/text.js +2 -8
  840. package/esm/util/text.js.map +1 -1
  841. package/esm/vchart-all.js +2 -2
  842. package/esm/vchart-all.js.map +1 -1
  843. package/package.json +8 -8
  844. package/cjs/theme/buildin-theme/config.js.map +0 -1
  845. package/cjs/theme/buildin-theme/index.js.map +0 -1
  846. package/cjs/theme/buildin-theme/light/color-scheme.js +0 -21
  847. package/cjs/theme/buildin-theme/light/color-scheme.js.map +0 -1
  848. package/cjs/theme/buildin-theme/light/component/axis/band-axis.d.ts +0 -2
  849. package/cjs/theme/buildin-theme/light/component/axis/band-axis.js.map +0 -1
  850. package/cjs/theme/buildin-theme/light/component/axis/cartesian-axis.js.map +0 -1
  851. package/cjs/theme/buildin-theme/light/component/axis/common-axis.js.map +0 -1
  852. package/cjs/theme/buildin-theme/light/component/axis/linear-axis.js.map +0 -1
  853. package/cjs/theme/buildin-theme/light/component/axis/log-axis.js.map +0 -1
  854. package/cjs/theme/buildin-theme/light/component/axis/polar-axis.js.map +0 -1
  855. package/cjs/theme/buildin-theme/light/component/brush.js.map +0 -1
  856. package/cjs/theme/buildin-theme/light/component/crosshair.js.map +0 -1
  857. package/cjs/theme/buildin-theme/light/component/data-zoom.js +0 -105
  858. package/cjs/theme/buildin-theme/light/component/data-zoom.js.map +0 -1
  859. package/cjs/theme/buildin-theme/light/component/index.js.map +0 -1
  860. package/cjs/theme/buildin-theme/light/component/indicator.js.map +0 -1
  861. package/cjs/theme/buildin-theme/light/component/legend/color-legend.js.map +0 -1
  862. package/cjs/theme/buildin-theme/light/component/legend/continuous.js.map +0 -1
  863. package/cjs/theme/buildin-theme/light/component/legend/discrete-legend.js.map +0 -1
  864. package/cjs/theme/buildin-theme/light/component/legend/size-legend.js.map +0 -1
  865. package/cjs/theme/buildin-theme/light/component/map-label.js.map +0 -1
  866. package/cjs/theme/buildin-theme/light/component/mark-area.js.map +0 -1
  867. package/cjs/theme/buildin-theme/light/component/mark-line.js.map +0 -1
  868. package/cjs/theme/buildin-theme/light/component/mark-point.js.map +0 -1
  869. package/cjs/theme/buildin-theme/light/component/player.js.map +0 -1
  870. package/cjs/theme/buildin-theme/light/component/poptip.js.map +0 -1
  871. package/cjs/theme/buildin-theme/light/component/title.js.map +0 -1
  872. package/cjs/theme/buildin-theme/light/component/tooltip.js.map +0 -1
  873. package/cjs/theme/buildin-theme/light/component/total-label.js.map +0 -1
  874. package/cjs/theme/buildin-theme/light/constants.js.map +0 -1
  875. package/cjs/theme/buildin-theme/light/index.js.map +0 -1
  876. package/cjs/theme/buildin-theme/light/mark.js.map +0 -1
  877. package/cjs/theme/buildin-theme/light/series/area.js.map +0 -1
  878. package/cjs/theme/buildin-theme/light/series/bar.js.map +0 -1
  879. package/cjs/theme/buildin-theme/light/series/bar3d.js.map +0 -1
  880. package/cjs/theme/buildin-theme/light/series/box-plot.js.map +0 -1
  881. package/cjs/theme/buildin-theme/light/series/circle-packing.js.map +0 -1
  882. package/cjs/theme/buildin-theme/light/series/circular-progress.js.map +0 -1
  883. package/cjs/theme/buildin-theme/light/series/dot.js.map +0 -1
  884. package/cjs/theme/buildin-theme/light/series/funnel.js.map +0 -1
  885. package/cjs/theme/buildin-theme/light/series/funnel3d.js.map +0 -1
  886. package/cjs/theme/buildin-theme/light/series/gauge-pointer.js.map +0 -1
  887. package/cjs/theme/buildin-theme/light/series/gauge.js.map +0 -1
  888. package/cjs/theme/buildin-theme/light/series/heatmap.js.map +0 -1
  889. package/cjs/theme/buildin-theme/light/series/index.js.map +0 -1
  890. package/cjs/theme/buildin-theme/light/series/line.js.map +0 -1
  891. package/cjs/theme/buildin-theme/light/series/linear-progress.js.map +0 -1
  892. package/cjs/theme/buildin-theme/light/series/link.js.map +0 -1
  893. package/cjs/theme/buildin-theme/light/series/map.js.map +0 -1
  894. package/cjs/theme/buildin-theme/light/series/pie.js.map +0 -1
  895. package/cjs/theme/buildin-theme/light/series/pie3d.js.map +0 -1
  896. package/cjs/theme/buildin-theme/light/series/radar.js.map +0 -1
  897. package/cjs/theme/buildin-theme/light/series/rangeColumn.js.map +0 -1
  898. package/cjs/theme/buildin-theme/light/series/rose.js.map +0 -1
  899. package/cjs/theme/buildin-theme/light/series/sankey.js.map +0 -1
  900. package/cjs/theme/buildin-theme/light/series/scatter.js.map +0 -1
  901. package/cjs/theme/buildin-theme/light/series/sunburst.js.map +0 -1
  902. package/cjs/theme/buildin-theme/light/series/treemap.js.map +0 -1
  903. package/cjs/theme/buildin-theme/light/series/waterfall.js.map +0 -1
  904. package/cjs/theme/buildin-theme/light/series/word-cloud.js.map +0 -1
  905. package/cjs/theme/buildin-theme/light/series/word-cloud3d.js.map +0 -1
  906. package/esm/theme/buildin-theme/config.js.map +0 -1
  907. package/esm/theme/buildin-theme/index.js +0 -10
  908. package/esm/theme/buildin-theme/index.js.map +0 -1
  909. package/esm/theme/buildin-theme/light/color-scheme.js +0 -17
  910. package/esm/theme/buildin-theme/light/color-scheme.js.map +0 -1
  911. package/esm/theme/buildin-theme/light/component/axis/band-axis.d.ts +0 -2
  912. package/esm/theme/buildin-theme/light/component/axis/band-axis.js.map +0 -1
  913. package/esm/theme/buildin-theme/light/component/axis/cartesian-axis.js.map +0 -1
  914. package/esm/theme/buildin-theme/light/component/axis/common-axis.js.map +0 -1
  915. package/esm/theme/buildin-theme/light/component/axis/linear-axis.js.map +0 -1
  916. package/esm/theme/buildin-theme/light/component/axis/log-axis.js.map +0 -1
  917. package/esm/theme/buildin-theme/light/component/axis/polar-axis.js.map +0 -1
  918. package/esm/theme/buildin-theme/light/component/brush.js.map +0 -1
  919. package/esm/theme/buildin-theme/light/component/crosshair.js.map +0 -1
  920. package/esm/theme/buildin-theme/light/component/data-zoom.js +0 -101
  921. package/esm/theme/buildin-theme/light/component/data-zoom.js.map +0 -1
  922. package/esm/theme/buildin-theme/light/component/index.js.map +0 -1
  923. package/esm/theme/buildin-theme/light/component/indicator.js.map +0 -1
  924. package/esm/theme/buildin-theme/light/component/legend/color-legend.js.map +0 -1
  925. package/esm/theme/buildin-theme/light/component/legend/continuous.js.map +0 -1
  926. package/esm/theme/buildin-theme/light/component/legend/discrete-legend.js.map +0 -1
  927. package/esm/theme/buildin-theme/light/component/legend/size-legend.js.map +0 -1
  928. package/esm/theme/buildin-theme/light/component/map-label.js.map +0 -1
  929. package/esm/theme/buildin-theme/light/component/mark-area.js.map +0 -1
  930. package/esm/theme/buildin-theme/light/component/mark-line.js.map +0 -1
  931. package/esm/theme/buildin-theme/light/component/mark-point.js.map +0 -1
  932. package/esm/theme/buildin-theme/light/component/player.js.map +0 -1
  933. package/esm/theme/buildin-theme/light/component/poptip.js.map +0 -1
  934. package/esm/theme/buildin-theme/light/component/title.js.map +0 -1
  935. package/esm/theme/buildin-theme/light/component/tooltip.js.map +0 -1
  936. package/esm/theme/buildin-theme/light/component/total-label.js.map +0 -1
  937. package/esm/theme/buildin-theme/light/constants.js.map +0 -1
  938. package/esm/theme/buildin-theme/light/index.js.map +0 -1
  939. package/esm/theme/buildin-theme/light/mark.js.map +0 -1
  940. package/esm/theme/buildin-theme/light/series/area.js.map +0 -1
  941. package/esm/theme/buildin-theme/light/series/bar.js.map +0 -1
  942. package/esm/theme/buildin-theme/light/series/bar3d.js.map +0 -1
  943. package/esm/theme/buildin-theme/light/series/box-plot.js.map +0 -1
  944. package/esm/theme/buildin-theme/light/series/circle-packing.js.map +0 -1
  945. package/esm/theme/buildin-theme/light/series/circular-progress.js.map +0 -1
  946. package/esm/theme/buildin-theme/light/series/dot.js.map +0 -1
  947. package/esm/theme/buildin-theme/light/series/funnel.js.map +0 -1
  948. package/esm/theme/buildin-theme/light/series/funnel3d.js.map +0 -1
  949. package/esm/theme/buildin-theme/light/series/gauge-pointer.js.map +0 -1
  950. package/esm/theme/buildin-theme/light/series/gauge.js.map +0 -1
  951. package/esm/theme/buildin-theme/light/series/heatmap.js.map +0 -1
  952. package/esm/theme/buildin-theme/light/series/index.js.map +0 -1
  953. package/esm/theme/buildin-theme/light/series/line.js.map +0 -1
  954. package/esm/theme/buildin-theme/light/series/linear-progress.js.map +0 -1
  955. package/esm/theme/buildin-theme/light/series/link.js.map +0 -1
  956. package/esm/theme/buildin-theme/light/series/map.js.map +0 -1
  957. package/esm/theme/buildin-theme/light/series/pie.js.map +0 -1
  958. package/esm/theme/buildin-theme/light/series/pie3d.js.map +0 -1
  959. package/esm/theme/buildin-theme/light/series/radar.js.map +0 -1
  960. package/esm/theme/buildin-theme/light/series/rangeColumn.js.map +0 -1
  961. package/esm/theme/buildin-theme/light/series/rose.js.map +0 -1
  962. package/esm/theme/buildin-theme/light/series/sankey.js.map +0 -1
  963. package/esm/theme/buildin-theme/light/series/scatter.js.map +0 -1
  964. package/esm/theme/buildin-theme/light/series/sunburst.js.map +0 -1
  965. package/esm/theme/buildin-theme/light/series/treemap.js.map +0 -1
  966. package/esm/theme/buildin-theme/light/series/waterfall.js.map +0 -1
  967. package/esm/theme/buildin-theme/light/series/word-cloud.js.map +0 -1
  968. package/esm/theme/buildin-theme/light/series/word-cloud3d.js.map +0 -1
  969. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/band-axis.js +0 -0
  970. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/cartesian-axis.d.ts +0 -0
  971. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/cartesian-axis.js +0 -0
  972. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/common-axis.d.ts +0 -0
  973. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/common-axis.js +0 -0
  974. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/linear-axis.d.ts +0 -0
  975. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/linear-axis.js +0 -0
  976. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/log-axis.d.ts +0 -0
  977. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/log-axis.js +0 -0
  978. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/polar-axis.d.ts +0 -0
  979. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/axis/polar-axis.js +0 -0
  980. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/brush.d.ts +0 -0
  981. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/brush.js +0 -0
  982. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/crosshair.d.ts +0 -0
  983. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/data-zoom.d.ts +0 -0
  984. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/index.d.ts +0 -0
  985. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/index.js +0 -0
  986. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/indicator.d.ts +0 -0
  987. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/indicator.js +0 -0
  988. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/color-legend.d.ts +0 -0
  989. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/color-legend.js +0 -0
  990. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/continuous.d.ts +0 -0
  991. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/discrete-legend.d.ts +0 -0
  992. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/size-legend.d.ts +0 -0
  993. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/legend/size-legend.js +0 -0
  994. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/map-label.d.ts +0 -0
  995. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/map-label.js +0 -0
  996. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-area.d.ts +0 -0
  997. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-line.d.ts +0 -0
  998. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-point.d.ts +0 -0
  999. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/mark-point.js +0 -0
  1000. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/player.d.ts +0 -0
  1001. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/poptip.d.ts +0 -0
  1002. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/title.d.ts +0 -0
  1003. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/tooltip.d.ts +0 -0
  1004. /package/cjs/theme/{buildin-theme/light → builtin/common}/component/total-label.d.ts +0 -0
  1005. /package/cjs/theme/{buildin-theme/light → builtin/common}/constants.d.ts +0 -0
  1006. /package/cjs/theme/{buildin-theme/light → builtin/common}/mark.d.ts +0 -0
  1007. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/area.d.ts +0 -0
  1008. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/area.js +0 -0
  1009. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/bar.d.ts +0 -0
  1010. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/bar.js +0 -0
  1011. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/bar3d.d.ts +0 -0
  1012. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/bar3d.js +0 -0
  1013. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/box-plot.d.ts +0 -0
  1014. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/box-plot.js +0 -0
  1015. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/circle-packing.d.ts +0 -0
  1016. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/circular-progress.d.ts +0 -0
  1017. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/circular-progress.js +0 -0
  1018. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/dot.d.ts +0 -0
  1019. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/dot.js +0 -0
  1020. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/funnel.d.ts +0 -0
  1021. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/funnel.js +0 -0
  1022. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/funnel3d.d.ts +0 -0
  1023. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/funnel3d.js +0 -0
  1024. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/gauge-pointer.d.ts +0 -0
  1025. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/gauge-pointer.js +0 -0
  1026. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/gauge.d.ts +0 -0
  1027. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/gauge.js +0 -0
  1028. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/heatmap.d.ts +0 -0
  1029. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/heatmap.js +0 -0
  1030. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/index.d.ts +0 -0
  1031. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/index.js +0 -0
  1032. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/line.d.ts +0 -0
  1033. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/line.js +0 -0
  1034. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/linear-progress.d.ts +0 -0
  1035. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/linear-progress.js +0 -0
  1036. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/link.d.ts +0 -0
  1037. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/link.js +0 -0
  1038. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/map.d.ts +0 -0
  1039. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/map.js +0 -0
  1040. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/pie.d.ts +0 -0
  1041. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/pie.js +0 -0
  1042. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/pie3d.d.ts +0 -0
  1043. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/pie3d.js +0 -0
  1044. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/radar.d.ts +0 -0
  1045. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/radar.js +0 -0
  1046. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/rangeColumn.d.ts +0 -0
  1047. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/rose.d.ts +0 -0
  1048. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/rose.js +0 -0
  1049. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/sankey.d.ts +0 -0
  1050. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/sankey.js +0 -0
  1051. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/scatter.d.ts +0 -0
  1052. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/scatter.js +0 -0
  1053. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/sunburst.d.ts +0 -0
  1054. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/treemap.d.ts +0 -0
  1055. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/treemap.js +0 -0
  1056. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/waterfall.d.ts +0 -0
  1057. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/waterfall.js +0 -0
  1058. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/word-cloud.d.ts +0 -0
  1059. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/word-cloud.js +0 -0
  1060. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/word-cloud3d.d.ts +0 -0
  1061. /package/cjs/theme/{buildin-theme/light → builtin/common}/series/word-cloud3d.js +0 -0
  1062. /package/cjs/theme/{buildin-theme/config.d.ts → builtin/constant.d.ts} +0 -0
  1063. /package/cjs/theme/{buildin-theme/light → builtin/dark}/color-scheme.d.ts +0 -0
  1064. /package/{esm/theme/buildin-theme → cjs/theme/builtin}/light/color-scheme.d.ts +0 -0
  1065. /package/cjs/theme/{buildin-theme → builtin}/light/index.d.ts +0 -0
  1066. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/band-axis.js +0 -0
  1067. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/cartesian-axis.d.ts +0 -0
  1068. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/cartesian-axis.js +0 -0
  1069. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/common-axis.d.ts +0 -0
  1070. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/common-axis.js +0 -0
  1071. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/linear-axis.d.ts +0 -0
  1072. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/linear-axis.js +0 -0
  1073. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/log-axis.d.ts +0 -0
  1074. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/log-axis.js +0 -0
  1075. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/polar-axis.d.ts +0 -0
  1076. /package/esm/theme/{buildin-theme/light → builtin/common}/component/axis/polar-axis.js +0 -0
  1077. /package/esm/theme/{buildin-theme/light → builtin/common}/component/brush.d.ts +0 -0
  1078. /package/esm/theme/{buildin-theme/light → builtin/common}/component/brush.js +0 -0
  1079. /package/esm/theme/{buildin-theme/light → builtin/common}/component/crosshair.d.ts +0 -0
  1080. /package/esm/theme/{buildin-theme/light → builtin/common}/component/data-zoom.d.ts +0 -0
  1081. /package/esm/theme/{buildin-theme/light → builtin/common}/component/index.d.ts +0 -0
  1082. /package/esm/theme/{buildin-theme/light → builtin/common}/component/index.js +0 -0
  1083. /package/esm/theme/{buildin-theme/light → builtin/common}/component/indicator.d.ts +0 -0
  1084. /package/esm/theme/{buildin-theme/light → builtin/common}/component/indicator.js +0 -0
  1085. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/color-legend.d.ts +0 -0
  1086. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/color-legend.js +0 -0
  1087. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/continuous.d.ts +0 -0
  1088. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/discrete-legend.d.ts +0 -0
  1089. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/size-legend.d.ts +0 -0
  1090. /package/esm/theme/{buildin-theme/light → builtin/common}/component/legend/size-legend.js +0 -0
  1091. /package/esm/theme/{buildin-theme/light → builtin/common}/component/map-label.d.ts +0 -0
  1092. /package/esm/theme/{buildin-theme/light → builtin/common}/component/map-label.js +0 -0
  1093. /package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-area.d.ts +0 -0
  1094. /package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-line.d.ts +0 -0
  1095. /package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-point.d.ts +0 -0
  1096. /package/esm/theme/{buildin-theme/light → builtin/common}/component/mark-point.js +0 -0
  1097. /package/esm/theme/{buildin-theme/light → builtin/common}/component/player.d.ts +0 -0
  1098. /package/esm/theme/{buildin-theme/light → builtin/common}/component/poptip.d.ts +0 -0
  1099. /package/esm/theme/{buildin-theme/light → builtin/common}/component/title.d.ts +0 -0
  1100. /package/esm/theme/{buildin-theme/light → builtin/common}/component/tooltip.d.ts +0 -0
  1101. /package/esm/theme/{buildin-theme/light → builtin/common}/component/total-label.d.ts +0 -0
  1102. /package/esm/theme/{buildin-theme/light → builtin/common}/constants.d.ts +0 -0
  1103. /package/esm/theme/{buildin-theme/light → builtin/common}/mark.d.ts +0 -0
  1104. /package/esm/theme/{buildin-theme/light → builtin/common}/series/area.d.ts +0 -0
  1105. /package/esm/theme/{buildin-theme/light → builtin/common}/series/area.js +0 -0
  1106. /package/esm/theme/{buildin-theme/light → builtin/common}/series/bar.d.ts +0 -0
  1107. /package/esm/theme/{buildin-theme/light → builtin/common}/series/bar.js +0 -0
  1108. /package/esm/theme/{buildin-theme/light → builtin/common}/series/bar3d.d.ts +0 -0
  1109. /package/esm/theme/{buildin-theme/light → builtin/common}/series/bar3d.js +0 -0
  1110. /package/esm/theme/{buildin-theme/light → builtin/common}/series/box-plot.d.ts +0 -0
  1111. /package/esm/theme/{buildin-theme/light → builtin/common}/series/box-plot.js +0 -0
  1112. /package/esm/theme/{buildin-theme/light → builtin/common}/series/circle-packing.d.ts +0 -0
  1113. /package/esm/theme/{buildin-theme/light → builtin/common}/series/circular-progress.d.ts +0 -0
  1114. /package/esm/theme/{buildin-theme/light → builtin/common}/series/circular-progress.js +0 -0
  1115. /package/esm/theme/{buildin-theme/light → builtin/common}/series/dot.d.ts +0 -0
  1116. /package/esm/theme/{buildin-theme/light → builtin/common}/series/dot.js +0 -0
  1117. /package/esm/theme/{buildin-theme/light → builtin/common}/series/funnel.d.ts +0 -0
  1118. /package/esm/theme/{buildin-theme/light → builtin/common}/series/funnel.js +0 -0
  1119. /package/esm/theme/{buildin-theme/light → builtin/common}/series/funnel3d.d.ts +0 -0
  1120. /package/esm/theme/{buildin-theme/light → builtin/common}/series/funnel3d.js +0 -0
  1121. /package/esm/theme/{buildin-theme/light → builtin/common}/series/gauge-pointer.d.ts +0 -0
  1122. /package/esm/theme/{buildin-theme/light → builtin/common}/series/gauge-pointer.js +0 -0
  1123. /package/esm/theme/{buildin-theme/light → builtin/common}/series/gauge.d.ts +0 -0
  1124. /package/esm/theme/{buildin-theme/light → builtin/common}/series/gauge.js +0 -0
  1125. /package/esm/theme/{buildin-theme/light → builtin/common}/series/heatmap.d.ts +0 -0
  1126. /package/esm/theme/{buildin-theme/light → builtin/common}/series/heatmap.js +0 -0
  1127. /package/esm/theme/{buildin-theme/light → builtin/common}/series/index.d.ts +0 -0
  1128. /package/esm/theme/{buildin-theme/light → builtin/common}/series/index.js +0 -0
  1129. /package/esm/theme/{buildin-theme/light → builtin/common}/series/line.d.ts +0 -0
  1130. /package/esm/theme/{buildin-theme/light → builtin/common}/series/line.js +0 -0
  1131. /package/esm/theme/{buildin-theme/light → builtin/common}/series/linear-progress.d.ts +0 -0
  1132. /package/esm/theme/{buildin-theme/light → builtin/common}/series/linear-progress.js +0 -0
  1133. /package/esm/theme/{buildin-theme/light → builtin/common}/series/link.d.ts +0 -0
  1134. /package/esm/theme/{buildin-theme/light → builtin/common}/series/link.js +0 -0
  1135. /package/esm/theme/{buildin-theme/light → builtin/common}/series/map.d.ts +0 -0
  1136. /package/esm/theme/{buildin-theme/light → builtin/common}/series/map.js +0 -0
  1137. /package/esm/theme/{buildin-theme/light → builtin/common}/series/pie.d.ts +0 -0
  1138. /package/esm/theme/{buildin-theme/light → builtin/common}/series/pie.js +0 -0
  1139. /package/esm/theme/{buildin-theme/light → builtin/common}/series/pie3d.d.ts +0 -0
  1140. /package/esm/theme/{buildin-theme/light → builtin/common}/series/pie3d.js +0 -0
  1141. /package/esm/theme/{buildin-theme/light → builtin/common}/series/radar.d.ts +0 -0
  1142. /package/esm/theme/{buildin-theme/light → builtin/common}/series/radar.js +0 -0
  1143. /package/esm/theme/{buildin-theme/light → builtin/common}/series/rangeColumn.d.ts +0 -0
  1144. /package/esm/theme/{buildin-theme/light → builtin/common}/series/rose.d.ts +0 -0
  1145. /package/esm/theme/{buildin-theme/light → builtin/common}/series/rose.js +0 -0
  1146. /package/esm/theme/{buildin-theme/light → builtin/common}/series/sankey.d.ts +0 -0
  1147. /package/esm/theme/{buildin-theme/light → builtin/common}/series/sankey.js +0 -0
  1148. /package/esm/theme/{buildin-theme/light → builtin/common}/series/scatter.d.ts +0 -0
  1149. /package/esm/theme/{buildin-theme/light → builtin/common}/series/scatter.js +0 -0
  1150. /package/esm/theme/{buildin-theme/light → builtin/common}/series/sunburst.d.ts +0 -0
  1151. /package/esm/theme/{buildin-theme/light → builtin/common}/series/treemap.d.ts +0 -0
  1152. /package/esm/theme/{buildin-theme/light → builtin/common}/series/treemap.js +0 -0
  1153. /package/esm/theme/{buildin-theme/light → builtin/common}/series/waterfall.d.ts +0 -0
  1154. /package/esm/theme/{buildin-theme/light → builtin/common}/series/waterfall.js +0 -0
  1155. /package/esm/theme/{buildin-theme/light → builtin/common}/series/word-cloud.d.ts +0 -0
  1156. /package/esm/theme/{buildin-theme/light → builtin/common}/series/word-cloud.js +0 -0
  1157. /package/esm/theme/{buildin-theme/light → builtin/common}/series/word-cloud3d.d.ts +0 -0
  1158. /package/esm/theme/{buildin-theme/light → builtin/common}/series/word-cloud3d.js +0 -0
  1159. /package/esm/theme/{buildin-theme/config.d.ts → builtin/constant.d.ts} +0 -0
  1160. /package/esm/theme/{buildin-theme → builtin}/light/index.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/legend/continuous/legend.ts"],"names":[],"mappings":"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","file":"legend.js","sourcesContent":["/**\n * @description color legend component\n */\nimport { debounce, isEmpty, isNil } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, isDataDomainSpec, getFieldAlias } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ILegend } from '../interface';\nimport type { IColorLegendSpec, IColorLegendTheme, ISizeLegendSpec } from './interface';\nimport { continuousLegendDataMake, continuousLegendFilter } from '../../../data/transforms/legend-data/continuous';\nimport { ContinuousLegendMap, getContinuousLegendAttributes, isContinuousLegend } from './util';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nconst SINGLE_SEQUENCE = ['#C4E7FF', '#98CAFF', '#75ACFF', '#518FF9', '#2775DC', '#005CBE', '#00429F', '#00287E'];\nconst SIZE = [2, 10];\n\nexport class ContinuousLegend extends BaseLegend {\n static type = ComponentTypeEnum.continuousLegend;\n type = ComponentTypeEnum.colorLegend;\n name: string = ComponentTypeEnum.colorLegend;\n\n protected declare _spec: IColorLegendSpec | ISizeLegendSpec;\n protected declare _theme: IColorLegendTheme; // TODO: 看下是否需要区分\n\n private _field: string | undefined;\n private _legendType: string;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (isContinuousLegend(legendSpec.type)) {\n return new ContinuousLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IColorLegendSpec | ISizeLegendSpec, i: number) => {\n if (isContinuousLegend(s.type)) {\n legends.push(new ContinuousLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n constructor(spec: any, options: IComponentOption) {\n super(spec, options);\n\n // 这里需要区分下是 colorLegend 还是 sizeLegend\n const legendName = this._spec.type === 'color' ? ComponentTypeEnum.colorLegend : ComponentTypeEnum.sizeLegend;\n this.type = legendName;\n this.name = legendName;\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this._field = this._spec.field;\n this._legendType = this._spec.type;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'continuousLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._field,\n data: () => this._legendData.getLatestData()\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n private _getScaleInGlobal() {\n const globalScale = this._option.globalScale;\n let scaleKey = this._spec.scale;\n if (!scaleKey) {\n scaleKey = this._legendType;\n }\n return globalScale.getScale(scaleKey);\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'continuousLegendFilter', continuousLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'continuousLegendDataMake', continuousLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'continuousLegendDataMake',\n options: {\n series: () => {\n return this._regions.reduce((pre, r) => {\n pre.push(...r.getSeries());\n return pre;\n }, [] as ISeries[]);\n },\n field: () => this._field,\n scale: this._getScaleInGlobal.bind(this)\n }\n });\n return legendData;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData();\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n const field = this._field;\n if (field) {\n // 默认使用第0个系列的对应别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), field);\n return;\n }\n let scaleKey = this._spec.scale;\n if (!scaleKey) {\n scaleKey = this._legendType;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(scaleKey);\n if (!isDataDomainSpec(scaleSpec?.domain)) {\n return;\n }\n const dataInfo = scaleSpec.domain[0];\n if (dataInfo.fields.length === 0) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(this._option.dataSet.getDataView(dataInfo.dataId), dataInfo.fields[0]);\n return;\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const align = layout === 'horizontal' ? 'bottom' : this.layoutOrient;\n\n // 获取关联的 scale 以获取 colors / size\n let visualMappingRange = [];\n const scale = this._getScaleInGlobal();\n if (scale && scale.type === 'linear') {\n visualMappingRange = scale.range();\n }\n if (isEmpty(visualMappingRange)) {\n visualMappingRange = this._legendType === 'color' ? SINGLE_SEQUENCE : SIZE;\n }\n let min = this._legendData.getLatestData()[0] ?? 0;\n let max = this._legendData.getLatestData()[1] ?? 1;\n\n const isSame = this._legendData.getLatestData()[0] === this._legendData.getLatestData()[1];\n if (isSame) {\n min = Math.min(0, this._legendData.getLatestData()[0]);\n max = this._legendData.getLatestData()[0] === 0 ? 1 : Math.max(0, this._legendData.getLatestData()[0]);\n }\n\n const attrs: any = {\n ...getContinuousLegendAttributes(this._spec),\n layout,\n align,\n zIndex: this.layoutZIndex,\n min,\n max,\n value: this._spec.defaultSelected,\n [this._legendType === 'color' ? 'colors' : 'sizeRange']: visualMappingRange\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return ContinuousLegendMap[this._legendType];\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(\n 'change',\n debounce((e: any) => {\n const selectedData = get(e, 'detail.value');\n if (doFilter) {\n this.setSelectedData(selectedData);\n }\n this.event.emit(ChartEvent.legendFilter, { model: this, value: selectedData, event: e });\n }, 30)\n );\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/legend/continuous/legend.ts"],"names":[],"mappings":"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","file":"legend.js","sourcesContent":["/**\n * @description color legend component\n */\nimport { debounce, isEmpty, isNil } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, isDataDomainSpec, getFieldAlias } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ILegend } from '../interface';\nimport type { IColorLegendSpec, IColorLegendTheme, ISizeLegendSpec } from './interface';\nimport { continuousLegendDataMake, continuousLegendFilter } from '../../../data/transforms/legend-data/continuous';\nimport { ContinuousLegendMap, getContinuousLegendAttributes, isContinuousLegend } from './util';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nconst SINGLE_SEQUENCE = ['#C4E7FF', '#98CAFF', '#75ACFF', '#518FF9', '#2775DC', '#005CBE', '#00429F', '#00287E'];\nconst SIZE = [2, 10];\n\nexport class ContinuousLegend<\n T extends IColorLegendSpec | ISizeLegendSpec = IColorLegendSpec | ISizeLegendSpec\n> extends BaseLegend<T> {\n static type = ComponentTypeEnum.continuousLegend;\n type = ComponentTypeEnum.colorLegend;\n name: string = ComponentTypeEnum.colorLegend;\n\n protected declare _theme: IColorLegendTheme; // TODO: 看下是否需要区分\n\n private _field: string | undefined;\n private _legendType: string;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (isContinuousLegend(legendSpec.type)) {\n return new ContinuousLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IColorLegendSpec | ISizeLegendSpec, i: number) => {\n if (isContinuousLegend(s.type)) {\n legends.push(new ContinuousLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, options);\n\n // 这里需要区分下是 colorLegend 还是 sizeLegend\n const legendName = this._spec.type === 'color' ? ComponentTypeEnum.colorLegend : ComponentTypeEnum.sizeLegend;\n this.type = legendName;\n this.name = legendName;\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this._field = this._spec.field;\n this._legendType = this._spec.type;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'continuousLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._field,\n data: () => this._legendData.getLatestData()\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n private _getScaleInGlobal() {\n const globalScale = this._option.globalScale;\n let scaleKey = this._spec.scale;\n if (!scaleKey) {\n scaleKey = this._legendType;\n }\n return globalScale.getScale(scaleKey);\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'continuousLegendFilter', continuousLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'continuousLegendDataMake', continuousLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'continuousLegendDataMake',\n options: {\n series: () => {\n return this._regions.reduce((pre, r) => {\n pre.push(...r.getSeries());\n return pre;\n }, [] as ISeries[]);\n },\n field: () => this._field,\n scale: this._getScaleInGlobal.bind(this)\n }\n });\n return legendData;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData();\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n const field = this._field;\n if (field) {\n // 默认使用第0个系列的对应别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), field);\n return;\n }\n let scaleKey = this._spec.scale;\n if (!scaleKey) {\n scaleKey = this._legendType;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(scaleKey);\n if (!isDataDomainSpec(scaleSpec?.domain)) {\n return;\n }\n const dataInfo = scaleSpec.domain[0];\n if (dataInfo.fields.length === 0) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(this._option.dataSet.getDataView(dataInfo.dataId), dataInfo.fields[0]);\n return;\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const align = layout === 'horizontal' ? 'bottom' : this.layoutOrient;\n\n // 获取关联的 scale 以获取 colors / size\n let visualMappingRange = [];\n const scale = this._getScaleInGlobal();\n if (scale && scale.type === 'linear') {\n visualMappingRange = scale.range();\n }\n if (isEmpty(visualMappingRange)) {\n visualMappingRange = this._legendType === 'color' ? SINGLE_SEQUENCE : SIZE;\n }\n let min = this._legendData.getLatestData()[0] ?? 0;\n let max = this._legendData.getLatestData()[1] ?? 1;\n\n const isSame = this._legendData.getLatestData()[0] === this._legendData.getLatestData()[1];\n if (isSame) {\n min = Math.min(0, this._legendData.getLatestData()[0]);\n max = this._legendData.getLatestData()[0] === 0 ? 1 : Math.max(0, this._legendData.getLatestData()[0]);\n }\n\n const attrs: any = {\n ...getContinuousLegendAttributes(this._spec),\n layout,\n align,\n zIndex: this.layoutZIndex,\n min,\n max,\n value: this._spec.defaultSelected,\n [this._legendType === 'color' ? 'colors' : 'sizeRange']: visualMappingRange\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return ContinuousLegendMap[this._legendType];\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(\n 'change',\n debounce((e: any) => {\n const selectedData = get(e, 'detail.value');\n if (doFilter) {\n this.setSelectedData(selectedData);\n }\n this.event.emit(ChartEvent.legendFilter, { model: this, value: selectedData, event: e });\n }, 30)\n );\n }\n }\n}\n"]}
@@ -7,11 +7,10 @@ import { ComponentTypeEnum } from '../../interface';
7
7
  import { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';
8
8
  import type { ILegend } from '../interface';
9
9
  import { BaseLegend } from '../base-legend';
10
- export declare class DiscreteLegend extends BaseLegend {
10
+ export declare class DiscreteLegend extends BaseLegend<IDiscreteLegendSpec> {
11
11
  static type: ComponentTypeEnum;
12
12
  type: ComponentTypeEnum;
13
13
  name: string;
14
- protected _spec: IDiscreteLegendSpec;
15
14
  protected _theme: IDiscreteLegendTheme;
16
15
  static createComponent(spec: any, options: IComponentOption): DiscreteLegend | ILegend[];
17
16
  init(option: IModelInitOption): void;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/legend/discrete/legend.ts"],"names":[],"mappings":";;;AAAA,6CAAoE;AACpE,iDAA8C;AAO9C,+CAAoD;AAEpD,iCAA6C;AAC7C,qDAA0E;AAC1E,wCAA0F;AAE1F,qEAA2D;AAE3D,qEAAiF;AAEjF,4EAA6G;AAC7G,gDAA4C;AAC5C,gDAA+C;AAE/C,MAAa,cAAe,SAAQ,wBAAU;IAA9C;;QAEE,SAAI,GAAG,6BAAiB,CAAC,cAAc,CAAC;QACxC,SAAI,GAAW,6BAAiB,CAAC,cAAc,CAAC;IA4LlD,CAAC;IAvLC,MAAM,CAAC,eAAe,CAAC,IAAS,EAAE,OAAyB;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC;QACvD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAA,cAAO,EAAC,UAAU,CAAC,EAAE;YACxB,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE;gBACtD,OAAO,IAAI,cAAc,CAAC,UAAU,kCAC/B,OAAO,KACV,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,SAAS,IAClB,CAAC;aACJ;YACD,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,UAAU,CAAC,OAAO,CAAC,CAAC,CAAsB,EAAE,CAAS,EAAE,EAAE;YACvD,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACpC,OAAO,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,kCAAO,OAAO,KAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,IAAG,CAAC,CAAC;aACvF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,MAAwB;QAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;YACF,CAAC,CAAC,iBAAiB,CAAC;gBAClB,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACP,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa;oBAClC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;oBAC1C,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;iBACxE;aACF,CAAC,CAAC;QACL,CAAC,EACD;YACE,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;SAC7B,CACF,CAAC;IACJ,CAAC;IAES,eAAe;QACvB,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,sBAAsB,EAAE,+BAAoB,CAAC,CAAC;QACrG,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,wBAAwB,EAAE,iCAAsB,CAAC,CAAC;QACzG,MAAM,UAAU,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,UAAU,CAAC,SAAS,CAAC;YACnB,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE;gBACP,MAAM,EAAE,GAAG,EAAE;oBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;wBACrC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;wBAC3B,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAe,CAAC,CAAC;gBACtB,CAAC;gBACD,WAAW,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;aAC3D;SACF,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAES,qBAAqB,CAAC,CAAU;;QACxC,MAAM,YAAY,GAAG,CAAC,CAAC,cAAc,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;YACzB,OAAO,YAAY,CAAC;SACrB;QACD,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE;YACnB,OAAO,YAAY,CAAC;SACrB;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,YAAY,CAAC;SACrB;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;SACzB;QACD,IAAI,CAAC,IAAA,uBAAgB,EAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACvC,OAAO,YAAY,CAAC;SACrB;QACD,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;QAChF,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,YAAY,CAAC;SACrB;QACD,OAAO,MAAA,MAAA,UAAU,CAAC,MAAM,0CAAG,CAAC,CAAC,mCAAI,YAAY,CAAC;IAChD,CAAC;IAES,iBAAiB;QACzB,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9B,IAAI,CAAC,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;SACtD;aAAM;YACL,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAC9E;IACH,CAAC;IAEO,oBAAoB,CAAC,KAAU;;QACrC,IAAI,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,OAAO,KAAI,IAAA,cAAK,EAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAA,cAAK,EAAC,MAAA,KAAK,CAAC,KAAK,CAAC,KAAK,0CAAE,IAAI,CAAC,EAAE;YAErF,MAAM,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAG,CAAC,CAAC,0CAAE,SAAS,GAAG,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO;aACR;YAED,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,IAAA,oBAAa,EAAC,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;SAChF;IACH,CAAC;IAES,oBAAoB,CAAC,IAAiB;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;QACzG,MAAM,KAAK,mBACT,MAAM,EACN,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,EAC7B,MAAM,EAAE,IAAI,CAAC,YAAY,EACzB,QAAQ,EAAE,IAAI,CAAC,KAAK,EACpB,SAAS,EAAE,IAAI,CAAC,MAAM,IACnB,IAAA,0BAAmB,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB;QAC7B,OAAO,mCAAe,CAAC;IACzB,CAAC;IAES,UAAU;QAClB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC;YAC7C,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,eAAe,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC7E,MAAM,YAAY,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;gBACtD,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;gBAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,eAAe,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC7E,MAAM,MAAM,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gCAAW,CAAC,iBAAiB,EAAE,CAAC,CAAM,EAAE,EAAE;gBAC/E,MAAM,MAAM,GAAG,IAAA,UAAG,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAChC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1F,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEO,eAAe;QACrB,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;;YAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE/C,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,GAAG;gBAChB,KAAK,EAAE;oBACL,IAAI;oBACJ,UAAU,EAAE,MAAA,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,KAAK,CAAC,SAAS,mCAAI,QAAQ;oBACrD,MAAM,EAAE,SAAS,KAAK,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;oBAC1D,WAAW,EAAE,IAAA,sBAAa,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBACzD,aAAa,EAAE,IAAA,sBAAa,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC/D,OAAO,EAAE,IAAA,sBAAa,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC7C,OAAO,EAAE,OAAO;oBAChB,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;oBAClC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;oBAC/B,YAAY;oBACZ,WAAW;oBACX,WAAW;iBACZ;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,IAAA,mBAAU,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAChF,CAAC;;AA9LH,wCA+LC;AA9LQ,mBAAI,GAAG,6BAAiB,CAAC,cAAc,CAAC","file":"legend.js","sourcesContent":["import { isFunction, isNil, isValidNumber } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\nimport type { IDiscreteLegendSpec, IDiscreteLegendTheme } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { getLegendAttributes } from './util';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, getFieldAlias, isDataDomainSpec } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport { LegendEvent } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';\nimport type { ILegend } from '../interface';\nimport { discreteLegendDataMake, discreteLegendFilter } from '../../../data/transforms/legend-data/discrete';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nexport class DiscreteLegend extends BaseLegend {\n static type = ComponentTypeEnum.discreteLegend;\n type = ComponentTypeEnum.discreteLegend;\n name: string = ComponentTypeEnum.discreteLegend;\n\n protected declare _spec: IDiscreteLegendSpec;\n protected declare _theme: IDiscreteLegendTheme;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (!legendSpec.type || legendSpec.type === 'discrete') {\n return new DiscreteLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IDiscreteLegendSpec, i: number) => {\n if (!s.type || s.type === 'discrete') {\n legends.push(new DiscreteLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'discreteLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._getSeriesLegendField(s),\n data: () => this._legendData.getLatestData().map((obj: any) => obj.key)\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendFilter', discreteLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendDataMake', discreteLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'discreteLegendDataMake',\n options: {\n series: () => {\n return this._regions.reduce((pre, r) => {\n pre.push(...r.getSeries());\n return pre;\n }, [] as ISeries[]);\n },\n seriesField: (s: ISeries) => this._getSeriesLegendField(s)\n }\n });\n\n return legendData;\n }\n\n protected _getSeriesLegendField(s: ISeries) {\n const defaultField = s.getSeriesField();\n if (!this._spec.scaleName) {\n return defaultField;\n }\n if (!s.getRawData()) {\n return defaultField;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(this._spec.scaleName);\n if (!scaleSpec) {\n return defaultField;\n }\n if (this._spec.field) {\n return this._spec.field;\n }\n if (!isDataDomainSpec(scaleSpec.domain)) {\n return defaultField;\n }\n const seriesData = scaleSpec.domain.find(d => d.dataId === s.getRawData().name);\n if (!seriesData) {\n return defaultField;\n }\n return seriesData.fields?.[0] ?? defaultField;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData().map((d: any) => d.key);\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n // 默认使用第0个系列的 seriesField 别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), series.getSeriesField());\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const attrs = {\n layout,\n items: this._getLegendItems(),\n zIndex: this.layoutZIndex,\n maxWidth: rect.width,\n maxHeight: rect.height,\n ...getLegendAttributes(this._spec, rect)\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return LegendComponent;\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(LegendEvent.legendItemClick, (e: any) => {\n const selectedData = get(e, 'detail.currentSelected');\n doFilter && this.setSelectedData(selectedData);\n this.event.emit(ChartEvent.legendItemClick, { model: this, value: selectedData, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemHover, { model: this, value: detail, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemUnHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemUnHover, { model: this, value: detail, event: e });\n });\n }\n }\n\n private _getLegendItems() {\n const originData = (this._legendData.getLatestData() || []).map((datum: any) => {\n const fill = datum.style('fill');\n const stroke = datum.style('stroke');\n const lineWidth = datum.style('lineWidth');\n const symbolType = datum.style('symbolType');\n const fillOpacity = datum.style('fillOpacity');\n const strokeOpacity = datum.style('strokeOpacity');\n const opacity = datum.style('opacity');\n const texture = datum.style('texture');\n const textureColor = datum.style('textureColor');\n const outerBorder = datum.style('outerBorder');\n const innerBorder = datum.style('innerBorder');\n\n return {\n label: datum.key,\n shape: {\n fill,\n symbolType: symbolType ?? datum.shapeType ?? 'circle',\n stroke: lineWidth === 0 || fill === stroke ? null : stroke,\n fillOpacity: isValidNumber(fillOpacity) ? fillOpacity : 1,\n strokeOpacity: isValidNumber(strokeOpacity) ? strokeOpacity : 1,\n opacity: isValidNumber(opacity) ? opacity : 1,\n texture: texture,\n texturePadding: texture ? 1 : null,\n textureSize: texture ? 4 : null,\n textureColor,\n innerBorder,\n outerBorder\n }\n };\n });\n return isFunction(this._spec.data) ? this._spec.data(originData) : originData;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/legend/discrete/legend.ts"],"names":[],"mappings":"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","file":"legend.js","sourcesContent":["import { isFunction, isNil, isValidNumber } from '@visactor/vutils';\nimport { DataView } from '@visactor/vdataset';\nimport type { IDiscreteLegendSpec, IDiscreteLegendTheme } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeries } from '../../../series/interface';\nimport type { IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { getLegendAttributes } from './util';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { isArray, eachSeries, get, getFieldAlias, isDataDomainSpec } from '../../../util';\n// eslint-disable-next-line no-duplicate-imports\nimport { LegendEvent } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';\nimport type { ILegend } from '../interface';\nimport { discreteLegendDataMake, discreteLegendFilter } from '../../../data/transforms/legend-data/discrete';\nimport { BaseLegend } from '../base-legend';\nimport { ChartEvent } from '../../../constant';\n\nexport class DiscreteLegend extends BaseLegend<IDiscreteLegendSpec> {\n static type = ComponentTypeEnum.discreteLegend;\n type = ComponentTypeEnum.discreteLegend;\n name: string = ComponentTypeEnum.discreteLegend;\n\n protected declare _theme: IDiscreteLegendTheme;\n\n static createComponent(spec: any, options: IComponentOption) {\n const legendSpec = spec.legends || options.defaultSpec;\n if (!legendSpec) {\n return undefined;\n }\n if (!isArray(legendSpec)) {\n if (!legendSpec.type || legendSpec.type === 'discrete') {\n return new DiscreteLegend(legendSpec, {\n ...options,\n specIndex: 0,\n specKey: 'legends'\n });\n }\n return undefined;\n }\n const legends: ILegend[] = [];\n legendSpec.forEach((s: IDiscreteLegendSpec, i: number) => {\n if (!s.type || s.type === 'discrete') {\n legends.push(new DiscreteLegend(s, { ...options, specIndex: i, specKey: 'legends' }));\n }\n });\n return legends;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n eachSeries(\n this._regions,\n s => {\n s.addViewDataFilter({\n type: 'discreteLegendFilter',\n options: {\n selected: () => this._selectedData,\n field: () => this._getSeriesLegendField(s),\n data: () => this._legendData.getLatestData().map((obj: any) => obj.key)\n }\n });\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n protected _initLegendData(): DataView {\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendFilter', discreteLegendFilter);\n registerDataSetInstanceTransform(this._option.dataSet, 'discreteLegendDataMake', discreteLegendDataMake);\n const legendData = new DataView(this._option.dataSet);\n legendData.transform({\n type: 'discreteLegendDataMake',\n options: {\n series: () => {\n return this._regions.reduce((pre, r) => {\n pre.push(...r.getSeries());\n return pre;\n }, [] as ISeries[]);\n },\n seriesField: (s: ISeries) => this._getSeriesLegendField(s)\n }\n });\n\n return legendData;\n }\n\n protected _getSeriesLegendField(s: ISeries) {\n const defaultField = s.getSeriesField();\n if (!this._spec.scaleName) {\n return defaultField;\n }\n if (!s.getRawData()) {\n return defaultField;\n }\n const scaleSpec = this._option.globalScale.getScaleSpec(this._spec.scaleName);\n if (!scaleSpec) {\n return defaultField;\n }\n if (this._spec.field) {\n return this._spec.field;\n }\n if (!isDataDomainSpec(scaleSpec.domain)) {\n return defaultField;\n }\n const seriesData = scaleSpec.domain.find(d => d.dataId === s.getRawData().name);\n if (!seriesData) {\n return defaultField;\n }\n return seriesData.fields?.[0] ?? defaultField;\n }\n\n protected _initSelectedData(): void {\n if (this._spec.defaultSelected) {\n this._selectedData = [...this._spec.defaultSelected];\n } else {\n this._selectedData = this._legendData.getLatestData().map((d: any) => d.key);\n }\n }\n\n private _addDefaultTitleText(attrs: any) {\n if (attrs.title?.visible && isNil(attrs.title.text) && isNil(attrs.title.style?.text)) {\n // 默认使用第0个系列的 seriesField 别名\n const series = this._regions?.[0]?.getSeries()[0];\n if (!series) {\n return;\n }\n // 如果没有别名继续保持 空字符串\n attrs.title.text = getFieldAlias(series.getRawData(), series.getSeriesField());\n }\n }\n\n protected _getLegendAttributes(rect: ILayoutRect) {\n const layout = this.layoutOrient === 'bottom' || this.layoutOrient === 'top' ? 'horizontal' : 'vertical';\n const attrs = {\n layout,\n items: this._getLegendItems(),\n zIndex: this.layoutZIndex,\n maxWidth: rect.width,\n maxHeight: rect.height,\n ...getLegendAttributes(this._spec, rect)\n };\n this._addDefaultTitleText(attrs);\n return attrs;\n }\n\n protected _getLegendConstructor() {\n return LegendComponent;\n }\n\n protected _initEvent() {\n if (this._legendComponent) {\n const doFilter = this._spec.filter !== false;\n this._legendComponent.addEventListener(LegendEvent.legendItemClick, (e: any) => {\n const selectedData = get(e, 'detail.currentSelected');\n doFilter && this.setSelectedData(selectedData);\n this.event.emit(ChartEvent.legendItemClick, { model: this, value: selectedData, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemHover, { model: this, value: detail, event: e });\n });\n\n this._legendComponent.addEventListener(LegendEvent.legendItemUnHover, (e: any) => {\n const detail = get(e, 'detail');\n this.event.emit(ChartEvent.legendItemUnHover, { model: this, value: detail, event: e });\n });\n }\n }\n\n private _getLegendItems() {\n const originData = (this._legendData.getLatestData() || []).map((datum: any) => {\n const fill = datum.style('fill');\n const stroke = datum.style('stroke');\n const lineWidth = datum.style('lineWidth');\n const symbolType = datum.style('symbolType');\n const fillOpacity = datum.style('fillOpacity');\n const strokeOpacity = datum.style('strokeOpacity');\n const opacity = datum.style('opacity');\n const texture = datum.style('texture');\n const textureColor = datum.style('textureColor');\n const outerBorder = datum.style('outerBorder');\n const innerBorder = datum.style('innerBorder');\n\n return {\n label: datum.key,\n shape: {\n fill,\n symbolType: symbolType ?? datum.shapeType ?? 'circle',\n stroke: lineWidth === 0 || fill === stroke ? null : stroke,\n fillOpacity: isValidNumber(fillOpacity) ? fillOpacity : 1,\n strokeOpacity: isValidNumber(strokeOpacity) ? strokeOpacity : 1,\n opacity: isValidNumber(opacity) ? opacity : 1,\n texture: texture,\n texturePadding: texture ? 1 : null,\n textureSize: texture ? 4 : null,\n textureColor,\n innerBorder,\n outerBorder\n }\n };\n });\n return isFunction(this._spec.data) ? this._spec.data(originData) : originData;\n }\n}\n"]}
@@ -10,7 +10,7 @@ import type { IPairInfo } from './layout';
10
10
  import type { LayoutItem } from '../../model/layout-item';
11
11
  import { MarkPoint } from '@visactor/vrender-components';
12
12
  import type { PanEventParam, ZoomEventParam } from '../../event/interface';
13
- export declare class MapLabelComponent extends BaseComponent {
13
+ export declare class MapLabelComponent extends BaseComponent<IMapLabelSpec> {
14
14
  static type: ComponentTypeEnum;
15
15
  type: ComponentTypeEnum;
16
16
  name: string;
@@ -25,7 +25,6 @@ export declare class MapLabelComponent extends BaseComponent {
25
25
  protected _latitudeField: string;
26
26
  protected _markerComponents: MarkPoint[];
27
27
  private _activeDatum;
28
- _spec: IMapLabelSpec;
29
28
  static createComponent(spec: any, options: IComponentOption): MapLabelComponent;
30
29
  setAttrFromSpec(): void;
31
30
  created(): void;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/map-label/component.ts"],"names":[],"mappings":"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","file":"component.js","sourcesContent":["import type { IPadding, IRect, IOrientType } from '../../typings/space';\nimport { DataView } from '@visactor/vdataset';\nimport { BaseComponent } from '../base';\nimport type { IComponentOption } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../interface';\nimport { LayoutZIndex } from '../../constant';\nimport { merge } from '../../util/object';\nimport type { IMapLabelSpec, MapLabelSceneNodeMap } from './interface';\nimport type { ICartesianSeries, IGeoSeries } from '../../series/interface';\nimport type { IPoint, Datum } from '../../typings';\nimport type { IPairInfo } from './layout';\n// eslint-disable-next-line no-duplicate-imports\nimport { layoutByPosition, layoutOuter, placeRectByOrient } from './layout';\nimport { CompilableData } from '../../compile/data';\nimport { normalizeLayoutPaddingSpec } from '../../util/space';\nimport type { LayoutItem } from '../../model/layout-item';\nimport { MarkPoint } from '@visactor/vrender-components';\nimport type { IGroup, INode, IRect as IRectGraphic } from '@visactor/vrender';\nimport { createGroup, createRect, createSymbol, createText } from '@visactor/vrender';\nimport { transformToGraphic } from '../../util/style';\nimport { isValid } from '@visactor/vutils';\nimport type { PanEventParam, ZoomEventParam } from '../../event/interface';\nimport type { IModel } from '../../model/interface';\n\nexport class MapLabelComponent extends BaseComponent {\n static type = ComponentTypeEnum.mapLabel;\n type = ComponentTypeEnum.mapLabel;\n name: string = ComponentTypeEnum.mapLabel;\n\n layoutType: LayoutItem['layoutType'] = 'absolute';\n\n static speckey = 'mapLabel';\n\n layoutZIndex = LayoutZIndex.MarkPoint;\n\n protected nameField: string;\n protected valueField?: string;\n\n protected _series: ICartesianSeries | IGeoSeries;\n protected _map: any[];\n protected _longitudeField: string;\n protected _latitudeField: string;\n\n protected _markerComponents: MarkPoint[];\n\n private _activeDatum: Datum[] = [];\n\n declare _spec: IMapLabelSpec;\n\n static createComponent(spec: any, options: IComponentOption) {\n // TODO: 限制mapSeries使用\n const labelSpec = spec.mapLabel;\n if (!labelSpec || !labelSpec.visible || isValid(labelSpec.series)) {\n return null;\n }\n return new MapLabelComponent(labelSpec, options);\n }\n\n setAttrFromSpec(): void {\n this.nameField = this._spec.nameField ?? this._series?.getDimensionField()[0];\n this.valueField = this._spec.valueField ?? this._series?.getMeasureField()[0];\n }\n\n created() {\n super.created();\n if (!!this._spec.visible === false) {\n return;\n }\n this.initRelatedInfo();\n this.initData();\n this.initEvent();\n }\n\n initRelatedInfo(): void {\n this._series = this._option.getSeriesInUserIdOrIndex([this._spec.seriesId])[0] as ICartesianSeries;\n if (this._spec.position === 'outer') {\n // 需要获取region上的地理坐标系\n this._map = (this._regions[0].getSeriesInType('map')[0] as IGeoSeries)?.getMapViewData()?.latestData;\n\n this._longitudeField = this._regions[0].getSpec?.()?.longitudeField;\n this._latitudeField = this._regions[0].getSpec?.()?.latitudeField;\n }\n }\n\n initData() {\n const series = this._series;\n if (!series) {\n return;\n }\n const seriesData = series.getViewData();\n if (seriesData) {\n const data = new DataView(this._option.dataSet);\n data.parse([seriesData], {\n type: 'dataview'\n });\n data.transform({ type: 'copyDataView' }, false);\n data.name = `${this.name}_data`;\n\n this._data = new CompilableData(this._option, data);\n data.target.addListener('change', () => {\n if (this._spec.trigger !== 'hover' && this._spec.trigger !== 'click') {\n this._activeDatum = this._data.getLatestData();\n }\n });\n }\n }\n\n initEvent() {\n this.event.on('zoom', { filter: params => this._isRelativeModel(params.model) }, e => {\n this.handleZoom(e as unknown as ZoomEventParam);\n return true;\n });\n\n this.event.on('panmove', { filter: params => this._isRelativeModel(params.model) }, e => {\n this.handlePan(e as unknown as PanEventParam);\n return true;\n });\n\n const trigger = this._spec.trigger;\n if (trigger === 'none') {\n return;\n }\n\n if (trigger === 'hover') {\n this.event.on('hovered', { filter: params => this._isRelativeSeries(params.model) }, params => {\n this._updateDatum(params.value);\n });\n this.event.on('unhovered', () => {\n this._updateDatum([]);\n });\n } else if (trigger === 'click') {\n this.event.on('selected', { filter: params => this._isRelativeSeries(params.model) }, params => {\n this._updateDatum(params.value);\n });\n this.event.on('unselected', () => {\n this._updateDatum([]);\n });\n }\n }\n\n handlePan(e: PanEventParam) {\n const { delta } = e;\n this._markerComponents.forEach(marker => {\n marker.translate(delta[0], delta[1]);\n });\n }\n\n handleZoom(e: ZoomEventParam) {\n this._updateMarkerLayoutAttribute();\n }\n\n private _updateDatum(datum: Datum[]) {\n this._activeDatum = datum;\n this._markerComponents.forEach((marker, index) => {\n const markerDatum = this._data?.getLatestData()[index];\n if (this._activeDatum.includes(markerDatum)) {\n marker.setAttribute('visible', true);\n } else {\n marker.setAttribute('visible', false);\n }\n });\n }\n\n dataToPosition(datum: any) {\n return this._series.dataToPosition(datum);\n }\n\n updateLayoutAttribute() {\n const markData = this._data?.getLatestData();\n if (!markData || markData.length === 0) {\n return;\n }\n super.updateLayoutAttribute();\n this._updateMarkerLayoutAttribute();\n }\n\n protected _updateMarkerLayoutAttribute() {\n const layoutPairInfo: IPairInfo[] = [];\n const markerMarks: MapLabelSceneNodeMap[] = [];\n if (!this._markerComponents) {\n this._markerComponents = this._data?.getLatestData().map((data: Datum, index: number) => {\n const cmp = new MarkPoint({\n position: undefined\n });\n if (cmp) {\n cmp.name = `${this.name}_marker_${index}`;\n cmp.id = this._spec.id ?? `${this.name}_marker_${this.id}`;\n cmp.setAttribute('zIndex', this.layoutZIndex);\n }\n return cmp;\n });\n }\n\n const markerComponents = this._markerComponents;\n markerComponents.forEach((marker, index) => {\n marker.removeAllChild();\n const { pairInfo, contentMarks } = this._evaluateMarker(this._data.getLatestData()[index], index);\n pairInfo && layoutPairInfo.push(pairInfo);\n contentMarks && markerMarks.push(contentMarks);\n });\n\n const positionedRects = this._layoutLabels(layoutPairInfo);\n this._layoutMarkers(positionedRects, markerMarks);\n this._renderMarkers();\n }\n\n protected _evaluateMarker(data: Datum, index: number) {\n let contentItemCount = 0;\n let paddingWidth = 0;\n let paddingHeight = 0;\n let contentWidth = 0;\n let contentHeight = 0;\n\n const position = this._spec.position || 'top';\n const offset = this._spec.offset;\n\n const padding = normalizeLayoutPaddingSpec(this._spec.background?.padding) as IPadding;\n const space = this._spec.space || 0;\n paddingWidth += (padding?.left || 0) + (padding?.right || 0);\n paddingHeight += (padding?.top || 0) + (padding?.bottom || 0);\n\n const contentMarks: MapLabelSceneNodeMap = {};\n const positionAttr = this.dataToPosition(data);\n\n const container = createGroup({});\n container.name = `${this.name}_marker_itemContainer_${index}`;\n contentMarks.container = container;\n\n if (this._spec.background?.visible) {\n const labelBackground = createRect(transformToGraphic({ ...this._spec.background.style }));\n labelBackground.setAttributes(positionAttr);\n contentMarks.labelBackground = labelBackground;\n container.appendChild(labelBackground);\n }\n\n if (this._spec.icon?.visible) {\n const icon = createSymbol(transformToGraphic({ ...this._spec.icon.style }));\n icon.setAttributes(positionAttr);\n icon.setAttribute('symbolType', this._spec.icon.style?.shape);\n const iconBound = icon.AABBBounds;\n const iconHeight = iconBound?.y2 - iconBound?.y1 ?? 0;\n const iconWidth = iconBound?.x2 - iconBound?.x1 ?? 0;\n contentMarks.icon = icon;\n container.appendChild(icon);\n\n contentHeight = iconHeight;\n contentWidth += iconWidth;\n contentItemCount++;\n }\n\n if (this._spec.nameLabel?.visible) {\n const nameLabel = createText(transformToGraphic({ ...this._spec.nameLabel.style }));\n nameLabel.setAttributes(positionAttr);\n nameLabel.setAttribute('text', data[this.nameField]);\n const nameLabelBound = nameLabel.AABBBounds;\n const nameLabelHeight = nameLabelBound?.y2 - nameLabelBound?.y1 ?? 0;\n const nameLabelWidth = nameLabelBound?.x2 - nameLabelBound?.x1 ?? 0;\n contentMarks.nameLabel = nameLabel;\n container.appendChild(nameLabel);\n\n contentHeight = Math.max(contentHeight, nameLabelHeight);\n contentWidth += nameLabelWidth;\n contentItemCount++;\n }\n\n if (this._spec.valueLabel?.visible && isValid(data[this.valueField])) {\n const valueLabel = createText(transformToGraphic({ ...this._spec.valueLabel.style }));\n valueLabel.setAttributes(positionAttr);\n valueLabel.setAttribute('text', data[this.valueField]);\n const valueLabelBound = valueLabel.AABBBounds;\n const valueLabelHeight = valueLabelBound?.y2 - valueLabelBound?.y1 ?? 0;\n const valueLabelWidth = valueLabelBound?.x2 - valueLabelBound?.x1 ?? 0;\n contentMarks.valueLabel = valueLabel;\n container.appendChild(valueLabel);\n\n contentHeight = Math.max(contentHeight, valueLabelHeight);\n contentWidth += valueLabelWidth;\n contentItemCount++;\n }\n\n const firstValidMark = Object.values(contentMarks).find(m => !!m && m.type !== 'group');\n\n const anchor: IPoint = {\n x: firstValidMark?.getComputedAttribute('x'),\n y: firstValidMark?.getComputedAttribute('y')\n };\n const itemRect = {\n x: anchor.x,\n y: anchor.y,\n width: 0,\n height: 0\n };\n\n itemRect.width = paddingWidth + contentWidth + (contentItemCount - 1) * space;\n itemRect.height = paddingHeight + contentHeight;\n\n const pairInfo: IPairInfo = {\n rect: itemRect,\n point: anchor,\n index\n };\n // 计算得到最终所有元素包围盒的布局位置\n if (position !== 'outer') {\n const anchors = ['top', 'right', 'left', 'bottom'].filter(a => a !== position);\n pairInfo.rect = placeRectByOrient(itemRect, position, offset);\n pairInfo.anchors = anchors as IOrientType[];\n pairInfo.offset = offset;\n } else {\n pairInfo.pointCoord = {\n x: +data?.[this._longitudeField],\n y: +data?.[this._latitudeField]\n };\n }\n return { pairInfo, contentMarks };\n }\n\n protected _layoutMarkers(positionedRects: IRect[], contentMarks: MapLabelSceneNodeMap[]) {\n for (let i = 0; i < contentMarks.length; i++) {\n if (!positionedRects[i] || !contentMarks[i]) {\n return;\n }\n const { icon, nameLabel, valueLabel, labelBackground, container } = contentMarks[i];\n\n const itemRect = positionedRects[i];\n const padding = normalizeLayoutPaddingSpec(this._spec.background?.padding) as IPadding;\n const space = this._spec.space || 0;\n\n const curY = itemRect.height / 2;\n let curX = padding?.left || 0;\n [icon, nameLabel, valueLabel].forEach((item, index) => {\n if (item) {\n const bounds = item.AABBBounds;\n let offset = 0;\n if (item.type === 'symbol') {\n // 文字的锚点在文字左侧,baseline在中心\n // symbol的锚点[0,0]在图形中心。所以x方向要偏移半个bound。\n offset += (bounds.x2 - bounds.x1 ?? 0) / 2;\n }\n item.setAttributes({\n x: curX + offset,\n y: curY\n });\n\n curX += bounds.x2 - bounds.x1 ?? 0;\n if (index !== 2) {\n curX += space;\n }\n }\n });\n (labelBackground as IRectGraphic)?.setAttributes({\n x: 0,\n y: 0,\n width: itemRect.width,\n height: itemRect.height\n });\n container?.setAttributes({\n dx: -itemRect.width / 2,\n dy: -itemRect.height / 2\n });\n const datum = this._data.getLatestData()[i];\n const anchor = this.dataToPosition(datum);\n const showLeader = !!(this._spec.leader?.visible && (icon || nameLabel || valueLabel));\n this._markerComponents[i].setAttributes({\n x: this.getRegions()[0].getLayoutStartPoint().x,\n y: this.getRegions()[0].getLayoutStartPoint().y,\n position: anchor,\n visible: this._activeDatum.includes(datum),\n itemContent: {\n refX: 0,\n type: 'custom',\n renderCustomCallback: () => container as unknown as IGroup,\n autoRotate: false,\n offsetX: itemRect.x + itemRect.width / 2 - anchor.x,\n offsetY: itemRect.y + itemRect.height / 2 - anchor.y\n },\n itemLine: {\n visible: showLeader,\n type: 'type-po',\n lineStyle: transformToGraphic({ ...this._spec.leader?.style }),\n startSymbol: { visible: false }\n }\n });\n }\n }\n\n protected _renderMarkers() {\n if (!this._markerComponents || !this._markerComponents.length) {\n return;\n }\n\n for (let i = 0; i < this._markerComponents.length; i++) {\n this.getContainer().add(this._markerComponents[i] as unknown as INode);\n }\n }\n\n protected _layoutLabels(rects: IPairInfo[]) {\n const result =\n this._spec.position === 'outer' && this._map\n ? layoutOuter(rects, this._map, (coord: number[]) =>\n this._series.dataToPosition({\n [this._longitudeField]: coord[0],\n [this._latitudeField]: coord[1]\n })\n )\n : layoutByPosition(rects);\n\n return result;\n }\n\n private _isRelativeModel(model: IModel) {\n const id =\n (this._series as ICartesianSeries).getXAxisHelper()?.getAxisId() ??\n (this._series as IGeoSeries).getCoordinateHelper()?.getCoordinateId();\n return model?.id === id;\n }\n\n private _isRelativeSeries(model: IModel) {\n return model?.id === this._series.id;\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(/** regions: IRegion[] */): void {\n // do nothing\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/map-label/component.ts"],"names":[],"mappings":"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","file":"component.js","sourcesContent":["import type { IPadding, IRect, IOrientType } from '../../typings/space';\nimport { DataView } from '@visactor/vdataset';\nimport { BaseComponent } from '../base';\nimport type { IComponentOption } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../interface';\nimport { LayoutZIndex } from '../../constant';\nimport type { IMapLabelSpec, MapLabelSceneNodeMap } from './interface';\nimport type { ICartesianSeries, IGeoSeries } from '../../series/interface';\nimport type { IPoint, Datum } from '../../typings';\nimport type { IPairInfo } from './layout';\n// eslint-disable-next-line no-duplicate-imports\nimport { layoutByPosition, layoutOuter, placeRectByOrient } from './layout';\nimport { CompilableData } from '../../compile/data';\nimport { normalizeLayoutPaddingSpec } from '../../util/space';\nimport type { LayoutItem } from '../../model/layout-item';\nimport { MarkPoint } from '@visactor/vrender-components';\nimport type { IGroup, INode, IRect as IRectGraphic } from '@visactor/vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport { createGroup, createRect, createSymbol, createText } from '@visactor/vrender';\nimport { transformToGraphic } from '../../util/style';\nimport { isValid } from '@visactor/vutils';\nimport type { PanEventParam, ZoomEventParam } from '../../event/interface';\nimport type { IModel } from '../../model/interface';\n\nexport class MapLabelComponent extends BaseComponent<IMapLabelSpec> {\n static type = ComponentTypeEnum.mapLabel;\n type = ComponentTypeEnum.mapLabel;\n name: string = ComponentTypeEnum.mapLabel;\n\n layoutType: LayoutItem['layoutType'] = 'absolute';\n\n static speckey = 'mapLabel';\n\n layoutZIndex = LayoutZIndex.MarkPoint;\n\n protected nameField: string;\n protected valueField?: string;\n\n protected _series: ICartesianSeries | IGeoSeries;\n protected _map: any[];\n protected _longitudeField: string;\n protected _latitudeField: string;\n\n protected _markerComponents: MarkPoint[];\n\n private _activeDatum: Datum[] = [];\n\n static createComponent(spec: any, options: IComponentOption) {\n // TODO: 限制mapSeries使用\n const labelSpec = spec.mapLabel;\n if (!labelSpec || !labelSpec.visible || isValid(labelSpec.series)) {\n return null;\n }\n return new MapLabelComponent(labelSpec, options);\n }\n\n setAttrFromSpec(): void {\n this.nameField = this._spec.nameField ?? this._series?.getDimensionField()[0];\n this.valueField = this._spec.valueField ?? this._series?.getMeasureField()[0];\n }\n\n created() {\n super.created();\n if (!!this._spec.visible === false) {\n return;\n }\n this.initRelatedInfo();\n this.initData();\n this.initEvent();\n }\n\n initRelatedInfo(): void {\n this._series = this._option.getSeriesInUserIdOrIndex([this._spec.seriesId])[0] as ICartesianSeries;\n if (this._spec.position === 'outer') {\n // 需要获取region上的地理坐标系\n this._map = (this._regions[0].getSeriesInType('map')[0] as IGeoSeries)?.getMapViewData()?.latestData;\n\n this._longitudeField = this._regions[0].getSpec?.()?.longitudeField;\n this._latitudeField = this._regions[0].getSpec?.()?.latitudeField;\n }\n }\n\n initData() {\n const series = this._series;\n if (!series) {\n return;\n }\n const seriesData = series.getViewData();\n if (seriesData) {\n const data = new DataView(this._option.dataSet);\n data.parse([seriesData], {\n type: 'dataview'\n });\n data.transform({ type: 'copyDataView' }, false);\n data.name = `${this.name}_data`;\n\n this._data = new CompilableData(this._option, data);\n data.target.addListener('change', () => {\n if (this._spec.trigger !== 'hover' && this._spec.trigger !== 'click') {\n this._activeDatum = this._data.getLatestData();\n }\n });\n }\n }\n\n initEvent() {\n this.event.on('zoom', { filter: params => this._isRelativeModel(params.model) }, e => {\n this.handleZoom(e as unknown as ZoomEventParam);\n return true;\n });\n\n this.event.on('panmove', { filter: params => this._isRelativeModel(params.model) }, e => {\n this.handlePan(e as unknown as PanEventParam);\n return true;\n });\n\n const trigger = this._spec.trigger;\n if (trigger === 'none') {\n return;\n }\n\n if (trigger === 'hover') {\n this.event.on('hovered', { filter: params => this._isRelativeSeries(params.model) }, params => {\n this._updateDatum(params.value);\n });\n this.event.on('unhovered', () => {\n this._updateDatum([]);\n });\n } else if (trigger === 'click') {\n this.event.on('selected', { filter: params => this._isRelativeSeries(params.model) }, params => {\n this._updateDatum(params.value);\n });\n this.event.on('unselected', () => {\n this._updateDatum([]);\n });\n }\n }\n\n handlePan(e: PanEventParam) {\n const { delta } = e;\n this._markerComponents.forEach(marker => {\n marker.translate(delta[0], delta[1]);\n });\n }\n\n handleZoom(e: ZoomEventParam) {\n this._updateMarkerLayoutAttribute();\n }\n\n private _updateDatum(datum: Datum[]) {\n this._activeDatum = datum;\n this._markerComponents.forEach((marker, index) => {\n const markerDatum = this._data?.getLatestData()[index];\n if (this._activeDatum.includes(markerDatum)) {\n marker.setAttribute('visible', true);\n } else {\n marker.setAttribute('visible', false);\n }\n });\n }\n\n dataToPosition(datum: any) {\n return this._series.dataToPosition(datum);\n }\n\n updateLayoutAttribute() {\n const markData = this._data?.getLatestData();\n if (!markData || markData.length === 0) {\n return;\n }\n super.updateLayoutAttribute();\n this._updateMarkerLayoutAttribute();\n }\n\n protected _updateMarkerLayoutAttribute() {\n const layoutPairInfo: IPairInfo[] = [];\n const markerMarks: MapLabelSceneNodeMap[] = [];\n if (!this._markerComponents) {\n this._markerComponents = this._data?.getLatestData().map((data: Datum, index: number) => {\n const cmp = new MarkPoint({\n position: undefined\n });\n if (cmp) {\n cmp.name = `${this.name}_marker_${index}`;\n cmp.id = this._spec.id ?? `${this.name}_marker_${this.id}`;\n cmp.setAttribute('zIndex', this.layoutZIndex);\n }\n return cmp;\n });\n }\n\n const markerComponents = this._markerComponents;\n markerComponents.forEach((marker, index) => {\n marker.removeAllChild();\n const { pairInfo, contentMarks } = this._evaluateMarker(this._data.getLatestData()[index], index);\n pairInfo && layoutPairInfo.push(pairInfo);\n contentMarks && markerMarks.push(contentMarks);\n });\n\n const positionedRects = this._layoutLabels(layoutPairInfo);\n this._layoutMarkers(positionedRects, markerMarks);\n this._renderMarkers();\n }\n\n protected _evaluateMarker(data: Datum, index: number) {\n let contentItemCount = 0;\n let paddingWidth = 0;\n let paddingHeight = 0;\n let contentWidth = 0;\n let contentHeight = 0;\n\n const position = this._spec.position || 'top';\n const offset = this._spec.offset;\n\n const padding = normalizeLayoutPaddingSpec(this._spec.background?.padding) as IPadding;\n const space = this._spec.space || 0;\n paddingWidth += (padding?.left || 0) + (padding?.right || 0);\n paddingHeight += (padding?.top || 0) + (padding?.bottom || 0);\n\n const contentMarks: MapLabelSceneNodeMap = {};\n const positionAttr = this.dataToPosition(data);\n\n const container = createGroup({});\n container.name = `${this.name}_marker_itemContainer_${index}`;\n contentMarks.container = container;\n\n if (this._spec.background?.visible) {\n const labelBackground = createRect(transformToGraphic({ ...this._spec.background.style }));\n labelBackground.setAttributes(positionAttr);\n contentMarks.labelBackground = labelBackground;\n container.appendChild(labelBackground);\n }\n\n if (this._spec.icon?.visible) {\n const icon = createSymbol(transformToGraphic({ ...this._spec.icon.style }));\n icon.setAttributes(positionAttr);\n icon.setAttribute('symbolType', this._spec.icon.style?.shape);\n const iconBound = icon.AABBBounds;\n const iconHeight = iconBound?.y2 - iconBound?.y1 ?? 0;\n const iconWidth = iconBound?.x2 - iconBound?.x1 ?? 0;\n contentMarks.icon = icon;\n container.appendChild(icon);\n\n contentHeight = iconHeight;\n contentWidth += iconWidth;\n contentItemCount++;\n }\n\n if (this._spec.nameLabel?.visible) {\n const nameLabel = createText(transformToGraphic({ ...this._spec.nameLabel.style }));\n nameLabel.setAttributes(positionAttr);\n nameLabel.setAttribute('text', data[this.nameField]);\n const nameLabelBound = nameLabel.AABBBounds;\n const nameLabelHeight = nameLabelBound?.y2 - nameLabelBound?.y1 ?? 0;\n const nameLabelWidth = nameLabelBound?.x2 - nameLabelBound?.x1 ?? 0;\n contentMarks.nameLabel = nameLabel;\n container.appendChild(nameLabel);\n\n contentHeight = Math.max(contentHeight, nameLabelHeight);\n contentWidth += nameLabelWidth;\n contentItemCount++;\n }\n\n if (this._spec.valueLabel?.visible && isValid(data[this.valueField])) {\n const valueLabel = createText(transformToGraphic({ ...this._spec.valueLabel.style }));\n valueLabel.setAttributes(positionAttr);\n valueLabel.setAttribute('text', data[this.valueField]);\n const valueLabelBound = valueLabel.AABBBounds;\n const valueLabelHeight = valueLabelBound?.y2 - valueLabelBound?.y1 ?? 0;\n const valueLabelWidth = valueLabelBound?.x2 - valueLabelBound?.x1 ?? 0;\n contentMarks.valueLabel = valueLabel;\n container.appendChild(valueLabel);\n\n contentHeight = Math.max(contentHeight, valueLabelHeight);\n contentWidth += valueLabelWidth;\n contentItemCount++;\n }\n\n const firstValidMark = Object.values(contentMarks).find(m => !!m && m.type !== 'group');\n\n const anchor: IPoint = {\n x: firstValidMark?.getComputedAttribute('x'),\n y: firstValidMark?.getComputedAttribute('y')\n };\n const itemRect = {\n x: anchor.x,\n y: anchor.y,\n width: 0,\n height: 0\n };\n\n itemRect.width = paddingWidth + contentWidth + (contentItemCount - 1) * space;\n itemRect.height = paddingHeight + contentHeight;\n\n const pairInfo: IPairInfo = {\n rect: itemRect,\n point: anchor,\n index\n };\n // 计算得到最终所有元素包围盒的布局位置\n if (position !== 'outer') {\n const anchors = ['top', 'right', 'left', 'bottom'].filter(a => a !== position);\n pairInfo.rect = placeRectByOrient(itemRect, position, offset);\n pairInfo.anchors = anchors as IOrientType[];\n pairInfo.offset = offset;\n } else {\n pairInfo.pointCoord = {\n x: +data?.[this._longitudeField],\n y: +data?.[this._latitudeField]\n };\n }\n return { pairInfo, contentMarks };\n }\n\n protected _layoutMarkers(positionedRects: IRect[], contentMarks: MapLabelSceneNodeMap[]) {\n for (let i = 0; i < contentMarks.length; i++) {\n if (!positionedRects[i] || !contentMarks[i]) {\n return;\n }\n const { icon, nameLabel, valueLabel, labelBackground, container } = contentMarks[i];\n\n const itemRect = positionedRects[i];\n const padding = normalizeLayoutPaddingSpec(this._spec.background?.padding) as IPadding;\n const space = this._spec.space || 0;\n\n const curY = itemRect.height / 2;\n let curX = padding?.left || 0;\n [icon, nameLabel, valueLabel].forEach((item, index) => {\n if (item) {\n const bounds = item.AABBBounds;\n let offset = 0;\n if (item.type === 'symbol') {\n // 文字的锚点在文字左侧,baseline在中心\n // symbol的锚点[0,0]在图形中心。所以x方向要偏移半个bound。\n offset += (bounds.x2 - bounds.x1 ?? 0) / 2;\n }\n item.setAttributes({\n x: curX + offset,\n y: curY\n });\n\n curX += bounds.x2 - bounds.x1 ?? 0;\n if (index !== 2) {\n curX += space;\n }\n }\n });\n (labelBackground as IRectGraphic)?.setAttributes({\n x: 0,\n y: 0,\n width: itemRect.width,\n height: itemRect.height\n });\n container?.setAttributes({\n dx: -itemRect.width / 2,\n dy: -itemRect.height / 2\n });\n const datum = this._data.getLatestData()[i];\n const anchor = this.dataToPosition(datum);\n const showLeader = !!(this._spec.leader?.visible && (icon || nameLabel || valueLabel));\n this._markerComponents[i].setAttributes({\n x: this.getRegions()[0].getLayoutStartPoint().x,\n y: this.getRegions()[0].getLayoutStartPoint().y,\n position: anchor,\n visible: this._activeDatum.includes(datum),\n itemContent: {\n refX: 0,\n type: 'custom',\n renderCustomCallback: () => container as unknown as IGroup,\n autoRotate: false,\n offsetX: itemRect.x + itemRect.width / 2 - anchor.x,\n offsetY: itemRect.y + itemRect.height / 2 - anchor.y\n },\n itemLine: {\n visible: showLeader,\n type: 'type-po',\n lineStyle: transformToGraphic({ ...this._spec.leader?.style }),\n startSymbol: { visible: false }\n }\n });\n }\n }\n\n protected _renderMarkers() {\n if (!this._markerComponents || !this._markerComponents.length) {\n return;\n }\n\n for (let i = 0; i < this._markerComponents.length; i++) {\n this.getContainer().add(this._markerComponents[i] as unknown as INode);\n }\n }\n\n protected _layoutLabels(rects: IPairInfo[]) {\n const result =\n this._spec.position === 'outer' && this._map\n ? layoutOuter(rects, this._map, (coord: number[]) =>\n this._series.dataToPosition({\n [this._longitudeField]: coord[0],\n [this._latitudeField]: coord[1]\n })\n )\n : layoutByPosition(rects);\n\n return result;\n }\n\n private _isRelativeModel(model: IModel) {\n const id =\n (this._series as ICartesianSeries).getXAxisHelper()?.getAxisId() ??\n (this._series as IGeoSeries).getCoordinateHelper()?.getCoordinateId();\n return model?.id === id;\n }\n\n private _isRelativeSeries(model: IModel) {\n return model?.id === this._series.id;\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(/** regions: IRegion[] */): void {\n // do nothing\n }\n}\n"]}
@@ -5,8 +5,8 @@ import type { IRegion } from '../../region/interface';
5
5
  import type { ICartesianSeries } from '../../series/interface';
6
6
  import type { StringOrNumber } from '../../typings';
7
7
  import { BaseComponent } from '../base';
8
- import type { IAggrType, IDataPos, IDataPosCallback } from './interface';
9
- export declare abstract class BaseMarker extends BaseComponent {
8
+ import type { IAggrType, IDataPos, IDataPosCallback, IMarkerAxisSpec, IMarkerSpec } from './interface';
9
+ export declare abstract class BaseMarker<T extends IMarkerSpec & IMarkerAxisSpec> extends BaseComponent<T> {
10
10
  layoutType: LayoutItem['layoutType'];
11
11
  protected _startRelativeSeries: ICartesianSeries;
12
12
  protected _endRelativeSeries: ICartesianSeries;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/marker/base-marker.ts"],"names":[],"mappings":"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","file":"base-marker.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport { array, isFunction, merge } from '@visactor/vutils';\nimport { AGGR_TYPE } from '../../constant/marker';\nimport type { IOptionAggr } from '../../data/transforms/aggregation';\nimport type { IOptionRegr } from '../../data/transforms/regression';\nimport type { IModelRenderOption } from '../../model/interface';\nimport type { LayoutItem } from '../../model/layout-item';\nimport type { IRegion } from '../../region/interface';\nimport type { ICartesianSeries } from '../../series/interface';\nimport type { StringOrNumber } from '../../typings';\nimport { BaseComponent } from '../base';\nimport type { IAggrType, IDataPointSpec, IDataPos, IDataPosCallback } from './interface';\nimport type { IRegressType } from './mark-area/interface';\nimport type { IGraphic, INode } from '@visactor/vrender';\n\nexport abstract class BaseMarker extends BaseComponent {\n layoutType: LayoutItem['layoutType'] = 'absolute';\n\n protected _startRelativeSeries!: ICartesianSeries;\n protected _endRelativeSeries!: ICartesianSeries;\n protected _relativeSeries!: ICartesianSeries;\n\n // marker 组件数据\n protected _markerData!: DataView;\n // marker 组件\n protected _markerComponent!: any;\n\n created() {\n super.created();\n // event\n this.initEvent();\n this._bindSeries();\n this._initDataView();\n }\n\n private _isSpecAggrOrRege(spec: IDataPos) {\n return spec === 'regression' || AGGR_TYPE.includes(spec as any);\n }\n\n protected _processSpecX(specX: IDataPos | IDataPosCallback) {\n const relativeSeries = this._relativeSeries;\n let processType: IAggrType | IRegressType;\n if (isFunction(specX)) {\n specX = specX(\n this._relativeSeries.getData().getLatestData(),\n this._startRelativeSeries.getData().getLatestData(),\n this._endRelativeSeries.getData().getLatestData()\n );\n }\n if (this._isSpecAggrOrRege(specX)) {\n processType = specX as unknown as IAggrType;\n return {\n x: {\n field: relativeSeries.getSpec().xField,\n aggrType: processType\n }\n };\n }\n return { x: specX };\n }\n\n protected _processSpecY(specY: IDataPos | IDataPosCallback) {\n const relativeSeries = this._relativeSeries;\n let processType: IAggrType | IRegressType;\n if (isFunction(specY)) {\n specY = specY(\n this._relativeSeries.getData().getLatestData(),\n this._startRelativeSeries.getData().getLatestData(),\n this._endRelativeSeries.getData().getLatestData()\n );\n }\n if (this._isSpecAggrOrRege(specY)) {\n processType = specY as unknown as IAggrType;\n return {\n y: {\n field: relativeSeries.getSpec().yField,\n aggrType: processType\n }\n };\n }\n return { y: specY };\n }\n\n protected _processSpecCoo(spec: any) {\n const coordinates = spec.coordinates ?? array(spec.coordinate);\n return coordinates.map((coordinate: IDataPointSpec) => {\n const refRelativeSeries = this._getSeriesByIdOrIndex(\n coordinate.refRelativeSeriesId,\n coordinate.refRelativeSeriesIndex\n );\n\n const { xField, yField } = refRelativeSeries.getSpec();\n const { [xField]: coordinateX, [yField]: coordinateY } = coordinate;\n const option: IOptionAggr | IOptionRegr = { x: null, y: null };\n if (this._isSpecAggrOrRege(coordinateX)) {\n option.x = { field: xField, aggrType: coordinateX as IAggrType };\n } else {\n option.x = coordinateX;\n }\n\n if (this._isSpecAggrOrRege(coordinateY)) {\n option.y = { field: yField, aggrType: coordinateY as IAggrType };\n } else {\n option.y = coordinateY;\n }\n option.getRefRelativeSeries = () => refRelativeSeries;\n return option;\n });\n }\n\n updateLayoutAttribute(): void {\n const markerVisible = this._spec.visible ?? true;\n if (markerVisible) {\n // 创建marker组件\n if (!this._markerComponent) {\n this._createMarkerComponent();\n // 代理 marker 组件上的事件\n this._markerComponent.on('*', (event: any, type: string) =>\n this._delegateEvent(this._markerComponent as unknown as IGraphic, event, type)\n );\n }\n this._markerLayout();\n }\n\n super.updateLayoutAttribute();\n }\n\n protected _getSeriesByIdOrIndex(seriesUserId: StringOrNumber, seriesIndex: number) {\n let series: ICartesianSeries;\n series = this._option.getSeriesInUserIdOrIndex(array(seriesUserId), [seriesIndex])?.[0] as ICartesianSeries;\n if (!series) {\n series = this._relativeSeries ?? this.getFirstSeries();\n }\n return series;\n }\n\n protected _bindSeries() {\n const spec = this._spec;\n this._relativeSeries = this._getSeriesByIdOrIndex(spec.relativeSeriesId, spec.relativeSeriesIndex);\n this._startRelativeSeries = this._getSeriesByIdOrIndex(spec.startRelativeSeriesId, spec.startRelativeSeriesIndex);\n this._endRelativeSeries = this._getSeriesByIdOrIndex(spec.endRelativeSeriesId, spec.endRelativeSeriesIndex);\n }\n\n protected _computeClipRange(regions: IRegion[]) {\n let minX = Infinity;\n let maxX = -Infinity;\n let minY = Infinity;\n let maxY = -Infinity;\n regions.forEach((region: IRegion) => {\n if (region.getLayoutStartPoint().x < minX) {\n minX = region.getLayoutStartPoint().x;\n }\n if (region.getLayoutStartPoint().x + region.getLayoutRect().width > maxX) {\n maxX = region.getLayoutStartPoint().x + region.getLayoutRect().width;\n }\n if (region.getLayoutStartPoint().y < minY) {\n minY = region.getLayoutStartPoint().y;\n }\n if (region.getLayoutStartPoint().y + region.getLayoutRect().height > maxY) {\n maxY = region.getLayoutStartPoint().y + region.getLayoutRect().height;\n }\n });\n return { minX, maxX, minY, maxY };\n }\n\n protected abstract _initDataView(): void;\n protected abstract _createMarkerComponent(): void;\n protected abstract _markerLayout(): void;\n\n protected initEvent() {\n // do nothing\n }\n onRender(ctx: IModelRenderOption): void {\n // do nothing\n }\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n protected getFirstSeries(): ICartesianSeries {\n for (let i = 0; i < this._regions.length; i++) {\n const r = this._regions[i];\n const series = r.getSeries();\n for (let j = 0; j < series.length; j++) {\n const s = series[j];\n if (s) {\n return s as ICartesianSeries;\n }\n }\n }\n this._option.onError('need at least one series');\n return null;\n }\n\n clear(): void {\n if (this._markerComponent) {\n this._container.removeChild(this._markerComponent as unknown as INode);\n this._markerComponent = null;\n }\n super.clear();\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/marker/base-marker.ts"],"names":[],"mappings":"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","file":"base-marker.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport { array, isFunction } from '@visactor/vutils';\nimport { AGGR_TYPE } from '../../constant/marker';\nimport type { IOptionAggr } from '../../data/transforms/aggregation';\nimport type { IOptionRegr } from '../../data/transforms/regression';\nimport type { IModelRenderOption } from '../../model/interface';\nimport type { LayoutItem } from '../../model/layout-item';\nimport type { IRegion } from '../../region/interface';\nimport type { ICartesianSeries } from '../../series/interface';\nimport type { StringOrNumber } from '../../typings';\nimport { BaseComponent } from '../base';\nimport type { IAggrType, IDataPointSpec, IDataPos, IDataPosCallback, IMarkerAxisSpec, IMarkerSpec } from './interface';\nimport type { IRegressType } from './mark-area/interface';\nimport type { IGraphic, INode } from '@visactor/vrender';\n\nexport abstract class BaseMarker<T extends IMarkerSpec & IMarkerAxisSpec> extends BaseComponent<T> {\n layoutType: LayoutItem['layoutType'] = 'absolute';\n\n protected _startRelativeSeries!: ICartesianSeries;\n protected _endRelativeSeries!: ICartesianSeries;\n protected _relativeSeries!: ICartesianSeries;\n\n // marker 组件数据\n protected _markerData!: DataView;\n // marker 组件\n protected _markerComponent!: any;\n\n created() {\n super.created();\n // event\n this.initEvent();\n this._bindSeries();\n this._initDataView();\n }\n\n private _isSpecAggrOrRege(spec: IDataPos) {\n return spec === 'regression' || AGGR_TYPE.includes(spec as any);\n }\n\n protected _processSpecX(specX: IDataPos | IDataPosCallback) {\n const relativeSeries = this._relativeSeries;\n let processType: IAggrType | IRegressType;\n if (isFunction(specX)) {\n specX = specX(\n this._relativeSeries.getData().getLatestData(),\n this._startRelativeSeries.getData().getLatestData(),\n this._endRelativeSeries.getData().getLatestData()\n );\n }\n if (this._isSpecAggrOrRege(specX)) {\n processType = specX as unknown as IAggrType;\n return {\n x: {\n field: relativeSeries.getSpec().xField,\n aggrType: processType\n }\n };\n }\n return { x: specX };\n }\n\n protected _processSpecY(specY: IDataPos | IDataPosCallback) {\n const relativeSeries = this._relativeSeries;\n let processType: IAggrType | IRegressType;\n if (isFunction(specY)) {\n specY = specY(\n this._relativeSeries.getData().getLatestData(),\n this._startRelativeSeries.getData().getLatestData(),\n this._endRelativeSeries.getData().getLatestData()\n );\n }\n if (this._isSpecAggrOrRege(specY)) {\n processType = specY as unknown as IAggrType;\n return {\n y: {\n field: relativeSeries.getSpec().yField,\n aggrType: processType\n }\n };\n }\n return { y: specY };\n }\n\n protected _processSpecCoo(spec: any) {\n const coordinates = spec.coordinates ?? array(spec.coordinate);\n return coordinates.map((coordinate: IDataPointSpec) => {\n const refRelativeSeries = this._getSeriesByIdOrIndex(\n coordinate.refRelativeSeriesId,\n coordinate.refRelativeSeriesIndex\n );\n\n const { xField, yField } = refRelativeSeries.getSpec();\n const { [xField]: coordinateX, [yField]: coordinateY } = coordinate;\n const option: IOptionAggr | IOptionRegr = { x: null, y: null };\n if (this._isSpecAggrOrRege(coordinateX)) {\n option.x = { field: xField, aggrType: coordinateX as IAggrType };\n } else {\n option.x = coordinateX;\n }\n\n if (this._isSpecAggrOrRege(coordinateY)) {\n option.y = { field: yField, aggrType: coordinateY as IAggrType };\n } else {\n option.y = coordinateY;\n }\n option.getRefRelativeSeries = () => refRelativeSeries;\n return option;\n });\n }\n\n updateLayoutAttribute(): void {\n const markerVisible = this._spec.visible ?? true;\n if (markerVisible) {\n // 创建marker组件\n if (!this._markerComponent) {\n this._createMarkerComponent();\n // 代理 marker 组件上的事件\n this._markerComponent.on('*', (event: any, type: string) =>\n this._delegateEvent(this._markerComponent as unknown as IGraphic, event, type)\n );\n }\n this._markerLayout();\n }\n\n super.updateLayoutAttribute();\n }\n\n protected _getSeriesByIdOrIndex(seriesUserId: StringOrNumber, seriesIndex: number) {\n let series: ICartesianSeries;\n series = this._option.getSeriesInUserIdOrIndex(array(seriesUserId), [seriesIndex])?.[0] as ICartesianSeries;\n if (!series) {\n series = this._relativeSeries ?? this.getFirstSeries();\n }\n return series;\n }\n\n protected _bindSeries() {\n const spec = this._spec;\n this._relativeSeries = this._getSeriesByIdOrIndex(spec.relativeSeriesId, spec.relativeSeriesIndex);\n this._startRelativeSeries = this._getSeriesByIdOrIndex(spec.startRelativeSeriesId, spec.startRelativeSeriesIndex);\n this._endRelativeSeries = this._getSeriesByIdOrIndex(spec.endRelativeSeriesId, spec.endRelativeSeriesIndex);\n }\n\n protected _computeClipRange(regions: IRegion[]) {\n let minX = Infinity;\n let maxX = -Infinity;\n let minY = Infinity;\n let maxY = -Infinity;\n regions.forEach((region: IRegion) => {\n if (region.getLayoutStartPoint().x < minX) {\n minX = region.getLayoutStartPoint().x;\n }\n if (region.getLayoutStartPoint().x + region.getLayoutRect().width > maxX) {\n maxX = region.getLayoutStartPoint().x + region.getLayoutRect().width;\n }\n if (region.getLayoutStartPoint().y < minY) {\n minY = region.getLayoutStartPoint().y;\n }\n if (region.getLayoutStartPoint().y + region.getLayoutRect().height > maxY) {\n maxY = region.getLayoutStartPoint().y + region.getLayoutRect().height;\n }\n });\n return { minX, maxX, minY, maxY };\n }\n\n protected abstract _initDataView(): void;\n protected abstract _createMarkerComponent(): void;\n protected abstract _markerLayout(): void;\n\n protected initEvent() {\n // do nothing\n }\n onRender(ctx: IModelRenderOption): void {\n // do nothing\n }\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n protected getFirstSeries(): ICartesianSeries {\n for (let i = 0; i < this._regions.length; i++) {\n const r = this._regions[i];\n const series = r.getSeries();\n for (let j = 0; j < series.length; j++) {\n const s = series[j];\n if (s) {\n return s as ICartesianSeries;\n }\n }\n }\n this._option.onError('need at least one series');\n return null;\n }\n\n clear(): void {\n if (this._markerComponent) {\n this._container.removeChild(this._markerComponent as unknown as INode);\n this._markerComponent = null;\n }\n super.clear();\n }\n}\n"]}
@@ -4,13 +4,12 @@ import { ComponentTypeEnum } from '../../interface';
4
4
  import { MarkArea as MarkAreaComponent } from '@visactor/vrender-components';
5
5
  import { BaseMarker } from '../base-marker';
6
6
  import type { LayoutItem } from '../../../model/layout-item';
7
- export declare class MarkArea extends BaseMarker implements IMarkArea {
7
+ export declare class MarkArea extends BaseMarker<IMarkAreaSpec & IMarkAreaTheme> implements IMarkArea {
8
8
  static type: ComponentTypeEnum;
9
9
  type: ComponentTypeEnum;
10
10
  name: string;
11
11
  layoutZIndex: LayoutItem['layoutZIndex'];
12
12
  static speckey: string;
13
- protected _spec: IMarkAreaSpec & IMarkAreaTheme;
14
13
  protected _theme: IMarkAreaTheme;
15
14
  protected _markerComponent: MarkAreaComponent;
16
15
  static createComponent(spec: any, options: IComponentOption): MarkArea | MarkArea[];
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/marker/mark-area/mark-area.ts"],"names":[],"mappings":"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","file":"mark-area.js","sourcesContent":["import { DataView } from '@visactor/vdataset';\nimport type { IMarkArea, IMarkAreaSpec, IMarkAreaTheme } from './interface';\nimport { isNil, isArray } from '../../../util';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport type { IOptionAggrs } from '../../../data/transforms/aggregation';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerAggregation } from '../../../data/transforms/aggregation';\nimport { xLayout, yLayout, coordinateLayout } from '../utils';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { MarkArea as MarkAreaComponent } from '@visactor/vrender-components';\nimport type { IPointLike } from '@visactor/vutils';\nimport { isValid } from '@visactor/vutils';\nimport { transformToGraphic } from '../../../util/style';\nimport type { IOptionRegr } from '../../../data/transforms/regression';\nimport { BaseMarker } from '../base-marker';\nimport { LayoutZIndex } from '../../../constant';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport type { INode } from '@visactor/vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerRegression } from '../../../data/transforms/regression';\n\nexport class MarkArea extends BaseMarker implements IMarkArea {\n static type = ComponentTypeEnum.markArea;\n type = ComponentTypeEnum.markArea;\n name: string = ComponentTypeEnum.markArea;\n\n layoutZIndex: LayoutItem['layoutZIndex'] = LayoutZIndex.MarkArea;\n\n static speckey = 'markArea';\n\n protected declare _spec: IMarkAreaSpec & IMarkAreaTheme;\n protected declare _theme: IMarkAreaTheme;\n\n // markArea组件\n protected declare _markerComponent: MarkAreaComponent;\n\n static createComponent(spec: any, options: IComponentOption) {\n const markAreaSpec = spec.markArea || options.defaultSpec;\n if (isNil(markAreaSpec)) {\n return undefined;\n }\n if (!isArray(markAreaSpec) && markAreaSpec.visible !== false) {\n return new MarkArea(markAreaSpec, { ...options, specKey: MarkArea.speckey });\n }\n const markAreas: MarkArea[] = [];\n markAreaSpec.forEach((m: any, i: number) => {\n if (m.visible !== false) {\n markAreas.push(new MarkArea(m, { ...options, specIndex: i, specKey: MarkArea.speckey }));\n }\n });\n return markAreas;\n }\n\n protected _createMarkerComponent() {\n const markArea = new MarkAreaComponent({\n zIndex: this.layoutZIndex,\n interactive: this._spec.interactive ?? false,\n points: [\n {\n x: 0,\n y: 0\n }\n ],\n areaStyle: transformToGraphic(this._spec.area?.style),\n label: {\n ...this._spec.label,\n padding: this._spec.label?.labelBackground?.padding,\n shape: {\n ...transformToGraphic(this._spec.label?.shape),\n visible: this._spec.label?.shape?.visible ?? false\n },\n panel: {\n ...transformToGraphic(this._spec.label?.labelBackground?.style),\n visible: this._spec.label?.labelBackground?.visible ?? true\n },\n textStyle: transformToGraphic(this._spec.label?.style)\n }\n });\n this._markerComponent = markArea;\n this._markerComponent.name = 'markArea';\n this._markerComponent.id = this._spec.id ?? `markArea-${this.id}`;\n this.getContainer().add(this._markerComponent as unknown as INode);\n }\n\n protected _markerLayout() {\n const spec = this._spec as any;\n const data = this._markerData;\n const startRelativeSeries = this._startRelativeSeries;\n const endRelativeSeries = this._endRelativeSeries;\n const relativeSeries = this._relativeSeries;\n\n const isXLayout = isValid(spec.x) && isValid(spec.x1);\n const isYLayout = isValid(spec.y) && isValid(spec.y1);\n const isCoordinateLayout = isValid(spec.coordinates);\n const isPositionLayout = isValid(spec.positions);\n const autoRange = spec?.autoRange ?? false;\n const isNeedClip = spec?.clip ?? false;\n\n let points: IPointLike[] = [];\n let lines: [IPointLike, IPointLike][] = [];\n if (isXLayout) {\n lines = xLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);\n points = [...lines[0], lines[1][1], lines[1][0]];\n } else if (isYLayout) {\n lines = yLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);\n points = [...lines[0], lines[1][1], lines[1][0]];\n } else if (isCoordinateLayout) {\n points = coordinateLayout(data, relativeSeries, autoRange);\n } else if (isPositionLayout) {\n points = spec.positions;\n }\n\n const dataPoints = data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;\n let clipRange;\n if (isNeedClip) {\n const { minX, maxX, minY, maxY } = this._computeClipRange([\n startRelativeSeries.getRegion(),\n endRelativeSeries.getRegion(),\n relativeSeries.getRegion()\n ]);\n clipRange = {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n }\n this._markerComponent?.setAttributes({\n points: points,\n label: {\n ...this._markerComponent.attribute?.label,\n text: this._spec.label.formatMethod\n ? this._spec.label.formatMethod(dataPoints)\n : this._markerComponent.attribute?.label?.text\n },\n clipRange\n });\n }\n\n protected _initDataView(): void {\n const spec = this._spec as any;\n const relativeSeries = this._relativeSeries;\n const isXProcess = isValid(spec.x) && isValid(spec.x1);\n const isYProcess = isValid(spec.y) && isValid(spec.y1);\n const isCoordinateProcess = isValid(spec.coordinates);\n if (!isXProcess && !isYProcess && !isCoordinateProcess) {\n return null;\n }\n\n let options: IOptionAggrs | IOptionRegr;\n\n registerDataSetInstanceTransform(this._option.dataSet, 'markerAggregation', markerAggregation);\n registerDataSetInstanceTransform(this._option.dataSet, 'markerRegression', markerRegression);\n\n if (isXProcess) {\n options = [this._processSpecX(spec.x), this._processSpecX(spec.x1)];\n } else if (isYProcess) {\n options = [this._processSpecY(spec.y), this._processSpecY(spec.y1)];\n } else if (isCoordinateProcess) {\n options = this._processSpecCoo(spec);\n }\n\n const data = new DataView(this._option.dataSet);\n data.parse([relativeSeries.getViewData()], {\n type: 'dataview'\n });\n data.transform({\n type: 'markerAggregation',\n options\n });\n\n data.target.on('change', () => {\n this._markerLayout();\n });\n this._markerData = data;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/marker/mark-area/mark-area.ts"],"names":[],"mappings":"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","file":"mark-area.js","sourcesContent":["import { DataView } from '@visactor/vdataset';\nimport type { IMarkArea, IMarkAreaSpec, IMarkAreaTheme } from './interface';\nimport { isNil, isArray } from '../../../util';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport type { IOptionAggrs } from '../../../data/transforms/aggregation';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerAggregation } from '../../../data/transforms/aggregation';\nimport { xLayout, yLayout, coordinateLayout } from '../utils';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { MarkArea as MarkAreaComponent } from '@visactor/vrender-components';\nimport type { IPointLike } from '@visactor/vutils';\nimport { isValid } from '@visactor/vutils';\nimport { transformToGraphic } from '../../../util/style';\nimport type { IOptionRegr } from '../../../data/transforms/regression';\nimport { BaseMarker } from '../base-marker';\nimport { LayoutZIndex } from '../../../constant';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport type { INode } from '@visactor/vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerRegression } from '../../../data/transforms/regression';\n\nexport class MarkArea extends BaseMarker<IMarkAreaSpec & IMarkAreaTheme> implements IMarkArea {\n static type = ComponentTypeEnum.markArea;\n type = ComponentTypeEnum.markArea;\n name: string = ComponentTypeEnum.markArea;\n\n layoutZIndex: LayoutItem['layoutZIndex'] = LayoutZIndex.MarkArea;\n\n static speckey = 'markArea';\n\n protected declare _theme: IMarkAreaTheme;\n\n // markArea组件\n protected declare _markerComponent: MarkAreaComponent;\n\n static createComponent(spec: any, options: IComponentOption) {\n const markAreaSpec = spec.markArea || options.defaultSpec;\n if (isNil(markAreaSpec)) {\n return undefined;\n }\n if (!isArray(markAreaSpec) && markAreaSpec.visible !== false) {\n return new MarkArea(markAreaSpec, { ...options, specKey: MarkArea.speckey });\n }\n const markAreas: MarkArea[] = [];\n markAreaSpec.forEach((m: any, i: number) => {\n if (m.visible !== false) {\n markAreas.push(new MarkArea(m, { ...options, specIndex: i, specKey: MarkArea.speckey }));\n }\n });\n return markAreas;\n }\n\n protected _createMarkerComponent() {\n const markArea = new MarkAreaComponent({\n zIndex: this.layoutZIndex,\n interactive: this._spec.interactive ?? false,\n points: [\n {\n x: 0,\n y: 0\n }\n ],\n areaStyle: transformToGraphic(this._spec.area?.style),\n label: {\n ...this._spec.label,\n padding: this._spec.label?.labelBackground?.padding,\n shape: {\n ...transformToGraphic(this._spec.label?.shape),\n visible: this._spec.label?.shape?.visible ?? false\n },\n panel: {\n ...transformToGraphic(this._spec.label?.labelBackground?.style),\n visible: this._spec.label?.labelBackground?.visible ?? true\n },\n textStyle: transformToGraphic(this._spec.label?.style)\n }\n });\n this._markerComponent = markArea;\n this._markerComponent.name = 'markArea';\n this._markerComponent.id = this._spec.id ?? `markArea-${this.id}`;\n this.getContainer().add(this._markerComponent as unknown as INode);\n }\n\n protected _markerLayout() {\n const spec = this._spec as any;\n const data = this._markerData;\n const startRelativeSeries = this._startRelativeSeries;\n const endRelativeSeries = this._endRelativeSeries;\n const relativeSeries = this._relativeSeries;\n\n const isXLayout = isValid(spec.x) && isValid(spec.x1);\n const isYLayout = isValid(spec.y) && isValid(spec.y1);\n const isCoordinateLayout = isValid(spec.coordinates);\n const isPositionLayout = isValid(spec.positions);\n const autoRange = spec?.autoRange ?? false;\n const isNeedClip = spec?.clip ?? false;\n\n let points: IPointLike[] = [];\n let lines: [IPointLike, IPointLike][] = [];\n if (isXLayout) {\n lines = xLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);\n points = [...lines[0], lines[1][1], lines[1][0]];\n } else if (isYLayout) {\n lines = yLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);\n points = [...lines[0], lines[1][1], lines[1][0]];\n } else if (isCoordinateLayout) {\n points = coordinateLayout(data, relativeSeries, autoRange);\n } else if (isPositionLayout) {\n points = spec.positions;\n }\n\n const dataPoints = data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;\n let clipRange;\n if (isNeedClip) {\n const { minX, maxX, minY, maxY } = this._computeClipRange([\n startRelativeSeries.getRegion(),\n endRelativeSeries.getRegion(),\n relativeSeries.getRegion()\n ]);\n clipRange = {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n }\n this._markerComponent?.setAttributes({\n points: points,\n label: {\n ...this._markerComponent.attribute?.label,\n text: this._spec.label.formatMethod\n ? this._spec.label.formatMethod(dataPoints)\n : this._markerComponent.attribute?.label?.text\n },\n clipRange\n });\n }\n\n protected _initDataView(): void {\n const spec = this._spec as any;\n const relativeSeries = this._relativeSeries;\n const isXProcess = isValid(spec.x) && isValid(spec.x1);\n const isYProcess = isValid(spec.y) && isValid(spec.y1);\n const isCoordinateProcess = isValid(spec.coordinates);\n if (!isXProcess && !isYProcess && !isCoordinateProcess) {\n return null;\n }\n\n let options: IOptionAggrs | IOptionRegr;\n\n registerDataSetInstanceTransform(this._option.dataSet, 'markerAggregation', markerAggregation);\n registerDataSetInstanceTransform(this._option.dataSet, 'markerRegression', markerRegression);\n\n if (isXProcess) {\n options = [this._processSpecX(spec.x), this._processSpecX(spec.x1)];\n } else if (isYProcess) {\n options = [this._processSpecY(spec.y), this._processSpecY(spec.y1)];\n } else if (isCoordinateProcess) {\n options = this._processSpecCoo(spec);\n }\n\n const data = new DataView(this._option.dataSet);\n data.parse([relativeSeries.getViewData()], {\n type: 'dataview'\n });\n data.transform({\n type: 'markerAggregation',\n options\n });\n\n data.target.on('change', () => {\n this._markerLayout();\n });\n this._markerData = data;\n }\n}\n"]}
@@ -4,13 +4,12 @@ import { ComponentTypeEnum } from '../../interface';
4
4
  import { MarkLine as MarkLineComponent } from '@visactor/vrender-components';
5
5
  import { BaseMarker } from '../base-marker';
6
6
  import type { LayoutItem } from '../../../model/layout-item';
7
- export declare class MarkLine extends BaseMarker implements IMarkLine {
7
+ export declare class MarkLine extends BaseMarker<IMarkLineSpec & IMarkLineTheme> implements IMarkLine {
8
8
  static type: ComponentTypeEnum;
9
9
  type: ComponentTypeEnum;
10
10
  name: string;
11
11
  layoutZIndex: LayoutItem['layoutZIndex'];
12
12
  static speckey: string;
13
- protected _spec: IMarkLineSpec & IMarkLineTheme;
14
13
  protected _theme: IMarkLineTheme;
15
14
  protected _markerComponent: MarkLineComponent;
16
15
  static createComponent(spec: any, options: IComponentOption): MarkLine | MarkLine[];
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/marker/mark-line/mark-line.ts"],"names":[],"mappings":"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","file":"mark-line.js","sourcesContent":["import { DataView } from '@visactor/vdataset';\nimport type { IMarkLine, IMarkLineSpec, IMarkLineTheme } from './interface';\nimport { isNil, isArray } from '../../../util';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport type { IOptionAggrs } from '../../../data/transforms/aggregation';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerAggregation } from '../../../data/transforms/aggregation';\nimport { xLayout, yLayout, coordinateLayout } from '../utils';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { MarkLine as MarkLineComponent } from '@visactor/vrender-components';\nimport type { IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid } from '@visactor/vutils';\nimport { transformToGraphic } from '../../../util/style';\nimport { BaseMarker } from '../base-marker';\nimport type { INode } from '@visactor/vrender';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport type { IDataPos } from '../interface';\nimport type { IOptionRegr } from '../../../data/transforms/regression';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerRegression } from '../../../data/transforms/regression';\nimport { LayoutZIndex } from '../../../constant';\nimport type { IRegion } from '../../../region/interface';\n\nexport class MarkLine extends BaseMarker implements IMarkLine {\n static type = ComponentTypeEnum.markLine;\n type = ComponentTypeEnum.markLine;\n name: string = ComponentTypeEnum.markLine;\n\n layoutZIndex: LayoutItem['layoutZIndex'] = LayoutZIndex.MarkLine;\n\n static speckey = 'markLine';\n\n protected declare _spec: IMarkLineSpec & IMarkLineTheme;\n protected declare _theme: IMarkLineTheme;\n\n protected declare _markerComponent: MarkLineComponent;\n\n static createComponent(spec: any, options: IComponentOption) {\n const markLineSpec = spec.markLine || options.defaultSpec;\n if (isNil(markLineSpec)) {\n return undefined;\n }\n if (!isArray(markLineSpec) && markLineSpec.visible !== false) {\n return new MarkLine(markLineSpec, { ...options, specKey: MarkLine.speckey });\n }\n const markLines: MarkLine[] = [];\n markLineSpec.forEach((m: any, i: number) => {\n if (m.visible !== false) {\n markLines.push(new MarkLine(m, { ...options, specIndex: i, specKey: MarkLine.speckey }));\n }\n });\n return markLines;\n }\n\n protected _createMarkerComponent() {\n const markLine = new MarkLineComponent({\n zIndex: this.layoutZIndex,\n interactive: this._spec.interactive ?? false,\n points: [\n {\n x: 0,\n y: 0\n },\n {\n x: 0,\n y: 0\n }\n ],\n lineStyle: transformToGraphic(this._spec?.line.style),\n startSymbol: {\n ...this._spec?.startSymbol,\n visible: this._spec.startSymbol?.visible,\n style: transformToGraphic(this._spec.startSymbol?.style)\n },\n endSymbol: {\n ...this._spec?.endSymbol,\n visible: this._spec.endSymbol?.visible,\n style: transformToGraphic(this._spec.endSymbol?.style)\n },\n label: {\n ...this._spec.label,\n padding: this._spec.label?.labelBackground?.padding,\n shape: {\n ...transformToGraphic(this._spec.label?.shape),\n visible: this._spec.label?.shape?.visible ?? false\n },\n panel: {\n ...transformToGraphic(this._spec.label?.labelBackground.style),\n visible: this._spec.label?.labelBackground?.visible ?? true\n },\n textStyle: transformToGraphic(this._spec.label?.style)\n }\n });\n this._markerComponent = markLine;\n this._markerComponent.name = 'markLine';\n this._markerComponent.id = this._spec.id ?? `markLine-${this.id}`;\n this.getContainer().add(this._markerComponent as unknown as INode);\n }\n\n protected _markerLayout() {\n const spec = this._spec as any;\n const data = this._markerData;\n const startRelativeSeries = this._startRelativeSeries;\n const endRelativeSeries = this._endRelativeSeries;\n const relativeSeries = this._relativeSeries;\n\n // eslint-disable-next-line max-len\n const isXLayout =\n isValid(spec.x) || (isValid(spec.coordinates) && isValid(spec.process) && isValid(spec.process.x));\n // eslint-disable-next-line max-len\n const isYLayout =\n isValid(spec.y) || (isValid(spec.coordinates) && isValid(spec.process) && isValid(spec.process.y));\n const isCoordinateLayout =\n isValid(spec.coordinates) && (!isValid(spec.process) || ('process' in spec && 'xy' in spec.process));\n const isPositionLayout = isValid(spec.positions);\n const autoRange = spec?.autoRange ?? false;\n const isNeedClip = spec?.clip ?? false;\n\n let points: IPointLike[] = [];\n if (isXLayout) {\n points = xLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange)[0];\n } else if (isYLayout) {\n points = yLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange)[0];\n } else if (isCoordinateLayout) {\n points = coordinateLayout(data, relativeSeries, autoRange);\n } else if (isPositionLayout) {\n points = spec.positions;\n }\n\n const dataPoints = data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;\n let clipRange;\n if (isNeedClip) {\n const { minX, maxX, minY, maxY } = this._computeClipRange([\n startRelativeSeries.getRegion(),\n endRelativeSeries.getRegion(),\n relativeSeries.getRegion()\n ]);\n clipRange = {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n }\n\n this._markerComponent?.setAttributes({\n points: points,\n label: {\n ...this._markerComponent.attribute?.label,\n text: this._spec.label.formatMethod\n ? this._spec.label.formatMethod(dataPoints)\n : this._markerComponent.attribute?.label?.text\n },\n clipRange\n });\n }\n\n protected _initDataView(): void {\n const spec = this._spec;\n const relativeSeries = this._relativeSeries;\n const isXProcess = 'x' in spec;\n const isYProcess = 'y' in spec;\n const isCoordinateProcess = 'coordinates' in spec;\n\n if (!isXProcess && !isYProcess && !isCoordinateProcess) {\n return;\n }\n\n let options: IOptionAggrs | IOptionRegr;\n let processData: DataView;\n let needAgggr: boolean = false;\n let needRegr: boolean = false;\n\n registerDataSetInstanceTransform(this._option.dataSet, 'markerAggregation', markerAggregation);\n // eslint-disable-next-line no-undef\n registerDataSetInstanceTransform(this._option.dataSet, 'markerRegression', markerRegression);\n\n if (isXProcess) {\n options = [this._processSpecX(spec.x as unknown as IDataPos)];\n processData = relativeSeries.getViewData();\n needAgggr = true;\n } else if (isYProcess) {\n options = [this._processSpecY(spec.y as unknown as IDataPos)];\n processData = relativeSeries.getViewData();\n needAgggr = true;\n } else if (isCoordinateProcess) {\n options = this._processSpecCoo(spec);\n\n processData = new DataView(this._option.dataSet)\n .parse([relativeSeries.getViewData()], {\n type: 'dataview'\n })\n .transform({\n type: 'markerAggregation',\n options\n });\n if (spec.process && 'x' in spec.process) {\n options = [this._processSpecX(spec.process.x as unknown as IDataPos)];\n needAgggr = true;\n }\n if (spec.process && 'y' in spec.process) {\n options = [this._processSpecY(spec.process.y as unknown as IDataPos)];\n needAgggr = true;\n }\n if (spec.process && 'xy' in spec.process) {\n options = {\n fieldX: relativeSeries.getSpec().xField,\n fieldY: relativeSeries.getSpec().yField\n };\n needRegr = true;\n }\n }\n\n const data = new DataView(this._option.dataSet);\n data.parse([processData], {\n type: 'dataview'\n });\n if (needAgggr) {\n data.transform({\n type: 'markerAggregation',\n options\n });\n }\n if (needRegr) {\n data.transform({\n type: 'markerRegression',\n options\n });\n }\n\n data.target.on('change', () => {\n this._markerLayout();\n });\n this._markerData = data;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/marker/mark-line/mark-line.ts"],"names":[],"mappings":"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","file":"mark-line.js","sourcesContent":["import { DataView } from '@visactor/vdataset';\nimport type { IMarkLine, IMarkLineSpec, IMarkLineTheme } from './interface';\nimport { isNil, isArray } from '../../../util';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport type { IOptionAggrs } from '../../../data/transforms/aggregation';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerAggregation } from '../../../data/transforms/aggregation';\nimport { xLayout, yLayout, coordinateLayout } from '../utils';\nimport { registerDataSetInstanceTransform } from '../../../data/register';\nimport { MarkLine as MarkLineComponent } from '@visactor/vrender-components';\nimport type { IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid } from '@visactor/vutils';\nimport { transformToGraphic } from '../../../util/style';\nimport { BaseMarker } from '../base-marker';\nimport type { INode } from '@visactor/vrender';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport type { IDataPos } from '../interface';\nimport type { IOptionRegr } from '../../../data/transforms/regression';\n// eslint-disable-next-line no-duplicate-imports\nimport { markerRegression } from '../../../data/transforms/regression';\nimport { LayoutZIndex } from '../../../constant';\nimport type { IRegion } from '../../../region/interface';\n\nexport class MarkLine extends BaseMarker<IMarkLineSpec & IMarkLineTheme> implements IMarkLine {\n static type = ComponentTypeEnum.markLine;\n type = ComponentTypeEnum.markLine;\n name: string = ComponentTypeEnum.markLine;\n\n layoutZIndex: LayoutItem['layoutZIndex'] = LayoutZIndex.MarkLine;\n\n static speckey = 'markLine';\n\n protected declare _theme: IMarkLineTheme;\n\n protected declare _markerComponent: MarkLineComponent;\n\n static createComponent(spec: any, options: IComponentOption) {\n const markLineSpec = spec.markLine || options.defaultSpec;\n if (isNil(markLineSpec)) {\n return undefined;\n }\n if (!isArray(markLineSpec) && markLineSpec.visible !== false) {\n return new MarkLine(markLineSpec, { ...options, specKey: MarkLine.speckey });\n }\n const markLines: MarkLine[] = [];\n markLineSpec.forEach((m: any, i: number) => {\n if (m.visible !== false) {\n markLines.push(new MarkLine(m, { ...options, specIndex: i, specKey: MarkLine.speckey }));\n }\n });\n return markLines;\n }\n\n protected _createMarkerComponent() {\n const markLine = new MarkLineComponent({\n zIndex: this.layoutZIndex,\n interactive: this._spec.interactive ?? false,\n points: [\n {\n x: 0,\n y: 0\n },\n {\n x: 0,\n y: 0\n }\n ],\n lineStyle: transformToGraphic(this._spec?.line.style),\n startSymbol: {\n ...this._spec?.startSymbol,\n visible: this._spec.startSymbol?.visible,\n style: transformToGraphic(this._spec.startSymbol?.style)\n },\n endSymbol: {\n ...this._spec?.endSymbol,\n visible: this._spec.endSymbol?.visible,\n style: transformToGraphic(this._spec.endSymbol?.style)\n },\n label: {\n ...this._spec.label,\n padding: this._spec.label?.labelBackground?.padding,\n shape: {\n ...transformToGraphic(this._spec.label?.shape),\n visible: this._spec.label?.shape?.visible ?? false\n },\n panel: {\n ...transformToGraphic(this._spec.label?.labelBackground.style),\n visible: this._spec.label?.labelBackground?.visible ?? true\n },\n textStyle: transformToGraphic(this._spec.label?.style)\n }\n });\n this._markerComponent = markLine;\n this._markerComponent.name = 'markLine';\n this._markerComponent.id = this._spec.id ?? `markLine-${this.id}`;\n this.getContainer().add(this._markerComponent as unknown as INode);\n }\n\n protected _markerLayout() {\n const spec = this._spec as any;\n const data = this._markerData;\n const startRelativeSeries = this._startRelativeSeries;\n const endRelativeSeries = this._endRelativeSeries;\n const relativeSeries = this._relativeSeries;\n\n // eslint-disable-next-line max-len\n const isXLayout =\n isValid(spec.x) || (isValid(spec.coordinates) && isValid(spec.process) && isValid(spec.process.x));\n // eslint-disable-next-line max-len\n const isYLayout =\n isValid(spec.y) || (isValid(spec.coordinates) && isValid(spec.process) && isValid(spec.process.y));\n const isCoordinateLayout =\n isValid(spec.coordinates) && (!isValid(spec.process) || ('process' in spec && 'xy' in spec.process));\n const isPositionLayout = isValid(spec.positions);\n const autoRange = spec?.autoRange ?? false;\n const isNeedClip = spec?.clip ?? false;\n\n let points: IPointLike[] = [];\n if (isXLayout) {\n points = xLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange)[0];\n } else if (isYLayout) {\n points = yLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange)[0];\n } else if (isCoordinateLayout) {\n points = coordinateLayout(data, relativeSeries, autoRange);\n } else if (isPositionLayout) {\n points = spec.positions;\n }\n\n const dataPoints = data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;\n let clipRange;\n if (isNeedClip) {\n const { minX, maxX, minY, maxY } = this._computeClipRange([\n startRelativeSeries.getRegion(),\n endRelativeSeries.getRegion(),\n relativeSeries.getRegion()\n ]);\n clipRange = {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n }\n\n this._markerComponent?.setAttributes({\n points: points,\n label: {\n ...this._markerComponent.attribute?.label,\n text: this._spec.label.formatMethod\n ? this._spec.label.formatMethod(dataPoints)\n : this._markerComponent.attribute?.label?.text\n },\n clipRange\n });\n }\n\n protected _initDataView(): void {\n const spec = this._spec;\n const relativeSeries = this._relativeSeries;\n const isXProcess = 'x' in spec;\n const isYProcess = 'y' in spec;\n const isCoordinateProcess = 'coordinates' in spec;\n\n if (!isXProcess && !isYProcess && !isCoordinateProcess) {\n return;\n }\n\n let options: IOptionAggrs | IOptionRegr;\n let processData: DataView;\n let needAgggr: boolean = false;\n let needRegr: boolean = false;\n\n registerDataSetInstanceTransform(this._option.dataSet, 'markerAggregation', markerAggregation);\n // eslint-disable-next-line no-undef\n registerDataSetInstanceTransform(this._option.dataSet, 'markerRegression', markerRegression);\n\n if (isXProcess) {\n options = [this._processSpecX(spec.x as unknown as IDataPos)];\n processData = relativeSeries.getViewData();\n needAgggr = true;\n } else if (isYProcess) {\n options = [this._processSpecY(spec.y as unknown as IDataPos)];\n processData = relativeSeries.getViewData();\n needAgggr = true;\n } else if (isCoordinateProcess) {\n options = this._processSpecCoo(spec);\n\n processData = new DataView(this._option.dataSet)\n .parse([relativeSeries.getViewData()], {\n type: 'dataview'\n })\n .transform({\n type: 'markerAggregation',\n options\n });\n if (spec.process && 'x' in spec.process) {\n options = [this._processSpecX(spec.process.x as unknown as IDataPos)];\n needAgggr = true;\n }\n if (spec.process && 'y' in spec.process) {\n options = [this._processSpecY(spec.process.y as unknown as IDataPos)];\n needAgggr = true;\n }\n if (spec.process && 'xy' in spec.process) {\n options = {\n fieldX: relativeSeries.getSpec().xField,\n fieldY: relativeSeries.getSpec().yField\n };\n needRegr = true;\n }\n }\n\n const data = new DataView(this._option.dataSet);\n data.parse([processData], {\n type: 'dataview'\n });\n if (needAgggr) {\n data.transform({\n type: 'markerAggregation',\n options\n });\n }\n if (needRegr) {\n data.transform({\n type: 'markerRegression',\n options\n });\n }\n\n data.target.on('change', () => {\n this._markerLayout();\n });\n this._markerData = data;\n }\n}\n"]}
@@ -4,13 +4,12 @@ import { ComponentTypeEnum } from '../../interface';
4
4
  import { MarkPoint as MarkPointComponent } from '@visactor/vrender-components';
5
5
  import { BaseMarker } from '../base-marker';
6
6
  import type { LayoutItem } from '../../../model/layout-item';
7
- export declare class MarkPoint extends BaseMarker implements IMarkPoint {
7
+ export declare class MarkPoint extends BaseMarker<IMarkPointSpec & IMarkPointTheme> implements IMarkPoint {
8
8
  static type: ComponentTypeEnum;
9
9
  type: ComponentTypeEnum;
10
10
  name: string;
11
11
  layoutZIndex: LayoutItem['layoutZIndex'];
12
12
  static speckey: string;
13
- protected _spec: IMarkPointSpec & IMarkPointTheme;
14
13
  protected _theme: IMarkPointTheme;
15
14
  protected _markerComponent: MarkPointComponent;
16
15
  static createComponent(spec: any, options: IComponentOption): MarkPoint | MarkPoint[];