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

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 (1750) hide show
  1. package/README.md +6 -0
  2. package/build/index.js +14321 -14669
  3. package/build/index.min.js +2 -2
  4. package/cjs/animation/animate-manager.js.map +1 -1
  5. package/cjs/animation/config.js.map +1 -1
  6. package/cjs/animation/interface.js +2 -1
  7. package/cjs/animation/interface.js.map +1 -1
  8. package/cjs/animation/spec.d.ts +2 -2
  9. package/cjs/animation/spec.js.map +1 -1
  10. package/cjs/animation/utils.d.ts +4 -3
  11. package/cjs/animation/utils.js +8 -3
  12. package/cjs/animation/utils.js.map +1 -1
  13. package/cjs/chart/area/area.js.map +1 -1
  14. package/cjs/chart/area/index.js.map +1 -1
  15. package/cjs/chart/area/interface.js.map +1 -1
  16. package/cjs/chart/bar/bar.js.map +1 -1
  17. package/cjs/chart/bar/index.js.map +1 -1
  18. package/cjs/chart/bar/interface.js.map +1 -1
  19. package/cjs/chart/base-chart.js +3 -1
  20. package/cjs/chart/base-chart.js.map +1 -1
  21. package/cjs/chart/boxplot/boxPlot.js.map +1 -1
  22. package/cjs/chart/boxplot/index.js.map +1 -1
  23. package/cjs/chart/boxplot/interface.js.map +1 -1
  24. package/cjs/chart/cartesian/cartesian.js +7 -2
  25. package/cjs/chart/cartesian/cartesian.js.map +1 -1
  26. package/cjs/chart/cartesian/interface.js.map +1 -1
  27. package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
  28. package/cjs/chart/circle-packing/index.js.map +1 -1
  29. package/cjs/chart/circle-packing/interface.js.map +1 -1
  30. package/cjs/chart/common/common.js.map +1 -1
  31. package/cjs/chart/common/index.js.map +1 -1
  32. package/cjs/chart/common/interface.js.map +1 -1
  33. package/cjs/chart/funnel/funnel.js.map +1 -1
  34. package/cjs/chart/funnel/index.js.map +1 -1
  35. package/cjs/chart/funnel/interface.js.map +1 -1
  36. package/cjs/chart/gauge/gauge.js.map +1 -1
  37. package/cjs/chart/gauge/index.js.map +1 -1
  38. package/cjs/chart/gauge/interface.js.map +1 -1
  39. package/cjs/chart/heatmap/heatmap.js +5 -3
  40. package/cjs/chart/heatmap/heatmap.js.map +1 -1
  41. package/cjs/chart/heatmap/index.js.map +1 -1
  42. package/cjs/chart/heatmap/interface.js.map +1 -1
  43. package/cjs/chart/histogram/histogram.js.map +1 -1
  44. package/cjs/chart/histogram/index.js.map +1 -1
  45. package/cjs/chart/histogram/interface.js.map +1 -1
  46. package/cjs/chart/index.js.map +1 -1
  47. package/cjs/chart/interface/chart.js.map +1 -1
  48. package/cjs/chart/interface/common.js.map +1 -1
  49. package/cjs/chart/interface/index.js.map +1 -1
  50. package/cjs/chart/interface/type.js.map +1 -1
  51. package/cjs/chart/line/index.js.map +1 -1
  52. package/cjs/chart/line/interface.js.map +1 -1
  53. package/cjs/chart/line/line.js.map +1 -1
  54. package/cjs/chart/map/index.js.map +1 -1
  55. package/cjs/chart/map/interface.js.map +1 -1
  56. package/cjs/chart/map/map.js.map +1 -1
  57. package/cjs/chart/pie/index.js.map +1 -1
  58. package/cjs/chart/pie/interface.js.map +1 -1
  59. package/cjs/chart/pie/pie.d.ts +1 -0
  60. package/cjs/chart/pie/pie.js +5 -0
  61. package/cjs/chart/pie/pie.js.map +1 -1
  62. package/cjs/chart/polar/interface.js.map +1 -1
  63. package/cjs/chart/polar/polar.js.map +1 -1
  64. package/cjs/chart/polar/progress-like.js.map +1 -1
  65. package/cjs/chart/polar/rose-like.js.map +1 -1
  66. package/cjs/chart/progress/circular/circular.js.map +1 -1
  67. package/cjs/chart/progress/circular/index.js.map +1 -1
  68. package/cjs/chart/progress/circular/interface.js.map +1 -1
  69. package/cjs/chart/progress/interface.js.map +1 -1
  70. package/cjs/chart/progress/linear/index.js.map +1 -1
  71. package/cjs/chart/progress/linear/interface.js.map +1 -1
  72. package/cjs/chart/progress/linear/linear.js.map +1 -1
  73. package/cjs/chart/radar/index.js.map +1 -1
  74. package/cjs/chart/radar/interface.js.map +1 -1
  75. package/cjs/chart/radar/radar.js.map +1 -1
  76. package/cjs/chart/range-area/index.js.map +1 -1
  77. package/cjs/chart/range-area/interface.js.map +1 -1
  78. package/cjs/chart/range-area/range-area.js.map +1 -1
  79. package/cjs/chart/range-column/index.js.map +1 -1
  80. package/cjs/chart/range-column/interface.js.map +1 -1
  81. package/cjs/chart/range-column/rangeColumn.js.map +1 -1
  82. package/cjs/chart/rose/index.js.map +1 -1
  83. package/cjs/chart/rose/interface.js.map +1 -1
  84. package/cjs/chart/rose/rose.js.map +1 -1
  85. package/cjs/chart/sankey/index.js.map +1 -1
  86. package/cjs/chart/sankey/interface.js.map +1 -1
  87. package/cjs/chart/sankey/sankey.js.map +1 -1
  88. package/cjs/chart/scatter/index.js.map +1 -1
  89. package/cjs/chart/scatter/interface.js.map +1 -1
  90. package/cjs/chart/scatter/scatter.js.map +1 -1
  91. package/cjs/chart/sequence/index.js.map +1 -1
  92. package/cjs/chart/sequence/interface.js.map +1 -1
  93. package/cjs/chart/sequence/sequence.js.map +1 -1
  94. package/cjs/chart/stack.js.map +1 -1
  95. package/cjs/chart/sunburst/index.js.map +1 -1
  96. package/cjs/chart/sunburst/interface.js.map +1 -1
  97. package/cjs/chart/sunburst/sunburst.js.map +1 -1
  98. package/cjs/chart/treemap/index.js.map +1 -1
  99. package/cjs/chart/treemap/interface.js.map +1 -1
  100. package/cjs/chart/treemap/treemap.js.map +1 -1
  101. package/cjs/chart/waterfall/index.js.map +1 -1
  102. package/cjs/chart/waterfall/interface.js.map +1 -1
  103. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  104. package/cjs/chart/word-cloud/index.js.map +1 -1
  105. package/cjs/chart/word-cloud/interface.d.ts +5 -1
  106. package/cjs/chart/word-cloud/interface.js.map +1 -1
  107. package/cjs/chart/word-cloud/word-cloud.d.ts +3 -2
  108. package/cjs/chart/word-cloud/word-cloud.js +42 -15
  109. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  110. package/cjs/compile/compilable-base.js +1 -1
  111. package/cjs/compile/compilable-base.js.map +1 -1
  112. package/cjs/compile/compiler.d.ts +3 -2
  113. package/cjs/compile/compiler.js +12 -9
  114. package/cjs/compile/compiler.js.map +1 -1
  115. package/cjs/compile/data/compilable-data.d.ts +1 -1
  116. package/cjs/compile/data/compilable-data.js.map +1 -1
  117. package/cjs/compile/data/index.js.map +1 -1
  118. package/cjs/compile/data/interface.js.map +1 -1
  119. package/cjs/compile/grammar-item.js +1 -1
  120. package/cjs/compile/grammar-item.js.map +1 -1
  121. package/cjs/compile/interface/compilable-item.d.ts +1 -2
  122. package/cjs/compile/interface/compilable-item.js.map +1 -1
  123. package/cjs/compile/interface/compiler.d.ts +1 -5
  124. package/cjs/compile/interface/compiler.js.map +1 -1
  125. package/cjs/compile/interface/index.js.map +1 -1
  126. package/cjs/compile/mark/compilable-mark.d.ts +1 -1
  127. package/cjs/compile/mark/compilable-mark.js +1 -1
  128. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  129. package/cjs/compile/mark/index.js.map +1 -1
  130. package/cjs/compile/mark/interface.d.ts +1 -0
  131. package/cjs/compile/mark/interface.js.map +1 -1
  132. package/cjs/compile/mark/mark-data.js.map +1 -1
  133. package/cjs/compile/mark/mark-state-manager.js.map +1 -1
  134. package/cjs/compile/mark/util.js.map +1 -1
  135. package/cjs/compile/signal/compilable-signal.js.map +1 -1
  136. package/cjs/compile/signal/index.js.map +1 -1
  137. package/cjs/compile/signal/interface.js.map +1 -1
  138. package/cjs/compile/signal/signal-manager.js.map +1 -1
  139. package/cjs/compile/signal/state-manager.d.ts +1 -1
  140. package/cjs/compile/signal/state-manager.js.map +1 -1
  141. package/cjs/compile/util.js +1 -1
  142. package/cjs/compile/util.js.map +1 -1
  143. package/cjs/component/axis/base-axis.d.ts +0 -1
  144. package/cjs/component/axis/base-axis.js +2 -11
  145. package/cjs/component/axis/base-axis.js.map +1 -1
  146. package/cjs/component/axis/cartesian/axis.d.ts +11 -0
  147. package/cjs/component/axis/cartesian/axis.js +64 -16
  148. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  149. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  150. package/cjs/component/axis/cartesian/config.js.map +1 -1
  151. package/cjs/component/axis/cartesian/index.js.map +1 -1
  152. package/cjs/component/axis/cartesian/interface/common.d.ts +1 -5
  153. package/cjs/component/axis/cartesian/interface/common.js.map +1 -1
  154. package/cjs/component/axis/cartesian/interface/index.js.map +1 -1
  155. package/cjs/component/axis/cartesian/interface/spec.d.ts +5 -4
  156. package/cjs/component/axis/cartesian/interface/spec.js.map +1 -1
  157. package/cjs/component/axis/cartesian/interface/theme.d.ts +10 -13
  158. package/cjs/component/axis/cartesian/interface/theme.js.map +1 -1
  159. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  160. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  161. package/cjs/component/axis/cartesian/util/common.d.ts +4 -4
  162. package/cjs/component/axis/cartesian/util/common.js +12 -15
  163. package/cjs/component/axis/cartesian/util/common.js.map +1 -1
  164. package/cjs/component/axis/cartesian/util/index.js.map +1 -1
  165. package/cjs/component/axis/cartesian/util/time.js.map +1 -1
  166. package/cjs/component/axis/index.js.map +1 -1
  167. package/cjs/component/axis/interface.d.ts +10 -17
  168. package/cjs/component/axis/interface.js.map +1 -1
  169. package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
  170. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  171. package/cjs/component/axis/polar/axis.js.map +1 -1
  172. package/cjs/component/axis/polar/band-axis.js.map +1 -1
  173. package/cjs/component/axis/polar/config.js.map +1 -1
  174. package/cjs/component/axis/polar/index.js.map +1 -1
  175. package/cjs/component/axis/polar/interface/common.d.ts +1 -4
  176. package/cjs/component/axis/polar/interface/common.js.map +1 -1
  177. package/cjs/component/axis/polar/interface/index.js.map +1 -1
  178. package/cjs/component/axis/polar/interface/spec.js.map +1 -1
  179. package/cjs/component/axis/polar/interface/theme.d.ts +9 -12
  180. package/cjs/component/axis/polar/interface/theme.js.map +1 -1
  181. package/cjs/component/axis/polar/linear-axis.js.map +1 -1
  182. package/cjs/component/axis/utils.d.ts +5 -1
  183. package/cjs/component/axis/utils.js +20 -4
  184. package/cjs/component/axis/utils.js.map +1 -1
  185. package/cjs/component/base/base-component.js.map +1 -1
  186. package/cjs/component/base/index.js.map +1 -1
  187. package/cjs/component/base/util.js +3 -4
  188. package/cjs/component/base/util.js.map +1 -1
  189. package/cjs/component/brush/brush.d.ts +0 -1
  190. package/cjs/component/brush/brush.js +7 -10
  191. package/cjs/component/brush/brush.js.map +1 -1
  192. package/cjs/component/brush/index.js.map +1 -1
  193. package/cjs/component/brush/interface.d.ts +10 -8
  194. package/cjs/component/brush/interface.js.map +1 -1
  195. package/cjs/component/common/trigger/config.js.map +1 -1
  196. package/cjs/component/common/trigger/desktop.js.map +1 -1
  197. package/cjs/component/common/trigger/interface.js.map +1 -1
  198. package/cjs/component/common/trigger/mobile.js.map +1 -1
  199. package/cjs/component/crosshair/base.d.ts +0 -1
  200. package/cjs/component/crosshair/base.js +7 -15
  201. package/cjs/component/crosshair/base.js.map +1 -1
  202. package/cjs/component/crosshair/cartesian.js.map +1 -1
  203. package/cjs/component/crosshair/config.d.ts +0 -2
  204. package/cjs/component/crosshair/config.js +2 -4
  205. package/cjs/component/crosshair/config.js.map +1 -1
  206. package/cjs/component/crosshair/index.js.map +1 -1
  207. package/cjs/component/crosshair/interface/index.js.map +1 -1
  208. package/cjs/component/crosshair/interface/spec.d.ts +3 -3
  209. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  210. package/cjs/component/crosshair/interface/theme.d.ts +2 -4
  211. package/cjs/component/crosshair/interface/theme.js.map +1 -1
  212. package/cjs/component/crosshair/polar.js.map +1 -1
  213. package/cjs/component/crosshair/util.d.ts +0 -4
  214. package/cjs/component/crosshair/util.js +3 -12
  215. package/cjs/component/crosshair/util.js.map +1 -1
  216. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  217. package/cjs/component/custom-mark/index.js.map +1 -1
  218. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  219. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  220. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  221. package/cjs/component/data-zoom/data-zoom/data-zoom.js +3 -4
  222. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  223. package/cjs/component/data-zoom/data-zoom/index.js.map +1 -1
  224. package/cjs/component/data-zoom/data-zoom/interface.d.ts +5 -1
  225. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  226. package/cjs/component/data-zoom/index.js.map +1 -1
  227. package/cjs/component/data-zoom/interface.js.map +1 -1
  228. package/cjs/component/data-zoom/scroll-bar/index.js.map +1 -1
  229. package/cjs/component/data-zoom/scroll-bar/interface.d.ts +7 -1
  230. package/cjs/component/data-zoom/scroll-bar/interface.js.map +1 -1
  231. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  232. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +2 -2
  233. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  234. package/cjs/component/data-zoom/util.js.map +1 -1
  235. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  236. package/cjs/component/geo/interface.js.map +1 -1
  237. package/cjs/component/geo/projection.js.map +1 -1
  238. package/cjs/component/index.js +1 -1
  239. package/cjs/component/index.js.map +1 -1
  240. package/cjs/component/indicator/indicator.d.ts +0 -1
  241. package/cjs/component/indicator/indicator.js +3 -12
  242. package/cjs/component/indicator/indicator.js.map +1 -1
  243. package/cjs/component/indicator/interface.d.ts +1 -5
  244. package/cjs/component/indicator/interface.js.map +1 -1
  245. package/cjs/component/indicator/util.js +2 -2
  246. package/cjs/component/indicator/util.js.map +1 -1
  247. package/cjs/component/interface/common.js.map +1 -1
  248. package/cjs/component/interface/index.js.map +1 -1
  249. package/cjs/component/interface/tooltip-helper.js.map +1 -1
  250. package/cjs/component/interface/type.js.map +1 -1
  251. package/cjs/component/label/bar.d.ts +1 -3
  252. package/cjs/component/label/bar.js +2 -4
  253. package/cjs/component/label/bar.js.map +1 -1
  254. package/cjs/component/label/index.js.map +1 -1
  255. package/cjs/component/label/interface.d.ts +2 -2
  256. package/cjs/component/label/interface.js.map +1 -1
  257. package/cjs/component/label/label.d.ts +56 -0
  258. package/cjs/component/label/label.js +4 -2
  259. package/cjs/component/label/label.js.map +1 -1
  260. package/cjs/component/label/symbol.js.map +1 -1
  261. package/cjs/component/label/util.js +1 -7
  262. package/cjs/component/label/util.js.map +1 -1
  263. package/cjs/component/legend/base-legend.d.ts +0 -1
  264. package/cjs/component/legend/base-legend.js +2 -4
  265. package/cjs/component/legend/base-legend.js.map +1 -1
  266. package/cjs/component/legend/continuous/index.js.map +1 -1
  267. package/cjs/component/legend/continuous/interface.d.ts +1 -6
  268. package/cjs/component/legend/continuous/interface.js.map +1 -1
  269. package/cjs/component/legend/continuous/legend.js +1 -1
  270. package/cjs/component/legend/continuous/legend.js.map +1 -1
  271. package/cjs/component/legend/continuous/util.js.map +1 -1
  272. package/cjs/component/legend/discrete/index.js.map +1 -1
  273. package/cjs/component/legend/discrete/interface.d.ts +1 -5
  274. package/cjs/component/legend/discrete/interface.js.map +1 -1
  275. package/cjs/component/legend/discrete/legend.js +17 -16
  276. package/cjs/component/legend/discrete/legend.js.map +1 -1
  277. package/cjs/component/legend/discrete/util.js.map +1 -1
  278. package/cjs/component/legend/index.js.map +1 -1
  279. package/cjs/component/legend/interface.d.ts +1 -1
  280. package/cjs/component/legend/interface.js.map +1 -1
  281. package/cjs/component/legend/util.js.map +1 -1
  282. package/cjs/component/map-label/component.js.map +1 -1
  283. package/cjs/component/map-label/config.js.map +1 -1
  284. package/cjs/component/map-label/index.js.map +1 -1
  285. package/cjs/component/map-label/interface.d.ts +2 -2
  286. package/cjs/component/map-label/interface.js.map +1 -1
  287. package/cjs/component/map-label/layout.js.map +1 -1
  288. package/cjs/component/marker/base-marker.d.ts +0 -1
  289. package/cjs/component/marker/base-marker.js +0 -3
  290. package/cjs/component/marker/base-marker.js.map +1 -1
  291. package/cjs/component/marker/interface.js.map +1 -1
  292. package/cjs/component/marker/mark-area/interface/index.js.map +1 -1
  293. package/cjs/component/marker/mark-area/interface/spec.d.ts +2 -1
  294. package/cjs/component/marker/mark-area/interface/spec.js.map +1 -1
  295. package/cjs/component/marker/mark-area/interface/theme.d.ts +2 -2
  296. package/cjs/component/marker/mark-area/interface/theme.js.map +1 -1
  297. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  298. package/cjs/component/marker/mark-line/interface/index.js.map +1 -1
  299. package/cjs/component/marker/mark-line/interface/spec.d.ts +2 -1
  300. package/cjs/component/marker/mark-line/interface/spec.js.map +1 -1
  301. package/cjs/component/marker/mark-line/interface/theme.js.map +1 -1
  302. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  303. package/cjs/component/marker/mark-point/interface/index.js.map +1 -1
  304. package/cjs/component/marker/mark-point/interface/spec.d.ts +2 -1
  305. package/cjs/component/marker/mark-point/interface/spec.js.map +1 -1
  306. package/cjs/component/marker/mark-point/interface/theme.js.map +1 -1
  307. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  308. package/cjs/component/marker/utils.js.map +1 -1
  309. package/cjs/component/player/index.js.map +1 -1
  310. package/cjs/component/player/interface/index.js.map +1 -1
  311. package/cjs/component/player/interface/spec.js.map +1 -1
  312. package/cjs/component/player/interface/theme.js.map +1 -1
  313. package/cjs/component/player/player.d.ts +0 -1
  314. package/cjs/component/player/player.js +1 -4
  315. package/cjs/component/player/player.js.map +1 -1
  316. package/cjs/component/player/utils/index.js.map +1 -1
  317. package/cjs/component/player/utils/orient.js.map +1 -1
  318. package/cjs/component/player/utils/transform.js.map +1 -1
  319. package/cjs/component/title/index.js.map +1 -1
  320. package/cjs/component/title/interface/index.js.map +1 -1
  321. package/cjs/component/title/interface/spec.d.ts +0 -4
  322. package/cjs/component/title/interface/spec.js.map +1 -1
  323. package/cjs/component/title/interface/theme.d.ts +2 -2
  324. package/cjs/component/title/interface/theme.js.map +1 -1
  325. package/cjs/component/title/title.d.ts +0 -1
  326. package/cjs/component/title/title.js +3 -10
  327. package/cjs/component/title/title.js.map +1 -1
  328. package/cjs/component/title/utils.d.ts +0 -1
  329. package/cjs/component/title/utils.js +2 -9
  330. package/cjs/component/title/utils.js.map +1 -1
  331. package/cjs/component/tooltip/handler/base.d.ts +5 -3
  332. package/cjs/component/tooltip/handler/base.js +11 -12
  333. package/cjs/component/tooltip/handler/base.js.map +1 -1
  334. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +1 -0
  335. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js +4 -3
  336. package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  337. package/cjs/component/tooltip/handler/canvas/index.js.map +1 -1
  338. package/cjs/component/tooltip/handler/constants.d.ts +4 -0
  339. package/cjs/component/tooltip/handler/constants.js +7 -2
  340. package/cjs/component/tooltip/handler/constants.js.map +1 -1
  341. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +2 -1
  342. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +3 -2
  343. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  344. package/cjs/component/tooltip/handler/dom/index.js.map +1 -1
  345. package/cjs/component/tooltip/handler/dom/interface.js.map +1 -1
  346. package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  347. package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  348. package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  349. package/cjs/component/tooltip/handler/dom/model/interface.js.map +1 -1
  350. package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  351. package/cjs/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  352. package/cjs/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  353. package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  354. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  355. package/cjs/component/tooltip/handler/dom/utils/style.js +3 -3
  356. package/cjs/component/tooltip/handler/dom/utils/style.js.map +1 -1
  357. package/cjs/component/tooltip/handler/index.js.map +1 -1
  358. package/cjs/component/tooltip/handler/interface/cache.js.map +1 -1
  359. package/cjs/component/tooltip/handler/interface/index.js.map +1 -1
  360. package/cjs/component/tooltip/handler/interface/style.js.map +1 -1
  361. package/cjs/component/tooltip/handler/utils/attribute.js +4 -5
  362. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  363. package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
  364. package/cjs/component/tooltip/handler/utils/compose.js.map +1 -1
  365. package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
  366. package/cjs/component/tooltip/handler/utils/index.js.map +1 -1
  367. package/cjs/component/tooltip/handler/utils/pattern.js.map +1 -1
  368. package/cjs/component/tooltip/handler/utils/position.js.map +1 -1
  369. package/cjs/component/tooltip/handler/utils/style.d.ts +1 -1
  370. package/cjs/component/tooltip/handler/utils/style.js +11 -7
  371. package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
  372. package/cjs/component/tooltip/index.js.map +1 -1
  373. package/cjs/component/tooltip/interface/common.js.map +1 -1
  374. package/cjs/component/tooltip/interface/index.js.map +1 -1
  375. package/cjs/component/tooltip/interface/spec.d.ts +5 -6
  376. package/cjs/component/tooltip/interface/spec.js.map +1 -1
  377. package/cjs/component/tooltip/interface/theme.d.ts +6 -0
  378. package/cjs/component/tooltip/interface/theme.js.map +1 -1
  379. package/cjs/component/tooltip/processor/base.d.ts +2 -4
  380. package/cjs/component/tooltip/processor/base.js +5 -5
  381. package/cjs/component/tooltip/processor/base.js.map +1 -1
  382. package/cjs/component/tooltip/processor/dimension-tooltip.js +2 -1
  383. package/cjs/component/tooltip/processor/dimension-tooltip.js.map +1 -1
  384. package/cjs/component/tooltip/processor/index.js.map +1 -1
  385. package/cjs/component/tooltip/processor/interface.js.map +1 -1
  386. package/cjs/component/tooltip/processor/mark-tooltip.js +2 -1
  387. package/cjs/component/tooltip/processor/mark-tooltip.js.map +1 -1
  388. package/cjs/component/tooltip/processor/util.js.map +1 -1
  389. package/cjs/component/tooltip/tooltip.js +7 -8
  390. package/cjs/component/tooltip/tooltip.js.map +1 -1
  391. package/cjs/component/tooltip/utils/common.js.map +1 -1
  392. package/cjs/component/tooltip/utils/index.js.map +1 -1
  393. package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
  394. package/cjs/constant/base.d.ts +1 -1
  395. package/cjs/constant/base.js +1 -1
  396. package/cjs/constant/base.js.map +1 -1
  397. package/cjs/constant/box-plot.js.map +1 -1
  398. package/cjs/constant/event.js.map +1 -1
  399. package/cjs/constant/funnel.js.map +1 -1
  400. package/cjs/constant/hierarchy.js.map +1 -1
  401. package/cjs/constant/index.js.map +1 -1
  402. package/cjs/constant/label.js +1 -2
  403. package/cjs/constant/label.js.map +1 -1
  404. package/cjs/constant/layout.js.map +1 -1
  405. package/cjs/constant/marker.js.map +1 -1
  406. package/cjs/constant/polar.js +2 -1
  407. package/cjs/constant/polar.js.map +1 -1
  408. package/cjs/constant/scatter.js.map +1 -1
  409. package/cjs/constant/scroll-bar.js.map +1 -1
  410. package/cjs/constant/sunburst.js.map +1 -1
  411. package/cjs/constant/waterfall.js.map +1 -1
  412. package/cjs/constant/word-cloud.js.map +1 -1
  413. package/cjs/core/factory.js.map +1 -1
  414. package/cjs/core/interface.js.map +1 -1
  415. package/cjs/core/vchart.d.ts +1 -0
  416. package/cjs/core/vchart.js +13 -8
  417. package/cjs/core/vchart.js.map +1 -1
  418. package/cjs/data/initialize.js.map +1 -1
  419. package/cjs/data/parser/array.js.map +1 -1
  420. package/cjs/data/parser/scale.js.map +1 -1
  421. package/cjs/data/register.js.map +1 -1
  422. package/cjs/data/transforms/add-property.d.ts +5 -5
  423. package/cjs/data/transforms/add-property.js +3 -3
  424. package/cjs/data/transforms/add-property.js.map +1 -1
  425. package/cjs/data/transforms/aggregation.js.map +1 -1
  426. package/cjs/data/transforms/box-plot.js.map +1 -1
  427. package/cjs/data/transforms/circle-packing.js.map +1 -1
  428. package/cjs/data/transforms/copy-data-view.js.map +1 -1
  429. package/cjs/data/transforms/data-key.d.ts +3 -3
  430. package/cjs/data/transforms/data-key.js.map +1 -1
  431. package/cjs/data/transforms/dimension-data.js.map +1 -1
  432. package/cjs/data/transforms/dimension-statistics.js.map +1 -1
  433. package/cjs/data/transforms/drill.js.map +1 -1
  434. package/cjs/data/transforms/flatten.js.map +1 -1
  435. package/cjs/data/transforms/funnel.js.map +1 -1
  436. package/cjs/data/transforms/hierarchy-dimension-statistics.js.map +1 -1
  437. package/cjs/data/transforms/invalid-travel.js.map +1 -1
  438. package/cjs/data/transforms/legend-data/continuous/continuous.js.map +1 -1
  439. package/cjs/data/transforms/legend-data/continuous/index.js.map +1 -1
  440. package/cjs/data/transforms/legend-data/continuous/interface.js.map +1 -1
  441. package/cjs/data/transforms/legend-data/discrete/discrete.js.map +1 -1
  442. package/cjs/data/transforms/legend-data/discrete/index.js.map +1 -1
  443. package/cjs/data/transforms/legend-data/discrete/interface.js.map +1 -1
  444. package/cjs/data/transforms/lookup.js.map +1 -1
  445. package/cjs/data/transforms/map.js.map +1 -1
  446. package/cjs/data/transforms/obj-flat.js.map +1 -1
  447. package/cjs/data/transforms/pie.js.map +1 -1
  448. package/cjs/data/transforms/regression.js.map +1 -1
  449. package/cjs/data/transforms/sankey-links.js.map +1 -1
  450. package/cjs/data/transforms/sankey-nodes.js.map +1 -1
  451. package/cjs/data/transforms/sankey.js.map +1 -1
  452. package/cjs/data/transforms/stack-split.js.map +1 -1
  453. package/cjs/data/transforms/sunburst.js.map +1 -1
  454. package/cjs/data/transforms/tick-data/config.js.map +1 -1
  455. package/cjs/data/transforms/tick-data/continuous.js.map +1 -1
  456. package/cjs/data/transforms/tick-data/discrete/linear.js.map +1 -1
  457. package/cjs/data/transforms/tick-data/discrete/polar-angle.js.map +1 -1
  458. package/cjs/data/transforms/tick-data/index.js.map +1 -1
  459. package/cjs/data/transforms/tick-data/interface.js.map +1 -1
  460. package/cjs/data/transforms/tick-data/util.js.map +1 -1
  461. package/cjs/data/transforms/treemap.js.map +1 -1
  462. package/cjs/data/transforms/waterfall.js.map +1 -1
  463. package/cjs/event/bubble.js.map +1 -1
  464. package/cjs/event/event-dispatcher.js.map +1 -1
  465. package/cjs/event/event.js +1 -2
  466. package/cjs/event/event.js.map +1 -1
  467. package/cjs/event/events/dimension/base.js.map +1 -1
  468. package/cjs/event/events/dimension/dimension-click.js.map +1 -1
  469. package/cjs/event/events/dimension/dimension-hover.js.map +1 -1
  470. package/cjs/event/events/dimension/index.js.map +1 -1
  471. package/cjs/event/events/dimension/interface.js.map +1 -1
  472. package/cjs/event/events/dimension/util/cartesian.js.map +1 -1
  473. package/cjs/event/events/dimension/util/common.js.map +1 -1
  474. package/cjs/event/events/dimension/util/index.js.map +1 -1
  475. package/cjs/event/events/dimension/util/polar.js.map +1 -1
  476. package/cjs/event/events/index.js.map +1 -1
  477. package/cjs/event/interface.js.map +1 -1
  478. package/cjs/index.d.ts +1 -1
  479. package/cjs/index.js +1 -1
  480. package/cjs/index.js.map +1 -1
  481. package/cjs/interaction/config.js.map +1 -1
  482. package/cjs/interaction/dimension-trigger.js.map +1 -1
  483. package/cjs/interaction/drill/drillable.js.map +1 -1
  484. package/cjs/interaction/drill/index.js.map +1 -1
  485. package/cjs/interaction/interaction.js.map +1 -1
  486. package/cjs/interaction/interface.js.map +1 -1
  487. package/cjs/interaction/trigger.js.map +1 -1
  488. package/cjs/interaction/zoom/index.js.map +1 -1
  489. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  490. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  491. package/cjs/layout/index.d.ts +13 -10
  492. package/cjs/layout/index.js.map +1 -1
  493. package/cjs/layout/interface.js.map +1 -1
  494. package/cjs/layout/label/arc-label.js.map +1 -1
  495. package/cjs/layout/layout3d/index.d.ts +23 -0
  496. package/cjs/layout/layout3d/index.js +131 -0
  497. package/cjs/layout/layout3d/index.js.map +1 -0
  498. package/cjs/mark/arc.js +1 -1
  499. package/cjs/mark/arc.js.map +1 -1
  500. package/cjs/mark/area.js +1 -1
  501. package/cjs/mark/area.js.map +1 -1
  502. package/cjs/mark/base/base-line.js.map +1 -1
  503. package/cjs/mark/base/base-mark.js.map +1 -1
  504. package/cjs/mark/base/index.js.map +1 -1
  505. package/cjs/mark/boxPlot.js +2 -2
  506. package/cjs/mark/boxPlot.js.map +1 -1
  507. package/cjs/mark/cell.js +1 -1
  508. package/cjs/mark/cell.js.map +1 -1
  509. package/cjs/mark/component.d.ts +1 -0
  510. package/cjs/mark/component.js +5 -3
  511. package/cjs/mark/component.js.map +1 -1
  512. package/cjs/mark/group.js +1 -1
  513. package/cjs/mark/group.js.map +1 -1
  514. package/cjs/mark/interface/common.js.map +1 -1
  515. package/cjs/mark/interface/index.js.map +1 -1
  516. package/cjs/mark/interface/type.js.map +1 -1
  517. package/cjs/mark/line.js +1 -1
  518. package/cjs/mark/line.js.map +1 -1
  519. package/cjs/mark/linkPath.js +1 -2
  520. package/cjs/mark/linkPath.js.map +1 -1
  521. package/cjs/mark/mark-set/index.js.map +1 -1
  522. package/cjs/mark/path.js +1 -1
  523. package/cjs/mark/path.js.map +1 -1
  524. package/cjs/mark/polygon.js +1 -1
  525. package/cjs/mark/polygon.js.map +1 -1
  526. package/cjs/mark/progress-arc.js +1 -1
  527. package/cjs/mark/progress-arc.js.map +1 -1
  528. package/cjs/mark/rect.js +1 -1
  529. package/cjs/mark/rect.js.map +1 -1
  530. package/cjs/mark/rule.js +1 -1
  531. package/cjs/mark/rule.js.map +1 -1
  532. package/cjs/mark/symbol.js +1 -1
  533. package/cjs/mark/symbol.js.map +1 -1
  534. package/cjs/mark/text.js +1 -1
  535. package/cjs/mark/text.js.map +1 -1
  536. package/cjs/mark/utils/common.js.map +1 -1
  537. package/cjs/mark/utils/index.js.map +1 -1
  538. package/cjs/model/base-model.d.ts +1 -1
  539. package/cjs/model/base-model.js +1 -1
  540. package/cjs/model/base-model.js.map +1 -1
  541. package/cjs/model/interface.d.ts +1 -0
  542. package/cjs/model/interface.js +1 -1
  543. package/cjs/model/interface.js.map +1 -1
  544. package/cjs/model/layout-item.js +1 -1
  545. package/cjs/model/layout-item.js.map +1 -1
  546. package/cjs/model/model-state-manager.js +2 -1
  547. package/cjs/model/model-state-manager.js.map +1 -1
  548. package/cjs/model/tooltip-helper.js +1 -1
  549. package/cjs/model/tooltip-helper.js.map +1 -1
  550. package/cjs/plugin/chart/interface.js.map +1 -1
  551. package/cjs/plugin/components/axis-label-overlap-plugin.js.map +1 -1
  552. package/cjs/plugin/components/basic-plugin.js.map +1 -1
  553. package/cjs/plugin/components/index.js.map +1 -1
  554. package/cjs/plugin/components/interface.js.map +1 -1
  555. package/cjs/plugin/components/plugin-service.js.map +1 -1
  556. package/cjs/plugin/interface.js +1 -1
  557. package/cjs/plugin/interface.js.map +1 -1
  558. package/cjs/plugin/series/interface.js.map +1 -1
  559. package/cjs/region/interface.js +1 -1
  560. package/cjs/region/interface.js.map +1 -1
  561. package/cjs/region/region.js +1 -1
  562. package/cjs/region/region.js.map +1 -1
  563. package/cjs/scale/global-scale.js +1 -1
  564. package/cjs/scale/global-scale.js.map +1 -1
  565. package/cjs/scale/interface.js +1 -1
  566. package/cjs/scale/interface.js.map +1 -1
  567. package/cjs/series/area/animation.js.map +1 -1
  568. package/cjs/series/area/area.js +3 -1
  569. package/cjs/series/area/area.js.map +1 -1
  570. package/cjs/series/area/interface.js.map +1 -1
  571. package/cjs/series/bar/animation.js.map +1 -1
  572. package/cjs/series/bar/bar.js +6 -5
  573. package/cjs/series/bar/bar.js.map +1 -1
  574. package/cjs/series/bar/interface.d.ts +3 -0
  575. package/cjs/series/bar/interface.js.map +1 -1
  576. package/cjs/series/base/base-series.d.ts +2 -2
  577. package/cjs/series/base/base-series.js +7 -9
  578. package/cjs/series/base/base-series.js.map +1 -1
  579. package/cjs/series/base/group.js.map +1 -1
  580. package/cjs/series/base/series-data.js.map +1 -1
  581. package/cjs/series/base/tooltip-helper.js.map +1 -1
  582. package/cjs/series/box-plot/boxPlot.d.ts +1 -1
  583. package/cjs/series/box-plot/boxPlot.js +9 -10
  584. package/cjs/series/box-plot/boxPlot.js.map +1 -1
  585. package/cjs/series/box-plot/interface.js.map +1 -1
  586. package/cjs/series/box-plot/tooltip-helper.js.map +1 -1
  587. package/cjs/series/cartesian/cartesian.d.ts +11 -0
  588. package/cjs/series/cartesian/cartesian.js +37 -2
  589. package/cjs/series/cartesian/cartesian.js.map +1 -1
  590. package/cjs/series/cartesian/interface.d.ts +1 -2
  591. package/cjs/series/cartesian/interface.js.map +1 -1
  592. package/cjs/series/circle-packing/animation.js.map +1 -1
  593. package/cjs/series/circle-packing/circle-packing.js +2 -2
  594. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  595. package/cjs/series/circle-packing/interface.js.map +1 -1
  596. package/cjs/series/circle-packing/tooltip-helper.js.map +1 -1
  597. package/cjs/series/dot/config.js.map +1 -1
  598. package/cjs/series/dot/dot.js +6 -8
  599. package/cjs/series/dot/dot.js.map +1 -1
  600. package/cjs/series/dot/interface.d.ts +0 -1
  601. package/cjs/series/dot/interface.js.map +1 -1
  602. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  603. package/cjs/series/funnel/funnel.d.ts +8 -0
  604. package/cjs/series/funnel/funnel.js +11 -2
  605. package/cjs/series/funnel/funnel.js.map +1 -1
  606. package/cjs/series/funnel/interface.js.map +1 -1
  607. package/cjs/series/funnel/tooltip-helper.js.map +1 -1
  608. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  609. package/cjs/series/gauge/gauge.js.map +1 -1
  610. package/cjs/series/gauge/index.js.map +1 -1
  611. package/cjs/series/gauge/interface.js.map +1 -1
  612. package/cjs/series/geo/geo.d.ts +1 -0
  613. package/cjs/series/geo/geo.js +3 -0
  614. package/cjs/series/geo/geo.js.map +1 -1
  615. package/cjs/series/geo/interface.js.map +1 -1
  616. package/cjs/series/heatmap/animation.js.map +1 -1
  617. package/cjs/series/heatmap/heatmap.js +4 -3
  618. package/cjs/series/heatmap/heatmap.js.map +1 -1
  619. package/cjs/series/heatmap/interface.js.map +1 -1
  620. package/cjs/series/heatmap/tooltip-helper.js.map +1 -1
  621. package/cjs/series/interface/common.d.ts +1 -0
  622. package/cjs/series/interface/common.js.map +1 -1
  623. package/cjs/series/interface/index.js.map +1 -1
  624. package/cjs/series/interface/series.d.ts +7 -0
  625. package/cjs/series/interface/series.js.map +1 -1
  626. package/cjs/series/interface/theme.js.map +1 -1
  627. package/cjs/series/interface/tooltip-helper.js.map +1 -1
  628. package/cjs/series/interface/type.js.map +1 -1
  629. package/cjs/series/line/animation.js.map +1 -1
  630. package/cjs/series/line/interface.js.map +1 -1
  631. package/cjs/series/line/line.js.map +1 -1
  632. package/cjs/series/link/interface.d.ts +2 -2
  633. package/cjs/series/link/interface.js.map +1 -1
  634. package/cjs/series/link/link.js +3 -3
  635. package/cjs/series/link/link.js.map +1 -1
  636. package/cjs/series/link/tooltip-helper.js.map +1 -1
  637. package/cjs/series/map/geo-source.d.ts +1 -0
  638. package/cjs/series/map/geo-source.js +7 -3
  639. package/cjs/series/map/geo-source.js.map +1 -1
  640. package/cjs/series/map/interface.js.map +1 -1
  641. package/cjs/series/map/map.js +1 -0
  642. package/cjs/series/map/map.js.map +1 -1
  643. package/cjs/series/map/tooltip-helper.js.map +1 -1
  644. package/cjs/series/mixin/line-mixin.d.ts +0 -1
  645. package/cjs/series/mixin/line-mixin.js +11 -8
  646. package/cjs/series/mixin/line-mixin.js.map +1 -1
  647. package/cjs/series/pie/animation/animation.js.map +1 -1
  648. package/cjs/series/pie/animation/centerOffset.js.map +1 -1
  649. package/cjs/series/pie/interface.d.ts +1 -0
  650. package/cjs/series/pie/interface.js.map +1 -1
  651. package/cjs/series/pie/pie.d.ts +13 -5
  652. package/cjs/series/pie/pie.js +34 -25
  653. package/cjs/series/pie/pie.js.map +1 -1
  654. package/cjs/series/polar/animation.js.map +1 -1
  655. package/cjs/series/polar/interface.d.ts +0 -1
  656. package/cjs/series/polar/interface.js.map +1 -1
  657. package/cjs/series/polar/polar.d.ts +1 -0
  658. package/cjs/series/polar/polar.js +3 -0
  659. package/cjs/series/polar/polar.js.map +1 -1
  660. package/cjs/series/polar/progress-like/animation.js.map +1 -1
  661. package/cjs/series/polar/progress-like/index.js.map +1 -1
  662. package/cjs/series/polar/progress-like/interface.js.map +1 -1
  663. package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
  664. package/cjs/series/polar/rose-like/index.js.map +1 -1
  665. package/cjs/series/polar/rose-like/interface.js.map +1 -1
  666. package/cjs/series/polar/rose-like/rose-like.js.map +1 -1
  667. package/cjs/series/progress/circular/circular.js.map +1 -1
  668. package/cjs/series/progress/circular/index.js.map +1 -1
  669. package/cjs/series/progress/circular/interface.js.map +1 -1
  670. package/cjs/series/progress/interface.js.map +1 -1
  671. package/cjs/series/progress/linear/animation.js.map +1 -1
  672. package/cjs/series/progress/linear/index.js.map +1 -1
  673. package/cjs/series/progress/linear/interface.js.map +1 -1
  674. package/cjs/series/progress/linear/linear.js.map +1 -1
  675. package/cjs/series/progress/linear/tooltip-helper.js.map +1 -1
  676. package/cjs/series/radar/animation.js.map +1 -1
  677. package/cjs/series/radar/interface.d.ts +0 -1
  678. package/cjs/series/radar/interface.js.map +1 -1
  679. package/cjs/series/radar/radar.js.map +1 -1
  680. package/cjs/series/range-area/interface.js.map +1 -1
  681. package/cjs/series/range-area/range-area.js.map +1 -1
  682. package/cjs/series/range-area/tooltip-helper.js.map +1 -1
  683. package/cjs/series/range-column/animation.js.map +1 -1
  684. package/cjs/series/range-column/interface.d.ts +3 -3
  685. package/cjs/series/range-column/interface.js.map +1 -1
  686. package/cjs/series/range-column/rangeColumn.js +14 -12
  687. package/cjs/series/range-column/rangeColumn.js.map +1 -1
  688. package/cjs/series/range-column/tooltip-helper.js.map +1 -1
  689. package/cjs/series/rose/animation.js.map +1 -1
  690. package/cjs/series/rose/interface.js.map +1 -1
  691. package/cjs/series/rose/rose.js +1 -0
  692. package/cjs/series/rose/rose.js.map +1 -1
  693. package/cjs/series/sankey/animation.js.map +1 -1
  694. package/cjs/series/sankey/interface.js.map +1 -1
  695. package/cjs/series/sankey/sankey.js +4 -4
  696. package/cjs/series/sankey/sankey.js.map +1 -1
  697. package/cjs/series/sankey/tooltip-helper.js.map +1 -1
  698. package/cjs/series/scatter/animation.js.map +1 -1
  699. package/cjs/series/scatter/interface.js.map +1 -1
  700. package/cjs/series/scatter/scatter.js +7 -4
  701. package/cjs/series/scatter/scatter.js.map +1 -1
  702. package/cjs/series/sunburst/animation/enter.js.map +1 -1
  703. package/cjs/series/sunburst/animation/exit.js.map +1 -1
  704. package/cjs/series/sunburst/animation/index.js.map +1 -1
  705. package/cjs/series/sunburst/animation/interface.js.map +1 -1
  706. package/cjs/series/sunburst/animation/preset.js.map +1 -1
  707. package/cjs/series/sunburst/animation/utils.js.map +1 -1
  708. package/cjs/series/sunburst/interface.js.map +1 -1
  709. package/cjs/series/sunburst/sunburst.js +2 -2
  710. package/cjs/series/sunburst/sunburst.js.map +1 -1
  711. package/cjs/series/sunburst/tooltip-helper.js.map +1 -1
  712. package/cjs/series/treemap/animation.js.map +1 -1
  713. package/cjs/series/treemap/config.js.map +1 -1
  714. package/cjs/series/treemap/interface.js.map +1 -1
  715. package/cjs/series/treemap/tooltip-helper.js.map +1 -1
  716. package/cjs/series/treemap/treemap.js +2 -2
  717. package/cjs/series/treemap/treemap.js.map +1 -1
  718. package/cjs/series/util/label-mark.js.map +1 -1
  719. package/cjs/series/util/utils.js.map +1 -1
  720. package/cjs/series/waterfall/animation.js.map +1 -1
  721. package/cjs/series/waterfall/interface.js.map +1 -1
  722. package/cjs/series/waterfall/waterfall.js.map +1 -1
  723. package/cjs/series/word-cloud/animation.js.map +1 -1
  724. package/cjs/series/word-cloud/config.js.map +1 -1
  725. package/cjs/series/word-cloud/interface.js.map +1 -1
  726. package/cjs/series/word-cloud/word-cloud.d.ts +10 -3
  727. package/cjs/series/word-cloud/word-cloud.js +109 -26
  728. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  729. package/cjs/theme/buildin-theme/config.js +2 -0
  730. package/cjs/theme/buildin-theme/config.js.map +1 -1
  731. package/cjs/theme/buildin-theme/dark.js +4 -462
  732. package/cjs/theme/buildin-theme/dark.js.map +1 -1
  733. package/cjs/theme/buildin-theme/index.js.map +1 -1
  734. package/cjs/theme/buildin-theme/light/color-scheme.js.map +1 -1
  735. package/cjs/theme/buildin-theme/light/component/brush.js +12 -8
  736. package/cjs/theme/buildin-theme/light/component/brush.js.map +1 -1
  737. package/cjs/theme/buildin-theme/light/component/cartesian-axis.d.ts +3 -2
  738. package/cjs/theme/buildin-theme/light/component/cartesian-axis.js +14 -84
  739. package/cjs/theme/buildin-theme/light/component/cartesian-axis.js.map +1 -1
  740. package/cjs/theme/buildin-theme/light/component/color-legend.d.ts +2 -36
  741. package/cjs/theme/buildin-theme/light/component/color-legend.js.map +1 -1
  742. package/cjs/theme/buildin-theme/light/component/common-axis.d.ts +2 -0
  743. package/cjs/theme/buildin-theme/light/component/common-axis.js +74 -0
  744. package/cjs/theme/buildin-theme/light/component/common-axis.js.map +1 -0
  745. package/cjs/theme/buildin-theme/light/component/crosshair.js +2 -9
  746. package/cjs/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  747. package/cjs/theme/buildin-theme/light/component/data-zoom.js +10 -10
  748. package/cjs/theme/buildin-theme/light/component/data-zoom.js.map +1 -1
  749. package/cjs/theme/buildin-theme/light/component/discrete-legend.js +3 -6
  750. package/cjs/theme/buildin-theme/light/component/discrete-legend.js.map +1 -1
  751. package/cjs/theme/buildin-theme/light/component/indicator.d.ts +2 -0
  752. package/cjs/{component/indicator/config.js → theme/buildin-theme/light/component/indicator.js} +2 -2
  753. package/cjs/theme/buildin-theme/light/component/indicator.js.map +1 -0
  754. package/cjs/theme/buildin-theme/light/component/mark-area.js.map +1 -1
  755. package/cjs/theme/buildin-theme/light/component/mark-line.js.map +1 -1
  756. package/cjs/theme/buildin-theme/light/component/mark-point.js +1 -3
  757. package/cjs/theme/buildin-theme/light/component/mark-point.js.map +1 -1
  758. package/cjs/theme/buildin-theme/light/component/player.js.map +1 -1
  759. package/cjs/theme/buildin-theme/light/component/polar-axis.d.ts +3 -2
  760. package/cjs/theme/buildin-theme/light/component/polar-axis.js +11 -70
  761. package/cjs/theme/buildin-theme/light/component/polar-axis.js.map +1 -1
  762. package/cjs/theme/buildin-theme/light/component/size-legend.js.map +1 -1
  763. package/cjs/theme/buildin-theme/light/component/title.d.ts +2 -0
  764. package/cjs/theme/buildin-theme/light/component/title.js +13 -0
  765. package/cjs/theme/buildin-theme/light/component/title.js.map +1 -0
  766. package/cjs/theme/buildin-theme/light/component/tooltip.js +6 -8
  767. package/cjs/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  768. package/cjs/theme/buildin-theme/light/index.js +10 -4
  769. package/cjs/theme/buildin-theme/light/index.js.map +1 -1
  770. package/cjs/theme/buildin-theme/light/series/area.js +5 -4
  771. package/cjs/theme/buildin-theme/light/series/area.js.map +1 -1
  772. package/cjs/theme/buildin-theme/light/series/bar.js +0 -3
  773. package/cjs/theme/buildin-theme/light/series/bar.js.map +1 -1
  774. package/cjs/theme/buildin-theme/light/series/bar3d.js +0 -3
  775. package/cjs/theme/buildin-theme/light/series/bar3d.js.map +1 -1
  776. package/cjs/theme/buildin-theme/light/series/circle-packing.js.map +1 -1
  777. package/cjs/theme/buildin-theme/light/series/circular-progress.js.map +1 -1
  778. package/cjs/theme/buildin-theme/light/series/dot.js +11 -3
  779. package/cjs/theme/buildin-theme/light/series/dot.js.map +1 -1
  780. package/cjs/theme/buildin-theme/light/series/funnel.js +0 -3
  781. package/cjs/theme/buildin-theme/light/series/funnel.js.map +1 -1
  782. package/cjs/theme/buildin-theme/light/series/funnel3d.js +0 -3
  783. package/cjs/theme/buildin-theme/light/series/funnel3d.js.map +1 -1
  784. package/cjs/theme/buildin-theme/light/series/gauge-pointer.js.map +1 -1
  785. package/cjs/theme/buildin-theme/light/series/gauge.js.map +1 -1
  786. package/cjs/theme/buildin-theme/light/series/heatmap.js +2 -3
  787. package/cjs/theme/buildin-theme/light/series/heatmap.js.map +1 -1
  788. package/cjs/theme/buildin-theme/light/series/index.js.map +1 -1
  789. package/cjs/theme/buildin-theme/light/series/line.js +5 -4
  790. package/cjs/theme/buildin-theme/light/series/line.js.map +1 -1
  791. package/cjs/theme/buildin-theme/light/series/linear-progress.js.map +1 -1
  792. package/cjs/theme/buildin-theme/light/series/link.js +5 -3
  793. package/cjs/theme/buildin-theme/light/series/link.js.map +1 -1
  794. package/cjs/theme/buildin-theme/light/series/map.js +0 -1
  795. package/cjs/theme/buildin-theme/light/series/map.js.map +1 -1
  796. package/cjs/theme/buildin-theme/light/series/pie.js +0 -2
  797. package/cjs/theme/buildin-theme/light/series/pie.js.map +1 -1
  798. package/cjs/theme/buildin-theme/light/series/pie3d.js +0 -2
  799. package/cjs/theme/buildin-theme/light/series/pie3d.js.map +1 -1
  800. package/cjs/theme/buildin-theme/light/series/radar.js +5 -4
  801. package/cjs/theme/buildin-theme/light/series/radar.js.map +1 -1
  802. package/cjs/theme/buildin-theme/light/series/rangeColumn.js +0 -3
  803. package/cjs/theme/buildin-theme/light/series/rangeColumn.js.map +1 -1
  804. package/cjs/theme/buildin-theme/light/series/scatter.js +0 -3
  805. package/cjs/theme/buildin-theme/light/series/scatter.js.map +1 -1
  806. package/cjs/theme/buildin-theme/light/series/sunburst.js.map +1 -1
  807. package/cjs/theme/buildin-theme/light/series/treemap.js +0 -4
  808. package/cjs/theme/buildin-theme/light/series/treemap.js.map +1 -1
  809. package/cjs/theme/buildin-theme/light/series/waterfall.js +0 -4
  810. package/cjs/theme/buildin-theme/light/series/waterfall.js.map +1 -1
  811. package/cjs/theme/buildin-theme/light/series/word-cloud.js.map +1 -1
  812. package/cjs/theme/buildin-theme/light/series/word-cloud3d.js.map +1 -1
  813. package/cjs/theme/color-scheme/interface.d.ts +1 -1
  814. package/cjs/theme/color-scheme/interface.js.map +1 -1
  815. package/cjs/theme/color-scheme/util.js.map +1 -1
  816. package/cjs/theme/index.js.map +1 -1
  817. package/cjs/theme/interface.d.ts +13 -5
  818. package/cjs/theme/interface.js.map +1 -1
  819. package/cjs/theme/theme-manager.js.map +1 -1
  820. package/cjs/typings/common.js.map +1 -1
  821. package/cjs/typings/coordinate.js.map +1 -1
  822. package/cjs/typings/cursor.js.map +1 -1
  823. package/cjs/typings/data.js.map +1 -1
  824. package/cjs/typings/geo.js.map +1 -1
  825. package/cjs/typings/index.js.map +1 -1
  826. package/cjs/typings/interpolate.js.map +1 -1
  827. package/cjs/typings/line-stroke.js.map +1 -1
  828. package/cjs/typings/params.js.map +1 -1
  829. package/cjs/typings/scale.js.map +1 -1
  830. package/cjs/typings/shape.js.map +1 -1
  831. package/cjs/typings/space.d.ts +1 -1
  832. package/cjs/typings/space.js.map +1 -1
  833. package/cjs/typings/spec/chart.js.map +1 -1
  834. package/cjs/typings/spec/common.d.ts +5 -5
  835. package/cjs/typings/spec/common.js.map +1 -1
  836. package/cjs/typings/spec/index.js.map +1 -1
  837. package/cjs/typings/tooltip/common.js.map +1 -1
  838. package/cjs/typings/tooltip/handler.js.map +1 -1
  839. package/cjs/typings/tooltip/index.js.map +1 -1
  840. package/cjs/typings/tooltip/line.js.map +1 -1
  841. package/cjs/typings/tooltip/position.js.map +1 -1
  842. package/cjs/typings/tooltip/shape.js.map +1 -1
  843. package/cjs/typings/tooltip/tooltip.js.map +1 -1
  844. package/cjs/typings/visual.d.ts +21 -3
  845. package/cjs/typings/visual.js.map +1 -1
  846. package/cjs/util/array.js.map +1 -1
  847. package/cjs/util/color.js.map +1 -1
  848. package/cjs/util/data.js +3 -2
  849. package/cjs/util/data.js.map +1 -1
  850. package/cjs/util/debug.js.map +1 -1
  851. package/cjs/util/env.js.map +1 -1
  852. package/cjs/util/hierarchy.js.map +1 -1
  853. package/cjs/util/id.js +4 -4
  854. package/cjs/util/id.js.map +1 -1
  855. package/cjs/util/image.js.map +1 -1
  856. package/cjs/util/index.js.map +1 -1
  857. package/cjs/util/math.js.map +1 -1
  858. package/cjs/util/model.js.map +1 -1
  859. package/cjs/util/object.js.map +1 -1
  860. package/cjs/util/scale.js.map +1 -1
  861. package/cjs/util/space.js.map +1 -1
  862. package/cjs/util/spec.js.map +1 -1
  863. package/cjs/util/style.js +1 -3
  864. package/cjs/util/style.js.map +1 -1
  865. package/cjs/util/text.js.map +1 -1
  866. package/cjs/util/type.js.map +1 -1
  867. package/cjs/vchart-all.js +2 -2
  868. package/cjs/vchart-all.js.map +1 -1
  869. package/esm/animation/animate-manager.js.map +1 -1
  870. package/esm/animation/config.js.map +1 -1
  871. package/esm/animation/interface.js +2 -1
  872. package/esm/animation/interface.js.map +1 -1
  873. package/esm/animation/spec.d.ts +2 -2
  874. package/esm/animation/spec.js.map +1 -1
  875. package/esm/animation/utils.d.ts +4 -3
  876. package/esm/animation/utils.js +4 -0
  877. package/esm/animation/utils.js.map +1 -1
  878. package/esm/chart/area/area.js.map +1 -1
  879. package/esm/chart/area/index.js.map +1 -1
  880. package/esm/chart/area/interface.js.map +1 -1
  881. package/esm/chart/bar/bar.js.map +1 -1
  882. package/esm/chart/bar/index.js.map +1 -1
  883. package/esm/chart/bar/interface.js.map +1 -1
  884. package/esm/chart/base-chart.js +3 -1
  885. package/esm/chart/base-chart.js.map +1 -1
  886. package/esm/chart/boxplot/boxPlot.js.map +1 -1
  887. package/esm/chart/boxplot/index.js.map +1 -1
  888. package/esm/chart/boxplot/interface.js.map +1 -1
  889. package/esm/chart/cartesian/cartesian.js +7 -2
  890. package/esm/chart/cartesian/cartesian.js.map +1 -1
  891. package/esm/chart/cartesian/interface.js.map +1 -1
  892. package/esm/chart/circle-packing/circle-packing.js.map +1 -1
  893. package/esm/chart/circle-packing/index.js.map +1 -1
  894. package/esm/chart/circle-packing/interface.js.map +1 -1
  895. package/esm/chart/common/common.js.map +1 -1
  896. package/esm/chart/common/index.js.map +1 -1
  897. package/esm/chart/common/interface.js.map +1 -1
  898. package/esm/chart/funnel/funnel.js.map +1 -1
  899. package/esm/chart/funnel/index.js.map +1 -1
  900. package/esm/chart/funnel/interface.js.map +1 -1
  901. package/esm/chart/gauge/gauge.js.map +1 -1
  902. package/esm/chart/gauge/index.js.map +1 -1
  903. package/esm/chart/gauge/interface.js.map +1 -1
  904. package/esm/chart/heatmap/heatmap.js +4 -3
  905. package/esm/chart/heatmap/heatmap.js.map +1 -1
  906. package/esm/chart/heatmap/index.js.map +1 -1
  907. package/esm/chart/heatmap/interface.js.map +1 -1
  908. package/esm/chart/histogram/histogram.js.map +1 -1
  909. package/esm/chart/histogram/index.js.map +1 -1
  910. package/esm/chart/histogram/interface.js.map +1 -1
  911. package/esm/chart/index.js.map +1 -1
  912. package/esm/chart/interface/chart.js.map +1 -1
  913. package/esm/chart/interface/common.js.map +1 -1
  914. package/esm/chart/interface/index.js.map +1 -1
  915. package/esm/chart/interface/type.js.map +1 -1
  916. package/esm/chart/line/index.js.map +1 -1
  917. package/esm/chart/line/interface.js.map +1 -1
  918. package/esm/chart/line/line.js.map +1 -1
  919. package/esm/chart/map/index.js.map +1 -1
  920. package/esm/chart/map/interface.js.map +1 -1
  921. package/esm/chart/map/map.js.map +1 -1
  922. package/esm/chart/pie/index.js.map +1 -1
  923. package/esm/chart/pie/interface.js.map +1 -1
  924. package/esm/chart/pie/pie.d.ts +1 -0
  925. package/esm/chart/pie/pie.js +5 -0
  926. package/esm/chart/pie/pie.js.map +1 -1
  927. package/esm/chart/polar/interface.js.map +1 -1
  928. package/esm/chart/polar/polar.js.map +1 -1
  929. package/esm/chart/polar/progress-like.js.map +1 -1
  930. package/esm/chart/polar/rose-like.js.map +1 -1
  931. package/esm/chart/progress/circular/circular.js.map +1 -1
  932. package/esm/chart/progress/circular/index.js.map +1 -1
  933. package/esm/chart/progress/circular/interface.js.map +1 -1
  934. package/esm/chart/progress/interface.js.map +1 -1
  935. package/esm/chart/progress/linear/index.js.map +1 -1
  936. package/esm/chart/progress/linear/interface.js.map +1 -1
  937. package/esm/chart/progress/linear/linear.js.map +1 -1
  938. package/esm/chart/radar/index.js.map +1 -1
  939. package/esm/chart/radar/interface.js.map +1 -1
  940. package/esm/chart/radar/radar.js.map +1 -1
  941. package/esm/chart/range-area/index.js.map +1 -1
  942. package/esm/chart/range-area/interface.js.map +1 -1
  943. package/esm/chart/range-area/range-area.js.map +1 -1
  944. package/esm/chart/range-column/index.js.map +1 -1
  945. package/esm/chart/range-column/interface.js.map +1 -1
  946. package/esm/chart/range-column/rangeColumn.js.map +1 -1
  947. package/esm/chart/rose/index.js.map +1 -1
  948. package/esm/chart/rose/interface.js.map +1 -1
  949. package/esm/chart/rose/rose.js.map +1 -1
  950. package/esm/chart/sankey/index.js.map +1 -1
  951. package/esm/chart/sankey/interface.js.map +1 -1
  952. package/esm/chart/sankey/sankey.js.map +1 -1
  953. package/esm/chart/scatter/index.js.map +1 -1
  954. package/esm/chart/scatter/interface.js.map +1 -1
  955. package/esm/chart/scatter/scatter.js.map +1 -1
  956. package/esm/chart/sequence/index.js.map +1 -1
  957. package/esm/chart/sequence/interface.js.map +1 -1
  958. package/esm/chart/sequence/sequence.js.map +1 -1
  959. package/esm/chart/stack.js.map +1 -1
  960. package/esm/chart/sunburst/index.js.map +1 -1
  961. package/esm/chart/sunburst/interface.js.map +1 -1
  962. package/esm/chart/sunburst/sunburst.js.map +1 -1
  963. package/esm/chart/treemap/index.js.map +1 -1
  964. package/esm/chart/treemap/interface.js.map +1 -1
  965. package/esm/chart/treemap/treemap.js.map +1 -1
  966. package/esm/chart/waterfall/index.js.map +1 -1
  967. package/esm/chart/waterfall/interface.js.map +1 -1
  968. package/esm/chart/waterfall/waterfall.js.map +1 -1
  969. package/esm/chart/word-cloud/index.js.map +1 -1
  970. package/esm/chart/word-cloud/interface.d.ts +5 -1
  971. package/esm/chart/word-cloud/interface.js.map +1 -1
  972. package/esm/chart/word-cloud/word-cloud.d.ts +3 -2
  973. package/esm/chart/word-cloud/word-cloud.js +42 -15
  974. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  975. package/esm/compile/compilable-base.js +1 -1
  976. package/esm/compile/compilable-base.js.map +1 -1
  977. package/esm/compile/compiler.d.ts +3 -2
  978. package/esm/compile/compiler.js +8 -5
  979. package/esm/compile/compiler.js.map +1 -1
  980. package/esm/compile/data/compilable-data.d.ts +1 -1
  981. package/esm/compile/data/compilable-data.js.map +1 -1
  982. package/esm/compile/data/index.js.map +1 -1
  983. package/esm/compile/data/interface.js.map +1 -1
  984. package/esm/compile/grammar-item.js +1 -1
  985. package/esm/compile/grammar-item.js.map +1 -1
  986. package/esm/compile/interface/compilable-item.d.ts +1 -2
  987. package/esm/compile/interface/compilable-item.js.map +1 -1
  988. package/esm/compile/interface/compiler.d.ts +1 -5
  989. package/esm/compile/interface/compiler.js.map +1 -1
  990. package/esm/compile/interface/index.js.map +1 -1
  991. package/esm/compile/mark/compilable-mark.d.ts +1 -1
  992. package/esm/compile/mark/compilable-mark.js +1 -1
  993. package/esm/compile/mark/compilable-mark.js.map +1 -1
  994. package/esm/compile/mark/index.js.map +1 -1
  995. package/esm/compile/mark/interface.d.ts +1 -0
  996. package/esm/compile/mark/interface.js.map +1 -1
  997. package/esm/compile/mark/mark-data.js.map +1 -1
  998. package/esm/compile/mark/mark-state-manager.js.map +1 -1
  999. package/esm/compile/mark/util.js.map +1 -1
  1000. package/esm/compile/signal/compilable-signal.js.map +1 -1
  1001. package/esm/compile/signal/index.js.map +1 -1
  1002. package/esm/compile/signal/interface.js.map +1 -1
  1003. package/esm/compile/signal/signal-manager.js.map +1 -1
  1004. package/esm/compile/signal/state-manager.d.ts +1 -1
  1005. package/esm/compile/signal/state-manager.js.map +1 -1
  1006. package/esm/compile/util.js +1 -1
  1007. package/esm/compile/util.js.map +1 -1
  1008. package/esm/component/axis/base-axis.d.ts +0 -1
  1009. package/esm/component/axis/base-axis.js +3 -10
  1010. package/esm/component/axis/base-axis.js.map +1 -1
  1011. package/esm/component/axis/cartesian/axis.d.ts +11 -0
  1012. package/esm/component/axis/cartesian/axis.js +59 -15
  1013. package/esm/component/axis/cartesian/axis.js.map +1 -1
  1014. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  1015. package/esm/component/axis/cartesian/config.js.map +1 -1
  1016. package/esm/component/axis/cartesian/index.js.map +1 -1
  1017. package/esm/component/axis/cartesian/interface/common.d.ts +1 -5
  1018. package/esm/component/axis/cartesian/interface/common.js.map +1 -1
  1019. package/esm/component/axis/cartesian/interface/index.js.map +1 -1
  1020. package/esm/component/axis/cartesian/interface/spec.d.ts +5 -4
  1021. package/esm/component/axis/cartesian/interface/spec.js.map +1 -1
  1022. package/esm/component/axis/cartesian/interface/theme.d.ts +10 -13
  1023. package/esm/component/axis/cartesian/interface/theme.js.map +1 -1
  1024. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  1025. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  1026. package/esm/component/axis/cartesian/util/common.d.ts +4 -4
  1027. package/esm/component/axis/cartesian/util/common.js +10 -11
  1028. package/esm/component/axis/cartesian/util/common.js.map +1 -1
  1029. package/esm/component/axis/cartesian/util/index.js.map +1 -1
  1030. package/esm/component/axis/cartesian/util/time.js.map +1 -1
  1031. package/esm/component/axis/index.js.map +1 -1
  1032. package/esm/component/axis/interface.d.ts +10 -17
  1033. package/esm/component/axis/interface.js.map +1 -1
  1034. package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
  1035. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  1036. package/esm/component/axis/polar/axis.js.map +1 -1
  1037. package/esm/component/axis/polar/band-axis.js.map +1 -1
  1038. package/esm/component/axis/polar/config.js.map +1 -1
  1039. package/esm/component/axis/polar/index.js.map +1 -1
  1040. package/esm/component/axis/polar/interface/common.d.ts +1 -4
  1041. package/esm/component/axis/polar/interface/common.js.map +1 -1
  1042. package/esm/component/axis/polar/interface/index.js.map +1 -1
  1043. package/esm/component/axis/polar/interface/spec.js.map +1 -1
  1044. package/esm/component/axis/polar/interface/theme.d.ts +9 -12
  1045. package/esm/component/axis/polar/interface/theme.js.map +1 -1
  1046. package/esm/component/axis/polar/linear-axis.js.map +1 -1
  1047. package/esm/component/axis/utils.d.ts +5 -1
  1048. package/esm/component/axis/utils.js +17 -4
  1049. package/esm/component/axis/utils.js.map +1 -1
  1050. package/esm/component/base/base-component.js.map +1 -1
  1051. package/esm/component/base/index.js.map +1 -1
  1052. package/esm/component/base/util.js +5 -4
  1053. package/esm/component/base/util.js.map +1 -1
  1054. package/esm/component/brush/brush.d.ts +0 -1
  1055. package/esm/component/brush/brush.js +7 -12
  1056. package/esm/component/brush/brush.js.map +1 -1
  1057. package/esm/component/brush/index.js.map +1 -1
  1058. package/esm/component/brush/interface.d.ts +10 -8
  1059. package/esm/component/brush/interface.js.map +1 -1
  1060. package/esm/component/common/trigger/config.js.map +1 -1
  1061. package/esm/component/common/trigger/desktop.js.map +1 -1
  1062. package/esm/component/common/trigger/interface.js.map +1 -1
  1063. package/esm/component/common/trigger/mobile.js.map +1 -1
  1064. package/esm/component/crosshair/base.d.ts +0 -1
  1065. package/esm/component/crosshair/base.js +9 -17
  1066. package/esm/component/crosshair/base.js.map +1 -1
  1067. package/esm/component/crosshair/cartesian.js.map +1 -1
  1068. package/esm/component/crosshair/config.d.ts +0 -2
  1069. package/esm/component/crosshair/config.js +0 -4
  1070. package/esm/component/crosshair/config.js.map +1 -1
  1071. package/esm/component/crosshair/index.js.map +1 -1
  1072. package/esm/component/crosshair/interface/index.js.map +1 -1
  1073. package/esm/component/crosshair/interface/spec.d.ts +3 -3
  1074. package/esm/component/crosshair/interface/spec.js.map +1 -1
  1075. package/esm/component/crosshair/interface/theme.d.ts +2 -4
  1076. package/esm/component/crosshair/interface/theme.js.map +1 -1
  1077. package/esm/component/crosshair/polar.js.map +1 -1
  1078. package/esm/component/crosshair/util.d.ts +0 -4
  1079. package/esm/component/crosshair/util.js +0 -8
  1080. package/esm/component/crosshair/util.js.map +1 -1
  1081. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  1082. package/esm/component/custom-mark/index.js.map +1 -1
  1083. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  1084. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  1085. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  1086. package/esm/component/data-zoom/data-zoom/data-zoom.js +3 -4
  1087. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  1088. package/esm/component/data-zoom/data-zoom/index.js.map +1 -1
  1089. package/esm/component/data-zoom/data-zoom/interface.d.ts +5 -1
  1090. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  1091. package/esm/component/data-zoom/index.js.map +1 -1
  1092. package/esm/component/data-zoom/interface.js.map +1 -1
  1093. package/esm/component/data-zoom/scroll-bar/index.js.map +1 -1
  1094. package/esm/component/data-zoom/scroll-bar/interface.d.ts +7 -1
  1095. package/esm/component/data-zoom/scroll-bar/interface.js.map +1 -1
  1096. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  1097. package/esm/component/data-zoom/scroll-bar/scroll-bar.js +2 -2
  1098. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  1099. package/esm/component/data-zoom/util.js.map +1 -1
  1100. package/esm/component/geo/geo-coordinate.js.map +1 -1
  1101. package/esm/component/geo/interface.js.map +1 -1
  1102. package/esm/component/geo/projection.js.map +1 -1
  1103. package/esm/component/index.js +1 -1
  1104. package/esm/component/index.js.map +1 -1
  1105. package/esm/component/indicator/indicator.d.ts +0 -1
  1106. package/esm/component/indicator/indicator.js +2 -13
  1107. package/esm/component/indicator/indicator.js.map +1 -1
  1108. package/esm/component/indicator/interface.d.ts +1 -5
  1109. package/esm/component/indicator/interface.js.map +1 -1
  1110. package/esm/component/indicator/util.js +3 -1
  1111. package/esm/component/indicator/util.js.map +1 -1
  1112. package/esm/component/interface/common.js.map +1 -1
  1113. package/esm/component/interface/index.js.map +1 -1
  1114. package/esm/component/interface/tooltip-helper.js.map +1 -1
  1115. package/esm/component/interface/type.js.map +1 -1
  1116. package/esm/component/label/bar.d.ts +1 -3
  1117. package/esm/component/label/bar.js +2 -4
  1118. package/esm/component/label/bar.js.map +1 -1
  1119. package/esm/component/label/index.js.map +1 -1
  1120. package/esm/component/label/interface.d.ts +2 -2
  1121. package/esm/component/label/interface.js.map +1 -1
  1122. package/esm/component/label/label.d.ts +56 -0
  1123. package/esm/component/label/label.js +4 -2
  1124. package/esm/component/label/label.js.map +1 -1
  1125. package/esm/component/label/symbol.js.map +1 -1
  1126. package/esm/component/label/util.js +1 -7
  1127. package/esm/component/label/util.js.map +1 -1
  1128. package/esm/component/legend/base-legend.d.ts +0 -1
  1129. package/esm/component/legend/base-legend.js +2 -4
  1130. package/esm/component/legend/base-legend.js.map +1 -1
  1131. package/esm/component/legend/continuous/index.js.map +1 -1
  1132. package/esm/component/legend/continuous/interface.d.ts +1 -6
  1133. package/esm/component/legend/continuous/interface.js.map +1 -1
  1134. package/esm/component/legend/continuous/legend.js +1 -1
  1135. package/esm/component/legend/continuous/legend.js.map +1 -1
  1136. package/esm/component/legend/continuous/util.js.map +1 -1
  1137. package/esm/component/legend/discrete/index.js.map +1 -1
  1138. package/esm/component/legend/discrete/interface.d.ts +1 -5
  1139. package/esm/component/legend/discrete/interface.js.map +1 -1
  1140. package/esm/component/legend/discrete/legend.js +17 -16
  1141. package/esm/component/legend/discrete/legend.js.map +1 -1
  1142. package/esm/component/legend/discrete/util.js.map +1 -1
  1143. package/esm/component/legend/index.js.map +1 -1
  1144. package/esm/component/legend/interface.d.ts +1 -1
  1145. package/esm/component/legend/interface.js.map +1 -1
  1146. package/esm/component/legend/util.js.map +1 -1
  1147. package/esm/component/map-label/component.js.map +1 -1
  1148. package/esm/component/map-label/config.js.map +1 -1
  1149. package/esm/component/map-label/index.js.map +1 -1
  1150. package/esm/component/map-label/interface.d.ts +2 -2
  1151. package/esm/component/map-label/interface.js.map +1 -1
  1152. package/esm/component/map-label/layout.js.map +1 -1
  1153. package/esm/component/marker/base-marker.d.ts +0 -1
  1154. package/esm/component/marker/base-marker.js +1 -4
  1155. package/esm/component/marker/base-marker.js.map +1 -1
  1156. package/esm/component/marker/interface.js.map +1 -1
  1157. package/esm/component/marker/mark-area/interface/index.js.map +1 -1
  1158. package/esm/component/marker/mark-area/interface/spec.d.ts +2 -1
  1159. package/esm/component/marker/mark-area/interface/spec.js.map +1 -1
  1160. package/esm/component/marker/mark-area/interface/theme.d.ts +2 -2
  1161. package/esm/component/marker/mark-area/interface/theme.js.map +1 -1
  1162. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  1163. package/esm/component/marker/mark-line/interface/index.js.map +1 -1
  1164. package/esm/component/marker/mark-line/interface/spec.d.ts +2 -1
  1165. package/esm/component/marker/mark-line/interface/spec.js.map +1 -1
  1166. package/esm/component/marker/mark-line/interface/theme.js.map +1 -1
  1167. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  1168. package/esm/component/marker/mark-point/interface/index.js.map +1 -1
  1169. package/esm/component/marker/mark-point/interface/spec.d.ts +2 -1
  1170. package/esm/component/marker/mark-point/interface/spec.js.map +1 -1
  1171. package/esm/component/marker/mark-point/interface/theme.js.map +1 -1
  1172. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  1173. package/esm/component/marker/utils.js.map +1 -1
  1174. package/esm/component/player/index.js.map +1 -1
  1175. package/esm/component/player/interface/index.js.map +1 -1
  1176. package/esm/component/player/interface/spec.js.map +1 -1
  1177. package/esm/component/player/interface/theme.js.map +1 -1
  1178. package/esm/component/player/player.d.ts +0 -1
  1179. package/esm/component/player/player.js +2 -5
  1180. package/esm/component/player/player.js.map +1 -1
  1181. package/esm/component/player/utils/index.js.map +1 -1
  1182. package/esm/component/player/utils/orient.js.map +1 -1
  1183. package/esm/component/player/utils/transform.js.map +1 -1
  1184. package/esm/component/title/index.js.map +1 -1
  1185. package/esm/component/title/interface/index.js.map +1 -1
  1186. package/esm/component/title/interface/spec.d.ts +0 -4
  1187. package/esm/component/title/interface/spec.js.map +1 -1
  1188. package/esm/component/title/interface/theme.d.ts +2 -2
  1189. package/esm/component/title/interface/theme.js.map +1 -1
  1190. package/esm/component/title/title.d.ts +0 -1
  1191. package/esm/component/title/title.js +3 -12
  1192. package/esm/component/title/title.js.map +1 -1
  1193. package/esm/component/title/utils.d.ts +0 -1
  1194. package/esm/component/title/utils.js +1 -8
  1195. package/esm/component/title/utils.js.map +1 -1
  1196. package/esm/component/tooltip/handler/base.d.ts +5 -3
  1197. package/esm/component/tooltip/handler/base.js +11 -12
  1198. package/esm/component/tooltip/handler/base.js.map +1 -1
  1199. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +1 -0
  1200. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js +5 -2
  1201. package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
  1202. package/esm/component/tooltip/handler/canvas/index.js.map +1 -1
  1203. package/esm/component/tooltip/handler/constants.d.ts +4 -0
  1204. package/esm/component/tooltip/handler/constants.js +6 -0
  1205. package/esm/component/tooltip/handler/constants.js.map +1 -1
  1206. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +2 -1
  1207. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +4 -3
  1208. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  1209. package/esm/component/tooltip/handler/dom/index.js.map +1 -1
  1210. package/esm/component/tooltip/handler/dom/interface.js.map +1 -1
  1211. package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
  1212. package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  1213. package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  1214. package/esm/component/tooltip/handler/dom/model/interface.js.map +1 -1
  1215. package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  1216. package/esm/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
  1217. package/esm/component/tooltip/handler/dom/model/text-model.js.map +1 -1
  1218. package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  1219. package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  1220. package/esm/component/tooltip/handler/dom/utils/style.js +3 -3
  1221. package/esm/component/tooltip/handler/dom/utils/style.js.map +1 -1
  1222. package/esm/component/tooltip/handler/index.js.map +1 -1
  1223. package/esm/component/tooltip/handler/interface/cache.js.map +1 -1
  1224. package/esm/component/tooltip/handler/interface/index.js.map +1 -1
  1225. package/esm/component/tooltip/handler/interface/style.js.map +1 -1
  1226. package/esm/component/tooltip/handler/utils/attribute.js +4 -5
  1227. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  1228. package/esm/component/tooltip/handler/utils/common.js.map +1 -1
  1229. package/esm/component/tooltip/handler/utils/compose.js.map +1 -1
  1230. package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
  1231. package/esm/component/tooltip/handler/utils/index.js.map +1 -1
  1232. package/esm/component/tooltip/handler/utils/pattern.js.map +1 -1
  1233. package/esm/component/tooltip/handler/utils/position.js.map +1 -1
  1234. package/esm/component/tooltip/handler/utils/style.d.ts +1 -1
  1235. package/esm/component/tooltip/handler/utils/style.js +6 -4
  1236. package/esm/component/tooltip/handler/utils/style.js.map +1 -1
  1237. package/esm/component/tooltip/index.js.map +1 -1
  1238. package/esm/component/tooltip/interface/common.js.map +1 -1
  1239. package/esm/component/tooltip/interface/index.js.map +1 -1
  1240. package/esm/component/tooltip/interface/spec.d.ts +5 -6
  1241. package/esm/component/tooltip/interface/spec.js.map +1 -1
  1242. package/esm/component/tooltip/interface/theme.d.ts +6 -0
  1243. package/esm/component/tooltip/interface/theme.js.map +1 -1
  1244. package/esm/component/tooltip/processor/base.d.ts +2 -4
  1245. package/esm/component/tooltip/processor/base.js +4 -4
  1246. package/esm/component/tooltip/processor/base.js.map +1 -1
  1247. package/esm/component/tooltip/processor/dimension-tooltip.js +3 -0
  1248. package/esm/component/tooltip/processor/dimension-tooltip.js.map +1 -1
  1249. package/esm/component/tooltip/processor/index.js.map +1 -1
  1250. package/esm/component/tooltip/processor/interface.js.map +1 -1
  1251. package/esm/component/tooltip/processor/mark-tooltip.js +3 -0
  1252. package/esm/component/tooltip/processor/mark-tooltip.js.map +1 -1
  1253. package/esm/component/tooltip/processor/util.js.map +1 -1
  1254. package/esm/component/tooltip/tooltip.js +6 -9
  1255. package/esm/component/tooltip/tooltip.js.map +1 -1
  1256. package/esm/component/tooltip/utils/common.js.map +1 -1
  1257. package/esm/component/tooltip/utils/index.js.map +1 -1
  1258. package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
  1259. package/esm/constant/base.d.ts +1 -1
  1260. package/esm/constant/base.js +1 -1
  1261. package/esm/constant/base.js.map +1 -1
  1262. package/esm/constant/box-plot.js.map +1 -1
  1263. package/esm/constant/event.js.map +1 -1
  1264. package/esm/constant/funnel.js.map +1 -1
  1265. package/esm/constant/hierarchy.js.map +1 -1
  1266. package/esm/constant/index.js.map +1 -1
  1267. package/esm/constant/label.js +1 -2
  1268. package/esm/constant/label.js.map +1 -1
  1269. package/esm/constant/layout.js.map +1 -1
  1270. package/esm/constant/marker.js.map +1 -1
  1271. package/esm/constant/polar.js +2 -1
  1272. package/esm/constant/polar.js.map +1 -1
  1273. package/esm/constant/scatter.js.map +1 -1
  1274. package/esm/constant/scroll-bar.js.map +1 -1
  1275. package/esm/constant/sunburst.js.map +1 -1
  1276. package/esm/constant/waterfall.js.map +1 -1
  1277. package/esm/constant/word-cloud.js.map +1 -1
  1278. package/esm/core/factory.js.map +1 -1
  1279. package/esm/core/interface.js.map +1 -1
  1280. package/esm/core/vchart.d.ts +1 -0
  1281. package/esm/core/vchart.js +15 -10
  1282. package/esm/core/vchart.js.map +1 -1
  1283. package/esm/data/initialize.js.map +1 -1
  1284. package/esm/data/parser/array.js.map +1 -1
  1285. package/esm/data/parser/scale.js.map +1 -1
  1286. package/esm/data/register.js.map +1 -1
  1287. package/esm/data/transforms/add-property.d.ts +5 -5
  1288. package/esm/data/transforms/add-property.js +1 -1
  1289. package/esm/data/transforms/add-property.js.map +1 -1
  1290. package/esm/data/transforms/aggregation.js.map +1 -1
  1291. package/esm/data/transforms/box-plot.js.map +1 -1
  1292. package/esm/data/transforms/circle-packing.js.map +1 -1
  1293. package/esm/data/transforms/copy-data-view.js.map +1 -1
  1294. package/esm/data/transforms/data-key.d.ts +3 -3
  1295. package/esm/data/transforms/data-key.js.map +1 -1
  1296. package/esm/data/transforms/dimension-data.js.map +1 -1
  1297. package/esm/data/transforms/dimension-statistics.js.map +1 -1
  1298. package/esm/data/transforms/drill.js.map +1 -1
  1299. package/esm/data/transforms/flatten.js.map +1 -1
  1300. package/esm/data/transforms/funnel.js.map +1 -1
  1301. package/esm/data/transforms/hierarchy-dimension-statistics.js.map +1 -1
  1302. package/esm/data/transforms/invalid-travel.js.map +1 -1
  1303. package/esm/data/transforms/legend-data/continuous/continuous.js.map +1 -1
  1304. package/esm/data/transforms/legend-data/continuous/index.js.map +1 -1
  1305. package/esm/data/transforms/legend-data/continuous/interface.js.map +1 -1
  1306. package/esm/data/transforms/legend-data/discrete/discrete.js.map +1 -1
  1307. package/esm/data/transforms/legend-data/discrete/index.js.map +1 -1
  1308. package/esm/data/transforms/legend-data/discrete/interface.js.map +1 -1
  1309. package/esm/data/transforms/lookup.js.map +1 -1
  1310. package/esm/data/transforms/map.js.map +1 -1
  1311. package/esm/data/transforms/obj-flat.js.map +1 -1
  1312. package/esm/data/transforms/pie.js.map +1 -1
  1313. package/esm/data/transforms/regression.js.map +1 -1
  1314. package/esm/data/transforms/sankey-links.js.map +1 -1
  1315. package/esm/data/transforms/sankey-nodes.js.map +1 -1
  1316. package/esm/data/transforms/sankey.js.map +1 -1
  1317. package/esm/data/transforms/stack-split.js.map +1 -1
  1318. package/esm/data/transforms/sunburst.js.map +1 -1
  1319. package/esm/data/transforms/tick-data/config.js.map +1 -1
  1320. package/esm/data/transforms/tick-data/continuous.js.map +1 -1
  1321. package/esm/data/transforms/tick-data/discrete/linear.js.map +1 -1
  1322. package/esm/data/transforms/tick-data/discrete/polar-angle.js.map +1 -1
  1323. package/esm/data/transforms/tick-data/index.js.map +1 -1
  1324. package/esm/data/transforms/tick-data/interface.js.map +1 -1
  1325. package/esm/data/transforms/tick-data/util.js.map +1 -1
  1326. package/esm/data/transforms/treemap.js.map +1 -1
  1327. package/esm/data/transforms/waterfall.js.map +1 -1
  1328. package/esm/event/bubble.js.map +1 -1
  1329. package/esm/event/event-dispatcher.js.map +1 -1
  1330. package/esm/event/event.js +1 -2
  1331. package/esm/event/event.js.map +1 -1
  1332. package/esm/event/events/dimension/base.js.map +1 -1
  1333. package/esm/event/events/dimension/dimension-click.js.map +1 -1
  1334. package/esm/event/events/dimension/dimension-hover.js.map +1 -1
  1335. package/esm/event/events/dimension/index.js.map +1 -1
  1336. package/esm/event/events/dimension/interface.js.map +1 -1
  1337. package/esm/event/events/dimension/util/cartesian.js.map +1 -1
  1338. package/esm/event/events/dimension/util/common.js.map +1 -1
  1339. package/esm/event/events/dimension/util/index.js.map +1 -1
  1340. package/esm/event/events/dimension/util/polar.js.map +1 -1
  1341. package/esm/event/events/index.js.map +1 -1
  1342. package/esm/event/interface.js.map +1 -1
  1343. package/esm/index.d.ts +1 -1
  1344. package/esm/index.js +1 -1
  1345. package/esm/index.js.map +1 -1
  1346. package/esm/interaction/config.js.map +1 -1
  1347. package/esm/interaction/dimension-trigger.js.map +1 -1
  1348. package/esm/interaction/drill/drillable.js.map +1 -1
  1349. package/esm/interaction/drill/index.js.map +1 -1
  1350. package/esm/interaction/interaction.js.map +1 -1
  1351. package/esm/interaction/interface.js.map +1 -1
  1352. package/esm/interaction/trigger.js.map +1 -1
  1353. package/esm/interaction/zoom/index.js.map +1 -1
  1354. package/esm/interaction/zoom/zoomable.js.map +1 -1
  1355. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  1356. package/esm/layout/index.d.ts +13 -10
  1357. package/esm/layout/index.js.map +1 -1
  1358. package/esm/layout/interface.js.map +1 -1
  1359. package/esm/layout/label/arc-label.js.map +1 -1
  1360. package/esm/layout/layout3d/index.d.ts +23 -0
  1361. package/esm/layout/layout3d/index.js +123 -0
  1362. package/esm/layout/layout3d/index.js.map +1 -0
  1363. package/esm/mark/arc.js +1 -1
  1364. package/esm/mark/arc.js.map +1 -1
  1365. package/esm/mark/area.js +1 -1
  1366. package/esm/mark/area.js.map +1 -1
  1367. package/esm/mark/base/base-line.js.map +1 -1
  1368. package/esm/mark/base/base-mark.js.map +1 -1
  1369. package/esm/mark/base/index.js.map +1 -1
  1370. package/esm/mark/boxPlot.js +2 -2
  1371. package/esm/mark/boxPlot.js.map +1 -1
  1372. package/esm/mark/cell.js +1 -1
  1373. package/esm/mark/cell.js.map +1 -1
  1374. package/esm/mark/component.d.ts +1 -0
  1375. package/esm/mark/component.js +5 -3
  1376. package/esm/mark/component.js.map +1 -1
  1377. package/esm/mark/group.js +1 -1
  1378. package/esm/mark/group.js.map +1 -1
  1379. package/esm/mark/interface/common.js.map +1 -1
  1380. package/esm/mark/interface/index.js.map +1 -1
  1381. package/esm/mark/interface/type.js.map +1 -1
  1382. package/esm/mark/line.js +1 -1
  1383. package/esm/mark/line.js.map +1 -1
  1384. package/esm/mark/linkPath.js +1 -2
  1385. package/esm/mark/linkPath.js.map +1 -1
  1386. package/esm/mark/mark-set/index.js.map +1 -1
  1387. package/esm/mark/path.js +1 -1
  1388. package/esm/mark/path.js.map +1 -1
  1389. package/esm/mark/polygon.js +1 -1
  1390. package/esm/mark/polygon.js.map +1 -1
  1391. package/esm/mark/progress-arc.js +1 -1
  1392. package/esm/mark/progress-arc.js.map +1 -1
  1393. package/esm/mark/rect.js +1 -1
  1394. package/esm/mark/rect.js.map +1 -1
  1395. package/esm/mark/rule.js +1 -1
  1396. package/esm/mark/rule.js.map +1 -1
  1397. package/esm/mark/symbol.js +1 -1
  1398. package/esm/mark/symbol.js.map +1 -1
  1399. package/esm/mark/text.js +1 -1
  1400. package/esm/mark/text.js.map +1 -1
  1401. package/esm/mark/utils/common.js.map +1 -1
  1402. package/esm/mark/utils/index.js.map +1 -1
  1403. package/esm/model/base-model.d.ts +1 -1
  1404. package/esm/model/base-model.js +1 -1
  1405. package/esm/model/base-model.js.map +1 -1
  1406. package/esm/model/interface.d.ts +1 -0
  1407. package/esm/model/interface.js +1 -1
  1408. package/esm/model/interface.js.map +1 -1
  1409. package/esm/model/layout-item.js +1 -1
  1410. package/esm/model/layout-item.js.map +1 -1
  1411. package/esm/model/model-state-manager.js +2 -1
  1412. package/esm/model/model-state-manager.js.map +1 -1
  1413. package/esm/model/tooltip-helper.js +1 -1
  1414. package/esm/model/tooltip-helper.js.map +1 -1
  1415. package/esm/plugin/chart/interface.js.map +1 -1
  1416. package/esm/plugin/components/axis-label-overlap-plugin.js.map +1 -1
  1417. package/esm/plugin/components/basic-plugin.js.map +1 -1
  1418. package/esm/plugin/components/index.js.map +1 -1
  1419. package/esm/plugin/components/interface.js.map +1 -1
  1420. package/esm/plugin/components/plugin-service.js.map +1 -1
  1421. package/esm/plugin/interface.js +1 -1
  1422. package/esm/plugin/interface.js.map +1 -1
  1423. package/esm/plugin/series/interface.js.map +1 -1
  1424. package/esm/region/interface.js +1 -1
  1425. package/esm/region/interface.js.map +1 -1
  1426. package/esm/region/region.js +1 -1
  1427. package/esm/region/region.js.map +1 -1
  1428. package/esm/scale/global-scale.js +1 -1
  1429. package/esm/scale/global-scale.js.map +1 -1
  1430. package/esm/scale/interface.js +1 -1
  1431. package/esm/scale/interface.js.map +1 -1
  1432. package/esm/series/area/animation.js.map +1 -1
  1433. package/esm/series/area/area.js +3 -1
  1434. package/esm/series/area/area.js.map +1 -1
  1435. package/esm/series/area/interface.js.map +1 -1
  1436. package/esm/series/bar/animation.js.map +1 -1
  1437. package/esm/series/bar/bar.js +7 -6
  1438. package/esm/series/bar/bar.js.map +1 -1
  1439. package/esm/series/bar/interface.d.ts +3 -0
  1440. package/esm/series/bar/interface.js.map +1 -1
  1441. package/esm/series/base/base-series.d.ts +2 -2
  1442. package/esm/series/base/base-series.js +8 -10
  1443. package/esm/series/base/base-series.js.map +1 -1
  1444. package/esm/series/base/group.js.map +1 -1
  1445. package/esm/series/base/series-data.js.map +1 -1
  1446. package/esm/series/base/tooltip-helper.js.map +1 -1
  1447. package/esm/series/box-plot/boxPlot.d.ts +1 -1
  1448. package/esm/series/box-plot/boxPlot.js +10 -11
  1449. package/esm/series/box-plot/boxPlot.js.map +1 -1
  1450. package/esm/series/box-plot/interface.js.map +1 -1
  1451. package/esm/series/box-plot/tooltip-helper.js.map +1 -1
  1452. package/esm/series/cartesian/cartesian.d.ts +11 -0
  1453. package/esm/series/cartesian/cartesian.js +38 -3
  1454. package/esm/series/cartesian/cartesian.js.map +1 -1
  1455. package/esm/series/cartesian/interface.d.ts +1 -2
  1456. package/esm/series/cartesian/interface.js.map +1 -1
  1457. package/esm/series/circle-packing/animation.js.map +1 -1
  1458. package/esm/series/circle-packing/circle-packing.js +3 -3
  1459. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  1460. package/esm/series/circle-packing/interface.js.map +1 -1
  1461. package/esm/series/circle-packing/tooltip-helper.js.map +1 -1
  1462. package/esm/series/dot/config.js.map +1 -1
  1463. package/esm/series/dot/dot.js +6 -8
  1464. package/esm/series/dot/dot.js.map +1 -1
  1465. package/esm/series/dot/interface.d.ts +0 -1
  1466. package/esm/series/dot/interface.js.map +1 -1
  1467. package/esm/series/dot/tooltip-helper.js.map +1 -1
  1468. package/esm/series/funnel/funnel.d.ts +8 -0
  1469. package/esm/series/funnel/funnel.js +13 -4
  1470. package/esm/series/funnel/funnel.js.map +1 -1
  1471. package/esm/series/funnel/interface.js.map +1 -1
  1472. package/esm/series/funnel/tooltip-helper.js.map +1 -1
  1473. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  1474. package/esm/series/gauge/gauge.js.map +1 -1
  1475. package/esm/series/gauge/index.js.map +1 -1
  1476. package/esm/series/gauge/interface.js.map +1 -1
  1477. package/esm/series/geo/geo.d.ts +1 -0
  1478. package/esm/series/geo/geo.js +3 -0
  1479. package/esm/series/geo/geo.js.map +1 -1
  1480. package/esm/series/geo/interface.js.map +1 -1
  1481. package/esm/series/heatmap/animation.js.map +1 -1
  1482. package/esm/series/heatmap/heatmap.js +5 -4
  1483. package/esm/series/heatmap/heatmap.js.map +1 -1
  1484. package/esm/series/heatmap/interface.js.map +1 -1
  1485. package/esm/series/heatmap/tooltip-helper.js.map +1 -1
  1486. package/esm/series/interface/common.d.ts +1 -0
  1487. package/esm/series/interface/common.js.map +1 -1
  1488. package/esm/series/interface/index.js.map +1 -1
  1489. package/esm/series/interface/series.d.ts +7 -0
  1490. package/esm/series/interface/series.js.map +1 -1
  1491. package/esm/series/interface/theme.js.map +1 -1
  1492. package/esm/series/interface/tooltip-helper.js.map +1 -1
  1493. package/esm/series/interface/type.js.map +1 -1
  1494. package/esm/series/line/animation.js.map +1 -1
  1495. package/esm/series/line/interface.js.map +1 -1
  1496. package/esm/series/line/line.js.map +1 -1
  1497. package/esm/series/link/interface.d.ts +2 -2
  1498. package/esm/series/link/interface.js.map +1 -1
  1499. package/esm/series/link/link.js +3 -3
  1500. package/esm/series/link/link.js.map +1 -1
  1501. package/esm/series/link/tooltip-helper.js.map +1 -1
  1502. package/esm/series/map/geo-source.d.ts +1 -0
  1503. package/esm/series/map/geo-source.js +4 -0
  1504. package/esm/series/map/geo-source.js.map +1 -1
  1505. package/esm/series/map/interface.js.map +1 -1
  1506. package/esm/series/map/map.js +2 -1
  1507. package/esm/series/map/map.js.map +1 -1
  1508. package/esm/series/map/tooltip-helper.js.map +1 -1
  1509. package/esm/series/mixin/line-mixin.d.ts +0 -1
  1510. package/esm/series/mixin/line-mixin.js +12 -7
  1511. package/esm/series/mixin/line-mixin.js.map +1 -1
  1512. package/esm/series/pie/animation/animation.js.map +1 -1
  1513. package/esm/series/pie/animation/centerOffset.js.map +1 -1
  1514. package/esm/series/pie/interface.d.ts +1 -0
  1515. package/esm/series/pie/interface.js.map +1 -1
  1516. package/esm/series/pie/pie.d.ts +13 -5
  1517. package/esm/series/pie/pie.js +32 -25
  1518. package/esm/series/pie/pie.js.map +1 -1
  1519. package/esm/series/polar/animation.js.map +1 -1
  1520. package/esm/series/polar/interface.d.ts +0 -1
  1521. package/esm/series/polar/interface.js.map +1 -1
  1522. package/esm/series/polar/polar.d.ts +1 -0
  1523. package/esm/series/polar/polar.js +3 -0
  1524. package/esm/series/polar/polar.js.map +1 -1
  1525. package/esm/series/polar/progress-like/animation.js.map +1 -1
  1526. package/esm/series/polar/progress-like/index.js.map +1 -1
  1527. package/esm/series/polar/progress-like/interface.js.map +1 -1
  1528. package/esm/series/polar/progress-like/progress-like.js.map +1 -1
  1529. package/esm/series/polar/rose-like/index.js.map +1 -1
  1530. package/esm/series/polar/rose-like/interface.js.map +1 -1
  1531. package/esm/series/polar/rose-like/rose-like.js.map +1 -1
  1532. package/esm/series/progress/circular/circular.js.map +1 -1
  1533. package/esm/series/progress/circular/index.js.map +1 -1
  1534. package/esm/series/progress/circular/interface.js.map +1 -1
  1535. package/esm/series/progress/interface.js.map +1 -1
  1536. package/esm/series/progress/linear/animation.js.map +1 -1
  1537. package/esm/series/progress/linear/index.js.map +1 -1
  1538. package/esm/series/progress/linear/interface.js.map +1 -1
  1539. package/esm/series/progress/linear/linear.js.map +1 -1
  1540. package/esm/series/progress/linear/tooltip-helper.js.map +1 -1
  1541. package/esm/series/radar/animation.js.map +1 -1
  1542. package/esm/series/radar/interface.d.ts +0 -1
  1543. package/esm/series/radar/interface.js.map +1 -1
  1544. package/esm/series/radar/radar.js.map +1 -1
  1545. package/esm/series/range-area/interface.js.map +1 -1
  1546. package/esm/series/range-area/range-area.js.map +1 -1
  1547. package/esm/series/range-area/tooltip-helper.js.map +1 -1
  1548. package/esm/series/range-column/animation.js.map +1 -1
  1549. package/esm/series/range-column/interface.d.ts +3 -3
  1550. package/esm/series/range-column/interface.js.map +1 -1
  1551. package/esm/series/range-column/rangeColumn.js +15 -13
  1552. package/esm/series/range-column/rangeColumn.js.map +1 -1
  1553. package/esm/series/range-column/tooltip-helper.js.map +1 -1
  1554. package/esm/series/rose/animation.js.map +1 -1
  1555. package/esm/series/rose/interface.js.map +1 -1
  1556. package/esm/series/rose/rose.js +2 -1
  1557. package/esm/series/rose/rose.js.map +1 -1
  1558. package/esm/series/sankey/animation.js.map +1 -1
  1559. package/esm/series/sankey/interface.js.map +1 -1
  1560. package/esm/series/sankey/sankey.js +5 -5
  1561. package/esm/series/sankey/sankey.js.map +1 -1
  1562. package/esm/series/sankey/tooltip-helper.js.map +1 -1
  1563. package/esm/series/scatter/animation.js.map +1 -1
  1564. package/esm/series/scatter/interface.js.map +1 -1
  1565. package/esm/series/scatter/scatter.js +8 -5
  1566. package/esm/series/scatter/scatter.js.map +1 -1
  1567. package/esm/series/sunburst/animation/enter.js.map +1 -1
  1568. package/esm/series/sunburst/animation/exit.js.map +1 -1
  1569. package/esm/series/sunburst/animation/index.js.map +1 -1
  1570. package/esm/series/sunburst/animation/interface.js.map +1 -1
  1571. package/esm/series/sunburst/animation/preset.js.map +1 -1
  1572. package/esm/series/sunburst/animation/utils.js.map +1 -1
  1573. package/esm/series/sunburst/interface.js.map +1 -1
  1574. package/esm/series/sunburst/sunburst.js +3 -3
  1575. package/esm/series/sunburst/sunburst.js.map +1 -1
  1576. package/esm/series/sunburst/tooltip-helper.js.map +1 -1
  1577. package/esm/series/treemap/animation.js.map +1 -1
  1578. package/esm/series/treemap/config.js.map +1 -1
  1579. package/esm/series/treemap/interface.js.map +1 -1
  1580. package/esm/series/treemap/tooltip-helper.js.map +1 -1
  1581. package/esm/series/treemap/treemap.js +3 -3
  1582. package/esm/series/treemap/treemap.js.map +1 -1
  1583. package/esm/series/util/label-mark.js.map +1 -1
  1584. package/esm/series/util/utils.js.map +1 -1
  1585. package/esm/series/waterfall/animation.js.map +1 -1
  1586. package/esm/series/waterfall/interface.js.map +1 -1
  1587. package/esm/series/waterfall/waterfall.js.map +1 -1
  1588. package/esm/series/word-cloud/animation.js.map +1 -1
  1589. package/esm/series/word-cloud/config.js.map +1 -1
  1590. package/esm/series/word-cloud/interface.js.map +1 -1
  1591. package/esm/series/word-cloud/word-cloud.d.ts +10 -3
  1592. package/esm/series/word-cloud/word-cloud.js +107 -26
  1593. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  1594. package/esm/theme/buildin-theme/config.js +2 -0
  1595. package/esm/theme/buildin-theme/config.js.map +1 -1
  1596. package/esm/theme/buildin-theme/dark.js +6 -462
  1597. package/esm/theme/buildin-theme/dark.js.map +1 -1
  1598. package/esm/theme/buildin-theme/index.js.map +1 -1
  1599. package/esm/theme/buildin-theme/light/color-scheme.js.map +1 -1
  1600. package/esm/theme/buildin-theme/light/component/brush.js +12 -8
  1601. package/esm/theme/buildin-theme/light/component/brush.js.map +1 -1
  1602. package/esm/theme/buildin-theme/light/component/cartesian-axis.d.ts +3 -2
  1603. package/esm/theme/buildin-theme/light/component/cartesian-axis.js +15 -81
  1604. package/esm/theme/buildin-theme/light/component/cartesian-axis.js.map +1 -1
  1605. package/esm/theme/buildin-theme/light/component/color-legend.d.ts +2 -36
  1606. package/esm/theme/buildin-theme/light/component/color-legend.js.map +1 -1
  1607. package/esm/theme/buildin-theme/light/component/common-axis.d.ts +2 -0
  1608. package/esm/theme/buildin-theme/light/component/common-axis.js +68 -0
  1609. package/esm/theme/buildin-theme/light/component/common-axis.js.map +1 -0
  1610. package/esm/theme/buildin-theme/light/component/crosshair.js +1 -6
  1611. package/esm/theme/buildin-theme/light/component/crosshair.js.map +1 -1
  1612. package/esm/theme/buildin-theme/light/component/data-zoom.js +10 -10
  1613. package/esm/theme/buildin-theme/light/component/data-zoom.js.map +1 -1
  1614. package/esm/theme/buildin-theme/light/component/discrete-legend.js +3 -6
  1615. package/esm/theme/buildin-theme/light/component/discrete-legend.js.map +1 -1
  1616. package/esm/theme/buildin-theme/light/component/indicator.d.ts +2 -0
  1617. package/esm/{component/indicator/config.js → theme/buildin-theme/light/component/indicator.js} +2 -2
  1618. package/esm/theme/buildin-theme/light/component/indicator.js.map +1 -0
  1619. package/esm/theme/buildin-theme/light/component/mark-area.js.map +1 -1
  1620. package/esm/theme/buildin-theme/light/component/mark-line.js.map +1 -1
  1621. package/esm/theme/buildin-theme/light/component/mark-point.js +1 -3
  1622. package/esm/theme/buildin-theme/light/component/mark-point.js.map +1 -1
  1623. package/esm/theme/buildin-theme/light/component/player.js.map +1 -1
  1624. package/esm/theme/buildin-theme/light/component/polar-axis.d.ts +3 -2
  1625. package/esm/theme/buildin-theme/light/component/polar-axis.js +11 -68
  1626. package/esm/theme/buildin-theme/light/component/polar-axis.js.map +1 -1
  1627. package/esm/theme/buildin-theme/light/component/size-legend.js.map +1 -1
  1628. package/esm/theme/buildin-theme/light/component/title.d.ts +2 -0
  1629. package/esm/theme/buildin-theme/light/component/title.js +9 -0
  1630. package/esm/theme/buildin-theme/light/component/title.js.map +1 -0
  1631. package/esm/theme/buildin-theme/light/component/tooltip.js +5 -5
  1632. package/esm/theme/buildin-theme/light/component/tooltip.js.map +1 -1
  1633. package/esm/theme/buildin-theme/light/index.js +21 -7
  1634. package/esm/theme/buildin-theme/light/index.js.map +1 -1
  1635. package/esm/theme/buildin-theme/light/series/area.js +6 -5
  1636. package/esm/theme/buildin-theme/light/series/area.js.map +1 -1
  1637. package/esm/theme/buildin-theme/light/series/bar.js +1 -4
  1638. package/esm/theme/buildin-theme/light/series/bar.js.map +1 -1
  1639. package/esm/theme/buildin-theme/light/series/bar3d.js +1 -4
  1640. package/esm/theme/buildin-theme/light/series/bar3d.js.map +1 -1
  1641. package/esm/theme/buildin-theme/light/series/circle-packing.js.map +1 -1
  1642. package/esm/theme/buildin-theme/light/series/circular-progress.js.map +1 -1
  1643. package/esm/theme/buildin-theme/light/series/dot.js +11 -3
  1644. package/esm/theme/buildin-theme/light/series/dot.js.map +1 -1
  1645. package/esm/theme/buildin-theme/light/series/funnel.js +0 -3
  1646. package/esm/theme/buildin-theme/light/series/funnel.js.map +1 -1
  1647. package/esm/theme/buildin-theme/light/series/funnel3d.js +0 -3
  1648. package/esm/theme/buildin-theme/light/series/funnel3d.js.map +1 -1
  1649. package/esm/theme/buildin-theme/light/series/gauge-pointer.js.map +1 -1
  1650. package/esm/theme/buildin-theme/light/series/gauge.js.map +1 -1
  1651. package/esm/theme/buildin-theme/light/series/heatmap.js +2 -3
  1652. package/esm/theme/buildin-theme/light/series/heatmap.js.map +1 -1
  1653. package/esm/theme/buildin-theme/light/series/index.js.map +1 -1
  1654. package/esm/theme/buildin-theme/light/series/line.js +6 -5
  1655. package/esm/theme/buildin-theme/light/series/line.js.map +1 -1
  1656. package/esm/theme/buildin-theme/light/series/linear-progress.js.map +1 -1
  1657. package/esm/theme/buildin-theme/light/series/link.js +5 -3
  1658. package/esm/theme/buildin-theme/light/series/link.js.map +1 -1
  1659. package/esm/theme/buildin-theme/light/series/map.js +1 -2
  1660. package/esm/theme/buildin-theme/light/series/map.js.map +1 -1
  1661. package/esm/theme/buildin-theme/light/series/pie.js +1 -3
  1662. package/esm/theme/buildin-theme/light/series/pie.js.map +1 -1
  1663. package/esm/theme/buildin-theme/light/series/pie3d.js +1 -3
  1664. package/esm/theme/buildin-theme/light/series/pie3d.js.map +1 -1
  1665. package/esm/theme/buildin-theme/light/series/radar.js +6 -5
  1666. package/esm/theme/buildin-theme/light/series/radar.js.map +1 -1
  1667. package/esm/theme/buildin-theme/light/series/rangeColumn.js +1 -4
  1668. package/esm/theme/buildin-theme/light/series/rangeColumn.js.map +1 -1
  1669. package/esm/theme/buildin-theme/light/series/scatter.js +1 -4
  1670. package/esm/theme/buildin-theme/light/series/scatter.js.map +1 -1
  1671. package/esm/theme/buildin-theme/light/series/sunburst.js.map +1 -1
  1672. package/esm/theme/buildin-theme/light/series/treemap.js +1 -5
  1673. package/esm/theme/buildin-theme/light/series/treemap.js.map +1 -1
  1674. package/esm/theme/buildin-theme/light/series/waterfall.js +1 -5
  1675. package/esm/theme/buildin-theme/light/series/waterfall.js.map +1 -1
  1676. package/esm/theme/buildin-theme/light/series/word-cloud.js.map +1 -1
  1677. package/esm/theme/buildin-theme/light/series/word-cloud3d.js.map +1 -1
  1678. package/esm/theme/color-scheme/interface.d.ts +1 -1
  1679. package/esm/theme/color-scheme/interface.js.map +1 -1
  1680. package/esm/theme/color-scheme/util.js.map +1 -1
  1681. package/esm/theme/index.js.map +1 -1
  1682. package/esm/theme/interface.d.ts +13 -5
  1683. package/esm/theme/interface.js.map +1 -1
  1684. package/esm/theme/theme-manager.js.map +1 -1
  1685. package/esm/typings/common.js.map +1 -1
  1686. package/esm/typings/coordinate.js.map +1 -1
  1687. package/esm/typings/cursor.js.map +1 -1
  1688. package/esm/typings/data.js.map +1 -1
  1689. package/esm/typings/geo.js.map +1 -1
  1690. package/esm/typings/index.js.map +1 -1
  1691. package/esm/typings/interpolate.js.map +1 -1
  1692. package/esm/typings/line-stroke.js.map +1 -1
  1693. package/esm/typings/params.js.map +1 -1
  1694. package/esm/typings/scale.js.map +1 -1
  1695. package/esm/typings/shape.js.map +1 -1
  1696. package/esm/typings/space.d.ts +1 -1
  1697. package/esm/typings/space.js.map +1 -1
  1698. package/esm/typings/spec/chart.js.map +1 -1
  1699. package/esm/typings/spec/common.d.ts +5 -5
  1700. package/esm/typings/spec/common.js.map +1 -1
  1701. package/esm/typings/spec/index.js.map +1 -1
  1702. package/esm/typings/tooltip/common.js.map +1 -1
  1703. package/esm/typings/tooltip/handler.js.map +1 -1
  1704. package/esm/typings/tooltip/index.js.map +1 -1
  1705. package/esm/typings/tooltip/line.js.map +1 -1
  1706. package/esm/typings/tooltip/position.js.map +1 -1
  1707. package/esm/typings/tooltip/shape.js.map +1 -1
  1708. package/esm/typings/tooltip/tooltip.js.map +1 -1
  1709. package/esm/typings/visual.d.ts +21 -3
  1710. package/esm/typings/visual.js.map +1 -1
  1711. package/esm/util/array.js.map +1 -1
  1712. package/esm/util/color.js.map +1 -1
  1713. package/esm/util/data.js +3 -2
  1714. package/esm/util/data.js.map +1 -1
  1715. package/esm/util/debug.js.map +1 -1
  1716. package/esm/util/env.js.map +1 -1
  1717. package/esm/util/hierarchy.js.map +1 -1
  1718. package/esm/util/id.js +4 -4
  1719. package/esm/util/id.js.map +1 -1
  1720. package/esm/util/image.js.map +1 -1
  1721. package/esm/util/index.js.map +1 -1
  1722. package/esm/util/math.js.map +1 -1
  1723. package/esm/util/model.js.map +1 -1
  1724. package/esm/util/object.js.map +1 -1
  1725. package/esm/util/scale.js.map +1 -1
  1726. package/esm/util/space.js.map +1 -1
  1727. package/esm/util/spec.js.map +1 -1
  1728. package/esm/util/style.js +4 -6
  1729. package/esm/util/style.js.map +1 -1
  1730. package/esm/util/text.js.map +1 -1
  1731. package/esm/util/type.js.map +1 -1
  1732. package/esm/vchart-all.js +3 -1
  1733. package/esm/vchart-all.js.map +1 -1
  1734. package/package.json +16 -57
  1735. package/cjs/component/brush/config.d.ts +0 -8
  1736. package/cjs/component/brush/config.js +0 -13
  1737. package/cjs/component/brush/config.js.map +0 -1
  1738. package/cjs/component/indicator/config.d.ts +0 -5
  1739. package/cjs/component/indicator/config.js.map +0 -1
  1740. package/cjs/component/tooltip/config.d.ts +0 -2
  1741. package/cjs/component/tooltip/config.js +0 -12
  1742. package/cjs/component/tooltip/config.js.map +0 -1
  1743. package/esm/component/brush/config.d.ts +0 -8
  1744. package/esm/component/brush/config.js +0 -9
  1745. package/esm/component/brush/config.js.map +0 -1
  1746. package/esm/component/indicator/config.d.ts +0 -5
  1747. package/esm/component/indicator/config.js.map +0 -1
  1748. package/esm/component/tooltip/config.d.ts +0 -2
  1749. package/esm/component/tooltip/config.js +0 -8
  1750. package/esm/component/tooltip/config.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["model/base-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAa3C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,OAAgB,SAAU,SAAQ,UAAU;IAgBhD,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAGD,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAGD,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAOD,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAMD,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAID,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;IAC9B,CAAC;IAQD,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAKD,YAAY,IAAgB,EAAE,MAAoB;;QAChD,KAAK,CAAC,MAAM,CAAC,CAAC;QAlEP,SAAI,GAAW,MAAM,CAAC;QACtB,cAAS,GAAW,MAAM,CAAC;QAIpC,WAAM,GAA+B,SAAS,CAAC;QASrC,UAAK,GAAmB,IAAI,CAAC;QAU7B,eAAU,GAAW,CAAC,CAAC;QAKxB,YAAO,GAAW,EAAE,CAAC;QA0BpB,oBAAe,GAAgB,IAAI,CAAC;QAQpC,cAAS,GAAY,IAAI,CAAC;QAIlC,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAA,MAAM,CAAC,GAAG,0CAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,iBAAiB,iCAC7B,MAAM,KACT,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAC1D,CAAC;IACL,CAAC;IAGS,YAAY;QACpB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,QAAiC;QAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,MAAwB;IAE7B,CAAC;IACD,aAAa,CAAC,UAAiB,EAAE,QAAqB,EAAE,GAAQ;QAC9D,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IACD,WAAW,CAAC,GAAQ;QAElB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE;YACtE,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;QACD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAES,YAAY;;QACpB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO;SACR;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,MAAA,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,0CAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,aAAa,CAAC,GAAyB;IAEvC,CAAC;IAGD,YAAY;IAEZ,CAAC;IAED,OAAO;;QACL,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrB,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QACzD,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,UAAU,CAAC,IAAS;QAClB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;SACjB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAES,UAAU,CAAC,KAAW;;QAC9B,MAAM,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,QAAQ,kDAAI,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YACzB,OAAO;SACR;QAED,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAGpB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC;QACxC,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC7B,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;oBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBAClF;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,eAAe,CAAC,KAAU,EAAE,QAAkB;IAE9C,CAAC;IAED,qBAAqB;IAErB,CAAC;IAED,eAAe;QACb,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC;IAGS,iBAAiB,CACzB,KAAyD;QAEzD,MAAM,QAAQ,qBACT,KAAK,CACT,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;;YAClC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAGzB,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;gBACrB,MAAM,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,QAAQ,kDAAI,CAAC;gBAC9C,IAAI,WAAW,EAAE;oBACf,MAAM,KAAK,GAAG,SAAS,CACrB,WAAW,CAAC,WAAW,EACvB,KAAK,EACL,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAI,CAAC,IAAuB,CAAC,CAAC,CAAC,SAAS,CACxE,CAAC;oBACF,IAAI,KAAK,EAAE;wBACT,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;qBACvB;iBACF;aACF;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAY,CACV,IAAiB,EACjB,KAA0D,EAC1D,KAAsB,EACtB,KAAc;QAEd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrC,OAAO;SACR;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,qBAAqB,CAAC,IAAY,EAAE,IAAU,EAAE,GAAY;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACpC,OAAO;SACR;QACD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC9B,MAAM,OAAO,qBACR,IAAI,CACR,CAAC;QAEF,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SAC/C;QACD,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;IAES,oBAAoB,CAAC,GAAW,EAAE,GAAY;QACtD,IAAI,IAAI,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC;QACxE,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;;QACT,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,KAA2B;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC1B,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa;;QACX,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,aAAa,CAAC,IAAc;QAC1B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAgB,CAAC,CAAC;IAC3D,CAAC;IAED,aAAa;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAqB,CAAC,CAAC;IACtE,CAAC;IAES,WAAW,CAAkB,IAAc,EAAE,IAAY,EAAE,SAA+B,EAAE;QACpG,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,kBACrC,KAAK,EAAE,IAAI,EACX,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EACrB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAClC,MAAM,EACJ,CAAC;QACR,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,CAAC;IACX,CAAC;IAOS,aAAa;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF","file":"base-model.js","sourcesContent":["import { merge, createID, isValid, cloneDeepSpec } from '../util';\nimport { Event } from '../event/event';\nimport type { IEvent } from '../event/interface';\nimport { LayoutItem } from './layout-item';\nimport type {\n IEffect,\n IModel,\n IModelInitOption,\n IModelOption,\n IModelRenderOption,\n IModelEvaluateOption,\n IModelSpec,\n ILayoutRect\n} from './interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IMark, IMarkOption, IMarkRaw, IMarkStyle, MarkType } from '../mark/interface';\nimport { findColor, isColorKey } from '../theme/color-scheme/util';\nimport type { SeriesTypeEnum } from '../series/interface';\nimport type { Datum, StateValueType, ConvertToMarkStyleSpec, ICommonSpec, StringOrNumber, IRect } from '../typings';\nimport type { ITooltipHelper } from './tooltip-helper';\nimport type { CompilableData } from '../compile/data/compilable-data';\nimport { ModelStateManager } from './model-state-manager';\nimport { PREFIX } from '../constant';\nimport type { IElement, IGroupMark, IMark as IVGrammarMark } from '@visactor/vgrammar';\nimport { isEqual } from '@visactor/vutils';\nimport { Factory } from '../core/factory';\n\nexport abstract class BaseModel extends LayoutItem implements IModel {\n readonly type: string = 'null';\n readonly modelType: string = 'null';\n\n readonly id;\n\n userId: StringOrNumber | undefined = undefined;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // 数据\n protected _data: CompilableData = null;\n getData() {\n return this._data;\n }\n\n protected declare _spec: any;\n getSpec(): any {\n return this._spec;\n }\n\n protected _specIndex: number = 0;\n getSpecIndex() {\n return this._specIndex;\n }\n\n readonly specKey: string = '';\n\n protected _originalSpec: any;\n\n protected declare _option: IModelOption;\n getOption() {\n return this._option;\n }\n\n protected _sceneNodeMap: Map<string, IElement>;\n\n abstract getMarks(): IMark[];\n\n getChart() {\n return this._option.getChart();\n }\n\n /** 状态管理器 */\n state: ModelStateManager;\n getState() {\n return this.state._stateMap;\n }\n\n protected _theme?: any; // 非全局 theme,是对应于具体 model 的 theme 对象\n\n /** for layout diff */\n protected _lastLayoutRect: ILayoutRect = null;\n\n protected _tooltipHelper: ITooltipHelper | undefined;\n get tooltipHelper() {\n return this._tooltipHelper;\n }\n\n // TODO: 有些hack,这个tag是为了避免布局逻辑中,轴的数据变化,又由数据变化触发重新布局\n protected _isLayout: boolean = true;\n\n constructor(spec: IModelSpec, option: IModelOption) {\n super(option);\n this.id = createID();\n this._originalSpec = spec;\n this._spec = cloneDeepSpec(spec);\n this.userId = spec.id;\n this._specIndex = option.specIndex ?? 0;\n this.specKey = option.specKey ?? '';\n this.effect = {};\n this.event = new Event(option.eventDispatcher, option.mode);\n option.map?.set(this.id, this);\n this._sceneNodeMap = new Map();\n this.state = new ModelStateManager({\n ...option,\n stateKeyToSignalName: this.stateKeyToSignalName.bind(this)\n });\n }\n coordinate?: CoordinateType;\n\n protected releaseEvent() {\n this.event.release();\n }\n\n created() {\n this._initTheme();\n this.setAttrFromSpec();\n }\n\n updateState(newState: Record<string, unknown>) {\n return this.state.updateState(newState);\n }\n\n init(option: IModelInitOption) {\n // do nothing\n }\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, ctx: any): void {\n super.onLayoutStart(layoutRect, viewRect, ctx);\n this._isLayout = true;\n }\n onLayoutEnd(ctx: any): void {\n // diff layoutRect\n const layoutRect = this.getLayoutRect();\n if (this._forceLayoutTag || !isEqual(this._lastLayoutRect, layoutRect)) {\n this.updateLayoutAttribute();\n }\n this._forceLayoutTag = false;\n this.getMarks().forEach(m => m.updateLayoutState(true, true));\n this._isLayout = false;\n }\n\n protected _forceLayout() {\n if (this._isLayout) {\n return;\n }\n this._forceLayoutTag = true;\n this._option.globalInstance.getChart()?.setLayoutTag(true);\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption) {\n // do nothing\n }\n abstract onRender(ctx: IModelRenderOption): void;\n\n onDataUpdate() {\n // do nothing\n }\n\n release() {\n this.releaseEvent();\n this._originalSpec = {};\n this._spec = {};\n this.getMarks().forEach(m => m.release());\n this.state.release();\n this._data?.release();\n this._data = this._specIndex = this._sceneNodeMap = null;\n super.release();\n }\n\n updateSpec(spec: any) {\n this._originalSpec = spec;\n this._spec = cloneDeepSpec(spec);\n const result = {\n change: false,\n reMake: false,\n reRender: false,\n reSize: false,\n reCompile: false\n };\n return result;\n }\n\n reInit() {\n this.setAttrFromSpec();\n }\n\n protected _initTheme(theme?: any) {\n const globalTheme = this._option.getTheme?.();\n if (!isValid(globalTheme)) {\n return;\n }\n\n this._theme = theme;\n\n // 将全局的 mark theme 合并进 model theme\n const { mark: markTheme } = globalTheme;\n if (isValid(markTheme)) {\n this.getMarks().forEach(mark => {\n if (isValid(markTheme[mark.type])) {\n this._theme[mark.name] = merge({}, markTheme[mark.type], this._theme[mark.name]);\n }\n });\n }\n }\n\n setCurrentTheme(theme: any, noRender?: boolean) {\n // do nothing\n }\n\n updateLayoutAttribute() {\n // do nothing\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec(this._spec, this._option.getChartViewRect());\n }\n\n /** mark style 内部转换逻辑,转换颜色、角度弧度等 */\n protected _convertMarkStyle<T extends ICommonSpec = ICommonSpec>(\n style: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>\n ): Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>> {\n const newStyle: any = {\n ...style\n };\n\n Object.keys(newStyle).forEach(key => {\n const value = style[key];\n\n // 查询语义化颜色\n if (isColorKey(value)) {\n const globalTheme = this._option.getTheme?.();\n if (globalTheme) {\n const color = findColor(\n globalTheme.colorScheme,\n value,\n this.modelType === 'series' ? (this.type as SeriesTypeEnum) : undefined\n );\n if (color) {\n newStyle[key] = color;\n }\n }\n }\n });\n\n return newStyle;\n }\n\n setMarkStyle<T extends ICommonSpec>(\n mark: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) {\n if (!isValid(mark) || !isValid(style)) {\n return;\n }\n mark.setStyle(this._convertMarkStyle(style), state, level);\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any, key?: string) {\n if (!isValid(mark) || !isValid(spec)) {\n return;\n }\n const { style, state } = spec;\n const newSpec = {\n ...spec\n };\n\n if (style) {\n newSpec.style = this._convertMarkStyle(style);\n }\n if (state) {\n newSpec.state = {};\n Object.keys(state).forEach(key => {\n newSpec.state[key] = this._convertMarkStyle(state[key]);\n });\n }\n mark.initStyleWithSpec(newSpec, key);\n }\n\n protected stateKeyToSignalName(key: string, opt?: string) {\n let name = `${PREFIX}_${this.modelType}_${this.type}_${this.id}_${key}`;\n opt && (name += `_${opt}`);\n return name;\n }\n\n compileData() {\n this._data?.compile();\n }\n\n compileMarks(group?: string | IGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n });\n }\n\n compileSignal() {\n this.state?.compile();\n }\n\n bindSceneNode(node: IElement) {\n this._sceneNodeMap.set(node.mark.id(), node as IElement);\n }\n\n getSceneNodes() {\n return Array.from(this._sceneNodeMap.values());\n }\n\n getSceneNodeMarks() {\n return this.getSceneNodes().map(node => node.mark as IVGrammarMark);\n }\n\n protected _createMark<T extends IMark>(type: MarkType, name: string, option: Partial<IMarkOption> = {}): T {\n const m = Factory.createMark(type, name, {\n model: this,\n map: this._option.map,\n getCompiler: this.getCompiler,\n globalScale: this._option.globalScale,\n ...option\n }) as T;\n m?.created();\n return m;\n }\n\n /**\n * 数据唯一ID\n * 根据自身动画数据匹配需求设置返回值。\n * 默认返回 undefined 时,根据 VGrammar 默认数据 ID 进行索引和匹配。\n */\n protected _getDataIdKey(): string | ((datum: Datum) => string) | undefined {\n return undefined;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/model/base-model.ts"],"names":[],"mappings":"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","file":"base-model.js","sourcesContent":["import { merge, createID, isValid, cloneDeepSpec } from '../util';\nimport { Event } from '../event/event';\nimport type { IEvent } from '../event/interface';\nimport { LayoutItem } from './layout-item';\nimport type {\n IEffect,\n IModel,\n IModelInitOption,\n IModelOption,\n IModelRenderOption,\n IModelEvaluateOption,\n IModelSpec,\n ILayoutRect\n} from './interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IMark, IMarkOption, IMarkRaw, IMarkStyle, MarkType } from '../mark/interface';\nimport { findColor, isColorKey } from '../theme/color-scheme/util';\nimport type { SeriesTypeEnum } from '../series/interface';\nimport type { Datum, StateValueType, ConvertToMarkStyleSpec, ICommonSpec, StringOrNumber, IRect } from '../typings';\nimport type { ITooltipHelper } from './tooltip-helper';\nimport type { CompilableData } from '../compile/data/compilable-data';\nimport { ModelStateManager } from './model-state-manager';\nimport { PREFIX } from '../constant';\nimport type { IElement, IGroupMark, IMark as IVGrammarMark } from '@visactor/vgrammar';\nimport { isEqual } from '@visactor/vutils';\nimport { Factory } from '../core/factory';\n\nexport abstract class BaseModel extends LayoutItem implements IModel {\n readonly type: string = 'null';\n readonly modelType: string = 'null';\n\n readonly id;\n\n userId: StringOrNumber | undefined = undefined;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // 数据\n protected _data: CompilableData = null;\n getData() {\n return this._data;\n }\n\n protected declare _spec: any;\n getSpec(): any {\n return this._spec;\n }\n\n protected _specIndex: number = 0;\n getSpecIndex() {\n return this._specIndex;\n }\n\n readonly specKey: string = '';\n\n protected _originalSpec: any;\n\n protected declare _option: IModelOption;\n getOption() {\n return this._option;\n }\n\n protected _sceneNodeMap: Map<string, IElement>;\n\n abstract getMarks(): IMark[];\n\n getChart() {\n return this._option.getChart();\n }\n\n /** 状态管理器 */\n state: ModelStateManager;\n getState() {\n return this.state._stateMap;\n }\n\n protected _theme?: any; // 非全局 theme,是对应于具体 model 的 theme 对象\n\n /** for layout diff */\n protected _lastLayoutRect: ILayoutRect = null;\n\n protected _tooltipHelper: ITooltipHelper | undefined;\n get tooltipHelper() {\n return this._tooltipHelper;\n }\n\n // TODO: 有些hack,这个tag是为了避免布局逻辑中,轴的数据变化,又由数据变化触发重新布局\n protected _isLayout: boolean = true;\n\n constructor(spec: IModelSpec, option: IModelOption) {\n super(option);\n this.id = createID();\n this._originalSpec = spec;\n this._spec = cloneDeepSpec(spec);\n this.userId = spec.id;\n this._specIndex = option.specIndex ?? 0;\n this.specKey = option.specKey ?? '';\n this.effect = {};\n this.event = new Event(option.eventDispatcher, option.mode);\n option.map?.set(this.id, this);\n this._sceneNodeMap = new Map();\n this.state = new ModelStateManager({\n ...option,\n stateKeyToSignalName: this.stateKeyToSignalName.bind(this)\n });\n }\n coordinate?: CoordinateType;\n\n protected releaseEvent() {\n this.event.release();\n }\n\n created() {\n this._initTheme();\n this.setAttrFromSpec();\n }\n\n updateState(newState: Record<string, unknown>) {\n return this.state.updateState(newState);\n }\n\n init(option: IModelInitOption) {\n // do nothing\n }\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, ctx: any): void {\n super.onLayoutStart(layoutRect, viewRect, ctx);\n this._isLayout = true;\n }\n onLayoutEnd(ctx: any): void {\n // diff layoutRect\n const layoutRect = this.getLayoutRect();\n if (this._forceLayoutTag || !isEqual(this._lastLayoutRect, layoutRect)) {\n this.updateLayoutAttribute();\n }\n this._forceLayoutTag = false;\n this.getMarks().forEach(m => m.updateLayoutState(true, true));\n this._isLayout = false;\n }\n\n protected _forceLayout() {\n if (this._isLayout) {\n return;\n }\n this._forceLayoutTag = true;\n this._option.globalInstance.getChart()?.setLayoutTag(true);\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption) {\n // do nothing\n }\n abstract onRender(ctx: IModelRenderOption): void;\n\n onDataUpdate() {\n // do nothing\n }\n\n release() {\n this.releaseEvent();\n this._originalSpec = {};\n this._spec = {};\n this.getMarks().forEach(m => m.release());\n this.state.release();\n this._data?.release();\n this._data = this._specIndex = this._sceneNodeMap = null;\n super.release();\n }\n\n updateSpec(spec: any) {\n this._originalSpec = spec;\n this._spec = cloneDeepSpec(spec);\n const result = {\n change: false,\n reMake: false,\n reRender: false,\n reSize: false,\n reCompile: false\n };\n return result;\n }\n\n reInit() {\n this.setAttrFromSpec();\n }\n\n protected _initTheme(theme?: any) {\n const globalTheme = this._option.getTheme?.();\n if (!isValid(globalTheme)) {\n return;\n }\n\n this._theme = theme;\n\n // 将全局的 mark theme 合并进 model theme\n const { mark: markTheme } = globalTheme;\n if (isValid(markTheme)) {\n this.getMarks().forEach(mark => {\n if (isValid(markTheme[mark.type])) {\n this._theme[mark.name] = merge({}, markTheme[mark.type], this._theme[mark.name]);\n }\n });\n }\n }\n\n setCurrentTheme(theme: any, noRender?: boolean) {\n // do nothing\n }\n\n updateLayoutAttribute() {\n // do nothing\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec(this._spec, this._option.getChartViewRect());\n }\n\n /** mark style 内部转换逻辑,转换颜色、角度弧度等 */\n protected _convertMarkStyle<T extends ICommonSpec = ICommonSpec>(\n style: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>\n ): Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>> {\n const newStyle: any = {\n ...style\n };\n\n Object.keys(newStyle).forEach(key => {\n const value = style[key];\n\n // 查询语义化颜色\n if (isColorKey(value)) {\n const globalTheme = this._option.getTheme?.();\n if (globalTheme) {\n const color = findColor(\n globalTheme.colorScheme,\n value,\n this.modelType === 'series' ? (this.type as SeriesTypeEnum) : undefined\n );\n if (color) {\n newStyle[key] = color;\n }\n }\n }\n });\n\n return newStyle;\n }\n\n setMarkStyle<T extends ICommonSpec>(\n mark: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) {\n if (!isValid(mark) || !isValid(style)) {\n return;\n }\n mark.setStyle(this._convertMarkStyle(style), state, level);\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any, key?: string) {\n if (!isValid(mark) || !isValid(spec)) {\n return;\n }\n const { style, state } = spec;\n const newSpec = {\n ...spec\n };\n\n if (style) {\n newSpec.style = this._convertMarkStyle(style);\n }\n if (state) {\n newSpec.state = {};\n Object.keys(state).forEach(key => {\n newSpec.state[key] = this._convertMarkStyle(state[key]);\n });\n }\n mark.initStyleWithSpec(newSpec, key);\n }\n\n protected stateKeyToSignalName(key: string, opt?: string) {\n let name = `${PREFIX}_${this.modelType}_${this.type}_${this.id}_${key}`;\n opt && (name += `_${opt}`);\n return name;\n }\n\n compileData() {\n this._data?.compile();\n }\n\n compileMarks(group?: string | IGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n });\n }\n\n compileSignal() {\n this.state?.compile();\n }\n\n bindSceneNode(node: IElement) {\n this._sceneNodeMap.set(node.mark.id(), node as IElement);\n }\n\n getSceneNodes() {\n return Array.from(this._sceneNodeMap.values());\n }\n\n getSceneNodeMarks() {\n return this.getSceneNodes().map(node => node.mark as IVGrammarMark);\n }\n\n protected _createMark<T extends IMark>(type: MarkType, name: string, option: Partial<IMarkOption> = {}): T {\n const m = Factory.createMark(type, name, {\n model: this,\n map: this._option.map,\n getCompiler: this.getCompiler,\n globalScale: this._option.globalScale,\n ...option\n }) as T;\n m?.created();\n return m;\n }\n\n /**\n * 数据唯一ID\n * 根据自身动画数据匹配需求设置返回值。\n * 默认返回 undefined 时,根据 VGrammar 默认数据 ID 进行索引和匹配。\n */\n protected _getDataIdKey(): string | ((datum: Datum) => string) | undefined {\n return undefined;\n }\n}\n"]}
