@visactor/vseed 0.2.9 → 0.3.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 (396) 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 +154 -118
  4. package/dist/esm/pipeline/advanced/chart/pipeline/area.js +9 -8
  5. package/dist/esm/pipeline/advanced/chart/pipeline/area.js.map +1 -1
  6. package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js +9 -8
  7. package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js.map +1 -1
  8. package/dist/esm/pipeline/advanced/chart/pipeline/bar.js +9 -8
  9. package/dist/esm/pipeline/advanced/chart/pipeline/bar.js.map +1 -1
  10. package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js +9 -8
  11. package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js.map +1 -1
  12. package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js +9 -8
  13. package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js.map +1 -1
  14. package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js +19 -8
  15. package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js.map +1 -1
  16. package/dist/esm/pipeline/advanced/chart/pipeline/column.js +9 -8
  17. package/dist/esm/pipeline/advanced/chart/pipeline/column.js.map +1 -1
  18. package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js +9 -8
  19. package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js.map +1 -1
  20. package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js +9 -8
  21. package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js.map +1 -1
  22. package/dist/esm/pipeline/advanced/chart/pipeline/donut.js +9 -8
  23. package/dist/esm/pipeline/advanced/chart/pipeline/donut.js.map +1 -1
  24. package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js +1 -6
  25. package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js.map +1 -1
  26. package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js +9 -8
  27. package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js.map +1 -1
  28. package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js +9 -7
  29. package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js.map +1 -1
  30. package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js +15 -8
  31. package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js.map +1 -1
  32. package/dist/esm/pipeline/advanced/chart/pipeline/line.js +9 -8
  33. package/dist/esm/pipeline/advanced/chart/pipeline/line.js.map +1 -1
  34. package/dist/esm/pipeline/advanced/chart/pipeline/pie.js +9 -8
  35. package/dist/esm/pipeline/advanced/chart/pipeline/pie.js.map +1 -1
  36. package/dist/esm/pipeline/advanced/chart/pipeline/radar.js +9 -8
  37. package/dist/esm/pipeline/advanced/chart/pipeline/radar.js.map +1 -1
  38. package/dist/esm/pipeline/advanced/chart/pipeline/rose.js +9 -8
  39. package/dist/esm/pipeline/advanced/chart/pipeline/rose.js.map +1 -1
  40. package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js +9 -8
  41. package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js.map +1 -1
  42. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +1 -6
  43. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
  44. package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js +0 -1
  45. package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js.map +1 -1
  46. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js +1 -2
  47. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js.map +1 -1
  48. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js +2 -4
  49. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js.map +1 -1
  50. package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js +4 -4
  51. package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js.map +1 -1
  52. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +5 -7
  53. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
  54. package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js +5 -7
  55. package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js.map +1 -1
  56. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +5 -7
  57. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
  58. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +5 -15
  59. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
  60. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +5 -7
  61. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
  62. package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js +4 -6
  63. package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js.map +1 -1
  64. package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js +2 -5
  65. package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js.map +1 -1
  66. package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js +7 -14
  67. package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js.map +1 -1
  68. package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js +5 -7
  69. package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
  70. package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js +5 -7
  71. package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js.map +1 -1
  72. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +5 -7
  73. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
  74. package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js +2 -5
  75. package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
  76. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.d.ts +1 -1
  77. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js +19 -50
  78. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js.map +1 -1
  79. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js +25 -118
  80. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js.map +1 -1
  81. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js +30 -115
  82. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js.map +1 -1
  83. package/dist/esm/pipeline/advanced/chart/pipes/measures/index.d.ts +0 -1
  84. package/dist/esm/pipeline/advanced/chart/pipes/measures/index.js +1 -2
  85. package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.d.ts +12 -1
  86. package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js +12 -1
  87. package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js.map +1 -1
  88. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js +6 -12
  89. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map +1 -1
  90. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +25 -28
  91. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
  92. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js +6 -11
  93. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
  94. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js +4 -8
  95. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map +1 -1
  96. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js +23 -35
  97. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
  98. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js +3 -8
  99. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js.map +1 -1
  100. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +21 -17
  101. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
  102. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js +1 -2
  103. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
  104. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js +4 -9
  105. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js.map +1 -1
  106. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +22 -27
  107. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
  108. package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js +3 -3
  109. package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js.map +1 -1
  110. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js +3 -2
  111. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js.map +1 -1
  112. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js +2 -2
  113. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js.map +1 -1
  114. package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js +5 -5
  115. package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js.map +1 -1
  116. package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js +3 -5
  117. package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js.map +1 -1
  118. package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js +17 -45
  119. package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js.map +1 -1
  120. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js +3 -3
  121. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js.map +1 -1
  122. package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js +1 -1
  123. package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js.map +1 -1
  124. package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.d.ts +2 -2
  125. package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js +2 -6
  126. package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js.map +1 -1
  127. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +1 -1
  128. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
  129. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js +1 -1
  130. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
  131. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js +1 -1
  132. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
  133. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js +1 -1
  134. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
  135. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js +16 -13
  136. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
  137. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js +10 -13
  138. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
  139. package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js +1 -3
  140. package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js.map +1 -1
  141. package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js +4 -12
  142. package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js.map +1 -1
  143. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.d.ts +2 -3
  144. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js +38 -78
  145. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js.map +1 -1
  146. package/dist/esm/pipeline/spec/chart/pipes/dataset/index.d.ts +1 -1
  147. package/dist/esm/pipeline/spec/chart/pipes/dataset/index.js +2 -2
  148. package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.d.ts +2 -2
  149. package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js +16 -75
  150. package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js.map +1 -1
  151. package/dist/esm/pipeline/spec/chart/pipes/dual/index.d.ts +1 -1
  152. package/dist/esm/pipeline/spec/chart/pipes/dual/index.js +2 -2
  153. package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.d.ts +2 -3
  154. package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js +16 -32
  155. package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js.map +1 -1
  156. package/dist/esm/pipeline/spec/chart/pipes/init/index.d.ts +1 -1
  157. package/dist/esm/pipeline/spec/chart/pipes/init/index.js +2 -2
  158. package/dist/esm/pipeline/spec/chart/pipes/label/index.d.ts +1 -1
  159. package/dist/esm/pipeline/spec/chart/pipes/label/index.js +2 -2
  160. package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
  161. package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.js.map +1 -1
  162. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.d.ts +2 -3
  163. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js +14 -30
  164. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js.map +1 -1
  165. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js.map +1 -1
  166. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js.map +1 -1
  167. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js +5 -5
  168. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js.map +1 -1
  169. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/ecdfRegressionLine.js +1 -1
  170. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/ecdfRegressionLine.js.map +1 -1
  171. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/kdeRegressionLine.js +1 -1
  172. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/kdeRegressionLine.js.map +1 -1
  173. package/dist/esm/pipeline/spec/chart/pipes/series/series.d.ts +3 -3
  174. package/dist/esm/pipeline/spec/chart/pipes/series/series.js +45 -17
  175. package/dist/esm/pipeline/spec/chart/pipes/series/series.js.map +1 -1
  176. package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.d.ts +1 -1
  177. package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.js +2 -2
  178. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.d.ts +2 -2
  179. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js +5 -5
  180. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
  181. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +3 -3
  182. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
  183. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.d.ts +2 -3
  184. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js +28 -62
  185. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
  186. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.d.ts +1 -1
  187. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js +4 -4
  188. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js.map +1 -1
  189. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js +1 -1
  190. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js.map +1 -1
  191. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.d.ts +1 -1
  192. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js +4 -4
  193. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js.map +1 -1
  194. package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js +2 -2
  195. package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js.map +1 -1
  196. package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js +2 -2
  197. package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js.map +1 -1
  198. package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js +1 -1
  199. package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js.map +1 -1
  200. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotDataConfig.js +1 -1
  201. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotDataConfig.js.map +1 -1
  202. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js +4 -4
  203. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js.map +1 -1
  204. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js +3 -3
  205. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
  206. package/dist/esm/pipeline/utils/chatType.d.ts +9 -0
  207. package/dist/esm/pipeline/utils/chatType.js +33 -21
  208. package/dist/esm/pipeline/utils/chatType.js.map +1 -1
  209. package/dist/esm/pipeline/utils/measures/find.d.ts +2 -1
  210. package/dist/esm/pipeline/utils/measures/find.js +3 -13
  211. package/dist/esm/pipeline/utils/measures/find.js.map +1 -1
  212. package/dist/esm/theme/dark/dark.js +0 -4
  213. package/dist/esm/theme/dark/dark.js.map +1 -1
  214. package/dist/esm/theme/light/light.js +0 -4
  215. package/dist/esm/theme/light/light.js.map +1 -1
  216. package/dist/esm/types/advancedVSeed.d.ts +137 -68
  217. package/dist/esm/types/advancedVSeed.js +8 -6
  218. package/dist/esm/types/advancedVSeed.js.map +1 -1
  219. package/dist/esm/types/chartType/area/area.d.ts +3 -5
  220. package/dist/esm/types/chartType/area/zArea.d.ts +11 -2
  221. package/dist/esm/types/chartType/area/zArea.js +2 -2
  222. package/dist/esm/types/chartType/area/zArea.js.map +1 -1
  223. package/dist/esm/types/chartType/areaPercent/areaPercent.d.ts +3 -5
  224. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +11 -2
  225. package/dist/esm/types/chartType/areaPercent/zAreaPercent.js +2 -2
  226. package/dist/esm/types/chartType/areaPercent/zAreaPercent.js.map +1 -1
  227. package/dist/esm/types/chartType/bar/bar.d.ts +4 -6
  228. package/dist/esm/types/chartType/bar/zBar.d.ts +11 -2
  229. package/dist/esm/types/chartType/bar/zBar.js +2 -2
  230. package/dist/esm/types/chartType/bar/zBar.js.map +1 -1
  231. package/dist/esm/types/chartType/barParallel/barParallel.d.ts +3 -5
  232. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +11 -2
  233. package/dist/esm/types/chartType/barParallel/zBarParallel.js +2 -2
  234. package/dist/esm/types/chartType/barParallel/zBarParallel.js.map +1 -1
  235. package/dist/esm/types/chartType/barPercent/barPercent.d.ts +3 -3
  236. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +11 -2
  237. package/dist/esm/types/chartType/barPercent/zBarPercent.js +2 -2
  238. package/dist/esm/types/chartType/barPercent/zBarPercent.js.map +1 -1
  239. package/dist/esm/types/chartType/boxPlot/boxPlot.d.ts +3 -5
  240. package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +11 -2
  241. package/dist/esm/types/chartType/boxPlot/zBoxPlot.js +2 -2
  242. package/dist/esm/types/chartType/boxPlot/zBoxPlot.js.map +1 -1
  243. package/dist/esm/types/chartType/column/column.d.ts +3 -5
  244. package/dist/esm/types/chartType/column/zColumn.d.ts +11 -2
  245. package/dist/esm/types/chartType/column/zColumn.js +2 -2
  246. package/dist/esm/types/chartType/column/zColumn.js.map +1 -1
  247. package/dist/esm/types/chartType/columnParallel/columnParallel.d.ts +4 -6
  248. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +11 -2
  249. package/dist/esm/types/chartType/columnParallel/zColumnParallel.js +2 -2
  250. package/dist/esm/types/chartType/columnParallel/zColumnParallel.js.map +1 -1
  251. package/dist/esm/types/chartType/columnPercent/columnPercent.d.ts +3 -5
  252. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +11 -2
  253. package/dist/esm/types/chartType/columnPercent/zColumnPercent.js +2 -2
  254. package/dist/esm/types/chartType/columnPercent/zColumnPercent.js.map +1 -1
  255. package/dist/esm/types/chartType/donut/donut.d.ts +3 -5
  256. package/dist/esm/types/chartType/donut/zDonut.d.ts +11 -2
  257. package/dist/esm/types/chartType/donut/zDonut.js +2 -2
  258. package/dist/esm/types/chartType/donut/zDonut.js.map +1 -1
  259. package/dist/esm/types/chartType/dualAxis/dualAxis.d.ts +7 -88
  260. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +9 -358
  261. package/dist/esm/types/chartType/dualAxis/zDualAxis.js +2 -4
  262. package/dist/esm/types/chartType/dualAxis/zDualAxis.js.map +1 -1
  263. package/dist/esm/types/chartType/funnel/funnel.d.ts +3 -5
  264. package/dist/esm/types/chartType/funnel/zFunnel.d.ts +11 -2
  265. package/dist/esm/types/chartType/funnel/zFunnel.js +2 -2
  266. package/dist/esm/types/chartType/funnel/zFunnel.js.map +1 -1
  267. package/dist/esm/types/chartType/heatmap/heatmap.d.ts +4 -6
  268. package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +11 -2
  269. package/dist/esm/types/chartType/heatmap/zHeatmap.js +2 -2
  270. package/dist/esm/types/chartType/heatmap/zHeatmap.js.map +1 -1
  271. package/dist/esm/types/chartType/histogram/histogram.d.ts +3 -5
  272. package/dist/esm/types/chartType/histogram/zHistogram.d.ts +11 -2
  273. package/dist/esm/types/chartType/histogram/zHistogram.js +2 -2
  274. package/dist/esm/types/chartType/histogram/zHistogram.js.map +1 -1
  275. package/dist/esm/types/chartType/line/line.d.ts +3 -4
  276. package/dist/esm/types/chartType/line/zLine.d.ts +11 -2
  277. package/dist/esm/types/chartType/line/zLine.js +2 -2
  278. package/dist/esm/types/chartType/line/zLine.js.map +1 -1
  279. package/dist/esm/types/chartType/pie/pie.d.ts +3 -5
  280. package/dist/esm/types/chartType/pie/zPie.d.ts +11 -2
  281. package/dist/esm/types/chartType/pie/zPie.js +2 -2
  282. package/dist/esm/types/chartType/pie/zPie.js.map +1 -1
  283. package/dist/esm/types/chartType/pivotTable/pivotTable.d.ts +4 -4
  284. package/dist/esm/types/chartType/pivotTable/zPivotTable.d.ts +9 -0
  285. package/dist/esm/types/chartType/radar/radar.d.ts +4 -6
  286. package/dist/esm/types/chartType/radar/zRadar.d.ts +11 -2
  287. package/dist/esm/types/chartType/radar/zRadar.js +2 -2
  288. package/dist/esm/types/chartType/radar/zRadar.js.map +1 -1
  289. package/dist/esm/types/chartType/rose/rose.d.ts +4 -6
  290. package/dist/esm/types/chartType/rose/zRose.d.ts +11 -2
  291. package/dist/esm/types/chartType/rose/zRose.js +2 -2
  292. package/dist/esm/types/chartType/rose/zRose.js.map +1 -1
  293. package/dist/esm/types/chartType/roseParallel/roseParallel.d.ts +4 -6
  294. package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +11 -2
  295. package/dist/esm/types/chartType/roseParallel/zRoseParallel.js +2 -2
  296. package/dist/esm/types/chartType/roseParallel/zRoseParallel.js.map +1 -1
  297. package/dist/esm/types/chartType/scatter/scatter.d.ts +5 -75
  298. package/dist/esm/types/chartType/scatter/zScatter.d.ts +10 -310
  299. package/dist/esm/types/chartType/scatter/zScatter.js +2 -3
  300. package/dist/esm/types/chartType/scatter/zScatter.js.map +1 -1
  301. package/dist/esm/types/chartType/table/zTable.d.ts +9 -0
  302. package/dist/esm/types/properties/chartType/index.d.ts +0 -2
  303. package/dist/esm/types/properties/chartType/index.js +1 -2
  304. package/dist/esm/types/properties/config/config.d.ts +0 -31
  305. package/dist/esm/types/properties/config/dualAxis.d.ts +7 -31
  306. package/dist/esm/types/properties/config/dualAxis.js +0 -2
  307. package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
  308. package/dist/esm/types/properties/dimensions/areaDimension.d.ts +3 -0
  309. package/dist/esm/types/properties/dimensions/barDimension.d.ts +16 -0
  310. package/dist/esm/types/properties/dimensions/{dimensions.d.ts → baseDimension.d.ts} +13 -14
  311. package/dist/esm/types/properties/dimensions/boxPlotDimension.d.ts +13 -0
  312. package/dist/esm/types/properties/dimensions/columnDimension.d.ts +19 -0
  313. package/dist/esm/types/properties/dimensions/columnDimension.js +0 -0
  314. package/dist/esm/types/properties/dimensions/donutDimension.d.ts +2 -0
  315. package/dist/esm/types/properties/dimensions/donutDimension.js +0 -0
  316. package/dist/esm/types/properties/dimensions/dualAxisDimension.d.ts +2 -0
  317. package/dist/esm/types/properties/dimensions/dualAxisDimension.js +0 -0
  318. package/dist/esm/types/properties/dimensions/funnelDimension.d.ts +2 -0
  319. package/dist/esm/types/properties/dimensions/funnelDimension.js +0 -0
  320. package/dist/esm/types/properties/dimensions/heatmapDimension.d.ts +13 -0
  321. package/dist/esm/types/properties/dimensions/heatmapDimension.js +0 -0
  322. package/dist/esm/types/properties/dimensions/histogramDimension.d.ts +13 -0
  323. package/dist/esm/types/properties/dimensions/histogramDimension.js +0 -0
  324. package/dist/esm/types/properties/dimensions/index.d.ts +16 -1
  325. package/dist/esm/types/properties/dimensions/lineDimension.d.ts +2 -0
  326. package/dist/esm/types/properties/dimensions/lineDimension.js +0 -0
  327. package/dist/esm/types/properties/dimensions/pieDimension.d.ts +13 -0
  328. package/dist/esm/types/properties/dimensions/pieDimension.js +0 -0
  329. package/dist/esm/types/properties/dimensions/radarDimension.d.ts +14 -0
  330. package/dist/esm/types/properties/dimensions/radarDimension.js +0 -0
  331. package/dist/esm/types/properties/dimensions/roseDimension.d.ts +3 -0
  332. package/dist/esm/types/properties/dimensions/roseDimension.js +0 -0
  333. package/dist/esm/types/properties/dimensions/scatterDimension.d.ts +13 -0
  334. package/dist/esm/types/properties/dimensions/scatterDimension.js +0 -0
  335. package/dist/esm/types/properties/dimensions/tableDimension.d.ts +18 -0
  336. package/dist/esm/types/properties/dimensions/tableDimension.js +0 -0
  337. package/dist/esm/types/properties/dimensions/zDimensions.d.ts +1 -1
  338. package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
  339. package/dist/esm/types/properties/measures/areaMeasure.d.ts +2 -0
  340. package/dist/esm/types/properties/measures/areaMeasure.js +0 -0
  341. package/dist/esm/types/properties/measures/barMeasure.d.ts +14 -0
  342. package/dist/esm/types/properties/measures/barMeasure.js +0 -0
  343. package/dist/esm/types/properties/measures/{measures.d.ts → baseMeasure.d.ts} +29 -13
  344. package/dist/esm/types/properties/measures/baseMeasure.js +0 -0
  345. package/dist/esm/types/properties/measures/boxPlotMeasure.d.ts +18 -0
  346. package/dist/esm/types/properties/measures/boxPlotMeasure.js +0 -0
  347. package/dist/esm/types/properties/measures/columnMeasure.d.ts +14 -0
  348. package/dist/esm/types/properties/measures/columnMeasure.js +0 -0
  349. package/dist/esm/types/properties/measures/dualAxisMeasure.d.ts +23 -0
  350. package/dist/esm/types/properties/measures/dualAxisMeasure.js +0 -0
  351. package/dist/esm/types/properties/measures/funnelMeasure.d.ts +11 -0
  352. package/dist/esm/types/properties/measures/funnelMeasure.js +0 -0
  353. package/dist/esm/types/properties/measures/heatmapMeasure.d.ts +10 -0
  354. package/dist/esm/types/properties/measures/heatmapMeasure.js +0 -0
  355. package/dist/esm/types/properties/measures/histogramMeasure.d.ts +13 -0
  356. package/dist/esm/types/properties/measures/histogramMeasure.js +0 -0
  357. package/dist/esm/types/properties/measures/index.d.ts +15 -4
  358. package/dist/esm/types/properties/measures/index.js +0 -1
  359. package/dist/esm/types/properties/measures/lineMeasure.d.ts +2 -0
  360. package/dist/esm/types/properties/measures/lineMeasure.js +0 -0
  361. package/dist/esm/types/properties/measures/measureTree.d.ts +17 -0
  362. package/dist/esm/types/properties/measures/measureTree.js +0 -0
  363. package/dist/esm/types/properties/measures/pieMeasure.d.ts +12 -0
  364. package/dist/esm/types/properties/measures/pieMeasure.js +0 -0
  365. package/dist/esm/types/properties/measures/radarMeasure.d.ts +13 -0
  366. package/dist/esm/types/properties/measures/radarMeasure.js +0 -0
  367. package/dist/esm/types/properties/measures/scatterMeasure.d.ts +13 -0
  368. package/dist/esm/types/properties/measures/scatterMeasure.js +0 -0
  369. package/dist/esm/types/properties/measures/tableMeasure.d.ts +8 -0
  370. package/dist/esm/types/properties/measures/tableMeasure.js +0 -0
  371. package/dist/esm/types/properties/measures/zDualMeasures.d.ts +154 -612
  372. package/dist/esm/types/properties/measures/zDualMeasures.js +15 -10
  373. package/dist/esm/types/properties/measures/zDualMeasures.js.map +1 -1
  374. package/dist/esm/types/properties/measures/zMeasures.d.ts +28 -1
  375. package/dist/esm/types/properties/measures/zMeasures.js +10 -1
  376. package/dist/esm/types/properties/measures/zMeasures.js.map +1 -1
  377. package/dist/esm/types/properties/theme/customTheme.d.ts +0 -62
  378. package/dist/esm/types/zVseed.d.ts +235 -704
  379. package/dist/umd/index.js +854 -1343
  380. package/dist/umd/index.js.map +1 -1
  381. package/package.json +2 -2
  382. package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.d.ts +0 -2
  383. package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js +0 -14
  384. package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js.map +0 -1
  385. package/dist/esm/types/properties/chartType/dualChartType.d.ts +0 -18
  386. package/dist/esm/types/properties/chartType/dualChartType.js +0 -20
  387. package/dist/esm/types/properties/chartType/dualChartType.js.map +0 -1
  388. package/dist/esm/types/properties/measures/dualMeasures.d.ts +0 -7
  389. package/dist/esm/types/properties/measures/scatterMeasures.d.ts +0 -7
  390. package/dist/esm/types/properties/measures/zScatterMeasures.d.ts +0 -619
  391. package/dist/esm/types/properties/measures/zScatterMeasures.js +0 -17
  392. package/dist/esm/types/properties/measures/zScatterMeasures.js.map +0 -1
  393. /package/dist/esm/types/properties/dimensions/{dimensions.js → areaDimension.js} +0 -0
  394. /package/dist/esm/types/properties/{measures/dualMeasures.js → dimensions/barDimension.js} +0 -0
  395. /package/dist/esm/types/properties/{measures/measures.js → dimensions/baseDimension.js} +0 -0
  396. /package/dist/esm/types/properties/{measures/scatterMeasures.js → dimensions/boxPlotDimension.js} +0 -0
