@visactor/vchart 0.0.1-alpha.2 → 1.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (896) hide show
  1. package/README.md +82 -1
  2. package/build/index.js +2680 -2068
  3. package/build/index.min.js +2 -2
  4. package/cjs/animation/utils.d.ts +2 -1
  5. package/cjs/animation/utils.js.map +1 -1
  6. package/cjs/chart/base-chart.js +2 -2
  7. package/cjs/chart/base-chart.js.map +1 -1
  8. package/cjs/chart/{boxplot/boxPlot.js → box-plot/box-plot.js} +1 -1
  9. package/cjs/chart/box-plot/box-plot.js.map +1 -0
  10. package/{esm/chart/boxplot → cjs/chart/box-plot}/index.d.ts +1 -1
  11. package/cjs/chart/{boxplot → box-plot}/index.js +1 -1
  12. package/cjs/chart/box-plot/index.js.map +1 -0
  13. package/cjs/chart/box-plot/interface.js.map +1 -0
  14. package/cjs/chart/index.d.ts +3 -1
  15. package/cjs/chart/index.js +2 -1
  16. package/cjs/chart/index.js.map +1 -1
  17. package/cjs/chart/treemap/treemap.js.map +1 -1
  18. package/cjs/compile/compilable-base.js +1 -1
  19. package/cjs/compile/compiler.d.ts +2 -2
  20. package/cjs/compile/compiler.js +24 -25
  21. package/cjs/compile/compiler.js.map +1 -1
  22. package/cjs/compile/grammar-item.js +1 -1
  23. package/cjs/compile/mark/interface.js.map +1 -1
  24. package/cjs/compile/util.js +1 -1
  25. package/cjs/component/axis/base-axis.d.ts +70 -1
  26. package/cjs/component/axis/base-axis.js +93 -4
  27. package/cjs/component/axis/base-axis.js.map +1 -1
  28. package/cjs/component/axis/cartesian/axis.d.ts +0 -1
  29. package/cjs/component/axis/cartesian/axis.js +3 -6
  30. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  31. package/cjs/component/axis/polar/axis.d.ts +0 -1
  32. package/cjs/component/axis/polar/axis.js +3 -6
  33. package/cjs/component/axis/polar/axis.js.map +1 -1
  34. package/cjs/component/axis/utils.d.ts +13 -70
  35. package/cjs/component/axis/utils.js +23 -109
  36. package/cjs/component/axis/utils.js.map +1 -1
  37. package/cjs/component/base/base-component.d.ts +0 -5
  38. package/cjs/component/base/base-component.js +8 -19
  39. package/cjs/component/base/base-component.js.map +1 -1
  40. package/cjs/component/base/util.d.ts +1 -1
  41. package/cjs/component/base/util.js +20 -9
  42. package/cjs/component/base/util.js.map +1 -1
  43. package/cjs/component/crosshair/base.d.ts +0 -1
  44. package/cjs/component/crosshair/base.js +1 -4
  45. package/cjs/component/crosshair/base.js.map +1 -1
  46. package/cjs/component/custom-mark/custom-mark.js +4 -1
  47. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  48. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  49. package/cjs/component/data-zoom/data-filter-base-component.js +2 -2
  50. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  51. package/cjs/component/index.js +1 -1
  52. package/cjs/component/interface/index.d.ts +1 -0
  53. package/cjs/component/interface/index.js +1 -1
  54. package/cjs/component/interface/index.js.map +1 -1
  55. package/cjs/component/interface/theme.d.ts +38 -0
  56. package/cjs/component/interface/theme.js +6 -0
  57. package/cjs/component/interface/theme.js.map +1 -0
  58. package/cjs/component/label/label.d.ts +0 -1
  59. package/cjs/component/label/label.js +12 -6
  60. package/cjs/component/label/label.js.map +1 -1
  61. package/cjs/component/legend/base-legend.js +5 -2
  62. package/cjs/component/legend/base-legend.js.map +1 -1
  63. package/cjs/component/legend/continuous/legend.d.ts +1 -1
  64. package/cjs/component/legend/continuous/legend.js +2 -2
  65. package/cjs/component/legend/continuous/legend.js.map +1 -1
  66. package/cjs/component/legend/discrete/legend.d.ts +1 -1
  67. package/cjs/component/legend/discrete/legend.js +2 -2
  68. package/cjs/component/legend/discrete/legend.js.map +1 -1
  69. package/cjs/component/legend/util.d.ts +4 -4
  70. package/cjs/component/map-label/component.js +2 -2
  71. package/cjs/component/map-label/component.js.map +1 -1
  72. package/cjs/component/map-label/interface.d.ts +6 -4
  73. package/cjs/component/map-label/interface.js.map +1 -1
  74. package/cjs/component/marker/utils.js +14 -9
  75. package/cjs/component/marker/utils.js.map +1 -1
  76. package/cjs/component/player/interface/theme.d.ts +2 -1
  77. package/cjs/component/player/interface/theme.js.map +1 -1
  78. package/cjs/component/player/player.d.ts +0 -1
  79. package/cjs/component/player/player.js +0 -3
  80. package/cjs/component/player/player.js.map +1 -1
  81. package/cjs/component/player/utils/transform.js.map +1 -1
  82. package/cjs/component/title/interface/theme.d.ts +4 -2
  83. package/cjs/component/title/interface/theme.js.map +1 -1
  84. package/cjs/component/title/title.d.ts +1 -1
  85. package/cjs/component/title/title.js +4 -6
  86. package/cjs/component/title/title.js.map +1 -1
  87. package/cjs/component/tooltip/handler/base.d.ts +5 -3
  88. package/cjs/component/tooltip/handler/base.js +9 -8
  89. package/cjs/component/tooltip/handler/base.js.map +1 -1
  90. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +4 -5
  91. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js +4 -4
  92. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  93. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +2 -4
  94. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +2 -2
  95. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  96. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +1 -1
  97. package/cjs/component/tooltip/tooltip.js +1 -1
  98. package/cjs/component/tooltip/tooltip.js.map +1 -1
  99. package/cjs/constant/box-plot.js +1 -2
  100. package/cjs/constant/label.js +2 -1
  101. package/cjs/core/factory.d.ts +1 -0
  102. package/cjs/core/factory.js +3 -0
  103. package/cjs/core/factory.js.map +1 -1
  104. package/cjs/core/instance-manager.d.ts +9 -0
  105. package/cjs/core/instance-manager.js +26 -0
  106. package/cjs/core/instance-manager.js.map +1 -0
  107. package/cjs/core/interface.js +1 -2
  108. package/cjs/core/vchart.d.ts +2 -6
  109. package/cjs/core/vchart.js +10 -23
  110. package/cjs/core/vchart.js.map +1 -1
  111. package/cjs/event/event.js +2 -1
  112. package/cjs/index.d.ts +1 -1
  113. package/cjs/index.js +1 -1
  114. package/cjs/index.js.map +1 -1
  115. package/cjs/mark/arc.d.ts +1 -1
  116. package/cjs/mark/arc.js +4 -3
  117. package/cjs/mark/arc.js.map +1 -1
  118. package/cjs/mark/area.d.ts +3 -2
  119. package/cjs/mark/area.js +8 -4
  120. package/cjs/mark/area.js.map +1 -1
  121. package/cjs/mark/base/base-mark.js +2 -1
  122. package/cjs/mark/base/base-mark.js.map +1 -1
  123. package/cjs/mark/base/index.d.ts +1 -2
  124. package/cjs/mark/base/index.js +1 -10
  125. package/cjs/mark/base/index.js.map +1 -1
  126. package/{esm/mark/boxPlot.d.ts → cjs/mark/box-plot.d.ts} +1 -1
  127. package/cjs/mark/{boxPlot.js → box-plot.js} +3 -3
  128. package/{esm/mark/boxPlot.js.map → cjs/mark/box-plot.js.map} +1 -1
  129. package/cjs/mark/component.d.ts +1 -1
  130. package/cjs/mark/component.js +2 -2
  131. package/cjs/mark/component.js.map +1 -1
  132. package/cjs/mark/line.d.ts +1 -1
  133. package/cjs/mark/line.js +2 -2
  134. package/cjs/mark/line.js.map +1 -1
  135. package/cjs/mark/linkPath.d.ts +1 -1
  136. package/cjs/mark/linkPath.js +4 -3
  137. package/cjs/mark/linkPath.js.map +1 -1
  138. package/cjs/mark/mark-set/index.d.ts +6 -5
  139. package/cjs/mark/mark-set/index.js +15 -12
  140. package/cjs/mark/mark-set/index.js.map +1 -1
  141. package/cjs/mark/path.d.ts +1 -1
  142. package/cjs/mark/path.js +2 -2
  143. package/cjs/mark/path.js.map +1 -1
  144. package/cjs/mark/polygon.d.ts +1 -1
  145. package/cjs/mark/polygon.js +3 -3
  146. package/cjs/mark/polygon.js.map +1 -1
  147. package/cjs/mark/progress-arc.js +1 -1
  148. package/cjs/mark/rect.d.ts +1 -1
  149. package/cjs/mark/rect.js +6 -5
  150. package/cjs/mark/rect.js.map +1 -1
  151. package/cjs/mark/rule.d.ts +1 -1
  152. package/cjs/mark/rule.js +3 -3
  153. package/cjs/mark/rule.js.map +1 -1
  154. package/cjs/mark/symbol.d.ts +1 -1
  155. package/cjs/mark/symbol.js +5 -4
  156. package/cjs/mark/symbol.js.map +1 -1
  157. package/cjs/mark/text.d.ts +1 -1
  158. package/cjs/mark/text.js +5 -4
  159. package/cjs/mark/text.js.map +1 -1
  160. package/cjs/model/base-model.d.ts +12 -5
  161. package/cjs/model/base-model.js +52 -29
  162. package/cjs/model/base-model.js.map +1 -1
  163. package/cjs/model/interface.d.ts +8 -2
  164. package/cjs/model/interface.js.map +1 -1
  165. package/cjs/model/layout-item.js +20 -18
  166. package/cjs/model/layout-item.js.map +1 -1
  167. package/cjs/region/region.d.ts +1 -4
  168. package/cjs/region/region.js +16 -13
  169. package/cjs/region/region.js.map +1 -1
  170. package/cjs/scale/color-ordinal-scale.d.ts +8 -0
  171. package/cjs/scale/color-ordinal-scale.js +24 -0
  172. package/cjs/scale/color-ordinal-scale.js.map +1 -0
  173. package/cjs/scale/global-scale.js +2 -1
  174. package/cjs/scale/global-scale.js.map +1 -1
  175. package/cjs/series/area/area.d.ts +2 -0
  176. package/cjs/series/area/area.js +15 -9
  177. package/cjs/series/area/area.js.map +1 -1
  178. package/cjs/series/area/interface.d.ts +5 -5
  179. package/cjs/series/area/interface.js.map +1 -1
  180. package/cjs/series/bar/bar.d.ts +6 -0
  181. package/cjs/series/bar/bar.js +24 -8
  182. package/cjs/series/bar/bar.js.map +1 -1
  183. package/cjs/series/bar/interface.d.ts +5 -4
  184. package/cjs/series/bar/interface.js.map +1 -1
  185. package/cjs/series/base/base-series.d.ts +10 -11
  186. package/cjs/series/base/base-series.js +53 -31
  187. package/cjs/series/base/base-series.js.map +1 -1
  188. package/{esm/series/box-plot/boxPlot.d.ts → cjs/series/box-plot/box-plot.d.ts} +2 -0
  189. package/cjs/series/box-plot/{boxPlot.js → box-plot.js} +16 -6
  190. package/cjs/series/box-plot/box-plot.js.map +1 -0
  191. package/cjs/series/box-plot/interface.d.ts +3 -2
  192. package/cjs/series/box-plot/interface.js.map +1 -1
  193. package/cjs/series/box-plot/tooltip-helper.js.map +1 -1
  194. package/cjs/series/cartesian/cartesian.d.ts +1 -1
  195. package/cjs/series/circle-packing/circle-packing.d.ts +2 -0
  196. package/cjs/series/circle-packing/circle-packing.js +13 -8
  197. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  198. package/cjs/series/circle-packing/interface.d.ts +5 -4
  199. package/cjs/series/circle-packing/interface.js.map +1 -1
  200. package/cjs/series/dot/dot.d.ts +6 -8
  201. package/cjs/series/dot/dot.js +43 -17
  202. package/cjs/series/dot/dot.js.map +1 -1
  203. package/cjs/series/dot/interface.d.ts +10 -10
  204. package/cjs/series/dot/interface.js.map +1 -1
  205. package/cjs/series/funnel/funnel.d.ts +12 -2
  206. package/cjs/series/funnel/funnel.js +84 -23
  207. package/cjs/series/funnel/funnel.js.map +1 -1
  208. package/cjs/series/funnel/interface.d.ts +16 -15
  209. package/cjs/series/funnel/interface.js.map +1 -1
  210. package/cjs/series/gauge/gauge-pointer.d.ts +2 -0
  211. package/cjs/series/gauge/gauge-pointer.js +22 -6
  212. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  213. package/cjs/series/gauge/gauge.d.ts +3 -2
  214. package/cjs/series/gauge/gauge.js +26 -17
  215. package/cjs/series/gauge/gauge.js.map +1 -1
  216. package/cjs/series/gauge/interface.d.ts +12 -11
  217. package/cjs/series/gauge/interface.js.map +1 -1
  218. package/cjs/series/heatmap/heatmap.d.ts +3 -1
  219. package/cjs/series/heatmap/heatmap.js +18 -9
  220. package/cjs/series/heatmap/heatmap.js.map +1 -1
  221. package/cjs/series/heatmap/interface.d.ts +6 -5
  222. package/cjs/series/heatmap/interface.js.map +1 -1
  223. package/cjs/series/interface/common.d.ts +56 -1
  224. package/cjs/series/interface/common.js +24 -1
  225. package/cjs/series/interface/common.js.map +1 -1
  226. package/cjs/series/interface/series.d.ts +2 -1
  227. package/cjs/series/interface/series.js.map +1 -1
  228. package/cjs/series/line/line.d.ts +2 -0
  229. package/cjs/series/line/line.js +7 -5
  230. package/cjs/series/line/line.js.map +1 -1
  231. package/cjs/series/link/interface.d.ts +4 -4
  232. package/cjs/series/link/interface.js.map +1 -1
  233. package/cjs/series/link/link.d.ts +4 -7
  234. package/cjs/series/link/link.js +20 -14
  235. package/cjs/series/link/link.js.map +1 -1
  236. package/cjs/series/map/map.d.ts +2 -0
  237. package/cjs/series/map/map.js +13 -6
  238. package/cjs/series/map/map.js.map +1 -1
  239. package/cjs/series/mixin/line-mixin.d.ts +4 -3
  240. package/cjs/series/mixin/line-mixin.js +15 -7
  241. package/cjs/series/mixin/line-mixin.js.map +1 -1
  242. package/cjs/series/pie/interface.d.ts +7 -6
  243. package/cjs/series/pie/interface.js.map +1 -1
  244. package/cjs/series/pie/pie.d.ts +8 -3
  245. package/cjs/series/pie/pie.js +61 -33
  246. package/cjs/series/pie/pie.js.map +1 -1
  247. package/cjs/series/progress/circular/circular.d.ts +2 -0
  248. package/cjs/series/progress/circular/circular.js +16 -9
  249. package/cjs/series/progress/circular/circular.js.map +1 -1
  250. package/cjs/series/progress/circular/interface.d.ts +5 -4
  251. package/cjs/series/progress/circular/interface.js.map +1 -1
  252. package/cjs/series/progress/linear/interface.d.ts +6 -5
  253. package/cjs/series/progress/linear/interface.js.map +1 -1
  254. package/cjs/series/progress/linear/linear.d.ts +2 -0
  255. package/cjs/series/progress/linear/linear.js +31 -21
  256. package/cjs/series/progress/linear/linear.js.map +1 -1
  257. package/cjs/series/radar/interface.d.ts +5 -4
  258. package/cjs/series/radar/interface.js.map +1 -1
  259. package/cjs/series/radar/radar.d.ts +2 -0
  260. package/cjs/series/radar/radar.js +9 -4
  261. package/cjs/series/radar/radar.js.map +1 -1
  262. package/cjs/series/range-area/range-area.d.ts +2 -0
  263. package/cjs/series/range-area/range-area.js +4 -3
  264. package/cjs/series/range-area/range-area.js.map +1 -1
  265. package/cjs/series/range-column/interface.d.ts +9 -8
  266. package/cjs/series/range-column/interface.js.map +1 -1
  267. package/cjs/series/range-column/rangeColumn.d.ts +2 -0
  268. package/cjs/series/range-column/rangeColumn.js +28 -19
  269. package/cjs/series/range-column/rangeColumn.js.map +1 -1
  270. package/cjs/series/rose/interface.d.ts +3 -2
  271. package/cjs/series/rose/interface.js.map +1 -1
  272. package/cjs/series/rose/rose.d.ts +2 -0
  273. package/cjs/series/rose/rose.js +14 -13
  274. package/cjs/series/rose/rose.js.map +1 -1
  275. package/cjs/series/sankey/animation.js.map +1 -1
  276. package/cjs/series/sankey/interface.d.ts +7 -6
  277. package/cjs/series/sankey/interface.js.map +1 -1
  278. package/cjs/series/sankey/sankey.d.ts +2 -0
  279. package/cjs/series/sankey/sankey.js +25 -22
  280. package/cjs/series/sankey/sankey.js.map +1 -1
  281. package/cjs/series/scatter/interface.d.ts +6 -5
  282. package/cjs/series/scatter/interface.js.map +1 -1
  283. package/cjs/series/scatter/scatter.d.ts +2 -0
  284. package/cjs/series/scatter/scatter.js +15 -10
  285. package/cjs/series/scatter/scatter.js.map +1 -1
  286. package/cjs/series/sunburst/interface.d.ts +5 -4
  287. package/cjs/series/sunburst/interface.js.map +1 -1
  288. package/cjs/series/sunburst/sunburst.d.ts +3 -1
  289. package/cjs/series/sunburst/sunburst.js +9 -4
  290. package/cjs/series/sunburst/sunburst.js.map +1 -1
  291. package/cjs/series/treemap/interface.d.ts +9 -8
  292. package/cjs/series/treemap/interface.js.map +1 -1
  293. package/cjs/series/treemap/treemap.d.ts +2 -0
  294. package/cjs/series/treemap/treemap.js +19 -6
  295. package/cjs/series/treemap/treemap.js.map +1 -1
  296. package/cjs/series/waterfall/interface.d.ts +6 -5
  297. package/cjs/series/waterfall/interface.js.map +1 -1
  298. package/cjs/series/waterfall/waterfall.d.ts +2 -0
  299. package/cjs/series/waterfall/waterfall.js +15 -5
  300. package/cjs/series/waterfall/waterfall.js.map +1 -1
  301. package/cjs/series/word-cloud/interface.d.ts +7 -6
  302. package/cjs/series/word-cloud/interface.js.map +1 -1
  303. package/cjs/series/word-cloud/word-cloud.d.ts +4 -3
  304. package/cjs/series/word-cloud/word-cloud.js +22 -11
  305. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  306. package/cjs/theme/buildin-theme/config.d.ts +1 -4
  307. package/cjs/theme/buildin-theme/config.js +2 -18
  308. package/cjs/theme/buildin-theme/config.js.map +1 -1
  309. package/cjs/theme/buildin-theme/dark.js.map +1 -1
  310. package/cjs/theme/buildin-theme/light/color-scheme.js +14 -1
  311. package/cjs/theme/buildin-theme/light/color-scheme.js.map +1 -1
  312. package/cjs/theme/buildin-theme/light/component/axis/band-axis.d.ts +2 -0
  313. package/cjs/theme/buildin-theme/light/component/axis/band-axis.js +22 -0
  314. package/cjs/theme/buildin-theme/light/component/axis/band-axis.js.map +1 -0
  315. package/cjs/theme/buildin-theme/light/component/{cartesian-axis.d.ts → axis/cartesian-axis.d.ts} +1 -1
  316. package/cjs/theme/buildin-theme/light/component/{cartesian-axis.js → axis/cartesian-axis.js} +7 -9
  317. package/cjs/theme/buildin-theme/light/component/axis/cartesian-axis.js.map +1 -0
  318. package/cjs/theme/buildin-theme/light/component/axis/common-axis.d.ts +2 -0
  319. package/cjs/theme/buildin-theme/light/component/{common-axis.js → axis/common-axis.js} +32 -14
  320. package/cjs/theme/buildin-theme/light/component/axis/common-axis.js.map +1 -0
  321. package/cjs/theme/buildin-theme/light/component/axis/linear-axis.d.ts +2 -0
  322. package/cjs/theme/buildin-theme/light/component/axis/linear-axis.js +22 -0
  323. package/cjs/theme/buildin-theme/light/component/axis/linear-axis.js.map +1 -0
  324. package/cjs/theme/buildin-theme/light/component/{polar-axis.d.ts → axis/polar-axis.d.ts} +1 -1
  325. package/cjs/theme/buildin-theme/light/component/axis/polar-axis.js +25 -0
  326. package/cjs/theme/buildin-theme/light/component/axis/polar-axis.js.map +1 -0
  327. package/cjs/theme/buildin-theme/light/component/crosshair.js +9 -5
  328. package/cjs/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  329. package/cjs/theme/buildin-theme/light/component/index.d.ts +2 -0
  330. package/cjs/theme/buildin-theme/light/component/index.js +32 -0
  331. package/cjs/theme/buildin-theme/light/component/index.js.map +1 -0
  332. package/cjs/theme/buildin-theme/light/component/legend/color-legend.d.ts +2 -0
  333. package/cjs/theme/buildin-theme/light/component/{color-legend.js → legend/color-legend.js} +3 -3
  334. package/cjs/theme/buildin-theme/light/component/legend/color-legend.js.map +1 -0
  335. package/cjs/theme/buildin-theme/light/component/legend/continuous.d.ts +2 -0
  336. package/cjs/theme/buildin-theme/light/component/legend/continuous.js +60 -0
  337. package/cjs/theme/buildin-theme/light/component/legend/continuous.js.map +1 -0
  338. package/cjs/theme/buildin-theme/light/component/legend/discrete-legend.d.ts +2 -0
  339. package/cjs/theme/buildin-theme/light/component/{discrete-legend.js → legend/discrete-legend.js} +17 -6
  340. package/cjs/theme/buildin-theme/light/component/legend/discrete-legend.js.map +1 -0
  341. package/cjs/theme/buildin-theme/light/component/legend/size-legend.d.ts +2 -0
  342. package/cjs/theme/buildin-theme/light/component/{size-legend.js → legend/size-legend.js} +3 -3
  343. package/cjs/theme/buildin-theme/light/component/legend/size-legend.js.map +1 -0
  344. package/cjs/theme/buildin-theme/light/component/map-label.d.ts +2 -0
  345. package/cjs/{component/map-label/config.js → theme/buildin-theme/light/component/map-label.js} +8 -8
  346. package/cjs/theme/buildin-theme/light/component/map-label.js.map +1 -0
  347. package/cjs/theme/buildin-theme/light/component/player.js +20 -11
  348. package/cjs/theme/buildin-theme/light/component/player.js.map +1 -1
  349. package/cjs/theme/buildin-theme/light/component/title.js +19 -3
  350. package/cjs/theme/buildin-theme/light/component/title.js.map +1 -1
  351. package/cjs/theme/buildin-theme/light/component/tooltip.js +7 -3
  352. package/cjs/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  353. package/cjs/theme/buildin-theme/light/constants.d.ts +2 -0
  354. package/cjs/theme/buildin-theme/light/constants.js +16 -0
  355. package/cjs/theme/buildin-theme/light/constants.js.map +1 -0
  356. package/cjs/theme/buildin-theme/light/index.js +5 -20
  357. package/cjs/theme/buildin-theme/light/index.js.map +1 -1
  358. package/cjs/theme/buildin-theme/light/mark.d.ts +3 -0
  359. package/cjs/theme/buildin-theme/light/mark.js +72 -0
  360. package/cjs/theme/buildin-theme/light/mark.js.map +1 -0
  361. package/cjs/theme/buildin-theme/light/series/area.js +2 -12
  362. package/cjs/theme/buildin-theme/light/series/area.js.map +1 -1
  363. package/cjs/theme/buildin-theme/light/series/bar.js +2 -2
  364. package/cjs/theme/buildin-theme/light/series/bar.js.map +1 -1
  365. package/cjs/theme/buildin-theme/light/series/bar3d.js +2 -2
  366. package/cjs/theme/buildin-theme/light/series/bar3d.js.map +1 -1
  367. package/cjs/theme/buildin-theme/light/series/box-plot.d.ts +2 -0
  368. package/cjs/theme/buildin-theme/light/series/box-plot.js +12 -0
  369. package/cjs/theme/buildin-theme/light/series/box-plot.js.map +1 -0
  370. package/cjs/theme/buildin-theme/light/series/circular-progress.js +11 -1
  371. package/cjs/theme/buildin-theme/light/series/circular-progress.js.map +1 -1
  372. package/cjs/theme/buildin-theme/light/series/funnel.js +8 -5
  373. package/cjs/theme/buildin-theme/light/series/funnel.js.map +1 -1
  374. package/cjs/theme/buildin-theme/light/series/funnel3d.js +9 -6
  375. package/cjs/theme/buildin-theme/light/series/funnel3d.js.map +1 -1
  376. package/cjs/theme/buildin-theme/light/series/gauge.js +6 -1
  377. package/cjs/theme/buildin-theme/light/series/gauge.js.map +1 -1
  378. package/cjs/theme/buildin-theme/light/series/index.js +5 -2
  379. package/cjs/theme/buildin-theme/light/series/index.js.map +1 -1
  380. package/cjs/theme/buildin-theme/light/series/line.js +2 -7
  381. package/cjs/theme/buildin-theme/light/series/line.js.map +1 -1
  382. package/cjs/theme/buildin-theme/light/series/linear-progress.js +5 -0
  383. package/cjs/theme/buildin-theme/light/series/linear-progress.js.map +1 -1
  384. package/cjs/theme/buildin-theme/light/series/map.js +8 -4
  385. package/cjs/theme/buildin-theme/light/series/map.js.map +1 -1
  386. package/cjs/theme/buildin-theme/light/series/pie.js +9 -2
  387. package/cjs/theme/buildin-theme/light/series/pie.js.map +1 -1
  388. package/cjs/theme/buildin-theme/light/series/pie3d.js +4 -3
  389. package/cjs/theme/buildin-theme/light/series/pie3d.js.map +1 -1
  390. package/cjs/theme/buildin-theme/light/series/radar.js +2 -12
  391. package/cjs/theme/buildin-theme/light/series/radar.js.map +1 -1
  392. package/cjs/theme/buildin-theme/light/series/rangeColumn.js +2 -2
  393. package/cjs/theme/buildin-theme/light/series/rangeColumn.js.map +1 -1
  394. package/cjs/theme/buildin-theme/light/series/rose.d.ts +2 -0
  395. package/cjs/theme/buildin-theme/light/series/rose.js +20 -0
  396. package/cjs/theme/buildin-theme/light/series/rose.js.map +1 -0
  397. package/cjs/theme/buildin-theme/light/series/sankey.d.ts +2 -0
  398. package/cjs/theme/buildin-theme/light/series/sankey.js +14 -0
  399. package/cjs/theme/buildin-theme/light/series/sankey.js.map +1 -0
  400. package/cjs/theme/buildin-theme/light/series/scatter.js +10 -4
  401. package/cjs/theme/buildin-theme/light/series/scatter.js.map +1 -1
  402. package/cjs/theme/buildin-theme/light/series/treemap.js +4 -4
  403. package/cjs/theme/buildin-theme/light/series/treemap.js.map +1 -1
  404. package/cjs/theme/buildin-theme/light/series/waterfall.js +3 -3
  405. package/cjs/theme/buildin-theme/light/series/waterfall.js.map +1 -1
  406. package/cjs/theme/buildin-theme/light/series/word-cloud3d.js +1 -1
  407. package/cjs/theme/buildin-theme/light/series/word-cloud3d.js.map +1 -1
  408. package/cjs/theme/color-scheme/interface.d.ts +16 -8
  409. package/cjs/theme/color-scheme/interface.js.map +1 -1
  410. package/cjs/theme/color-scheme/util.d.ts +6 -3
  411. package/cjs/theme/color-scheme/util.js +39 -10
  412. package/cjs/theme/color-scheme/util.js.map +1 -1
  413. package/cjs/theme/interface.d.ts +22 -38
  414. package/cjs/theme/interface.js.map +1 -1
  415. package/cjs/theme/theme-manager.d.ts +1 -0
  416. package/cjs/theme/theme-manager.js +5 -2
  417. package/cjs/theme/theme-manager.js.map +1 -1
  418. package/cjs/typings/spec/chart.d.ts +1 -1
  419. package/cjs/typings/spec/chart.js.map +1 -1
  420. package/cjs/typings/visual.d.ts +13 -12
  421. package/cjs/typings/visual.js.map +1 -1
  422. package/cjs/util/color.d.ts +0 -3
  423. package/cjs/util/color.js +2 -12
  424. package/cjs/util/color.js.map +1 -1
  425. package/cjs/util/scale.d.ts +12 -1
  426. package/cjs/util/scale.js +4 -2
  427. package/cjs/util/scale.js.map +1 -1
  428. package/cjs/vchart-all.js +4 -4
  429. package/cjs/vchart-all.js.map +1 -1
  430. package/esm/animation/utils.d.ts +2 -1
  431. package/esm/animation/utils.js.map +1 -1
  432. package/esm/chart/base-chart.js +3 -3
  433. package/esm/chart/base-chart.js.map +1 -1
  434. package/esm/chart/{boxplot/boxPlot.js → box-plot/box-plot.js} +1 -1
  435. package/esm/chart/box-plot/box-plot.js.map +1 -0
  436. package/{cjs/chart/boxplot → esm/chart/box-plot}/index.d.ts +1 -1
  437. package/esm/chart/{boxplot → box-plot}/index.js +1 -1
  438. package/esm/chart/box-plot/index.js.map +1 -0
  439. package/esm/chart/box-plot/interface.js.map +1 -0
  440. package/esm/chart/index.d.ts +3 -1
  441. package/esm/chart/index.js +5 -1
  442. package/esm/chart/index.js.map +1 -1
  443. package/esm/chart/treemap/treemap.js.map +1 -1
  444. package/esm/compile/compilable-base.js +1 -1
  445. package/esm/compile/compiler.d.ts +2 -2
  446. package/esm/compile/compiler.js +24 -25
  447. package/esm/compile/compiler.js.map +1 -1
  448. package/esm/compile/grammar-item.js +1 -1
  449. package/esm/compile/mark/interface.js.map +1 -1
  450. package/esm/compile/util.js +1 -1
  451. package/esm/component/axis/base-axis.d.ts +70 -1
  452. package/esm/component/axis/base-axis.js +98 -4
  453. package/esm/component/axis/base-axis.js.map +1 -1
  454. package/esm/component/axis/cartesian/axis.d.ts +0 -1
  455. package/esm/component/axis/cartesian/axis.js +4 -7
  456. package/esm/component/axis/cartesian/axis.js.map +1 -1
  457. package/esm/component/axis/polar/axis.d.ts +0 -1
  458. package/esm/component/axis/polar/axis.js +4 -7
  459. package/esm/component/axis/polar/axis.js.map +1 -1
  460. package/esm/component/axis/utils.d.ts +13 -70
  461. package/esm/component/axis/utils.js +12 -99
  462. package/esm/component/axis/utils.js.map +1 -1
  463. package/esm/component/base/base-component.d.ts +0 -5
  464. package/esm/component/base/base-component.js +7 -20
  465. package/esm/component/base/base-component.js.map +1 -1
  466. package/esm/component/base/util.d.ts +1 -1
  467. package/esm/component/base/util.js +18 -9
  468. package/esm/component/base/util.js.map +1 -1
  469. package/esm/component/crosshair/base.d.ts +0 -1
  470. package/esm/component/crosshair/base.js +1 -4
  471. package/esm/component/crosshair/base.js.map +1 -1
  472. package/esm/component/custom-mark/custom-mark.js +4 -1
  473. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  474. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  475. package/esm/component/data-zoom/data-filter-base-component.js +2 -2
  476. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  477. package/esm/component/index.js +1 -1
  478. package/esm/component/interface/index.d.ts +1 -0
  479. package/esm/component/interface/index.js +2 -0
  480. package/esm/component/interface/index.js.map +1 -1
  481. package/esm/component/interface/theme.d.ts +38 -0
  482. package/esm/component/interface/theme.js +2 -0
  483. package/esm/component/interface/theme.js.map +1 -0
  484. package/esm/component/label/label.d.ts +0 -1
  485. package/esm/component/label/label.js +12 -6
  486. package/esm/component/label/label.js.map +1 -1
  487. package/esm/component/legend/base-legend.js +5 -2
  488. package/esm/component/legend/base-legend.js.map +1 -1
  489. package/esm/component/legend/continuous/legend.d.ts +1 -1
  490. package/esm/component/legend/continuous/legend.js +2 -2
  491. package/esm/component/legend/continuous/legend.js.map +1 -1
  492. package/esm/component/legend/discrete/legend.d.ts +1 -1
  493. package/esm/component/legend/discrete/legend.js +2 -2
  494. package/esm/component/legend/discrete/legend.js.map +1 -1
  495. package/esm/component/legend/util.d.ts +4 -4
  496. package/esm/component/map-label/component.js +1 -5
  497. package/esm/component/map-label/component.js.map +1 -1
  498. package/esm/component/map-label/interface.d.ts +6 -4
  499. package/esm/component/map-label/interface.js.map +1 -1
  500. package/esm/component/marker/utils.js +14 -9
  501. package/esm/component/marker/utils.js.map +1 -1
  502. package/esm/component/player/interface/theme.d.ts +2 -1
  503. package/esm/component/player/interface/theme.js.map +1 -1
  504. package/esm/component/player/player.d.ts +0 -1
  505. package/esm/component/player/player.js +0 -3
  506. package/esm/component/player/player.js.map +1 -1
  507. package/esm/component/player/utils/transform.js.map +1 -1
  508. package/esm/component/title/interface/theme.d.ts +4 -2
  509. package/esm/component/title/interface/theme.js.map +1 -1
  510. package/esm/component/title/title.d.ts +1 -1
  511. package/esm/component/title/title.js +3 -6
  512. package/esm/component/title/title.js.map +1 -1
  513. package/esm/component/tooltip/handler/base.d.ts +5 -3
  514. package/esm/component/tooltip/handler/base.js +9 -8
  515. package/esm/component/tooltip/handler/base.js.map +1 -1
  516. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +4 -5
  517. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js +6 -6
  518. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  519. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +2 -4
  520. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +2 -3
  521. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  522. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +1 -1
  523. package/esm/component/tooltip/tooltip.js +1 -1
  524. package/esm/component/tooltip/tooltip.js.map +1 -1
  525. package/esm/constant/box-plot.js +1 -2
  526. package/esm/constant/label.js +2 -1
  527. package/esm/core/factory.d.ts +1 -0
  528. package/esm/core/factory.js +3 -0
  529. package/esm/core/factory.js.map +1 -1
  530. package/esm/core/instance-manager.d.ts +9 -0
  531. package/esm/core/instance-manager.js +20 -0
  532. package/esm/core/instance-manager.js.map +1 -0
  533. package/esm/core/interface.js +1 -2
  534. package/esm/core/vchart.d.ts +2 -6
  535. package/esm/core/vchart.js +10 -22
  536. package/esm/core/vchart.js.map +1 -1
  537. package/esm/event/event.js +2 -1
  538. package/esm/index.d.ts +1 -1
  539. package/esm/index.js +1 -1
  540. package/esm/index.js.map +1 -1
  541. package/esm/mark/arc.d.ts +1 -1
  542. package/esm/mark/arc.js +3 -2
  543. package/esm/mark/arc.js.map +1 -1
  544. package/esm/mark/area.d.ts +3 -2
  545. package/esm/mark/area.js +7 -3
  546. package/esm/mark/area.js.map +1 -1
  547. package/esm/mark/base/base-mark.js +4 -3
  548. package/esm/mark/base/base-mark.js.map +1 -1
  549. package/esm/mark/base/index.d.ts +1 -2
  550. package/esm/mark/base/index.js +1 -3
  551. package/esm/mark/base/index.js.map +1 -1
  552. package/{cjs/mark/boxPlot.d.ts → esm/mark/box-plot.d.ts} +1 -1
  553. package/esm/mark/{boxPlot.js → box-plot.js} +2 -2
  554. package/esm/mark/box-plot.js.map +1 -0
  555. package/esm/mark/component.d.ts +1 -1
  556. package/esm/mark/component.js +1 -1
  557. package/esm/mark/component.js.map +1 -1
  558. package/esm/mark/line.d.ts +1 -1
  559. package/esm/mark/line.js +1 -1
  560. package/esm/mark/line.js.map +1 -1
  561. package/esm/mark/linkPath.d.ts +1 -1
  562. package/esm/mark/linkPath.js +3 -2
  563. package/esm/mark/linkPath.js.map +1 -1
  564. package/esm/mark/mark-set/index.d.ts +6 -5
  565. package/esm/mark/mark-set/index.js +16 -13
  566. package/esm/mark/mark-set/index.js.map +1 -1
  567. package/esm/mark/path.d.ts +1 -1
  568. package/esm/mark/path.js +1 -1
  569. package/esm/mark/path.js.map +1 -1
  570. package/esm/mark/polygon.d.ts +1 -1
  571. package/esm/mark/polygon.js +2 -2
  572. package/esm/mark/polygon.js.map +1 -1
  573. package/esm/mark/progress-arc.js +1 -1
  574. package/esm/mark/rect.d.ts +1 -1
  575. package/esm/mark/rect.js +4 -3
  576. package/esm/mark/rect.js.map +1 -1
  577. package/esm/mark/rule.d.ts +1 -1
  578. package/esm/mark/rule.js +2 -2
  579. package/esm/mark/rule.js.map +1 -1
  580. package/esm/mark/symbol.d.ts +1 -1
  581. package/esm/mark/symbol.js +4 -3
  582. package/esm/mark/symbol.js.map +1 -1
  583. package/esm/mark/text.d.ts +1 -1
  584. package/esm/mark/text.js +4 -3
  585. package/esm/mark/text.js.map +1 -1
  586. package/esm/model/base-model.d.ts +12 -5
  587. package/esm/model/base-model.js +50 -29
  588. package/esm/model/base-model.js.map +1 -1
  589. package/esm/model/interface.d.ts +8 -2
  590. package/esm/model/interface.js.map +1 -1
  591. package/esm/model/layout-item.js +19 -17
  592. package/esm/model/layout-item.js.map +1 -1
  593. package/esm/region/region.d.ts +1 -4
  594. package/esm/region/region.js +15 -13
  595. package/esm/region/region.js.map +1 -1
  596. package/esm/scale/color-ordinal-scale.d.ts +8 -0
  597. package/esm/scale/color-ordinal-scale.js +18 -0
  598. package/esm/scale/color-ordinal-scale.js.map +1 -0
  599. package/esm/scale/global-scale.js +3 -2
  600. package/esm/scale/global-scale.js.map +1 -1
  601. package/esm/series/area/area.d.ts +2 -0
  602. package/esm/series/area/area.js +15 -6
  603. package/esm/series/area/area.js.map +1 -1
  604. package/esm/series/area/interface.d.ts +5 -5
  605. package/esm/series/area/interface.js.map +1 -1
  606. package/esm/series/bar/bar.d.ts +6 -0
  607. package/esm/series/bar/bar.js +25 -7
  608. package/esm/series/bar/bar.js.map +1 -1
  609. package/esm/series/bar/interface.d.ts +5 -4
  610. package/esm/series/bar/interface.js.map +1 -1
  611. package/esm/series/base/base-series.d.ts +10 -11
  612. package/esm/series/base/base-series.js +59 -30
  613. package/esm/series/base/base-series.js.map +1 -1
  614. package/{cjs/series/box-plot/boxPlot.d.ts → esm/series/box-plot/box-plot.d.ts} +2 -0
  615. package/esm/series/box-plot/{boxPlot.js → box-plot.js} +17 -6
  616. package/esm/series/box-plot/box-plot.js.map +1 -0
  617. package/esm/series/box-plot/interface.d.ts +3 -2
  618. package/esm/series/box-plot/interface.js.map +1 -1
  619. package/esm/series/box-plot/tooltip-helper.js.map +1 -1
  620. package/esm/series/cartesian/cartesian.d.ts +1 -1
  621. package/esm/series/circle-packing/circle-packing.d.ts +2 -0
  622. package/esm/series/circle-packing/circle-packing.js +12 -3
  623. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  624. package/esm/series/circle-packing/interface.d.ts +5 -4
  625. package/esm/series/circle-packing/interface.js.map +1 -1
  626. package/esm/series/dot/dot.d.ts +6 -8
  627. package/esm/series/dot/dot.js +47 -16
  628. package/esm/series/dot/dot.js.map +1 -1
  629. package/esm/series/dot/interface.d.ts +10 -10
  630. package/esm/series/dot/interface.js.map +1 -1
  631. package/esm/series/funnel/funnel.d.ts +12 -2
  632. package/esm/series/funnel/funnel.js +81 -22
  633. package/esm/series/funnel/funnel.js.map +1 -1
  634. package/esm/series/funnel/interface.d.ts +16 -15
  635. package/esm/series/funnel/interface.js.map +1 -1
  636. package/esm/series/gauge/gauge-pointer.d.ts +2 -0
  637. package/esm/series/gauge/gauge-pointer.js +23 -6
  638. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  639. package/esm/series/gauge/gauge.d.ts +3 -2
  640. package/esm/series/gauge/gauge.js +32 -18
  641. package/esm/series/gauge/gauge.js.map +1 -1
  642. package/esm/series/gauge/interface.d.ts +12 -11
  643. package/esm/series/gauge/interface.js.map +1 -1
  644. package/esm/series/heatmap/heatmap.d.ts +3 -1
  645. package/esm/series/heatmap/heatmap.js +19 -9
  646. package/esm/series/heatmap/heatmap.js.map +1 -1
  647. package/esm/series/heatmap/interface.d.ts +6 -5
  648. package/esm/series/heatmap/interface.js.map +1 -1
  649. package/esm/series/interface/common.d.ts +56 -1
  650. package/esm/series/interface/common.js +24 -1
  651. package/esm/series/interface/common.js.map +1 -1
  652. package/esm/series/interface/series.d.ts +2 -1
  653. package/esm/series/interface/series.js.map +1 -1
  654. package/esm/series/line/line.d.ts +2 -0
  655. package/esm/series/line/line.js +9 -4
  656. package/esm/series/line/line.js.map +1 -1
  657. package/esm/series/link/interface.d.ts +4 -4
  658. package/esm/series/link/interface.js.map +1 -1
  659. package/esm/series/link/link.d.ts +4 -7
  660. package/esm/series/link/link.js +22 -15
  661. package/esm/series/link/link.js.map +1 -1
  662. package/esm/series/map/map.d.ts +2 -0
  663. package/esm/series/map/map.js +13 -6
  664. package/esm/series/map/map.js.map +1 -1
  665. package/esm/series/mixin/line-mixin.d.ts +4 -3
  666. package/esm/series/mixin/line-mixin.js +16 -4
  667. package/esm/series/mixin/line-mixin.js.map +1 -1
  668. package/esm/series/pie/interface.d.ts +7 -6
  669. package/esm/series/pie/interface.js.map +1 -1
  670. package/esm/series/pie/pie.d.ts +8 -3
  671. package/esm/series/pie/pie.js +60 -28
  672. package/esm/series/pie/pie.js.map +1 -1
  673. package/esm/series/progress/circular/circular.d.ts +2 -0
  674. package/esm/series/progress/circular/circular.js +16 -6
  675. package/esm/series/progress/circular/circular.js.map +1 -1
  676. package/esm/series/progress/circular/interface.d.ts +5 -4
  677. package/esm/series/progress/circular/interface.js.map +1 -1
  678. package/esm/series/progress/linear/interface.d.ts +6 -5
  679. package/esm/series/progress/linear/interface.js.map +1 -1
  680. package/esm/series/progress/linear/linear.d.ts +2 -0
  681. package/esm/series/progress/linear/linear.js +31 -20
  682. package/esm/series/progress/linear/linear.js.map +1 -1
  683. package/esm/series/radar/interface.d.ts +5 -4
  684. package/esm/series/radar/interface.js.map +1 -1
  685. package/esm/series/radar/radar.d.ts +2 -0
  686. package/esm/series/radar/radar.js +12 -5
  687. package/esm/series/radar/radar.js.map +1 -1
  688. package/esm/series/range-area/range-area.d.ts +2 -0
  689. package/esm/series/range-area/range-area.js +2 -4
  690. package/esm/series/range-area/range-area.js.map +1 -1
  691. package/esm/series/range-column/interface.d.ts +9 -8
  692. package/esm/series/range-column/interface.js.map +1 -1
  693. package/esm/series/range-column/rangeColumn.d.ts +2 -0
  694. package/esm/series/range-column/rangeColumn.js +28 -20
  695. package/esm/series/range-column/rangeColumn.js.map +1 -1
  696. package/esm/series/rose/interface.d.ts +3 -2
  697. package/esm/series/rose/interface.js.map +1 -1
  698. package/esm/series/rose/rose.d.ts +2 -0
  699. package/esm/series/rose/rose.js +16 -14
  700. package/esm/series/rose/rose.js.map +1 -1
  701. package/esm/series/sankey/animation.js.map +1 -1
  702. package/esm/series/sankey/interface.d.ts +7 -6
  703. package/esm/series/sankey/interface.js.map +1 -1
  704. package/esm/series/sankey/sankey.d.ts +2 -0
  705. package/esm/series/sankey/sankey.js +26 -23
  706. package/esm/series/sankey/sankey.js.map +1 -1
  707. package/esm/series/scatter/interface.d.ts +6 -5
  708. package/esm/series/scatter/interface.js.map +1 -1
  709. package/esm/series/scatter/scatter.d.ts +2 -0
  710. package/esm/series/scatter/scatter.js +15 -9
  711. package/esm/series/scatter/scatter.js.map +1 -1
  712. package/esm/series/sunburst/interface.d.ts +5 -4
  713. package/esm/series/sunburst/interface.js.map +1 -1
  714. package/esm/series/sunburst/sunburst.d.ts +3 -1
  715. package/esm/series/sunburst/sunburst.js +11 -4
  716. package/esm/series/sunburst/sunburst.js.map +1 -1
  717. package/esm/series/treemap/interface.d.ts +9 -8
  718. package/esm/series/treemap/interface.js.map +1 -1
  719. package/esm/series/treemap/treemap.d.ts +2 -0
  720. package/esm/series/treemap/treemap.js +21 -6
  721. package/esm/series/treemap/treemap.js.map +1 -1
  722. package/esm/series/waterfall/interface.d.ts +6 -5
  723. package/esm/series/waterfall/interface.js.map +1 -1
  724. package/esm/series/waterfall/waterfall.d.ts +2 -0
  725. package/esm/series/waterfall/waterfall.js +15 -6
  726. package/esm/series/waterfall/waterfall.js.map +1 -1
  727. package/esm/series/word-cloud/interface.d.ts +7 -6
  728. package/esm/series/word-cloud/interface.js.map +1 -1
  729. package/esm/series/word-cloud/word-cloud.d.ts +4 -3
  730. package/esm/series/word-cloud/word-cloud.js +24 -11
  731. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  732. package/esm/theme/buildin-theme/config.d.ts +1 -4
  733. package/esm/theme/buildin-theme/config.js +1 -21
  734. package/esm/theme/buildin-theme/config.js.map +1 -1
  735. package/esm/theme/buildin-theme/dark.js.map +1 -1
  736. package/esm/theme/buildin-theme/light/color-scheme.js +14 -1
  737. package/esm/theme/buildin-theme/light/color-scheme.js.map +1 -1
  738. package/esm/theme/buildin-theme/light/component/axis/band-axis.d.ts +2 -0
  739. package/esm/theme/buildin-theme/light/component/axis/band-axis.js +18 -0
  740. package/esm/theme/buildin-theme/light/component/axis/band-axis.js.map +1 -0
  741. package/esm/theme/buildin-theme/light/component/{cartesian-axis.d.ts → axis/cartesian-axis.d.ts} +1 -1
  742. package/esm/theme/buildin-theme/light/component/{cartesian-axis.js → axis/cartesian-axis.js} +7 -9
  743. package/esm/theme/buildin-theme/light/component/axis/cartesian-axis.js.map +1 -0
  744. package/esm/theme/buildin-theme/light/component/axis/common-axis.d.ts +2 -0
  745. package/esm/theme/buildin-theme/light/component/{common-axis.js → axis/common-axis.js} +32 -14
  746. package/esm/theme/buildin-theme/light/component/axis/common-axis.js.map +1 -0
  747. package/esm/theme/buildin-theme/light/component/axis/linear-axis.d.ts +2 -0
  748. package/esm/theme/buildin-theme/light/component/axis/linear-axis.js +18 -0
  749. package/esm/theme/buildin-theme/light/component/axis/linear-axis.js.map +1 -0
  750. package/esm/theme/buildin-theme/light/component/{polar-axis.d.ts → axis/polar-axis.d.ts} +1 -1
  751. package/esm/theme/buildin-theme/light/component/{polar-axis.js → axis/polar-axis.js} +11 -3
  752. package/esm/theme/buildin-theme/light/component/axis/polar-axis.js.map +1 -0
  753. package/esm/theme/buildin-theme/light/component/crosshair.js +8 -4
  754. package/esm/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  755. package/esm/theme/buildin-theme/light/component/index.d.ts +2 -0
  756. package/esm/theme/buildin-theme/light/component/index.js +62 -0
  757. package/esm/theme/buildin-theme/light/component/index.js.map +1 -0
  758. package/esm/theme/buildin-theme/light/component/legend/color-legend.d.ts +2 -0
  759. package/esm/theme/buildin-theme/light/component/{color-legend.js → legend/color-legend.js} +1 -1
  760. package/esm/theme/buildin-theme/light/component/legend/color-legend.js.map +1 -0
  761. package/esm/theme/buildin-theme/light/component/legend/continuous.d.ts +2 -0
  762. package/esm/theme/buildin-theme/light/component/legend/continuous.js +54 -0
  763. package/esm/theme/buildin-theme/light/component/legend/continuous.js.map +1 -0
  764. package/esm/theme/buildin-theme/light/component/legend/discrete-legend.d.ts +2 -0
  765. package/esm/theme/buildin-theme/light/component/{discrete-legend.js → legend/discrete-legend.js} +14 -5
  766. package/esm/theme/buildin-theme/light/component/legend/discrete-legend.js.map +1 -0
  767. package/esm/theme/buildin-theme/light/component/legend/size-legend.d.ts +2 -0
  768. package/esm/theme/buildin-theme/light/component/{size-legend.js → legend/size-legend.js} +1 -1
  769. package/esm/theme/buildin-theme/light/component/legend/size-legend.js.map +1 -0
  770. package/esm/theme/buildin-theme/light/component/map-label.d.ts +2 -0
  771. package/esm/{component/map-label/config.js → theme/buildin-theme/light/component/map-label.js} +5 -3
  772. package/esm/theme/buildin-theme/light/component/map-label.js.map +1 -0
  773. package/esm/theme/buildin-theme/light/component/player.js +20 -11
  774. package/esm/theme/buildin-theme/light/component/player.js.map +1 -1
  775. package/esm/theme/buildin-theme/light/component/title.js +16 -2
  776. package/esm/theme/buildin-theme/light/component/title.js.map +1 -1
  777. package/esm/theme/buildin-theme/light/component/tooltip.js +6 -2
  778. package/esm/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  779. package/esm/theme/buildin-theme/light/constants.d.ts +2 -0
  780. package/esm/theme/buildin-theme/light/constants.js +10 -0
  781. package/esm/theme/buildin-theme/light/constants.js.map +1 -0
  782. package/esm/theme/buildin-theme/light/index.js +7 -50
  783. package/esm/theme/buildin-theme/light/index.js.map +1 -1
  784. package/esm/theme/buildin-theme/light/mark.d.ts +3 -0
  785. package/esm/theme/buildin-theme/light/mark.js +68 -0
  786. package/esm/theme/buildin-theme/light/mark.js.map +1 -0
  787. package/esm/theme/buildin-theme/light/series/area.js +2 -12
  788. package/esm/theme/buildin-theme/light/series/area.js.map +1 -1
  789. package/esm/theme/buildin-theme/light/series/bar.js +2 -2
  790. package/esm/theme/buildin-theme/light/series/bar.js.map +1 -1
  791. package/esm/theme/buildin-theme/light/series/bar3d.js +2 -2
  792. package/esm/theme/buildin-theme/light/series/bar3d.js.map +1 -1
  793. package/esm/theme/buildin-theme/light/series/box-plot.d.ts +2 -0
  794. package/esm/theme/buildin-theme/light/series/box-plot.js +8 -0
  795. package/esm/theme/buildin-theme/light/series/box-plot.js.map +1 -0
  796. package/esm/theme/buildin-theme/light/series/circular-progress.js +11 -1
  797. package/esm/theme/buildin-theme/light/series/circular-progress.js.map +1 -1
  798. package/esm/theme/buildin-theme/light/series/funnel.js +7 -2
  799. package/esm/theme/buildin-theme/light/series/funnel.js.map +1 -1
  800. package/esm/theme/buildin-theme/light/series/funnel3d.js +8 -3
  801. package/esm/theme/buildin-theme/light/series/funnel3d.js.map +1 -1
  802. package/esm/theme/buildin-theme/light/series/gauge.js +6 -1
  803. package/esm/theme/buildin-theme/light/series/gauge.js.map +1 -1
  804. package/esm/theme/buildin-theme/light/series/index.js +10 -1
  805. package/esm/theme/buildin-theme/light/series/index.js.map +1 -1
  806. package/esm/theme/buildin-theme/light/series/line.js +2 -7
  807. package/esm/theme/buildin-theme/light/series/line.js.map +1 -1
  808. package/esm/theme/buildin-theme/light/series/linear-progress.js +5 -0
  809. package/esm/theme/buildin-theme/light/series/linear-progress.js.map +1 -1
  810. package/esm/theme/buildin-theme/light/series/map.js +8 -4
  811. package/esm/theme/buildin-theme/light/series/map.js.map +1 -1
  812. package/esm/theme/buildin-theme/light/series/pie.js +9 -2
  813. package/esm/theme/buildin-theme/light/series/pie.js.map +1 -1
  814. package/esm/theme/buildin-theme/light/series/pie3d.js +4 -3
  815. package/esm/theme/buildin-theme/light/series/pie3d.js.map +1 -1
  816. package/esm/theme/buildin-theme/light/series/radar.js +2 -12
  817. package/esm/theme/buildin-theme/light/series/radar.js.map +1 -1
  818. package/esm/theme/buildin-theme/light/series/rangeColumn.js +2 -2
  819. package/esm/theme/buildin-theme/light/series/rangeColumn.js.map +1 -1
  820. package/esm/theme/buildin-theme/light/series/rose.d.ts +2 -0
  821. package/esm/theme/buildin-theme/light/series/rose.js +16 -0
  822. package/esm/theme/buildin-theme/light/series/rose.js.map +1 -0
  823. package/esm/theme/buildin-theme/light/series/sankey.d.ts +2 -0
  824. package/esm/theme/buildin-theme/light/series/sankey.js +10 -0
  825. package/esm/theme/buildin-theme/light/series/sankey.js.map +1 -0
  826. package/esm/theme/buildin-theme/light/series/scatter.js +10 -4
  827. package/esm/theme/buildin-theme/light/series/scatter.js.map +1 -1
  828. package/esm/theme/buildin-theme/light/series/treemap.js +3 -1
  829. package/esm/theme/buildin-theme/light/series/treemap.js.map +1 -1
  830. package/esm/theme/buildin-theme/light/series/waterfall.js +3 -1
  831. package/esm/theme/buildin-theme/light/series/waterfall.js.map +1 -1
  832. package/esm/theme/buildin-theme/light/series/word-cloud3d.js +1 -1
  833. package/esm/theme/buildin-theme/light/series/word-cloud3d.js.map +1 -1
  834. package/esm/theme/color-scheme/interface.d.ts +16 -8
  835. package/esm/theme/color-scheme/interface.js.map +1 -1
  836. package/esm/theme/color-scheme/util.d.ts +6 -3
  837. package/esm/theme/color-scheme/util.js +31 -7
  838. package/esm/theme/color-scheme/util.js.map +1 -1
  839. package/esm/theme/interface.d.ts +22 -38
  840. package/esm/theme/interface.js.map +1 -1
  841. package/esm/theme/theme-manager.d.ts +1 -0
  842. package/esm/theme/theme-manager.js +6 -1
  843. package/esm/theme/theme-manager.js.map +1 -1
  844. package/esm/typings/spec/chart.d.ts +1 -1
  845. package/esm/typings/spec/chart.js.map +1 -1
  846. package/esm/typings/visual.d.ts +13 -12
  847. package/esm/typings/visual.js.map +1 -1
  848. package/esm/util/color.d.ts +0 -3
  849. package/esm/util/color.js +0 -10
  850. package/esm/util/color.js.map +1 -1
  851. package/esm/util/scale.d.ts +12 -1
  852. package/esm/util/scale.js +6 -2
  853. package/esm/util/scale.js.map +1 -1
  854. package/esm/vchart-all.js +5 -5
  855. package/esm/vchart-all.js.map +1 -1
  856. package/package.json +1 -1
  857. package/cjs/chart/boxplot/boxPlot.js.map +0 -1
  858. package/cjs/chart/boxplot/index.js.map +0 -1
  859. package/cjs/chart/boxplot/interface.js.map +0 -1
  860. package/cjs/component/map-label/config.d.ts +0 -2
  861. package/cjs/component/map-label/config.js.map +0 -1
  862. package/cjs/mark/boxPlot.js.map +0 -1
  863. package/cjs/series/box-plot/boxPlot.js.map +0 -1
  864. package/cjs/theme/buildin-theme/light/component/cartesian-axis.js.map +0 -1
  865. package/cjs/theme/buildin-theme/light/component/color-legend.d.ts +0 -2
  866. package/cjs/theme/buildin-theme/light/component/color-legend.js.map +0 -1
  867. package/cjs/theme/buildin-theme/light/component/common-axis.d.ts +0 -2
  868. package/cjs/theme/buildin-theme/light/component/common-axis.js.map +0 -1
  869. package/cjs/theme/buildin-theme/light/component/discrete-legend.d.ts +0 -2
  870. package/cjs/theme/buildin-theme/light/component/discrete-legend.js.map +0 -1
  871. package/cjs/theme/buildin-theme/light/component/polar-axis.js +0 -19
  872. package/cjs/theme/buildin-theme/light/component/polar-axis.js.map +0 -1
  873. package/cjs/theme/buildin-theme/light/component/size-legend.d.ts +0 -2
  874. package/cjs/theme/buildin-theme/light/component/size-legend.js.map +0 -1
  875. package/esm/chart/boxplot/boxPlot.js.map +0 -1
  876. package/esm/chart/boxplot/index.js.map +0 -1
  877. package/esm/chart/boxplot/interface.js.map +0 -1
  878. package/esm/component/map-label/config.d.ts +0 -2
  879. package/esm/component/map-label/config.js.map +0 -1
  880. package/esm/series/box-plot/boxPlot.js.map +0 -1
  881. package/esm/theme/buildin-theme/light/component/cartesian-axis.js.map +0 -1
  882. package/esm/theme/buildin-theme/light/component/color-legend.d.ts +0 -2
  883. package/esm/theme/buildin-theme/light/component/color-legend.js.map +0 -1
  884. package/esm/theme/buildin-theme/light/component/common-axis.d.ts +0 -2
  885. package/esm/theme/buildin-theme/light/component/common-axis.js.map +0 -1
  886. package/esm/theme/buildin-theme/light/component/discrete-legend.d.ts +0 -2
  887. package/esm/theme/buildin-theme/light/component/discrete-legend.js.map +0 -1
  888. package/esm/theme/buildin-theme/light/component/polar-axis.js.map +0 -1
  889. package/esm/theme/buildin-theme/light/component/size-legend.d.ts +0 -2
  890. package/esm/theme/buildin-theme/light/component/size-legend.js.map +0 -1
  891. /package/cjs/chart/{boxplot/boxPlot.d.ts → box-plot/box-plot.d.ts} +0 -0
  892. /package/cjs/chart/{boxplot → box-plot}/interface.d.ts +0 -0
  893. /package/cjs/chart/{boxplot → box-plot}/interface.js +0 -0
  894. /package/esm/chart/{boxplot/boxPlot.d.ts → box-plot/box-plot.d.ts} +0 -0
  895. /package/esm/chart/{boxplot → box-plot}/interface.d.ts +0 -0
  896. /package/esm/chart/{boxplot → box-plot}/interface.js +0 -0