@@ -38,6 +38,7 @@ export type ILayoutOrientPadding = {
38
38
  };
39
39
  export type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];
40
40
  export interface ILayoutItem {
41
+ directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';
41
42
  layoutClip: boolean;
42
43
  layoutType: ILayoutType;
43
44
  layoutBindRegionID: number | number[];
@@ -1,2 +1,2 @@
1
1
  export { };
2
- //# sourceMappingURL=interface.js.map
2
+ //# sourceMappingURL=interface.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["model/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IBoundsLike } from '@visactor/vutils';\nimport type { DataSet } from '@visactor/vdataset';\nimport type { IEvent, IEventDispatcher } from '../event/interface';\nimport type { IMark, IMarkRaw, IMarkStyle } from '../mark/interface';\nimport type { RenderMode } from '../typings/spec/common';\nimport type { VChart } from '../vchart-all';\nimport type { IData, IElement, IMark as IVGrammarMark } from '@visactor/vgrammar';\nimport type {\n IOrientType,\n IPoint,\n IGroupMarkSpec,\n ConvertToMarkStyleSpec,\n CoordinateType,\n ICommonSpec,\n IRect,\n StringOrNumber\n} from '../typings';\nimport type { ITheme } from '../theme';\nimport type { StateValueType } from '../typings/spec';\nimport type { ITooltipHelper } from './tooltip-helper';\nimport type { ModelStateManager } from './model-state-manager';\nimport type { ICompilable, ICompilableInitOption } from '../compile/interface';\nimport type { ICompilableData } from '../compile/data';\nimport type { IGlobalScale } from '../scale/interface';\nimport type { IChart } from '../chart/interface';\n\nexport type ILayoutNumber = number | IPercent | ((layoutRect: ILayoutRect) => number);\n\nexport interface ILayoutPoint {\n x: number;\n y: number;\n}\n\nexport interface ILayoutRectLevel {\n width: number;\n height: number;\n}\nexport interface ILayoutRect {\n width: number;\n height: number;\n}\n\nexport type IPercent = `${number}%`;\n\nexport type ILayoutPercent = IPercent | number;\n\n/**\n * 相对布局和绝对布局\n * 在相对布局结束后进行二次的绝对布局\n * 绝对布局会只根据 chart 进行相对处理\n */\n\ntype ILayoutType = 'region-relative' | 'region' | 'normal' | 'absolute';\n\nexport type ILayoutOrientPadding = {\n left?: ILayoutNumber;\n right?: ILayoutNumber;\n top?: ILayoutNumber;\n bottom?: ILayoutNumber;\n};\n\n/** 布局 padding的配置 */\nexport type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];\n\n/**\n * 因为这些元素都会继承到各个模块,所以这里统一有前缀避免语意冲突\n */\nexport interface ILayoutItem {\n layoutClip: boolean;\n layoutType: ILayoutType;\n layoutBindRegionID: number | number[];\n layoutOrient: IOrientType;\n\n layoutPaddingLeft: number;\n layoutPaddingTop: number;\n layoutPaddingRight: number;\n layoutPaddingBottom: number;\n\n layoutOffsetX: number;\n layoutOffsetY: number;\n\n // 越大越先处理\n layoutLevel: number;\n\n layoutZIndex: number;\n chartLayoutRect: ILayoutRect;\n\n /** 是否自动缩进 */\n getAutoIndent: () => boolean;\n getLayoutStartPoint: () => ILayoutPoint;\n getLayoutRect: () => ILayoutRect;\n getLastComputeOutBounds: () => IBoundsLike;\n\n getAttributeTag: () => boolean;\n setAttributeTag: (tag: boolean) => boolean;\n\n /**\n * 更新元素布局的 layoutRect 大小,用来更新指定布局空间\n */\n setLayoutRect: (rect: Partial<ILayoutRect>, levelMap?: Partial<ILayoutRectLevel>) => void;\n /**\n * 基于元素内部逻辑计算占位空间,rect表示可用空间\n */\n computeBoundsInRect: (rect: ILayoutRect) => ILayoutRect;\n /**\n * 更新元素布局的起始点位置\n */\n setLayoutStartPosition: (pos: Partial<IPoint>) => void;\n /**\n * 更新绝对布局元素的位置信息\n */\n absoluteLayoutInRect: (rect: IRect) => void;\n /**\n * 元素内部布局信息更新\n */\n updateLayoutAttribute: () => void;\n}\n\nexport interface ILayoutItemSpec {\n /** 当前模块的布局类型,配置为 absolute 的话,当前元素会以图表左上角为原点进行绝对布局 */\n layoutType?: ILayoutType;\n /**\n * 布局顺序等级,等级越大的,越优先布局\n * 比如顶部同时有标题和图例的场景,期望标题先放在顶部,然后放置图例。\n */\n layoutLevel?: number;\n\n // 基础的布局配置\n /** 模块布局位置 */\n orient?: IOrientType;\n /** 模块的布局间距 */\n padding?: ILayoutPaddingSpec;\n /** 模块的布局大小:宽度 */\n width?: ILayoutNumber;\n /** 模块的布局最大宽度 */\n maxWidth?: ILayoutNumber;\n /** 模块的布局最小宽度 */\n minWidth?: ILayoutNumber;\n /** 模块的布局大小:高度 */\n height?: ILayoutNumber;\n /** 模块的布局最大高度 */\n maxHeight?: ILayoutNumber;\n /** 模块的布局最小高度 */\n minHeight?: ILayoutNumber;\n /** 模块的布局位置偏移:X */\n offsetX?: ILayoutNumber;\n /** 模块的布局位置偏移:Y */\n offsetY?: ILayoutNumber;\n\n /** 模块的展示层级,当2个模块重叠时,层级较大的展示在上方 */\n zIndex?: number;\n /** 模块是否裁剪超出布局区域外的绘图内容 */\n clip?: boolean;\n\n // 绝对布局下的对齐设置\n\n /** 模块绝对布局下,与图表左侧的距离。注意仅在 layoutType === 'absolute' 时生效 */\n left?: ILayoutNumber;\n /** 模块绝对布局下,与图表右侧的距离。注意仅在 layoutType === 'absolute' 时生效 */\n right?: ILayoutNumber;\n /** 模块绝对布局下,与图表顶部的距离。注意仅在 layoutType === 'absolute' 时生效 */\n top?: ILayoutNumber;\n /** 模块绝对布局下,与图表底部的距离。注意仅在 layoutType === 'absolute' 时生效 */\n bottom?: ILayoutNumber;\n /** 模块绝对布局下,元素将放置在图表的正中间。注意仅在 layoutType === 'absolute' 时生效,同时将忽略 padding 属性 */\n center?: boolean;\n}\n\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelInitOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelLayoutOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelEvaluateOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelRenderOption {}\n\nexport interface IEffect {\n [key: string]: (e?: any) => any;\n}\n\nexport interface IMarkTreeGroup extends Partial<IMarkStyle<IGroupMarkSpec>> {\n // 必须要有名字\n type: 'group';\n name: string;\n marks: (IMarkTreeGroup | IMark)[];\n // TODO: 这里要不要支持复杂场景,有图形组合的场景,用自定义mark?\n // from?: IData;\n}\n\nexport type IMarkTree = IMarkTreeGroup | IMark | (IMarkTreeGroup | IMark)[];\n\nexport interface IUpdateSpecResult {\n change: boolean;\n reMake: boolean;\n reRender?: boolean;\n reSize?: boolean;\n // TODO: compile 的判断应不应该出现在这里?\n reCompile?: boolean;\n}\n\nexport interface IModelProduct {\n srData: IData;\n}\n\nexport interface IModel extends ICompilable, ILayoutItem {\n readonly modelType: string;\n readonly type: string;\n readonly specKey: string;\n\n readonly id: number;\n\n readonly userId?: StringOrNumber;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // state如果绑定到mark的更新?\n // 组件的 mark 要怎么样描述,才能正确的基于组件状态进行样式更新?\n // 方案1: 组件的 state 关联到 mark 的状态。\n // 方案2: 组件设置 mark 属性,mark自身属性变化时,自己去更新。\n // react state\n readonly state: ModelStateManager;\n getState: () => ModelStateManager['_stateMap'];\n\n coordinate?: CoordinateType;\n\n // 是否要 layout 的 tag\n getAttributeTag: () => boolean;\n setAttributeTag: (tag: boolean) => boolean;\n\n // 初始化参数\n getOption: () => IModelOption;\n\n getMarks: () => IMark[];\n\n getData: () => ICompilableData;\n\n getChart: () => IChart;\n\n //生命周期\n // 创建模块自身内容,设置自身属性\n created: () => void;\n // 用来处理与其他图表模块的联系\n init: (option: IModelInitOption) => void;\n // updateSpec 或者切换主题后,根据新 spec 执行的初始化过程\n reInit: () => void;\n\n onLayoutStart: (layoutRect: IRect, viewRect: ILayoutRect, ctx: IModelLayoutOption) => void;\n onLayoutEnd: (ctx: IModelLayoutOption) => void;\n onEvaluateEnd: (ctx: IModelEvaluateOption) => void;\n onRender: (ctx: IModelRenderOption) => void;\n onDataUpdate: () => void;\n\n updateSpec: (spec: any) => IUpdateSpecResult;\n getSpec?: () => any;\n getSpecIndex: () => number;\n\n setCurrentTheme: (theme: any, noRender?: boolean) => void;\n\n setMarkStyle: <T extends ICommonSpec>(\n mark?: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) => void;\n\n initMarkStyleWithSpec: (mark?: IMark, spec?: any, key?: string) => void;\n\n // tooltip\n tooltipHelper: ITooltipHelper;\n\n /** 绑定场景结点 */\n bindSceneNode: (node: IElement) => void;\n /** 获取场景结点 */\n getSceneNodes: () => IElement[];\n /** 获取场景结点对应 mark */\n getSceneNodeMarks: () => IVGrammarMark[];\n}\n\nexport interface IModelOption extends ICompilableInitOption {\n eventDispatcher: IEventDispatcher;\n dataSet: DataSet;\n map: Map<StringOrNumber, IModel | IMark>;\n mode: RenderMode;\n globalInstance: VChart;\n specIndex?: number;\n specKey?: string;\n\n getTheme?: () => ITheme;\n\n getChartLayoutRect: () => IRect;\n getChartViewRect: () => ILayoutRect;\n\n getChart: () => IChart;\n\n globalScale: IGlobalScale;\n animation: boolean;\n}\n\nexport interface IModelConstructor {\n new (ctx: IModelOption): IModel;\n}\n\nexport type ILayoutModelState = ModelStateManager['_stateMap'];\n\n// TODO: 补充model共有配置\nexport type IModelSpec = ILayoutItemSpec & { id?: StringOrNumber };\n"]}
1
+ {"version":3,"sources":["../src/model/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IBoundsLike } from '@visactor/vutils';\nimport type { DataSet } from '@visactor/vdataset';\nimport type { IEvent, IEventDispatcher } from '../event/interface';\nimport type { IMark, IMarkRaw, IMarkStyle } from '../mark/interface';\nimport type { RenderMode } from '../typings/spec/common';\nimport type { VChart } from '../vchart-all';\nimport type { IData, IElement, IMark as IVGrammarMark } from '@visactor/vgrammar';\nimport type {\n IOrientType,\n IPoint,\n IGroupMarkSpec,\n ConvertToMarkStyleSpec,\n CoordinateType,\n ICommonSpec,\n IRect,\n StringOrNumber\n} from '../typings';\nimport type { ITheme } from '../theme';\nimport type { StateValueType } from '../typings/spec';\nimport type { ITooltipHelper } from './tooltip-helper';\nimport type { ModelStateManager } from './model-state-manager';\nimport type { ICompilable, ICompilableInitOption } from '../compile/interface';\nimport type { ICompilableData } from '../compile/data';\nimport type { IGlobalScale } from '../scale/interface';\nimport type { IChart } from '../chart/interface';\n\nexport type ILayoutNumber = number | IPercent | ((layoutRect: ILayoutRect) => number);\n\nexport interface ILayoutPoint {\n x: number;\n y: number;\n}\n\nexport interface ILayoutRectLevel {\n width: number;\n height: number;\n}\nexport interface ILayoutRect {\n width: number;\n height: number;\n}\n\nexport type IPercent = `${number}%`;\n\nexport type ILayoutPercent = IPercent | number;\n\n/**\n * 相对布局和绝对布局\n * 在相对布局结束后进行二次的绝对布局\n * 绝对布局会只根据 chart 进行相对处理\n */\n\ntype ILayoutType = 'region-relative' | 'region' | 'normal' | 'absolute';\n\nexport type ILayoutOrientPadding = {\n left?: ILayoutNumber;\n right?: ILayoutNumber;\n top?: ILayoutNumber;\n bottom?: ILayoutNumber;\n};\n\n/** 布局 padding的配置 */\nexport type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];\n\n/**\n * 因为这些元素都会继承到各个模块,所以这里统一有前缀避免语意冲突\n */\nexport interface ILayoutItem {\n /**\n * 标记这个布局Item的方向(left->right, right->left, top->bottom, bottom->top)\n */\n directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';\n layoutClip: boolean;\n layoutType: ILayoutType;\n layoutBindRegionID: number | number[];\n layoutOrient: IOrientType;\n\n layoutPaddingLeft: number;\n layoutPaddingTop: number;\n layoutPaddingRight: number;\n layoutPaddingBottom: number;\n\n layoutOffsetX: number;\n layoutOffsetY: number;\n\n // 越大越先处理\n layoutLevel: number;\n\n layoutZIndex: number;\n chartLayoutRect: ILayoutRect;\n\n /** 是否自动缩进 */\n getAutoIndent: () => boolean;\n getLayoutStartPoint: () => ILayoutPoint;\n getLayoutRect: () => ILayoutRect;\n getLastComputeOutBounds: () => IBoundsLike;\n\n getAttributeTag: () => boolean;\n setAttributeTag: (tag: boolean) => boolean;\n\n /**\n * 更新元素布局的 layoutRect 大小,用来更新指定布局空间\n */\n setLayoutRect: (rect: Partial<ILayoutRect>, levelMap?: Partial<ILayoutRectLevel>) => void;\n /**\n * 基于元素内部逻辑计算占位空间,rect表示可用空间\n */\n computeBoundsInRect: (rect: ILayoutRect) => ILayoutRect;\n /**\n * 更新元素布局的起始点位置\n */\n setLayoutStartPosition: (pos: Partial<IPoint>) => void;\n /**\n * 更新绝对布局元素的位置信息\n */\n absoluteLayoutInRect: (rect: IRect) => void;\n /**\n * 元素内部布局信息更新\n */\n updateLayoutAttribute: () => void;\n}\n\nexport interface ILayoutItemSpec {\n /** 当前模块的布局类型,配置为 absolute 的话,当前元素会以图表左上角为原点进行绝对布局 */\n layoutType?: ILayoutType;\n /**\n * 布局顺序等级,等级越大的,越优先布局\n * 比如顶部同时有标题和图例的场景,期望标题先放在顶部,然后放置图例。\n */\n layoutLevel?: number;\n\n // 基础的布局配置\n /** 模块布局位置 */\n orient?: IOrientType;\n /** 模块的布局间距 */\n padding?: ILayoutPaddingSpec;\n /** 模块的布局大小:宽度 */\n width?: ILayoutNumber;\n /** 模块的布局最大宽度 */\n maxWidth?: ILayoutNumber;\n /** 模块的布局最小宽度 */\n minWidth?: ILayoutNumber;\n /** 模块的布局大小:高度 */\n height?: ILayoutNumber;\n /** 模块的布局最大高度 */\n maxHeight?: ILayoutNumber;\n /** 模块的布局最小高度 */\n minHeight?: ILayoutNumber;\n /** 模块的布局位置偏移:X */\n offsetX?: ILayoutNumber;\n /** 模块的布局位置偏移:Y */\n offsetY?: ILayoutNumber;\n\n /** 模块的展示层级,当2个模块重叠时,层级较大的展示在上方 */\n zIndex?: number;\n /** 模块是否裁剪超出布局区域外的绘图内容 */\n clip?: boolean;\n\n // 绝对布局下的对齐设置\n\n /** 模块绝对布局下,与图表左侧的距离。注意仅在 layoutType === 'absolute' 时生效 */\n left?: ILayoutNumber;\n /** 模块绝对布局下,与图表右侧的距离。注意仅在 layoutType === 'absolute' 时生效 */\n right?: ILayoutNumber;\n /** 模块绝对布局下,与图表顶部的距离。注意仅在 layoutType === 'absolute' 时生效 */\n top?: ILayoutNumber;\n /** 模块绝对布局下,与图表底部的距离。注意仅在 layoutType === 'absolute' 时生效 */\n bottom?: ILayoutNumber;\n /** 模块绝对布局下,元素将放置在图表的正中间。注意仅在 layoutType === 'absolute' 时生效,同时将忽略 padding 属性 */\n center?: boolean;\n}\n\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelInitOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelLayoutOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelEvaluateOption {}\n// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IModelRenderOption {}\n\nexport interface IEffect {\n [key: string]: (e?: any) => any;\n}\n\nexport interface IMarkTreeGroup extends Partial<IMarkStyle<IGroupMarkSpec>> {\n // 必须要有名字\n type: 'group';\n name: string;\n marks: (IMarkTreeGroup | IMark)[];\n // TODO: 这里要不要支持复杂场景,有图形组合的场景,用自定义mark?\n // from?: IData;\n}\n\nexport type IMarkTree = IMarkTreeGroup | IMark | (IMarkTreeGroup | IMark)[];\n\nexport interface IUpdateSpecResult {\n change: boolean;\n reMake: boolean;\n reRender?: boolean;\n reSize?: boolean;\n // TODO: compile 的判断应不应该出现在这里?\n reCompile?: boolean;\n}\n\nexport interface IModelProduct {\n srData: IData;\n}\n\nexport interface IModel extends ICompilable, ILayoutItem {\n readonly modelType: string;\n readonly type: string;\n readonly specKey: string;\n\n readonly id: number;\n\n readonly userId?: StringOrNumber;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // state如果绑定到mark的更新?\n // 组件的 mark 要怎么样描述,才能正确的基于组件状态进行样式更新?\n // 方案1: 组件的 state 关联到 mark 的状态。\n // 方案2: 组件设置 mark 属性,mark自身属性变化时,自己去更新。\n // react state\n readonly state: ModelStateManager;\n getState: () => ModelStateManager['_stateMap'];\n\n coordinate?: CoordinateType;\n\n // 是否要 layout 的 tag\n getAttributeTag: () => boolean;\n setAttributeTag: (tag: boolean) => boolean;\n\n // 初始化参数\n getOption: () => IModelOption;\n\n getMarks: () => IMark[];\n\n getData: () => ICompilableData;\n\n getChart: () => IChart;\n\n //生命周期\n // 创建模块自身内容,设置自身属性\n created: () => void;\n // 用来处理与其他图表模块的联系\n init: (option: IModelInitOption) => void;\n // updateSpec 或者切换主题后,根据新 spec 执行的初始化过程\n reInit: () => void;\n\n onLayoutStart: (layoutRect: IRect, viewRect: ILayoutRect, ctx: IModelLayoutOption) => void;\n onLayoutEnd: (ctx: IModelLayoutOption) => void;\n onEvaluateEnd: (ctx: IModelEvaluateOption) => void;\n onRender: (ctx: IModelRenderOption) => void;\n onDataUpdate: () => void;\n\n updateSpec: (spec: any) => IUpdateSpecResult;\n getSpec?: () => any;\n getSpecIndex: () => number;\n\n setCurrentTheme: (theme: any, noRender?: boolean) => void;\n\n setMarkStyle: <T extends ICommonSpec>(\n mark?: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) => void;\n\n initMarkStyleWithSpec: (mark?: IMark, spec?: any, key?: string) => void;\n\n // tooltip\n tooltipHelper: ITooltipHelper;\n\n /** 绑定场景结点 */\n bindSceneNode: (node: IElement) => void;\n /** 获取场景结点 */\n getSceneNodes: () => IElement[];\n /** 获取场景结点对应 mark */\n getSceneNodeMarks: () => IVGrammarMark[];\n}\n\nexport interface IModelOption extends ICompilableInitOption {\n eventDispatcher: IEventDispatcher;\n dataSet: DataSet;\n map: Map<StringOrNumber, IModel | IMark>;\n mode: RenderMode;\n globalInstance: VChart;\n specIndex?: number;\n specKey?: string;\n\n getTheme?: () => ITheme;\n\n getChartLayoutRect: () => IRect;\n getChartViewRect: () => ILayoutRect;\n\n getChart: () => IChart;\n\n globalScale: IGlobalScale;\n animation: boolean;\n}\n\nexport interface IModelConstructor {\n new (ctx: IModelOption): IModel;\n}\n\nexport type ILayoutModelState = ModelStateManager['_stateMap'];\n\n// TODO: 补充model共有配置\nexport type IModelSpec = ILayoutItemSpec & { id?: StringOrNumber };\n"]}
@@ -174,4 +174,4 @@ export class LayoutItem extends CompilableBase {
174
174
  updateLayoutAttribute() {}
175
175
  compile() {}
176
176
  }
177
- //# sourceMappingURL=layout-item.js.map
177
+ //# sourceMappingURL=layout-item.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["model/layout-item.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,WAAW,EAAE,0BAA0B,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjH,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAG7F,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,OAAO,UAAW,SAAQ,cAAc;IAA9C;;QAME,eAAU,GAAY,KAAK,CAAC;QAElB,gBAAW,GAAY,IAAI,CAAC;QAK9B,sBAAiB,GAAiB;YACxC,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;SACL,CAAC;QAMM,gBAAW,GAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAEnD,cAAS,GAAkB,IAAI,CAAC;QAChC,cAAS,GAAkB,IAAI,CAAC;QAChC,eAAU,GAAkB,IAAI,CAAC;QACjC,eAAU,GAAkB,IAAI,CAAC;QAG/B,wBAAmB,GAAqB;YAChD,KAAK,EAAE,yBAAyB;YAChC,MAAM,EAAE,yBAAyB;SAClC,CAAC;QAEQ,qBAAgB,GAAgB,IAAI,CAAC;QACrC,0BAAqB,GAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAIpE,oBAAe,GAAY,KAAK,CAAC;QAE3C,kBAAa,GAAsB,GAAG,EAAE;YACtC,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC,CAAC;QAEF,eAAU,GAA8B,QAAQ,CAAC;QAIjD,kBAAa,GAAgC,MAAM,CAAC;QAOpD,sBAAiB,GAAqC,CAAC,CAAC;QACxD,qBAAgB,GAAoC,CAAC,CAAC;QACtD,uBAAkB,GAAsC,CAAC,CAAC;QAC1D,wBAAmB,GAAuC,CAAC,CAAC;QAE5D,kBAAa,GAAiC,CAAC,CAAC;QAChD,kBAAa,GAAiC,CAAC,CAAC;QAEtC,kBAAa,GAAY,IAAI,CAAC;QASxC,gBAAW,GAA+B,WAAW,CAAC,MAAM,CAAC;QAM7D,iBAAY,GAAgC,CAAC,CAAC;IAkPhD,CAAC;IAhUC,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAKD,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAOD,mBAAmB;QACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAiBD,uBAAuB;QACrB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAYD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,IAAI,YAAY,CAAC,CAA8B;QAC7C,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAUD,eAAe;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,eAAe,CAAC,GAAY;QAC1B,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAWO,2BAA2B,CAAC,IAAqB,EAAE,aAA0B;QAEnF,MAAM,OAAO,GAAG,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;QACxE,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC;QAC3C,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC,KAAK,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC,GAAG,CAAC;QACzC,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1E,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;YACrC,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACnH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAEnH,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,aAAa,CAChB;gBACE,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC;aACxE,EACD;gBACE,KAAK,EAAE,sBAAsB;aAC9B,CACF,CAAC;SACH;QACD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,aAAa,CAChB;gBACE,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC;aAC3E,EACD;gBACE,MAAM,EAAE,sBAAsB;aAC/B,CACF,CAAC;SACH;QAGD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;SACzF;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;SAC1F;IACH,CAAC;IAED,eAAe,CAAC,IAAqB,EAAE,aAA0B;;QAC/D,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,CAAC,UAAU,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,WAAW,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,IAAI,CAAC,YAAY,CAAC;QAErD,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,UAAU,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,IAAI,CAAC,YAAY,CAAC;IACvD,CAAC;IAED,aAAa,CAAC,UAAiB,EAAE,QAAqB,EAAE,IAAS;QAE/D,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAEO,qBAAqB,CAAC,UAAuB;QACnD,MAAM,MAAM,GAAa,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC9E,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC7C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBACzB,MAAM,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAC1B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EACb,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EACpE,UAAU,CACX,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,oBAAoB,CAAC,UAAiB;QACpC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAG5E,MAAM,UAAU,GAAG;YACjB,KAAK,EAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB;YAC1E,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,mBAAmB;SAC7E,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAChB,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC;SAC1B;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACjB,UAAU,CAAC,KAAK,IAAI,KAAK,CAAC;SAC3B;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YACf,UAAU,CAAC,MAAM,IAAI,GAAG,CAAC;SAC1B;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAClB,UAAU,CAAC,MAAM,IAAI,MAAM,CAAC;SAC7B;QAED,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC/B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE;YAC9B,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,GAAG,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;YAC5D,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC;SAC/D;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAChB,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC;aACtD;iBAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACxB,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,GAAG,KAAK,GAAG,KAAK,CAAC;aACnF;YACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;gBACf,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC;aACpD;iBAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACzB,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,GAAG,MAAM,GAAG,MAAM,CAAC;aACvF;SACF;QAED,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAmB;QAC9C,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE;YACpB,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC;SAC9B;QACD,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE;YACpB,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAwB,EAAE,QAAoC;;QACzF,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,mCAAI,yBAAyB,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE;YAC5G,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,mCAAI,yBAAyB,CAAC;SAC/E;QAED,IAAI,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,mCAAI,yBAAyB,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC/G,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;YACjC,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,mCAAI,yBAAyB,CAAC;SACjF;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAe;QAC5C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,yBAAyB,EAAE;YAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;SACrC;QACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,yBAAyB,EAAE;YAC/D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;SACvC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACrF,CAAC;IACD,sBAAsB;QACpB,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9F,CAAC;IAES,qBAAqB,CAAC,MAAmB;QAEjD,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,yBAAyB,EAAE;YAC9D,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;SAChD;QACD,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,yBAAyB,EAAE;YAC/D,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;SACjD;QACD,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,cAAc,CAAC,IAAiB;QACtC,MAAM,MAAM,qBAAQ,IAAI,CAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,sBAAsB,EAAE;YAC3D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;aACvD;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;aACvD;SACF;aAAM;YACL,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;SACvC;QAED,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,sBAAsB,EAAE;YAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBAC3B,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBAC3B,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1D;SACF;aAAM;YACL,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;SACzC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mBAAmB,CAAC,IAAiB;QAEnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAG7B,MAAM,MAAM,qBAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAE,CAAC;QAEzE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAEnC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAClE,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IAQD,YAAY,CAAC,IAAiB,EAAE,SAAsB;QACpD,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IAC3D,CAAC;IAED,qBAAqB;IAErB,CAAC;IAED,OAAO;IAEP,CAAC;CACF","file":"layout-item.js","sourcesContent":["import type { IPadding, IRect, IPoint } from '../typings';\nimport type { IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isNil } from '@visactor/vutils';\nimport { isValidNumber, calcLayoutNumber, calcPadding, normalizeLayoutPaddingSpec, boundsInRect } from '../util';\nimport { LayoutLevel, DEFAULT_LAYOUT_RECT_LEVEL, USER_LAYOUT_RECT_LEVEL } from '../constant';\n\nimport type { ILayoutItem, ILayoutItemSpec, ILayoutPoint, ILayoutRect, ILayoutRectLevel } from './interface';\nimport { CompilableBase } from '../compile/compilable-base';\n\nexport class LayoutItem extends CompilableBase implements ILayoutItem {\n protected _spec: ILayoutItemSpec;\n getSpec(): any {\n return this._spec;\n }\n\n layoutClip: boolean = false;\n\n protected _autoIndent: boolean = true;\n getAutoIndent(): boolean {\n return this._autoIndent;\n }\n\n private _layoutStartPoint: ILayoutPoint = {\n x: 0,\n y: 0\n };\n\n getLayoutStartPoint(): ILayoutPoint {\n return this._layoutStartPoint;\n }\n\n private _layoutRect: ILayoutRect = { width: 0, height: 0 };\n\n private _minWidth: number | null = null;\n private _maxWidth: number | null = null;\n private _minHeight: number | null = null;\n private _maxHeight: number | null = null;\n\n // 处理用户和逻辑的优先级覆盖,让用户也可以设置 rect\n protected _layoutRectLevelMap: ILayoutRectLevel = {\n width: DEFAULT_LAYOUT_RECT_LEVEL,\n height: DEFAULT_LAYOUT_RECT_LEVEL\n };\n /** for layout diff */\n protected _lastComputeRect: ILayoutRect = null;\n protected _lastComputeOutBounds: IBoundsLike = { x1: 0, x2: 0, y1: 0, y2: 0 };\n getLastComputeOutBounds(): IBoundsLike {\n return this._lastComputeOutBounds;\n }\n protected _forceLayoutTag: boolean = false;\n\n getLayoutRect: () => ILayoutRect = () => {\n return this._layoutRect;\n };\n\n layoutType: ILayoutItem['layoutType'] = 'normal';\n\n layoutBindRegionID!: ILayoutItem['layoutBindRegionID'];\n\n _layoutOrient: ILayoutItem['layoutOrient'] = 'left';\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: ILayoutItem['layoutOrient']) {\n this._layoutOrient = v;\n }\n layoutPaddingLeft: ILayoutItem['layoutPaddingLeft'] = 0;\n layoutPaddingTop: ILayoutItem['layoutPaddingTop'] = 0;\n layoutPaddingRight: ILayoutItem['layoutPaddingRight'] = 0;\n layoutPaddingBottom: ILayoutItem['layoutPaddingBottom'] = 0;\n\n layoutOffsetX: ILayoutItem['layoutOffsetX'] = 0;\n layoutOffsetY: ILayoutItem['layoutOffsetY'] = 0;\n\n protected _attributeTag: boolean = true;\n getAttributeTag(): boolean {\n return this._attributeTag;\n }\n setAttributeTag(tag: boolean): boolean {\n this._attributeTag = tag;\n return this._attributeTag;\n }\n\n layoutLevel: ILayoutItem['layoutLevel'] = LayoutLevel.Region;\n\n // layoutAbsoluteLeft: ILayoutItem['layoutAbsoluteLeft'] = Number.NaN;\n // layoutAbsoluteTop: ILayoutItem['layoutAbsoluteTop'] = Number.NaN;\n // layoutAbsoluteRight: ILayoutItem['layoutAbsoluteRight'] = Number.NaN;\n // layoutAbsoluteBottom: ILayoutItem['layoutAbsoluteBottom'] = Number.NaN;\n layoutZIndex: ILayoutItem['layoutZIndex'] = 0;\n chartLayoutRect!: ILayoutRect;\n\n private _setLayoutAttributeFromSpec(spec: ILayoutItemSpec, chartViewRect: ILayoutRect) {\n // 处理 user spec value to px;\n const padding = normalizeLayoutPaddingSpec(spec.padding);\n const paddingValue = calcPadding(padding, chartViewRect, chartViewRect);\n this.layoutPaddingLeft = paddingValue.left;\n this.layoutPaddingRight = paddingValue.right;\n this.layoutPaddingTop = paddingValue.top;\n this.layoutPaddingBottom = paddingValue.bottom;\n this._minHeight = isNil(spec.minHeight)\n ? null\n : calcLayoutNumber(spec.minHeight, chartViewRect.height, chartViewRect);\n this._maxHeight = isNil(spec.maxHeight)\n ? null\n : calcLayoutNumber(spec.maxHeight, chartViewRect.height, chartViewRect);\n this._minWidth = isNil(spec.minWidth) ? null : calcLayoutNumber(spec.minWidth, chartViewRect.width, chartViewRect);\n this._maxWidth = isNil(spec.maxWidth) ? null : calcLayoutNumber(spec.maxWidth, chartViewRect.width, chartViewRect);\n // 处理 user width\n if (spec.width) {\n this.setLayoutRect(\n {\n width: calcLayoutNumber(spec.width, chartViewRect.width, chartViewRect)\n },\n {\n width: USER_LAYOUT_RECT_LEVEL\n }\n );\n }\n if (spec.height) {\n this.setLayoutRect(\n {\n height: calcLayoutNumber(spec.height, chartViewRect.height, chartViewRect)\n },\n {\n height: USER_LAYOUT_RECT_LEVEL\n }\n );\n }\n\n // offset\n if (!isNil(spec.offsetX)) {\n this.layoutOffsetX = calcLayoutNumber(spec.offsetX, chartViewRect.width, chartViewRect);\n }\n if (!isNil(spec.offsetY)) {\n this.layoutOffsetY = calcLayoutNumber(spec.offsetY, chartViewRect.height, chartViewRect);\n }\n }\n\n setAttrFromSpec(spec: ILayoutItemSpec, chartViewRect: ILayoutRect) {\n this.layoutType = spec.layoutType ?? this.layoutType;\n this.layoutLevel = spec.layoutLevel ?? this.layoutLevel;\n this.layoutOrient = spec.orient ?? this.layoutOrient;\n\n this._setLayoutAttributeFromSpec(spec, chartViewRect);\n\n this.layoutClip = spec.clip ?? this.layoutClip;\n this.layoutZIndex = spec.zIndex ?? this.layoutZIndex;\n }\n\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, _ctx: any) {\n // 在 layoutStart 时重新计算 spec 中的布局属性值,确保 resize 后,这些值保持正确的px值。\n this._setLayoutAttributeFromSpec(this._spec, viewRect);\n }\n\n private _getAbsoluteSpecValue(layoutRect: ILayoutRect) {\n const result: IPadding = { top: null, bottom: null, left: null, right: null };\n ['top', 'bottom', 'left', 'right'].forEach(k => {\n if (!isNil(this._spec[k])) {\n result[k] = calcLayoutNumber(\n this._spec[k],\n k === 'top' || k === 'bottom' ? layoutRect.height : layoutRect.width,\n layoutRect\n );\n }\n });\n return result;\n }\n\n absoluteLayoutInRect(layoutRect: IRect) {\n const { top, bottom, left, right } = this._getAbsoluteSpecValue(layoutRect);\n\n // size first\n const layoutSize = {\n width: layoutRect.width - this.layoutPaddingLeft - this.layoutPaddingRight,\n height: layoutRect.height - this.layoutPaddingTop - this.layoutPaddingBottom\n };\n if (!isNil(left)) {\n layoutSize.width -= left;\n }\n if (!isNil(right)) {\n layoutSize.width -= right;\n }\n if (!isNil(top)) {\n layoutSize.height -= top;\n }\n if (!isNil(bottom)) {\n layoutSize.height -= bottom;\n }\n\n this.setLayoutRect(layoutSize);\n const { width, height } = this.computeBoundsInRect(this.getLayoutRect());\n this.setLayoutRect({ width, height });\n const pos = { x: layoutRect.x, y: layoutRect.y };\n if (this._spec.center === true) {\n pos.x = layoutRect.x + layoutRect.width * 0.5 - width * 0.5;\n pos.y = layoutRect.y + layoutRect.height * 0.5 - height * 0.5;\n } else {\n if (!isNil(left)) {\n pos.x = layoutRect.x + left + this.layoutPaddingLeft;\n } else if (!isNil(right)) {\n pos.x = layoutRect.x + layoutRect.width - this.layoutPaddingRight - right - width;\n }\n if (!isNil(top)) {\n pos.y = layoutRect.y + top + this.layoutPaddingTop;\n } else if (!isNil(bottom)) {\n pos.y = layoutRect.y + layoutRect.height - this.layoutPaddingBottom - bottom - height;\n }\n }\n\n this.setLayoutStartPosition(pos);\n }\n\n setLayoutStartPosition({ x, y }: Partial<IPoint>): void {\n if (isValidNumber(x)) {\n this._layoutStartPoint.x = x;\n }\n if (isValidNumber(y)) {\n this._layoutStartPoint.y = y;\n }\n }\n\n setLayoutRect({ width, height }: Partial<ILayoutRect>, levelMap?: Partial<ILayoutRectLevel>) {\n if (isValidNumber(width) && (levelMap?.width ?? DEFAULT_LAYOUT_RECT_LEVEL) >= this._layoutRectLevelMap.width) {\n this._layoutRect.width = width;\n this._layoutRectLevelMap.width = levelMap?.width ?? DEFAULT_LAYOUT_RECT_LEVEL;\n }\n\n if (isValidNumber(height) && (levelMap?.height ?? DEFAULT_LAYOUT_RECT_LEVEL) >= this._layoutRectLevelMap.height) {\n this._layoutRect.height = height;\n this._layoutRectLevelMap.height = levelMap?.height ?? DEFAULT_LAYOUT_RECT_LEVEL;\n }\n\n this._setRectInSpec(this._layoutRect);\n }\n\n mergeLayoutRect({ width, height }: ILayoutRect): ILayoutRect {\n const rect = { width, height };\n if (this._layoutRectLevelMap.width > DEFAULT_LAYOUT_RECT_LEVEL) {\n rect.width = this._layoutRect.width;\n }\n if (this._layoutRectLevelMap.height > DEFAULT_LAYOUT_RECT_LEVEL) {\n rect.height = this._layoutRect.height;\n }\n return rect;\n }\n\n getOrientPosAttribute() {\n return this._layoutOrient === 'bottom' || this._layoutOrient === 'top' ? 'x' : 'y';\n }\n getOrientSizeAttribute() {\n return this._layoutOrient === 'bottom' || this._layoutOrient === 'top' ? 'width' : 'height';\n }\n\n protected changeBoundsBySetting(bounds: IBoundsLike): IBoundsLike {\n // 用户设置了布局元素宽高的场景下,内部布局结果的 bounds 不能直接作为图表布局bounds\n if (this._layoutRectLevelMap.width > DEFAULT_LAYOUT_RECT_LEVEL) {\n bounds.x2 = bounds.x1 + this._layoutRect.width;\n }\n if (this._layoutRectLevelMap.height > DEFAULT_LAYOUT_RECT_LEVEL) {\n bounds.y2 = bounds.y1 + this._layoutRect.height;\n }\n bounds.x1 -= this._layoutStartPoint.x;\n bounds.x2 -= this._layoutStartPoint.x;\n bounds.y1 -= this._layoutStartPoint.y;\n bounds.y2 -= this._layoutStartPoint.y;\n return bounds;\n }\n\n private _setRectInSpec(rect: ILayoutRect) {\n const result = { ...rect };\n if (this._layoutRectLevelMap.width < USER_LAYOUT_RECT_LEVEL) {\n if (!isNil(this._minWidth)) {\n result.width = Math.max(result.width, this._minWidth);\n }\n if (!isNil(this._maxWidth)) {\n result.width = Math.min(result.width, this._maxWidth);\n }\n } else {\n result.width = this._layoutRect.width;\n }\n\n if (this._layoutRectLevelMap.height < USER_LAYOUT_RECT_LEVEL) {\n if (!isNil(this._minHeight)) {\n result.height = Math.max(result.height, this._minHeight);\n }\n if (!isNil(this._maxHeight)) {\n result.height = Math.min(result.height, this._maxHeight);\n }\n } else {\n result.height = this._layoutRect.height;\n }\n return result;\n }\n\n computeBoundsInRect(rect: ILayoutRect): ILayoutRect {\n // 保留布局使用的rect\n this._lastComputeRect = rect;\n // 将布局空间限制到 spec 设置内\n // 避免操作到元素本身的 aabbbounds\n const bounds = { ...this.boundsInRect(this._setRectInSpec(rect), rect) };\n // 用户设置了布局元素宽高的场景下,内部布局结果的 bounds 不能直接作为图表布局bounds\n this.changeBoundsBySetting(bounds);\n // 保留当前模块的布局超出内容,用来处理自动缩进\n if (this._autoIndent) {\n this._lastComputeOutBounds.x1 = Math.ceil(-bounds.x1);\n this._lastComputeOutBounds.x2 = Math.ceil(bounds.x2 - rect.width);\n this._lastComputeOutBounds.y1 = Math.ceil(-bounds.y1);\n this._lastComputeOutBounds.y2 = Math.ceil(bounds.y2 - rect.height);\n }\n // 返回的布局大小也要限制到 spec 设置内\n return this._setRectInSpec(boundsInRect(bounds, rect));\n }\n\n /**\n * 实际bounds预计算方法\n * 需要在布局方法中更新 _lastComputeBounds\n * @param rect 布局最终使用的rect\n * @param fullSpace 布局可以使用的空间,用与部分模块的 position 计算\n */\n boundsInRect(rect: ILayoutRect, fullSpace: ILayoutRect): IBoundsLike {\n return { x1: 0, y1: 0, x2: rect.width, y2: rect.height };\n }\n\n updateLayoutAttribute(): void {\n // do nothing\n }\n\n compile(): void {\n // do nothing\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/model/layout-item.ts"],"names":[],"mappings":"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","file":"layout-item.js","sourcesContent":["import type { IPadding, IRect, IPoint } from '../typings';\nimport type { IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isNil } from '@visactor/vutils';\nimport { isValidNumber, calcLayoutNumber, calcPadding, normalizeLayoutPaddingSpec, boundsInRect } from '../util';\nimport { LayoutLevel, DEFAULT_LAYOUT_RECT_LEVEL, USER_LAYOUT_RECT_LEVEL } from '../constant';\n\nimport type { ILayoutItem, ILayoutItemSpec, ILayoutPoint, ILayoutRect, ILayoutRectLevel } from './interface';\nimport { CompilableBase } from '../compile/compilable-base';\n\nexport class LayoutItem extends CompilableBase implements ILayoutItem {\n protected _spec: ILayoutItemSpec;\n getSpec(): any {\n return this._spec;\n }\n\n layoutClip: boolean = false;\n\n protected _autoIndent: boolean = true;\n getAutoIndent(): boolean {\n return this._autoIndent;\n }\n\n private _layoutStartPoint: ILayoutPoint = {\n x: 0,\n y: 0\n };\n\n getLayoutStartPoint(): ILayoutPoint {\n return this._layoutStartPoint;\n }\n\n private _layoutRect: ILayoutRect = { width: 0, height: 0 };\n\n private _minWidth: number | null = null;\n private _maxWidth: number | null = null;\n private _minHeight: number | null = null;\n private _maxHeight: number | null = null;\n\n // 处理用户和逻辑的优先级覆盖,让用户也可以设置 rect\n protected _layoutRectLevelMap: ILayoutRectLevel = {\n width: DEFAULT_LAYOUT_RECT_LEVEL,\n height: DEFAULT_LAYOUT_RECT_LEVEL\n };\n /** for layout diff */\n protected _lastComputeRect: ILayoutRect = null;\n protected _lastComputeOutBounds: IBoundsLike = { x1: 0, x2: 0, y1: 0, y2: 0 };\n getLastComputeOutBounds(): IBoundsLike {\n return this._lastComputeOutBounds;\n }\n protected _forceLayoutTag: boolean = false;\n\n getLayoutRect: () => ILayoutRect = () => {\n return this._layoutRect;\n };\n\n layoutType: ILayoutItem['layoutType'] = 'normal';\n\n layoutBindRegionID!: ILayoutItem['layoutBindRegionID'];\n\n _layoutOrient: ILayoutItem['layoutOrient'] = 'left';\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: ILayoutItem['layoutOrient']) {\n this._layoutOrient = v;\n }\n layoutPaddingLeft: ILayoutItem['layoutPaddingLeft'] = 0;\n layoutPaddingTop: ILayoutItem['layoutPaddingTop'] = 0;\n layoutPaddingRight: ILayoutItem['layoutPaddingRight'] = 0;\n layoutPaddingBottom: ILayoutItem['layoutPaddingBottom'] = 0;\n\n layoutOffsetX: ILayoutItem['layoutOffsetX'] = 0;\n layoutOffsetY: ILayoutItem['layoutOffsetY'] = 0;\n\n protected _attributeTag: boolean = true;\n getAttributeTag(): boolean {\n return this._attributeTag;\n }\n setAttributeTag(tag: boolean): boolean {\n this._attributeTag = tag;\n return this._attributeTag;\n }\n\n layoutLevel: ILayoutItem['layoutLevel'] = LayoutLevel.Region;\n\n // layoutAbsoluteLeft: ILayoutItem['layoutAbsoluteLeft'] = Number.NaN;\n // layoutAbsoluteTop: ILayoutItem['layoutAbsoluteTop'] = Number.NaN;\n // layoutAbsoluteRight: ILayoutItem['layoutAbsoluteRight'] = Number.NaN;\n // layoutAbsoluteBottom: ILayoutItem['layoutAbsoluteBottom'] = Number.NaN;\n layoutZIndex: ILayoutItem['layoutZIndex'] = 0;\n chartLayoutRect!: ILayoutRect;\n\n private _setLayoutAttributeFromSpec(spec: ILayoutItemSpec, chartViewRect: ILayoutRect) {\n // 处理 user spec value to px;\n const padding = normalizeLayoutPaddingSpec(spec.padding);\n const paddingValue = calcPadding(padding, chartViewRect, chartViewRect);\n this.layoutPaddingLeft = paddingValue.left;\n this.layoutPaddingRight = paddingValue.right;\n this.layoutPaddingTop = paddingValue.top;\n this.layoutPaddingBottom = paddingValue.bottom;\n this._minHeight = isNil(spec.minHeight)\n ? null\n : calcLayoutNumber(spec.minHeight, chartViewRect.height, chartViewRect);\n this._maxHeight = isNil(spec.maxHeight)\n ? null\n : calcLayoutNumber(spec.maxHeight, chartViewRect.height, chartViewRect);\n this._minWidth = isNil(spec.minWidth) ? null : calcLayoutNumber(spec.minWidth, chartViewRect.width, chartViewRect);\n this._maxWidth = isNil(spec.maxWidth) ? null : calcLayoutNumber(spec.maxWidth, chartViewRect.width, chartViewRect);\n // 处理 user width\n if (spec.width) {\n this.setLayoutRect(\n {\n width: calcLayoutNumber(spec.width, chartViewRect.width, chartViewRect)\n },\n {\n width: USER_LAYOUT_RECT_LEVEL\n }\n );\n }\n if (spec.height) {\n this.setLayoutRect(\n {\n height: calcLayoutNumber(spec.height, chartViewRect.height, chartViewRect)\n },\n {\n height: USER_LAYOUT_RECT_LEVEL\n }\n );\n }\n\n // offset\n if (!isNil(spec.offsetX)) {\n this.layoutOffsetX = calcLayoutNumber(spec.offsetX, chartViewRect.width, chartViewRect);\n }\n if (!isNil(spec.offsetY)) {\n this.layoutOffsetY = calcLayoutNumber(spec.offsetY, chartViewRect.height, chartViewRect);\n }\n }\n\n setAttrFromSpec(spec: ILayoutItemSpec, chartViewRect: ILayoutRect) {\n this.layoutType = spec.layoutType ?? this.layoutType;\n this.layoutLevel = spec.layoutLevel ?? this.layoutLevel;\n this.layoutOrient = spec.orient ?? this.layoutOrient;\n\n this._setLayoutAttributeFromSpec(spec, chartViewRect);\n\n this.layoutClip = spec.clip ?? this.layoutClip;\n this.layoutZIndex = spec.zIndex ?? this.layoutZIndex;\n }\n\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, _ctx: any) {\n // 在 layoutStart 时重新计算 spec 中的布局属性值,确保 resize 后,这些值保持正确的px值。\n this._setLayoutAttributeFromSpec(this._spec, viewRect);\n }\n\n private _getAbsoluteSpecValue(layoutRect: ILayoutRect) {\n const result: IPadding = { top: null, bottom: null, left: null, right: null };\n ['top', 'bottom', 'left', 'right'].forEach(k => {\n if (!isNil(this._spec[k])) {\n result[k] = calcLayoutNumber(\n this._spec[k],\n k === 'top' || k === 'bottom' ? layoutRect.height : layoutRect.width,\n layoutRect\n );\n }\n });\n return result;\n }\n\n absoluteLayoutInRect(layoutRect: IRect) {\n const { top, bottom, left, right } = this._getAbsoluteSpecValue(layoutRect);\n\n // size first\n const layoutSize = {\n width: layoutRect.width - this.layoutPaddingLeft - this.layoutPaddingRight,\n height: layoutRect.height - this.layoutPaddingTop - this.layoutPaddingBottom\n };\n if (!isNil(left)) {\n layoutSize.width -= left;\n }\n if (!isNil(right)) {\n layoutSize.width -= right;\n }\n if (!isNil(top)) {\n layoutSize.height -= top;\n }\n if (!isNil(bottom)) {\n layoutSize.height -= bottom;\n }\n\n this.setLayoutRect(layoutSize);\n const { width, height } = this.computeBoundsInRect(this.getLayoutRect());\n this.setLayoutRect({ width, height });\n const pos = { x: layoutRect.x, y: layoutRect.y };\n if (this._spec.center === true) {\n pos.x = layoutRect.x + layoutRect.width * 0.5 - width * 0.5;\n pos.y = layoutRect.y + layoutRect.height * 0.5 - height * 0.5;\n } else {\n if (!isNil(left)) {\n pos.x = layoutRect.x + left + this.layoutPaddingLeft;\n } else if (!isNil(right)) {\n pos.x = layoutRect.x + layoutRect.width - this.layoutPaddingRight - right - width;\n }\n if (!isNil(top)) {\n pos.y = layoutRect.y + top + this.layoutPaddingTop;\n } else if (!isNil(bottom)) {\n pos.y = layoutRect.y + layoutRect.height - this.layoutPaddingBottom - bottom - height;\n }\n }\n\n this.setLayoutStartPosition(pos);\n }\n\n setLayoutStartPosition({ x, y }: Partial<IPoint>): void {\n if (isValidNumber(x)) {\n this._layoutStartPoint.x = x;\n }\n if (isValidNumber(y)) {\n this._layoutStartPoint.y = y;\n }\n }\n\n setLayoutRect({ width, height }: Partial<ILayoutRect>, levelMap?: Partial<ILayoutRectLevel>) {\n if (isValidNumber(width) && (levelMap?.width ?? DEFAULT_LAYOUT_RECT_LEVEL) >= this._layoutRectLevelMap.width) {\n this._layoutRect.width = width;\n this._layoutRectLevelMap.width = levelMap?.width ?? DEFAULT_LAYOUT_RECT_LEVEL;\n }\n\n if (isValidNumber(height) && (levelMap?.height ?? DEFAULT_LAYOUT_RECT_LEVEL) >= this._layoutRectLevelMap.height) {\n this._layoutRect.height = height;\n this._layoutRectLevelMap.height = levelMap?.height ?? DEFAULT_LAYOUT_RECT_LEVEL;\n }\n\n this._setRectInSpec(this._layoutRect);\n }\n\n mergeLayoutRect({ width, height }: ILayoutRect): ILayoutRect {\n const rect = { width, height };\n if (this._layoutRectLevelMap.width > DEFAULT_LAYOUT_RECT_LEVEL) {\n rect.width = this._layoutRect.width;\n }\n if (this._layoutRectLevelMap.height > DEFAULT_LAYOUT_RECT_LEVEL) {\n rect.height = this._layoutRect.height;\n }\n return rect;\n }\n\n getOrientPosAttribute() {\n return this._layoutOrient === 'bottom' || this._layoutOrient === 'top' ? 'x' : 'y';\n }\n getOrientSizeAttribute() {\n return this._layoutOrient === 'bottom' || this._layoutOrient === 'top' ? 'width' : 'height';\n }\n\n protected changeBoundsBySetting(bounds: IBoundsLike): IBoundsLike {\n // 用户设置了布局元素宽高的场景下,内部布局结果的 bounds 不能直接作为图表布局bounds\n if (this._layoutRectLevelMap.width > DEFAULT_LAYOUT_RECT_LEVEL) {\n bounds.x2 = bounds.x1 + this._layoutRect.width;\n }\n if (this._layoutRectLevelMap.height > DEFAULT_LAYOUT_RECT_LEVEL) {\n bounds.y2 = bounds.y1 + this._layoutRect.height;\n }\n bounds.x1 -= this._layoutStartPoint.x;\n bounds.x2 -= this._layoutStartPoint.x;\n bounds.y1 -= this._layoutStartPoint.y;\n bounds.y2 -= this._layoutStartPoint.y;\n return bounds;\n }\n\n private _setRectInSpec(rect: ILayoutRect) {\n const result = { ...rect };\n if (this._layoutRectLevelMap.width < USER_LAYOUT_RECT_LEVEL) {\n if (!isNil(this._minWidth)) {\n result.width = Math.max(result.width, this._minWidth);\n }\n if (!isNil(this._maxWidth)) {\n result.width = Math.min(result.width, this._maxWidth);\n }\n } else {\n result.width = this._layoutRect.width;\n }\n\n if (this._layoutRectLevelMap.height < USER_LAYOUT_RECT_LEVEL) {\n if (!isNil(this._minHeight)) {\n result.height = Math.max(result.height, this._minHeight);\n }\n if (!isNil(this._maxHeight)) {\n result.height = Math.min(result.height, this._maxHeight);\n }\n } else {\n result.height = this._layoutRect.height;\n }\n return result;\n }\n\n computeBoundsInRect(rect: ILayoutRect): ILayoutRect {\n // 保留布局使用的rect\n this._lastComputeRect = rect;\n // 将布局空间限制到 spec 设置内\n // 避免操作到元素本身的 aabbbounds\n const bounds = { ...this.boundsInRect(this._setRectInSpec(rect), rect) };\n // 用户设置了布局元素宽高的场景下,内部布局结果的 bounds 不能直接作为图表布局bounds\n this.changeBoundsBySetting(bounds);\n // 保留当前模块的布局超出内容,用来处理自动缩进\n if (this._autoIndent) {\n this._lastComputeOutBounds.x1 = Math.ceil(-bounds.x1);\n this._lastComputeOutBounds.x2 = Math.ceil(bounds.x2 - rect.width);\n this._lastComputeOutBounds.y1 = Math.ceil(-bounds.y1);\n this._lastComputeOutBounds.y2 = Math.ceil(bounds.y2 - rect.height);\n }\n // 返回的布局大小也要限制到 spec 设置内\n return this._setRectInSpec(boundsInRect(bounds, rect));\n }\n\n /**\n * 实际bounds预计算方法\n * 需要在布局方法中更新 _lastComputeBounds\n * @param rect 布局最终使用的rect\n * @param fullSpace 布局可以使用的空间,用与部分模块的 position 计算\n */\n boundsInRect(rect: ILayoutRect, fullSpace: ILayoutRect): IBoundsLike {\n return { x1: 0, y1: 0, x2: rect.width, y2: rect.height };\n }\n\n updateLayoutAttribute(): void {\n // do nothing\n }\n\n compile(): void {\n // do nothing\n }\n}\n"]}
@@ -11,4 +11,5 @@ export class ModelStateManager extends StateManager {
11
11
  layoutUpdateRank: this._stateMap.layoutUpdateRank
12
12
  });
