@visactor/vchart 1.7.1 → 1.7.3

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 (353) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +17050 -13892
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/utils.d.ts +1 -0
  6. package/cjs/animation/utils.js +16 -8
  7. package/cjs/animation/utils.js.map +1 -1
  8. package/cjs/chart/bar/bar-3d.d.ts +2 -2
  9. package/cjs/chart/bar/bar-3d.js +2 -2
  10. package/cjs/chart/bar/bar-3d.js.map +1 -1
  11. package/cjs/chart/base-chart.d.ts +2 -5
  12. package/cjs/chart/base-chart.js +8 -46
  13. package/cjs/chart/base-chart.js.map +1 -1
  14. package/cjs/chart/cartesian/interface.d.ts +1 -1
  15. package/cjs/chart/cartesian/interface.js.map +1 -1
  16. package/cjs/chart/index.js +1 -2
  17. package/cjs/chart/interface/chart.d.ts +3 -3
  18. package/cjs/chart/interface/chart.js.map +1 -1
  19. package/cjs/chart/sequence/sequence.js +1 -0
  20. package/cjs/chart/sequence/sequence.js.map +1 -1
  21. package/cjs/compile/compiler.js +2 -1
  22. package/cjs/compile/mark/compilable-mark.js +6 -9
  23. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  24. package/cjs/component/axis/base-axis.d.ts +2 -1
  25. package/cjs/component/axis/base-axis.js +5 -1
  26. package/cjs/component/axis/base-axis.js.map +1 -1
  27. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  28. package/cjs/component/axis/cartesian/axis.js +5 -3
  29. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  30. package/cjs/component/axis/cartesian/band-axis.js +2 -2
  31. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  32. package/cjs/component/axis/cartesian/util/common.d.ts +0 -2
  33. package/cjs/component/axis/cartesian/util/common.js +2 -14
  34. package/cjs/component/axis/cartesian/util/common.js.map +1 -1
  35. package/cjs/component/axis/interface/common.d.ts +1 -0
  36. package/cjs/component/axis/interface/common.js.map +1 -1
  37. package/cjs/component/axis/polar/axis.js +3 -1
  38. package/cjs/component/axis/polar/axis.js.map +1 -1
  39. package/cjs/component/axis/polar/interface/common.d.ts +2 -3
  40. package/cjs/component/axis/polar/interface/common.js.map +1 -1
  41. package/cjs/component/base/base-component.d.ts +2 -7
  42. package/cjs/component/base/base-component.js +5 -5
  43. package/cjs/component/base/base-component.js.map +1 -1
  44. package/cjs/component/brush/brush.d.ts +1 -1
  45. package/cjs/component/brush/brush.js +1 -1
  46. package/cjs/component/brush/brush.js.map +1 -1
  47. package/cjs/component/crosshair/base.d.ts +4 -5
  48. package/cjs/component/crosshair/base.js +38 -25
  49. package/cjs/component/crosshair/base.js.map +1 -1
  50. package/cjs/component/crosshair/cartesian.d.ts +12 -35
  51. package/cjs/component/crosshair/cartesian.js +119 -110
  52. package/cjs/component/crosshair/cartesian.js.map +1 -1
  53. package/cjs/component/crosshair/config.d.ts +6 -0
  54. package/cjs/component/crosshair/config.js +8 -2
  55. package/cjs/component/crosshair/config.js.map +1 -1
  56. package/cjs/component/crosshair/interface/spec.d.ts +7 -3
  57. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  58. package/cjs/component/crosshair/polar.d.ts +13 -55
  59. package/cjs/component/crosshair/polar.js +110 -83
  60. package/cjs/component/crosshair/polar.js.map +1 -1
  61. package/cjs/component/custom-mark/custom-mark.d.ts +1 -1
  62. package/cjs/component/custom-mark/custom-mark.js +1 -1
  63. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  64. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  65. package/cjs/component/data-zoom/data-filter-base-component.js +1 -1
  66. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  67. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  68. package/cjs/component/data-zoom/data-zoom/data-zoom.js +1 -1
  69. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  70. package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  71. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +1 -1
  72. package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  73. package/cjs/component/geo/geo-coordinate.d.ts +1 -1
  74. package/cjs/component/geo/geo-coordinate.js +1 -1
  75. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  76. package/cjs/component/indicator/indicator.d.ts +1 -1
  77. package/cjs/component/indicator/indicator.js +1 -1
  78. package/cjs/component/indicator/indicator.js.map +1 -1
  79. package/cjs/component/label/base-label.d.ts +1 -1
  80. package/cjs/component/label/base-label.js +1 -1
  81. package/cjs/component/label/base-label.js.map +1 -1
  82. package/cjs/component/label/label.d.ts +1 -0
  83. package/cjs/component/label/label.js +7 -0
  84. package/cjs/component/label/label.js.map +1 -1
  85. package/cjs/component/label/totalLabel.d.ts +1 -0
  86. package/cjs/component/label/totalLabel.js +7 -0
  87. package/cjs/component/label/totalLabel.js.map +1 -1
  88. package/cjs/component/legend/base-legend.d.ts +1 -1
  89. package/cjs/component/legend/base-legend.js +1 -1
  90. package/cjs/component/legend/base-legend.js.map +1 -1
  91. package/cjs/component/legend/continuous/interface.d.ts +1 -0
  92. package/cjs/component/legend/continuous/interface.js.map +1 -1
  93. package/cjs/component/legend/continuous/legend.js +5 -3
  94. package/cjs/component/legend/continuous/legend.js.map +1 -1
  95. package/cjs/component/map-label/component.d.ts +1 -1
  96. package/cjs/component/map-label/component.js +2 -2
  97. package/cjs/component/map-label/component.js.map +1 -1
  98. package/cjs/component/marker/base-marker.d.ts +23 -25
  99. package/cjs/component/marker/base-marker.js +40 -51
  100. package/cjs/component/marker/base-marker.js.map +1 -1
  101. package/cjs/component/marker/interface.d.ts +19 -9
  102. package/cjs/component/marker/interface.js.map +1 -1
  103. package/cjs/component/marker/mark-area/interface/spec.d.ts +10 -12
  104. package/cjs/component/marker/mark-area/interface/spec.js.map +1 -1
  105. package/cjs/component/marker/mark-area/mark-area.d.ts +3 -2
  106. package/cjs/component/marker/mark-area/mark-area.js +12 -22
  107. package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
  108. package/cjs/component/marker/mark-line/interface/spec.d.ts +20 -9
  109. package/cjs/component/marker/mark-line/interface/spec.js.map +1 -1
  110. package/cjs/component/marker/mark-line/mark-line.d.ts +4 -2
  111. package/cjs/component/marker/mark-line/mark-line.js +60 -60
  112. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  113. package/cjs/component/marker/mark-point/interface/spec.d.ts +8 -6
  114. package/cjs/component/marker/mark-point/interface/spec.js.map +1 -1
  115. package/cjs/component/marker/mark-point/mark-point.d.ts +3 -2
  116. package/cjs/component/marker/mark-point/mark-point.js +15 -19
  117. package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
  118. package/cjs/component/marker/utils.d.ts +13 -2
  119. package/cjs/component/marker/utils.js +108 -39
  120. package/cjs/component/marker/utils.js.map +1 -1
  121. package/cjs/component/player/player.d.ts +1 -1
  122. package/cjs/component/player/player.js +1 -1
  123. package/cjs/component/player/player.js.map +1 -1
  124. package/cjs/component/title/title.d.ts +1 -1
  125. package/cjs/component/title/title.js +1 -1
  126. package/cjs/component/title/title.js.map +1 -1
  127. package/cjs/component/tooltip/tooltip.d.ts +1 -1
  128. package/cjs/component/tooltip/tooltip.js +4 -3
  129. package/cjs/component/tooltip/tooltip.js.map +1 -1
  130. package/cjs/core/index.d.ts +1 -1
  131. package/cjs/core/index.js +1 -1
  132. package/cjs/core/index.js.map +1 -1
  133. package/cjs/core/vchart.js +5 -4
  134. package/cjs/core/vchart.js.map +1 -1
  135. package/cjs/data/transforms/aggregation.d.ts +3 -3
  136. package/cjs/data/transforms/aggregation.js +5 -7
  137. package/cjs/data/transforms/aggregation.js.map +1 -1
  138. package/cjs/event/events/dimension/util/polar.js +2 -2
  139. package/cjs/event/events/dimension/util/polar.js.map +1 -1
  140. package/cjs/layout/layout3d/index.js +1 -1
  141. package/cjs/layout/layout3d/index.js.map +1 -1
  142. package/cjs/mark/base/base-mark.js +2 -5
  143. package/cjs/mark/base/base-mark.js.map +1 -1
  144. package/cjs/model/base-model.d.ts +1 -1
  145. package/cjs/model/base-model.js +6 -38
  146. package/cjs/model/base-model.js.map +1 -1
  147. package/cjs/model/interface.d.ts +2 -1
  148. package/cjs/model/interface.js.map +1 -1
  149. package/cjs/region/region.js +4 -2
  150. package/cjs/region/region.js.map +1 -1
  151. package/cjs/series/bar/bar.js +6 -11
  152. package/cjs/series/bar/bar.js.map +1 -1
  153. package/cjs/series/base/base-series.js +12 -9
  154. package/cjs/series/base/base-series.js.map +1 -1
  155. package/cjs/series/box-plot/box-plot.js +4 -12
  156. package/cjs/series/box-plot/box-plot.js.map +1 -1
  157. package/cjs/series/gauge/gauge-pointer.d.ts +2 -1
  158. package/cjs/series/gauge/gauge-pointer.js +16 -9
  159. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  160. package/cjs/series/gauge/gauge.js +13 -1
  161. package/cjs/series/gauge/gauge.js.map +1 -1
  162. package/cjs/series/gauge/interface.d.ts +2 -0
  163. package/cjs/series/gauge/interface.js.map +1 -1
  164. package/cjs/series/heatmap/heatmap.js +4 -9
  165. package/cjs/series/heatmap/heatmap.js.map +1 -1
  166. package/cjs/series/pie/pie.js +1 -1
  167. package/cjs/series/pie/pie.js.map +1 -1
  168. package/cjs/series/range-column/range-column.js +7 -15
  169. package/cjs/series/range-column/range-column.js.map +1 -1
  170. package/cjs/series/util/utils.d.ts +5 -0
  171. package/cjs/series/util/utils.js +18 -2
  172. package/cjs/series/util/utils.js.map +1 -1
  173. package/cjs/series/waterfall/waterfall.js +7 -11
  174. package/cjs/series/waterfall/waterfall.js.map +1 -1
  175. package/cjs/theme/builtin/common/component/crosshair.js +0 -8
  176. package/cjs/theme/builtin/common/component/crosshair.js.map +1 -1
  177. package/cjs/typings/visual.d.ts +3 -2
  178. package/cjs/typings/visual.js.map +1 -1
  179. package/esm/animation/utils.d.ts +1 -0
  180. package/esm/animation/utils.js +12 -7
  181. package/esm/animation/utils.js.map +1 -1
  182. package/esm/chart/bar/bar-3d.d.ts +2 -2
  183. package/esm/chart/bar/bar-3d.js +3 -3
  184. package/esm/chart/bar/bar-3d.js.map +1 -1
  185. package/esm/chart/base-chart.d.ts +2 -5
  186. package/esm/chart/base-chart.js +8 -46
  187. package/esm/chart/base-chart.js.map +1 -1
  188. package/esm/chart/cartesian/interface.d.ts +1 -1
  189. package/esm/chart/cartesian/interface.js.map +1 -1
  190. package/esm/chart/index.js +1 -2
  191. package/esm/chart/interface/chart.d.ts +3 -3
  192. package/esm/chart/interface/chart.js.map +1 -1
  193. package/esm/chart/sequence/sequence.js +1 -0
  194. package/esm/chart/sequence/sequence.js.map +1 -1
  195. package/esm/compile/compiler.js +2 -1
  196. package/esm/compile/mark/compilable-mark.js +6 -10
  197. package/esm/compile/mark/compilable-mark.js.map +1 -1
  198. package/esm/component/axis/base-axis.d.ts +2 -1
  199. package/esm/component/axis/base-axis.js +5 -1
  200. package/esm/component/axis/base-axis.js.map +1 -1
  201. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  202. package/esm/component/axis/cartesian/axis.js +5 -3
  203. package/esm/component/axis/cartesian/axis.js.map +1 -1
  204. package/esm/component/axis/cartesian/band-axis.js +1 -3
  205. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  206. package/esm/component/axis/cartesian/util/common.d.ts +0 -2
  207. package/esm/component/axis/cartesian/util/common.js +0 -11
  208. package/esm/component/axis/cartesian/util/common.js.map +1 -1
  209. package/esm/component/axis/interface/common.d.ts +1 -0
  210. package/esm/component/axis/interface/common.js.map +1 -1
  211. package/esm/component/axis/polar/axis.js +3 -1
  212. package/esm/component/axis/polar/axis.js.map +1 -1
  213. package/esm/component/axis/polar/interface/common.d.ts +2 -3
  214. package/esm/component/axis/polar/interface/common.js.map +1 -1
  215. package/esm/component/base/base-component.d.ts +2 -7
  216. package/esm/component/base/base-component.js +5 -5
  217. package/esm/component/base/base-component.js.map +1 -1
  218. package/esm/component/brush/brush.d.ts +1 -1
  219. package/esm/component/brush/brush.js +1 -1
  220. package/esm/component/brush/brush.js.map +1 -1
  221. package/esm/component/crosshair/base.d.ts +4 -5
  222. package/esm/component/crosshair/base.js +37 -25
  223. package/esm/component/crosshair/base.js.map +1 -1
  224. package/esm/component/crosshair/cartesian.d.ts +12 -35
  225. package/esm/component/crosshair/cartesian.js +112 -103
  226. package/esm/component/crosshair/cartesian.js.map +1 -1
  227. package/esm/component/crosshair/config.d.ts +6 -0
  228. package/esm/component/crosshair/config.js +7 -0
  229. package/esm/component/crosshair/config.js.map +1 -1
  230. package/esm/component/crosshair/interface/spec.d.ts +7 -3
  231. package/esm/component/crosshair/interface/spec.js.map +1 -1
  232. package/esm/component/crosshair/polar.d.ts +13 -55
  233. package/esm/component/crosshair/polar.js +110 -79
  234. package/esm/component/crosshair/polar.js.map +1 -1
  235. package/esm/component/custom-mark/custom-mark.d.ts +1 -1
  236. package/esm/component/custom-mark/custom-mark.js +1 -1
  237. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  238. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  239. package/esm/component/data-zoom/data-filter-base-component.js +1 -1
  240. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  241. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -1
  242. package/esm/component/data-zoom/data-zoom/data-zoom.js +1 -1
  243. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  244. package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -1
  245. package/esm/component/data-zoom/scroll-bar/scroll-bar.js +1 -1
  246. package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
  247. package/esm/component/geo/geo-coordinate.d.ts +1 -1
  248. package/esm/component/geo/geo-coordinate.js +1 -1
  249. package/esm/component/geo/geo-coordinate.js.map +1 -1
  250. package/esm/component/indicator/indicator.d.ts +1 -1
  251. package/esm/component/indicator/indicator.js +1 -1
  252. package/esm/component/indicator/indicator.js.map +1 -1
  253. package/esm/component/label/base-label.d.ts +1 -1
  254. package/esm/component/label/base-label.js +1 -1
  255. package/esm/component/label/base-label.js.map +1 -1
  256. package/esm/component/label/label.d.ts +1 -0
  257. package/esm/component/label/label.js +7 -0
  258. package/esm/component/label/label.js.map +1 -1
  259. package/esm/component/label/totalLabel.d.ts +1 -0
  260. package/esm/component/label/totalLabel.js +7 -0
  261. package/esm/component/label/totalLabel.js.map +1 -1
  262. package/esm/component/legend/base-legend.d.ts +1 -1
  263. package/esm/component/legend/base-legend.js +1 -1
  264. package/esm/component/legend/base-legend.js.map +1 -1
  265. package/esm/component/legend/continuous/interface.d.ts +1 -0
  266. package/esm/component/legend/continuous/interface.js.map +1 -1
  267. package/esm/component/legend/continuous/legend.js +5 -3
  268. package/esm/component/legend/continuous/legend.js.map +1 -1
  269. package/esm/component/map-label/component.d.ts +1 -1
  270. package/esm/component/map-label/component.js +2 -2
  271. package/esm/component/map-label/component.js.map +1 -1
  272. package/esm/component/marker/base-marker.d.ts +23 -25
  273. package/esm/component/marker/base-marker.js +42 -53
  274. package/esm/component/marker/base-marker.js.map +1 -1
  275. package/esm/component/marker/interface.d.ts +19 -9
  276. package/esm/component/marker/interface.js.map +1 -1
  277. package/esm/component/marker/mark-area/interface/spec.d.ts +10 -12
  278. package/esm/component/marker/mark-area/interface/spec.js.map +1 -1
  279. package/esm/component/marker/mark-area/mark-area.d.ts +3 -2
  280. package/esm/component/marker/mark-area/mark-area.js +10 -22
  281. package/esm/component/marker/mark-area/mark-area.js.map +1 -1
  282. package/esm/component/marker/mark-line/interface/spec.d.ts +20 -9
  283. package/esm/component/marker/mark-line/interface/spec.js.map +1 -1
  284. package/esm/component/marker/mark-line/mark-line.d.ts +4 -2
  285. package/esm/component/marker/mark-line/mark-line.js +58 -54
  286. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  287. package/esm/component/marker/mark-point/interface/spec.d.ts +8 -6
  288. package/esm/component/marker/mark-point/interface/spec.js.map +1 -1
  289. package/esm/component/marker/mark-point/mark-point.d.ts +3 -2
  290. package/esm/component/marker/mark-point/mark-point.js +12 -20
  291. package/esm/component/marker/mark-point/mark-point.js.map +1 -1
  292. package/esm/component/marker/utils.d.ts +13 -2
  293. package/esm/component/marker/utils.js +103 -35
  294. package/esm/component/marker/utils.js.map +1 -1
  295. package/esm/component/player/player.d.ts +1 -1
  296. package/esm/component/player/player.js +1 -1
  297. package/esm/component/player/player.js.map +1 -1
  298. package/esm/component/title/title.d.ts +1 -1
  299. package/esm/component/title/title.js +1 -1
  300. package/esm/component/title/title.js.map +1 -1
  301. package/esm/component/tooltip/tooltip.d.ts +1 -1
  302. package/esm/component/tooltip/tooltip.js +4 -2
  303. package/esm/component/tooltip/tooltip.js.map +1 -1
  304. package/esm/core/index.d.ts +1 -1
  305. package/esm/core/index.js +1 -1
  306. package/esm/core/index.js.map +1 -1
  307. package/esm/core/vchart.js +5 -4
  308. package/esm/core/vchart.js.map +1 -1
  309. package/esm/data/transforms/aggregation.d.ts +3 -3
  310. package/esm/data/transforms/aggregation.js +6 -8
  311. package/esm/data/transforms/aggregation.js.map +1 -1
  312. package/esm/event/events/dimension/util/polar.js +2 -2
  313. package/esm/event/events/dimension/util/polar.js.map +1 -1
  314. package/esm/layout/layout3d/index.js +1 -1
  315. package/esm/layout/layout3d/index.js.map +1 -1
  316. package/esm/mark/base/base-mark.js +1 -4
  317. package/esm/mark/base/base-mark.js.map +1 -1
  318. package/esm/model/base-model.d.ts +1 -1
  319. package/esm/model/base-model.js +6 -39
  320. package/esm/model/base-model.js.map +1 -1
  321. package/esm/model/interface.d.ts +2 -1
  322. package/esm/model/interface.js.map +1 -1
  323. package/esm/region/region.js +5 -1
  324. package/esm/region/region.js.map +1 -1
  325. package/esm/series/bar/bar.js +5 -9
  326. package/esm/series/bar/bar.js.map +1 -1
  327. package/esm/series/base/base-series.js +10 -7
  328. package/esm/series/base/base-series.js.map +1 -1
  329. package/esm/series/box-plot/box-plot.js +5 -11
  330. package/esm/series/box-plot/box-plot.js.map +1 -1
  331. package/esm/series/gauge/gauge-pointer.d.ts +2 -1
  332. package/esm/series/gauge/gauge-pointer.js +16 -9
  333. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  334. package/esm/series/gauge/gauge.js +13 -1
  335. package/esm/series/gauge/gauge.js.map +1 -1
  336. package/esm/series/gauge/interface.d.ts +2 -0
  337. package/esm/series/gauge/interface.js.map +1 -1
  338. package/esm/series/heatmap/heatmap.js +4 -8
  339. package/esm/series/heatmap/heatmap.js.map +1 -1
  340. package/esm/series/pie/pie.js +1 -1
  341. package/esm/series/pie/pie.js.map +1 -1
  342. package/esm/series/range-column/range-column.js +6 -12
  343. package/esm/series/range-column/range-column.js.map +1 -1
  344. package/esm/series/util/utils.d.ts +5 -0
  345. package/esm/series/util/utils.js +15 -0
  346. package/esm/series/util/utils.js.map +1 -1
  347. package/esm/series/waterfall/waterfall.js +6 -9
  348. package/esm/series/waterfall/waterfall.js.map +1 -1
  349. package/esm/theme/builtin/common/component/crosshair.js +0 -8
  350. package/esm/theme/builtin/common/component/crosshair.js.map +1 -1
  351. package/esm/typings/visual.d.ts +3 -2
  352. package/esm/typings/visual.js.map +1 -1
  353. package/package.json +15 -15
