@visactor/vchart 1.5.4 → 1.6.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1508) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +32400 -31863
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/animate-manager.d.ts +1 -1
  6. package/cjs/animation/animate-manager.js +4 -4
  7. package/cjs/animation/animate-manager.js.map +1 -1
  8. package/cjs/animation/utils.d.ts +8 -10
  9. package/cjs/animation/utils.js +35 -10
  10. package/cjs/animation/utils.js.map +1 -1
  11. package/cjs/chart/area/area.d.ts +1 -0
  12. package/cjs/chart/area/area.js +10 -5
  13. package/cjs/chart/area/area.js.map +1 -1
  14. package/cjs/chart/bar/bar-3d.js +3 -4
  15. package/cjs/chart/bar/bar-3d.js.map +1 -1
  16. package/cjs/chart/bar/bar.d.ts +1 -0
  17. package/cjs/chart/bar/bar.js +6 -3
  18. package/cjs/chart/bar/bar.js.map +1 -1
  19. package/cjs/chart/base-chart.d.ts +4 -4
  20. package/cjs/chart/base-chart.js +4 -11
  21. package/cjs/chart/base-chart.js.map +1 -1
  22. package/cjs/chart/box-plot/box-plot.js +3 -3
  23. package/cjs/chart/box-plot/box-plot.js.map +1 -1
  24. package/cjs/chart/circle-packing/circle-packing.js +4 -4
  25. package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
  26. package/cjs/chart/common/common.d.ts +1 -0
  27. package/cjs/chart/common/common.js +3 -3
  28. package/cjs/chart/common/common.js.map +1 -1
  29. package/cjs/chart/common/interface.d.ts +1 -1
  30. package/cjs/chart/common/interface.js.map +1 -1
  31. package/cjs/chart/correlation/correlation.js +4 -4
  32. package/cjs/chart/correlation/correlation.js.map +1 -1
  33. package/cjs/chart/funnel/funnel-3d.js +3 -3
  34. package/cjs/chart/funnel/funnel-3d.js.map +1 -1
  35. package/cjs/chart/funnel/funnel.js +3 -3
  36. package/cjs/chart/funnel/funnel.js.map +1 -1
  37. package/cjs/chart/gauge/gauge.js +3 -4
  38. package/cjs/chart/gauge/gauge.js.map +1 -1
  39. package/cjs/chart/heatmap/heatmap.js +3 -3
  40. package/cjs/chart/heatmap/heatmap.js.map +1 -1
  41. package/cjs/chart/histogram/base.d.ts +1 -0
  42. package/cjs/chart/histogram/base.js +3 -0
  43. package/cjs/chart/histogram/base.js.map +1 -1
  44. package/cjs/chart/histogram/histogram-3d.js +3 -3
  45. package/cjs/chart/histogram/histogram-3d.js.map +1 -1
  46. package/cjs/chart/histogram/histogram.js +3 -3
  47. package/cjs/chart/histogram/histogram.js.map +1 -1
  48. package/cjs/chart/line/line.d.ts +1 -0
  49. package/cjs/chart/line/line.js +10 -5
  50. package/cjs/chart/line/line.js.map +1 -1
  51. package/cjs/chart/pie/pie-3d.js +3 -4
  52. package/cjs/chart/pie/pie-3d.js.map +1 -1
  53. package/cjs/chart/pie/pie.js +3 -3
  54. package/cjs/chart/pie/pie.js.map +1 -1
  55. package/cjs/chart/polar/rose-like.d.ts +1 -0
  56. package/cjs/chart/polar/rose-like.js +3 -0
  57. package/cjs/chart/polar/rose-like.js.map +1 -1
  58. package/cjs/chart/progress/circular/circular.d.ts +1 -0
  59. package/cjs/chart/progress/circular/circular.js +2 -1
  60. package/cjs/chart/progress/circular/circular.js.map +1 -1
  61. package/cjs/chart/progress/linear/linear.d.ts +1 -0
  62. package/cjs/chart/progress/linear/linear.js +2 -1
  63. package/cjs/chart/progress/linear/linear.js.map +1 -1
  64. package/cjs/chart/radar/radar.js +7 -5
  65. package/cjs/chart/radar/radar.js.map +1 -1
  66. package/cjs/chart/range-area/range-area.js +3 -3
  67. package/cjs/chart/range-area/range-area.js.map +1 -1
  68. package/cjs/chart/range-column/range-column-3d.js +3 -3
  69. package/cjs/chart/range-column/range-column-3d.js.map +1 -1
  70. package/cjs/chart/range-column/range-column.js +3 -3
  71. package/cjs/chart/range-column/range-column.js.map +1 -1
  72. package/cjs/chart/rose/rose.js +3 -4
  73. package/cjs/chart/rose/rose.js.map +1 -1
  74. package/cjs/chart/sankey/sankey.js +3 -3
  75. package/cjs/chart/sankey/sankey.js.map +1 -1
  76. package/cjs/chart/scatter/scatter.d.ts +1 -0
  77. package/cjs/chart/scatter/scatter.js +4 -3
  78. package/cjs/chart/scatter/scatter.js.map +1 -1
  79. package/cjs/chart/sequence/sequence.js +3 -3
  80. package/cjs/chart/sequence/sequence.js.map +1 -1
  81. package/cjs/chart/stack.js +10 -4
  82. package/cjs/chart/stack.js.map +1 -1
  83. package/cjs/chart/sunburst/sunburst.js +4 -4
  84. package/cjs/chart/sunburst/sunburst.js.map +1 -1
  85. package/cjs/chart/treemap/treemap.js +3 -3
  86. package/cjs/chart/treemap/treemap.js.map +1 -1
  87. package/cjs/chart/waterfall/waterfall.js +3 -3
  88. package/cjs/chart/waterfall/waterfall.js.map +1 -1
  89. package/cjs/chart/word-cloud/base.js +2 -2
  90. package/cjs/chart/word-cloud/base.js.map +1 -1
  91. package/cjs/chart/word-cloud/word-cloud-3d.d.ts +1 -0
  92. package/cjs/chart/word-cloud/word-cloud-3d.js +10 -4
  93. package/cjs/chart/word-cloud/word-cloud-3d.js.map +1 -1
  94. package/cjs/chart/word-cloud/word-cloud.d.ts +1 -0
  95. package/cjs/chart/word-cloud/word-cloud.js +10 -5
  96. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  97. package/cjs/compile/compiler.js +7 -7
  98. package/cjs/compile/compiler.js.map +1 -1
  99. package/cjs/compile/data/compilable-data.d.ts +1 -1
  100. package/cjs/compile/data/compilable-data.js +3 -3
  101. package/cjs/compile/data/compilable-data.js.map +1 -1
  102. package/cjs/compile/grammar-item.js +8 -9
  103. package/cjs/compile/grammar-item.js.map +1 -1
  104. package/cjs/compile/mark/compilable-mark.d.ts +3 -2
  105. package/cjs/compile/mark/compilable-mark.js +25 -21
  106. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  107. package/cjs/compile/mark/mark-state-manager.js +4 -4
  108. package/cjs/compile/mark/mark-state-manager.js.map +1 -1
  109. package/cjs/compile/signal/compilable-signal.d.ts +1 -1
  110. package/cjs/compile/signal/compilable-signal.js +3 -3
  111. package/cjs/compile/signal/compilable-signal.js.map +1 -1
  112. package/cjs/compile/util.js +9 -9
  113. package/cjs/compile/util.js.map +1 -1
  114. package/cjs/component/axis/base-axis.d.ts +3 -3
  115. package/cjs/component/axis/base-axis.js +45 -41
  116. package/cjs/component/axis/base-axis.js.map +1 -1
  117. package/cjs/component/axis/cartesian/axis.d.ts +5 -3
  118. package/cjs/component/axis/cartesian/axis.js +60 -43
  119. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  120. package/cjs/component/axis/cartesian/band-axis.d.ts +2 -3
  121. package/cjs/component/axis/cartesian/band-axis.js +3 -9
  122. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  123. package/cjs/component/axis/cartesian/interface/common.d.ts +2 -6
  124. package/cjs/component/axis/cartesian/interface/common.js.map +1 -1
  125. package/cjs/component/axis/cartesian/interface/spec.js.map +1 -1
  126. package/cjs/component/axis/cartesian/linear-axis.d.ts +2 -2
  127. package/cjs/component/axis/cartesian/linear-axis.js +6 -6
  128. package/cjs/component/axis/cartesian/linear-axis.js.map +1 -1
  129. package/cjs/component/axis/cartesian/log-axis.d.ts +2 -2
  130. package/cjs/component/axis/cartesian/log-axis.js +4 -4
  131. package/cjs/component/axis/cartesian/log-axis.js.map +1 -1
  132. package/cjs/component/axis/cartesian/symlog-axis.d.ts +2 -2
  133. package/cjs/component/axis/cartesian/symlog-axis.js +4 -4
  134. package/cjs/component/axis/cartesian/symlog-axis.js.map +1 -1
  135. package/cjs/component/axis/cartesian/time-axis.d.ts +4 -4
  136. package/cjs/component/axis/cartesian/time-axis.js +17 -15
  137. package/cjs/component/axis/cartesian/time-axis.js.map +1 -1
  138. package/cjs/component/axis/cartesian/util/common.d.ts +1 -1
  139. package/cjs/component/axis/cartesian/util/common.js +4 -4
  140. package/cjs/component/axis/cartesian/util/common.js.map +1 -1
  141. package/cjs/component/axis/interface/common.d.ts +38 -0
  142. package/cjs/component/axis/{interface.js → interface/common.js} +1 -1
  143. package/cjs/component/axis/interface/common.js.map +1 -0
  144. package/cjs/component/axis/interface/index.d.ts +3 -0
  145. package/cjs/component/axis/interface/index.js +22 -0
  146. package/cjs/component/axis/interface/index.js.map +1 -0
  147. package/{esm/component/axis/interface.d.ts → cjs/component/axis/interface/spec.d.ts} +4 -50
  148. package/cjs/component/axis/interface/spec.js +6 -0
  149. package/cjs/component/axis/interface/spec.js.map +1 -0
  150. package/cjs/component/axis/interface/theme.d.ts +15 -0
  151. package/cjs/component/axis/interface/theme.js +6 -0
  152. package/cjs/component/axis/interface/theme.js.map +1 -0
  153. package/cjs/component/axis/mixin/band-axis-mixin.d.ts +5 -0
  154. package/cjs/component/axis/mixin/band-axis-mixin.js +11 -4
  155. package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
  156. package/cjs/component/axis/mixin/linear-axis-mixin.d.ts +1 -2
  157. package/cjs/component/axis/mixin/linear-axis-mixin.js +25 -23
  158. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  159. package/cjs/component/axis/polar/axis.d.ts +7 -4
  160. package/cjs/component/axis/polar/axis.js +48 -40
  161. package/cjs/component/axis/polar/axis.js.map +1 -1
  162. package/cjs/component/axis/polar/band-axis.d.ts +3 -4
  163. package/cjs/component/axis/polar/band-axis.js +6 -11
  164. package/cjs/component/axis/polar/band-axis.js.map +1 -1
  165. package/cjs/component/axis/polar/interface/common.js.map +1 -1
  166. package/cjs/component/axis/polar/linear-axis.d.ts +1 -1
  167. package/cjs/component/axis/polar/linear-axis.js +4 -4
  168. package/cjs/component/axis/polar/linear-axis.js.map +1 -1
  169. package/cjs/component/axis/util.js +10 -10
  170. package/cjs/component/axis/util.js.map +1 -1
  171. package/cjs/component/base/base-component.js +4 -4
  172. package/cjs/component/base/base-component.js.map +1 -1
  173. package/cjs/component/base/util.d.ts +1 -1
  174. package/cjs/component/base/util.js +26 -26
  175. package/cjs/component/base/util.js.map +1 -1
  176. package/cjs/component/brush/brush.d.ts +2 -2
  177. package/cjs/component/brush/brush.js +5 -5
  178. package/cjs/component/brush/brush.js.map +1 -1
  179. package/cjs/component/common/trigger/config.js +3 -3
  180. package/cjs/component/common/trigger/config.js.map +1 -1
  181. package/cjs/component/crosshair/base.d.ts +1 -1
  182. package/cjs/component/crosshair/base.js +12 -12
  183. package/cjs/component/crosshair/base.js.map +1 -1
  184. package/cjs/component/crosshair/cartesian.d.ts +1 -1
  185. package/cjs/component/crosshair/cartesian.js +15 -15
  186. package/cjs/component/crosshair/cartesian.js.map +1 -1
  187. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  188. package/cjs/component/crosshair/interface/theme.d.ts +6 -6
  189. package/cjs/component/crosshair/interface/theme.js.map +1 -1
  190. package/cjs/component/crosshair/polar.d.ts +1 -1
  191. package/cjs/component/crosshair/polar.js +15 -15
  192. package/cjs/component/crosshair/polar.js.map +1 -1
  193. package/cjs/component/crosshair/util.js +11 -9
  194. package/cjs/component/crosshair/util.js.map +1 -1
  195. package/cjs/component/custom-mark/custom-mark.d.ts +2 -2
  196. package/cjs/component/custom-mark/custom-mark.js +4 -4
  197. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  198. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  199. package/cjs/component/data-zoom/data-filter-base-component.js +34 -31
  200. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  201. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  202. package/cjs/component/data-zoom/data-zoom/data-zoom.js +6 -6
  203. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  204. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  205. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +4 -4
  206. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  207. package/cjs/component/geo/geo-coordinate.d.ts +2 -2
  208. package/cjs/component/geo/geo-coordinate.js +14 -14
  209. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  210. package/cjs/component/index.d.ts +26 -22
  211. package/cjs/component/index.js +9 -8
  212. package/cjs/component/index.js.map +1 -1
  213. package/cjs/component/indicator/indicator.d.ts +2 -2
  214. package/cjs/component/indicator/indicator.js +21 -19
  215. package/cjs/component/indicator/indicator.js.map +1 -1
  216. package/cjs/component/label/base-label.d.ts +2 -2
  217. package/cjs/component/label/base-label.js +4 -4
  218. package/cjs/component/label/base-label.js.map +1 -1
  219. package/cjs/component/label/interface.d.ts +6 -2
  220. package/cjs/component/label/interface.js.map +1 -1
  221. package/cjs/component/label/label.d.ts +1 -1
  222. package/cjs/component/label/label.js +10 -10
  223. package/cjs/component/label/label.js.map +1 -1
  224. package/cjs/component/label/totalLabel.d.ts +1 -1
  225. package/cjs/component/label/totalLabel.js +9 -9
  226. package/cjs/component/label/totalLabel.js.map +1 -1
  227. package/cjs/component/label/util.d.ts +13 -4
  228. package/cjs/component/label/util.js +29 -16
  229. package/cjs/component/label/util.js.map +1 -1
  230. package/cjs/component/legend/base-legend.d.ts +3 -3
  231. package/cjs/component/legend/base-legend.js +17 -17
  232. package/cjs/component/legend/base-legend.js.map +1 -1
  233. package/cjs/component/legend/continuous/legend.d.ts +1 -1
  234. package/cjs/component/legend/continuous/legend.js +18 -15
  235. package/cjs/component/legend/continuous/legend.js.map +1 -1
  236. package/cjs/component/legend/continuous/util.js +4 -4
  237. package/cjs/component/legend/continuous/util.js.map +1 -1
  238. package/cjs/component/legend/discrete/legend.d.ts +1 -1
  239. package/cjs/component/legend/discrete/legend.js +16 -13
  240. package/cjs/component/legend/discrete/legend.js.map +1 -1
  241. package/cjs/component/legend/discrete/util.js +7 -7
  242. package/cjs/component/legend/discrete/util.js.map +1 -1
  243. package/cjs/component/legend/util.d.ts +1 -1
  244. package/cjs/component/legend/util.js +2 -2
  245. package/cjs/component/legend/util.js.map +1 -1
  246. package/cjs/component/map-label/component.d.ts +2 -2
  247. package/cjs/component/map-label/component.js +10 -8
  248. package/cjs/component/map-label/component.js.map +1 -1
  249. package/cjs/component/marker/base-marker.d.ts +1 -1
  250. package/cjs/component/marker/base-marker.js +2 -2
  251. package/cjs/component/marker/base-marker.js.map +1 -1
  252. package/cjs/component/marker/interface.d.ts +1 -1
  253. package/cjs/component/marker/interface.js.map +1 -1
  254. package/cjs/component/marker/mark-area/mark-area.d.ts +1 -1
  255. package/cjs/component/marker/mark-area/mark-area.js +7 -5
  256. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  257. package/cjs/component/marker/mark-line/mark-line.d.ts +1 -1
  258. package/cjs/component/marker/mark-line/mark-line.js +9 -7
  259. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  260. package/cjs/component/marker/mark-point/mark-point.d.ts +1 -1
  261. package/cjs/component/marker/mark-point/mark-point.js +7 -5
  262. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  263. package/cjs/component/player/player.d.ts +2 -2
  264. package/cjs/component/player/player.js +9 -9
  265. package/cjs/component/player/player.js.map +1 -1
  266. package/cjs/component/title/title.d.ts +2 -2
  267. package/cjs/component/title/title.js +10 -10
  268. package/cjs/component/title/title.js.map +1 -1
  269. package/cjs/component/title/utils.js.map +1 -1
  270. package/cjs/component/tooltip/handler/base.d.ts +5 -6
  271. package/cjs/component/tooltip/handler/base.js +51 -49
  272. package/cjs/component/tooltip/handler/base.js.map +1 -1
  273. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +14 -3
  274. package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  275. package/cjs/component/tooltip/handler/dom/model/content-column-model.js +5 -5
  276. package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  277. package/cjs/component/tooltip/handler/dom/model/content-model.js +2 -2
  278. package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  279. package/cjs/component/tooltip/handler/dom/model/shape-model.js +15 -13
  280. package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  281. package/cjs/component/tooltip/handler/dom/model/title-model.js +2 -2
  282. package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  283. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js +2 -2
  284. package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  285. package/cjs/component/tooltip/handler/dom/util.js +6 -6
  286. package/cjs/component/tooltip/handler/dom/util.js.map +1 -1
  287. package/cjs/component/tooltip/handler/utils/attribute.js +5 -5
  288. package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
  289. package/cjs/component/tooltip/handler/utils/common.js +9 -9
  290. package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
  291. package/cjs/component/tooltip/handler/utils/compose.js +8 -8
  292. package/cjs/component/tooltip/handler/utils/compose.js.map +1 -1
  293. package/cjs/component/tooltip/handler/utils/get-spec.js +22 -22
  294. package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
  295. package/cjs/component/tooltip/handler/utils/position.d.ts +1 -1
  296. package/cjs/component/tooltip/handler/utils/position.js +17 -17
  297. package/cjs/component/tooltip/handler/utils/position.js.map +1 -1
  298. package/cjs/component/tooltip/interface/spec.d.ts +2 -1
  299. package/cjs/component/tooltip/interface/spec.js.map +1 -1
  300. package/cjs/component/tooltip/processor/base.d.ts +1 -1
  301. package/cjs/component/tooltip/processor/base.js +4 -4
  302. package/cjs/component/tooltip/processor/base.js.map +1 -1
  303. package/cjs/component/tooltip/tooltip.d.ts +6 -4
  304. package/cjs/component/tooltip/tooltip.js +42 -42
  305. package/cjs/component/tooltip/tooltip.js.map +1 -1
  306. package/cjs/component/tooltip/utils/common.js +4 -4
  307. package/cjs/component/tooltip/utils/common.js.map +1 -1
  308. package/cjs/component/tooltip/utils/show-tooltip.js +15 -15
  309. package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
  310. package/cjs/constant/base.js +2 -1
  311. package/cjs/constant/event.d.ts +0 -1
  312. package/cjs/constant/event.js +15 -16
  313. package/cjs/constant/event.js.map +1 -1
  314. package/cjs/constant/scroll-bar.js +1 -2
  315. package/cjs/core/factory.js +2 -2
  316. package/cjs/core/factory.js.map +1 -1
  317. package/cjs/core/index.d.ts +6 -3
  318. package/cjs/core/index.js +13 -3
  319. package/cjs/core/index.js.map +1 -1
  320. package/cjs/core/vchart.js +69 -67
  321. package/cjs/core/vchart.js.map +1 -1
  322. package/cjs/data/initialize.d.ts +10 -0
  323. package/cjs/data/initialize.js +15 -6
  324. package/cjs/data/initialize.js.map +1 -1
  325. package/cjs/data/transforms/add-property.d.ts +4 -0
  326. package/cjs/data/transforms/add-property.js.map +1 -1
  327. package/cjs/data/transforms/aggregation.js +12 -12
  328. package/cjs/data/transforms/aggregation.js.map +1 -1
  329. package/cjs/data/transforms/copy-data-view.js +2 -2
  330. package/cjs/data/transforms/copy-data-view.js.map +1 -1
  331. package/cjs/data/transforms/correlation.js +6 -6
  332. package/cjs/data/transforms/correlation.js.map +1 -1
  333. package/cjs/data/transforms/data-key.d.ts +13 -3
  334. package/cjs/data/transforms/data-key.js +28 -10
  335. package/cjs/data/transforms/data-key.js.map +1 -1
  336. package/cjs/data/transforms/dimension-statistics.d.ts +10 -4
  337. package/cjs/data/transforms/dimension-statistics.js +17 -14
  338. package/cjs/data/transforms/dimension-statistics.js.map +1 -1
  339. package/cjs/data/transforms/drill.js +6 -6
  340. package/cjs/data/transforms/drill.js.map +1 -1
  341. package/cjs/data/transforms/invalid-travel.js +2 -2
  342. package/cjs/data/transforms/invalid-travel.js.map +1 -1
  343. package/cjs/data/transforms/legend-data/continuous/continuous.js +1 -2
  344. package/cjs/data/transforms/legend-data/continuous/continuous.js.map +1 -1
  345. package/cjs/data/transforms/lookup.js +4 -4
  346. package/cjs/data/transforms/lookup.js.map +1 -1
  347. package/cjs/data/transforms/pie.js +3 -3
  348. package/cjs/data/transforms/pie.js.map +1 -1
  349. package/cjs/data/transforms/regression.js +2 -2
  350. package/cjs/data/transforms/regression.js.map +1 -1
  351. package/cjs/data/transforms/stack-split.js +2 -2
  352. package/cjs/data/transforms/stack-split.js.map +1 -1
  353. package/cjs/event/event-dispatcher.js +13 -13
  354. package/cjs/event/event-dispatcher.js.map +1 -1
  355. package/cjs/event/event.js +1 -2
  356. package/cjs/event/events/dimension/base.js +4 -4
  357. package/cjs/event/events/dimension/base.js.map +1 -1
  358. package/cjs/event/events/dimension/dimension-hover.js +4 -4
  359. package/cjs/event/events/dimension/dimension-hover.js.map +1 -1
  360. package/cjs/event/events/dimension/interface.d.ts +1 -1
  361. package/cjs/event/events/dimension/interface.js.map +1 -1
  362. package/cjs/event/events/dimension/util/cartesian.js +3 -3
  363. package/cjs/event/events/dimension/util/cartesian.js.map +1 -1
  364. package/cjs/event/events/dimension/util/common.js +9 -9
  365. package/cjs/event/events/dimension/util/common.js.map +1 -1
  366. package/cjs/event/events/dimension/util/polar.js +7 -7
  367. package/cjs/event/events/dimension/util/polar.js.map +1 -1
  368. package/cjs/index-lark.d.ts +4 -0
  369. package/cjs/index-lark.js +35 -0
  370. package/cjs/index-lark.js.map +1 -0
  371. package/cjs/index-wx.d.ts +4 -0
  372. package/cjs/index-wx.js +36 -0
  373. package/cjs/index-wx.js.map +1 -0
  374. package/cjs/index.d.ts +0 -3
  375. package/cjs/index.js +3 -21
  376. package/cjs/index.js.map +1 -1
  377. package/cjs/interaction/config.d.ts +2 -2
  378. package/cjs/interaction/config.js +4 -3
  379. package/cjs/interaction/config.js.map +1 -1
  380. package/cjs/interaction/dimension-trigger.js.map +1 -1
  381. package/cjs/interaction/drill/drillable.js +7 -7
  382. package/cjs/interaction/drill/drillable.js.map +1 -1
  383. package/cjs/interaction/trigger.js +30 -28
  384. package/cjs/interaction/trigger.js.map +1 -1
  385. package/cjs/interaction/zoom/zoomable.js +5 -5
  386. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  387. package/cjs/layout/grid-layout/grid-layout.js +10 -9
  388. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  389. package/cjs/layout/index.js +1 -1
  390. package/cjs/layout/interface.js +1 -1
  391. package/cjs/layout/layout3d/index.js +3 -3
  392. package/cjs/layout/layout3d/index.js.map +1 -1
  393. package/cjs/mark/arc-3d.d.ts +1 -1
  394. package/cjs/mark/arc-3d.js +2 -2
  395. package/cjs/mark/arc-3d.js.map +1 -1
  396. package/cjs/mark/arc.d.ts +1 -1
  397. package/cjs/mark/arc.js +4 -4
  398. package/cjs/mark/arc.js.map +1 -1
  399. package/cjs/mark/area.d.ts +1 -1
  400. package/cjs/mark/area.js +2 -2
  401. package/cjs/mark/area.js.map +1 -1
  402. package/cjs/mark/base/base-line.js +4 -4
  403. package/cjs/mark/base/base-line.js.map +1 -1
  404. package/cjs/mark/base/base-mark.d.ts +3 -3
  405. package/cjs/mark/base/base-mark.js +85 -44
  406. package/cjs/mark/base/base-mark.js.map +1 -1
  407. package/cjs/mark/box-plot.d.ts +1 -1
  408. package/cjs/mark/box-plot.js +2 -2
  409. package/cjs/mark/box-plot.js.map +1 -1
  410. package/cjs/mark/cell.d.ts +1 -1
  411. package/cjs/mark/cell.js +2 -2
  412. package/cjs/mark/cell.js.map +1 -1
  413. package/cjs/mark/component.d.ts +1 -1
  414. package/cjs/mark/component.js +2 -2
  415. package/cjs/mark/component.js.map +1 -1
  416. package/cjs/mark/group.d.ts +1 -1
  417. package/cjs/mark/group.js +4 -4
  418. package/cjs/mark/group.js.map +1 -1
  419. package/cjs/mark/image.d.ts +1 -1
  420. package/cjs/mark/image.js +2 -2
  421. package/cjs/mark/image.js.map +1 -1
  422. package/cjs/mark/interface/common.d.ts +12 -2
  423. package/cjs/mark/interface/common.js.map +1 -1
  424. package/cjs/mark/label.d.ts +2 -1
  425. package/cjs/mark/label.js +6 -3
  426. package/cjs/mark/label.js.map +1 -1
  427. package/cjs/mark/line.d.ts +1 -1
  428. package/cjs/mark/line.js +3 -3
  429. package/cjs/mark/line.js.map +1 -1
  430. package/cjs/mark/link-path.d.ts +1 -1
  431. package/cjs/mark/link-path.js +2 -2
  432. package/cjs/mark/link-path.js.map +1 -1
  433. package/cjs/mark/path.d.ts +1 -1
  434. package/cjs/mark/path.js +2 -2
  435. package/cjs/mark/path.js.map +1 -1
  436. package/cjs/mark/polygon/polygon.d.ts +1 -1
  437. package/cjs/mark/polygon/polygon.js +2 -2
  438. package/cjs/mark/polygon/polygon.js.map +1 -1
  439. package/cjs/mark/polygon/pyramid-3d.d.ts +1 -1
  440. package/cjs/mark/polygon/pyramid-3d.js +2 -2
  441. package/cjs/mark/polygon/pyramid-3d.js.map +1 -1
  442. package/cjs/mark/progress-arc.d.ts +1 -1
  443. package/cjs/mark/progress-arc.js +3 -3
  444. package/cjs/mark/progress-arc.js.map +1 -1
  445. package/cjs/mark/rect-3d.d.ts +1 -1
  446. package/cjs/mark/rect-3d.js +2 -2
  447. package/cjs/mark/rect-3d.js.map +1 -1
  448. package/cjs/mark/rect.d.ts +1 -1
  449. package/cjs/mark/rect.js +2 -2
  450. package/cjs/mark/rect.js.map +1 -1
  451. package/cjs/mark/ripple.d.ts +1 -1
  452. package/cjs/mark/ripple.js +2 -2
  453. package/cjs/mark/ripple.js.map +1 -1
  454. package/cjs/mark/rule.d.ts +1 -1
  455. package/cjs/mark/rule.js +2 -2
  456. package/cjs/mark/rule.js.map +1 -1
  457. package/cjs/mark/symbol.d.ts +1 -1
  458. package/cjs/mark/symbol.js +2 -2
  459. package/cjs/mark/symbol.js.map +1 -1
  460. package/cjs/mark/text.d.ts +1 -1
  461. package/cjs/mark/text.js +2 -2
  462. package/cjs/mark/text.js.map +1 -1
  463. package/cjs/mark/utils/common.d.ts +1 -1
  464. package/cjs/mark/utils/common.js +2 -2
  465. package/cjs/mark/utils/common.js.map +1 -1
  466. package/cjs/model/base-model.d.ts +2 -15
  467. package/cjs/model/base-model.js +15 -49
  468. package/cjs/model/base-model.js.map +1 -1
  469. package/cjs/model/interface.d.ts +5 -8
  470. package/cjs/model/interface.js.map +1 -1
  471. package/cjs/model/layout-item.js +16 -16
  472. package/cjs/model/layout-item.js.map +1 -1
  473. package/cjs/plugin/components/basic-plugin.js +2 -2
  474. package/cjs/plugin/components/basic-plugin.js.map +1 -1
  475. package/cjs/plugin/components/plugin-service.js +3 -3
  476. package/cjs/plugin/components/plugin-service.js.map +1 -1
  477. package/cjs/region/region.d.ts +2 -3
  478. package/cjs/region/region.js +17 -17
  479. package/cjs/region/region.js.map +1 -1
  480. package/cjs/scale/global-scale.d.ts +3 -3
  481. package/cjs/scale/global-scale.js +41 -30
  482. package/cjs/scale/global-scale.js.map +1 -1
  483. package/cjs/scale/interface.d.ts +1 -2
  484. package/cjs/scale/interface.js.map +1 -1
  485. package/cjs/series/area/animation.js +3 -3
  486. package/cjs/series/area/animation.js.map +1 -1
  487. package/cjs/series/area/area.d.ts +4 -2
  488. package/cjs/series/area/area.js +32 -20
  489. package/cjs/series/area/area.js.map +1 -1
  490. package/cjs/series/area/constant.js +4 -4
  491. package/cjs/series/area/constant.js.map +1 -1
  492. package/cjs/series/area/interface.d.ts +6 -5
  493. package/cjs/series/area/interface.js.map +1 -1
  494. package/cjs/series/area/tooltip-helpter.js +3 -3
  495. package/cjs/series/area/tooltip-helpter.js.map +1 -1
  496. package/cjs/series/bar/animation.js +3 -3
  497. package/cjs/series/bar/animation.js.map +1 -1
  498. package/cjs/series/bar/bar-3d.d.ts +1 -1
  499. package/cjs/series/bar/bar-3d.js +4 -4
  500. package/cjs/series/bar/bar-3d.js.map +1 -1
  501. package/cjs/series/bar/bar.d.ts +3 -3
  502. package/cjs/series/bar/bar.js +44 -32
  503. package/cjs/series/bar/bar.js.map +1 -1
  504. package/cjs/series/bar/constant.js +10 -10
  505. package/cjs/series/bar/constant.js.map +1 -1
  506. package/cjs/series/bar/interface.d.ts +5 -4
  507. package/cjs/series/bar/interface.js.map +1 -1
  508. package/cjs/series/base/base-series.d.ts +17 -10
  509. package/cjs/series/base/base-series.js +86 -100
  510. package/cjs/series/base/base-series.js.map +1 -1
  511. package/cjs/series/base/constant.js +4 -4
  512. package/cjs/series/base/constant.js.map +1 -1
  513. package/cjs/series/base/series-data.d.ts +1 -1
  514. package/cjs/series/base/series-data.js +2 -2
  515. package/cjs/series/base/series-data.js.map +1 -1
  516. package/cjs/series/base/tooltip-helper.js +10 -10
  517. package/cjs/series/base/tooltip-helper.js.map +1 -1
  518. package/cjs/series/box-plot/box-plot.js +27 -24
  519. package/cjs/series/box-plot/box-plot.js.map +1 -1
  520. package/cjs/series/box-plot/constant.js +7 -7
  521. package/cjs/series/box-plot/constant.js.map +1 -1
  522. package/cjs/series/box-plot/tooltip-helper.js +2 -2
  523. package/cjs/series/box-plot/tooltip-helper.js.map +1 -1
  524. package/cjs/series/cartesian/cartesian.d.ts +2 -1
  525. package/cjs/series/cartesian/cartesian.js +14 -14
  526. package/cjs/series/cartesian/cartesian.js.map +1 -1
  527. package/cjs/series/circle-packing/circle-packing.d.ts +1 -1
  528. package/cjs/series/circle-packing/circle-packing.js +11 -11
  529. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  530. package/cjs/series/circle-packing/constant.js +4 -4
  531. package/cjs/series/circle-packing/constant.js.map +1 -1
  532. package/cjs/series/correlation/constant.js +13 -13
  533. package/cjs/series/correlation/constant.js.map +1 -1
  534. package/cjs/series/correlation/correlation.d.ts +1 -3
  535. package/cjs/series/correlation/correlation.js +13 -11
  536. package/cjs/series/correlation/correlation.js.map +1 -1
  537. package/cjs/series/correlation/interface.js.map +1 -1
  538. package/cjs/series/dot/constant.js +22 -22
  539. package/cjs/series/dot/constant.js.map +1 -1
  540. package/cjs/series/dot/dot.js +16 -15
  541. package/cjs/series/dot/dot.js.map +1 -1
  542. package/cjs/series/dot/tooltip-helper.js +2 -2
  543. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  544. package/cjs/series/funnel/constant.js +31 -31
  545. package/cjs/series/funnel/constant.js.map +1 -1
  546. package/cjs/series/funnel/funnel-3d.d.ts +1 -1
  547. package/cjs/series/funnel/funnel-3d.js +5 -5
  548. package/cjs/series/funnel/funnel-3d.js.map +1 -1
  549. package/cjs/series/funnel/funnel.d.ts +2 -5
  550. package/cjs/series/funnel/funnel.js +18 -20
  551. package/cjs/series/funnel/funnel.js.map +1 -1
  552. package/cjs/series/gauge/constant.js +16 -16
  553. package/cjs/series/gauge/constant.js.map +1 -1
  554. package/cjs/series/gauge/gauge-pointer.d.ts +1 -1
  555. package/cjs/series/gauge/gauge-pointer.js +7 -7
  556. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  557. package/cjs/series/gauge/gauge.js +5 -5
  558. package/cjs/series/gauge/gauge.js.map +1 -1
  559. package/cjs/series/geo/geo.d.ts +0 -3
  560. package/cjs/series/geo/geo.js +6 -9
  561. package/cjs/series/geo/geo.js.map +1 -1
  562. package/cjs/series/heatmap/constant.js +7 -7
  563. package/cjs/series/heatmap/constant.js.map +1 -1
  564. package/cjs/series/heatmap/heatmap.js +5 -5
  565. package/cjs/series/heatmap/heatmap.js.map +1 -1
  566. package/cjs/series/index.d.ts +1 -0
  567. package/cjs/series/index.js +16 -1
  568. package/cjs/series/index.js.map +1 -1
  569. package/cjs/series/interface/common.d.ts +1 -1
  570. package/cjs/series/interface/common.js.map +1 -1
  571. package/cjs/series/interface/series.d.ts +7 -1
  572. package/cjs/series/interface/series.js.map +1 -1
  573. package/cjs/series/interface/theme.d.ts +52 -8
  574. package/cjs/series/interface/theme.js +20 -2
  575. package/cjs/series/interface/theme.js.map +1 -1
  576. package/cjs/series/line/animation.js +3 -3
  577. package/cjs/series/line/animation.js.map +1 -1
  578. package/cjs/series/line/interface.d.ts +6 -11
  579. package/cjs/series/line/interface.js.map +1 -1
  580. package/cjs/series/line/line.d.ts +5 -3
  581. package/cjs/series/line/line.js +14 -7
  582. package/cjs/series/line/line.js.map +1 -1
  583. package/cjs/series/link/constant.js +10 -10
  584. package/cjs/series/link/constant.js.map +1 -1
  585. package/cjs/series/link/link.js +10 -9
  586. package/cjs/series/link/link.js.map +1 -1
  587. package/cjs/series/link/tooltip-helper.js +2 -2
  588. package/cjs/series/link/tooltip-helper.js.map +1 -1
  589. package/cjs/series/map/constant.js +4 -4
  590. package/cjs/series/map/constant.js.map +1 -1
  591. package/cjs/series/map/geo-source.js +3 -3
  592. package/cjs/series/map/geo-source.js.map +1 -1
  593. package/cjs/series/map/map.js +12 -9
  594. package/cjs/series/map/map.js.map +1 -1
  595. package/cjs/series/mixin/constant.js +7 -7
  596. package/cjs/series/mixin/constant.js.map +1 -1
  597. package/cjs/series/mixin/line-mixin.d.ts +17 -2
  598. package/cjs/series/mixin/line-mixin.js +45 -11
  599. package/cjs/series/mixin/line-mixin.js.map +1 -1
  600. package/cjs/series/pie/animation/centerOffset.js +6 -6
  601. package/cjs/series/pie/animation/centerOffset.js.map +1 -1
  602. package/cjs/series/pie/constant.js +13 -13
  603. package/cjs/series/pie/constant.js.map +1 -1
  604. package/cjs/series/pie/pie-3d.d.ts +1 -1
  605. package/cjs/series/pie/pie-3d.js +15 -15
  606. package/cjs/series/pie/pie-3d.js.map +1 -1
  607. package/cjs/series/pie/pie.d.ts +1 -3
  608. package/cjs/series/pie/pie.js +28 -29
  609. package/cjs/series/pie/pie.js.map +1 -1
  610. package/cjs/series/polar/polar.d.ts +0 -1
  611. package/cjs/series/polar/polar.js +15 -14
  612. package/cjs/series/polar/polar.js.map +1 -1
  613. package/cjs/series/polar/progress-like/constant.js +4 -4
  614. package/cjs/series/polar/progress-like/constant.js.map +1 -1
  615. package/cjs/series/polar/progress-like/progress-like.d.ts +0 -3
  616. package/cjs/series/polar/progress-like/progress-like.js +4 -7
  617. package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
  618. package/cjs/series/polar/rose-like/interface.d.ts +2 -7
  619. package/cjs/series/polar/rose-like/interface.js.map +1 -1
  620. package/cjs/series/polar/rose-like/rose-like.d.ts +0 -1
  621. package/cjs/series/polar/rose-like/rose-like.js +0 -1
  622. package/cjs/series/polar/rose-like/rose-like.js.map +1 -1
  623. package/cjs/series/progress/circular/circular.js +5 -5
  624. package/cjs/series/progress/circular/circular.js.map +1 -1
  625. package/cjs/series/progress/circular/constant.js +7 -7
  626. package/cjs/series/progress/circular/constant.js.map +1 -1
  627. package/cjs/series/progress/linear/animation.js +3 -3
  628. package/cjs/series/progress/linear/animation.js.map +1 -1
  629. package/cjs/series/progress/linear/constant.js +10 -10
  630. package/cjs/series/progress/linear/constant.js.map +1 -1
  631. package/cjs/series/progress/linear/linear.js +11 -11
  632. package/cjs/series/progress/linear/linear.js.map +1 -1
  633. package/cjs/series/radar/constant.js +4 -4
  634. package/cjs/series/radar/constant.js.map +1 -1
  635. package/cjs/series/radar/interface.d.ts +4 -3
  636. package/cjs/series/radar/interface.js.map +1 -1
  637. package/cjs/series/radar/radar.d.ts +2 -1
  638. package/cjs/series/radar/radar.js +12 -9
  639. package/cjs/series/radar/radar.js.map +1 -1
  640. package/cjs/series/range-area/range-area.d.ts +1 -1
  641. package/cjs/series/range-area/range-area.js +3 -3
  642. package/cjs/series/range-area/range-area.js.map +1 -1
  643. package/cjs/series/range-area/tooltip-helper.js +2 -2
  644. package/cjs/series/range-area/tooltip-helper.js.map +1 -1
  645. package/cjs/series/range-column/constant.js +13 -13
  646. package/cjs/series/range-column/constant.js.map +1 -1
  647. package/cjs/series/range-column/range-column-3d.d.ts +2 -2
  648. package/cjs/series/range-column/range-column-3d.js +4 -4
  649. package/cjs/series/range-column/range-column-3d.js.map +1 -1
  650. package/cjs/series/range-column/range-column.d.ts +1 -1
  651. package/cjs/series/range-column/range-column.js +15 -15
  652. package/cjs/series/range-column/range-column.js.map +1 -1
  653. package/cjs/series/range-column/tooltip-helper.js +2 -2
  654. package/cjs/series/range-column/tooltip-helper.js.map +1 -1
  655. package/cjs/series/rose/constant.js +4 -4
  656. package/cjs/series/rose/constant.js.map +1 -1
  657. package/cjs/series/rose/rose.js +6 -6
  658. package/cjs/series/rose/rose.js.map +1 -1
  659. package/cjs/series/sankey/animation.js +5 -5
  660. package/cjs/series/sankey/animation.js.map +1 -1
  661. package/cjs/series/sankey/constant.js +7 -7
  662. package/cjs/series/sankey/constant.js.map +1 -1
  663. package/cjs/series/sankey/sankey.js +42 -36
  664. package/cjs/series/sankey/sankey.js.map +1 -1
  665. package/cjs/series/scatter/constant.js +4 -4
  666. package/cjs/series/scatter/constant.js.map +1 -1
  667. package/cjs/series/scatter/interface.d.ts +2 -4
  668. package/cjs/series/scatter/interface.js.map +1 -1
  669. package/cjs/series/scatter/scatter.js +23 -21
  670. package/cjs/series/scatter/scatter.js.map +1 -1
  671. package/cjs/series/sunburst/constant.js +4 -4
  672. package/cjs/series/sunburst/constant.js.map +1 -1
  673. package/cjs/series/sunburst/sunburst.d.ts +1 -3
  674. package/cjs/series/sunburst/sunburst.js +11 -13
  675. package/cjs/series/sunburst/sunburst.js.map +1 -1
  676. package/cjs/series/treemap/constant.js +10 -10
  677. package/cjs/series/treemap/constant.js.map +1 -1
  678. package/cjs/series/treemap/treemap.d.ts +2 -2
  679. package/cjs/series/treemap/treemap.js +27 -21
  680. package/cjs/series/treemap/treemap.js.map +1 -1
  681. package/cjs/series/util/spec.d.ts +2 -0
  682. package/cjs/series/util/spec.js +16 -0
  683. package/cjs/series/util/spec.js.map +1 -0
  684. package/cjs/series/util/utils.js +2 -2
  685. package/cjs/series/util/utils.js.map +1 -1
  686. package/cjs/series/waterfall/constant.js +7 -7
  687. package/cjs/series/waterfall/constant.js.map +1 -1
  688. package/cjs/series/waterfall/waterfall.js +8 -8
  689. package/cjs/series/waterfall/waterfall.js.map +1 -1
  690. package/cjs/series/word-cloud/base.d.ts +0 -3
  691. package/cjs/series/word-cloud/base.js +3 -6
  692. package/cjs/series/word-cloud/base.js.map +1 -1
  693. package/cjs/series/word-cloud/constant.js +7 -7
  694. package/cjs/series/word-cloud/constant.js.map +1 -1
  695. package/cjs/series/word-cloud/word-cloud-3d.d.ts +1 -0
  696. package/cjs/series/word-cloud/word-cloud-3d.js +13 -6
  697. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  698. package/cjs/series/word-cloud/word-cloud.d.ts +2 -1
  699. package/cjs/series/word-cloud/word-cloud.js +12 -6
  700. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  701. package/cjs/theme/builtin/index.d.ts +5 -0
  702. package/cjs/theme/builtin/index.js +32 -4
  703. package/cjs/theme/builtin/index.js.map +1 -1
  704. package/cjs/theme/color-scheme/builtin/index.d.ts +2 -0
  705. package/cjs/theme/color-scheme/builtin/index.js +21 -0
  706. package/cjs/theme/color-scheme/builtin/index.js.map +1 -0
  707. package/cjs/theme/color-scheme/index.d.ts +3 -0
  708. package/cjs/theme/color-scheme/index.js +22 -0
  709. package/cjs/theme/color-scheme/index.js.map +1 -0
  710. package/cjs/theme/color-scheme/interface.d.ts +2 -2
  711. package/cjs/theme/color-scheme/interface.js.map +1 -1
  712. package/cjs/theme/color-scheme/util.d.ts +5 -4
  713. package/cjs/theme/color-scheme/util.js +28 -15
  714. package/cjs/theme/color-scheme/util.js.map +1 -1
  715. package/cjs/theme/index.d.ts +1 -0
  716. package/cjs/theme/index.js +1 -1
  717. package/cjs/theme/index.js.map +1 -1
  718. package/cjs/theme/interface.d.ts +2 -0
  719. package/cjs/theme/interface.js.map +1 -1
  720. package/cjs/theme/theme-manager.js +5 -6
  721. package/cjs/theme/theme-manager.js.map +1 -1
  722. package/cjs/theme/util.js +6 -5
  723. package/cjs/theme/util.js.map +1 -1
  724. package/cjs/typings/tooltip/tooltip.d.ts +2 -1
  725. package/cjs/typings/tooltip/tooltip.js.map +1 -1
  726. package/cjs/typings/visual.d.ts +1 -1
  727. package/cjs/typings/visual.js.map +1 -1
  728. package/cjs/util/data.d.ts +1 -1
  729. package/cjs/util/data.js +3 -3
  730. package/cjs/util/data.js.map +1 -1
  731. package/cjs/util/scale.d.ts +1 -2
  732. package/cjs/util/scale.js +1 -1
  733. package/cjs/util/scale.js.map +1 -1
  734. package/cjs/util/spec/merge-spec.js +2 -1
  735. package/cjs/util/spec/merge-spec.js.map +1 -1
  736. package/cjs/util/spec/merge-theme.js +8 -8
  737. package/cjs/util/spec/merge-theme.js.map +1 -1
  738. package/cjs/util/spec/preprocess.d.ts +2 -2
  739. package/cjs/util/spec/preprocess.js +4 -4
  740. package/cjs/util/spec/preprocess.js.map +1 -1
  741. package/cjs/vchart-all.js +1 -1
  742. package/cjs/vchart-all.js.map +1 -1
  743. package/cjs/vchart-simple.d.ts +1 -0
  744. package/cjs/vchart-simple.js +16 -1
  745. package/cjs/vchart-simple.js.map +1 -1
  746. package/esm/animation/animate-manager.d.ts +1 -1
  747. package/esm/animation/animate-manager.js +3 -3
  748. package/esm/animation/animate-manager.js.map +1 -1
  749. package/esm/animation/utils.d.ts +8 -10
  750. package/esm/animation/utils.js +31 -7
  751. package/esm/animation/utils.js.map +1 -1
  752. package/esm/chart/area/area.d.ts +1 -0
  753. package/esm/chart/area/area.js +10 -4
  754. package/esm/chart/area/area.js.map +1 -1
  755. package/esm/chart/bar/bar-3d.js +2 -2
  756. package/esm/chart/bar/bar-3d.js.map +1 -1
  757. package/esm/chart/bar/bar.d.ts +1 -0
  758. package/esm/chart/bar/bar.js +6 -3
  759. package/esm/chart/bar/bar.js.map +1 -1
  760. package/esm/chart/base-chart.d.ts +4 -4
  761. package/esm/chart/base-chart.js +4 -11
  762. package/esm/chart/base-chart.js.map +1 -1
  763. package/esm/chart/box-plot/box-plot.js +2 -2
  764. package/esm/chart/box-plot/box-plot.js.map +1 -1
  765. package/esm/chart/circle-packing/circle-packing.js +2 -2
  766. package/esm/chart/circle-packing/circle-packing.js.map +1 -1
  767. package/esm/chart/common/common.d.ts +1 -0
  768. package/esm/chart/common/common.js +2 -2
  769. package/esm/chart/common/common.js.map +1 -1
  770. package/esm/chart/common/interface.d.ts +1 -1
  771. package/esm/chart/common/interface.js.map +1 -1
  772. package/esm/chart/correlation/correlation.js +2 -2
  773. package/esm/chart/correlation/correlation.js.map +1 -1
  774. package/esm/chart/funnel/funnel-3d.js +2 -2
  775. package/esm/chart/funnel/funnel-3d.js.map +1 -1
  776. package/esm/chart/funnel/funnel.js +2 -2
  777. package/esm/chart/funnel/funnel.js.map +1 -1
  778. package/esm/chart/gauge/gauge.js +1 -1
  779. package/esm/chart/gauge/gauge.js.map +1 -1
  780. package/esm/chart/heatmap/heatmap.js +2 -2
  781. package/esm/chart/heatmap/heatmap.js.map +1 -1
  782. package/esm/chart/histogram/base.d.ts +1 -0
  783. package/esm/chart/histogram/base.js +3 -0
  784. package/esm/chart/histogram/base.js.map +1 -1
  785. package/esm/chart/histogram/histogram-3d.js +2 -2
  786. package/esm/chart/histogram/histogram-3d.js.map +1 -1
  787. package/esm/chart/histogram/histogram.js +2 -2
  788. package/esm/chart/histogram/histogram.js.map +1 -1
  789. package/esm/chart/line/line.d.ts +1 -0
  790. package/esm/chart/line/line.js +10 -4
  791. package/esm/chart/line/line.js.map +1 -1
  792. package/esm/chart/pie/pie-3d.js +2 -2
  793. package/esm/chart/pie/pie-3d.js.map +1 -1
  794. package/esm/chart/pie/pie.js +2 -2
  795. package/esm/chart/pie/pie.js.map +1 -1
  796. package/esm/chart/polar/rose-like.d.ts +1 -0
  797. package/esm/chart/polar/rose-like.js +3 -0
  798. package/esm/chart/polar/rose-like.js.map +1 -1
  799. package/esm/chart/progress/circular/circular.d.ts +1 -0
  800. package/esm/chart/progress/circular/circular.js +2 -1
  801. package/esm/chart/progress/circular/circular.js.map +1 -1
  802. package/esm/chart/progress/linear/linear.d.ts +1 -0
  803. package/esm/chart/progress/linear/linear.js +2 -1
  804. package/esm/chart/progress/linear/linear.js.map +1 -1
  805. package/esm/chart/radar/radar.js +6 -3
  806. package/esm/chart/radar/radar.js.map +1 -1
  807. package/esm/chart/range-area/range-area.js +2 -2
  808. package/esm/chart/range-area/range-area.js.map +1 -1
  809. package/esm/chart/range-column/range-column-3d.js +2 -2
  810. package/esm/chart/range-column/range-column-3d.js.map +1 -1
  811. package/esm/chart/range-column/range-column.js +2 -2
  812. package/esm/chart/range-column/range-column.js.map +1 -1
  813. package/esm/chart/rose/rose.js +2 -2
  814. package/esm/chart/rose/rose.js.map +1 -1
  815. package/esm/chart/sankey/sankey.js +2 -2
  816. package/esm/chart/sankey/sankey.js.map +1 -1
  817. package/esm/chart/scatter/scatter.d.ts +1 -0
  818. package/esm/chart/scatter/scatter.js +4 -3
  819. package/esm/chart/scatter/scatter.js.map +1 -1
  820. package/esm/chart/sequence/sequence.js +1 -1
  821. package/esm/chart/sequence/sequence.js.map +1 -1
  822. package/esm/chart/stack.js +10 -4
  823. package/esm/chart/stack.js.map +1 -1
  824. package/esm/chart/sunburst/sunburst.js +2 -2
  825. package/esm/chart/sunburst/sunburst.js.map +1 -1
  826. package/esm/chart/treemap/treemap.js +2 -2
  827. package/esm/chart/treemap/treemap.js.map +1 -1
  828. package/esm/chart/waterfall/waterfall.js +2 -2
  829. package/esm/chart/waterfall/waterfall.js.map +1 -1
  830. package/esm/chart/word-cloud/base.js +2 -2
  831. package/esm/chart/word-cloud/base.js.map +1 -1
  832. package/esm/chart/word-cloud/word-cloud-3d.d.ts +1 -0
  833. package/esm/chart/word-cloud/word-cloud-3d.js +7 -3
  834. package/esm/chart/word-cloud/word-cloud-3d.js.map +1 -1
  835. package/esm/chart/word-cloud/word-cloud.d.ts +1 -0
  836. package/esm/chart/word-cloud/word-cloud.js +8 -9
  837. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  838. package/esm/compile/compiler.js +4 -2
  839. package/esm/compile/compiler.js.map +1 -1
  840. package/esm/compile/data/compilable-data.d.ts +1 -1
  841. package/esm/compile/data/compilable-data.js +2 -2
  842. package/esm/compile/data/compilable-data.js.map +1 -1
  843. package/esm/compile/grammar-item.js +4 -3
  844. package/esm/compile/grammar-item.js.map +1 -1
  845. package/esm/compile/mark/compilable-mark.d.ts +3 -2
  846. package/esm/compile/mark/compilable-mark.js +11 -7
  847. package/esm/compile/mark/compilable-mark.js.map +1 -1
  848. package/esm/compile/mark/mark-state-manager.js +1 -1
  849. package/esm/compile/mark/mark-state-manager.js.map +1 -1
  850. package/esm/compile/signal/compilable-signal.d.ts +1 -1
  851. package/esm/compile/signal/compilable-signal.js +2 -2
  852. package/esm/compile/signal/compilable-signal.js.map +1 -1
  853. package/esm/compile/util.js +1 -1
  854. package/esm/compile/util.js.map +1 -1
  855. package/esm/component/axis/base-axis.d.ts +3 -3
  856. package/esm/component/axis/base-axis.js +13 -5
  857. package/esm/component/axis/base-axis.js.map +1 -1
  858. package/esm/component/axis/cartesian/axis.d.ts +5 -3
  859. package/esm/component/axis/cartesian/axis.js +32 -17
  860. package/esm/component/axis/cartesian/axis.js.map +1 -1
  861. package/esm/component/axis/cartesian/band-axis.d.ts +2 -3
  862. package/esm/component/axis/cartesian/band-axis.js +2 -10
  863. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  864. package/esm/component/axis/cartesian/interface/common.d.ts +2 -6
  865. package/esm/component/axis/cartesian/interface/common.js.map +1 -1
  866. package/esm/component/axis/cartesian/interface/spec.js.map +1 -1
  867. package/esm/component/axis/cartesian/linear-axis.d.ts +2 -2
  868. package/esm/component/axis/cartesian/linear-axis.js +2 -4
  869. package/esm/component/axis/cartesian/linear-axis.js.map +1 -1
  870. package/esm/component/axis/cartesian/log-axis.d.ts +2 -2
  871. package/esm/component/axis/cartesian/log-axis.js +1 -1
  872. package/esm/component/axis/cartesian/log-axis.js.map +1 -1
  873. package/esm/component/axis/cartesian/symlog-axis.d.ts +2 -2
  874. package/esm/component/axis/cartesian/symlog-axis.js +1 -1
  875. package/esm/component/axis/cartesian/symlog-axis.js.map +1 -1
  876. package/esm/component/axis/cartesian/time-axis.d.ts +4 -4
  877. package/esm/component/axis/cartesian/time-axis.js +17 -9
  878. package/esm/component/axis/cartesian/time-axis.js.map +1 -1
  879. package/esm/component/axis/cartesian/util/common.d.ts +1 -1
  880. package/esm/component/axis/cartesian/util/common.js +4 -2
  881. package/esm/component/axis/cartesian/util/common.js.map +1 -1
  882. package/esm/component/axis/interface/common.d.ts +38 -0
  883. package/esm/component/axis/interface/common.js +2 -0
  884. package/esm/component/axis/interface/common.js.map +1 -0
  885. package/esm/component/axis/interface/index.d.ts +3 -0
  886. package/esm/component/axis/interface/index.js +6 -0
  887. package/esm/component/axis/interface/index.js.map +1 -0
  888. package/{cjs/component/axis/interface.d.ts → esm/component/axis/interface/spec.d.ts} +4 -50
  889. package/esm/component/axis/interface/spec.js +2 -0
  890. package/esm/component/axis/interface/spec.js.map +1 -0
  891. package/esm/component/axis/interface/theme.d.ts +15 -0
  892. package/esm/component/axis/interface/theme.js +2 -0
  893. package/esm/component/axis/interface/theme.js.map +1 -0
  894. package/esm/component/axis/mixin/band-axis-mixin.d.ts +5 -0
  895. package/esm/component/axis/mixin/band-axis-mixin.js +9 -2
  896. package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
  897. package/esm/component/axis/mixin/linear-axis-mixin.d.ts +1 -2
  898. package/esm/component/axis/mixin/linear-axis-mixin.js +6 -4
  899. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  900. package/esm/component/axis/polar/axis.d.ts +7 -4
  901. package/esm/component/axis/polar/axis.js +38 -29
  902. package/esm/component/axis/polar/axis.js.map +1 -1
  903. package/esm/component/axis/polar/band-axis.d.ts +3 -4
  904. package/esm/component/axis/polar/band-axis.js +4 -11
  905. package/esm/component/axis/polar/band-axis.js.map +1 -1
  906. package/esm/component/axis/polar/interface/common.js.map +1 -1
  907. package/esm/component/axis/polar/linear-axis.d.ts +1 -1
  908. package/esm/component/axis/polar/linear-axis.js +1 -1
  909. package/esm/component/axis/polar/linear-axis.js.map +1 -1
  910. package/esm/component/axis/util.js +2 -2
  911. package/esm/component/axis/util.js.map +1 -1
  912. package/esm/component/base/base-component.js +4 -2
  913. package/esm/component/base/base-component.js.map +1 -1
  914. package/esm/component/base/util.d.ts +1 -1
  915. package/esm/component/base/util.js +2 -2
  916. package/esm/component/base/util.js.map +1 -1
  917. package/esm/component/brush/brush.d.ts +2 -2
  918. package/esm/component/brush/brush.js +2 -2
  919. package/esm/component/brush/brush.js.map +1 -1
  920. package/esm/component/common/trigger/config.js +2 -2
  921. package/esm/component/common/trigger/config.js.map +1 -1
  922. package/esm/component/crosshair/base.d.ts +1 -1
  923. package/esm/component/crosshair/base.js +3 -3
  924. package/esm/component/crosshair/base.js.map +1 -1
  925. package/esm/component/crosshair/cartesian.d.ts +1 -1
  926. package/esm/component/crosshair/cartesian.js +3 -3
  927. package/esm/component/crosshair/cartesian.js.map +1 -1
  928. package/esm/component/crosshair/interface/spec.js.map +1 -1
  929. package/esm/component/crosshair/interface/theme.d.ts +6 -6
  930. package/esm/component/crosshair/interface/theme.js.map +1 -1
  931. package/esm/component/crosshair/polar.d.ts +1 -1
  932. package/esm/component/crosshair/polar.js +3 -3
  933. package/esm/component/crosshair/polar.js.map +1 -1
  934. package/esm/component/crosshair/util.js +5 -3
  935. package/esm/component/crosshair/util.js.map +1 -1
  936. package/esm/component/custom-mark/custom-mark.d.ts +2 -2
  937. package/esm/component/custom-mark/custom-mark.js +2 -2
  938. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  939. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  940. package/esm/component/data-zoom/data-filter-base-component.js +13 -8
  941. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  942. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  943. package/esm/component/data-zoom/data-zoom/data-zoom.js +2 -2
  944. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  945. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  946. package/esm/component/data-zoom/scroll-bar/scroll-bar.js +1 -1
  947. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  948. package/esm/component/geo/geo-coordinate.d.ts +2 -2
  949. package/esm/component/geo/geo-coordinate.js +6 -4
  950. package/esm/component/geo/geo-coordinate.js.map +1 -1
  951. package/esm/component/index.d.ts +26 -22
  952. package/esm/component/index.js +7 -6
  953. package/esm/component/index.js.map +1 -1
  954. package/esm/component/indicator/indicator.d.ts +2 -2
  955. package/esm/component/indicator/indicator.js +14 -6
  956. package/esm/component/indicator/indicator.js.map +1 -1
  957. package/esm/component/label/base-label.d.ts +2 -2
  958. package/esm/component/label/base-label.js +2 -2
  959. package/esm/component/label/base-label.js.map +1 -1
  960. package/esm/component/label/interface.d.ts +6 -2
  961. package/esm/component/label/interface.js.map +1 -1
  962. package/esm/component/label/label.d.ts +1 -1
  963. package/esm/component/label/label.js +5 -3
  964. package/esm/component/label/label.js.map +1 -1
  965. package/esm/component/label/totalLabel.d.ts +1 -1
  966. package/esm/component/label/totalLabel.js +4 -2
  967. package/esm/component/label/totalLabel.js.map +1 -1
  968. package/esm/component/label/util.d.ts +13 -4
  969. package/esm/component/label/util.js +23 -11
  970. package/esm/component/label/util.js.map +1 -1
  971. package/esm/component/legend/base-legend.d.ts +3 -3
  972. package/esm/component/legend/base-legend.js +10 -6
  973. package/esm/component/legend/base-legend.js.map +1 -1
  974. package/esm/component/legend/continuous/legend.d.ts +1 -1
  975. package/esm/component/legend/continuous/legend.js +15 -6
  976. package/esm/component/legend/continuous/legend.js.map +1 -1
  977. package/esm/component/legend/continuous/util.js +1 -1
  978. package/esm/component/legend/continuous/util.js.map +1 -1
  979. package/esm/component/legend/discrete/legend.d.ts +1 -1
  980. package/esm/component/legend/discrete/legend.js +15 -6
  981. package/esm/component/legend/discrete/legend.js.map +1 -1
  982. package/esm/component/legend/discrete/util.js +3 -1
  983. package/esm/component/legend/discrete/util.js.map +1 -1
  984. package/esm/component/legend/util.d.ts +1 -1
  985. package/esm/component/legend/util.js +1 -1
  986. package/esm/component/legend/util.js.map +1 -1
  987. package/esm/component/map-label/component.d.ts +2 -2
  988. package/esm/component/map-label/component.js +11 -7
  989. package/esm/component/map-label/component.js.map +1 -1
  990. package/esm/component/marker/base-marker.d.ts +1 -1
  991. package/esm/component/marker/base-marker.js +1 -1
  992. package/esm/component/marker/base-marker.js.map +1 -1
  993. package/esm/component/marker/interface.d.ts +1 -1
  994. package/esm/component/marker/interface.js.map +1 -1
  995. package/esm/component/marker/mark-area/mark-area.d.ts +1 -1
  996. package/esm/component/marker/mark-area/mark-area.js +5 -5
  997. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  998. package/esm/component/marker/mark-line/mark-line.d.ts +1 -1
  999. package/esm/component/marker/mark-line/mark-line.js +5 -5
  1000. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  1001. package/esm/component/marker/mark-point/mark-point.d.ts +1 -1
  1002. package/esm/component/marker/mark-point/mark-point.js +5 -5
  1003. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  1004. package/esm/component/player/player.d.ts +2 -2
  1005. package/esm/component/player/player.js +4 -6
  1006. package/esm/component/player/player.js.map +1 -1
  1007. package/esm/component/title/title.d.ts +2 -2
  1008. package/esm/component/title/title.js +4 -4
  1009. package/esm/component/title/title.js.map +1 -1
  1010. package/esm/component/title/utils.js.map +1 -1
  1011. package/esm/component/tooltip/handler/base.d.ts +5 -6
  1012. package/esm/component/tooltip/handler/base.js +22 -15
  1013. package/esm/component/tooltip/handler/base.js.map +1 -1
  1014. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +14 -3
  1015. package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
  1016. package/esm/component/tooltip/handler/dom/model/content-column-model.js +1 -1
  1017. package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
  1018. package/esm/component/tooltip/handler/dom/model/content-model.js +1 -1
  1019. package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
  1020. package/esm/component/tooltip/handler/dom/model/shape-model.js +12 -10
  1021. package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
  1022. package/esm/component/tooltip/handler/dom/model/title-model.js +1 -1
  1023. package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
  1024. package/esm/component/tooltip/handler/dom/model/tooltip-model.js +1 -1
  1025. package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
  1026. package/esm/component/tooltip/handler/dom/util.js +5 -1
  1027. package/esm/component/tooltip/handler/dom/util.js.map +1 -1
  1028. package/esm/component/tooltip/handler/utils/attribute.js +3 -1
  1029. package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
  1030. package/esm/component/tooltip/handler/utils/common.js +1 -1
  1031. package/esm/component/tooltip/handler/utils/common.js.map +1 -1
  1032. package/esm/component/tooltip/handler/utils/compose.js +2 -2
  1033. package/esm/component/tooltip/handler/utils/compose.js.map +1 -1
  1034. package/esm/component/tooltip/handler/utils/get-spec.js +3 -3
  1035. package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
  1036. package/esm/component/tooltip/handler/utils/position.d.ts +1 -1
  1037. package/esm/component/tooltip/handler/utils/position.js +2 -2
  1038. package/esm/component/tooltip/handler/utils/position.js.map +1 -1
  1039. package/esm/component/tooltip/interface/spec.d.ts +2 -1
  1040. package/esm/component/tooltip/interface/spec.js.map +1 -1
  1041. package/esm/component/tooltip/processor/base.d.ts +1 -1
  1042. package/esm/component/tooltip/processor/base.js +4 -2
  1043. package/esm/component/tooltip/processor/base.js.map +1 -1
  1044. package/esm/component/tooltip/tooltip.d.ts +6 -4
  1045. package/esm/component/tooltip/tooltip.js +19 -9
  1046. package/esm/component/tooltip/tooltip.js.map +1 -1
  1047. package/esm/component/tooltip/utils/common.js +1 -1
  1048. package/esm/component/tooltip/utils/common.js.map +1 -1
  1049. package/esm/component/tooltip/utils/show-tooltip.js +1 -3
  1050. package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
  1051. package/esm/constant/base.js +2 -1
  1052. package/esm/constant/event.d.ts +0 -1
  1053. package/esm/constant/event.js +15 -16
  1054. package/esm/constant/event.js.map +1 -1
  1055. package/esm/constant/scroll-bar.js +1 -2
  1056. package/esm/core/factory.js +1 -1
  1057. package/esm/core/factory.js.map +1 -1
  1058. package/esm/core/index.d.ts +6 -3
  1059. package/esm/core/index.js +9 -3
  1060. package/esm/core/index.js.map +1 -1
  1061. package/esm/core/vchart.js +27 -10
  1062. package/esm/core/vchart.js.map +1 -1
  1063. package/esm/data/initialize.d.ts +10 -0
  1064. package/esm/data/initialize.js +12 -4
  1065. package/esm/data/initialize.js.map +1 -1
  1066. package/esm/data/transforms/add-property.d.ts +4 -0
  1067. package/esm/data/transforms/add-property.js.map +1 -1
  1068. package/esm/data/transforms/aggregation.js +3 -1
  1069. package/esm/data/transforms/aggregation.js.map +1 -1
  1070. package/esm/data/transforms/copy-data-view.js +1 -1
  1071. package/esm/data/transforms/copy-data-view.js.map +1 -1
  1072. package/esm/data/transforms/correlation.js +1 -3
  1073. package/esm/data/transforms/correlation.js.map +1 -1
  1074. package/esm/data/transforms/data-key.d.ts +13 -3
  1075. package/esm/data/transforms/data-key.js +23 -8
  1076. package/esm/data/transforms/data-key.js.map +1 -1
  1077. package/esm/data/transforms/dimension-statistics.d.ts +10 -4
  1078. package/esm/data/transforms/dimension-statistics.js +13 -10
  1079. package/esm/data/transforms/dimension-statistics.js.map +1 -1
  1080. package/esm/data/transforms/drill.js +3 -1
  1081. package/esm/data/transforms/drill.js.map +1 -1
  1082. package/esm/data/transforms/invalid-travel.js +1 -1
  1083. package/esm/data/transforms/invalid-travel.js.map +1 -1
  1084. package/esm/data/transforms/legend-data/continuous/continuous.js +1 -2
  1085. package/esm/data/transforms/legend-data/continuous/continuous.js.map +1 -1
  1086. package/esm/data/transforms/lookup.js +1 -1
  1087. package/esm/data/transforms/lookup.js.map +1 -1
  1088. package/esm/data/transforms/pie.js +3 -1
  1089. package/esm/data/transforms/pie.js.map +1 -1
  1090. package/esm/data/transforms/regression.js +1 -1
  1091. package/esm/data/transforms/regression.js.map +1 -1
  1092. package/esm/data/transforms/stack-split.js +1 -1
  1093. package/esm/data/transforms/stack-split.js.map +1 -1
  1094. package/esm/event/event-dispatcher.js +1 -1
  1095. package/esm/event/event-dispatcher.js.map +1 -1
  1096. package/esm/event/event.js +1 -2
  1097. package/esm/event/events/dimension/base.js +3 -1
  1098. package/esm/event/events/dimension/base.js.map +1 -1
  1099. package/esm/event/events/dimension/dimension-hover.js +2 -2
  1100. package/esm/event/events/dimension/dimension-hover.js.map +1 -1
  1101. package/esm/event/events/dimension/interface.d.ts +1 -1
  1102. package/esm/event/events/dimension/interface.js.map +1 -1
  1103. package/esm/event/events/dimension/util/cartesian.js +2 -2
  1104. package/esm/event/events/dimension/util/cartesian.js.map +1 -1
  1105. package/esm/event/events/dimension/util/common.js +1 -1
  1106. package/esm/event/events/dimension/util/common.js.map +1 -1
  1107. package/esm/event/events/dimension/util/polar.js +3 -3
  1108. package/esm/event/events/dimension/util/polar.js.map +1 -1
  1109. package/esm/index-lark.d.ts +4 -0
  1110. package/esm/index-lark.js +102 -0
  1111. package/esm/index-lark.js.map +1 -0
  1112. package/esm/index-wx.d.ts +4 -0
  1113. package/esm/index-wx.js +103 -0
  1114. package/esm/index-wx.js.map +1 -0
  1115. package/esm/index.d.ts +0 -3
  1116. package/esm/index.js +1 -6
  1117. package/esm/index.js.map +1 -1
  1118. package/esm/interaction/config.d.ts +2 -2
  1119. package/esm/interaction/config.js +4 -3
  1120. package/esm/interaction/config.js.map +1 -1
  1121. package/esm/interaction/dimension-trigger.js.map +1 -1
  1122. package/esm/interaction/drill/drillable.js +3 -5
  1123. package/esm/interaction/drill/drillable.js.map +1 -1
  1124. package/esm/interaction/trigger.js +4 -2
  1125. package/esm/interaction/trigger.js.map +1 -1
  1126. package/esm/interaction/zoom/zoomable.js +2 -2
  1127. package/esm/interaction/zoom/zoomable.js.map +1 -1
  1128. package/esm/layout/grid-layout/grid-layout.js +1 -1
  1129. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  1130. package/esm/layout/index.js +1 -1
  1131. package/esm/layout/interface.js +1 -1
  1132. package/esm/layout/layout3d/index.js +1 -1
  1133. package/esm/layout/layout3d/index.js.map +1 -1
  1134. package/esm/mark/arc-3d.d.ts +1 -1
  1135. package/esm/mark/arc-3d.js +1 -1
  1136. package/esm/mark/arc-3d.js.map +1 -1
  1137. package/esm/mark/arc.d.ts +1 -1
  1138. package/esm/mark/arc.js +3 -3
  1139. package/esm/mark/arc.js.map +1 -1
  1140. package/esm/mark/area.d.ts +1 -1
  1141. package/esm/mark/area.js +1 -1
  1142. package/esm/mark/area.js.map +1 -1
  1143. package/esm/mark/base/base-line.js +1 -1
  1144. package/esm/mark/base/base-line.js.map +1 -1
  1145. package/esm/mark/base/base-mark.d.ts +3 -3
  1146. package/esm/mark/base/base-mark.js +79 -35
  1147. package/esm/mark/base/base-mark.js.map +1 -1
  1148. package/esm/mark/box-plot.d.ts +1 -1
  1149. package/esm/mark/box-plot.js +1 -1
  1150. package/esm/mark/box-plot.js.map +1 -1
  1151. package/esm/mark/cell.d.ts +1 -1
  1152. package/esm/mark/cell.js +1 -1
  1153. package/esm/mark/cell.js.map +1 -1
  1154. package/esm/mark/component.d.ts +1 -1
  1155. package/esm/mark/component.js +1 -1
  1156. package/esm/mark/component.js.map +1 -1
  1157. package/esm/mark/group.d.ts +1 -1
  1158. package/esm/mark/group.js +2 -2
  1159. package/esm/mark/group.js.map +1 -1
  1160. package/esm/mark/image.d.ts +1 -1
  1161. package/esm/mark/image.js +1 -1
  1162. package/esm/mark/image.js.map +1 -1
  1163. package/esm/mark/interface/common.d.ts +12 -2
  1164. package/esm/mark/interface/common.js.map +1 -1
  1165. package/esm/mark/label.d.ts +2 -1
  1166. package/esm/mark/label.js +5 -2
  1167. package/esm/mark/label.js.map +1 -1
  1168. package/esm/mark/line.d.ts +1 -1
  1169. package/esm/mark/line.js +2 -2
  1170. package/esm/mark/line.js.map +1 -1
  1171. package/esm/mark/link-path.d.ts +1 -1
  1172. package/esm/mark/link-path.js +1 -1
  1173. package/esm/mark/link-path.js.map +1 -1
  1174. package/esm/mark/path.d.ts +1 -1
  1175. package/esm/mark/path.js +1 -1
  1176. package/esm/mark/path.js.map +1 -1
  1177. package/esm/mark/polygon/polygon.d.ts +1 -1
  1178. package/esm/mark/polygon/polygon.js +1 -1
  1179. package/esm/mark/polygon/polygon.js.map +1 -1
  1180. package/esm/mark/polygon/pyramid-3d.d.ts +1 -1
  1181. package/esm/mark/polygon/pyramid-3d.js +1 -1
  1182. package/esm/mark/polygon/pyramid-3d.js.map +1 -1
  1183. package/esm/mark/progress-arc.d.ts +1 -1
  1184. package/esm/mark/progress-arc.js +1 -1
  1185. package/esm/mark/progress-arc.js.map +1 -1
  1186. package/esm/mark/rect-3d.d.ts +1 -1
  1187. package/esm/mark/rect-3d.js +1 -1
  1188. package/esm/mark/rect-3d.js.map +1 -1
  1189. package/esm/mark/rect.d.ts +1 -1
  1190. package/esm/mark/rect.js +1 -1
  1191. package/esm/mark/rect.js.map +1 -1
  1192. package/esm/mark/ripple.d.ts +1 -1
  1193. package/esm/mark/ripple.js +1 -1
  1194. package/esm/mark/ripple.js.map +1 -1
  1195. package/esm/mark/rule.d.ts +1 -1
  1196. package/esm/mark/rule.js +1 -1
  1197. package/esm/mark/rule.js.map +1 -1
  1198. package/esm/mark/symbol.d.ts +1 -1
  1199. package/esm/mark/symbol.js +1 -1
  1200. package/esm/mark/symbol.js.map +1 -1
  1201. package/esm/mark/text.d.ts +1 -1
  1202. package/esm/mark/text.js +1 -1
  1203. package/esm/mark/text.js.map +1 -1
  1204. package/esm/mark/utils/common.d.ts +1 -1
  1205. package/esm/mark/utils/common.js +1 -1
  1206. package/esm/mark/utils/common.js.map +1 -1
  1207. package/esm/model/base-model.d.ts +2 -15
  1208. package/esm/model/base-model.js +14 -44
  1209. package/esm/model/base-model.js.map +1 -1
  1210. package/esm/model/interface.d.ts +5 -8
  1211. package/esm/model/interface.js.map +1 -1
  1212. package/esm/model/layout-item.js +2 -2
  1213. package/esm/model/layout-item.js.map +1 -1
  1214. package/esm/plugin/components/basic-plugin.js +1 -1
  1215. package/esm/plugin/components/basic-plugin.js.map +1 -1
  1216. package/esm/plugin/components/plugin-service.js +3 -1
  1217. package/esm/plugin/components/plugin-service.js.map +1 -1
  1218. package/esm/region/region.d.ts +2 -3
  1219. package/esm/region/region.js +12 -14
  1220. package/esm/region/region.js.map +1 -1
  1221. package/esm/scale/global-scale.d.ts +3 -3
  1222. package/esm/scale/global-scale.js +36 -21
  1223. package/esm/scale/global-scale.js.map +1 -1
  1224. package/esm/scale/interface.d.ts +1 -2
  1225. package/esm/scale/interface.js.map +1 -1
  1226. package/esm/series/area/animation.js +1 -1
  1227. package/esm/series/area/animation.js.map +1 -1
  1228. package/esm/series/area/area.d.ts +4 -2
  1229. package/esm/series/area/area.js +28 -15
  1230. package/esm/series/area/area.js.map +1 -1
  1231. package/esm/series/area/constant.js +1 -1
  1232. package/esm/series/area/constant.js.map +1 -1
  1233. package/esm/series/area/interface.d.ts +6 -5
  1234. package/esm/series/area/interface.js.map +1 -1
  1235. package/esm/series/area/tooltip-helpter.js +1 -1
  1236. package/esm/series/area/tooltip-helpter.js.map +1 -1
  1237. package/esm/series/bar/animation.js +1 -1
  1238. package/esm/series/bar/animation.js.map +1 -1
  1239. package/esm/series/bar/bar-3d.d.ts +1 -1
  1240. package/esm/series/bar/bar-3d.js +1 -1
  1241. package/esm/series/bar/bar-3d.js.map +1 -1
  1242. package/esm/series/bar/bar.d.ts +3 -3
  1243. package/esm/series/bar/bar.js +31 -12
  1244. package/esm/series/bar/bar.js.map +1 -1
  1245. package/esm/series/bar/constant.js +1 -1
  1246. package/esm/series/bar/constant.js.map +1 -1
  1247. package/esm/series/bar/interface.d.ts +5 -4
  1248. package/esm/series/bar/interface.js.map +1 -1
  1249. package/esm/series/base/base-series.d.ts +17 -10
  1250. package/esm/series/base/base-series.js +69 -77
  1251. package/esm/series/base/base-series.js.map +1 -1
  1252. package/esm/series/base/constant.js +1 -1
  1253. package/esm/series/base/constant.js.map +1 -1
  1254. package/esm/series/base/series-data.d.ts +1 -1
  1255. package/esm/series/base/series-data.js +1 -1
  1256. package/esm/series/base/series-data.js.map +1 -1
  1257. package/esm/series/base/tooltip-helper.js +2 -2
  1258. package/esm/series/base/tooltip-helper.js.map +1 -1
  1259. package/esm/series/box-plot/box-plot.js +11 -9
  1260. package/esm/series/box-plot/box-plot.js.map +1 -1
  1261. package/esm/series/box-plot/constant.js +1 -1
  1262. package/esm/series/box-plot/constant.js.map +1 -1
  1263. package/esm/series/box-plot/tooltip-helper.js +1 -1
  1264. package/esm/series/box-plot/tooltip-helper.js.map +1 -1
  1265. package/esm/series/cartesian/cartesian.d.ts +2 -1
  1266. package/esm/series/cartesian/cartesian.js +3 -1
  1267. package/esm/series/cartesian/cartesian.js.map +1 -1
  1268. package/esm/series/circle-packing/circle-packing.d.ts +1 -1
  1269. package/esm/series/circle-packing/circle-packing.js +8 -8
  1270. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  1271. package/esm/series/circle-packing/constant.js +1 -1
  1272. package/esm/series/circle-packing/constant.js.map +1 -1
  1273. package/esm/series/correlation/constant.js +1 -1
  1274. package/esm/series/correlation/constant.js.map +1 -1
  1275. package/esm/series/correlation/correlation.d.ts +1 -3
  1276. package/esm/series/correlation/correlation.js +6 -6
  1277. package/esm/series/correlation/correlation.js.map +1 -1
  1278. package/esm/series/correlation/interface.js.map +1 -1
  1279. package/esm/series/dot/constant.js +1 -1
  1280. package/esm/series/dot/constant.js.map +1 -1
  1281. package/esm/series/dot/dot.js +11 -6
  1282. package/esm/series/dot/dot.js.map +1 -1
  1283. package/esm/series/dot/tooltip-helper.js +1 -1
  1284. package/esm/series/dot/tooltip-helper.js.map +1 -1
  1285. package/esm/series/funnel/constant.js +1 -1
  1286. package/esm/series/funnel/constant.js.map +1 -1
  1287. package/esm/series/funnel/funnel-3d.d.ts +1 -1
  1288. package/esm/series/funnel/funnel-3d.js +1 -1
  1289. package/esm/series/funnel/funnel-3d.js.map +1 -1
  1290. package/esm/series/funnel/funnel.d.ts +2 -5
  1291. package/esm/series/funnel/funnel.js +17 -15
  1292. package/esm/series/funnel/funnel.js.map +1 -1
  1293. package/esm/series/gauge/constant.js +1 -1
  1294. package/esm/series/gauge/constant.js.map +1 -1
  1295. package/esm/series/gauge/gauge-pointer.d.ts +1 -1
  1296. package/esm/series/gauge/gauge-pointer.js +3 -3
  1297. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  1298. package/esm/series/gauge/gauge.js +4 -4
  1299. package/esm/series/gauge/gauge.js.map +1 -1
  1300. package/esm/series/geo/geo.d.ts +0 -3
  1301. package/esm/series/geo/geo.js +3 -6
  1302. package/esm/series/geo/geo.js.map +1 -1
  1303. package/esm/series/heatmap/constant.js +1 -1
  1304. package/esm/series/heatmap/constant.js.map +1 -1
  1305. package/esm/series/heatmap/heatmap.js +5 -5
  1306. package/esm/series/heatmap/heatmap.js.map +1 -1
  1307. package/esm/series/index.d.ts +1 -0
  1308. package/esm/series/index.js +2 -0
  1309. package/esm/series/index.js.map +1 -1
  1310. package/esm/series/interface/common.d.ts +1 -1
  1311. package/esm/series/interface/common.js.map +1 -1
  1312. package/esm/series/interface/series.d.ts +7 -1
  1313. package/esm/series/interface/series.js.map +1 -1
  1314. package/esm/series/interface/theme.d.ts +52 -8
  1315. package/esm/series/interface/theme.js +22 -1
  1316. package/esm/series/interface/theme.js.map +1 -1
  1317. package/esm/series/line/animation.js +1 -1
  1318. package/esm/series/line/animation.js.map +1 -1
  1319. package/esm/series/line/interface.d.ts +6 -11
  1320. package/esm/series/line/interface.js.map +1 -1
  1321. package/esm/series/line/line.d.ts +5 -3
  1322. package/esm/series/line/line.js +14 -7
  1323. package/esm/series/line/line.js.map +1 -1
  1324. package/esm/series/link/constant.js +1 -1
  1325. package/esm/series/link/constant.js.map +1 -1
  1326. package/esm/series/link/link.js +8 -5
  1327. package/esm/series/link/link.js.map +1 -1
  1328. package/esm/series/link/tooltip-helper.js +1 -1
  1329. package/esm/series/link/tooltip-helper.js.map +1 -1
  1330. package/esm/series/map/constant.js +1 -1
  1331. package/esm/series/map/constant.js.map +1 -1
  1332. package/esm/series/map/geo-source.js +1 -1
  1333. package/esm/series/map/geo-source.js.map +1 -1
  1334. package/esm/series/map/map.js +12 -7
  1335. package/esm/series/map/map.js.map +1 -1
  1336. package/esm/series/mixin/constant.js +1 -1
  1337. package/esm/series/mixin/constant.js.map +1 -1
  1338. package/esm/series/mixin/line-mixin.d.ts +17 -2
  1339. package/esm/series/mixin/line-mixin.js +43 -10
  1340. package/esm/series/mixin/line-mixin.js.map +1 -1
  1341. package/esm/series/pie/animation/centerOffset.js +3 -1
  1342. package/esm/series/pie/animation/centerOffset.js.map +1 -1
  1343. package/esm/series/pie/constant.js +1 -1
  1344. package/esm/series/pie/constant.js.map +1 -1
  1345. package/esm/series/pie/pie-3d.d.ts +1 -1
  1346. package/esm/series/pie/pie-3d.js +2 -2
  1347. package/esm/series/pie/pie-3d.js.map +1 -1
  1348. package/esm/series/pie/pie.d.ts +1 -3
  1349. package/esm/series/pie/pie.js +16 -10
  1350. package/esm/series/pie/pie.js.map +1 -1
  1351. package/esm/series/polar/polar.d.ts +0 -1
  1352. package/esm/series/polar/polar.js +3 -2
  1353. package/esm/series/polar/polar.js.map +1 -1
  1354. package/esm/series/polar/progress-like/constant.js +1 -1
  1355. package/esm/series/polar/progress-like/constant.js.map +1 -1
  1356. package/esm/series/polar/progress-like/progress-like.d.ts +0 -3
  1357. package/esm/series/polar/progress-like/progress-like.js +4 -5
  1358. package/esm/series/polar/progress-like/progress-like.js.map +1 -1
  1359. package/esm/series/polar/rose-like/interface.d.ts +2 -7
  1360. package/esm/series/polar/rose-like/interface.js.map +1 -1
  1361. package/esm/series/polar/rose-like/rose-like.d.ts +0 -1
  1362. package/esm/series/polar/rose-like/rose-like.js +0 -1
  1363. package/esm/series/polar/rose-like/rose-like.js.map +1 -1
  1364. package/esm/series/progress/circular/circular.js +3 -3
  1365. package/esm/series/progress/circular/circular.js.map +1 -1
  1366. package/esm/series/progress/circular/constant.js +1 -1
  1367. package/esm/series/progress/circular/constant.js.map +1 -1
  1368. package/esm/series/progress/linear/animation.js +1 -1
  1369. package/esm/series/progress/linear/animation.js.map +1 -1
  1370. package/esm/series/progress/linear/constant.js +1 -1
  1371. package/esm/series/progress/linear/constant.js.map +1 -1
  1372. package/esm/series/progress/linear/linear.js +3 -3
  1373. package/esm/series/progress/linear/linear.js.map +1 -1
  1374. package/esm/series/radar/constant.js +1 -1
  1375. package/esm/series/radar/constant.js.map +1 -1
  1376. package/esm/series/radar/interface.d.ts +4 -3
  1377. package/esm/series/radar/interface.js.map +1 -1
  1378. package/esm/series/radar/radar.d.ts +2 -1
  1379. package/esm/series/radar/radar.js +10 -7
  1380. package/esm/series/radar/radar.js.map +1 -1
  1381. package/esm/series/range-area/range-area.d.ts +1 -1
  1382. package/esm/series/range-area/range-area.js +1 -1
  1383. package/esm/series/range-area/range-area.js.map +1 -1
  1384. package/esm/series/range-area/tooltip-helper.js +1 -1
  1385. package/esm/series/range-area/tooltip-helper.js.map +1 -1
  1386. package/esm/series/range-column/constant.js +1 -1
  1387. package/esm/series/range-column/constant.js.map +1 -1
  1388. package/esm/series/range-column/range-column-3d.d.ts +2 -2
  1389. package/esm/series/range-column/range-column-3d.js +2 -2
  1390. package/esm/series/range-column/range-column-3d.js.map +1 -1
  1391. package/esm/series/range-column/range-column.d.ts +1 -1
  1392. package/esm/series/range-column/range-column.js +10 -8
  1393. package/esm/series/range-column/range-column.js.map +1 -1
  1394. package/esm/series/range-column/tooltip-helper.js +1 -1
  1395. package/esm/series/range-column/tooltip-helper.js.map +1 -1
  1396. package/esm/series/rose/constant.js +1 -1
  1397. package/esm/series/rose/constant.js.map +1 -1
  1398. package/esm/series/rose/rose.js +6 -4
  1399. package/esm/series/rose/rose.js.map +1 -1
  1400. package/esm/series/sankey/animation.js +1 -1
  1401. package/esm/series/sankey/animation.js.map +1 -1
  1402. package/esm/series/sankey/constant.js +1 -1
  1403. package/esm/series/sankey/constant.js.map +1 -1
  1404. package/esm/series/sankey/sankey.js +21 -16
  1405. package/esm/series/sankey/sankey.js.map +1 -1
  1406. package/esm/series/scatter/constant.js +1 -1
  1407. package/esm/series/scatter/constant.js.map +1 -1
  1408. package/esm/series/scatter/interface.d.ts +2 -4
  1409. package/esm/series/scatter/interface.js.map +1 -1
  1410. package/esm/series/scatter/scatter.js +7 -5
  1411. package/esm/series/scatter/scatter.js.map +1 -1
  1412. package/esm/series/sunburst/constant.js +1 -1
  1413. package/esm/series/sunburst/constant.js.map +1 -1
  1414. package/esm/series/sunburst/sunburst.d.ts +1 -3
  1415. package/esm/series/sunburst/sunburst.js +8 -10
  1416. package/esm/series/sunburst/sunburst.js.map +1 -1
  1417. package/esm/series/treemap/constant.js +1 -1
  1418. package/esm/series/treemap/constant.js.map +1 -1
  1419. package/esm/series/treemap/treemap.d.ts +2 -2
  1420. package/esm/series/treemap/treemap.js +25 -17
  1421. package/esm/series/treemap/treemap.js.map +1 -1
  1422. package/esm/series/util/spec.d.ts +2 -0
  1423. package/esm/series/util/spec.js +8 -0
  1424. package/esm/series/util/spec.js.map +1 -0
  1425. package/esm/series/util/utils.js +1 -1
  1426. package/esm/series/util/utils.js.map +1 -1
  1427. package/esm/series/waterfall/constant.js +1 -1
  1428. package/esm/series/waterfall/constant.js.map +1 -1
  1429. package/esm/series/waterfall/waterfall.js +4 -4
  1430. package/esm/series/waterfall/waterfall.js.map +1 -1
  1431. package/esm/series/word-cloud/base.d.ts +0 -3
  1432. package/esm/series/word-cloud/base.js +2 -5
  1433. package/esm/series/word-cloud/base.js.map +1 -1
  1434. package/esm/series/word-cloud/constant.js +1 -1
  1435. package/esm/series/word-cloud/constant.js.map +1 -1
  1436. package/esm/series/word-cloud/word-cloud-3d.d.ts +1 -0
  1437. package/esm/series/word-cloud/word-cloud-3d.js +13 -3
  1438. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  1439. package/esm/series/word-cloud/word-cloud.d.ts +2 -1
  1440. package/esm/series/word-cloud/word-cloud.js +11 -2
  1441. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  1442. package/esm/theme/builtin/index.d.ts +5 -0
  1443. package/esm/theme/builtin/index.js +23 -2
  1444. package/esm/theme/builtin/index.js.map +1 -1
  1445. package/esm/theme/color-scheme/builtin/index.d.ts +2 -0
  1446. package/esm/theme/color-scheme/builtin/index.js +4 -0
  1447. package/esm/theme/color-scheme/builtin/index.js.map +1 -0
  1448. package/esm/theme/color-scheme/index.d.ts +3 -0
  1449. package/esm/theme/color-scheme/index.js +6 -0
  1450. package/esm/theme/color-scheme/index.js.map +1 -0
  1451. package/esm/theme/color-scheme/interface.d.ts +2 -2
  1452. package/esm/theme/color-scheme/interface.js.map +1 -1
  1453. package/esm/theme/color-scheme/util.d.ts +5 -4
  1454. package/esm/theme/color-scheme/util.js +26 -14
  1455. package/esm/theme/color-scheme/util.js.map +1 -1
  1456. package/esm/theme/index.d.ts +1 -0
  1457. package/esm/theme/index.js +2 -0
  1458. package/esm/theme/index.js.map +1 -1
  1459. package/esm/theme/interface.d.ts +2 -0
  1460. package/esm/theme/interface.js.map +1 -1
  1461. package/esm/theme/theme-manager.js +5 -8
  1462. package/esm/theme/theme-manager.js.map +1 -1
  1463. package/esm/theme/util.js +4 -1
  1464. package/esm/theme/util.js.map +1 -1
  1465. package/esm/typings/tooltip/tooltip.d.ts +2 -1
  1466. package/esm/typings/tooltip/tooltip.js.map +1 -1
  1467. package/esm/typings/visual.d.ts +1 -1
  1468. package/esm/typings/visual.js.map +1 -1
  1469. package/esm/util/data.d.ts +1 -1
  1470. package/esm/util/data.js +3 -3
  1471. package/esm/util/data.js.map +1 -1
  1472. package/esm/util/scale.d.ts +1 -2
  1473. package/esm/util/scale.js +1 -1
  1474. package/esm/util/scale.js.map +1 -1
  1475. package/esm/util/spec/merge-spec.js +1 -1
  1476. package/esm/util/spec/merge-spec.js.map +1 -1
  1477. package/esm/util/spec/merge-theme.js +7 -7
  1478. package/esm/util/spec/merge-theme.js.map +1 -1
  1479. package/esm/util/spec/preprocess.d.ts +2 -2
  1480. package/esm/util/spec/preprocess.js +4 -4
  1481. package/esm/util/spec/preprocess.js.map +1 -1
  1482. package/esm/vchart-all.js +2 -2
  1483. package/esm/vchart-all.js.map +1 -1
  1484. package/esm/vchart-simple.d.ts +1 -0
  1485. package/esm/vchart-simple.js +2 -0
  1486. package/esm/vchart-simple.js.map +1 -1
  1487. package/package.json +11 -9
  1488. package/cjs/component/axis/cartesian/config.d.ts +0 -3
  1489. package/cjs/component/axis/cartesian/config.js +0 -8
  1490. package/cjs/component/axis/cartesian/config.js.map +0 -1
  1491. package/cjs/component/axis/interface.js.map +0 -1
  1492. package/cjs/component/axis/polar/config.d.ts +0 -3
  1493. package/cjs/component/axis/polar/config.js +0 -8
  1494. package/cjs/component/axis/polar/config.js.map +0 -1
  1495. package/cjs/model/model-state-manager.d.ts +0 -9
  1496. package/cjs/model/model-state-manager.js +0 -23
  1497. package/cjs/model/model-state-manager.js.map +0 -1
  1498. package/esm/component/axis/cartesian/config.d.ts +0 -3
  1499. package/esm/component/axis/cartesian/config.js +0 -6
  1500. package/esm/component/axis/cartesian/config.js.map +0 -1
  1501. package/esm/component/axis/interface.js +0 -2
  1502. package/esm/component/axis/interface.js.map +0 -1
  1503. package/esm/component/axis/polar/config.d.ts +0 -3
  1504. package/esm/component/axis/polar/config.js +0 -6
  1505. package/esm/component/axis/polar/config.js.map +0 -1
  1506. package/esm/model/model-state-manager.d.ts +0 -9
  1507. package/esm/model/model-state-manager.js +0 -15
  1508. package/esm/model/model-state-manager.js.map +0 -1