13
13
  }
14
- }
14
+ }
15
+ //# sourceMappingURL=model-state-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["model/model-state-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IAMvC,mBAAmB;QAE3B,OAAO;YACL,gBAAgB,EAAE,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC;YACtB,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB;SAClD,CAAC,CAAC;IACL,CAAC;CACF","file":"model-state-manager.js","sourcesContent":["import { StateManager } from '../compile/signal/state-manager';\n\nexport class ModelStateManager extends StateManager {\n declare _stateMap: {\n layoutUpdateRank: number;\n [key: string]: unknown;\n };\n\n protected _getDefaultStateMap(): Record<string, unknown> {\n // 模块内的需要动态影响图表的属性\n return {\n layoutUpdateRank: 1\n };\n }\n\n updateLayoutState(): Promise<void> {\n this._stateMap.layoutUpdateRank++;\n return this.updateState({\n layoutUpdateRank: this._stateMap.layoutUpdateRank\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/model/model-state-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IAMvC,mBAAmB;QAE3B,OAAO;YACL,gBAAgB,EAAE,CAAC;SACpB,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC;YACtB,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB;SAClD,CAAC,CAAC;IACL,CAAC;CACF","file":"model-state-manager.js","sourcesContent":["import { StateManager } from '../compile/signal/state-manager';\n\nexport class ModelStateManager extends StateManager {\n declare _stateMap: {\n layoutUpdateRank: number;\n [key: string]: unknown;\n };\n\n protected _getDefaultStateMap(): Record<string, unknown> {\n // 模块内的需要动态影响图表的属性\n return {\n layoutUpdateRank: 1\n };\n }\n\n updateLayoutState(): Promise<void> {\n this._stateMap.layoutUpdateRank++;\n return this.updateState({\n layoutUpdateRank: this._stateMap.layoutUpdateRank\n });\n }\n}\n"]}
@@ -17,4 +17,4 @@ export class BaseTooltipHelper {
17
17
  this.spec = spec, this.activeType = getTooltipActualActiveType(spec);
18
18
  }