@@ -8,6 +8,7 @@ import type { ISeriesMarkAttributeContext } from '../compile/mark';
8
8
  export declare const AnimationStates: string[];
9
9
  export declare function animationConfig<Preset extends string>(defaultConfig?: MarkAnimationSpec, userConfig?: Partial<Record<IAnimationState, boolean | IStateAnimateSpec<Preset> | IAnimationConfig | IAnimationConfig[]>>, params?: {
10
10
  dataIndex: (datum: any) => number;
11
+ dataCount: () => number;
11
12
  }): MarkAnimationSpec;
12
13
  export declare function userAnimationConfig<M extends string, Preset extends string>(markName: SeriesMarkNameEnum | string, spec: IAnimationSpec<M, Preset>, ctx: ISeriesMarkAttributeContext): Partial<Record<"none" | "normal" | "state" | "update" | "appear" | "enter" | "exit" | "disappear", boolean | IAnimationConfig | IAnimationConfig[] | IStateAnimateSpec<string>>>;
13
14
  export declare function shouldMarkDoMorph(spec: ISeriesSpec & IAnimationSpec<string, string>, markName: string): boolean;
@@ -24,7 +24,7 @@ function animationConfig(defaultConfig = {}, userConfig, params) {
24
24
  })), null == userConfig ? void 0 : userConfig[state]) ? (stateConfig = (0, vutils_1.isArray)(userConfig[state]) ? userConfig[state] : defaultStateConfig.map(((stateConfig, i) => {
25
25
  var _a;
26
26
  let singleConfig = (0, merge_spec_1.mergeSpec)({}, defaultStateConfig[i], userConfig[state]);
27
- return isChannelAnimation(singleConfig) && delete singleConfig.type, singleConfig.oneByOne && (singleConfig = produceOneByOne(singleConfig, null !== (_a = null == params ? void 0 : params.dataIndex) && void 0 !== _a ? _a : defaultDataIndex)),
27
+ return isChannelAnimation(singleConfig) && delete singleConfig.type, singleConfig.oneByOne && (singleConfig = produceOneByOne(singleConfig, null !== (_a = null == params ? void 0 : params.dataIndex) && void 0 !== _a ? _a : defaultDataIndex, null == params ? void 0 : params.dataCount)),
28
28
  singleConfig;
29
29
  })), config[state] = stateConfig) : config[state] = defaultStateConfig;
