@visactor/vchart 1.8.8-alpha.1 → 1.8.9

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 (415) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.js +1068 -756
  3. package/build/index.min.js +1 -1
  4. package/build/tsconfig.tsbuildinfo +1 -1
  5. package/cjs/animation/config.js +1 -1
  6. package/cjs/animation/config.js.map +1 -1
  7. package/cjs/compile/interface/compiler.d.ts +2 -0
  8. package/cjs/compile/interface/compiler.js.map +1 -1
  9. package/cjs/component/axis/base-axis.d.ts +2 -1
  10. package/cjs/component/axis/base-axis.js +11 -1
  11. package/cjs/component/axis/base-axis.js.map +1 -1
  12. package/cjs/component/axis/cartesian/axis.d.ts +1 -1
  13. package/cjs/component/axis/cartesian/axis.js +6 -6
  14. package/cjs/component/axis/cartesian/axis.js.map +1 -1
  15. package/cjs/component/axis/mixin/band-axis-mixin.d.ts +6 -1
  16. package/cjs/component/axis/mixin/band-axis-mixin.js +17 -1
  17. package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
  18. package/cjs/component/axis/mixin/linear-axis-mixin.d.ts +9 -1
  19. package/cjs/component/axis/mixin/linear-axis-mixin.js +18 -5
  20. package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  21. package/cjs/component/axis/polar/axis.d.ts +1 -1
  22. package/cjs/component/axis/polar/axis.js +4 -4
  23. package/cjs/component/axis/polar/axis.js.map +1 -1
  24. package/cjs/component/brush/brush.js +3 -3
  25. package/cjs/component/brush/brush.js.map +1 -1
  26. package/cjs/component/crosshair/base.js +5 -4
  27. package/cjs/component/crosshair/base.js.map +1 -1
  28. package/cjs/component/crosshair/cartesian.js +20 -17
  29. package/cjs/component/crosshair/cartesian.js.map +1 -1
  30. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -1
  31. package/cjs/component/data-zoom/data-filter-base-component.js +6 -3
  32. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  33. package/cjs/component/geo/geo-coordinate.d.ts +1 -0
  34. package/cjs/component/geo/geo-coordinate.js +7 -6
  35. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  36. package/cjs/component/indicator/indicator.js +2 -2
  37. package/cjs/component/indicator/indicator.js.map +1 -1
  38. package/cjs/component/label/label.js +3 -3
  39. package/cjs/component/label/label.js.map +1 -1
  40. package/cjs/component/label/total-label.js +3 -3
  41. package/cjs/component/label/total-label.js.map +1 -1
  42. package/cjs/component/label/util.js.map +1 -1
  43. package/cjs/component/legend/base-legend.d.ts +1 -1
  44. package/cjs/component/legend/util.d.ts +1 -1
  45. package/cjs/component/map-label/component.js +1 -1
  46. package/cjs/component/map-label/component.js.map +1 -1
  47. package/cjs/component/marker/mark-line/mark-line.js +3 -3
  48. package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
  49. package/cjs/component/marker/utils.js +6 -6
  50. package/cjs/component/marker/utils.js.map +1 -1
  51. package/cjs/component/player/player.js +2 -1
  52. package/cjs/component/player/player.js.map +1 -1
  53. package/cjs/component/tooltip/utils/show-tooltip.js +1 -1
  54. package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
  55. package/cjs/constant/event.js +2 -1
  56. package/cjs/constant/scroll-bar.js +1 -2
  57. package/cjs/core/index.d.ts +1 -1
  58. package/cjs/core/index.js +1 -1
  59. package/cjs/core/index.js.map +1 -1
  60. package/cjs/core/vchart.js +1 -1
  61. package/cjs/core/vchart.js.map +1 -1
  62. package/cjs/env/env.js +1 -1
  63. package/cjs/env/index.js +1 -1
  64. package/cjs/event/event-dispatcher.js +4 -6
  65. package/cjs/event/event-dispatcher.js.map +1 -1
  66. package/cjs/event/event.js +1 -1
  67. package/cjs/event/index.js +1 -1
  68. package/cjs/event/interface.js +1 -1
  69. package/cjs/interaction/interface.js +2 -1
  70. package/cjs/interaction/trigger.js +1 -1
  71. package/cjs/interaction/zoom/zoomable.js +9 -9
  72. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  73. package/cjs/layout/base-layout.d.ts +46 -2
  74. package/cjs/layout/base-layout.js +194 -36
  75. package/cjs/layout/base-layout.js.map +1 -1
  76. package/cjs/layout/index.js +1 -1
  77. package/cjs/layout/interface.d.ts +3 -3
  78. package/cjs/layout/interface.js +1 -1
  79. package/cjs/layout/interface.js.map +1 -1
  80. package/cjs/layout/layout-item.d.ts +3 -6
  81. package/cjs/layout/layout-item.js +7 -26
  82. package/cjs/layout/layout-item.js.map +1 -1
  83. package/cjs/layout/layout3d/index.d.ts +1 -8
  84. package/cjs/layout/layout3d/index.js +10 -69
  85. package/cjs/layout/layout3d/index.js.map +1 -1
  86. package/cjs/layout/util.js +91 -119
  87. package/cjs/layout/util.js.map +1 -1
  88. package/cjs/model/base-model-transformer.d.ts +2 -1
  89. package/cjs/model/base-model-transformer.js +6 -2
  90. package/cjs/model/base-model-transformer.js.map +1 -1
  91. package/cjs/model/interface.d.ts +0 -2
  92. package/cjs/model/interface.js.map +1 -1
  93. package/cjs/model/layout-model.d.ts +0 -8
  94. package/cjs/model/layout-model.js +0 -15
  95. package/cjs/model/layout-model.js.map +1 -1
  96. package/cjs/series/area/area-transformer.d.ts +2 -0
  97. package/cjs/series/area/area-transformer.js +18 -1
  98. package/cjs/series/area/area-transformer.js.map +1 -1
  99. package/cjs/series/area/area.d.ts +0 -1
  100. package/cjs/series/area/area.js +1 -17
  101. package/cjs/series/area/area.js.map +1 -1
  102. package/cjs/series/bar/bar.js +1 -1
  103. package/cjs/series/bar/bar.js.map +1 -1
  104. package/cjs/series/base/base-series-transformer.js +1 -2
  105. package/cjs/series/base/base-series-transformer.js.map +1 -1
  106. package/cjs/series/base/base-series.js +14 -13
  107. package/cjs/series/base/base-series.js.map +1 -1
  108. package/cjs/series/cartesian/cartesian.js +4 -3
  109. package/cjs/series/cartesian/cartesian.js.map +1 -1
  110. package/cjs/series/correlation/correlation.js +1 -1
  111. package/cjs/series/correlation/correlation.js.map +1 -1
  112. package/cjs/series/mixin/line-mixin.js +1 -1
  113. package/cjs/series/mixin/line-mixin.js.map +1 -1
  114. package/cjs/series/pie/3d/pie-3d.js +1 -1
  115. package/cjs/series/pie/3d/pie-3d.js.map +1 -1
  116. package/cjs/series/pie/pie.js +7 -7
  117. package/cjs/series/pie/pie.js.map +1 -1
  118. package/cjs/series/polar/polar.js +1 -1
  119. package/cjs/series/polar/polar.js.map +1 -1
  120. package/cjs/series/radar/animation.js +1 -1
  121. package/cjs/series/radar/animation.js.map +1 -1
  122. package/cjs/series/sankey/sankey.js +1 -1
  123. package/cjs/series/sankey/sankey.js.map +1 -1
  124. package/cjs/series/sunburst/sunburst.js +2 -2
  125. package/cjs/series/sunburst/sunburst.js.map +1 -1
  126. package/cjs/series/word-cloud/base.js +3 -3
  127. package/cjs/series/word-cloud/base.js.map +1 -1
  128. package/cjs/theme/builtin/index.js +3 -1
  129. package/cjs/theme/builtin/index.js.map +1 -1
  130. package/cjs/typings/layout.d.ts +2 -1
  131. package/cjs/typings/layout.js.map +1 -1
  132. package/esm/animation/config.js +1 -1
  133. package/esm/animation/config.js.map +1 -1
  134. package/esm/compile/interface/compiler.d.ts +2 -0
  135. package/esm/compile/interface/compiler.js.map +1 -1
  136. package/esm/component/axis/base-axis.d.ts +2 -1
  137. package/esm/component/axis/base-axis.js +11 -1
  138. package/esm/component/axis/base-axis.js.map +1 -1
  139. package/esm/component/axis/cartesian/axis.d.ts +1 -1
  140. package/esm/component/axis/cartesian/axis.js +5 -5
  141. package/esm/component/axis/cartesian/axis.js.map +1 -1
  142. package/esm/component/axis/mixin/band-axis-mixin.d.ts +6 -1
  143. package/esm/component/axis/mixin/band-axis-mixin.js +17 -1
  144. package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
  145. package/esm/component/axis/mixin/linear-axis-mixin.d.ts +9 -1
  146. package/esm/component/axis/mixin/linear-axis-mixin.js +19 -5
  147. package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
  148. package/esm/component/axis/polar/axis.d.ts +1 -1
  149. package/esm/component/axis/polar/axis.js +4 -4
  150. package/esm/component/axis/polar/axis.js.map +1 -1
  151. package/esm/component/brush/brush.js +3 -3
  152. package/esm/component/brush/brush.js.map +1 -1
  153. package/esm/component/crosshair/base.js +5 -4
  154. package/esm/component/crosshair/base.js.map +1 -1
  155. package/esm/component/crosshair/cartesian.js +20 -17
  156. package/esm/component/crosshair/cartesian.js.map +1 -1
  157. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -1
  158. package/esm/component/data-zoom/data-filter-base-component.js +6 -4
  159. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  160. package/esm/component/geo/geo-coordinate.d.ts +1 -0
  161. package/esm/component/geo/geo-coordinate.js +7 -6
  162. package/esm/component/geo/geo-coordinate.js.map +1 -1
  163. package/esm/component/indicator/indicator.js +2 -2
  164. package/esm/component/indicator/indicator.js.map +1 -1
  165. package/esm/component/label/label.js +3 -3
  166. package/esm/component/label/label.js.map +1 -1
  167. package/esm/component/label/total-label.js +3 -3
  168. package/esm/component/label/total-label.js.map +1 -1
  169. package/esm/component/label/util.js.map +1 -1
  170. package/esm/component/legend/base-legend.d.ts +1 -1
  171. package/esm/component/legend/util.d.ts +1 -1
  172. package/esm/component/map-label/component.js +1 -1
  173. package/esm/component/map-label/component.js.map +1 -1
  174. package/esm/component/marker/mark-line/mark-line.js +3 -3
  175. package/esm/component/marker/mark-line/mark-line.js.map +1 -1
  176. package/esm/component/marker/utils.js +6 -6
  177. package/esm/component/marker/utils.js.map +1 -1
  178. package/esm/component/player/player.js +2 -1
  179. package/esm/component/player/player.js.map +1 -1
  180. package/esm/component/tooltip/utils/show-tooltip.js +1 -1
  181. package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
  182. package/esm/constant/event.js +2 -1
  183. package/esm/constant/scroll-bar.js +1 -2
  184. package/esm/core/index.d.ts +1 -1
  185. package/esm/core/index.js +1 -1
  186. package/esm/core/index.js.map +1 -1
  187. package/esm/core/vchart.js +1 -1
  188. package/esm/core/vchart.js.map +1 -1
  189. package/esm/env/env.js +1 -1
  190. package/esm/env/index.js +1 -1
  191. package/esm/event/event-dispatcher.js +4 -6
  192. package/esm/event/event-dispatcher.js.map +1 -1
  193. package/esm/event/event.js +1 -1
  194. package/esm/event/index.js +1 -1
  195. package/esm/event/interface.js +1 -1
  196. package/esm/interaction/interface.js +2 -1
  197. package/esm/interaction/trigger.js +1 -1
  198. package/esm/interaction/zoom/zoomable.js +8 -9
  199. package/esm/interaction/zoom/zoomable.js.map +1 -1
  200. package/esm/layout/base-layout.d.ts +46 -2
  201. package/esm/layout/base-layout.js +192 -36
  202. package/esm/layout/base-layout.js.map +1 -1
  203. package/esm/layout/index.js +1 -1
  204. package/esm/layout/interface.d.ts +3 -3
  205. package/esm/layout/interface.js +1 -1
  206. package/esm/layout/interface.js.map +1 -1
  207. package/esm/layout/layout-item.d.ts +3 -6
  208. package/esm/layout/layout-item.js +7 -25
  209. package/esm/layout/layout-item.js.map +1 -1
  210. package/esm/layout/layout3d/index.d.ts +1 -8
  211. package/esm/layout/layout3d/index.js +10 -69
  212. package/esm/layout/layout3d/index.js.map +1 -1
  213. package/esm/layout/util.js +91 -119
  214. package/esm/layout/util.js.map +1 -1
  215. package/esm/model/base-model-transformer.d.ts +2 -1
  216. package/esm/model/base-model-transformer.js +6 -2
  217. package/esm/model/base-model-transformer.js.map +1 -1
  218. package/esm/model/interface.d.ts +0 -2
  219. package/esm/model/interface.js.map +1 -1
  220. package/esm/model/layout-model.d.ts +0 -8
  221. package/esm/model/layout-model.js +0 -15
  222. package/esm/model/layout-model.js.map +1 -1
  223. package/esm/series/area/area-transformer.d.ts +2 -0
  224. package/esm/series/area/area-transformer.js +19 -0
  225. package/esm/series/area/area-transformer.js.map +1 -1
  226. package/esm/series/area/area.d.ts +0 -1
  227. package/esm/series/area/area.js +1 -18
  228. package/esm/series/area/area.js.map +1 -1
  229. package/esm/series/bar/bar.js +1 -1
  230. package/esm/series/bar/bar.js.map +1 -1
  231. package/esm/series/base/base-series-transformer.js +1 -2
  232. package/esm/series/base/base-series-transformer.js.map +1 -1
  233. package/esm/series/base/base-series.js +13 -12
  234. package/esm/series/base/base-series.js.map +1 -1
  235. package/esm/series/cartesian/cartesian.js +3 -2
  236. package/esm/series/cartesian/cartesian.js.map +1 -1
  237. package/esm/series/correlation/correlation.js +1 -1
  238. package/esm/series/correlation/correlation.js.map +1 -1
  239. package/esm/series/mixin/line-mixin.js +1 -1
  240. package/esm/series/mixin/line-mixin.js.map +1 -1
  241. package/esm/series/pie/3d/pie-3d.js +1 -1
  242. package/esm/series/pie/3d/pie-3d.js.map +1 -1
  243. package/esm/series/pie/pie.js +7 -7
  244. package/esm/series/pie/pie.js.map +1 -1
  245. package/esm/series/polar/polar.js +1 -1
  246. package/esm/series/polar/polar.js.map +1 -1
  247. package/esm/series/radar/animation.js +1 -1
  248. package/esm/series/radar/animation.js.map +1 -1
  249. package/esm/series/sankey/sankey.js +1 -1
  250. package/esm/series/sankey/sankey.js.map +1 -1
  251. package/esm/series/sunburst/sunburst.js +2 -2
  252. package/esm/series/sunburst/sunburst.js.map +1 -1
  253. package/esm/series/word-cloud/base.js +3 -3
  254. package/esm/series/word-cloud/base.js.map +1 -1
  255. package/esm/theme/builtin/index.js +2 -1
  256. package/esm/theme/builtin/index.js.map +1 -1
  257. package/esm/typings/layout.d.ts +2 -1
  258. package/esm/typings/layout.js.map +1 -1
  259. package/package.json +14 -14
  260. package/cjs/theme/builtin/common-mobile/component/axis/band-axis.d.ts +0 -2
  261. package/cjs/theme/builtin/common-mobile/component/axis/band-axis.js +0 -22
  262. package/cjs/theme/builtin/common-mobile/component/axis/band-axis.js.map +0 -1
  263. package/cjs/theme/builtin/common-mobile/component/axis/cartesian-axis.d.ts +0 -4
  264. package/cjs/theme/builtin/common-mobile/component/axis/cartesian-axis.js +0 -40
  265. package/cjs/theme/builtin/common-mobile/component/axis/cartesian-axis.js.map +0 -1
  266. package/cjs/theme/builtin/common-mobile/component/axis/common-axis.d.ts +0 -2
  267. package/cjs/theme/builtin/common-mobile/component/axis/common-axis.js +0 -42
  268. package/cjs/theme/builtin/common-mobile/component/axis/common-axis.js.map +0 -1
  269. package/cjs/theme/builtin/common-mobile/component/axis/linear-axis.d.ts +0 -2
  270. package/cjs/theme/builtin/common-mobile/component/axis/linear-axis.js +0 -22
  271. package/cjs/theme/builtin/common-mobile/component/axis/linear-axis.js.map +0 -1
  272. package/cjs/theme/builtin/common-mobile/component/axis/polar-axis.d.ts +0 -3
  273. package/cjs/theme/builtin/common-mobile/component/axis/polar-axis.js +0 -25
  274. package/cjs/theme/builtin/common-mobile/component/axis/polar-axis.js.map +0 -1
  275. package/cjs/theme/builtin/common-mobile/component/crosshair.d.ts +0 -2
  276. package/cjs/theme/builtin/common-mobile/component/crosshair.js +0 -39
  277. package/cjs/theme/builtin/common-mobile/component/crosshair.js.map +0 -1
  278. package/cjs/theme/builtin/common-mobile/component/data-zoom.d.ts +0 -2
  279. package/cjs/theme/builtin/common-mobile/component/data-zoom.js +0 -40
  280. package/cjs/theme/builtin/common-mobile/component/data-zoom.js.map +0 -1
  281. package/cjs/theme/builtin/common-mobile/component/index.d.ts +0 -2
  282. package/cjs/theme/builtin/common-mobile/component/index.js +0 -34
  283. package/cjs/theme/builtin/common-mobile/component/index.js.map +0 -1
  284. package/cjs/theme/builtin/common-mobile/component/indicator.d.ts +0 -2
  285. package/cjs/theme/builtin/common-mobile/component/indicator.js +0 -23
  286. package/cjs/theme/builtin/common-mobile/component/indicator.js.map +0 -1
  287. package/cjs/theme/builtin/common-mobile/component/legend/color-legend.d.ts +0 -2
  288. package/cjs/theme/builtin/common-mobile/component/legend/color-legend.js +0 -23
  289. package/cjs/theme/builtin/common-mobile/component/legend/color-legend.js.map +0 -1
  290. package/cjs/theme/builtin/common-mobile/component/legend/continuous.d.ts +0 -2
  291. package/cjs/theme/builtin/common-mobile/component/legend/continuous.js +0 -44
  292. package/cjs/theme/builtin/common-mobile/component/legend/continuous.js.map +0 -1
  293. package/cjs/theme/builtin/common-mobile/component/legend/discrete-legend.d.ts +0 -2
  294. package/cjs/theme/builtin/common-mobile/component/legend/discrete-legend.js +0 -39
  295. package/cjs/theme/builtin/common-mobile/component/legend/discrete-legend.js.map +0 -1
  296. package/cjs/theme/builtin/common-mobile/component/legend/size-legend.d.ts +0 -2
  297. package/cjs/theme/builtin/common-mobile/component/legend/size-legend.js +0 -23
  298. package/cjs/theme/builtin/common-mobile/component/legend/size-legend.js.map +0 -1
  299. package/cjs/theme/builtin/common-mobile/component/map-label.d.ts +0 -2
  300. package/cjs/theme/builtin/common-mobile/component/map-label.js +0 -39
  301. package/cjs/theme/builtin/common-mobile/component/map-label.js.map +0 -1
  302. package/cjs/theme/builtin/common-mobile/component/mark-area.d.ts +0 -2
  303. package/cjs/theme/builtin/common-mobile/component/mark-area.js +0 -24
  304. package/cjs/theme/builtin/common-mobile/component/mark-area.js.map +0 -1
  305. package/cjs/theme/builtin/common-mobile/component/mark-line.d.ts +0 -2
  306. package/cjs/theme/builtin/common-mobile/component/mark-line.js +0 -33
  307. package/cjs/theme/builtin/common-mobile/component/mark-line.js.map +0 -1
  308. package/cjs/theme/builtin/common-mobile/component/mark-point.d.ts +0 -2
  309. package/cjs/theme/builtin/common-mobile/component/mark-point.js +0 -19
  310. package/cjs/theme/builtin/common-mobile/component/mark-point.js.map +0 -1
  311. package/cjs/theme/builtin/common-mobile/component/player.d.ts +0 -2
  312. package/cjs/theme/builtin/common-mobile/component/player.js +0 -51
  313. package/cjs/theme/builtin/common-mobile/component/player.js.map +0 -1
  314. package/cjs/theme/builtin/common-mobile/component/poptip.d.ts +0 -2
  315. package/cjs/theme/builtin/common-mobile/component/poptip.js +0 -25
  316. package/cjs/theme/builtin/common-mobile/component/poptip.js.map +0 -1
  317. package/cjs/theme/builtin/common-mobile/component/title.d.ts +0 -2
  318. package/cjs/theme/builtin/common-mobile/component/title.js +0 -23
  319. package/cjs/theme/builtin/common-mobile/component/title.js.map +0 -1
  320. package/cjs/theme/builtin/common-mobile/component/tooltip.d.ts +0 -2
  321. package/cjs/theme/builtin/common-mobile/component/tooltip.js +0 -43
  322. package/cjs/theme/builtin/common-mobile/component/tooltip.js.map +0 -1
  323. package/cjs/theme/builtin/common-mobile/component/total-label.d.ts +0 -2
  324. package/cjs/theme/builtin/common-mobile/component/total-label.js +0 -16
  325. package/cjs/theme/builtin/common-mobile/component/total-label.js.map +0 -1
  326. package/cjs/theme/builtin/common-mobile/constants.d.ts +0 -2
  327. package/cjs/theme/builtin/common-mobile/constants.js +0 -23
  328. package/cjs/theme/builtin/common-mobile/constants.js.map +0 -1
  329. package/cjs/theme/builtin/common-mobile/mark.d.ts +0 -3
  330. package/cjs/theme/builtin/common-mobile/mark.js +0 -35
  331. package/cjs/theme/builtin/common-mobile/mark.js.map +0 -1
  332. package/cjs/theme/builtin/dark-mobile/index.d.ts +0 -2
  333. package/cjs/theme/builtin/dark-mobile/index.js +0 -18
  334. package/cjs/theme/builtin/dark-mobile/index.js.map +0 -1
  335. package/cjs/theme/builtin/light-mobile/index.d.ts +0 -2
  336. package/cjs/theme/builtin/light-mobile/index.js +0 -18
  337. package/cjs/theme/builtin/light-mobile/index.js.map +0 -1
  338. package/esm/theme/builtin/common-mobile/component/axis/band-axis.d.ts +0 -2
  339. package/esm/theme/builtin/common-mobile/component/axis/band-axis.js +0 -18
  340. package/esm/theme/builtin/common-mobile/component/axis/band-axis.js.map +0 -1
  341. package/esm/theme/builtin/common-mobile/component/axis/cartesian-axis.d.ts +0 -4
  342. package/esm/theme/builtin/common-mobile/component/axis/cartesian-axis.js +0 -38
  343. package/esm/theme/builtin/common-mobile/component/axis/cartesian-axis.js.map +0 -1
  344. package/esm/theme/builtin/common-mobile/component/axis/common-axis.d.ts +0 -2
  345. package/esm/theme/builtin/common-mobile/component/axis/common-axis.js +0 -36
  346. package/esm/theme/builtin/common-mobile/component/axis/common-axis.js.map +0 -1
  347. package/esm/theme/builtin/common-mobile/component/axis/linear-axis.d.ts +0 -2
  348. package/esm/theme/builtin/common-mobile/component/axis/linear-axis.js +0 -18
  349. package/esm/theme/builtin/common-mobile/component/axis/linear-axis.js.map +0 -1
  350. package/esm/theme/builtin/common-mobile/component/axis/polar-axis.d.ts +0 -3
  351. package/esm/theme/builtin/common-mobile/component/axis/polar-axis.js +0 -23
  352. package/esm/theme/builtin/common-mobile/component/axis/polar-axis.js.map +0 -1
  353. package/esm/theme/builtin/common-mobile/component/crosshair.d.ts +0 -2
  354. package/esm/theme/builtin/common-mobile/component/crosshair.js +0 -35
  355. package/esm/theme/builtin/common-mobile/component/crosshair.js.map +0 -1
  356. package/esm/theme/builtin/common-mobile/component/data-zoom.d.ts +0 -2
  357. package/esm/theme/builtin/common-mobile/component/data-zoom.js +0 -34
  358. package/esm/theme/builtin/common-mobile/component/data-zoom.js.map +0 -1
  359. package/esm/theme/builtin/common-mobile/component/index.d.ts +0 -2
  360. package/esm/theme/builtin/common-mobile/component/index.js +0 -66
  361. package/esm/theme/builtin/common-mobile/component/index.js.map +0 -1
  362. package/esm/theme/builtin/common-mobile/component/indicator.d.ts +0 -2
  363. package/esm/theme/builtin/common-mobile/component/indicator.js +0 -17
  364. package/esm/theme/builtin/common-mobile/component/indicator.js.map +0 -1
  365. package/esm/theme/builtin/common-mobile/component/legend/color-legend.d.ts +0 -2
  366. package/esm/theme/builtin/common-mobile/component/legend/color-legend.js +0 -17
  367. package/esm/theme/builtin/common-mobile/component/legend/color-legend.js.map +0 -1
  368. package/esm/theme/builtin/common-mobile/component/legend/continuous.d.ts +0 -2
  369. package/esm/theme/builtin/common-mobile/component/legend/continuous.js +0 -38
  370. package/esm/theme/builtin/common-mobile/component/legend/continuous.js.map +0 -1
  371. package/esm/theme/builtin/common-mobile/component/legend/discrete-legend.d.ts +0 -2
  372. package/esm/theme/builtin/common-mobile/component/legend/discrete-legend.js +0 -33
  373. package/esm/theme/builtin/common-mobile/component/legend/discrete-legend.js.map +0 -1
  374. package/esm/theme/builtin/common-mobile/component/legend/size-legend.d.ts +0 -2
  375. package/esm/theme/builtin/common-mobile/component/legend/size-legend.js +0 -17
  376. package/esm/theme/builtin/common-mobile/component/legend/size-legend.js.map +0 -1
  377. package/esm/theme/builtin/common-mobile/component/map-label.d.ts +0 -2
  378. package/esm/theme/builtin/common-mobile/component/map-label.js +0 -33
  379. package/esm/theme/builtin/common-mobile/component/map-label.js.map +0 -1
  380. package/esm/theme/builtin/common-mobile/component/mark-area.d.ts +0 -2
  381. package/esm/theme/builtin/common-mobile/component/mark-area.js +0 -18
  382. package/esm/theme/builtin/common-mobile/component/mark-area.js.map +0 -1
  383. package/esm/theme/builtin/common-mobile/component/mark-line.d.ts +0 -2
  384. package/esm/theme/builtin/common-mobile/component/mark-line.js +0 -27
  385. package/esm/theme/builtin/common-mobile/component/mark-line.js.map +0 -1
  386. package/esm/theme/builtin/common-mobile/component/mark-point.d.ts +0 -2
  387. package/esm/theme/builtin/common-mobile/component/mark-point.js +0 -15
  388. package/esm/theme/builtin/common-mobile/component/mark-point.js.map +0 -1
  389. package/esm/theme/builtin/common-mobile/component/player.d.ts +0 -2
  390. package/esm/theme/builtin/common-mobile/component/player.js +0 -47
  391. package/esm/theme/builtin/common-mobile/component/player.js.map +0 -1
  392. package/esm/theme/builtin/common-mobile/component/poptip.d.ts +0 -2
  393. package/esm/theme/builtin/common-mobile/component/poptip.js +0 -19
  394. package/esm/theme/builtin/common-mobile/component/poptip.js.map +0 -1
  395. package/esm/theme/builtin/common-mobile/component/title.d.ts +0 -2
  396. package/esm/theme/builtin/common-mobile/component/title.js +0 -17
  397. package/esm/theme/builtin/common-mobile/component/title.js.map +0 -1
  398. package/esm/theme/builtin/common-mobile/component/tooltip.d.ts +0 -2
  399. package/esm/theme/builtin/common-mobile/component/tooltip.js +0 -37
  400. package/esm/theme/builtin/common-mobile/component/tooltip.js.map +0 -1
  401. package/esm/theme/builtin/common-mobile/component/total-label.d.ts +0 -2
  402. package/esm/theme/builtin/common-mobile/component/total-label.js +0 -10
  403. package/esm/theme/builtin/common-mobile/component/total-label.js.map +0 -1
  404. package/esm/theme/builtin/common-mobile/constants.d.ts +0 -2
  405. package/esm/theme/builtin/common-mobile/constants.js +0 -19
  406. package/esm/theme/builtin/common-mobile/constants.js.map +0 -1
  407. package/esm/theme/builtin/common-mobile/mark.d.ts +0 -3
  408. package/esm/theme/builtin/common-mobile/mark.js +0 -31
  409. package/esm/theme/builtin/common-mobile/mark.js.map +0 -1
  410. package/esm/theme/builtin/dark-mobile/index.d.ts +0 -2
  411. package/esm/theme/builtin/dark-mobile/index.js +0 -16
  412. package/esm/theme/builtin/dark-mobile/index.js.map +0 -1
  413. package/esm/theme/builtin/light-mobile/index.d.ts +0 -2
  414. package/esm/theme/builtin/light-mobile/index.js +0 -16
  415. package/esm/theme/builtin/light-mobile/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/sunburst/sunburst.ts"],"names":[],"mappings":"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","file":"sunburst.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { SunburstLabelConfig, SunburstNodeElement } from '@visactor/vgrammar-hierarchy';\nimport { array, isArray, isNil, isValid, isObject, degreeToRadian, mixin } from '@visactor/vutils';\n\nimport type { IMarkSpec } from '../../typings/spec';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ITextMark } from '../../mark/text';\nimport type { IArcMark } from '../../mark/arc';\nimport type { Datum, IArcMarkSpec, ITextMarkSpec } from '../../typings';\n\nimport { registerSunburstAnimation, type ISunburstAnimationParams, type SunburstAppearPreset } from './animation';\nimport type { ISunburstSeriesSpec, LabelAutoVisibleType } from './interface';\nimport type { ISunburstOpt } from '../../data/transforms/sunburst';\n\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { flatten } from '../../data/transforms/flatten';\nimport { sunburstLayout } from '../../data/transforms/sunburst';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\n\nimport type { IMark } from '../../mark/interface';\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport { AttributeLevel, DEFAULT_DATA_KEY } from '../../constant';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { DEFAULT_HIERARCHY_DEPTH, DEFAULT_HIERARCHY_ROOT } from '../../constant/hierarchy';\nimport { registerFadeInOutAnimation } from '../../animation/config';\nimport { addHierarchyDataKey, initHierarchyKeyMap } from '../../data/transforms/data-key';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { PolarSeries } from '../polar/polar';\nimport { SUNBURST_AUTO_VISIBLE_DEFAULT_THRESHOLD } from '../../constant/sunburst';\nimport { SunburstTooltipHelper } from './tooltip-helper';\nimport type { animationInfo } from './animation/interface';\nimport type { IDrillable } from '../../interaction/drill/drillable';\nimport { Drillable } from '../../interaction/drill/drillable';\nimport { ArcMark, registerArcMark } from '../../mark/arc';\nimport { TextMark, registerTextMark } from '../../mark/text';\nimport { sunburstSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\n\nexport class SunburstSeries extends PolarSeries<any> {\n protected declare _spec: ISunburstSeriesSpec;\n\n static readonly type: string = SeriesTypeEnum.sunburst;\n type = SeriesTypeEnum.sunburst;\n\n static readonly mark: SeriesMarkMap = sunburstSeriesMark;\n\n private _sunburstMark: IArcMark;\n private _labelMark: ITextMark;\n\n protected _categoryField!: string;\n protected _valueField!: string;\n\n private _centerX: number;\n private _centerY: number;\n private _offsetX: number;\n private _offsetY: number;\n private _startAngle: number;\n private _endAngle: number;\n\n private __innerRadius: number | number[];\n private __outerRadius: number | number[];\n private _gap: number | number[];\n private _labelLayout: SunburstLabelConfig | SunburstLabelConfig[];\n\n private _labelAutoVisible?: LabelAutoVisibleType;\n\n private _label: IMarkSpec<ITextMarkSpec>;\n private _sunburst: IMarkSpec<IArcMarkSpec>;\n\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n getCategoryField() {\n return this._categoryField;\n }\n\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n getValueField() {\n return this._valueField;\n }\n\n getDimensionField() {\n return [this._categoryField];\n }\n\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n this.setSeriesField(this._spec.seriesField ?? DEFAULT_HIERARCHY_ROOT);\n\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillable({\n event: this.event,\n mode: this._option.mode,\n drillField: () => this._spec.drillField ?? DEFAULT_DATA_KEY,\n getRawData: () => this.getRawData()\n });\n }\n\n /**\n * 角度区间\n */\n this._startAngle = degreeToRadian(this._spec.startAngle);\n this._endAngle = degreeToRadian(this._spec.endAngle);\n\n /**\n * 中心点\n */\n this._centerX = this._spec.centerX;\n this._centerY = this._spec.centerY;\n this._offsetX = this._spec.offsetX;\n this._offsetY = this._spec.offsetY;\n\n /**\n * 对所有层生效的布局配置\n */\n this.__innerRadius = this._spec.innerRadius;\n this.__outerRadius = this._spec.outerRadius;\n this._gap = this._spec.gap;\n this._labelLayout = this._spec.labelLayout;\n\n /**\n * 图元配置\n */\n this._sunburst = this._spec.sunburst;\n this._label = this._spec.label;\n\n /**\n * 功能配置\n */\n this._labelAutoVisible = this._spec.labelAutoVisible;\n }\n\n protected initData() {\n super.initData();\n const rawData = this.getRawData();\n if (!rawData) {\n return;\n }\n\n // 对原始数据进行上卷下钻筛选\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillableData(this._dataSet);\n }\n // 注册布局算法\n registerDataSetInstanceTransform(this._dataSet, 'sunburstLayout', sunburstLayout);\n // 注册扁平化算法\n registerDataSetInstanceTransform(this._dataSet, 'flatten', flatten);\n\n // 对筛选后的数据, 调用sunburst布局算法\n rawData.transform({\n type: 'sunburstLayout',\n options: (): ISunburstOpt => {\n const { innerRadius, outerRadius, gap, label } = this._computeLevel();\n return {\n nodeKey: this._categoryField,\n width: this.getLayoutRect().width,\n height: this.getLayoutRect().height,\n center: [\n isValid(this._centerX) ? this._centerX : this.getLayoutRect().width / 2,\n isValid(this._centerY) ? this._centerY : this.getLayoutRect().height / 2\n ],\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n\n innerRadius: innerRadius,\n outerRadius: outerRadius,\n gapRadius: gap,\n label: label\n };\n }\n });\n\n // 布局结果进行扁平化处理\n rawData.transform({\n type: 'flatten',\n options: {\n callback: (node: SunburstNodeElement) => {\n if (node.datum) {\n const nodeData = node.datum[node.depth];\n return { ...node, ...nodeData };\n }\n return node;\n }\n }\n });\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n return fields.concat([\n {\n key: this._categoryField,\n operations: ['values']\n },\n {\n key: this._valueField,\n operations: ['max', 'min']\n },\n {\n key: DEFAULT_HIERARCHY_DEPTH,\n operations: ['max', 'min', 'values']\n },\n {\n key: DEFAULT_HIERARCHY_ROOT,\n operations: ['values']\n }\n ]);\n }\n\n protected _addDataIndexAndKey() {\n const rawData = this.getRawData();\n if (isNil(rawData?.dataSet)) {\n return;\n }\n // 为原始数据, 添加层级属性\n registerDataSetInstanceTransform(rawData.dataSet, 'addVChartProperty', addVChartProperty);\n rawData.transform({\n type: 'addVChartProperty',\n options: {\n beforeCall: initHierarchyKeyMap.bind(this),\n call: addHierarchyDataKey\n }\n });\n }\n\n initMark(): void {\n this._initArcMark();\n this._initLabelMark();\n }\n\n initMarkStyle(): void {\n this._initArcMarkStyle();\n this._initLabelMarkStyle();\n }\n\n private _initArcMark() {\n if (this._sunburst.visible === false) {\n return;\n }\n // SunburstMark\n const sunburstMark = this._createMark(SunburstSeries.mark.sunburst, {\n isSeriesMark: true,\n customShape: this._spec.sunburst?.customShape\n }) as IArcMark;\n this._sunburstMark = sunburstMark;\n this._trigger.registerMark(this._sunburstMark);\n }\n\n private _initArcMarkStyle() {\n if (isNil(this._sunburstMark)) {\n return;\n }\n this.setMarkStyle(\n this._sunburstMark,\n {\n x: d => d.x + (isValid(this._offsetX) ? this._offsetX : 0),\n y: d => d.y + (isValid(this._offsetY) ? this._offsetY : 0),\n outerRadius: d => d.outerRadius,\n innerRadius: d => d.innerRadius,\n startAngle: d => d.startAngle,\n endAngle: d => d.endAngle,\n fill: this.getColorAttribute()\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n private _initLabelMark() {\n if (this._label.visible !== true) {\n return;\n }\n // Label\n const labelMark = this._createMark(SunburstSeries.mark.label, {\n isSeriesMark: false\n }) as ITextMark;\n this._labelMark = labelMark;\n\n this._trigger.registerMark(labelMark);\n }\n\n private _initLabelMarkStyle() {\n if (isNil(this._labelMark)) {\n return;\n }\n this.setMarkStyle(\n this._labelMark,\n {\n visible: d => {\n // 自动隐藏密集标签逻辑.\n const labelAutoVisible = this._labelAutoVisible;\n\n if (isObject(labelAutoVisible) && labelAutoVisible.enable === true) {\n return (\n (d.endAngle - d.startAngle) * (d.outerRadius - d.innerRadius) >\n (labelAutoVisible?.circumference ?? SUNBURST_AUTO_VISIBLE_DEFAULT_THRESHOLD)\n );\n }\n return this._spec.label.visible;\n },\n x: d => d.label?.x + (isValid(this._offsetX) ? this._offsetX : 0),\n y: d => d.label?.y + (isValid(this._offsetY) ? this._offsetY : 0),\n textBaseline: d => d.label?.textBaseline,\n textAlign: d => d.label?.textAlign,\n angle: d => d.label?.angle ?? 0,\n fontSize: 10,\n text: d => d.name\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n protected initTooltip() {\n this._tooltipHelper = new SunburstTooltipHelper(this);\n this._sunburstMark && this._tooltipHelper.activeTriggerSet.mark.add(this._sunburstMark);\n this._labelMark && this._tooltipHelper.activeTriggerSet.mark.add(this._labelMark);\n }\n\n initAnimation() {\n const animationParams: ISunburstAnimationParams = {\n animationInfo: (): animationInfo => {\n // 返回用户的交互元素信息\n return {\n innerRadius: this._computeRadius(array(this.__innerRadius))[0],\n outerRadius: this._computeRadius(array(this.__outerRadius))[0],\n startAngle: array(this._startAngle)[0],\n endAngle: array(this._endAngle)[0]\n };\n }\n };\n\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<SunburstAppearPreset>)?.preset;\n\n this.getMarksInType(MarkTypeEnum.arc).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('sunburst')?.(animationParams, appearPreset),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n\n this.getMarksInType(MarkTypeEnum.text).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n }\n\n initEvent() {\n super.initEvent();\n if (this._spec.drill) {\n (this as unknown as IDrillable).bindDrillEvent();\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._rawData.reRunAllTransform();\n }\n\n /**\n * 计算radius, 转换为布局属性\n * @radius radius是一个比例值, 取值范围为[0,1]\n */\n private _computeRadius(radius: number | number[]) {\n if (isArray(radius)) {\n return radius.map(r => {\n const { width, height } = this.getRegion().getLayoutRectExcludeIndent();\n return Math.min(width / 2, height / 2) * r;\n });\n }\n const { width, height } = this.getRegion().getLayoutRectExcludeIndent();\n return Math.min(width / 2, height / 2) * radius;\n }\n\n private _computeLevel(): {\n innerRadius: number | number[];\n outerRadius: number | number[];\n gap: number | number[];\n label: SunburstLabelConfig | SunburstLabelConfig[];\n } {\n return {\n innerRadius: this._computeRadius(this.__innerRadius),\n outerRadius: this._computeRadius(this.__outerRadius),\n gap: this._gap,\n label: this._labelLayout\n };\n }\n\n getGroupFields(): string[] {\n return [];\n }\n getStackGroupFields(): string[] {\n return [];\n }\n getStackValueField(): string {\n return '';\n }\n\n // make sure this function fast\n protected _noAnimationDataKey(datum: Datum, index: number): unknown | undefined {\n return undefined;\n }\n\n getActiveMarks(): IMark[] {\n return [this._sunburstMark];\n }\n}\n\nmixin(SunburstSeries, Drillable);\n\nexport const registerSunBurstSeries = () => {\n Factory.registerSeries(SunburstSeries.type, SunburstSeries);\n registerArcMark();\n registerTextMark();\n registerFadeInOutAnimation();\n registerSunburstAnimation();\n};\n"]}
1
+ {"version":3,"sources":["../src/series/sunburst/sunburst.ts"],"names":[],"mappings":"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","file":"sunburst.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { SunburstLabelConfig, SunburstNodeElement } from '@visactor/vgrammar-hierarchy';\nimport { array, isArray, isNil, isValid, isObject, degreeToRadian, mixin } from '@visactor/vutils';\n\nimport type { IMarkSpec } from '../../typings/spec';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { ITextMark } from '../../mark/text';\nimport type { IArcMark } from '../../mark/arc';\nimport type { Datum, IArcMarkSpec, ITextMarkSpec } from '../../typings';\n\nimport { registerSunburstAnimation, type ISunburstAnimationParams, type SunburstAppearPreset } from './animation';\nimport type { ISunburstSeriesSpec, LabelAutoVisibleType } from './interface';\nimport type { ISunburstOpt } from '../../data/transforms/sunburst';\n\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { flatten } from '../../data/transforms/flatten';\nimport { sunburstLayout } from '../../data/transforms/sunburst';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\n\nimport type { IMark } from '../../mark/interface';\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport { AttributeLevel, DEFAULT_DATA_KEY } from '../../constant';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { DEFAULT_HIERARCHY_DEPTH, DEFAULT_HIERARCHY_ROOT } from '../../constant/hierarchy';\nimport { registerFadeInOutAnimation } from '../../animation/config';\nimport { addHierarchyDataKey, initHierarchyKeyMap } from '../../data/transforms/data-key';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { PolarSeries } from '../polar/polar';\nimport { SUNBURST_AUTO_VISIBLE_DEFAULT_THRESHOLD } from '../../constant/sunburst';\nimport { SunburstTooltipHelper } from './tooltip-helper';\nimport type { animationInfo } from './animation/interface';\nimport type { IDrillable } from '../../interaction/drill/drillable';\nimport { Drillable } from '../../interaction/drill/drillable';\nimport { ArcMark, registerArcMark } from '../../mark/arc';\nimport { TextMark, registerTextMark } from '../../mark/text';\nimport { sunburstSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\n\nexport class SunburstSeries extends PolarSeries<any> {\n protected declare _spec: ISunburstSeriesSpec;\n\n static readonly type: string = SeriesTypeEnum.sunburst;\n type = SeriesTypeEnum.sunburst;\n\n static readonly mark: SeriesMarkMap = sunburstSeriesMark;\n\n private _sunburstMark: IArcMark;\n private _labelMark: ITextMark;\n\n protected _categoryField!: string;\n protected _valueField!: string;\n\n private _centerX: number;\n private _centerY: number;\n private _offsetX: number;\n private _offsetY: number;\n private _startAngle: number;\n private _endAngle: number;\n\n private __innerRadius: number | number[];\n private __outerRadius: number | number[];\n private _gap: number | number[];\n private _labelLayout: SunburstLabelConfig | SunburstLabelConfig[];\n\n private _labelAutoVisible?: LabelAutoVisibleType;\n\n private _label: IMarkSpec<ITextMarkSpec>;\n private _sunburst: IMarkSpec<IArcMarkSpec>;\n\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n getCategoryField() {\n return this._categoryField;\n }\n\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n getValueField() {\n return this._valueField;\n }\n\n getDimensionField() {\n return [this._categoryField];\n }\n\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n this.setSeriesField(this._spec.seriesField ?? DEFAULT_HIERARCHY_ROOT);\n\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillable({\n event: this.event,\n mode: this._option.mode,\n drillField: () => this._spec.drillField ?? DEFAULT_DATA_KEY,\n getRawData: () => this.getRawData()\n });\n }\n\n /**\n * 角度区间\n */\n this._startAngle = degreeToRadian(this._spec.startAngle);\n this._endAngle = degreeToRadian(this._spec.endAngle);\n\n /**\n * 中心点\n */\n this._centerX = this._spec.centerX;\n this._centerY = this._spec.centerY;\n this._offsetX = this._spec.offsetX;\n this._offsetY = this._spec.offsetY;\n\n /**\n * 对所有层生效的布局配置\n */\n this.__innerRadius = this._spec.innerRadius;\n this.__outerRadius = this._spec.outerRadius;\n this._gap = this._spec.gap;\n this._labelLayout = this._spec.labelLayout;\n\n /**\n * 图元配置\n */\n this._sunburst = this._spec.sunburst;\n this._label = this._spec.label;\n\n /**\n * 功能配置\n */\n this._labelAutoVisible = this._spec.labelAutoVisible;\n }\n\n protected initData() {\n super.initData();\n const rawData = this.getRawData();\n if (!rawData) {\n return;\n }\n\n // 对原始数据进行上卷下钻筛选\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillableData(this._dataSet);\n }\n // 注册布局算法\n registerDataSetInstanceTransform(this._dataSet, 'sunburstLayout', sunburstLayout);\n // 注册扁平化算法\n registerDataSetInstanceTransform(this._dataSet, 'flatten', flatten);\n\n // 对筛选后的数据, 调用sunburst布局算法\n rawData.transform({\n type: 'sunburstLayout',\n options: (): ISunburstOpt => {\n const { innerRadius, outerRadius, gap, label } = this._computeLevel();\n return {\n nodeKey: this._categoryField,\n width: this.getLayoutRect().width,\n height: this.getLayoutRect().height,\n center: [\n isValid(this._centerX) ? this._centerX : this.getLayoutRect().width / 2,\n isValid(this._centerY) ? this._centerY : this.getLayoutRect().height / 2\n ],\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n\n innerRadius: innerRadius,\n outerRadius: outerRadius,\n gapRadius: gap,\n label: label\n };\n }\n });\n\n // 布局结果进行扁平化处理\n rawData.transform({\n type: 'flatten',\n options: {\n callback: (node: SunburstNodeElement) => {\n if (node.datum) {\n const nodeData = node.datum[node.depth];\n return { ...node, ...nodeData };\n }\n return node;\n }\n }\n });\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n return fields.concat([\n {\n key: this._categoryField,\n operations: ['values']\n },\n {\n key: this._valueField,\n operations: ['max', 'min']\n },\n {\n key: DEFAULT_HIERARCHY_DEPTH,\n operations: ['max', 'min', 'values']\n },\n {\n key: DEFAULT_HIERARCHY_ROOT,\n operations: ['values']\n }\n ]);\n }\n\n protected _addDataIndexAndKey() {\n const rawData = this.getRawData();\n if (isNil(rawData?.dataSet)) {\n return;\n }\n // 为原始数据, 添加层级属性\n registerDataSetInstanceTransform(rawData.dataSet, 'addVChartProperty', addVChartProperty);\n rawData.transform({\n type: 'addVChartProperty',\n options: {\n beforeCall: initHierarchyKeyMap.bind(this),\n call: addHierarchyDataKey\n }\n });\n }\n\n initMark(): void {\n this._initArcMark();\n this._initLabelMark();\n }\n\n initMarkStyle(): void {\n this._initArcMarkStyle();\n this._initLabelMarkStyle();\n }\n\n private _initArcMark() {\n if (this._sunburst.visible === false) {\n return;\n }\n // SunburstMark\n const sunburstMark = this._createMark(SunburstSeries.mark.sunburst, {\n isSeriesMark: true,\n customShape: this._spec.sunburst?.customShape\n }) as IArcMark;\n this._sunburstMark = sunburstMark;\n this._trigger.registerMark(this._sunburstMark);\n }\n\n private _initArcMarkStyle() {\n if (isNil(this._sunburstMark)) {\n return;\n }\n this.setMarkStyle(\n this._sunburstMark,\n {\n x: d => d.x + (isValid(this._offsetX) ? this._offsetX : 0),\n y: d => d.y + (isValid(this._offsetY) ? this._offsetY : 0),\n outerRadius: d => d.outerRadius,\n innerRadius: d => d.innerRadius,\n startAngle: d => d.startAngle,\n endAngle: d => d.endAngle,\n fill: this.getColorAttribute()\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n private _initLabelMark() {\n if (this._label.visible !== true) {\n return;\n }\n // Label\n const labelMark = this._createMark(SunburstSeries.mark.label, {\n isSeriesMark: false\n }) as ITextMark;\n this._labelMark = labelMark;\n\n this._trigger.registerMark(labelMark);\n }\n\n private _initLabelMarkStyle() {\n if (isNil(this._labelMark)) {\n return;\n }\n this.setMarkStyle(\n this._labelMark,\n {\n visible: d => {\n // 自动隐藏密集标签逻辑.\n const labelAutoVisible = this._labelAutoVisible;\n\n if (isObject(labelAutoVisible) && labelAutoVisible.enable === true) {\n return (\n (d.endAngle - d.startAngle) * (d.outerRadius - d.innerRadius) >\n (labelAutoVisible?.circumference ?? SUNBURST_AUTO_VISIBLE_DEFAULT_THRESHOLD)\n );\n }\n return this._spec.label.visible;\n },\n x: d => d.label?.x + (isValid(this._offsetX) ? this._offsetX : 0),\n y: d => d.label?.y + (isValid(this._offsetY) ? this._offsetY : 0),\n textBaseline: d => d.label?.textBaseline,\n textAlign: d => d.label?.textAlign,\n angle: d => d.label?.angle ?? 0,\n fontSize: 10,\n text: d => d.name\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n protected initTooltip() {\n this._tooltipHelper = new SunburstTooltipHelper(this);\n this._sunburstMark && this._tooltipHelper.activeTriggerSet.mark.add(this._sunburstMark);\n this._labelMark && this._tooltipHelper.activeTriggerSet.mark.add(this._labelMark);\n }\n\n initAnimation() {\n const animationParams: ISunburstAnimationParams = {\n animationInfo: (): animationInfo => {\n // 返回用户的交互元素信息\n return {\n innerRadius: this._computeRadius(array(this.__innerRadius))[0],\n outerRadius: this._computeRadius(array(this.__outerRadius))[0],\n startAngle: array(this._startAngle)[0],\n endAngle: array(this._endAngle)[0]\n };\n }\n };\n\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<SunburstAppearPreset>)?.preset;\n\n this.getMarksInType(MarkTypeEnum.arc).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('sunburst')?.(animationParams, appearPreset),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n\n this.getMarksInType(MarkTypeEnum.text).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n }\n\n initEvent() {\n super.initEvent();\n if (this._spec.drill) {\n (this as unknown as IDrillable).bindDrillEvent();\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._rawData.reRunAllTransform();\n }\n\n /**\n * 计算radius, 转换为布局属性\n * @radius radius是一个比例值, 取值范围为[0,1]\n */\n private _computeRadius(radius: number | number[]) {\n if (isArray(radius)) {\n return radius.map(r => {\n const { width, height } = this.getRegion().getLayoutRect();\n return Math.min(width / 2, height / 2) * r;\n });\n }\n const { width, height } = this.getRegion().getLayoutRect();\n return Math.min(width / 2, height / 2) * radius;\n }\n\n private _computeLevel(): {\n innerRadius: number | number[];\n outerRadius: number | number[];\n gap: number | number[];\n label: SunburstLabelConfig | SunburstLabelConfig[];\n } {\n return {\n innerRadius: this._computeRadius(this.__innerRadius),\n outerRadius: this._computeRadius(this.__outerRadius),\n gap: this._gap,\n label: this._labelLayout\n };\n }\n\n getGroupFields(): string[] {\n return [];\n }\n getStackGroupFields(): string[] {\n return [];\n }\n getStackValueField(): string {\n return '';\n }\n\n // make sure this function fast\n protected _noAnimationDataKey(datum: Datum, index: number): unknown | undefined {\n return undefined;\n }\n\n getActiveMarks(): IMark[] {\n return [this._sunburstMark];\n }\n}\n\nmixin(SunburstSeries, Drillable);\n\nexport const registerSunBurstSeries = () => {\n Factory.registerSeries(SunburstSeries.type, SunburstSeries);\n registerArcMark();\n registerTextMark();\n registerFadeInOutAnimation();\n registerSunburstAnimation();\n};\n"]}
@@ -116,7 +116,7 @@ class BaseWordCloudSeries extends base_series_1.BaseSeries {
116
116
  compile() {
117
117
  var _a, _b;
118
118
  super.compile();
119
- const {width: width, height: height} = this._region.getLayoutRectExcludeIndent();
119
+ const {width: width, height: height} = this._region.getLayoutRect();
120
120
  if (!(0, vutils_1.isValidNumber)(width) || !(0, vutils_1.isValidNumber)(height) || !(height > 0 && width > 0)) return;
121
121
  const wordCloudTransforms = [], valueField = this._valueField, valueScale = new vscale_1.LinearScale, fontWeightRange = this._fontWeightRange, rotateAngles = this._rotateAngles, fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;
122
122
  if (valueField) {
@@ -150,7 +150,7 @@ class BaseWordCloudSeries extends base_series_1.BaseSeries {
150
150
  }
151
151
  _wordCloudTransformOption() {
152
152
  var _a, _b, _c, _d, _e;
153
- const {width: width, height: height} = this._region.getLayoutRectExcludeIndent(), wordStyleSpec = null !== (_b = null === (_a = this._spec.word) || void 0 === _a ? void 0 : _a.style) && void 0 !== _b ? _b : {};
153
+ const {width: width, height: height} = this._region.getLayoutRect(), wordStyleSpec = null !== (_b = null === (_a = this._spec.word) || void 0 === _a ? void 0 : _a.style) && void 0 !== _b ? _b : {};
154
154
  return {
155
155
  layoutType: (0, env_1.isTrueBrowser)(this._option.mode) ? this._wordCloudConfig.layoutMode : "fast",
156
156
  size: [ width, height ],
@@ -185,7 +185,7 @@ class BaseWordCloudSeries extends base_series_1.BaseSeries {
185
185
  }
186
186
  _wordCloudShapeTransformOption() {
187
187
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
188
- const {width: width, height: height} = this._region.getLayoutRectExcludeIndent(), wordStyleSpec = null !== (_b = null === (_a = this._spec.word) || void 0 === _a ? void 0 : _a.style) && void 0 !== _b ? _b : {}, wordCloudShapeConfig = null !== (_c = this._wordCloudShapeConfig) && void 0 !== _c ? _c : {}, fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;
188
+ const {width: width, height: height} = this._region.getLayoutRect(), wordStyleSpec = null !== (_b = null === (_a = this._spec.word) || void 0 === _a ? void 0 : _a.style) && void 0 !== _b ? _b : {}, wordCloudShapeConfig = null !== (_c = this._wordCloudShapeConfig) && void 0 !== _c ? _c : {}, fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;
189
189
  return {
190
190
  dataIndexKey: constant_1.DEFAULT_DATA_KEY,
191
191
  size: [ width, height ],
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/series/word-cloud/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IPadding } from '@visactor/vutils';\nimport { isValidNumber } from '@visactor/vutils';\nimport { isValid } from '@visactor/vutils';\nimport { AttributeLevel, DEFAULT_DATA_KEY, DEFAULT_DATA_SERIES_FIELD } from '../../constant';\nimport type { ITextMark } from '../../mark/text';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum } from '../interface/type';\nimport { isTrueBrowser } from '../../util/env';\nimport {\n DEFAULT_DRAW_OUT_OF_BOUND,\n DEFAULT_FONTSIZE_RANGE,\n DEFAULT_FONT_PADDING,\n DEFAULT_FONT_WEIGHT_RANGE,\n DEFAULT_MASK_SHAPE,\n DEFAULT_MIN_FONT_SIZE,\n DEFAULT_RANDOM,\n DEFAULT_ROTATE_ANGLES,\n DEFAULT_ZOOM_TO_FIT,\n SHAPE_TYPE\n} from './config';\nimport type {\n IWordCloudSeriesSpec,\n WordCloudConfigType,\n WordCloudShapeConfigType,\n WordCloudShapeType\n} from './interface';\nimport type { Datum, IPoint } from '../../typings';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { LinearScale } from '@visactor/vscale';\nimport { extent } from '@visactor/vgrammar-util';\nimport {\n WORD_CLOUD_ANGLE,\n WORD_CLOUD_FILLING_ANGLE,\n WORD_CLOUD_TEXT,\n WORD_CLOUD_WEIGHT\n} from '../../constant/word-cloud';\nimport type { ICompilableMark } from '../../compile/mark';\nimport { BaseSeries } from '../base/base-series';\nimport { ColorOrdinalScale } from '../../scale/color-ordinal-scale';\nimport { wordCloudSeriesMark } from './constant';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\n\nexport type IBaseWordCloudSeriesSpec = Omit<IWordCloudSeriesSpec, 'type'> & { type: string };\n\nexport class BaseWordCloudSeries<T extends IBaseWordCloudSeriesSpec = IBaseWordCloudSeriesSpec> extends BaseSeries<T> {\n static readonly mark: SeriesMarkMap = wordCloudSeriesMark;\n\n protected _nameField: string;\n protected _valueField?: string;\n setValueField(field: string) {\n if (isValid(field)) {\n this._valueField = field;\n }\n }\n\n protected _fontFamilyField: string;\n protected _fontWeightField: string;\n protected _fontStyleField: string;\n protected _colorHexField: string;\n protected _colorMode: 'linear' | 'ordinal';\n protected _colorList: string[];\n protected _rotateAngles?: number[];\n protected _fontWeightRange?: [number, number];\n protected _textField?: string;\n\n protected _fontSizeRange?: [number, number] | 'auto' = [DEFAULT_MIN_FONT_SIZE, DEFAULT_MIN_FONT_SIZE];\n setFontSizeRange(fontSizeRange: [number, number] | 'auto') {\n if (isValid(fontSizeRange)) {\n this._fontSizeRange = fontSizeRange;\n } else {\n this._fontSizeRange = DEFAULT_FONTSIZE_RANGE;\n }\n }\n\n protected _maskShape?: string | WordCloudShapeType;\n protected _isWordCloudShape: boolean = false;\n\n protected _keepAspect?: boolean;\n protected _random?: boolean;\n protected _fontPadding?: number;\n protected _fillingFontPadding?: number;\n protected _wordCloudConfig?: WordCloudConfigType;\n protected _wordCloudShapeConfig?: WordCloudShapeConfigType;\n\n protected _padding?: IPadding;\n protected _defaultFontFamily: string;\n\n /**\n * @override\n */\n setAttrFromSpec() {\n super.setAttrFromSpec();\n // series布局相关\n this._padding = this._option.getChart().padding;\n\n // 普通词云 & 形状词云 共有spec相关\n this._nameField = this._spec.nameField;\n this._fontFamilyField = this._spec.fontFamilyField;\n this._fontWeightField = this._spec.fontWeightField;\n this._fontStyleField = this._spec.fontStyleField;\n this._colorHexField = this._spec.colorHexField;\n this._colorMode = this._spec.colorMode ?? 'ordinal';\n this._colorList = this._spec.colorList;\n this.setValueField(this._spec.valueField);\n this._fontWeightRange = this._spec.fontWeightRange ?? DEFAULT_FONT_WEIGHT_RANGE;\n this._rotateAngles = this._spec.rotateAngles ?? DEFAULT_ROTATE_ANGLES;\n this.setFontSizeRange(this._spec.fontSizeRange);\n this._maskShape = this._spec.maskShape ?? DEFAULT_MASK_SHAPE;\n this._keepAspect = this._spec.keepAspect;\n this._random = this._spec.random ?? DEFAULT_RANDOM;\n this._fontPadding = this._spec.word?.padding ?? DEFAULT_FONT_PADDING;\n this._textField = this._spec.word?.formatMethod ? WORD_CLOUD_TEXT : this._nameField;\n // 普通词云spec相关\n this._wordCloudConfig = {\n drawOutOfBound: DEFAULT_DRAW_OUT_OF_BOUND,\n layoutMode: 'default',\n zoomToFit: DEFAULT_ZOOM_TO_FIT,\n ...this._spec.wordCloudConfig\n };\n\n // 形状词云spec相关\n this._wordCloudShapeConfig = {\n fillingSeriesField: this.getSeriesField(),\n fillingRotateAngles: DEFAULT_ROTATE_ANGLES,\n layoutMode: 'default',\n ...this._spec.wordCloudShapeConfig\n };\n this._fillingFontPadding = this._spec.fillingWord?.padding ?? DEFAULT_FONT_PADDING;\n\n this._isWordCloudShape = !SHAPE_TYPE.includes(this._maskShape);\n this._defaultFontFamily = this._option.getTheme().fontFamily;\n }\n\n protected _wordMark: ITextMark;\n protected _fillingWordMark: ITextMark;\n initMark(): void {\n this._wordMark = this._createMark(BaseWordCloudSeries.mark.word, {\n defaultMorphElementKey: this._seriesField,\n groupKey: this._seriesField,\n isSeriesMark: true\n }) as ITextMark;\n if (this._isWordCloudShape) {\n this._fillingWordMark = this._createMark(BaseWordCloudSeries.mark.fillingWord) as ITextMark;\n }\n }\n\n initMarkStyle() {\n const wordMark = this._wordMark;\n const fillingWordMark = this._fillingWordMark;\n const wordSpec = this._spec.word ?? {};\n if (wordMark) {\n this.setMarkStyle(\n wordMark,\n {\n fill: this._colorHexField\n ? (datum: Datum) => datum[this._colorHexField]\n : this.getWordColorAttribute(this._seriesField, false),\n text: (datum: Datum) => datum[this._textField],\n x: (datum: Datum) => datum.x,\n y: (datum: Datum) => datum.y,\n fontFamily: (datum: Datum) => datum.fontFamily,\n fontSize: (datum: Datum) => datum.fontSize,\n fontStyle: (datum: Datum) => datum.fontStyle,\n fontWeight: (datum: Datum) => datum.fontWeight,\n angle: (datum: Datum) => datum.angle,\n visible: (datum: Datum) => !datum.isFillingWord && datum.visible\n },\n 'normal',\n AttributeLevel.Series\n );\n this.setMarkStyle(\n wordMark,\n {\n fontFamily: wordSpec.style?.fontFamily ?? this._defaultFontFamily\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n if (fillingWordMark) {\n this.setMarkStyle(\n fillingWordMark,\n {\n fill: this._wordCloudShapeConfig.fillingColorHexField\n ? (datum: Datum) => datum[this._wordCloudShapeConfig.fillingColorHexField]\n : this.getWordColorAttribute(this._wordCloudShapeConfig.fillingSeriesField, true),\n text: (datum: Datum) => datum[this._textField],\n x: (datum: Datum) => datum.x,\n y: (datum: Datum) => datum.y,\n fontFamily: (datum: Datum) => datum.fontFamily,\n fontSize: (datum: Datum) => datum.fontSize,\n fontStyle: (datum: Datum) => datum.fontStyle,\n fontWeight: (datum: Datum) => datum.fontWeight,\n angle: (datum: Datum) => datum.angle,\n visible: (datum: Datum) => datum.isFillingWord && datum.visible\n },\n 'normal',\n AttributeLevel.Series\n );\n\n this.setMarkStyle(\n fillingWordMark,\n {\n fontFamily: wordSpec.style?.fontFamily ?? this._defaultFontFamily\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n this._trigger.registerMark(wordMark);\n this._trigger.registerMark(fillingWordMark);\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._wordMark && this._tooltipHelper.activeTriggerSet.mark.add(this._wordMark);\n this._fillingWordMark && this._tooltipHelper.activeTriggerSet.mark.add(this._fillingWordMark);\n }\n\n initAnimation() {\n [this._wordMark, this._fillingWordMark].forEach(mark => {\n if (mark) {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n const params = {\n animationConfig: () => mark.getAnimationConfig()?.appear?.[0]\n };\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('wordCloud')(params, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.word, this._spec, this._markAttributeContext)\n )\n );\n }\n });\n }\n\n protected getWordOrdinalColorScale(field: string, isFillingWord: boolean) {\n const colorList = isFillingWord ? this._wordCloudShapeConfig.fillingColorList : this._colorList;\n const colorDomain = field ? this.getViewData()?.latestData.map((datum: Datum) => datum[field]) : [];\n const colorRange = colorList ?? this._option.globalScale.getScale('color')?.range() ?? this._getDataScheme();\n return new ColorOrdinalScale().domain(colorDomain).range?.(colorRange);\n }\n\n getWordColorAttribute(field: string, isFillingWord: boolean) {\n if (this._colorMode === 'ordinal') {\n return {\n scale: this.getWordOrdinalColorScale(field, isFillingWord),\n field: this._seriesField ?? DEFAULT_DATA_SERIES_FIELD\n };\n }\n // const valueScale = new LinearScale()\n // .domain(extent(this.getViewData()?.latestData.map((datum: Datum) => datum[field])), true)\n // .range([0, 1]);\n let colorList =\n (isFillingWord ? this._colorList : this._wordCloudShapeConfig.fillingColorList) ??\n this._option.globalScale.getScale('color').range();\n // 如果用户只输入了一个 color,无法构成 colorRange,则进行兜底\n if (colorList.length === 1) {\n colorList = [colorList[0], colorList[0]];\n }\n // 颜色插值 todo@chensiji\n // const interpolate = interpolateColors(colorList)\n // return (datum: Datum) => interpolate(valueScale.scale(datum[field]))\n return (datum: Datum) => colorList[0];\n }\n\n compile(): void {\n super.compile();\n const { width, height } = this._region.getLayoutRectExcludeIndent();\n // 非正常尺寸下不进行布局\n if (!isValidNumber(width) || !isValidNumber(height) || !(height > 0 && width > 0)) {\n return;\n }\n\n const wordCloudTransforms: any[] = [];\n const valueField = this._valueField;\n const valueScale = new LinearScale();\n const fontWeightRange = this._fontWeightRange;\n const rotateAngles = this._rotateAngles;\n const fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;\n\n // fontWeight处理\n if (valueField) {\n const [minValue, maxValue] = extent(this.getViewData()?.latestData.map((datum: any) => +datum[valueField]));\n valueScale.domain([minValue, maxValue], true).range(fontWeightRange);\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_WEIGHT,\n callback: (datum: any) => {\n if (minValue === maxValue) {\n return valueScale.scale(maxValue);\n }\n return valueScale.scale(datum[valueField]);\n }\n });\n }\n\n // rotateAngles处理\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_ANGLE,\n callback: () => {\n return rotateAngles[Math.floor(Math.random() * rotateAngles.length)];\n }\n });\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_FILLING_ANGLE,\n callback: () => {\n return fillingRotateAngles[Math.floor(Math.random() * fillingRotateAngles.length)];\n }\n });\n const wordSpec = this._spec.word ?? {};\n\n // text fromat method 处理\n if (wordSpec.formatMethod) {\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_TEXT,\n callback: wordSpec.formatMethod\n });\n }\n\n // 词云 transform\n if (!this._isWordCloudShape) {\n wordCloudTransforms.push({\n type: 'wordcloud',\n ...this._wordCloudTransformOption()\n });\n // 挂到mark的transform上\n (this._wordMark as ICompilableMark).getProduct().transform(wordCloudTransforms);\n }\n // 形状词云 transform\n else {\n wordCloudTransforms.push({\n type: 'wordcloudShape',\n // 形状词云中必须要传入dataIndexKey, 否则填充词无法绘制\n ...this._wordCloudShapeTransformOption()\n });\n }\n // 把transform挂载到data的product上\n this._data.getProduct().transform(wordCloudTransforms);\n }\n\n protected _wordCloudTransformOption(): Object {\n const { width, height } = this._region.getLayoutRectExcludeIndent();\n const wordStyleSpec = this._spec.word?.style ?? {};\n\n return {\n // TIP: 非浏览器环境下,使用 fast 布局,否则会出现兼容问题\n layoutType: !isTrueBrowser(this._option.mode) ? 'fast' : this._wordCloudConfig.layoutMode,\n size: [width, height],\n shape: this._maskShape,\n dataIndexKey: DEFAULT_DATA_KEY,\n text: { field: this._textField },\n fontSize: this._valueField ? { field: this._valueField } : this._fontSizeRange[0],\n fontSizeRange: this._fontSizeRange === 'auto' ? null : this._fontSizeRange,\n padding: this._fontPadding,\n rotate: { field: WORD_CLOUD_ANGLE },\n fontFamily: this._fontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fontWeight: this._fontWeightField\n ? { field: this._fontWeightField }\n : this._valueField\n ? { field: WORD_CLOUD_WEIGHT }\n : null,\n fontStyle: this._fontStyleField ?? wordStyleSpec.fontStyle,\n\n randomVisible: this._random,\n clip: this._wordCloudConfig.drawOutOfBound === 'clip',\n shrink: this._wordCloudConfig.zoomToFit.shrink,\n enlarge: this._wordCloudConfig.zoomToFit.enlarge,\n minFontSize: this._wordCloudConfig.zoomToFit.fontSizeLimitMin,\n progressiveTime: this._wordCloudConfig.progressiveTime,\n progressiveStep: this._wordCloudConfig.progressiveStep\n };\n }\n\n protected _wordCloudShapeTransformOption(): Object {\n const { width, height } = this._region.getLayoutRectExcludeIndent();\n const wordStyleSpec = this._spec.word?.style ?? {};\n const wordCloudShapeConfig = this._wordCloudShapeConfig ?? {};\n const fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;\n\n return {\n dataIndexKey: DEFAULT_DATA_KEY,\n\n size: [width, height],\n shape: this._maskShape,\n\n text: { field: this._textField },\n fontSize: this._valueField ? { field: this._valueField } : this._fontSizeRange[0],\n fontSizeRange: this._fontSizeRange === 'auto' ? null : this._fontSizeRange, // 如果配置为'auto', 则形状词云fontSizeRange不设默认值(对齐3.x效果)\n padding: this._fontPadding,\n rotateList: this._rotateAngles,\n fontFamily: this._fontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fontWeight: this._fontWeightField\n ? { field: this._fontWeightField }\n : this._valueField\n ? { field: WORD_CLOUD_WEIGHT }\n : null,\n fontStyle: this._fontStyleField ?? wordStyleSpec.fontStyle,\n\n fillingFontFamily:\n wordCloudShapeConfig.fillingFontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fillingPadding: this._fillingFontPadding,\n fillingFontStyle: wordCloudShapeConfig.fillingFontStyleField ?? wordStyleSpec.fontStyle,\n fillingFontWeight: wordCloudShapeConfig.fillingFontWeightField ?? wordStyleSpec.fontWeight, // 填充词fontWeight默认不跟随valueField\n fillingRotateList: fillingRotateAngles,\n\n fillingTimes: wordCloudShapeConfig.fillingTimes,\n fillingXStep: wordCloudShapeConfig.fillingXStep,\n fillingYStep: wordCloudShapeConfig.fillingYStep,\n fillingXRatioStep: wordCloudShapeConfig.fillingXRatioStep,\n fillingYRatioStep: wordCloudShapeConfig.fillingYRatioStep,\n fillingInitialOpacity: wordCloudShapeConfig.fillingInitialOpacity,\n fillingDeltaOpacity: wordCloudShapeConfig.fillingDeltaOpacity,\n fillingInitialFontSize: wordCloudShapeConfig.fillingInitialFontSize,\n fillingDeltaFontSize: wordCloudShapeConfig.fillingDeltaFontSize,\n\n ratio: wordCloudShapeConfig.ratio,\n fillingRatio: wordCloudShapeConfig.fillingRatio,\n removeWhiteBorder: wordCloudShapeConfig.removeWhiteBorder,\n textLayoutTimes: wordCloudShapeConfig.textLayoutTimes,\n fontSizeShrinkFactor: wordCloudShapeConfig.fontSizeShrinkFactor,\n stepFactor: wordCloudShapeConfig.stepFactor,\n layoutMode: wordCloudShapeConfig.layoutMode,\n importantWordCount: wordCloudShapeConfig.importantWordCount,\n globalShinkLimit: wordCloudShapeConfig.globalShinkLimit,\n fontSizeEnlargeFactor: wordCloudShapeConfig.fontSizeEnlargeFactor,\n fillingDeltaFontSizeFactor: wordCloudShapeConfig.fillingDeltaFontSizeFactor\n };\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: Array<'max' | 'min' | 'values'> }[] = [];\n fields.push({ key: this._nameField, operations: ['values'] });\n fields.push({ key: this._valueField, operations: ['max', 'min'] });\n return fields;\n }\n dataToPosition(data: Datum): IPoint {\n return null;\n }\n dataToPositionX(data: any): number {\n return null;\n }\n dataToPositionY(data: any): number {\n return null;\n }\n dataToPositionZ(data: any): number {\n return null;\n }\n valueToPosition(value1: any, value2?: any): IPoint {\n return null;\n }\n\n getGroupFields(): string[] {\n // do nothing\n return [];\n }\n\n getStackGroupFields(): string[] {\n // do nothing\n return [];\n }\n\n getStackValueField(): string {\n // do nothing\n return '';\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this.compile();\n }\n\n getActiveMarks(): IMark[] {\n return [this._wordMark, this._fillingWordMark];\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/series/word-cloud/base.ts"],"names":[],"mappings":"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","file":"base.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { IPadding } from '@visactor/vutils';\nimport { isValidNumber } from '@visactor/vutils';\nimport { isValid } from '@visactor/vutils';\nimport { AttributeLevel, DEFAULT_DATA_KEY, DEFAULT_DATA_SERIES_FIELD } from '../../constant';\nimport type { ITextMark } from '../../mark/text';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum } from '../interface/type';\nimport { isTrueBrowser } from '../../util/env';\nimport {\n DEFAULT_DRAW_OUT_OF_BOUND,\n DEFAULT_FONTSIZE_RANGE,\n DEFAULT_FONT_PADDING,\n DEFAULT_FONT_WEIGHT_RANGE,\n DEFAULT_MASK_SHAPE,\n DEFAULT_MIN_FONT_SIZE,\n DEFAULT_RANDOM,\n DEFAULT_ROTATE_ANGLES,\n DEFAULT_ZOOM_TO_FIT,\n SHAPE_TYPE\n} from './config';\nimport type {\n IWordCloudSeriesSpec,\n WordCloudConfigType,\n WordCloudShapeConfigType,\n WordCloudShapeType\n} from './interface';\nimport type { Datum, IPoint } from '../../typings';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { LinearScale } from '@visactor/vscale';\nimport { extent } from '@visactor/vgrammar-util';\nimport {\n WORD_CLOUD_ANGLE,\n WORD_CLOUD_FILLING_ANGLE,\n WORD_CLOUD_TEXT,\n WORD_CLOUD_WEIGHT\n} from '../../constant/word-cloud';\nimport type { ICompilableMark } from '../../compile/mark';\nimport { BaseSeries } from '../base/base-series';\nimport { ColorOrdinalScale } from '../../scale/color-ordinal-scale';\nimport { wordCloudSeriesMark } from './constant';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\n\nexport type IBaseWordCloudSeriesSpec = Omit<IWordCloudSeriesSpec, 'type'> & { type: string };\n\nexport class BaseWordCloudSeries<T extends IBaseWordCloudSeriesSpec = IBaseWordCloudSeriesSpec> extends BaseSeries<T> {\n static readonly mark: SeriesMarkMap = wordCloudSeriesMark;\n\n protected _nameField: string;\n protected _valueField?: string;\n setValueField(field: string) {\n if (isValid(field)) {\n this._valueField = field;\n }\n }\n\n protected _fontFamilyField: string;\n protected _fontWeightField: string;\n protected _fontStyleField: string;\n protected _colorHexField: string;\n protected _colorMode: 'linear' | 'ordinal';\n protected _colorList: string[];\n protected _rotateAngles?: number[];\n protected _fontWeightRange?: [number, number];\n protected _textField?: string;\n\n protected _fontSizeRange?: [number, number] | 'auto' = [DEFAULT_MIN_FONT_SIZE, DEFAULT_MIN_FONT_SIZE];\n setFontSizeRange(fontSizeRange: [number, number] | 'auto') {\n if (isValid(fontSizeRange)) {\n this._fontSizeRange = fontSizeRange;\n } else {\n this._fontSizeRange = DEFAULT_FONTSIZE_RANGE;\n }\n }\n\n protected _maskShape?: string | WordCloudShapeType;\n protected _isWordCloudShape: boolean = false;\n\n protected _keepAspect?: boolean;\n protected _random?: boolean;\n protected _fontPadding?: number;\n protected _fillingFontPadding?: number;\n protected _wordCloudConfig?: WordCloudConfigType;\n protected _wordCloudShapeConfig?: WordCloudShapeConfigType;\n\n protected _padding?: IPadding;\n protected _defaultFontFamily: string;\n\n /**\n * @override\n */\n setAttrFromSpec() {\n super.setAttrFromSpec();\n // series布局相关\n this._padding = this._option.getChart().padding;\n\n // 普通词云 & 形状词云 共有spec相关\n this._nameField = this._spec.nameField;\n this._fontFamilyField = this._spec.fontFamilyField;\n this._fontWeightField = this._spec.fontWeightField;\n this._fontStyleField = this._spec.fontStyleField;\n this._colorHexField = this._spec.colorHexField;\n this._colorMode = this._spec.colorMode ?? 'ordinal';\n this._colorList = this._spec.colorList;\n this.setValueField(this._spec.valueField);\n this._fontWeightRange = this._spec.fontWeightRange ?? DEFAULT_FONT_WEIGHT_RANGE;\n this._rotateAngles = this._spec.rotateAngles ?? DEFAULT_ROTATE_ANGLES;\n this.setFontSizeRange(this._spec.fontSizeRange);\n this._maskShape = this._spec.maskShape ?? DEFAULT_MASK_SHAPE;\n this._keepAspect = this._spec.keepAspect;\n this._random = this._spec.random ?? DEFAULT_RANDOM;\n this._fontPadding = this._spec.word?.padding ?? DEFAULT_FONT_PADDING;\n this._textField = this._spec.word?.formatMethod ? WORD_CLOUD_TEXT : this._nameField;\n // 普通词云spec相关\n this._wordCloudConfig = {\n drawOutOfBound: DEFAULT_DRAW_OUT_OF_BOUND,\n layoutMode: 'default',\n zoomToFit: DEFAULT_ZOOM_TO_FIT,\n ...this._spec.wordCloudConfig\n };\n\n // 形状词云spec相关\n this._wordCloudShapeConfig = {\n fillingSeriesField: this.getSeriesField(),\n fillingRotateAngles: DEFAULT_ROTATE_ANGLES,\n layoutMode: 'default',\n ...this._spec.wordCloudShapeConfig\n };\n this._fillingFontPadding = this._spec.fillingWord?.padding ?? DEFAULT_FONT_PADDING;\n\n this._isWordCloudShape = !SHAPE_TYPE.includes(this._maskShape);\n this._defaultFontFamily = this._option.getTheme().fontFamily;\n }\n\n protected _wordMark: ITextMark;\n protected _fillingWordMark: ITextMark;\n initMark(): void {\n this._wordMark = this._createMark(BaseWordCloudSeries.mark.word, {\n defaultMorphElementKey: this._seriesField,\n groupKey: this._seriesField,\n isSeriesMark: true\n }) as ITextMark;\n if (this._isWordCloudShape) {\n this._fillingWordMark = this._createMark(BaseWordCloudSeries.mark.fillingWord) as ITextMark;\n }\n }\n\n initMarkStyle() {\n const wordMark = this._wordMark;\n const fillingWordMark = this._fillingWordMark;\n const wordSpec = this._spec.word ?? {};\n if (wordMark) {\n this.setMarkStyle(\n wordMark,\n {\n fill: this._colorHexField\n ? (datum: Datum) => datum[this._colorHexField]\n : this.getWordColorAttribute(this._seriesField, false),\n text: (datum: Datum) => datum[this._textField],\n x: (datum: Datum) => datum.x,\n y: (datum: Datum) => datum.y,\n fontFamily: (datum: Datum) => datum.fontFamily,\n fontSize: (datum: Datum) => datum.fontSize,\n fontStyle: (datum: Datum) => datum.fontStyle,\n fontWeight: (datum: Datum) => datum.fontWeight,\n angle: (datum: Datum) => datum.angle,\n visible: (datum: Datum) => !datum.isFillingWord && datum.visible\n },\n 'normal',\n AttributeLevel.Series\n );\n this.setMarkStyle(\n wordMark,\n {\n fontFamily: wordSpec.style?.fontFamily ?? this._defaultFontFamily\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n if (fillingWordMark) {\n this.setMarkStyle(\n fillingWordMark,\n {\n fill: this._wordCloudShapeConfig.fillingColorHexField\n ? (datum: Datum) => datum[this._wordCloudShapeConfig.fillingColorHexField]\n : this.getWordColorAttribute(this._wordCloudShapeConfig.fillingSeriesField, true),\n text: (datum: Datum) => datum[this._textField],\n x: (datum: Datum) => datum.x,\n y: (datum: Datum) => datum.y,\n fontFamily: (datum: Datum) => datum.fontFamily,\n fontSize: (datum: Datum) => datum.fontSize,\n fontStyle: (datum: Datum) => datum.fontStyle,\n fontWeight: (datum: Datum) => datum.fontWeight,\n angle: (datum: Datum) => datum.angle,\n visible: (datum: Datum) => datum.isFillingWord && datum.visible\n },\n 'normal',\n AttributeLevel.Series\n );\n\n this.setMarkStyle(\n fillingWordMark,\n {\n fontFamily: wordSpec.style?.fontFamily ?? this._defaultFontFamily\n },\n 'normal',\n AttributeLevel.User_Mark\n );\n }\n this._trigger.registerMark(wordMark);\n this._trigger.registerMark(fillingWordMark);\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._wordMark && this._tooltipHelper.activeTriggerSet.mark.add(this._wordMark);\n this._fillingWordMark && this._tooltipHelper.activeTriggerSet.mark.add(this._fillingWordMark);\n }\n\n initAnimation() {\n [this._wordMark, this._fillingWordMark].forEach(mark => {\n if (mark) {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n const params = {\n animationConfig: () => mark.getAnimationConfig()?.appear?.[0]\n };\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('wordCloud')(params, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.word, this._spec, this._markAttributeContext)\n )\n );\n }\n });\n }\n\n protected getWordOrdinalColorScale(field: string, isFillingWord: boolean) {\n const colorList = isFillingWord ? this._wordCloudShapeConfig.fillingColorList : this._colorList;\n const colorDomain = field ? this.getViewData()?.latestData.map((datum: Datum) => datum[field]) : [];\n const colorRange = colorList ?? this._option.globalScale.getScale('color')?.range() ?? this._getDataScheme();\n return new ColorOrdinalScale().domain(colorDomain).range?.(colorRange);\n }\n\n getWordColorAttribute(field: string, isFillingWord: boolean) {\n if (this._colorMode === 'ordinal') {\n return {\n scale: this.getWordOrdinalColorScale(field, isFillingWord),\n field: this._seriesField ?? DEFAULT_DATA_SERIES_FIELD\n };\n }\n // const valueScale = new LinearScale()\n // .domain(extent(this.getViewData()?.latestData.map((datum: Datum) => datum[field])), true)\n // .range([0, 1]);\n let colorList =\n (isFillingWord ? this._colorList : this._wordCloudShapeConfig.fillingColorList) ??\n this._option.globalScale.getScale('color').range();\n // 如果用户只输入了一个 color,无法构成 colorRange,则进行兜底\n if (colorList.length === 1) {\n colorList = [colorList[0], colorList[0]];\n }\n // 颜色插值 todo@chensiji\n // const interpolate = interpolateColors(colorList)\n // return (datum: Datum) => interpolate(valueScale.scale(datum[field]))\n return (datum: Datum) => colorList[0];\n }\n\n compile(): void {\n super.compile();\n const { width, height } = this._region.getLayoutRect();\n // 非正常尺寸下不进行布局\n if (!isValidNumber(width) || !isValidNumber(height) || !(height > 0 && width > 0)) {\n return;\n }\n\n const wordCloudTransforms: any[] = [];\n const valueField = this._valueField;\n const valueScale = new LinearScale();\n const fontWeightRange = this._fontWeightRange;\n const rotateAngles = this._rotateAngles;\n const fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;\n\n // fontWeight处理\n if (valueField) {\n const [minValue, maxValue] = extent(this.getViewData()?.latestData.map((datum: any) => +datum[valueField]));\n valueScale.domain([minValue, maxValue], true).range(fontWeightRange);\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_WEIGHT,\n callback: (datum: any) => {\n if (minValue === maxValue) {\n return valueScale.scale(maxValue);\n }\n return valueScale.scale(datum[valueField]);\n }\n });\n }\n\n // rotateAngles处理\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_ANGLE,\n callback: () => {\n return rotateAngles[Math.floor(Math.random() * rotateAngles.length)];\n }\n });\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_FILLING_ANGLE,\n callback: () => {\n return fillingRotateAngles[Math.floor(Math.random() * fillingRotateAngles.length)];\n }\n });\n const wordSpec = this._spec.word ?? {};\n\n // text fromat method 处理\n if (wordSpec.formatMethod) {\n wordCloudTransforms.push({\n type: 'map',\n as: WORD_CLOUD_TEXT,\n callback: wordSpec.formatMethod\n });\n }\n\n // 词云 transform\n if (!this._isWordCloudShape) {\n wordCloudTransforms.push({\n type: 'wordcloud',\n ...this._wordCloudTransformOption()\n });\n // 挂到mark的transform上\n (this._wordMark as ICompilableMark).getProduct().transform(wordCloudTransforms);\n }\n // 形状词云 transform\n else {\n wordCloudTransforms.push({\n type: 'wordcloudShape',\n // 形状词云中必须要传入dataIndexKey, 否则填充词无法绘制\n ...this._wordCloudShapeTransformOption()\n });\n }\n // 把transform挂载到data的product上\n this._data.getProduct().transform(wordCloudTransforms);\n }\n\n protected _wordCloudTransformOption(): Object {\n const { width, height } = this._region.getLayoutRect();\n const wordStyleSpec = this._spec.word?.style ?? {};\n\n return {\n // TIP: 非浏览器环境下,使用 fast 布局,否则会出现兼容问题\n layoutType: !isTrueBrowser(this._option.mode) ? 'fast' : this._wordCloudConfig.layoutMode,\n size: [width, height],\n shape: this._maskShape,\n dataIndexKey: DEFAULT_DATA_KEY,\n text: { field: this._textField },\n fontSize: this._valueField ? { field: this._valueField } : this._fontSizeRange[0],\n fontSizeRange: this._fontSizeRange === 'auto' ? null : this._fontSizeRange,\n padding: this._fontPadding,\n rotate: { field: WORD_CLOUD_ANGLE },\n fontFamily: this._fontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fontWeight: this._fontWeightField\n ? { field: this._fontWeightField }\n : this._valueField\n ? { field: WORD_CLOUD_WEIGHT }\n : null,\n fontStyle: this._fontStyleField ?? wordStyleSpec.fontStyle,\n\n randomVisible: this._random,\n clip: this._wordCloudConfig.drawOutOfBound === 'clip',\n shrink: this._wordCloudConfig.zoomToFit.shrink,\n enlarge: this._wordCloudConfig.zoomToFit.enlarge,\n minFontSize: this._wordCloudConfig.zoomToFit.fontSizeLimitMin,\n progressiveTime: this._wordCloudConfig.progressiveTime,\n progressiveStep: this._wordCloudConfig.progressiveStep\n };\n }\n\n protected _wordCloudShapeTransformOption(): Object {\n const { width, height } = this._region.getLayoutRect();\n const wordStyleSpec = this._spec.word?.style ?? {};\n const wordCloudShapeConfig = this._wordCloudShapeConfig ?? {};\n const fillingRotateAngles = this._wordCloudShapeConfig.fillingRotateAngles;\n\n return {\n dataIndexKey: DEFAULT_DATA_KEY,\n\n size: [width, height],\n shape: this._maskShape,\n\n text: { field: this._textField },\n fontSize: this._valueField ? { field: this._valueField } : this._fontSizeRange[0],\n fontSizeRange: this._fontSizeRange === 'auto' ? null : this._fontSizeRange, // 如果配置为'auto', 则形状词云fontSizeRange不设默认值(对齐3.x效果)\n padding: this._fontPadding,\n rotateList: this._rotateAngles,\n fontFamily: this._fontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fontWeight: this._fontWeightField\n ? { field: this._fontWeightField }\n : this._valueField\n ? { field: WORD_CLOUD_WEIGHT }\n : null,\n fontStyle: this._fontStyleField ?? wordStyleSpec.fontStyle,\n\n fillingFontFamily:\n wordCloudShapeConfig.fillingFontFamilyField ?? wordStyleSpec.fontFamily ?? this._defaultFontFamily,\n fillingPadding: this._fillingFontPadding,\n fillingFontStyle: wordCloudShapeConfig.fillingFontStyleField ?? wordStyleSpec.fontStyle,\n fillingFontWeight: wordCloudShapeConfig.fillingFontWeightField ?? wordStyleSpec.fontWeight, // 填充词fontWeight默认不跟随valueField\n fillingRotateList: fillingRotateAngles,\n\n fillingTimes: wordCloudShapeConfig.fillingTimes,\n fillingXStep: wordCloudShapeConfig.fillingXStep,\n fillingYStep: wordCloudShapeConfig.fillingYStep,\n fillingXRatioStep: wordCloudShapeConfig.fillingXRatioStep,\n fillingYRatioStep: wordCloudShapeConfig.fillingYRatioStep,\n fillingInitialOpacity: wordCloudShapeConfig.fillingInitialOpacity,\n fillingDeltaOpacity: wordCloudShapeConfig.fillingDeltaOpacity,\n fillingInitialFontSize: wordCloudShapeConfig.fillingInitialFontSize,\n fillingDeltaFontSize: wordCloudShapeConfig.fillingDeltaFontSize,\n\n ratio: wordCloudShapeConfig.ratio,\n fillingRatio: wordCloudShapeConfig.fillingRatio,\n removeWhiteBorder: wordCloudShapeConfig.removeWhiteBorder,\n textLayoutTimes: wordCloudShapeConfig.textLayoutTimes,\n fontSizeShrinkFactor: wordCloudShapeConfig.fontSizeShrinkFactor,\n stepFactor: wordCloudShapeConfig.stepFactor,\n layoutMode: wordCloudShapeConfig.layoutMode,\n importantWordCount: wordCloudShapeConfig.importantWordCount,\n globalShinkLimit: wordCloudShapeConfig.globalShinkLimit,\n fontSizeEnlargeFactor: wordCloudShapeConfig.fontSizeEnlargeFactor,\n fillingDeltaFontSizeFactor: wordCloudShapeConfig.fillingDeltaFontSizeFactor\n };\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: Array<'max' | 'min' | 'values'> }[] = [];\n fields.push({ key: this._nameField, operations: ['values'] });\n fields.push({ key: this._valueField, operations: ['max', 'min'] });\n return fields;\n }\n dataToPosition(data: Datum): IPoint {\n return null;\n }\n dataToPositionX(data: any): number {\n return null;\n }\n dataToPositionY(data: any): number {\n return null;\n }\n dataToPositionZ(data: any): number {\n return null;\n }\n valueToPosition(value1: any, value2?: any): IPoint {\n return null;\n }\n\n getGroupFields(): string[] {\n // do nothing\n return [];\n }\n\n getStackGroupFields(): string[] {\n // do nothing\n return [];\n }\n\n getStackValueField(): string {\n // do nothing\n return '';\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this.compile();\n }\n\n getActiveMarks(): IMark[] {\n return [this._wordMark, this._fillingWordMark];\n }\n}\n"]}
@@ -54,7 +54,9 @@ const themeExist = name => !!(0, vutils_1.isString)(name) && exports.themes.has(
54
54
  exports.themeExist = themeExist;
55
55
 
56
56
  const getMergedTheme = theme => {
57
- const baseTheme = (0, exports.getTheme)(exports.defaultThemeName);
57
+ var _a;
58
+ const baseThemeName = null !== (_a = theme.type) && void 0 !== _a ? _a : exports.defaultThemeName, baseTheme = (0,
59
+ exports.getTheme)(baseThemeName);
58
60
  return (0, merge_theme_1.mergeTheme)({}, baseTheme, theme);
59
61
  };
60
62
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme/builtin/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["export * from './light';\nexport * from './dark';\n\nimport { isString } from '@visactor/vutils';\nimport { mergeTheme } from '../../util/spec/merge-theme';\nimport type { ITheme } from '../interface';\nimport { lightTheme } from './light';\n// import { darkTheme } from './dark';\nimport { preprocessTheme } from '../../util/spec/preprocess';\n\n/** 声明内置主题(含 token 未转换) */\nexport const builtinThemes: Record<string, ITheme> = {\n [lightTheme.name]: lightTheme\n // [darkTheme.name]: darkTheme\n};\n/** 默认主题名称 */\nexport const defaultThemeName = lightTheme.name;\n\n/** 全局主题 map (包含用户新注册的主题)(含 token 未转换) */\nexport const themes: Map<string, ITheme> = new Map(Object.keys(builtinThemes).map(key => [key, builtinThemes[key]]));\n\n/** 全局已将 token 转换的主题 map (包含用户新注册的主题) */\nconst transformedThemes: Map<string, ITheme> = new Map(\n Object.keys(builtinThemes).map(key => [key, preprocessTheme(builtinThemes[key], builtinThemes[key].colorScheme)])\n);\n\n/** 主题 map 中的元素是否 merge 过默认主题 (非默认主题的其他内置主题没有 merge 过默认主题) */\nexport const hasThemeMerged: Map<string, boolean> = new Map(\n Object.keys(builtinThemes).map(key => [key, key === defaultThemeName])\n);\n\n/** 注册主题 */\nexport const registerTheme = (name: string, theme: Partial<ITheme>) => {\n if (!name) {\n return;\n }\n // 所有主题基于默认主题扩展,保证基础值\n const mergedTheme = getMergedTheme(theme);\n themes.set(name, mergedTheme);\n transformedThemes.set(name, preprocessTheme(mergedTheme, mergedTheme.colorScheme));\n hasThemeMerged.set(name, true);\n};\n/**\n * 获取注册过的主题\n * @param name 主题名称\n * @param transformed 是否获取 token 转换后的主题\n * @returns 返回主题\n */\nexport const getTheme = (name: string = defaultThemeName, transformed: boolean = false) => {\n if (hasThemeMerged.has(name) && !hasThemeMerged.get(name)) {\n // 重新 merge 默认主题\n registerTheme(name, themes.get(name));\n }\n\n if (transformed) {\n return transformedThemes.get(name);\n }\n\n return themes.get(name);\n};\n\n/** 删除主题 */\nexport const removeTheme = (name: string): boolean => {\n return themes.delete(name) && transformedThemes.delete(name) && hasThemeMerged.delete(name);\n};\n\n/** 主题是否存在 */\nexport const themeExist = (name: any) => {\n if (!isString(name)) {\n return false;\n }\n return themes.has(name);\n};\n\n/** 使新主题基于默认主题扩展,保证基础值 */\nexport const getMergedTheme = (theme: Partial<ITheme>): ITheme => {\n const baseTheme = getTheme(defaultThemeName);\n return mergeTheme({}, baseTheme, theme);\n};\n"]}
1
+ {"version":3,"sources":["../src/theme/builtin/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["export * from './light';\nexport * from './dark';\n\nimport { isString } from '@visactor/vutils';\nimport { mergeTheme } from '../../util/spec/merge-theme';\nimport type { ITheme } from '../interface';\nimport { lightTheme } from './light';\n// import { darkTheme } from './dark';\nimport { preprocessTheme } from '../../util/spec/preprocess';\n\n/** 声明内置主题(含 token 未转换) */\nexport const builtinThemes: Record<string, ITheme> = {\n [lightTheme.name]: lightTheme\n // [darkTheme.name]: darkTheme\n};\n/** 默认主题名称 */\nexport const defaultThemeName = lightTheme.name;\n\n/** 全局主题 map (包含用户新注册的主题)(含 token 未转换) */\nexport const themes: Map<string, ITheme> = new Map(Object.keys(builtinThemes).map(key => [key, builtinThemes[key]]));\n\n/** 全局已将 token 转换的主题 map (包含用户新注册的主题) */\nconst transformedThemes: Map<string, ITheme> = new Map(\n Object.keys(builtinThemes).map(key => [key, preprocessTheme(builtinThemes[key], builtinThemes[key].colorScheme)])\n);\n\n/** 主题 map 中的元素是否 merge 过默认主题 (非默认主题的其他内置主题没有 merge 过默认主题) */\nexport const hasThemeMerged: Map<string, boolean> = new Map(\n Object.keys(builtinThemes).map(key => [key, key === defaultThemeName])\n);\n\n/** 注册主题 */\nexport const registerTheme = (name: string, theme: Partial<ITheme>) => {\n if (!name) {\n return;\n }\n // 所有主题基于默认主题扩展,保证基础值\n const mergedTheme = getMergedTheme(theme);\n themes.set(name, mergedTheme);\n transformedThemes.set(name, preprocessTheme(mergedTheme, mergedTheme.colorScheme));\n hasThemeMerged.set(name, true);\n};\n/**\n * 获取注册过的主题\n * @param name 主题名称\n * @param transformed 是否获取 token 转换后的主题\n * @returns 返回主题\n */\nexport const getTheme = (name: string = defaultThemeName, transformed: boolean = false) => {\n if (hasThemeMerged.has(name) && !hasThemeMerged.get(name)) {\n // 重新 merge 默认主题\n registerTheme(name, themes.get(name));\n }\n\n if (transformed) {\n return transformedThemes.get(name);\n }\n\n return themes.get(name);\n};\n\n/** 删除主题 */\nexport const removeTheme = (name: string): boolean => {\n return themes.delete(name) && transformedThemes.delete(name) && hasThemeMerged.delete(name);\n};\n\n/** 主题是否存在 */\nexport const themeExist = (name: any) => {\n if (!isString(name)) {\n return false;\n }\n return themes.has(name);\n};\n\n/** 使新主题基于默认主题扩展,保证基础值 */\nexport const getMergedTheme = (theme: Partial<ITheme>): ITheme => {\n const baseThemeName = theme.type ?? defaultThemeName;\n const baseTheme = getTheme(baseThemeName);\n return mergeTheme({}, baseTheme, theme);\n};\n"]}
@@ -13,7 +13,7 @@ export type IPercentOffset = {
13
13
  offset?: number;
14
14
  };
15
15
  export type ILayoutPercent = IPercent | number;
16
- export type ILayoutType = 'region-relative' | 'region' | 'normal' | 'absolute' | 'normal-inline';
16
+ export type ILayoutType = 'region-relative' | 'region-relative-overlap' | 'region' | 'normal' | 'absolute' | 'normal-inline';
17
17
  export type ILayoutOrientPadding = {
18
18
  left?: ILayoutNumber;
19
19
  right?: ILayoutNumber;
@@ -21,3 +21,4 @@ export type ILayoutOrientPadding = {
21
21
  bottom?: ILayoutNumber;
22
22
  };
23
23
  export type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];
24
+ export type ILayoutAlignSelf = 'start' | 'end' | 'middle';
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/typings/layout.ts"],"names":[],"mappings":"","file":"layout.js","sourcesContent":["export type ILayoutNumber = number | IPercent | ((layoutRect: ILayoutRect) => number) | IPercentOffset;\n\nexport interface ILayoutPoint {\n x: number;\n y: number;\n}\n\nexport interface ILayoutRect {\n width: number;\n height: number;\n}\n\nexport type IPercent = `${number}%`;\n\nexport type IPercentOffset = { percent?: number; offset?: number };\n\nexport type ILayoutPercent = IPercent | number;\n\n/**\n * 相对布局和绝对布局\n * 在相对布局结束后进行二次的绝对布局\n * 绝对布局会只根据 chart 进行相对处理\n */\n\nexport type ILayoutType = 'region-relative' | 'region' | 'normal' | 'absolute' | 'normal-inline';\n\nexport type ILayoutOrientPadding = {\n left?: ILayoutNumber;\n right?: ILayoutNumber;\n top?: ILayoutNumber;\n bottom?: ILayoutNumber;\n};\n\n/** 布局 padding的配置 */\nexport type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];\n"]}
1
+ {"version":3,"sources":["../src/typings/layout.ts"],"names":[],"mappings":"","file":"layout.js","sourcesContent":["export type ILayoutNumber = number | IPercent | ((layoutRect: ILayoutRect) => number) | IPercentOffset;\n\nexport interface ILayoutPoint {\n x: number;\n y: number;\n}\n\nexport interface ILayoutRect {\n width: number;\n height: number;\n}\n\nexport type IPercent = `${number}%`;\n\nexport type IPercentOffset = { percent?: number; offset?: number };\n\nexport type ILayoutPercent = IPercent | number;\n\n/**\n * 相对布局和绝对布局\n * 在相对布局结束后进行二次的绝对布局\n * 绝对布局会只根据 chart 进行相对处理\n */\n\nexport type ILayoutType =\n | 'region-relative' // 独立占位,不重合\n | 'region-relative-overlap' // 允许重合放置\n | 'region'\n | 'normal'\n | 'absolute'\n | 'normal-inline';\n\nexport type ILayoutOrientPadding = {\n left?: ILayoutNumber;\n right?: ILayoutNumber;\n top?: ILayoutNumber;\n bottom?: ILayoutNumber;\n};\n\n/** 布局 padding的配置 */\nexport type ILayoutPaddingSpec = ILayoutOrientPadding | ILayoutNumber | ILayoutNumber[];\n\nexport type ILayoutAlignSelf = 'start' | 'end' | 'middle';\n"]}
@@ -107,7 +107,7 @@ export const registerLineAnimation = () => {
107
107
  update: [ {
108
108
  type: "update",
109
109
  options: {
110
- excludeChannels: "points"
110
+ excludeChannels: [ "points", "defined" ]
111
111
  }
112
112
  }, {
113
113
  channel: [ "points" ],
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/animation/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EACL,IAAI,EACJ,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,EAC7B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,+BAA+B,EAC/B,8BAA8B,EAC9B,+BAA+B,EAC/B,6BAA6B,EAC7B,8BAA8B,EAC9B,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,MAAM,EAAE;QACN,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,UAAU;KACnB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,QAAQ;KACjB;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,QAAQ;KACjB;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,QAAQ;KACjB;IACD,SAAS,EAAE;QACT,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,SAAS;KAClB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;IAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IACzB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;IACzB,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,EAAE;IAC9C,OAAO,CAAC,iBAAiB,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,EAAE;IAC7C,OAAO,CAAC,iBAAiB,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,EAAE;IACtD,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,MAAuC,EAAE,EAAE;QAC1F,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,oBAAoB;gBAC5B,gBAAgB,EAAE,CAAC,KAAU,EAAE,OAAiB,EAAE,EAAE;oBAClD,OAAO;wBACL,aAAa,EAAE,IAAI;wBACnB,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE;wBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;wBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;wBACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;qBACxB,CAAC;gBACJ,CAAC;aACF;YACD,SAAS,EAAE;gBACT,MAAM,EAAE,oBAAoB;gBAC5B,gBAAgB,EAAE,CAAC,KAAU,EAAE,OAAiB,EAAE,EAAE;oBAClD,OAAO;wBACL,aAAa,EAAE,KAAK;wBACpB,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE;wBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;wBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;wBACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;qBACxB,CAAC;gBACJ,CAAC;aACF;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,OAAO,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,MAA4B,EAAE,MAAwB,EAAE,EAAE;QAC3F,OAAO;YACL,MAAM,EAAE,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;YAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACzB,MAAM,EAAE;gBACN;oBACE,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE;iBACvC;gBACD;oBACE,OAAO,EAAE,CAAC,QAAQ,CAAC;oBACnB,MAAM,EAAE,eAAe;oBACvB,QAAQ,EAAE,wBAAwB,CAAC,MAAM,CAAC,QAAQ;oBAClD,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC,MAAM;iBAC/C;aACF;YACD,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SACV,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,EAAE;IAClD,IAAI,CAAC,YAAY,CAAC;QAChB,wBAAwB;QACxB,yBAAyB;QACzB,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB;QACxB,yBAAyB;QACzB,0BAA0B;QAC1B,uBAAuB;KACxB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,EAAE;IAChD,IAAI,CAAC,YAAY,CAAC;QAChB,6BAA6B;QAC7B,8BAA8B;QAC9B,4BAA4B;QAC5B,6BAA6B;QAC7B,6BAA6B;QAC7B,8BAA8B;KAC/B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,EAAE;IAC/C,IAAI,CAAC,YAAY,CAAC;QAChB,6BAA6B;QAC7B,8BAA8B;QAC9B,4BAA4B;QAC5B,6BAA6B;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,EAAE;IACtD,IAAI,CAAC,YAAY,CAAC;QAChB,6BAA6B;QAC7B,8BAA8B;QAC9B,8BAA8B;QAC9B,+BAA+B;QAC/B,8BAA8B;QAC9B,+BAA+B;QAC/B,uBAAuB;QACvB,wBAAwB;KACzB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,EAAE;IACnD,IAAI,CAAC,YAAY,CAAC,CAAC,6BAA6B,EAAE,8BAA8B,CAAC,CAAC,CAAC;AACrF,CAAC,CAAC","file":"config.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { TagPointsUpdate, ClipDirectionAnimate } from '@visactor/vrender-core';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport type { ILineAnimationParams, LineAppearPreset } from '../series/line/animation';\nimport { linePresetAnimation } from '../series/line/animation';\nimport type { MarkAnimationSpec, ICartesianGroupAnimationParams } from './interface';\nimport { Factory } from '../core/factory';\nimport {\n View,\n registerScaleInAnimation,\n registerScaleOutAnimation,\n registerFadeInAnimation,\n registerFadeOutAnimation,\n registerClipInAnimation,\n registerClipOutAnimation,\n registerGrowAngleInAnimation,\n registerGrowAngleOutAnimation,\n registerGrowCenterInAnimation,\n registerGrowCenterOutAnimation,\n registerGrowHeightInAnimation,\n registerGrowHeightOutAnimation,\n registerGrowPointsInAnimation,\n registerGrowPointsOutAnimation,\n registerGrowPointsXInAnimation,\n registerGrowPointsXOutAnimation,\n registerGrowPointsYInAnimation,\n registerGrowPointsYOutAnimation,\n registerGrowRadiusInAnimation,\n registerGrowRadiusOutAnimation,\n registerGrowWidthInAnimation,\n registerGrowWidthOutAnimation,\n registerMoveInAnimation,\n registerMoveOutAnimation,\n registerRotateInAnimation,\n registerRotateOutAnimation,\n registerUpdateAnimation\n} from '@visactor/vgrammar-core';\n\nexport const DEFAULT_ANIMATION_CONFIG = {\n appear: {\n duration: 1000,\n easing: 'cubicOut'\n },\n update: {\n type: 'update',\n duration: 300,\n easing: 'linear'\n },\n enter: {\n duration: 300,\n easing: 'linear'\n },\n exit: {\n duration: 300,\n easing: 'linear'\n },\n disappear: {\n duration: 500,\n easing: 'cubicIn'\n }\n};\n\nexport const ScaleInOutAnimation = {\n appear: { type: 'scaleIn' },\n enter: { type: 'scaleIn' },\n exit: { type: 'scaleOut' },\n disappear: { type: 'scaleOut' }\n};\n\nexport const FadeInOutAnimation = {\n appear: { type: 'fadeIn' },\n enter: { type: 'fadeIn' },\n exit: { type: 'fadeOut' },\n disappear: { type: 'fadeOut' }\n};\n\nexport const registerScaleInOutAnimation = () => {\n Factory.registerAnimation('scaleInOut', () => ScaleInOutAnimation);\n};\n\nexport const registerFadeInOutAnimation = () => {\n Factory.registerAnimation('fadeInOut', () => FadeInOutAnimation);\n};\n\nexport const registerCartesianGroupClipAnimation = () => {\n Factory.registerAnimation('cartesianGroupClip', (params?: ICartesianGroupAnimationParams) => {\n return {\n appear: {\n custom: ClipDirectionAnimate,\n customParameters: (datum: any, element: IElement) => {\n return {\n animationType: 'in',\n group: element.getGraphicItem(),\n direction: params.direction(),\n width: params.width(),\n height: params.height(),\n orient: params.orient()\n };\n }\n },\n disappear: {\n custom: ClipDirectionAnimate,\n customParameters: (datum: any, element: IElement) => {\n return {\n animationType: 'out',\n group: element.getGraphicItem(),\n direction: params.direction(),\n width: params.width(),\n height: params.height(),\n orient: params.orient()\n };\n }\n }\n };\n });\n};\n\nexport const registerLineAnimation = () => {\n Factory.registerAnimation('line', (params: ILineAnimationParams, preset: LineAppearPreset) => {\n return {\n appear: linePresetAnimation(params, preset),\n enter: { type: 'fadeIn' },\n exit: { type: 'fadeOut' },\n update: [\n {\n type: 'update',\n options: { excludeChannels: 'points' }\n },\n {\n channel: ['points'],\n custom: TagPointsUpdate,\n duration: DEFAULT_ANIMATION_CONFIG.update.duration,\n easing: DEFAULT_ANIMATION_CONFIG.update.easing\n }\n ],\n disappear: { type: 'clipOut' }\n } as MarkAnimationSpec;\n });\n};\n\nexport const registerVGrammarCommonAnimation = () => {\n View.useRegisters([\n registerScaleInAnimation,\n registerScaleOutAnimation,\n registerFadeInAnimation,\n registerFadeOutAnimation,\n registerMoveInAnimation,\n registerMoveOutAnimation,\n registerRotateInAnimation,\n registerRotateOutAnimation,\n registerUpdateAnimation\n ]);\n};\n\nexport const registerVGrammarRectAnimation = () => {\n View.useRegisters([\n registerGrowHeightInAnimation,\n registerGrowHeightOutAnimation,\n registerGrowWidthInAnimation,\n registerGrowWidthOutAnimation,\n registerGrowCenterInAnimation,\n registerGrowCenterOutAnimation\n ]);\n};\n\nexport const registerVGrammarArcAnimation = () => {\n View.useRegisters([\n registerGrowRadiusInAnimation,\n registerGrowRadiusOutAnimation,\n registerGrowAngleInAnimation,\n registerGrowAngleOutAnimation\n ]);\n};\n\nexport const registerVGrammarLineOrAreaAnimation = () => {\n View.useRegisters([\n registerGrowPointsInAnimation,\n registerGrowPointsOutAnimation,\n registerGrowPointsXInAnimation,\n registerGrowPointsXOutAnimation,\n registerGrowPointsYInAnimation,\n registerGrowPointsYOutAnimation,\n registerClipInAnimation,\n registerClipOutAnimation\n ]);\n};\n\nexport const registerVGrammarPolygonAnimation = () => {\n View.useRegisters([registerGrowPointsInAnimation, registerGrowPointsOutAnimation]);\n};\n"]}
1
+ {"version":3,"sources":["../src/animation/config.ts"],"names":[],"mappings":"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","file":"config.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { TagPointsUpdate, ClipDirectionAnimate } from '@visactor/vrender-core';\nimport type { IElement } from '@visactor/vgrammar-core';\nimport type { ILineAnimationParams, LineAppearPreset } from '../series/line/animation';\nimport { linePresetAnimation } from '../series/line/animation';\nimport type { MarkAnimationSpec, ICartesianGroupAnimationParams } from './interface';\nimport { Factory } from '../core/factory';\nimport {\n View,\n registerScaleInAnimation,\n registerScaleOutAnimation,\n registerFadeInAnimation,\n registerFadeOutAnimation,\n registerClipInAnimation,\n registerClipOutAnimation,\n registerGrowAngleInAnimation,\n registerGrowAngleOutAnimation,\n registerGrowCenterInAnimation,\n registerGrowCenterOutAnimation,\n registerGrowHeightInAnimation,\n registerGrowHeightOutAnimation,\n registerGrowPointsInAnimation,\n registerGrowPointsOutAnimation,\n registerGrowPointsXInAnimation,\n registerGrowPointsXOutAnimation,\n registerGrowPointsYInAnimation,\n registerGrowPointsYOutAnimation,\n registerGrowRadiusInAnimation,\n registerGrowRadiusOutAnimation,\n registerGrowWidthInAnimation,\n registerGrowWidthOutAnimation,\n registerMoveInAnimation,\n registerMoveOutAnimation,\n registerRotateInAnimation,\n registerRotateOutAnimation,\n registerUpdateAnimation\n} from '@visactor/vgrammar-core';\n\nexport const DEFAULT_ANIMATION_CONFIG = {\n appear: {\n duration: 1000,\n easing: 'cubicOut'\n },\n update: {\n type: 'update',\n duration: 300,\n easing: 'linear'\n },\n enter: {\n duration: 300,\n easing: 'linear'\n },\n exit: {\n duration: 300,\n easing: 'linear'\n },\n disappear: {\n duration: 500,\n easing: 'cubicIn'\n }\n};\n\nexport const ScaleInOutAnimation = {\n appear: { type: 'scaleIn' },\n enter: { type: 'scaleIn' },\n exit: { type: 'scaleOut' },\n disappear: { type: 'scaleOut' }\n};\n\nexport const FadeInOutAnimation = {\n appear: { type: 'fadeIn' },\n enter: { type: 'fadeIn' },\n exit: { type: 'fadeOut' },\n disappear: { type: 'fadeOut' }\n};\n\nexport const registerScaleInOutAnimation = () => {\n Factory.registerAnimation('scaleInOut', () => ScaleInOutAnimation);\n};\n\nexport const registerFadeInOutAnimation = () => {\n Factory.registerAnimation('fadeInOut', () => FadeInOutAnimation);\n};\n\nexport const registerCartesianGroupClipAnimation = () => {\n Factory.registerAnimation('cartesianGroupClip', (params?: ICartesianGroupAnimationParams) => {\n return {\n appear: {\n custom: ClipDirectionAnimate,\n customParameters: (datum: any, element: IElement) => {\n return {\n animationType: 'in',\n group: element.getGraphicItem(),\n direction: params.direction(),\n width: params.width(),\n height: params.height(),\n orient: params.orient()\n };\n }\n },\n disappear: {\n custom: ClipDirectionAnimate,\n customParameters: (datum: any, element: IElement) => {\n return {\n animationType: 'out',\n group: element.getGraphicItem(),\n direction: params.direction(),\n width: params.width(),\n height: params.height(),\n orient: params.orient()\n };\n }\n }\n };\n });\n};\n\nexport const registerLineAnimation = () => {\n Factory.registerAnimation('line', (params: ILineAnimationParams, preset: LineAppearPreset) => {\n return {\n appear: linePresetAnimation(params, preset),\n enter: { type: 'fadeIn' },\n exit: { type: 'fadeOut' },\n update: [\n {\n type: 'update',\n options: { excludeChannels: ['points', 'defined'] }\n },\n {\n channel: ['points'],\n custom: TagPointsUpdate,\n duration: DEFAULT_ANIMATION_CONFIG.update.duration,\n easing: DEFAULT_ANIMATION_CONFIG.update.easing\n }\n ],\n disappear: { type: 'clipOut' }\n } as MarkAnimationSpec;\n });\n};\n\nexport const registerVGrammarCommonAnimation = () => {\n View.useRegisters([\n registerScaleInAnimation,\n registerScaleOutAnimation,\n registerFadeInAnimation,\n registerFadeOutAnimation,\n registerMoveInAnimation,\n registerMoveOutAnimation,\n registerRotateInAnimation,\n registerRotateOutAnimation,\n registerUpdateAnimation\n ]);\n};\n\nexport const registerVGrammarRectAnimation = () => {\n View.useRegisters([\n registerGrowHeightInAnimation,\n registerGrowHeightOutAnimation,\n registerGrowWidthInAnimation,\n registerGrowWidthOutAnimation,\n registerGrowCenterInAnimation,\n registerGrowCenterOutAnimation\n ]);\n};\n\nexport const registerVGrammarArcAnimation = () => {\n View.useRegisters([\n registerGrowRadiusInAnimation,\n registerGrowRadiusOutAnimation,\n registerGrowAngleInAnimation,\n registerGrowAngleOutAnimation\n ]);\n};\n\nexport const registerVGrammarLineOrAreaAnimation = () => {\n View.useRegisters([\n registerGrowPointsInAnimation,\n registerGrowPointsOutAnimation,\n registerGrowPointsXInAnimation,\n registerGrowPointsXOutAnimation,\n registerGrowPointsYInAnimation,\n registerGrowPointsYOutAnimation,\n registerClipInAnimation,\n registerClipOutAnimation\n ]);\n};\n\nexport const registerVGrammarPolygonAnimation = () => {\n View.useRegisters([registerGrowPointsInAnimation, registerGrowPointsOutAnimation]);\n};\n"]}
@@ -34,6 +34,8 @@ export interface IRenderOption {
34
34
  pluginList?: string[];
35
35
  optimize?: IOptimizeType;
36
36
  enableHtmlAttribute?: boolean;
37
+ supportsTouchEvents?: boolean;
38
+ supportsPointerEvents?: boolean;
37
39
  }
38
40
  export type CompilerListenerParameters = {
39
41
  type: EventType;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/compile/interface/compiler.ts"],"names":[],"mappings":"","file":"compiler.js","sourcesContent":["import type { IColor, IStageParams, IStage, ILayer } from '@visactor/vrender-core';\nimport type { EventSourceType, EventType } from '../../event/interface';\nimport type { RenderMode } from '../../typings/spec/common';\nimport type { IBoundsLike } from '@visactor/vutils';\nimport type { GrammarType, IGrammarItem } from './compilable-item';\nimport type { StringOrNumber } from '../../typings';\n\nexport interface IRenderContainer {\n dom?: HTMLElement | 'none';\n canvas?: HTMLCanvasElement | string;\n}\n\n/**\n * @since 1.8.0\n */\nexport type IOptimizeType = {\n // 视口不在可视区,跳过渲染,默认为true\n skipRenderWithOutRange?: boolean;\n // 跳过图元在区间外的判断\n // 不存在dirtyBounds的时候,根据该配置判断是否关闭图元的超出边界判定\n // 如果有dirtyBounds那么该配置不生效\n disableCheckGraphicWidthOutRange?: boolean;\n};\n\nexport interface IRenderOption {\n /**\n * 配置渲染环境,默认为 'desktop-browser',当需要在非浏览器环境渲染 VChart 时,需要配置该属性。\n * - 'desktop-browser': 默认模式,适用于 PC 及 H5\n * - 'mobile-browser': H5 模式\n * - 'node': Node 渲染\n * - 'worker': worker 模式\n * - 'miniApp': 小程序模式\n * - 'lynx': lynx 渲染\n * @default 'desktop-browser'\n */\n mode?: RenderMode;\n /**\n * 渲染环境参数配置\n */\n modeParams?:\n | {\n tooltipCanvasId?: StringOrNumber;\n [key: string]: any;\n }\n | unknown;\n /**\n * 设置屏幕分辨率\n */\n dpr?: number;\n /**\n * 图表交互全局开关,默认为 `true`,开启。\n * @default true\n */\n interactive?: boolean;\n /**\n * 指定绘制的区域\n */\n viewBox?: IBoundsLike;\n /**\n * 用于告诉底层的渲染引擎 VRender,图表的 Canvas 是否是受控制的canvas,如果不是的话,不会进行resize等操作。\n * @default true\n */\n canvasControled?: boolean;\n /**\n * 外部传入的 VRender stage\n */\n stage?: IStage;\n /**\n * 外部传入的 VRender layer\n */\n layer?: ILayer;\n\n /**\n * 绘制之前的钩子函数\n */\n beforeRender?: IStageParams['beforeRender'];\n /**\n * 绘制之后的钩子函数\n */\n afterRender?: IStageParams['afterRender'];\n /**\n * 绘图区域背景色设置\n */\n background?: IColor;\n /**\n * 日志类型,用于开发调试\n */\n logLevel?: number;\n /**\n * 错误消息回调函数\n */\n onError?: (...args: any[]) => void;\n /**\n * 是否关闭dirtyBounds\n * @default false\n */\n disableDirtyBounds?: boolean;\n /**\n * 是否开启view3d的变换模式\n */\n enableView3dTransform?: boolean;\n /**\n * vrender 的插件列表\n */\n pluginList?: string[];\n /**\n * @since 1.8.0\n */\n optimize?: IOptimizeType;\n /**\n * @since 1.8.3\n */\n enableHtmlAttribute?: boolean;\n}\n\nexport type CompilerListenerParameters = {\n type: EventType;\n event: Event;\n source: EventSourceType;\n // FIXME: 这里 item 应当为场景树的 Item 类型\n item: any | null;\n datum: any | null;\n markId: number | null;\n modelId: number | null;\n markUserId: StringOrNumber | null;\n modelUserId: StringOrNumber | null;\n};\n\nexport type CompilerModel = Record<GrammarType, IProductMap<IGrammarItem>>;\n\nexport interface IProductMap<T extends IGrammarItem> {\n /** 编译产物 id 和对应的在 vchart 中的 GrammarItem */\n [productId: string]: IGrammarItemMap<T>;\n}\n\nexport interface IGrammarItemMap<T extends IGrammarItem> {\n /** GrammarItem id 和 对应的引用 */\n [id: number]: T;\n}\n"]}
1
+ {"version":3,"sources":["../src/compile/interface/compiler.ts"],"names":[],"mappings":"","file":"compiler.js","sourcesContent":["import type { IColor, IStageParams, IStage, ILayer } from '@visactor/vrender-core';\nimport type { EventSourceType, EventType } from '../../event/interface';\nimport type { RenderMode } from '../../typings/spec/common';\nimport type { IBoundsLike } from '@visactor/vutils';\nimport type { GrammarType, IGrammarItem } from './compilable-item';\nimport type { StringOrNumber } from '../../typings';\n\nexport interface IRenderContainer {\n dom?: HTMLElement | 'none';\n canvas?: HTMLCanvasElement | string;\n}\n\n/**\n * @since 1.8.0\n */\nexport type IOptimizeType = {\n // 视口不在可视区,跳过渲染,默认为true\n skipRenderWithOutRange?: boolean;\n // 跳过图元在区间外的判断\n // 不存在dirtyBounds的时候,根据该配置判断是否关闭图元的超出边界判定\n // 如果有dirtyBounds那么该配置不生效\n disableCheckGraphicWidthOutRange?: boolean;\n};\n\nexport interface IRenderOption {\n /**\n * 配置渲染环境,默认为 'desktop-browser',当需要在非浏览器环境渲染 VChart 时,需要配置该属性。\n * - 'desktop-browser': 默认模式,适用于 PC 及 H5\n * - 'mobile-browser': H5 模式\n * - 'node': Node 渲染\n * - 'worker': worker 模式\n * - 'miniApp': 小程序模式\n * - 'lynx': lynx 渲染\n * @default 'desktop-browser'\n */\n mode?: RenderMode;\n /**\n * 渲染环境参数配置\n */\n modeParams?:\n | {\n tooltipCanvasId?: StringOrNumber;\n [key: string]: any;\n }\n | unknown;\n /**\n * 设置屏幕分辨率\n */\n dpr?: number;\n /**\n * 图表交互全局开关,默认为 `true`,开启。\n * @default true\n */\n interactive?: boolean;\n /**\n * 指定绘制的区域\n */\n viewBox?: IBoundsLike;\n /**\n * 用于告诉底层的渲染引擎 VRender,图表的 Canvas 是否是受控制的canvas,如果不是的话,不会进行resize等操作。\n * @default true\n */\n canvasControled?: boolean;\n /**\n * 外部传入的 VRender stage\n */\n stage?: IStage;\n /**\n * 外部传入的 VRender layer\n */\n layer?: ILayer;\n\n /**\n * 绘制之前的钩子函数\n */\n beforeRender?: IStageParams['beforeRender'];\n /**\n * 绘制之后的钩子函数\n */\n afterRender?: IStageParams['afterRender'];\n /**\n * 绘图区域背景色设置\n */\n background?: IColor;\n /**\n * 日志类型,用于开发调试\n */\n logLevel?: number;\n /**\n * 错误消息回调函数\n */\n onError?: (...args: any[]) => void;\n /**\n * 是否关闭dirtyBounds\n * @default false\n */\n disableDirtyBounds?: boolean;\n /**\n * 是否开启view3d的变换模式\n */\n enableView3dTransform?: boolean;\n /**\n * vrender 的插件列表\n */\n pluginList?: string[];\n /**\n * @since 1.8.0\n */\n optimize?: IOptimizeType;\n /**\n * @since 1.8.3\n */\n enableHtmlAttribute?: boolean;\n /**\n * @since 1.8.9\n * 是否支持touch事件\n */\n supportsTouchEvents?: boolean;\n /**\n * @since 1.8.9\n * 是否支持pointer事件\n */\n supportsPointerEvents?: boolean;\n}\n\nexport type CompilerListenerParameters = {\n type: EventType;\n event: Event;\n source: EventSourceType;\n // FIXME: 这里 item 应当为场景树的 Item 类型\n item: any | null;\n datum: any | null;\n markId: number | null;\n modelId: number | null;\n markUserId: StringOrNumber | null;\n modelUserId: StringOrNumber | null;\n};\n\nexport type CompilerModel = Record<GrammarType, IProductMap<IGrammarItem>>;\n\nexport interface IProductMap<T extends IGrammarItem> {\n /** 编译产物 id 和对应的在 vchart 中的 GrammarItem */\n [productId: string]: IGrammarItemMap<T>;\n}\n\nexport interface IGrammarItemMap<T extends IGrammarItem> {\n /** GrammarItem id 和 对应的引用 */\n [id: number]: T;\n}\n"]}
@@ -39,7 +39,7 @@ export declare abstract class AxisComponent<T extends ICommonAxisSpec & Record<s
39
39
  protected abstract axisHelper(): any;
40
40
  protected abstract getSeriesStatisticsField(s: ISeries): string[];
41
41
  protected abstract updateSeriesScale(): void;
42
- protected abstract collectData(depth: number): {
42
+ protected abstract collectData(depth: number, rawData?: boolean): {
43
43
  min: number;
44
44
  max: number;
45
45
  values: any[];
@@ -61,6 +61,7 @@ export declare abstract class AxisComponent<T extends ICommonAxisSpec & Record<s
61
61
  };
62
62
  protected initEvent(): void;
63
63
  protected updateScaleDomain(): void;
64
+ protected _clearRawDomain(): void;
64
65
  protected computeData(updateType?: 'domain' | 'range' | 'force'): void;
65
66
  protected initScales(): void;
66
67
  _compareSpec(spec: T, prevSpec: T): {
@@ -142,9 +142,19 @@ export class AxisComponent extends BaseComponent {
142
142
  this.updateScaleDomain();
143
143
  })) : 1 === viewStatistics.length && viewStatistics[0].target.addListener("change", (() => {
144
144
  this.updateScaleDomain();
145
- }));
145
+ })), eachSeries(this._regions, (s => {
146
+ s.event.on(ChartEvent.rawDataUpdate, {
147
+ filter: ({model: model}) => (null == model ? void 0 : model.id) === s.id
148
+ }, (() => {
149
+ this._clearRawDomain();
150
+ }));
151
+ }), {
152
+ userId: this._seriesUserId,
153
+ specIndex: this._seriesIndex
154
+ });
146
155
  }
147
156
  updateScaleDomain() {}
157
+ _clearRawDomain() {}
148
158
  computeData(updateType) {
149
159
  !this._tickData || "force" !== updateType && isEqual(this._scale.range(), [ 0, 1 ]) || (this._tickData.getDataView().reRunAllTransform(),
150
160
  this._tickData.updateData());