19
19
  }
20
- //# sourceMappingURL=tooltip-helper.js.map
20
+ //# sourceMappingURL=tooltip-helper.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["model/tooltip-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AA2B/E,MAAM,OAAO,iBAAiB;IAa5B,mBAAmB;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAY,IAAkB;QAb9B,qBAAgB,GAAG;YACjB,IAAI,EAAE,IAAI,GAAG,EAAkB;YAC/B,SAAS,EAAE,IAAI,GAAG,EAAkB;SACrC,CAAC;QACF,qBAAgB,GAAG;YACjB,IAAI,EAAE,IAAI,GAAG,EAAkB;YAC/B,SAAS,EAAE,IAAI,GAAG,EAAkB;SACrC,CAAC;QAOA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,iBAAiB,CAAC,IAAkB;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACF","file":"tooltip-helper.js","sourcesContent":["import { getTooltipActualActiveType } from '../component/tooltip/utils/common';\nimport type { ITooltipActiveTypeAsKeys, ITooltipSpec } from '../component/tooltip/interface';\nimport type { TooltipActiveType } from '../typings';\nimport type { IModel } from './interface';\nimport type { IMark } from '../mark/interface';\n\nexport type TooltipTrigger = IModel | IMark;\n\nexport interface ITooltipHelper {\n /** tooltip对应spec */\n spec: ITooltipSpec | undefined;\n\n /** 实际生效的tooltip activeType */\n activeType: TooltipActiveType[];\n\n /** 可以响应mark tooltip或者dimension tooltip的对象 */\n activeTriggerSet: ITooltipActiveTypeAsKeys<Set<TooltipTrigger>, Set<TooltipTrigger>>;\n /** 不响应tooltip且不会影响已有tooltip的对象 */\n ignoreTriggerSet: ITooltipActiveTypeAsKeys<Set<TooltipTrigger>, Set<TooltipTrigger>>;\n\n /** 默认tooltip shape type */\n getDefaultShapeType: () => string;\n\n /** 更新spec */\n updateTooltipSpec: (spec: ITooltipSpec) => void;\n}\n\nexport class BaseTooltipHelper implements ITooltipHelper {\n spec: ITooltipSpec | undefined;\n activeType: TooltipActiveType[];\n\n activeTriggerSet = {\n mark: new Set<TooltipTrigger>(),\n dimension: new Set<TooltipTrigger>()\n };\n ignoreTriggerSet = {\n mark: new Set<TooltipTrigger>(),\n dimension: new Set<TooltipTrigger>()\n };\n\n getDefaultShapeType(): string {\n return 'circle';\n }\n\n constructor(spec: ITooltipSpec) {\n this.updateTooltipSpec(spec);\n }\n\n updateTooltipSpec(spec: ITooltipSpec) {\n this.spec = spec;\n this.activeType = getTooltipActualActiveType(spec);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/model/tooltip-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AA2B/E,MAAM,OAAO,iBAAiB;IAa5B,mBAAmB;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,YAAY,IAAkB;QAb9B,qBAAgB,GAAG;YACjB,IAAI,EAAE,IAAI,GAAG,EAAkB;YAC/B,SAAS,EAAE,IAAI,GAAG,EAAkB;SACrC,CAAC;QACF,qBAAgB,GAAG;YACjB,IAAI,EAAE,IAAI,GAAG,EAAkB;YAC/B,SAAS,EAAE,IAAI,GAAG,EAAkB;SACrC,CAAC;QAOA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,iBAAiB,CAAC,IAAkB;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;CACF","file":"tooltip-helper.js","sourcesContent":["import { getTooltipActualActiveType } from '../component/tooltip/utils/common';\nimport type { ITooltipActiveTypeAsKeys, ITooltipSpec } from '../component/tooltip/interface';\nimport type { TooltipActiveType } from '../typings';\nimport type { IModel } from './interface';\nimport type { IMark } from '../mark/interface';\n\nexport type TooltipTrigger = IModel | IMark;\n\nexport interface ITooltipHelper {\n /** tooltip对应spec */\n spec: ITooltipSpec | undefined;\n\n /** 实际生效的tooltip activeType */\n activeType: TooltipActiveType[];\n\n /** 可以响应mark tooltip或者dimension tooltip的对象 */\n activeTriggerSet: ITooltipActiveTypeAsKeys<Set<TooltipTrigger>, Set<TooltipTrigger>>;\n /** 不响应tooltip且不会影响已有tooltip的对象 */\n ignoreTriggerSet: ITooltipActiveTypeAsKeys<Set<TooltipTrigger>, Set<TooltipTrigger>>;\n\n /** 默认tooltip shape type */\n getDefaultShapeType: () => string;\n\n /** 更新spec */\n updateTooltipSpec: (spec: ITooltipSpec) => void;\n}\n\nexport class BaseTooltipHelper implements ITooltipHelper {\n spec: ITooltipSpec | undefined;\n activeType: TooltipActiveType[];\n\n activeTriggerSet = {\n mark: new Set<TooltipTrigger>(),\n dimension: new Set<TooltipTrigger>()\n };\n ignoreTriggerSet = {\n mark: new Set<TooltipTrigger>(),\n dimension: new Set<TooltipTrigger>()\n };\n\n getDefaultShapeType(): string {\n return 'circle';\n }\n\n constructor(spec: ITooltipSpec) {\n this.updateTooltipSpec(spec);\n }\n\n updateTooltipSpec(spec: ITooltipSpec) {\n this.spec = spec;\n this.activeType = getTooltipActualActiveType(spec);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/chart/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IChartPlugin {}\n\nexport interface IChartPluginConstructor {\n readonly type: 'chartPlugin';\n new (): IChartPlugin;\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/chart/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["// TODO:\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface IChartPlugin {}\n\nexport interface IChartPluginConstructor {\n readonly type: 'chartPlugin';\n new (): IChartPlugin;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/components/axis-label-overlap-plugin.ts"],"names":[],"mappings":"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","file":"axis-label-overlap-plugin.js","sourcesContent":["import { isEmpty } from '@visactor/vutils';\nimport type { IText, IGroup, INode } from '@visactor/vrender';\nimport { BasicComponentPlugin } from './basic-plugin';\nimport type { IComponentPlugin, IComponentPluginService } from './interface';\nimport type { IComponent } from '../../component/interface';\nimport { isXAxis } from '../../component/axis/cartesian/util/common';\nimport { peek } from '../../util';\nimport type { CartesianAxis } from '../../component/axis/cartesian';\n\nfunction labelFlush(axisLabels: IText[], axis: IComponent) {\n const { width, height } = axis.getLayoutRect();\n const isX = isXAxis(axis.layoutOrient);\n const first = axisLabels[0];\n const last = peek(axisLabels);\n\n if (isX) {\n const start = 0;\n const end = width;\n const startBound = first.AABBBounds.x1;\n const endBound = last.AABBBounds.x2;\n if (startBound < start) {\n first.setAttributes({\n x: start,\n textAlign: 'left'\n });\n }\n\n if (endBound > end) {\n last.setAttributes({\n x: end,\n textAlign: 'right'\n });\n }\n } else {\n const start = height;\n const end = 0;\n const startBound = first.AABBBounds.y2;\n const endBound = last.AABBBounds.y1;\n\n if (startBound > start) {\n first.setAttributes({\n y: start,\n textBaseline: 'bottom'\n });\n }\n\n if (endBound < end) {\n last.setAttributes({\n y: end,\n textBaseline: 'top'\n });\n }\n }\n}\n\nfunction overlap(axisLabels: IText[], axis: IComponent) {\n const spec = axis.getSpec?.();\n if (!isEmpty(axisLabels)) {\n // 首尾标签向内偏移\n if (spec?.label?.flush) {\n labelFlush(axisLabels, axis);\n }\n }\n}\n\nexport class AxisLabelOverlapPlugin extends BasicComponentPlugin implements IComponentPlugin {\n Name: string = 'AxisLabelOverlapPlugin';\n\n constructor() {\n super(AxisLabelOverlapPlugin.Name);\n }\n\n onDidLayoutVertical(service: IComponentPluginService, axis: CartesianAxis) {\n this._doOverlap(service, axis);\n }\n onDidLayoutHorizontal(service: IComponentPluginService, axis: CartesianAxis) {\n this._doOverlap(service, axis);\n }\n\n private _doOverlap(service: IComponentPluginService, axis: CartesianAxis) {\n const axisComponent = axis.getSceneNodeMarks()[0].getGroupGraphicItem();\n const layer0LabelsContainer = axisComponent.find(\n (node: INode) => node.name === 'axis-label-container-layer-0',\n true\n ) as IGroup;\n const layer1LabelsContainer = axisComponent.find(\n (node: INode) => node.name === 'axis-label-container-layer-1',\n true\n ) as IGroup;\n overlap(layer0LabelsContainer ? (layer0LabelsContainer.getChildren() as IText[]) : [], service.component);\n overlap(layer1LabelsContainer ? (layer1LabelsContainer.getChildren() as IText[]) : [], service.component);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/components/axis-label-overlap-plugin.ts"],"names":[],"mappings":"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","file":"axis-label-overlap-plugin.js","sourcesContent":["import { isEmpty } from '@visactor/vutils';\nimport type { IText, IGroup, INode } from '@visactor/vrender';\nimport { BasicComponentPlugin } from './basic-plugin';\nimport type { IComponentPlugin, IComponentPluginService } from './interface';\nimport type { IComponent } from '../../component/interface';\nimport { isXAxis } from '../../component/axis/cartesian/util/common';\nimport { peek } from '../../util';\nimport type { CartesianAxis } from '../../component/axis/cartesian';\n\nfunction labelFlush(axisLabels: IText[], axis: IComponent) {\n const { width, height } = axis.getLayoutRect();\n const isX = isXAxis(axis.layoutOrient);\n const first = axisLabels[0];\n const last = peek(axisLabels);\n\n if (isX) {\n const start = 0;\n const end = width;\n const startBound = first.AABBBounds.x1;\n const endBound = last.AABBBounds.x2;\n if (startBound < start) {\n first.setAttributes({\n x: start,\n textAlign: 'left'\n });\n }\n\n if (endBound > end) {\n last.setAttributes({\n x: end,\n textAlign: 'right'\n });\n }\n } else {\n const start = height;\n const end = 0;\n const startBound = first.AABBBounds.y2;\n const endBound = last.AABBBounds.y1;\n\n if (startBound > start) {\n first.setAttributes({\n y: start,\n textBaseline: 'bottom'\n });\n }\n\n if (endBound < end) {\n last.setAttributes({\n y: end,\n textBaseline: 'top'\n });\n }\n }\n}\n\nfunction overlap(axisLabels: IText[], axis: IComponent) {\n const spec = axis.getSpec?.();\n if (!isEmpty(axisLabels)) {\n // 首尾标签向内偏移\n if (spec?.label?.flush) {\n labelFlush(axisLabels, axis);\n }\n }\n}\n\nexport class AxisLabelOverlapPlugin extends BasicComponentPlugin implements IComponentPlugin {\n Name: string = 'AxisLabelOverlapPlugin';\n\n constructor() {\n super(AxisLabelOverlapPlugin.Name);\n }\n\n onDidLayoutVertical(service: IComponentPluginService, axis: CartesianAxis) {\n this._doOverlap(service, axis);\n }\n onDidLayoutHorizontal(service: IComponentPluginService, axis: CartesianAxis) {\n this._doOverlap(service, axis);\n }\n\n private _doOverlap(service: IComponentPluginService, axis: CartesianAxis) {\n const axisComponent = axis.getSceneNodeMarks()[0].getGroupGraphicItem();\n const layer0LabelsContainer = axisComponent.find(\n (node: INode) => node.name === 'axis-label-container-layer-0',\n true\n ) as IGroup;\n const layer1LabelsContainer = axisComponent.find(\n (node: INode) => node.name === 'axis-label-container-layer-1',\n true\n ) as IGroup;\n overlap(layer0LabelsContainer ? (layer0LabelsContainer.getChildren() as IText[]) : [], service.component);\n overlap(layer1LabelsContainer ? (layer1LabelsContainer.getChildren() as IText[]) : [], service.component);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/components/basic-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,OAAO,oBAAoB;IAO/B,YAAY,OAAe,oBAAoB,CAAC,IAAI;QAClD,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,OAAgC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF","file":"basic-plugin.js","sourcesContent":["import type { IComponentPlugin, IComponentPluginService } from './interface';\nimport { createID } from '../../util';\n\nexport class BasicComponentPlugin implements IComponentPlugin {\n readonly id: number;\n readonly name: string;\n protected service?: IComponentPluginService;\n\n static Name: string;\n\n constructor(name: string = BasicComponentPlugin.Name) {\n this.id = createID();\n this.name = `${name}_${this.id}`;\n }\n\n onAdd(service: IComponentPluginService): void {\n this.service = service;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/components/basic-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,OAAO,oBAAoB;IAO/B,YAAY,OAAe,oBAAoB,CAAC,IAAI;QAClD,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,OAAgC;QACpC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF","file":"basic-plugin.js","sourcesContent":["import type { IComponentPlugin, IComponentPluginService } from './interface';\nimport { createID } from '../../util';\n\nexport class BasicComponentPlugin implements IComponentPlugin {\n readonly id: number;\n readonly name: string;\n protected service?: IComponentPluginService;\n\n static Name: string;\n\n constructor(name: string = BasicComponentPlugin.Name) {\n this.id = createID();\n this.name = `${name}_${this.id}`;\n }\n\n onAdd(service: IComponentPluginService): void {\n this.service = service;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,eAAe;IACb,sBAAsB;CACvB,CAAC","file":"index.js","sourcesContent":["import { AxisLabelOverlapPlugin } from './axis-label-overlap-plugin';\n\nexport default {\n AxisLabelOverlapPlugin\n};\n"]}
1
+ {"version":3,"sources":["../src/plugin/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,eAAe;IACb,sBAAsB;CACvB,CAAC","file":"index.js","sourcesContent":["import { AxisLabelOverlapPlugin } from './axis-label-overlap-plugin';\n\nexport default {\n AxisLabelOverlapPlugin\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/components/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IComponent } from '../../component/interface';\n\ntype UniqueId = number;\ntype MaybePromise<T> = T | PromiseLike<T>;\ninterface IContext {\n skipLayout: boolean;\n}\n\nexport interface IComponentPlugin {\n id: UniqueId;\n name: string;\n onAdd: (service: IComponentPluginService) => void;\n init?: () => void;\n dispose?: (service: IComponentPluginService) => void;\n onWillLayout?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onDidLayout?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onWillLayoutVertical?: (service: IComponentPluginService, context: IContext, ...params: any) => MaybePromise<void>;\n onWillLayoutHorizontal?: (service: IComponentPluginService, context: IContext, ...params: any) => MaybePromise<void>;\n onDidLayoutVertical?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onDidLayoutHorizontal?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n}\n\nexport interface IComponentPluginService {\n id: UniqueId;\n component: IComponent;\n load: (plugins: IComponentPlugin[]) => void;\n add: (plugins: IComponentPlugin[]) => IComponentPlugin[] | null;\n activate: (plugins: IComponentPlugin[]) => void;\n get: (id: UniqueId) => IComponentPlugin | undefined;\n getAll: () => IComponentPlugin[];\n dispose: (pluginsId: UniqueId) => void;\n disposeAll: () => void;\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/components/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IComponent } from '../../component/interface';\n\ntype UniqueId = number;\ntype MaybePromise<T> = T | PromiseLike<T>;\ninterface IContext {\n skipLayout: boolean;\n}\n\nexport interface IComponentPlugin {\n id: UniqueId;\n name: string;\n onAdd: (service: IComponentPluginService) => void;\n init?: () => void;\n dispose?: (service: IComponentPluginService) => void;\n onWillLayout?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onDidLayout?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onWillLayoutVertical?: (service: IComponentPluginService, context: IContext, ...params: any) => MaybePromise<void>;\n onWillLayoutHorizontal?: (service: IComponentPluginService, context: IContext, ...params: any) => MaybePromise<void>;\n onDidLayoutVertical?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n onDidLayoutHorizontal?: (service: IComponentPluginService, ...params: any) => MaybePromise<void>;\n}\n\nexport interface IComponentPluginService {\n id: UniqueId;\n component: IComponent;\n load: (plugins: IComponentPlugin[]) => void;\n add: (plugins: IComponentPlugin[]) => IComponentPlugin[] | null;\n activate: (plugins: IComponentPlugin[]) => void;\n get: (id: UniqueId) => IComponentPlugin | undefined;\n getAll: () => IComponentPlugin[];\n dispose: (pluginsId: UniqueId) => void;\n disposeAll: () => void;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/components/plugin-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAG5C,MAAM,OAAO,sBAAsB;IAKjC,YAAY,SAAqB;QAHxB,OAAE,GAAW,QAAQ,EAAE,CAAC;QAI/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,OAA2B;QAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,eAAe,GAAuB,EAAE,CAAC;QAC/C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3D,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACxB,OAAO;aACR;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,CAAC,OAA2B;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;YAC/C,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,QAAQ,CAAC,OAA2B;QAClC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACnB,OAAO;SACR;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,SAAiB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,UAAU;QACR,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC5B,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"plugin-service.js","sourcesContent":["import type { IComponentPlugin, IComponentPluginService } from './interface';\nimport { createID, warn } from '../../util';\nimport type { IComponent } from '../../component/interface';\n\nexport class ComponentPluginService implements IComponentPluginService {\n private plugins: IComponentPlugin[];\n readonly id: number = createID();\n component: IComponent;\n\n constructor(component: IComponent) {\n this.plugins = [];\n this.component = component;\n }\n\n add(plugins: IComponentPlugin[]): IComponentPlugin[] | null {\n if (!plugins || plugins.length === 0) {\n return null;\n }\n const unloadedPlugins: IComponentPlugin[] = [];\n plugins.forEach(plugin => {\n const isExist = this.plugins.find(p => p.id === plugin.id);\n if (isExist) {\n warn('不要重复添加相同的plugin');\n return;\n }\n this.plugins.push(plugin);\n unloadedPlugins.push(plugin);\n });\n\n return unloadedPlugins;\n }\n\n load(plugins: IComponentPlugin[]): void {\n const unloadedPlugins = this.add(plugins);\n if (!unloadedPlugins || !unloadedPlugins.length) {\n return;\n }\n\n this.activate(plugins);\n }\n\n activate(plugins: IComponentPlugin[]): void {\n if (!plugins.length) {\n return;\n }\n\n plugins.forEach(plugin => {\n plugin.init && plugin.init();\n });\n }\n\n get(id: number): IComponentPlugin | undefined {\n return this.plugins.find(p => p.id === id);\n }\n\n getAll(): IComponentPlugin[] {\n return this.plugins.slice();\n }\n\n dispose(pluginsId: number): void {\n const plugin = this.plugins.find(p => p.id === pluginsId);\n if (!plugin) {\n return;\n }\n plugin.dispose && plugin.dispose(this);\n }\n\n disposeAll(): void {\n this.plugins.forEach(plugin => {\n plugin.dispose && plugin.dispose(this);\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/components/plugin-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAG5C,MAAM,OAAO,sBAAsB;IAKjC,YAAY,SAAqB;QAHxB,OAAE,GAAW,QAAQ,EAAE,CAAC;QAI/B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,OAA2B;QAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC;SACb;QACD,MAAM,eAAe,GAAuB,EAAE,CAAC;QAC/C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3D,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACxB,OAAO;aACR;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,IAAI,CAAC,OAA2B;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;YAC/C,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,QAAQ,CAAC,OAA2B;QAClC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACnB,OAAO;SACR;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACvB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,SAAiB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,UAAU;QACR,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC5B,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"plugin-service.js","sourcesContent":["import type { IComponentPlugin, IComponentPluginService } from './interface';\nimport { createID, warn } from '../../util';\nimport type { IComponent } from '../../component/interface';\n\nexport class ComponentPluginService implements IComponentPluginService {\n private plugins: IComponentPlugin[];\n readonly id: number = createID();\n component: IComponent;\n\n constructor(component: IComponent) {\n this.plugins = [];\n this.component = component;\n }\n\n add(plugins: IComponentPlugin[]): IComponentPlugin[] | null {\n if (!plugins || plugins.length === 0) {\n return null;\n }\n const unloadedPlugins: IComponentPlugin[] = [];\n plugins.forEach(plugin => {\n const isExist = this.plugins.find(p => p.id === plugin.id);\n if (isExist) {\n warn('不要重复添加相同的plugin');\n return;\n }\n this.plugins.push(plugin);\n unloadedPlugins.push(plugin);\n });\n\n return unloadedPlugins;\n }\n\n load(plugins: IComponentPlugin[]): void {\n const unloadedPlugins = this.add(plugins);\n if (!unloadedPlugins || !unloadedPlugins.length) {\n return;\n }\n\n this.activate(plugins);\n }\n\n activate(plugins: IComponentPlugin[]): void {\n if (!plugins.length) {\n return;\n }\n\n plugins.forEach(plugin => {\n plugin.init && plugin.init();\n });\n }\n\n get(id: number): IComponentPlugin | undefined {\n return this.plugins.find(p => p.id === id);\n }\n\n getAll(): IComponentPlugin[] {\n return this.plugins.slice();\n }\n\n dispose(pluginsId: number): void {\n const plugin = this.plugins.find(p => p.id === pluginsId);\n if (!plugin) {\n return;\n }\n plugin.dispose && plugin.dispose(this);\n }\n\n disposeAll(): void {\n this.plugins.forEach(plugin => {\n plugin.dispose && plugin.dispose(this);\n });\n }\n}\n"]}
@@ -1,2 +1,2 @@
1
1
  export { };
2
- //# sourceMappingURL=interface.js.map
2
+ //# sourceMappingURL=interface.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IChartPlugin, IChartPluginConstructor } from './chart/interface';\nimport type { ISeriesPlugin, ISeriesPluginConstructor } from './series/interface';\nexport type IPlugin = IChartPlugin | ISeriesPlugin;\nexport type IPluginConstructor = IChartPluginConstructor | ISeriesPluginConstructor;\n"]}
1
+ {"version":3,"sources":["../src/plugin/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IChartPlugin, IChartPluginConstructor } from './chart/interface';\nimport type { ISeriesPlugin, ISeriesPluginConstructor } from './series/interface';\nexport type IPlugin = IChartPlugin | ISeriesPlugin;\nexport type IPluginConstructor = IChartPluginConstructor | ISeriesPluginConstructor;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["plugin/series/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { ISeries } from '../../series/interface';\n\nexport interface ISeriesPlugin {\n afterSeriesDataInit?: (series: ISeries) => void;\n afterSeriesMarkInit?: (series: ISeries) => void;\n}\n\nexport interface ISeriesPluginConstructor {\n readonly type: 'seriesPlugin';\n new (): ISeriesPlugin;\n}\n"]}
1
+ {"version":3,"sources":["../src/plugin/series/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { ISeries } from '../../series/interface';\n\nexport interface ISeriesPlugin {\n afterSeriesDataInit?: (series: ISeries) => void;\n afterSeriesMarkInit?: (series: ISeries) => void;\n}\n\nexport interface ISeriesPluginConstructor {\n readonly type: 'seriesPlugin';\n new (): ISeriesPlugin;\n}\n"]}
@@ -1,2 +1,2 @@
1
1
  export { };
2
- //# sourceMappingURL=interface.js.map
2
+ //# sourceMappingURL=interface.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["region/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IMark } from '../mark/interface';\nimport type { IModel, IModelOption, ILayoutItem, ILayoutItemSpec } from '../model/interface';\nimport type { ISeries, SeriesType } from '../series/interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IInteraction } from '../interaction/interface';\nimport type { IProjectionSpec } from '../component/geo/interface';\nimport type { ConvertToMarkStyleSpec, IRectMarkSpec } from '../typings/visual';\nimport type { IAnimate } from '../animation/interface';\nimport type { IGroupMark } from '../mark/group';\nimport type { StringOrNumber } from '../typings';\n\nexport interface IRegion extends IModel, ILayoutItem {\n animate?: IAnimate;\n interaction: IInteraction;\n\n // 系列\n addSeries: (series: ISeries) => void;\n removeSeries: (series: ISeries) => void;\n\n getSeries: (opt?: ISeriesFilter) => ISeries[];\n getSeriesInName: (name: string) => ISeries;\n getSeriesInUserId: (userId: string) => ISeries;\n getSeriesInId: (id: number) => ISeries;\n getSeriesInType: (type: SeriesType) => ISeries[];\n getSeriesInCoordinateType: (type: CoordinateType) => ISeries[];\n getSeriesInDataName: (dataName: string) => ISeries[];\n\n getMarks: () => IMark[];\n getGroupMark: () => IGroupMark;\n}\n\nexport type ISeriesFilter = {\n name?: string;\n userId?: StringOrNumber | StringOrNumber[];\n specIndex?: number | number[];\n id?: number;\n type?: string;\n coordinateType?: CoordinateType;\n dataName?: string;\n};\n\nexport interface IRegionConstructor {\n new (spec: IRegionSpec, ctx: IModelOption): IRegion;\n}\n\nexport interface IRegionSpec extends ILayoutItemSpec {\n id?: StringOrNumber;\n coordinate?: CoordinateType;\n style?: ConvertToMarkStyleSpec<IRectMarkSpec>;\n}\n\nexport interface IGeoRegionSpec extends IRegionSpec {\n coordinate?: 'geo';\n /**\n * 是否可以拖拽\n * @default false\n */\n roam?: boolean;\n /**\n * 数据中的经度字段名\n */\n longitudeField?: string;\n /**\n * 数据中的纬度字段名\n */\n latitudeField?: string;\n /**\n * 地理映射配置\n */\n projection?: Partial<Omit<IProjectionSpec, 'name'>>;\n /**\n * 缩放最大最小倍数限制\n */\n zoomLimit?: {\n min?: number;\n max?: number;\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/region/interface.ts"],"names":[],"mappings":"","file":"interface.js","sourcesContent":["import type { IMark } from '../mark/interface';\nimport type { IModel, IModelOption, ILayoutItem, ILayoutItemSpec } from '../model/interface';\nimport type { ISeries, SeriesType } from '../series/interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IInteraction } from '../interaction/interface';\nimport type { IProjectionSpec } from '../component/geo/interface';\nimport type { ConvertToMarkStyleSpec, IRectMarkSpec } from '../typings/visual';\nimport type { IAnimate } from '../animation/interface';\nimport type { IGroupMark } from '../mark/group';\nimport type { StringOrNumber } from '../typings';\n\nexport interface IRegion extends IModel, ILayoutItem {\n animate?: IAnimate;\n interaction: IInteraction;\n\n // 系列\n addSeries: (series: ISeries) => void;\n removeSeries: (series: ISeries) => void;\n\n getSeries: (opt?: ISeriesFilter) => ISeries[];\n getSeriesInName: (name: string) => ISeries;\n getSeriesInUserId: (userId: string) => ISeries;\n getSeriesInId: (id: number) => ISeries;\n getSeriesInType: (type: SeriesType) => ISeries[];\n getSeriesInCoordinateType: (type: CoordinateType) => ISeries[];\n getSeriesInDataName: (dataName: string) => ISeries[];\n\n getMarks: () => IMark[];\n getGroupMark: () => IGroupMark;\n}\n\nexport type ISeriesFilter = {\n name?: string;\n userId?: StringOrNumber | StringOrNumber[];\n specIndex?: number | number[];\n id?: number;\n type?: string;\n coordinateType?: CoordinateType;\n dataName?: string;\n};\n\nexport interface IRegionConstructor {\n new (spec: IRegionSpec, ctx: IModelOption): IRegion;\n}\n\nexport interface IRegionSpec extends ILayoutItemSpec {\n id?: StringOrNumber;\n coordinate?: CoordinateType;\n style?: ConvertToMarkStyleSpec<IRectMarkSpec>;\n}\n\nexport interface IGeoRegionSpec extends IRegionSpec {\n coordinate?: 'geo';\n /**\n * 是否可以拖拽\n * @default false\n */\n roam?: boolean;\n /**\n * 数据中的经度字段名\n */\n longitudeField?: string;\n /**\n * 数据中的纬度字段名\n */\n latitudeField?: string;\n /**\n * 地理映射配置\n */\n projection?: Partial<Omit<IProjectionSpec, 'name'>>;\n /**\n * 缩放最大最小倍数限制\n */\n zoomLimit?: {\n min?: number;\n max?: number;\n };\n}\n"]}
@@ -195,4 +195,4 @@ export class Region extends BaseModel {
195
195
  }
196
196
 
197
197
  Region.type = "region";
198
- //# sourceMappingURL=region.js.map
198
+ //# sourceMappingURL=region.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["region/region.ts"],"names":[],"mappings":"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","file":"region.js","sourcesContent":["import type { IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isEmpty } from '@visactor/vutils';\nimport type { Element, IElement, IGroupMark as IVGrammarGroupMark, ILayoutOptions, IMark } from '@visactor/vgrammar';\nimport { STATE_VALUE_ENUM_REVERSE } from '../compile/mark/interface';\nimport { DimensionTrigger } from '../interaction/dimension-trigger';\nimport { MarkTypeEnum } from '../mark/interface';\nimport { BaseModel } from '../model/base-model';\nimport type { ISeries } from '../series/interface';\nimport type { IModelOption, ILayoutItem } from '../model/interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IRegion, IRegionSpec } from './interface';\nimport type { IGroupMark } from '../mark/group';\nimport type { IInteraction, ITrigger } from '../interaction/interface';\nimport { Interaction } from '../interaction/interaction';\nimport { AttributeLevel, ChartEvent, LayoutZIndex } from '../constant';\nimport { array, isValid, log } from '../util';\nimport type { IRectMark } from '../mark/rect';\nimport { AnimateManager } from '../animation/animate-manager';\nimport type { IAnimate } from '../animation/interface';\nimport { MarkSet } from '../mark/mark-set';\nimport type { StringOrNumber } from '../typings';\nimport type { IDataZoomSpec, IScrollBarSpec } from '../component/data-zoom';\n\nexport class Region extends BaseModel implements IRegion {\n static type = 'region';\n readonly modelType: string = 'region';\n\n type = Region.type;\n protected _series: ISeries[] = [];\n layoutType: ILayoutItem['layoutType'] = 'region';\n layoutZIndex: number = LayoutZIndex.Region;\n\n animate?: IAnimate;\n\n interaction: IInteraction = new Interaction();\n\n // scrollBar\n // scrollBar.scroll() => lineMark.x += offsetX\n // lineMark.x = lineMark.baseX + offsetX\n // scrollBar. regionGroup.clip = true;\n protected _marks: MarkSet = new MarkSet();\n getMarks() {\n return this._marks.getMarks();\n }\n\n protected _groupMark!: IGroupMark;\n getGroupMark() {\n return this._groupMark;\n }\n\n protected _backgroundMark?: IRectMark;\n protected _foregroundMark?: IRectMark;\n\n protected _trigger: ITrigger;\n\n protected declare _spec: IRegionSpec;\n\n constructor(spec: IRegionSpec, ctx: IModelOption) {\n super(spec, ctx);\n this.userId = spec.id;\n this.coordinate = spec.coordinate ?? 'cartesian';\n if (this._option.animation) {\n this.animate = new AnimateManager({\n getCompiler: ctx.getCompiler\n });\n }\n // 层级应当支持配置\n if (isValid(spec.zIndex)) {\n this.layoutZIndex = spec.zIndex;\n }\n\n if (true) {\n // TODO: remove me\n log('region created');\n }\n }\n\n protected _getClipDefaultValue() {\n const chartSpec = this._option.getChart().getSpec();\n const hasDataZoom = (chartSpec as any).dataZoom?.some?.((entry: IDataZoomSpec) => entry.filterMode === 'axis');\n const hasScrollBar = (chartSpec as any).scrollBar?.some?.((entry: IScrollBarSpec) => entry.filterMode === 'axis');\n\n return hasDataZoom || hasScrollBar ? true : this.layoutClip;\n }\n\n created(): void {\n super.created();\n this._groupMark = this._createMark(MarkTypeEnum.group, 'regionGroup') as IGroupMark;\n this._groupMark.setUserId(this.userId);\n this._groupMark.setZIndex(this.layoutZIndex);\n const clip = this._spec.clip ?? this._getClipDefaultValue();\n this.setMarkStyle(\n this._groupMark,\n {\n x: () => this.getLayoutStartPoint().x,\n y: () => this.getLayoutStartPoint().y,\n width: () => this.getLayoutRect().width,\n height: () => this.getLayoutRect().height,\n clip\n },\n 'normal',\n AttributeLevel.Built_In\n );\n this.setMarkStyle(\n this._groupMark,\n {\n cornerRadius: this._spec.style?.cornerRadius,\n cornerRadiusTopLeft: this._spec.style?.cornerRadiusTopLeft,\n cornerRadiusTopRight: this._spec.style?.cornerRadiusTopRight,\n cornerRadiusBottomLeft: this._spec.style?.cornerRadiusBottomLeft,\n cornerRadiusBottomRight: this._spec.style?.cornerRadiusBottomRight\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n this._marks.addMark(this._groupMark);\n // hack: region 的样式不能设置在groupMark上,因为groupMark目前没有计算dirtyBound,会导致拖影问题\n if (this._spec.style) {\n this._backgroundMark = this._createMark('rect', 'regionBackground') as IRectMark;\n if (clip) {\n this._foregroundMark = this._createMark('rect', 'regionForeground') as IRectMark;\n }\n [this._backgroundMark, this._foregroundMark].forEach(mark => {\n if (mark) {\n mark.created();\n this.setMarkStyle(\n mark,\n {\n width: () => this.getLayoutRect().width,\n height: () => this.getLayoutRect().height\n },\n 'normal',\n AttributeLevel.Built_In\n );\n this._groupMark.addMark(mark);\n }\n });\n this._backgroundMark && this._backgroundMark.setZIndex(0);\n this._foregroundMark && this._foregroundMark.setZIndex(LayoutZIndex.Mark + 1);\n }\n this.createTrigger();\n }\n\n init(option: any) {\n super.init(option);\n if (true) {\n // TODO: remove me\n log('region init');\n }\n this.initMark();\n this.initSeriesDataflow();\n this.initInteraction();\n this.initTrigger();\n }\n initMark() {\n this._initBackgroundMarkStyle();\n this._initForegroundMarkStyle();\n }\n\n protected _initBackgroundMarkStyle() {\n if (this._backgroundMark) {\n this.setMarkStyle(\n this._backgroundMark,\n {\n fillOpacity: this._spec.style?.fill ? 1 : 0,\n ...this._spec.style\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n if (this._spec.clip ?? this._getClipDefaultValue()) {\n this.setMarkStyle(\n this._backgroundMark,\n {\n strokeOpacity: 0\n },\n 'normal',\n AttributeLevel.Built_In\n );\n }\n }\n }\n\n protected _initForegroundMarkStyle() {\n if (this._foregroundMark) {\n this.setMarkStyle(\n this._foregroundMark,\n {\n ...this._spec.style,\n fillOpacity: 0\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n }\n\n updateSpec(spec: any) {\n const originalSpec = this._originalSpec;\n const result = super.updateSpec(spec);\n if ((originalSpec.style && !spec?.style) || (!originalSpec.style && spec?.style)) {\n result.reMake = true;\n return result;\n }\n\n return result;\n }\n\n reInit() {\n super.reInit();\n this._initBackgroundMarkStyle();\n this._initForegroundMarkStyle();\n }\n\n addSeries(s: ISeries) {\n if (!s) {\n return;\n }\n if (!this._series.includes(s)) {\n this._series.push(s);\n }\n }\n\n removeSeries(s: ISeries) {\n if (!s) {\n return;\n }\n const index = this._series.findIndex(s_ => s_ === s);\n if (index >= 0) {\n this._series.splice(index, 1);\n }\n }\n\n getSeries(\n opt: {\n name?: string;\n userId?: StringOrNumber | StringOrNumber[];\n specIndex?: number | number[];\n id?: StringOrNumber;\n type?: string;\n coordinateType?: CoordinateType;\n dataName?: string;\n } = {}\n ): ISeries[] {\n return this._series.filter(\n s =>\n (opt.name ? s?.name === opt.name : true) &&\n (opt.userId && s.userId ? array(opt.userId).includes(s.userId) : true) &&\n (isValid(opt.specIndex) && s.getSpecIndex ? array(opt.specIndex).includes(s.getSpecIndex()) : true) &&\n (opt.id ? s.id === opt.id : true) &&\n (opt.type ? s.type === opt.type : true) &&\n (opt.coordinateType ? s.coordinate === opt.coordinateType : true) &&\n (opt.dataName ? s.getRawData?.()?.name === opt.dataName : true)\n );\n }\n\n getSeriesInName(name: string): ISeries {\n return this.getSeries({ name })[0];\n }\n getSeriesInUserId(userId: string): ISeries {\n return this.getSeries({ userId })[0];\n }\n getSeriesInId(id: number): ISeries {\n return this.getSeries({ id })[0];\n }\n getSeriesInType(type: string): ISeries[] {\n return this.getSeries({ type });\n }\n getSeriesInCoordinateType(coordinateType: CoordinateType): ISeries[] {\n return this.getSeries({ coordinateType });\n }\n getSeriesInDataName(dataName: string): ISeries[] {\n return this.getSeries({ dataName });\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n initSeriesDataflow() {\n const viewDataFilters = this._series.map(s => s.getViewDataFilter()).filter(v => !!v);\n this._option.dataSet.multipleDataViewAddListener(viewDataFilters, 'change', this.seriesDataFilterOver);\n }\n\n seriesDataFilterOver = () => {\n this.event.emit(ChartEvent.regionSeriesDataFilterOver, { model: this });\n this._series.forEach(s => s.reTransformViewData());\n };\n\n release() {\n super.release();\n this._series = [];\n this._marks.clear();\n }\n /** dimension */\n createTrigger() {\n const triggerOptions = {\n ...this._option,\n model: this,\n interaction: this.interaction\n };\n this._trigger = new DimensionTrigger(triggerOptions);\n }\n\n initTrigger() {\n // register all mark\n // trigger check mark enable\n this._series.forEach(s => {\n s.getMarksWithoutRoot().forEach(m => {\n this._trigger.registerMark(m);\n });\n });\n this._trigger.init();\n }\n\n initInteraction() {\n // 注册所有支持反选状态mark\n this._series.forEach(s => {\n s.getMarksWithoutRoot().forEach(m => {\n for (const key in STATE_VALUE_ENUM_REVERSE) {\n if (!isEmpty(m.stateStyle[STATE_VALUE_ENUM_REVERSE[key]])) {\n this.interaction.registerMark(STATE_VALUE_ENUM_REVERSE[key], m);\n }\n }\n });\n });\n }\n\n compileMarks(group?: string | IVGrammarGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n m.getProduct()\n ?.configure({\n context: {\n model: this\n }\n })\n .layout(\n (group: IVGrammarGroupMark, children: IMark[], parentLayoutBounds: IBoundsLike, options?: ILayoutOptions) => {\n // console.log('region mark layout');\n }\n );\n });\n }\n\n compileSignal() {\n super.compileSignal();\n this.animate?.compile();\n }\n\n compile() {\n this.compileSignal();\n this.compileMarks();\n }\n\n bindSceneNode(node: IElement) {\n this._sceneNodeMap.set('default', node as Element);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/region/region.ts"],"names":[],"mappings":"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","file":"region.js","sourcesContent":["import type { IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isEmpty } from '@visactor/vutils';\nimport type { Element, IElement, IGroupMark as IVGrammarGroupMark, ILayoutOptions, IMark } from '@visactor/vgrammar';\nimport { STATE_VALUE_ENUM_REVERSE } from '../compile/mark/interface';\nimport { DimensionTrigger } from '../interaction/dimension-trigger';\nimport { MarkTypeEnum } from '../mark/interface';\nimport { BaseModel } from '../model/base-model';\nimport type { ISeries } from '../series/interface';\nimport type { IModelOption, ILayoutItem } from '../model/interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IRegion, IRegionSpec } from './interface';\nimport type { IGroupMark } from '../mark/group';\nimport type { IInteraction, ITrigger } from '../interaction/interface';\nimport { Interaction } from '../interaction/interaction';\nimport { AttributeLevel, ChartEvent, LayoutZIndex } from '../constant';\nimport { array, isValid, log } from '../util';\nimport type { IRectMark } from '../mark/rect';\nimport { AnimateManager } from '../animation/animate-manager';\nimport type { IAnimate } from '../animation/interface';\nimport { MarkSet } from '../mark/mark-set';\nimport type { StringOrNumber } from '../typings';\nimport type { IDataZoomSpec, IScrollBarSpec } from '../component/data-zoom';\n\nexport class Region extends BaseModel implements IRegion {\n static type = 'region';\n readonly modelType: string = 'region';\n\n type = Region.type;\n protected _series: ISeries[] = [];\n layoutType: ILayoutItem['layoutType'] = 'region';\n layoutZIndex: number = LayoutZIndex.Region;\n\n animate?: IAnimate;\n\n interaction: IInteraction = new Interaction();\n\n // scrollBar\n // scrollBar.scroll() => lineMark.x += offsetX\n // lineMark.x = lineMark.baseX + offsetX\n // scrollBar. regionGroup.clip = true;\n protected _marks: MarkSet = new MarkSet();\n getMarks() {\n return this._marks.getMarks();\n }\n\n protected _groupMark!: IGroupMark;\n getGroupMark() {\n return this._groupMark;\n }\n\n protected _backgroundMark?: IRectMark;\n protected _foregroundMark?: IRectMark;\n\n protected _trigger: ITrigger;\n\n protected declare _spec: IRegionSpec;\n\n constructor(spec: IRegionSpec, ctx: IModelOption) {\n super(spec, ctx);\n this.userId = spec.id;\n this.coordinate = spec.coordinate ?? 'cartesian';\n if (this._option.animation) {\n this.animate = new AnimateManager({\n getCompiler: ctx.getCompiler\n });\n }\n // 层级应当支持配置\n if (isValid(spec.zIndex)) {\n this.layoutZIndex = spec.zIndex;\n }\n\n if (true) {\n // TODO: remove me\n log('region created');\n }\n }\n\n protected _getClipDefaultValue() {\n const chartSpec = this._option.getChart().getSpec();\n const hasDataZoom = (chartSpec as any).dataZoom?.some?.((entry: IDataZoomSpec) => entry.filterMode === 'axis');\n const hasScrollBar = (chartSpec as any).scrollBar?.some?.((entry: IScrollBarSpec) => entry.filterMode === 'axis');\n\n return hasDataZoom || hasScrollBar ? true : this.layoutClip;\n }\n\n created(): void {\n super.created();\n this._groupMark = this._createMark(MarkTypeEnum.group, 'regionGroup') as IGroupMark;\n this._groupMark.setUserId(this.userId);\n this._groupMark.setZIndex(this.layoutZIndex);\n const clip = this._spec.clip ?? this._getClipDefaultValue();\n this.setMarkStyle(\n this._groupMark,\n {\n x: () => this.getLayoutStartPoint().x,\n y: () => this.getLayoutStartPoint().y,\n width: () => this.getLayoutRect().width,\n height: () => this.getLayoutRect().height,\n clip\n },\n 'normal',\n AttributeLevel.Built_In\n );\n this.setMarkStyle(\n this._groupMark,\n {\n cornerRadius: this._spec.style?.cornerRadius,\n cornerRadiusTopLeft: this._spec.style?.cornerRadiusTopLeft,\n cornerRadiusTopRight: this._spec.style?.cornerRadiusTopRight,\n cornerRadiusBottomLeft: this._spec.style?.cornerRadiusBottomLeft,\n cornerRadiusBottomRight: this._spec.style?.cornerRadiusBottomRight\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n this._marks.addMark(this._groupMark);\n // hack: region 的样式不能设置在groupMark上,因为groupMark目前没有计算dirtyBound,会导致拖影问题\n if (this._spec.style) {\n this._backgroundMark = this._createMark('rect', 'regionBackground') as IRectMark;\n if (clip) {\n this._foregroundMark = this._createMark('rect', 'regionForeground') as IRectMark;\n }\n [this._backgroundMark, this._foregroundMark].forEach(mark => {\n if (mark) {\n mark.created();\n this.setMarkStyle(\n mark,\n {\n width: () => this.getLayoutRect().width,\n height: () => this.getLayoutRect().height\n },\n 'normal',\n AttributeLevel.Built_In\n );\n this._groupMark.addMark(mark);\n }\n });\n this._backgroundMark && this._backgroundMark.setZIndex(0);\n this._foregroundMark && this._foregroundMark.setZIndex(LayoutZIndex.Mark + 1);\n }\n this.createTrigger();\n }\n\n init(option: any) {\n super.init(option);\n if (true) {\n // TODO: remove me\n log('region init');\n }\n this.initMark();\n this.initSeriesDataflow();\n this.initInteraction();\n this.initTrigger();\n }\n initMark() {\n this._initBackgroundMarkStyle();\n this._initForegroundMarkStyle();\n }\n\n protected _initBackgroundMarkStyle() {\n if (this._backgroundMark) {\n this.setMarkStyle(\n this._backgroundMark,\n {\n fillOpacity: this._spec.style?.fill ? 1 : 0,\n ...this._spec.style\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n if (this._spec.clip ?? this._getClipDefaultValue()) {\n this.setMarkStyle(\n this._backgroundMark,\n {\n strokeOpacity: 0\n },\n 'normal',\n AttributeLevel.Built_In\n );\n }\n }\n }\n\n protected _initForegroundMarkStyle() {\n if (this._foregroundMark) {\n this.setMarkStyle(\n this._foregroundMark,\n {\n ...this._spec.style,\n fillOpacity: 0\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n }\n\n updateSpec(spec: any) {\n const originalSpec = this._originalSpec;\n const result = super.updateSpec(spec);\n if ((originalSpec.style && !spec?.style) || (!originalSpec.style && spec?.style)) {\n result.reMake = true;\n return result;\n }\n\n return result;\n }\n\n reInit() {\n super.reInit();\n this._initBackgroundMarkStyle();\n this._initForegroundMarkStyle();\n }\n\n addSeries(s: ISeries) {\n if (!s) {\n return;\n }\n if (!this._series.includes(s)) {\n this._series.push(s);\n }\n }\n\n removeSeries(s: ISeries) {\n if (!s) {\n return;\n }\n const index = this._series.findIndex(s_ => s_ === s);\n if (index >= 0) {\n this._series.splice(index, 1);\n }\n }\n\n getSeries(\n opt: {\n name?: string;\n userId?: StringOrNumber | StringOrNumber[];\n specIndex?: number | number[];\n id?: StringOrNumber;\n type?: string;\n coordinateType?: CoordinateType;\n dataName?: string;\n } = {}\n ): ISeries[] {\n return this._series.filter(\n s =>\n (opt.name ? s?.name === opt.name : true) &&\n (opt.userId && s.userId ? array(opt.userId).includes(s.userId) : true) &&\n (isValid(opt.specIndex) && s.getSpecIndex ? array(opt.specIndex).includes(s.getSpecIndex()) : true) &&\n (opt.id ? s.id === opt.id : true) &&\n (opt.type ? s.type === opt.type : true) &&\n (opt.coordinateType ? s.coordinate === opt.coordinateType : true) &&\n (opt.dataName ? s.getRawData?.()?.name === opt.dataName : true)\n );\n }\n\n getSeriesInName(name: string): ISeries {\n return this.getSeries({ name })[0];\n }\n getSeriesInUserId(userId: string): ISeries {\n return this.getSeries({ userId })[0];\n }\n getSeriesInId(id: number): ISeries {\n return this.getSeries({ id })[0];\n }\n getSeriesInType(type: string): ISeries[] {\n return this.getSeries({ type });\n }\n getSeriesInCoordinateType(coordinateType: CoordinateType): ISeries[] {\n return this.getSeries({ coordinateType });\n }\n getSeriesInDataName(dataName: string): ISeries[] {\n return this.getSeries({ dataName });\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n initSeriesDataflow() {\n const viewDataFilters = this._series.map(s => s.getViewDataFilter()).filter(v => !!v);\n this._option.dataSet.multipleDataViewAddListener(viewDataFilters, 'change', this.seriesDataFilterOver);\n }\n\n seriesDataFilterOver = () => {\n this.event.emit(ChartEvent.regionSeriesDataFilterOver, { model: this });\n this._series.forEach(s => s.reTransformViewData());\n };\n\n release() {\n super.release();\n this._series = [];\n this._marks.clear();\n }\n /** dimension */\n createTrigger() {\n const triggerOptions = {\n ...this._option,\n model: this,\n interaction: this.interaction\n };\n this._trigger = new DimensionTrigger(triggerOptions);\n }\n\n initTrigger() {\n // register all mark\n // trigger check mark enable\n this._series.forEach(s => {\n s.getMarksWithoutRoot().forEach(m => {\n this._trigger.registerMark(m);\n });\n });\n this._trigger.init();\n }\n\n initInteraction() {\n // 注册所有支持反选状态mark\n this._series.forEach(s => {\n s.getMarksWithoutRoot().forEach(m => {\n for (const key in STATE_VALUE_ENUM_REVERSE) {\n if (!isEmpty(m.stateStyle[STATE_VALUE_ENUM_REVERSE[key]])) {\n this.interaction.registerMark(STATE_VALUE_ENUM_REVERSE[key], m);\n }\n }\n });\n });\n }\n\n compileMarks(group?: string | IVGrammarGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n m.getProduct()\n ?.configure({\n context: {\n model: this\n }\n })\n .layout(\n (group: IVGrammarGroupMark, children: IMark[], parentLayoutBounds: IBoundsLike, options?: ILayoutOptions) => {\n // console.log('region mark layout');\n }\n );\n });\n }\n\n compileSignal() {\n super.compileSignal();\n this.animate?.compile();\n }\n\n compile() {\n this.compileSignal();\n this.compileMarks();\n }\n\n bindSceneNode(node: IElement) {\n this._sceneNodeMap.set('default', node as Element);\n }\n}\n"]}
@@ -129,4 +129,4 @@ export class GlobalScale {
129
129
  })), markScale;
130
130
  }
131
131
  }
132
- //# sourceMappingURL=global-scale.js.map
132
+ //# sourceMappingURL=global-scale.js.map