@visactor/vchart 1.7.5 → 1.8.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +19762 -21284
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/config.d.ts +5 -1
  6. package/cjs/animation/config.js +28 -4
  7. package/cjs/animation/config.js.map +1 -1
  8. package/cjs/animation/utils.d.ts +2 -2
  9. package/cjs/chart/base-chart.js +5 -10
  10. package/cjs/chart/base-chart.js.map +1 -1
  11. package/cjs/compile/interface/compiler.d.ts +5 -0
  12. package/cjs/compile/interface/compiler.js.map +1 -1
  13. package/cjs/component/axis/base-axis.d.ts +24 -0
  14. package/cjs/component/axis/base-axis.js +30 -16
  15. package/cjs/component/axis/base-axis.js.map +1 -1
  16. package/cjs/component/axis/cartesian/interface/spec.js.map +1 -1
  17. package/cjs/component/base/base-component.d.ts +1 -0
  18. package/cjs/component/base/base-component.js +4 -2
  19. package/cjs/component/base/base-component.js.map +1 -1
  20. package/cjs/component/brush/brush.d.ts +2 -0
  21. package/cjs/component/brush/brush.js +41 -31
  22. package/cjs/component/brush/brush.js.map +1 -1
  23. package/cjs/component/crosshair/base.js +13 -7
  24. package/cjs/component/crosshair/base.js.map +1 -1
  25. package/cjs/component/custom-mark/custom-mark.js +2 -1
  26. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  27. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  28. package/cjs/component/data-zoom/data-filter-base-component.js +3 -2
  29. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  30. package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +5 -1
  31. package/cjs/component/data-zoom/data-zoom/data-zoom.js +32 -25
  32. package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  33. package/cjs/component/data-zoom/data-zoom/interface.d.ts +2 -2
  34. package/cjs/component/data-zoom/data-zoom/interface.js.map +1 -1
  35. package/cjs/component/data-zoom/interface.d.ts +1 -1
  36. package/cjs/component/data-zoom/interface.js.map +1 -1
  37. package/cjs/component/geo/geo-coordinate.d.ts +0 -3
  38. package/cjs/component/geo/geo-coordinate.js +12 -15
  39. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  40. package/cjs/component/label/label.js +1 -2
  41. package/cjs/component/label/label.js.map +1 -1
  42. package/cjs/component/label/totalLabel.js +2 -2
  43. package/cjs/component/label/totalLabel.js.map +1 -1
  44. package/cjs/component/legend/discrete/util.js +1 -1
  45. package/cjs/component/legend/discrete/util.js.map +1 -1
  46. package/cjs/component/legend/util.d.ts +1 -1
  47. package/cjs/component/map-label/component.js.map +1 -1
  48. package/cjs/component/tooltip/handler/base.js +10 -9
  49. package/cjs/component/tooltip/handler/base.js.map +1 -1
  50. package/cjs/core/index.d.ts +1 -1
  51. package/cjs/core/index.js +1 -1
  52. package/cjs/core/index.js.map +1 -1
  53. package/cjs/core/vchart.js +5 -2
  54. package/cjs/core/vchart.js.map +1 -1
  55. package/cjs/interaction/zoom/zoomable.js +17 -8
  56. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  57. package/cjs/mark/arc-3d.d.ts +1 -0
  58. package/cjs/mark/arc-3d.js +9 -2
  59. package/cjs/mark/arc-3d.js.map +1 -1
  60. package/cjs/mark/arc.d.ts +1 -0
  61. package/cjs/mark/arc.js +9 -2
  62. package/cjs/mark/arc.js.map +1 -1
  63. package/cjs/mark/area.d.ts +1 -0
  64. package/cjs/mark/area.js +9 -2
  65. package/cjs/mark/area.js.map +1 -1
  66. package/cjs/mark/box-plot.d.ts +1 -0
  67. package/cjs/mark/box-plot.js +10 -5
  68. package/cjs/mark/box-plot.js.map +1 -1
  69. package/cjs/mark/cell.d.ts +1 -0
  70. package/cjs/mark/cell.js +9 -2
  71. package/cjs/mark/cell.js.map +1 -1
  72. package/cjs/mark/component.d.ts +1 -0
  73. package/cjs/mark/component.js +8 -2
  74. package/cjs/mark/component.js.map +1 -1
  75. package/cjs/mark/group.d.ts +2 -1
  76. package/cjs/mark/group.js +8 -2
  77. package/cjs/mark/group.js.map +1 -1
  78. package/cjs/mark/image.d.ts +1 -0
  79. package/cjs/mark/image.js +8 -2
  80. package/cjs/mark/image.js.map +1 -1
  81. package/cjs/mark/label.d.ts +1 -0
  82. package/cjs/mark/label.js +8 -2
  83. package/cjs/mark/label.js.map +1 -1
  84. package/cjs/mark/line.d.ts +1 -0
  85. package/cjs/mark/line.js +9 -2
  86. package/cjs/mark/line.js.map +1 -1
  87. package/cjs/mark/link-path.d.ts +1 -0
  88. package/cjs/mark/link-path.js +8 -3
  89. package/cjs/mark/link-path.js.map +1 -1
  90. package/cjs/mark/path.d.ts +1 -0
  91. package/cjs/mark/path.js +8 -2
  92. package/cjs/mark/path.js.map +1 -1
  93. package/cjs/mark/polygon/polygon.d.ts +1 -0
  94. package/cjs/mark/polygon/polygon.js +9 -2
  95. package/cjs/mark/polygon/polygon.js.map +1 -1
  96. package/cjs/mark/polygon/pyramid-3d.d.ts +1 -0
  97. package/cjs/mark/polygon/pyramid-3d.js +9 -2
  98. package/cjs/mark/polygon/pyramid-3d.js.map +1 -1
  99. package/cjs/mark/progress-arc.d.ts +1 -0
  100. package/cjs/mark/progress-arc.js +9 -2
  101. package/cjs/mark/progress-arc.js.map +1 -1
  102. package/cjs/mark/rect-3d.d.ts +1 -0
  103. package/cjs/mark/rect-3d.js +9 -2
  104. package/cjs/mark/rect-3d.js.map +1 -1
  105. package/cjs/mark/rect.d.ts +1 -0
  106. package/cjs/mark/rect.js +9 -2
  107. package/cjs/mark/rect.js.map +1 -1
  108. package/cjs/mark/ripple.d.ts +1 -0
  109. package/cjs/mark/ripple.js +8 -3
  110. package/cjs/mark/ripple.js.map +1 -1
  111. package/cjs/mark/rule.d.ts +1 -0
  112. package/cjs/mark/rule.js +8 -2
  113. package/cjs/mark/rule.js.map +1 -1
  114. package/cjs/mark/symbol.d.ts +1 -0
  115. package/cjs/mark/symbol.js +8 -2
  116. package/cjs/mark/symbol.js.map +1 -1
  117. package/cjs/mark/text.d.ts +1 -0
  118. package/cjs/mark/text.js +8 -2
  119. package/cjs/mark/text.js.map +1 -1
  120. package/cjs/model/base-model.d.ts +0 -2
  121. package/cjs/model/base-model.js +1 -8
  122. package/cjs/model/base-model.js.map +1 -1
  123. package/cjs/series/area/area.js +3 -4
  124. package/cjs/series/area/area.js.map +1 -1
  125. package/cjs/series/bar/bar-3d.js +2 -2
  126. package/cjs/series/bar/bar-3d.js.map +1 -1
  127. package/cjs/series/bar/bar.js +2 -2
  128. package/cjs/series/bar/bar.js.map +1 -1
  129. package/cjs/series/base/base-series.js +7 -3
  130. package/cjs/series/base/base-series.js.map +1 -1
  131. package/cjs/series/box-plot/box-plot.js +2 -3
  132. package/cjs/series/box-plot/box-plot.js.map +1 -1
  133. package/cjs/series/circle-packing/circle-packing.js +2 -2
  134. package/cjs/series/circle-packing/circle-packing.js.map +1 -1
  135. package/cjs/series/correlation/correlation.js +2 -3
  136. package/cjs/series/correlation/correlation.js.map +1 -1
  137. package/cjs/series/dot/dot.js +2 -3
  138. package/cjs/series/dot/dot.js.map +1 -1
  139. package/cjs/series/funnel/funnel-3d.js +1 -2
  140. package/cjs/series/funnel/funnel-3d.js.map +1 -1
  141. package/cjs/series/funnel/funnel.js +1 -2
  142. package/cjs/series/funnel/funnel.js.map +1 -1
  143. package/cjs/series/gauge/gauge-pointer.js +2 -3
  144. package/cjs/series/gauge/gauge-pointer.js.map +1 -1
  145. package/cjs/series/gauge/gauge.js +2 -2
  146. package/cjs/series/gauge/gauge.js.map +1 -1
  147. package/cjs/series/heatmap/heatmap.d.ts +1 -1
  148. package/cjs/series/heatmap/heatmap.js +3 -4
  149. package/cjs/series/heatmap/heatmap.js.map +1 -1
  150. package/cjs/series/line/line.js +2 -3
  151. package/cjs/series/line/line.js.map +1 -1
  152. package/cjs/series/link/link.js +1 -2
  153. package/cjs/series/link/link.js.map +1 -1
  154. package/cjs/series/map/map.d.ts +3 -0
  155. package/cjs/series/map/map.js +4 -1
  156. package/cjs/series/map/map.js.map +1 -1
  157. package/cjs/series/pie/pie-3d.js +1 -2
  158. package/cjs/series/pie/pie-3d.js.map +1 -1
  159. package/cjs/series/pie/pie.js +5 -11
  160. package/cjs/series/pie/pie.js.map +1 -1
  161. package/cjs/series/polar/polar.d.ts +1 -0
  162. package/cjs/series/polar/polar.js +7 -1
  163. package/cjs/series/polar/polar.js.map +1 -1
  164. package/cjs/series/progress/circular/circular.js +3 -3
  165. package/cjs/series/progress/circular/circular.js.map +1 -1
  166. package/cjs/series/progress/linear/linear.js +2 -2
  167. package/cjs/series/progress/linear/linear.js.map +1 -1
  168. package/cjs/series/radar/radar.js +3 -3
  169. package/cjs/series/radar/radar.js.map +1 -1
  170. package/cjs/series/range-area/range-area.js +1 -1
  171. package/cjs/series/range-area/range-area.js.map +1 -1
  172. package/cjs/series/range-column/range-column-3d.js +1 -2
  173. package/cjs/series/range-column/range-column-3d.js.map +1 -1
  174. package/cjs/series/range-column/range-column.js +2 -3
  175. package/cjs/series/range-column/range-column.js.map +1 -1
  176. package/cjs/series/rose/rose.js +1 -1
  177. package/cjs/series/rose/rose.js.map +1 -1
  178. package/cjs/series/sankey/sankey.js +3 -4
  179. package/cjs/series/sankey/sankey.js.map +1 -1
  180. package/cjs/series/scatter/scatter.js +2 -2
  181. package/cjs/series/scatter/scatter.js.map +1 -1
  182. package/cjs/series/sunburst/sunburst.js +3 -3
  183. package/cjs/series/sunburst/sunburst.js.map +1 -1
  184. package/cjs/series/treemap/treemap.js +2 -3
  185. package/cjs/series/treemap/treemap.js.map +1 -1
  186. package/cjs/series/waterfall/waterfall.js +3 -4
  187. package/cjs/series/waterfall/waterfall.js.map +1 -1
  188. package/cjs/series/word-cloud/word-cloud-3d.js +2 -3
  189. package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
  190. package/cjs/series/word-cloud/word-cloud.js +3 -3
  191. package/cjs/series/word-cloud/word-cloud.js.map +1 -1
  192. package/cjs/theme/builtin/common/component/axis/common-axis.js +4 -0
  193. package/cjs/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  194. package/cjs/theme/builtin/common/component/data-zoom.js +2 -4
  195. package/cjs/theme/builtin/common/component/data-zoom.js.map +1 -1
  196. package/cjs/theme/builtin/index.d.ts +0 -1
  197. package/cjs/theme/builtin/index.js +1 -2
  198. package/cjs/theme/builtin/index.js.map +1 -1
  199. package/cjs/util/space.d.ts +1 -3
  200. package/cjs/util/space.js +4 -16
  201. package/cjs/util/space.js.map +1 -1
  202. package/cjs/vchart-all.js.map +1 -1
  203. package/esm/animation/config.d.ts +5 -1
  204. package/esm/animation/config.js +18 -2
  205. package/esm/animation/config.js.map +1 -1
  206. package/esm/animation/utils.d.ts +2 -2
  207. package/esm/chart/base-chart.js +5 -10
  208. package/esm/chart/base-chart.js.map +1 -1
  209. package/esm/compile/interface/compiler.d.ts +5 -0
  210. package/esm/compile/interface/compiler.js.map +1 -1
  211. package/esm/component/axis/base-axis.d.ts +24 -0
  212. package/esm/component/axis/base-axis.js +31 -18
  213. package/esm/component/axis/base-axis.js.map +1 -1
  214. package/esm/component/axis/cartesian/interface/spec.js.map +1 -1
  215. package/esm/component/base/base-component.d.ts +1 -0
  216. package/esm/component/base/base-component.js +4 -2
  217. package/esm/component/base/base-component.js.map +1 -1
  218. package/esm/component/brush/brush.d.ts +2 -0
  219. package/esm/component/brush/brush.js +42 -32
  220. package/esm/component/brush/brush.js.map +1 -1
  221. package/esm/component/crosshair/base.js +13 -7
  222. package/esm/component/crosshair/base.js.map +1 -1
  223. package/esm/component/custom-mark/custom-mark.js +3 -2
  224. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  225. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  226. package/esm/component/data-zoom/data-filter-base-component.js +3 -2
  227. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  228. package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +5 -1
  229. package/esm/component/data-zoom/data-zoom/data-zoom.js +32 -25
  230. package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
  231. package/esm/component/data-zoom/data-zoom/interface.d.ts +2 -2
  232. package/esm/component/data-zoom/data-zoom/interface.js.map +1 -1
  233. package/esm/component/data-zoom/interface.d.ts +1 -1
  234. package/esm/component/data-zoom/interface.js.map +1 -1
  235. package/esm/component/geo/geo-coordinate.d.ts +0 -3
  236. package/esm/component/geo/geo-coordinate.js +13 -16
  237. package/esm/component/geo/geo-coordinate.js.map +1 -1
  238. package/esm/component/label/label.js +3 -4
  239. package/esm/component/label/label.js.map +1 -1
  240. package/esm/component/label/totalLabel.js +4 -3
  241. package/esm/component/label/totalLabel.js.map +1 -1
  242. package/esm/component/legend/discrete/util.js +1 -1
  243. package/esm/component/legend/discrete/util.js.map +1 -1
  244. package/esm/component/legend/util.d.ts +1 -1
  245. package/esm/component/map-label/component.js.map +1 -1
  246. package/esm/component/tooltip/handler/base.js +8 -10
  247. package/esm/component/tooltip/handler/base.js.map +1 -1
  248. package/esm/core/index.d.ts +1 -1
  249. package/esm/core/index.js +1 -1
  250. package/esm/core/index.js.map +1 -1
  251. package/esm/core/vchart.js +9 -6
  252. package/esm/core/vchart.js.map +1 -1
  253. package/esm/interaction/zoom/zoomable.js +17 -10
  254. package/esm/interaction/zoom/zoomable.js.map +1 -1
  255. package/esm/mark/arc-3d.d.ts +1 -0
  256. package/esm/mark/arc-3d.js +10 -0
  257. package/esm/mark/arc-3d.js.map +1 -1
  258. package/esm/mark/arc.d.ts +1 -0
  259. package/esm/mark/arc.js +10 -0
  260. package/esm/mark/arc.js.map +1 -1
  261. package/esm/mark/area.d.ts +1 -0
  262. package/esm/mark/area.js +10 -0
  263. package/esm/mark/area.js.map +1 -1
  264. package/esm/mark/box-plot.d.ts +1 -0
  265. package/esm/mark/box-plot.js +7 -3
  266. package/esm/mark/box-plot.js.map +1 -1
  267. package/esm/mark/cell.d.ts +1 -0
  268. package/esm/mark/cell.js +8 -0
  269. package/esm/mark/cell.js.map +1 -1
  270. package/esm/mark/component.d.ts +1 -0
  271. package/esm/mark/component.js +6 -0
  272. package/esm/mark/component.js.map +1 -1
  273. package/esm/mark/group.d.ts +2 -1
  274. package/esm/mark/group.js +8 -0
  275. package/esm/mark/group.js.map +1 -1
  276. package/esm/mark/image.d.ts +1 -0
  277. package/esm/mark/image.js +8 -0
  278. package/esm/mark/image.js.map +1 -1
  279. package/esm/mark/label.d.ts +1 -0
  280. package/esm/mark/label.js +8 -0
  281. package/esm/mark/label.js.map +1 -1
  282. package/esm/mark/line.d.ts +1 -0
  283. package/esm/mark/line.js +10 -0
  284. package/esm/mark/line.js.map +1 -1
  285. package/esm/mark/link-path.d.ts +1 -0
  286. package/esm/mark/link-path.js +6 -1
  287. package/esm/mark/link-path.js.map +1 -1
  288. package/esm/mark/path.d.ts +1 -0
  289. package/esm/mark/path.js +8 -0
  290. package/esm/mark/path.js.map +1 -1
  291. package/esm/mark/polygon/polygon.d.ts +1 -0
  292. package/esm/mark/polygon/polygon.js +10 -0
  293. package/esm/mark/polygon/polygon.js.map +1 -1
  294. package/esm/mark/polygon/pyramid-3d.d.ts +1 -0
  295. package/esm/mark/polygon/pyramid-3d.js +11 -0
  296. package/esm/mark/polygon/pyramid-3d.js.map +1 -1
  297. package/esm/mark/progress-arc.d.ts +1 -0
  298. package/esm/mark/progress-arc.js +10 -0
  299. package/esm/mark/progress-arc.js.map +1 -1
  300. package/esm/mark/rect-3d.d.ts +1 -0
  301. package/esm/mark/rect-3d.js +10 -0
  302. package/esm/mark/rect-3d.js.map +1 -1
  303. package/esm/mark/rect.d.ts +1 -0
  304. package/esm/mark/rect.js +10 -0
  305. package/esm/mark/rect.js.map +1 -1
  306. package/esm/mark/ripple.d.ts +1 -0
  307. package/esm/mark/ripple.js +6 -1
  308. package/esm/mark/ripple.js.map +1 -1
  309. package/esm/mark/rule.d.ts +1 -0
  310. package/esm/mark/rule.js +8 -0
  311. package/esm/mark/rule.js.map +1 -1
  312. package/esm/mark/symbol.d.ts +1 -0
  313. package/esm/mark/symbol.js +8 -0
  314. package/esm/mark/symbol.js.map +1 -1
  315. package/esm/mark/text.d.ts +1 -0
  316. package/esm/mark/text.js +7 -1
  317. package/esm/mark/text.js.map +1 -1
  318. package/esm/model/base-model.d.ts +0 -2
  319. package/esm/model/base-model.js +1 -7
  320. package/esm/model/base-model.js.map +1 -1
  321. package/esm/series/area/area.js +5 -9
  322. package/esm/series/area/area.js.map +1 -1
  323. package/esm/series/bar/bar-3d.js +2 -3
  324. package/esm/series/bar/bar-3d.js.map +1 -1
  325. package/esm/series/bar/bar.js +2 -3
  326. package/esm/series/bar/bar.js.map +1 -1
  327. package/esm/series/base/base-series.js +7 -3
  328. package/esm/series/base/base-series.js.map +1 -1
  329. package/esm/series/box-plot/box-plot.js +3 -4
  330. package/esm/series/box-plot/box-plot.js.map +1 -1
  331. package/esm/series/circle-packing/circle-packing.js +4 -5
  332. package/esm/series/circle-packing/circle-packing.js.map +1 -1
  333. package/esm/series/correlation/correlation.js +4 -4
  334. package/esm/series/correlation/correlation.js.map +1 -1
  335. package/esm/series/dot/dot.js +5 -6
  336. package/esm/series/dot/dot.js.map +1 -1
  337. package/esm/series/funnel/funnel-3d.js +4 -5
  338. package/esm/series/funnel/funnel-3d.js.map +1 -1
  339. package/esm/series/funnel/funnel.js +4 -5
  340. package/esm/series/funnel/funnel.js.map +1 -1
  341. package/esm/series/gauge/gauge-pointer.js +3 -4
  342. package/esm/series/gauge/gauge-pointer.js.map +1 -1
  343. package/esm/series/gauge/gauge.js +2 -3
  344. package/esm/series/gauge/gauge.js.map +1 -1
  345. package/esm/series/heatmap/heatmap.d.ts +1 -1
  346. package/esm/series/heatmap/heatmap.js +5 -8
  347. package/esm/series/heatmap/heatmap.js.map +1 -1
  348. package/esm/series/line/line.js +4 -5
  349. package/esm/series/line/line.js.map +1 -1
  350. package/esm/series/link/link.js +3 -4
  351. package/esm/series/link/link.js.map +1 -1
  352. package/esm/series/map/map.d.ts +3 -0
  353. package/esm/series/map/map.js +7 -4
  354. package/esm/series/map/map.js.map +1 -1
  355. package/esm/series/pie/pie-3d.js +2 -3
  356. package/esm/series/pie/pie-3d.js.map +1 -1
  357. package/esm/series/pie/pie.js +5 -10
  358. package/esm/series/pie/pie.js.map +1 -1
  359. package/esm/series/polar/polar.d.ts +1 -0
  360. package/esm/series/polar/polar.js +8 -0
  361. package/esm/series/polar/polar.js.map +1 -1
  362. package/esm/series/progress/circular/circular.js +4 -5
  363. package/esm/series/progress/circular/circular.js.map +1 -1
  364. package/esm/series/progress/linear/linear.js +3 -3
  365. package/esm/series/progress/linear/linear.js.map +1 -1
  366. package/esm/series/radar/radar.js +5 -6
  367. package/esm/series/radar/radar.js.map +1 -1
  368. package/esm/series/range-area/range-area.js +2 -2
  369. package/esm/series/range-area/range-area.js.map +1 -1
  370. package/esm/series/range-column/range-column-3d.js +2 -2
  371. package/esm/series/range-column/range-column-3d.js.map +1 -1
  372. package/esm/series/range-column/range-column.js +4 -5
  373. package/esm/series/range-column/range-column.js.map +1 -1
  374. package/esm/series/rose/rose.js +2 -3
  375. package/esm/series/rose/rose.js.map +1 -1
  376. package/esm/series/sankey/sankey.js +5 -6
  377. package/esm/series/sankey/sankey.js.map +1 -1
  378. package/esm/series/scatter/scatter.js +2 -3
  379. package/esm/series/scatter/scatter.js.map +1 -1
  380. package/esm/series/sunburst/sunburst.js +4 -5
  381. package/esm/series/sunburst/sunburst.js.map +1 -1
  382. package/esm/series/treemap/treemap.js +4 -5
  383. package/esm/series/treemap/treemap.js.map +1 -1
  384. package/esm/series/waterfall/waterfall.js +4 -5
  385. package/esm/series/waterfall/waterfall.js.map +1 -1
  386. package/esm/series/word-cloud/word-cloud-3d.js +5 -5
  387. package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
  388. package/esm/series/word-cloud/word-cloud.js +6 -6
  389. package/esm/series/word-cloud/word-cloud.js.map +1 -1
  390. package/esm/theme/builtin/common/component/axis/common-axis.js +4 -0
  391. package/esm/theme/builtin/common/component/axis/common-axis.js.map +1 -1
  392. package/esm/theme/builtin/common/component/data-zoom.js +2 -4
  393. package/esm/theme/builtin/common/component/data-zoom.js.map +1 -1
  394. package/esm/theme/builtin/index.d.ts +0 -1
  395. package/esm/theme/builtin/index.js +0 -2
  396. package/esm/theme/builtin/index.js.map +1 -1
  397. package/esm/util/space.d.ts +1 -3
  398. package/esm/util/space.js +0 -12
  399. package/esm/util/space.js.map +1 -1
  400. package/esm/vchart-all.js.map +1 -1
  401. package/package.json +17 -17
  402. package/cjs/theme/builtin/common/legacy/index.d.ts +0 -1
  403. package/cjs/theme/builtin/common/legacy/index.js +0 -21
  404. package/cjs/theme/builtin/common/legacy/index.js.map +0 -1
  405. package/cjs/theme/builtin/common/legacy/legend/color-legend.d.ts +0 -2
  406. package/cjs/theme/builtin/common/legacy/legend/color-legend.js +0 -43
  407. package/cjs/theme/builtin/common/legacy/legend/color-legend.js.map +0 -1
  408. package/cjs/theme/builtin/common/legacy/legend/continuous.d.ts +0 -2
  409. package/cjs/theme/builtin/common/legacy/legend/continuous.js +0 -60
  410. package/cjs/theme/builtin/common/legacy/legend/continuous.js.map +0 -1
  411. package/cjs/theme/builtin/common/legacy/legend/index.d.ts +0 -2
  412. package/cjs/theme/builtin/common/legacy/legend/index.js +0 -24
  413. package/cjs/theme/builtin/common/legacy/legend/index.js.map +0 -1
  414. package/cjs/theme/builtin/common/legacy/legend/size-legend.d.ts +0 -2
  415. package/cjs/theme/builtin/common/legacy/legend/size-legend.js +0 -56
  416. package/cjs/theme/builtin/common/legacy/legend/size-legend.js.map +0 -1
  417. package/esm/theme/builtin/common/legacy/index.d.ts +0 -1
  418. package/esm/theme/builtin/common/legacy/index.js +0 -2
  419. package/esm/theme/builtin/common/legacy/index.js.map +0 -1
  420. package/esm/theme/builtin/common/legacy/legend/color-legend.d.ts +0 -2
  421. package/esm/theme/builtin/common/legacy/legend/color-legend.js +0 -39
  422. package/esm/theme/builtin/common/legacy/legend/color-legend.js.map +0 -1
  423. package/esm/theme/builtin/common/legacy/legend/continuous.d.ts +0 -2
  424. package/esm/theme/builtin/common/legacy/legend/continuous.js +0 -54
  425. package/esm/theme/builtin/common/legacy/legend/continuous.js.map +0 -1
  426. package/esm/theme/builtin/common/legacy/legend/index.d.ts +0 -2
  427. package/esm/theme/builtin/common/legacy/legend/index.js +0 -4
  428. package/esm/theme/builtin/common/legacy/legend/index.js.map +0 -1
  429. package/esm/theme/builtin/common/legacy/legend/size-legend.d.ts +0 -2
  430. package/esm/theme/builtin/common/legacy/legend/size-legend.js +0 -54
  431. package/esm/theme/builtin/common/legacy/legend/size-legend.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/link-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAMhE,MAAM,OAAO,YAAa,SAAQ,QAA2B;IAA7D;;QAEW,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAgCpC,CAAC;IA9BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,GAAG,EACP,EAAE,EAAE,GAAG,EACP,SAAS,EAAE,CAAC,EACZ,KAAK,EAAE,IAAI,GACZ,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,qBAAqB,EAAE,CAAC;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,UAAU,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI;aACjB,KAAK,CAAC,SAAS,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC;aACxC,EAAE,CAAC,EAAE,CAAC;aACN,cAAc,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AAhCe,iBAAI,GAAG,YAAY,CAAC,QAAQ,CAAC","file":"link-path.js","sourcesContent":["import { BaseMark } from './base/base-mark';\nimport type { ILinkPathMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerLinkPathGlyph } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type ILinkPathMark = IMarkRaw<ILinkPathMarkSpec>;\n\nexport class LinkPathMark extends BaseMark<ILinkPathMarkSpec> implements ILinkPathMark {\n static readonly type = MarkTypeEnum.linkPath;\n readonly type = LinkPathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILinkPathMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n x0: 0,\n y0: 0,\n x1: 100,\n y1: 100,\n thickness: 1,\n round: true\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n registerLinkPathGlyph();\n\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n const glyphType = 'linkPath';\n const direction = this.getStyle('direction');\n this._product = view\n .glyph(glyphType, group ?? view.rootMark)\n .id(id)\n .configureGlyph({ direction: direction });\n this._compiledProductId = id;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/link-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAMhE,MAAM,OAAO,YAAa,SAAQ,QAA2B;IAA7D;;QAEW,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IA8BpC,CAAC;IA5BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,GAAG,EACP,EAAE,EAAE,GAAG,EACP,SAAS,EAAE,CAAC,EACZ,KAAK,EAAE,IAAI,GACZ,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,UAAU,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI;aACjB,KAAK,CAAC,SAAS,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC;aACxC,EAAE,CAAC,EAAE,CAAC;aACN,cAAc,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AA9Be,iBAAI,GAAG,YAAY,CAAC,QAAQ,CAAC;AAiC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,qBAAqB,EAAE,CAAC;IACxB,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,YAAmB,CAAC,CAAC;AAC/D,CAAC,CAAC","file":"link-path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { BaseMark } from './base/base-mark';\nimport type { ILinkPathMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerLinkPathGlyph } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type ILinkPathMark = IMarkRaw<ILinkPathMarkSpec>;\n\nexport class LinkPathMark extends BaseMark<ILinkPathMarkSpec> implements ILinkPathMark {\n static readonly type = MarkTypeEnum.linkPath;\n readonly type = LinkPathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ILinkPathMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n x0: 0,\n y0: 0,\n x1: 100,\n y1: 100,\n thickness: 1,\n round: true\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n const glyphType = 'linkPath';\n const direction = this.getStyle('direction');\n this._product = view\n .glyph(glyphType, group ?? view.rootMark)\n .id(id)\n .configureGlyph({ direction: direction });\n this._compiledProductId = id;\n }\n}\n\nexport const registerLinkPathMark = () => {\n registerLinkPathGlyph();\n Factory.registerMark(LinkPathMark.type, LinkPathMark as any);\n};\n"]}