@@ -1,2 +1,2 @@
1
- import type { Dimensions, MeasureTree } from '../../../../../../types';
2
- export declare const defaultTitleText: (measures: MeasureTree, dimensions: Dimensions, idList?: string[]) => string;
1
+ import type { Dimensions, Measure } from '../../../../../../types';
2
+ export declare const defaultTitleText: (measures: Measure[], dimensions: Dimensions, idList?: string[]) => string;
@@ -1,14 +1,10 @@
1
- import { findAllMeasures } from "../../../../../utils/index.js";
2
- const defaultTitleText = (measures, dimensions, idList = [])=>{
3
- const allMeasures = findAllMeasures(measures);
4
- return idList.map((id)=>{
1
+ const defaultTitleText = (measures, dimensions, idList = [])=>idList.map((id)=>{
5
2
  const alias = [
6
- ...allMeasures,
3
+ ...measures,
7
4
  ...dimensions
8
5
  ].find((f)=>f.id === id)?.alias || '';
9
6
  return alias;
10
7
  }).join(' & ');
11
- };
12
8
  export { defaultTitleText };
13
9
 
14
10
  //# sourceMappingURL=defaultTitleText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/title/defaultTitleText.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/title/defaultTitleText.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { Dimensions, MeasureTree } from 'src/types'\n\nexport const defaultTitleText = (measures: MeasureTree, dimensions: Dimensions, idList: string[] = []) => {\n const allMeasures = findAllMeasures(measures)\n return idList\n .map((id) => {\n const alias = [...allMeasures, ...dimensions].find((f) => f.id === id)?.alias || ''\n return alias\n })\n .join(' & ')\n}\n"],"names":["defaultTitleText","measures","dimensions","idList","allMeasures","findAllMeasures","id","alias","f"],"mappings":";AAGO,MAAMA,mBAAmB,CAACC,UAAuBC,YAAwBC,SAAmB,EAAE;IACnG,MAAMC,cAAcC,gBAAgBJ;IACpC,OAAOE,OACJ,GAAG,CAAC,CAACG;QACJ,MAAMC,QAAQ;eAAIH;eAAgBF;SAAW,CAAC,IAAI,CAAC,CAACM,IAAMA,EAAE,EAAE,KAAKF,KAAK,SAAS;QACjF,OAAOC;IACT,GACC,IAAI,CAAC;AACV"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/title/defaultTitleText.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/title/defaultTitleText.ts"],"sourcesContent":["import type { Dimensions, Measure } from 'src/types'\n\nexport const defaultTitleText = (measures: Measure[], dimensions: Dimensions, idList: string[] = []) => {\n return idList\n .map((id) => {\n const alias = [...measures, ...dimensions].find((f) => f.id === id)?.alias || ''\n return alias\n })\n .join(' & ')\n}\n"],"names":["defaultTitleText","measures","dimensions","idList","id","alias","f"],"mappings":"AAEO,MAAMA,mBAAmB,CAACC,UAAqBC,YAAwBC,SAAmB,EAAE,GAC1FA,OACJ,GAAG,CAAC,CAACC;QACJ,MAAMC,QAAQ;eAAIJ;eAAaC;SAAW,CAAC,IAAI,CAAC,CAACI,IAAMA,EAAE,EAAE,KAAKF,KAAK,SAAS;QAC9E,OAAOC;IACT,GACC,IAAI,CAAC"}
@@ -8,7 +8,7 @@ const xBand = (spec, context)=>{
8
8
  };
9
9
  const { advancedVSeed, vseed } = context;
10
10
  const { chartType } = vseed;
11
- const { measures, dimensions, encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed;
11
+ const { measures = [], dimensions = [], encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed;
12
12
  const config = advancedVSeed.config?.[chartType]?.xAxis ?? {};
13
13
  if (!result.axes) result.axes = [];
14
14
  const { labelAutoLimitLength = 80 } = config;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/xBand.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xBand.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XBandAxis } from 'src/types'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { MeasureId } from 'src/dataReshape'\nimport { isArray, isNull } from '@visactor/vutils'\nimport { bandAxisStyle } from './bandAxisStyle'\n\nexport const xBand: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures, dimensions, encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.xAxis ?? {}) as XBandAxis\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { labelAutoLimitLength = 80 } = config\n\n const onlyMeasureId = (encoding.x || []).filter((v) => v !== MeasureId).length === 0\n const bandAxis = bandAxisStyle(config)\n\n bandAxis.orient = 'bottom'\n bandAxis.maxHeight = labelAutoLimitLength + 60\n bandAxis.paddingInner = [0.15, 0.1]\n bandAxis.paddingOuter = [0.075, 0.1]\n\n if (isNull(bandAxis.title?.text)) {\n bandAxis.title.text = defaultTitleText(measures, dimensions, encoding.x as string[])\n }\n\n if (onlyMeasureId && bandAxis.label) {\n const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo\n const colorIdMap = allDatasetReshapeInfo.reduce<Record<string, { id: string; alias: string }>>((prev, cur) => {\n return { ...prev, ...cur.unfoldInfo.colorIdMap }\n }, {})\n\n bandAxis.label.formatMethod = (text: string | string[]) => {\n return isArray(text) ? text : (colorIdMap[String(text)]?.alias ?? text)\n }\n }\n\n result.axes = [...result.axes, bandAxis] as ISpec['axes']\n return result\n}\n"],"names":["xBand","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","pivotAllDatasetReshapeInfo","config","labelAutoLimitLength","onlyMeasureId","v","MeasureId","bandAxis","bandAxisStyle","isNull","defaultTitleText","allDatasetReshapeInfo","colorIdMap","prev","cur","text","isArray","String"],"mappings":";;;;AAOO,MAAMA,QAAwB,CAACC,MAAMC;IAC1C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,kBAAkB,EAAEC,0BAA0B,EAAE,GAAGP;IAC3F,MAAMQ,SAAUR,cAAc,MAAM,EAAE,CAACE,UAAsB,EAAE,SAAS,CAAC;IAEzE,IAAI,CAACH,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEU,uBAAuB,EAAE,EAAE,GAAGD;IAEtC,MAAME,gBAAiBL,AAA4D,MAA5DA,AAAAA,CAAAA,SAAS,CAAC,IAAI,EAAC,EAAG,MAAM,CAAC,CAACM,IAAMA,MAAMC,WAAW,MAAM;IAC9E,MAAMC,WAAWC,cAAcN;IAE/BK,SAAS,MAAM,GAAG;IAClBA,SAAS,SAAS,GAAGJ,uBAAuB;IAC5CI,SAAS,YAAY,GAAG;QAAC;QAAM;KAAI;IACnCA,SAAS,YAAY,GAAG;QAAC;QAAO;KAAI;IAEpC,IAAIE,OAAOF,SAAS,KAAK,EAAE,OACzBA,SAAS,KAAK,CAAC,IAAI,GAAGG,iBAAiBb,UAAUC,YAAYC,SAAS,CAAC;IAGzE,IAAIK,iBAAiBG,SAAS,KAAK,EAAE;QACnC,MAAMI,wBAAwBV,8BAA8BD;QAC5D,MAAMY,aAAaD,sBAAsB,MAAM,CAAgD,CAACE,MAAMC,MAC7F;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU,CAAC,UAAU;YAAC,IAC9C,CAAC;QAEJP,SAAS,KAAK,CAAC,YAAY,GAAG,CAACQ,OACtBC,QAAQD,QAAQA,OAAQH,UAAU,CAACK,OAAOF,MAAM,EAAE,SAASA;IAEtE;IAEAtB,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEc;KAAS;IACxC,OAAOd;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/xBand.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xBand.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XBandAxis } from 'src/types'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { MeasureId } from 'src/dataReshape'\nimport { isArray, isNull } from '@visactor/vutils'\nimport { bandAxisStyle } from './bandAxisStyle'\n\nexport const xBand: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.xAxis ?? {}) as XBandAxis\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { labelAutoLimitLength = 80 } = config\n\n const onlyMeasureId = (encoding.x || []).filter((v) => v !== MeasureId).length === 0\n const bandAxis = bandAxisStyle(config)\n\n bandAxis.orient = 'bottom'\n bandAxis.maxHeight = labelAutoLimitLength + 60\n bandAxis.paddingInner = [0.15, 0.1]\n bandAxis.paddingOuter = [0.075, 0.1]\n\n if (isNull(bandAxis.title?.text)) {\n bandAxis.title!.text = defaultTitleText(measures, dimensions, encoding.x as string[])\n }\n\n if (onlyMeasureId && bandAxis.label) {\n const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo\n const colorIdMap = allDatasetReshapeInfo.reduce<Record<string, { id: string; alias: string }>>((prev, cur) => {\n return { ...prev, ...cur.unfoldInfo.colorIdMap }\n }, {})\n\n bandAxis.label.formatMethod = (text: string | string[]) => {\n return isArray(text) ? text : (colorIdMap[String(text)]?.alias ?? text)\n }\n }\n\n result.axes = [...result.axes, bandAxis] as ISpec['axes']\n return result\n}\n"],"names":["xBand","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","pivotAllDatasetReshapeInfo","config","labelAutoLimitLength","onlyMeasureId","v","MeasureId","bandAxis","bandAxisStyle","isNull","defaultTitleText","allDatasetReshapeInfo","colorIdMap","prev","cur","text","isArray","String"],"mappings":";;;;AAOO,MAAMA,QAAwB,CAACC,MAAMC;IAC1C,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,EAAEC,0BAA0B,EAAE,GAAGP;IACrG,MAAMQ,SAAUR,cAAc,MAAM,EAAE,CAACE,UAAsB,EAAE,SAAS,CAAC;IAEzE,IAAI,CAACH,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEU,uBAAuB,EAAE,EAAE,GAAGD;IAEtC,MAAME,gBAAiBL,AAA4D,MAA5DA,AAAAA,CAAAA,SAAS,CAAC,IAAI,EAAC,EAAG,MAAM,CAAC,CAACM,IAAMA,MAAMC,WAAW,MAAM;IAC9E,MAAMC,WAAWC,cAAcN;IAE/BK,SAAS,MAAM,GAAG;IAClBA,SAAS,SAAS,GAAGJ,uBAAuB;IAC5CI,SAAS,YAAY,GAAG;QAAC;QAAM;KAAI;IACnCA,SAAS,YAAY,GAAG;QAAC;QAAO;KAAI;IAEpC,IAAIE,OAAOF,SAAS,KAAK,EAAE,OACzBA,SAAS,KAAK,CAAE,IAAI,GAAGG,iBAAiBb,UAAUC,YAAYC,SAAS,CAAC;IAG1E,IAAIK,iBAAiBG,SAAS,KAAK,EAAE;QACnC,MAAMI,wBAAwBV,8BAA8BD;QAC5D,MAAMY,aAAaD,sBAAsB,MAAM,CAAgD,CAACE,MAAMC,MAC7F;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU,CAAC,UAAU;YAAC,IAC9C,CAAC;QAEJP,SAAS,KAAK,CAAC,YAAY,GAAG,CAACQ,OACtBC,QAAQD,QAAQA,OAAQH,UAAU,CAACK,OAAOF,MAAM,EAAE,SAASA;IAEtE;IAEAtB,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEc;KAAS;IACxC,OAAOd;AACT"}
