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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (344) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +550 -492
  3. package/build/index.js +550 -492
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/chart/area/area-transformer.js +1 -13
  7. package/cjs/chart/area/area-transformer.js.map +1 -1
  8. package/cjs/chart/bar/3d/bar-3d-transformer.js +4 -6
  9. package/cjs/chart/bar/3d/bar-3d-transformer.js.map +1 -1
  10. package/cjs/chart/bar/bar-transformer.js +1 -11
  11. package/cjs/chart/bar/bar-transformer.js.map +1 -1
  12. package/cjs/chart/base/base-chart-transformer.d.ts +2 -1
  13. package/cjs/chart/base/base-chart-transformer.js +21 -18
  14. package/cjs/chart/base/base-chart-transformer.js.map +1 -1
  15. package/cjs/chart/base/base-chart.d.ts +2 -3
  16. package/cjs/chart/base/base-chart.js +8 -11
  17. package/cjs/chart/base/base-chart.js.map +1 -1
  18. package/cjs/chart/box-plot/box-plot-transformer.js +3 -12
  19. package/cjs/chart/box-plot/box-plot-transformer.js.map +1 -1
  20. package/cjs/chart/cartesian/cartesian-transformer.d.ts +1 -1
  21. package/cjs/chart/cartesian/cartesian-transformer.js +3 -23
  22. package/cjs/chart/cartesian/cartesian-transformer.js.map +1 -1
  23. package/cjs/chart/circle-packing/circle-packing-transformer.js +2 -12
  24. package/cjs/chart/circle-packing/circle-packing-transformer.js.map +1 -1
  25. package/cjs/chart/correlation/correlation-transformer.js +2 -20
  26. package/cjs/chart/correlation/correlation-transformer.js.map +1 -1
  27. package/cjs/chart/funnel/funnel-transformer.js +2 -28
  28. package/cjs/chart/funnel/funnel-transformer.js.map +1 -1
  29. package/cjs/chart/gauge/gauge-transformer.js +4 -9
  30. package/cjs/chart/gauge/gauge-transformer.js.map +1 -1
  31. package/cjs/chart/heatmap/heatmap-transformer.js +1 -5
  32. package/cjs/chart/heatmap/heatmap-transformer.js.map +1 -1
  33. package/cjs/chart/histogram/base/histogram-base-transformer.js +1 -6
  34. package/cjs/chart/histogram/base/histogram-base-transformer.js.map +1 -1
  35. package/cjs/chart/interface/chart.d.ts +2 -2
  36. package/cjs/chart/interface/chart.js.map +1 -1
  37. package/cjs/chart/line/line-transformer.js +3 -12
  38. package/cjs/chart/line/line-transformer.js.map +1 -1
  39. package/cjs/chart/liquid/liquid-transformer.js +2 -13
  40. package/cjs/chart/liquid/liquid-transformer.js.map +1 -1
  41. package/cjs/chart/map/map-transformer.js +2 -20
  42. package/cjs/chart/map/map-transformer.js.map +1 -1
  43. package/cjs/chart/mosaic/mosaic-transformer.js +1 -10
  44. package/cjs/chart/mosaic/mosaic-transformer.js.map +1 -1
  45. package/cjs/chart/pictogram/pictogram-transformer.d.ts +1 -1
  46. package/cjs/chart/pictogram/pictogram-transformer.js +2 -16
  47. package/cjs/chart/pictogram/pictogram-transformer.js.map +1 -1
  48. package/cjs/chart/pie/base/pie-transformer.js +4 -14
  49. package/cjs/chart/pie/base/pie-transformer.js.map +1 -1
  50. package/cjs/chart/polar/polar-transformer.d.ts +1 -1
  51. package/cjs/chart/polar/polar-transformer.js +2 -11
  52. package/cjs/chart/polar/polar-transformer.js.map +1 -1
  53. package/cjs/chart/polar/progress-like/progress-like-transformer.js +3 -11
  54. package/cjs/chart/polar/progress-like/progress-like-transformer.js.map +1 -1
  55. package/cjs/chart/polar/rose-like/rose-like-transformer.js +3 -4
  56. package/cjs/chart/polar/rose-like/rose-like-transformer.js.map +1 -1
  57. package/cjs/chart/progress/circular/circular-progress-transformer.js +3 -7
  58. package/cjs/chart/progress/circular/circular-progress-transformer.js.map +1 -1
  59. package/cjs/chart/progress/linear/linear-progress-transformer.js +4 -8
  60. package/cjs/chart/progress/linear/linear-progress-transformer.js.map +1 -1
  61. package/cjs/chart/radar/radar-transformer.js +7 -15
  62. package/cjs/chart/radar/radar-transformer.js.map +1 -1
  63. package/cjs/chart/range-area/range-area-transformer.js +1 -1
  64. package/cjs/chart/range-area/range-area-transformer.js.map +1 -1
  65. package/cjs/chart/range-column/3d/range-column-3d-transformer.js +2 -4
  66. package/cjs/chart/range-column/3d/range-column-3d-transformer.js.map +1 -1
  67. package/cjs/chart/range-column/range-column-transformer.js +2 -10
  68. package/cjs/chart/range-column/range-column-transformer.js.map +1 -1
  69. package/cjs/chart/rose/rose-transformer.js +5 -8
  70. package/cjs/chart/rose/rose-transformer.js.map +1 -1
  71. package/cjs/chart/sankey/sankey-transformer.js +1 -35
  72. package/cjs/chart/sankey/sankey-transformer.js.map +1 -1
  73. package/cjs/chart/scatter/scatter-transformer.js +1 -7
  74. package/cjs/chart/scatter/scatter-transformer.js.map +1 -1
  75. package/cjs/chart/sunburst/sunburst-transformer.js +3 -21
  76. package/cjs/chart/sunburst/sunburst-transformer.js.map +1 -1
  77. package/cjs/chart/treemap/treemap-transformer.js +1 -21
  78. package/cjs/chart/treemap/treemap-transformer.js.map +1 -1
  79. package/cjs/chart/venn/venn-transformer.js +1 -10
  80. package/cjs/chart/venn/venn-transformer.js.map +1 -1
  81. package/cjs/chart/waterfall/waterfall-transformer.js +3 -6
  82. package/cjs/chart/waterfall/waterfall-transformer.js.map +1 -1
  83. package/cjs/chart/word-cloud/3d/word-cloud-3d-transformer.js +2 -24
  84. package/cjs/chart/word-cloud/3d/word-cloud-3d-transformer.js.map +1 -1
  85. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.d.ts +1 -0
  86. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.js +3 -0
  87. package/cjs/chart/word-cloud/base/word-cloud-base-transformer.js.map +1 -1
  88. package/cjs/chart/word-cloud/index.d.ts +0 -1
  89. package/cjs/chart/word-cloud/index.js +1 -1
  90. package/cjs/chart/word-cloud/index.js.map +1 -1
  91. package/cjs/chart/word-cloud/word-cloud.d.ts +8 -4
  92. package/cjs/chart/word-cloud/word-cloud.js +3 -3
  93. package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
  94. package/cjs/compile/compiler.js +1 -0
  95. package/cjs/compile/compiler.js.map +1 -1
  96. package/cjs/component/axis/base-axis.d.ts +1 -0
  97. package/cjs/component/axis/base-axis.js +4 -0
  98. package/cjs/component/axis/base-axis.js.map +1 -1
  99. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  100. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  101. package/cjs/component/base/base-component.d.ts +3 -2
  102. package/cjs/component/base/base-component.js +1 -0
  103. package/cjs/component/base/base-component.js.map +1 -1
  104. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +0 -1
  105. package/cjs/component/data-zoom/data-zoom/data-zoom.js +3 -4
  106. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  107. package/cjs/component/interface/common.d.ts +1 -0
  108. package/cjs/component/interface/common.js.map +1 -1
  109. package/cjs/component/marker/base-marker.d.ts +3 -1
  110. package/cjs/component/marker/base-marker.js +20 -1
  111. package/cjs/component/marker/base-marker.js.map +1 -1
  112. package/cjs/component/marker/mark-area/base-mark-area.d.ts +0 -2
  113. package/cjs/component/marker/mark-area/base-mark-area.js +2 -18
  114. package/cjs/component/marker/mark-area/base-mark-area.js.map +1 -1
  115. package/cjs/component/marker/mark-line/base-mark-line.d.ts +0 -2
  116. package/cjs/component/marker/mark-line/base-mark-line.js.map +1 -1
  117. package/cjs/component/marker/mark-point/base-mark-point.d.ts +0 -2
  118. package/cjs/component/marker/mark-point/base-mark-point.js +2 -18
  119. package/cjs/component/marker/mark-point/base-mark-point.js.map +1 -1
  120. package/cjs/core/index.d.ts +1 -1
  121. package/cjs/core/index.js +1 -1
  122. package/cjs/core/index.js.map +1 -1
  123. package/cjs/core/vchart.d.ts +5 -1
  124. package/cjs/core/vchart.js +33 -43
  125. package/cjs/core/vchart.js.map +1 -1
  126. package/cjs/event/event-dispatcher.js +5 -2
  127. package/cjs/event/event-dispatcher.js.map +1 -1
  128. package/cjs/mark/utils/common.d.ts +1 -0
  129. package/cjs/mark/utils/common.js +6 -2
  130. package/cjs/mark/utils/common.js.map +1 -1
  131. package/cjs/series/bar/bar-3d-transformer.d.ts +5 -0
  132. package/cjs/series/bar/bar-3d-transformer.js +16 -0
  133. package/cjs/series/bar/bar-3d-transformer.js.map +1 -0
  134. package/cjs/series/bar/bar-3d.d.ts +2 -0
  135. package/cjs/series/bar/bar-3d.js +3 -3
  136. package/cjs/series/bar/bar-3d.js.map +1 -1
  137. package/cjs/series/base/base-series.js +2 -2
  138. package/cjs/series/base/base-series.js.map +1 -1
  139. package/cjs/series/circle-packing/circle-packing.js +2 -14
  140. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  141. package/cjs/series/pie/3d/pie-3d.js +3 -14
  142. package/cjs/series/pie/3d/pie-3d.js.map +1 -1
  143. package/cjs/series/polar/polar.d.ts +2 -1
  144. package/cjs/series/polar/polar.js.map +1 -1
  145. package/cjs/series/radar/radar.js +4 -5
  146. package/cjs/series/radar/radar.js.map +1 -1
  147. package/cjs/series/range-column/range-column.d.ts +1 -0
  148. package/cjs/series/range-column/range-column.js +13 -22
  149. package/cjs/series/range-column/range-column.js.map +1 -1
  150. package/cjs/series/scatter/scatter.js +1 -11
  151. package/cjs/series/scatter/scatter.js.map +1 -1
  152. package/cjs/series/sunburst/sunburst.d.ts +1 -1
  153. package/cjs/series/sunburst/sunburst.js +2 -14
  154. package/cjs/series/sunburst/sunburst.js.map +1 -1
  155. package/cjs/series/treemap/treemap.d.ts +1 -0
  156. package/cjs/series/treemap/treemap.js +11 -24
  157. package/cjs/series/treemap/treemap.js.map +1 -1
  158. package/cjs/series/util/hierarchy.d.ts +8 -0
  159. package/cjs/series/util/hierarchy.js +22 -0
  160. package/cjs/series/util/hierarchy.js.map +1 -0
  161. package/cjs/series/word-cloud/animation.js +1 -1
  162. package/cjs/series/word-cloud/animation.js.map +1 -1
  163. package/cjs/theme/builtin/common/component/mark-area.js +6 -30
  164. package/cjs/theme/builtin/common/component/mark-area.js.map +1 -1
  165. package/cjs/theme/builtin/common/component/mark-line.js +4 -33
  166. package/cjs/theme/builtin/common/component/mark-line.js.map +1 -1
  167. package/cjs/theme/builtin/common/component/mark.d.ts +2 -0
  168. package/cjs/theme/builtin/common/component/mark.js +38 -0
  169. package/cjs/theme/builtin/common/component/mark.js.map +1 -0
  170. package/cjs/typings/spec/common.d.ts +1 -0
  171. package/cjs/typings/spec/common.js.map +1 -1
  172. package/esm/chart/area/area-transformer.js +1 -13
  173. package/esm/chart/area/area-transformer.js.map +1 -1
  174. package/esm/chart/bar/3d/bar-3d-transformer.js +4 -6
  175. package/esm/chart/bar/3d/bar-3d-transformer.js.map +1 -1
  176. package/esm/chart/bar/bar-transformer.js +1 -11
  177. package/esm/chart/bar/bar-transformer.js.map +1 -1
  178. package/esm/chart/base/base-chart-transformer.d.ts +2 -1
  179. package/esm/chart/base/base-chart-transformer.js +20 -17
  180. package/esm/chart/base/base-chart-transformer.js.map +1 -1
  181. package/esm/chart/base/base-chart.d.ts +2 -3
  182. package/esm/chart/base/base-chart.js +8 -11
  183. package/esm/chart/base/base-chart.js.map +1 -1
  184. package/esm/chart/box-plot/box-plot-transformer.js +3 -12
  185. package/esm/chart/box-plot/box-plot-transformer.js.map +1 -1
  186. package/esm/chart/cartesian/cartesian-transformer.d.ts +1 -1
  187. package/esm/chart/cartesian/cartesian-transformer.js +3 -23
  188. package/esm/chart/cartesian/cartesian-transformer.js.map +1 -1
  189. package/esm/chart/circle-packing/circle-packing-transformer.js +1 -13
  190. package/esm/chart/circle-packing/circle-packing-transformer.js.map +1 -1
  191. package/esm/chart/correlation/correlation-transformer.js +1 -21
  192. package/esm/chart/correlation/correlation-transformer.js.map +1 -1
  193. package/esm/chart/funnel/funnel-transformer.js +2 -28
  194. package/esm/chart/funnel/funnel-transformer.js.map +1 -1
  195. package/esm/chart/gauge/gauge-transformer.js +4 -9
  196. package/esm/chart/gauge/gauge-transformer.js.map +1 -1
  197. package/esm/chart/heatmap/heatmap-transformer.js +1 -5
  198. package/esm/chart/heatmap/heatmap-transformer.js.map +1 -1
  199. package/esm/chart/histogram/base/histogram-base-transformer.js +1 -6
  200. package/esm/chart/histogram/base/histogram-base-transformer.js.map +1 -1
  201. package/esm/chart/interface/chart.d.ts +2 -2
  202. package/esm/chart/interface/chart.js.map +1 -1
  203. package/esm/chart/line/line-transformer.js +3 -12
  204. package/esm/chart/line/line-transformer.js.map +1 -1
  205. package/esm/chart/liquid/liquid-transformer.js +1 -14
  206. package/esm/chart/liquid/liquid-transformer.js.map +1 -1
  207. package/esm/chart/map/map-transformer.js +2 -20
  208. package/esm/chart/map/map-transformer.js.map +1 -1
  209. package/esm/chart/mosaic/mosaic-transformer.js +1 -10
  210. package/esm/chart/mosaic/mosaic-transformer.js.map +1 -1
  211. package/esm/chart/pictogram/pictogram-transformer.d.ts +1 -1
  212. package/esm/chart/pictogram/pictogram-transformer.js +2 -16
  213. package/esm/chart/pictogram/pictogram-transformer.js.map +1 -1
  214. package/esm/chart/pie/base/pie-transformer.js +4 -14
  215. package/esm/chart/pie/base/pie-transformer.js.map +1 -1
  216. package/esm/chart/polar/polar-transformer.d.ts +1 -1
  217. package/esm/chart/polar/polar-transformer.js +2 -11
  218. package/esm/chart/polar/polar-transformer.js.map +1 -1
  219. package/esm/chart/polar/progress-like/progress-like-transformer.js +3 -11
  220. package/esm/chart/polar/progress-like/progress-like-transformer.js.map +1 -1
  221. package/esm/chart/polar/rose-like/rose-like-transformer.js +3 -4
  222. package/esm/chart/polar/rose-like/rose-like-transformer.js.map +1 -1
  223. package/esm/chart/progress/circular/circular-progress-transformer.js +3 -7
  224. package/esm/chart/progress/circular/circular-progress-transformer.js.map +1 -1
  225. package/esm/chart/progress/linear/linear-progress-transformer.js +4 -8
  226. package/esm/chart/progress/linear/linear-progress-transformer.js.map +1 -1
  227. package/esm/chart/radar/radar-transformer.js +7 -15
  228. package/esm/chart/radar/radar-transformer.js.map +1 -1
  229. package/esm/chart/range-area/range-area-transformer.js +1 -1
  230. package/esm/chart/range-area/range-area-transformer.js.map +1 -1
  231. package/esm/chart/range-column/3d/range-column-3d-transformer.js +2 -4
  232. package/esm/chart/range-column/3d/range-column-3d-transformer.js.map +1 -1
  233. package/esm/chart/range-column/range-column-transformer.js +2 -10
  234. package/esm/chart/range-column/range-column-transformer.js.map +1 -1
  235. package/esm/chart/rose/rose-transformer.js +5 -8
  236. package/esm/chart/rose/rose-transformer.js.map +1 -1
  237. package/esm/chart/sankey/sankey-transformer.js +1 -35
  238. package/esm/chart/sankey/sankey-transformer.js.map +1 -1
  239. package/esm/chart/scatter/scatter-transformer.js +1 -7
  240. package/esm/chart/scatter/scatter-transformer.js.map +1 -1
  241. package/esm/chart/sunburst/sunburst-transformer.js +2 -22
  242. package/esm/chart/sunburst/sunburst-transformer.js.map +1 -1
  243. package/esm/chart/treemap/treemap-transformer.js +1 -21
  244. package/esm/chart/treemap/treemap-transformer.js.map +1 -1
  245. package/esm/chart/venn/venn-transformer.js +1 -10
  246. package/esm/chart/venn/venn-transformer.js.map +1 -1
  247. package/esm/chart/waterfall/waterfall-transformer.js +3 -6
  248. package/esm/chart/waterfall/waterfall-transformer.js.map +1 -1
  249. package/esm/chart/word-cloud/3d/word-cloud-3d-transformer.js +2 -24
  250. package/esm/chart/word-cloud/3d/word-cloud-3d-transformer.js.map +1 -1
  251. package/esm/chart/word-cloud/base/word-cloud-base-transformer.d.ts +1 -0
  252. package/esm/chart/word-cloud/base/word-cloud-base-transformer.js +3 -0
  253. package/esm/chart/word-cloud/base/word-cloud-base-transformer.js.map +1 -1
  254. package/esm/chart/word-cloud/index.d.ts +0 -1
  255. package/esm/chart/word-cloud/index.js +0 -2
  256. package/esm/chart/word-cloud/index.js.map +1 -1
  257. package/esm/chart/word-cloud/word-cloud.d.ts +8 -4
  258. package/esm/chart/word-cloud/word-cloud.js +3 -3
  259. package/esm/chart/word-cloud/word-cloud.js.map +1 -1
  260. package/esm/compile/compiler.js +1 -0
  261. package/esm/compile/compiler.js.map +1 -1
  262. package/esm/component/axis/base-axis.d.ts +1 -0
  263. package/esm/component/axis/base-axis.js +5 -1
  264. package/esm/component/axis/base-axis.js.map +1 -1
  265. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  266. package/esm/component/axis/cartesian/axis.js.map +1 -1
  267. package/esm/component/base/base-component.d.ts +3 -2
  268. package/esm/component/base/base-component.js +1 -0
  269. package/esm/component/base/base-component.js.map +1 -1
  270. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +0 -1
  271. package/esm/component/data-zoom/data-zoom/data-zoom.js +3 -4
  272. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  273. package/esm/component/interface/common.d.ts +1 -0
  274. package/esm/component/interface/common.js.map +1 -1
  275. package/esm/component/marker/base-marker.d.ts +3 -1
  276. package/esm/component/marker/base-marker.js +25 -0
  277. package/esm/component/marker/base-marker.js.map +1 -1
  278. package/esm/component/marker/mark-area/base-mark-area.d.ts +0 -2
  279. package/esm/component/marker/mark-area/base-mark-area.js +1 -25
  280. package/esm/component/marker/mark-area/base-mark-area.js.map +1 -1
  281. package/esm/component/marker/mark-line/base-mark-line.d.ts +0 -2
  282. package/esm/component/marker/mark-line/base-mark-line.js.map +1 -1
  283. package/esm/component/marker/mark-point/base-mark-point.d.ts +0 -2
  284. package/esm/component/marker/mark-point/base-mark-point.js +1 -25
  285. package/esm/component/marker/mark-point/base-mark-point.js.map +1 -1
  286. package/esm/core/index.d.ts +1 -1
  287. package/esm/core/index.js +1 -1
  288. package/esm/core/index.js.map +1 -1
  289. package/esm/core/vchart.d.ts +5 -1
  290. package/esm/core/vchart.js +33 -43
  291. package/esm/core/vchart.js.map +1 -1
  292. package/esm/event/event-dispatcher.js +5 -2
  293. package/esm/event/event-dispatcher.js.map +1 -1
  294. package/esm/mark/utils/common.d.ts +1 -0
  295. package/esm/mark/utils/common.js +4 -0
  296. package/esm/mark/utils/common.js.map +1 -1
  297. package/esm/series/bar/bar-3d-transformer.d.ts +5 -0
  298. package/esm/series/bar/bar-3d-transformer.js +8 -0
  299. package/esm/series/bar/bar-3d-transformer.js.map +1 -0
  300. package/esm/series/bar/bar-3d.d.ts +2 -0
  301. package/esm/series/bar/bar-3d.js +4 -2
  302. package/esm/series/bar/bar-3d.js.map +1 -1
  303. package/esm/series/base/base-series.js +3 -1
  304. package/esm/series/base/base-series.js.map +1 -1
  305. package/esm/series/circle-packing/circle-packing.js +4 -14
  306. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  307. package/esm/series/pie/3d/pie-3d.js +2 -17
  308. package/esm/series/pie/3d/pie-3d.js.map +1 -1
  309. package/esm/series/polar/polar.d.ts +2 -1
  310. package/esm/series/polar/polar.js.map +1 -1
  311. package/esm/series/radar/radar.js +2 -5
  312. package/esm/series/radar/radar.js.map +1 -1
  313. package/esm/series/range-column/range-column.d.ts +1 -0
  314. package/esm/series/range-column/range-column.js +13 -22
  315. package/esm/series/range-column/range-column.js.map +1 -1
  316. package/esm/series/scatter/scatter.js +1 -11
  317. package/esm/series/scatter/scatter.js.map +1 -1
  318. package/esm/series/sunburst/sunburst.d.ts +1 -1
  319. package/esm/series/sunburst/sunburst.js +4 -14
  320. package/esm/series/sunburst/sunburst.js.map +1 -1
  321. package/esm/series/treemap/treemap.d.ts +1 -0
  322. package/esm/series/treemap/treemap.js +13 -24
  323. package/esm/series/treemap/treemap.js.map +1 -1
  324. package/esm/series/util/hierarchy.d.ts +8 -0
  325. package/esm/series/util/hierarchy.js +16 -0
  326. package/esm/series/util/hierarchy.js.map +1 -0
  327. package/esm/series/word-cloud/animation.js +1 -1
  328. package/esm/series/word-cloud/animation.js.map +1 -1
  329. package/esm/theme/builtin/common/component/mark-area.js +3 -29
  330. package/esm/theme/builtin/common/component/mark-area.js.map +1 -1
  331. package/esm/theme/builtin/common/component/mark-line.js +6 -31
  332. package/esm/theme/builtin/common/component/mark-line.js.map +1 -1
  333. package/esm/theme/builtin/common/component/mark.d.ts +2 -0
  334. package/esm/theme/builtin/common/component/mark.js +30 -0
  335. package/esm/theme/builtin/common/component/mark.js.map +1 -0
  336. package/esm/typings/spec/common.d.ts +1 -0
  337. package/esm/typings/spec/common.js.map +1 -1
  338. package/package.json +4 -4
  339. package/cjs/chart/word-cloud/word-cloud-transformer.d.ts +0 -5
  340. package/cjs/chart/word-cloud/word-cloud-transformer.js +0 -39
  341. package/cjs/chart/word-cloud/word-cloud-transformer.js.map +0 -1
  342. package/esm/chart/word-cloud/word-cloud-transformer.d.ts +0 -5
  343. package/esm/chart/word-cloud/word-cloud-transformer.js +0 -31
  344. package/esm/chart/word-cloud/word-cloud-transformer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/event/event-dispatcher.ts"],"names":[],"mappings":"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","file":"event-dispatcher.js","sourcesContent":["import { Bubble } from './bubble';\nimport { isValid, debounce, throttle, get, isFunction } from '@visactor/vutils';\nimport { BASE_EVENTS, Event_Bubble_Level, Event_Source_Type, VGRAMMAR_HOOK_EVENT } from '../constant/event';\nimport type {\n EventType,\n EventQuery,\n EventHandler,\n EventParamsDefinition,\n IEventDispatcher,\n EventBubbleLevel,\n BaseEventParams,\n EventParams,\n EventFilter,\n EventSourceType,\n InteractionEventParam,\n EventCallback\n} from './interface';\nimport type { VChart } from '../core/vchart';\nimport type { CompilerListenerParameters } from '../compile/interface';\nimport type { Compiler } from '../compile/compiler';\nimport type { StringOrNumber } from '../typings';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport { Factory as VGrammarFactory } from '@visactor/vgrammar-core';\n\nconst componentTypeMap: Record<string, string> = {\n cartesianAxis: 'axis',\n 'cartesianAxis-band': 'axis',\n 'cartesianAxis-linear': 'axis',\n 'cartesianAxis-time': 'axis',\n polarAxis: 'axis',\n 'polarAxis-band': 'axis',\n 'polarAxis-linear': 'axis',\n discreteLegend: 'legend',\n continuousLegend: 'legend',\n colorLegend: 'legend',\n sizeLegend: 'legend'\n // 组件的 type 如果没有细化的分类,不需要在这里进行映射\n // label: 'label',\n // markLine: 'markLine',\n // markArea: 'markArea',\n // markPoint: 'markPoint',\n // polarMarkLine: 'polarMarkLine',\n // polarMarkArea: 'polarMarkArea',\n // polarMarkPoint: 'polarMarkPoint',\n // geoMarkPoint: 'geoMarkPoint'\n};\n\nexport class EventDispatcher implements IEventDispatcher {\n globalInstance: VChart;\n\n // view 事件与 window 事件视作为不同类型的事件信息,进行独立的冒泡处理\n private _viewBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n private _windowBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n private _canvasBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n\n private _viewListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n private _windowListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n private _canvasListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n\n private _compiler: Compiler;\n\n constructor(vchart: VChart, compiler: Compiler) {\n this.globalInstance = vchart;\n this._compiler = compiler;\n }\n\n register<Evt extends EventType>(eType: Evt, handler: EventHandler<EventParamsDefinition[Evt]>): this {\n // 解析 query 配置并生成最终 handler 内容\n this._parseQuery(handler);\n // view/window 事件做独立的处理\n const bubbles = this.getEventBubble(handler.filter?.source || Event_Source_Type.chart);\n const listeners = this.getEventListeners(handler.filter?.source || Event_Source_Type.chart);\n\n if (!bubbles.get(eType)) {\n bubbles.set(eType, new Bubble());\n }\n\n // 挂载事件监听\n const bubble = bubbles.get(eType) as Bubble;\n bubble.addHandler(handler, handler.filter?.level as EventBubbleLevel);\n if (this._isValidEvent(eType) && !listeners.has(eType)) {\n const callback = this._onDelegate.bind(this);\n this._compiler.addEventListener(handler.filter?.source as EventSourceType, eType, callback);\n listeners.set(eType, callback);\n } else if (this._isInteractionEvent(eType) && !listeners.has(eType)) {\n const callback = this._onDelegateInteractionEvent.bind(this);\n this._compiler.addEventListener(handler.filter?.source as EventSourceType, eType, callback);\n listeners.set(eType, callback);\n }\n return this;\n }\n\n unregister<Evt extends EventType>(eType: Evt, handler?: EventHandler<EventParamsDefinition[Evt]>): this {\n let clean: boolean = false;\n // view/window 事件做独立的处理\n const bubbles = this.getEventBubble(handler?.filter?.source || Event_Source_Type.chart);\n const listeners = this.getEventListeners(handler?.filter?.source || Event_Source_Type.chart);\n\n if (!handler) {\n const bubble = bubbles.get(eType);\n bubble?.release();\n bubbles.delete(eType);\n clean = true;\n } else {\n const bubble = bubbles.get(eType);\n bubble?.removeHandler(handler);\n if (bubble?.getCount() === 0) {\n bubble?.release();\n bubbles.delete(eType);\n clean = true;\n }\n\n if ((handler?.wrappedCallback as any)?.cancel) {\n // 取消debounce/throttle事件,释放闭包内部的上下文对象\n (handler.wrappedCallback as any).cancel();\n }\n }\n // 某个事件下所有的监听取消之后删除语法层事件的代理\n if (clean && this._isValidEvent(eType)) {\n const callback = listeners.get(eType) as (params: CompilerListenerParameters) => void;\n this._compiler.removeEventListener(handler?.filter?.source || Event_Source_Type.chart, eType, callback);\n listeners.delete(eType);\n }\n return this;\n }\n\n dispatch<Evt extends EventType>(eType: Evt, params: EventParamsDefinition[Evt], level?: EventBubbleLevel): this {\n // 默认事件类别为 view\n const bubble = this.getEventBubble((params as BaseEventParams).source || Event_Source_Type.chart).get(\n eType\n ) as Bubble;\n // 没有任何监听事件时,bubble 不存在\n if (!bubble) {\n return this;\n }\n\n // 事件冒泡逻辑:Mark -> Model -> Chart -> VChart\n let stopBubble: boolean = false;\n\n if (level) {\n // 如果指定了 level,则直接处理,不进行冒泡\n const handlers = bubble.getHandlers(level);\n stopBubble = this._invoke(handlers, eType, params);\n } else {\n const levels = [\n Event_Bubble_Level.mark,\n Event_Bubble_Level.model,\n Event_Bubble_Level.chart,\n Event_Bubble_Level.vchart\n ];\n let i = 0;\n\n // Mark 级别的事件只包含对语法层代理的基础事件\n while (!stopBubble && i < levels.length) {\n stopBubble = this._invoke(bubble.getHandlers(levels[i]), eType, params);\n i++;\n }\n }\n\n return this;\n }\n\n prevent<Evt extends EventType>(eType: Evt, except?: EventCallback<EventParams>): this {\n const eventTypes = ['canvas', 'chart', 'window'] as EventSourceType[];\n eventTypes.forEach(type => {\n const bubble = this.getEventBubble(type).get(eType);\n if (bubble) {\n bubble.getAllHandlers().forEach(handler => {\n if (!except || handler.callback !== except) {\n bubble.preventHandler(handler);\n }\n });\n }\n });\n return this;\n }\n\n allow<Evt extends EventType>(eType: Evt): this {\n const eventTypes = ['canvas', 'chart', 'window'] as EventSourceType[];\n eventTypes.forEach(type => {\n const bubble = this.getEventBubble(type).get(eType);\n if (bubble) {\n bubble.getAllHandlers().forEach(handler => bubble.allowHandler(handler));\n }\n });\n return this;\n }\n\n clear(): void {\n const types = [Event_Source_Type.chart, Event_Source_Type.window, Event_Source_Type.canvas];\n\n types.forEach(type => {\n const listeners = this.getEventListeners(type);\n for (const entry of listeners.entries()) {\n this._compiler.removeEventListener(type, entry[0], entry[1]);\n }\n listeners.clear();\n });\n\n [this._viewBubbles, this._windowBubbles, this._canvasBubbles].forEach(bubbles => {\n for (const bubble of bubbles.values()) {\n bubble.release();\n }\n bubbles.clear();\n });\n }\n\n release(): void {\n this.clear();\n this.globalInstance = null;\n this._compiler = null;\n }\n\n /**\n * 基于转换后的事件筛选配置过滤需要调用的 handler\n */\n private _filter<Evt extends EventType>(filter: EventFilter, evt: Evt, params: EventParamsDefinition[Evt]): boolean {\n if (isFunction(filter.filter) && !filter.filter(params)) {\n return false;\n }\n\n // 事件 level 不需要筛选,在冒泡流程中已经处理了 level 的逻辑\n if (filter.nodeName && get(params, 'node.name') !== filter.nodeName) {\n return false;\n }\n\n if (filter.markName && (params as BaseEventParams)?.mark?.name !== filter.markName) {\n // 对于 markName 的筛选需要包含所有父级 mark 的 name\n return false;\n }\n\n let modelType = params.model?.type;\n if (componentTypeMap[modelType]) {\n modelType = componentTypeMap[modelType];\n }\n if (filter.type && modelType !== filter.type) {\n return false;\n }\n\n // 如果配置了 level 为 'mark' 并且没有配置 type,则只在事件参数中包含了 mark 时才触发\n if (filter.level === 'mark' && !filter.type && !(params as BaseEventParams)?.mark) {\n return false;\n }\n\n // 如果配置了 level 为 'model' 并且没有配置 type,则只在事件参数中包含了 model 时才触发\n if (filter.level === 'model' && !filter.type && !(params as BaseEventParams)?.model) {\n return false;\n }\n\n if (isValid(filter.userId) && params.model?.userId !== filter.userId) {\n return false;\n }\n\n return true;\n }\n\n private _prepareParams<Evt extends EventType>(\n filter: EventFilter,\n params: EventParamsDefinition[Evt]\n ): EventParamsDefinition[Evt] {\n // 如果针对于 mark 做了筛选,则事件参数转为筛选器制定的父级 mark\n if (filter.markName && params.mark && (params as BaseEventParams).itemMap) {\n const markId = params.mark.getProductId();\n const item = (params as BaseEventParams).itemMap.get(markId);\n const datum = item?.getDatum();\n return { ...params, item, datum };\n }\n return { ...params };\n }\n\n /**\n * 代理语法层事件的监听回调\n */\n private _onDelegate = (listenerParams: CompilerListenerParameters) => {\n const chart = this.globalInstance.getChart();\n const model = (isValid(listenerParams.modelId) && chart?.getModelById(listenerParams.modelId)) || undefined;\n const mark = (isValid(listenerParams.markId) && chart?.getMarkById(listenerParams.markId)) || null;\n\n // FIXME: 这里操作的应当是场景树结构,与 vgrammar 结构无关\n // 遍历取到所有父级的 mark 以支持子元素响应父元素事件\n const itemMap = new Map<string, any>();\n let targetMark: any = listenerParams.item?.mark;\n if (targetMark && isValid(targetMark.id())) {\n itemMap.set(targetMark.id(), listenerParams.item);\n }\n while (targetMark?.elements) {\n const id = targetMark.id();\n // 由于父级的 markName 可能重复,因此只取最近的父级 mark\n if (isValid(id) && !itemMap.has(id)) {\n itemMap.set(id, targetMark.elements[0]);\n }\n targetMark = targetMark.group;\n }\n\n const params: BaseEventParams = {\n event: listenerParams.event,\n item: listenerParams.item,\n datum: listenerParams.datum,\n source: listenerParams.source,\n itemMap,\n chart,\n model,\n mark: mark ?? undefined,\n node: get(listenerParams.event, 'target')\n };\n this.dispatch(listenerParams.type, params);\n };\n\n /**\n * 代理语法层事件的监听回调\n */\n private _onDelegateInteractionEvent = (listenerParams: CompilerListenerParameters) => {\n const chart = this.globalInstance.getChart();\n const event = listenerParams.event;\n let items: IElement[] = null;\n\n if ((event as any).elements) {\n items = (event as any).elements;\n }\n\n const params: InteractionEventParam = {\n event: listenerParams.event,\n chart,\n items,\n datums:\n items &&\n items.map(item => {\n return item.getDatum();\n })\n };\n this.dispatch(listenerParams.type, params);\n };\n\n /**\n * 调用相应事件监听下的 handlers\n */\n private _invoke<Evt extends EventType>(\n handlers: EventHandler<EventParams>[],\n type: EventType,\n params: EventParamsDefinition[Evt]\n ): boolean {\n const result = handlers.map(handler => {\n const filter = handler.filter as EventFilter;\n if (!handler.prevented && (!handler.query || this._filter(filter, type, params))) {\n const callback = handler.wrappedCallback || handler.callback;\n const stopBubble = callback.call(null, this._prepareParams(filter, params));\n const doStopBubble = stopBubble ?? handler.query?.consume;\n if (doStopBubble) {\n (params as BaseEventParams).event?.stopPropagation();\n (params as BaseEventParams).event?.preventDefault();\n }\n return !!doStopBubble;\n }\n return undefined;\n });\n // 如果某个事件回调阻止了冒泡,则阻止更高级别事件的调用过程\n return result.some(r => r === true);\n }\n\n /**\n * 依据事件 query 得到事件冒泡层级\n */\n private _getQueryLevel(query: EventQuery | null): EventBubbleLevel {\n // 事件默认监听在 vchart 层\n if (!query) {\n return Event_Bubble_Level.vchart;\n }\n if (query.level) {\n return query.level;\n }\n if (isValid(query.id)) {\n return Event_Bubble_Level.model;\n }\n\n return Event_Bubble_Level.vchart;\n }\n\n /**\n * 将用户 query 配置转换为最终事件筛选参数\n */\n private _parseQuery(handler: EventHandler<EventParams>): EventHandler<EventParams> {\n const query = handler.query;\n // 处理 query 带来的函数封装\n if (query?.throttle) {\n handler.wrappedCallback = throttle(handler.callback, query.throttle);\n } else if (query?.debounce) {\n handler.wrappedCallback = debounce(handler.callback, query.debounce);\n }\n let level = this._getQueryLevel(query);\n let type: string | null = null;\n let source: EventSourceType = Event_Source_Type.chart;\n let nodeName: string | null = null;\n let markName: string | null = null;\n let userId: StringOrNumber | null = null;\n\n if (query?.nodeName) {\n nodeName = query.nodeName;\n }\n\n if (query?.markName) {\n markName = query.markName;\n }\n\n if (query?.type && (level === Event_Bubble_Level.model || level === Event_Bubble_Level.mark)) {\n type = query.type;\n }\n if (query?.source) {\n source = query.source;\n }\n\n if (isValid(query?.id)) {\n userId = query?.id;\n level = Event_Bubble_Level.model; // 如果用户配置了 id,那么默认 level 为 model\n }\n handler.filter = {\n level,\n markName,\n type,\n source,\n nodeName,\n userId,\n filter: query?.filter ?? null\n };\n return handler;\n }\n\n private getEventBubble(source: EventSourceType) {\n switch (source) {\n case Event_Source_Type.chart:\n return this._viewBubbles;\n case Event_Source_Type.window:\n return this._windowBubbles;\n case Event_Source_Type.canvas:\n return this._canvasBubbles;\n default:\n return this._viewBubbles;\n }\n }\n\n private getEventListeners(source: EventSourceType) {\n switch (source) {\n case Event_Source_Type.chart:\n return this._viewListeners;\n case Event_Source_Type.window:\n return this._windowListeners;\n case Event_Source_Type.canvas:\n return this._canvasListeners;\n default:\n return this._viewListeners;\n }\n }\n\n private _isValidEvent(eType: string) {\n return BASE_EVENTS.includes(eType) || (Object.values(VGRAMMAR_HOOK_EVENT) as string[]).includes(eType);\n }\n\n private _isInteractionEvent(eType: string) {\n let interactionType: string;\n\n return (\n eType &&\n ((interactionType = eType.split(':')[0]), interactionType) &&\n VGrammarFactory.hasInteraction(interactionType)\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/event/event-dispatcher.ts"],"names":[],"mappings":"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","file":"event-dispatcher.js","sourcesContent":["import { Bubble } from './bubble';\nimport { isValid, debounce, throttle, get, isFunction } from '@visactor/vutils';\nimport { BASE_EVENTS, Event_Bubble_Level, Event_Source_Type, VGRAMMAR_HOOK_EVENT } from '../constant/event';\nimport type {\n EventType,\n EventQuery,\n EventHandler,\n EventParamsDefinition,\n IEventDispatcher,\n EventBubbleLevel,\n BaseEventParams,\n EventParams,\n EventFilter,\n EventSourceType,\n InteractionEventParam,\n EventCallback\n} from './interface';\nimport type { VChart } from '../core/vchart';\nimport type { CompilerListenerParameters } from '../compile/interface';\nimport type { Compiler } from '../compile/compiler';\nimport type { StringOrNumber } from '../typings';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport type { IComponent } from '../component/interface';\nimport { Factory as VGrammarFactory } from '@visactor/vgrammar-core';\n\nconst componentTypeMap: Record<string, string> = {\n cartesianAxis: 'axis',\n 'cartesianAxis-band': 'axis',\n 'cartesianAxis-linear': 'axis',\n 'cartesianAxis-time': 'axis',\n polarAxis: 'axis',\n 'polarAxis-band': 'axis',\n 'polarAxis-linear': 'axis',\n discreteLegend: 'legend',\n continuousLegend: 'legend',\n colorLegend: 'legend',\n sizeLegend: 'legend'\n // 组件的 type 如果没有细化的分类,不需要在这里进行映射\n // label: 'label',\n // markLine: 'markLine',\n // markArea: 'markArea',\n // markPoint: 'markPoint',\n // polarMarkLine: 'polarMarkLine',\n // polarMarkArea: 'polarMarkArea',\n // polarMarkPoint: 'polarMarkPoint',\n // geoMarkPoint: 'geoMarkPoint'\n};\n\nexport class EventDispatcher implements IEventDispatcher {\n globalInstance: VChart;\n\n // view 事件与 window 事件视作为不同类型的事件信息,进行独立的冒泡处理\n private _viewBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n private _windowBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n private _canvasBubbles: Map<EventType, Bubble> = new Map<EventType, Bubble>();\n\n private _viewListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n private _windowListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n private _canvasListeners: Map<string, (params: CompilerListenerParameters) => void> = new Map<\n string,\n (params: CompilerListenerParameters) => void\n >();\n\n private _compiler: Compiler;\n\n constructor(vchart: VChart, compiler: Compiler) {\n this.globalInstance = vchart;\n this._compiler = compiler;\n }\n\n register<Evt extends EventType>(eType: Evt, handler: EventHandler<EventParamsDefinition[Evt]>): this {\n // 解析 query 配置并生成最终 handler 内容\n this._parseQuery(handler);\n // view/window 事件做独立的处理\n const bubbles = this.getEventBubble(handler.filter?.source || Event_Source_Type.chart);\n const listeners = this.getEventListeners(handler.filter?.source || Event_Source_Type.chart);\n\n if (!bubbles.get(eType)) {\n bubbles.set(eType, new Bubble());\n }\n\n // 挂载事件监听\n const bubble = bubbles.get(eType) as Bubble;\n bubble.addHandler(handler, handler.filter?.level as EventBubbleLevel);\n if (this._isValidEvent(eType) && !listeners.has(eType)) {\n const callback = this._onDelegate.bind(this);\n this._compiler.addEventListener(handler.filter?.source as EventSourceType, eType, callback);\n listeners.set(eType, callback);\n } else if (this._isInteractionEvent(eType) && !listeners.has(eType)) {\n const callback = this._onDelegateInteractionEvent.bind(this);\n this._compiler.addEventListener(handler.filter?.source as EventSourceType, eType, callback);\n listeners.set(eType, callback);\n }\n return this;\n }\n\n unregister<Evt extends EventType>(eType: Evt, handler?: EventHandler<EventParamsDefinition[Evt]>): this {\n let clean: boolean = false;\n // view/window 事件做独立的处理\n const bubbles = this.getEventBubble(handler?.filter?.source || Event_Source_Type.chart);\n const listeners = this.getEventListeners(handler?.filter?.source || Event_Source_Type.chart);\n\n if (!handler) {\n const bubble = bubbles.get(eType);\n bubble?.release();\n bubbles.delete(eType);\n clean = true;\n } else {\n const bubble = bubbles.get(eType);\n bubble?.removeHandler(handler);\n if (bubble?.getCount() === 0) {\n bubble?.release();\n bubbles.delete(eType);\n clean = true;\n }\n\n if ((handler?.wrappedCallback as any)?.cancel) {\n // 取消debounce/throttle事件,释放闭包内部的上下文对象\n (handler.wrappedCallback as any).cancel();\n }\n }\n // 某个事件下所有的监听取消之后删除语法层事件的代理\n if (clean && this._isValidEvent(eType)) {\n const callback = listeners.get(eType) as (params: CompilerListenerParameters) => void;\n this._compiler.removeEventListener(handler?.filter?.source || Event_Source_Type.chart, eType, callback);\n listeners.delete(eType);\n }\n return this;\n }\n\n dispatch<Evt extends EventType>(eType: Evt, params: EventParamsDefinition[Evt], level?: EventBubbleLevel): this {\n // 默认事件类别为 view\n const bubble = this.getEventBubble((params as BaseEventParams).source || Event_Source_Type.chart).get(\n eType\n ) as Bubble;\n // 没有任何监听事件时,bubble 不存在\n if (!bubble) {\n return this;\n }\n\n // 事件冒泡逻辑:Mark -> Model -> Chart -> VChart\n let stopBubble: boolean = false;\n\n if (level) {\n // 如果指定了 level,则直接处理,不进行冒泡\n const handlers = bubble.getHandlers(level);\n stopBubble = this._invoke(handlers, eType, params);\n } else {\n const levels = [\n Event_Bubble_Level.mark,\n Event_Bubble_Level.model,\n Event_Bubble_Level.chart,\n Event_Bubble_Level.vchart\n ];\n let i = 0;\n\n // Mark 级别的事件只包含对语法层代理的基础事件\n while (!stopBubble && i < levels.length) {\n stopBubble = this._invoke(bubble.getHandlers(levels[i]), eType, params);\n i++;\n }\n }\n\n return this;\n }\n\n prevent<Evt extends EventType>(eType: Evt, except?: EventCallback<EventParams>): this {\n const eventTypes = ['canvas', 'chart', 'window'] as EventSourceType[];\n eventTypes.forEach(type => {\n const bubble = this.getEventBubble(type).get(eType);\n if (bubble) {\n bubble.getAllHandlers().forEach(handler => {\n if (!except || handler.callback !== except) {\n bubble.preventHandler(handler);\n }\n });\n }\n });\n return this;\n }\n\n allow<Evt extends EventType>(eType: Evt): this {\n const eventTypes = ['canvas', 'chart', 'window'] as EventSourceType[];\n eventTypes.forEach(type => {\n const bubble = this.getEventBubble(type).get(eType);\n if (bubble) {\n bubble.getAllHandlers().forEach(handler => bubble.allowHandler(handler));\n }\n });\n return this;\n }\n\n clear(): void {\n const types = [Event_Source_Type.chart, Event_Source_Type.window, Event_Source_Type.canvas];\n\n types.forEach(type => {\n const listeners = this.getEventListeners(type);\n for (const entry of listeners.entries()) {\n this._compiler.removeEventListener(type, entry[0], entry[1]);\n }\n listeners.clear();\n });\n\n [this._viewBubbles, this._windowBubbles, this._canvasBubbles].forEach(bubbles => {\n for (const bubble of bubbles.values()) {\n bubble.release();\n }\n bubbles.clear();\n });\n }\n\n release(): void {\n this.clear();\n this.globalInstance = null;\n this._compiler = null;\n }\n\n /**\n * 基于转换后的事件筛选配置过滤需要调用的 handler\n */\n private _filter<Evt extends EventType>(filter: EventFilter, evt: Evt, params: EventParamsDefinition[Evt]): boolean {\n if (isFunction(filter.filter) && !filter.filter(params)) {\n return false;\n }\n\n // 事件 level 不需要筛选,在冒泡流程中已经处理了 level 的逻辑\n if (filter.nodeName && get(params, 'node.name') !== filter.nodeName) {\n return false;\n }\n\n if (filter.markName && (params as BaseEventParams)?.mark?.name !== filter.markName) {\n // 对于 markName 的筛选需要包含所有父级 mark 的 name\n return false;\n }\n\n let modelType = params.model?.type;\n if (componentTypeMap[modelType]) {\n modelType = componentTypeMap[modelType];\n }\n if (filter.type && modelType !== filter.type) {\n return false;\n }\n\n // 如果配置了 level 为 'mark' 并且没有配置 type,则只在事件参数中包含了 mark 时才触发\n if (filter.level === 'mark' && !filter.type && !(params as BaseEventParams)?.mark) {\n return false;\n }\n\n // 如果配置了 level 为 'model' 并且没有配置 type,则只在事件参数中包含了 model 时才触发\n if (filter.level === 'model' && !filter.type && !(params as BaseEventParams)?.model) {\n return false;\n }\n\n if (isValid(filter.userId) && params.model?.userId !== filter.userId) {\n return false;\n }\n\n return true;\n }\n\n private _prepareParams<Evt extends EventType>(\n filter: EventFilter,\n params: EventParamsDefinition[Evt]\n ): EventParamsDefinition[Evt] {\n // 如果针对于 mark 做了筛选,则事件参数转为筛选器制定的父级 mark\n if (filter.markName && params.mark && (params as BaseEventParams).itemMap) {\n const markId = params.mark.getProductId();\n const item = (params as BaseEventParams).itemMap.get(markId);\n const datum = item?.getDatum();\n return { ...params, item, datum };\n }\n return { ...params };\n }\n\n /**\n * 代理语法层事件的监听回调\n */\n private _onDelegate = (listenerParams: CompilerListenerParameters) => {\n const chart = this.globalInstance.getChart();\n const model = (isValid(listenerParams.modelId) && chart?.getModelById(listenerParams.modelId)) || undefined;\n const mark = (isValid(listenerParams.markId) && chart?.getMarkById(listenerParams.markId)) || null;\n\n // FIXME: 这里操作的应当是场景树结构,与 vgrammar 结构无关\n // 遍历取到所有父级的 mark 以支持子元素响应父元素事件\n const itemMap = new Map<string, any>();\n let targetMark: any = listenerParams.item?.mark;\n if (targetMark && isValid(targetMark.id())) {\n itemMap.set(targetMark.id(), listenerParams.item);\n }\n while (targetMark?.elements) {\n const id = targetMark.id();\n // 由于父级的 markName 可能重复,因此只取最近的父级 mark\n if (isValid(id) && !itemMap.has(id)) {\n itemMap.set(id, targetMark.elements[0]);\n }\n targetMark = targetMark.group;\n }\n\n const node = get(listenerParams.event, 'target');\n\n let datum = listenerParams.datum;\n if (model && model.modelType === 'component') {\n datum = (model as IComponent).getDatum(node) ?? datum;\n }\n\n const params: BaseEventParams = {\n event: listenerParams.event,\n item: listenerParams.item,\n source: listenerParams.source,\n datum,\n itemMap,\n chart,\n model,\n mark: mark ?? undefined,\n node: get(listenerParams.event, 'target')\n };\n this.dispatch(listenerParams.type, params);\n };\n\n /**\n * 代理语法层事件的监听回调\n */\n private _onDelegateInteractionEvent = (listenerParams: CompilerListenerParameters) => {\n const chart = this.globalInstance.getChart();\n const event = listenerParams.event;\n let items: IElement[] = null;\n\n if ((event as any).elements) {\n items = (event as any).elements;\n }\n const params: InteractionEventParam = {\n event: listenerParams.event,\n chart,\n items,\n datums:\n items &&\n items.map(item => {\n return item.getDatum();\n })\n };\n this.dispatch(listenerParams.type, params);\n };\n\n /**\n * 调用相应事件监听下的 handlers\n */\n private _invoke<Evt extends EventType>(\n handlers: EventHandler<EventParams>[],\n type: EventType,\n params: EventParamsDefinition[Evt]\n ): boolean {\n const result = handlers.map(handler => {\n const filter = handler.filter as EventFilter;\n if (!handler.prevented && (!handler.query || this._filter(filter, type, params))) {\n const callback = handler.wrappedCallback || handler.callback;\n const stopBubble = callback.call(null, this._prepareParams(filter, params));\n const doStopBubble = stopBubble ?? handler.query?.consume;\n if (doStopBubble) {\n (params as BaseEventParams).event?.stopPropagation();\n (params as BaseEventParams).event?.preventDefault();\n }\n return !!doStopBubble;\n }\n return undefined;\n });\n // 如果某个事件回调阻止了冒泡,则阻止更高级别事件的调用过程\n return result.some(r => r === true);\n }\n\n /**\n * 依据事件 query 得到事件冒泡层级\n */\n private _getQueryLevel(query: EventQuery | null): EventBubbleLevel {\n // 事件默认监听在 vchart 层\n if (!query) {\n return Event_Bubble_Level.vchart;\n }\n if (query.level) {\n return query.level;\n }\n if (isValid(query.id)) {\n return Event_Bubble_Level.model;\n }\n\n return Event_Bubble_Level.vchart;\n }\n\n /**\n * 将用户 query 配置转换为最终事件筛选参数\n */\n private _parseQuery(handler: EventHandler<EventParams>): EventHandler<EventParams> {\n const query = handler.query;\n // 处理 query 带来的函数封装\n if (query?.throttle) {\n handler.wrappedCallback = throttle(handler.callback, query.throttle);\n } else if (query?.debounce) {\n handler.wrappedCallback = debounce(handler.callback, query.debounce);\n }\n let level = this._getQueryLevel(query);\n let type: string | null = null;\n let source: EventSourceType = Event_Source_Type.chart;\n let nodeName: string | null = null;\n let markName: string | null = null;\n let userId: StringOrNumber | null = null;\n\n if (query?.nodeName) {\n nodeName = query.nodeName;\n }\n\n if (query?.markName) {\n markName = query.markName;\n }\n\n if (query?.type && (level === Event_Bubble_Level.model || level === Event_Bubble_Level.mark)) {\n type = query.type;\n }\n if (query?.source) {\n source = query.source;\n }\n\n if (isValid(query?.id)) {\n userId = query?.id;\n level = Event_Bubble_Level.model; // 如果用户配置了 id,那么默认 level 为 model\n }\n handler.filter = {\n level,\n markName,\n type,\n source,\n nodeName,\n userId,\n filter: query?.filter ?? null\n };\n return handler;\n }\n\n private getEventBubble(source: EventSourceType) {\n switch (source) {\n case Event_Source_Type.chart:\n return this._viewBubbles;\n case Event_Source_Type.window:\n return this._windowBubbles;\n case Event_Source_Type.canvas:\n return this._canvasBubbles;\n default:\n return this._viewBubbles;\n }\n }\n\n private getEventListeners(source: EventSourceType) {\n switch (source) {\n case Event_Source_Type.chart:\n return this._viewListeners;\n case Event_Source_Type.window:\n return this._windowListeners;\n case Event_Source_Type.canvas:\n return this._canvasListeners;\n default:\n return this._viewListeners;\n }\n }\n\n private _isValidEvent(eType: string) {\n return BASE_EVENTS.includes(eType) || (Object.values(VGRAMMAR_HOOK_EVENT) as string[]).includes(eType);\n }\n\n private _isInteractionEvent(eType: string) {\n let interactionType: string;\n\n return (\n eType &&\n ((interactionType = eType.split(':')[0]), interactionType) &&\n VGrammarFactory.hasInteraction(interactionType)\n );\n }\n}\n"]}
@@ -2,3 +2,4 @@ import { MarkTypeEnum } from '../interface/type';
2
2
  export declare const MultiDatumMark: string[];
3
3
  export declare function isMultiDatumMark(type: MarkTypeEnum): boolean;
4
4
  export declare function curveTypeTransform(type: string, direction: string): string;
5
+ export declare function is3DMark(type: MarkTypeEnum): boolean;
@@ -7,4 +7,8 @@ export function isMultiDatumMark(type) {
7
7
  export function curveTypeTransform(type, direction) {
8
8
  return "monotone" === type ? "horizontal" === direction ? "monotoneY" : "monotoneX" : type;
9
9
  }
10
+
11
+ export function is3DMark(type) {
12
+ return [ "arc3d", "rect3d", "pyramid3d" ].includes(type);
13
+ }
10
14
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/utils/common.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAG,iBAAuC,OAAO,CAAC,CAAC;AAE9E,MAAM,UAAU,gBAAgB,CAAC,IAAkB;IACjD,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,SAAiB;IAChE,IAAI,IAAI,KAAK,UAAU,EAAE;QACvB,OAAO,SAAS,iBAAyB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;KACvE;IACD,OAAO,IAAI,CAAC;AACd,CAAC","file":"common.js","sourcesContent":["import { MarkTypeEnum } from '../interface/type';\nimport { Direction } from '../../typings';\n\nexport const MultiDatumMark = [MarkTypeEnum.line, MarkTypeEnum.area, 'trail'];\n\nexport function isMultiDatumMark(type: MarkTypeEnum) {\n return MultiDatumMark.includes(type);\n}\n\nexport function curveTypeTransform(type: string, direction: string) {\n if (type === 'monotone') {\n return direction === Direction.horizontal ? 'monotoneY' : 'monotoneX';\n }\n return type;\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/utils/common.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,cAAc,GAAG,iBAAuC,OAAO,CAAC,CAAC;AAE9E,MAAM,UAAU,gBAAgB,CAAC,IAAkB;IACjD,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,SAAiB;IAChE,IAAI,IAAI,KAAK,UAAU,EAAE;QACvB,OAAO,SAAS,iBAAyB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;KACvE;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAkB;IACzC,OAAO,gCAAiE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1F,CAAC","file":"common.js","sourcesContent":["import { MarkTypeEnum } from '../interface/type';\nimport { Direction } from '../../typings';\n\nexport const MultiDatumMark = [MarkTypeEnum.line, MarkTypeEnum.area, 'trail'];\n\nexport function isMultiDatumMark(type: MarkTypeEnum) {\n return MultiDatumMark.includes(type);\n}\n\nexport function curveTypeTransform(type: string, direction: string) {\n if (type === 'monotone') {\n return direction === Direction.horizontal ? 'monotoneY' : 'monotoneX';\n }\n return type;\n}\n\nexport function is3DMark(type: MarkTypeEnum) {\n return [MarkTypeEnum.arc3d, MarkTypeEnum.rect3d, MarkTypeEnum.pyramid3d].includes(type);\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import type { IBar3dSeriesSpec, IBar3dSeriesTheme } from './interface';
2
+ import { BarSeriesSpecTransformer } from './bar-transformer';
3
+ export declare class Bar3dSeriesSpecTransformer<T extends IBar3dSeriesSpec = IBar3dSeriesSpec, K extends IBar3dSeriesTheme = IBar3dSeriesTheme> extends BarSeriesSpecTransformer<T, K> {
4
+ protected _transformLabelSpec(spec: T): void;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { BarSeriesSpecTransformer } from "./bar-transformer";
2
+
3
+ export class Bar3dSeriesSpecTransformer extends BarSeriesSpecTransformer {
4
+ _transformLabelSpec(spec) {
5
+ this._addMarkLabelSpec(spec, "bar3d");
6
+ }
7
+ }
8
+ //# sourceMappingURL=bar-3d-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/series/bar/bar-3d-transformer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,MAAM,OAAO,0BAIX,SAAQ,wBAA8B;IAC5B,mBAAmB,CAAC,IAAO;QACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,UAA2B,CAAC;IACzD,CAAC;CACF","file":"bar-3d-transformer.js","sourcesContent":["import type { IBar3dSeriesSpec, IBar3dSeriesTheme } from './interface';\nimport { SeriesMarkNameEnum } from '../interface';\nimport { BarSeriesSpecTransformer } from './bar-transformer';\n\nexport class Bar3dSeriesSpecTransformer<\n T extends IBar3dSeriesSpec = IBar3dSeriesSpec,\n K extends IBar3dSeriesTheme = IBar3dSeriesTheme\n // @ts-ignore\n> extends BarSeriesSpecTransformer<T, K> {\n protected _transformLabelSpec(spec: T): void {\n this._addMarkLabelSpec(spec, SeriesMarkNameEnum.bar3d);\n }\n}\n"]}
@@ -10,5 +10,7 @@ export declare class Bar3dSeries<T extends IBar3dSeriesSpec = IBar3dSeriesSpec>
10
10
  static readonly mark: SeriesMarkMap;
11
11
  protected _barMarkName: SeriesMarkNameEnum;
12
12
  protected _barMarkType: MarkTypeEnum;
13
+ static readonly transformerConstructor: any;
14
+ readonly transformerConstructor: any;
13
15
  }
14
16
  export declare const registerBar3dSeries: () => void;
@@ -12,14 +12,16 @@ import { registerBar3dAnimation } from "./animation";
12
12
 
13
13
  import { registerCartesianLinearAxis, registerCartesianBandAxis } from "../../component/axis/cartesian";
14
14
 
15
+ import { Bar3dSeriesSpecTransformer } from "./bar-3d-transformer";
16
+
15
17
  export class Bar3dSeries extends BarSeries {
16
18
  constructor() {
17
19
  super(...arguments), this.type = SeriesTypeEnum.bar3d, this._barMarkName = "bar3d",
18
- this._barMarkType = "rect3d";
20
+ this._barMarkType = "rect3d", this.transformerConstructor = Bar3dSeriesSpecTransformer;
19
21
  }
20
22
  }
21
23
 
22
- Bar3dSeries.type = SeriesTypeEnum.bar3d, Bar3dSeries.mark = bar3dSeriesMark;
24
+ Bar3dSeries.type = SeriesTypeEnum.bar3d, Bar3dSeries.mark = bar3dSeriesMark, Bar3dSeries.transformerConstructor = Bar3dSeriesSpecTransformer;
23
25
 
24
26
  export const registerBar3dSeries = () => {
25
27
  registerBar3dAnimation(), registerRect3dMark(), registerCartesianBandAxis(), registerCartesianLinearAxis(),
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/bar/bar-3d.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAsB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAExG,MAAM,OAAO,WAA2D,SAAQ,SAAkC;IAAlH;;QAEE,SAAI,GAAG,cAAc,CAAC,KAAK,CAAC;QAIlB,iBAAY,WAAgD;QAC5D,iBAAY,YAAqC;IAC7D,CAAC;;AAPiB,gBAAI,GAAW,cAAc,CAAC,KAAK,CAAC;AAGpC,gBAAI,GAAkB,eAAe,CAAC;AAMxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,sBAAsB,EAAE,CAAC;IACzB,kBAAkB,EAAE,CAAC;IACrB,yBAAyB,EAAE,CAAC;IAC5B,2BAA2B,EAAE,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC,CAAC","file":"bar-3d.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum, SeriesMarkNameEnum } from '../interface/type';\nimport { BarSeries } from './bar';\nimport { registerRect3dMark } from '../../mark/rect-3d';\nimport type { IBar3dSeriesSpec } from './interface';\nimport type { AdaptiveSpec } from '../../typings';\nimport { bar3dSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport { registerBar3dAnimation } from './animation';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\n\nexport class Bar3dSeries<T extends IBar3dSeriesSpec = IBar3dSeriesSpec> extends BarSeries<AdaptiveSpec<T, 'type'>> {\n static readonly type: string = SeriesTypeEnum.bar3d;\n type = SeriesTypeEnum.bar3d;\n\n static readonly mark: SeriesMarkMap = bar3dSeriesMark;\n\n protected _barMarkName: SeriesMarkNameEnum = SeriesMarkNameEnum.bar3d;\n protected _barMarkType: MarkTypeEnum = MarkTypeEnum.rect3d;\n}\n\nexport const registerBar3dSeries = () => {\n registerBar3dAnimation();\n registerRect3dMark();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(Bar3dSeries.type, Bar3dSeries);\n};\n"]}
1
+ {"version":3,"sources":["../src/series/bar/bar-3d.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAsB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,OAAO,WAA2D,SAAQ,SAAkC;IAAlH;;QAEE,SAAI,GAAG,cAAc,CAAC,KAAK,CAAC;QAIlB,iBAAY,WAAgD;QAC5D,iBAAY,YAAqC;QAGlD,2BAAsB,GAAG,0BAAiC,CAAC;IACtE,CAAC;;AAViB,gBAAI,GAAW,cAAc,CAAC,KAAK,CAAC;AAGpC,gBAAI,GAAkB,eAAe,CAAC;AAKtC,kCAAsB,GAAG,0BAAiC,CAAC;AAI7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,sBAAsB,EAAE,CAAC;IACzB,kBAAkB,EAAE,CAAC;IACrB,yBAAyB,EAAE,CAAC;IAC5B,2BAA2B,EAAE,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC,CAAC","file":"bar-3d.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum, SeriesMarkNameEnum } from '../interface/type';\nimport { BarSeries } from './bar';\nimport { registerRect3dMark } from '../../mark/rect-3d';\nimport type { IBar3dSeriesSpec } from './interface';\nimport type { AdaptiveSpec } from '../../typings';\nimport { bar3dSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport { registerBar3dAnimation } from './animation';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\nimport { Bar3dSeriesSpecTransformer } from './bar-3d-transformer';\n\nexport class Bar3dSeries<T extends IBar3dSeriesSpec = IBar3dSeriesSpec> extends BarSeries<AdaptiveSpec<T, 'type'>> {\n static readonly type: string = SeriesTypeEnum.bar3d;\n type = SeriesTypeEnum.bar3d;\n\n static readonly mark: SeriesMarkMap = bar3dSeriesMark;\n\n protected _barMarkName: SeriesMarkNameEnum = SeriesMarkNameEnum.bar3d;\n protected _barMarkType: MarkTypeEnum = MarkTypeEnum.rect3d;\n\n static readonly transformerConstructor = Bar3dSeriesSpecTransformer as any;\n readonly transformerConstructor = Bar3dSeriesSpecTransformer as any;\n}\n\nexport const registerBar3dSeries = () => {\n registerBar3dAnimation();\n registerRect3dMark();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(Bar3dSeries.type, Bar3dSeries);\n};\n"]}
@@ -50,6 +50,8 @@ import { getDefaultInteractionConfigByMode } from "../../interaction/config";
50
50
 
51
51
  import { LayoutZIndex } from "../../constant/layout";
52
52
 
53
+ import { is3DMark } from "../../mark/utils";
54
+
53
55
  export class BaseSeries extends BaseModel {
54
56
  getRegion() {
55
57
  return this._region;
@@ -699,7 +701,7 @@ export class BaseSeries extends BaseModel {
699
701
  isNil(groupKey) || m.setGroupKey(groupKey), stateSort && m.setStateSortCallback(stateSort);
700
702
  const markConfig = Object.assign(Object.assign({}, config), {
701
703
  morph: null !== (_b = config.morph) && void 0 !== _b && _b,
702
- support3d: null !== (_c = config.support3d) && void 0 !== _c ? _c : spec.support3d || !!spec.zField,
704
+ support3d: is3DMark(markInfo.type) || (null !== (_c = config.support3d) && void 0 !== _c ? _c : spec.support3d || !!spec.zField),
703
705
  morphKey: (null === (_d = spec.morph) || void 0 === _d ? void 0 : _d.morphKey) || `${this.getSpecIndex()}_${this.getMarks().length}`,
704
706
  morphElementKey: null !== (_f = null === (_e = spec.morph) || void 0 === _e ? void 0 : _e.morphElementKey) && void 0 !== _f ? _f : config.morphElementKey
705
707
  });