30
30
  }
@@ -43,14 +43,22 @@ function userAnimationConfig(markName, spec, ctx) {
43
43
  }, ctx);
44
44
  }
45
45
 
46
- function produceOneByOne(stateConfig, dataIndex) {
47
- const {oneByOne: oneByOne, duration: duration} = stateConfig;
46
+ function produceOneByOne(stateConfig, dataIndex, dataCount) {
47
+ const {oneByOne: oneByOne, duration: duration, delay: delay, delayAfter: delayAfter} = stateConfig;
48
48
  return stateConfig.delay = (datum, element, params) => {
49
- const _index = dataIndex(datum), _durationTime = (0, type_1.isFunction)(duration) ? duration(datum, element, params) : (0,
50
- type_1.isValidNumber)(duration) ? duration : 0;
51
- let _oneByOneTime = (0, type_1.isFunction)(oneByOne) ? oneByOne(datum, element, params) : oneByOne;
52
- return !1 === _oneByOneTime ? 0 : (_oneByOneTime = !0 === _oneByOneTime ? 0 : _oneByOneTime,
53
- _index * (_durationTime + _oneByOneTime));
49
+ const index = dataIndex(datum), durationTime = (0, type_1.isFunction)(duration) ? duration(datum, element, params) : (0,
50
+ type_1.isValidNumber)(duration) ? duration : 0, userDelay = (0, type_1.isFunction)(delay) ? delay(datum, element, params) : (0,
51
+ type_1.isValidNumber)(delay) ? delay : 0;
52
+ let oneByOneTime = (0, type_1.isFunction)(oneByOne) ? oneByOne(datum, element, params) : oneByOne;
53
+ return !1 === oneByOneTime ? userDelay : (oneByOneTime = !0 === oneByOneTime ? 0 : oneByOneTime,
54
+ userDelay + index * (durationTime + oneByOneTime));
55
+ }, stateConfig.delayAfter = (datum, element, params) => {
56
+ const index = dataIndex(datum), durationTime = (0, type_1.isFunction)(duration) ? duration(datum, element, params) : (0,
57
+ type_1.isValidNumber)(duration) ? duration : 0, userDelayAfter = (0, type_1.isFunction)(delayAfter) ? delayAfter(datum, element, params) : (0,
58
+ type_1.isValidNumber)(delayAfter) ? delayAfter : 0;
59
+ let oneByOneTime = (0, type_1.isFunction)(oneByOne) ? oneByOne(datum, element, params) : oneByOne;
60
+ if (!1 === oneByOneTime) return userDelayAfter;
61
+ return oneByOneTime = !0 === oneByOneTime ? 0 : oneByOneTime, userDelayAfter + ((dataCount ? dataCount() : element.mark.elements.length) - index) * (durationTime + oneByOneTime);
54
62
  }, delete stateConfig.oneByOne, stateConfig;
55
63
  }
56
64
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/animation/utils.ts"],"names":[],"mappings":"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","file":"utils.js","sourcesContent":["import type { IAnimationConfig } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type {\n IElement,\n IAnimationTypeConfig,\n IStateAnimationConfig,\n IAnimationTimeline\n} from '@visactor/vgrammar-core';\nimport type { MarkAnimationSpec, IAnimationState } from './interface';\nimport type { IStateAnimateSpec, IAnimationSpec } from './spec';\nimport { isFunction, isValidNumber } from '../util/type';\nimport { DEFAULT_DATA_INDEX } from '../constant';\nimport { DEFAULT_ANIMATION_CONFIG } from './config';\nimport { cloneDeep, isArray, isObject, isValid } from '@visactor/vutils';\nimport type { SeriesMarkNameEnum } from '../series/interface/type';\nimport { mergeSpec } from '../util/spec/merge-spec';\nimport type { ISeries } from '../series';\nimport type { ISeriesSpec } from '../typings';\nimport type { ISeriesMarkAttributeContext } from '../compile/mark';\n\nexport const AnimationStates = ['appear', 'enter', 'update', 'exit', 'disappear', 'normal'];\n\nexport function animationConfig<Preset extends string>(\n defaultConfig: MarkAnimationSpec = {},\n userConfig?: Partial<\n Record<IAnimationState, boolean | IStateAnimateSpec<Preset> | IAnimationConfig | IAnimationConfig[]>\n >,\n params?: {\n dataIndex: (datum: any) => number;\n }\n) {\n const config = {} as MarkAnimationSpec;\n for (let i = 0; i < AnimationStates.length; i++) {\n const state = AnimationStates[i];\n\n if (userConfig?.[state] === false) {\n continue;\n }\n\n if (state === 'normal') {\n userConfig.normal && (config.normal = userConfig.normal as IAnimationTypeConfig);\n continue;\n }\n // 开始处理默认动画逻辑\n let defaultStateConfig: IAnimationConfig[];\n if (isArray(defaultConfig[state])) {\n defaultStateConfig = defaultConfig[state] as IAnimationConfig[];\n } else {\n defaultStateConfig = [{ ...DEFAULT_ANIMATION_CONFIG[state], ...defaultConfig[state] } as any];\n }\n // FIXME: 用来控制当动画状态发生变更时是否清除正在执行的动画。\n // 现在 vrender 对于同一个视觉通道的 tween 不会做覆盖的处理。若不做动画清空同时 exit 动画比 update 动画时间长的情况下,效果会不正确\n if (state === 'exit') {\n defaultStateConfig.forEach(exitConfig => {\n exitConfig.controlOptions = { stopWhenStateChange: true };\n });\n }\n\n if (!userConfig?.[state]) {\n config[state] = defaultStateConfig;\n continue;\n }\n\n // 开始处理用户配置的动画逻辑\n let stateConfig: IAnimationConfig[];\n if (isArray(userConfig[state])) {\n stateConfig = userConfig[state];\n } else {\n stateConfig = defaultStateConfig.map((stateConfig, i) => {\n let singleConfig: IAnimationConfig = mergeSpec(\n {},\n defaultStateConfig[i],\n userConfig[state]\n ) as IAnimationConfig;\n if (isChannelAnimation(singleConfig)) {\n // `type` and `channel` is conflict, and `type` has a higher priority.\n // here if user configured `channel`, we should remove `type` which will come from default animation config\n delete (singleConfig as IAnimationTypeConfig).type;\n }\n\n if (singleConfig.oneByOne) {\n singleConfig = produceOneByOne(singleConfig as IAnimationTypeConfig, params?.dataIndex ?? defaultDataIndex);\n }\n return singleConfig;\n });\n }\n\n config[state] = stateConfig;\n }\n\n // 将 update copy 到 state 保证 useState 效果与 update 对齐\n config.state = config.update as IStateAnimationConfig;\n return config;\n}\n\nexport function userAnimationConfig<M extends string, Preset extends string>(\n markName: SeriesMarkNameEnum | string,\n spec: IAnimationSpec<M, Preset>,\n ctx: ISeriesMarkAttributeContext\n) {\n const userConfig = {\n appear: spec.animationAppear?.[markName] ?? spec.animationAppear,\n disappear: spec.animationDisappear?.[markName] ?? spec.animationDisappear,\n enter: spec.animationEnter?.[markName] ?? spec.animationEnter,\n exit: spec.animationExit?.[markName] ?? spec.animationExit,\n update: spec.animationUpdate?.[markName] ?? spec.animationUpdate,\n normal: spec.animationNormal?.[markName]\n };\n return uniformAnimationConfig(userConfig, ctx);\n}\n\n/**\n * oneByOne\n */\nfunction produceOneByOne(stateConfig: IAnimationTypeConfig, dataIndex: (datum: any) => number) {\n const { oneByOne, duration } = stateConfig;\n stateConfig.delay = (datum: any, element: IElement, params: any) => {\n const _index = dataIndex(datum);\n const _durationTime = isFunction(duration)\n ? duration(datum, element, params)\n : isValidNumber(duration)\n ? duration\n : 0;\n let _oneByOneTime = isFunction(oneByOne) ? oneByOne(datum, element, params) : oneByOne;\n if (_oneByOneTime === false) {\n return 0;\n }\n _oneByOneTime = _oneByOneTime === true ? 0 : _oneByOneTime;\n return _index * (_durationTime + _oneByOneTime);\n };\n delete stateConfig.oneByOne;\n return stateConfig;\n}\n\nfunction defaultDataIndex(datum: any) {\n return datum?.[DEFAULT_DATA_INDEX];\n}\n\nexport function shouldMarkDoMorph(spec: ISeriesSpec & IAnimationSpec<string, string>, markName: string) {\n if (spec.animation === false) {\n return false;\n }\n\n if (spec.morph?.enable === false) {\n return false;\n }\n\n const appearAnimationEnabled = (spec.animationAppear?.[markName] ?? spec.animationAppear) !== false;\n const updateAnimationEnabled = (spec.animationUpdate?.[markName] ?? spec.animationUpdate) !== false;\n\n if (!appearAnimationEnabled || !updateAnimationEnabled) {\n return false;\n }\n\n return true;\n}\n\nexport function isTimeLineAnimation(animationConfig: IAnimationConfig) {\n return isValid((animationConfig as IAnimationTimeline).timeSlices);\n}\n\nexport function isChannelAnimation(animationConfig: IAnimationConfig) {\n return !isTimeLineAnimation(animationConfig) && isValid((animationConfig as IAnimationTypeConfig).channel);\n}\n\nexport function uniformAnimationConfig<Preset extends string>(\n config: Partial<Record<IAnimationState, boolean | IStateAnimateSpec<Preset> | IAnimationConfig | IAnimationConfig[]>>,\n ctx: ISeriesMarkAttributeContext\n) {\n if (!config) {\n return config;\n }\n config = cloneDeep(config);\n traverseSpec(config, (node: any) => {\n // 将函数转换为 vchart 代理的函数\n // 这里可能会传自定义动画的构造函数,不能被代理\n if (isFunction(node) && node.prototype?.constructor !== node) {\n const name = (...args: any) => {\n return node(...args, ctx);\n };\n return name;\n }\n return node;\n });\n\n return config;\n}\n\nfunction traverseSpec(spec: any, transform: (node: any, key: string | number) => any) {\n if (isArray(spec)) {\n spec.forEach((i: any, index: number) => {\n spec[index] = transform(spec[index], index);\n traverseSpec(spec[index], transform);\n });\n } else if (isObject(spec)) {\n for (const key in spec) {\n spec[key] = transform(spec[key], key);\n traverseSpec(spec[key], transform);\n }\n }\n}\n\nexport function isAnimationEnabledForSeries(series: ISeries) {\n return series.getSpec().animation !== false && isValid(series.getRegion().animate);\n}\n"]}
1
+ {"version":3,"sources":["../src/animation/utils.ts"],"names":[],"mappings":"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","file":"utils.js","sourcesContent":["import type { IAnimationConfig } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type {\n IElement,\n IAnimationTypeConfig,\n IStateAnimationConfig,\n IAnimationTimeline\n} from '@visactor/vgrammar-core';\nimport type { MarkAnimationSpec, IAnimationState } from './interface';\nimport type { IStateAnimateSpec, IAnimationSpec } from './spec';\nimport { isFunction, isValidNumber } from '../util/type';\nimport { DEFAULT_DATA_INDEX } from '../constant';\nimport { DEFAULT_ANIMATION_CONFIG } from './config';\nimport { cloneDeep, isArray, isObject, isValid } from '@visactor/vutils';\nimport type { SeriesMarkNameEnum } from '../series/interface/type';\nimport { mergeSpec } from '../util/spec/merge-spec';\nimport type { ISeries } from '../series';\nimport type { ISeriesSpec } from '../typings';\nimport type { ISeriesMarkAttributeContext } from '../compile/mark';\n\nexport const AnimationStates = ['appear', 'enter', 'update', 'exit', 'disappear', 'normal'];\n\nexport function animationConfig<Preset extends string>(\n defaultConfig: MarkAnimationSpec = {},\n userConfig?: Partial<\n Record<IAnimationState, boolean | IStateAnimateSpec<Preset> | IAnimationConfig | IAnimationConfig[]>\n >,\n params?: {\n dataIndex: (datum: any) => number;\n dataCount: () => number;\n }\n) {\n const config = {} as MarkAnimationSpec;\n for (let i = 0; i < AnimationStates.length; i++) {\n const state = AnimationStates[i];\n\n if (userConfig?.[state] === false) {\n continue;\n }\n\n if (state === 'normal') {\n userConfig.normal && (config.normal = userConfig.normal as IAnimationTypeConfig);\n continue;\n }\n // 开始处理默认动画逻辑\n let defaultStateConfig: IAnimationConfig[];\n if (isArray(defaultConfig[state])) {\n defaultStateConfig = defaultConfig[state] as IAnimationConfig[];\n } else {\n defaultStateConfig = [{ ...DEFAULT_ANIMATION_CONFIG[state], ...defaultConfig[state] } as any];\n }\n // FIXME: 用来控制当动画状态发生变更时是否清除正在执行的动画。\n // 现在 vrender 对于同一个视觉通道的 tween 不会做覆盖的处理。若不做动画清空同时 exit 动画比 update 动画时间长的情况下,效果会不正确\n if (state === 'exit') {\n defaultStateConfig.forEach(exitConfig => {\n exitConfig.controlOptions = { stopWhenStateChange: true };\n });\n }\n\n if (!userConfig?.[state]) {\n config[state] = defaultStateConfig;\n continue;\n }\n\n // 开始处理用户配置的动画逻辑\n let stateConfig: IAnimationConfig[];\n if (isArray(userConfig[state])) {\n stateConfig = userConfig[state];\n } else {\n stateConfig = defaultStateConfig.map((stateConfig, i) => {\n let singleConfig: IAnimationConfig = mergeSpec(\n {},\n defaultStateConfig[i],\n userConfig[state]\n ) as IAnimationConfig;\n if (isChannelAnimation(singleConfig)) {\n // `type` and `channel` is conflict, and `type` has a higher priority.\n // here if user configured `channel`, we should remove `type` which will come from default animation config\n delete (singleConfig as IAnimationTypeConfig).type;\n }\n\n if (singleConfig.oneByOne) {\n singleConfig = produceOneByOne(\n singleConfig as IAnimationTypeConfig,\n params?.dataIndex ?? defaultDataIndex,\n params?.dataCount\n );\n }\n return singleConfig;\n });\n }\n\n config[state] = stateConfig;\n }\n\n // 将 update copy 到 state 保证 useState 效果与 update 对齐\n config.state = config.update as IStateAnimationConfig;\n return config;\n}\n\nexport function userAnimationConfig<M extends string, Preset extends string>(\n markName: SeriesMarkNameEnum | string,\n spec: IAnimationSpec<M, Preset>,\n ctx: ISeriesMarkAttributeContext\n) {\n const userConfig = {\n appear: spec.animationAppear?.[markName] ?? spec.animationAppear,\n disappear: spec.animationDisappear?.[markName] ?? spec.animationDisappear,\n enter: spec.animationEnter?.[markName] ?? spec.animationEnter,\n exit: spec.animationExit?.[markName] ?? spec.animationExit,\n update: spec.animationUpdate?.[markName] ?? spec.animationUpdate,\n normal: spec.animationNormal?.[markName]\n };\n return uniformAnimationConfig(userConfig, ctx);\n}\n\n/**\n * oneByOne\n */\nfunction produceOneByOne(\n stateConfig: IAnimationTypeConfig,\n dataIndex: (datum: any) => number,\n dataCount?: () => number\n) {\n const { oneByOne, duration, delay, delayAfter } = stateConfig;\n stateConfig.delay = (datum: any, element: IElement, params: any) => {\n const index = dataIndex(datum);\n const durationTime = isFunction(duration)\n ? duration(datum, element, params)\n : isValidNumber(duration)\n ? duration\n : 0;\n const userDelay = isFunction(delay) ? delay(datum, element, params) : isValidNumber(delay) ? delay : 0;\n let oneByOneTime = isFunction(oneByOne) ? oneByOne(datum, element, params) : oneByOne;\n if (oneByOneTime === false) {\n return userDelay;\n }\n oneByOneTime = oneByOneTime === true ? 0 : oneByOneTime;\n return userDelay + index * (durationTime + oneByOneTime);\n };\n stateConfig.delayAfter = (datum: any, element: IElement, params: any) => {\n const index = dataIndex(datum);\n const durationTime = isFunction(duration)\n ? duration(datum, element, params)\n : isValidNumber(duration)\n ? duration\n : 0;\n const userDelayAfter = isFunction(delayAfter)\n ? delayAfter(datum, element, params)\n : isValidNumber(delayAfter)\n ? delayAfter\n : 0;\n let oneByOneTime = isFunction(oneByOne) ? oneByOne(datum, element, params) : oneByOne;\n if (oneByOneTime === false) {\n return userDelayAfter;\n }\n const indexCount = dataCount ? dataCount() : element.mark.elements.length;\n oneByOneTime = oneByOneTime === true ? 0 : oneByOneTime;\n return userDelayAfter + (indexCount - index) * (durationTime + oneByOneTime);\n };\n delete stateConfig.oneByOne;\n return stateConfig;\n}\n\nfunction defaultDataIndex(datum: any) {\n return datum?.[DEFAULT_DATA_INDEX];\n}\n\nexport function shouldMarkDoMorph(spec: ISeriesSpec & IAnimationSpec<string, string>, markName: string) {\n if (spec.animation === false) {\n return false;\n }\n\n if (spec.morph?.enable === false) {\n return false;\n }\n\n const appearAnimationEnabled = (spec.animationAppear?.[markName] ?? spec.animationAppear) !== false;\n const updateAnimationEnabled = (spec.animationUpdate?.[markName] ?? spec.animationUpdate) !== false;\n\n if (!appearAnimationEnabled || !updateAnimationEnabled) {\n return false;\n }\n\n return true;\n}\n\nexport function isTimeLineAnimation(animationConfig: IAnimationConfig) {\n return isValid((animationConfig as IAnimationTimeline).timeSlices);\n}\n\nexport function isChannelAnimation(animationConfig: IAnimationConfig) {\n return !isTimeLineAnimation(animationConfig) && isValid((animationConfig as IAnimationTypeConfig).channel);\n}\n\nexport function uniformAnimationConfig<Preset extends string>(\n config: Partial<Record<IAnimationState, boolean | IStateAnimateSpec<Preset> | IAnimationConfig | IAnimationConfig[]>>,\n ctx: ISeriesMarkAttributeContext\n) {\n if (!config) {\n return config;\n }\n config = cloneDeep(config);\n traverseSpec(config, (node: any) => {\n // 将函数转换为 vchart 代理的函数\n // 这里可能会传自定义动画的构造函数,不能被代理\n if (isFunction(node) && node.prototype?.constructor !== node) {\n const name = (...args: any) => {\n return node(...args, ctx);\n };\n return name;\n }\n return node;\n });\n\n return config;\n}\n\nfunction traverseSpec(spec: any, transform: (node: any, key: string | number) => any) {\n if (isArray(spec)) {\n spec.forEach((i: any, index: number) => {\n spec[index] = transform(spec[index], index);\n traverseSpec(spec[index], transform);\n });\n } else if (isObject(spec)) {\n for (const key in spec) {\n spec[key] = transform(spec[key], key);\n traverseSpec(spec[key], transform);\n }\n }\n}\n\nexport function isAnimationEnabledForSeries(series: ISeries) {\n return series.getSpec().animation !== false && isValid(series.getRegion().animate);\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { CartesianChart } from '../cartesian/cartesian';
2
- export declare class Bar3dChart extends CartesianChart {
1
+ import { BarChart } from './bar';
2
+ export declare class Bar3dChart extends BarChart {
3
3
  static readonly type: string;
4
4
  static readonly view: string;
5
5
  readonly type: string;
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.registerBar3dChart = exports.Bar3dChart = void 0;
6
6
 
7
- const bar_3d_1 = require("../../series/bar/bar-3d"), type_1 = require("../../series/interface/type"), cartesian_1 = require("../cartesian/cartesian"), type_2 = require("../interface/type"), factory_1 = require("../../core/factory");
7
+ const bar_3d_1 = require("../../series/bar/bar-3d"), type_1 = require("../../series/interface/type"), type_2 = require("../interface/type"), factory_1 = require("../../core/factory"), bar_1 = require("./bar");
8
8
 
9
- class Bar3dChart extends cartesian_1.CartesianChart {
9
+ class Bar3dChart extends bar_1.BarChart {
10
10
  constructor() {
11
11
  super(...arguments), this.type = type_2.ChartTypeEnum.bar3d, this.seriesType = type_1.SeriesTypeEnum.bar3d;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/chart/bar/bar-3d.ts"],"names":[],"mappings":";;;AAAA,oDAA8D;AAC9D,sDAA6D;AAC7D,sDAAwD;AACxD,4CAAkD;AAElD,gDAA6C;AAE7C,MAAa,UAAW,SAAQ,0BAAc;IAA9C;;QAGW,SAAI,GAAW,oBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,qBAAc,CAAC,KAAK,CAAC;IAWrD,CAAC;IATW,qBAAqB,CAAC,IAAS;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,QAAQ,EAAoB,IAAK,CAAC,QAAQ,EAC1C,WAAW,EAAoB,IAAK,CAAC,WAAW,EAChD,WAAW,EAAoB,IAAK,CAAC,WAAW,EAChD,aAAa,EAAoB,IAAK,CAAC,aAAa,IACpD;IACJ,CAAC;;AAdH,gCAeC;AAdiB,eAAI,GAAW,oBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC;AAe1C,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,4BAAmB,GAAE,CAAC;IACtB,iBAAO,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B","file":"bar-3d.js","sourcesContent":["import { registerBar3dSeries } from '../../series/bar/bar-3d';\nimport { SeriesTypeEnum } from '../../series/interface/type';\nimport { CartesianChart } from '../cartesian/cartesian';\nimport { ChartTypeEnum } from '../interface/type';\nimport type { IBar3dChartSpec } from './interface';\nimport { Factory } from '../../core/factory';\n\nexport class Bar3dChart extends CartesianChart {\n static readonly type: string = ChartTypeEnum.bar3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.bar3d;\n readonly seriesType: string = SeriesTypeEnum.bar3d;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n barWidth: (<IBar3dChartSpec>spec).barWidth,\n barMaxWidth: (<IBar3dChartSpec>spec).barMaxWidth,\n barMinWidth: (<IBar3dChartSpec>spec).barMinWidth,\n barGapInGroup: (<IBar3dChartSpec>spec).barGapInGroup\n };\n }\n}\n\nexport const registerBar3dChart = () => {\n registerBar3dSeries();\n Factory.registerChart(Bar3dChart.type, Bar3dChart);\n};\n"]}
1
+ {"version":3,"sources":["../src/chart/bar/bar-3d.ts"],"names":[],"mappings":";;;AAAA,oDAA8D;AAC9D,sDAA6D;AAE7D,4CAAkD;AAElD,gDAA6C;AAC7C,+BAAiC;AAEjC,MAAa,UAAW,SAAQ,cAAQ;IAAxC;;QAGW,SAAI,GAAW,oBAAa,CAAC,KAAK,CAAC;QACnC,eAAU,GAAW,qBAAc,CAAC,KAAK,CAAC;IAWrD,CAAC;IATW,qBAAqB,CAAC,IAAS;QACvC,uCACK,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KACpC,QAAQ,EAAoB,IAAK,CAAC,QAAQ,EAC1C,WAAW,EAAoB,IAAK,CAAC,WAAW,EAChD,WAAW,EAAoB,IAAK,CAAC,WAAW,EAChD,aAAa,EAAoB,IAAK,CAAC,aAAa,IACpD;IACJ,CAAC;;AAdH,gCAeC;AAdiB,eAAI,GAAW,oBAAa,CAAC,KAAK,CAAC;AACnC,eAAI,GAAW,eAAe,CAAC;AAe1C,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAA,4BAAmB,GAAE,CAAC;IACtB,iBAAO,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B","file":"bar-3d.js","sourcesContent":["import { registerBar3dSeries } from '../../series/bar/bar-3d';\nimport { SeriesTypeEnum } from '../../series/interface/type';\nimport { CartesianChart } from '../cartesian/cartesian';\nimport { ChartTypeEnum } from '../interface/type';\nimport type { IBar3dChartSpec } from './interface';\nimport { Factory } from '../../core/factory';\nimport { BarChart } from './bar';\n\nexport class Bar3dChart extends BarChart {\n static readonly type: string = ChartTypeEnum.bar3d;\n static readonly view: string = 'singleDefault';\n readonly type: string = ChartTypeEnum.bar3d;\n readonly seriesType: string = SeriesTypeEnum.bar3d;\n\n protected _getDefaultSeriesSpec(spec: any): any {\n return {\n ...super._getDefaultSeriesSpec(spec),\n barWidth: (<IBar3dChartSpec>spec).barWidth,\n barMaxWidth: (<IBar3dChartSpec>spec).barMaxWidth,\n barMinWidth: (<IBar3dChartSpec>spec).barMinWidth,\n barGapInGroup: (<IBar3dChartSpec>spec).barGapInGroup\n };\n }\n}\n\nexport const registerBar3dChart = () => {\n registerBar3dSeries();\n Factory.registerChart(Bar3dChart.type, Bar3dChart);\n};\n"]}
@@ -109,7 +109,7 @@ export declare class BaseChart extends CompilableBase implements IChart {
109
109
  updateGlobalScaleDomain(): void;
110
110
  updateGlobalScale(result: IUpdateSpecResult): void;
111
111
  updateGlobalScaleTheme(): void;
112
- updateSpec(spec: any, morphConfig?: IMorphConfig): {
112
+ updateSpec(spec: any): {
113
113
  change: boolean;
114
114
  reMake: boolean;
115
115
  reRender: boolean;
@@ -125,10 +125,7 @@ export declare class BaseChart extends CompilableBase implements IChart {
125
125
  protected isValidSeries(seriesType: string): boolean;
126
126
  protected _getDefaultSeriesSpec(spec: any): any;
127
127
  private _updateLayoutRect;
128
- setCurrentTheme(reInit?: boolean): void;
129
- protected setRegionTheme(reInit?: boolean): void;
130
- protected setComponentTheme(reInit?: boolean): void;
131
- protected setSeriesTheme(reInit?: boolean): void;
128
+ setCurrentTheme(): void;
132
129
  clear(): void;
133
130
  compile(): void;
134
131
  afterCompile(): void;
@@ -1,31 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var __awaiter = this && this.__awaiter || function(thisArg, _arguments, P, generator) {
4
- return new (P || (P = Promise))((function(resolve, reject) {
5
- function fulfilled(value) {
6
- try {
7
- step(generator.next(value));
8
- } catch (e) {
9
- reject(e);
10
- }
11
- }
12
- function rejected(value) {
13
- try {
14
- step(generator.throw(value));
15
- } catch (e) {
16
- reject(e);
17
- }
18
- }
19
- function step(result) {
20
- var value;
21
- result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P((function(resolve) {
22
- resolve(value);
23
- }))).then(fulfilled, rejected);
24
- }
25
- step((generator = generator.apply(thisArg, _arguments || [])).next());
26
- }));
27
- };
28
-
29
3
  Object.defineProperty(exports, "__esModule", {
30
4
  value: !0
31
5
  }), exports.BaseChart = void 0;
@@ -188,6 +162,7 @@ class BaseChart extends compilable_base_1.CompilableBase {
188
162
  util_1.isValid)(spec.regionIndex) && (region = this.getRegionsInIndex([ spec.regionIndex ])[0]),
189
163
  region || (region = this._regions[0]), !region) return;
190
164
  const series = factory_1.Factory.createSeries(spec.type, spec, Object.assign(Object.assign({}, this._modelOption), {
165
+ type: spec.type,
191
166
  region: region,
192
167
  specIndex: index,
193
168
  globalScale: this._globalScale,
@@ -201,6 +176,7 @@ class BaseChart extends compilable_base_1.CompilableBase {
201
176
  }
202
177
  _createComponent(Component, spec) {
203
178
  const component = Component.createComponent(spec, Object.assign(Object.assign({}, this._modelOption), {
179
+ type: Component.type,
204
180
  getAllRegions: this.getAllRegions,
205
181
  getRegionsInIndex: this.getRegionsInIndex,
206
182
  getRegionsInIds: this.getRegionsInIds,
@@ -393,7 +369,7 @@ class BaseChart extends compilable_base_1.CompilableBase {
393
369
  colorSpec.rangeTheme && (colorSpec.range = (0, util_2.getDataScheme)(colorScheme),
394
370
  this._globalScale.getScale("color").range(colorSpec.range));
395
371
  }
396
- updateSpec(spec, morphConfig) {
372
+ updateSpec(spec) {
397
373
  const result = {
398
374
  change: !1,
399
375
  reMake: !1,
@@ -401,7 +377,7 @@ class BaseChart extends compilable_base_1.CompilableBase {
401
377
  reSize: !1,
402
378
  reCompile: !1
403
379
  };
404
- if (this.setLayoutTag(!0, morphConfig), spec.type !== this.type) return result.reMake = !0,
380
+ if (this.setLayoutTag(!0, null, !1), spec.type !== this.type) return result.reMake = !0,
405
381
  result;
406
382
  this.transformSpec(spec);
407
383
  const currentKeys = Object.keys(this._spec).sort(), nextKeys = Object.keys(spec).sort();
@@ -502,27 +478,13 @@ class BaseChart extends compilable_base_1.CompilableBase {
502
478
  this._layoutRect.height = viewRect.height - this.padding.top - this.padding.bottom,
503
479
  this._layoutRect.x = this.padding.left, this._layoutRect.y = this.padding.top, this._event.emit(constant_1.ChartEvent.layoutRectUpdate, {});
504
480
  }
505
- setCurrentTheme(reInit = !0) {
481
+ setCurrentTheme() {
506
482
  this.updateChartConfig({
507
483
  change: !0,
508
484
  reMake: !1
509
- }, this._spec), this.setLayoutTag(!0), this.transformSpec(this._spec), this.updateGlobalScaleTheme(),
510
- this.setRegionTheme(reInit), this.setComponentTheme(reInit), this.setSeriesTheme(reInit);
511
- }
512
- setRegionTheme(reInit = !0) {
513
- this._regions.forEach((r => __awaiter(this, void 0, void 0, (function*() {
514
- yield r.setCurrentTheme(reInit);
515
- }))));
516
- }
517
- setComponentTheme(reInit = !0) {
518
- this._components.forEach((c => __awaiter(this, void 0, void 0, (function*() {
519
- yield c.setCurrentTheme(reInit);
520
- }))));
521
- }
522
- setSeriesTheme(reInit = !0) {
523
- this._series.forEach((s => __awaiter(this, void 0, void 0, (function*() {
524
- yield s.setCurrentTheme(reInit);
525
- }))));
485
+ }, this._spec), this.setLayoutTag(!0, null, !1), this.transformSpec(this._spec),
486
+ this.updateGlobalScaleTheme(), this._regions.forEach((r => r.setCurrentTheme())),
487
+ this._components.forEach((c => c.setCurrentTheme())), this._series.forEach((s => s.setCurrentTheme()));
526
488
  }
527
489
  clear() {
528
490
  this.getAllModels().forEach((i => {