@@ -7,7 +7,7 @@ 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 = [] } = advancedVSeed;
11
11
  const { chartType } = vseed;
12
12
  const config = advancedVSeed.config?.[chartType]?.xAxis ?? {};
13
13
  if (!result.axes) 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,UAAU,EAAEC,QAAQ,EAAE,GAAGJ;IAC3C,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 = [] } = 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"}
@@ -8,7 +8,7 @@ const yBand = (spec, context)=>{
8
8
  };
9
9
  const { advancedVSeed, vseed } = context;
10
10
  const { chartType } = vseed;
11
- const { measures, dimensions, encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed;
11
+ const { measures = [], dimensions = [], encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed;
12
12
  const config = advancedVSeed.config?.[chartType]?.yAxis ?? {};
13
13
  if (!result.axes) result.axes = [];
14
14
  const { labelAutoLimitLength = 80 } = config;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/yBand.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yBand.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XBandAxis } from 'src/types'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { MeasureId } from 'src/dataReshape'\nimport { isArray, isNull } from '@visactor/vutils'\nimport { bandAxisStyle } from './bandAxisStyle'\n\nexport const yBand: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures, dimensions, encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.yAxis ?? {}) as XBandAxis\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { labelAutoLimitLength = 80 } = config\n\n const onlyMeasureId = (encoding.y || []).filter((v) => v !== MeasureId).length === 0\n\n const bandAxis = bandAxisStyle(config)\n\n bandAxis.type = 'band'\n bandAxis.orient = 'left'\n bandAxis.maxWidth = labelAutoLimitLength + 60\n if (bandAxis.label) {\n bandAxis.label.containerAlign = 'right'\n }\n bandAxis.paddingInner = [0.15, 0.1]\n bandAxis.paddingOuter = [0.075, 0.1]\n\n if (isNull(bandAxis.title?.text)) {\n bandAxis.title.text = defaultTitleText(measures, dimensions, encoding.y as string[])\n }\n if (onlyMeasureId && bandAxis.label) {\n const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo\n const colorIdMap = allDatasetReshapeInfo.reduce<Record<string, { id: string; alias: string }>>((prev, cur) => {\n return { ...prev, ...cur.unfoldInfo.colorIdMap }\n }, {})\n\n bandAxis.label.formatMethod = (text: string | string[]) => {\n return isArray(text) ? text : (colorIdMap[String(text)]?.alias ?? text)\n }\n }\n\n result.axes = [...result.axes, bandAxis] as ISpec['axes']\n return result\n}\n"],"names":["yBand","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","pivotAllDatasetReshapeInfo","config","labelAutoLimitLength","onlyMeasureId","v","MeasureId","bandAxis","bandAxisStyle","isNull","defaultTitleText","allDatasetReshapeInfo","colorIdMap","prev","cur","text","isArray","String"],"mappings":";;;;AAOO,MAAMA,QAAwB,CAACC,MAAMC;IAC1C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,kBAAkB,EAAEC,0BAA0B,EAAE,GAAGP;IAC3F,MAAMQ,SAAUR,cAAc,MAAM,EAAE,CAACE,UAAmB,EAAE,SAAS,CAAC;IAEtE,IAAI,CAACH,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEU,uBAAuB,EAAE,EAAE,GAAGD;IAEtC,MAAME,gBAAiBL,AAA4D,MAA5DA,AAAAA,CAAAA,SAAS,CAAC,IAAI,EAAC,EAAG,MAAM,CAAC,CAACM,IAAMA,MAAMC,WAAW,MAAM;IAE9E,MAAMC,WAAWC,cAAcN;IAE/BK,SAAS,IAAI,GAAG;IAChBA,SAAS,MAAM,GAAG;IAClBA,SAAS,QAAQ,GAAGJ,uBAAuB;IAC3C,IAAII,SAAS,KAAK,EAChBA,SAAS,KAAK,CAAC,cAAc,GAAG;IAElCA,SAAS,YAAY,GAAG;QAAC;QAAM;KAAI;IACnCA,SAAS,YAAY,GAAG;QAAC;QAAO;KAAI;IAEpC,IAAIE,OAAOF,SAAS,KAAK,EAAE,OACzBA,SAAS,KAAK,CAAC,IAAI,GAAGG,iBAAiBb,UAAUC,YAAYC,SAAS,CAAC;IAEzE,IAAIK,iBAAiBG,SAAS,KAAK,EAAE;QACnC,MAAMI,wBAAwBV,8BAA8BD;QAC5D,MAAMY,aAAaD,sBAAsB,MAAM,CAAgD,CAACE,MAAMC,MAC7F;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU,CAAC,UAAU;YAAC,IAC9C,CAAC;QAEJP,SAAS,KAAK,CAAC,YAAY,GAAG,CAACQ,OACtBC,QAAQD,QAAQA,OAAQH,UAAU,CAACK,OAAOF,MAAM,EAAE,SAASA;IAEtE;IAEAtB,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEc;KAAS;IACxC,OAAOd;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/yBand.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yBand.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XBandAxis } from 'src/types'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { MeasureId } from 'src/dataReshape'\nimport { isArray, isNull } from '@visactor/vutils'\nimport { bandAxisStyle } from './bandAxisStyle'\n\nexport const yBand: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding, datasetReshapeInfo, pivotAllDatasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.yAxis ?? {}) as XBandAxis\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { labelAutoLimitLength = 80 } = config\n\n const onlyMeasureId = (encoding.y || []).filter((v) => v !== MeasureId).length === 0\n\n const bandAxis = bandAxisStyle(config)\n\n bandAxis.type = 'band'\n bandAxis.orient = 'left'\n bandAxis.maxWidth = labelAutoLimitLength + 60\n if (bandAxis.label) {\n bandAxis.label.containerAlign = 'right'\n }\n bandAxis.paddingInner = [0.15, 0.1]\n bandAxis.paddingOuter = [0.075, 0.1]\n\n if (isNull(bandAxis.title?.text)) {\n bandAxis.title!.text = defaultTitleText(measures, dimensions, encoding.y as string[])\n }\n if (onlyMeasureId && bandAxis.label) {\n const allDatasetReshapeInfo = pivotAllDatasetReshapeInfo || datasetReshapeInfo\n const colorIdMap = allDatasetReshapeInfo.reduce<Record<string, { id: string; alias: string }>>((prev, cur) => {\n return { ...prev, ...cur.unfoldInfo.colorIdMap }\n }, {})\n\n bandAxis.label.formatMethod = (text: string | string[]) => {\n return isArray(text) ? text : (colorIdMap[String(text)]?.alias ?? text)\n }\n }\n\n result.axes = [...result.axes, bandAxis] as ISpec['axes']\n return result\n}\n"],"names":["yBand","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","pivotAllDatasetReshapeInfo","config","labelAutoLimitLength","onlyMeasureId","v","MeasureId","bandAxis","bandAxisStyle","isNull","defaultTitleText","allDatasetReshapeInfo","colorIdMap","prev","cur","text","isArray","String"],"mappings":";;;;AAOO,MAAMA,QAAwB,CAACC,MAAMC;IAC1C,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,EAAEC,0BAA0B,EAAE,GAAGP;IACrG,MAAMQ,SAAUR,cAAc,MAAM,EAAE,CAACE,UAAmB,EAAE,SAAS,CAAC;IAEtE,IAAI,CAACH,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEU,uBAAuB,EAAE,EAAE,GAAGD;IAEtC,MAAME,gBAAiBL,AAA4D,MAA5DA,AAAAA,CAAAA,SAAS,CAAC,IAAI,EAAC,EAAG,MAAM,CAAC,CAACM,IAAMA,MAAMC,WAAW,MAAM;IAE9E,MAAMC,WAAWC,cAAcN;IAE/BK,SAAS,IAAI,GAAG;IAChBA,SAAS,MAAM,GAAG;IAClBA,SAAS,QAAQ,GAAGJ,uBAAuB;IAC3C,IAAII,SAAS,KAAK,EAChBA,SAAS,KAAK,CAAC,cAAc,GAAG;IAElCA,SAAS,YAAY,GAAG;QAAC;QAAM;KAAI;IACnCA,SAAS,YAAY,GAAG;QAAC;QAAO;KAAI;IAEpC,IAAIE,OAAOF,SAAS,KAAK,EAAE,OACzBA,SAAS,KAAK,CAAE,IAAI,GAAGG,iBAAiBb,UAAUC,YAAYC,SAAS,CAAC;IAE1E,IAAIK,iBAAiBG,SAAS,KAAK,EAAE;QACnC,MAAMI,wBAAwBV,8BAA8BD;QAC5D,MAAMY,aAAaD,sBAAsB,MAAM,CAAgD,CAACE,MAAMC,MAC7F;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU,CAAC,UAAU;YAAC,IAC9C,CAAC;QAEJP,SAAS,KAAK,CAAC,YAAY,GAAG,CAACQ,OACtBC,QAAQD,QAAQA,OAAQH,UAAU,CAACK,OAAOF,MAAM,EAAE,SAASA;IAEtE;IAEAtB,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEc;KAAS;IACxC,OAAOd;AACT"}
