@visactor/vseed 0.3.14 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (506) hide show
  1. package/dist/cjs/index.cjs +1 -1
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/builder/builder/builder.d.ts +3551 -25203
  4. package/dist/esm/builder/register/all.js +7 -1
  5. package/dist/esm/builder/register/all.js.map +1 -1
  6. package/dist/esm/builder/register/chartType/circlePacking.d.ts +5 -0
  7. package/dist/esm/builder/register/chartType/circlePacking.js +9 -0
  8. package/dist/esm/builder/register/chartType/circlePacking.js.map +1 -0
  9. package/dist/esm/builder/register/chartType/index.d.ts +6 -0
  10. package/dist/esm/builder/register/chartType/index.js +7 -1
  11. package/dist/esm/builder/register/chartType/raceBar.d.ts +5 -0
  12. package/dist/esm/builder/register/chartType/raceBar.js +9 -0
  13. package/dist/esm/builder/register/chartType/raceBar.js.map +1 -0
  14. package/dist/esm/builder/register/chartType/raceColumn.d.ts +5 -0
  15. package/dist/esm/builder/register/chartType/raceColumn.js +9 -0
  16. package/dist/esm/builder/register/chartType/raceColumn.js.map +1 -0
  17. package/dist/esm/builder/register/chartType/raceScatter.d.ts +5 -0
  18. package/dist/esm/builder/register/chartType/raceScatter.js +9 -0
  19. package/dist/esm/builder/register/chartType/raceScatter.js.map +1 -0
  20. package/dist/esm/builder/register/chartType/sunburst.d.ts +5 -0
  21. package/dist/esm/builder/register/chartType/sunburst.js +9 -0
  22. package/dist/esm/builder/register/chartType/sunburst.js.map +1 -0
  23. package/dist/esm/builder/register/chartType/treeMap.d.ts +5 -0
  24. package/dist/esm/builder/register/chartType/treeMap.js +9 -0
  25. package/dist/esm/builder/register/chartType/treeMap.js.map +1 -0
  26. package/dist/esm/dataReshape/constant.d.ts +2 -0
  27. package/dist/esm/dataReshape/constant.js +3 -1
  28. package/dist/esm/dataReshape/constant.js.map +1 -1
  29. package/dist/esm/dataReshape/unfoldDimensions.js +8 -2
  30. package/dist/esm/dataReshape/unfoldDimensions.js.map +1 -1
  31. package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.d.ts +2 -0
  32. package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.js +33 -0
  33. package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.js.map +1 -0
  34. package/dist/esm/pipeline/advanced/chart/pipeline/index.d.ts +6 -0
  35. package/dist/esm/pipeline/advanced/chart/pipeline/index.js +7 -1
  36. package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.d.ts +2 -0
  37. package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.js +36 -0
  38. package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.js.map +1 -0
  39. package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.d.ts +2 -0
  40. package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.js +37 -0
  41. package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.js.map +1 -0
  42. package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.d.ts +2 -0
  43. package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.js +31 -0
  44. package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.js.map +1 -0
  45. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +1 -3
  46. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
  47. package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.d.ts +2 -0
  48. package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.js +33 -0
  49. package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.js.map +1 -0
  50. package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.d.ts +2 -0
  51. package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.js +33 -0
  52. package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.js.map +1 -0
  53. package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.d.ts +2 -0
  54. package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.js +27 -0
  55. package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.js.map +1 -0
  56. package/dist/esm/pipeline/advanced/chart/pipes/config/index.d.ts +3 -0
  57. package/dist/esm/pipeline/advanced/chart/pipes/config/index.js +4 -1
  58. package/dist/esm/pipeline/advanced/chart/pipes/config/index.js.map +1 -1
  59. package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.d.ts +2 -0
  60. package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.js +27 -0
  61. package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.js.map +1 -0
  62. package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.d.ts +2 -0
  63. package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.js +27 -0
  64. package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.js.map +1 -0
  65. package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.d.ts +3 -0
  66. package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.js +75 -0
  67. package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.js.map +1 -0
  68. package/dist/esm/pipeline/advanced/chart/pipes/encoding/index.d.ts +4 -0
  69. package/dist/esm/pipeline/advanced/chart/pipes/encoding/index.js +5 -1
  70. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.d.ts +3 -0
  71. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.js +81 -0
  72. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.js.map +1 -0
  73. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.d.ts +3 -0
  74. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.js +81 -0
  75. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.js.map +1 -0
  76. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.d.ts +3 -0
  77. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.js +83 -0
  78. package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.js.map +1 -0
  79. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
  80. package/dist/esm/pipeline/advanced/chart/pipes/reshape/index.d.ts +2 -0
  81. package/dist/esm/pipeline/advanced/chart/pipes/reshape/index.js +3 -1
  82. package/dist/esm/pipeline/spec/chart/index.d.ts +1 -0
  83. package/dist/esm/pipeline/spec/chart/index.js +1 -0
  84. package/dist/esm/pipeline/spec/chart/pipeline/area.js +2 -2
  85. package/dist/esm/pipeline/spec/chart/pipeline/area.js.map +1 -1
  86. package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js +2 -2
  87. package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js.map +1 -1
  88. package/dist/esm/pipeline/spec/chart/pipeline/bar.js +2 -2
  89. package/dist/esm/pipeline/spec/chart/pipeline/bar.js.map +1 -1
  90. package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js +2 -2
  91. package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js.map +1 -1
  92. package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js +2 -2
  93. package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js.map +1 -1
  94. package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.d.ts +1 -0
  95. package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.js +34 -0
  96. package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.js.map +1 -0
  97. package/dist/esm/pipeline/spec/chart/pipeline/column.js +2 -2
  98. package/dist/esm/pipeline/spec/chart/pipeline/column.js.map +1 -1
  99. package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js +2 -2
  100. package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js.map +1 -1
  101. package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js +2 -2
  102. package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js.map +1 -1
  103. package/dist/esm/pipeline/spec/chart/pipeline/donut.js +2 -2
  104. package/dist/esm/pipeline/spec/chart/pipeline/donut.js.map +1 -1
  105. package/dist/esm/pipeline/spec/chart/pipeline/funnel.js +2 -2
  106. package/dist/esm/pipeline/spec/chart/pipeline/funnel.js.map +1 -1
  107. package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js +2 -2
  108. package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js.map +1 -1
  109. package/dist/esm/pipeline/spec/chart/pipeline/index.d.ts +6 -0
  110. package/dist/esm/pipeline/spec/chart/pipeline/index.js +7 -1
  111. package/dist/esm/pipeline/spec/chart/pipeline/line.js +2 -2
  112. package/dist/esm/pipeline/spec/chart/pipeline/line.js.map +1 -1
  113. package/dist/esm/pipeline/spec/chart/pipeline/pie.js +2 -2
  114. package/dist/esm/pipeline/spec/chart/pipeline/pie.js.map +1 -1
  115. package/dist/esm/pipeline/spec/chart/pipeline/raceBar.d.ts +2 -0
  116. package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js +26 -0
  117. package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js.map +1 -0
  118. package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.d.ts +2 -0
  119. package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js +26 -0
  120. package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js.map +1 -0
  121. package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.d.ts +2 -0
  122. package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.js +31 -0
  123. package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.js.map +1 -0
  124. package/dist/esm/pipeline/spec/chart/pipeline/radar.js +2 -2
  125. package/dist/esm/pipeline/spec/chart/pipeline/radar.js.map +1 -1
  126. package/dist/esm/pipeline/spec/chart/pipeline/rose.js +2 -2
  127. package/dist/esm/pipeline/spec/chart/pipeline/rose.js.map +1 -1
  128. package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js +2 -2
  129. package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js.map +1 -1
  130. package/dist/esm/pipeline/spec/chart/pipeline/scatter.js +2 -2
  131. package/dist/esm/pipeline/spec/chart/pipeline/scatter.js.map +1 -1
  132. package/dist/esm/pipeline/spec/chart/pipeline/sunburst.d.ts +1 -0
  133. package/dist/esm/pipeline/spec/chart/pipeline/sunburst.js +34 -0
  134. package/dist/esm/pipeline/spec/chart/pipeline/sunburst.js.map +1 -0
  135. package/dist/esm/pipeline/spec/chart/pipeline/treeMap.d.ts +1 -0
  136. package/dist/esm/pipeline/spec/chart/pipeline/treeMap.js +37 -0
  137. package/dist/esm/pipeline/spec/chart/pipeline/treeMap.js.map +1 -0
  138. package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js +6 -1
  139. package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js.map +1 -1
  140. package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js +6 -1
  141. package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js.map +1 -1
  142. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js +5 -2
  143. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
  144. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js +5 -2
  145. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
  146. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.d.ts +2 -0
  147. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.js +114 -0
  148. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.js.map +1 -0
  149. package/dist/esm/pipeline/spec/chart/pipes/dataset/index.d.ts +1 -0
  150. package/dist/esm/pipeline/spec/chart/pipes/dataset/index.js +2 -1
  151. package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.d.ts +2 -0
  152. package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.js +36 -0
  153. package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.js.map +1 -0
  154. package/dist/esm/pipeline/spec/chart/pipes/init/index.d.ts +3 -0
  155. package/dist/esm/pipeline/spec/chart/pipes/init/index.js +4 -1
  156. package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js +4 -0
  157. package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js.map +1 -1
  158. package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.d.ts +2 -0
  159. package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.js +44 -0
  160. package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.js.map +1 -0
  161. package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.d.ts +2 -0
  162. package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.js +26 -0
  163. package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.js.map +1 -0
  164. package/dist/esm/pipeline/spec/chart/pipes/label/index.d.ts +4 -0
  165. package/dist/esm/pipeline/spec/chart/pipes/label/index.js +5 -1
  166. package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
  167. package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.d.ts +2 -0
  168. package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js +23 -0
  169. package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js.map +1 -0
  170. package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.d.ts +2 -0
  171. package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js +26 -0
  172. package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js.map +1 -0
  173. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.d.ts +2 -0
  174. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js +31 -0
  175. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js.map +1 -0
  176. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.d.ts +2 -0
  177. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js +68 -0
  178. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js.map +1 -0
  179. package/dist/esm/pipeline/spec/chart/pipes/player/index.d.ts +4 -1
  180. package/dist/esm/pipeline/spec/chart/pipes/player/index.js +4 -2
  181. package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.d.ts +2 -0
  182. package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.js +11 -0
  183. package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.js.map +1 -0
  184. package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.d.ts +2 -0
  185. package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.js +200 -0
  186. package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.js.map +1 -0
  187. package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.d.ts +2 -0
  188. package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.js +183 -0
  189. package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.js.map +1 -0
  190. package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.d.ts +2 -0
  191. package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.js +177 -0
  192. package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.js.map +1 -0
  193. package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.d.ts +1 -0
  194. package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.js +2 -1
  195. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.d.ts +2 -0
  196. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js +84 -0
  197. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js.map +1 -0
  198. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.d.ts +2 -0
  199. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js +93 -0
  200. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js.map +1 -0
  201. package/dist/esm/pipeline/spec/chart/utils/condition.d.ts +3 -0
  202. package/dist/esm/pipeline/spec/chart/utils/condition.js +7 -0
  203. package/dist/esm/pipeline/spec/chart/utils/condition.js.map +1 -0
  204. package/dist/esm/pipeline/spec/chart/utils/index.d.ts +1 -0
  205. package/dist/esm/pipeline/spec/chart/utils/index.js +1 -0
  206. package/dist/esm/pipeline/utils/chatType.d.ts +1 -1
  207. package/dist/esm/pipeline/utils/chatType.js +4 -1
  208. package/dist/esm/pipeline/utils/chatType.js.map +1 -1
  209. package/dist/esm/pipeline/utils/constant.d.ts +3 -0
  210. package/dist/esm/pipeline/utils/constant.js +3 -0
  211. package/dist/esm/pipeline/utils/constant.js.map +1 -1
  212. package/dist/esm/theme/common/player.js +2 -0
  213. package/dist/esm/theme/common/player.js.map +1 -1
  214. package/dist/esm/theme/dark/area.d.ts +156 -0
  215. package/dist/esm/theme/dark/area.js +29 -0
  216. package/dist/esm/theme/dark/area.js.map +1 -0
  217. package/dist/esm/theme/dark/bar.d.ts +238 -0
  218. package/dist/esm/theme/dark/bar.js +49 -0
  219. package/dist/esm/theme/dark/bar.js.map +1 -0
  220. package/dist/esm/theme/dark/boxPlot.d.ts +80 -0
  221. package/dist/esm/theme/dark/boxPlot.js +31 -0
  222. package/dist/esm/theme/dark/boxPlot.js.map +1 -0
  223. package/dist/esm/theme/dark/column.d.ts +411 -0
  224. package/dist/esm/theme/dark/column.js +64 -0
  225. package/dist/esm/theme/dark/column.js.map +1 -0
  226. package/dist/esm/theme/dark/dark.js +42 -283
  227. package/dist/esm/theme/dark/dark.js.map +1 -1
  228. package/dist/esm/theme/dark/dualAxis.d.ts +122 -0
  229. package/dist/esm/theme/dark/dualAxis.js +34 -0
  230. package/dist/esm/theme/dark/dualAxis.js.map +1 -0
  231. package/dist/esm/theme/dark/funnel.d.ts +64 -0
  232. package/dist/esm/theme/dark/funnel.js +22 -0
  233. package/dist/esm/theme/dark/funnel.js.map +1 -0
  234. package/dist/esm/theme/dark/heatmap.d.ts +66 -0
  235. package/dist/esm/theme/dark/heatmap.js +30 -0
  236. package/dist/esm/theme/dark/heatmap.js.map +1 -0
  237. package/dist/esm/theme/dark/hierarchy.d.ts +189 -0
  238. package/dist/esm/theme/dark/hierarchy.js +21 -0
  239. package/dist/esm/theme/dark/hierarchy.js.map +1 -0
  240. package/dist/esm/theme/dark/histogram.d.ts +252 -0
  241. package/dist/esm/theme/dark/histogram.js +29 -0
  242. package/dist/esm/theme/dark/histogram.js.map +1 -0
  243. package/dist/esm/theme/dark/line.d.ts +78 -0
  244. package/dist/esm/theme/dark/line.js +28 -0
  245. package/dist/esm/theme/dark/line.js.map +1 -0
  246. package/dist/esm/theme/dark/pie.d.ts +130 -0
  247. package/dist/esm/theme/dark/pie.js +26 -0
  248. package/dist/esm/theme/dark/pie.js.map +1 -0
  249. package/dist/esm/theme/dark/race.d.ts +717 -0
  250. package/dist/esm/theme/dark/race.js +138 -0
  251. package/dist/esm/theme/dark/race.js.map +1 -0
  252. package/dist/esm/theme/dark/radar.d.ts +63 -0
  253. package/dist/esm/theme/dark/radar.js +19 -0
  254. package/dist/esm/theme/dark/radar.js.map +1 -0
  255. package/dist/esm/theme/dark/rose.d.ts +128 -0
  256. package/dist/esm/theme/dark/rose.js +25 -0
  257. package/dist/esm/theme/dark/rose.js.map +1 -0
  258. package/dist/esm/theme/dark/scatter.d.ts +345 -0
  259. package/dist/esm/theme/dark/scatter.js +50 -0
  260. package/dist/esm/theme/dark/scatter.js.map +1 -0
  261. package/dist/esm/theme/light/area.d.ts +156 -0
  262. package/dist/esm/theme/light/area.js +29 -0
  263. package/dist/esm/theme/light/area.js.map +1 -0
  264. package/dist/esm/theme/light/bar.d.ts +238 -0
  265. package/dist/esm/theme/light/bar.js +49 -0
  266. package/dist/esm/theme/light/bar.js.map +1 -0
  267. package/dist/esm/theme/light/boxPlot.d.ts +80 -0
  268. package/dist/esm/theme/light/boxPlot.js +30 -0
  269. package/dist/esm/theme/light/boxPlot.js.map +1 -0
  270. package/dist/esm/theme/light/column.d.ts +411 -0
  271. package/dist/esm/theme/light/column.js +64 -0
  272. package/dist/esm/theme/light/column.js.map +1 -0
  273. package/dist/esm/theme/light/dualAxis.d.ts +122 -0
  274. package/dist/esm/theme/light/dualAxis.js +34 -0
  275. package/dist/esm/theme/light/dualAxis.js.map +1 -0
  276. package/dist/esm/theme/light/funnel.d.ts +64 -0
  277. package/dist/esm/theme/light/funnel.js +22 -0
  278. package/dist/esm/theme/light/funnel.js.map +1 -0
  279. package/dist/esm/theme/light/heatmap.d.ts +66 -0
  280. package/dist/esm/theme/light/heatmap.js +30 -0
  281. package/dist/esm/theme/light/heatmap.js.map +1 -0
  282. package/dist/esm/theme/light/hierarchy.d.ts +189 -0
  283. package/dist/esm/theme/light/hierarchy.js +21 -0
  284. package/dist/esm/theme/light/hierarchy.js.map +1 -0
  285. package/dist/esm/theme/light/histogram.d.ts +252 -0
  286. package/dist/esm/theme/light/histogram.js +29 -0
  287. package/dist/esm/theme/light/histogram.js.map +1 -0
  288. package/dist/esm/theme/light/light.js +42 -288
  289. package/dist/esm/theme/light/light.js.map +1 -1
  290. package/dist/esm/theme/light/line.d.ts +78 -0
  291. package/dist/esm/theme/light/line.js +28 -0
  292. package/dist/esm/theme/light/line.js.map +1 -0
  293. package/dist/esm/theme/light/pie.d.ts +130 -0
  294. package/dist/esm/theme/light/pie.js +26 -0
  295. package/dist/esm/theme/light/pie.js.map +1 -0
  296. package/dist/esm/theme/light/race.d.ts +899 -0
  297. package/dist/esm/theme/light/race.js +172 -0
  298. package/dist/esm/theme/light/race.js.map +1 -0
  299. package/dist/esm/theme/light/radar.d.ts +63 -0
  300. package/dist/esm/theme/light/radar.js +19 -0
  301. package/dist/esm/theme/light/radar.js.map +1 -0
  302. package/dist/esm/theme/light/rose.d.ts +128 -0
  303. package/dist/esm/theme/light/rose.js +25 -0
  304. package/dist/esm/theme/light/rose.js.map +1 -0
  305. package/dist/esm/theme/light/scatter.d.ts +345 -0
  306. package/dist/esm/theme/light/scatter.js +50 -0
  307. package/dist/esm/theme/light/scatter.js.map +1 -0
  308. package/dist/esm/types/advancedVSeed.d.ts +35 -18880
  309. package/dist/esm/types/advancedVSeed.js.map +1 -1
  310. package/dist/esm/types/chartType/area/area.d.ts +1 -5
  311. package/dist/esm/types/chartType/area/zArea.d.ts +13 -2
  312. package/dist/esm/types/chartType/areaPercent/areaPercent.d.ts +1 -5
  313. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +13 -2
  314. package/dist/esm/types/chartType/bar/bar.d.ts +1 -5
  315. package/dist/esm/types/chartType/bar/zBar.d.ts +13 -2
  316. package/dist/esm/types/chartType/barParallel/barParallel.d.ts +1 -5
  317. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +13 -2
  318. package/dist/esm/types/chartType/barPercent/barPercent.d.ts +1 -5
  319. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +13 -2
  320. package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +13 -2
  321. package/dist/esm/types/chartType/circlePacking/circlePacking.d.ts +85 -0
  322. package/dist/esm/types/chartType/circlePacking/circlePacking.js +0 -0
  323. package/dist/esm/types/chartType/circlePacking/index.d.ts +2 -0
  324. package/dist/esm/types/chartType/circlePacking/index.js +1 -0
  325. package/dist/esm/types/chartType/circlePacking/zCirclePacking.d.ts +263 -0
  326. package/dist/esm/types/chartType/circlePacking/zCirclePacking.js +19 -0
  327. package/dist/esm/types/chartType/circlePacking/zCirclePacking.js.map +1 -0
  328. package/dist/esm/types/chartType/column/column.d.ts +1 -5
  329. package/dist/esm/types/chartType/column/zColumn.d.ts +13 -3
  330. package/dist/esm/types/chartType/columnParallel/columnParallel.d.ts +1 -5
  331. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +13 -3
  332. package/dist/esm/types/chartType/columnPercent/columnPercent.d.ts +1 -5
  333. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +13 -2
  334. package/dist/esm/types/chartType/donut/donut.d.ts +1 -5
  335. package/dist/esm/types/chartType/donut/zDonut.d.ts +4 -1
  336. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +26 -4
  337. package/dist/esm/types/chartType/funnel/funnel.d.ts +1 -5
  338. package/dist/esm/types/chartType/funnel/zFunnel.d.ts +4 -1
  339. package/dist/esm/types/chartType/heatmap/heatmap.d.ts +1 -6
  340. package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +2 -0
  341. package/dist/esm/types/chartType/histogram/zHistogram.d.ts +14 -3
  342. package/dist/esm/types/chartType/index.d.ts +6 -0
  343. package/dist/esm/types/chartType/index.js +6 -0
  344. package/dist/esm/types/chartType/line/line.d.ts +1 -5
  345. package/dist/esm/types/chartType/line/zLine.d.ts +13 -2
  346. package/dist/esm/types/chartType/pie/pie.d.ts +1 -5
  347. package/dist/esm/types/chartType/pie/zPie.d.ts +4 -1
  348. package/dist/esm/types/chartType/pivotTable/zPivotTable.d.ts +2 -0
  349. package/dist/esm/types/chartType/raceBar/index.d.ts +2 -0
  350. package/dist/esm/types/chartType/raceBar/index.js +1 -0
  351. package/dist/esm/types/chartType/raceBar/raceBar.d.ts +117 -0
  352. package/dist/esm/types/chartType/raceBar/raceBar.js +0 -0
  353. package/dist/esm/types/chartType/raceBar/zRaceBar.d.ts +1227 -0
  354. package/dist/esm/types/chartType/raceBar/zRaceBar.js +36 -0
  355. package/dist/esm/types/chartType/raceBar/zRaceBar.js.map +1 -0
  356. package/dist/esm/types/chartType/raceColumn/index.d.ts +2 -0
  357. package/dist/esm/types/chartType/raceColumn/index.js +1 -0
  358. package/dist/esm/types/chartType/raceColumn/raceColumn.d.ts +31 -0
  359. package/dist/esm/types/chartType/raceColumn/raceColumn.js +0 -0
  360. package/dist/esm/types/chartType/raceColumn/zRaceColumn.d.ts +1227 -0
  361. package/dist/esm/types/chartType/raceColumn/zRaceColumn.js +36 -0
  362. package/dist/esm/types/chartType/raceColumn/zRaceColumn.js.map +1 -0
  363. package/dist/esm/types/chartType/raceScatter/index.d.ts +2 -0
  364. package/dist/esm/types/chartType/raceScatter/index.js +1 -0
  365. package/dist/esm/types/chartType/raceScatter/raceScatter.d.ts +41 -0
  366. package/dist/esm/types/chartType/raceScatter/raceScatter.js +0 -0
  367. package/dist/esm/types/chartType/raceScatter/zRaceScatter.d.ts +1428 -0
  368. package/dist/esm/types/chartType/raceScatter/zRaceScatter.js +35 -0
  369. package/dist/esm/types/chartType/raceScatter/zRaceScatter.js.map +1 -0
  370. package/dist/esm/types/chartType/radar/radar.d.ts +1 -5
  371. package/dist/esm/types/chartType/radar/zRadar.d.ts +4 -1
  372. package/dist/esm/types/chartType/rose/rose.d.ts +1 -6
  373. package/dist/esm/types/chartType/rose/zRose.d.ts +4 -1
  374. package/dist/esm/types/chartType/roseParallel/roseParallel.d.ts +1 -6
  375. package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +4 -1
  376. package/dist/esm/types/chartType/scatter/scatter.d.ts +1 -5
  377. package/dist/esm/types/chartType/scatter/zScatter.d.ts +14 -3
  378. package/dist/esm/types/chartType/sunburst/index.d.ts +2 -0
  379. package/dist/esm/types/chartType/sunburst/index.js +1 -0
  380. package/dist/esm/types/chartType/sunburst/sunburst.d.ts +86 -0
  381. package/dist/esm/types/chartType/sunburst/sunburst.js +0 -0
  382. package/dist/esm/types/chartType/sunburst/zSunburst.d.ts +263 -0
  383. package/dist/esm/types/chartType/sunburst/zSunburst.js +19 -0
  384. package/dist/esm/types/chartType/sunburst/zSunburst.js.map +1 -0
  385. package/dist/esm/types/chartType/table/zTable.d.ts +2 -0
  386. package/dist/esm/types/chartType/treeMap/index.d.ts +2 -0
  387. package/dist/esm/types/chartType/treeMap/index.js +1 -0
  388. package/dist/esm/types/chartType/treeMap/treeMap.d.ts +85 -0
  389. package/dist/esm/types/chartType/treeMap/treeMap.js +0 -0
  390. package/dist/esm/types/chartType/treeMap/zTreeMap.d.ts +263 -0
  391. package/dist/esm/types/chartType/treeMap/zTreeMap.js +19 -0
  392. package/dist/esm/types/chartType/treeMap/zTreeMap.js.map +1 -0
  393. package/dist/esm/types/properties/chartType/chartType.d.ts +7 -1
  394. package/dist/esm/types/properties/chartType/chartType.js +7 -0
  395. package/dist/esm/types/properties/chartType/chartType.js.map +1 -1
  396. package/dist/esm/types/properties/config/annotation/index.d.ts +1 -1
  397. package/dist/esm/types/properties/config/annotation/index.js +1 -1
  398. package/dist/esm/types/properties/config/annotation/{zAnnotaion.js → zAnnotation.js} +1 -1
  399. package/dist/esm/types/properties/config/annotation/zAnnotation.js.map +1 -0
  400. package/dist/esm/types/properties/config/area.d.ts +18 -40
  401. package/dist/esm/types/properties/config/area.js +1 -3
  402. package/dist/esm/types/properties/config/area.js.map +1 -1
  403. package/dist/esm/types/properties/config/axes/bandAxis.d.ts +26 -0
  404. package/dist/esm/types/properties/config/axes/linearAxis.d.ts +30 -4
  405. package/dist/esm/types/properties/config/axes/zBandAxis.d.ts +8 -0
  406. package/dist/esm/types/properties/config/axes/zBandAxis.js +4 -0
  407. package/dist/esm/types/properties/config/axes/zBandAxis.js.map +1 -1
  408. package/dist/esm/types/properties/config/axes/zLinearAxis.d.ts +10 -2
  409. package/dist/esm/types/properties/config/axes/zLinearAxis.js +5 -1
  410. package/dist/esm/types/properties/config/axes/zLinearAxis.js.map +1 -1
  411. package/dist/esm/types/properties/config/bar.d.ts +27 -60
  412. package/dist/esm/types/properties/config/bar.js +1 -3
  413. package/dist/esm/types/properties/config/bar.js.map +1 -1
  414. package/dist/esm/types/properties/config/boxplot.d.ts +9 -1
  415. package/dist/esm/types/properties/config/boxplot.js +1 -1
  416. package/dist/esm/types/properties/config/boxplot.js.map +1 -1
  417. package/dist/esm/types/properties/config/circlePacking.d.ts +211 -0
  418. package/dist/esm/types/properties/config/circlePacking.js +18 -0
  419. package/dist/esm/types/properties/config/circlePacking.js.map +1 -0
  420. package/dist/esm/types/properties/config/column.d.ts +27 -60
  421. package/dist/esm/types/properties/config/column.js +1 -3
  422. package/dist/esm/types/properties/config/column.js.map +1 -1
  423. package/dist/esm/types/properties/config/config.d.ts +2565 -383
  424. package/dist/esm/types/properties/config/config.js +10 -0
  425. package/dist/esm/types/properties/config/config.js.map +1 -1
  426. package/dist/esm/types/properties/config/dualAxis.d.ts +24 -4
  427. package/dist/esm/types/properties/config/dualAxis.js +1 -1
  428. package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
  429. package/dist/esm/types/properties/config/funnel.d.ts +0 -19
  430. package/dist/esm/types/properties/config/funnel.js +0 -2
  431. package/dist/esm/types/properties/config/funnel.js.map +1 -1
  432. package/dist/esm/types/properties/config/heatmap.d.ts +8 -19
  433. package/dist/esm/types/properties/config/heatmap.js +0 -2
  434. package/dist/esm/types/properties/config/heatmap.js.map +1 -1
  435. package/dist/esm/types/properties/config/histogram.d.ts +9 -1
  436. package/dist/esm/types/properties/config/histogram.js +1 -1
  437. package/dist/esm/types/properties/config/histogram.js.map +1 -1
  438. package/dist/esm/types/properties/config/index.d.ts +3 -0
  439. package/dist/esm/types/properties/config/index.js +3 -0
  440. package/dist/esm/types/properties/config/line.d.ts +9 -20
  441. package/dist/esm/types/properties/config/line.js +2 -4
  442. package/dist/esm/types/properties/config/line.js.map +1 -1
  443. package/dist/esm/types/properties/config/pie.d.ts +0 -57
  444. package/dist/esm/types/properties/config/pie.js +0 -2
  445. package/dist/esm/types/properties/config/pie.js.map +1 -1
  446. package/dist/esm/types/properties/config/player/player.d.ts +2 -2
  447. package/dist/esm/types/properties/config/player/zPlayer.d.ts +0 -1
  448. package/dist/esm/types/properties/config/player/zPlayer.js +0 -1
  449. package/dist/esm/types/properties/config/player/zPlayer.js.map +1 -1
  450. package/dist/esm/types/properties/config/race.d.ts +1758 -0
  451. package/dist/esm/types/properties/config/race.js +18 -0
  452. package/dist/esm/types/properties/config/race.js.map +1 -0
  453. package/dist/esm/types/properties/config/rose.d.ts +0 -38
  454. package/dist/esm/types/properties/config/rose.js +0 -2
  455. package/dist/esm/types/properties/config/rose.js.map +1 -1
  456. package/dist/esm/types/properties/config/scatter.d.ts +10 -21
  457. package/dist/esm/types/properties/config/scatter.js +1 -3
  458. package/dist/esm/types/properties/config/scatter.js.map +1 -1
  459. package/dist/esm/types/properties/config/sunburst.d.ts +211 -0
  460. package/dist/esm/types/properties/config/sunburst.js +18 -0
  461. package/dist/esm/types/properties/config/sunburst.js.map +1 -0
  462. package/dist/esm/types/properties/config/treeMap.d.ts +211 -0
  463. package/dist/esm/types/properties/config/treeMap.js +18 -0
  464. package/dist/esm/types/properties/config/treeMap.js.map +1 -0
  465. package/dist/esm/types/properties/datasetReshapeInfo/datasetReshapeInfo.d.ts +2 -0
  466. package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.d.ts +4 -0
  467. package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js +2 -0
  468. package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js.map +1 -1
  469. package/dist/esm/types/properties/dimensions/hierarchyDimension.d.ts +11 -0
  470. package/dist/esm/types/properties/dimensions/hierarchyDimension.js +0 -0
  471. package/dist/esm/types/properties/dimensions/index.d.ts +4 -0
  472. package/dist/esm/types/properties/dimensions/raceBarDimension.d.ts +17 -0
  473. package/dist/esm/types/properties/dimensions/raceBarDimension.js +0 -0
  474. package/dist/esm/types/properties/dimensions/raceColumnDimension.d.ts +20 -0
  475. package/dist/esm/types/properties/dimensions/raceColumnDimension.js +0 -0
  476. package/dist/esm/types/properties/dimensions/raceScatterDimension.d.ts +14 -0
  477. package/dist/esm/types/properties/dimensions/raceScatterDimension.js +0 -0
  478. package/dist/esm/types/properties/dimensions/zDimensions.d.ts +6 -0
  479. package/dist/esm/types/properties/dimensions/zDimensions.js +2 -11
  480. package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
  481. package/dist/esm/types/properties/encoding/dimensionEncoding.d.ts +1 -1
  482. package/dist/esm/types/properties/encoding/encoding.d.ts +11 -4
  483. package/dist/esm/types/properties/encoding/zDimensionEncoding.d.ts +4 -0
  484. package/dist/esm/types/properties/encoding/zDimensionEncoding.js +6 -2
  485. package/dist/esm/types/properties/encoding/zDimensionEncoding.js.map +1 -1
  486. package/dist/esm/types/properties/encoding/zEncoding.d.ts +4 -2
  487. package/dist/esm/types/properties/encoding/zEncoding.js +4 -2
  488. package/dist/esm/types/properties/encoding/zEncoding.js.map +1 -1
  489. package/dist/esm/types/properties/measures/hierarchyMeasures.d.ts +4 -0
  490. package/dist/esm/types/properties/measures/hierarchyMeasures.js +0 -0
  491. package/dist/esm/types/properties/measures/index.d.ts +2 -0
  492. package/dist/esm/types/properties/measures/raceBarMeasure.d.ts +12 -0
  493. package/dist/esm/types/properties/measures/raceBarMeasure.js +0 -0
  494. package/dist/esm/types/properties/theme/customTheme.d.ts +7184 -2820
  495. package/dist/esm/types/vseed.d.ts +2 -2
  496. package/dist/esm/types/zVseed.d.ts +5007 -172
  497. package/dist/esm/types/zVseed.js +7 -1
  498. package/dist/esm/types/zVseed.js.map +1 -1
  499. package/dist/umd/index.js +5931 -3479
  500. package/dist/umd/index.js.map +1 -1
  501. package/package.json +3 -2
  502. package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.d.ts +0 -2
  503. package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.js +0 -88
  504. package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.js.map +0 -1
  505. package/dist/esm/types/properties/config/annotation/zAnnotaion.js.map +0 -1
  506. /package/dist/esm/types/properties/config/annotation/{zAnnotaion.d.ts → zAnnotation.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/linearAxisStyle.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/linearAxisStyle.ts"],"sourcesContent":["import type { YLinearAxis } from 'src/types'\nimport { AXIS_LABEL_SPACE, LINEAR_AXIS_INNER_OFFSET_TOP } from 'src/pipeline/utils'\n\nexport interface LinearAxisStyleConfig extends YLinearAxis {\n orient: 'left' | 'right' | 'top' | 'bottom'\n formatMethod?: (value: string) => string\n titleText?: string\n id?: string\n seriesId?: string | string[]\n sync?: {\n axisId: string\n zeroAlign: boolean\n }\n isPivot?: boolean\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const linearAxisStyle = (config: LinearAxisStyleConfig): any => {\n const {\n orient,\n visible = true,\n label,\n tick,\n title,\n grid,\n line,\n zero,\n nice,\n inverse,\n max,\n min,\n log,\n logBase = 10,\n formatMethod,\n titleText,\n id,\n seriesId,\n sync,\n isPivot = false,\n } = config\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const axisConfig: any = {\n ...(isPivot\n ? {\n range: {\n min,\n max,\n },\n }\n : {\n min,\n max,\n }),\n visible,\n type: log ? 'log' : 'linear',\n base: logBase,\n orient,\n nice,\n zero: log ? false : zero,\n inverse,\n label: {\n space: AXIS_LABEL_SPACE,\n visible: label?.visible,\n formatMethod,\n style: {\n fill: label?.labelColor,\n angle: label?.labelAngle,\n fontSize: label?.labelFontSize,\n fontWeight: label?.labelFontWeight,\n },\n },\n title: {\n visible: title?.visible,\n text: titleText,\n style: {\n fill: title?.titleColor,\n fontSize: title?.titleFontSize,\n fontWeight: title?.titleFontWeight,\n },\n },\n tick: {\n visible: tick?.visible,\n tickSize: tick?.tickSize,\n inside: tick?.tickInside,\n style: {\n stroke: tick?.tickColor,\n },\n },\n grid: {\n visible: grid?.visible,\n style: {\n lineWidth: grid?.gridWidth,\n stroke: grid?.gridColor,\n lineDash: grid?.gridLineDash,\n },\n },\n domainLine: {\n visible: line?.visible,\n style: {\n lineWidth: line?.lineWidth,\n stroke: line?.lineColor,\n },\n },\n }\n\n // Add innerOffset based on orientation\n if (orient === 'bottom' || orient === 'top') {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n axisConfig.innerOffset = {\n right: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n } else {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n axisConfig.innerOffset = {\n top: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n }\n\n // Add optional fields\n if (id) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n axisConfig.id = id\n }\n if (seriesId) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n axisConfig.seriesId = seriesId\n }\n if (sync) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n axisConfig.sync = sync\n }\n\n return axisConfig\n}\n"],"names":["linearAxisStyle","config","orient","visible","label","tick","title","grid","line","zero","nice","inverse","max","min","log","logBase","formatMethod","titleText","id","seriesId","sync","isPivot","axisConfig","AXIS_LABEL_SPACE","LINEAR_AXIS_INNER_OFFSET_TOP"],"mappings":";AAiBO,MAAMA,kBAAkB,CAACC;IAC9B,MAAM,EACJC,MAAM,EACNC,UAAU,IAAI,EACdC,KAAK,EACLC,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,OAAO,EACPC,GAAG,EACHC,GAAG,EACHC,GAAG,EACHC,UAAU,EAAE,EACZC,YAAY,EACZC,SAAS,EACTC,EAAE,EACFC,QAAQ,EACRC,IAAI,EACJC,UAAU,KAAK,EAChB,GAAGpB;IAGJ,MAAMqB,aAAkB;QACtB,GAAID,UACA;YACE,OAAO;gBACLR;gBACAD;YACF;QACF,IACA;YACEC;YACAD;QACF,CAAC;QACLT;QACA,MAAMW,MAAM,QAAQ;QACpB,MAAMC;QACNb;QACAQ;QACA,MAAMI,MAAM,QAAQL;QACpBE;QACA,OAAO;YACL,OAAOY;YACP,SAASnB,OAAO;YAChBY;YACA,OAAO;gBACL,MAAMZ,OAAO;gBACb,OAAOA,OAAO;gBACd,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,OAAO;YACL,SAASE,OAAO;YAChB,MAAMW;YACN,OAAO;gBACL,MAAMX,OAAO;gBACb,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,MAAM;YACJ,SAASD,MAAM;YACf,UAAUA,MAAM;YAChB,QAAQA,MAAM;YACd,OAAO;gBACL,QAAQA,MAAM;YAChB;QACF;QACA,MAAM;YACJ,SAASE,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;gBACd,UAAUA,MAAM;YAClB;QACF;QACA,YAAY;YACV,SAASC,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;YAChB;QACF;IACF;IAGA,IAAIN,AAAW,aAAXA,UAAuBA,AAAW,UAAXA,QAEzBoB,WAAW,WAAW,GAAG;QACvB,OAAOE;IACT;SAGAF,WAAW,WAAW,GAAG;QACvB,KAAKE;IACP;IAIF,IAAIN,IAEFI,WAAW,EAAE,GAAGJ;IAElB,IAAIC,UAEFG,WAAW,QAAQ,GAAGH;IAExB,IAAIC,MAEFE,WAAW,IAAI,GAAGF;IAGpB,OAAOE;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/linearAxisStyle.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/linearAxisStyle.ts"],"sourcesContent":["import type { YLinearAxis } from 'src/types'\nimport { AXIS_LABEL_SPACE, LINEAR_AXIS_INNER_OFFSET_TOP } from 'src/pipeline/utils'\n\nexport interface LinearAxisStyleConfig extends YLinearAxis {\n orient: 'left' | 'right' | 'top' | 'bottom'\n formatMethod?: (value: string) => string\n titleText?: string\n id?: string\n seriesId?: string | string[]\n sync?: {\n axisId: string\n zeroAlign: boolean\n }\n isPivot?: boolean\n}\n\nexport const linearAxisStyle = (config: LinearAxisStyleConfig): any => {\n const {\n orient,\n visible = true,\n label,\n tick,\n title,\n grid,\n line,\n zero,\n nice,\n inverse,\n max,\n min,\n log,\n logBase = 10,\n formatMethod,\n titleText,\n id,\n seriesId,\n sync,\n isPivot = false,\n animation,\n } = config\n\n const axisConfig: any = {\n ...(isPivot\n ? {\n range: {\n min,\n max,\n },\n }\n : {\n min,\n max,\n }),\n visible,\n type: log ? 'log' : 'linear',\n base: logBase,\n orient,\n nice,\n zero: log ? false : zero,\n inverse,\n label: {\n space: AXIS_LABEL_SPACE,\n visible: label?.visible,\n formatMethod,\n style: {\n fill: label?.labelColor,\n angle: label?.labelAngle,\n fontSize: label?.labelFontSize,\n fontWeight: label?.labelFontWeight,\n },\n },\n title: {\n visible: title?.visible,\n text: titleText,\n style: {\n fill: title?.titleColor,\n fontSize: title?.titleFontSize,\n fontWeight: title?.titleFontWeight,\n },\n },\n tick: {\n visible: tick?.visible,\n tickSize: tick?.tickSize,\n inside: tick?.tickInside,\n style: {\n stroke: tick?.tickColor,\n },\n },\n grid: {\n visible: grid?.visible,\n style: {\n lineWidth: grid?.gridWidth,\n stroke: grid?.gridColor,\n lineDash: grid?.gridLineDash,\n },\n },\n domainLine: {\n visible: line?.visible,\n style: {\n lineWidth: line?.lineWidth,\n stroke: line?.lineColor,\n },\n },\n animation: !!animation,\n animationUpdate: {\n duration: animation?.duration,\n easing: animation?.easing,\n },\n }\n\n // Add innerOffset based on orientation\n if (orient === 'bottom' || orient === 'top') {\n axisConfig.innerOffset = {\n right: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n } else {\n axisConfig.innerOffset = {\n top: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n }\n\n // Add optional fields\n if (id) {\n axisConfig.id = id\n }\n if (seriesId) {\n axisConfig.seriesId = seriesId\n }\n if (sync) {\n axisConfig.sync = sync\n }\n\n return axisConfig\n}\n"],"names":["linearAxisStyle","config","orient","visible","label","tick","title","grid","line","zero","nice","inverse","max","min","log","logBase","formatMethod","titleText","id","seriesId","sync","isPivot","animation","axisConfig","AXIS_LABEL_SPACE","LINEAR_AXIS_INNER_OFFSET_TOP"],"mappings":";AAgBO,MAAMA,kBAAkB,CAACC;IAC9B,MAAM,EACJC,MAAM,EACNC,UAAU,IAAI,EACdC,KAAK,EACLC,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,OAAO,EACPC,GAAG,EACHC,GAAG,EACHC,GAAG,EACHC,UAAU,EAAE,EACZC,YAAY,EACZC,SAAS,EACTC,EAAE,EACFC,QAAQ,EACRC,IAAI,EACJC,UAAU,KAAK,EACfC,SAAS,EACV,GAAGrB;IAEJ,MAAMsB,aAAkB;QACtB,GAAIF,UACA;YACE,OAAO;gBACLR;gBACAD;YACF;QACF,IACA;YACEC;YACAD;QACF,CAAC;QACLT;QACA,MAAMW,MAAM,QAAQ;QACpB,MAAMC;QACNb;QACAQ;QACA,MAAMI,MAAM,QAAQL;QACpBE;QACA,OAAO;YACL,OAAOa;YACP,SAASpB,OAAO;YAChBY;YACA,OAAO;gBACL,MAAMZ,OAAO;gBACb,OAAOA,OAAO;gBACd,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,OAAO;YACL,SAASE,OAAO;YAChB,MAAMW;YACN,OAAO;gBACL,MAAMX,OAAO;gBACb,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,MAAM;YACJ,SAASD,MAAM;YACf,UAAUA,MAAM;YAChB,QAAQA,MAAM;YACd,OAAO;gBACL,QAAQA,MAAM;YAChB;QACF;QACA,MAAM;YACJ,SAASE,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;gBACd,UAAUA,MAAM;YAClB;QACF;QACA,YAAY;YACV,SAASC,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;YAChB;QACF;QACA,WAAW,CAAC,CAACc;QACb,iBAAiB;YACf,UAAUA,WAAW;YACrB,QAAQA,WAAW;QACrB;IACF;IAGA,IAAIpB,AAAW,aAAXA,UAAuBA,AAAW,UAAXA,QACzBqB,WAAW,WAAW,GAAG;QACvB,OAAOE;IACT;SAEAF,WAAW,WAAW,GAAG;QACvB,KAAKE;IACP;IAIF,IAAIP,IACFK,WAAW,EAAE,GAAGL;IAElB,IAAIC,UACFI,WAAW,QAAQ,GAAGJ;IAExB,IAAIC,MACFG,WAAW,IAAI,GAAGH;IAGpB,OAAOG;AACT"}
@@ -7,11 +7,13 @@ const xLinear = (spec, context)=>{
7
7
  ...spec
8
8
  };
9
9
  const { advancedVSeed, vseed } = context;
10
- const { encoding, dimensions = [], measures = [] } = advancedVSeed;
10
+ const { encoding, dimensions = [], measures = [], datasetReshapeInfo } = advancedVSeed;
11
11
  const { chartType } = vseed;
12
12
  const config = advancedVSeed.config?.[chartType]?.xAxis ?? {};
13
+ const { foldInfo, foldInfoList } = datasetReshapeInfo[0];
13
14
  if (!result.axes) result.axes = [];
14
15
  const isPivot = isPivotChart(vseed);
16
+ const xFoldInfo = foldInfoList?.length ? foldInfoList[0] : foldInfo;
15
17
  const { autoFormat, numFormat = {} } = config;
16
18
  const formatter = createNumFormatter(numFormat);
17
19
  const percentFormatter = createNumFormatter({
@@ -27,7 +29,8 @@ const xLinear = (spec, context)=>{
27
29
  orient: 'bottom',
28
30
  formatMethod,
29
31
  titleText,
30
- isPivot
32
+ isPivot,
33
+ max: true === config.max ? xFoldInfo.statistics.max : config.max
31
34
  });
32
35
  result.axes = [
33
36
  ...result.axes,
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/xLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XLinearAxis } from 'src/types'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const xLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions = [], measures = [] } = advancedVSeed\n const { chartType } = vseed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.xAxis ?? {}) as XLinearAxis\n\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.x as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'bottom',\n formatMethod,\n titleText,\n isPivot,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["xLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","chartType","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAE,GAAGJ;IACrD,MAAM,EAAEK,SAAS,EAAE,GAAGJ;IACtB,MAAMK,SAAUN,cAAc,MAAM,EAAE,CAACK,UAAmB,EAAE,SAAS,CAAC;IAEtE,IAAI,CAACN,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMQ,UAAUC,aAAaP;IAE7B,MAAM,EAAEQ,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGJ;IAEvC,MAAMK,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAaf,UAAUgB,gBAAgBhB,UAAUiB,cAAcjB,QACjE,OAAOkB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYf,OAAO,KAAK,EAAE,aAAagB,iBAAiBlB,UAAUD,YAAYD,SAAS,CAAC;IAE9F,MAAMqB,aAAaC,gBAAgB;QACjC,GAAGlB,MAAM;QACT,QAAQ;QACRQ;QACAO;QACAd;IACF;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEwB;KAAW;IAE1C,OAAOxB;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/xLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XLinearAxis } from 'src/types'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const xLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions = [], measures = [], datasetReshapeInfo } = advancedVSeed\n const { chartType } = vseed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.xAxis ?? {}) as XLinearAxis\n const { foldInfo, foldInfoList } = datasetReshapeInfo[0]\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const xFoldInfo = foldInfoList?.length ? foldInfoList[0] : foldInfo\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.x as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'bottom',\n formatMethod,\n titleText,\n isPivot,\n max: config.max === true ? xFoldInfo.statistics.max : config.max,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["xLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","datasetReshapeInfo","chartType","config","foldInfo","foldInfoList","isPivot","isPivotChart","xFoldInfo","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,kBAAkB,EAAE,GAAGL;IACzE,MAAM,EAAEM,SAAS,EAAE,GAAGL;IACtB,MAAMM,SAAUP,cAAc,MAAM,EAAE,CAACM,UAAmB,EAAE,SAAS,CAAC;IACtE,MAAM,EAAEE,QAAQ,EAAEC,YAAY,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IACxD,IAAI,CAACN,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMW,UAAUC,aAAaV;IAE7B,MAAMW,YAAYH,cAAc,SAASA,YAAY,CAAC,EAAE,GAAGD;IAC3D,MAAM,EAAEK,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGP;IAEvC,MAAMQ,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAanB,UAAUoB,gBAAgBpB,UAAUqB,cAAcrB,QACjE,OAAOsB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYlB,OAAO,KAAK,EAAE,aAAamB,iBAAiBtB,UAAUD,YAAYD,SAAS,CAAC;IAE9F,MAAMyB,aAAaC,gBAAgB;QACjC,GAAGrB,MAAM;QACT,QAAQ;QACRW;QACAO;QACAf;QACA,KAAKH,AAAe,SAAfA,OAAO,GAAG,GAAYK,UAAU,UAAU,CAAC,GAAG,GAAGL,OAAO,GAAG;IAClE;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAE4B;KAAW;IAE1C,OAAO5B;AACT"}
@@ -8,8 +8,10 @@ const yLinear = (spec, context)=>{
8
8
  };
9
9
  const { advancedVSeed, vseed } = context;
10
10
  const { chartType } = vseed;
11
- const { measures = [], dimensions = [], encoding } = advancedVSeed;
11
+ const { measures = [], dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed;
12
12
  const config = advancedVSeed.config?.[chartType]?.yAxis ?? {};
13
+ const { foldInfo, foldInfoList } = datasetReshapeInfo[0];
14
+ const yFoldInfo = foldInfoList?.length ? foldInfoList[1] : foldInfo;
13
15
  if (!result.axes) result.axes = [];
14
16
  const isPivot = isPivotChart(vseed);
15
17
  const { autoFormat, numFormat = {} } = config;
@@ -27,7 +29,8 @@ const yLinear = (spec, context)=>{
27
29
  orient: 'left',
28
30
  formatMethod,
29
31
  titleText,
30
- isPivot
32
+ isPivot,
33
+ max: true === config.max ? yFoldInfo.statistics.max : config.max
31
34
  });
32
35
  result.axes = [
33
36
  ...result.axes,
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.yAxis ?? {}) as YLinearAxis\n\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'left',\n formatMethod,\n titleText,\n isPivot,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinear","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,WAAW,EAAE,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAE,GAAGL;IACrD,MAAMM,SAAUN,cAAc,MAAM,EAAE,CAACE,UAAsB,EAAE,SAAS,CAAC;IAEzE,IAAI,CAACH,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMQ,UAAUC,aAAaP;IAE7B,MAAM,EAAEQ,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGJ;IAEvC,MAAMK,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAaf,UAAUgB,gBAAgBhB,UAAUiB,cAAcjB,QACjE,OAAOkB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYf,OAAO,KAAK,EAAE,aAAagB,iBAAiBnB,UAAUC,YAAYC,SAAS,CAAC;IAE9F,MAAMkB,aAAaC,gBAAgB;QACjC,GAAGlB,MAAM;QACT,QAAQ;QACRQ;QACAO;QACAd;IACF;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEwB;KAAW;IAE1C,OAAOxB;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.yAxis ?? {}) as YLinearAxis\n const { foldInfo, foldInfoList } = datasetReshapeInfo[0]\n const yFoldInfo = foldInfoList?.length ? foldInfoList[1] : foldInfo\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'left',\n formatMethod,\n titleText,\n isPivot,\n max: config.max === true ? yFoldInfo.statistics.max : config.max,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinear","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","config","foldInfo","foldInfoList","yFoldInfo","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,WAAW,EAAE,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAEC,kBAAkB,EAAE,GAAGN;IACzE,MAAMO,SAAUP,cAAc,MAAM,EAAE,CAACE,UAAsB,EAAE,SAAS,CAAC;IACzE,MAAM,EAAEM,QAAQ,EAAEC,YAAY,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IACxD,MAAMI,YAAYD,cAAc,SAASA,YAAY,CAAC,EAAE,GAAGD;IAC3D,IAAI,CAACT,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMY,UAAUC,aAAaX;IAE7B,MAAM,EAAEY,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGP;IAEvC,MAAMQ,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAanB,UAAUoB,gBAAgBpB,UAAUqB,cAAcrB,QACjE,OAAOsB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYlB,OAAO,KAAK,EAAE,aAAamB,iBAAiBvB,UAAUC,YAAYC,SAAS,CAAC;IAE9F,MAAMsB,aAAaC,gBAAgB;QACjC,GAAGrB,MAAM;QACT,QAAQ;QACRW;QACAO;QACAd;QACA,KAAKJ,AAAe,SAAfA,OAAO,GAAG,GAAYG,UAAU,UAAU,CAAC,GAAG,GAAGH,OAAO,GAAG;IAClE;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAE4B;KAAW;IAE1C,OAAO5B;AACT"}
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const datasetHierarchy: VChartSpecPipe;
@@ -0,0 +1,114 @@
1
+ const datasetHierarchy = (spec, context)=>{
2
+ const result = {
3
+ ...spec
4
+ };
5
+ const { advancedVSeed } = context;
6
+ const { datasetReshapeInfo, dataset } = advancedVSeed;
7
+ const { foldInfo } = datasetReshapeInfo[0];
8
+ const hierarchyFields = advancedVSeed.encoding?.hierarchy || [];
9
+ const measureKeys = advancedVSeed.measures?.map((m)=>m.id) || [];
10
+ if (!hierarchyFields.length) {
11
+ result.data = [
12
+ {
13
+ id: 'data',
14
+ values: dataset
15
+ }
16
+ ];
17
+ return result;
18
+ }
19
+ const tree = buildTree(dataset, hierarchyFields, foldInfo, measureKeys);
20
+ result.data = [
21
+ {
22
+ id: 'data',
23
+ values: tree
24
+ }
25
+ ];
26
+ return result;
27
+ };
28
+ const buildTree = (dataset, hierarchyFields, foldInfo, measureKeys = [])=>{
29
+ const { measureValue, measureId, measureName } = foldInfo;
30
+ const root = {
31
+ name: 'root',
32
+ children: []
33
+ };
34
+ dataset.forEach((datum)=>{
35
+ let currentNode = root;
36
+ for(let i = 0; i < hierarchyFields.length; i++){
37
+ const field = hierarchyFields[i];
38
+ const value = String(datum[field]);
39
+ let child = currentNode.children.find((c)=>c.name === value);
40
+ if (!child) {
41
+ child = {
42
+ name: value,
43
+ children: []
44
+ };
45
+ for(let j = 0; j <= i; j++){
46
+ const key = hierarchyFields[j];
47
+ child[key] = datum[key];
48
+ }
49
+ currentNode.children.push(child);
50
+ }
51
+ currentNode = child;
52
+ }
53
+ if (!currentNode.isLeaf) {
54
+ Object.assign(currentNode, datum);
55
+ currentNode.isLeaf = true;
56
+ if (measureValue) currentNode[measureValue] = 0;
57
+ measureKeys.forEach((key)=>{
58
+ currentNode[key] = 0;
59
+ });
60
+ currentNode._measureIds = new Set();
61
+ currentNode._measureNames = new Set();
62
+ }
63
+ if (measureValue && void 0 !== datum[measureValue]) currentNode[measureValue] += Number(datum[measureValue]);
64
+ measureKeys.forEach((key)=>{
65
+ if (void 0 !== datum[key]) currentNode[key] = (currentNode[key] || 0) + Number(datum[key]);
66
+ });
67
+ if (datum[measureId]) currentNode._measureIds.add(datum[measureId]);
68
+ if (datum[measureName]) currentNode._measureNames.add(datum[measureName]);
69
+ if (measureValue) currentNode.value = currentNode[measureValue];
70
+ });
71
+ const aggregate = (node)=>{
72
+ if (node.isLeaf) {
73
+ if (measureId && node._measureIds) {
74
+ node[measureId] = Array.from(node._measureIds).join('+');
75
+ delete node._measureIds;
76
+ }
77
+ if (measureName && node._measureNames) {
78
+ node[measureName] = Array.from(node._measureNames).join('+');
79
+ delete node._measureNames;
80
+ }
81
+ return node.value || 0;
82
+ }
83
+ if (node.children && node.children.length > 0) {
84
+ let sum = 0;
85
+ node.children.forEach((child)=>{
86
+ sum += aggregate(child);
87
+ measureKeys.forEach((key)=>{
88
+ node[key] = (node[key] || 0) + (child[key] || 0);
89
+ });
90
+ });
91
+ node.value = sum;
92
+ if (measureValue) node[measureValue] = sum;
93
+ if (measureId && node.children[0]) {
94
+ const childIds = new Set();
95
+ node.children.forEach((child)=>{
96
+ if (child[measureId]) child[measureId].split('+').forEach((id)=>childIds.add(id));
97
+ });
98
+ node[measureId] = Array.from(childIds).join('+');
99
+ const childNames = new Set();
100
+ node.children.forEach((child)=>{
101
+ if (child[measureName]) child[measureName].split('+').forEach((name)=>childNames.add(name));
102
+ });
103
+ node[measureName] = Array.from(childNames).join('+');
104
+ }
105
+ return sum;
106
+ }
107
+ return node.value || 0;
108
+ };
109
+ root.children.forEach(aggregate);
110
+ return root.children;
111
+ };
112
+ export { datasetHierarchy };
113
+
114
+ //# sourceMappingURL=datasetHierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/dataset/datasetHierarchy.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/dataset/datasetHierarchy.ts"],"sourcesContent":["import type { VChartSpecPipe, Datum, FoldInfo } from 'src/types'\n\nexport const datasetHierarchy: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { datasetReshapeInfo, dataset } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n // 1. 获取 hierarchy encoding 对应的字段\n // 在 advanced pipeline 中,encodingForHierarchy 已经确保了 dimensions 被正确映射到 'hierarchy' 通道\n const hierarchyFields = (advancedVSeed.encoding as Datum)?.hierarchy || []\n\n const measureKeys = advancedVSeed.measures?.map((m: any) => m.id) || []\n\n // 2. 如果没有 hierarchy 字段,直接返回原始数据(虽然这可能导致图表无法正确渲染,但比报错好)\n if (!hierarchyFields.length) {\n result.data = [{ id: 'data', values: dataset }]\n return result\n }\n\n // 3. 构建树形结构\n const tree = buildTree(dataset, hierarchyFields, foldInfo, measureKeys)\n\n result.data = [\n {\n id: 'data',\n values: tree,\n },\n ]\n\n return result\n}\n\n/**\n * @description 将平铺的数据集构建为树形结构\n * @param dataset 平铺的数据集\n * @param hierarchyFields 层级字段列表\n * @param measureValueField 指标值字段名\n * @param measureIdField 指标ID字段名\n */\nconst buildTree = (dataset: Datum[], hierarchyFields: string[], foldInfo: FoldInfo, measureKeys: string[] = []) => {\n const { measureValue, measureId, measureName } = foldInfo\n const root: Datum = { name: 'root', children: [] }\n\n dataset.forEach((datum) => {\n let currentNode = root\n\n // 遍历层级字段,构建路径\n for (let i = 0; i < hierarchyFields.length; i++) {\n const field = hierarchyFields[i]\n const value = String(datum[field]) // 确保值为字符串\n\n let child = currentNode.children.find((c: Datum) => c.name === value)\n\n if (!child) {\n child = { name: value, children: [] }\n // 确保父节点尽可能保留信息:保留当前层级及之前层级的所有维度字段\n for (let j = 0; j <= i; j++) {\n const key = hierarchyFields[j]\n child[key] = datum[key]\n }\n currentNode.children.push(child)\n }\n\n currentNode = child\n }\n\n // 叶子节点:聚合逻辑\n if (!currentNode.isLeaf) {\n // 第一次访问叶子节点:保留维度信息\n Object.assign(currentNode, datum)\n currentNode.isLeaf = true\n\n // 初始化累加器(防止后续叠加时使用了 datum 中的原始值作为初始值)\n if (measureValue) currentNode[measureValue] = 0\n measureKeys.forEach((key) => {\n currentNode[key] = 0\n })\n\n // 初始化 ID 集合用于后续 join\n currentNode._measureIds = new Set()\n currentNode._measureNames = new Set()\n }\n\n // 1. 聚合 measureValue (drawing measure)\n if (measureValue && datum[measureValue] !== undefined) {\n currentNode[measureValue] += Number(datum[measureValue])\n }\n\n // 2. 聚合各个 measure\n // 原来的逻辑:只聚合当前 measureId 对应的 measure,导致其他 measure(如 profit)在 folded 后的行中被忽略\n // const currentMeasureId = datum[measureId]\n // const currentMeasureValue = Number(datum[measureValue])\n // if (currentMeasureId && measureKeys.includes(currentMeasureId)) {\n // currentNode[currentMeasureId] = (currentNode[currentMeasureId] || 0) + currentMeasureValue\n // }\n\n // 新的逻辑:遍历所有 measureKey,如果 datum 中存在该字段,则进行聚合\n measureKeys.forEach((key) => {\n if (datum[key] !== undefined) {\n currentNode[key] = (currentNode[key] || 0) + Number(datum[key])\n }\n })\n\n // 3. 收集 ID 和 Name 信息\n if (datum[measureId]) currentNode._measureIds.add(datum[measureId])\n if (datum[measureName]) currentNode._measureNames.add(datum[measureName])\n\n // 4. 更新 value 字段 (用于图表映射)\n if (measureValue) {\n currentNode.value = currentNode[measureValue]\n }\n })\n\n // 后序遍历:自底向上聚合 value\n const aggregate = (node: Datum) => {\n // 处理叶子节点的 ID 集合\n if (node.isLeaf) {\n if (measureId && node._measureIds) {\n node[measureId] = Array.from(node._measureIds).join('+')\n delete node._measureIds\n }\n if (measureName && node._measureNames) {\n node[measureName] = Array.from(node._measureNames).join('+')\n delete node._measureNames\n }\n return node.value || 0\n }\n\n if (node.children && node.children.length > 0) {\n // node.isLeaf = false // 已经是 false 或 undefined,不需要显式设为 false,除非...\n let sum = 0\n node.children.forEach((child: Datum) => {\n sum += aggregate(child)\n\n // 聚合子节点的各个 measure 值到父节点\n measureKeys.forEach((key) => {\n node[key] = (node[key] || 0) + (child[key] || 0)\n })\n })\n\n node.value = sum\n\n // 为中间节点补充 measureValue 字段,保证 Tooltip 能取到值\n if (measureValue) {\n node[measureValue] = sum\n }\n\n // 为中间节点补充 measureIdField 字段\n if (measureId && node.children[0]) {\n // 收集所有子节点的 measureId\n const childIds = new Set()\n node.children.forEach((child: Datum) => {\n if (child[measureId]) {\n child[measureId].split('+').forEach((id: string) => childIds.add(id))\n }\n })\n node[measureId] = Array.from(childIds).join('+')\n\n // 收集所有子节点的 measureName\n const childNames = new Set()\n node.children.forEach((child: Datum) => {\n if (child[measureName]) {\n child[measureName].split('+').forEach((name: string) => childNames.add(name))\n }\n })\n node[measureName] = Array.from(childNames).join('+')\n }\n\n return sum\n }\n // 应该是不会走到这里的,因为叶子节点在上面已经处理了\n return node.value || 0\n }\n\n root.children.forEach(aggregate)\n\n return root.children\n}\n"],"names":["datasetHierarchy","spec","context","result","advancedVSeed","datasetReshapeInfo","dataset","foldInfo","hierarchyFields","measureKeys","m","tree","buildTree","measureValue","measureId","measureName","root","datum","currentNode","i","field","value","String","child","c","j","key","Object","Set","undefined","Number","aggregate","node","Array","sum","childIds","id","childNames","name"],"mappings":"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"}
@@ -6,3 +6,4 @@ export { datasetDualAxis } from './datasetDualAxis';
6
6
  export { datasetScatter } from './datasetScatter';
7
7
  export { datasetHistogram } from './datasetHistogram';
8
8
  export { datasetBoxplot } from './datasetBoxplot';
9
+ export { datasetHierarchy } from './datasetHierarchy';
@@ -6,4 +6,5 @@ import { datasetDualAxis } from "./datasetDualAxis.js";
6
6
  import { datasetScatter } from "./datasetScatter.js";
7
7
  import { datasetHistogram } from "./datasetHistogram.js";
8
8
  import { datasetBoxplot } from "./datasetBoxplot.js";
9
- export { datasetBoxplot, datasetDualAxis, datasetHistogram, datasetPivot, datasetScatter, datasetXY, datasetYX, progressive };
9
+ import { datasetHierarchy } from "./datasetHierarchy.js";
10
+ export { datasetBoxplot, datasetDualAxis, datasetHierarchy, datasetHistogram, datasetPivot, datasetScatter, datasetXY, datasetYX, progressive };
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const initCirclePacking: VChartSpecPipe;
@@ -0,0 +1,36 @@
1
+ const initCirclePacking = (spec, context)=>{
2
+ const result = {
3
+ ...spec
4
+ };
5
+ const { advancedVSeed } = context;
6
+ const { datasetReshapeInfo } = advancedVSeed;
7
+ const { foldInfo } = datasetReshapeInfo[0];
8
+ result.type = 'circlePacking';
9
+ result.categoryField = 'name';
10
+ result.valueField = foldInfo.measureValue;
11
+ result.drill = true;
12
+ result.circlePacking = {
13
+ style: {
14
+ fillOpacity: (d)=>d.isLeaf ? 0.75 : 0.25
15
+ }
16
+ };
17
+ result.layoutPadding = [
18
+ 0,
19
+ 10,
20
+ 10
21
+ ];
22
+ result.padding = 0;
23
+ result.animationEnter = {
24
+ easing: 'cubicInOut'
25
+ };
26
+ result.animationExit = {
27
+ easing: 'cubicInOut'
28
+ };
29
+ result.animationUpdate = {
30
+ easing: 'cubicInOut'
31
+ };
32
+ return result;
33
+ };
34
+ export { initCirclePacking };
35
+
36
+ //# sourceMappingURL=circlePacking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/circlePacking.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/circlePacking.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ICirclePackingChartSpec } from '@visactor/vchart'\n\nexport const initCirclePacking: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ICirclePackingChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'circlePacking'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n // Style configuration\n result.drill = true\n result.circlePacking = {\n style: {\n fillOpacity: (d: any) => (d.isLeaf ? 0.75 : 0.25),\n },\n }\n result.layoutPadding = [0, 10, 10]\n result.padding = 0\n // Animation configuration\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initCirclePacking","spec","context","result","advancedVSeed","datasetReshapeInfo","foldInfo","d"],"mappings":"AAGO,MAAMA,oBAAoC,CAACC,MAAMC;IACtD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,QAAQ,EAAE,GAAGD,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGG,SAAS,YAAY;IAEzCH,OAAO,KAAK,GAAG;IACfA,OAAO,aAAa,GAAG;QACrB,OAAO;YACL,aAAa,CAACI,IAAYA,EAAE,MAAM,GAAG,OAAO;QAC9C;IACF;IACAJ,OAAO,aAAa,GAAG;QAAC;QAAG;QAAI;KAAG;IAClCA,OAAO,OAAO,GAAG;IAEjBA,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
@@ -14,4 +14,7 @@ export { initFunnel } from './funnel';
14
14
  export { initPivot } from './pivot';
15
15
  export { initDualAxis } from './dualAxis';
16
16
  export { initHistogram } from './histogram';
17
+ export { initTreeMap } from './treeMap';
18
+ export { initSunburst } from './sunburst';
19
+ export { initCirclePacking } from './circlePacking';
17
20
  export { initBoxplot } from './boxplot';
@@ -14,5 +14,8 @@ import { initFunnel } from "./funnel.js";
14
14
  import { initPivot } from "./pivot.js";
15
15
  import { initDualAxis } from "./dualAxis.js";
16
16
  import { initHistogram } from "./histogram.js";
17
+ import { initTreeMap } from "./treeMap.js";
18
+ import { initSunburst } from "./sunburst.js";
19
+ import { initCirclePacking } from "./circlePacking.js";
17
20
  import { initBoxplot } from "./boxplot.js";
18
- export { initArea, initBar, initBarParallel, initBoxplot, initColumn, initColumnParallel, initDonut, initDualAxis, initFunnel, initHistogram, initLine, initPie, initPivot, initRadar, initRose, initRoseParallel, initScatter };
21
+ export { initArea, initBar, initBarParallel, initBoxplot, initCirclePacking, initColumn, initColumnParallel, initDonut, initDualAxis, initFunnel, initHistogram, initLine, initPie, initPivot, initRadar, initRose, initRoseParallel, initScatter, initSunburst, initTreeMap };
@@ -9,6 +9,10 @@ const initScatter = (spec, context)=>{
9
9
  result.direction = 'vertical';
10
10
  result.xField = foldInfoList?.[0].measureValue;
11
11
  if (foldInfoList?.[1]) result.yField = foldInfoList[1].measureValue;
12
+ else if (unfoldInfo.encodingX) {
13
+ result.xField = unfoldInfo.encodingX;
14
+ result.yField = foldInfoList?.[0].measureValue;
15
+ }
12
16
  result.seriesField = unfoldInfo.encodingColorId;
13
17
  result.padding = 0;
14
18
  result.region = [
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/init/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/scatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { VChartSpecPipe } from 'src/types'\n\nexport const initScatter: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { unfoldInfo, foldInfoList } = datasetReshapeInfo[0]\n\n result.type = 'scatter'\n result.direction = 'vertical'\n result.xField = foldInfoList?.[0].measureValue\n if (foldInfoList?.[1]) {\n result.yField = foldInfoList[1].measureValue\n }\n\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initScatter","spec","context","result","advancedVSeed","datasetReshapeInfo","unfoldInfo","foldInfoList"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,UAAU,EAAEC,YAAY,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1DF,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IAClC,IAAIA,cAAc,CAAC,EAAE,EACnBJ,OAAO,MAAM,GAAGI,YAAY,CAAC,EAAE,CAAC,YAAY;IAG9CJ,OAAO,WAAW,GAAGG,WAAW,eAAe;IAE/CH,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IAEnB,OAAOA;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/scatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { VChartSpecPipe } from 'src/types'\n\nexport const initScatter: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { unfoldInfo, foldInfoList } = datasetReshapeInfo[0]\n\n result.type = 'scatter'\n result.direction = 'vertical'\n result.xField = foldInfoList?.[0].measureValue\n if (foldInfoList?.[1]) {\n result.yField = foldInfoList[1].measureValue\n } else if (unfoldInfo.encodingX) {\n result.xField = unfoldInfo.encodingX\n result.yField = foldInfoList?.[0].measureValue\n }\n\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initScatter","spec","context","result","advancedVSeed","datasetReshapeInfo","unfoldInfo","foldInfoList"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,UAAU,EAAEC,YAAY,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1DF,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IAClC,IAAIA,cAAc,CAAC,EAAE,EACnBJ,OAAO,MAAM,GAAGI,YAAY,CAAC,EAAE,CAAC,YAAY;SACvC,IAAID,WAAW,SAAS,EAAE;QAC/BH,OAAO,MAAM,GAAGG,WAAW,SAAS;QACpCH,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IACpC;IAEAJ,OAAO,WAAW,GAAGG,WAAW,eAAe;IAE/CH,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IAEnB,OAAOA;AACT"}
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const initSunburst: VChartSpecPipe;
@@ -0,0 +1,44 @@
1
+ const initSunburst = (spec, context)=>{
2
+ const result = {
3
+ ...spec
4
+ };
5
+ const { advancedVSeed } = context;
6
+ const { datasetReshapeInfo, encoding } = advancedVSeed;
7
+ const { foldInfo } = datasetReshapeInfo[0];
8
+ result.type = 'sunburst';
9
+ result.categoryField = 'name';
10
+ result.valueField = foldInfo.measureValue;
11
+ result.outerRadius = 1;
12
+ result.innerRadius = 0;
13
+ result.gap = 0;
14
+ result.offsetX = 0;
15
+ result.offsetY = 0;
16
+ result.drill = true;
17
+ result.padding = 0;
18
+ result.labelAutoVisible = {
19
+ enable: true,
20
+ circumference: 5
21
+ };
22
+ result.sunburst = {
23
+ visible: true,
24
+ style: {
25
+ fillOpacity: (datum)=>{
26
+ if (encoding.hierarchy?.length === 1) return 1;
27
+ return datum.isLeaf ? 0.4 : 0.8;
28
+ }
29
+ }
30
+ };
31
+ result.animationEnter = {
32
+ easing: 'cubicInOut'
33
+ };
34
+ result.animationExit = {
35
+ easing: 'cubicInOut'
36
+ };
37
+ result.animationUpdate = {
38
+ easing: 'cubicInOut'
39
+ };
40
+ return result;
41
+ };
42
+ export { initSunburst };
43
+
44
+ //# sourceMappingURL=sunburst.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/sunburst.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/sunburst.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ISunburstChartSpec } from '@visactor/vchart'\n\nexport const initSunburst: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISunburstChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'sunburst'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n result.outerRadius = 1\n result.innerRadius = 0\n result.gap = 0\n result.offsetX = 0\n result.offsetY = 0\n result.drill = true\n result.padding = 0\n result.labelAutoVisible = {\n enable: true,\n circumference: 5,\n }\n result.sunburst = {\n visible: true,\n style: {\n fillOpacity: (datum: any) => {\n if (encoding.hierarchy?.length === 1) {\n return 1\n }\n return datum.isLeaf ? 0.4 : 0.8\n },\n },\n }\n\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initSunburst","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","foldInfo","datum"],"mappings":"AAGO,MAAMA,eAA+B,CAACC,MAAMC;IACjD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,QAAQ,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGI,SAAS,YAAY;IACzCJ,OAAO,WAAW,GAAG;IACrBA,OAAO,WAAW,GAAG;IACrBA,OAAO,GAAG,GAAG;IACbA,OAAO,OAAO,GAAG;IACjBA,OAAO,OAAO,GAAG;IACjBA,OAAO,KAAK,GAAG;IACfA,OAAO,OAAO,GAAG;IACjBA,OAAO,gBAAgB,GAAG;QACxB,QAAQ;QACR,eAAe;IACjB;IACAA,OAAO,QAAQ,GAAG;QAChB,SAAS;QACT,OAAO;YACL,aAAa,CAACK;gBACZ,IAAIF,SAAS,SAAS,EAAE,WAAW,GACjC,OAAO;gBAET,OAAOE,MAAM,MAAM,GAAG,MAAM;YAC9B;QACF;IACF;IAEAL,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const initTreeMap: VChartSpecPipe;
@@ -0,0 +1,26 @@
1
+ const initTreeMap = (spec, context)=>{
2
+ const result = {
3
+ ...spec
4
+ };
5
+ const { advancedVSeed } = context;
6
+ const { datasetReshapeInfo } = advancedVSeed;
7
+ const { foldInfo } = datasetReshapeInfo[0];
8
+ result.type = 'treemap';
9
+ result.categoryField = 'name';
10
+ result.valueField = foldInfo.measureValue;
11
+ result.padding = 0;
12
+ result.drill = true;
13
+ result.animationEnter = {
14
+ easing: 'cubicInOut'
15
+ };
16
+ result.animationExit = {
17
+ easing: 'cubicInOut'
18
+ };
19
+ result.animationUpdate = {
20
+ easing: 'cubicInOut'
21
+ };
22
+ return result;
23
+ };
24
+ export { initTreeMap };
25
+
26
+ //# sourceMappingURL=treeMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/init/treeMap.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/treeMap.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ITreemapChartSpec } from '@visactor/vchart'\n\nexport const initTreeMap: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ITreemapChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'treemap'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n result.padding = 0\n result.drill = true\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initTreeMap","spec","context","result","advancedVSeed","datasetReshapeInfo","foldInfo"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,QAAQ,EAAE,GAAGD,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGG,SAAS,YAAY;IACzCH,OAAO,OAAO,GAAG;IACjBA,OAAO,KAAK,GAAG;IACfA,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
@@ -3,3 +3,7 @@ export { labelDualAxis } from './labelDualAxis';
3
3
  export { labelScatter } from './labelScatter';
4
4
  export { labelPie } from './labelPie';
5
5
  export { labelBoxPlot } from './labelBoxPlot';
6
+ export { labelCirclePacking } from './labelCirclePacking';
7
+ export { labelSunburst } from './labelSunburst';
8
+ export { labelTreeMapLeaf } from './labelTreeMapLeaf';
9
+ export { labelTreeMapGroup } from './labelTreeMapGroup';
@@ -3,4 +3,8 @@ import { labelDualAxis } from "./labelDualAxis.js";
3
3
  import { labelScatter } from "./labelScatter.js";
4
4
  import { labelPie } from "./labelPie.js";
5
5
  import { labelBoxPlot } from "./labelBoxPlot.js";
6
- export { label, labelBoxPlot, labelDualAxis, labelPie, labelScatter };
6
+ import { labelCirclePacking } from "./labelCirclePacking.js";
7
+ import { labelSunburst } from "./labelSunburst.js";
8
+ import { labelTreeMapLeaf } from "./labelTreeMapLeaf.js";
9
+ import { labelTreeMapGroup } from "./labelTreeMapGroup.js";
10
+ export { label, labelBoxPlot, labelCirclePacking, labelDualAxis, labelPie, labelScatter, labelSunburst, labelTreeMapGroup, labelTreeMapLeaf };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport { createFormatter, createFormatterByMeasure, DATUM_HIDE_KEY, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimension,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n VChartSpecPipe,\n} from 'src/types'\nimport { isNumber, merge, uniqueBy } from 'remeda'\nimport { selector } from 'src/dataSelector'\nimport { MeasureId } from 'src/dataReshape/constant'\n\nexport const label: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n\n result.label = buildLabel(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions!,\n advancedVSeed.measures!,\n encoding as Encoding,\n [foldInfo],\n ) as unknown as ILineChartSpec['label']\n\n return result\n}\n\nexport const generateMeasureValue = (\n value: number | string,\n measure: Measure,\n labelAutoFormat?: boolean,\n numFormat: NumFormat = {},\n) => {\n const format = merge(numFormat, measure.numFormat || measure.format)\n const mergedMeasure = { ...measure, numFormat: format, autoFormat: labelAutoFormat || measure.autoFormat }\n\n const formatter = createFormatterByMeasure(mergedMeasure)\n return formatter(value)\n}\n\nexport const generateMeasurePercent = (value: number | string, sum: number, formatter: Formatter) => {\n if (value === undefined || value === null) return String(value)\n const num = Number(value)\n if (Number.isNaN(num)) return String(value)\n\n const percentValue = num / sum\n return formatter(percentValue)\n}\n\nexport const buildLabel = (\n label: Label,\n vseedMeasures: Measures = [],\n vseedDimensions: Dimensions = [],\n advancedVSeedDimensions: Dimensions,\n advancedVSeedMeasures: Measures,\n encoding: Encoding,\n foldInfoList: (Pick<FoldInfo, 'measureId' | 'measureValue'> & Partial<Pick<FoldInfo, 'statistics'>>)[],\n) => {\n const {\n enable,\n wrap,\n showValue,\n showValuePercent,\n showDimension,\n labelOverlap,\n labelColorSmartInvert,\n labelStroke,\n labelColor,\n labelFontSize,\n labelFontWeight,\n labelBackgroundColor,\n labelPosition,\n autoFormat,\n numFormat = {},\n } = label\n\n const hasDimLabelEncoding = vseedDimensions.some((item) => encoding.label?.includes(item.id))\n\n const labelDims = uniqueBy(\n hasDimLabelEncoding\n ? vseedDimensions.filter((item) => encoding.label?.includes(item.id))\n : showDimension\n ? advancedVSeedDimensions.filter((d) => d.id !== MeasureId && d.encoding !== 'row' && d.encoding !== 'column')\n : [],\n (item: Dimension) => item.id,\n )\n\n const labelMeas = uniqueBy(\n vseedMeasures.filter((item) => encoding.label?.includes(item.id)),\n (item: Measure) => item.id,\n )\n\n const percentFormat: NumFormat = merge(numFormat, {\n type: 'percent',\n } as NumFormat)\n\n const percentFormatter = createFormatter(percentFormat)\n\n const result = {\n visible: enable,\n dataFilter: (data: Datum[]) => {\n return data.filter((entry) => {\n return entry.data?.[DATUM_HIDE_KEY] !== true && selector(entry.data as Datum, label.selector, 'Or')\n })\n },\n formatMethod: (_: unknown, datum: Datum) => {\n const result = []\n\n const dimLabels = labelDims.map((item: Dimension) => {\n const id = item.id\n return datum[id] as number | string\n })\n\n const meaLabels = labelMeas.map((item: Measure) =>\n generateMeasureValue(datum[item.id] as number | string, item, autoFormat, numFormat),\n )\n\n result.push(...dimLabels)\n\n foldInfoList.forEach((foldInfo) => {\n const { measureId, measureValue, statistics } = foldInfo\n const measure = findMeasureById(advancedVSeedMeasures, datum[measureId] as string)\n if (measure) {\n const measureValueLabel = generateMeasureValue(\n datum[measureValue] as number | string,\n measure,\n autoFormat,\n numFormat,\n )\n\n if (showValue) {\n result.push(measureValueLabel)\n }\n if (showValuePercent) {\n if (isNumber(datum['__VCHART_ARC_RATIO'])) {\n // 饼图/环图需要使用实际占比数据\n result.push(generateMeasurePercent(datum['__VCHART_ARC_RATIO'], 1, percentFormatter))\n } else if (statistics && isNumber(statistics.sum)) {\n result.push(\n generateMeasurePercent(datum[measureValue] as number | string, statistics.sum, percentFormatter),\n )\n }\n }\n }\n })\n\n result.push(...meaLabels)\n\n if (wrap) {\n return result\n }\n return result.join(' ')\n },\n syncState: true,\n position: labelPosition,\n style: {\n stroke: labelStroke,\n fill: labelColor,\n fontSize: labelFontSize,\n fontWeight: labelFontWeight,\n background: labelBackgroundColor,\n },\n smartInvert: labelColorSmartInvert,\n }\n\n if (labelColorSmartInvert) {\n ;(result.style as any).lineWidth = 2 // label 边框线宽度,不设置这个会导致智能反色失败\n }\n\n if (labelOverlap) {\n ;(result as any).overlap = {\n hideOnHit: true,\n clampForce: true,\n }\n }\n\n return result\n}\n"],"names":["label","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","buildLabel","generateMeasureValue","value","measure","labelAutoFormat","numFormat","format","merge","mergedMeasure","formatter","createFormatterByMeasure","generateMeasurePercent","sum","String","num","Number","percentValue","vseedMeasures","vseedDimensions","advancedVSeedDimensions","advancedVSeedMeasures","foldInfoList","enable","wrap","showValue","showValuePercent","showDimension","labelOverlap","labelColorSmartInvert","labelStroke","labelColor","labelFontSize","labelFontWeight","labelBackgroundColor","labelPosition","autoFormat","hasDimLabelEncoding","item","labelDims","uniqueBy","d","MeasureId","labelMeas","percentFormat","percentFormatter","createFormatter","data","entry","DATUM_HIDE_KEY","selector","_","datum","dimLabels","id","meaLabels","measureId","measureValue","statistics","findMeasureById","measureValueLabel","isNumber"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport { createFormatter, createFormatterByMeasure, DATUM_HIDE_KEY, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimension,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n VChartSpecPipe,\n} from 'src/types'\nimport { isNumber, merge, uniqueBy } from 'remeda'\nimport { selector } from 'src/dataSelector'\nimport { MeasureId } from 'src/dataReshape/constant'\n\nexport const label: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n result.label = buildLabel(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions!,\n advancedVSeed.measures!,\n encoding as Encoding,\n [foldInfo],\n ) as unknown as ILineChartSpec['label']\n\n return result\n}\n\nexport const generateMeasureValue = (\n value: number | string,\n measure: Measure,\n labelAutoFormat?: boolean,\n numFormat: NumFormat = {},\n) => {\n const format = merge(numFormat, measure.numFormat || measure.format)\n const mergedMeasure = { ...measure, numFormat: format, autoFormat: labelAutoFormat || measure.autoFormat }\n\n const formatter = createFormatterByMeasure(mergedMeasure)\n return formatter(value)\n}\n\nexport const generateMeasurePercent = (value: number | string, sum: number, formatter: Formatter) => {\n if (value === undefined || value === null) return String(value)\n const num = Number(value)\n if (Number.isNaN(num)) return String(value)\n\n const percentValue = num / sum\n return formatter(percentValue)\n}\n\nexport const buildLabel = (\n label: Label,\n vseedMeasures: Measures = [],\n vseedDimensions: Dimensions = [],\n advancedVSeedDimensions: Dimensions,\n advancedVSeedMeasures: Measures,\n encoding: Encoding,\n foldInfoList: (Pick<FoldInfo, 'measureId' | 'measureValue'> & Partial<Pick<FoldInfo, 'statistics'>>)[],\n) => {\n const {\n enable,\n wrap,\n showValue,\n showValuePercent,\n showDimension,\n labelOverlap,\n labelColorSmartInvert,\n labelStroke,\n labelColor,\n labelFontSize,\n labelFontWeight,\n labelBackgroundColor,\n labelPosition,\n autoFormat,\n numFormat = {},\n } = label\n\n const hasDimLabelEncoding = vseedDimensions.some((item) => encoding.label?.includes(item.id))\n\n const labelDims = uniqueBy(\n hasDimLabelEncoding\n ? vseedDimensions.filter((item) => encoding.label?.includes(item.id))\n : showDimension\n ? advancedVSeedDimensions.filter((d) => d.id !== MeasureId && d.encoding !== 'row' && d.encoding !== 'column')\n : [],\n (item: Dimension) => item.id,\n )\n\n const labelMeas = uniqueBy(\n vseedMeasures.filter((item) => encoding.label?.includes(item.id)),\n (item: Measure) => item.id,\n )\n\n const percentFormat: NumFormat = merge(numFormat, {\n type: 'percent',\n } as NumFormat)\n\n const percentFormatter = createFormatter(percentFormat)\n\n const result = {\n visible: enable,\n dataFilter: (data: Datum[]) => {\n return data.filter((entry) => {\n return entry.data?.[DATUM_HIDE_KEY] !== true && selector(entry.data as Datum, label.selector, 'Or')\n })\n },\n formatMethod: (_: unknown, datum: Datum) => {\n const result = []\n\n const dimLabels = labelDims.map((item: Dimension) => {\n const id = item.id\n return datum[id] as number | string\n })\n\n const meaLabels = labelMeas.map((item: Measure) =>\n generateMeasureValue(datum[item.id] as number | string, item, autoFormat, numFormat),\n )\n\n result.push(...dimLabels)\n\n foldInfoList.forEach((foldInfo) => {\n const { measureId, measureValue, statistics } = foldInfo\n const measure = findMeasureById(advancedVSeedMeasures, datum[measureId] as string)\n if (measure) {\n const measureValueLabel = generateMeasureValue(\n datum[measureValue] as number | string,\n measure,\n autoFormat,\n numFormat,\n )\n\n if (showValue) {\n result.push(measureValueLabel)\n }\n if (showValuePercent) {\n if (isNumber(datum['__VCHART_ARC_RATIO'])) {\n // 饼图/环图需要使用实际占比数据\n result.push(generateMeasurePercent(datum['__VCHART_ARC_RATIO'], 1, percentFormatter))\n } else if (statistics && isNumber(statistics.sum)) {\n result.push(\n generateMeasurePercent(datum[measureValue] as number | string, statistics.sum, percentFormatter),\n )\n }\n }\n }\n })\n\n result.push(...meaLabels)\n\n if (wrap) {\n return result\n }\n return result.join(' ')\n },\n syncState: true,\n position: labelPosition,\n style: {\n stroke: labelStroke,\n fill: labelColor,\n fontSize: labelFontSize,\n fontWeight: labelFontWeight,\n background: labelBackgroundColor,\n },\n smartInvert: labelColorSmartInvert,\n }\n\n if (labelColorSmartInvert) {\n ;(result.style as any).lineWidth = 2 // label 边框线宽度,不设置这个会导致智能反色失败\n }\n\n if (labelOverlap) {\n ;(result as any).overlap = {\n hideOnHit: true,\n clampForce: true,\n }\n }\n\n return result\n}\n"],"names":["label","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","buildLabel","generateMeasureValue","value","measure","labelAutoFormat","numFormat","format","merge","mergedMeasure","formatter","createFormatterByMeasure","generateMeasurePercent","sum","String","num","Number","percentValue","vseedMeasures","vseedDimensions","advancedVSeedDimensions","advancedVSeedMeasures","foldInfoList","enable","wrap","showValue","showValuePercent","showDimension","labelOverlap","labelColorSmartInvert","labelStroke","labelColor","labelFontSize","labelFontWeight","labelBackgroundColor","labelPosition","autoFormat","hasDimLabelEncoding","item","labelDims","uniqueBy","d","MeasureId","labelMeas","percentFormat","percentFormatter","createFormatter","data","entry","DATUM_HIDE_KEY","selector","_","datum","dimLabels","id","meaLabels","measureId","measureValue","statistics","findMeasureById","measureValueLabel","isNumber"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const labelCirclePacking: VChartSpecPipe;
@@ -0,0 +1,23 @@
1
+ import { label as external_label_js_label } from "./label.js";
2
+ const labelCirclePacking = (spec, context)=>{
3
+ const { advancedVSeed } = context;
4
+ const { chartType } = advancedVSeed;
5
+ const baseConfig = advancedVSeed.config[chartType];
6
+ const { label } = baseConfig;
7
+ const result = external_label_js_label(spec, context);
8
+ if (label?.enable) {
9
+ const labelSpec = result.label;
10
+ result.label = {
11
+ ...labelSpec,
12
+ style: {
13
+ ...labelSpec?.style,
14
+ fontSize: 10,
15
+ visible: (d)=>1 === d.depth
16
+ }
17
+ };
18
+ }
19
+ return result;
20
+ };
21
+ export { labelCirclePacking };
22
+
23
+ //# sourceMappingURL=labelCirclePacking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/labelCirclePacking.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelCirclePacking.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Label, VChartSpecPipe } from 'src/types'\nimport { label as commonLabel } from './label'\n\nexport const labelCirclePacking: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const { label } = baseConfig\n\n // Reuse common label logic to build basic label config\n const result = commonLabel(spec, context) as ILineChartSpec\n\n // If label is enabled, override with circlePacking specific logic\n if (label?.enable) {\n const labelSpec = result.label as any\n result.label = {\n ...labelSpec,\n style: {\n ...labelSpec?.style,\n fontSize: 10,\n visible: (d: any) => {\n return d.depth === 1\n },\n },\n }\n }\n\n return result\n}\n"],"names":["labelCirclePacking","spec","context","advancedVSeed","chartType","baseConfig","label","result","commonLabel","labelSpec","d"],"mappings":";AAIO,MAAMA,qBAAqC,CAACC,MAAMC;IACvD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,aAAaF,cAAc,MAAM,CAACC,UAAU;IAClD,MAAM,EAAEE,KAAK,EAAE,GAAGD;IAGlB,MAAME,SAASC,wBAAYP,MAAMC;IAGjC,IAAII,OAAO,QAAQ;QACjB,MAAMG,YAAYF,OAAO,KAAK;QAC9BA,OAAO,KAAK,GAAG;YACb,GAAGE,SAAS;YACZ,OAAO;gBACL,GAAGA,WAAW,KAAK;gBACnB,UAAU;gBACV,SAAS,CAACC,IACDA,AAAY,MAAZA,EAAE,KAAK;YAElB;QACF;IACF;IAEA,OAAOH;AACT"}
@@ -0,0 +1,2 @@
1
+ import type { VChartSpecPipe } from '../../../../../types';
2
+ export declare const labelSunburst: VChartSpecPipe;
@@ -0,0 +1,26 @@
1
+ import { label as external_label_js_label } from "./label.js";
2
+ const labelSunburst = (spec, context)=>{
3
+ const { advancedVSeed } = context;
4
+ const { chartType, encoding } = advancedVSeed;
5
+ const baseConfig = advancedVSeed.config[chartType];
6
+ const { label } = baseConfig;
7
+ const result = external_label_js_label(spec, context);
8
+ if (label?.enable) {
9
+ const labelSpec = result.label;
10
+ result.label = {
11
+ ...labelSpec,
12
+ style: {
13
+ ...labelSpec?.style,
14
+ fontSize: 12,
15
+ fillOpacity: (datum)=>{
16
+ if (encoding.hierarchy?.length === 1) return 1;
17
+ return datum.isLeaf ? 0.4 : 0.6;
18
+ }
19
+ }
20
+ };
21
+ }
22
+ return result;
23
+ };
24
+ export { labelSunburst };
25
+
26
+ //# sourceMappingURL=labelSunburst.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/label/labelSunburst.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelSunburst.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Label, VChartSpecPipe } from 'src/types'\nimport { label as commonLabel } from './label'\n\nexport const labelSunburst: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const { label } = baseConfig\n\n // Reuse common label logic\n const result = commonLabel(spec, context) as ILineChartSpec\n\n // Override with sunburst specific logic\n if (label?.enable) {\n const labelSpec = result.label as any\n result.label = {\n ...labelSpec,\n style: {\n ...labelSpec?.style,\n fontSize: 12,\n fillOpacity: (datum: any) => {\n if (encoding.hierarchy?.length === 1) {\n return 1\n }\n return datum.isLeaf ? 0.4 : 0.6\n },\n },\n }\n }\n\n return result\n}\n"],"names":["labelSunburst","spec","context","advancedVSeed","chartType","encoding","baseConfig","label","result","commonLabel","labelSpec","datum"],"mappings":";AAIO,MAAMA,gBAAgC,CAACC,MAAMC;IAClD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,SAAS,EAAEC,QAAQ,EAAE,GAAGF;IAChC,MAAMG,aAAaH,cAAc,MAAM,CAACC,UAAU;IAClD,MAAM,EAAEG,KAAK,EAAE,GAAGD;IAGlB,MAAME,SAASC,wBAAYR,MAAMC;IAGjC,IAAIK,OAAO,QAAQ;QACjB,MAAMG,YAAYF,OAAO,KAAK;QAC9BA,OAAO,KAAK,GAAG;YACb,GAAGE,SAAS;YACZ,OAAO;gBACL,GAAGA,WAAW,KAAK;gBACnB,UAAU;gBACV,aAAa,CAACC;oBACZ,IAAIN,SAAS,SAAS,EAAE,WAAW,GACjC,OAAO;oBAET,OAAOM,MAAM,MAAM,GAAG,MAAM;gBAC9B;YACF;QACF;IACF;IAEA,OAAOH;AACT"}