@@ -18,7 +18,7 @@ Object.defineProperty(exports, "__esModule", {
18
18
  value: !0
19
19
  }), exports.CartesianAxis = void 0;
20
20
 
21
- const util_1 = require("../../../util"), space_1 = require("../../../typings/space"), vscale_1 = require("@visactor/vscale"), factory_1 = require("../../../core/factory"), util_2 = require("./util"), constant_1 = require("../../../constant"), index_1 = require("../../../constant/index"), components_1 = __importDefault(require("../../../plugin/components")), interface_1 = require("../../interface"), vgrammar_core_1 = require("@visactor/vgrammar-core"), util_3 = require("../util"), register_1 = require("../../../data/register"), scale_1 = require("../../../data/parser/scale"), vutils_extension_1 = require("@visactor/vutils-extension"), vdataset_1 = require("@visactor/vdataset"), data_1 = require("../../../compile/data"), base_axis_1 = require("../base-axis"), vrender_core_1 = require("@visactor/vrender-core"), CartesianAxisPlugin = [ components_1.default.AxisSyncPlugin ];
21
+ const util_1 = require("../../../util"), space_1 = require("../../../typings/space"), vscale_1 = require("@visactor/vscale"), factory_1 = require("../../../core/factory"), common_1 = require("./util/common"), constant_1 = require("../../../constant"), index_1 = require("../../../constant/index"), components_1 = __importDefault(require("../../../plugin/components")), type_1 = require("../../interface/type"), vgrammar_core_1 = require("@visactor/vgrammar-core"), util_2 = require("../util"), register_1 = require("../../../data/register"), scale_1 = require("../../../data/parser/scale"), vutils_extension_1 = require("@visactor/vutils-extension"), vdataset_1 = require("@visactor/vdataset"), compilable_data_1 = require("../../../compile/data/compilable-data"), base_axis_1 = require("../base-axis"), vrender_core_1 = require("@visactor/vrender-core"), CartesianAxisPlugin = [ components_1.default.AxisSyncPlugin ];
22
22
 