@@ -8,7 +8,7 @@ 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 } = advancedVSeed;
12
12
  const config = advancedVSeed.config?.[chartType]?.yAxis ?? {};
13
13
  if (!result.axes) result.axes = [];
14
14
  const isPivot = isPivotChart(vseed);
@@ -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,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAE,GAAGL;IAC3C,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 } = 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,33 +1,36 @@
1
- import { createNumFormatter } from "../../../../utils/index.js";
2
- import { isEmpty, isNullish } from "remeda";
1
+ import { createNumFormatter, flatReshapeMeasures } from "../../../../utils/index.js";
3
2
  import { createLinearFormat } from "./format/linearFormat.js";
4
- import { defaultTitleText } from "./title/defaultTitleText.js";
5
3
  import { linearAxisStyle } from "./linearAxisStyle.js";
4
+ import { FoldPrimaryMeasureValue } from "../../../../../dataReshape/index.js";
6
5
  const yLinearPrimary = (spec, context)=>{
7
6
  const result = {
8
7
  ...spec
9
8
  };
10
9
  const { advancedVSeed, vseed } = context;
11
10
  const { chartType } = vseed;
12
- const { datasetReshapeInfo, encoding, measures, dimensions } = advancedVSeed;
11
+ const { datasetReshapeInfo, reshapeMeasures = [] } = advancedVSeed;
13
12
  const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0];
14
13
  const primaryYAxis = advancedVSeed.config?.[chartType]?.primaryYAxis;
15
14
  const yAxisConfig = Array.isArray(primaryYAxis) ? primaryYAxis[index] || primaryYAxis[0] : primaryYAxis;
16
15
  const alignTicks = advancedVSeed.config?.[chartType]?.alignTicks;
17
16
  const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks;
18
- if (isNullish(foldInfoList?.[0])) return result;
19
- const isEmptySecondary = isEmpty(foldInfoList?.[0].foldMap);
17
+ if (!foldInfoList) return result;
18
+ const primaryFoldInfoList = foldInfoList.filter((f)=>f.measureValue.startsWith(FoldPrimaryMeasureValue));
19
+ const isEmpty = !primaryFoldInfoList.length || primaryFoldInfoList.every((foldInfo)=>!Object.keys(foldInfo.foldMap).length);
20
20
  const id = `${reshapeInfoId}-primary-axis`;
21
- const seriesIds = [
22
- `${reshapeInfoId}-primary-series`,
23
- `${reshapeInfoId}-secondary-series`
24
- ];
25
- const seriesId = alignTicksConfig ? seriesIds : seriesIds[0];
21
+ const seriesId = alignTicksConfig ? spec.series.map((s)=>s.id) : spec.series.filter((s)=>s.yField.startsWith(FoldPrimaryMeasureValue)).map((s)=>s.id);
26
22
  if (!result.axes) result.axes = [];
27
23
  const { autoFormat, numFormat = {} } = yAxisConfig ?? {};
28
24
  const formatter = createNumFormatter(numFormat);
29
25
  const formatMethod = (value)=>createLinearFormat(value, autoFormat, numFormat, formatter);