@@ -8,3 +8,4 @@ export declare class PathMark extends BaseMark<IPathMarkSpec> implements IPathMa
8
8
  readonly type = MarkTypeEnum.path;
9
9
  protected _getDefaultStyle(): IMarkStyle<IPathMarkSpec>;
10
10
  }
11
+ export declare const registerPathMark: () => void;
package/esm/mark/path.js CHANGED
@@ -1,7 +1,11 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
4
6
 
7
+ import { registerPathGraphic } from "@visactor/vgrammar-core";
8
+
5
9
  export class PathMark extends BaseMark {
6
10
  constructor() {
7
11
  super(...arguments), this.type = PathMark.type;
@@ -15,4 +19,8 @@ export class PathMark extends BaseMark {
15
19
  }
16
20
 
17
21
  PathMark.type = MarkTypeEnum.path;
22
+
23
+ export const registerPathMark = () => {
24
+ Factory.registerMark(PathMark.type, PathMark), registerPathGraphic();
25
+ };
18
26
  //# sourceMappingURL=path.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/path.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAUhC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,EAAE,GACT,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAVe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC","file":"path.js","sourcesContent":["import type { IPathMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\n\nexport type IPathMark = IMarkRaw<IPathMarkSpec>;\n\nexport class PathMark extends BaseMark<IPathMarkSpec> implements IPathMark {\n static readonly type = MarkTypeEnum.path;\n readonly type = PathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPathMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0,\n path: ''\n };\n return defaultStyle;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAUhC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,EAAE,GACT,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAVe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC;AAa3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,EAAE,CAAC;AACxB,CAAC,CAAC","file":"path.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IPathMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerPathGraphic } from '@visactor/vgrammar-core';\n\nexport type IPathMark = IMarkRaw<IPathMarkSpec>;\n\nexport class PathMark extends BaseMark<IPathMarkSpec> implements IPathMark {\n static readonly type = MarkTypeEnum.path;\n readonly type = PathMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPathMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0,\n path: ''\n };\n return defaultStyle;\n }\n}\n\nexport const registerPathMark = () => {\n Factory.registerMark(PathMark.type, PathMark);\n registerPathGraphic();\n};\n"]}
@@ -8,3 +8,4 @@ export declare class PolygonMark extends BasePolygonMark<IPolygonMarkSpec> imple
8
8
  readonly type = MarkTypeEnum.polygon;
9
9
  protected _getDefaultStyle(): IMarkStyle<IPolygonMarkSpec>;
10
10
  }
11
+ export declare const registerPolygonMark: () => void;
@@ -1,7 +1,13 @@
1
+ import { Factory } from "./../../core/factory";
2
+
1
3
  import { BasePolygonMark } from "./base-polygon";
2
4
 
3
5
  import { MarkTypeEnum } from "../interface/type";
4
6
 
7
+ import { registerPolygonGraphic } from "@visactor/vgrammar-core";
8
+
9
+ import { registerVGrammarPolygonAnimation } from "../../animation/config";
10
+
5
11
  export class PolygonMark extends BasePolygonMark {
6
12
  constructor() {
7
13
  super(...arguments), this.type = PolygonMark.type;
@@ -14,4 +20,8 @@ export class PolygonMark extends BasePolygonMark {
14
20
  }
15
21
 
16
22
  PolygonMark.type = MarkTypeEnum.polygon;
23
+
24
+ export const registerPolygonMark = () => {
25
+ Factory.registerMark(PolygonMark.type, PolygonMark), registerPolygonGraphic(), registerVGrammarPolygonAnimation();
26
+ };
17
27
  //# sourceMappingURL=polygon.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/polygon/polygon.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIjD,MAAM,OAAO,WAAY,SAAQ,eAAiC;IAAlE;;QAEW,SAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IASnC,CAAC;IAPW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AATe,gBAAI,GAAG,YAAY,CAAC,OAAO,CAAC","file":"polygon.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IPolygonMarkSpec } from '../../typings/visual';\nimport { BasePolygonMark } from './base-polygon';\nimport type { IMarkRaw, IMarkStyle } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\n\nexport type IPolygonMark = IMarkRaw<IPolygonMarkSpec>;\n\nexport class PolygonMark extends BasePolygonMark<IPolygonMarkSpec> implements IPolygonMark {\n static readonly type = MarkTypeEnum.polygon;\n readonly type = PolygonMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPolygonMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/polygon/polygon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAI1E,MAAM,OAAO,WAAY,SAAQ,eAAiC;IAAlE;;QAEW,SAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IASnC,CAAC;IAPW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AATe,gBAAI,GAAG,YAAY,CAAC,OAAO,CAAC;AAY9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpD,sBAAsB,EAAE,CAAC;IACzB,gCAAgC,EAAE,CAAC;AACrC,CAAC,CAAC","file":"polygon.js","sourcesContent":["import { Factory } from './../../core/factory';\n/* eslint-disable no-duplicate-imports */\nimport type { IPolygonMarkSpec } from '../../typings/visual';\nimport { BasePolygonMark } from './base-polygon';\nimport type { IMarkRaw, IMarkStyle } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\nimport { registerPolygonGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarPolygonAnimation } from '../../animation/config';\n\nexport type IPolygonMark = IMarkRaw<IPolygonMarkSpec>;\n\nexport class PolygonMark extends BasePolygonMark<IPolygonMarkSpec> implements IPolygonMark {\n static readonly type = MarkTypeEnum.polygon;\n readonly type = PolygonMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IPolygonMarkSpec> = {\n ...super._getDefaultStyle(),\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerPolygonMark = () => {\n Factory.registerMark(PolygonMark.type, PolygonMark);\n registerPolygonGraphic();\n registerVGrammarPolygonAnimation();\n};\n"]}
@@ -7,3 +7,4 @@ export declare class Pyramid3dMark extends BasePolygonMark<IPyramid3dMarkSpec> i
7
7
  static readonly type = MarkTypeEnum.pyramid3d;
8
8
  readonly type = MarkTypeEnum.pyramid3d;
9
9
  }
10
+ export declare const registerPyramid3dMark: () => void;
@@ -1,7 +1,13 @@
1
+ import { Factory } from "./../../core/factory";
2
+
1
3
  import { MarkTypeEnum } from "../interface/type";
2
4
 
3
5
  import { BasePolygonMark } from "./base-polygon";
4
6
 
7
+ import { registerPyramid3dGraphic } from "@visactor/vgrammar-core";
8
+
9
+ import { registerVGrammarPolygonAnimation } from "../../animation/config";
10
+
5
11
  export class Pyramid3dMark extends BasePolygonMark {
6
12
  constructor() {
7
13
  super(...arguments), this.type = Pyramid3dMark.type;
@@ -9,4 +15,9 @@ export class Pyramid3dMark extends BasePolygonMark {
9
15
  }
10
16
 
11
17
  Pyramid3dMark.type = MarkTypeEnum.pyramid3d;
18
+
19
+ export const registerPyramid3dMark = () => {
20
+ Factory.registerMark(Pyramid3dMark.type, Pyramid3dMark), registerPyramid3dGraphic(),
21
+ registerVGrammarPolygonAnimation();
22
+ };
12
23
  //# sourceMappingURL=pyramid-3d.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/polygon/pyramid-3d.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,MAAM,OAAO,aAAc,SAAQ,eAAmC;IAAtE;;QAEW,SAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IACrC,CAAC;;AAFiB,kBAAI,GAAG,YAAY,CAAC,SAAS,CAAC","file":"pyramid-3d.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IPyramid3dMarkSpec } from '../../typings/visual';\nimport type { IMarkRaw } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\nimport { BasePolygonMark } from './base-polygon';\n\nexport type IPyramid3dMark = IMarkRaw<IPyramid3dMarkSpec>;\n\nexport class Pyramid3dMark extends BasePolygonMark<IPyramid3dMarkSpec> implements IPyramid3dMark {\n static readonly type = MarkTypeEnum.pyramid3d;\n readonly type = Pyramid3dMark.type;\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/polygon/pyramid-3d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAI1E,MAAM,OAAO,aAAc,SAAQ,eAAmC;IAAtE;;QAEW,SAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IACrC,CAAC;;AAFiB,kBAAI,GAAG,YAAY,CAAC,SAAS,CAAC;AAIhD,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACxD,wBAAwB,EAAE,CAAC;IAC3B,gCAAgC,EAAE,CAAC;AACrC,CAAC,CAAC","file":"pyramid-3d.js","sourcesContent":["import { Factory } from './../../core/factory';\n/* eslint-disable no-duplicate-imports */\nimport type { IPyramid3dMarkSpec } from '../../typings/visual';\nimport type { IMarkRaw } from '../interface';\nimport { MarkTypeEnum } from '../interface/type';\nimport { BasePolygonMark } from './base-polygon';\nimport { registerPyramid3dGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarPolygonAnimation } from '../../animation/config';\n\nexport type IPyramid3dMark = IMarkRaw<IPyramid3dMarkSpec>;\n\nexport class Pyramid3dMark extends BasePolygonMark<IPyramid3dMarkSpec> implements IPyramid3dMark {\n static readonly type = MarkTypeEnum.pyramid3d;\n readonly type = Pyramid3dMark.type;\n}\n\nexport const registerPyramid3dMark = () => {\n Factory.registerMark(Pyramid3dMark.type, Pyramid3dMark);\n registerPyramid3dGraphic();\n registerVGrammarPolygonAnimation();\n};\n"]}
@@ -11,3 +11,4 @@ export declare class ProgressArcMark extends BaseArcMark<IProgressArcMarkSpec> i
11
11
  protected _getDefaultStyle(): IMarkStyle<IProgressArcMarkSpec>;
12
12
  protected _filterStyle(style: Partial<IMarkStyle<IProgressArcMarkSpec>>, state: StateValueType, level: number, stateStyle?: IMarkStateStyle<IProgressArcMarkSpec>): Partial<ConvertToMarkStyleSpec<IProgressArcMarkSpec>> | Partial<IMarkStyle<IProgressArcMarkSpec>>;
13
13
  }
14
+ export declare const registerProgressArcMark: () => void;
@@ -1,9 +1,15 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { isFunction, isValid } from "@visactor/vutils";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
4
6
 
5
7
  import { BaseArcMark } from "./arc";
6
8
 
9
+ import { registerVGrammarArcAnimation } from "../animation/config";
10
+
11
+ import { registerArcGraphic } from "@visactor/vgrammar-core";
12
+
7
13
  export class ProgressArcMark extends BaseArcMark {
8
14
  constructor() {
9
15
  super(...arguments), this._cacheStateStyle = {};
@@ -36,4 +42,8 @@ export class ProgressArcMark extends BaseArcMark {
36
42
  }
37
43
 
38
44
  ProgressArcMark.type = MarkTypeEnum.arc, ProgressArcMark.constructorType = MarkTypeEnum.progressArc;
45
+
46
+ export const registerProgressArcMark = () => {
47
+ registerArcGraphic(), registerVGrammarArcAnimation(), Factory.registerMark(ProgressArcMark.constructorType, ProgressArcMark);
48
+ };
39
49
  //# sourceMappingURL=progress-arc.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/progress-arc.ts"],"names":[],"mappings":"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","file":"progress-arc.js","sourcesContent":["import { isFunction, isValid } from '@visactor/vutils';\nimport type { DataView } from '@visactor/vdataset';\nimport type { StateValueType } from '../typings/spec';\nimport type { ConvertToMarkStyleSpec, IProgressArcMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStateStyle, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { BaseArcMark } from './arc';\nimport type { IAttributeOpt } from '../compile/mark/interface';\n\nexport type IProgressArcMark = IMarkRaw<IProgressArcMarkSpec>;\n\nexport class ProgressArcMark extends BaseArcMark<IProgressArcMarkSpec> implements IProgressArcMark {\n static readonly type = MarkTypeEnum.arc;\n static readonly constructorType = MarkTypeEnum.progressArc;\n\n protected _cacheStateStyle: IMarkStateStyle<IProgressArcMarkSpec> = {};\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IProgressArcMarkSpec> = {\n ...super._getDefaultStyle(),\n innerPadding: 0,\n outerPadding: 0\n };\n return defaultStyle;\n }\n\n protected _filterStyle(\n style: Partial<IMarkStyle<IProgressArcMarkSpec>>,\n state: StateValueType,\n level: number,\n stateStyle = this.stateStyle\n ): Partial<ConvertToMarkStyleSpec<IProgressArcMarkSpec>> | Partial<IMarkStyle<IProgressArcMarkSpec>> {\n // 记录 radius 缓存\n if (isValid(style.innerRadius)) {\n this.setAttribute(\n 'innerRadius',\n this._styleConvert<'innerRadius'>(style.innerRadius),\n state,\n level,\n this._cacheStateStyle\n );\n }\n if (isValid(style.outerRadius)) {\n this.setAttribute(\n 'outerRadius',\n this._styleConvert<'innerRadius'>(style.outerRadius),\n state,\n level,\n this._cacheStateStyle\n );\n }\n\n const innerPadding = style.innerPadding ?? stateStyle[state]?.innerPadding?.style;\n const outerPadding = style.outerPadding ?? stateStyle[state]?.outerPadding?.style;\n const innerRadius =\n style.innerRadius ?? this._cacheStateStyle[state]?.innerRadius?.style ?? stateStyle[state]?.innerRadius?.style;\n const outerRadius =\n style.outerRadius ?? this._cacheStateStyle[state]?.outerRadius?.style ?? stateStyle[state]?.outerRadius?.style;\n\n if (innerRadius === 0 && outerRadius === 0) {\n return style;\n }\n\n // 情况一:本次改动了 padding\n const paddingModified =\n (isValid(style.innerPadding) && isValid(innerRadius)) || (isValid(style.outerPadding) && isValid(outerRadius));\n\n // 情况二:本次改动了 radius,但是 padding 已经提前设置且不为 0\n const radiusModified = (isValid(style.innerRadius) && innerPadding) || (isValid(style.outerRadius) && outerPadding);\n\n // 如果触发任意一种情况,则重新计算 radius\n if (paddingModified || radiusModified) {\n const newStyle = Object.assign({}, style);\n\n if (innerPadding && isValid(innerRadius)) {\n // 将 innerPadding 应用到 innerRadius\n if (isFunction(innerRadius)) {\n newStyle.innerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const result = innerRadius(item, ctx, opt, source) as number;\n const padding = isFunction(innerPadding)\n ? (innerPadding(item, ctx, opt, source) as number)\n : (innerPadding as number);\n return result + padding;\n };\n } else {\n if (isFunction(innerPadding)) {\n newStyle.innerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const padding = innerPadding(item, ctx, opt, source) as number;\n return (innerRadius as number) + padding;\n };\n } else {\n newStyle.innerRadius = (innerRadius as number) + (innerPadding as number);\n }\n }\n }\n\n if (outerPadding && isValid(outerRadius)) {\n // 将 outerPadding 应用到 outerRadius\n if (isFunction(outerRadius)) {\n newStyle.outerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const result = outerRadius(item, ctx, opt, source) as number;\n const padding = isFunction(outerPadding)\n ? (outerPadding(item, ctx, opt, source) as number)\n : (outerPadding as number);\n return result - padding;\n };\n } else {\n if (isFunction(outerPadding)) {\n newStyle.outerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const padding = outerPadding(item, ctx, opt, source) as number;\n return (outerRadius as number) - padding;\n };\n } else {\n newStyle.outerRadius = (outerRadius as number) - (outerPadding as number);\n }\n }\n }\n\n return newStyle;\n }\n\n return style;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/progress-arc.ts"],"names":[],"mappings":"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","file":"progress-arc.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { isFunction, isValid } from '@visactor/vutils';\nimport type { DataView } from '@visactor/vdataset';\nimport type { StateValueType } from '../typings/spec';\nimport type { ConvertToMarkStyleSpec, IProgressArcMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStateStyle, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { BaseArcMark } from './arc';\nimport type { IAttributeOpt } from '../compile/mark/interface';\nimport { registerVGrammarArcAnimation } from '../animation/config';\nimport { registerArcGraphic } from '@visactor/vgrammar-core';\n\nexport type IProgressArcMark = IMarkRaw<IProgressArcMarkSpec>;\n\nexport class ProgressArcMark extends BaseArcMark<IProgressArcMarkSpec> implements IProgressArcMark {\n static readonly type = MarkTypeEnum.arc;\n static readonly constructorType = MarkTypeEnum.progressArc;\n\n protected _cacheStateStyle: IMarkStateStyle<IProgressArcMarkSpec> = {};\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IProgressArcMarkSpec> = {\n ...super._getDefaultStyle(),\n innerPadding: 0,\n outerPadding: 0\n };\n return defaultStyle;\n }\n\n protected _filterStyle(\n style: Partial<IMarkStyle<IProgressArcMarkSpec>>,\n state: StateValueType,\n level: number,\n stateStyle = this.stateStyle\n ): Partial<ConvertToMarkStyleSpec<IProgressArcMarkSpec>> | Partial<IMarkStyle<IProgressArcMarkSpec>> {\n // 记录 radius 缓存\n if (isValid(style.innerRadius)) {\n this.setAttribute(\n 'innerRadius',\n this._styleConvert<'innerRadius'>(style.innerRadius),\n state,\n level,\n this._cacheStateStyle\n );\n }\n if (isValid(style.outerRadius)) {\n this.setAttribute(\n 'outerRadius',\n this._styleConvert<'innerRadius'>(style.outerRadius),\n state,\n level,\n this._cacheStateStyle\n );\n }\n\n const innerPadding = style.innerPadding ?? stateStyle[state]?.innerPadding?.style;\n const outerPadding = style.outerPadding ?? stateStyle[state]?.outerPadding?.style;\n const innerRadius =\n style.innerRadius ?? this._cacheStateStyle[state]?.innerRadius?.style ?? stateStyle[state]?.innerRadius?.style;\n const outerRadius =\n style.outerRadius ?? this._cacheStateStyle[state]?.outerRadius?.style ?? stateStyle[state]?.outerRadius?.style;\n\n if (innerRadius === 0 && outerRadius === 0) {\n return style;\n }\n\n // 情况一:本次改动了 padding\n const paddingModified =\n (isValid(style.innerPadding) && isValid(innerRadius)) || (isValid(style.outerPadding) && isValid(outerRadius));\n\n // 情况二:本次改动了 radius,但是 padding 已经提前设置且不为 0\n const radiusModified = (isValid(style.innerRadius) && innerPadding) || (isValid(style.outerRadius) && outerPadding);\n\n // 如果触发任意一种情况,则重新计算 radius\n if (paddingModified || radiusModified) {\n const newStyle = Object.assign({}, style);\n\n if (innerPadding && isValid(innerRadius)) {\n // 将 innerPadding 应用到 innerRadius\n if (isFunction(innerRadius)) {\n newStyle.innerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const result = innerRadius(item, ctx, opt, source) as number;\n const padding = isFunction(innerPadding)\n ? (innerPadding(item, ctx, opt, source) as number)\n : (innerPadding as number);\n return result + padding;\n };\n } else {\n if (isFunction(innerPadding)) {\n newStyle.innerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const padding = innerPadding(item, ctx, opt, source) as number;\n return (innerRadius as number) + padding;\n };\n } else {\n newStyle.innerRadius = (innerRadius as number) + (innerPadding as number);\n }\n }\n }\n\n if (outerPadding && isValid(outerRadius)) {\n // 将 outerPadding 应用到 outerRadius\n if (isFunction(outerRadius)) {\n newStyle.outerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const result = outerRadius(item, ctx, opt, source) as number;\n const padding = isFunction(outerPadding)\n ? (outerPadding(item, ctx, opt, source) as number)\n : (outerPadding as number);\n return result - padding;\n };\n } else {\n if (isFunction(outerPadding)) {\n newStyle.outerRadius = (item: any, ctx: any, opt?: IAttributeOpt, source?: DataView) => {\n const padding = outerPadding(item, ctx, opt, source) as number;\n return (outerRadius as number) - padding;\n };\n } else {\n newStyle.outerRadius = (outerRadius as number) - (outerPadding as number);\n }\n }\n }\n\n return newStyle;\n }\n\n return style;\n }\n}\n\nexport const registerProgressArcMark = () => {\n registerArcGraphic();\n registerVGrammarArcAnimation();\n Factory.registerMark(ProgressArcMark.constructorType, ProgressArcMark);\n};\n"]}
@@ -8,3 +8,4 @@ export declare class Rect3dMark extends BaseMark<IRect3dMarkSpec> implements IRe
8
8
  readonly type = MarkTypeEnum.rect3d;
9
9
  protected _getDefaultStyle(): IMarkStyle<IRect3dMarkSpec>;
10
10
  }
11
+ export declare const registerRect3dMark: () => void;
@@ -1,7 +1,13 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
4
6
 
7
+ import { registerRect3dGraphic } from "@visactor/vgrammar-core";
8
+
9
+ import { registerVGrammarRectAnimation } from "../animation/config";
10
+
5
11
  export class Rect3dMark extends BaseMark {
6
12
  constructor() {
7
13
  super(...arguments), this.type = Rect3dMark.type;
@@ -16,4 +22,8 @@ export class Rect3dMark extends BaseMark {
16
22
  }
17
23
 
18
24
  Rect3dMark.type = MarkTypeEnum.rect3d;
25
+
26
+ export const registerRect3dMark = () => {
27
+ Factory.registerMark(Rect3dMark.type, Rect3dMark), registerRect3dGraphic(), registerVGrammarRectAnimation();
28
+ };
19
29
  //# sourceMappingURL=rect-3d.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/rect-3d.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,OAAO,UAAW,SAAQ,QAAyB;IAAzD;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAWlC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXe,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC","file":"rect-3d.js","sourcesContent":["import type { IRect3dMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\n\nexport type IRect3dMark = IMarkRaw<IRect3dMarkSpec>;\n\nexport class Rect3dMark extends BaseMark<IRect3dMarkSpec> implements IRect3dMark {\n static readonly type = MarkTypeEnum.rect3d;\n readonly type = Rect3dMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRect3dMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n length: 3\n };\n return defaultStyle;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/rect-3d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAIpE,MAAM,OAAO,UAAW,SAAQ,QAAyB;IAAzD;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAWlC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXe,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC;AAc7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,qBAAqB,EAAE,CAAC;IACxB,6BAA6B,EAAE,CAAC;AAClC,CAAC,CAAC","file":"rect-3d.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IRect3dMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerRect3dGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarRectAnimation } from '../animation/config';\n\nexport type IRect3dMark = IMarkRaw<IRect3dMarkSpec>;\n\nexport class Rect3dMark extends BaseMark<IRect3dMarkSpec> implements IRect3dMark {\n static readonly type = MarkTypeEnum.rect3d;\n readonly type = Rect3dMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRect3dMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n length: 3\n };\n return defaultStyle;\n }\n}\n\nexport const registerRect3dMark = () => {\n Factory.registerMark(Rect3dMark.type, Rect3dMark);\n registerRect3dGraphic();\n registerVGrammarRectAnimation();\n};\n"]}
@@ -8,3 +8,4 @@ export declare class RectMark extends BaseMark<IRectMarkSpec> implements IRectMa
8
8
  readonly type = MarkTypeEnum.rect;
9
9
  protected _getDefaultStyle(): IMarkStyle<IRectMarkSpec>;
10
10
  }
11
+ export declare const registerRectMark: () => void;
package/esm/mark/rect.js CHANGED
@@ -1,7 +1,13 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
4
6
 
7
+ import { registerRectGraphic } from "@visactor/vgrammar-core";
8
+
9
+ import { registerVGrammarRectAnimation } from "../animation/config";
10
+
5
11
  export class RectMark extends BaseMark {
6
12
  constructor() {
7
13
  super(...arguments), this.type = RectMark.type;
@@ -16,4 +22,8 @@ export class RectMark extends BaseMark {
16
22
  }
17
23
 
18
24
  RectMark.type = MarkTypeEnum.rect;
25
+
26
+ export const registerRectMark = () => {
27
+ Factory.registerMark(RectMark.type, RectMark), registerRectGraphic(), registerVGrammarRectAnimation();
28
+ };
19
29
  //# sourceMappingURL=rect.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/rect.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAWhC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC","file":"rect.js","sourcesContent":["import type { IRectMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\n\nexport type IRectMark = IMarkRaw<IRectMarkSpec>;\n\nexport class RectMark extends BaseMark<IRectMarkSpec> implements IRectMark {\n static readonly type = MarkTypeEnum.rect;\n readonly type = RectMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRectMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/rect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAIpE,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAWhC,CAAC;IATW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AAXe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC;AAc3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,EAAE,CAAC;IACtB,6BAA6B,EAAE,CAAC;AAClC,CAAC,CAAC","file":"rect.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IRectMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerRectGraphic } from '@visactor/vgrammar-core';\nimport { registerVGrammarRectAnimation } from '../animation/config';\n\nexport type IRectMark = IMarkRaw<IRectMarkSpec>;\n\nexport class RectMark extends BaseMark<IRectMarkSpec> implements IRectMark {\n static readonly type = MarkTypeEnum.rect;\n readonly type = RectMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRectMarkSpec> = {\n ...super._getDefaultStyle(),\n width: undefined,\n height: undefined,\n lineWidth: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerRectMark = () => {\n Factory.registerMark(RectMark.type, RectMark);\n registerRectGraphic();\n registerVGrammarRectAnimation();\n};\n"]}
@@ -10,3 +10,4 @@ export declare class RippleMark extends BaseMark<IRippleMarkSpec> implements IRi
10
10
  protected _getDefaultStyle(): IMarkStyle<IRippleMarkSpec>;
11
11
  protected _initProduct(group?: string | IGroupMark): void;
12
12
  }
13
+ export declare const registerRippleMark: () => void;
@@ -1,3 +1,5 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
@@ -16,7 +18,6 @@ export class RippleMark extends BaseMark {
16
18
  });
17
19
  }
18
20
  _initProduct(group) {
19
- registerRippleGlyph();
20
21
  const view = this.getVGrammarView(), id = this.getProductId();
21
22
  this._product = view.glyph("ripplePoint", null != group ? group : view.rootMark).id(id),
22
23
  this._compiledProductId = id;
@@ -24,4 +25,8 @@ export class RippleMark extends BaseMark {
24
25
  }
25
26
 
26
27
  RippleMark.type = MarkTypeEnum.ripple;
28
+
29
+ export const registerRippleMark = () => {
30
+ Factory.registerMark(RippleMark.type, RippleMark), registerRippleGlyph();
31
+ };
27
32
  //# sourceMappingURL=ripple.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/ripple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAM9D,MAAM,OAAO,UAAW,SAAQ,QAAyB;IAAzD;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAuBlC,CAAC;IArBW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,mBAAmB,EAAE,CAAC;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,aAAa,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AAvBe,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC","file":"ripple.js","sourcesContent":["import { BaseMark } from './base/base-mark';\nimport type { IRippleMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerRippleGlyph } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type IRippleMark = IMarkRaw<IRippleMarkSpec>;\n\nexport class RippleMark extends BaseMark<IRippleMarkSpec> implements IRippleMark {\n static readonly type = MarkTypeEnum.ripple;\n readonly type = RippleMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRippleMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n ripple: 0\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n registerRippleGlyph();\n\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n const glyphType = 'ripplePoint';\n this._product = view.glyph(glyphType, group ?? view.rootMark).id(id);\n this._compiledProductId = id;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/ripple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAM9D,MAAM,OAAO,UAAW,SAAQ,QAAyB;IAAzD;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAqBlC,CAAC;IAnBW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,CAAC,GACV,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,aAAa,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AArBe,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC;AAwB7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,mBAAmB,EAAE,CAAC;AACxB,CAAC,CAAC","file":"ripple.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { BaseMark } from './base/base-mark';\nimport type { IRippleMarkSpec } from '../typings/visual';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerRippleGlyph } from '@visactor/vgrammar-core';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type IRippleMark = IMarkRaw<IRippleMarkSpec>;\n\nexport class RippleMark extends BaseMark<IRippleMarkSpec> implements IRippleMark {\n static readonly type = MarkTypeEnum.ripple;\n readonly type = RippleMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRippleMarkSpec> = {\n ...super._getDefaultStyle(),\n x: 0,\n y: 0,\n ripple: 0\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n const glyphType = 'ripplePoint';\n this._product = view.glyph(glyphType, group ?? view.rootMark).id(id);\n this._compiledProductId = id;\n }\n}\n\nexport const registerRippleMark = () => {\n Factory.registerMark(RippleMark.type, RippleMark);\n registerRippleGlyph();\n};\n"]}
@@ -8,3 +8,4 @@ export declare class RuleMark extends BaseMark<IRuleMarkSpec> implements IRuleMa
8
8
  readonly type = MarkTypeEnum.rule;
9
9
  protected _getDefaultStyle(): IMarkStyle<IRuleMarkSpec>;
10
10
  }
11
+ export declare const registerRuleMark: () => void;
package/esm/mark/rule.js CHANGED
@@ -1,7 +1,11 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface/type";
4
6
 
7
+ import { registerRuleGraphic } from "@visactor/vgrammar-core";
8
+
5
9
  export class RuleMark extends BaseMark {
6
10
  constructor() {
7
11
  super(...arguments), this.type = RuleMark.type;
@@ -15,4 +19,8 @@ export class RuleMark extends BaseMark {
15
19
  }
16
20
 
17
21
  RuleMark.type = MarkTypeEnum.rule;
22
+
23
+ export const registerRuleMark = () => {
24
+ Factory.registerMark(RuleMark.type, RuleMark), registerRuleGraphic();
25
+ };
18
26
  //# sourceMappingURL=rule.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/rule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAShC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,GACN,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AATe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC","file":"rule.js","sourcesContent":["import type { IRuleMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\n\nexport type IRuleMark = IMarkRaw<IRuleMarkSpec>;\n\nexport class RuleMark extends BaseMark<IRuleMarkSpec> implements IRuleMark {\n static readonly type = MarkTypeEnum.rule;\n readonly type = RuleMark.type;\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRuleMarkSpec> = {\n ...super._getDefaultStyle(),\n x1: 0,\n y1: 0\n };\n return defaultStyle;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAShC,CAAC;IARW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,GACN,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;;AATe,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC;AAY3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,EAAE,CAAC;AACxB,CAAC,CAAC","file":"rule.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { IRuleMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerRuleGraphic } from '@visactor/vgrammar-core';\n\nexport type IRuleMark = IMarkRaw<IRuleMarkSpec>;\n\nexport class RuleMark extends BaseMark<IRuleMarkSpec> implements IRuleMark {\n static readonly type = MarkTypeEnum.rule;\n readonly type = RuleMark.type;\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<IRuleMarkSpec> = {\n ...super._getDefaultStyle(),\n x1: 0,\n y1: 0\n };\n return defaultStyle;\n }\n}\n\nexport const registerRuleMark = () => {\n Factory.registerMark(RuleMark.type, RuleMark);\n registerRuleGraphic();\n};\n"]}
@@ -10,3 +10,4 @@ export declare class SymbolMark extends BaseSymbolMark<ISymbolMarkSpec> implemen
10
10
  static readonly type = MarkTypeEnum.symbol;
11
11
  readonly type = MarkTypeEnum.symbol;
12
12
  }
13
+ export declare const registerSymbolMark: () => void;
@@ -1,9 +1,13 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { ShapeTypeEnum } from "../typings";
2
4
 
3
5
  import { BaseMark } from "./base/base-mark";
4
6
 
5
7
  import { MarkTypeEnum } from "./interface/type";
6
8
 
9
+ import { registerSymbolGraphic } from "@visactor/vgrammar-core";
10
+
7
11
  export class BaseSymbolMark extends BaseMark {
8
12
  _getDefaultStyle() {
9
13
  return Object.assign(Object.assign({}, super._getDefaultStyle()), {
@@ -22,4 +26,8 @@ export class SymbolMark extends BaseSymbolMark {
22
26
  }
23
27
 
24
28
  SymbolMark.type = MarkTypeEnum.symbol;
29
+
30
+ export const registerSymbolMark = () => {
31
+ Factory.registerMark(SymbolMark.type, SymbolMark), registerSymbolGraphic();
32
+ };
25
33
  //# sourceMappingURL=symbol.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,OAAO,cAA0C,SAAQ,QAAW;IAC9D,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,IAAI,EAAE,CAAC,EACP,UAAU,EAAE,aAAa,CAAC,MAAM,EAChC,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAA6B,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,cAA+B;IAA/D;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAClC,CAAC;;AAFiB,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC","file":"symbol.js","sourcesContent":["import { ShapeTypeEnum } from '../typings';\nimport type { ISymbolMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\n\nexport type ISymbolMark = IMarkRaw<ISymbolMarkSpec>;\n\nexport class BaseSymbolMark<T extends ISymbolMarkSpec> extends BaseMark<T> {\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ISymbolMarkSpec> = {\n ...super._getDefaultStyle(),\n size: 1,\n symbolType: ShapeTypeEnum.circle,\n fill: undefined,\n lineWidth: 0\n };\n return defaultStyle as IMarkStyle<T>;\n }\n}\n\nexport class SymbolMark extends BaseSymbolMark<ISymbolMarkSpec> implements ISymbolMark {\n static readonly type = MarkTypeEnum.symbol;\n readonly type = SymbolMark.type;\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/symbol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAIhE,MAAM,OAAO,cAA0C,SAAQ,QAAW;IAC9D,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAC3B,IAAI,EAAE,CAAC,EACP,UAAU,EAAE,aAAa,CAAC,MAAM,EAChC,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,CAAC,GACb,CAAC;QACF,OAAO,YAA6B,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,cAA+B;IAA/D;;QAEW,SAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAClC,CAAC;;AAFiB,eAAI,GAAG,YAAY,CAAC,MAAM,CAAC;AAI7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClD,qBAAqB,EAAE,CAAC;AAC1B,CAAC,CAAC","file":"symbol.js","sourcesContent":["import { Factory } from './../core/factory';\nimport { ShapeTypeEnum } from '../typings';\nimport type { ISymbolMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface/type';\nimport { registerSymbolGraphic } from '@visactor/vgrammar-core';\n\nexport type ISymbolMark = IMarkRaw<ISymbolMarkSpec>;\n\nexport class BaseSymbolMark<T extends ISymbolMarkSpec> extends BaseMark<T> {\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ISymbolMarkSpec> = {\n ...super._getDefaultStyle(),\n size: 1,\n symbolType: ShapeTypeEnum.circle,\n fill: undefined,\n lineWidth: 0\n };\n return defaultStyle as IMarkStyle<T>;\n }\n}\n\nexport class SymbolMark extends BaseSymbolMark<ISymbolMarkSpec> implements ISymbolMark {\n static readonly type = MarkTypeEnum.symbol;\n readonly type = SymbolMark.type;\n}\n\nexport const registerSymbolMark = () => {\n Factory.registerMark(SymbolMark.type, SymbolMark);\n registerSymbolGraphic();\n};\n"]}
@@ -10,3 +10,4 @@ export declare class TextMark extends BaseMark<ITextMarkSpec> implements ITextMa
10
10
  protected _getDefaultStyle(): IMarkStyle<ITextMarkSpec>;
11
11
  protected _initProduct(group?: string | IGroupMark): void;
12
12
  }
13
+ export declare const registerTextMark: () => void;
package/esm/mark/text.js CHANGED
@@ -1,8 +1,10 @@
1
+ import { Factory } from "./../core/factory";
2
+
1
3
  import { BaseMark } from "./base/base-mark";
2
4
 
3
5
  import { MarkTypeEnum } from "./interface";
4
6
 
5
- import { GrammarMarkType } from "@visactor/vgrammar-core";
7
+ import { GrammarMarkType, registerTextGraphic } from "@visactor/vgrammar-core";
6
8
 
7
9
  export class TextMark extends BaseMark {
8
10
  constructor() {
@@ -24,4 +26,8 @@ export class TextMark extends BaseMark {
24
26
  }
25
27
 
26
28
  TextMark.type = MarkTypeEnum.text;
29
+
30
+ export const registerTextMark = () => {
31
+ Factory.registerMark(TextMark.type, TextMark), registerTextGraphic();
32
+ };
27
33
  //# sourceMappingURL=text.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/mark/text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAK1D,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IA4BhC,CAAC;IA1BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAE3B,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,CAAC,EACZ,UAAU,EAAE,EAAE,GACf,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAE/B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE;YACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAA2B,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACvG;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAuB,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACnG;QAED,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AA5Be,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC","file":"text.js","sourcesContent":["import type { ITextMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle, IMarkOption } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface';\nimport { GrammarMarkType } from '@visactor/vgrammar-core';\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type ITextMark = IMarkRaw<ITextMarkSpec>;\n\nexport class TextMark extends BaseMark<ITextMarkSpec> implements ITextMark {\n static readonly type = MarkTypeEnum.text;\n readonly type = TextMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ITextMarkSpec> = {\n ...super._getDefaultStyle(),\n // TODO: 删除后会有显示问题,待排查\n angle: 0,\n textAlign: 'center',\n lineWidth: 0,\n textConfig: []\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n\n if (this.getStyle('textType') === 'rich') {\n this._product = view.mark(GrammarMarkType.richtext as GrammarMarkType, group ?? view.rootMark).id(id);\n } else {\n this._product = view.mark(GrammarMarkType.text as GrammarMarkType, group ?? view.rootMark).id(id);\n }\n\n this._compiledProductId = id;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/mark/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAK/E,MAAM,OAAO,QAAS,SAAQ,QAAuB;IAArD;;QAEW,SAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IA4BhC,CAAC;IA1BW,gBAAgB;QACxB,MAAM,YAAY,mCACb,KAAK,CAAC,gBAAgB,EAAE,KAE3B,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,CAAC,EACZ,UAAU,EAAE,EAAE,GACf,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,YAAY,CAAC,KAA2B;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAGpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAE/B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE;YACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAA2B,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACvG;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAuB,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SACnG;QAED,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;;AA5Be,aAAI,GAAG,YAAY,CAAC,IAAI,CAAC;AA+B3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,EAAE,CAAC;AACxB,CAAC,CAAC","file":"text.js","sourcesContent":["import { Factory } from './../core/factory';\nimport type { ITextMarkSpec } from '../typings/visual';\nimport { BaseMark } from './base/base-mark';\nimport type { IMarkRaw, IMarkStyle } from './interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from './interface';\nimport { GrammarMarkType, registerTextGraphic } from '@visactor/vgrammar-core';\nimport type { IGroupMark } from '@visactor/vgrammar-core';\n\nexport type ITextMark = IMarkRaw<ITextMarkSpec>;\n\nexport class TextMark extends BaseMark<ITextMarkSpec> implements ITextMark {\n static readonly type = MarkTypeEnum.text;\n readonly type = TextMark.type;\n\n protected _getDefaultStyle() {\n const defaultStyle: IMarkStyle<ITextMarkSpec> = {\n ...super._getDefaultStyle(),\n // TODO: 删除后会有显示问题,待排查\n angle: 0,\n textAlign: 'center',\n lineWidth: 0,\n textConfig: []\n };\n return defaultStyle;\n }\n\n protected _initProduct(group?: string | IGroupMark) {\n const view = this.getVGrammarView();\n\n // 声明语法元素\n const id = this.getProductId();\n\n if (this.getStyle('textType') === 'rich') {\n this._product = view.mark(GrammarMarkType.richtext as GrammarMarkType, group ?? view.rootMark).id(id);\n } else {\n this._product = view.mark(GrammarMarkType.text as GrammarMarkType, group ?? view.rootMark).id(id);\n }\n\n this._compiledProductId = id;\n }\n}\n\nexport const registerTextMark = () => {\n Factory.registerMark(TextMark.type, TextMark);\n registerTextGraphic();\n};\n"]}
@@ -68,9 +68,7 @@ export declare abstract class BaseModel<T extends IModelSpec> extends Compilable
68
68
  protected _initTheme(theme?: any): void;
69
69
  protected _getTheme(): any;
70
70
  protected _mergeThemeToSpec(): void;
71
- protected _getDefaultSpecFromChart(chartSpec: any): Partial<T>;
72
71
  protected _shouldMergeThemeToSpec(): boolean;
73
- protected _prepareSpecBeforeMergingTheme(obj?: any): any;
74
72
  setCurrentTheme(): void;
75
73
  updateLayoutAttribute(): void;
76
74
  setAttrFromSpec(): void;
@@ -114,19 +114,13 @@ export class BaseModel extends CompilableBase {
114
114
  _getTheme() {}
115
115
  _mergeThemeToSpec() {
116
116
  if (this._shouldMergeThemeToSpec()) {
117
- const specFromChart = this._getDefaultSpecFromChart(this.getChart().getSpec()), merge = originalSpec => mergeSpec({}, this._theme, this._prepareSpecBeforeMergingTheme(specFromChart), this._prepareSpecBeforeMergingTheme(originalSpec)), baseSpec = this._originalSpec;
117
+ const merge = originalSpec => mergeSpec({}, this._theme, originalSpec), baseSpec = this._originalSpec;
118
118
  isArray(baseSpec) ? this._spec = baseSpec.map((spec => merge(spec))) : this._spec = merge(baseSpec);
119
119
  }
120
120
  }
121
- _getDefaultSpecFromChart(chartSpec) {
122
- return {};
123
- }
124
121
  _shouldMergeThemeToSpec() {
125
122
  return !0;
126
123
  }
127
- _prepareSpecBeforeMergingTheme(obj) {
128
- return obj;
129
- }
130
124
  setCurrentTheme() {
131
125
  this.reInit(this._getTheme());
132
126
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/model/base-model.ts"],"names":[],"mappings":"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","file":"base-model.js","sourcesContent":["import { cloneDeepSpec } from '../util/spec/clone-deep';\nimport { createID } from '../util/id';\nimport { mergeSpec } from '../util/spec/merge-spec';\nimport { Event } from '../event/event';\nimport type { IEvent } from '../event/interface';\nimport type {\n IEffect,\n IModel,\n IModelInitOption,\n IModelOption,\n IModelRenderOption,\n IModelEvaluateOption,\n IModelSpec,\n IModelMarkInfo\n} from './interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IMark, IMarkOption, IMarkRaw, IMarkStyle, MarkTypeEnum } from '../mark/interface';\nimport type {\n Datum,\n StateValueType,\n ConvertToMarkStyleSpec,\n ICommonSpec,\n StringOrNumber,\n IRect,\n ILayoutRect\n} from '../typings';\nimport type { CompilableData } from '../compile/data/compilable-data';\nimport type { IGroupMark } from '@visactor/vgrammar-core';\nimport { isArray, isValid } from '@visactor/vutils';\nimport { Factory } from '../core/factory';\nimport { MarkSet } from '../mark/mark-set';\nimport type { ILayoutItem } from '../layout/interface';\nimport { CompilableBase } from '../compile/compilable-base';\nimport { PREFIX } from '../constant/base';\n\nexport abstract class BaseModel<T extends IModelSpec> extends CompilableBase implements IModel {\n protected _spec: T;\n getSpec(): T {\n return this._spec || ({} as T);\n }\n\n readonly type: string = 'null';\n readonly modelType: string = 'null';\n\n readonly id;\n\n userId: StringOrNumber | undefined = undefined;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // 数据\n protected _data: CompilableData = null;\n getData() {\n return this._data;\n }\n\n // 布局\n protected _layout?: ILayoutItem = null;\n get layout() {\n return this._layout;\n }\n\n protected _specIndex: number = 0;\n getSpecIndex() {\n return this._specIndex;\n }\n\n readonly specKey: string = '';\n\n protected _originalSpec: any;\n\n protected declare _option: IModelOption;\n getOption() {\n return this._option;\n }\n\n protected _marks: MarkSet = new MarkSet();\n getMarks(): IMark[] {\n return this._marks?.getMarks() ?? [];\n }\n getMarkNameMap() {\n return this._marks?.getMarkNameMap();\n }\n getMarkSet() {\n return this._marks;\n }\n getMarkInfoList(): IModelMarkInfo[] {\n return this.getMarks().map(mark => ({\n type: mark.type as MarkTypeEnum,\n name: mark.name\n }));\n }\n\n getChart() {\n return this._option.getChart();\n }\n\n protected _theme?: any; // 非全局 theme,是对应于具体 model 的 theme 对象\n\n /** for layout diff */\n protected _lastLayoutRect: ILayoutRect = null;\n\n constructor(spec: T, option: IModelOption) {\n super(option);\n this.id = createID();\n this._originalSpec = spec;\n this._initTheme();\n this._transformSpec();\n this.userId = spec.id;\n this._specIndex = option.specIndex ?? 0;\n this.effect = {};\n this.event = new Event(option.eventDispatcher, option.mode);\n option.map?.set(this.id, this);\n }\n coordinate?: CoordinateType;\n\n protected _releaseEvent() {\n this.event.release();\n }\n\n created() {\n this.setAttrFromSpec();\n }\n\n init(option: IModelInitOption) {\n // do nothing\n }\n\n afterInit() {\n // do nothing\n }\n\n getVisible() {\n return (this._spec as unknown as any)?.visible !== false;\n }\n\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, ctx: any): void {\n // do nothing\n this._layout?.onLayoutStart(layoutRect, viewRect, ctx);\n }\n onLayoutEnd(ctx: any): void {\n this._layout?.onLayoutEnd(ctx);\n this.getMarks().forEach(m => m.updateLayoutState(true, true));\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption) {\n // do nothing\n }\n abstract onRender(ctx: IModelRenderOption): void;\n\n onDataUpdate() {\n // do nothing\n }\n\n beforeRelease() {\n // do nothing\n }\n\n release() {\n this._releaseEvent();\n this._originalSpec = {};\n this._spec = undefined;\n this.getMarks().forEach(m => m.release());\n this._data?.release();\n this._data = this._specIndex = null;\n this._marks.clear();\n super.release();\n }\n\n updateSpec(spec: any) {\n this._spec = cloneDeepSpec(spec);\n const result = this._compareSpec();\n this._originalSpec = spec;\n if (!result.reMake) {\n this.reInit();\n }\n return result;\n }\n\n protected _transformSpec() {\n // do nothing\n // change spec by default logic\n }\n\n protected _compareSpec() {\n const result = {\n change: false,\n reMake: false,\n reRender: false,\n reSize: false,\n reCompile: false\n };\n return result;\n }\n\n reInit(theme?: any) {\n // before reInit reset this._spec to original\n this._spec = cloneDeepSpec(this._originalSpec);\n this._transformSpec();\n this._initTheme(theme);\n this.setAttrFromSpec();\n }\n\n protected _initTheme(theme?: any) {\n // if (this.getVisible() === false) {\n // // 不展示不需要处理主题\n // return;\n // }\n if (theme) {\n this._theme = theme;\n } else {\n this._theme = this._getTheme();\n }\n\n this._mergeThemeToSpec();\n }\n\n protected _getTheme(): any {\n return undefined;\n }\n\n /** 将 theme merge 到 spec 中 */\n protected _mergeThemeToSpec() {\n if (this._shouldMergeThemeToSpec()) {\n const specFromChart = this._getDefaultSpecFromChart(this.getChart().getSpec());\n\n // this._originalSpec + specFromChart + this._theme = this._spec\n const merge = (originalSpec: any) =>\n mergeSpec(\n {},\n this._theme,\n this._prepareSpecBeforeMergingTheme(specFromChart),\n this._prepareSpecBeforeMergingTheme(originalSpec)\n );\n\n const baseSpec = this._originalSpec;\n if (isArray(baseSpec)) {\n this._spec = baseSpec.map(spec => merge(spec)) as unknown as T;\n } else {\n this._spec = merge(baseSpec);\n }\n }\n }\n\n /** 从 chart spec 提取配置作为 model 的默认 spec 配置 */\n protected _getDefaultSpecFromChart(chartSpec: any): Partial<T> {\n return {};\n }\n\n /** 是否在初始化时将 theme 自动 merge 到 spec */\n protected _shouldMergeThemeToSpec(): boolean {\n return true;\n }\n\n /** 在 merge 主题前对 spec 进行预处理 */\n protected _prepareSpecBeforeMergingTheme(obj?: any): any {\n // do nothing\n return obj;\n }\n\n setCurrentTheme() {\n // 重新初始化\n this.reInit(this._getTheme());\n }\n\n updateLayoutAttribute() {\n // do nothing\n }\n\n setAttrFromSpec() {\n this._layout?.setAttrFromSpec(this._spec, this._option.getChartViewRect());\n }\n\n /** mark style 内部转换逻辑,override 使用 */\n protected _convertMarkStyle<T extends ICommonSpec = ICommonSpec>(\n style: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>\n ): Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>> {\n const newStyle: any = { ...style };\n return newStyle;\n }\n\n setMarkStyle<T extends ICommonSpec>(\n mark: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) {\n if (!isValid(mark) || !isValid(style)) {\n return;\n }\n mark.setStyle(this._convertMarkStyle(style), state, level);\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any, key?: string) {\n if (!isValid(mark) || !isValid(spec)) {\n return;\n }\n const { style, state } = spec;\n const newSpec = { ...spec };\n\n if (style) {\n newSpec.style = this._convertMarkStyle(style);\n }\n if (state) {\n newSpec.state = {};\n Object.keys(state).forEach(key => {\n newSpec.state[key] = this._convertMarkStyle(state[key]);\n });\n }\n mark.initStyleWithSpec(newSpec, key);\n }\n\n protected stateKeyToSignalName(key: string, opt?: string) {\n let name = `${PREFIX}_${this.modelType}_${this.type}_${this.id}_${key}`;\n opt && (name += `_${opt}`);\n return name;\n }\n\n compileData() {\n this._data?.compile();\n }\n\n compileMarks(group?: string | IGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n });\n }\n\n protected _createMark<T extends IMark>(markInfo: IModelMarkInfo, option: Partial<IMarkOption> = {}): T {\n const { type, name } = markInfo;\n const m = Factory.createMark(type as any, name, {\n model: this,\n map: this._option.map,\n getCompiler: this.getCompiler,\n globalScale: this._option.globalScale,\n ...option\n }) as T;\n m?.created();\n return m;\n }\n\n /**\n * 数据唯一ID\n * 根据自身动画数据匹配需求设置返回值。\n * 默认返回 undefined 时,根据 VGrammar 默认数据 ID 进行索引和匹配。\n */\n protected _getDataIdKey(): string | ((datum: Datum) => string) | undefined {\n return undefined;\n }\n\n getColorScheme() {\n return this._option.getTheme?.().colorScheme;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/model/base-model.ts"],"names":[],"mappings":"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","file":"base-model.js","sourcesContent":["import { cloneDeepSpec } from '../util/spec/clone-deep';\nimport { createID } from '../util/id';\nimport { mergeSpec } from '../util/spec/merge-spec';\nimport { Event } from '../event/event';\nimport type { IEvent } from '../event/interface';\nimport type {\n IEffect,\n IModel,\n IModelInitOption,\n IModelOption,\n IModelRenderOption,\n IModelEvaluateOption,\n IModelSpec,\n IModelMarkInfo\n} from './interface';\nimport type { CoordinateType } from '../typings/coordinate';\nimport type { IMark, IMarkOption, IMarkRaw, IMarkStyle, MarkTypeEnum } from '../mark/interface';\nimport type {\n Datum,\n StateValueType,\n ConvertToMarkStyleSpec,\n ICommonSpec,\n StringOrNumber,\n IRect,\n ILayoutRect\n} from '../typings';\nimport type { CompilableData } from '../compile/data/compilable-data';\nimport type { IGroupMark } from '@visactor/vgrammar-core';\nimport { isArray, isValid } from '@visactor/vutils';\nimport { Factory } from '../core/factory';\nimport { MarkSet } from '../mark/mark-set';\nimport type { ILayoutItem } from '../layout/interface';\nimport { CompilableBase } from '../compile/compilable-base';\nimport { PREFIX } from '../constant/base';\n\nexport abstract class BaseModel<T extends IModelSpec> extends CompilableBase implements IModel {\n protected _spec: T;\n getSpec(): T {\n return this._spec || ({} as T);\n }\n\n readonly type: string = 'null';\n readonly modelType: string = 'null';\n\n readonly id;\n\n userId: StringOrNumber | undefined = undefined;\n\n // 事件\n readonly event: IEvent;\n\n // 副作用\n readonly effect: IEffect;\n\n // 数据\n protected _data: CompilableData = null;\n getData() {\n return this._data;\n }\n\n // 布局\n protected _layout?: ILayoutItem = null;\n get layout() {\n return this._layout;\n }\n\n protected _specIndex: number = 0;\n getSpecIndex() {\n return this._specIndex;\n }\n\n readonly specKey: string = '';\n\n protected _originalSpec: any;\n\n protected declare _option: IModelOption;\n getOption() {\n return this._option;\n }\n\n protected _marks: MarkSet = new MarkSet();\n getMarks(): IMark[] {\n return this._marks?.getMarks() ?? [];\n }\n getMarkNameMap() {\n return this._marks?.getMarkNameMap();\n }\n getMarkSet() {\n return this._marks;\n }\n getMarkInfoList(): IModelMarkInfo[] {\n return this.getMarks().map(mark => ({\n type: mark.type as MarkTypeEnum,\n name: mark.name\n }));\n }\n\n getChart() {\n return this._option.getChart();\n }\n\n protected _theme?: any; // 非全局 theme,是对应于具体 model 的 theme 对象\n\n /** for layout diff */\n protected _lastLayoutRect: ILayoutRect = null;\n\n constructor(spec: T, option: IModelOption) {\n super(option);\n this.id = createID();\n this._originalSpec = spec;\n this._initTheme();\n this._transformSpec();\n this.userId = spec.id;\n this._specIndex = option.specIndex ?? 0;\n this.effect = {};\n this.event = new Event(option.eventDispatcher, option.mode);\n option.map?.set(this.id, this);\n }\n coordinate?: CoordinateType;\n\n protected _releaseEvent() {\n this.event.release();\n }\n\n created() {\n this.setAttrFromSpec();\n }\n\n init(option: IModelInitOption) {\n // do nothing\n }\n\n afterInit() {\n // do nothing\n }\n\n getVisible() {\n return (this._spec as unknown as any)?.visible !== false;\n }\n\n onLayoutStart(layoutRect: IRect, viewRect: ILayoutRect, ctx: any): void {\n // do nothing\n this._layout?.onLayoutStart(layoutRect, viewRect, ctx);\n }\n onLayoutEnd(ctx: any): void {\n this._layout?.onLayoutEnd(ctx);\n this.getMarks().forEach(m => m.updateLayoutState(true, true));\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption) {\n // do nothing\n }\n abstract onRender(ctx: IModelRenderOption): void;\n\n onDataUpdate() {\n // do nothing\n }\n\n beforeRelease() {\n // do nothing\n }\n\n release() {\n this._releaseEvent();\n this._originalSpec = {};\n this._spec = undefined;\n this.getMarks().forEach(m => m.release());\n this._data?.release();\n this._data = this._specIndex = null;\n this._marks.clear();\n super.release();\n }\n\n updateSpec(spec: any) {\n this._spec = cloneDeepSpec(spec);\n const result = this._compareSpec();\n this._originalSpec = spec;\n if (!result.reMake) {\n this.reInit();\n }\n return result;\n }\n\n protected _transformSpec() {\n // do nothing\n // change spec by default logic\n }\n\n protected _compareSpec() {\n const result = {\n change: false,\n reMake: false,\n reRender: false,\n reSize: false,\n reCompile: false\n };\n return result;\n }\n\n reInit(theme?: any) {\n // before reInit reset this._spec to original\n this._spec = cloneDeepSpec(this._originalSpec);\n this._transformSpec();\n this._initTheme(theme);\n this.setAttrFromSpec();\n }\n\n protected _initTheme(theme?: any) {\n // if (this.getVisible() === false) {\n // // 不展示不需要处理主题\n // return;\n // }\n if (theme) {\n this._theme = theme;\n } else {\n this._theme = this._getTheme();\n }\n\n this._mergeThemeToSpec();\n }\n\n protected _getTheme(): any {\n return undefined;\n }\n\n /** 将 theme merge 到 spec 中 */\n protected _mergeThemeToSpec() {\n if (this._shouldMergeThemeToSpec()) {\n // this._originalSpec + this._theme = this._spec\n const merge = (originalSpec: any) => mergeSpec({}, this._theme, originalSpec);\n\n const baseSpec = this._originalSpec;\n if (isArray(baseSpec)) {\n this._spec = baseSpec.map(spec => merge(spec)) as unknown as T;\n } else {\n this._spec = merge(baseSpec);\n }\n }\n }\n\n /** 是否在初始化时将 theme 自动 merge 到 spec */\n protected _shouldMergeThemeToSpec(): boolean {\n return true;\n }\n\n setCurrentTheme() {\n // 重新初始化\n this.reInit(this._getTheme());\n }\n\n updateLayoutAttribute() {\n // do nothing\n }\n\n setAttrFromSpec() {\n this._layout?.setAttrFromSpec(this._spec, this._option.getChartViewRect());\n }\n\n /** mark style 内部转换逻辑,override 使用 */\n protected _convertMarkStyle<T extends ICommonSpec = ICommonSpec>(\n style: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>\n ): Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>> {\n const newStyle: any = { ...style };\n return newStyle;\n }\n\n setMarkStyle<T extends ICommonSpec>(\n mark: IMarkRaw<T>,\n style?: Partial<IMarkStyle<T> | ConvertToMarkStyleSpec<T>>,\n state?: StateValueType,\n level?: number\n ) {\n if (!isValid(mark) || !isValid(style)) {\n return;\n }\n mark.setStyle(this._convertMarkStyle(style), state, level);\n }\n\n initMarkStyleWithSpec(mark?: IMark, spec?: any, key?: string) {\n if (!isValid(mark) || !isValid(spec)) {\n return;\n }\n const { style, state } = spec;\n const newSpec = { ...spec };\n\n if (style) {\n newSpec.style = this._convertMarkStyle(style);\n }\n if (state) {\n newSpec.state = {};\n Object.keys(state).forEach(key => {\n newSpec.state[key] = this._convertMarkStyle(state[key]);\n });\n }\n mark.initStyleWithSpec(newSpec, key);\n }\n\n protected stateKeyToSignalName(key: string, opt?: string) {\n let name = `${PREFIX}_${this.modelType}_${this.type}_${this.id}_${key}`;\n opt && (name += `_${opt}`);\n return name;\n }\n\n compileData() {\n this._data?.compile();\n }\n\n compileMarks(group?: string | IGroupMark) {\n this.getMarks().forEach(m => {\n m.compile({ group });\n });\n }\n\n protected _createMark<T extends IMark>(markInfo: IModelMarkInfo, option: Partial<IMarkOption> = {}): T {\n const { type, name } = markInfo;\n const m = Factory.createMark(type as any, name, {\n model: this,\n map: this._option.map,\n getCompiler: this.getCompiler,\n globalScale: this._option.globalScale,\n ...option\n }) as T;\n m?.created();\n return m;\n }\n\n /**\n * 数据唯一ID\n * 根据自身动画数据匹配需求设置返回值。\n * 默认返回 undefined 时,根据 VGrammar 默认数据 ID 进行索引和匹配。\n */\n protected _getDataIdKey(): string | ((datum: Datum) => string) | undefined {\n return undefined;\n }\n\n getColorScheme() {\n return this._option.getTheme?.().colorScheme;\n }\n}\n"]}
@@ -20,13 +20,11 @@ import { animationConfig, userAnimationConfig } from "../../animation/utils";
20
20
 
21
21
  import { DEFAULT_SMOOTH_INTERPOLATE } from "../../typings/interpolate";
22
22
 
23
- import { LineMark } from "../../mark/line";
23
+ import { registerLineMark } from "../../mark/line";
24
24
 
25
- import { AreaMark } from "../../mark/area";
25
+ import { registerAreaMark } from "../../mark/area";
26
26
 
27
- import { TextMark } from "../../mark/text";
28
-
29
- import { SymbolMark } from "../../mark/symbol";
27
+ import { registerSymbolMark } from "../../mark/symbol";
30
28
 
31
29
  import { AreaSeriesTooltipHelper } from "./tooltip-helpter";
32
30
 
@@ -151,9 +149,7 @@ export class AreaSeries extends CartesianSeries {
151
149
  AreaSeries.type = SeriesTypeEnum.area, AreaSeries.mark = areaSeriesMark, mixin(AreaSeries, LineLikeSeriesMixin);
152
150
 
153
151
  export const registerAreaSeries = () => {
154
- registerSampleTransform(), registerMarkOverlapTransform(), Factory.registerMark(LineMark.type, LineMark),
155
- Factory.registerMark(AreaMark.type, AreaMark), Factory.registerMark(TextMark.type, TextMark),
156
- Factory.registerMark(SymbolMark.type, SymbolMark), Factory.registerSeries(AreaSeries.type, AreaSeries),
157
- registerAreaAnimation();
152
+ registerSampleTransform(), registerMarkOverlapTransform(), registerLineMark(), registerAreaMark(),
153
+ registerSymbolMark(), registerAreaAnimation(), Factory.registerSeries(AreaSeries.type, AreaSeries);
158
154
  };
159
155
  //# sourceMappingURL=area.js.map