23
23
  class CartesianAxis extends base_axis_1.AxisComponent {
24
24
  getOrient() {
@@ -37,8 +37,9 @@ class CartesianAxis extends base_axis_1.AxisComponent {
37
37
  return this._statisticsDomain;
38
38
  }
39
39
  constructor(spec, options) {
40
- super(spec, Object.assign({}, options)), this.type = interface_1.ComponentTypeEnum.cartesianAxis,
41
- this.name = interface_1.ComponentTypeEnum.cartesianAxis, this.layoutType = "region-relative",
40
+ super(spec, Object.assign({}, options)), this.type = type_1.ComponentTypeEnum.cartesianAxis,
41
+ this.name = type_1.ComponentTypeEnum.cartesianAxis, this._defaultBandPosition = .5,
42
+ this._defaultBandInnerPadding = .1, this._defaultBandOuterPadding = .3, this.layoutType = "region-relative",
42
43
  this.layoutZIndex = constant_1.LayoutZIndex.Axis, this.layoutLevel = index_1.LayoutLevel.Axis,
43
44
  this._orient = "left", this._scales = [], this._statisticsDomain = {
44
45
  domain: [],
@@ -53,10 +54,11 @@ class CartesianAxis extends base_axis_1.AxisComponent {
53
54
  y2: 0
54
55
  }
55
56
  }, this.effect = {
56
- scaleUpdate: () => {
57
- this.computeData(), (0, util_1.eachSeries)(this._regions, (s => {
58
- (0, util_2.isXAxis)(this.getOrient()) ? s.setXAxisHelper(this.axisHelper()) : (0,
59
- util_2.isYAxis)(this.getOrient()) ? s.setYAxisHelper(this.axisHelper()) : (0, util_2.isZAxis)(this.getOrient()) && s.setZAxisHelper(this.axisHelper());
57
+ scaleUpdate: params => {
58
+ this.computeData(null == params ? void 0 : params.value), (0, util_1.eachSeries)(this._regions, (s => {
59
+ (0, common_1.isXAxis)(this.getOrient()) ? s.setXAxisHelper(this.axisHelper()) : (0,
60
+ common_1.isYAxis)(this.getOrient()) ? s.setYAxisHelper(this.axisHelper()) : (0,
61
+ common_1.isZAxis)(this.getOrient()) && s.setZAxisHelper(this.axisHelper());
60
62
  }), {
61
63
  userId: this._seriesUserId,
62
64
  specIndex: this._seriesIndex
@@ -66,9 +68,9 @@ class CartesianAxis extends base_axis_1.AxisComponent {
66
68
  const {onZero: onZero, visible: visible} = this._spec.domainLine;
67
69
  if (this.visible && onZero && !1 !== visible) {
68
70
  const {onZeroAxisId: onZeroAxisId, onZeroAxisIndex: onZeroAxisIndex} = this._spec.domainLine, axesComponents = this._option.getComponentsByKey("axes"), isX = (0,
69
- util_2.isXAxis)(this.getOrient()), isValidAxis = item => {
71
+ common_1.isXAxis)(this.getOrient()), isValidAxis = item => {
70
72
  var _a;
71
- return (isX ? !(0, util_2.isXAxis)(item.orient) : (0, util_2.isXAxis)(item.orient)) && (0,
73
+ return (isX ? !(0, common_1.isXAxis)(item.orient) : (0, common_1.isXAxis)(item.orient)) && (0,
72
74
  vscale_1.isContinuous)(item.getScale().type) && (null === (_a = item.getTickData().getLatestData()) || void 0 === _a ? void 0 : _a.find((d => 0 === d.value)));
73
75
  }, relativeAxes = axesComponents.filter((item => isValidAxis(item)));
74
76
  if (relativeAxes.length) {
@@ -92,13 +94,13 @@ class CartesianAxis extends base_axis_1.AxisComponent {
92
94
  }
93
95
  }
94
96
  }
95
- }, this._orient = (0, util_2.getOrient)(spec, [ "z" ]), (0, util_2.isZAxis)(this._orient) && (this.layoutType = "absolute"),
97
+ }, this._orient = (0, common_1.getOrient)(spec, [ "z" ]), (0, common_1.isZAxis)(this._orient) && (this.layoutType = "absolute"),
96
98
  (0, util_1.isValid)(spec.autoIndent) && (this._autoIndent = spec.autoIndent), this._layoutOrient = this._orient,
97
99
  this._dataSet = options.dataSet;
98
100
  }
99
101
  static createAxis(spec, options, isHorizontal = !1) {
100
102
  var _a;
101
- const axisType = null !== (_a = spec.type) && void 0 !== _a ? _a : (0, util_2.autoAxisType)(spec.orient, isHorizontal), componentName = `${CartesianAxis.type}-${axisType}`, C = factory_1.Factory.getComponentInKey(componentName);
103
+ const axisType = null !== (_a = spec.type) && void 0 !== _a ? _a : (0, common_1.autoAxisType)(spec.orient, isHorizontal), componentName = `${CartesianAxis.type}-${axisType}`, C = factory_1.Factory.getComponentInKey(componentName);
102
104
  return C ? new C(Object.assign(Object.assign({}, spec), {
103
105
  type: axisType
104
106
  }), options) : (options.onError(`Component ${componentName} not found`), null);
@@ -109,17 +111,17 @@ class CartesianAxis extends base_axis_1.AxisComponent {
109
111
  let axesSpec = spec[CartesianAxis.specKey] || options.defaultSpec;
110
112
  if (!axesSpec) return null;
111
113
  const isHorizontal = spec.direction === space_1.Direction.horizontal;
112
- if (!(0, util_1.isArray)(axesSpec)) return (0, util_3.isValidCartesianAxis)(axesSpec) ? CartesianAxis.createAxis(axesSpec, options, isHorizontal) : null;
114
+ if (!(0, util_1.isArray)(axesSpec)) return (0, util_2.isValidCartesianAxis)(axesSpec) ? CartesianAxis.createAxis(axesSpec, options, isHorizontal) : null;
113
115
  let valid = !0;
114
116
  if (axesSpec.filter((s => "z" === s.orient))[0]) {
115
117
  const xAxis = axesSpec.filter((s => "bottom" === s.orient))[0], yAxis = axesSpec.filter((s => (0,
116
- util_2.isYAxis)(s.orient)))[0];
118
+ common_1.isYAxis)(s.orient)))[0];
117
119
  valid = 3 === axesSpec.length && xAxis && yAxis;
118
120
  }
119
121
  valid || (axesSpec = axesSpec.filter((s => "z" !== s.orient)));
120
122
  const axes = [];
121
123
  return axesSpec.forEach(((s, i) => {
122
- (0, util_3.isValidCartesianAxis)(s) && axes.push(CartesianAxis.createAxis(s, Object.assign(Object.assign({}, options), {
124
+ (0, util_2.isValidCartesianAxis)(s) && axes.push(CartesianAxis.createAxis(s, Object.assign(Object.assign({}, options), {
123
125
  specIndex: i,
124
126
  specKey: CartesianAxis.specKey
125
127
  }), isHorizontal));
@@ -132,8 +134,8 @@ class CartesianAxis extends base_axis_1.AxisComponent {
132
134
  let isScaleChange = !1;
133
135
  const {width: width, height: height} = this.getLayoutRect(), inverse = this._spec.inverse;
134
136
  let newRange = [];
135
- (0, util_2.isXAxis)(this.getOrient()) ? (0, util_1.isValidNumber)(width) && (newRange = inverse ? [ width, 0 ] : [ 0, width ]) : (0,
136
- util_2.isZAxis)(this.getOrient()) ? (0, util_1.isValidNumber)(width) && (newRange = inverse ? [ width, 0 ] : [ 0, width ],
137
+ (0, common_1.isXAxis)(this.getOrient()) ? (0, util_1.isValidNumber)(width) && (newRange = inverse ? [ width, 0 ] : [ 0, width ]) : (0,
138
+ common_1.isZAxis)(this.getOrient()) ? (0, util_1.isValidNumber)(width) && (newRange = inverse ? [ width, 0 ] : [ 0, width ],
137
139
  this._scale.range(newRange)) : (0, util_1.isValidNumber)(height) && (newRange = inverse ? [ 0, height ] : [ height, 0 ]);
138
140
  const [start, end] = this._scale.range();
139
141
  return newRange[0] === start && newRange[1] === end || (isScaleChange = !0, this._scale.range(newRange)),
@@ -148,7 +150,7 @@ class CartesianAxis extends base_axis_1.AxisComponent {
148
150
  }
149
151
  setAttrFromSpec() {
150
152
  if (super.setAttrFromSpec(), this.visible) {
151
- (0, util_2.isXAxis)(this.getOrient()) ? (0, util_1.isUndefined)(this._spec.maxHeight) && (this._spec.maxHeight = "30%") : (0,
153
+ (0, common_1.isXAxis)(this.getOrient()) ? (0, util_1.isUndefined)(this._spec.maxHeight) && (this._spec.maxHeight = "30%") : (0,
152
154
  util_1.isUndefined)(this._spec.maxWidth) && (this._spec.maxWidth = "30%");
153
155
  const axisStyle = this._getAxisAttributes();
154
156
  axisStyle.label.formatMethod = this.getLabelFormatMethod(), axisStyle.verticalFactor = "top" === this.getOrient() || "right" === this.getOrient() ? -1 : 1,
@@ -158,13 +160,15 @@ class CartesianAxis extends base_axis_1.AxisComponent {
158
160
  }
159
161
  getSeriesStatisticsField(s) {
160
162
  let f;
161
- return f = (0, util_2.isXAxis)(this.getOrient()) ? s.fieldX : (0, util_2.isZAxis)(this.getOrient()) ? s.fieldZ : s.fieldY,
163
+ return f = (0, common_1.isXAxis)(this.getOrient()) ? s.fieldX : (0, common_1.isZAxis)(this.getOrient()) ? s.fieldZ : s.fieldY,
162
164
  (0, vscale_1.isContinuous)(this._scale.type) ? f : [ f[0] ];
163
165
  }
164
166
  _initTickData(sampling) {
165
167
  (0, register_1.registerDataSetInstanceParser)(this._option.dataSet, "scale", scale_1.scaleParser),
166
168
  (0, register_1.registerDataSetInstanceTransform)(this._option.dataSet, "ticks", vutils_extension_1.ticks);
167
- const label = this._spec.label || {}, tick = this._tick || {}, tickData = new vdataset_1.DataView(this._option.dataSet).parse(this._scale, {
169
+ const label = this._spec.label || {}, tick = this._tick || {}, tickData = new vdataset_1.DataView(this._option.dataSet, {
170
+ name: `${this.type}_${this.id}_ticks`
171
+ }).parse(this._scale, {
168
172
  type: "scale"
169
173
  }).transform({
170
174
  type: "ticks",
@@ -184,7 +188,7 @@ class CartesianAxis extends base_axis_1.AxisComponent {
184
188
  labelFlush: label.flush
185
189
  }
186
190
  }, !1);
187
- tickData.target.addListener("change", this._forceLayout.bind(this)), this._tickData = new data_1.CompilableData(this._option, tickData);
191
+ tickData.target.addListener("change", this._forceLayout.bind(this)), this._tickData = new compilable_data_1.CompilableData(this._option, tickData);
188
192
  }
189
193
  _initData() {
190
194
  this._initTickData(!1 !== this._spec.sampling);
@@ -204,12 +208,12 @@ class CartesianAxis extends base_axis_1.AxisComponent {
204
208
  var _a;
205
209
  const product = null === (_a = this._axisMark) || void 0 === _a ? void 0 : _a.getProduct();
206
210
  product && product.addEventListener(vgrammar_core_1.HOOK_EVENT.AFTER_ELEMENT_ENCODE, (() => {
207
- if (!1 === this._isLayout && ((0, util_2.isXAxis)(this.getOrient()) ? this.callPlugin((plugin => {
211
+ if (!1 === this._isLayout && ((0, common_1.isXAxis)(this.getOrient()) ? this.callPlugin((plugin => {
208
212
  this.pluginService && plugin.onDidLayoutHorizontal && plugin.onDidLayoutHorizontal(this.pluginService, this);
209
213
  })) : this.callPlugin((plugin => {
210
214
  this.pluginService && plugin.onDidLayoutVertical && plugin.onDidLayoutVertical(this.pluginService, this);
211
215
  })), this._delegateAxisContainerEvent(product.getGroupGraphicItem()), this._unitText)) {
212
- const bounds = product.graphicItem.AABBBounds, pos = (0, util_2.isXAxis)(this._orient) ? {
216
+ const bounds = product.graphicItem.AABBBounds, pos = (0, common_1.isXAxis)(this._orient) ? {
213
217
  x: bounds.x2,
214
218
  y: this.getLayoutStartPoint().y
215
219
  } : {
@@ -224,7 +228,8 @@ class CartesianAxis extends base_axis_1.AxisComponent {
224
228
  }
225
229
  onLayoutEnd(ctx) {
226
230
  this.updateScaleRange() ? this.event.emit(constant_1.ChartEvent.scaleUpdate, {
227
- model: this
231
+ model: this,
232
+ value: "range"
228
233
  }) : this.updateSeriesScale(), super.onLayoutEnd(ctx);
229
234
  }
230
235
  onRender(ctx) {}
@@ -246,8 +251,8 @@ class CartesianAxis extends base_axis_1.AxisComponent {
246
251
  var _a, _b, _c;
247
252
  let field;
248
253
  field = depth > 0 ? null === (_b = null === (_a = s.getGroups()) || void 0 === _a ? void 0 : _a.fields) || void 0 === _b ? void 0 : _b[depth] : (0,
249
- util_2.isXAxis)(this.getOrient()) ? s.fieldX2 ? [ ...s.fieldX, s.fieldX2 ] : s.fieldX : (0,
250
- util_2.isZAxis)(this.getOrient()) ? s.fieldZ : s.fieldY, field = (0, util_1.isArray)(field) ? (0,
254
+ common_1.isXAxis)(this.getOrient()) ? s.fieldX2 ? [ ...s.fieldX, s.fieldX2 ] : s.fieldX : (0,
255
+ common_1.isZAxis)(this.getOrient()) ? s.fieldZ : s.fieldY, field = (0, util_1.isArray)(field) ? (0,
251
256
  vscale_1.isContinuous)(this._scale.type) ? field : [ field[0] ] : [ field ], depth || (this._dataFieldText = s.getFieldAlias(field[0]));
252
257
  const seriesData = null === (_c = s.getViewDataStatistics) || void 0 === _c ? void 0 : _c.call(s);
253
258
  field && field.forEach((f => {
@@ -261,9 +266,9 @@ class CartesianAxis extends base_axis_1.AxisComponent {
261
266
  }
262
267
  updateSeriesScale() {
263
268
  (0, util_1.eachSeries)(this._regions, (s => {
264
- (0, util_2.isXAxis)(this.getOrient()) ? (s.setScaleX(this._scale), s.setXAxisHelper(this.axisHelper())) : (0,
265
- util_2.isYAxis)(this.getOrient()) ? (s.setScaleY(this._scale), s.setYAxisHelper(this.axisHelper())) : (0,
266
- util_2.isZAxis)(this.getOrient()) && (s.setScaleZ(this._scale), s.setZAxisHelper(this.axisHelper()));
269
+ (0, common_1.isXAxis)(this.getOrient()) ? (s.setScaleX(this._scale), s.setXAxisHelper(this.axisHelper())) : (0,
270
+ common_1.isYAxis)(this.getOrient()) ? (s.setScaleY(this._scale), s.setYAxisHelper(this.axisHelper())) : (0,
271
+ common_1.isZAxis)(this.getOrient()) && (s.setScaleZ(this._scale), s.setZAxisHelper(this.axisHelper()));
267
272
  }), {
268
273
  userId: this._seriesUserId,
269
274
  specIndex: this._seriesIndex
@@ -309,31 +314,43 @@ class CartesianAxis extends base_axis_1.AxisComponent {
309
314
  y2: 0
310
315
  };
311
316
  if (!this._visible) return result;
312
- this._verticalLimitSize = (0, util_2.isXAxis)(this.getOrient()) ? rect.height : rect.width,
313
- this.setLayoutRect(rect), this.updateScaleRange(), this.computeData();
317
+ this._verticalLimitSize = (0, common_1.isXAxis)(this.getOrient()) ? rect.height : rect.width,
318
+ this.setLayoutRect(rect);
319
+ this.updateScaleRange() && this.computeData("range");
314
320
  const context = {
315
321
  skipLayout: !1
316
- }, isX = (0, util_2.isXAxis)(this.getOrient());
322
+ }, isX = (0, common_1.isXAxis)(this.getOrient());
317
323
  this.pluginService && (isX ? this.callPlugin((plugin => {
318
324
  plugin.onWillLayoutHorizontal && plugin.onWillLayoutHorizontal(this.pluginService, context, this);
319
325
  })) : this.callPlugin((plugin => {
320
326
  plugin.onWillLayoutVertical && plugin.onWillLayoutVertical(this.pluginService, context, this);
321
327
  })));
322
328
  const product = this._axisMark.getProduct();
323
- if (this._latestBounds = product.getBounds(), !context.skipLayout) {
324
- const attrs = this._getUpdateAttribute(!0), updateBounds = product.getGroupGraphicItem().getBoundsWithoutRender((0,
325
- util_1.mergeSpec)(Object.assign({}, this.getLayoutStartPoint()), this._axisStyle, attrs));
329
+ let hasBounds = !1;
330
+ if (!context.skipLayout) {
331
+ const attrs = this._getUpdateAttribute(!0), axisComponent = product.getGroupGraphicItem(), spec = (0,
332
+ util_1.mergeSpec)(Object.assign({}, this.getLayoutStartPoint()), this._axisStyle, attrs, {
333
+ line: {
334
+ visible: !1
335
+ }
336
+ }), updateBounds = axisComponent.getBoundsWithoutRender(spec);
326
337
  isFinite(updateBounds.width()) && (result = this._appendAxisUnit(updateBounds, isX),
327
- this._latestBounds = updateBounds);
338
+ hasBounds = !0, this._latestBounds = updateBounds);
328
339
  }
329
- return result;
340
+ return hasBounds || (this._latestBounds = product.getBounds()), result;
330
341
  }
331
342
  updateLayoutAttribute() {
332
343
  if (!this.visible) return;
333
- const _a = this._getUpdateAttribute(!1), {grid: updateGridAttrs} = _a, updateAxisAttrs = __rest(_a, [ "grid" ]), axisProduct = this._axisMark.getProduct(), axisAttrs = (0,
334
- util_1.mergeSpec)(Object.assign({}, this.getLayoutStartPoint()), this._axisStyle, updateAxisAttrs);
344
+ const startPoint = this.getLayoutStartPoint(), _a = this._getUpdateAttribute(!1), {grid: updateGridAttrs} = _a, updateAxisAttrs = __rest(_a, [ "grid" ]), axisProduct = this._axisMark.getProduct(), axisAttrs = (0,
345
+ util_1.mergeSpec)({
346
+ x: startPoint.x,
347
+ y: startPoint.y
348
+ }, this._axisStyle, updateAxisAttrs);
335
349
  if (axisProduct.encode(axisAttrs), this._gridMark) {
336
- this._gridMark.getProduct().encode((0, util_1.mergeSpec)(Object.assign({}, this.getLayoutStartPoint()), this._getGridAttributes(), updateGridAttrs));
350
+ this._gridMark.getProduct().encode((0, util_1.mergeSpec)({
351
+ x: startPoint.x,
352
+ y: startPoint.y
353
+ }, this._getGridAttributes(), updateGridAttrs));
337
354
  }
338
355
  super.updateLayoutAttribute();
339
356
  }
@@ -363,8 +380,8 @@ class CartesianAxis extends base_axis_1.AxisComponent {
363
380
  }
364
381
  regionHeight = Math.abs(maxY - minY), regionWidth = Math.abs(maxX - minX);
365
382
  }
366
- const {width: width, height: height} = this.getLayoutRect(), isX = (0, util_2.isXAxis)(this._orient), isY = (0,
367
- util_2.isYAxis)(this._orient), isZ = (0, util_2.isZAxis)(this._orient);
383
+ const {width: width, height: height} = this.getLayoutRect(), isX = (0, common_1.isXAxis)(this._orient), isY = (0,
384
+ common_1.isYAxis)(this._orient), isZ = (0, common_1.isZAxis)(this._orient);
368
385
  let end = {
369
386
  x: 0,
370
387
  y: 0
@@ -473,7 +490,7 @@ class CartesianAxis extends base_axis_1.AxisComponent {
473
490
  }
474
491
  _transformSpec() {
475
492
  const chartSpec = this._option.getChart().getSpec();
476
- this._spec.inverse = (0, util_2.transformInverse)(this._spec, chartSpec.direction === space_1.Direction.horizontal);
493
+ this._spec.inverse = (0, common_1.transformInverse)(this._spec, chartSpec.direction === space_1.Direction.horizontal);
477
494
  }
478
495
  _appendAxisUnit(bounds, isX) {
479
496
  var _a;
@@ -509,5 +526,5 @@ class CartesianAxis extends base_axis_1.AxisComponent {
509
526
  }
510
527
  }
511
528
 
512
- exports.CartesianAxis = CartesianAxis, CartesianAxis.type = interface_1.ComponentTypeEnum.cartesianAxis;
529
+ exports.CartesianAxis = CartesianAxis, CartesianAxis.type = type_1.ComponentTypeEnum.cartesianAxis;
513
530
  //# sourceMappingURL=axis.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/component/axis/cartesian/axis.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAMA,wCAA2G;AAG3G,kDAAmD;AAGnD,6CAAgD;AAEhD,mDAAgD;AAChD,iCAA8F;AAC9F,gDAAgH;AAChH,mDAAsD;AACtD,4EAAmD;AAInD,+CAAoD;AACpD,2DAAqD;AAGrD,kCAA+C;AAE/C,qDAAyG;AACzG,sDAAyD;AAGzD,iEAAmD;AAGnD,iDAA8C;AAC9C,gDAAuD;AACvD,4CAA6C;AAE7C,yDAAoD;AAEpD,MAAM,mBAAmB,GAAG,CAAC,oBAAS,CAAC,cAAc,CAAC,CAAC;AAEvD,MAAsB,aACpB,SAAQ,yBAAgB;IAmBxB,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,IAAI,YAAY,CAAC,CAAc;QAC7B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAGD,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAQD,mBAAmB;QACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAeD,YAAY,IAAO,EAAE,OAAyB;QAC5C,KAAK,CAAC,IAAI,oBACL,OAAO,EACV,CAAC;QA1DL,SAAI,GAAG,6BAAiB,CAAC,aAAa,CAAC;QACvC,SAAI,GAAW,6BAAiB,CAAC,aAAa,CAAC;QAK/C,eAAU,GAA6B,iBAAiB,CAAC;QACzD,iBAAY,GAAW,uBAAY,CAAC,IAAI,CAAC;QACzC,gBAAW,GAAW,mBAAW,CAAC,IAAI,CAAC;QAM7B,YAAO,GAAgB,MAAM,CAAC;QAa9B,YAAO,GAAiB,EAAE,CAAC;QAO3B,sBAAiB,GAGvB,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAKpB,UAAK,GAAsB,SAAS,CAAC;QAOrC,iBAAY,GAIlB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,qBAAqB,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAwFnF,WAAM,GAAY;YAChB,WAAW,EAAE,GAAG,EAAE;gBAChB,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;oBACF,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;wBAC5B,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;qBAC3D;yBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;wBACnC,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;qBAC3D;yBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;wBACnC,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;qBAC3D;gBACH,CAAC,EACD;oBACE,MAAM,EAAE,IAAI,CAAC,aAAa;oBAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;iBAC7B,CACF,CAAC;YACJ,CAAC;SACF,CAAC;QAmiBM,mBAAc,GAAG,GAAG,EAAE;YAE5B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAClD,IAAI,IAAI,CAAC,OAAO,IAAI,MAAM,IAAI,OAAO,KAAK,KAAK,EAAE;gBAC/C,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBAChE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAY,CAAC;gBAC1E,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAGtC,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,EAAE;;oBAChC,OAAO,CACL,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACpD,IAAA,qBAAY,EAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;yBAClC,MAAA,IAAI;6BACD,WAAW,EAAE;6BACb,aAAa,EAAE,0CACd,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAA,CACpC,CAAC;gBACJ,CAAC,CAAC;gBACF,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtE,IAAI,YAAY,CAAC,MAAM,EAAE;oBACvB,IAAI,QAAQ,CAAC;oBACb,IAAI,IAAA,cAAO,EAAC,YAAY,CAAC,EAAE;wBACzB,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;qBAChE;yBAAM,IAAI,IAAA,cAAO,EAAC,eAAe,CAAC,EAAE;wBACnC,MAAM,SAAS,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;wBAClD,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE;4BAC1B,QAAQ,GAAG,SAAS,CAAC;yBACtB;qBACF;yBAAM;wBAEL,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;qBAC5B;oBACD,IAAI,QAAQ,EAAE;wBACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;wBAE7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;wBAE7C,IAAI,GAAG,EAAE;4BACP,QAAQ,CAAC,MAAM,CAAC;gCACd,IAAI,kCACC,IAAI,CAAC,UAAU,CAAC,IAAI,KACvB,EAAE,EAAE,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,GACxF;6BACF,CAAC,CAAC;yBACJ;6BAAM;4BACL,QAAQ,CAAC,MAAM,CAAC;gCACd,IAAI,kCACC,IAAI,CAAC,UAAU,CAAC,IAAI,KACvB,EAAE,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GACtF;6BACF,CAAC,CAAC;yBACJ;qBACF;iBACF;aACF;QACH,CAAC,CAAC;QAjsBA,IAAI,CAAC,OAAO,GAAG,IAAA,gBAAS,EAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;QACD,IAAA,cAAO,EAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,IAAS,EAAE,OAAyB,EAAE,eAAwB,KAAK;;QACnF,MAAM,QAAQ,GAAG,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAA,mBAAY,EAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,GAAG,aAAa,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC1D,MAAM,CAAC,GAAG,iBAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE;YACL,OAAO,IAAI,CAAC,iCAEL,IAAI,KACP,IAAI,EAAE,QAAQ,KAEhB,OAAO,CACC,CAAC;SACZ;QACD,OAAO,CAAC,OAAO,CAAC,aAAa,aAAa,YAAY,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAS,EAAE,OAAyB;QACzD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;YAC7C,OAAO,IAAI,CAAC;SACb;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,WAAW,CAAC,EAAE;YACnD,OAAO,IAAI,CAAC;SACb;QACD,IAAI,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC;QAClE,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,IAAI,CAAC;SACb;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,UAAU,CAAC;QAC7D,IAAI,CAAC,IAAA,cAAO,EAAC,QAAQ,CAAC,EAAE;YAEtB,IAAI,CAAC,IAAA,2BAAoB,EAAC,QAAQ,CAAC,EAAE;gBACnC,OAAO,IAAI,CAAC;aACb;YACD,OAAO,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;SAClE;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,KAAK,EAAE;YACT,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,cAAO,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEzD,KAAK,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC;SACjD;QACD,IAAI,CAAC,KAAK,EAAE;YACV,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC;SACnD;QACD,MAAM,IAAI,GAAY,EAAE,CAAC;QACzB,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE;YAClC,IAAI,CAAC,IAAA,2BAAoB,EAAC,CAAC,CAAC,EAAE;gBAC5B,OAAO;aACR;YACD,IAAI,CAAC,IAAI,CACP,aAAa,CAAC,UAAU,CACtB,CAAC,kCAEI,OAAO,KACV,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,aAAa,CAAC,OAAO,KAEhC,YAAY,CACJ,CACX,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,KAAwD;QACrE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IA4BS,gBAAgB;QACxB,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAI,QAAQ,GAAa,EAAE,CAAC;QAC5B,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;YAC7B,IAAI,IAAA,oBAAa,EAAC,KAAK,CAAC,EAAE;gBACxB,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aAC9C;SACF;aAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;YACpC,IAAI,IAAA,oBAAa,EAAC,KAAK,CAAC,EAAE;gBACxB,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;aAC7B;SACF;aAAM;YACL,IAAI,IAAA,oBAAa,EAAC,MAAM,CAAC,EAAE;gBACzB,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;aAChD;SACF;QAED,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YAChD,aAAa,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC7B;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,IAAI,CAAC,MAAwB;;QAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,MAAA,IAAI,CAAC,aAAa,0CAAE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YACvB,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YACtC,IAAI,GAAG,EAAE;gBACP,IAAI,IAAA,kBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBACrC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;iBAC9B;aACF;iBAAM,IAAI,IAAA,kBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC3C,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;aAC7B;YAED,MAAM,SAAS,GAAQ,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACjD,SAAS,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC3D,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/F,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;SAC7B;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAC/B,CAAC;IAES,wBAAwB,CAAC,CAAmB;QACpD,IAAI,CAAW,CAAC;QAChB,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;YAC7B,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;SACd;aAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;YACpC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;SACd;aAAM;YACL,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;SACd;QACD,IAAI,IAAA,qBAAY,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAClC,OAAO,CAAC,CAAC;SACV;QACD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAES,aAAa,CAAC,QAAiB;QACvC,IAAA,wCAA6B,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,mBAAW,CAAC,CAAC;QAC1E,IAAA,2CAAgC,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,wBAAK,CAAC,CAAC;QAEvE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aAChD,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;YAClB,IAAI,EAAE,OAAO;SACd,CAAC;aACD,SAAS,CACR;YACE,IAAI,EAAE,OAAO;YACb,OAAO,EAAE;gBACP,QAAQ;gBACR,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAE3B,cAAc,EAAE,IAAI,CAAC,OAAO;gBAC5B,cAAc,EAAE,WAAW;gBAE3B,UAAU,EAAE,KAAK,CAAC,KAAK;gBACvB,cAAc,EAAE,KAAK,CAAC,YAAY;gBAClC,QAAQ,EAAE,KAAK,CAAC,MAAM;gBAEtB,gBAAgB,EAAE,KAAK,CAAC,WAAW;gBACnC,UAAU,EAAE,KAAK,CAAC,KAAK;aACC;SAC3B,EACD,KAAK,CACN,CAAC;QACJ,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAc,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAES,SAAS;QACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC;IACpD,CAAC;IAES,UAAU;QAClB,MAAM,QAAQ,GAAG,CAAC,QAAgB,CAAC,EAAE,EAAE;YACrC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,OAAO;YACL,YAAY,EAAE,IAAA,qBAAY,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAC5C,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,QAAQ;YACR,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACrD,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI;YAC5B,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE;YACxB,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,IAAI;SAC7C,CAAC;IACJ,CAAC;IAGD,YAAY;;QACV,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,SAAS,0CAAE,UAAU,EAAE,CAAC;QAC7C,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,gBAAgB,CAAC,0BAAU,CAAC,oBAAoB,EAAE,GAAG,EAAE;gBAC7D,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;oBAG5B,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;wBAC7B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;4BACvB,IAAI,CAAC,aAAa;gCAChB,MAAM,CAAC,qBAAqB;gCAC5B,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;wBAC3D,CAAC,CAAC,CAAC;qBACJ;yBAAM;wBACL,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;4BACvB,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;wBAC3G,CAAC,CAAC,CAAC;qBACJ;oBACD,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;oBAGhE,IAAI,IAAI,CAAC,SAAS,EAAE;wBAClB,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;wBAC9C,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC;4BAC/B,CAAC,CAAC;gCACE,CAAC,EAAE,MAAM,CAAC,EAAE;gCACZ,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;6BAChC;4BACH,CAAC,CAAC;gCACE,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;gCAC/B,CAAC,EAAE,MAAM,CAAC,EAAE;6BACb,CAAC;wBAEN,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;qBACnC;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YACvB,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,IAAI,aAAa,EAAE;YACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAU,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;SAE1D;aAAM;YACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC1B;QACD,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,QAAQ,CAAC,GAAQ;IAEjB,CAAC;IAED,aAAa,CAAC,OAAkB;IAEhC,CAAC;IAED,MAAM,CAAC,GAAqB;IAE5B,CAAC;IAED,MAAM,CAAC,GAAqB;IAE5B,CAAC;IAES,YAAY;QACpB,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;YACF,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,SAAS,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,KAAK,OAAO;gBACzD,CAAC,CAAE,CAAsB,CAAC,MAAM;gBAChC,CAAC,CAAE,CAAsB,CAAC,MAAM,CACnC,CAAC;QACJ,CAAC,EACD;YACE,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;SAC7B,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,WAAW,CAAC,KAAc;QAClC,MAAM,IAAI,GAAkD,EAAE,CAAC;QAC/D,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;;YACF,IAAI,KAAwB,CAAC;YAC7B,IAAI,KAAK,GAAG,CAAC,EAAE;gBACb,KAAK,GAAG,MAAA,MAAA,CAAC,CAAC,SAAS,EAAE,0CAAE,MAAM,0CAAG,KAAK,CAAC,CAAC;aACxC;iBAAM;gBACL,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;oBAC7B,KAAK,GAAI,CAAsB,CAAC,OAAO;wBACrC,CAAC,CAAC,CAAC,GAAI,CAAsB,CAAC,MAAM,EAAG,CAAsB,CAAC,OAAO,CAAC;wBACtE,CAAC,CAAE,CAAsB,CAAC,MAAM,CAAC;iBACpC;qBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;oBACpC,KAAK,GAAI,CAAsB,CAAC,MAAM,CAAC;iBACxC;qBAAM;oBACL,KAAK,GAAI,CAAsB,CAAC,MAAM,CAAC;iBACxC;aACF;YACD,KAAK,GAAG,CAAC,IAAA,cAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAY,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAa,CAAC;YACvG,IAAI,CAAC,KAAK,EAAE;gBACV,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACjD;YACD,MAAM,UAAU,GAAG,MAAA,CAAC,CAAC,qBAAqB,iDAAI,CAAC;YAC/C,IAAI,KAAK,EAAE;gBACT,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;;oBAChB,IAAI,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,0CAAG,CAAC,CAAC,EAAE;wBAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;qBACrC;gBACH,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,EACD;YACE,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;SAC7B,CACF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAES,iBAAiB;QACzB,IAAA,iBAAU,EACR,IAAI,CAAC,QAAQ,EACb,CAAC,CAAC,EAAE;YACF,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;gBAC5B,CAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9C,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;aAC3D;iBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;gBACnC,CAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9C,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;aAC3D;iBAAM,IAAI,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE;gBACnC,CAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9C,CAAsB,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;aAC3D;QACH,CAAC,EACD;YACE,MAAM,EAAE,IAAI,CAAC,aAAa;YAC1B,SAAS,EAAE,IAAI,CAAC,YAAY;SAC7B,CACF,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,GAAoB;QACzC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC;QAEnB,IAAI,IAAA,oBAAa,EAAC,CAAC,CAAC,EAAE;YACpB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;SACnE;QACD,IAAI,IAAA,oBAAa,EAAC,CAAC,CAAC,EAAE;YACpB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;SACnE;QACD,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,mBAAmB,CAAC,IAAiB;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO,MAAM,CAAC;SACf;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;QAClH,QAAQ,IAAI,CAAC,aAAa,EAAE;YAC1B,KAAK,MAAM;gBACT,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,KAAK,oCAAyB,EAAE;oBAChE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/C;gBACD,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,KAAK,oCAAyB,EAAE;oBAChE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC9C;gBACD,MAAM;YACR,KAAK,KAAK;gBACR,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,KAAK,oCAAyB,EAAE;oBACjE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAChD;gBACD,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,KAAK,oCAAyB,EAAE;oBACjE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/C;gBACD,MAAM;YACR;gBACE,MAAM;SACT;QACD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC;IAMD,aAAa,CAAC,IAAiB;QAC7B,IAAI,MAAM,GAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAO,MAAM,CAAC;SACf;QACD,IAAI,CAAC,kBAAkB,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAE/E,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,GAAG;gBACD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;oBACvB,MAAM,CAAC,sBAAsB,IAAI,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBACpG,CAAC,CAAC;gBACJ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;oBACvB,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAChG,CAAC,CAAC,CAAC;SACR;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,aAAa,CAAC,sBAAsB,CACvD,IAAA,gBAAS,oBAAM,IAAI,CAAC,mBAAmB,EAAE,GAAI,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CACrE,CAAC;YACF,IAAI,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE;gBAGlC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBACjD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;aACnC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO;SACR;QAED,MAAM,KAAgD,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAA/E,EAAE,IAAI,EAAE,eAAe,OAAwD,EAAnD,eAAe,cAA3C,QAA6C,CAAkC,CAAC;QACtF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,IAAA,gBAAS,oBAAM,IAAI,CAAC,mBAAmB,EAAE,GAAI,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QACjG,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE9B,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAChD,WAAW,CAAC,MAAM,CAAC,IAAA,gBAAS,oBAAM,IAAI,CAAC,mBAAmB,EAAE,GAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;SAC9G;QAED,KAAK,CAAC,qBAAqB,EAAE,CAAC;IAChC,CAAC;IAEO,cAAc,CAAC,GAAY;;QACjC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,IAAA,YAAK,EAAC,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,0CAAE,YAAY,CAAC,EAAE;YAC3E,MAAM,KAAK,GAAG,MAAA,MAAA,MAAA,IAAI,CAAC,UAAU,CAAC,KAAK,0CAAE,KAAK,mCAAI,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,0CAAE,KAAK,mCAAI,CAAC,CAAC;YACjF,IAAI,GAAG,EAAE;gBACP,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;gBACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAG3C,OAAO,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,QAAQ,CAAC;aACtD;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAG3C,OAAO,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC;SACvD;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,mBAAmB,CAAC,UAAmB;;QAE7C,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;YAC5D,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;YACnD,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;YAEpD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACnD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBAC9C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;gBAEjD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBACjC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;aACnC;YACD,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;YACrC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;SACrC;QAED,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACzB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,IAAI,GAAG,EAAE;YACP,GAAG,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,UAAU,GAAG,YAAY,CAAC;YAC1B,UAAU,GAAG,KAAK,CAAC;SACpB;aAAM,IAAI,GAAG,EAAE;YACd,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;YAC1B,UAAU,GAAG,WAAW,CAAC;YACzB,UAAU,GAAG,MAAM,CAAC;SACrB;QACD,IAAI,GAAG,EAAE;YACP,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,YAAY,mCAAI,KAAK,CAAC;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,YAAY,KAAK,KAAK,EAAE;gBAC1B,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBAC5B,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBACrB,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;aACrB;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,SAAS,GAAQ;gBACrB,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;gBACrB,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE;gBACvB,CAAC,EAAE,CAAC;gBACJ,KAAK;gBACL,QAAQ;gBACR,KAAK,EAAE;oBACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc;oBAClD,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;iBACnC;gBACD,KAAK;aACN,CAAC;YACF,IAAI,CAAC,UAAU,EAAE;gBACf,SAAS,CAAC,IAAI,GAAG;oBACf,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;oBACrB,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE;oBACvB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;oBACf,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc;oBAC9C,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,YAAY;oBACpB,CAAC,EAAE,CAAC;oBACJ,KAAK;oBACL,QAAQ;iBACT,CAAC;aACH;YACD,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAC7D,IACE,CAAC,GAAG,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,KAAK,iCAAsB,CAAC;YACnE,CAAC,GAAG,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,KAAK,iCAAsB,CAAC,EAClE;YACA,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC;SAC3C;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAQ;YACjB,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACrB,GAAG;YACH,KAAK,EAAE;gBACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc;gBAClD,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;aACnC;YACD,KAAK;YACL,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;YAC1C,eAAe;SAChB,CAAC;QACF,IAAI,CAAC,UAAU,EAAE;YACf,KAAK,CAAC,IAAI,GAAG;gBACX,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;gBACrB,GAAG;gBACH,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;gBACf,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc;gBAC9C,KAAK;gBACL,MAAM,EAAE,UAAU;aACnB,CAAC;SACH;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAES,SAAS;QACjB,KAAK,CAAC,SAAS,EAAE,CAAC;QAElB,IAAI,IAAI,CAAC,OAAO,EAAE;YAEhB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAU,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAEzD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAU,CAAC,gBAAgB,EAAE,GAAG,EAAE;gBAC9C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IA4DS,sBAAsB,CAAC,IAAiB;QAChD,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAChC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;aACpC;iBAAM;gBACL,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;aACpC;QACH,CAAC,CAAC,CAAC;QAGH,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACrC,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE;gBAClF,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;aAChF;iBAAM;gBACL,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;aAChF;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,qBAAqB,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IAC3E,CAAC;IAED,YAAY;QAEV,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAES,cAAc;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAA,uBAAgB,EAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,KAAK,iBAAS,CAAC,UAAU,CAAC,CAAC;IAClG,CAAC;IAEO,eAAe,CAAC,MAAe,EAAE,GAAY;;QACnD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE;YAC9C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACxC,IAAI,GAAG,CAAC;YACR,IAAI,aAAkB,CAAC;YACvB,IAAI,GAAG,EAAE;gBACP,GAAG,GAAG;oBACJ,CAAC,EAAE,MAAM,CAAC,EAAE;oBACZ,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;iBAChC,CAAC;gBACF,aAAa,GAAG;oBACd,SAAS,EAAE,MAAM;oBACjB,YAAY,EAAE,QAAQ;iBACvB,CAAC;aACH;iBAAM;gBACL,GAAG,GAAG;oBACJ,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;oBAC/B,CAAC,EAAE,MAAM,CAAC,EAAE;iBACb,CAAC;gBACF,aAAa,GAAG;oBACd,SAAS,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;oBACrD,YAAY,EAAE,QAAQ;iBACvB,CAAC;aACH;YAED,aAAa,iDACR,aAAa,GACb,KAAK,KACR,CAAC,EAAE,GAAG,CAAC,CAAC,EACR,CAAC,EAAE,GAAG,CAAC,CAAC,EACR,IAAI,GACL,CAAC;YACF,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;aAC7C;iBAAM;gBACL,IAAI,CAAC,SAAS,GAAG,IAAA,yBAAU,EAAC,aAAa,CAAC,CAAC;gBAC3C,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,WAAW,CAAC;gBAClC,MAAA,IAAI,CAAC,YAAY,EAAE,0CAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC1C;YAGD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YAC7C,IAAI,CAAC,GAAG,EAAE;gBACR,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvE,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACxE;iBAAM;gBACL,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvE,MAAM,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACxE;SACF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,CAAC;;AAj2BH,sCAk2BC;AA91BQ,kBAAI,GAAG,6BAAiB,CAAC,aAAa,CAAC","file":"axis.js","sourcesContent":["import type { IBounds, IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IEffect, IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { ICartesianSeries } from '../../../series/interface';\nimport type { IRegion } from '../../../region/interface';\nimport type { IAxisLocationCfg, ICartesianAxisCommonSpec, IAxisHelper, ICartesianAxisCommonTheme } from './interface';\nimport { isArray, isValid, isValidNumber, mergeSpec, eachSeries, isNil, isUndefined } from '../../../util';\nimport type { IOrientType } from '../../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../../typings/space';\nimport type { IBaseScale } from '@visactor/vscale';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport { Factory } from '../../../core/factory';\nimport { autoAxisType, isXAxis, getOrient, isZAxis, isYAxis, transformInverse } from './util';\nimport { ChartEvent, DEFAULT_LAYOUT_RECT_LEVEL, LayoutZIndex, USER_LAYOUT_RECT_LEVEL } from '../../../constant';\nimport { LayoutLevel } from '../../../constant/index';\nimport pluginMap from '../../../plugin/components';\nimport type { IPoint, StringOrNumber } from '../../../typings';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface';\nimport { HOOK_EVENT } from '@visactor/vgrammar-core';\nimport type { LineAxisAttributes } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValidCartesianAxis } from '../util';\nimport type { IAxis, ITick } from '../interface';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../../data/register';\nimport { scaleParser } from '../../../data/parser/scale';\nimport type { ICartesianTickDataOpt } from '@visactor/vutils-extension';\n// eslint-disable-next-line no-duplicate-imports\nimport { ticks } from '@visactor/vutils-extension';\nimport type { DataSet } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport { CompilableData } from '../../../compile/data';\nimport { AxisComponent } from '../base-axis';\nimport type { IGraphic, IText } from '@visactor/vrender-core';\nimport { createText } from '@visactor/vrender-core';\n\nconst CartesianAxisPlugin = [pluginMap.AxisSyncPlugin];\n\nexport abstract class CartesianAxis<T extends ICartesianAxisCommonSpec = ICartesianAxisCommonSpec>\n extends AxisComponent<T>\n implements IAxis\n{\n static type = ComponentTypeEnum.cartesianAxis;\n type = ComponentTypeEnum.cartesianAxis;\n name: string = ComponentTypeEnum.cartesianAxis;\n\n // 标记这个布局Item的方向(left->right, right->left, top->bottom, bottom->top)\n declare directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';\n\n layoutType: LayoutItem['layoutType'] = 'region-relative';\n layoutZIndex: number = LayoutZIndex.Axis;\n layoutLevel: number = LayoutLevel.Axis;\n\n protected _dataSet: DataSet;\n\n layout3dBox?: { width: number; height: number; length: number };\n\n protected _orient: IOrientType = 'left';\n getOrient() {\n return this._orient;\n }\n\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: IOrientType) {\n this._orient = v;\n this._layoutOrient = v;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected declare _theme: ICartesianAxisCommonTheme;\n\n protected _statisticsDomain: {\n domain: any[];\n index: { [key in StringOrNumber]: number };\n } = { domain: [], index: {} };\n getStatisticsDomain() {\n return this._statisticsDomain;\n }\n\n protected _tick: ITick | undefined = undefined;\n\n private _axisStyle: Partial<LineAxisAttributes>;\n private _latestBounds: IBounds;\n private _verticalLimitSize: number;\n private _unitText: IText;\n\n protected _layoutCache: {\n width: number;\n height: number;\n _lastComputeOutBounds: IBoundsLike;\n } = { width: 0, height: 0, _lastComputeOutBounds: { x1: 0, x2: 0, y1: 0, y2: 0 } };\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, {\n ...options\n });\n this._orient = getOrient(spec, ['z']);\n if (isZAxis(this._orient)) {\n this.layoutType = 'absolute';\n }\n isValid(spec.autoIndent) && (this._autoIndent = spec.autoIndent);\n this._layoutOrient = this._orient;\n this._dataSet = options.dataSet;\n }\n\n static createAxis(spec: any, options: IComponentOption, isHorizontal: boolean = false): IAxis {\n const axisType = spec.type ?? autoAxisType(spec.orient, isHorizontal);\n const componentName = `${CartesianAxis.type}-${axisType}`;\n const C = Factory.getComponentInKey(componentName);\n if (C) {\n return new C(\n {\n ...spec,\n type: axisType\n },\n options\n ) as IAxis;\n }\n options.onError(`Component ${componentName} not found`);\n return null;\n }\n\n static createComponent(spec: any, options: IComponentOption) {\n if (!this.type.startsWith(CartesianAxis.type)) {\n return null;\n }\n const regions = options.getRegionsInIndex();\n if (regions.find(r => r.coordinate !== 'cartesian')) {\n return null;\n }\n let axesSpec = spec[CartesianAxis.specKey] || options.defaultSpec;\n if (!axesSpec) {\n return null;\n }\n const isHorizontal = spec.direction === Direction.horizontal;\n if (!isArray(axesSpec)) {\n // 如果非法,或者只有一个z轴就不创建\n if (!isValidCartesianAxis(axesSpec)) {\n return null;\n }\n return CartesianAxis.createAxis(axesSpec, options, isHorizontal);\n }\n // 处理spec\n const zAxis = axesSpec.filter(s => s.orient === 'z')[0];\n let valid = true;\n if (zAxis) {\n const xAxis = axesSpec.filter(s => s.orient === 'bottom')[0];\n const yAxis = axesSpec.filter(s => isYAxis(s.orient))[0];\n // 必须有x和y,且x必须是bottom\n valid = axesSpec.length === 3 && xAxis && yAxis;\n }\n if (!valid) {\n axesSpec = axesSpec.filter(s => s.orient !== 'z');\n }\n const axes: IAxis[] = [];\n axesSpec.forEach((s: any, i: any) => {\n if (!isValidCartesianAxis(s)) {\n return;\n }\n axes.push(\n CartesianAxis.createAxis(\n s,\n {\n ...options,\n specIndex: i,\n specKey: CartesianAxis.specKey\n },\n isHorizontal\n ) as IAxis\n );\n });\n return axes;\n }\n\n setLayout3dBox(box3d: { width: number; height: number; length: number }) {\n this.layout3dBox = box3d;\n }\n\n effect: IEffect = {\n scaleUpdate: () => {\n this.computeData();\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.getOrient())) {\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.getOrient())) {\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.getOrient())) {\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n };\n\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract dataToPosition(values: any[], cfg?: IAxisLocationCfg): number;\n abstract valueToPosition(value: any): number;\n\n protected updateScaleRange() {\n let isScaleChange = false;\n const { width, height } = this.getLayoutRect();\n const inverse = this._spec.inverse;\n let newRange: number[] = [];\n if (isXAxis(this.getOrient())) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n }\n } else if (isZAxis(this.getOrient())) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n this._scale.range(newRange);\n }\n } else {\n if (isValidNumber(height)) {\n newRange = inverse ? [0, height] : [height, 0];\n }\n }\n\n const [start, end] = this._scale.range();\n if (newRange[0] !== start || newRange[1] !== end) {\n isScaleChange = true;\n this._scale.range(newRange);\n }\n\n return isScaleChange;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n this.pluginService?.load(CartesianAxisPlugin.map(P => new P()));\n this.callPlugin(plugin => {\n this.pluginService && plugin.onInit && plugin.onInit(this.pluginService, this);\n });\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n if (this.visible) {\n const isX = isXAxis(this.getOrient());\n if (isX) {\n if (isUndefined(this._spec.maxHeight)) {\n this._spec.maxHeight = '30%';\n }\n } else if (isUndefined(this._spec.maxWidth)) {\n this._spec.maxWidth = '30%';\n }\n\n const axisStyle: any = this._getAxisAttributes();\n axisStyle.label.formatMethod = this.getLabelFormatMethod();\n axisStyle.verticalFactor = this.getOrient() === 'top' || this.getOrient() === 'right' ? -1 : 1;\n this._axisStyle = axisStyle;\n }\n this._tick = this._spec.tick;\n }\n\n protected getSeriesStatisticsField(s: ICartesianSeries) {\n let f: string[];\n if (isXAxis(this.getOrient())) {\n f = s.fieldX;\n } else if (isZAxis(this.getOrient())) {\n f = s.fieldZ;\n } else {\n f = s.fieldY;\n }\n if (isContinuous(this._scale.type)) {\n return f;\n }\n return [f[0]];\n }\n\n protected _initTickData(sampling: boolean) {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n\n const label = this._spec.label || {};\n const tick = this._tick || {};\n const tickData = new DataView(this._option.dataSet)\n .parse(this._scale, {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options: {\n sampling,\n tickCount: tick.tickCount,\n forceTickCount: tick.forceTickCount,\n tickStep: tick.tickStep,\n tickMode: tick.tickMode,\n noDecimals: tick.noDecimals,\n\n axisOrientType: this._orient,\n coordinateType: 'cartesian',\n\n labelStyle: label.style,\n labelFormatter: label.formatMethod,\n labelGap: label.minGap,\n\n labelLastVisible: label.lastVisible,\n labelFlush: label.flush\n } as ICartesianTickDataOpt\n },\n false\n );\n tickData.target.addListener('change', this._forceLayout.bind(this));\n\n this._tickData = new CompilableData(this._option, tickData);\n }\n\n protected _initData() {\n this._initTickData(this._spec.sampling !== false); // default do sampling\n }\n\n protected axisHelper(): IAxisHelper {\n const getScale = (depth: number = 0) => {\n return this._scales[depth];\n };\n return {\n isContinuous: isContinuous(this._scale.type),\n dataToPosition: this.dataToPosition.bind(this),\n getScale,\n getStatisticsDomain: () => this.getStatisticsDomain(),\n getAxisType: () => this.type,\n getAxisId: () => this.id,\n isInverse: () => this._spec.inverse === true\n };\n }\n\n /** LifeCycle API**/\n afterCompile() {\n const product = this._axisMark?.getProduct();\n if (product) {\n product.addEventListener(HOOK_EVENT.AFTER_ELEMENT_ENCODE, () => {\n if (this._isLayout === false) {\n // 布局结束之后再进行插件的调用\n // 插件在布局后\n if (isXAxis(this.getOrient())) {\n this.callPlugin(plugin => {\n this.pluginService &&\n plugin.onDidLayoutHorizontal &&\n plugin.onDidLayoutHorizontal(this.pluginService, this);\n });\n } else {\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidLayoutVertical && plugin.onDidLayoutVertical(this.pluginService, this);\n });\n }\n this._delegateAxisContainerEvent(product.getGroupGraphicItem());\n\n // 更新单位的显示位置\n if (this._unitText) {\n const bounds = product.graphicItem.AABBBounds;\n const pos = isXAxis(this._orient)\n ? {\n x: bounds.x2,\n y: this.getLayoutStartPoint().y\n }\n : {\n x: this.getLayoutStartPoint().x,\n y: bounds.y1\n };\n\n this._unitText.setAttributes(pos);\n }\n }\n });\n }\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidCompile && plugin.onDidCompile(this.pluginService, this);\n });\n }\n\n onLayoutEnd(ctx: any): void {\n const isRangeChange = this.updateScaleRange();\n if (isRangeChange) {\n this.event.emit(ChartEvent.scaleUpdate, { model: this });\n // 这里会执行 computeData ,会执行系列scale更新\n } else {\n this.updateSeriesScale();\n }\n super.onLayoutEnd(ctx);\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n protected collectScale() {\n const scales: IBaseScale[] = [];\n eachSeries(\n this._regions,\n s => {\n scales.push(\n this.getOrient() === 'left' || this.getOrient() === 'right'\n ? (s as ICartesianSeries).scaleY\n : (s as ICartesianSeries).scaleX\n );\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return scales;\n }\n\n protected collectData(depth?: number) {\n const data: { min: number; max: number; values: any[] }[] = [];\n eachSeries(\n this._regions,\n s => {\n let field: string | string[];\n if (depth > 0) {\n field = s.getGroups()?.fields?.[depth];\n } else {\n if (isXAxis(this.getOrient())) {\n field = (s as ICartesianSeries).fieldX2\n ? [...(s as ICartesianSeries).fieldX, (s as ICartesianSeries).fieldX2]\n : (s as ICartesianSeries).fieldX;\n } else if (isZAxis(this.getOrient())) {\n field = (s as ICartesianSeries).fieldZ;\n } else {\n field = (s as ICartesianSeries).fieldY;\n }\n }\n field = (isArray(field) ? (isContinuous(this._scale.type) ? field : [field[0]]) : [field]) as string[];\n if (!depth) {\n this._dataFieldText = s.getFieldAlias(field[0]);\n }\n const seriesData = s.getViewDataStatistics?.();\n if (field) {\n field.forEach(f => {\n if (seriesData?.latestData?.[f]) {\n data.push(seriesData.latestData[f]);\n }\n });\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return data;\n }\n\n protected updateSeriesScale() {\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleX(this._scale);\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleY(this._scale);\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleZ(this._scale);\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n setLayoutStartPosition(pos: Partial<IPoint>): void {\n let { x, y } = pos;\n\n if (isValidNumber(x)) {\n x += Number(this._orient === 'left') * this.getLayoutRect().width;\n }\n if (isValidNumber(y)) {\n y += Number(this._orient === 'top') * this.getLayoutRect().height;\n }\n super.setLayoutStartPosition({ x, y });\n }\n\n computeBoundsInRect(rect: ILayoutRect) {\n const result = super.computeBoundsInRect(rect);\n if (!this._visible) {\n return result;\n }\n const bounds = this._latestBounds.clone().translate(-this.getLayoutStartPoint().x, -this.getLayoutStartPoint().y);\n switch (this._layoutOrient) {\n case 'left':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x1 < 0 ? -bounds.x1 : 0;\n }\n break;\n case 'right':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x2 > 0 ? bounds.x2 : 0;\n }\n break;\n case 'top':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y1 < 0 ? -bounds.y1 : 0;\n }\n break;\n case 'bottom':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y2 > 0 ? bounds.y2 : 0;\n }\n break;\n default:\n break;\n }\n result.width = Math.ceil(result.width);\n result.height = Math.ceil(result.height);\n // because of changed width\\height, reset result in spec configuration.\n return this._setRectInSpec(this._layoutCacheProcessing(result));\n }\n /**\n * bounds 预计算\n * @param rect\n * @returns\n */\n _boundsInRect(rect: ILayoutRect): IBoundsLike {\n let result: IBoundsLike = { x1: 0, y1: 0, x2: 0, y2: 0 };\n if (!this._visible) {\n return result;\n }\n this._verticalLimitSize = isXAxis(this.getOrient()) ? rect.height : rect.width;\n\n this.setLayoutRect(rect);\n this.updateScaleRange();\n this.computeData();\n const context = { skipLayout: false };\n const isX = isXAxis(this.getOrient());\n if (this.pluginService) {\n isX\n ? this.callPlugin(plugin => {\n plugin.onWillLayoutHorizontal && plugin.onWillLayoutHorizontal(this.pluginService, context, this);\n })\n : this.callPlugin(plugin => {\n plugin.onWillLayoutVertical && plugin.onWillLayoutVertical(this.pluginService, context, this);\n });\n }\n const product = this._axisMark.getProduct();\n this._latestBounds = product.getBounds();\n if (!context.skipLayout) {\n const attrs = this._getUpdateAttribute(true);\n const axisComponent = product.getGroupGraphicItem();\n const updateBounds = axisComponent.getBoundsWithoutRender(\n mergeSpec({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs)\n );\n if (isFinite(updateBounds.width())) {\n // 因为轴单位在某些区域显示的时候,是不参与轴某个方向的包围盒计算的,\n // 所以不太合适放在轴组件内支持,所以就在 VChart 层的轴组件上通过添加 text 图元支持\n result = this._appendAxisUnit(updateBounds, isX);\n this._latestBounds = updateBounds;\n }\n }\n return result;\n }\n\n updateLayoutAttribute(): void {\n if (!this.visible) {\n return;\n }\n // 正式的更新布局属性\n const { grid: updateGridAttrs, ...updateAxisAttrs } = this._getUpdateAttribute(false);\n const axisProduct = this._axisMark.getProduct(); // 获取语法元素\n const axisAttrs = mergeSpec({ ...this.getLayoutStartPoint() }, this._axisStyle, updateAxisAttrs);\n axisProduct.encode(axisAttrs);\n\n if (this._gridMark) {\n const gridProduct = this._gridMark.getProduct(); // 获取语法元素\n gridProduct.encode(mergeSpec({ ...this.getLayoutStartPoint() }, this._getGridAttributes(), updateGridAttrs));\n }\n\n super.updateLayoutAttribute();\n }\n\n private _getTitleLimit(isX: boolean) {\n if (this._spec.title.visible && isNil(this._spec.title.style?.maxLineWidth)) {\n const angle = this._axisStyle.title?.angle ?? this._spec.title.style?.angle ?? 0;\n if (isX) {\n const width = this.getLayoutRect().width;\n const cosValue = Math.abs(Math.cos(angle));\n // VRender 接收到的limit是考虑角度计算后的宽度\n // TODO:还需要考虑angle后,高度是否太高,综合计算一个limit,比如高度不能超过图表整体高度的1/4\n return cosValue < 1e-6 ? Infinity : width / cosValue;\n }\n const height = this.getLayoutRect().height;\n const sinValue = Math.abs(Math.sin(angle));\n\n // TODO:还需要考虑angle后,宽度是否太宽,综合计算一个limit,比如宽度度不能超过图表整体宽度的1/4\n return sinValue < 1e-6 ? Infinity : height / sinValue;\n }\n\n return null;\n }\n\n private _getUpdateAttribute(ignoreGrid: boolean) {\n // 获取更新的坐标轴属性\n let regionHeight = 0;\n let regionWidth = 0;\n\n if (!ignoreGrid) {\n const regions = this.getRegions();\n let { x: minX, y: minY } = regions[0].getLayoutStartPoint();\n let maxX = minX + regions[0].getLayoutRect().width;\n let maxY = minY + regions[0].getLayoutRect().height;\n\n for (let index = 1; index < regions.length; index++) {\n const region = regions[index];\n const { x, y } = region.getLayoutStartPoint();\n const { width, height } = region.getLayoutRect();\n\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, width + x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, height + y);\n }\n regionHeight = Math.abs(maxY - minY);\n regionWidth = Math.abs(maxX - minX);\n }\n\n const { width, height } = this.getLayoutRect();\n const isX = isXAxis(this._orient);\n const isY = isYAxis(this._orient);\n const isZ = isZAxis(this._orient);\n let end = { x: 0, y: 0 };\n let gridLength = 0;\n let axisLength = 0;\n const depth = this.layout3dBox ? this.layout3dBox.length : 0;\n if (isX) {\n end = { x: width, y: 0 };\n gridLength = regionHeight;\n axisLength = width;\n } else if (isY) {\n end = { x: 0, y: height };\n gridLength = regionWidth;\n axisLength = height;\n }\n if (isZ) {\n const directionStr = this.directionStr ?? 'r2l';\n const depthZ = this.layout3dBox ? this.layout3dBox.width : 0;\n let anchor3d = [0, 0];\n let alpha = -Math.PI / 2;\n let z = 0;\n if (directionStr === 'l2r') {\n z = this.layout3dBox.length;\n anchor3d = [0, 0, 0];\n alpha = Math.PI / 2;\n }\n const items = this.getLabelItems(width);\n const axisAttrs: any = {\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n z: z,\n alpha,\n anchor3d,\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items\n };\n if (!ignoreGrid) {\n axisAttrs.grid = {\n type: 'line',\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n items: items[0],\n verticalFactor: this._axisStyle.verticalFactor,\n depth: depthZ,\n length: regionHeight,\n z: z,\n alpha,\n anchor3d\n };\n }\n return axisAttrs;\n }\n let verticalMinSize = isX ? this._minHeight : this._minWidth;\n if (\n (isX && this._layoutRectLevelMap.height === USER_LAYOUT_RECT_LEVEL) ||\n (isY && this._layoutRectLevelMap.width === USER_LAYOUT_RECT_LEVEL)\n ) {\n verticalMinSize = this._verticalLimitSize;\n }\n const items = this.getLabelItems(axisLength);\n const attrs: any = {\n start: { x: 0, y: 0 },\n end,\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items,\n verticalLimitSize: this._verticalLimitSize,\n verticalMinSize\n };\n if (!ignoreGrid) {\n attrs.grid = {\n type: 'line',\n start: { x: 0, y: 0 },\n end,\n items: items[0],\n verticalFactor: this._axisStyle.verticalFactor,\n depth,\n length: gridLength\n };\n }\n\n return attrs;\n }\n\n protected initEvent() {\n super.initEvent();\n\n if (this.visible) {\n // 布局结束之后处理 0 基线问题\n this.event.on(ChartEvent.layoutEnd, this._fixAxisOnZero);\n // 图表resize后,需要正常布局,清除布局缓存\n this.event.on(ChartEvent.layoutRectUpdate, () => {\n this._clearLayoutCache();\n });\n }\n }\n\n private _fixAxisOnZero = () => {\n // 在布局结束之后调整坐标轴零基线\n const { onZero, visible } = this._spec.domainLine;\n if (this.visible && onZero && visible !== false) {\n const { onZeroAxisId, onZeroAxisIndex } = this._spec.domainLine;\n const axesComponents = this._option.getComponentsByKey('axes') as IAxis[];\n const isX = isXAxis(this.getOrient());\n\n // 判断坐标轴是否可用\n const isValidAxis = (item: any) => {\n return (\n (isX ? !isXAxis(item.orient) : isXAxis(item.orient)) &&\n isContinuous(item.getScale().type) &&\n item\n .getTickData()\n .getLatestData()\n ?.find((d: any) => d.value === 0)\n );\n };\n const relativeAxes = axesComponents.filter(item => isValidAxis(item));\n if (relativeAxes.length) {\n let bindAxis;\n if (isValid(onZeroAxisId)) {\n bindAxis = relativeAxes.find(axis => axis.id === onZeroAxisId);\n } else if (isValid(onZeroAxisIndex)) {\n const indexAxis = axesComponents[onZeroAxisIndex];\n if (isValidAxis(indexAxis)) {\n bindAxis = indexAxis;\n }\n } else {\n // 默认绑定第一条的相对坐标轴\n bindAxis = relativeAxes[0];\n }\n if (bindAxis) {\n const axisMark = this._axisMark.getProduct();\n // 找到了绑定的 axis,获取基线的位置\n const position = bindAxis.valueToPosition(0);\n // 获取偏移量\n if (isX) {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dy: this._orient === 'bottom' ? -(bindAxis.getScale().range()[0] - position) : position\n }\n });\n } else {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dx: this._orient === 'left' ? position : -(bindAxis.getScale().range()[1] - position)\n }\n });\n }\n }\n }\n }\n };\n\n protected _layoutCacheProcessing(rect: ILayoutRect) {\n ['width', 'height'].forEach(key => {\n if (rect[key] < this._layoutCache[key]) {\n rect[key] = this._layoutCache[key];\n } else {\n this._layoutCache[key] = rect[key];\n }\n });\n\n // outBounds\n ['x1', 'x2', 'y1', 'y2'].forEach(key => {\n if (this._lastComputeOutBounds[key] < this._layoutCache._lastComputeOutBounds[key]) {\n this._lastComputeOutBounds[key] = this._layoutCache._lastComputeOutBounds[key];\n } else {\n this._layoutCache._lastComputeOutBounds[key] = this._lastComputeOutBounds[key];\n }\n });\n\n return rect;\n }\n\n _clearLayoutCache() {\n this._layoutCache.width = 0;\n this._layoutCache.height = 0;\n this._layoutCache._lastComputeOutBounds = { x1: 0, x2: 0, y1: 0, y2: 0 };\n }\n\n onDataUpdate(): void {\n // clear layout cache\n this._clearLayoutCache();\n }\n\n protected _transformSpec() {\n // change spec by default logic\n const chartSpec = this._option.getChart().getSpec();\n this._spec.inverse = transformInverse(this._spec, chartSpec.direction === Direction.horizontal);\n }\n\n private _appendAxisUnit(bounds: IBounds, isX: boolean) {\n if (this._spec.unit && this._spec.unit.visible) {\n const { text, style } = this._spec.unit;\n let pos;\n let unitTextStyle: any;\n if (isX) {\n pos = {\n x: bounds.x2,\n y: this.getLayoutStartPoint().y\n };\n unitTextStyle = {\n textAlign: 'left',\n textBaseline: 'middle'\n };\n } else {\n pos = {\n x: this.getLayoutStartPoint().x,\n y: bounds.y1\n };\n unitTextStyle = {\n textAlign: this._orient === 'left' ? 'left' : 'right',\n textBaseline: 'bottom'\n };\n }\n\n unitTextStyle = {\n ...unitTextStyle,\n ...style,\n x: pos.x,\n y: pos.y,\n text\n };\n if (this._unitText) {\n this._unitText.setAttributes(unitTextStyle);\n } else {\n this._unitText = createText(unitTextStyle);\n this._unitText.name = 'axis-unit';\n this.getContainer()?.add(this._unitText);\n }\n\n // 左轴\n const textBounds = this._unitText.AABBBounds;\n if (!isX) {\n bounds.x1 += textBounds.x1 < bounds.x1 ? textBounds.x1 - bounds.x1 : 0;\n bounds.y1 += textBounds.y1 < bounds.y1 ? textBounds.y1 - bounds.y1 : 0;\n } else {\n bounds.x2 += textBounds.x2 > bounds.x2 ? textBounds.x2 - bounds.x2 : 0;\n bounds.y2 += textBounds.y2 > bounds.y2 ? textBounds.y2 - bounds.y2 : 0;\n }\n }\n\n return bounds;\n }\n\n getVRenderComponents(): IGraphic[] {\n return this._unitText ? [this._unitText] : [];\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/component/axis/cartesian/axis.ts"],"names":[],"mappings":"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","file":"axis.js","sourcesContent":["import type { IBounds, IBoundsLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IEffect, IModelInitOption, ILayoutRect } from '../../../model/interface';\nimport type { ICartesianSeries } from '../../../series/interface';\nimport type { IRegion } from '../../../region/interface';\nimport type { ICartesianAxisCommonSpec, IAxisHelper, ICartesianAxisCommonTheme } from './interface';\nimport { isArray, isValid, isValidNumber, mergeSpec, eachSeries, isNil, isUndefined } from '../../../util';\nimport type { IOrientType } from '../../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../../typings/space';\nimport type { IBaseScale } from '@visactor/vscale';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { LayoutItem } from '../../../model/layout-item';\nimport { Factory } from '../../../core/factory';\nimport { autoAxisType, isXAxis, getOrient, isZAxis, isYAxis, transformInverse } from './util/common';\nimport { ChartEvent, DEFAULT_LAYOUT_RECT_LEVEL, LayoutZIndex, USER_LAYOUT_RECT_LEVEL } from '../../../constant';\nimport { LayoutLevel } from '../../../constant/index';\nimport pluginMap from '../../../plugin/components';\nimport type { IPoint, StringOrNumber } from '../../../typings';\nimport type { IComponentOption } from '../../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../../interface/type';\nimport { HOOK_EVENT } from '@visactor/vgrammar-core';\nimport type { LineAxisAttributes } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport { isValidCartesianAxis } from '../util';\nimport type { IAxis, ITick } from '../interface';\nimport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../../../data/register';\nimport { scaleParser } from '../../../data/parser/scale';\nimport type { ICartesianTickDataOpt } from '@visactor/vutils-extension';\n// eslint-disable-next-line no-duplicate-imports\nimport { ticks } from '@visactor/vutils-extension';\nimport type { DataSet } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { DataView } from '@visactor/vdataset';\nimport { CompilableData } from '../../../compile/data/compilable-data';\nimport { AxisComponent } from '../base-axis';\nimport type { IGraphic, IText } from '@visactor/vrender-core';\n// eslint-disable-next-line no-duplicate-imports\nimport { createText } from '@visactor/vrender-core';\n\nconst CartesianAxisPlugin = [pluginMap.AxisSyncPlugin];\n\nexport abstract class CartesianAxis<T extends ICartesianAxisCommonSpec = ICartesianAxisCommonSpec>\n extends AxisComponent<T>\n implements IAxis\n{\n static type = ComponentTypeEnum.cartesianAxis;\n type = ComponentTypeEnum.cartesianAxis;\n name: string = ComponentTypeEnum.cartesianAxis;\n\n protected readonly _defaultBandPosition = 0.5;\n protected readonly _defaultBandInnerPadding = 0.1;\n protected readonly _defaultBandOuterPadding = 0.3;\n\n // 标记这个布局Item的方向(left->right, right->left, top->bottom, bottom->top)\n declare directionStr?: 'l2r' | 'r2l' | 't2b' | 'b2t';\n\n layoutType: LayoutItem['layoutType'] = 'region-relative';\n layoutZIndex: number = LayoutZIndex.Axis;\n layoutLevel: number = LayoutLevel.Axis;\n\n protected _dataSet: DataSet;\n\n layout3dBox?: { width: number; height: number; length: number };\n\n protected _orient: IOrientType = 'left';\n getOrient() {\n return this._orient;\n }\n\n get layoutOrient() {\n return this._layoutOrient;\n }\n set layoutOrient(v: IOrientType) {\n this._orient = v;\n this._layoutOrient = v;\n }\n\n protected _scales: IBaseScale[] = [];\n getScales() {\n return this._scales;\n }\n\n protected declare _theme: ICartesianAxisCommonTheme;\n\n protected _statisticsDomain: {\n domain: any[];\n index: { [key in StringOrNumber]: number };\n } = { domain: [], index: {} };\n getStatisticsDomain() {\n return this._statisticsDomain;\n }\n\n protected _tick: ITick | undefined = undefined;\n\n private _axisStyle: Partial<LineAxisAttributes>;\n private _latestBounds: IBounds;\n private _verticalLimitSize: number;\n private _unitText: IText;\n\n protected _layoutCache: {\n width: number;\n height: number;\n _lastComputeOutBounds: IBoundsLike;\n } = { width: 0, height: 0, _lastComputeOutBounds: { x1: 0, x2: 0, y1: 0, y2: 0 } };\n\n constructor(spec: T, options: IComponentOption) {\n super(spec, {\n ...options\n });\n this._orient = getOrient(spec, ['z']);\n if (isZAxis(this._orient)) {\n this.layoutType = 'absolute';\n }\n isValid(spec.autoIndent) && (this._autoIndent = spec.autoIndent);\n this._layoutOrient = this._orient;\n this._dataSet = options.dataSet;\n }\n\n static createAxis(spec: any, options: IComponentOption, isHorizontal: boolean = false): IAxis {\n const axisType = spec.type ?? autoAxisType(spec.orient, isHorizontal);\n const componentName = `${CartesianAxis.type}-${axisType}`;\n const C = Factory.getComponentInKey(componentName);\n if (C) {\n return new C(\n {\n ...spec,\n type: axisType\n },\n options\n ) as IAxis;\n }\n options.onError(`Component ${componentName} not found`);\n return null;\n }\n\n static createComponent(spec: any, options: IComponentOption) {\n if (!this.type.startsWith(CartesianAxis.type)) {\n return null;\n }\n const regions = options.getRegionsInIndex();\n if (regions.find(r => r.coordinate !== 'cartesian')) {\n return null;\n }\n let axesSpec = spec[CartesianAxis.specKey] || options.defaultSpec;\n if (!axesSpec) {\n return null;\n }\n const isHorizontal = spec.direction === Direction.horizontal;\n if (!isArray(axesSpec)) {\n // 如果非法,或者只有一个z轴就不创建\n if (!isValidCartesianAxis(axesSpec)) {\n return null;\n }\n return CartesianAxis.createAxis(axesSpec, options, isHorizontal);\n }\n // 处理spec\n const zAxis = axesSpec.filter(s => s.orient === 'z')[0];\n let valid = true;\n if (zAxis) {\n const xAxis = axesSpec.filter(s => s.orient === 'bottom')[0];\n const yAxis = axesSpec.filter(s => isYAxis(s.orient))[0];\n // 必须有x和y,且x必须是bottom\n valid = axesSpec.length === 3 && xAxis && yAxis;\n }\n if (!valid) {\n axesSpec = axesSpec.filter(s => s.orient !== 'z');\n }\n const axes: IAxis[] = [];\n axesSpec.forEach((s: any, i: any) => {\n if (!isValidCartesianAxis(s)) {\n return;\n }\n axes.push(\n CartesianAxis.createAxis(\n s,\n {\n ...options,\n specIndex: i,\n specKey: CartesianAxis.specKey\n },\n isHorizontal\n ) as IAxis\n );\n });\n return axes;\n }\n\n setLayout3dBox(box3d: { width: number; height: number; length: number }) {\n this.layout3dBox = box3d;\n }\n\n effect: IEffect = {\n scaleUpdate: params => {\n this.computeData(params?.value);\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.getOrient())) {\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.getOrient())) {\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.getOrient())) {\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n };\n\n protected abstract computeDomain(data: { min: number; max: number; values: any[] }[]): StringOrNumber[];\n abstract valueToPosition(value: any): number;\n\n protected updateScaleRange() {\n let isScaleChange = false;\n const { width, height } = this.getLayoutRect();\n const inverse = this._spec.inverse;\n let newRange: number[] = [];\n if (isXAxis(this.getOrient())) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n }\n } else if (isZAxis(this.getOrient())) {\n if (isValidNumber(width)) {\n newRange = inverse ? [width, 0] : [0, width];\n this._scale.range(newRange);\n }\n } else {\n if (isValidNumber(height)) {\n newRange = inverse ? [0, height] : [height, 0];\n }\n }\n\n const [start, end] = this._scale.range();\n if (newRange[0] !== start || newRange[1] !== end) {\n isScaleChange = true;\n this._scale.range(newRange);\n }\n\n return isScaleChange;\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n this.pluginService?.load(CartesianAxisPlugin.map(P => new P()));\n this.callPlugin(plugin => {\n this.pluginService && plugin.onInit && plugin.onInit(this.pluginService, this);\n });\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n if (this.visible) {\n const isX = isXAxis(this.getOrient());\n if (isX) {\n if (isUndefined(this._spec.maxHeight)) {\n this._spec.maxHeight = '30%';\n }\n } else if (isUndefined(this._spec.maxWidth)) {\n this._spec.maxWidth = '30%';\n }\n\n const axisStyle: any = this._getAxisAttributes();\n axisStyle.label.formatMethod = this.getLabelFormatMethod();\n axisStyle.verticalFactor = this.getOrient() === 'top' || this.getOrient() === 'right' ? -1 : 1;\n this._axisStyle = axisStyle;\n }\n this._tick = this._spec.tick;\n }\n\n protected getSeriesStatisticsField(s: ICartesianSeries) {\n let f: string[];\n if (isXAxis(this.getOrient())) {\n f = s.fieldX;\n } else if (isZAxis(this.getOrient())) {\n f = s.fieldZ;\n } else {\n f = s.fieldY;\n }\n if (isContinuous(this._scale.type)) {\n return f;\n }\n return [f[0]];\n }\n\n protected _initTickData(sampling: boolean) {\n registerDataSetInstanceParser(this._option.dataSet, 'scale', scaleParser);\n registerDataSetInstanceTransform(this._option.dataSet, 'ticks', ticks);\n\n const label = this._spec.label || {};\n const tick = this._tick || {};\n const tickData = new DataView(this._option.dataSet, { name: `${this.type}_${this.id}_ticks` })\n .parse(this._scale, {\n type: 'scale'\n })\n .transform(\n {\n type: 'ticks',\n options: {\n sampling,\n tickCount: tick.tickCount,\n forceTickCount: tick.forceTickCount,\n tickStep: tick.tickStep,\n tickMode: tick.tickMode,\n noDecimals: tick.noDecimals,\n\n axisOrientType: this._orient,\n coordinateType: 'cartesian',\n\n labelStyle: label.style,\n labelFormatter: label.formatMethod,\n labelGap: label.minGap,\n\n labelLastVisible: label.lastVisible,\n labelFlush: label.flush\n } as ICartesianTickDataOpt\n },\n false\n );\n tickData.target.addListener('change', this._forceLayout.bind(this));\n\n this._tickData = new CompilableData(this._option, tickData);\n }\n\n protected _initData() {\n this._initTickData(this._spec.sampling !== false); // default do sampling\n }\n\n protected axisHelper(): IAxisHelper {\n const getScale = (depth: number = 0) => {\n return this._scales[depth];\n };\n return {\n isContinuous: isContinuous(this._scale.type),\n dataToPosition: this.dataToPosition.bind(this),\n getScale,\n getStatisticsDomain: () => this.getStatisticsDomain(),\n getAxisType: () => this.type,\n getAxisId: () => this.id,\n isInverse: () => this._spec.inverse === true\n };\n }\n\n /** LifeCycle API**/\n afterCompile() {\n const product = this._axisMark?.getProduct();\n if (product) {\n product.addEventListener(HOOK_EVENT.AFTER_ELEMENT_ENCODE, () => {\n if (this._isLayout === false) {\n // 布局结束之后再进行插件的调用\n // 插件在布局后\n if (isXAxis(this.getOrient())) {\n this.callPlugin(plugin => {\n this.pluginService &&\n plugin.onDidLayoutHorizontal &&\n plugin.onDidLayoutHorizontal(this.pluginService, this);\n });\n } else {\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidLayoutVertical && plugin.onDidLayoutVertical(this.pluginService, this);\n });\n }\n this._delegateAxisContainerEvent(product.getGroupGraphicItem());\n\n // 更新单位的显示位置\n if (this._unitText) {\n const bounds = product.graphicItem.AABBBounds;\n const pos = isXAxis(this._orient)\n ? {\n x: bounds.x2,\n y: this.getLayoutStartPoint().y\n }\n : {\n x: this.getLayoutStartPoint().x,\n y: bounds.y1\n };\n\n this._unitText.setAttributes(pos);\n }\n }\n });\n }\n this.callPlugin(plugin => {\n this.pluginService && plugin.onDidCompile && plugin.onDidCompile(this.pluginService, this);\n });\n }\n\n onLayoutEnd(ctx: any): void {\n const isRangeChange = this.updateScaleRange();\n if (isRangeChange) {\n this.event.emit(ChartEvent.scaleUpdate, { model: this, value: 'range' });\n // 这里会执行 computeData ,会执行系列scale更新\n } else {\n this.updateSeriesScale();\n }\n super.onLayoutEnd(ctx);\n }\n\n onRender(ctx: any): void {\n // do nothing\n }\n\n changeRegions(regions: IRegion[]): void {\n // do nothing\n }\n\n update(ctx: IComponentOption) {\n // TODO\n }\n\n resize(ctx: IComponentOption) {\n // TODO\n }\n\n protected collectScale() {\n const scales: IBaseScale[] = [];\n eachSeries(\n this._regions,\n s => {\n scales.push(\n this.getOrient() === 'left' || this.getOrient() === 'right'\n ? (s as ICartesianSeries).scaleY\n : (s as ICartesianSeries).scaleX\n );\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return scales;\n }\n\n protected collectData(depth?: number) {\n const data: { min: number; max: number; values: any[] }[] = [];\n eachSeries(\n this._regions,\n s => {\n let field: string | string[];\n if (depth > 0) {\n field = s.getGroups()?.fields?.[depth];\n } else {\n if (isXAxis(this.getOrient())) {\n field = (s as ICartesianSeries).fieldX2\n ? [...(s as ICartesianSeries).fieldX, (s as ICartesianSeries).fieldX2]\n : (s as ICartesianSeries).fieldX;\n } else if (isZAxis(this.getOrient())) {\n field = (s as ICartesianSeries).fieldZ;\n } else {\n field = (s as ICartesianSeries).fieldY;\n }\n }\n field = (isArray(field) ? (isContinuous(this._scale.type) ? field : [field[0]]) : [field]) as string[];\n if (!depth) {\n this._dataFieldText = s.getFieldAlias(field[0]);\n }\n const seriesData = s.getViewDataStatistics?.();\n if (field) {\n field.forEach(f => {\n if (seriesData?.latestData?.[f]) {\n data.push(seriesData.latestData[f]);\n }\n });\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n return data;\n }\n\n protected updateSeriesScale() {\n eachSeries(\n this._regions,\n s => {\n if (isXAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleX(this._scale);\n (s as ICartesianSeries).setXAxisHelper(this.axisHelper());\n } else if (isYAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleY(this._scale);\n (s as ICartesianSeries).setYAxisHelper(this.axisHelper());\n } else if (isZAxis(this.getOrient())) {\n (s as ICartesianSeries).setScaleZ(this._scale);\n (s as ICartesianSeries).setZAxisHelper(this.axisHelper());\n }\n },\n {\n userId: this._seriesUserId,\n specIndex: this._seriesIndex\n }\n );\n }\n\n setLayoutStartPosition(pos: Partial<IPoint>): void {\n let { x, y } = pos;\n\n if (isValidNumber(x)) {\n x += Number(this._orient === 'left') * this.getLayoutRect().width;\n }\n if (isValidNumber(y)) {\n y += Number(this._orient === 'top') * this.getLayoutRect().height;\n }\n super.setLayoutStartPosition({ x, y });\n }\n\n computeBoundsInRect(rect: ILayoutRect) {\n const result = super.computeBoundsInRect(rect);\n if (!this._visible) {\n return result;\n }\n const bounds = this._latestBounds.clone().translate(-this.getLayoutStartPoint().x, -this.getLayoutStartPoint().y);\n switch (this._layoutOrient) {\n case 'left':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x1 < 0 ? -bounds.x1 : 0;\n }\n break;\n case 'right':\n if (this._layoutRectLevelMap.width === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.width = bounds.x2 > 0 ? bounds.x2 : 0;\n }\n break;\n case 'top':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y1 < 0 ? -bounds.y1 : 0;\n }\n break;\n case 'bottom':\n if (this._layoutRectLevelMap.height === DEFAULT_LAYOUT_RECT_LEVEL) {\n result.height = bounds.y2 > 0 ? bounds.y2 : 0;\n }\n break;\n default:\n break;\n }\n result.width = Math.ceil(result.width);\n result.height = Math.ceil(result.height);\n // because of changed width\\height, reset result in spec configuration.\n return this._setRectInSpec(this._layoutCacheProcessing(result));\n }\n /**\n * bounds 预计算\n * @param rect\n * @returns\n */\n _boundsInRect(rect: ILayoutRect): IBoundsLike {\n let result: IBoundsLike = { x1: 0, y1: 0, x2: 0, y2: 0 };\n if (!this._visible) {\n return result;\n }\n this._verticalLimitSize = isXAxis(this.getOrient()) ? rect.height : rect.width;\n\n this.setLayoutRect(rect);\n const isChanged = this.updateScaleRange();\n if (isChanged) {\n this.computeData('range');\n }\n const context = { skipLayout: false };\n const isX = isXAxis(this.getOrient());\n if (this.pluginService) {\n isX\n ? this.callPlugin(plugin => {\n plugin.onWillLayoutHorizontal && plugin.onWillLayoutHorizontal(this.pluginService, context, this);\n })\n : this.callPlugin(plugin => {\n plugin.onWillLayoutVertical && plugin.onWillLayoutVertical(this.pluginService, context, this);\n });\n }\n const product = this._axisMark.getProduct();\n let hasBounds = false;\n\n if (!context.skipLayout) {\n const attrs = this._getUpdateAttribute(true);\n const axisComponent = product.getGroupGraphicItem();\n\n const spec = mergeSpec({ ...this.getLayoutStartPoint() }, this._axisStyle, attrs, { line: { visible: false } });\n const updateBounds = axisComponent.getBoundsWithoutRender(spec);\n\n if (isFinite(updateBounds.width())) {\n // 因为轴单位在某些区域显示的时候,是不参与轴某个方向的包围盒计算的,\n // 所以不太合适放在轴组件内支持,所以就在 VChart 层的轴组件上通过添加 text 图元支持\n result = this._appendAxisUnit(updateBounds, isX);\n\n hasBounds = true;\n this._latestBounds = updateBounds;\n }\n }\n\n if (!hasBounds) {\n this._latestBounds = product.getBounds();\n }\n return result;\n }\n\n updateLayoutAttribute(): void {\n if (!this.visible) {\n return;\n }\n const startPoint = this.getLayoutStartPoint();\n // 正式的更新布局属性\n const { grid: updateGridAttrs, ...updateAxisAttrs } = this._getUpdateAttribute(false);\n const axisProduct = this._axisMark.getProduct(); // 获取语法元素\n const axisAttrs = mergeSpec({ x: startPoint.x, y: startPoint.y }, this._axisStyle, updateAxisAttrs);\n axisProduct.encode(axisAttrs);\n\n if (this._gridMark) {\n const gridProduct = this._gridMark.getProduct(); // 获取语法元素\n gridProduct.encode(mergeSpec({ x: startPoint.x, y: startPoint.y }, this._getGridAttributes(), updateGridAttrs));\n }\n\n super.updateLayoutAttribute();\n }\n\n private _getTitleLimit(isX: boolean) {\n if (this._spec.title.visible && isNil(this._spec.title.style?.maxLineWidth)) {\n const angle = this._axisStyle.title?.angle ?? this._spec.title.style?.angle ?? 0;\n if (isX) {\n const width = this.getLayoutRect().width;\n const cosValue = Math.abs(Math.cos(angle));\n // VRender 接收到的limit是考虑角度计算后的宽度\n // TODO:还需要考虑angle后,高度是否太高,综合计算一个limit,比如高度不能超过图表整体高度的1/4\n return cosValue < 1e-6 ? Infinity : width / cosValue;\n }\n const height = this.getLayoutRect().height;\n const sinValue = Math.abs(Math.sin(angle));\n\n // TODO:还需要考虑angle后,宽度是否太宽,综合计算一个limit,比如宽度度不能超过图表整体宽度的1/4\n return sinValue < 1e-6 ? Infinity : height / sinValue;\n }\n\n return null;\n }\n\n private _getUpdateAttribute(ignoreGrid: boolean) {\n // 获取更新的坐标轴属性\n let regionHeight = 0;\n let regionWidth = 0;\n\n if (!ignoreGrid) {\n const regions = this.getRegions();\n let { x: minX, y: minY } = regions[0].getLayoutStartPoint();\n let maxX = minX + regions[0].getLayoutRect().width;\n let maxY = minY + regions[0].getLayoutRect().height;\n\n for (let index = 1; index < regions.length; index++) {\n const region = regions[index];\n const { x, y } = region.getLayoutStartPoint();\n const { width, height } = region.getLayoutRect();\n\n minX = Math.min(minX, x);\n maxX = Math.max(maxX, width + x);\n minY = Math.min(minY, y);\n maxY = Math.max(maxY, height + y);\n }\n regionHeight = Math.abs(maxY - minY);\n regionWidth = Math.abs(maxX - minX);\n }\n\n const { width, height } = this.getLayoutRect();\n const isX = isXAxis(this._orient);\n const isY = isYAxis(this._orient);\n const isZ = isZAxis(this._orient);\n let end = { x: 0, y: 0 };\n let gridLength = 0;\n let axisLength = 0;\n const depth = this.layout3dBox ? this.layout3dBox.length : 0;\n if (isX) {\n end = { x: width, y: 0 };\n gridLength = regionHeight;\n axisLength = width;\n } else if (isY) {\n end = { x: 0, y: height };\n gridLength = regionWidth;\n axisLength = height;\n }\n if (isZ) {\n const directionStr = this.directionStr ?? 'r2l';\n const depthZ = this.layout3dBox ? this.layout3dBox.width : 0;\n let anchor3d = [0, 0];\n let alpha = -Math.PI / 2;\n let z = 0;\n if (directionStr === 'l2r') {\n z = this.layout3dBox.length;\n anchor3d = [0, 0, 0];\n alpha = Math.PI / 2;\n }\n const items = this.getLabelItems(width);\n const axisAttrs: any = {\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n z: z,\n alpha,\n anchor3d,\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items\n };\n if (!ignoreGrid) {\n axisAttrs.grid = {\n type: 'line',\n start: { x: 0, y: 0 },\n end: { x: depth, y: 0 },\n items: items[0],\n verticalFactor: this._axisStyle.verticalFactor,\n depth: depthZ,\n length: regionHeight,\n z: z,\n alpha,\n anchor3d\n };\n }\n return axisAttrs;\n }\n let verticalMinSize = isX ? this._minHeight : this._minWidth;\n if (\n (isX && this._layoutRectLevelMap.height === USER_LAYOUT_RECT_LEVEL) ||\n (isY && this._layoutRectLevelMap.width === USER_LAYOUT_RECT_LEVEL)\n ) {\n verticalMinSize = this._verticalLimitSize;\n }\n const items = this.getLabelItems(axisLength);\n const attrs: any = {\n start: { x: 0, y: 0 },\n end,\n title: {\n text: this._spec.title.text || this._dataFieldText,\n maxWidth: this._getTitleLimit(isX)\n },\n items,\n verticalLimitSize: this._verticalLimitSize,\n verticalMinSize\n };\n if (!ignoreGrid) {\n attrs.grid = {\n type: 'line',\n start: { x: 0, y: 0 },\n end,\n items: items[0],\n verticalFactor: this._axisStyle.verticalFactor,\n depth,\n length: gridLength\n };\n }\n\n return attrs;\n }\n\n protected initEvent() {\n super.initEvent();\n\n if (this.visible) {\n // 布局结束之后处理 0 基线问题\n this.event.on(ChartEvent.layoutEnd, this._fixAxisOnZero);\n // 图表resize后,需要正常布局,清除布局缓存\n this.event.on(ChartEvent.layoutRectUpdate, () => {\n this._clearLayoutCache();\n });\n }\n }\n\n private _fixAxisOnZero = () => {\n // 在布局结束之后调整坐标轴零基线\n const { onZero, visible } = this._spec.domainLine;\n if (this.visible && onZero && visible !== false) {\n const { onZeroAxisId, onZeroAxisIndex } = this._spec.domainLine;\n const axesComponents = this._option.getComponentsByKey('axes') as IAxis[];\n const isX = isXAxis(this.getOrient());\n\n // 判断坐标轴是否可用\n const isValidAxis = (item: any) => {\n return (\n (isX ? !isXAxis(item.orient) : isXAxis(item.orient)) &&\n isContinuous(item.getScale().type) &&\n item\n .getTickData()\n .getLatestData()\n ?.find((d: any) => d.value === 0)\n );\n };\n const relativeAxes = axesComponents.filter(item => isValidAxis(item));\n if (relativeAxes.length) {\n let bindAxis;\n if (isValid(onZeroAxisId)) {\n bindAxis = relativeAxes.find(axis => axis.id === onZeroAxisId);\n } else if (isValid(onZeroAxisIndex)) {\n const indexAxis = axesComponents[onZeroAxisIndex];\n if (isValidAxis(indexAxis)) {\n bindAxis = indexAxis;\n }\n } else {\n // 默认绑定第一条的相对坐标轴\n bindAxis = relativeAxes[0];\n }\n if (bindAxis) {\n const axisMark = this._axisMark.getProduct();\n // 找到了绑定的 axis,获取基线的位置\n const position = bindAxis.valueToPosition(0);\n // 获取偏移量\n if (isX) {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dy: this._orient === 'bottom' ? -(bindAxis.getScale().range()[0] - position) : position\n }\n });\n } else {\n axisMark.encode({\n line: {\n ...this._axisStyle.line,\n dx: this._orient === 'left' ? position : -(bindAxis.getScale().range()[1] - position)\n }\n });\n }\n }\n }\n }\n };\n\n protected _layoutCacheProcessing(rect: ILayoutRect) {\n ['width', 'height'].forEach(key => {\n if (rect[key] < this._layoutCache[key]) {\n rect[key] = this._layoutCache[key];\n } else {\n this._layoutCache[key] = rect[key];\n }\n });\n\n // outBounds\n ['x1', 'x2', 'y1', 'y2'].forEach(key => {\n if (this._lastComputeOutBounds[key] < this._layoutCache._lastComputeOutBounds[key]) {\n this._lastComputeOutBounds[key] = this._layoutCache._lastComputeOutBounds[key];\n } else {\n this._layoutCache._lastComputeOutBounds[key] = this._lastComputeOutBounds[key];\n }\n });\n\n return rect;\n }\n\n _clearLayoutCache() {\n this._layoutCache.width = 0;\n this._layoutCache.height = 0;\n this._layoutCache._lastComputeOutBounds = { x1: 0, x2: 0, y1: 0, y2: 0 };\n }\n\n onDataUpdate(): void {\n // clear layout cache\n this._clearLayoutCache();\n }\n\n protected _transformSpec() {\n // change spec by default logic\n const chartSpec = this._option.getChart().getSpec();\n this._spec.inverse = transformInverse(this._spec, chartSpec.direction === Direction.horizontal);\n }\n\n private _appendAxisUnit(bounds: IBounds, isX: boolean) {\n if (this._spec.unit && this._spec.unit.visible) {\n const { text, style } = this._spec.unit;\n let pos;\n let unitTextStyle: any;\n if (isX) {\n pos = {\n x: bounds.x2,\n y: this.getLayoutStartPoint().y\n };\n unitTextStyle = {\n textAlign: 'left',\n textBaseline: 'middle'\n };\n } else {\n pos = {\n x: this.getLayoutStartPoint().x,\n y: bounds.y1\n };\n unitTextStyle = {\n textAlign: this._orient === 'left' ? 'left' : 'right',\n textBaseline: 'bottom'\n };\n }\n\n unitTextStyle = {\n ...unitTextStyle,\n ...style,\n x: pos.x,\n y: pos.y,\n text\n };\n if (this._unitText) {\n this._unitText.setAttributes(unitTextStyle);\n } else {\n this._unitText = createText(unitTextStyle);\n this._unitText.name = 'axis-unit';\n this.getContainer()?.add(this._unitText);\n }\n\n // 左轴\n const textBounds = this._unitText.AABBBounds;\n if (!isX) {\n bounds.x1 += textBounds.x1 < bounds.x1 ? textBounds.x1 - bounds.x1 : 0;\n bounds.y1 += textBounds.y1 < bounds.y1 ? textBounds.y1 - bounds.y1 : 0;\n } else {\n bounds.x2 += textBounds.x2 > bounds.x2 ? textBounds.x2 - bounds.x2 : 0;\n bounds.y2 += textBounds.y2 > bounds.y2 ? textBounds.y2 - bounds.y2 : 0;\n }\n }\n\n return bounds;\n }\n\n getVRenderComponents(): IGraphic[] {\n return this._unitText ? [this._unitText] : [];\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { BandScale } from '@visactor/vscale';
2
2
  import { CartesianAxis } from './axis';
3
- import type { IAxisLocationCfg, ICartesianBandAxisSpec } from './interface';
3
+ import type { ICartesianBandAxisSpec } from './interface';
4
4
  import { ComponentTypeEnum } from '../../interface';
5
5
  import { BandAxisMixin } from '../mixin/band-axis-mixin';
6
6
  import type { StringOrNumber } from '../../../typings';
@@ -20,7 +20,7 @@ export declare class CartesianBandAxis<T extends ICartesianBandAxisSpec = ICarte
20
20
  protected initScales(): void;
21
21
  protected axisHelper(): {
22
22
  isContinuous: boolean;
23
- dataToPosition: (values: any[], cfg?: IAxisLocationCfg) => number;
23
+ dataToPosition: (values: any[]) => number;
24
24
  getScale: (depth: number) => BandScale;
25
25
  getBandwidth: (depth: number) => number;
26
26
  getStatisticsDomain: () => {
@@ -34,7 +34,6 @@ export declare class CartesianBandAxis<T extends ICartesianBandAxisSpec = ICarte
34
34
  getAxisId: () => number;
35
35
  isInverse: () => boolean;
36
36
  };
37
- dataToPosition(values: any[], cfg?: IAxisLocationCfg): number;
38
37
  transformScaleDomain(): void;
39
38
  updateFixedWholeLength(): void;
40
39
  }
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerCartesianBandAxis = exports.CartesianBandAxis = void 0;
6
6
 
7
- const vscale_1 = require("@visactor/vscale"), axis_1 = require("./axis"), config_1 = require("./config"), interface_1 = require("../../interface"), vutils_1 = require("@visactor/vutils"), band_axis_mixin_1 = require("../mixin/band-axis-mixin"), factory_1 = require("../../../core/factory"), base_axis_1 = require("../base-axis"), util_1 = require("./util");
7
+ const vscale_1 = require("@visactor/vscale"), axis_1 = require("./axis"), interface_1 = require("../../interface"), vutils_1 = require("@visactor/vutils"), band_axis_mixin_1 = require("../mixin/band-axis-mixin"), factory_1 = require("../../../core/factory"), base_axis_1 = require("../base-axis"), common_1 = require("./util/common");
8
8
 
9
9
  class CartesianBandAxis extends axis_1.CartesianAxis {
10
10
  constructor() {
@@ -19,7 +19,7 @@ class CartesianBandAxis extends axis_1.CartesianAxis {
19
19
  return this.updateGroupScaleRange(), isChanged;
20
20
  }
21
21
  initScales() {
22
- super.initScales(), this.calcScales(config_1.DEFAULT_BAND_INNER_PADDING, config_1.DEFAULT_BAND_OUTER_PADDING);
22
+ super.initScales(), this.calcScales(this._defaultBandInnerPadding, this._defaultBandOuterPadding);
23
23
  }
24
24
  axisHelper() {
25
25
  const getScale = depth => this._scales[depth];
@@ -34,12 +34,6 @@ class CartesianBandAxis extends axis_1.CartesianAxis {
34
34
  isInverse: () => this._spec.inverse
35
35
  };
36
36
  }
37
- dataToPosition(values, cfg = {}) {
38
- var _a, _b;
39
- if (0 === values.length || 0 === this._scales.length) return 0;
40
- const {position: position, bandScale: bandScale} = this.getPosition(values);
41
- return position + bandScale.bandwidth() * (null !== (_b = null !== (_a = cfg.bandPosition) && void 0 !== _a ? _a : this.getSpec().bandPosition) && void 0 !== _b ? _b : config_1.DEFAULT_BAND_POSITION);
42
- }
43
37
  transformScaleDomain() {
44
38
  this.updateFixedWholeLength();
45
39
  }
@@ -48,7 +42,7 @@ class CartesianBandAxis extends axis_1.CartesianAxis {
48
42
  if (this._scale && (this._spec.bandSize && this._scale.bandwidth(this._spec.bandSize),
49
43
  this._spec.maxBandSize && this._scale.maxBandwidth(this._spec.maxBandSize), this._spec.minBandSize && this._scale.minBandwidth(this._spec.minBandSize),
50
44
  this._scale.isBandwidthFixed() && this._spec.autoRegionSize && (this._spec.bandSize || this._spec.maxBandSize))) {
51
- const rangeSize = (0, util_1.scaleWholeRangeSize)(this._scale.domain().length, null !== (_a = this._spec.bandSize) && void 0 !== _a ? _a : this._spec.maxBandSize, this._scale.paddingInner(), this._scale.paddingOuter());
45
+ const rangeSize = (0, common_1.scaleWholeRangeSize)(this._scale.domain().length, null !== (_a = this._spec.bandSize) && void 0 !== _a ? _a : this._spec.maxBandSize, this._scale.paddingInner(), this._scale.paddingOuter());
52
46
  [ "bottom", "top" ].includes(this._orient) ? this._regions.forEach((region => region.setMaxWidth(rangeSize))) : [ "left", "right" ].includes(this._orient) && this._regions.forEach((region => region.setMaxHeight(rangeSize)));
53
47
  }
54
48
  }