30
- const titleText = yAxisConfig?.title?.titleText || defaultTitleText(measures, dimensions, encoding.y);
26
+ const measures = flatReshapeMeasures(reshapeMeasures);
27
+ const measureIds = primaryFoldInfoList.reduce((res, foldInfo)=>{
28
+ Object.keys(foldInfo.foldMap).forEach((k)=>{
29
+ if (!res.includes(k)) res.push(k);
30
+ });
31
+ return res;
32
+ }, []);
33
+ const titleText = yAxisConfig?.title?.titleText || measures.filter((m)=>'primaryYAxis' === m.encoding && measureIds.includes(m.id)).map((m)=>m.alias ?? m.id).join(' & ');
31
34
  const linearAxis = {
32
35
  ...linearAxisStyle({
33
36
  ...yAxisConfig,
@@ -37,7 +40,7 @@ const yLinearPrimary = (spec, context)=>{
37
40
  id,
38
41
  seriesId
39
42
  }),
40
- visible: isEmptySecondary ? false : yAxisConfig?.visible ?? true
43
+ visible: isEmpty ? false : yAxisConfig?.visible ?? true
41
44
  };
42
45
  result.axes = [
43
46
  ...result.axes,
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinearPrimary.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinearPrimary.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter } from '../../../../utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { isEmpty, isNullish } from 'remeda'\nimport { createLinearFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinearPrimary: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { datasetReshapeInfo, encoding, measures, dimensions } = advancedVSeed\n const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0]\n // TODO: default config missing\n const primaryYAxis = advancedVSeed.config?.[chartType as 'dualAxis']?.primaryYAxis as YLinearAxis | YLinearAxis[]\n const yAxisConfig = Array.isArray(primaryYAxis) ? primaryYAxis[index] || primaryYAxis[0] : primaryYAxis\n const alignTicks = advancedVSeed.config?.[chartType as 'dualAxis']?.alignTicks as boolean | boolean[]\n const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks\n\n if (isNullish(foldInfoList?.[0])) {\n return result\n }\n\n const isEmptySecondary = isEmpty(foldInfoList?.[0].foldMap)\n\n const id = `${reshapeInfoId}-primary-axis`\n const seriesIds = [`${reshapeInfoId}-primary-series`, `${reshapeInfoId}-secondary-series`]\n const seriesId = alignTicksConfig ? seriesIds : seriesIds[0]\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { autoFormat, numFormat = {} } = yAxisConfig ?? {}\n\n const formatter = createNumFormatter(numFormat)\n\n const formatMethod = (value: string) => {\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = yAxisConfig?.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n const linearAxis = {\n ...linearAxisStyle({\n ...yAxisConfig,\n orient: 'left',\n formatMethod,\n titleText,\n id,\n seriesId,\n }),\n visible: isEmptySecondary ? false : (yAxisConfig?.visible ?? true),\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinearPrimary","spec","context","result","advancedVSeed","vseed","chartType","datasetReshapeInfo","encoding","measures","dimensions","index","reshapeInfoId","foldInfoList","primaryYAxis","yAxisConfig","Array","alignTicks","alignTicksConfig","isNullish","isEmptySecondary","isEmpty","id","seriesIds","seriesId","autoFormat","numFormat","formatter","createNumFormatter","formatMethod","value","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;;AAQO,MAAMA,iBAAiC,CAACC,MAAMC;IACnD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,kBAAkB,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,UAAU,EAAE,GAAGN;IAC/D,MAAM,EAAEO,KAAK,EAAE,IAAIC,aAAa,EAAEC,YAAY,EAAE,GAAGN,kBAAkB,CAAC,EAAE;IAExE,MAAMO,eAAeV,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACtE,MAAMS,cAAcC,MAAM,OAAO,CAACF,gBAAgBA,YAAY,CAACH,MAAM,IAAIG,YAAY,CAAC,EAAE,GAAGA;IAC3F,MAAMG,aAAab,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACpE,MAAMY,mBAAmBF,MAAM,OAAO,CAACC,cAAcA,UAAU,CAACN,MAAM,IAAIM,UAAU,CAAC,EAAE,GAAGA;IAE1F,IAAIE,UAAUN,cAAc,CAAC,EAAE,GAC7B,OAAOV;IAGT,MAAMiB,mBAAmBC,QAAQR,cAAc,CAAC,EAAE,CAAC;IAEnD,MAAMS,KAAK,GAAGV,cAAc,aAAa,CAAC;IAC1C,MAAMW,YAAY;QAAC,GAAGX,cAAc,eAAe,CAAC;QAAE,GAAGA,cAAc,iBAAiB,CAAC;KAAC;IAC1F,MAAMY,WAAWN,mBAAmBK,YAAYA,SAAS,CAAC,EAAE;IAE5D,IAAI,CAACpB,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEsB,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGX,eAAe,CAAC;IAEvD,MAAMY,YAAYC,mBAAmBF;IAErC,MAAMG,eAAe,CAACC,QACbC,mBAAmBD,OAAOL,YAAYC,WAAWC;IAG1D,MAAMK,YAAYjB,aAAa,OAAO,aAAakB,iBAAiBxB,UAAUC,YAAYF,SAAS,CAAC;IAEpG,MAAM0B,aAAa;QACjB,GAAGC,gBAAgB;YACjB,GAAGpB,WAAW;YACd,QAAQ;YACRc;YACAG;YACAV;YACAE;QACF,EAAE;QACF,SAASJ,mBAAmB,QAASL,aAAa,WAAW;IAC/D;IAEAZ,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAE+B;KAAW;IAE1C,OAAO/B;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinearPrimary.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinearPrimary.ts"],"sourcesContent":["import type { ILineSeriesSpec, ISpec } from '@visactor/vchart'\nimport { createNumFormatter, flatReshapeMeasures } from '../../../../utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat } from './format/linearFormat'\nimport { linearAxisStyle } from './linearAxisStyle'\nimport { FoldPrimaryMeasureValue } from 'src/dataReshape'\n\nexport const yLinearPrimary: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { datasetReshapeInfo, reshapeMeasures = [] } = advancedVSeed\n const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0]\n // TODO: default config missing\n const primaryYAxis = advancedVSeed.config?.[chartType as 'dualAxis']?.primaryYAxis as YLinearAxis | YLinearAxis[]\n const yAxisConfig = Array.isArray(primaryYAxis) ? primaryYAxis[index] || primaryYAxis[0] : primaryYAxis\n const alignTicks = advancedVSeed.config?.[chartType as 'dualAxis']?.alignTicks as boolean | boolean[]\n const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks\n\n if (!foldInfoList) {\n return result\n }\n const primaryFoldInfoList = foldInfoList!.filter((f) => f.measureValue.startsWith(FoldPrimaryMeasureValue))\n\n const isEmpty =\n !primaryFoldInfoList.length || primaryFoldInfoList.every((foldInfo) => !Object.keys(foldInfo.foldMap).length)\n\n const id = `${reshapeInfoId}-primary-axis`\n\n const seriesId = alignTicksConfig\n ? spec.series!.map((s) => (s as any).id)\n : spec\n .series!.filter((s) => ((s as ILineSeriesSpec).yField as string).startsWith(FoldPrimaryMeasureValue))\n .map((s) => (s as any).id)\n\n if (!result.axes) {\n result.axes = []\n }\n\n const { autoFormat, numFormat = {} } = yAxisConfig ?? {}\n\n const formatter = createNumFormatter(numFormat)\n\n const formatMethod = (value: string) => {\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const measures = flatReshapeMeasures(reshapeMeasures)\n const measureIds = primaryFoldInfoList.reduce((res: string[], foldInfo) => {\n Object.keys(foldInfo.foldMap).forEach((k) => {\n if (!res.includes(k)) {\n res.push(k)\n }\n })\n return res\n }, [])\n const titleText =\n yAxisConfig?.title?.titleText ||\n measures\n .filter((m) => m.encoding === 'primaryYAxis' && measureIds.includes(m.id))\n .map((m) => m.alias ?? m.id)\n .join(' & ')\n\n const linearAxis = {\n ...linearAxisStyle({\n ...yAxisConfig,\n orient: 'left',\n formatMethod,\n titleText,\n id,\n seriesId,\n }),\n visible: isEmpty ? false : (yAxisConfig?.visible ?? true),\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinearPrimary","spec","context","result","advancedVSeed","vseed","chartType","datasetReshapeInfo","reshapeMeasures","index","reshapeInfoId","foldInfoList","primaryYAxis","yAxisConfig","Array","alignTicks","alignTicksConfig","primaryFoldInfoList","f","FoldPrimaryMeasureValue","isEmpty","foldInfo","Object","id","seriesId","s","autoFormat","numFormat","formatter","createNumFormatter","formatMethod","value","createLinearFormat","measures","flatReshapeMeasures","measureIds","res","k","titleText","m","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,iBAAiC,CAACC,MAAMC;IACnD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,kBAAkB,EAAEC,kBAAkB,EAAE,EAAE,GAAGJ;IACrD,MAAM,EAAEK,KAAK,EAAE,IAAIC,aAAa,EAAEC,YAAY,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IAExE,MAAMK,eAAeR,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACtE,MAAMO,cAAcC,MAAM,OAAO,CAACF,gBAAgBA,YAAY,CAACH,MAAM,IAAIG,YAAY,CAAC,EAAE,GAAGA;IAC3F,MAAMG,aAAaX,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACpE,MAAMU,mBAAmBF,MAAM,OAAO,CAACC,cAAcA,UAAU,CAACN,MAAM,IAAIM,UAAU,CAAC,EAAE,GAAGA;IAE1F,IAAI,CAACJ,cACH,OAAOR;IAET,MAAMc,sBAAsBN,aAAc,MAAM,CAAC,CAACO,IAAMA,EAAE,YAAY,CAAC,UAAU,CAACC;IAElF,MAAMC,UACJ,CAACH,oBAAoB,MAAM,IAAIA,oBAAoB,KAAK,CAAC,CAACI,WAAa,CAACC,OAAO,IAAI,CAACD,SAAS,OAAO,EAAE,MAAM;IAE9G,MAAME,KAAK,GAAGb,cAAc,aAAa,CAAC;IAE1C,MAAMc,WAAWR,mBACbf,KAAK,MAAM,CAAE,GAAG,CAAC,CAACwB,IAAOA,EAAU,EAAE,IACrCxB,KACG,MAAM,CAAE,MAAM,CAAC,CAACwB,IAAQA,EAAsB,MAAM,CAAY,UAAU,CAACN,0BAC3E,GAAG,CAAC,CAACM,IAAOA,EAAU,EAAE;IAE/B,IAAI,CAACtB,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEuB,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGd,eAAe,CAAC;IAEvD,MAAMe,YAAYC,mBAAmBF;IAErC,MAAMG,eAAe,CAACC,QACbC,mBAAmBD,OAAOL,YAAYC,WAAWC;IAG1D,MAAMK,WAAWC,oBAAoB1B;IACrC,MAAM2B,aAAalB,oBAAoB,MAAM,CAAC,CAACmB,KAAef;QAC5DC,OAAO,IAAI,CAACD,SAAS,OAAO,EAAE,OAAO,CAAC,CAACgB;YACrC,IAAI,CAACD,IAAI,QAAQ,CAACC,IAChBD,IAAI,IAAI,CAACC;QAEb;QACA,OAAOD;IACT,GAAG,EAAE;IACL,MAAME,YACJzB,aAAa,OAAO,aACpBoB,SACG,MAAM,CAAC,CAACM,IAAMA,AAAe,mBAAfA,EAAE,QAAQ,IAAuBJ,WAAW,QAAQ,CAACI,EAAE,EAAE,GACvE,GAAG,CAAC,CAACA,IAAMA,EAAE,KAAK,IAAIA,EAAE,EAAE,EAC1B,IAAI,CAAC;IAEV,MAAMC,aAAa;QACjB,GAAGC,gBAAgB;YACjB,GAAG5B,WAAW;YACd,QAAQ;YACRiB;YACAQ;YACAf;YACAC;QACF,EAAE;QACF,SAASJ,UAAU,QAASP,aAAa,WAAW;IACtD;IAEAV,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEqC;KAAW;IAE1C,OAAOrC;AACT"}
@@ -1,38 +1,35 @@
1
- import { createNumFormatter } from "../../../../utils/index.js";
2
- import { isEmpty, isNullish } from "remeda";
1
+ import { createNumFormatter, flatReshapeMeasures } from "../../../../utils/index.js";
3
2
  import { createLinearFormat } from "./format/linearFormat.js";
4
- import { defaultTitleText } from "./title/defaultTitleText.js";
5
3
  import { linearAxisStyle } from "./linearAxisStyle.js";
4
+ import { FoldSecondaryMeasureValue } from "../../../../../dataReshape/index.js";
6
5
  const yLinearSecondary = (spec, context)=>{
7
6
  const result = {
8
7
  ...spec
9
8
  };
10
9
  const { advancedVSeed, vseed } = context;
11
10
  const { chartType } = vseed;
12
- const { datasetReshapeInfo, measures, dimensions, encoding } = advancedVSeed;
11
+ const { datasetReshapeInfo, reshapeMeasures = [] } = advancedVSeed;
13
12
  const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0];
14
13
  const secondaryYAxis = advancedVSeed.config?.[chartType]?.secondaryYAxis;
15
14
  const yAxisConfig = Array.isArray(secondaryYAxis) ? secondaryYAxis[index] || secondaryYAxis[0] : secondaryYAxis;
16
15
  const alignTicks = advancedVSeed.config?.[chartType]?.alignTicks;
17
16
  const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks;
18
- if (isNullish(foldInfoList?.[1])) return result;
19
- const isEmptySecondary = isEmpty(foldInfoList?.[1].foldMap);
20
- const onlySecondary = isEmpty(foldInfoList?.[0].foldMap) && !isEmptySecondary;
17
+ if (!foldInfoList) return result;
18
+ const secondaryFoldInfoList = foldInfoList.filter((f)=>f.measureValue.startsWith(FoldSecondaryMeasureValue));
19
+ const isEmptySecondary = !secondaryFoldInfoList.length || secondaryFoldInfoList.every((foldInfo)=>!Object.keys(foldInfo.foldMap).length);
20
+ const onlySecondary = !isEmptySecondary && foldInfoList.length && foldInfoList.every((f)=>f.measureValue.startsWith(FoldSecondaryMeasureValue) || 0 === Object.keys(f.foldMap).length);
21
21
  const sync = {
22
22
  axisId: `${reshapeInfoId}-primary-axis`,
23
23
  zeroAlign: true
24
24
  };
25
25
  const id = `${reshapeInfoId}-secondary-axis`;
26
- const seriesIds = [
27
- `${reshapeInfoId}-primary-series`,
28
- `${reshapeInfoId}-secondary-series`
29
- ];
30
- const seriesId = alignTicksConfig ? seriesIds : seriesIds[1];
26
+ const seriesId = alignTicksConfig ? spec.series.map((s)=>s.id) : spec.series.filter((s)=>s.yField.startsWith(FoldSecondaryMeasureValue)).map((s)=>s.id);
31
27
  if (!result.axes) result.axes = [];
32
28
  const { autoFormat, numFormat = {} } = yAxisConfig ?? {};
33
29
  const formatter = createNumFormatter(numFormat);
34
30
  const formatMethod = (value)=>createLinearFormat(value, autoFormat, numFormat, formatter);