@@ -1,4 +1,5 @@
1
1
  import { MarkTypeEnum } from '../../mark/interface';
2
+ import type { SeriesMarkMap } from '../interface';
2
3
  import { SeriesTypeEnum } from '../interface';
3
4
  import type { IGaugePointerSeriesSpec, IGaugePointerSeriesTheme } from './interface';
4
5
  import type { Datum, Maybe } from '../../typings';
@@ -6,6 +7,7 @@ import { ProgressLikeSeries } from '../polar/progress-like';
6
7
  export declare class GaugePointerSeries extends ProgressLikeSeries<IGaugePointerSeriesSpec> {
7
8
  static readonly type: string;
8
9
  type: SeriesTypeEnum;
10
+ static readonly mark: SeriesMarkMap;
9
11
  protected _theme: Maybe<IGaugePointerSeriesTheme>;
10
12
  protected _spec: IGaugePointerSeriesSpec;
11
13
  private _pinMark;
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.GaugePointerSeries = void 0;
6
6
 
7
- const interface_1 = require("../../mark/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), progress_like_1 = require("../polar/progress-like");
7
+ const interface_1 = require("../../mark/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), progress_like_1 = require("../polar/progress-like"), base_series_1 = require("../base/base-series");
8
8
 
9
9
  class GaugePointerSeries extends progress_like_1.ProgressLikeSeries {
10
10
  constructor() {
@@ -16,10 +16,12 @@ class GaugePointerSeries extends progress_like_1.ProgressLikeSeries {
16
16
  super.setAttrFromSpec(), this.setRadiusField(this._spec.radiusField), this._pointerType = "rect" === (null === (_a = this._spec.pointer) || void 0 === _a ? void 0 : _a.type) ? interface_1.MarkTypeEnum.rect : interface_1.MarkTypeEnum.path;
17
17
  }
18
18
  initMark() {
19
- this._pinBackgroundMark = this._createMark(interface_1.MarkTypeEnum.path, "pinBackground"),
20
- this._pointerMark = this._createMark(this._pointerType, "pointer", {
19
+ this._pinBackgroundMark = this._createMark(GaugePointerSeries.mark.pinBackground),
20
+ this._pointerMark = this._createMark(Object.assign(Object.assign({}, GaugePointerSeries.mark.pointer), {
21
+ type: this._pointerType
22
+ }), {
21
23
  isSeriesMark: !0
22
- }), this._pinMark = this._createMark(interface_1.MarkTypeEnum.path, "pin");
24
+ }), this._pinMark = this._createMark(GaugePointerSeries.mark.pin);
23
25
  }
24
26
  initMarkStyle() {
25
27
  this.initPinBackgroundMarkStyle(), this.initPointerMarkStyle(), this.initPinMarkStyle();
@@ -101,9 +103,23 @@ class GaugePointerSeries extends progress_like_1.ProgressLikeSeries {
101
103
  const appearPreset = null === (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.animationAppear) || void 0 === _b ? void 0 : _b.preset;
102
104
  this._pointerMark.setAnimationConfig((0, utils_1.animationConfig)(config_1.DEFAULT_MARK_ANIMATION.circularProgress({
103
105
  startAngle: this._startAngle
104
- }, appearPreset), (0, utils_1.userAnimationConfig)("pointer", this._spec)));
106
+ }, appearPreset), (0, utils_1.userAnimationConfig)(interface_2.SeriesMarkNameEnum.pointer, this._spec)));
105
107
  }
106
108
  }
107
109
 
108
- exports.GaugePointerSeries = GaugePointerSeries, GaugePointerSeries.type = interface_2.SeriesTypeEnum.gaugePointer;
110
+ exports.GaugePointerSeries = GaugePointerSeries, GaugePointerSeries.type = interface_2.SeriesTypeEnum.gaugePointer,
111
+ GaugePointerSeries.mark = Object.assign(Object.assign({}, base_series_1.BaseSeries.mark), {
112
+ [interface_2.SeriesMarkNameEnum.pin]: {
113
+ name: interface_2.SeriesMarkNameEnum.pin,
114
+ type: interface_1.MarkTypeEnum.path
115
+ },
116
+ [interface_2.SeriesMarkNameEnum.pinBackground]: {
117
+ name: interface_2.SeriesMarkNameEnum.pinBackground,
118
+ type: interface_1.MarkTypeEnum.path
119
+ },
120
+ [interface_2.SeriesMarkNameEnum.pointer]: {
121
+ name: interface_2.SeriesMarkNameEnum.pointer,
122
+ type: [ interface_1.MarkTypeEnum.path, interface_1.MarkTypeEnum.rect ]
123
+ }
124
+ });
109
125
  //# sourceMappingURL=gauge-pointer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/gauge/gauge-pointer.ts"],"names":[],"mappings":"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","file":"gauge-pointer.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid } from '../../util';\nimport { SeriesTypeEnum } from '../interface';\nimport type { IGaugePointerSeriesSpec, IGaugePointerSeriesTheme } from './interface';\nimport type { Datum, Maybe } from '../../typings';\nimport type { IPathMark } from '../../mark/path';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { DEFAULT_MARK_ANIMATION } from '../../animation/config';\nimport { ProgressLikeSeries } from '../polar/progress-like';\nimport type { IRectMark } from '../../mark/rect';\nimport type { IStateAnimateSpec } from '../../animation/spec';\n\nexport class GaugePointerSeries extends ProgressLikeSeries<IGaugePointerSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.gaugePointer;\n type = SeriesTypeEnum.gaugePointer;\n\n protected declare _theme: Maybe<IGaugePointerSeriesTheme>;\n protected declare _spec: IGaugePointerSeriesSpec;\n\n private _pinMark: IPathMark | null = null;\n private _pointerMark: IPathMark | IRectMark | null = null;\n private _pinBackgroundMark: IPathMark | null = null;\n\n protected _pointerType: MarkTypeEnum;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n // 半径信息\n this.setRadiusField(this._spec.radiusField);\n\n this._pointerType = this._spec.pointer?.type === 'rect' ? MarkTypeEnum.rect : MarkTypeEnum.path;\n }\n\n initMark(): void {\n this._pinBackgroundMark = this._createMark(MarkTypeEnum.path, 'pinBackground') as IPathMark;\n this._pointerMark = this._createMark(this._pointerType, 'pointer', {\n isSeriesMark: true\n }) as IPathMark;\n this._pinMark = this._createMark(MarkTypeEnum.path, 'pin') as IPathMark;\n }\n\n initMarkStyle(): void {\n this.initPinBackgroundMarkStyle();\n this.initPointerMarkStyle();\n this.initPinMarkStyle();\n }\n\n initGroups() {\n // do nothing\n }\n\n private initPointerMarkStyle() {\n const pointerMark = this._pointerMark;\n const pointerSpec = this._spec.pointer;\n if (pointerMark) {\n this.setMarkStyle(pointerMark, {\n x: () => {\n const { x } = this.angleAxisHelper.center();\n const dx = this._getPointerWidth() * (pointerSpec?.center?.[0] ?? 0);\n return x - dx;\n },\n y: (datum: Datum) => {\n const { y } = this.angleAxisHelper.center();\n const dy = this._getPointerHeight(datum) * (pointerSpec?.center?.[1] ?? 0);\n return y - dy;\n },\n anchor: () => {\n const { x, y } = this.angleAxisHelper.center();\n return [x, y];\n },\n fill: this.getColorAttribute(),\n zIndex: 200\n });\n if (this._pointerType === MarkTypeEnum.path) {\n this.setMarkStyle(pointerMark as IPathMark, {\n scaleX: this._getPointerWidth.bind(this),\n scaleY: this._getPointerHeight.bind(this),\n angle: (datum: Datum) => this._getPointerAngle(datum) + Math.PI / 2\n });\n } else {\n this.setMarkStyle(pointerMark as IRectMark, {\n width: this._getPointerWidth.bind(this),\n height: this._getPointerHeight.bind(this),\n angle: (datum: Datum) => this._getPointerAngle(datum) - Math.PI / 2\n });\n }\n this._trigger.registerMark(pointerMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(pointerMark);\n }\n }\n\n protected _getPointerWidth() {\n return this._spec.pointer.width * this._computeLayoutRadius();\n }\n\n protected _getPointerHeight(datum: Datum) {\n const pointerSpec = this._spec.pointer;\n const radiusField = this._radiusField[0];\n if (isValid(this.radiusAxisHelper) && isValid(radiusField)) {\n return (\n this.radiusAxisHelper.dataToPosition([datum[radiusField]]) -\n (pointerSpec?.innerPadding ?? 0) -\n (pointerSpec?.outerPadding ?? 10)\n );\n }\n return pointerSpec.height * this._computeLayoutRadius();\n }\n\n protected _getPointerAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[this._angleField[0]]]);\n }\n\n protected _getRotatedPointerCenterOffset(datum: Datum) {\n const pointerSpec = this._spec.pointer;\n const x = this._getPointerWidth() * (pointerSpec?.center?.[0] ?? 0);\n const y = -this._getPointerHeight(datum) * (pointerSpec?.center?.[1] ?? 0);\n const angle = this._getPointerAngle(datum) - Math.PI / 2;\n const cos = Math.cos(angle);\n const sin = Math.sin(angle);\n const x1 = x * cos + y * sin;\n const y1 = y * cos - x * sin;\n return {\n x: x1,\n y: -y1\n };\n }\n\n private initPinBackgroundMarkStyle() {\n const pinBackgroundMark = this._pinBackgroundMark;\n const pinBackgroundSpec = this._spec.pinBackground;\n if (pinBackgroundMark) {\n this.setMarkStyle(pinBackgroundMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n scaleX: () => pinBackgroundSpec.width * this._computeLayoutRadius(),\n scaleY: () => pinBackgroundSpec.height * this._computeLayoutRadius(),\n fill: this.getColorAttribute(),\n zIndex: 100\n });\n }\n }\n\n private initPinMarkStyle() {\n const pinMark = this._pinMark;\n const pinSpec = this._spec.pin;\n if (pinMark) {\n this.setMarkStyle(pinMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n scaleX: () => pinSpec.width * this._computeLayoutRadius(),\n scaleY: () => pinSpec.height * this._computeLayoutRadius(),\n fill: this.getColorAttribute(),\n zIndex: 300\n });\n }\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._pointerMark.setAnimationConfig(\n animationConfig(\n DEFAULT_MARK_ANIMATION.circularProgress(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig('pointer', this._spec)\n )\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/gauge/gauge-pointer.ts"],"names":[],"mappings":"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","file":"gauge-pointer.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid } from '../../util';\nimport type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface';\nimport type { IGaugePointerSeriesSpec, IGaugePointerSeriesTheme } from './interface';\nimport type { Datum, Maybe } from '../../typings';\nimport type { IPathMark } from '../../mark/path';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { DEFAULT_MARK_ANIMATION } from '../../animation/config';\nimport { ProgressLikeSeries } from '../polar/progress-like';\nimport type { IRectMark } from '../../mark/rect';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { BaseSeries } from '../base/base-series';\n\nexport class GaugePointerSeries extends ProgressLikeSeries<IGaugePointerSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.gaugePointer;\n type = SeriesTypeEnum.gaugePointer;\n\n static readonly mark: SeriesMarkMap = {\n ...BaseSeries.mark,\n [SeriesMarkNameEnum.pin]: { name: SeriesMarkNameEnum.pin, type: MarkTypeEnum.path },\n [SeriesMarkNameEnum.pinBackground]: { name: SeriesMarkNameEnum.pinBackground, type: MarkTypeEnum.path },\n [SeriesMarkNameEnum.pointer]: { name: SeriesMarkNameEnum.pointer, type: [MarkTypeEnum.path, MarkTypeEnum.rect] }\n };\n\n protected declare _theme: Maybe<IGaugePointerSeriesTheme>;\n protected declare _spec: IGaugePointerSeriesSpec;\n\n private _pinMark: IPathMark | null = null;\n private _pointerMark: IPathMark | IRectMark | null = null;\n private _pinBackgroundMark: IPathMark | null = null;\n\n protected _pointerType: MarkTypeEnum;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n // 半径信息\n this.setRadiusField(this._spec.radiusField);\n\n this._pointerType = this._spec.pointer?.type === 'rect' ? MarkTypeEnum.rect : MarkTypeEnum.path;\n }\n\n initMark(): void {\n this._pinBackgroundMark = this._createMark(GaugePointerSeries.mark.pinBackground) as IPathMark;\n this._pointerMark = this._createMark(\n {\n ...GaugePointerSeries.mark.pointer,\n type: this._pointerType\n },\n {\n isSeriesMark: true\n }\n ) as IPathMark;\n this._pinMark = this._createMark(GaugePointerSeries.mark.pin) as IPathMark;\n }\n\n initMarkStyle(): void {\n this.initPinBackgroundMarkStyle();\n this.initPointerMarkStyle();\n this.initPinMarkStyle();\n }\n\n initGroups() {\n // do nothing\n }\n\n private initPointerMarkStyle() {\n const pointerMark = this._pointerMark;\n const pointerSpec = this._spec.pointer;\n if (pointerMark) {\n this.setMarkStyle(pointerMark, {\n x: () => {\n const { x } = this.angleAxisHelper.center();\n const dx = this._getPointerWidth() * (pointerSpec?.center?.[0] ?? 0);\n return x - dx;\n },\n y: (datum: Datum) => {\n const { y } = this.angleAxisHelper.center();\n const dy = this._getPointerHeight(datum) * (pointerSpec?.center?.[1] ?? 0);\n return y - dy;\n },\n anchor: () => {\n const { x, y } = this.angleAxisHelper.center();\n return [x, y];\n },\n fill: this.getColorAttribute(),\n zIndex: 200\n });\n if (this._pointerType === MarkTypeEnum.path) {\n this.setMarkStyle(pointerMark as IPathMark, {\n scaleX: this._getPointerWidth.bind(this),\n scaleY: this._getPointerHeight.bind(this),\n angle: (datum: Datum) => this._getPointerAngle(datum) + Math.PI / 2\n });\n } else {\n this.setMarkStyle(pointerMark as IRectMark, {\n width: this._getPointerWidth.bind(this),\n height: this._getPointerHeight.bind(this),\n angle: (datum: Datum) => this._getPointerAngle(datum) - Math.PI / 2\n });\n }\n this._trigger.registerMark(pointerMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(pointerMark);\n }\n }\n\n protected _getPointerWidth() {\n return this._spec.pointer.width * this._computeLayoutRadius();\n }\n\n protected _getPointerHeight(datum: Datum) {\n const pointerSpec = this._spec.pointer;\n const radiusField = this._radiusField[0];\n if (isValid(this.radiusAxisHelper) && isValid(radiusField)) {\n return (\n this.radiusAxisHelper.dataToPosition([datum[radiusField]]) -\n (pointerSpec?.innerPadding ?? 0) -\n (pointerSpec?.outerPadding ?? 10)\n );\n }\n return pointerSpec.height * this._computeLayoutRadius();\n }\n\n protected _getPointerAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[this._angleField[0]]]);\n }\n\n protected _getRotatedPointerCenterOffset(datum: Datum) {\n const pointerSpec = this._spec.pointer;\n const x = this._getPointerWidth() * (pointerSpec?.center?.[0] ?? 0);\n const y = -this._getPointerHeight(datum) * (pointerSpec?.center?.[1] ?? 0);\n const angle = this._getPointerAngle(datum) - Math.PI / 2;\n const cos = Math.cos(angle);\n const sin = Math.sin(angle);\n const x1 = x * cos + y * sin;\n const y1 = y * cos - x * sin;\n return {\n x: x1,\n y: -y1\n };\n }\n\n private initPinBackgroundMarkStyle() {\n const pinBackgroundMark = this._pinBackgroundMark;\n const pinBackgroundSpec = this._spec.pinBackground;\n if (pinBackgroundMark) {\n this.setMarkStyle(pinBackgroundMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n scaleX: () => pinBackgroundSpec.width * this._computeLayoutRadius(),\n scaleY: () => pinBackgroundSpec.height * this._computeLayoutRadius(),\n fill: this.getColorAttribute(),\n zIndex: 100\n });\n }\n }\n\n private initPinMarkStyle() {\n const pinMark = this._pinMark;\n const pinSpec = this._spec.pin;\n if (pinMark) {\n this.setMarkStyle(pinMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n scaleX: () => pinSpec.width * this._computeLayoutRadius(),\n scaleY: () => pinSpec.height * this._computeLayoutRadius(),\n fill: this.getColorAttribute(),\n zIndex: 300\n });\n }\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._pointerMark.setAnimationConfig(\n animationConfig(\n DEFAULT_MARK_ANIMATION.circularProgress(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.pointer, this._spec)\n )\n );\n }\n}\n"]}
@@ -1,18 +1,18 @@
1
+ import type { SeriesMarkMap } from '../interface';
1
2
  import { SeriesTypeEnum } from '../interface';
2
3
  import type { IGaugeSeriesSpec, IGaugeSeriesTheme } from './interface';
3
4
  import { ProgressLikeSeries } from '../polar/progress-like/progress-like';
4
- import { DataView } from '@visactor/vdataset';
5
5
  import type { Datum } from '@visactor/vgrammar';
6
6
  import type { Maybe } from '../../typings';
7
7
  export declare class GaugeSeries extends ProgressLikeSeries<IGaugeSeriesSpec> {
8
8
  static readonly type: string;
9
9
  type: SeriesTypeEnum;
10
+ static readonly mark: SeriesMarkMap;
10
11
  protected _theme: Maybe<IGaugeSeriesTheme>;
11
12
  private _segmentMark;
12
13
  private _trackMark;
13
14
  protected _stack: boolean;
14
15
  protected _padAngle: number;
15
- protected _segmentData: DataView;
16
16
  setAttrFromSpec(): void;
17
17
  initData(): void;
18
18
  initMark(): void;
@@ -21,4 +21,5 @@ export declare class GaugeSeries extends ProgressLikeSeries<IGaugeSeriesSpec> {
21
21
  private initTrackMarkStyle;
22
22
  protected _getAngleValueStart(datum: Datum): number;
23
23
  protected _getAngleValueEnd(datum: Datum): number;
24
+ initAnimation(): void;
24
25
  }
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.GaugeSeries = void 0;
6
6
 
7
- const interface_1 = require("../../mark/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), progress_like_1 = require("../polar/progress-like/progress-like"), vdataset_1 = require("@visactor/vdataset"), register_1 = require("../../data/register"), constant_1 = require("../../constant");
7
+ const interface_1 = require("../../mark/interface"), util_1 = require("../../util"), interface_2 = require("../interface"), progress_like_1 = require("../polar/progress-like/progress-like"), register_1 = require("../../data/register"), constant_1 = require("../../constant"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), base_series_1 = require("../base/base-series");
8
8
 
9
9
  class GaugeSeries extends progress_like_1.ProgressLikeSeries {
10
10
  constructor() {
@@ -16,28 +16,21 @@ class GaugeSeries extends progress_like_1.ProgressLikeSeries {
16
16
  super.setAttrFromSpec(), this._padAngle = (0, util_1.radians)(null !== (_a = this._spec.padAngle) && void 0 !== _a ? _a : 0);
17
17
  }
18
18
  initData() {
19
+ var _a;
19
20
  super.initData();
20
- const dataSet = new vdataset_1.DataSet;
21
- (0, register_1.registerDataSetInstanceParser)(dataSet, "dataview", vdataset_1.dataViewParser),
22
- (0, register_1.registerDataSetInstanceTransform)(dataSet, "spiltSegment", ((data, op) => {
23
- const dataCollect = [ ...data[0].latestData ];
21
+ (0, register_1.registerDataSetInstanceTransform)(this._option.dataSet, "spiltSegment", ((data, op) => {
22
+ const dataCollect = [ ...data ];
24
23
  return dataCollect.sort(((a, b) => a[this._angleField[0]] - b[this._angleField[0]])),
25
24
  dataCollect.forEach(((datum, i) => {
26
25
  datum[constant_1.SEGMENT_FIELD_END] = datum[this._angleField[0]], datum[constant_1.SEGMENT_FIELD_START] = i > 0 ? dataCollect[i - 1][constant_1.SEGMENT_FIELD_END] : void 0;
27
26
  })), dataCollect;
28
- }));
29
- const segmentDataView = new vdataset_1.DataView(dataSet);
30
- segmentDataView.parse([ this.getViewData() ], {
31
- type: "dataview"
32
- }), segmentDataView.transform({
27
+ })), null === (_a = this.getViewDataFilter()) || void 0 === _a || _a.transform({
33
28
  type: "spiltSegment"
34
- }, !1), this._segmentData = segmentDataView;
29
+ }, !1);
35
30
  }
36
31
  initMark() {
37
- this._trackMark = this._createMark(interface_1.MarkTypeEnum.progressArc, "track"),
38
- this._segmentMark = this._createMark(interface_1.MarkTypeEnum.progressArc, "segment", {
39
- isSeriesMark: !0,
40
- dataView: this._segmentData
32
+ this._trackMark = this._createMark(GaugeSeries.mark.track), this._segmentMark = this._createMark(GaugeSeries.mark.segment, {
33
+ isSeriesMark: !0
41
34
  });
42
35
  }
43
36
  initMarkStyle() {
@@ -63,7 +56,6 @@ class GaugeSeries extends progress_like_1.ProgressLikeSeries {
63
56
  boundsMode: "imprecise",
64
57
  cornerRadius: this._spec.cornerRadius,
65
58
  fill: this.getColorAttribute(),
66
- fillOpacity: 1,
67
59
  zIndex: 200,
68
60
  forceShowCap: !0
69
61
  }), this._trigger.registerMark(segmentMark), null === (_b = this._tooltipHelper) || void 0 === _b || _b.activeTriggerSet.mark.add(segmentMark));
@@ -87,7 +79,24 @@ class GaugeSeries extends progress_like_1.ProgressLikeSeries {
87
79
  var _a;
88
80
  return this.angleAxisHelper.dataToPosition([ datum[constant_1.SEGMENT_FIELD_END] ]) - (null !== (_a = this._spec.padAngle) && void 0 !== _a ? _a : 0) / 2;
89
81
  }
82
+ initAnimation() {
83
+ var _a, _b;
84
+ const appearPreset = null === (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.animationAppear) || void 0 === _b ? void 0 : _b.preset;
85
+ this._segmentMark.setAnimationConfig((0, utils_1.animationConfig)(config_1.DEFAULT_MARK_ANIMATION.circularProgress({
86
+ startAngle: this._startAngle
87
+ }, appearPreset), (0, utils_1.userAnimationConfig)(interface_2.SeriesMarkNameEnum.segment, this._spec)));
88
+ }
90
89
  }
91
90
 
92
- exports.GaugeSeries = GaugeSeries, GaugeSeries.type = interface_2.SeriesTypeEnum.gauge;
91
+ exports.GaugeSeries = GaugeSeries, GaugeSeries.type = interface_2.SeriesTypeEnum.gauge,
92
+ GaugeSeries.mark = Object.assign(Object.assign({}, base_series_1.BaseSeries.mark), {
93
+ [interface_2.SeriesMarkNameEnum.segment]: {
94
+ name: interface_2.SeriesMarkNameEnum.segment,
95
+ type: interface_1.MarkTypeEnum.progressArc
96
+ },
97
+ [interface_2.SeriesMarkNameEnum.track]: {
98
+ name: interface_2.SeriesMarkNameEnum.track,
99
+ type: interface_1.MarkTypeEnum.progressArc
100
+ }
101
+ });
93
102
  //# sourceMappingURL=gauge.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":"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","file":"gauge.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid, radians } from '../../util';\nimport { SeriesTypeEnum } from '../interface';\nimport type { IGaugeSeriesSpec, IGaugeSeriesTheme } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport type { IProgressArcMark } from '../../mark/progress-arc';\nimport { DataSet, DataView, dataViewParser } from '@visactor/vdataset';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant';\nimport type { Datum } from '@visactor/vgrammar';\nimport type { Maybe } from '../../typings';\n\nexport class GaugeSeries extends ProgressLikeSeries<IGaugeSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n protected declare _theme: Maybe<IGaugeSeriesTheme>;\n\n private _segmentMark: IProgressArcMark | null = null;\n private _trackMark: IProgressArcMark | null = null;\n\n protected _stack: boolean = false;\n protected _padAngle: number = 0;\n\n protected _segmentData: DataView;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n\n this._padAngle = radians(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Array<DataView>, op: string) => {\n // 数据处理\n const dataCollect = [...data[0].latestData];\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n // data to dataview\n const dataSet = new DataSet();\n registerDataSetInstanceParser(dataSet, 'dataview', dataViewParser);\n registerDataSetInstanceTransform(dataSet, 'spiltSegment', spiltSegment);\n const segmentDataView = new DataView(dataSet);\n segmentDataView.parse([this.getViewData()], {\n type: 'dataview'\n });\n segmentDataView.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n\n this._segmentData = segmentDataView;\n }\n\n initMark(): void {\n this._trackMark = this._createMark(MarkTypeEnum.progressArc, 'track') as IProgressArcMark;\n this._segmentMark = this._createMark(MarkTypeEnum.progressArc, 'segment', {\n isSeriesMark: true,\n dataView: this._segmentData\n }) as IProgressArcMark;\n }\n\n initMarkStyle(): void {\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n // 需要优先兼容this._spec.radius\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1),\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n fillOpacity: 1,\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n this._trigger.registerMark(segmentMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(segmentMark);\n }\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n this._trigger.registerMark(trackMark);\n }\n }\n\n protected _getAngleValueStart(datum: Datum) {\n const angle = isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n return angle + (this._spec.padAngle ?? 0) / 2;\n }\n\n protected _getAngleValueEnd(datum: Datum) {\n const angle = this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n return angle - (this._spec.padAngle ?? 0) / 2;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AAEpD,qCAA8C;AAG9C,4CAAkE;AAElE,wEAA0E;AAE1E,kDAAuE;AACvE,6CAAwE;AAIxE,iDAA6E;AAC7E,mDAAgE;AAChE,qDAAiD;AAEjD,MAAa,WAAY,SAAQ,kCAAoC;IAArE;;QAEE,SAAI,GAAG,0BAAc,CAAC,KAAK,CAAC;QAUpB,iBAAY,GAA4B,IAAI,CAAC;QAC7C,eAAU,GAA4B,IAAI,CAAC;QAEzC,WAAM,GAAY,KAAK,CAAC;QACxB,cAAS,GAAW,CAAC,CAAC;IAsHlC,CAAC;IApHC,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,CAAC,SAAS,GAAG,IAAA,cAAO,EAAC,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,mCAAI,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,QAAQ;;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QAKjB,MAAM,YAAY,GAAG,CAAC,IAAa,EAAE,EAAU,EAAE,EAAE;YAEjD,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,WAAW,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,CAAC,EAAE,EAAE;gBACpC,KAAK,CAAC,4BAAiB,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAI,CAAC,GAAG,CAAC,EAAE;oBACT,KAAK,CAAC,8BAAmB,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,4BAAiB,CAAC,CAAC;iBACpE;qBAAM;oBACL,KAAK,CAAC,8BAAmB,CAAC,GAAG,SAAS,CAAC;iBACxC;YACH,CAAC,CAAC,CAAC;YACH,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC;QAEF,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QACrF,MAAA,IAAI,CAAC,iBAAiB,EAAE,0CAAE,SAAS,CACjC;YACE,IAAI,EAAE,cAAc;SACrB,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAqB,CAAC;QAC/E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE;YAC7D,YAAY,EAAE,IAAI;SACnB,CAAqB,CAAC;IACzB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEO,oBAAoB;;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;gBAC7B,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxC,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC/C,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC3C,WAAW,EAAE,GAAG,EAAE,WAAC,OAAA,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,mCAAI,CAAC,CAAC,CAAA,EAAA;gBAE9E,WAAW,EAAE,GAAG,EAAE,eAAC,OAAA,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,MAAM,mCAAI,IAAI,CAAC,KAAK,CAAC,WAAW,mCAAI,CAAC,CAAC,CAAA,EAAA;gBACnG,GAAG,EAAE,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,mCAAI,KAAK;gBACjC,UAAU,EAAE,WAAW;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBACrC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBAC9B,MAAM,EAAE,GAAG;gBAIX,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACxC,MAAA,IAAI,CAAC,cAAc,0CAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SAC7D;IACH,CAAC;IAEO,kBAAkB;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;gBAC3B,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxC,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxC,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBACrC,MAAM,EAAE,GAAG;aACZ,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;SACvC;IACH,CAAC;IAES,mBAAmB,CAAC,KAAY;;QACxC,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,KAAK,CAAC,8BAAmB,CAAC,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,8BAAmB,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;QACrB,OAAO,KAAK,GAAG,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAES,iBAAiB,CAAC,KAAY;;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,4BAAiB,CAAC,CAAC,CAAC,CAAC;QAC9E,OAAO,KAAK,GAAG,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,mCAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAED,aAAa;;QACX,MAAM,YAAY,GAAG,MAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,eAA0C,0CAAE,MAAM,CAAC;QAErF,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAClC,IAAA,uBAAe,EACb,+BAAsB,CAAC,gBAAgB,CACrC;YACE,UAAU,EAAE,IAAI,CAAC,WAAW;SAC7B,EACD,YAAY,CACb,EACD,IAAA,2BAAmB,EAAC,8BAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAC5D,CACF,CAAC;IACJ,CAAC;;AArIH,kCAsIC;AArIiB,gBAAI,GAAW,0BAAc,CAAC,KAAK,CAAC;AAGpC,gBAAI,mCACf,wBAAU,CAAC,IAAI,KAClB,CAAC,8BAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,8BAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,wBAAY,CAAC,WAAW,EAAE,EAClG,CAAC,8BAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,8BAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,wBAAY,CAAC,WAAW,EAAE,IAC9F","file":"gauge.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValid, radians } from '../../util';\nimport type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface';\nimport type { IGaugeSeriesSpec, IGaugeSeriesTheme } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport type { IProgressArcMark } from '../../mark/progress-arc';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant';\nimport type { Datum } from '@visactor/vgrammar';\nimport type { Maybe } from '../../typings';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { DEFAULT_MARK_ANIMATION } from '../../animation/config';\nimport { BaseSeries } from '../base/base-series';\n\nexport class GaugeSeries extends ProgressLikeSeries<IGaugeSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n static readonly mark: SeriesMarkMap = {\n ...BaseSeries.mark,\n [SeriesMarkNameEnum.segment]: { name: SeriesMarkNameEnum.segment, type: MarkTypeEnum.progressArc },\n [SeriesMarkNameEnum.track]: { name: SeriesMarkNameEnum.track, type: MarkTypeEnum.progressArc }\n };\n\n protected declare _theme: Maybe<IGaugeSeriesTheme>;\n\n private _segmentMark: IProgressArcMark | null = null;\n private _trackMark: IProgressArcMark | null = null;\n\n protected _stack: boolean = false;\n protected _padAngle: number = 0;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n\n this._padAngle = radians(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Datum[], op: string) => {\n // 数据处理\n const dataCollect = [...data];\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n registerDataSetInstanceTransform(this._option.dataSet, 'spiltSegment', spiltSegment);\n this.getViewDataFilter()?.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n }\n\n initMark(): void {\n this._trackMark = this._createMark(GaugeSeries.mark.track) as IProgressArcMark;\n this._segmentMark = this._createMark(GaugeSeries.mark.segment, {\n isSeriesMark: true\n }) as IProgressArcMark;\n }\n\n initMarkStyle(): void {\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n // 需要优先兼容this._spec.radius\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1),\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n this._trigger.registerMark(segmentMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(segmentMark);\n }\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n this._trigger.registerMark(trackMark);\n }\n }\n\n protected _getAngleValueStart(datum: Datum) {\n const angle = isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n return angle + (this._spec.padAngle ?? 0) / 2;\n }\n\n protected _getAngleValueEnd(datum: Datum) {\n const angle = this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n return angle - (this._spec.padAngle ?? 0) / 2;\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._segmentMark.setAnimationConfig(\n animationConfig(\n DEFAULT_MARK_ANIMATION.circularProgress(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.segment, this._spec)\n )\n );\n }\n}\n"]}
@@ -3,14 +3,15 @@ import type { IArcMarkSpec, IPathMarkSpec, IProgressArcMarkSpec, IRectMarkSpec }
3
3
  import type { IProgressLikeSeriesSpec, IProgressLikeSeriesTheme } from '../polar/progress-like/interface';
4
4
  import type { IAnimationSpec } from '../../animation/spec';
5
5
  import type { ProgressLikeAppearPreset } from '../polar/progress-like';
6
+ import type { SeriesMarkNameEnum } from '../interface';
6
7
  export type GaugePointerMarks = 'pointer' | 'pin' | 'pinBackground';
7
8
  export interface IGaugePointerSeriesSpec extends IProgressLikeSeriesSpec, IAnimationSpec<GaugePointerMarks, ProgressLikeAppearPreset> {
8
9
  type: 'gaugePointer';
9
10
  valueField: string | string[];
10
11
  radiusField: string;
11
- pin?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;
12
- pinBackground?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;
13
- pointer?: IMarkSpec<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec;
12
+ [SeriesMarkNameEnum.pin]?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;
13
+ [SeriesMarkNameEnum.pinBackground]?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;
14
+ [SeriesMarkNameEnum.pointer]?: IMarkSpec<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec;
14
15
  }
15
16
  export type PointerMarkSpec = {
16
17
  type: 'path' | 'rect';
@@ -25,19 +26,19 @@ export type PinMarkSpec = {
25
26
  height?: number;
26
27
  };
27
28
  export interface IGaugePointerSeriesTheme extends IProgressLikeSeriesTheme {
28
- pin?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;
29
- pinBackground?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;
30
- pointer?: Partial<IMarkTheme<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec>;
29
+ [SeriesMarkNameEnum.pin]?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;
30
+ [SeriesMarkNameEnum.pinBackground]?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;
31
+ [SeriesMarkNameEnum.pointer]?: Partial<IMarkTheme<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec>;
31
32
  }
32
33
  export type GaugeMarks = 'segment' | 'track';
33
- export interface IGaugeSeriesSpec extends IProgressLikeSeriesSpec {
34
+ export interface IGaugeSeriesSpec extends IProgressLikeSeriesSpec, IAnimationSpec<GaugeMarks, ProgressLikeAppearPreset> {
34
35
  type: 'gauge';
35
36
  padAngle?: number;
36
- segment?: IMarkSpec<IProgressArcMarkSpec>;
37
- track?: IMarkSpec<IArcMarkSpec>;
37
+ [SeriesMarkNameEnum.segment]?: IMarkSpec<IProgressArcMarkSpec>;
38
+ [SeriesMarkNameEnum.track]?: IMarkSpec<IArcMarkSpec>;
38
39
  }
39
40
  export interface IGaugeSeriesTheme extends IProgressLikeSeriesTheme {
40
41
  padAngle?: number;
41
- segment?: Partial<IMarkTheme<IProgressArcMarkSpec>>;
42
- track?: Partial<IMarkTheme<IArcMarkSpec>>;
42
+ [SeriesMarkNameEnum.segment]?: Partial<IMarkTheme<IProgressArcMarkSpec>>;
43
+ [SeriesMarkNameEnum.track]?: Partial<IMarkTheme<IArcMarkSpec>>;
43
44
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/gauge/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IMarkSpec, IMarkTheme } from '../../typings/spec';\nimport type { IArcMarkSpec, IPathMarkSpec, IProgressArcMarkSpec, IRectMarkSpec } from '../../typings/visual';\nimport type { IProgressLikeSeriesSpec, IProgressLikeSeriesTheme } from '../polar/progress-like/interface';\nimport type { IAnimationSpec } from '../../animation/spec';\nimport type { ProgressLikeAppearPreset } from '../polar/progress-like';\n\nexport type GaugePointerMarks = 'pointer' | 'pin' | 'pinBackground';\n\nexport interface IGaugePointerSeriesSpec\n extends IProgressLikeSeriesSpec,\n IAnimationSpec<GaugePointerMarks, ProgressLikeAppearPreset> {\n type: 'gaugePointer';\n\n /** 数值字段(可影响指针角度) */\n valueField: string | string[];\n\n /** 半径字段(可影响指针长度,GaugePointerSeries 没有 categoryField) */\n radiusField: string;\n\n /** 图钉前景样式 */\n pin?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;\n /** 图钉背景样式 */\n pinBackground?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;\n /** 指针样式 */\n pointer?: IMarkSpec<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec;\n}\n\nexport type PointerMarkSpec = {\n type: 'path' | 'rect';\n\n /** 指针宽度比例(0~1) */\n width?: number;\n /** 指针长度比例(0~1)(为空则挂载 radius) */\n height?: number;\n /** 指针靠近圆心的一端离圆心的距离 */\n innerPadding?: number;\n /** 指针靠近边缘的一端离边缘的距离 */\n outerPadding?: number;\n\n /** 中心点坐标(0~1) */\n center?: [number, number];\n};\n\nexport type PinMarkSpec = {\n /** 宽度 */\n width?: number;\n /** 高度 */\n height?: number;\n};\n\nexport interface IGaugePointerSeriesTheme extends IProgressLikeSeriesTheme {\n /** 图钉前景样式 */\n pin?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;\n /** 图钉背景样式 */\n pinBackground?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;\n /** 指针样式 */\n pointer?: Partial<IMarkTheme<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec>;\n}\n\nexport type GaugeMarks = 'segment' | 'track';\n\nexport interface IGaugeSeriesSpec extends IProgressLikeSeriesSpec {\n type: 'gauge';\n\n /** 扇区间隔角度 */\n padAngle?: number;\n\n /** 扇区样式 */\n segment?: IMarkSpec<IProgressArcMarkSpec>;\n /** 背景样式 */\n track?: IMarkSpec<IArcMarkSpec>;\n}\n\nexport interface IGaugeSeriesTheme extends IProgressLikeSeriesTheme {\n /** 扇区间隔角度 */\n padAngle?: number;\n\n /** 扇区样式 */\n segment?: Partial<IMarkTheme<IProgressArcMarkSpec>>;\n /** 背景样式 */\n track?: Partial<IMarkTheme<IArcMarkSpec>>;\n}\n"]}
1
+ {"version":3,"sources":["../src/series/gauge/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IMarkSpec, IMarkTheme } from '../../typings/spec';\nimport type { IArcMarkSpec, IPathMarkSpec, IProgressArcMarkSpec, IRectMarkSpec } from '../../typings/visual';\nimport type { IProgressLikeSeriesSpec, IProgressLikeSeriesTheme } from '../polar/progress-like/interface';\nimport type { IAnimationSpec } from '../../animation/spec';\nimport type { ProgressLikeAppearPreset } from '../polar/progress-like';\nimport type { SeriesMarkNameEnum } from '../interface';\n\nexport type GaugePointerMarks = 'pointer' | 'pin' | 'pinBackground';\n\nexport interface IGaugePointerSeriesSpec\n extends IProgressLikeSeriesSpec,\n IAnimationSpec<GaugePointerMarks, ProgressLikeAppearPreset> {\n type: 'gaugePointer';\n\n /** 数值字段(可影响指针角度) */\n valueField: string | string[];\n\n /** 半径字段(可影响指针长度,GaugePointerSeries 没有 categoryField) */\n radiusField: string;\n\n /** 图钉前景样式 */\n [SeriesMarkNameEnum.pin]?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;\n /** 图钉背景样式 */\n [SeriesMarkNameEnum.pinBackground]?: IMarkSpec<IPathMarkSpec> & PinMarkSpec;\n /** 指针样式 */\n [SeriesMarkNameEnum.pointer]?: IMarkSpec<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec;\n}\n\nexport type PointerMarkSpec = {\n type: 'path' | 'rect';\n\n /** 指针宽度比例(0~1) */\n width?: number;\n /** 指针长度比例(0~1)(为空则挂载 radius) */\n height?: number;\n /** 指针靠近圆心的一端离圆心的距离 */\n innerPadding?: number;\n /** 指针靠近边缘的一端离边缘的距离 */\n outerPadding?: number;\n\n /** 中心点坐标(0~1) */\n center?: [number, number];\n};\n\nexport type PinMarkSpec = {\n /** 宽度 */\n width?: number;\n /** 高度 */\n height?: number;\n};\n\nexport interface IGaugePointerSeriesTheme extends IProgressLikeSeriesTheme {\n /** 图钉前景样式 */\n [SeriesMarkNameEnum.pin]?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;\n /** 图钉背景样式 */\n [SeriesMarkNameEnum.pinBackground]?: Partial<IMarkTheme<IPathMarkSpec> & PinMarkSpec>;\n /** 指针样式 */\n [SeriesMarkNameEnum.pointer]?: Partial<IMarkTheme<IPathMarkSpec | IRectMarkSpec> & PointerMarkSpec>;\n}\n\nexport type GaugeMarks = 'segment' | 'track';\n\nexport interface IGaugeSeriesSpec\n extends IProgressLikeSeriesSpec,\n IAnimationSpec<GaugeMarks, ProgressLikeAppearPreset> {\n type: 'gauge';\n\n /** 扇区间隔角度 */\n padAngle?: number;\n\n /** 扇区样式 */\n [SeriesMarkNameEnum.segment]?: IMarkSpec<IProgressArcMarkSpec>;\n /** 背景样式 */\n [SeriesMarkNameEnum.track]?: IMarkSpec<IArcMarkSpec>;\n}\n\nexport interface IGaugeSeriesTheme extends IProgressLikeSeriesTheme {\n /** 扇区间隔角度 */\n padAngle?: number;\n\n /** 扇区样式 */\n [SeriesMarkNameEnum.segment]?: Partial<IMarkTheme<IProgressArcMarkSpec>>;\n /** 背景样式 */\n [SeriesMarkNameEnum.track]?: Partial<IMarkTheme<IArcMarkSpec>>;\n}\n"]}
@@ -3,12 +3,14 @@ import type { Maybe } from '../../typings';
3
3
  import type { IHeatmapSeriesSpec, IHeatmapSeriesTheme } from './interface';
4
4
  import type { IAxisHelper } from '../../component/axis/cartesian/interface';
5
5
  import type { ITextMark } from '../../mark/text';
6
+ import type { SeriesMarkMap } from '../interface';
6
7
  import { SeriesTypeEnum } from '../interface';
7
8
  import type { ICellMark } from '../../mark/cell';
8
9
  export declare const DefaultBandWidth = 6;
9
10
  export declare class HeatmapSeries extends CartesianSeries<IHeatmapSeriesSpec> {
10
11
  static readonly type: string;
11
12
  type: SeriesTypeEnum;
13
+ static readonly mark: SeriesMarkMap;
12
14
  protected _theme: Maybe<IHeatmapSeriesTheme>;
13
15
  protected _cellMark: ICellMark;
14
16
  protected _backgroundMark: ICellMark;
@@ -22,7 +24,7 @@ export declare class HeatmapSeries extends CartesianSeries<IHeatmapSeriesSpec> {
22
24
  initCellMarkStyle(): void;
23
25
  initCellBackgroundMarkStyle(): void;
24
26
  getColorAttribute(): {
25
- scale: import("@visactor/vscale").IBaseScale | import("@visactor/vscale").OrdinalScale;
27
+ scale: any;
26
28
  field: any;
27
29
  };
28
30
  initAnimation(): void;
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.HeatmapSeries = exports.DefaultBandWidth = void 0;
6
6
 
7
- const cartesian_1 = require("../cartesian/cartesian"), interface_1 = require("../../mark/interface"), constant_1 = require("../../constant"), util_1 = require("../../util"), utils_1 = require("../../animation/utils"), interface_2 = require("../interface"), config_1 = require("../../animation/config"), vutils_1 = require("@visactor/vutils"), tooltip_helper_1 = require("./tooltip-helper");
7
+ const cartesian_1 = require("../cartesian/cartesian"), interface_1 = require("../../mark/interface"), constant_1 = require("../../constant"), util_1 = require("../../util"), utils_1 = require("../../animation/utils"), interface_2 = require("../interface"), config_1 = require("../../animation/config"), vutils_1 = require("@visactor/vutils"), tooltip_helper_1 = require("./tooltip-helper"), base_series_1 = require("../base/base-series");
8
8
 
9
9
  exports.DefaultBandWidth = 6;
10
10
 
@@ -28,7 +28,7 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
28
28
  large: this._spec.large,
29
29
  largeThreshold: this._spec.largeThreshold
30
30
  };
31
- this._cellMark = this._createMark(interface_1.MarkTypeEnum.cell, "cell", {
31
+ this._cellMark = this._createMark(HeatmapSeries.mark.cell, {
32
32
  morph: (0, utils_1.shouldDoMorph)(this._spec.animation, this._spec.morph, (0, utils_1.userAnimationConfig)("cell", this._spec)),
33
33
  defaultMorphElementKey: this.getDimensionField()[0],
34
34
  isSeriesMark: !0,
@@ -36,7 +36,7 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
36
36
  animation: this._spec.animation
37
37
  }, this._spec.label),
38
38
  progressive: progressive
39
- }), this._backgroundMark = this._createMark(interface_1.MarkTypeEnum.cell, "cellBackground", {
39
+ }), this._backgroundMark = this._createMark(HeatmapSeries.mark.cellBackground, {
40
40
  progressive: progressive
41
41
  });
42
42
  }
@@ -50,15 +50,14 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
50
50
  });
51
51
  }
52
52
  initCellMarkStyle() {
53
- var _a, _b, _c, _d;
53
+ var _a;
54
54
  this.setMarkStyle(this._cellMark, {
55
55
  x: datum => this.dataToPositionX(datum),
56
56
  y: datum => this.dataToPositionY(datum),
57
57
  size: () => [ this.getCellSize(this._xAxisHelper), this.getCellSize(this._yAxisHelper) ],
58
- fill: this.getColorAttribute(),
59
- fillOpacity: null !== (_c = null === (_b = null === (_a = this._theme.cell) || void 0 === _a ? void 0 : _a.style) || void 0 === _b ? void 0 : _b.fillOpacity) && void 0 !== _c ? _c : 1
58
+ fill: this.getColorAttribute()
60
59
  }, "normal", constant_1.AttributeLevel.Series), this._trigger.registerMark(this._cellMark),
61
- null === (_d = this._tooltipHelper) || void 0 === _d || _d.activeTriggerSet.mark.add(this._cellMark);
60
+ null === (_a = this._tooltipHelper) || void 0 === _a || _a.activeTriggerSet.mark.add(this._cellMark);
62
61
  }
63
62
  initCellBackgroundMarkStyle() {
64
63
  var _a, _b, _c;
@@ -87,7 +86,7 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
87
86
  var _a, _b;
88
87
  const appearPreset = null === (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.animationAppear) || void 0 === _b ? void 0 : _b.preset;
89
88
  this._cellMark.setAnimationConfig((0, utils_1.animationConfig)(config_1.DEFAULT_MARK_ANIMATION.heatmap(appearPreset), (0,
90
- utils_1.userAnimationConfig)("cell", this._spec), {
89
+ utils_1.userAnimationConfig)(interface_2.SeriesMarkNameEnum.cell, this._spec), {
91
90
  dataIndex: datum => {
92
91
  var _a, _b, _c;
93
92
  const xValue = null == datum ? void 0 : datum[this._fieldX[0]];
@@ -118,5 +117,15 @@ class HeatmapSeries extends cartesian_1.CartesianSeries {
118
117
  }
119
118
  }
120
119
 
121
- exports.HeatmapSeries = HeatmapSeries, HeatmapSeries.type = interface_2.SeriesTypeEnum.heatmap;
120
+ exports.HeatmapSeries = HeatmapSeries, HeatmapSeries.type = interface_2.SeriesTypeEnum.heatmap,
121
+ HeatmapSeries.mark = Object.assign(Object.assign({}, base_series_1.BaseSeries.mark), {
122
+ [interface_2.SeriesMarkNameEnum.cell]: {
123
+ name: interface_2.SeriesMarkNameEnum.cell,
124
+ type: interface_1.MarkTypeEnum.cell
125
+ },
126
+ [interface_2.SeriesMarkNameEnum.cellBackground]: {
127
+ name: interface_2.SeriesMarkNameEnum.cellBackground,
128
+ type: interface_1.MarkTypeEnum.cell
129
+ }
130
+ });
122
131
  //# sourceMappingURL=heatmap.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/heatmap/heatmap.ts"],"names":[],"mappings":"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","file":"heatmap.js","sourcesContent":["import { CartesianSeries } from '../cartesian/cartesian';\nimport { MarkTypeEnum } from '../../mark/interface';\nimport { AttributeLevel } from '../../constant';\nimport type { Maybe, Datum } from '../../typings';\nimport { array, merge } from '../../util';\nimport type { HeatmapAppearPreset } from './animation';\nimport { animationConfig, shouldDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { IHeatmapSeriesSpec, IHeatmapSeriesTheme } from './interface';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { ITextMark } from '../../mark/text';\nimport { SeriesTypeEnum } from '../interface';\nimport { DEFAULT_MARK_ANIMATION } from '../../animation/config';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ICellMark } from '../../mark/cell';\nimport { normalizePadding } from '@visactor/vutils';\nimport { HeatmapSeriesTooltipHelper } from './tooltip-helper';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class HeatmapSeries extends CartesianSeries<IHeatmapSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.heatmap;\n type = SeriesTypeEnum.heatmap;\n\n protected declare _theme: Maybe<IHeatmapSeriesTheme>;\n\n protected _cellMark: ICellMark;\n protected _backgroundMark: ICellMark;\n\n protected _fieldValue!: string[];\n getFieldValue() {\n return this._fieldValue;\n }\n setFieldValue(f: string | string[]) {\n this._fieldValue = array(f);\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldValue(this._spec.valueField);\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n this._cellMark = this._createMark(MarkTypeEnum.cell, 'cell', {\n morph: shouldDoMorph(this._spec.animation, this._spec.morph, userAnimationConfig('cell', this._spec)),\n defaultMorphElementKey: this.getDimensionField()[0],\n isSeriesMark: true,\n label: merge({ animation: this._spec.animation }, this._spec.label),\n progressive\n }) as ICellMark;\n\n this._backgroundMark = this._createMark(MarkTypeEnum.cell, 'cellBackground', {\n progressive\n }) as ICellMark;\n }\n\n initMarkStyle(): void {\n this.initCellMarkStyle();\n this.initCellBackgroundMarkStyle();\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getMeasureField()[0]];\n }\n });\n }\n\n initCellMarkStyle() {\n this.setMarkStyle(\n this._cellMark,\n {\n x: (datum: Datum) => {\n const pos = this.dataToPositionX(datum);\n return pos;\n },\n y: (datum: Datum) => {\n const pos = this.dataToPositionY(datum);\n return pos;\n },\n size: () => {\n return [this.getCellSize(this._xAxisHelper), this.getCellSize(this._yAxisHelper)];\n },\n fill: this.getColorAttribute(),\n fillOpacity: this._theme.cell?.style?.fillOpacity ?? 1\n },\n 'normal',\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(this._cellMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(this._cellMark);\n }\n\n initCellBackgroundMarkStyle() {\n const padding = normalizePadding(this._spec.cellBackground?.style?.padding ?? 0);\n this.setMarkStyle(\n this._backgroundMark,\n {\n x: (datum: Datum) => {\n const width = this.getCellSize(this._xAxisHelper);\n const pos = this.dataToPositionX(datum);\n return pos - width / 2 + padding[3];\n },\n y: (datum: Datum) => {\n const height = this.getCellSize(this._yAxisHelper);\n const pos = this.dataToPositionY(datum);\n return pos - height / 2 + padding[0];\n },\n width: () => {\n return this.getCellSize(this._xAxisHelper) - padding[1] - padding[3];\n },\n height: () => {\n return this.getCellSize(this._yAxisHelper) - padding[0] - padding[2];\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n // 通用的默认颜色映射 用户设置优先级比这个高,会在setStyle中处理\n getColorAttribute() {\n return {\n // TODO: 为热力图实现默认线性颜色 scale\n scale: this._option.globalScale.getScale('color') ?? this.getDefaultColorScale(),\n field: this.getFieldValue[0]\n };\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<HeatmapAppearPreset>)?.preset;\n // 分组数据的dataIndex应该与x轴顺序一致,而非data[DEFAULT_DATA_INDEX]顺序\n const dataIndex = (datum: any) => {\n const xValue = datum?.[this._fieldX[0]];\n const xIndex = this.getViewDataStatistics()?.latestData?.[this._fieldX[0]]?.values.indexOf(xValue);\n // 不应该出现xIndex === -1 || undefined的情况\n return xIndex || 0;\n };\n\n this._cellMark.setAnimationConfig(\n animationConfig(DEFAULT_MARK_ANIMATION.heatmap(appearPreset), userAnimationConfig('cell', this._spec), {\n dataIndex\n })\n );\n }\n\n protected getCellSize(axisHelper: IAxisHelper) {\n return axisHelper.getBandwidth?.(0) ?? DefaultBandWidth;\n }\n\n /**\n * spec 更新\n * @param spec\n * @returns\n */\n updateSpec(spec: IHeatmapSeriesSpec) {\n // super updateSpec 会执行 setAttrFromSpec 所以先缓存比对值\n const { direction } = this._spec;\n const result = super.updateSpec(spec);\n if (spec.direction !== direction) {\n result.change = true;\n result.reRender = true;\n result.reMake = true;\n }\n return result;\n }\n\n protected initTooltip() {\n this._tooltipHelper = new HeatmapSeriesTooltipHelper(this);\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getDimensionField(): string[] {\n return [].concat(this.fieldX, this.fieldY);\n }\n\n getMeasureField(): string[] {\n return this.getFieldValue();\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/heatmap/heatmap.ts"],"names":[],"mappings":"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","file":"heatmap.js","sourcesContent":["import { CartesianSeries } from '../cartesian/cartesian';\nimport { MarkTypeEnum } from '../../mark/interface';\nimport { AttributeLevel } from '../../constant';\nimport type { Maybe, Datum } from '../../typings';\nimport { array, merge } from '../../util';\nimport type { HeatmapAppearPreset } from './animation';\nimport { animationConfig, shouldDoMorph, userAnimationConfig } from '../../animation/utils';\nimport type { IHeatmapSeriesSpec, IHeatmapSeriesTheme } from './interface';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { ITextMark } from '../../mark/text';\nimport type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface';\nimport { DEFAULT_MARK_ANIMATION } from '../../animation/config';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ICellMark } from '../../mark/cell';\nimport { normalizePadding } from '@visactor/vutils';\nimport { HeatmapSeriesTooltipHelper } from './tooltip-helper';\nimport { BaseSeries } from '../base/base-series';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class HeatmapSeries extends CartesianSeries<IHeatmapSeriesSpec> {\n static readonly type: string = SeriesTypeEnum.heatmap;\n type = SeriesTypeEnum.heatmap;\n\n static readonly mark: SeriesMarkMap = {\n ...BaseSeries.mark,\n [SeriesMarkNameEnum.cell]: { name: SeriesMarkNameEnum.cell, type: MarkTypeEnum.cell },\n [SeriesMarkNameEnum.cellBackground]: { name: SeriesMarkNameEnum.cellBackground, type: MarkTypeEnum.cell }\n };\n\n protected declare _theme: Maybe<IHeatmapSeriesTheme>;\n\n protected _cellMark: ICellMark;\n protected _backgroundMark: ICellMark;\n\n protected _fieldValue!: string[];\n getFieldValue() {\n return this._fieldValue;\n }\n setFieldValue(f: string | string[]) {\n this._fieldValue = array(f);\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldValue(this._spec.valueField);\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n this._cellMark = this._createMark(HeatmapSeries.mark.cell, {\n morph: shouldDoMorph(this._spec.animation, this._spec.morph, userAnimationConfig('cell', this._spec)),\n defaultMorphElementKey: this.getDimensionField()[0],\n isSeriesMark: true,\n label: merge({ animation: this._spec.animation }, this._spec.label),\n progressive\n }) as ICellMark;\n\n this._backgroundMark = this._createMark(HeatmapSeries.mark.cellBackground, {\n progressive\n }) as ICellMark;\n }\n\n initMarkStyle(): void {\n this.initCellMarkStyle();\n this.initCellBackgroundMarkStyle();\n }\n\n initLabelMarkStyle(textMark: ITextMark) {\n if (!textMark) {\n return;\n }\n this.setMarkStyle(textMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getMeasureField()[0]];\n }\n });\n }\n\n initCellMarkStyle() {\n this.setMarkStyle(\n this._cellMark,\n {\n x: (datum: Datum) => {\n const pos = this.dataToPositionX(datum);\n return pos;\n },\n y: (datum: Datum) => {\n const pos = this.dataToPositionY(datum);\n return pos;\n },\n size: () => {\n return [this.getCellSize(this._xAxisHelper), this.getCellSize(this._yAxisHelper)];\n },\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(this._cellMark);\n this._tooltipHelper?.activeTriggerSet.mark.add(this._cellMark);\n }\n\n initCellBackgroundMarkStyle() {\n const padding = normalizePadding(this._spec.cellBackground?.style?.padding ?? 0);\n this.setMarkStyle(\n this._backgroundMark,\n {\n x: (datum: Datum) => {\n const width = this.getCellSize(this._xAxisHelper);\n const pos = this.dataToPositionX(datum);\n return pos - width / 2 + padding[3];\n },\n y: (datum: Datum) => {\n const height = this.getCellSize(this._yAxisHelper);\n const pos = this.dataToPositionY(datum);\n return pos - height / 2 + padding[0];\n },\n width: () => {\n return this.getCellSize(this._xAxisHelper) - padding[1] - padding[3];\n },\n height: () => {\n return this.getCellSize(this._yAxisHelper) - padding[0] - padding[2];\n }\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n // 通用的默认颜色映射 用户设置优先级比这个高,会在setStyle中处理\n getColorAttribute() {\n return {\n // TODO: 为热力图实现默认线性颜色 scale\n scale: this._option.globalScale.getScale('color') ?? this.getDefaultColorScale(),\n field: this.getFieldValue[0]\n };\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<HeatmapAppearPreset>)?.preset;\n // 分组数据的dataIndex应该与x轴顺序一致,而非data[DEFAULT_DATA_INDEX]顺序\n const dataIndex = (datum: any) => {\n const xValue = datum?.[this._fieldX[0]];\n const xIndex = this.getViewDataStatistics()?.latestData?.[this._fieldX[0]]?.values.indexOf(xValue);\n // 不应该出现xIndex === -1 || undefined的情况\n return xIndex || 0;\n };\n\n this._cellMark.setAnimationConfig(\n animationConfig(\n DEFAULT_MARK_ANIMATION.heatmap(appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.cell, this._spec),\n {\n dataIndex\n }\n )\n );\n }\n\n protected getCellSize(axisHelper: IAxisHelper) {\n return axisHelper.getBandwidth?.(0) ?? DefaultBandWidth;\n }\n\n /**\n * spec 更新\n * @param spec\n * @returns\n */\n updateSpec(spec: IHeatmapSeriesSpec) {\n // super updateSpec 会执行 setAttrFromSpec 所以先缓存比对值\n const { direction } = this._spec;\n const result = super.updateSpec(spec);\n if (spec.direction !== direction) {\n result.change = true;\n result.reRender = true;\n result.reMake = true;\n }\n return result;\n }\n\n protected initTooltip() {\n this._tooltipHelper = new HeatmapSeriesTooltipHelper(this);\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getDimensionField(): string[] {\n return [].concat(this.fieldX, this.fieldY);\n }\n\n getMeasureField(): string[] {\n return this.getFieldValue();\n }\n}\n"]}
@@ -5,18 +5,19 @@ import type { IAnimationSpec } from '../../animation/spec';
5
5
  import type { HeatmapAppearPreset } from './animation';
6
6
  import type { ILabelSpec } from '../../component/label';
7
7
  import type { IMarkProgressiveConfig } from '../../mark/interface';
8
+ import type { SeriesMarkNameEnum } from '../interface';
8
9
  type HeatmapMarks = 'cell' | 'background' | 'label';
9
10
  export interface IHeatmapSeriesSpec extends ICartesianSeriesSpec, IAnimationSpec<HeatmapMarks, HeatmapAppearPreset>, IMarkProgressiveConfig {
10
11
  type: 'heatmap';
11
12
  valueField?: string;
12
- cell?: IMarkSpec<IRectMarkSpec>;
13
- cellBackground?: IMarkSpec<IRectMarkSpec>;
14
- label?: ILabelSpec & {
13
+ [SeriesMarkNameEnum.cell]?: IMarkSpec<IRectMarkSpec>;
14
+ [SeriesMarkNameEnum.cellBackground]?: IMarkSpec<IRectMarkSpec>;
15
+ [SeriesMarkNameEnum.label]?: ILabelSpec & {
15
16
  position?: 'inside' | 'inside-top' | 'inside-bottom' | 'inside-right' | 'inside-left';
16
17
  };
17
18
  }
18
19
  export interface IHeatmapSeriesTheme extends ICartesianSeriesTheme {
19
- cell?: Partial<IMarkTheme<IRectMarkSpec>>;
20
- cellBackground?: Partial<IMarkTheme<IRectMarkSpec>>;
20
+ [SeriesMarkNameEnum.cell]?: Partial<IMarkTheme<IRectMarkSpec>>;
21
+ [SeriesMarkNameEnum.cellBackground]?: Partial<IMarkTheme<IRectMarkSpec>>;
21
22
  }
22
23
  export {};
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/heatmap/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { ICartesianSeriesSpec, ICartesianSeriesTheme } from '../cartesian/interface';\nimport type { IMarkSpec, IMarkTheme } from '../../typings/spec/common';\nimport type { IRectMarkSpec } from '../../typings/visual';\nimport type { IAnimationSpec } from '../../animation/spec';\nimport type { HeatmapAppearPreset } from './animation';\nimport type { ILabelSpec } from '../../component/label';\nimport type { IMarkProgressiveConfig } from '../../mark/interface';\n\ntype HeatmapMarks = 'cell' | 'background' | 'label';\n\nexport interface IHeatmapSeriesSpec\n extends ICartesianSeriesSpec,\n IAnimationSpec<HeatmapMarks, HeatmapAppearPreset>,\n IMarkProgressiveConfig {\n /**\n * 系列类型\n */\n type: 'heatmap';\n\n /** 值 field */\n valueField?: string;\n\n /** 图元配置 */\n cell?: IMarkSpec<IRectMarkSpec>;\n\n /** 图元背景配置 */\n cellBackground?: IMarkSpec<IRectMarkSpec>;\n\n /** 标签配置*/\n label?: ILabelSpec & {\n /** 标签位置 */\n position?: 'inside' | 'inside-top' | 'inside-bottom' | 'inside-right' | 'inside-left';\n };\n}\n\nexport interface IHeatmapSeriesTheme extends ICartesianSeriesTheme {\n cell?: Partial<IMarkTheme<IRectMarkSpec>>;\n cellBackground?: Partial<IMarkTheme<IRectMarkSpec>>;\n}\n"]}
1
+ {"version":3,"sources":["../src/series/heatmap/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { ICartesianSeriesSpec, ICartesianSeriesTheme } from '../cartesian/interface';\nimport type { IMarkSpec, IMarkTheme } from '../../typings/spec/common';\nimport type { IRectMarkSpec } from '../../typings/visual';\nimport type { IAnimationSpec } from '../../animation/spec';\nimport type { HeatmapAppearPreset } from './animation';\nimport type { ILabelSpec } from '../../component/label';\nimport type { IMarkProgressiveConfig } from '../../mark/interface';\nimport type { SeriesMarkNameEnum } from '../interface';\n\ntype HeatmapMarks = 'cell' | 'background' | 'label';\n\nexport interface IHeatmapSeriesSpec\n extends ICartesianSeriesSpec,\n IAnimationSpec<HeatmapMarks, HeatmapAppearPreset>,\n IMarkProgressiveConfig {\n /**\n * 系列类型\n */\n type: 'heatmap';\n\n /** 值 field */\n valueField?: string;\n\n /** 图元配置 */\n [SeriesMarkNameEnum.cell]?: IMarkSpec<IRectMarkSpec>;\n\n /** 图元背景配置 */\n [SeriesMarkNameEnum.cellBackground]?: IMarkSpec<IRectMarkSpec>;\n\n /** 标签配置*/\n [SeriesMarkNameEnum.label]?: ILabelSpec & {\n /** 标签位置 */\n position?: 'inside' | 'inside-top' | 'inside-bottom' | 'inside-right' | 'inside-left';\n };\n}\n\nexport interface IHeatmapSeriesTheme extends ICartesianSeriesTheme {\n [SeriesMarkNameEnum.cell]?: Partial<IMarkTheme<IRectMarkSpec>>;\n [SeriesMarkNameEnum.cellBackground]?: Partial<IMarkTheme<IRectMarkSpec>>;\n}\n"]}