@visactor/vchart 1.10.0-alpha.4 → 1.10.0-alpha.5

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 (553) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +32729 -32038
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/utils.js +5 -5
  6. package/cjs/animation/utils.js.map +1 -1
  7. package/cjs/chart/base/base-chart-transformer.js +7 -9
  8. package/cjs/chart/base/base-chart-transformer.js.map +1 -1
  9. package/cjs/chart/base/base-chart.d.ts +1 -1
  10. package/cjs/chart/base/base-chart.js.map +1 -1
  11. package/cjs/chart/interface/chart.d.ts +1 -1
  12. package/cjs/chart/interface/chart.js.map +1 -1
  13. package/cjs/chart/progress/circular/circular-progress-transformer.js +2 -0
  14. package/cjs/chart/progress/circular/circular-progress-transformer.js.map +1 -1
  15. package/cjs/compile/compiler.d.ts +1 -1
  16. package/cjs/compile/compiler.js +3 -3
  17. package/cjs/compile/compiler.js.map +1 -1
  18. package/cjs/compile/mark/interface.js.map +1 -1
  19. package/cjs/component/axis/base-axis.d.ts +9 -6
  20. package/cjs/component/axis/base-axis.js +37 -6
  21. package/cjs/component/axis/base-axis.js.map +1 -1
  22. package/cjs/component/axis/cartesian/axis.d.ts +1 -5
  23. package/cjs/component/axis/cartesian/axis.js +9 -31
  24. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  25. package/cjs/component/axis/cartesian/time-axis.d.ts +1 -1
  26. package/cjs/component/axis/cartesian/time-axis.js +3 -3
  27. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  28. package/cjs/component/axis/cartesian/util/index.d.ts +0 -1
  29. package/cjs/component/axis/cartesian/util/index.js +1 -1
  30. package/cjs/component/axis/cartesian/util/index.js.map +1 -1
  31. package/cjs/component/axis/interface/common.d.ts +2 -1
  32. package/cjs/component/axis/interface/common.js.map +1 -1
  33. package/cjs/component/axis/interface/spec.d.ts +2 -0
  34. package/cjs/component/axis/interface/spec.js.map +1 -1
  35. package/cjs/component/axis/polar/axis.d.ts +1 -5
  36. package/cjs/component/axis/polar/axis.js +5 -23
  37. package/cjs/component/axis/polar/axis.js.map +1 -1
  38. package/cjs/component/base/util.d.ts +5 -0
  39. package/cjs/component/base/util.js +24 -16
  40. package/cjs/component/base/util.js.map +1 -1
  41. package/cjs/component/crosshair/base.d.ts +4 -1
  42. package/cjs/component/crosshair/base.js +1 -10
  43. package/cjs/component/crosshair/base.js.map +1 -1
  44. package/cjs/component/crosshair/cartesian.d.ts +1 -7
  45. package/cjs/component/crosshair/cartesian.js +17 -208
  46. package/cjs/component/crosshair/cartesian.js.map +1 -1
  47. package/cjs/component/crosshair/config.js.map +1 -1
  48. package/cjs/component/crosshair/interface/cartesian.d.ts +46 -0
  49. package/cjs/component/crosshair/interface/cartesian.js +6 -0
  50. package/cjs/component/crosshair/interface/cartesian.js.map +1 -0
  51. package/cjs/component/crosshair/interface/common.d.ts +7 -0
  52. package/cjs/component/crosshair/interface/common.js +6 -0
  53. package/cjs/component/crosshair/interface/common.js.map +1 -0
  54. package/cjs/component/crosshair/interface/index.d.ts +3 -0
  55. package/cjs/component/crosshair/interface/index.js +3 -1
  56. package/cjs/component/crosshair/interface/index.js.map +1 -1
  57. package/cjs/component/crosshair/interface/polar.d.ts +23 -0
  58. package/cjs/component/crosshair/interface/polar.js +6 -0
  59. package/cjs/component/crosshair/interface/polar.js.map +1 -0
  60. package/cjs/component/crosshair/interface/spec.d.ts +1 -0
  61. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  62. package/cjs/component/crosshair/polar.d.ts +2 -2
  63. package/cjs/component/crosshair/polar.js +17 -114
  64. package/cjs/component/crosshair/polar.js.map +1 -1
  65. package/cjs/component/crosshair/utils/cartesian.d.ts +32 -0
  66. package/cjs/component/crosshair/utils/cartesian.js +238 -0
  67. package/cjs/component/crosshair/utils/cartesian.js.map +1 -0
  68. package/{esm/component/crosshair/util.d.ts → cjs/component/crosshair/utils/common.d.ts} +3 -3
  69. package/cjs/component/crosshair/{util.js → utils/common.js} +2 -2
  70. package/cjs/component/crosshair/utils/common.js.map +1 -0
  71. package/cjs/component/crosshair/utils/index.d.ts +1 -0
  72. package/cjs/component/crosshair/utils/index.js +21 -0
  73. package/cjs/component/crosshair/utils/index.js.map +1 -0
  74. package/cjs/component/crosshair/utils/polar.d.ts +37 -0
  75. package/cjs/component/crosshair/utils/polar.js +133 -0
  76. package/cjs/component/crosshair/utils/polar.js.map +1 -0
  77. package/cjs/component/custom-mark/custom-mark.js +2 -1
  78. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  79. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -0
  80. package/cjs/component/data-zoom/data-zoom/data-zoom.js +10 -3
  81. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  82. package/cjs/component/data-zoom/data-zoom/interface.d.ts +4 -5
  83. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  84. package/cjs/component/data-zoom/scroll-bar/interface.d.ts +2 -4
  85. package/cjs/component/data-zoom/scroll-bar/interface.js.map +1 -1
  86. package/cjs/component/data-zoom/util.d.ts +0 -4
  87. package/cjs/component/data-zoom/util.js +2 -10
  88. package/cjs/component/data-zoom/util.js.map +1 -1
  89. package/cjs/component/index.d.ts +1 -0
  90. package/cjs/component/index.js +16 -1
  91. package/cjs/component/index.js.map +1 -1
  92. package/cjs/component/interface/theme.d.ts +8 -0
  93. package/cjs/component/interface/theme.js.map +1 -1
  94. package/cjs/component/label/interface.d.ts +1 -1
  95. package/cjs/component/label/interface.js.map +1 -1
  96. package/cjs/component/label/util.js +4 -4
  97. package/cjs/component/label/util.js.map +1 -1
  98. package/cjs/component/legend/continuous/interface.d.ts +6 -12
  99. package/cjs/component/legend/continuous/interface.js.map +1 -1
  100. package/cjs/component/legend/discrete/interface.d.ts +17 -4
  101. package/cjs/component/legend/discrete/interface.js.map +1 -1
  102. package/cjs/component/legend/discrete/legend.d.ts +1 -0
  103. package/cjs/component/legend/discrete/legend.js +11 -2
  104. package/cjs/component/legend/discrete/legend.js.map +1 -1
  105. package/cjs/component/legend/discrete/util.js +6 -4
  106. package/cjs/component/legend/discrete/util.js.map +1 -1
  107. package/cjs/component/legend/util.d.ts +1 -2
  108. package/cjs/component/legend/util.js +2 -6
  109. package/cjs/component/legend/util.js.map +1 -1
  110. package/cjs/component/player/interface/theme.d.ts +1 -1
  111. package/cjs/component/player/interface/theme.js.map +1 -1
  112. package/cjs/component/player/utils/transform.js.map +1 -1
  113. package/cjs/component/tooltip/interface/common.d.ts +2 -2
  114. package/cjs/component/tooltip/interface/common.js.map +1 -1
  115. package/cjs/component/tooltip/interface/event.d.ts +0 -2
  116. package/cjs/component/tooltip/interface/event.js.map +1 -1
  117. package/cjs/component/tooltip/interface/index.d.ts +1 -0
  118. package/cjs/component/tooltip/interface/index.js +1 -1
  119. package/cjs/component/tooltip/interface/index.js.map +1 -1
  120. package/cjs/component/tooltip/interface/spec.d.ts +2 -2
  121. package/cjs/component/tooltip/interface/spec.js.map +1 -1
  122. package/cjs/component/tooltip/interface/theme.d.ts +3 -3
  123. package/cjs/component/tooltip/interface/theme.js.map +1 -1
  124. package/cjs/component/tooltip/processor/dimension-tooltip.js +2 -1
  125. package/cjs/component/tooltip/processor/dimension-tooltip.js.map +1 -1
  126. package/cjs/component/tooltip/processor/mark-tooltip.js +2 -1
  127. package/cjs/component/tooltip/processor/mark-tooltip.js.map +1 -1
  128. package/cjs/component/tooltip/tooltip.d.ts +3 -3
  129. package/cjs/component/tooltip/tooltip.js +7 -5
  130. package/cjs/component/tooltip/tooltip.js.map +1 -1
  131. package/cjs/component/tooltip/utils/show-tooltip.js +3 -0
  132. package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
  133. package/cjs/component/util.d.ts +8 -0
  134. package/cjs/component/util.js +15 -3
  135. package/cjs/component/util.js.map +1 -1
  136. package/cjs/core/factory.d.ts +3 -0
  137. package/cjs/core/factory.js +6 -0
  138. package/cjs/core/factory.js.map +1 -1
  139. package/cjs/core/index.d.ts +2 -1
  140. package/cjs/core/index.js +3 -2
  141. package/cjs/core/index.js.map +1 -1
  142. package/cjs/core/interface.d.ts +1 -1
  143. package/cjs/core/interface.js.map +1 -1
  144. package/cjs/core/vchart.d.ts +2 -1
  145. package/cjs/core/vchart.js +2 -2
  146. package/cjs/core/vchart.js.map +1 -1
  147. package/cjs/data/initialize.js.map +1 -1
  148. package/cjs/event/events/dimension/interface.d.ts +3 -2
  149. package/cjs/event/events/dimension/interface.js.map +1 -1
  150. package/cjs/event/events/dimension/util/cartesian.js +1 -0
  151. package/cjs/event/events/dimension/util/cartesian.js.map +1 -1
  152. package/cjs/event/events/dimension/util/polar.js +2 -0
  153. package/cjs/event/events/dimension/util/polar.js.map +1 -1
  154. package/cjs/index-lark.js +2 -2
  155. package/cjs/index-lark.js.map +1 -1
  156. package/cjs/index-wx-simple.js +2 -2
  157. package/cjs/index-wx-simple.js.map +1 -1
  158. package/cjs/index-wx.js +2 -2
  159. package/cjs/index-wx.js.map +1 -1
  160. package/cjs/index.d.ts +1 -0
  161. package/cjs/index.js +1 -1
  162. package/cjs/index.js.map +1 -1
  163. package/cjs/mark/arc.js +3 -1
  164. package/cjs/mark/arc.js.map +1 -1
  165. package/cjs/mark/base/base-mark.d.ts +3 -3
  166. package/cjs/mark/base/base-mark.js +20 -13
  167. package/cjs/mark/base/base-mark.js.map +1 -1
  168. package/cjs/mark/index.d.ts +2 -3
  169. package/cjs/mark/index.js +1 -10
  170. package/cjs/mark/index.js.map +1 -1
  171. package/cjs/mark/interface/type.d.ts +0 -1
  172. package/cjs/mark/interface/type.js +2 -3
  173. package/cjs/mark/interface/type.js.map +1 -1
  174. package/cjs/plugin/chart/formatter/formatter.d.ts +28 -0
  175. package/cjs/plugin/chart/formatter/formatter.js +74 -0
  176. package/cjs/plugin/chart/formatter/formatter.js.map +1 -0
  177. package/cjs/plugin/chart/formatter/index.d.ts +1 -0
  178. package/cjs/plugin/chart/formatter/index.js +21 -0
  179. package/cjs/plugin/chart/formatter/index.js.map +1 -0
  180. package/cjs/plugin/components/index.d.ts +2 -5
  181. package/cjs/plugin/components/index.js +16 -7
  182. package/cjs/plugin/components/index.js.map +1 -1
  183. package/cjs/plugin/components/tooltip-handler/base.d.ts +6 -6
  184. package/cjs/plugin/components/tooltip-handler/base.js +112 -51
  185. package/cjs/plugin/components/tooltip-handler/base.js.map +1 -1
  186. package/cjs/plugin/components/tooltip-handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  187. package/cjs/plugin/components/tooltip-handler/canvas/canvas-tooltip-handler.js.map +1 -1
  188. package/cjs/plugin/components/tooltip-handler/constants.d.ts +2 -2
  189. package/cjs/plugin/components/tooltip-handler/constants.js.map +1 -1
  190. package/cjs/plugin/components/tooltip-handler/dom/dom-tooltip-handler.d.ts +8 -4
  191. package/cjs/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js +31 -9
  192. package/cjs/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js.map +1 -1
  193. package/cjs/plugin/components/tooltip-handler/dom/model/base-tooltip-model.d.ts +2 -2
  194. package/cjs/plugin/components/tooltip-handler/dom/model/base-tooltip-model.js.map +1 -1
  195. package/cjs/plugin/components/tooltip-handler/dom/model/content-column-model.d.ts +2 -2
  196. package/cjs/plugin/components/tooltip-handler/dom/model/content-column-model.js +2 -3
  197. package/cjs/plugin/components/tooltip-handler/dom/model/content-column-model.js.map +1 -1
  198. package/cjs/plugin/components/tooltip-handler/dom/model/interface.d.ts +2 -2
  199. package/cjs/plugin/components/tooltip-handler/dom/model/interface.js.map +1 -1
  200. package/cjs/plugin/components/tooltip-handler/utils/attribute.d.ts +2 -2
  201. package/cjs/plugin/components/tooltip-handler/utils/attribute.js +1 -1
  202. package/cjs/plugin/components/tooltip-handler/utils/attribute.js.map +1 -1
  203. package/cjs/plugin/components/tooltip-handler/utils/common.d.ts +3 -3
  204. package/cjs/plugin/components/tooltip-handler/utils/common.js +9 -3
  205. package/cjs/plugin/components/tooltip-handler/utils/common.js.map +1 -1
  206. package/cjs/plugin/components/tooltip-handler/utils/compose.d.ts +2 -2
  207. package/cjs/plugin/components/tooltip-handler/utils/compose.js +9 -8
  208. package/cjs/plugin/components/tooltip-handler/utils/compose.js.map +1 -1
  209. package/cjs/plugin/components/tooltip-handler/utils/get-spec.js +12 -9
  210. package/cjs/plugin/components/tooltip-handler/utils/get-spec.js.map +1 -1
  211. package/cjs/plugin/components/tooltip-handler/utils/position.d.ts +18 -3
  212. package/cjs/plugin/components/tooltip-handler/utils/position.js +49 -8
  213. package/cjs/plugin/components/tooltip-handler/utils/position.js.map +1 -1
  214. package/cjs/plugin/index.d.ts +1 -0
  215. package/cjs/plugin/index.js +1 -1
  216. package/cjs/plugin/index.js.map +1 -1
  217. package/cjs/series/base/base-series.js +2 -1
  218. package/cjs/series/base/base-series.js.map +1 -1
  219. package/cjs/series/base/tooltip-helper.d.ts +3 -3
  220. package/cjs/series/base/tooltip-helper.js.map +1 -1
  221. package/cjs/series/dot/tooltip-helper.js +2 -2
  222. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  223. package/cjs/series/gauge/constant.js +2 -2
  224. package/cjs/series/gauge/constant.js.map +1 -1
  225. package/cjs/series/gauge/gauge.js +2 -2
  226. package/cjs/series/gauge/gauge.js.map +1 -1
  227. package/cjs/series/gauge/interface.d.ts +3 -3
  228. package/cjs/series/gauge/interface.js.map +1 -1
  229. package/cjs/series/interface/common.d.ts +1 -1
  230. package/cjs/series/interface/common.js.map +1 -1
  231. package/cjs/series/link/tooltip-helper.js +2 -2
  232. package/cjs/series/link/tooltip-helper.js.map +1 -1
  233. package/cjs/series/polar/progress-like/progress-like.js +24 -26
  234. package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
  235. package/cjs/series/progress/circular/circular.js +3 -4
  236. package/cjs/series/progress/circular/circular.js.map +1 -1
  237. package/cjs/series/progress/circular/constant.js +2 -2
  238. package/cjs/series/progress/circular/constant.js.map +1 -1
  239. package/cjs/series/progress/circular/interface.d.ts +5 -5
  240. package/cjs/series/progress/circular/interface.js.map +1 -1
  241. package/cjs/series/range-area/tooltip-helper.js.map +1 -1
  242. package/cjs/series/sankey/tooltip-helper.js.map +1 -1
  243. package/cjs/series/sunburst/sunburst.d.ts +1 -1
  244. package/cjs/series/word-cloud/interface.js.map +1 -1
  245. package/cjs/theme/builtin/common/mark.js +2 -1
  246. package/cjs/theme/builtin/common/mark.js.map +1 -1
  247. package/cjs/theme/builtin/common/series/box-plot.js +5 -0
  248. package/cjs/theme/builtin/common/series/box-plot.js.map +1 -1
  249. package/cjs/theme/builtin/common/series/rangeColumn.js +1 -0
  250. package/cjs/theme/builtin/common/series/rangeColumn.js.map +1 -1
  251. package/cjs/theme/builtin/common/series/waterfall.js +4 -1
  252. package/cjs/theme/builtin/common/series/waterfall.js.map +1 -1
  253. package/cjs/typings/spec/common.d.ts +4 -3
  254. package/cjs/typings/spec/common.js.map +1 -1
  255. package/cjs/typings/tooltip/line.d.ts +5 -2
  256. package/cjs/typings/tooltip/line.js.map +1 -1
  257. package/cjs/typings/tooltip/position.d.ts +21 -10
  258. package/cjs/typings/tooltip/position.js.map +1 -1
  259. package/cjs/typings/tooltip/shape.d.ts +2 -2
  260. package/cjs/typings/tooltip/shape.js.map +1 -1
  261. package/cjs/typings/tooltip/tooltip.d.ts +8 -8
  262. package/cjs/typings/tooltip/tooltip.js.map +1 -1
  263. package/cjs/typings/visual.d.ts +2 -4
  264. package/cjs/typings/visual.js.map +1 -1
  265. package/cjs/util/index.d.ts +1 -2
  266. package/cjs/util/index.js +2 -2
  267. package/cjs/util/index.js.map +1 -1
  268. package/cjs/vchart-all.js +2 -2
  269. package/cjs/vchart-all.js.map +1 -1
  270. package/cjs/vchart-simple.js +2 -2
  271. package/cjs/vchart-simple.js.map +1 -1
  272. package/esm/animation/utils.js +5 -5
  273. package/esm/animation/utils.js.map +1 -1
  274. package/esm/chart/base/base-chart-transformer.js +7 -9
  275. package/esm/chart/base/base-chart-transformer.js.map +1 -1
  276. package/esm/chart/base/base-chart.d.ts +1 -1
  277. package/esm/chart/base/base-chart.js.map +1 -1
  278. package/esm/chart/interface/chart.d.ts +1 -1
  279. package/esm/chart/interface/chart.js.map +1 -1
  280. package/esm/chart/progress/circular/circular-progress-transformer.js +2 -0
  281. package/esm/chart/progress/circular/circular-progress-transformer.js.map +1 -1
  282. package/esm/compile/compiler.d.ts +1 -1
  283. package/esm/compile/compiler.js +4 -4
  284. package/esm/compile/compiler.js.map +1 -1
  285. package/esm/compile/mark/interface.js.map +1 -1
  286. package/esm/component/axis/base-axis.d.ts +9 -6
  287. package/esm/component/axis/base-axis.js +39 -5
  288. package/esm/component/axis/base-axis.js.map +1 -1
  289. package/esm/component/axis/cartesian/axis.d.ts +1 -5
  290. package/esm/component/axis/cartesian/axis.js +8 -26
  291. package/esm/component/axis/cartesian/axis.js.map +1 -1
  292. package/esm/component/axis/cartesian/time-axis.d.ts +1 -1
  293. package/esm/component/axis/cartesian/time-axis.js +2 -2
  294. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  295. package/esm/component/axis/cartesian/util/index.d.ts +0 -1
  296. package/esm/component/axis/cartesian/util/index.js +0 -2
  297. package/esm/component/axis/cartesian/util/index.js.map +1 -1
  298. package/esm/component/axis/interface/common.d.ts +2 -1
  299. package/esm/component/axis/interface/common.js.map +1 -1
  300. package/esm/component/axis/interface/spec.d.ts +2 -0
  301. package/esm/component/axis/interface/spec.js.map +1 -1
  302. package/esm/component/axis/polar/axis.d.ts +1 -5
  303. package/esm/component/axis/polar/axis.js +5 -23
  304. package/esm/component/axis/polar/axis.js.map +1 -1
  305. package/esm/component/base/util.d.ts +5 -0
  306. package/esm/component/base/util.js +12 -9
  307. package/esm/component/base/util.js.map +1 -1
  308. package/esm/component/crosshair/base.d.ts +4 -1
  309. package/esm/component/crosshair/base.js +1 -10
  310. package/esm/component/crosshair/base.js.map +1 -1
  311. package/esm/component/crosshair/cartesian.d.ts +1 -7
  312. package/esm/component/crosshair/cartesian.js +20 -206
  313. package/esm/component/crosshair/cartesian.js.map +1 -1
  314. package/esm/component/crosshair/config.js.map +1 -1
  315. package/esm/component/crosshair/interface/cartesian.d.ts +46 -0
  316. package/esm/component/crosshair/interface/cartesian.js +2 -0
  317. package/esm/component/crosshair/interface/cartesian.js.map +1 -0
  318. package/esm/component/crosshair/interface/common.d.ts +7 -0
  319. package/esm/component/crosshair/interface/common.js +2 -0
  320. package/esm/component/crosshair/interface/common.js.map +1 -0
  321. package/esm/component/crosshair/interface/index.d.ts +3 -0
  322. package/esm/component/crosshair/interface/index.js +6 -0
  323. package/esm/component/crosshair/interface/index.js.map +1 -1
  324. package/esm/component/crosshair/interface/polar.d.ts +23 -0
  325. package/esm/component/crosshair/interface/polar.js +2 -0
  326. package/esm/component/crosshair/interface/polar.js.map +1 -0
  327. package/esm/component/crosshair/interface/spec.d.ts +1 -0
  328. package/esm/component/crosshair/interface/spec.js.map +1 -1
  329. package/esm/component/crosshair/polar.d.ts +2 -2
  330. package/esm/component/crosshair/polar.js +19 -116
  331. package/esm/component/crosshair/polar.js.map +1 -1
  332. package/esm/component/crosshair/utils/cartesian.d.ts +32 -0
  333. package/esm/component/crosshair/utils/cartesian.js +233 -0
  334. package/esm/component/crosshair/utils/cartesian.js.map +1 -0
  335. package/{cjs/component/crosshair/util.d.ts → esm/component/crosshair/utils/common.d.ts} +3 -3
  336. package/esm/component/crosshair/{util.js → utils/common.js} +6 -6
  337. package/esm/component/crosshair/utils/common.js.map +1 -0
  338. package/esm/component/crosshair/utils/index.d.ts +1 -0
  339. package/esm/component/crosshair/utils/index.js +2 -0
  340. package/esm/component/crosshair/utils/index.js.map +1 -0
  341. package/esm/component/crosshair/utils/polar.d.ts +37 -0
  342. package/esm/component/crosshair/utils/polar.js +125 -0
  343. package/esm/component/crosshair/utils/polar.js.map +1 -0
  344. package/esm/component/custom-mark/custom-mark.js +2 -1
  345. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  346. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -0
  347. package/esm/component/data-zoom/data-zoom/data-zoom.js +10 -2
  348. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  349. package/esm/component/data-zoom/data-zoom/interface.d.ts +4 -5
  350. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  351. package/esm/component/data-zoom/scroll-bar/interface.d.ts +2 -4
  352. package/esm/component/data-zoom/scroll-bar/interface.js.map +1 -1
  353. package/esm/component/data-zoom/util.d.ts +0 -4
  354. package/esm/component/data-zoom/util.js +1 -10
  355. package/esm/component/data-zoom/util.js.map +1 -1
  356. package/esm/component/index.d.ts +1 -0
  357. package/esm/component/index.js +2 -0
  358. package/esm/component/index.js.map +1 -1
  359. package/esm/component/interface/theme.d.ts +8 -0
  360. package/esm/component/interface/theme.js.map +1 -1
  361. package/esm/component/label/interface.d.ts +1 -1
  362. package/esm/component/label/interface.js.map +1 -1
  363. package/esm/component/label/util.js +6 -3
  364. package/esm/component/label/util.js.map +1 -1
  365. package/esm/component/legend/continuous/interface.d.ts +6 -12
  366. package/esm/component/legend/continuous/interface.js.map +1 -1
  367. package/esm/component/legend/discrete/interface.d.ts +17 -4
  368. package/esm/component/legend/discrete/interface.js.map +1 -1
  369. package/esm/component/legend/discrete/legend.d.ts +1 -0
  370. package/esm/component/legend/discrete/legend.js +11 -1
  371. package/esm/component/legend/discrete/legend.js.map +1 -1
  372. package/esm/component/legend/discrete/util.js +3 -2
  373. package/esm/component/legend/discrete/util.js.map +1 -1
  374. package/esm/component/legend/util.d.ts +1 -2
  375. package/esm/component/legend/util.js +0 -4
  376. package/esm/component/legend/util.js.map +1 -1
  377. package/esm/component/player/interface/theme.d.ts +1 -1
  378. package/esm/component/player/interface/theme.js.map +1 -1
  379. package/esm/component/player/utils/transform.js.map +1 -1
  380. package/esm/component/tooltip/interface/common.d.ts +2 -2
  381. package/esm/component/tooltip/interface/common.js.map +1 -1
  382. package/esm/component/tooltip/interface/event.d.ts +0 -2
  383. package/esm/component/tooltip/interface/event.js.map +1 -1
  384. package/esm/component/tooltip/interface/index.d.ts +1 -0
  385. package/esm/component/tooltip/interface/index.js +2 -0
  386. package/esm/component/tooltip/interface/index.js.map +1 -1
  387. package/esm/component/tooltip/interface/spec.d.ts +2 -2
  388. package/esm/component/tooltip/interface/spec.js.map +1 -1
  389. package/esm/component/tooltip/interface/theme.d.ts +3 -3
  390. package/esm/component/tooltip/interface/theme.js.map +1 -1
  391. package/esm/component/tooltip/processor/dimension-tooltip.js +2 -1
  392. package/esm/component/tooltip/processor/dimension-tooltip.js.map +1 -1
  393. package/esm/component/tooltip/processor/mark-tooltip.js +2 -1
  394. package/esm/component/tooltip/processor/mark-tooltip.js.map +1 -1
  395. package/esm/component/tooltip/tooltip.d.ts +3 -3
  396. package/esm/component/tooltip/tooltip.js +8 -6
  397. package/esm/component/tooltip/tooltip.js.map +1 -1
  398. package/esm/component/tooltip/utils/show-tooltip.js +3 -0
  399. package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
  400. package/esm/component/util.d.ts +8 -0
  401. package/esm/component/util.js +14 -0
  402. package/esm/component/util.js.map +1 -1
  403. package/esm/core/factory.d.ts +3 -0
  404. package/esm/core/factory.js +6 -0
  405. package/esm/core/factory.js.map +1 -1
  406. package/esm/core/index.d.ts +2 -1
  407. package/esm/core/index.js +3 -1
  408. package/esm/core/index.js.map +1 -1
  409. package/esm/core/interface.d.ts +1 -1
  410. package/esm/core/interface.js.map +1 -1
  411. package/esm/core/vchart.d.ts +2 -1
  412. package/esm/core/vchart.js +3 -1
  413. package/esm/core/vchart.js.map +1 -1
  414. package/esm/data/initialize.js.map +1 -1
  415. package/esm/event/events/dimension/interface.d.ts +3 -2
  416. package/esm/event/events/dimension/interface.js.map +1 -1
  417. package/esm/event/events/dimension/util/cartesian.js +1 -0
  418. package/esm/event/events/dimension/util/cartesian.js.map +1 -1
  419. package/esm/event/events/dimension/util/polar.js +2 -0
  420. package/esm/event/events/dimension/util/polar.js.map +1 -1
  421. package/esm/index-lark.js +4 -2
  422. package/esm/index-lark.js.map +1 -1
  423. package/esm/index-wx-simple.js +4 -2
  424. package/esm/index-wx-simple.js.map +1 -1
  425. package/esm/index-wx.js +1 -1
  426. package/esm/index-wx.js.map +1 -1
  427. package/esm/index.d.ts +1 -0
  428. package/esm/index.js +2 -0
  429. package/esm/index.js.map +1 -1
  430. package/esm/mark/arc.js +3 -1
  431. package/esm/mark/arc.js.map +1 -1
  432. package/esm/mark/base/base-mark.d.ts +3 -3
  433. package/esm/mark/base/base-mark.js +20 -13
  434. package/esm/mark/base/base-mark.js.map +1 -1
  435. package/esm/mark/index.d.ts +2 -3
  436. package/esm/mark/index.js +1 -3
  437. package/esm/mark/index.js.map +1 -1
  438. package/esm/mark/interface/type.d.ts +0 -1
  439. package/esm/mark/interface/type.js +2 -3
  440. package/esm/mark/interface/type.js.map +1 -1
  441. package/esm/plugin/chart/formatter/formatter.d.ts +28 -0
  442. package/esm/plugin/chart/formatter/formatter.js +71 -0
  443. package/esm/plugin/chart/formatter/formatter.js.map +1 -0
  444. package/esm/plugin/chart/formatter/index.d.ts +1 -0
  445. package/esm/plugin/chart/formatter/index.js +2 -0
  446. package/esm/plugin/chart/formatter/index.js.map +1 -0
  447. package/esm/plugin/components/index.d.ts +2 -5
  448. package/esm/plugin/components/index.js +2 -4
  449. package/esm/plugin/components/index.js.map +1 -1
  450. package/esm/plugin/components/tooltip-handler/base.d.ts +6 -6
  451. package/esm/plugin/components/tooltip-handler/base.js +111 -50
  452. package/esm/plugin/components/tooltip-handler/base.js.map +1 -1
  453. package/esm/plugin/components/tooltip-handler/canvas/canvas-tooltip-handler.d.ts +2 -2
  454. package/esm/plugin/components/tooltip-handler/canvas/canvas-tooltip-handler.js.map +1 -1
  455. package/esm/plugin/components/tooltip-handler/constants.d.ts +2 -2
  456. package/esm/plugin/components/tooltip-handler/constants.js.map +1 -1
  457. package/esm/plugin/components/tooltip-handler/dom/dom-tooltip-handler.d.ts +8 -4
  458. package/esm/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js +31 -8
  459. package/esm/plugin/components/tooltip-handler/dom/dom-tooltip-handler.js.map +1 -1
  460. package/esm/plugin/components/tooltip-handler/dom/model/base-tooltip-model.d.ts +2 -2
  461. package/esm/plugin/components/tooltip-handler/dom/model/base-tooltip-model.js.map +1 -1
  462. package/esm/plugin/components/tooltip-handler/dom/model/content-column-model.d.ts +2 -2
  463. package/esm/plugin/components/tooltip-handler/dom/model/content-column-model.js +2 -3
  464. package/esm/plugin/components/tooltip-handler/dom/model/content-column-model.js.map +1 -1
  465. package/esm/plugin/components/tooltip-handler/dom/model/interface.d.ts +2 -2
  466. package/esm/plugin/components/tooltip-handler/dom/model/interface.js.map +1 -1
  467. package/esm/plugin/components/tooltip-handler/utils/attribute.d.ts +2 -2
  468. package/esm/plugin/components/tooltip-handler/utils/attribute.js +1 -1
  469. package/esm/plugin/components/tooltip-handler/utils/attribute.js.map +1 -1
  470. package/esm/plugin/components/tooltip-handler/utils/common.d.ts +3 -3
  471. package/esm/plugin/components/tooltip-handler/utils/common.js +10 -1
  472. package/esm/plugin/components/tooltip-handler/utils/common.js.map +1 -1
  473. package/esm/plugin/components/tooltip-handler/utils/compose.d.ts +2 -2
  474. package/esm/plugin/components/tooltip-handler/utils/compose.js +5 -7
  475. package/esm/plugin/components/tooltip-handler/utils/compose.js.map +1 -1
  476. package/esm/plugin/components/tooltip-handler/utils/get-spec.js +12 -9
  477. package/esm/plugin/components/tooltip-handler/utils/get-spec.js.map +1 -1
  478. package/esm/plugin/components/tooltip-handler/utils/position.d.ts +18 -3
  479. package/esm/plugin/components/tooltip-handler/utils/position.js +39 -7
  480. package/esm/plugin/components/tooltip-handler/utils/position.js.map +1 -1
  481. package/esm/plugin/index.d.ts +1 -0
  482. package/esm/plugin/index.js +2 -0
  483. package/esm/plugin/index.js.map +1 -1
  484. package/esm/series/base/base-series.js +2 -1
  485. package/esm/series/base/base-series.js.map +1 -1
  486. package/esm/series/base/tooltip-helper.d.ts +3 -3
  487. package/esm/series/base/tooltip-helper.js.map +1 -1
  488. package/esm/series/dot/tooltip-helper.js +1 -3
  489. package/esm/series/dot/tooltip-helper.js.map +1 -1
  490. package/esm/series/gauge/constant.js +2 -2
  491. package/esm/series/gauge/constant.js.map +1 -1
  492. package/esm/series/gauge/gauge.js +3 -3
  493. package/esm/series/gauge/gauge.js.map +1 -1
  494. package/esm/series/gauge/interface.d.ts +3 -3
  495. package/esm/series/gauge/interface.js.map +1 -1
  496. package/esm/series/interface/common.d.ts +1 -1
  497. package/esm/series/interface/common.js.map +1 -1
  498. package/esm/series/link/tooltip-helper.js +1 -1
  499. package/esm/series/link/tooltip-helper.js.map +1 -1
  500. package/esm/series/polar/progress-like/progress-like.js +23 -25
  501. package/esm/series/polar/progress-like/progress-like.js.map +1 -1
  502. package/esm/series/progress/circular/circular.js +1 -3
  503. package/esm/series/progress/circular/circular.js.map +1 -1
  504. package/esm/series/progress/circular/constant.js +2 -2
  505. package/esm/series/progress/circular/constant.js.map +1 -1
  506. package/esm/series/progress/circular/interface.d.ts +5 -5
  507. package/esm/series/progress/circular/interface.js.map +1 -1
  508. package/esm/series/range-area/tooltip-helper.js.map +1 -1
  509. package/esm/series/sankey/tooltip-helper.js.map +1 -1
  510. package/esm/series/sunburst/sunburst.d.ts +1 -1
  511. package/esm/series/word-cloud/interface.js.map +1 -1
  512. package/esm/theme/builtin/common/mark.js +2 -1
  513. package/esm/theme/builtin/common/mark.js.map +1 -1
  514. package/esm/theme/builtin/common/series/box-plot.js +5 -0
  515. package/esm/theme/builtin/common/series/box-plot.js.map +1 -1
  516. package/esm/theme/builtin/common/series/rangeColumn.js +1 -0
  517. package/esm/theme/builtin/common/series/rangeColumn.js.map +1 -1
  518. package/esm/theme/builtin/common/series/waterfall.js +4 -1
  519. package/esm/theme/builtin/common/series/waterfall.js.map +1 -1
  520. package/esm/typings/spec/common.d.ts +4 -3
  521. package/esm/typings/spec/common.js.map +1 -1
  522. package/esm/typings/tooltip/line.d.ts +5 -2
  523. package/esm/typings/tooltip/line.js.map +1 -1
  524. package/esm/typings/tooltip/position.d.ts +21 -10
  525. package/esm/typings/tooltip/position.js.map +1 -1
  526. package/esm/typings/tooltip/shape.d.ts +2 -2
  527. package/esm/typings/tooltip/shape.js.map +1 -1
  528. package/esm/typings/tooltip/tooltip.d.ts +8 -8
  529. package/esm/typings/tooltip/tooltip.js.map +1 -1
  530. package/esm/typings/visual.d.ts +2 -4
  531. package/esm/typings/visual.js.map +1 -1
  532. package/esm/util/index.d.ts +1 -2
  533. package/esm/util/index.js +1 -3
  534. package/esm/util/index.js.map +1 -1
  535. package/esm/vchart-all.js +4 -2
  536. package/esm/vchart-all.js.map +1 -1
  537. package/esm/vchart-simple.js +1 -1
  538. package/esm/vchart-simple.js.map +1 -1
  539. package/package.json +17 -17
  540. package/cjs/component/axis/cartesian/util/time.d.ts +0 -80
  541. package/cjs/component/axis/cartesian/util/time.js +0 -204
  542. package/cjs/component/axis/cartesian/util/time.js.map +0 -1
  543. package/cjs/component/crosshair/util.js.map +0 -1
  544. package/cjs/mark/progress-arc.d.ts +0 -14
  545. package/cjs/mark/progress-arc.js +0 -55
  546. package/cjs/mark/progress-arc.js.map +0 -1
  547. package/esm/component/axis/cartesian/util/time.d.ts +0 -80
  548. package/esm/component/axis/cartesian/util/time.js +0 -196
  549. package/esm/component/axis/cartesian/util/time.js.map +0 -1
  550. package/esm/component/crosshair/util.js.map +0 -1
  551. package/esm/mark/progress-arc.d.ts +0 -14
  552. package/esm/mark/progress-arc.js +0 -47
  553. package/esm/mark/progress-arc.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/event/events/dimension/util/cartesian.ts"],"names":[],"mappings":"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","file":"cartesian.js","sourcesContent":["import type { IChart } from '../../../../chart/interface';\nimport type { IDimensionInfo } from '../interface';\nimport { isDiscrete } from '@visactor/vscale';\nimport { getDimensionData, getAxis } from './common';\nimport type { CartesianAxis } from '../../../../component/axis/cartesian';\nimport type { ICartesianSeries } from '../../../../series/interface';\nimport { isNil } from '@visactor/vutils';\nimport { isXAxis, isYAxis } from '../../../../component/axis/cartesian/util/common';\nimport { Direction } from '../../../../typings/space';\nimport type { ILayoutPoint } from '../../../../typings/layout';\nimport { getFirstSeries } from '../../../../util/model';\n\nconst discreteXAxisGetDimensionField = (series: ICartesianSeries) => series.fieldX[0];\nconst discreteYAxisGetDimensionField = (series: ICartesianSeries) => series.fieldY[0];\nconst continuousXAxisGetDimensionField = (series: ICartesianSeries) => [\n series.fieldX[0],\n series.fieldX2 ?? series.fieldX[1]\n];\nconst continuousYAxisGetDimensionField = (series: ICartesianSeries) => [\n series.fieldY[0],\n series.fieldY2 ?? series.fieldY[1]\n];\n\nconst getDimensionFieldFunc = (isXAxis: boolean, isDiscreteAxis: boolean) =>\n isXAxis\n ? isDiscreteAxis\n ? discreteXAxisGetDimensionField\n : continuousXAxisGetDimensionField\n : isDiscreteAxis\n ? discreteYAxisGetDimensionField\n : continuousYAxisGetDimensionField;\n\nexport const getCartesianDimensionInfo = (\n chart: IChart | undefined,\n pos: ILayoutPoint,\n isTooltip?: boolean\n): IDimensionInfo[] | null => {\n if (!chart) {\n return null;\n }\n const series = getFirstSeries(chart.getRegionsInIndex(), 'cartesian');\n if (!series) {\n return null;\n }\n\n const { x, y } = pos;\n const xAxisList = getAxis(chart, (cmp: CartesianAxis) => isXAxis(cmp.getOrient()), pos) ?? [];\n const yAxisList = getAxis(chart, (cmp: CartesianAxis) => isYAxis(cmp.getOrient()), pos) ?? [];\n\n /** 离散轴集合 */\n const bandAxisSet: Set<CartesianAxis> = new Set();\n /** 连续轴集合 */\n const linearAxisSet: Set<CartesianAxis> = new Set();\n /** 必须包含的轴的集合 */\n const forceAxisSet: Set<CartesianAxis> = new Set();\n\n [xAxisList, yAxisList].forEach(axisList =>\n axisList.forEach(axis => {\n const isDiscreteAxis = isDiscrete(axis.getScale().type);\n if (isDiscreteAxis) {\n bandAxisSet.add(axis);\n } else {\n linearAxisSet.add(axis);\n }\n if (isTooltip && axis.getSpec().hasDimensionTooltip) {\n forceAxisSet.add(axis);\n }\n })\n );\n\n const targetAxisInfo: IDimensionInfo[] = [];\n\n const addAxisDimensionInfo = (orient: 'x' | 'y') => {\n const isXAxis = orient === 'x';\n const posValue = isXAxis ? x : y;\n const axisList = isXAxis ? xAxisList : yAxisList;\n axisList.forEach(axis => {\n if (forceAxisSet.size > 0) {\n if (forceAxisSet.has(axis)) {\n const info = getDimensionInfoByPosition(\n axis,\n posValue,\n orient,\n getDimensionFieldFunc(isXAxis, isDiscrete(axis.getScale().type))\n );\n info && targetAxisInfo.push(info);\n }\n } else {\n const hasDiscreteAxis = bandAxisSet.size > 0;\n if ((hasDiscreteAxis ? bandAxisSet : linearAxisSet).has(axis)) {\n const info = getDimensionInfoByPosition(\n axis,\n posValue,\n orient,\n getDimensionFieldFunc(isXAxis, hasDiscreteAxis)\n );\n info && targetAxisInfo.push(info);\n }\n }\n });\n };\n\n // 优先筛选 band 轴,其次按照 direction 判断\n if (chart.getSpec().direction === Direction.horizontal) {\n addAxisDimensionInfo('y');\n if (targetAxisInfo.length === 0) {\n addAxisDimensionInfo('x');\n }\n } else {\n addAxisDimensionInfo('x');\n if (targetAxisInfo.length === 0) {\n addAxisDimensionInfo('y');\n }\n }\n\n if (!targetAxisInfo.length) {\n return null;\n }\n return targetAxisInfo;\n};\n\nexport const getDimensionInfoByPosition = (\n axis: CartesianAxis,\n posValue: number,\n posKey: 'x' | 'y',\n getDimensionField: (series: ICartesianSeries) => string | string[]\n): IDimensionInfo | null => {\n const scale = axis.getScale();\n const scalePos = posValue - axis.getLayoutStartPoint()[posKey];\n // 判断是否在 range 范围内\n if ((scalePos - scale.range()[0]) * (scalePos - scale.range()[1]) > 0) {\n return null;\n }\n\n const value = scale.invert(scalePos);\n return getDimensionInfoByValue(axis, value, getDimensionField);\n};\n\nexport const getDimensionInfoByValue = (\n axis: CartesianAxis,\n value: any,\n getDimensionField?: (series: ICartesianSeries) => string | string[]\n): IDimensionInfo | null => {\n const scale = axis.getScale();\n\n if (isNil(value)) {\n return null;\n }\n const domain = scale.domain();\n let index: number | undefined = domain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(\n value,\n axis,\n 'cartesian',\n getDimensionField ?? (isXAxis(axis.getOrient()) ? discreteXAxisGetDimensionField : discreteYAxisGetDimensionField)\n );\n return { index, value, axis, data };\n};\n"]}
1
+ {"version":3,"sources":["../src/event/events/dimension/util/cartesian.ts"],"names":[],"mappings":"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","file":"cartesian.js","sourcesContent":["import type { IChart } from '../../../../chart/interface';\nimport type { IDimensionInfo } from '../interface';\nimport { isDiscrete } from '@visactor/vscale';\nimport { getDimensionData, getAxis } from './common';\nimport type { CartesianAxis } from '../../../../component/axis/cartesian';\nimport type { ICartesianSeries } from '../../../../series/interface';\nimport { isNil } from '@visactor/vutils';\nimport { isXAxis, isYAxis } from '../../../../component/axis/cartesian/util/common';\nimport { Direction } from '../../../../typings/space';\nimport type { ILayoutPoint } from '../../../../typings/layout';\nimport { getFirstSeries } from '../../../../util/model';\n\nconst discreteXAxisGetDimensionField = (series: ICartesianSeries) => series.fieldX[0];\nconst discreteYAxisGetDimensionField = (series: ICartesianSeries) => series.fieldY[0];\nconst continuousXAxisGetDimensionField = (series: ICartesianSeries) => [\n series.fieldX[0],\n series.fieldX2 ?? series.fieldX[1]\n];\nconst continuousYAxisGetDimensionField = (series: ICartesianSeries) => [\n series.fieldY[0],\n series.fieldY2 ?? series.fieldY[1]\n];\n\nconst getDimensionFieldFunc = (isXAxis: boolean, isDiscreteAxis: boolean) =>\n isXAxis\n ? isDiscreteAxis\n ? discreteXAxisGetDimensionField\n : continuousXAxisGetDimensionField\n : isDiscreteAxis\n ? discreteYAxisGetDimensionField\n : continuousYAxisGetDimensionField;\n\nexport const getCartesianDimensionInfo = (\n chart: IChart | undefined,\n pos: ILayoutPoint,\n isTooltip?: boolean\n): IDimensionInfo[] | null => {\n if (!chart) {\n return null;\n }\n const series = getFirstSeries(chart.getRegionsInIndex(), 'cartesian');\n if (!series) {\n return null;\n }\n\n const { x, y } = pos;\n const xAxisList = getAxis(chart, (cmp: CartesianAxis) => isXAxis(cmp.getOrient()), pos) ?? [];\n const yAxisList = getAxis(chart, (cmp: CartesianAxis) => isYAxis(cmp.getOrient()), pos) ?? [];\n\n /** 离散轴集合 */\n const bandAxisSet: Set<CartesianAxis> = new Set();\n /** 连续轴集合 */\n const linearAxisSet: Set<CartesianAxis> = new Set();\n /** 必须包含的轴的集合 */\n const forceAxisSet: Set<CartesianAxis> = new Set();\n\n [xAxisList, yAxisList].forEach(axisList =>\n axisList.forEach(axis => {\n const isDiscreteAxis = isDiscrete(axis.getScale().type);\n if (isDiscreteAxis) {\n bandAxisSet.add(axis);\n } else {\n linearAxisSet.add(axis);\n }\n if (isTooltip && axis.getSpec().hasDimensionTooltip) {\n forceAxisSet.add(axis);\n }\n })\n );\n\n const targetAxisInfo: IDimensionInfo[] = [];\n\n const addAxisDimensionInfo = (orient: 'x' | 'y') => {\n const isXAxis = orient === 'x';\n const posValue = isXAxis ? x : y;\n const axisList = isXAxis ? xAxisList : yAxisList;\n axisList.forEach(axis => {\n if (forceAxisSet.size > 0) {\n if (forceAxisSet.has(axis)) {\n const info = getDimensionInfoByPosition(\n axis,\n posValue,\n orient,\n getDimensionFieldFunc(isXAxis, isDiscrete(axis.getScale().type))\n );\n info && targetAxisInfo.push(info);\n }\n } else {\n const hasDiscreteAxis = bandAxisSet.size > 0;\n if ((hasDiscreteAxis ? bandAxisSet : linearAxisSet).has(axis)) {\n const info = getDimensionInfoByPosition(\n axis,\n posValue,\n orient,\n getDimensionFieldFunc(isXAxis, hasDiscreteAxis)\n );\n info && targetAxisInfo.push(info);\n }\n }\n });\n };\n\n // 优先筛选 band 轴,其次按照 direction 判断\n if (chart.getSpec().direction === Direction.horizontal) {\n addAxisDimensionInfo('y');\n if (targetAxisInfo.length === 0) {\n addAxisDimensionInfo('x');\n }\n } else {\n addAxisDimensionInfo('x');\n if (targetAxisInfo.length === 0) {\n addAxisDimensionInfo('y');\n }\n }\n\n if (!targetAxisInfo.length) {\n return null;\n }\n return targetAxisInfo;\n};\n\nexport const getDimensionInfoByPosition = (\n axis: CartesianAxis,\n posValue: number,\n posKey: 'x' | 'y',\n getDimensionField: (series: ICartesianSeries) => string | string[]\n): IDimensionInfo | null => {\n const scale = axis.getScale();\n const scalePos = posValue - axis.getLayoutStartPoint()[posKey];\n // 判断是否在 range 范围内\n if ((scalePos - scale.range()[0]) * (scalePos - scale.range()[1]) > 0) {\n return null;\n }\n\n const value = scale.invert(scalePos);\n return getDimensionInfoByValue(axis, value, getDimensionField);\n};\n\nexport const getDimensionInfoByValue = (\n axis: CartesianAxis,\n value: any,\n getDimensionField?: (series: ICartesianSeries) => string | string[]\n): IDimensionInfo | null => {\n const scale = axis.getScale();\n\n if (isNil(value)) {\n return null;\n }\n const domain = scale.domain();\n let index: number | undefined = domain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(\n value,\n axis,\n 'cartesian',\n getDimensionField ?? (isXAxis(axis.getOrient()) ? discreteXAxisGetDimensionField : discreteYAxisGetDimensionField)\n );\n return { index, value, position: scale.scale(value), axis, data };\n};\n"]}
@@ -41,6 +41,7 @@ export const getPolarDimensionInfo = (chart, pos) => {
41
41
  targetAxisInfo.push({
42
42
  index: index,
43
43
  value: value,
44
+ position: angleScale.scale(value),
44
45
  axis: axis,
45
46
  data: data
46
47
  });
@@ -68,6 +69,7 @@ export const getPolarDimensionInfo = (chart, pos) => {
68
69
  targetAxisInfo.push({
69
70
  index: index,
70
71
  value: value,
72
+ position: radiusScale.scale(value),
71
73
  axis: axis,
72
74
  data: data
73
75
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/event/events/dimension/util/polar.ts"],"names":[],"mappings":"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","file":"polar.js","sourcesContent":["import type { IChart } from '../../../../chart/interface';\nimport type { IDimensionInfo } from '../interface';\nimport { isDiscrete } from '@visactor/vscale';\nimport { getAxis, getDimensionData } from './common';\nimport type { IPolarSeries } from '../../../../series/interface';\nimport { isNil, maxInArray, minInArray } from '@visactor/vutils';\nimport { distance, vectorAngle } from '../../../../util/math';\nimport type { ILayoutPoint } from '../../../../typings/layout';\nimport type { PolarAxis } from '../../../../component';\nimport { getFirstSeries } from '../../../../util/model';\n\n/** 将角度标准化为 range 范围内的角度 */\nconst angleStandardize = (angle: number, range: [number, number]) => {\n const unit = Math.PI * 2;\n const min = minInArray(range);\n const max = maxInArray(range);\n if (angle < min) {\n angle += Math.ceil((min - angle) / unit) * unit;\n } else if (angle > max) {\n angle -= Math.ceil((angle - max) / unit) * unit;\n }\n return angle;\n};\n\nexport const getPolarDimensionInfo = (chart: IChart | undefined, pos: ILayoutPoint): IDimensionInfo[] | null => {\n if (!chart) {\n return null;\n }\n const series = getFirstSeries(chart.getRegionsInIndex(), 'polar');\n if (!series) {\n return null;\n }\n\n const { x, y } = pos;\n const angleAxisList = getAxis(chart, (cmp: PolarAxis) => cmp.getOrient() === 'angle', pos);\n const radiusAxisList = getAxis(chart, (cmp: PolarAxis) => cmp.getOrient() === 'radius', pos);\n const targetAxisInfo: IDimensionInfo[] = [];\n\n const getDimensionField = (series: IPolarSeries) => series.getDimensionField()[0];\n\n if (angleAxisList) {\n angleAxisList.forEach(axis => {\n const angleScale = axis.getScale();\n // 限定为离散轴\n if (angleScale && isDiscrete(angleScale.type)) {\n const angleDomain = angleScale.domain();\n const angleRange = angleScale.range();\n const center = axis.getCenter();\n const vector = {\n x: x - axis.getLayoutStartPoint().x - center.x,\n y: y - axis.getLayoutStartPoint().y - center.y\n };\n\n // 计算顺时针角度\n let angle = vectorAngle({ x: 1, y: 0 }, vector);\n angle = angleStandardize(angle, angleRange);\n\n // 计算半径\n const radius = distance(vector);\n const radiusScale = radiusAxisList[0]?.getScale(); // FIXME: 想办法获取到和当前角度轴对应的径向轴,而不是取第一个\n const radiusRange = radiusScale?.range();\n\n // 判断是否在 range 范围内\n if (\n (angle - angleRange?.[0]) * (angle - angleRange?.[1]) > 0 ||\n (radius - radiusRange?.[0]) * (radius - radiusRange?.[1]) > 0\n ) {\n return;\n }\n\n const value = axis.invert(angle);\n if (isNil(value)) {\n return;\n }\n let index: number | undefined = angleDomain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(value, axis, 'polar', getDimensionField);\n targetAxisInfo.push({ index, value, axis, data });\n }\n });\n }\n if (radiusAxisList) {\n radiusAxisList.forEach(axis => {\n const radiusScale = axis.getScale();\n const radiusRange = radiusScale?.range();\n\n // 限定为离散轴\n if (radiusScale && isDiscrete(radiusScale.type)) {\n const center = axis.getCenter();\n const vector = {\n x: x - axis.getLayoutStartPoint().x - center.x,\n y: y - axis.getLayoutStartPoint().y - center.y\n };\n\n // 计算顺时针角度\n let angle = vectorAngle({ x: 1, y: 0 }, vector);\n if (angle < -Math.PI / 2) {\n angle = Math.PI * 2 + angle;\n }\n\n // 计算半径\n const radius = distance(vector);\n const angleScale = angleAxisList[0]?.getScale(); // FIXME: 想办法获取到和当前径向轴对应的角度轴,而不是取第一个\n const angleRange = angleScale?.range();\n\n // 判断是否在 range 范围内\n if (\n (angle - angleRange?.[0]) * (angle - angleRange?.[1]) > 0 ||\n (radius - radiusRange?.[0]) * (radius - radiusRange?.[1]) > 0\n ) {\n return;\n }\n\n const value = radiusScale.invert(radius);\n if (isNil(value)) {\n return;\n }\n const domain = radiusScale.domain();\n let index: number | undefined = domain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(value, axis, 'polar', getDimensionField);\n targetAxisInfo.push({ index, value, axis, data });\n }\n });\n }\n if (!targetAxisInfo.length) {\n return null;\n }\n return targetAxisInfo;\n};\n"]}
1
+ {"version":3,"sources":["../src/event/events/dimension/util/polar.ts"],"names":[],"mappings":"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","file":"polar.js","sourcesContent":["import type { IChart } from '../../../../chart/interface';\nimport type { IDimensionInfo } from '../interface';\nimport { isDiscrete } from '@visactor/vscale';\nimport { getAxis, getDimensionData } from './common';\nimport type { IPolarSeries } from '../../../../series/interface';\nimport { isNil, maxInArray, minInArray } from '@visactor/vutils';\nimport { distance, vectorAngle } from '../../../../util/math';\nimport type { ILayoutPoint } from '../../../../typings/layout';\nimport type { PolarAxis } from '../../../../component';\nimport { getFirstSeries } from '../../../../util/model';\n\n/** 将角度标准化为 range 范围内的角度 */\nconst angleStandardize = (angle: number, range: [number, number]) => {\n const unit = Math.PI * 2;\n const min = minInArray(range);\n const max = maxInArray(range);\n if (angle < min) {\n angle += Math.ceil((min - angle) / unit) * unit;\n } else if (angle > max) {\n angle -= Math.ceil((angle - max) / unit) * unit;\n }\n return angle;\n};\n\nexport const getPolarDimensionInfo = (chart: IChart | undefined, pos: ILayoutPoint): IDimensionInfo[] | null => {\n if (!chart) {\n return null;\n }\n const series = getFirstSeries(chart.getRegionsInIndex(), 'polar');\n if (!series) {\n return null;\n }\n\n const { x, y } = pos;\n const angleAxisList = getAxis(chart, (cmp: PolarAxis) => cmp.getOrient() === 'angle', pos);\n const radiusAxisList = getAxis(chart, (cmp: PolarAxis) => cmp.getOrient() === 'radius', pos);\n const targetAxisInfo: IDimensionInfo[] = [];\n\n const getDimensionField = (series: IPolarSeries) => series.getDimensionField()[0];\n\n if (angleAxisList) {\n angleAxisList.forEach(axis => {\n const angleScale = axis.getScale();\n // 限定为离散轴\n if (angleScale && isDiscrete(angleScale.type)) {\n const angleDomain = angleScale.domain();\n const angleRange = angleScale.range();\n const center = axis.getCenter();\n const vector = {\n x: x - axis.getLayoutStartPoint().x - center.x,\n y: y - axis.getLayoutStartPoint().y - center.y\n };\n\n // 计算顺时针角度\n let angle = vectorAngle({ x: 1, y: 0 }, vector);\n angle = angleStandardize(angle, angleRange);\n\n // 计算半径\n const radius = distance(vector);\n const radiusScale = radiusAxisList[0]?.getScale(); // FIXME: 想办法获取到和当前角度轴对应的径向轴,而不是取第一个\n const radiusRange = radiusScale?.range();\n\n // 判断是否在 range 范围内\n if (\n (angle - angleRange?.[0]) * (angle - angleRange?.[1]) > 0 ||\n (radius - radiusRange?.[0]) * (radius - radiusRange?.[1]) > 0\n ) {\n return;\n }\n\n const value = axis.invert(angle);\n if (isNil(value)) {\n return;\n }\n let index: number | undefined = angleDomain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(value, axis, 'polar', getDimensionField);\n targetAxisInfo.push({ index, value, position: angleScale.scale(value), axis, data });\n }\n });\n }\n if (radiusAxisList) {\n radiusAxisList.forEach(axis => {\n const radiusScale = axis.getScale();\n const radiusRange = radiusScale?.range();\n\n // 限定为离散轴\n if (radiusScale && isDiscrete(radiusScale.type)) {\n const center = axis.getCenter();\n const vector = {\n x: x - axis.getLayoutStartPoint().x - center.x,\n y: y - axis.getLayoutStartPoint().y - center.y\n };\n\n // 计算顺时针角度\n let angle = vectorAngle({ x: 1, y: 0 }, vector);\n if (angle < -Math.PI / 2) {\n angle = Math.PI * 2 + angle;\n }\n\n // 计算半径\n const radius = distance(vector);\n const angleScale = angleAxisList[0]?.getScale(); // FIXME: 想办法获取到和当前径向轴对应的角度轴,而不是取第一个\n const angleRange = angleScale?.range();\n\n // 判断是否在 range 范围内\n if (\n (angle - angleRange?.[0]) * (angle - angleRange?.[1]) > 0 ||\n (radius - radiusRange?.[0]) * (radius - radiusRange?.[1]) > 0\n ) {\n return;\n }\n\n const value = radiusScale.invert(radius);\n if (isNil(value)) {\n return;\n }\n const domain = radiusScale.domain();\n let index: number | undefined = domain.findIndex((v: any) => v?.toString() === value.toString());\n if (index < 0) {\n index = undefined;\n }\n\n const data = getDimensionData(value, axis, 'polar', getDimensionField);\n targetAxisInfo.push({ index, value, position: radiusScale.scale(value), axis, data });\n }\n });\n }\n if (!targetAxisInfo.length) {\n return null;\n }\n return targetAxisInfo;\n};\n"]}
package/esm/index-lark.js CHANGED
@@ -92,11 +92,13 @@ import { registerGridLayout } from "./layout/grid-layout/grid-layout";
92
92
 
93
93
  import { registerPoptip } from "./component/poptip";
94
94
 
95
- import { registerCanvasTooltipHandler } from "./plugin/components/tooltip-handler";
95
+ import { registerCanvasTooltipHandler } from "./plugin";
96
+
97
+ import { registerFormatPlugin } from "./plugin/chart/formatter";
96
98
 
97
99
  import { registerElementHighlight, registerElementSelect } from "@visactor/vgrammar-core";
98
100
 
99
- VChart.useRegisters([ registerLineChart, registerAreaChart, registerBarChart, registerScatterChart, registerPieChart, registerRoseChart, registerRadarChart, registerHistogramChart, registerMapChart, registerGaugeChart, registerWordCloudChart, registerFunnelChart, registerWaterfallChart, registerBoxplotChart, registerCircularProgressChart, registerLinearProgressChart, registerRangeColumnChart, registerRangeAreaChart, registerSunburstChart, registerCirclePackingChart, registerTreemapChart, registerSankeyChart, registerHeatmapChart, registerCorrelationChart, registerCommonChart, registerCartesianLinearAxis, registerCartesianBandAxis, registerCartesianTimeAxis, registerCartesianLogAxis, registerCartesianSymlogAxis, registerPolarBandAxis, registerPolarLinearAxis, registerDiscreteLegend, registerContinuousLegend, registerTooltip, registerCartesianCrossHair, registerPolarCrossHair, registerDataZoom, registerScrollBar, registerIndicator, registerGeoCoordinate, registerMarkPoint, registerMarkLine, registerMarkArea, registerTitle, registerPlayer, registerLabel, registerTotalLabel, registerBrush, registerCustomMark, registerMapLabel, registerPoptip, registerGridLayout, registerCanvasTooltipHandler, registerElementHighlight, registerElementSelect ]),
101
+ VChart.useRegisters([ registerLineChart, registerAreaChart, registerBarChart, registerScatterChart, registerPieChart, registerRoseChart, registerRadarChart, registerHistogramChart, registerMapChart, registerGaugeChart, registerWordCloudChart, registerFunnelChart, registerWaterfallChart, registerBoxplotChart, registerCircularProgressChart, registerLinearProgressChart, registerRangeColumnChart, registerRangeAreaChart, registerSunburstChart, registerCirclePackingChart, registerTreemapChart, registerSankeyChart, registerHeatmapChart, registerCorrelationChart, registerCommonChart, registerCartesianLinearAxis, registerCartesianBandAxis, registerCartesianTimeAxis, registerCartesianLogAxis, registerCartesianSymlogAxis, registerPolarBandAxis, registerPolarLinearAxis, registerDiscreteLegend, registerContinuousLegend, registerTooltip, registerCartesianCrossHair, registerPolarCrossHair, registerDataZoom, registerScrollBar, registerIndicator, registerGeoCoordinate, registerMarkPoint, registerMarkLine, registerMarkArea, registerTitle, registerPlayer, registerLabel, registerTotalLabel, registerBrush, registerCustomMark, registerMapLabel, registerPoptip, registerGridLayout, registerCanvasTooltipHandler, registerFormatPlugin, registerElementHighlight, registerElementSelect ]),
100
102
  VChart.useRegisters([ registerLarkEnv ]);
101
103
 
102
104
  export { VChart };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index-lark.ts"],"names":[],"mappings":"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","file":"index-lark.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerLarkEnv } from './env';\n\nimport { registerLineChart } from './chart/line';\nimport { registerAreaChart } from './chart/area';\nimport { registerBarChart } from './chart/bar';\nimport { registerScatterChart } from './chart/scatter';\nimport { registerMapChart } from './chart/map';\nimport { registerPieChart } from './chart/pie';\nimport { registerRoseChart } from './chart/rose';\nimport { registerRadarChart } from './chart/radar';\nimport { registerCommonChart } from './chart/common';\nimport { registerHistogramChart } from './chart/histogram';\nimport { registerCircularProgressChart } from './chart/progress/circular';\nimport { registerGaugeChart } from './chart/gauge';\nimport { registerWordCloudChart } from './chart/word-cloud';\nimport { registerFunnelChart } from './chart/funnel';\nimport { registerLinearProgressChart } from './chart/progress/linear';\nimport { registerRangeColumnChart } from './chart/range-column';\nimport { registerSunburstChart } from './chart/sunburst';\nimport { registerCirclePackingChart } from './chart/circle-packing';\nimport { registerTreemapChart } from './chart/treemap';\nimport { registerWaterfallChart } from './chart/waterfall';\nimport { registerBoxplotChart } from './chart/box-plot';\nimport { registerSankeyChart } from './chart/sankey';\nimport { registerRangeAreaChart } from './chart/range-area';\nimport { registerHeatmapChart } from './chart/heatmap';\nimport { registerCorrelationChart } from './chart/correlation';\nimport {\n registerCartesianBandAxis,\n registerCartesianLinearAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerCartesianTimeAxis\n} from './component/axis/cartesian';\nimport { registerPolarBandAxis, registerPolarLinearAxis } from './component/axis/polar';\nimport { registerContinuousLegend, registerDiscreteLegend } from './component/legend';\nimport { registerTooltip } from './component/tooltip';\nimport { registerCartesianCrossHair, registerPolarCrossHair } from './component/crosshair';\nimport { registerDataZoom, registerScrollBar } from './component/data-zoom';\nimport { registerIndicator } from './component/indicator';\nimport { registerGeoCoordinate } from './component/geo';\nimport { registerMarkLine } from './component/marker/mark-line';\nimport { registerTitle } from './component/title';\nimport { registerMarkArea } from './component/marker/mark-area';\nimport { registerPlayer } from './component/player';\nimport { registerLabel } from './component/label';\nimport { registerTotalLabel } from './component/label/total-label';\nimport { registerMarkPoint } from './component/marker/mark-point';\nimport { registerBrush } from './component/brush';\nimport { registerCustomMark } from './component/custom-mark';\nimport { registerMapLabel } from './component/map-label';\nimport { registerGridLayout } from './layout/grid-layout/grid-layout';\nimport { registerPoptip } from './component/poptip';\nimport { registerCanvasTooltipHandler } from './plugin/components/tooltip-handler';\n\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerScatterChart,\n registerPieChart,\n registerRoseChart,\n registerRadarChart,\n registerHistogramChart,\n registerMapChart,\n registerGaugeChart,\n registerWordCloudChart,\n registerFunnelChart,\n registerWaterfallChart,\n registerBoxplotChart,\n registerCircularProgressChart,\n registerLinearProgressChart,\n registerRangeColumnChart,\n registerRangeAreaChart,\n registerSunburstChart,\n registerCirclePackingChart,\n registerTreemapChart,\n registerSankeyChart,\n registerHeatmapChart,\n registerCorrelationChart,\n // 优化vchart-all体积, 默认不注册\n // registerLiquidChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerCartesianTimeAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerPolarBandAxis,\n registerPolarLinearAxis,\n\n registerDiscreteLegend,\n registerContinuousLegend,\n\n registerTooltip,\n registerCartesianCrossHair,\n registerPolarCrossHair,\n\n registerDataZoom,\n registerScrollBar,\n registerIndicator,\n registerGeoCoordinate,\n registerMarkPoint,\n registerMarkLine,\n registerMarkArea,\n registerTitle,\n registerPlayer,\n registerLabel,\n registerTotalLabel,\n registerBrush,\n registerCustomMark,\n registerMapLabel,\n registerPoptip,\n\n // layout\n registerGridLayout,\n\n // plugin\n registerCanvasTooltipHandler,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\n// load env code\nVChart.useRegisters([registerLarkEnv]);\n\nexport { VChart };\n\nexport default VChart;\n\nexport * from './core';\n"]}
1
+ {"version":3,"sources":["../src/index-lark.ts"],"names":[],"mappings":"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","file":"index-lark.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerLarkEnv } from './env';\n\nimport { registerLineChart } from './chart/line';\nimport { registerAreaChart } from './chart/area';\nimport { registerBarChart } from './chart/bar';\nimport { registerScatterChart } from './chart/scatter';\nimport { registerMapChart } from './chart/map';\nimport { registerPieChart } from './chart/pie';\nimport { registerRoseChart } from './chart/rose';\nimport { registerRadarChart } from './chart/radar';\nimport { registerCommonChart } from './chart/common';\nimport { registerHistogramChart } from './chart/histogram';\nimport { registerCircularProgressChart } from './chart/progress/circular';\nimport { registerGaugeChart } from './chart/gauge';\nimport { registerWordCloudChart } from './chart/word-cloud';\nimport { registerFunnelChart } from './chart/funnel';\nimport { registerLinearProgressChart } from './chart/progress/linear';\nimport { registerRangeColumnChart } from './chart/range-column';\nimport { registerSunburstChart } from './chart/sunburst';\nimport { registerCirclePackingChart } from './chart/circle-packing';\nimport { registerTreemapChart } from './chart/treemap';\nimport { registerWaterfallChart } from './chart/waterfall';\nimport { registerBoxplotChart } from './chart/box-plot';\nimport { registerSankeyChart } from './chart/sankey';\nimport { registerRangeAreaChart } from './chart/range-area';\nimport { registerHeatmapChart } from './chart/heatmap';\nimport { registerCorrelationChart } from './chart/correlation';\nimport {\n registerCartesianBandAxis,\n registerCartesianLinearAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerCartesianTimeAxis\n} from './component/axis/cartesian';\nimport { registerPolarBandAxis, registerPolarLinearAxis } from './component/axis/polar';\nimport { registerContinuousLegend, registerDiscreteLegend } from './component/legend';\nimport { registerTooltip } from './component/tooltip';\nimport { registerCartesianCrossHair, registerPolarCrossHair } from './component/crosshair';\nimport { registerDataZoom, registerScrollBar } from './component/data-zoom';\nimport { registerIndicator } from './component/indicator';\nimport { registerGeoCoordinate } from './component/geo';\nimport { registerMarkLine } from './component/marker/mark-line';\nimport { registerTitle } from './component/title';\nimport { registerMarkArea } from './component/marker/mark-area';\nimport { registerPlayer } from './component/player';\nimport { registerLabel } from './component/label';\nimport { registerTotalLabel } from './component/label/total-label';\nimport { registerMarkPoint } from './component/marker/mark-point';\nimport { registerBrush } from './component/brush';\nimport { registerCustomMark } from './component/custom-mark';\nimport { registerMapLabel } from './component/map-label';\nimport { registerGridLayout } from './layout/grid-layout/grid-layout';\nimport { registerPoptip } from './component/poptip';\nimport { registerCanvasTooltipHandler } from './plugin';\nimport { registerFormatPlugin } from './plugin/chart/formatter';\n\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerScatterChart,\n registerPieChart,\n registerRoseChart,\n registerRadarChart,\n registerHistogramChart,\n registerMapChart,\n registerGaugeChart,\n registerWordCloudChart,\n registerFunnelChart,\n registerWaterfallChart,\n registerBoxplotChart,\n registerCircularProgressChart,\n registerLinearProgressChart,\n registerRangeColumnChart,\n registerRangeAreaChart,\n registerSunburstChart,\n registerCirclePackingChart,\n registerTreemapChart,\n registerSankeyChart,\n registerHeatmapChart,\n registerCorrelationChart,\n // 优化vchart-all体积, 默认不注册\n // registerLiquidChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerCartesianTimeAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerPolarBandAxis,\n registerPolarLinearAxis,\n\n registerDiscreteLegend,\n registerContinuousLegend,\n\n registerTooltip,\n registerCartesianCrossHair,\n registerPolarCrossHair,\n\n registerDataZoom,\n registerScrollBar,\n registerIndicator,\n registerGeoCoordinate,\n registerMarkPoint,\n registerMarkLine,\n registerMarkArea,\n registerTitle,\n registerPlayer,\n registerLabel,\n registerTotalLabel,\n registerBrush,\n registerCustomMark,\n registerMapLabel,\n registerPoptip,\n\n // layout\n registerGridLayout,\n\n // plugin\n registerCanvasTooltipHandler,\n registerFormatPlugin,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\n// load env code\nVChart.useRegisters([registerLarkEnv]);\n\nexport { VChart };\n\nexport default VChart;\n\nexport * from './core';\n"]}
@@ -24,13 +24,15 @@ import { registerCartesianLinearAxis } from "./component/axis/cartesian/linear-a
24
24
 
25
25
  import { registerWXEnv } from "./env";
26
26
 
27
- import { registerCanvasTooltipHandler } from "./plugin/components/tooltip-handler";
27
+ import { registerCanvasTooltipHandler } from "./plugin";
28
28
 
29
29
  import { registerElementHighlight, registerElementSelect } from "@visactor/vgrammar-core";
30
30
 
31
+ import { registerFormatPlugin } from "./plugin/chart/formatter";
32
+
31
33
  export * from "./core";
32
34
 
33
- VChart.useRegisters([ registerLineChart, registerAreaChart, registerBarChart, registerPieChart, registerCommonChart, registerCartesianLinearAxis, registerCartesianBandAxis, registerDiscreteLegend, registerTooltip, registerCartesianCrossHair, registerLabel, registerCanvasTooltipHandler, registerElementHighlight, registerElementSelect ]),
35
+ VChart.useRegisters([ registerLineChart, registerAreaChart, registerBarChart, registerPieChart, registerCommonChart, registerCartesianLinearAxis, registerCartesianBandAxis, registerDiscreteLegend, registerTooltip, registerCartesianCrossHair, registerLabel, registerCanvasTooltipHandler, registerFormatPlugin, registerElementHighlight, registerElementSelect ]),
34
36
  VChart.useRegisters([ registerWXEnv ]);
35
37
 
36
38
  export { VChart };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index-wx-simple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,cAAc,QAAQ,CAAC;AAEvB,MAAM,CAAC,YAAY,CAAC;IAElB,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IAGnB,2BAA2B;IAC3B,yBAAyB;IACzB,sBAAsB;IACtB,eAAe;IACf,0BAA0B;IAC1B,aAAa;IAGb,4BAA4B;IAG5B,wBAAwB;IACxB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,eAAe,MAAM,CAAC","file":"index-wx-simple.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerLineChart } from './chart/line/line';\nimport { registerBarChart } from './chart/bar/bar';\nimport { registerAreaChart } from './chart/area/area';\nimport { registerPieChart } from './chart/pie/pie';\nimport { registerCommonChart } from './chart/common/common';\n\nimport { registerLabel } from './component/label/label';\nimport { registerCartesianCrossHair } from './component/crosshair/cartesian';\nimport { registerTooltip } from './component/tooltip/tooltip';\nimport { registerDiscreteLegend } from './component/legend/discrete/legend';\nimport { registerCartesianBandAxis } from './component/axis/cartesian/band-axis';\nimport { registerCartesianLinearAxis } from './component/axis/cartesian/linear-axis';\nimport { registerWXEnv } from './env';\nimport { registerCanvasTooltipHandler } from './plugin/components/tooltip-handler';\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\n\nexport * from './core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerPieChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerDiscreteLegend,\n registerTooltip,\n registerCartesianCrossHair,\n registerLabel,\n\n // plugin\n registerCanvasTooltipHandler,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\nVChart.useRegisters([registerWXEnv]);\n\nexport { VChart };\n\nexport default VChart;\n"]}
1
+ {"version":3,"sources":["../src/index-wx-simple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,cAAc,QAAQ,CAAC;AAEvB,MAAM,CAAC,YAAY,CAAC;IAElB,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IAGnB,2BAA2B;IAC3B,yBAAyB;IACzB,sBAAsB;IACtB,eAAe;IACf,0BAA0B;IAC1B,aAAa;IAGb,4BAA4B;IAC5B,oBAAoB;IAGpB,wBAAwB;IACxB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,eAAe,MAAM,CAAC","file":"index-wx-simple.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerLineChart } from './chart/line/line';\nimport { registerBarChart } from './chart/bar/bar';\nimport { registerAreaChart } from './chart/area/area';\nimport { registerPieChart } from './chart/pie/pie';\nimport { registerCommonChart } from './chart/common/common';\n\nimport { registerLabel } from './component/label/label';\nimport { registerCartesianCrossHair } from './component/crosshair/cartesian';\nimport { registerTooltip } from './component/tooltip/tooltip';\nimport { registerDiscreteLegend } from './component/legend/discrete/legend';\nimport { registerCartesianBandAxis } from './component/axis/cartesian/band-axis';\nimport { registerCartesianLinearAxis } from './component/axis/cartesian/linear-axis';\nimport { registerWXEnv } from './env';\nimport { registerCanvasTooltipHandler } from './plugin';\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\nimport { registerFormatPlugin } from './plugin/chart/formatter';\n\nexport * from './core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerPieChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerDiscreteLegend,\n registerTooltip,\n registerCartesianCrossHair,\n registerLabel,\n\n // plugin\n registerCanvasTooltipHandler,\n registerFormatPlugin,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\nVChart.useRegisters([registerWXEnv]);\n\nexport { VChart };\n\nexport default VChart;\n"]}
package/esm/index-wx.js CHANGED
@@ -92,7 +92,7 @@ import { registerGridLayout } from "./layout/grid-layout/grid-layout";
92
92
 
93
93
  import { registerPoptip } from "./component/poptip";
94
94
 
95
- import { registerCanvasTooltipHandler } from "./plugin/components/tooltip-handler";
95
+ import { registerCanvasTooltipHandler } from "./plugin";
96
96
 
97
97
  import { registerElementHighlight, registerElementSelect } from "@visactor/vgrammar-core";
98
98
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index-wx.ts"],"names":[],"mappings":"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","file":"index-wx.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerWXEnv } from './env';\n\nimport { registerLineChart } from './chart/line';\nimport { registerAreaChart } from './chart/area';\nimport { registerBarChart } from './chart/bar';\nimport { registerScatterChart } from './chart/scatter';\nimport { registerMapChart } from './chart/map';\nimport { registerPieChart } from './chart/pie';\nimport { registerRoseChart } from './chart/rose';\nimport { registerRadarChart } from './chart/radar';\nimport { registerCommonChart } from './chart/common';\nimport { registerHistogramChart } from './chart/histogram';\nimport { registerCircularProgressChart } from './chart/progress/circular';\nimport { registerGaugeChart } from './chart/gauge';\nimport { registerWordCloudChart } from './chart/word-cloud';\nimport { registerFunnelChart } from './chart/funnel';\nimport { registerLinearProgressChart } from './chart/progress/linear';\nimport { registerRangeColumnChart } from './chart/range-column';\nimport { registerSunburstChart } from './chart/sunburst';\nimport { registerCirclePackingChart } from './chart/circle-packing';\nimport { registerTreemapChart } from './chart/treemap';\nimport { registerWaterfallChart } from './chart/waterfall';\nimport { registerBoxplotChart } from './chart/box-plot';\nimport { registerSankeyChart } from './chart/sankey';\nimport { registerRangeAreaChart } from './chart/range-area';\nimport { registerHeatmapChart } from './chart/heatmap';\nimport { registerCorrelationChart } from './chart/correlation';\nimport {\n registerCartesianBandAxis,\n registerCartesianLinearAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerCartesianTimeAxis\n} from './component/axis/cartesian';\nimport { registerPolarBandAxis, registerPolarLinearAxis } from './component/axis/polar';\nimport { registerContinuousLegend, registerDiscreteLegend } from './component/legend';\nimport { registerTooltip } from './component/tooltip';\nimport { registerCartesianCrossHair, registerPolarCrossHair } from './component/crosshair';\nimport { registerDataZoom, registerScrollBar } from './component/data-zoom';\nimport { registerIndicator } from './component/indicator';\nimport { registerGeoCoordinate } from './component/geo';\nimport { registerMarkLine } from './component/marker/mark-line';\nimport { registerTitle } from './component/title';\nimport { registerMarkArea } from './component/marker/mark-area';\nimport { registerPlayer } from './component/player';\nimport { registerLabel } from './component/label';\nimport { registerTotalLabel } from './component/label/total-label';\nimport { registerMarkPoint } from './component/marker/mark-point';\nimport { registerBrush } from './component/brush';\nimport { registerCustomMark } from './component/custom-mark';\nimport { registerMapLabel } from './component/map-label';\nimport { registerGridLayout } from './layout/grid-layout/grid-layout';\nimport { registerPoptip } from './component/poptip';\nimport { registerCanvasTooltipHandler } from './plugin/components/tooltip-handler';\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerScatterChart,\n registerPieChart,\n registerRoseChart,\n registerRadarChart,\n registerHistogramChart,\n registerMapChart,\n registerGaugeChart,\n registerWordCloudChart,\n registerFunnelChart,\n registerWaterfallChart,\n registerBoxplotChart,\n registerCircularProgressChart,\n registerLinearProgressChart,\n registerRangeColumnChart,\n registerRangeAreaChart,\n registerSunburstChart,\n registerCirclePackingChart,\n registerTreemapChart,\n registerSankeyChart,\n registerHeatmapChart,\n registerCorrelationChart,\n // 优化vchart-all体积, 默认不注册\n // registerLiquidChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerCartesianTimeAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerPolarBandAxis,\n registerPolarLinearAxis,\n\n registerDiscreteLegend,\n registerContinuousLegend,\n\n registerTooltip,\n registerCartesianCrossHair,\n registerPolarCrossHair,\n\n registerDataZoom,\n registerScrollBar,\n registerIndicator,\n registerGeoCoordinate,\n registerMarkPoint,\n registerMarkLine,\n registerMarkArea,\n registerTitle,\n registerPlayer,\n registerLabel,\n registerTotalLabel,\n registerBrush,\n registerCustomMark,\n registerMapLabel,\n registerPoptip,\n\n // layout\n registerGridLayout,\n\n // plugin\n registerCanvasTooltipHandler,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\n// load env code\nVChart.useRegisters([registerWXEnv]);\n\nexport { VChart };\n\nexport default VChart;\n\nexport * from './core';\n"]}
1
+ {"version":3,"sources":["../src/index-wx.ts"],"names":[],"mappings":"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","file":"index-wx.js","sourcesContent":["/**\n * @description 包含基础的折柱饼图,提供坐标轴、离散图例以及 tooltip、crosshair、label 组件\n */\nimport { VChart } from './core';\nimport { registerWXEnv } from './env';\n\nimport { registerLineChart } from './chart/line';\nimport { registerAreaChart } from './chart/area';\nimport { registerBarChart } from './chart/bar';\nimport { registerScatterChart } from './chart/scatter';\nimport { registerMapChart } from './chart/map';\nimport { registerPieChart } from './chart/pie';\nimport { registerRoseChart } from './chart/rose';\nimport { registerRadarChart } from './chart/radar';\nimport { registerCommonChart } from './chart/common';\nimport { registerHistogramChart } from './chart/histogram';\nimport { registerCircularProgressChart } from './chart/progress/circular';\nimport { registerGaugeChart } from './chart/gauge';\nimport { registerWordCloudChart } from './chart/word-cloud';\nimport { registerFunnelChart } from './chart/funnel';\nimport { registerLinearProgressChart } from './chart/progress/linear';\nimport { registerRangeColumnChart } from './chart/range-column';\nimport { registerSunburstChart } from './chart/sunburst';\nimport { registerCirclePackingChart } from './chart/circle-packing';\nimport { registerTreemapChart } from './chart/treemap';\nimport { registerWaterfallChart } from './chart/waterfall';\nimport { registerBoxplotChart } from './chart/box-plot';\nimport { registerSankeyChart } from './chart/sankey';\nimport { registerRangeAreaChart } from './chart/range-area';\nimport { registerHeatmapChart } from './chart/heatmap';\nimport { registerCorrelationChart } from './chart/correlation';\nimport {\n registerCartesianBandAxis,\n registerCartesianLinearAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerCartesianTimeAxis\n} from './component/axis/cartesian';\nimport { registerPolarBandAxis, registerPolarLinearAxis } from './component/axis/polar';\nimport { registerContinuousLegend, registerDiscreteLegend } from './component/legend';\nimport { registerTooltip } from './component/tooltip';\nimport { registerCartesianCrossHair, registerPolarCrossHair } from './component/crosshair';\nimport { registerDataZoom, registerScrollBar } from './component/data-zoom';\nimport { registerIndicator } from './component/indicator';\nimport { registerGeoCoordinate } from './component/geo';\nimport { registerMarkLine } from './component/marker/mark-line';\nimport { registerTitle } from './component/title';\nimport { registerMarkArea } from './component/marker/mark-area';\nimport { registerPlayer } from './component/player';\nimport { registerLabel } from './component/label';\nimport { registerTotalLabel } from './component/label/total-label';\nimport { registerMarkPoint } from './component/marker/mark-point';\nimport { registerBrush } from './component/brush';\nimport { registerCustomMark } from './component/custom-mark';\nimport { registerMapLabel } from './component/map-label';\nimport { registerGridLayout } from './layout/grid-layout/grid-layout';\nimport { registerPoptip } from './component/poptip';\nimport { registerCanvasTooltipHandler } from './plugin';\nimport { registerElementHighlight, registerElementSelect } from '@visactor/vgrammar-core';\n\nVChart.useRegisters([\n // charts\n registerLineChart,\n registerAreaChart,\n registerBarChart,\n registerScatterChart,\n registerPieChart,\n registerRoseChart,\n registerRadarChart,\n registerHistogramChart,\n registerMapChart,\n registerGaugeChart,\n registerWordCloudChart,\n registerFunnelChart,\n registerWaterfallChart,\n registerBoxplotChart,\n registerCircularProgressChart,\n registerLinearProgressChart,\n registerRangeColumnChart,\n registerRangeAreaChart,\n registerSunburstChart,\n registerCirclePackingChart,\n registerTreemapChart,\n registerSankeyChart,\n registerHeatmapChart,\n registerCorrelationChart,\n // 优化vchart-all体积, 默认不注册\n // registerLiquidChart,\n registerCommonChart,\n\n // components\n registerCartesianLinearAxis,\n registerCartesianBandAxis,\n registerCartesianTimeAxis,\n registerCartesianLogAxis,\n registerCartesianSymlogAxis,\n registerPolarBandAxis,\n registerPolarLinearAxis,\n\n registerDiscreteLegend,\n registerContinuousLegend,\n\n registerTooltip,\n registerCartesianCrossHair,\n registerPolarCrossHair,\n\n registerDataZoom,\n registerScrollBar,\n registerIndicator,\n registerGeoCoordinate,\n registerMarkPoint,\n registerMarkLine,\n registerMarkArea,\n registerTitle,\n registerPlayer,\n registerLabel,\n registerTotalLabel,\n registerBrush,\n registerCustomMark,\n registerMapLabel,\n registerPoptip,\n\n // layout\n registerGridLayout,\n\n // plugin\n registerCanvasTooltipHandler,\n\n // vgrammar interactions,\n registerElementHighlight,\n registerElementSelect\n]);\n\n// load env code\nVChart.useRegisters([registerWXEnv]);\n\nexport { VChart };\n\nexport default VChart;\n\nexport * from './core';\n"]}
package/esm/index.d.ts CHANGED
@@ -8,3 +8,4 @@ export * from './component';
8
8
  export * from './layout';
9
9
  export * from './env';
10
10
  export * from './event';
11
+ export * from './plugin';
package/esm/index.js CHANGED
@@ -17,4 +17,6 @@ export * from "./layout";
17
17
  export * from "./env";
18
18
 
19
19
  export * from "./event";
20
+
21
+ export * from "./plugin";
20
22
  //# sourceMappingURL=index.js.map
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,eAAe,MAAM,CAAC;AAEtB,cAAc,QAAQ,CAAC;AAGvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC","file":"index.js","sourcesContent":["import { VChart } from './vchart-all';\n\nexport default VChart;\n\nexport * from './core';\n\n// chart model for extension\nexport * from './chart';\nexport * from './series';\nexport * from './mark';\nexport * from './component';\nexport * from './layout';\nexport * from './env';\nexport * from './event';\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,eAAe,MAAM,CAAC;AAEtB,cAAc,QAAQ,CAAC;AAGvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC","file":"index.js","sourcesContent":["import { VChart } from './vchart-all';\n\nexport default VChart;\n\nexport * from './core';\n\n// chart model for extension\nexport * from './chart';\nexport * from './series';\nexport * from './mark';\nexport * from './component';\nexport * from './layout';\nexport * from './env';\nexport * from './event';\nexport * from './plugin';\n"]}
package/esm/mark/arc.js CHANGED
@@ -32,7 +32,9 @@ export class BaseArcMark extends BaseMark {
32
32
  outerRadius: 0,
33
33
  innerRadius: 0,
34
34
  cornerRadius: 0,
35
- lineWidth: 0
35
+ lineWidth: 0,
36
+ innerPadding: 0,
37
+ outerPadding: 0
36
38
  });
37
39
  }
38
40
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/arc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAInE,MAAM,OAAO,WAAoC,SAAQ,QAAW;IAKlE,YAAY,IAAY,EAAE,MAAmB;QAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QALb,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;QAE3C,sBAAiB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QA2BrD,uBAAkB,GAAG,CAC7B,GAAW,EACX,KAAY,EACZ,SAAyB,QAAQ,EACjC,GAAQ,EACR,UAAkB,EACV,EAAE;;YACV,MAAM,MAAM,GAAG,MAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAY,mCAAI,CAAC,CAAC;YACtF,OAAO,UAAU,GAAG,MAAM,CAAC;QAC7B,CAAC,CAAC;QAEQ,kBAAa,GAAG,CACxB,GAAc,EACd,KAAY,EACZ,SAAyB,QAAQ,EACjC,GAAQ,EACR,MAAc,EACd,EAAE;YACF,MAAM,MAAM,GAAG,gBAAgB,CAAC;gBAC9B,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC;gBAC9B,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAW;aACxE,CAAC,CAAC;YACH,OAAO,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC;QA5CA,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAmC,CAAC;QAE9E,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAES,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,UAAU,EAAE,CAAC,EACb,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,EACf,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CA0BF;AAED,MAAM,OAAO,OAAQ,SAAQ,WAAyB;IAAtD;;QAEW,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;IAC7C,CAAC;;AAFiB,YAAI,SAAoB;AAI1C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,kBAAkB,EAAE,CAAC;IACrB,4BAA4B,EAAE,CAAC;IAC/B,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC","file":"arc.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { ARC_MIDDLE_ANGLE } from '../constant';\nimport type { IArcMarkSpec, Datum, StateValueType } from '../typings';\nimport { polarToCartesian } from '../util/math';\nimport type { ExChannelCall } from './base/base-mark';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkOption, IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerArcGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarArcAnimation } from '../animation/config';\n\nexport type IArcMark = IMarkRaw<IArcMarkSpec>;\n\nexport class BaseArcMark<T extends IArcMarkSpec> extends BaseMark<T> implements IMarkRaw<T> {\n readonly type: MarkTypeEnum = ArcMark.type;\n\n _unCompileChannel = { centerOffset: true, radiusOffset: true };\n\n constructor(name: string, option: IMarkOption) {\n super(name, option);\n\n // because of set object.function, this setting should be write after object init\n this._computeExChannel.x = this.computeCenter as ExChannelCall;\n this._computeExChannel.y = this.computeCenter as ExChannelCall;\n this._computeExChannel.outerRadius = this.computeOuterRadius as ExChannelCall;\n\n this._extensionChannel.centerOffset = ['x', 'y'];\n this._extensionChannel.radiusOffset = ['outerRadius'];\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<T> = {\n ...super._getDefaultStyle(),\n startAngle: 0,\n endAngle: 0,\n outerRadius: 0,\n innerRadius: 0,\n cornerRadius: 0,\n lineWidth: 0\n };\n return defaultStyle;\n }\n\n protected computeOuterRadius = (\n key: string,\n datum: Datum,\n states: StateValueType = 'normal',\n opt: any,\n superValue: number\n ): number => {\n const offset = (this.getAttribute('radiusOffset', datum, states, opt) as number) ?? 0;\n return superValue + offset;\n };\n\n protected computeCenter = (\n key: 'x' | 'y',\n datum: Datum,\n states: StateValueType = 'normal',\n opt: any,\n center: number\n ) => {\n const offset = polarToCartesian({\n angle: datum[ARC_MIDDLE_ANGLE],\n radius: this.getAttribute('centerOffset', datum, states, opt) as number\n });\n return center + offset[key];\n };\n}\n\nexport class ArcMark extends BaseArcMark<IArcMarkSpec> implements IArcMark {\n static readonly type = MarkTypeEnum.arc;\n readonly type: MarkTypeEnum = ArcMark.type;\n}\n\nexport const registerArcMark = () => {\n registerArcGraphic();\n registerVGrammarArcAnimation();\n Factory.registerMark(ArcMark.type, ArcMark);\n};\n"]}
1
+ {"version":3,"sources":["../src/mark/arc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAKnE,MAAM,OAAO,WAAoC,SAAQ,QAAW;IAKlE,YAAY,IAAY,EAAE,MAAmB;QAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QALb,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;QAE3C,sBAAiB,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;QA6BrD,uBAAkB,GAAG,CAC7B,GAAW,EACX,KAAY,EACZ,SAAyB,QAAQ,EACjC,GAAQ,EACR,UAAkB,EACV,EAAE;;YACV,MAAM,MAAM,GAAG,MAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAY,mCAAI,CAAC,CAAC;YACtF,OAAO,UAAU,GAAG,MAAM,CAAC;QAC7B,CAAC,CAAC;QAEQ,kBAAa,GAAG,CACxB,GAAc,EACd,KAAY,EACZ,SAAyB,QAAQ,EACjC,GAAQ,EACR,MAAc,EACd,EAAE;YACF,MAAM,MAAM,GAAG,gBAAgB,CAAC;gBAC9B,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC;gBAC9B,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAW;aACxE,CAAC,CAAC;YACH,OAAO,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC;QA9CA,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,aAA8B,CAAC;QAC/D,IAAI,CAAC,iBAAiB,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAmC,CAAC;QAE9E,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC;IACxD,CAAC;IAES,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,UAAU,EAAE,CAAC,EACb,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,EACf,SAAS,EAAE,CAAC,EACZ,YAAY,EAAE,CAAC,EACf,YAAY,EAAE,CAAC,GAChB,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CA0BF;AAED,MAAM,OAAO,OAAQ,SAAQ,WAAyB;IAAtD;;QAEW,SAAI,GAAiB,OAAO,CAAC,IAAI,CAAC;IAC7C,CAAC;;AAFiB,YAAI,SAAoB;AAI1C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,kBAAkB,EAAE,CAAC;IACrB,4BAA4B,EAAE,CAAC;IAC/B,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC","file":"arc.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { ARC_MIDDLE_ANGLE } from '../constant';\nimport type { IArcMarkSpec, Datum, StateValueType } from '../typings';\nimport { polarToCartesian } from '../util/math';\nimport type { ExChannelCall } from './base/base-mark';\n// eslint-disable-next-line no-duplicate-imports\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkOption, IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerArcGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarArcAnimation } from '../animation/config';\nimport { isValid } from '@visactor/vutils';\n\nexport type IArcMark = IMarkRaw<IArcMarkSpec>;\n\nexport class BaseArcMark<T extends IArcMarkSpec> extends BaseMark<T> implements IMarkRaw<T> {\n readonly type: MarkTypeEnum = ArcMark.type;\n\n _unCompileChannel = { centerOffset: true, radiusOffset: true };\n\n constructor(name: string, option: IMarkOption) {\n super(name, option);\n\n // because of set object.function, this setting should be write after object init\n this._computeExChannel.x = this.computeCenter as ExChannelCall;\n this._computeExChannel.y = this.computeCenter as ExChannelCall;\n this._computeExChannel.outerRadius = this.computeOuterRadius as ExChannelCall;\n\n this._extensionChannel.centerOffset = ['x', 'y'];\n this._extensionChannel.radiusOffset = ['outerRadius'];\n }\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<T> = {\n ...super._getDefaultStyle(),\n startAngle: 0,\n endAngle: 0,\n outerRadius: 0,\n innerRadius: 0,\n cornerRadius: 0,\n lineWidth: 0,\n innerPadding: 0,\n outerPadding: 0\n };\n return defaultStyle;\n }\n\n protected computeOuterRadius = (\n key: string,\n datum: Datum,\n states: StateValueType = 'normal',\n opt: any,\n superValue: number\n ): number => {\n const offset = (this.getAttribute('radiusOffset', datum, states, opt) as number) ?? 0;\n return superValue + offset;\n };\n\n protected computeCenter = (\n key: 'x' | 'y',\n datum: Datum,\n states: StateValueType = 'normal',\n opt: any,\n center: number\n ) => {\n const offset = polarToCartesian({\n angle: datum[ARC_MIDDLE_ANGLE],\n radius: this.getAttribute('centerOffset', datum, states, opt) as number\n });\n return center + offset[key];\n };\n}\n\nexport class ArcMark extends BaseArcMark<IArcMarkSpec> implements IArcMark {\n static readonly type = MarkTypeEnum.arc;\n readonly type: MarkTypeEnum = ArcMark.type;\n}\n\nexport const registerArcMark = () => {\n registerArcGraphic();\n registerVGrammarArcAnimation();\n Factory.registerMark(ArcMark.type, ArcMark);\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { IAttributeOpt, IModelMarkAttributeContext } from '../../compile/mark/interface';
2
- import type { Datum, IMarkSpec, ICommonSpec } from '../../typings';
2
+ import type { Datum, IMarkSpec, ICommonSpec, ValueType } from '../../typings';
3
3
  import type { IMarkRaw, IMarkStateStyle, IMarkStyle, IMarkOption, StyleConvert, MarkInputStyle } from '../interface';
4
4
  import { CompilableMark } from '../../compile/mark/compilable-mark';
5
5
  import type { StateValueType } from '../../compile/mark';
@@ -17,11 +17,11 @@ export declare class BaseMark<T extends ICommonSpec> extends CompilableMark impl
17
17
  constructor(name: string, option: IMarkOption);
18
18
  created(): void;
19
19
  initStyleWithSpec(spec: IMarkSpec<T>, key?: string): void;
20
- convertAngleToRadian(styleConverter: StyleConvert<number>): StyleConvert<any>;
20
+ protected _transformStyleValue<T>(styleConverter: StyleConvert<T>, transform: (value: ValueType<T>) => ValueType<T>): StyleConvert<any>;
21
+ convertAngleToRadian(styleConverter: StyleConvert<number>): any;
21
22
  isUserLevel(level: number): boolean;
22
23
  setStyle<U extends keyof T>(style: Partial<IMarkStyle<T>>, state?: StateValueType, level?: number, stateStyle?: IMarkStateStyle<T>): void;
23
24
  getStyle(key: string, state?: StateValueType): any;
24
- protected _filterStyle(style: Partial<IMarkStyle<T>>, state: StateValueType, level: number, stateStyle?: IMarkStateStyle<T>): Partial<IMarkStyle<T>>;
25
25
  protected _filterAttribute<U extends keyof T>(attr: U, style: MarkInputStyle<T[U]>, state: StateValueType, level: number, isUserLevel: boolean, stateStyle?: IMarkStateStyle<T>): StyleConvert<T[U]>;
26
26
  setReferer<U extends keyof T>(mark: IMarkRaw<T>, styleKey?: U, state?: StateValueType, stateStyle?: IMarkStateStyle<T>): void;
27
27
  setPostProcess<U extends keyof T>(key: U, postProcessFunc: any, state?: StateValueType): void;
@@ -22,7 +22,7 @@ import { computeActualDataScheme, getDataScheme } from "../../theme/color-scheme
22
22
 
23
23
  import { CompilableMark } from "../../compile/mark/compilable-mark";
24
24
 
25
- import { degreeToRadian, isBoolean, isFunction, isNil, isValid, isNumber } from "@visactor/vutils";
25
+ import { degreeToRadian, isBoolean, isFunction, isNil, isValid } from "@visactor/vutils";
26
26
 
27
27
  export class BaseMark extends CompilableMark {
28
28
  constructor(name, option) {
@@ -38,20 +38,22 @@ export class BaseMark extends CompilableMark {
38
38
  isValid(spec.zIndex) && this.setZIndex(spec.zIndex), isBoolean(spec.visible) && this.setVisible(spec.visible),
39
39
  this._initSpecStyle(spec, this.stateStyle, key));
40
40
  }
41
- convertAngleToRadian(styleConverter) {
42
- if (isNumber(styleConverter)) return degreeToRadian(styleConverter);
41
+ _transformStyleValue(styleConverter, transform) {
43
42
  if (styleConverter.scale) {
44
- const range = styleConverter.scale.range();
45
- return styleConverter.scale.range(range.map(degreeToRadian)), styleConverter;
43
+ const scale = styleConverter.scale, range = scale.range();
44
+ return scale.range(range.map(transform)), styleConverter;
46
45
  }
47
- return "function" == typeof styleConverter ? (item, ctx, opt, source) => degreeToRadian(styleConverter(item, ctx, opt, source)) : styleConverter;
46
+ return "function" == typeof styleConverter ? (...args) => transform(styleConverter(...args)) : transform(styleConverter);
47
+ }
48
+ convertAngleToRadian(styleConverter) {
49
+ return this._transformStyleValue(styleConverter, degreeToRadian);
48
50
  }
49
51
  isUserLevel(level) {
50
52
  return [ AttributeLevel.User_Mark, AttributeLevel.User_Series, AttributeLevel.User_Chart ].includes(level);
51
53
  }
52
54
  setStyle(style, state = "normal", level = 0, stateStyle = this.stateStyle) {
53
55
  if (isNil(style)) return;
54
- style = this._filterStyle(style, state, level, stateStyle), void 0 === stateStyle[state] && (stateStyle[state] = {});
56
+ void 0 === stateStyle[state] && (stateStyle[state] = {});
55
57
  const isUserLevel = this.isUserLevel(level);
56
58
  Object.keys(style).forEach((attr => {
57
59
  let attrStyle = style[attr];
@@ -63,13 +65,18 @@ export class BaseMark extends CompilableMark {
63
65
  var _a;
64
66
  return null === (_a = this.stateStyle[state][key]) || void 0 === _a ? void 0 : _a.style;
65
67
  }
66
- _filterStyle(style, state, level, stateStyle = this.stateStyle) {
67
- return style;
68
- }
69
68
  _filterAttribute(attr, style, state, level, isUserLevel, stateStyle = this.stateStyle) {
70
69
  let newStyle = this._styleConvert(style);
71
- return isUserLevel && "angle" === attr && (newStyle = this.convertAngleToRadian(newStyle)),
72
- newStyle;
70
+ if (isUserLevel) switch (attr) {
71
+ case "angle":
72
+ newStyle = this.convertAngleToRadian(newStyle);
73
+ break;
74
+
75
+ case "innerPadding":
76
+ case "outerPadding":
77
+ newStyle = this._transformStyleValue(newStyle, (value => -value));
78
+ }
79
+ return newStyle;
73
80
  }
74
81
  setReferer(mark, styleKey, state, stateStyle = this.stateStyle) {
75
82
  var _a;
@@ -152,7 +159,7 @@ export class BaseMark extends CompilableMark {
152
159
  }
153
160
  _computeStateAttribute(stateStyle, key, state) {
154
161
  var _a;
155
- return stateStyle ? stateStyle.referer ? stateStyle.referer._computeAttribute(key, state) : "function" == typeof stateStyle.style ? (datum, opt) => stateStyle.style(datum, this._attributeContext, opt, this.getDataView()) : GradientType.includes(stateStyle.style.gradient) ? this._computeGradientAttr(stateStyle.style) : [ "outerBorder", "innerBorder" ].includes(key) ? this._computeBorderAttr(stateStyle.style) : isValidScaleType(null === (_a = stateStyle.style.scale) || void 0 === _a ? void 0 : _a.type) ? (datum, opt) => stateStyle.style.scale.scale(datum[stateStyle.style.field]) : (datum, opt) => stateStyle.style : (datum, opt) => {};
162
+ return stateStyle ? stateStyle.referer ? stateStyle.referer._computeAttribute(key, state) : stateStyle.style ? "function" == typeof stateStyle.style ? (datum, opt) => stateStyle.style(datum, this._attributeContext, opt, this.getDataView()) : GradientType.includes(stateStyle.style.gradient) ? this._computeGradientAttr(stateStyle.style) : [ "outerBorder", "innerBorder" ].includes(key) ? this._computeBorderAttr(stateStyle.style) : isValidScaleType(null === (_a = stateStyle.style.scale) || void 0 === _a ? void 0 : _a.type) ? (datum, opt) => stateStyle.style.scale.scale(datum[stateStyle.style.field]) : (datum, opt) => stateStyle.style : (datum, opt) => stateStyle.style : (datum, opt) => {};
156
163
  }
157
164
  _initStyle() {
158
165
  const defaultStyle = this._getDefaultStyle();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/base/base-mark.ts"],"names":[],"mappings":"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","file":"base-mark.js","sourcesContent":["import type { IStateInfo, IAttributeOpt, IModelMarkAttributeContext } from '../../compile/mark/interface';\nimport type { BaseSeries } from '../../series/base/base-series';\nimport type {\n Datum,\n IMarkSpec,\n ConvertToMarkStyleSpec,\n GradientStop,\n IVisual,\n IVisualScale,\n IVisualSpecStyle,\n ICommonSpec,\n FunctionType\n} from '../../typings';\n\nimport { mergeSpec } from '../../util/spec/merge-spec';\nimport { Color } from '../../util/color';\nimport { createScaleWithSpec } from '../../util/scale';\nimport type {\n IMarkRaw,\n IMarkStateStyle,\n IMarkStyle,\n IMark,\n IMarkOption,\n StyleConvert,\n VisualScaleType,\n MarkInputStyle\n} from '../interface';\nimport { AttributeLevel, GradientType, DEFAULT_GRADIENT_CONFIG } from '../../constant';\nimport { isValidScaleType } from '@visactor/vscale';\nimport type { DataView } from '@visactor/vdataset';\nimport { computeActualDataScheme, getDataScheme } from '../../theme/color-scheme/util';\nimport type { ISeries } from '../../series/interface';\nimport { CompilableMark } from '../../compile/mark/compilable-mark';\nimport type { StateValueType } from '../../compile/mark';\nimport { degreeToRadian, isBoolean, isFunction, isNil, isValid, isNumber } from '@visactor/vutils';\n\nexport type ExChannelCall = (\n key: string | number | symbol,\n datum: Datum,\n states: StateValueType,\n opt: unknown,\n baseValue: unknown\n) => unknown;\n\nexport class BaseMark<T extends ICommonSpec> extends CompilableMark implements IMarkRaw<T> {\n declare stateStyle: IMarkStateStyle<T>;\n\n protected declare _option: IMarkOption;\n\n protected _attributeContext: IModelMarkAttributeContext;\n\n /** by _unCompileChannel, some channel need add default channel to make sure update available */\n _extensionChannel: {\n [key: string | number | symbol]: string[];\n } = {};\n /** same as _extensionChannel. when compute channel, add extension channel effect */\n _computeExChannel: {\n [key: string | number | symbol]: ExChannelCall;\n } = {};\n\n constructor(name: string, option: IMarkOption) {\n super(option, name, option.model);\n // 这里的上下文多数情况下与 mark 是什么是没有关系的,与mark的使用者,也就是series,component有的逻辑有关。\n this._attributeContext = option.attributeContext;\n option.map?.set(this.id, this as unknown as IMark);\n }\n\n created(): void {\n this._initStyle();\n }\n\n /**\n * 外部调用,根据 spec 初始化 style(如果由 IModel 派生类调用,请使用 IModel.initMarkStyleWithSpec)\n * @param spec\n * @param key\n * @returns\n */\n initStyleWithSpec(spec: IMarkSpec<T>, key?: string) {\n if (!spec) {\n return;\n }\n\n if (isValid(spec.id)) {\n this._userId = spec.id;\n }\n\n // interactive\n if (isBoolean(spec.interactive)) {\n this._interactive = spec.interactive;\n }\n // zIndex\n if (isValid(spec.zIndex)) {\n this.setZIndex(spec.zIndex);\n }\n // visible\n if (isBoolean(spec.visible)) {\n this.setVisible(spec.visible);\n }\n // style\n this._initSpecStyle(spec, this.stateStyle, key);\n }\n\n convertAngleToRadian(styleConverter: StyleConvert<number>): StyleConvert<any> {\n // 用户传入的angle配置,需要做一层转换\n if (isNumber(styleConverter)) {\n return degreeToRadian(styleConverter) as StyleConvert<any>;\n } else if ((styleConverter as VisualScaleType).scale) {\n const range = (styleConverter as VisualScaleType).scale.range();\n\n (styleConverter as VisualScaleType).scale.range(range.map(degreeToRadian));\n\n return styleConverter as StyleConvert<any>;\n } else if (typeof styleConverter === 'function') {\n return ((item: any, ctx: any, opt: IAttributeOpt, source?: DataView) => {\n return degreeToRadian((styleConverter as FunctionType<number>)(item, ctx, opt, source));\n }) as StyleConvert<any>;\n }\n\n return styleConverter;\n }\n\n isUserLevel(level: number) {\n return [AttributeLevel.User_Mark, AttributeLevel.User_Series, AttributeLevel.User_Chart].includes(level);\n }\n\n /**\n * 由外部series调用,设置markStyle的接口(如果由 IModel 派生类调用,请使用 IModel.setMarkStyle)\n * @param style\n * @param level\n * @param state\n */\n setStyle<U extends keyof T>(\n style: Partial<IMarkStyle<T>>,\n state: StateValueType = 'normal',\n level: number = 0,\n stateStyle = this.stateStyle\n ): void {\n if (isNil(style)) {\n return;\n }\n style = this._filterStyle(style, state, level, stateStyle);\n\n if (stateStyle[state] === undefined) {\n stateStyle[state] = {};\n }\n\n const isUserLevel = this.isUserLevel(level);\n\n Object.keys(style).forEach((attr: string) => {\n let attrStyle = style[attr] as MarkInputStyle<T[U]>;\n if (isNil(attrStyle)) {\n return;\n }\n\n attrStyle = this._filterAttribute(attr as any, attrStyle, state, level, isUserLevel, stateStyle);\n\n this.setAttribute(attr as any, attrStyle, state, level, stateStyle);\n });\n }\n\n getStyle(key: string, state: StateValueType = 'normal'): any {\n return this.stateStyle[state][key]?.style;\n }\n\n /** 过滤用户传来的 style 对象 */\n protected _filterStyle(\n style: Partial<IMarkStyle<T>>,\n state: StateValueType,\n level: number,\n stateStyle = this.stateStyle\n ): Partial<IMarkStyle<T>> {\n return style;\n }\n\n /** 过滤单个 attribute */\n protected _filterAttribute<U extends keyof T>(\n attr: U,\n style: MarkInputStyle<T[U]>,\n state: StateValueType,\n level: number,\n isUserLevel: boolean,\n stateStyle = this.stateStyle\n ): StyleConvert<T[U]> {\n let newStyle = this._styleConvert(style);\n if (isUserLevel && attr === 'angle') {\n newStyle = this.convertAngleToRadian(newStyle as StyleConvert<number>);\n }\n return newStyle;\n }\n\n /**\n * TODO: 没有外部调用\n * 设置mark样式所参考的图元\n */\n setReferer<U extends keyof T>(mark: IMarkRaw<T>, styleKey?: U, state?: StateValueType, stateStyle = this.stateStyle) {\n if (!mark) {\n return;\n }\n if (styleKey && state) {\n const style = stateStyle[state] ?? { [styleKey]: {} };\n stateStyle[state][styleKey] = {\n ...(style[styleKey] as unknown as any),\n ...{ referer: mark }\n };\n return;\n }\n\n Object.entries(stateStyle).forEach(([state, style]) => {\n Object.entries(style).forEach(([styleKey, style]) => {\n stateStyle[state][styleKey].referer = mark;\n });\n });\n }\n\n setPostProcess<U extends keyof T>(key: U, postProcessFunc: any, state: StateValueType = 'normal') {\n if (this.stateStyle[state]?.[key]) {\n this.stateStyle[state][key].postProcess = postProcessFunc;\n }\n }\n\n getAttribute<U extends keyof T>(key: U, datum: Datum, state: StateValueType = 'normal', opt?: IAttributeOpt) {\n return this._computeAttribute(key, state)(datum, opt);\n }\n\n setAttribute<U extends keyof T>(\n attr: U,\n style: MarkInputStyle<T[U]>,\n state: StateValueType = 'normal',\n level: number = 0,\n stateStyle = this.stateStyle\n ) {\n if (stateStyle[state] === undefined) {\n stateStyle[state] = {};\n }\n\n if (stateStyle[state][attr] === undefined) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n stateStyle[state][attr] = {\n level,\n style,\n referer: undefined\n };\n }\n const attrLevel = stateStyle[state][attr]?.level;\n if (isValid(attrLevel) && attrLevel <= level) {\n mergeSpec(stateStyle[state][attr], { style, level });\n }\n\n // some attr has extension channel in VChart to make some effect\n if (state !== 'normal') {\n if (attr in this._extensionChannel) {\n this._extensionChannel[attr].forEach(key => {\n if (stateStyle[state][key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n stateStyle[state][key as keyof T] = stateStyle.normal[key];\n }\n });\n }\n }\n }\n\n /**\n * 与 vgrammar 默认值一致的样式可以不设置默认值或设置为undefined, 减少encode属性\n */\n protected _getDefaultStyle() {\n return {\n visible: true,\n // mark的层级应该在mark层 不在encode属性层\n // zIndex: LayoutZIndex.Mark,\n x: 0,\n y: 0\n } as IMarkStyle<T>;\n }\n\n // /**\n // * 获取该 mark 不支持的图形属性,由子类覆写\n // * @returns\n // */\n // protected getIgnoreAttributes(): string[] {\n // return [];\n // }\n\n protected _styleConvert<U extends keyof T>(style?: MarkInputStyle<T[U]>): StyleConvert<T[U]> | undefined {\n if (!style) {\n return style as undefined;\n }\n // visual spec 转换为 scale 类型的mark style\n if (isValidScaleType((style as IVisualSpecStyle<unknown, T[U]>).type) || (style as IVisualScale).scale) {\n // const _style = style as IVisual<T[U]>;\n const scale = createScaleWithSpec(style as IVisual<T[U]>, {\n globalScale: this._option.globalScale,\n seriesId: this._option.seriesId\n });\n if (scale) {\n return {\n scale,\n field: (style as IVisual<T[U]>).field,\n changeDomain: (style as IVisualScale).changeDomain\n };\n }\n }\n return style as StyleConvert<T[U]>;\n }\n\n protected _computeAttribute<U extends keyof T>(key: U, state: StateValueType) {\n let stateStyle = this.stateStyle[state]?.[key];\n if (!stateStyle) {\n stateStyle = this.stateStyle.normal[key];\n }\n const baseValueFunctor = this._computeStateAttribute(stateStyle, key, state);\n const hasPostProcess = isFunction(stateStyle?.postProcess);\n const hasExCompute = key in this._computeExChannel;\n\n if (hasPostProcess && hasExCompute) {\n const exCompute = this._computeExChannel[key];\n return (datum: Datum, opt: IAttributeOpt) => {\n let baseValue = baseValueFunctor(datum, opt);\n\n baseValue = stateStyle.postProcess(baseValue, datum, this._attributeContext, opt, this.getDataView());\n\n return exCompute(key, datum, state, opt, baseValue);\n };\n } else if (hasPostProcess) {\n return (datum: Datum, opt: IAttributeOpt) => {\n return stateStyle.postProcess(\n baseValueFunctor(datum, opt),\n datum,\n this._attributeContext,\n opt,\n this.getDataView()\n );\n };\n } else if (hasExCompute) {\n const exCompute = this._computeExChannel[key];\n return (datum: Datum, opt: IAttributeOpt) => {\n return exCompute(key, datum, state, opt, baseValueFunctor(datum, opt));\n };\n }\n return baseValueFunctor;\n }\n\n protected _computeStateAttribute<U extends keyof T>(stateStyle: any, key: U, state: StateValueType) {\n if (!stateStyle) {\n return (datum: Datum, opt: IAttributeOpt) => undefined as any;\n }\n if (stateStyle.referer) {\n return stateStyle.referer._computeAttribute(key, state);\n }\n\n if (typeof stateStyle.style === 'function') {\n return (datum: Datum, opt: IAttributeOpt) =>\n stateStyle.style(datum, this._attributeContext, opt, this.getDataView());\n }\n\n if (GradientType.includes(stateStyle.style.gradient)) {\n // 渐变色处理,支持各个属性回调\n return this._computeGradientAttr(stateStyle.style);\n }\n\n if (['outerBorder', 'innerBorder'].includes(key as string)) {\n // 内外描边处理,支持各个属性回调\n return this._computeBorderAttr(stateStyle.style);\n }\n\n if (isValidScaleType(stateStyle.style.scale?.type)) {\n return (datum: Datum, opt: IAttributeOpt) => stateStyle.style.scale.scale(datum[stateStyle.style.field]);\n }\n return (datum: Datum, opt: IAttributeOpt) => {\n return stateStyle.style;\n };\n }\n\n private _initStyle(): void {\n const defaultStyle = this._getDefaultStyle();\n this.setStyle(defaultStyle, 'normal', 0);\n }\n\n private _initSpecStyle(spec: IMarkSpec<T>, stateStyle: IMarkStateStyle<T>, key?: string) {\n // style\n if (spec.style) {\n this.setStyle(spec.style, 'normal', AttributeLevel.User_Mark, stateStyle);\n }\n const state = spec.state;\n if (state) {\n Object.keys(state).forEach(key => {\n const stateTemp = state[key];\n if ('style' in stateTemp) {\n const style = stateTemp.style;\n let stateInfo: IStateInfo = { stateValue: key };\n if ('level' in stateTemp) {\n stateInfo.level = stateTemp.level as number;\n }\n if ('filter' in stateTemp) {\n if (isFunction(stateTemp.filter)) {\n stateInfo = {\n filter: stateTemp.filter as (datum: any, options: Record<string, any>) => boolean,\n ...stateInfo\n };\n } else {\n stateInfo = { ...stateTemp.filter, ...stateInfo };\n }\n }\n this.state.addStateInfo(stateInfo);\n this.setStyle(style as ConvertToMarkStyleSpec<T>, key, AttributeLevel.User_Mark, stateStyle);\n } else {\n this.setStyle(stateTemp, key, AttributeLevel.User_Mark, stateStyle);\n }\n });\n }\n }\n\n private _computeGradientAttr(gradientStyle: any) {\n const { gradient, scale, field, ...rest } = gradientStyle;\n\n let colorScale = scale;\n let colorField = field;\n if ((!scale || !field) && this.model.modelType === 'series') {\n // 目前只有series有这个属性\n const { scale: globalColorScale, field: globalField } = (this.model as BaseSeries<any>).getColorAttribute();\n if (!scale) {\n // 获取全局的 colorScale\n colorScale = globalColorScale;\n }\n if (!colorField) {\n colorField = globalField;\n }\n }\n\n const themeColor = computeActualDataScheme(\n getDataScheme(\n this.model.getColorScheme(),\n this.model.modelType === 'series' ? this.model.getSpec?.() : undefined\n ),\n (this.model as ISeries).getDefaultColorDomain()\n );\n // 默认配置处理\n const mergedStyle = {\n ...DEFAULT_GRADIENT_CONFIG[gradient],\n ...rest\n };\n return (data: Datum, opt: IAttributeOpt) => {\n const computeStyle: any = {};\n const markData = this.getDataView();\n Object.keys(mergedStyle).forEach(key => {\n const value = mergedStyle[key];\n if (key === 'stops') {\n computeStyle.stops = value.map((stop: GradientStop) => {\n const { opacity, color, offset } = stop;\n let computeColor = color ?? colorScale?.scale(data[colorField]);\n if (isFunction(color)) {\n computeColor = color(data, this._attributeContext, opt, markData);\n }\n\n if (isValid(opacity)) {\n computeColor = Color.SetOpacity(computeColor as string, opacity);\n }\n\n return {\n offset: isFunction(offset) ? offset(data, this._attributeContext, opt, markData) : offset,\n color: computeColor || themeColor[0]\n };\n });\n } else if (isFunction(value)) {\n computeStyle[key] = value(data, this._attributeContext, opt, markData);\n } else {\n computeStyle[key] = value;\n }\n });\n\n computeStyle.gradient = gradient;\n\n return computeStyle;\n };\n }\n\n private _computeBorderAttr(borderStyle: any) {\n const { scale, field, ...mergedStyle } = borderStyle;\n\n return (data: Datum, opt: IAttributeOpt) => {\n const computeStyle: any = {};\n\n Object.keys(mergedStyle).forEach(key => {\n const value = mergedStyle[key];\n if (isFunction(value)) {\n computeStyle[key] = value(data, this._attributeContext, opt, this.getDataView());\n } else {\n computeStyle[key] = value;\n }\n });\n if (!('stroke' in computeStyle)) {\n const themeColor = computeActualDataScheme(\n getDataScheme(\n this.model.getColorScheme(),\n this.model.modelType === 'series' ? this.model.getSpec?.() : undefined\n ),\n (this.model as ISeries).getDefaultColorDomain()\n );\n let colorScale = scale;\n let colorField = field;\n if ((!scale || !field) && this.model.modelType === 'series') {\n // 目前只有series有这个属性\n const { scale: globalColorScale, field: globalField } = (this.model as BaseSeries<any>).getColorAttribute();\n if (!scale) {\n // 获取全局的 colorScale\n colorScale = globalColorScale;\n }\n if (!colorField) {\n colorField = globalField;\n }\n computeStyle.stroke = colorScale?.scale(data[colorField]) || themeColor[0];\n }\n } else if (GradientType.includes(mergedStyle.stroke?.gradient)) {\n computeStyle.stroke = this._computeGradientAttr(mergedStyle.stroke)(data, opt);\n }\n return computeStyle;\n };\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/base/base-mark.ts"],"names":[],"mappings":"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","file":"base-mark.js","sourcesContent":["import type { IStateInfo, IAttributeOpt, IModelMarkAttributeContext } from '../../compile/mark/interface';\nimport type { BaseSeries } from '../../series/base/base-series';\nimport type {\n Datum,\n IMarkSpec,\n ConvertToMarkStyleSpec,\n GradientStop,\n IVisual,\n IVisualScale,\n IVisualSpecStyle,\n ICommonSpec,\n FunctionType,\n ValueType\n} from '../../typings';\n\nimport { mergeSpec } from '../../util/spec/merge-spec';\nimport { Color } from '../../util/color';\nimport { createScaleWithSpec } from '../../util/scale';\nimport type {\n IMarkRaw,\n IMarkStateStyle,\n IMarkStyle,\n IMark,\n IMarkOption,\n StyleConvert,\n VisualScaleType,\n MarkInputStyle\n} from '../interface';\nimport { AttributeLevel, GradientType, DEFAULT_GRADIENT_CONFIG } from '../../constant';\nimport { isValidScaleType } from '@visactor/vscale';\nimport type { DataView } from '@visactor/vdataset';\nimport { computeActualDataScheme, getDataScheme } from '../../theme/color-scheme/util';\nimport type { ISeries } from '../../series/interface';\nimport { CompilableMark } from '../../compile/mark/compilable-mark';\nimport type { StateValueType } from '../../compile/mark';\nimport { degreeToRadian, isBoolean, isFunction, isNil, isValid, isNumber } from '@visactor/vutils';\n\nexport type ExChannelCall = (\n key: string | number | symbol,\n datum: Datum,\n states: StateValueType,\n opt: unknown,\n baseValue: unknown\n) => unknown;\n\nexport class BaseMark<T extends ICommonSpec> extends CompilableMark implements IMarkRaw<T> {\n declare stateStyle: IMarkStateStyle<T>;\n\n protected declare _option: IMarkOption;\n\n protected _attributeContext: IModelMarkAttributeContext;\n\n /** by _unCompileChannel, some channel need add default channel to make sure update available */\n _extensionChannel: {\n [key: string | number | symbol]: string[];\n } = {};\n /** same as _extensionChannel. when compute channel, add extension channel effect */\n _computeExChannel: {\n [key: string | number | symbol]: ExChannelCall;\n } = {};\n\n constructor(name: string, option: IMarkOption) {\n super(option, name, option.model);\n // 这里的上下文多数情况下与 mark 是什么是没有关系的,与mark的使用者,也就是series,component有的逻辑有关。\n this._attributeContext = option.attributeContext;\n option.map?.set(this.id, this as unknown as IMark);\n }\n\n created(): void {\n this._initStyle();\n }\n\n /**\n * 外部调用,根据 spec 初始化 style(如果由 IModel 派生类调用,请使用 IModel.initMarkStyleWithSpec)\n * @param spec\n * @param key\n * @returns\n */\n initStyleWithSpec(spec: IMarkSpec<T>, key?: string) {\n if (!spec) {\n return;\n }\n\n if (isValid(spec.id)) {\n this._userId = spec.id;\n }\n\n // interactive\n if (isBoolean(spec.interactive)) {\n this._interactive = spec.interactive;\n }\n // zIndex\n if (isValid(spec.zIndex)) {\n this.setZIndex(spec.zIndex);\n }\n // visible\n if (isBoolean(spec.visible)) {\n this.setVisible(spec.visible);\n }\n // style\n this._initSpecStyle(spec, this.stateStyle, key);\n }\n\n protected _transformStyleValue<T>(\n styleConverter: StyleConvert<T>,\n transform: (value: ValueType<T>) => ValueType<T>\n ): StyleConvert<any> {\n if ((styleConverter as VisualScaleType).scale) {\n const scale = (styleConverter as VisualScaleType).scale;\n const range = scale.range();\n scale.range(range.map(transform));\n return styleConverter as StyleConvert<T>;\n } else if (typeof styleConverter === 'function') {\n return ((...args) => {\n return transform((styleConverter as FunctionType<number>)(...args) as ValueType<T>);\n }) as StyleConvert<T>;\n }\n return transform(styleConverter as ValueType<T>);\n }\n\n convertAngleToRadian(styleConverter: StyleConvert<number>) {\n // 用户传入的角度配置,需要做一层转换\n return this._transformStyleValue(styleConverter, degreeToRadian);\n }\n\n isUserLevel(level: number) {\n return [AttributeLevel.User_Mark, AttributeLevel.User_Series, AttributeLevel.User_Chart].includes(level);\n }\n\n /**\n * 由外部series调用,设置markStyle的接口(如果由 IModel 派生类调用,请使用 IModel.setMarkStyle)\n * @param style\n * @param level\n * @param state\n */\n setStyle<U extends keyof T>(\n style: Partial<IMarkStyle<T>>,\n state: StateValueType = 'normal',\n level: number = 0,\n stateStyle = this.stateStyle\n ): void {\n if (isNil(style)) {\n return;\n }\n\n if (stateStyle[state] === undefined) {\n stateStyle[state] = {};\n }\n\n const isUserLevel = this.isUserLevel(level);\n\n Object.keys(style).forEach((attr: string) => {\n let attrStyle = style[attr] as MarkInputStyle<T[U]>;\n if (isNil(attrStyle)) {\n return;\n }\n\n attrStyle = this._filterAttribute(attr as any, attrStyle, state, level, isUserLevel, stateStyle);\n\n this.setAttribute(attr as any, attrStyle, state, level, stateStyle);\n });\n }\n\n getStyle(key: string, state: StateValueType = 'normal'): any {\n return this.stateStyle[state][key]?.style;\n }\n\n /** 过滤单个 attribute */\n protected _filterAttribute<U extends keyof T>(\n attr: U,\n style: MarkInputStyle<T[U]>,\n state: StateValueType,\n level: number,\n isUserLevel: boolean,\n stateStyle = this.stateStyle\n ): StyleConvert<T[U]> {\n let newStyle = this._styleConvert(style);\n if (isUserLevel) {\n switch (attr) {\n case 'angle':\n newStyle = this.convertAngleToRadian(newStyle);\n break;\n case 'innerPadding':\n case 'outerPadding':\n // VRender 的 padding 定义基于 centent-box 盒模型,默认正方向是向外扩,与 VChart 不一致。这里将 padding 符号取反\n newStyle = this._transformStyleValue(newStyle, (value: number) => -value);\n break;\n }\n }\n return newStyle;\n }\n\n /**\n * TODO: 没有外部调用\n * 设置mark样式所参考的图元\n */\n setReferer<U extends keyof T>(mark: IMarkRaw<T>, styleKey?: U, state?: StateValueType, stateStyle = this.stateStyle) {\n if (!mark) {\n return;\n }\n if (styleKey && state) {\n const style = stateStyle[state] ?? { [styleKey]: {} };\n stateStyle[state][styleKey] = {\n ...(style[styleKey] as unknown as any),\n ...{ referer: mark }\n };\n return;\n }\n\n Object.entries(stateStyle).forEach(([state, style]) => {\n Object.entries(style).forEach(([styleKey, style]) => {\n stateStyle[state][styleKey].referer = mark;\n });\n });\n }\n\n setPostProcess<U extends keyof T>(key: U, postProcessFunc: any, state: StateValueType = 'normal') {\n if (this.stateStyle[state]?.[key]) {\n this.stateStyle[state][key].postProcess = postProcessFunc;\n }\n }\n\n getAttribute<U extends keyof T>(key: U, datum: Datum, state: StateValueType = 'normal', opt?: IAttributeOpt) {\n return this._computeAttribute(key, state)(datum, opt);\n }\n\n setAttribute<U extends keyof T>(\n attr: U,\n style: MarkInputStyle<T[U]>,\n state: StateValueType = 'normal',\n level: number = 0,\n stateStyle = this.stateStyle\n ) {\n if (stateStyle[state] === undefined) {\n stateStyle[state] = {};\n }\n\n if (stateStyle[state][attr] === undefined) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n stateStyle[state][attr] = {\n level,\n style,\n referer: undefined\n };\n }\n const attrLevel = stateStyle[state][attr]?.level;\n if (isValid(attrLevel) && attrLevel <= level) {\n mergeSpec(stateStyle[state][attr], { style, level });\n }\n\n // some attr has extension channel in VChart to make some effect\n if (state !== 'normal') {\n if (attr in this._extensionChannel) {\n this._extensionChannel[attr].forEach(key => {\n if (stateStyle[state][key] === undefined) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n stateStyle[state][key as keyof T] = stateStyle.normal[key];\n }\n });\n }\n }\n }\n\n /**\n * 与 vgrammar 默认值一致的样式可以不设置默认值或设置为undefined, 减少encode属性\n */\n protected _getDefaultStyle() {\n return {\n visible: true,\n // mark的层级应该在mark层 不在encode属性层\n // zIndex: LayoutZIndex.Mark,\n x: 0,\n y: 0\n } as IMarkStyle<T>;\n }\n\n // /**\n // * 获取该 mark 不支持的图形属性,由子类覆写\n // * @returns\n // */\n // protected getIgnoreAttributes(): string[] {\n // return [];\n // }\n\n protected _styleConvert<U extends keyof T>(style?: MarkInputStyle<T[U]>): StyleConvert<T[U]> | undefined {\n if (!style) {\n return style as undefined;\n }\n // visual spec 转换为 scale 类型的mark style\n if (isValidScaleType((style as IVisualSpecStyle<unknown, T[U]>).type) || (style as IVisualScale).scale) {\n // const _style = style as IVisual<T[U]>;\n const scale = createScaleWithSpec(style as IVisual<T[U]>, {\n globalScale: this._option.globalScale,\n seriesId: this._option.seriesId\n });\n if (scale) {\n return {\n scale,\n field: (style as IVisual<T[U]>).field,\n changeDomain: (style as IVisualScale).changeDomain\n };\n }\n }\n return style as StyleConvert<T[U]>;\n }\n\n protected _computeAttribute<U extends keyof T>(key: U, state: StateValueType) {\n let stateStyle = this.stateStyle[state]?.[key];\n if (!stateStyle) {\n stateStyle = this.stateStyle.normal[key];\n }\n const baseValueFunctor = this._computeStateAttribute(stateStyle, key, state);\n const hasPostProcess = isFunction(stateStyle?.postProcess);\n const hasExCompute = key in this._computeExChannel;\n\n if (hasPostProcess && hasExCompute) {\n const exCompute = this._computeExChannel[key];\n return (datum: Datum, opt: IAttributeOpt) => {\n let baseValue = baseValueFunctor(datum, opt);\n\n baseValue = stateStyle.postProcess(baseValue, datum, this._attributeContext, opt, this.getDataView());\n\n return exCompute(key, datum, state, opt, baseValue);\n };\n } else if (hasPostProcess) {\n return (datum: Datum, opt: IAttributeOpt) => {\n return stateStyle.postProcess(\n baseValueFunctor(datum, opt),\n datum,\n this._attributeContext,\n opt,\n this.getDataView()\n );\n };\n } else if (hasExCompute) {\n const exCompute = this._computeExChannel[key];\n return (datum: Datum, opt: IAttributeOpt) => {\n return exCompute(key, datum, state, opt, baseValueFunctor(datum, opt));\n };\n }\n return baseValueFunctor;\n }\n\n protected _computeStateAttribute<U extends keyof T>(stateStyle: any, key: U, state: StateValueType) {\n if (!stateStyle) {\n return (datum: Datum, opt: IAttributeOpt) => undefined as any;\n }\n if (stateStyle.referer) {\n return stateStyle.referer._computeAttribute(key, state);\n }\n if (!stateStyle.style) {\n return (datum: Datum, opt: IAttributeOpt) => stateStyle.style;\n }\n\n if (typeof stateStyle.style === 'function') {\n return (datum: Datum, opt: IAttributeOpt) =>\n stateStyle.style(datum, this._attributeContext, opt, this.getDataView());\n }\n\n if (GradientType.includes(stateStyle.style.gradient)) {\n // 渐变色处理,支持各个属性回调\n return this._computeGradientAttr(stateStyle.style);\n }\n\n if (['outerBorder', 'innerBorder'].includes(key as string)) {\n // 内外描边处理,支持各个属性回调\n return this._computeBorderAttr(stateStyle.style);\n }\n\n if (isValidScaleType(stateStyle.style.scale?.type)) {\n return (datum: Datum, opt: IAttributeOpt) => stateStyle.style.scale.scale(datum[stateStyle.style.field]);\n }\n return (datum: Datum, opt: IAttributeOpt) => {\n return stateStyle.style;\n };\n }\n\n private _initStyle(): void {\n const defaultStyle = this._getDefaultStyle();\n this.setStyle(defaultStyle, 'normal', 0);\n }\n\n private _initSpecStyle(spec: IMarkSpec<T>, stateStyle: IMarkStateStyle<T>, key?: string) {\n // style\n if (spec.style) {\n this.setStyle(spec.style, 'normal', AttributeLevel.User_Mark, stateStyle);\n }\n const state = spec.state;\n if (state) {\n Object.keys(state).forEach(key => {\n const stateTemp = state[key];\n if ('style' in stateTemp) {\n const style = stateTemp.style;\n let stateInfo: IStateInfo = { stateValue: key };\n if ('level' in stateTemp) {\n stateInfo.level = stateTemp.level as number;\n }\n if ('filter' in stateTemp) {\n if (isFunction(stateTemp.filter)) {\n stateInfo = {\n filter: stateTemp.filter as (datum: any, options: Record<string, any>) => boolean,\n ...stateInfo\n };\n } else {\n stateInfo = { ...stateTemp.filter, ...stateInfo };\n }\n }\n this.state.addStateInfo(stateInfo);\n this.setStyle(style as ConvertToMarkStyleSpec<T>, key, AttributeLevel.User_Mark, stateStyle);\n } else {\n this.setStyle(stateTemp, key, AttributeLevel.User_Mark, stateStyle);\n }\n });\n }\n }\n\n private _computeGradientAttr(gradientStyle: any) {\n const { gradient, scale, field, ...rest } = gradientStyle;\n\n let colorScale = scale;\n let colorField = field;\n if ((!scale || !field) && this.model.modelType === 'series') {\n // 目前只有series有这个属性\n const { scale: globalColorScale, field: globalField } = (this.model as BaseSeries<any>).getColorAttribute();\n if (!scale) {\n // 获取全局的 colorScale\n colorScale = globalColorScale;\n }\n if (!colorField) {\n colorField = globalField;\n }\n }\n\n const themeColor = computeActualDataScheme(\n getDataScheme(\n this.model.getColorScheme(),\n this.model.modelType === 'series' ? this.model.getSpec?.() : undefined\n ),\n (this.model as ISeries).getDefaultColorDomain()\n );\n // 默认配置处理\n const mergedStyle = {\n ...DEFAULT_GRADIENT_CONFIG[gradient],\n ...rest\n };\n return (data: Datum, opt: IAttributeOpt) => {\n const computeStyle: any = {};\n const markData = this.getDataView();\n Object.keys(mergedStyle).forEach(key => {\n const value = mergedStyle[key];\n if (key === 'stops') {\n computeStyle.stops = value.map((stop: GradientStop) => {\n const { opacity, color, offset } = stop;\n let computeColor = color ?? colorScale?.scale(data[colorField]);\n if (isFunction(color)) {\n computeColor = color(data, this._attributeContext, opt, markData);\n }\n\n if (isValid(opacity)) {\n computeColor = Color.SetOpacity(computeColor as string, opacity);\n }\n\n return {\n offset: isFunction(offset) ? offset(data, this._attributeContext, opt, markData) : offset,\n color: computeColor || themeColor[0]\n };\n });\n } else if (isFunction(value)) {\n computeStyle[key] = value(data, this._attributeContext, opt, markData);\n } else {\n computeStyle[key] = value;\n }\n });\n\n computeStyle.gradient = gradient;\n\n return computeStyle;\n };\n }\n\n private _computeBorderAttr(borderStyle: any) {\n const { scale, field, ...mergedStyle } = borderStyle;\n\n return (data: Datum, opt: IAttributeOpt) => {\n const computeStyle: any = {};\n\n Object.keys(mergedStyle).forEach(key => {\n const value = mergedStyle[key];\n if (isFunction(value)) {\n computeStyle[key] = value(data, this._attributeContext, opt, this.getDataView());\n } else {\n computeStyle[key] = value;\n }\n });\n if (!('stroke' in computeStyle)) {\n const themeColor = computeActualDataScheme(\n getDataScheme(\n this.model.getColorScheme(),\n this.model.modelType === 'series' ? this.model.getSpec?.() : undefined\n ),\n (this.model as ISeries).getDefaultColorDomain()\n );\n let colorScale = scale;\n let colorField = field;\n if ((!scale || !field) && this.model.modelType === 'series') {\n // 目前只有series有这个属性\n const { scale: globalColorScale, field: globalField } = (this.model as BaseSeries<any>).getColorAttribute();\n if (!scale) {\n // 获取全局的 colorScale\n colorScale = globalColorScale;\n }\n if (!colorField) {\n colorField = globalField;\n }\n computeStyle.stroke = colorScale?.scale(data[colorField]) || themeColor[0];\n }\n } else if (GradientType.includes(mergedStyle.stroke?.gradient)) {\n computeStyle.stroke = this._computeGradientAttr(mergedStyle.stroke)(data, opt);\n }\n return computeStyle;\n };\n }\n}\n"]}