35
- const titleText = yAxisConfig?.title?.titleText || defaultTitleText(measures, dimensions, encoding.y);
31
+ const measures = flatReshapeMeasures(reshapeMeasures);
32
+ const titleText = yAxisConfig?.title?.titleText || measures.filter((m)=>'secondaryYAxis' === m.encoding).map((m)=>m.alias ?? m.id).join(' & ');
36
33
  const baseStyle = linearAxisStyle({
37
34
  ...yAxisConfig,
38
35
  orient: 'right',
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinearSecondary.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinearSecondary.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter } from '../../../../utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { isEmpty, isNullish } from 'remeda'\nimport { createLinearFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinearSecondary: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { datasetReshapeInfo, measures, dimensions, encoding } = advancedVSeed\n const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0]\n // TODO: default config missing\n const secondaryYAxis = advancedVSeed.config?.[chartType as 'dualAxis']?.secondaryYAxis as YLinearAxis | YLinearAxis[]\n const yAxisConfig = Array.isArray(secondaryYAxis) ? secondaryYAxis[index] || secondaryYAxis[0] : secondaryYAxis\n const alignTicks = advancedVSeed.config?.[chartType as 'dualAxis']?.alignTicks as boolean | boolean[]\n const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks\n\n if (isNullish(foldInfoList?.[1])) {\n return result\n }\n\n const isEmptySecondary = isEmpty(foldInfoList?.[1].foldMap)\n const onlySecondary = isEmpty(foldInfoList?.[0].foldMap) && !isEmptySecondary\n\n const sync = {\n axisId: `${reshapeInfoId}-primary-axis`,\n zeroAlign: true,\n }\n\n const id = `${reshapeInfoId}-secondary-axis`\n const seriesIds = [`${reshapeInfoId}-primary-series`, `${reshapeInfoId}-secondary-series`]\n const seriesId = alignTicksConfig ? seriesIds : seriesIds[1]\n if (!result.axes) {\n result.axes = []\n }\n\n const { autoFormat, numFormat = {} } = yAxisConfig ?? {}\n\n const formatter = createNumFormatter(numFormat)\n\n const formatMethod = (value: string) => {\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = yAxisConfig?.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const baseStyle = linearAxisStyle({\n ...yAxisConfig,\n orient: 'right',\n formatMethod,\n titleText,\n id,\n seriesId,\n sync,\n })\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n const linearAxis = {\n ...baseStyle,\n visible: isEmptySecondary ? false : (yAxisConfig?.visible ?? true),\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n grid: {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n ...baseStyle.grid,\n visible: onlySecondary ? true : yAxisConfig?.grid?.visible,\n },\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinearSecondary","spec","context","result","advancedVSeed","vseed","chartType","datasetReshapeInfo","measures","dimensions","encoding","index","reshapeInfoId","foldInfoList","secondaryYAxis","yAxisConfig","Array","alignTicks","alignTicksConfig","isNullish","isEmptySecondary","isEmpty","onlySecondary","sync","id","seriesIds","seriesId","autoFormat","numFormat","formatter","createNumFormatter","formatMethod","value","createLinearFormat","titleText","defaultTitleText","baseStyle","linearAxisStyle","linearAxis"],"mappings":";;;;;AAQO,MAAMA,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,kBAAkB,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAE,GAAGN;IAC/D,MAAM,EAAEO,KAAK,EAAE,IAAIC,aAAa,EAAEC,YAAY,EAAE,GAAGN,kBAAkB,CAAC,EAAE;IAExE,MAAMO,iBAAiBV,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACxE,MAAMS,cAAcC,MAAM,OAAO,CAACF,kBAAkBA,cAAc,CAACH,MAAM,IAAIG,cAAc,CAAC,EAAE,GAAGA;IACjG,MAAMG,aAAab,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACpE,MAAMY,mBAAmBF,MAAM,OAAO,CAACC,cAAcA,UAAU,CAACN,MAAM,IAAIM,UAAU,CAAC,EAAE,GAAGA;IAE1F,IAAIE,UAAUN,cAAc,CAAC,EAAE,GAC7B,OAAOV;IAGT,MAAMiB,mBAAmBC,QAAQR,cAAc,CAAC,EAAE,CAAC;IACnD,MAAMS,gBAAgBD,QAAQR,cAAc,CAAC,EAAE,CAAC,YAAY,CAACO;IAE7D,MAAMG,OAAO;QACX,QAAQ,GAAGX,cAAc,aAAa,CAAC;QACvC,WAAW;IACb;IAEA,MAAMY,KAAK,GAAGZ,cAAc,eAAe,CAAC;IAC5C,MAAMa,YAAY;QAAC,GAAGb,cAAc,eAAe,CAAC;QAAE,GAAGA,cAAc,iBAAiB,CAAC;KAAC;IAC1F,MAAMc,WAAWR,mBAAmBO,YAAYA,SAAS,CAAC,EAAE;IAC5D,IAAI,CAACtB,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEwB,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGb,eAAe,CAAC;IAEvD,MAAMc,YAAYC,mBAAmBF;IAErC,MAAMG,eAAe,CAACC,QACbC,mBAAmBD,OAAOL,YAAYC,WAAWC;IAG1D,MAAMK,YAAYnB,aAAa,OAAO,aAAaoB,iBAAiB3B,UAAUC,YAAYC,SAAS,CAAC;IAGpG,MAAM0B,YAAYC,gBAAgB;QAChC,GAAGtB,WAAW;QACd,QAAQ;QACRgB;QACAG;QACAV;QACAE;QACAH;IACF;IAGA,MAAMe,aAAa;QACjB,GAAGF,SAAS;QACZ,SAAShB,mBAAmB,QAASL,aAAa,WAAW;QAE7D,MAAM;YAEJ,GAAGqB,UAAU,IAAI;YACjB,SAASd,gBAAgB,OAAOP,aAAa,MAAM;QACrD;IACF;IAEAZ,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEmC;KAAW;IAE1C,OAAOnC;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinearSecondary.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinearSecondary.ts"],"sourcesContent":["import type { ILineSeriesSpec, ISpec } from '@visactor/vchart'\nimport { createNumFormatter, flatReshapeMeasures } from '../../../../utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat } from './format/linearFormat'\nimport { linearAxisStyle } from './linearAxisStyle'\nimport { FoldSecondaryMeasureValue } from 'src/dataReshape'\n\nexport const yLinearSecondary: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { datasetReshapeInfo, reshapeMeasures = [] } = advancedVSeed\n const { index, id: reshapeInfoId, foldInfoList } = datasetReshapeInfo[0]\n // TODO: default config missing\n const secondaryYAxis = advancedVSeed.config?.[chartType as 'dualAxis']?.secondaryYAxis as YLinearAxis | YLinearAxis[]\n const yAxisConfig = Array.isArray(secondaryYAxis) ? secondaryYAxis[index] || secondaryYAxis[0] : secondaryYAxis\n const alignTicks = advancedVSeed.config?.[chartType as 'dualAxis']?.alignTicks as boolean | boolean[]\n const alignTicksConfig = Array.isArray(alignTicks) ? alignTicks[index] || alignTicks[0] : alignTicks\n\n if (!foldInfoList) {\n return result\n }\n\n const secondaryFoldInfoList = foldInfoList!.filter((f) => f.measureValue.startsWith(FoldSecondaryMeasureValue))\n\n const isEmptySecondary =\n !secondaryFoldInfoList.length || secondaryFoldInfoList.every((foldInfo) => !Object.keys(foldInfo.foldMap).length)\n const onlySecondary =\n !isEmptySecondary &&\n foldInfoList.length &&\n foldInfoList!.every(\n (f) => f.measureValue.startsWith(FoldSecondaryMeasureValue) || Object.keys(f.foldMap).length === 0,\n )\n\n const sync = {\n axisId: `${reshapeInfoId}-primary-axis`,\n zeroAlign: true,\n }\n\n const id = `${reshapeInfoId}-secondary-axis`\n const seriesId = alignTicksConfig\n ? spec.series!.map((s) => (s as any).id)\n : spec\n .series!.filter((s) => ((s as ILineSeriesSpec).yField as string).startsWith(FoldSecondaryMeasureValue))\n .map((s) => (s as any).id)\n if (!result.axes) {\n result.axes = []\n }\n\n const { autoFormat, numFormat = {} } = yAxisConfig ?? {}\n\n const formatter = createNumFormatter(numFormat)\n\n const formatMethod = (value: string) => {\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n const measures = flatReshapeMeasures(reshapeMeasures)\n const titleText =\n yAxisConfig?.title?.titleText ||\n measures\n .filter((m) => m.encoding === 'secondaryYAxis')\n .map((m) => m.alias ?? m.id)\n .join(' & ')\n\n const baseStyle = linearAxisStyle({\n ...yAxisConfig,\n orient: 'right',\n formatMethod,\n titleText,\n id,\n seriesId,\n sync,\n })\n\n const linearAxis = {\n ...baseStyle,\n visible: isEmptySecondary ? false : (yAxisConfig?.visible ?? true),\n\n grid: {\n ...baseStyle.grid,\n visible: onlySecondary ? true : yAxisConfig?.grid?.visible,\n },\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinearSecondary","spec","context","result","advancedVSeed","vseed","chartType","datasetReshapeInfo","reshapeMeasures","index","reshapeInfoId","foldInfoList","secondaryYAxis","yAxisConfig","Array","alignTicks","alignTicksConfig","secondaryFoldInfoList","f","FoldSecondaryMeasureValue","isEmptySecondary","foldInfo","Object","onlySecondary","sync","id","seriesId","s","autoFormat","numFormat","formatter","createNumFormatter","formatMethod","value","createLinearFormat","measures","flatReshapeMeasures","titleText","m","baseStyle","linearAxisStyle","linearAxis"],"mappings":";;;;AAOO,MAAMA,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,kBAAkB,EAAEC,kBAAkB,EAAE,EAAE,GAAGJ;IACrD,MAAM,EAAEK,KAAK,EAAE,IAAIC,aAAa,EAAEC,YAAY,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IAExE,MAAMK,iBAAiBR,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACxE,MAAMO,cAAcC,MAAM,OAAO,CAACF,kBAAkBA,cAAc,CAACH,MAAM,IAAIG,cAAc,CAAC,EAAE,GAAGA;IACjG,MAAMG,aAAaX,cAAc,MAAM,EAAE,CAACE,UAAwB,EAAE;IACpE,MAAMU,mBAAmBF,MAAM,OAAO,CAACC,cAAcA,UAAU,CAACN,MAAM,IAAIM,UAAU,CAAC,EAAE,GAAGA;IAE1F,IAAI,CAACJ,cACH,OAAOR;IAGT,MAAMc,wBAAwBN,aAAc,MAAM,CAAC,CAACO,IAAMA,EAAE,YAAY,CAAC,UAAU,CAACC;IAEpF,MAAMC,mBACJ,CAACH,sBAAsB,MAAM,IAAIA,sBAAsB,KAAK,CAAC,CAACI,WAAa,CAACC,OAAO,IAAI,CAACD,SAAS,OAAO,EAAE,MAAM;IAClH,MAAME,gBACJ,CAACH,oBACDT,aAAa,MAAM,IACnBA,aAAc,KAAK,CACjB,CAACO,IAAMA,EAAE,YAAY,CAAC,UAAU,CAACC,8BAA8BG,AAAkC,MAAlCA,OAAO,IAAI,CAACJ,EAAE,OAAO,EAAE,MAAM;IAGhG,MAAMM,OAAO;QACX,QAAQ,GAAGd,cAAc,aAAa,CAAC;QACvC,WAAW;IACb;IAEA,MAAMe,KAAK,GAAGf,cAAc,eAAe,CAAC;IAC5C,MAAMgB,WAAWV,mBACbf,KAAK,MAAM,CAAE,GAAG,CAAC,CAAC0B,IAAOA,EAAU,EAAE,IACrC1B,KACG,MAAM,CAAE,MAAM,CAAC,CAAC0B,IAAQA,EAAsB,MAAM,CAAY,UAAU,CAACR,4BAC3E,GAAG,CAAC,CAACQ,IAAOA,EAAU,EAAE;IAC/B,IAAI,CAACxB,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAGlB,MAAM,EAAEyB,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGhB,eAAe,CAAC;IAEvD,MAAMiB,YAAYC,mBAAmBF;IAErC,MAAMG,eAAe,CAACC,QACbC,mBAAmBD,OAAOL,YAAYC,WAAWC;IAE1D,MAAMK,WAAWC,oBAAoB5B;IACrC,MAAM6B,YACJxB,aAAa,OAAO,aACpBsB,SACG,MAAM,CAAC,CAACG,IAAMA,AAAe,qBAAfA,EAAE,QAAQ,EACxB,GAAG,CAAC,CAACA,IAAMA,EAAE,KAAK,IAAIA,EAAE,EAAE,EAC1B,IAAI,CAAC;IAEV,MAAMC,YAAYC,gBAAgB;QAChC,GAAG3B,WAAW;QACd,QAAQ;QACRmB;QACAK;QACAZ;QACAC;QACAF;IACF;IAEA,MAAMiB,aAAa;QACjB,GAAGF,SAAS;QACZ,SAASnB,mBAAmB,QAASP,aAAa,WAAW;QAE7D,MAAM;YACJ,GAAG0B,UAAU,IAAI;YACjB,SAAShB,gBAAgB,OAAOV,aAAa,MAAM;QACrD;IACF;IAEAV,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEsC;KAAW;IAE1C,OAAOtC;AACT"}
@@ -1,4 +1,3 @@
1
- import { findAllMeasures } from "../../../../utils/index.js";
2
1
  function colorAdapter(ordinalPipe, linearPipe) {
3
2
  return (spec, context)=>{
4
3
  const { advancedVSeed, vseed } = context;
@@ -8,8 +7,7 @@ function colorAdapter(ordinalPipe, linearPipe) {
8
7
  }
9
8
  const isLinearColor = (advancedVSeed, vseed)=>{
10
9
  const { encoding } = advancedVSeed;
11
- const measures = vseed.measures || advancedVSeed.measures;
12
- const measureIdList = findAllMeasures(measures).map((measure)=>measure.id);
10
+ const measureIdList = (vseed.measures || advancedVSeed.measures).map((measure)=>measure.id);
13
11
  const { color } = encoding;
14
12
  return color?.length === 1 && measureIdList.includes(color[0]);
15
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/color/colorAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/colorAdapter.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedVSeed, PivotChartSpecPipe, VChartSpecPipe, VSeed, Pipe, SpecPipelineContext } from 'src/types'\n\nexport function colorAdapter(ordinalPipe: PivotChartSpecPipe, linearPipe: PivotChartSpecPipe): PivotChartSpecPipe\nexport function colorAdapter(ordinalPipe: VChartSpecPipe, linearPipe: VChartSpecPipe): VChartSpecPipe\nexport function colorAdapter<TSpec>(\n ordinalPipe: Pipe<TSpec, SpecPipelineContext>,\n linearPipe: Pipe<TSpec, SpecPipelineContext>,\n) {\n return (spec: Partial<TSpec>, context: SpecPipelineContext) => {\n const { advancedVSeed, vseed } = context\n if (isLinearColor(advancedVSeed, vseed)) {\n return linearPipe(spec, context)\n }\n return ordinalPipe(spec, context)\n }\n}\n\nexport const isLinearColor = <T extends AdvancedVSeed, U extends VSeed>(advancedVSeed: T, vseed: U) => {\n const { encoding } = advancedVSeed\n const measures = vseed.measures || advancedVSeed.measures\n const measureIdList = findAllMeasures(measures).map((measure) => measure.id)\n const { color } = encoding\n return color?.length === 1 && measureIdList.includes(color[0])\n}\n\nexport const getColorMeasureId = <T extends AdvancedVSeed, U extends VSeed>(\n advancedVSeed: T,\n vseed: U,\n): string | undefined => {\n if (isLinearColor(advancedVSeed, vseed)) {\n const { encoding } = advancedVSeed\n const { color } = encoding\n return color?.[0]\n }\n return undefined\n}\n"],"names":["colorAdapter","ordinalPipe","linearPipe","spec","context","advancedVSeed","vseed","isLinearColor","encoding","measures","measureIdList","findAllMeasures","measure","color","getColorMeasureId"],"mappings":";AAKO,SAASA,aACdC,WAA6C,EAC7CC,UAA4C;IAE5C,OAAO,CAACC,MAAsBC;QAC5B,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;QACjC,IAAIG,cAAcF,eAAeC,QAC/B,OAAOJ,WAAWC,MAAMC;QAE1B,OAAOH,YAAYE,MAAMC;IAC3B;AACF;AAEO,MAAMG,gBAAgB,CAA2CF,eAAkBC;IACxF,MAAM,EAAEE,QAAQ,EAAE,GAAGH;IACrB,MAAMI,WAAWH,MAAM,QAAQ,IAAID,cAAc,QAAQ;IACzD,MAAMK,gBAAgBC,gBAAgBF,UAAU,GAAG,CAAC,CAACG,UAAYA,QAAQ,EAAE;IAC3E,MAAM,EAAEC,KAAK,EAAE,GAAGL;IAClB,OAAOK,OAAO,WAAW,KAAKH,cAAc,QAAQ,CAACG,KAAK,CAAC,EAAE;AAC/D;AAEO,MAAMC,oBAAoB,CAC/BT,eACAC;IAEA,IAAIC,cAAcF,eAAeC,QAAQ;QACvC,MAAM,EAAEE,QAAQ,EAAE,GAAGH;QACrB,MAAM,EAAEQ,KAAK,EAAE,GAAGL;QAClB,OAAOK,OAAO,CAAC,EAAE;IACnB;AAEF"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/color/colorAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/colorAdapter.ts"],"sourcesContent":["import type { AdvancedVSeed, PivotChartSpecPipe, VChartSpecPipe, VSeed, Pipe, SpecPipelineContext } from 'src/types'\n\nexport function colorAdapter(ordinalPipe: PivotChartSpecPipe, linearPipe: PivotChartSpecPipe): PivotChartSpecPipe\nexport function colorAdapter(ordinalPipe: VChartSpecPipe, linearPipe: VChartSpecPipe): VChartSpecPipe\nexport function colorAdapter<TSpec>(\n ordinalPipe: Pipe<TSpec, SpecPipelineContext>,\n linearPipe: Pipe<TSpec, SpecPipelineContext>,\n) {\n return (spec: Partial<TSpec>, context: SpecPipelineContext) => {\n const { advancedVSeed, vseed } = context\n if (isLinearColor(advancedVSeed, vseed)) {\n return linearPipe(spec, context)\n }\n return ordinalPipe(spec, context)\n }\n}\n\nexport const isLinearColor = <T extends AdvancedVSeed, U extends VSeed>(advancedVSeed: T, vseed: U) => {\n const { encoding } = advancedVSeed\n const measureIdList = (vseed.measures || advancedVSeed.measures)!.map((measure) => measure.id)\n const { color } = encoding\n return color?.length === 1 && measureIdList.includes(color[0])\n}\n\nexport const getColorMeasureId = <T extends AdvancedVSeed, U extends VSeed>(\n advancedVSeed: T,\n vseed: U,\n): string | undefined => {\n if (isLinearColor(advancedVSeed, vseed)) {\n const { encoding } = advancedVSeed\n const { color } = encoding\n return color?.[0]\n }\n return undefined\n}\n"],"names":["colorAdapter","ordinalPipe","linearPipe","spec","context","advancedVSeed","vseed","isLinearColor","encoding","measureIdList","measure","color","getColorMeasureId"],"mappings":"AAIO,SAASA,aACdC,WAA6C,EAC7CC,UAA4C;IAE5C,OAAO,CAACC,MAAsBC;QAC5B,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;QACjC,IAAIG,cAAcF,eAAeC,QAC/B,OAAOJ,WAAWC,MAAMC;QAE1B,OAAOH,YAAYE,MAAMC;IAC3B;AACF;AAEO,MAAMG,gBAAgB,CAA2CF,eAAkBC;IACxF,MAAM,EAAEE,QAAQ,EAAE,GAAGH;IACrB,MAAMI,gBAAiBH,AAAAA,CAAAA,MAAM,QAAQ,IAAID,cAAc,QAAO,EAAI,GAAG,CAAC,CAACK,UAAYA,QAAQ,EAAE;IAC7F,MAAM,EAAEC,KAAK,EAAE,GAAGH;IAClB,OAAOG,OAAO,WAAW,KAAKF,cAAc,QAAQ,CAACE,KAAK,CAAC,EAAE;AAC/D;AAEO,MAAMC,oBAAoB,CAC/BP,eACAC;IAEA,IAAIC,cAAcF,eAAeC,QAAQ;QACvC,MAAM,EAAEE,QAAQ,EAAE,GAAGH;QACrB,MAAM,EAAEM,KAAK,EAAE,GAAGH;QAClB,OAAOG,OAAO,CAAC,EAAE;IACnB;AAEF"}
@@ -4,7 +4,7 @@ const linearColorForDualAxis = (spec, context)=>{
4
4
  };
5
5
  const { advancedVSeed } = context;
6
6
  const { datasetReshapeInfo, chartType } = advancedVSeed;
7
- const { unfoldInfo, id } = datasetReshapeInfo[0];
7
+ const { unfoldInfo } = datasetReshapeInfo[0];
8
8
  const baseConfig = advancedVSeed.config[chartType];
9
9
  if (!baseConfig || !baseConfig.color) return result;
10
10
  const { color } = baseConfig;
@@ -12,20 +12,12 @@ const linearColorForDualAxis = (spec, context)=>{
12
12
  result.color = {
13
13
  type: 'linear',
14
14
  range: linearColorScheme || colorScheme || [],
15
- domain: [
16
- {
17
- dataId: `${id}-primary-dataset`,
15
+ domain: spec.series.map((s)=>({
16
+ dataId: s.data.id,
18
17
  fields: [
19
18
  unfoldInfo.encodingColor
20
19
  ]
21
- },
22
- {
23
- dataId: `${id}-secondary-dataset`,
24
- fields: [
25
- unfoldInfo.encodingColor
26
- ]
27
- }
28
- ]
20
+ }))
29
21
  };
30
22
  return result;
31
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/color/linearColorForDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/linearColorForDualAxis.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport type { Color, VChartSpecPipe } from 'src/types'\n\nexport const linearColorForDualAxis: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, chartType } = advancedVSeed\n const { unfoldInfo, id } = datasetReshapeInfo[0]\n const baseConfig = advancedVSeed.config[chartType] as { color: Color }\n\n if (!baseConfig || !baseConfig.color) {\n return result\n }\n\n const { color } = baseConfig\n const { colorScheme, linearColorScheme } = color\n\n result.color = {\n type: 'linear',\n range: linearColorScheme || colorScheme || [],\n domain: [\n {\n dataId: `${id}-primary-dataset`,\n fields: [unfoldInfo.encodingColor],\n },\n {\n dataId: `${id}-secondary-dataset`,\n fields: [unfoldInfo.encodingColor],\n },\n ],\n }\n\n return result\n}\n"],"names":["linearColorForDualAxis","spec","context","result","advancedVSeed","datasetReshapeInfo","chartType","unfoldInfo","id","baseConfig","color","colorScheme","linearColorScheme"],"mappings":"AAGO,MAAMA,yBAAyC,CAACC,MAAMC;IAC3D,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,SAAS,EAAE,GAAGF;IAC1C,MAAM,EAAEG,UAAU,EAAEC,EAAE,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IAChD,MAAMI,aAAaL,cAAc,MAAM,CAACE,UAAU;IAElD,IAAI,CAACG,cAAc,CAACA,WAAW,KAAK,EAClC,OAAON;IAGT,MAAM,EAAEO,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,WAAW,EAAEC,iBAAiB,EAAE,GAAGF;IAE3CP,OAAO,KAAK,GAAG;QACb,MAAM;QACN,OAAOS,qBAAqBD,eAAe,EAAE;QAC7C,QAAQ;YACN;gBACE,QAAQ,GAAGH,GAAG,gBAAgB,CAAC;gBAC/B,QAAQ;oBAACD,WAAW,aAAa;iBAAC;YACpC;YACA;gBACE,QAAQ,GAAGC,GAAG,kBAAkB,CAAC;gBACjC,QAAQ;oBAACD,WAAW,aAAa;iBAAC;YACpC;SACD;IACH;IAEA,OAAOJ;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/color/linearColorForDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/color/linearColorForDualAxis.ts"],"sourcesContent":["import type { IBarChartSpec } from '@visactor/vchart'\nimport type { Color, VChartSpecPipe } from 'src/types'\n\nexport const linearColorForDualAxis: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IBarChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, chartType } = advancedVSeed\n const { unfoldInfo } = datasetReshapeInfo[0]\n const baseConfig = advancedVSeed.config[chartType] as { color: Color }\n\n if (!baseConfig || !baseConfig.color) {\n return result\n }\n\n const { color } = baseConfig\n const { colorScheme, linearColorScheme } = color\n\n result.color = {\n type: 'linear',\n range: linearColorScheme || colorScheme || [],\n domain: spec.series!.map((s) => {\n return {\n dataId: (s as any).data.id,\n fields: [unfoldInfo.encodingColor],\n }\n }),\n }\n\n return result\n}\n"],"names":["linearColorForDualAxis","spec","context","result","advancedVSeed","datasetReshapeInfo","chartType","unfoldInfo","baseConfig","color","colorScheme","linearColorScheme","s"],"mappings":"AAGO,MAAMA,yBAAyC,CAACC,MAAMC;IAC3D,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,SAAS,EAAE,GAAGF;IAC1C,MAAM,EAAEG,UAAU,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAC5C,MAAMG,aAAaJ,cAAc,MAAM,CAACE,UAAU;IAElD,IAAI,CAACE,cAAc,CAACA,WAAW,KAAK,EAClC,OAAOL;IAGT,MAAM,EAAEM,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,WAAW,EAAEC,iBAAiB,EAAE,GAAGF;IAE3CN,OAAO,KAAK,GAAG;QACb,MAAM;QACN,OAAOQ,qBAAqBD,eAAe,EAAE;QAC7C,QAAQT,KAAK,MAAM,CAAE,GAAG,CAAC,CAACW,IACjB;gBACL,QAASA,EAAU,IAAI,CAAC,EAAE;gBAC1B,QAAQ;oBAACL,WAAW,aAAa;iBAAC;YACpC;IAEJ;IAEA,OAAOJ;AACT"}
@@ -1,3 +1,2 @@
1
- import type { VChartSpecPipe } from '../../../../../types';
2
- export declare const datasetPrimary: VChartSpecPipe;
3
- export declare const datasetSecondary: VChartSpecPipe;
1
+ import type { DualAxisOptions, VChartSpecPipe } from '../../../../../types';
2
+ export declare const datasetDualAxis: (options: DualAxisOptions) => VChartSpecPipe;
@@ -1,84 +1,44 @@
1
1
  import { isPivotChart } from "../../../../utils/index.js";
2
- const datasetPrimary = (spec, context)=>{
3
- const { advancedVSeed, vseed } = context;
4
- const { analysis, datasetReshapeInfo } = advancedVSeed;
5
- const orderMapping = analysis?.orderMapping || {};
6
- const { unfoldInfo } = datasetReshapeInfo[0];
7
- const x = unfoldInfo.encodingX;
8
- const colorId = unfoldInfo.encodingColorId;
9
- const id = datasetReshapeInfo[0].id;
10
- const fields = {};
11
- if (x) {
12
- const order = orderMapping[x];
13
- if (order) fields[x] = {
14
- sortIndex: 0,
15
- domain: order,
16
- lockStatisticsByDomain: true
17
- };
18
- else fields[x] = {
19
- sortIndex: 0
20
- };
21
- }
22
- if (colorId) {
23
- const order = orderMapping[colorId];
24
- if (order) fields[colorId] = {
25
- sortIndex: 0,
26
- domain: order,
27
- lockStatisticsByDomain: true
28
- };
29
- else fields[colorId] = {
30
- sortIndex: 0
31
- };
32
- }
33
- return {
34
- ...spec,
35
- data: {
36
- id: `${id}-primary-dataset`,
37
- values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
38
- fields: fields
2
+ const datasetDualAxis = (options)=>(spec, context)=>{
3
+ const { advancedVSeed, vseed } = context;
4
+ const { analysis, datasetReshapeInfo } = advancedVSeed;
5
+ const orderMapping = analysis?.orderMapping || {};
6
+ const { unfoldInfo } = datasetReshapeInfo[0];
7
+ const x = unfoldInfo.encodingX;
8
+ const colorId = unfoldInfo.encodingColorId;
9
+ const id = datasetReshapeInfo[0].id;
10
+ const fields = {};
11
+ if (x) {
12
+ const order = orderMapping[x];
13
+ if (order) fields[x] = {
14
+ sortIndex: 0,
15
+ domain: order,
16
+ lockStatisticsByDomain: true
17
+ };
18
+ else fields[x] = {
19
+ sortIndex: 0
20
+ };
39
21
  }
40
- };
41
- };
42
- const datasetSecondary = (spec, context)=>{
43
- const { advancedVSeed, vseed } = context;
44
- const { analysis, datasetReshapeInfo } = advancedVSeed;
45
- const orderMapping = analysis?.orderMapping || {};
46
- const { unfoldInfo } = datasetReshapeInfo[0];
47
- const x = unfoldInfo.encodingX;
48
- const colorId = unfoldInfo.encodingColorId;
49
- const id = datasetReshapeInfo[0].id;
50
- const fields = {};
51
- if (x) {
52
- const order = orderMapping[x];
53
- if (order) fields[x] = {
54
- sortIndex: 0,
55
- domain: order,
56
- lockStatisticsByDomain: true
57
- };
58
- else fields[x] = {
59
- sortIndex: 0
60
- };
61
- }
62
- if (colorId) {
63
- const order = orderMapping[colorId];
64
- if (order) fields[colorId] = {
65
- sortIndex: 0,
66
- domain: order,
67
- lockStatisticsByDomain: true
68
- };
69
- else fields[colorId] = {
70
- sortIndex: 0
71
- };
72
- }
73
- return {
74
- ...spec,
75
- data: {
76
- id: `${id}-secondary-dataset`,
77
- values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
78
- fields: fields
22
+ if (colorId) {
23
+ const order = orderMapping[colorId];
24
+ if (order) fields[colorId] = {
25
+ sortIndex: 0,
26
+ domain: order,
27
+ lockStatisticsByDomain: true
28
+ };
29
+ else fields[colorId] = {
30
+ sortIndex: 0
31
+ };
79
32
  }
33
+ return {
34
+ ...spec,
35
+ data: {
36
+ id: `${id}-${options.axisType}-${options.chartType}`,
37
+ values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
38
+ fields: fields
39
+ }
40
+ };
80
41
  };
81
- };
82
- export { datasetPrimary, datasetSecondary };
42
+ export { datasetDualAxis };
83
43
 
84
44
  //# sourceMappingURL=datasetDualAxis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/dataset/datasetDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/dataset/datasetDualAxis.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { isPivotChart } from 'src/pipeline/utils'\nimport type { VChartSpecPipe } from 'src/types'\n\nexport const datasetPrimary: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed, vseed } = context\n const { analysis, datasetReshapeInfo } = advancedVSeed\n const orderMapping = analysis?.orderMapping || {}\n\n const { unfoldInfo } = datasetReshapeInfo[0]\n const x = unfoldInfo.encodingX\n const colorId = unfoldInfo.encodingColorId\n const id = datasetReshapeInfo[0].id\n\n const fields: Record<string, object> = {}\n\n if (x) {\n const order = orderMapping[x]\n if (order) {\n fields[x] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[x] = {\n sortIndex: 0,\n }\n }\n }\n\n if (colorId) {\n const order = orderMapping[colorId]\n if (order) {\n fields[colorId] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[colorId] = {\n sortIndex: 0,\n }\n }\n }\n\n return {\n ...spec,\n data: {\n id: `${id}-primary-dataset`,\n // 透视表不使用 dataValues\n values: isPivotChart(vseed) ? undefined : advancedVSeed.dataset,\n fields: fields,\n },\n } as ISpec\n}\n\nexport const datasetSecondary: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed, vseed } = context\n const { analysis, datasetReshapeInfo } = advancedVSeed\n const orderMapping = analysis?.orderMapping || {}\n\n const { unfoldInfo } = datasetReshapeInfo[0]\n const x = unfoldInfo.encodingX\n const colorId = unfoldInfo.encodingColorId\n const id = datasetReshapeInfo[0].id\n\n const fields: Record<string, object> = {}\n\n if (x) {\n const order = orderMapping[x]\n if (order) {\n fields[x] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[x] = {\n sortIndex: 0,\n }\n }\n }\n\n if (colorId) {\n const order = orderMapping[colorId]\n if (order) {\n fields[colorId] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[colorId] = {\n sortIndex: 0,\n }\n }\n }\n\n return {\n ...spec,\n data: {\n id: `${id}-secondary-dataset`,\n // 透视表不使用 dataValues\n values: isPivotChart(vseed) ? undefined : advancedVSeed.dataset,\n fields: fields,\n },\n } as ISpec\n}\n"],"names":["datasetPrimary","spec","context","advancedVSeed","vseed","analysis","datasetReshapeInfo","orderMapping","unfoldInfo","x","colorId","id","fields","order","isPivotChart","undefined","datasetSecondary"],"mappings":";AAIO,MAAMA,iBAAiC,CAACC,MAAMC;IACnD,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;IACjC,MAAM,EAAEG,QAAQ,EAAEC,kBAAkB,EAAE,GAAGH;IACzC,MAAMI,eAAeF,UAAU,gBAAgB,CAAC;IAEhD,MAAM,EAAEG,UAAU,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAC5C,MAAMG,IAAID,WAAW,SAAS;IAC9B,MAAME,UAAUF,WAAW,eAAe;IAC1C,MAAMG,KAAKL,kBAAkB,CAAC,EAAE,CAAC,EAAE;IAEnC,MAAMM,SAAiC,CAAC;IAExC,IAAIH,GAAG;QACL,MAAMI,QAAQN,YAAY,CAACE,EAAE;QAC7B,IAAII,OACFD,MAAM,CAACH,EAAE,GAAG;YACV,WAAW;YACX,QAAQI;YACR,wBAAwB;QAC1B;aAEAD,MAAM,CAACH,EAAE,GAAG;YACV,WAAW;QACb;IAEJ;IAEA,IAAIC,SAAS;QACX,MAAMG,QAAQN,YAAY,CAACG,QAAQ;QACnC,IAAIG,OACFD,MAAM,CAACF,QAAQ,GAAG;YAChB,WAAW;YACX,QAAQG;YACR,wBAAwB;QAC1B;aAEAD,MAAM,CAACF,QAAQ,GAAG;YAChB,WAAW;QACb;IAEJ;IAEA,OAAO;QACL,GAAGT,IAAI;QACP,MAAM;YACJ,IAAI,GAAGU,GAAG,gBAAgB,CAAC;YAE3B,QAAQG,aAAaV,SAASW,SAAYZ,cAAc,OAAO;YAC/D,QAAQS;QACV;IACF;AACF;AAEO,MAAMI,mBAAmC,CAACf,MAAMC;IACrD,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;IACjC,MAAM,EAAEG,QAAQ,EAAEC,kBAAkB,EAAE,GAAGH;IACzC,MAAMI,eAAeF,UAAU,gBAAgB,CAAC;IAEhD,MAAM,EAAEG,UAAU,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAC5C,MAAMG,IAAID,WAAW,SAAS;IAC9B,MAAME,UAAUF,WAAW,eAAe;IAC1C,MAAMG,KAAKL,kBAAkB,CAAC,EAAE,CAAC,EAAE;IAEnC,MAAMM,SAAiC,CAAC;IAExC,IAAIH,GAAG;QACL,MAAMI,QAAQN,YAAY,CAACE,EAAE;QAC7B,IAAII,OACFD,MAAM,CAACH,EAAE,GAAG;YACV,WAAW;YACX,QAAQI;YACR,wBAAwB;QAC1B;aAEAD,MAAM,CAACH,EAAE,GAAG;YACV,WAAW;QACb;IAEJ;IAEA,IAAIC,SAAS;QACX,MAAMG,QAAQN,YAAY,CAACG,QAAQ;QACnC,IAAIG,OACFD,MAAM,CAACF,QAAQ,GAAG;YAChB,WAAW;YACX,QAAQG;YACR,wBAAwB;QAC1B;aAEAD,MAAM,CAACF,QAAQ,GAAG;YAChB,WAAW;QACb;IAEJ;IAEA,OAAO;QACL,GAAGT,IAAI;QACP,MAAM;YACJ,IAAI,GAAGU,GAAG,kBAAkB,CAAC;YAE7B,QAAQG,aAAaV,SAASW,SAAYZ,cAAc,OAAO;YAC/D,QAAQS;QACV;IACF;AACF"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/dataset/datasetDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/dataset/datasetDualAxis.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { isPivotChart } from 'src/pipeline/utils'\nimport type { DualAxisOptions, VChartSpecPipe } from 'src/types'\n\nexport const datasetDualAxis = (options: DualAxisOptions): VChartSpecPipe => {\n return (spec, context) => {\n const { advancedVSeed, vseed } = context\n const { analysis, datasetReshapeInfo } = advancedVSeed\n const orderMapping = analysis?.orderMapping || {}\n\n const { unfoldInfo } = datasetReshapeInfo[0]\n const x = unfoldInfo.encodingX\n const colorId = unfoldInfo.encodingColorId\n const id = datasetReshapeInfo[0].id\n const fields: Record<string, object> = {}\n\n if (x) {\n const order = orderMapping[x]\n if (order) {\n fields[x] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[x] = {\n sortIndex: 0,\n }\n }\n }\n if (colorId) {\n const order = orderMapping[colorId]\n if (order) {\n fields[colorId] = {\n sortIndex: 0,\n domain: order,\n lockStatisticsByDomain: true,\n }\n } else {\n fields[colorId] = {\n sortIndex: 0,\n }\n }\n }\n\n return {\n ...spec,\n data: {\n id: `${id}-${options.axisType}-${options.chartType}`,\n // 透视表不使用 dataValues\n values: isPivotChart(vseed) ? undefined : advancedVSeed.dataset,\n fields: fields,\n },\n } as ISpec\n }\n}\n"],"names":["datasetDualAxis","options","spec","context","advancedVSeed","vseed","analysis","datasetReshapeInfo","orderMapping","unfoldInfo","x","colorId","id","fields","order","isPivotChart","undefined"],"mappings":";AAIO,MAAMA,kBAAkB,CAACC,UACvB,CAACC,MAAMC;QACZ,MAAM,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGF;QACjC,MAAM,EAAEG,QAAQ,EAAEC,kBAAkB,EAAE,GAAGH;QACzC,MAAMI,eAAeF,UAAU,gBAAgB,CAAC;QAEhD,MAAM,EAAEG,UAAU,EAAE,GAAGF,kBAAkB,CAAC,EAAE;QAC5C,MAAMG,IAAID,WAAW,SAAS;QAC9B,MAAME,UAAUF,WAAW,eAAe;QAC1C,MAAMG,KAAKL,kBAAkB,CAAC,EAAE,CAAC,EAAE;QACnC,MAAMM,SAAiC,CAAC;QAExC,IAAIH,GAAG;YACL,MAAMI,QAAQN,YAAY,CAACE,EAAE;YAC7B,IAAII,OACFD,MAAM,CAACH,EAAE,GAAG;gBACV,WAAW;gBACX,QAAQI;gBACR,wBAAwB;YAC1B;iBAEAD,MAAM,CAACH,EAAE,GAAG;gBACV,WAAW;YACb;QAEJ;QACA,IAAIC,SAAS;YACX,MAAMG,QAAQN,YAAY,CAACG,QAAQ;YACnC,IAAIG,OACFD,MAAM,CAACF,QAAQ,GAAG;gBAChB,WAAW;gBACX,QAAQG;gBACR,wBAAwB;YAC1B;iBAEAD,MAAM,CAACF,QAAQ,GAAG;gBAChB,WAAW;YACb;QAEJ;QAEA,OAAO;YACL,GAAGT,IAAI;YACP,MAAM;gBACJ,IAAI,GAAGU,GAAG,CAAC,EAAEX,QAAQ,QAAQ,CAAC,CAAC,EAAEA,QAAQ,SAAS,EAAE;gBAEpD,QAAQc,aAAaV,SAASW,SAAYZ,cAAc,OAAO;gBAC/D,QAAQS;YACV;QACF;IACF"}
@@ -2,7 +2,7 @@ export { datasetYX } from './datasetYX';
2
2
  export { datasetXY } from './datasetXY';
3
3
  export { datasetPivot } from './datasetPivot';
4
4
  export { progressive } from './progressive';
5
- export { datasetPrimary, datasetSecondary } from './datasetDualAxis';
5
+ export { datasetDualAxis } from './datasetDualAxis';
6
6
  export { datasetScatter } from './datasetScatter';
7
7
  export { datasetHistogram } from './datasetHistogram';
8
8
  export { datasetBoxplot } from './datasetBoxplot';
@@ -2,8 +2,8 @@ import { datasetYX } from "./datasetYX.js";
2
2
  import { datasetXY } from "./datasetXY.js";
3
3
  import { datasetPivot } from "./datasetPivot.js";
4
4
  import { progressive } from "./progressive.js";
5
- import { datasetPrimary, datasetSecondary } from "./datasetDualAxis.js";
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, datasetHistogram, datasetPivot, datasetPrimary, datasetScatter, datasetSecondary, datasetXY, datasetYX, progressive };
9
+ export { datasetBoxplot, datasetDualAxis, datasetHistogram, datasetPivot, datasetScatter, datasetXY, datasetYX, progressive };
@@ -1,3 +1,3 @@
1
1
  import type { VChartSpecPipe } from '../../../../../types';
2
- export declare const dualChartTypePrimary: VChartSpecPipe;
3
- export declare const dualChartTypeSecondary: VChartSpecPipe;
2
+ import type { DualAxisOptions } from '../../../../../types/properties';
3
+ export declare const dualChartType: (options: DualAxisOptions) => VChartSpecPipe;