@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 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, ColumnParallel, Encoding } from 'src/types'\n\nexport const reshapeWithEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding } = advancedVSeed\n\n const colorMeasureId = getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed)\n const {\n dataset: newDatasets,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? [], (item) => item.id),\n uniqueBy(findAllMeasures(advancedVSeed.reshapeMeasures ?? advancedVSeed.measures), (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n colorMeasureId,\n },\n )\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n unfoldInfo,\n },\n ],\n }\n}\n"],"names":["reshapeWithEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","colorMeasureId","getColorMeasureId","newDatasets","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","findAllMeasures","String"],"mappings":";;;;AAMO,MAAMA,sBAAoC,CAACC,eAAeC;IAC/D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,QAAQ,EAAE,GAAGN;IAErB,MAAMO,iBAAiBC,kBAAkBR,eAAgCG;IACzE,MAAM,EACJ,SAASM,WAAW,EACpBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFR,SACAS,SAASb,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE,EAAE,CAACc,OAASA,KAAK,EAAE,GAC7FD,SAASE,gBAAgBf,cAAc,eAAe,IAAIA,cAAc,QAAQ,GAAG,CAACc,OAASA,KAAK,EAAE,GACpGR,UACA;QACE,eAAe;QACfC;IACF;IAGF,OAAO;QACL,GAAGL,MAAM;QACT,SAASO;QACT,oBAAoB;YAClB;gBACE,IAAIO,OAAOX;gBACX,OAAO;gBACPK;gBACAC;YACF;SACD;IACH;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type { AdvancedPipe, AdvancedVSeed, ColumnParallel, Dimension, Encoding, Measure } from 'src/types'\n\nexport const reshapeWithEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding } = advancedVSeed\n\n const colorMeasureId = getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed)\n const {\n dataset: newDatasets,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? [], (item: Dimension) => item.id),\n uniqueBy(advancedVSeed.reshapeMeasures?.[0] ?? [], (item: Measure) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n colorMeasureId,\n },\n )\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n unfoldInfo,\n },\n ],\n }\n}\n"],"names":["reshapeWithEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","colorMeasureId","getColorMeasureId","newDatasets","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","String"],"mappings":";;;AAKO,MAAMA,sBAAoC,CAACC,eAAeC;IAC/D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,QAAQ,EAAE,GAAGN;IAErB,MAAMO,iBAAiBC,kBAAkBR,eAAgCG;IACzE,MAAM,EACJ,SAASM,WAAW,EACpBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFR,SACAS,SAASb,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE,EAAE,CAACc,OAAoBA,KAAK,EAAE,GACxGD,SAASb,cAAc,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAACc,OAAkBA,KAAK,EAAE,GAC7ER,UACA;QACE,eAAe;QACfC;IACF;IAGF,OAAO;QACL,GAAGL,MAAM;QACT,SAASO;QACT,oBAAoB;YAClB;gBACE,IAAIM,OAAOV;gBACX,OAAO;gBACPK;gBACAC;YACF;SACD;IACH;AACF"}
@@ -1,5 +1,4 @@
1
1
  import { BinCountMeasureId, BinEndMeasureId, BinPercentageMeasureId, BinStartMeasureId, FoldMeasureId, FoldMeasureName, FoldMeasureValue, Separator, dataReshapeByEncoding, unfoldDimensions } from "../../../../../dataReshape/index.js";
2
- import { findAllMeasures } from "../../../../utils/index.js";
3
2
  import { bin } from "@visactor/vdataset";
4
3
  import { uniqueBy } from "remeda";
5
4
  import { getColorMeasureId } from "../../../../spec/chart/pipes/color/colorAdapter.js";
@@ -9,8 +8,7 @@ const reshapeWithHistogramEncoding = (advancedVSeed, context)=>{
9
8
  };
10
9
  const { vseed } = context;
11
10
  const { dataset, chartType } = vseed;
12
- const { encoding = {}, config } = advancedVSeed;
13
- const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? [];
11
+ const { encoding = {}, config, measures = [] } = advancedVSeed;
14
12
  const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? [];
15
13
  const uniqDims = uniqueBy(dimensions, (item)=>item.id);
16
14
  const chartConfig = config?.[chartType];
@@ -34,10 +32,9 @@ const reshapeWithHistogramEncoding = (advancedVSeed, context)=>{
34
32
  };
35
33
  let unfoldInfo = {};
36
34
  const colorMeasureId = getColorMeasureId(advancedVSeed, vseed);
37
- const allMeasures = findAllMeasures(measures);
38
35
  if (encoding.value?.length) {
39
36
  const valueField = encoding.value[0];
40
- const m = allMeasures.find((m)=>m.id === valueField);
37
+ const m = measures.find((m)=>m.id === valueField);
41
38
  const binData = bin(dataset, {
42
39
  field: valueField,
43
40
  groupField: [
@@ -75,7 +72,7 @@ const reshapeWithHistogramEncoding = (advancedVSeed, context)=>{
75
72
  });
76
73
  unfoldInfo = res.unfoldInfo;
77
74
  } else if (encoding.x0?.length && encoding.x1?.length && encoding.y?.length) {
78
- const res = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (item)=>item.id), findAllMeasures(measures).filter((item)=>encoding.y?.includes(item.id)).slice(0, 1), encoding, {
75
+ const res = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (item)=>item.id), measures.filter((item)=>encoding.y?.includes(item.id)).slice(0, 1), encoding, {
79
76
  colorItemAsId: false,
80
77
  colorMeasureId
81
78
  });
@@ -97,9 +94,7 @@ const reshapeWithHistogramEncoding = (advancedVSeed, context)=>{
97
94
  foldInfo,
98
95
  unfoldInfo
99
96
  }
100
- ],
101
- dimensions,
102
- measures
97
+ ]
103
98
  };
104
99
  };
105
100
  export { reshapeWithHistogramEncoding };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.ts"],"sourcesContent":["import {\n BinCountMeasureId,\n BinEndMeasureId,\n BinPercentageMeasureId,\n BinStartMeasureId,\n dataReshapeByEncoding,\n FoldMeasureId,\n FoldMeasureName,\n FoldMeasureValue,\n Separator,\n unfoldDimensions,\n} from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, ColumnParallel, Dataset, Dimension, Encoding, FoldInfo } from 'src/types'\nimport { bin } from '@visactor/vdataset'\nimport { uniqueBy } from 'remeda'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes/color/colorAdapter'\n\nexport const reshapeWithHistogramEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding = {}, config } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n const uniqDims = uniqueBy(dimensions, (item) => item.id)\n const chartConfig = config?.[chartType as 'histogram']\n const binCount = chartConfig?.binCount\n const binStep = chartConfig?.binStep\n const binValueType = chartConfig?.binValueType\n\n let newDatasets: any[] = []\n let foldInfo: FoldInfo = {\n foldMap: {},\n measureId: FoldMeasureId,\n measureName: FoldMeasureName,\n measureValue: FoldMeasureValue,\n statistics: {\n max: -Infinity,\n min: Infinity,\n sum: 0,\n count: 0,\n colorMin: Infinity,\n colorMax: -Infinity,\n },\n }\n let unfoldInfo: any = {}\n\n const colorMeasureId = getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed)\n const allMeasures = findAllMeasures(measures)\n\n if (encoding.value?.length) {\n const valueField = encoding.value[0]\n const m = allMeasures.find((m) => m.id === valueField)\n const binData = bin(dataset, {\n field: valueField,\n groupField: [...(encoding.x ?? []), ...(encoding.color ?? [])] as string[],\n bins: binCount,\n step: binStep,\n outputNames: {\n x0: BinStartMeasureId,\n x1: BinEndMeasureId,\n count: BinCountMeasureId,\n percentage: BinPercentageMeasureId,\n },\n }) as Dataset\n\n binData.forEach((datum) => {\n datum[FoldMeasureId] = valueField\n datum[FoldMeasureName] = m?.alias ?? valueField\n const valueNumber = binValueType === 'percentage' ? +datum[BinPercentageMeasureId] : +datum[BinCountMeasureId]\n datum[FoldMeasureValue] = valueNumber\n datum[valueField] = valueNumber\n foldInfo.statistics.min = Math.min(foldInfo.statistics.min, valueNumber)\n foldInfo.statistics.max = Math.max(foldInfo.statistics.max, valueNumber)\n foldInfo.statistics.sum += valueNumber\n foldInfo.statistics.count++\n })\n if (m?.id) {\n foldInfo.foldMap[m?.id] = m?.alias\n }\n\n const res = unfoldDimensions(binData, uniqDims, encoding as Encoding, {\n foldMeasureId: FoldMeasureId,\n separator: Separator,\n colorItemAsId: false,\n })\n\n res.dataset.forEach((d) => {\n newDatasets.push(d)\n })\n unfoldInfo = res.unfoldInfo\n } else if (encoding.x0?.length && encoding.x1?.length && encoding.y?.length) {\n const res = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item: Dimension) => item.id),\n findAllMeasures(measures)\n .filter((item) => encoding.y?.includes(item.id))\n .slice(0, 1),\n encoding as Encoding,\n {\n colorItemAsId: false,\n colorMeasureId,\n },\n )\n\n res.dataset.forEach((datum) => {\n datum[BinStartMeasureId] = datum[encoding.x0![0]]\n datum[BinEndMeasureId] = datum[encoding.x1![0]]\n })\n\n newDatasets = res.dataset\n foldInfo = res.foldInfo\n unfoldInfo = res.unfoldInfo\n }\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n unfoldInfo,\n },\n ],\n dimensions,\n measures,\n }\n}\n"],"names":["reshapeWithHistogramEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","config","measures","dimensions","uniqDims","uniqueBy","item","chartConfig","binCount","binStep","binValueType","newDatasets","foldInfo","FoldMeasureId","FoldMeasureName","FoldMeasureValue","Infinity","unfoldInfo","colorMeasureId","getColorMeasureId","allMeasures","findAllMeasures","valueField","m","binData","bin","BinStartMeasureId","BinEndMeasureId","BinCountMeasureId","BinPercentageMeasureId","datum","valueNumber","Math","res","unfoldDimensions","Separator","d","dataReshapeByEncoding","String"],"mappings":";;;;;AAkBO,MAAMA,+BAA6C,CAACC,eAAeC;IACxE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,WAAW,CAAC,CAAC,EAAEC,MAAM,EAAE,GAAGP;IAClC,MAAMQ,WAAWR,cAAc,eAAe,IAAIA,cAAc,QAAQ,IAAI,EAAE;IAC9E,MAAMS,aAAaT,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE;IACpF,MAAMU,WAAWC,SAASF,YAAY,CAACG,OAASA,KAAK,EAAE;IACvD,MAAMC,cAAcN,QAAQ,CAACF,UAAyB;IACtD,MAAMS,WAAWD,aAAa;IAC9B,MAAME,UAAUF,aAAa;IAC7B,MAAMG,eAAeH,aAAa;IAElC,IAAII,cAAqB,EAAE;IAC3B,IAAIC,WAAqB;QACvB,SAAS,CAAC;QACV,WAAWC;QACX,aAAaC;QACb,cAAcC;QACd,YAAY;YACV,KAAK,CAACC;YACN,KAAKA;YACL,KAAK;YACL,OAAO;YACP,UAAUA;YACV,UAAU,CAACA;QACb;IACF;IACA,IAAIC,aAAkB,CAAC;IAEvB,MAAMC,iBAAiBC,kBAAkBzB,eAAgCG;IACzE,MAAMuB,cAAcC,gBAAgBnB;IAEpC,IAAIF,SAAS,KAAK,EAAE,QAAQ;QAC1B,MAAMsB,aAAatB,SAAS,KAAK,CAAC,EAAE;QACpC,MAAMuB,IAAIH,YAAY,IAAI,CAAC,CAACG,IAAMA,EAAE,EAAE,KAAKD;QAC3C,MAAME,UAAUC,IAAI3B,SAAS;YAC3B,OAAOwB;YACP,YAAY;mBAAKtB,SAAS,CAAC,IAAI,EAAE;mBAAOA,SAAS,KAAK,IAAI,EAAE;aAAE;YAC9D,MAAMQ;YACN,MAAMC;YACN,aAAa;gBACX,IAAIiB;gBACJ,IAAIC;gBACJ,OAAOC;gBACP,YAAYC;YACd;QACF;QAEAL,QAAQ,OAAO,CAAC,CAACM;YACfA,KAAK,CAACjB,cAAc,GAAGS;YACvBQ,KAAK,CAAChB,gBAAgB,GAAGS,GAAG,SAASD;YACrC,MAAMS,cAAcrB,AAAiB,iBAAjBA,eAAgC,CAACoB,KAAK,CAACD,uBAAuB,GAAG,CAACC,KAAK,CAACF,kBAAkB;YAC9GE,KAAK,CAACf,iBAAiB,GAAGgB;YAC1BD,KAAK,CAACR,WAAW,GAAGS;YACpBnB,SAAS,UAAU,CAAC,GAAG,GAAGoB,KAAK,GAAG,CAACpB,SAAS,UAAU,CAAC,GAAG,EAAEmB;YAC5DnB,SAAS,UAAU,CAAC,GAAG,GAAGoB,KAAK,GAAG,CAACpB,SAAS,UAAU,CAAC,GAAG,EAAEmB;YAC5DnB,SAAS,UAAU,CAAC,GAAG,IAAImB;YAC3BnB,SAAS,UAAU,CAAC,KAAK;QAC3B;QACA,IAAIW,GAAG,IACLX,SAAS,OAAO,CAACW,GAAG,GAAG,GAAGA,GAAG;QAG/B,MAAMU,MAAMC,iBAAiBV,SAASpB,UAAUJ,UAAsB;YACpE,eAAea;YACf,WAAWsB;YACX,eAAe;QACjB;QAEAF,IAAI,OAAO,CAAC,OAAO,CAAC,CAACG;YACnBzB,YAAY,IAAI,CAACyB;QACnB;QACAnB,aAAagB,IAAI,UAAU;IAC7B,OAAO,IAAIjC,SAAS,EAAE,EAAE,UAAUA,SAAS,EAAE,EAAE,UAAUA,SAAS,CAAC,EAAE,QAAQ;QAC3E,MAAMiC,MAAMI,sBACVvC,SACAO,SAASF,YAAY,CAACG,OAAoBA,KAAK,EAAE,GACjDe,gBAAgBnB,UACb,MAAM,CAAC,CAACI,OAASN,SAAS,CAAC,EAAE,SAASM,KAAK,EAAE,GAC7C,KAAK,CAAC,GAAG,IACZN,UACA;YACE,eAAe;YACfkB;QACF;QAGFe,IAAI,OAAO,CAAC,OAAO,CAAC,CAACH;YACnBA,KAAK,CAACJ,kBAAkB,GAAGI,KAAK,CAAC9B,SAAS,EAAG,CAAC,EAAE,CAAC;YACjD8B,KAAK,CAACH,gBAAgB,GAAGG,KAAK,CAAC9B,SAAS,EAAG,CAAC,EAAE,CAAC;QACjD;QAEAW,cAAcsB,IAAI,OAAO;QACzBrB,WAAWqB,IAAI,QAAQ;QACvBhB,aAAagB,IAAI,UAAU;IAC7B;IAEA,OAAO;QACL,GAAGrC,MAAM;QACT,SAASe;QACT,oBAAoB;YAClB;gBACE,IAAI2B,OAAOvC;gBACX,OAAO;gBACPa;gBACAK;YACF;SACD;QACDd;QACAD;IACF;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.ts"],"sourcesContent":["import {\n BinCountMeasureId,\n BinEndMeasureId,\n BinPercentageMeasureId,\n BinStartMeasureId,\n dataReshapeByEncoding,\n FoldMeasureId,\n FoldMeasureName,\n FoldMeasureValue,\n Separator,\n unfoldDimensions,\n} from 'src/dataReshape'\nimport type { AdvancedPipe, AdvancedVSeed, ColumnParallel, Dataset, Dimension, Encoding, FoldInfo } from 'src/types'\nimport { bin } from '@visactor/vdataset'\nimport { uniqueBy } from 'remeda'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes/color/colorAdapter'\n\nexport const reshapeWithHistogramEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding = {}, config, measures = [] } = advancedVSeed\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n const uniqDims = uniqueBy(dimensions, (item: Dimension) => item.id)\n const chartConfig = config?.[chartType as 'histogram']\n const binCount = chartConfig?.binCount\n const binStep = chartConfig?.binStep\n const binValueType = chartConfig?.binValueType\n\n let newDatasets: any[] = []\n let foldInfo: FoldInfo = {\n foldMap: {},\n measureId: FoldMeasureId,\n measureName: FoldMeasureName,\n measureValue: FoldMeasureValue,\n statistics: {\n max: -Infinity,\n min: Infinity,\n sum: 0,\n count: 0,\n colorMin: Infinity,\n colorMax: -Infinity,\n },\n }\n let unfoldInfo: any = {}\n\n const colorMeasureId = getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed)\n\n if (encoding.value?.length) {\n const valueField = encoding.value[0]\n const m = measures.find((m) => m.id === valueField)\n const binData = bin(dataset, {\n field: valueField,\n groupField: [...(encoding.x ?? []), ...(encoding.color ?? [])] as string[],\n bins: binCount,\n step: binStep,\n outputNames: {\n x0: BinStartMeasureId,\n x1: BinEndMeasureId,\n count: BinCountMeasureId,\n percentage: BinPercentageMeasureId,\n },\n }) as Dataset\n\n binData.forEach((datum) => {\n datum[FoldMeasureId] = valueField\n datum[FoldMeasureName] = m?.alias ?? valueField\n const valueNumber = binValueType === 'percentage' ? +datum[BinPercentageMeasureId] : +datum[BinCountMeasureId]\n datum[FoldMeasureValue] = valueNumber\n datum[valueField] = valueNumber\n foldInfo.statistics.min = Math.min(foldInfo.statistics.min, valueNumber)\n foldInfo.statistics.max = Math.max(foldInfo.statistics.max, valueNumber)\n foldInfo.statistics.sum += valueNumber\n foldInfo.statistics.count++\n })\n if (m?.id) {\n foldInfo.foldMap[m?.id] = m?.alias\n }\n\n const res = unfoldDimensions(binData, uniqDims, encoding as Encoding, {\n foldMeasureId: FoldMeasureId,\n separator: Separator,\n colorItemAsId: false,\n })\n\n res.dataset.forEach((d) => {\n newDatasets.push(d)\n })\n unfoldInfo = res.unfoldInfo\n } else if (encoding.x0?.length && encoding.x1?.length && encoding.y?.length) {\n const res = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item: Dimension) => item.id),\n measures.filter((item) => encoding.y?.includes(item.id)).slice(0, 1),\n encoding as Encoding,\n {\n colorItemAsId: false,\n colorMeasureId,\n },\n )\n\n res.dataset.forEach((datum) => {\n datum[BinStartMeasureId] = datum[encoding.x0![0]]\n datum[BinEndMeasureId] = datum[encoding.x1![0]]\n })\n\n newDatasets = res.dataset\n foldInfo = res.foldInfo\n unfoldInfo = res.unfoldInfo\n }\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n unfoldInfo,\n },\n ],\n }\n}\n"],"names":["reshapeWithHistogramEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","config","measures","dimensions","uniqDims","uniqueBy","item","chartConfig","binCount","binStep","binValueType","newDatasets","foldInfo","FoldMeasureId","FoldMeasureName","FoldMeasureValue","Infinity","unfoldInfo","colorMeasureId","getColorMeasureId","valueField","m","binData","bin","BinStartMeasureId","BinEndMeasureId","BinCountMeasureId","BinPercentageMeasureId","datum","valueNumber","Math","res","unfoldDimensions","Separator","d","dataReshapeByEncoding","String"],"mappings":";;;;AAiBO,MAAMA,+BAA6C,CAACC,eAAeC;IACxE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,WAAW,CAAC,CAAC,EAAEC,MAAM,EAAEC,WAAW,EAAE,EAAE,GAAGR;IACjD,MAAMS,aAAaT,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE;IACpF,MAAMU,WAAWC,SAASF,YAAY,CAACG,OAAoBA,KAAK,EAAE;IAClE,MAAMC,cAAcN,QAAQ,CAACF,UAAyB;IACtD,MAAMS,WAAWD,aAAa;IAC9B,MAAME,UAAUF,aAAa;IAC7B,MAAMG,eAAeH,aAAa;IAElC,IAAII,cAAqB,EAAE;IAC3B,IAAIC,WAAqB;QACvB,SAAS,CAAC;QACV,WAAWC;QACX,aAAaC;QACb,cAAcC;QACd,YAAY;YACV,KAAK,CAACC;YACN,KAAKA;YACL,KAAK;YACL,OAAO;YACP,UAAUA;YACV,UAAU,CAACA;QACb;IACF;IACA,IAAIC,aAAkB,CAAC;IAEvB,MAAMC,iBAAiBC,kBAAkBzB,eAAgCG;IAEzE,IAAIG,SAAS,KAAK,EAAE,QAAQ;QAC1B,MAAMoB,aAAapB,SAAS,KAAK,CAAC,EAAE;QACpC,MAAMqB,IAAInB,SAAS,IAAI,CAAC,CAACmB,IAAMA,EAAE,EAAE,KAAKD;QACxC,MAAME,UAAUC,IAAIzB,SAAS;YAC3B,OAAOsB;YACP,YAAY;mBAAKpB,SAAS,CAAC,IAAI,EAAE;mBAAOA,SAAS,KAAK,IAAI,EAAE;aAAE;YAC9D,MAAMQ;YACN,MAAMC;YACN,aAAa;gBACX,IAAIe;gBACJ,IAAIC;gBACJ,OAAOC;gBACP,YAAYC;YACd;QACF;QAEAL,QAAQ,OAAO,CAAC,CAACM;YACfA,KAAK,CAACf,cAAc,GAAGO;YACvBQ,KAAK,CAACd,gBAAgB,GAAGO,GAAG,SAASD;YACrC,MAAMS,cAAcnB,AAAiB,iBAAjBA,eAAgC,CAACkB,KAAK,CAACD,uBAAuB,GAAG,CAACC,KAAK,CAACF,kBAAkB;YAC9GE,KAAK,CAACb,iBAAiB,GAAGc;YAC1BD,KAAK,CAACR,WAAW,GAAGS;YACpBjB,SAAS,UAAU,CAAC,GAAG,GAAGkB,KAAK,GAAG,CAAClB,SAAS,UAAU,CAAC,GAAG,EAAEiB;YAC5DjB,SAAS,UAAU,CAAC,GAAG,GAAGkB,KAAK,GAAG,CAAClB,SAAS,UAAU,CAAC,GAAG,EAAEiB;YAC5DjB,SAAS,UAAU,CAAC,GAAG,IAAIiB;YAC3BjB,SAAS,UAAU,CAAC,KAAK;QAC3B;QACA,IAAIS,GAAG,IACLT,SAAS,OAAO,CAACS,GAAG,GAAG,GAAGA,GAAG;QAG/B,MAAMU,MAAMC,iBAAiBV,SAASlB,UAAUJ,UAAsB;YACpE,eAAea;YACf,WAAWoB;YACX,eAAe;QACjB;QAEAF,IAAI,OAAO,CAAC,OAAO,CAAC,CAACG;YACnBvB,YAAY,IAAI,CAACuB;QACnB;QACAjB,aAAac,IAAI,UAAU;IAC7B,OAAO,IAAI/B,SAAS,EAAE,EAAE,UAAUA,SAAS,EAAE,EAAE,UAAUA,SAAS,CAAC,EAAE,QAAQ;QAC3E,MAAM+B,MAAMI,sBACVrC,SACAO,SAASF,YAAY,CAACG,OAAoBA,KAAK,EAAE,GACjDJ,SAAS,MAAM,CAAC,CAACI,OAASN,SAAS,CAAC,EAAE,SAASM,KAAK,EAAE,GAAG,KAAK,CAAC,GAAG,IAClEN,UACA;YACE,eAAe;YACfkB;QACF;QAGFa,IAAI,OAAO,CAAC,OAAO,CAAC,CAACH;YACnBA,KAAK,CAACJ,kBAAkB,GAAGI,KAAK,CAAC5B,SAAS,EAAG,CAAC,EAAE,CAAC;YACjD4B,KAAK,CAACH,gBAAgB,GAAGG,KAAK,CAAC5B,SAAS,EAAG,CAAC,EAAE,CAAC;QACjD;QAEAW,cAAcoB,IAAI,OAAO;QACzBnB,WAAWmB,IAAI,QAAQ;QACvBd,aAAac,IAAI,UAAU;IAC7B;IAEA,OAAO;QACL,GAAGnC,MAAM;QACT,SAASe;QACT,oBAAoB;YAClB;gBACE,IAAIyB,OAAOrC;gBACX,OAAO;gBACPa;gBACAK;YACF;SACD;IACH;AACF"}
@@ -7,37 +7,32 @@ const reshapeWithScatterEncoding = (advancedVSeed, context)=>{
7
7
  };
8
8
  const { vseed } = context;
9
9
  const { dataset } = vseed;
10
- const { encoding, chartType } = advancedVSeed;
11
- const measures = (advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []).filter((m)=>m && m.children);
10
+ const { encoding, chartType, reshapeMeasures } = advancedVSeed;
12
11
  const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? [];
13
- if (measures.length > 2) throw new Error('measures can not be more than 2 groups in scatter');
12
+ const measures = reshapeMeasures?.[0] ?? [];
14
13
  const foldInfoList = [];
15
14
  const unfoldInfoList = [];
16
15
  const datasets = [];
17
- const xMeasures = measures[0];
18
- const yMeasures = measures[1] || xMeasures;
19
- if (xMeasures && xMeasures.children) {
20
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (d)=>d.id), uniqueBy(xMeasures.children, (d)=>d.id), encoding, {
21
- foldMeasureValue: FoldXMeasureValue,
22
- foldMeasureId: FoldXMeasureId,
23
- colorItemAsId: true,
24
- colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
25
- });
26
- datasets.push(newDataset);
27
- foldInfoList.push(foldInfo);
28
- unfoldInfoList.push(unfoldInfo);
29
- }
30
- if (yMeasures && yMeasures.children) {
31
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(datasets[0], uniqueBy(dimensions, (d)=>d.id), uniqueBy(yMeasures.children, (d)=>d.id), encoding, {
32
- foldMeasureValue: FoldYMeasureValue,
33
- foldMeasureId: FoldYMeasureId,
34
- colorItemAsId: true,
35
- colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
36
- });
37
- datasets[0] = newDataset;
38
- foldInfoList.push(foldInfo);
39
- unfoldInfoList.push(unfoldInfo);
40
- }
16
+ const xMeasures = measures.filter((m)=>'xAxis' === m.encoding);
17
+ const yMeasures = measures.filter((m)=>'yAxis' === m.encoding);
18
+ const xResult = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (d)=>d.id), uniqueBy(xMeasures, (d)=>d.id), encoding, {
19
+ foldMeasureValue: FoldXMeasureValue,
20
+ foldMeasureId: FoldXMeasureId,
21
+ colorItemAsId: true,
22
+ colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
23
+ });
24
+ datasets.push(xResult.dataset);
25
+ foldInfoList.push(xResult.foldInfo);
26
+ unfoldInfoList.push(xResult.unfoldInfo);
27
+ const yResult = dataReshapeByEncoding(datasets[0], uniqueBy(dimensions, (d)=>d.id), uniqueBy(yMeasures, (d)=>d.id), encoding, {
28
+ foldMeasureValue: FoldYMeasureValue,
29
+ foldMeasureId: FoldYMeasureId,
30
+ colorItemAsId: true,
31
+ colorMeasureId: getColorMeasureId(advancedVSeed, vseed)
32
+ });
33
+ datasets[0] = yResult.dataset;
34
+ foldInfoList.push(yResult.foldInfo);
35
+ unfoldInfoList.push(yResult.unfoldInfo);
41
36
  const unfoldInfo = {
42
37
  ...unfoldInfoList[0],
43
38
  colorItems: unfoldInfoList.flatMap((d)=>d.colorItems),
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport {\n dataReshapeByEncoding,\n FoldXMeasureId,\n FoldXMeasureValue,\n FoldYMeasureId,\n FoldYMeasureValue,\n} from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n Encoding,\n FoldInfo,\n Measure,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const reshapeWithScatterEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { encoding, chartType } = advancedVSeed\n const measures = (advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []).filter(\n (m: Measure | MeasureGroup) => m && (m as MeasureGroup).children,\n )\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n\n if (measures.length > 2) {\n throw new Error('measures can not be more than 2 groups in scatter')\n }\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const xMeasures = measures[0] as MeasureGroup\n const yMeasures = (measures[1] || xMeasures) as MeasureGroup\n\n if (xMeasures && xMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (d) => d.id),\n uniqueBy(xMeasures.children, (d) => d.id),\n encoding as Encoding,\n {\n foldMeasureValue: FoldXMeasureValue,\n foldMeasureId: FoldXMeasureId,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n },\n )\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n if (yMeasures && yMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n datasets[0],\n uniqueBy(dimensions, (d) => d.id),\n uniqueBy(yMeasures.children, (d) => d.id),\n encoding as Encoding,\n {\n foldMeasureValue: FoldYMeasureValue,\n foldMeasureId: FoldYMeasureId,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n },\n )\n\n datasets[0] = newDataset\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n return {\n ...result,\n dataset: datasets[0],\n\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n },\n ],\n }\n}\n"],"names":["reshapeWithScatterEncoding","advancedVSeed","context","result","vseed","dataset","encoding","chartType","measures","m","dimensions","Error","foldInfoList","unfoldInfoList","datasets","xMeasures","yMeasures","newDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","d","FoldXMeasureValue","FoldXMeasureId","getColorMeasureId","FoldYMeasureValue","FoldYMeasureId","prev","cur","String"],"mappings":";;;AAqBO,MAAMA,6BAA2C,CAACC,eAAeC;IACtE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,QAAQ,EAAEC,SAAS,EAAE,GAAGN;IAChC,MAAMO,WAAYP,AAAAA,CAAAA,cAAc,eAAe,IAAIA,cAAc,QAAQ,IAAI,EAAC,EAAG,MAAM,CACrF,CAACQ,IAA8BA,KAAMA,EAAmB,QAAQ;IAElE,MAAMC,aAAaT,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE;IAEpF,IAAIO,SAAS,MAAM,GAAG,GACpB,MAAM,IAAIG,MAAM;IAElB,MAAMC,eAA2B,EAAE;IACnC,MAAMC,iBAA+B,EAAE;IAEvC,MAAMC,WAAsB,EAAE;IAC9B,MAAMC,YAAYP,QAAQ,CAAC,EAAE;IAC7B,MAAMQ,YAAaR,QAAQ,CAAC,EAAE,IAAIO;IAElC,IAAIA,aAAaA,UAAU,QAAQ,EAAE;QACnC,MAAM,EACJ,SAASE,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFf,SACAgB,SAASX,YAAY,CAACY,IAAMA,EAAE,EAAE,GAChCD,SAASN,UAAU,QAAQ,EAAE,CAACO,IAAMA,EAAE,EAAE,GACxChB,UACA;YACE,kBAAkBiB;YAClB,eAAeC;YACf,eAAe;YACf,gBAAgBC,kBAAkBxB,eAAgCG;QACpE;QAGFU,SAAS,IAAI,CAACG;QACdL,aAAa,IAAI,CAACM;QAClBL,eAAe,IAAI,CAACM;IACtB;IAEA,IAAIH,aAAaA,UAAU,QAAQ,EAAE;QACnC,MAAM,EACJ,SAASC,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFN,QAAQ,CAAC,EAAE,EACXO,SAASX,YAAY,CAACY,IAAMA,EAAE,EAAE,GAChCD,SAASL,UAAU,QAAQ,EAAE,CAACM,IAAMA,EAAE,EAAE,GACxChB,UACA;YACE,kBAAkBoB;YAClB,eAAeC;YACf,eAAe;YACf,gBAAgBF,kBAAkBxB,eAAgCG;QACpE;QAGFU,QAAQ,CAAC,EAAE,GAAGG;QACdL,aAAa,IAAI,CAACM;QAClBL,eAAe,IAAI,CAACM;IACtB;IAEA,MAAMA,aAAyB;QAC7B,GAAGN,cAAc,CAAC,EAAE;QACpB,YAAYA,eAAe,OAAO,CAAC,CAACS,IAAMA,EAAE,UAAU;QACtD,YAAYT,eAAe,MAAM,CAAC,CAACe,MAAMC,MAAS;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU;YAAC,IAAI,CAAC;IACtF;IAEA,OAAO;QACL,GAAG1B,MAAM;QACT,SAASW,QAAQ,CAAC,EAAE;QAEpB,oBAAoB;YAClB;gBACE,IAAIgB,OAAOvB;gBACX,OAAO;gBACP,UAAUK,YAAY,CAAC,EAAE;gBACzB,cAAcA;gBACd,YAAYO;YACd;SACD;IACH;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport {\n dataReshapeByEncoding,\n FoldXMeasureId,\n FoldXMeasureValue,\n FoldYMeasureId,\n FoldYMeasureValue,\n} from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n Dimension,\n Encoding,\n FoldInfo,\n Measure,\n Measures,\n UnfoldInfo,\n} from 'src/types'\n\nexport const reshapeWithScatterEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { encoding, chartType, reshapeMeasures } = advancedVSeed\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n\n const measures = reshapeMeasures?.[0] ?? []\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const xMeasures = measures.filter((m) => m.encoding === 'xAxis') as Measures\n const yMeasures = measures.filter((m) => m.encoding === 'yAxis') as Measures\n\n const xResult = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (d: Dimension) => d.id),\n uniqueBy(xMeasures, (d: Measure) => d.id),\n encoding as Encoding,\n {\n foldMeasureValue: FoldXMeasureValue,\n foldMeasureId: FoldXMeasureId,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n },\n )\n\n datasets.push(xResult.dataset)\n foldInfoList.push(xResult.foldInfo)\n unfoldInfoList.push(xResult.unfoldInfo)\n\n const yResult = dataReshapeByEncoding(\n datasets[0],\n uniqueBy(dimensions, (d: Dimension) => d.id),\n uniqueBy(yMeasures, (d: Measure) => d.id),\n encoding as Encoding,\n {\n foldMeasureValue: FoldYMeasureValue,\n foldMeasureId: FoldYMeasureId,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n },\n )\n\n datasets[0] = yResult.dataset\n foldInfoList.push(yResult.foldInfo)\n unfoldInfoList.push(yResult.unfoldInfo)\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n return {\n ...result,\n dataset: datasets[0],\n\n datasetReshapeInfo: [\n {\n id: String(chartType),\n index: 0,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n },\n ],\n }\n}\n"],"names":["reshapeWithScatterEncoding","advancedVSeed","context","result","vseed","dataset","encoding","chartType","reshapeMeasures","dimensions","measures","foldInfoList","unfoldInfoList","datasets","xMeasures","m","yMeasures","xResult","dataReshapeByEncoding","uniqueBy","d","FoldXMeasureValue","FoldXMeasureId","getColorMeasureId","yResult","FoldYMeasureValue","FoldYMeasureId","unfoldInfo","prev","cur","String"],"mappings":";;;AAsBO,MAAMA,6BAA2C,CAACC,eAAeC;IACtE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,QAAQ,EAAEC,SAAS,EAAEC,eAAe,EAAE,GAAGP;IACjD,MAAMQ,aAAaR,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE;IAEpF,MAAMS,WAAWF,iBAAiB,CAAC,EAAE,IAAI,EAAE;IAC3C,MAAMG,eAA2B,EAAE;IACnC,MAAMC,iBAA+B,EAAE;IAEvC,MAAMC,WAAsB,EAAE;IAC9B,MAAMC,YAAYJ,SAAS,MAAM,CAAC,CAACK,IAAMA,AAAe,YAAfA,EAAE,QAAQ;IACnD,MAAMC,YAAYN,SAAS,MAAM,CAAC,CAACK,IAAMA,AAAe,YAAfA,EAAE,QAAQ;IAEnD,MAAME,UAAUC,sBACdb,SACAc,SAASV,YAAY,CAACW,IAAiBA,EAAE,EAAE,GAC3CD,SAASL,WAAW,CAACM,IAAeA,EAAE,EAAE,GACxCd,UACA;QACE,kBAAkBe;QAClB,eAAeC;QACf,eAAe;QACf,gBAAgBC,kBAAkBtB,eAAgCG;IACpE;IAGFS,SAAS,IAAI,CAACI,QAAQ,OAAO;IAC7BN,aAAa,IAAI,CAACM,QAAQ,QAAQ;IAClCL,eAAe,IAAI,CAACK,QAAQ,UAAU;IAEtC,MAAMO,UAAUN,sBACdL,QAAQ,CAAC,EAAE,EACXM,SAASV,YAAY,CAACW,IAAiBA,EAAE,EAAE,GAC3CD,SAASH,WAAW,CAACI,IAAeA,EAAE,EAAE,GACxCd,UACA;QACE,kBAAkBmB;QAClB,eAAeC;QACf,eAAe;QACf,gBAAgBH,kBAAkBtB,eAAgCG;IACpE;IAGFS,QAAQ,CAAC,EAAE,GAAGW,QAAQ,OAAO;IAC7Bb,aAAa,IAAI,CAACa,QAAQ,QAAQ;IAClCZ,eAAe,IAAI,CAACY,QAAQ,UAAU;IAEtC,MAAMG,aAAyB;QAC7B,GAAGf,cAAc,CAAC,EAAE;QACpB,YAAYA,eAAe,OAAO,CAAC,CAACQ,IAAMA,EAAE,UAAU;QACtD,YAAYR,eAAe,MAAM,CAAC,CAACgB,MAAMC,MAAS;gBAAE,GAAGD,IAAI;gBAAE,GAAGC,IAAI,UAAU;YAAC,IAAI,CAAC;IACtF;IAEA,OAAO;QACL,GAAG1B,MAAM;QACT,SAASU,QAAQ,CAAC,EAAE;QAEpB,oBAAoB;YAClB;gBACE,IAAIiB,OAAOvB;gBACX,OAAO;gBACP,UAAUI,YAAY,CAAC,EAAE;gBACzB,cAAcA;gBACd,YAAYgB;YACd;SACD;IACH;AACF"}
@@ -14,10 +14,10 @@ const defaultDimensions = (advancedVSeed, context)=>{
14
14
  });
15
15
  return {
16
16
  ...advancedVSeed,
17
- dimensions: clonedDimensions
17
+ dimensionTree: clonedDimensions
18
18
  };
19
19
  }
20
- const measures = findAllMeasures(advancedVSeed.measures);
20
+ const measures = findAllMeasures(advancedVSeed.measureTree);
21
21
  const top100dataset = dataset.slice(0, 100);
22
22
  const sample = top100dataset.reduce((prev, cur)=>({
23
23
  ...prev,
@@ -33,7 +33,7 @@ const defaultDimensions = (advancedVSeed, context)=>{
33
33
  }));
34
34
  return {
35
35
  ...result,
36
- dimensions: newDimensions
36
+ dimensionTree: newDimensions
37
37
  };
38
38
  };
39
39
  export { defaultDimensions };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultDimensions.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures, isDimension, preorderTraverse } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum, Dimensions, DimensionTree } from 'src/types'\n\nexport const defaultDimensions: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dimensions, dataset } = vseed\n\n if (dimensions && dimensions.length > 0) {\n const clonedDimensions = clone(dimensions)\n preorderTraverse(clonedDimensions, (node) => {\n if (isDimension(node)) {\n node.alias = node.alias || node.id\n }\n return false\n })\n return {\n ...advancedVSeed,\n dimensions: clonedDimensions,\n }\n }\n\n const measures = findAllMeasures(advancedVSeed.measures as DimensionTree)\n\n const top100dataset = dataset.slice(0, 100)\n\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n\n const newDimensions = Object.keys(sample)\n .filter(\n (key) =>\n top100dataset.some((item) => typeof item[key] === 'string') &&\n !['', null, undefined].includes(key) &&\n !measures.some((measure) => measure.id === key),\n )\n .map((dim) => ({\n id: dim,\n alias: dim,\n })) as Dimensions\n\n return {\n ...result,\n dimensions: newDimensions,\n }\n}\n"],"names":["defaultDimensions","advancedVSeed","context","result","vseed","dimensions","dataset","clonedDimensions","clone","preorderTraverse","node","isDimension","measures","findAllMeasures","top100dataset","sample","prev","cur","newDimensions","Object","key","item","undefined","measure","dim"],"mappings":";;AAIO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,UAAU,EAAEC,OAAO,EAAE,GAAGF;IAEhC,IAAIC,cAAcA,WAAW,MAAM,GAAG,GAAG;QACvC,MAAME,mBAAmBC,MAAMH;QAC/BI,iBAAiBF,kBAAkB,CAACG;YAClC,IAAIC,YAAYD,OACdA,KAAK,KAAK,GAAGA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAEpC,OAAO;QACT;QACA,OAAO;YACL,GAAGT,aAAa;YAChB,YAAYM;QACd;IACF;IAEA,MAAMK,WAAWC,gBAAgBZ,cAAc,QAAQ;IAEvD,MAAMa,gBAAgBR,QAAQ,KAAK,CAAC,GAAG;IAEvC,MAAMS,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IAEJ,MAAMC,gBAAgBC,OAAO,IAAI,CAACJ,QAC/B,MAAM,CACL,CAACK,MACCN,cAAc,IAAI,CAAC,CAACO,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAC7C,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,QAChC,CAACR,SAAS,IAAI,CAAC,CAACW,UAAYA,QAAQ,EAAE,KAAKH,MAE9C,GAAG,CAAC,CAACI,MAAS;YACb,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGrB,MAAM;QACT,YAAYe;IACd;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultDimensions.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures, isDimension, preorderTraverse } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum, Dimension, Dimensions, MeasureTree } from 'src/types'\n\nexport const defaultDimensions: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dimensions, dataset } = vseed\n\n if (dimensions && dimensions.length > 0) {\n const clonedDimensions = clone(dimensions)\n preorderTraverse(clonedDimensions, (node) => {\n if (isDimension(node as Dimension)) {\n ;(node as Dimension).alias = (node as Dimension).alias || (node as Dimension).id\n }\n return false\n })\n return {\n ...advancedVSeed,\n dimensionTree: clonedDimensions,\n }\n }\n\n const measures = findAllMeasures(advancedVSeed.measureTree as MeasureTree)\n\n const top100dataset = dataset.slice(0, 100)\n\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n\n const newDimensions = Object.keys(sample)\n .filter(\n (key) =>\n top100dataset.some((item) => typeof item[key] === 'string') &&\n !['', null, undefined].includes(key) &&\n !measures.some((measure) => measure.id === key),\n )\n .map((dim) => ({\n id: dim,\n alias: dim,\n })) as Dimensions\n\n return {\n ...result,\n dimensionTree: newDimensions,\n }\n}\n"],"names":["defaultDimensions","advancedVSeed","context","result","vseed","dimensions","dataset","clonedDimensions","clone","preorderTraverse","node","isDimension","measures","findAllMeasures","top100dataset","sample","prev","cur","newDimensions","Object","key","item","undefined","measure","dim"],"mappings":";;AAIO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,UAAU,EAAEC,OAAO,EAAE,GAAGF;IAEhC,IAAIC,cAAcA,WAAW,MAAM,GAAG,GAAG;QACvC,MAAME,mBAAmBC,MAAMH;QAC/BI,iBAAiBF,kBAAkB,CAACG;YAClC,IAAIC,YAAYD,OACZA,KAAmB,KAAK,GAAIA,KAAmB,KAAK,IAAKA,KAAmB,EAAE;YAElF,OAAO;QACT;QACA,OAAO;YACL,GAAGT,aAAa;YAChB,eAAeM;QACjB;IACF;IAEA,MAAMK,WAAWC,gBAAgBZ,cAAc,WAAW;IAE1D,MAAMa,gBAAgBR,QAAQ,KAAK,CAAC,GAAG;IAEvC,MAAMS,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IAEJ,MAAMC,gBAAgBC,OAAO,IAAI,CAACJ,QAC/B,MAAM,CACL,CAACK,MACCN,cAAc,IAAI,CAAC,CAACO,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAC7C,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,QAChC,CAACR,SAAS,IAAI,CAAC,CAACW,UAAYA,QAAQ,EAAE,KAAKH,MAE9C,GAAG,CAAC,CAACI,MAAS;YACb,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGrB,MAAM;QACT,eAAee;IACjB;AACF"}
@@ -1,12 +1,13 @@
1
1
  import { MeasureId, MeasureName } from "../../../../../dataReshape/index.js";
2
2
  import { intl } from "../../../../../i18n/index.js";
3
3
  import { findAllMeasures } from "../../../../utils/measures/find.js";
4
+ import { findTreeNodesBy } from "../../../../utils/tree/traverse.js";
4
5
  const defaultMeasureId = (advancedVSeed)=>{
5
6
  const result = {
6
7
  ...advancedVSeed
7
8
  };
8
- const measures = findAllMeasures(advancedVSeed.measures);
9
- if (measures.length > 1 && !result.dimensions?.some((dim)=>dim.id === MeasureName)) result.dimensions?.push({
9
+ const measures = findAllMeasures(advancedVSeed.measureTree);
10
+ if (measures.length > 1 && !findTreeNodesBy(advancedVSeed.dimensionTree, (dim)=>dim.id === MeasureId || dim.id === MeasureName).length) result.dimensionTree.push({
10
11
  id: MeasureId,
11
12
  alias: intl.i18n`指标名称`,
12
13
  encoding: 'row'
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultMeasureId.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultMeasureId.ts"],"sourcesContent":["import { MeasureId, MeasureName } from 'src/dataReshape'\nimport { intl } from 'src/i18n'\nimport { findAllMeasures } from 'src/pipeline/utils/measures/find'\nimport type { AdvancedPipe, Dimension, DimensionTree } from 'src/types'\n\nexport const defaultMeasureId: AdvancedPipe = (advancedVSeed) => {\n const result = { ...advancedVSeed }\n const measures = findAllMeasures(advancedVSeed.measures as DimensionTree)\n\n // 如果没有指标名称维度,则默认添加指标名称维度\n if (measures.length > 1 && !result.dimensions?.some((dim) => dim.id === MeasureName)) {\n result.dimensions?.push({\n id: MeasureId,\n alias: intl.i18n`指标名称`,\n encoding: 'row',\n } as Dimension)\n }\n\n return result\n}\n"],"names":["defaultMeasureId","advancedVSeed","result","measures","findAllMeasures","dim","MeasureName","MeasureId","intl"],"mappings":";;;AAKO,MAAMA,mBAAiC,CAACC;IAC7C,MAAMC,SAAS;QAAE,GAAGD,aAAa;IAAC;IAClC,MAAME,WAAWC,gBAAgBH,cAAc,QAAQ;IAGvD,IAAIE,SAAS,MAAM,GAAG,KAAK,CAACD,OAAO,UAAU,EAAE,KAAK,CAACG,MAAQA,IAAI,EAAE,KAAKC,cACtEJ,OAAO,UAAU,EAAE,KAAK;QACtB,IAAIK;QACJ,OAAOC,KAAK,IAAI,CAAC,IAAI,CAAC;QACtB,UAAU;IACZ;IAGF,OAAON;AACT"}
1
+ {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultMeasureId.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultMeasureId.ts"],"sourcesContent":["import { MeasureId, MeasureName } from 'src/dataReshape'\nimport { intl } from 'src/i18n'\nimport { findAllMeasures } from 'src/pipeline/utils/measures/find'\nimport { findTreeNodesBy } from 'src/pipeline/utils/tree/traverse'\nimport type { AdvancedPipe, Dimension, MeasureTree } from 'src/types'\n\nexport const defaultMeasureId: AdvancedPipe = (advancedVSeed) => {\n const result = { ...advancedVSeed }\n const measures = findAllMeasures(advancedVSeed.measureTree as MeasureTree)\n\n // 如果没有指标名称维度,则默认添加指标名称维度\n if (\n measures.length > 1 &&\n !findTreeNodesBy(advancedVSeed.dimensionTree, (dim) => dim.id === MeasureId || dim.id === MeasureName).length\n ) {\n result.dimensionTree!.push({\n id: MeasureId,\n alias: intl.i18n`指标名称`,\n encoding: 'row',\n } as Dimension)\n }\n\n return result\n}\n"],"names":["defaultMeasureId","advancedVSeed","result","measures","findAllMeasures","findTreeNodesBy","dim","MeasureId","MeasureName","intl"],"mappings":";;;;AAMO,MAAMA,mBAAiC,CAACC;IAC7C,MAAMC,SAAS;QAAE,GAAGD,aAAa;IAAC;IAClC,MAAME,WAAWC,gBAAgBH,cAAc,WAAW;IAG1D,IACEE,SAAS,MAAM,GAAG,KAClB,CAACE,gBAAgBJ,cAAc,aAAa,EAAE,CAACK,MAAQA,IAAI,EAAE,KAAKC,aAAaD,IAAI,EAAE,KAAKE,aAAa,MAAM,EAE7GN,OAAO,aAAa,CAAE,IAAI,CAAC;QACzB,IAAIK;QACJ,OAAOE,KAAK,IAAI,CAAC,IAAI,CAAC;QACtB,UAAU;IACZ;IAGF,OAAOP;AACT"}
@@ -11,7 +11,7 @@ const defaultMeasures_defaultMeasures = (advancedVSeed, context)=>{
11
11
  });
12
12
  return {
13
13
  ...advancedVSeed,
14
- measures: clonedMeasures
14
+ measureTree: clonedMeasures
15
15
  };
16
16
  }
17
17
  const top100dataset = dataset.slice(0, 100);
@@ -29,7 +29,7 @@ const defaultMeasures_defaultMeasures = (advancedVSeed, context)=>{
29
29
  }));
30
30
  return {
31
31
  ...advancedVSeed,
32
- measures: defaultMeasures
32
+ measureTree: defaultMeasures
33
33
  };
34
34
  };
35
35
  export { defaultMeasures_defaultMeasures as defaultMeasures };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultMeasures.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { isMeasure, preorderTraverse } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum } from 'src/types'\n\n/**\n * @description 如果用户没有配置 measures, 则基于 dataset 构建默认的 measures\n */\nexport const defaultMeasures: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { measures, dataset } = vseed\n\n if (measures && measures.length > 0) {\n const clonedMeasures = clone(measures)\n preorderTraverse(clonedMeasures, (node) => {\n if (isMeasure(node)) {\n node.alias = node.alias || node.id\n }\n return false\n })\n return {\n ...advancedVSeed,\n measures: clonedMeasures,\n }\n }\n\n const top100dataset = dataset.slice(0, 100)\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n const defaultMeasures = Object.keys(sample)\n .filter((key) => {\n return top100dataset.some((item) => typeof item[key] === 'number') && !['', null, undefined].includes(key)\n })\n .map((measure) => ({\n id: measure,\n alias: measure,\n }))\n\n return {\n ...advancedVSeed,\n measures: defaultMeasures,\n }\n}\n"],"names":["defaultMeasures","advancedVSeed","context","vseed","measures","dataset","clonedMeasures","clone","preorderTraverse","node","isMeasure","top100dataset","sample","prev","cur","Object","key","item","undefined","measure"],"mappings":";;AAOO,MAAMA,kCAAgC,CAACC,eAAeC;IAC3D,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,QAAQ,EAAEC,OAAO,EAAE,GAAGF;IAE9B,IAAIC,YAAYA,SAAS,MAAM,GAAG,GAAG;QACnC,MAAME,iBAAiBC,MAAMH;QAC7BI,iBAAiBF,gBAAgB,CAACG;YAChC,IAAIC,UAAUD,OACZA,KAAK,KAAK,GAAGA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAEpC,OAAO;QACT;QACA,OAAO;YACL,GAAGR,aAAa;YAChB,UAAUK;QACZ;IACF;IAEA,MAAMK,gBAAgBN,QAAQ,KAAK,CAAC,GAAG;IACvC,MAAMO,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IACJ,MAAMd,kBAAkBe,OAAO,IAAI,CAACH,QACjC,MAAM,CAAC,CAACI,MACAL,cAAc,IAAI,CAAC,CAACM,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAAkB,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,MAEvG,GAAG,CAAC,CAACG,UAAa;YACjB,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGlB,aAAa;QAChB,UAAUD;IACZ;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/table/pipes/default/defaultMeasures.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { isMeasure, preorderTraverse } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum, Measure } from 'src/types'\n\n/**\n * @description 如果用户没有配置 measures, 则基于 dataset 构建默认的 measures\n */\nexport const defaultMeasures: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { measures, dataset } = vseed\n\n if (measures && measures.length > 0) {\n const clonedMeasures = clone(measures)\n preorderTraverse(clonedMeasures, (node) => {\n if (isMeasure(node as Measure)) {\n ;(node as Measure).alias = (node as Measure).alias || (node as Measure).id\n }\n return false\n })\n return {\n ...advancedVSeed,\n measureTree: clonedMeasures,\n }\n }\n\n const top100dataset = dataset.slice(0, 100)\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n const defaultMeasures = Object.keys(sample)\n .filter((key) => {\n return top100dataset.some((item) => typeof item[key] === 'number') && !['', null, undefined].includes(key)\n })\n .map((measure) => ({\n id: measure,\n alias: measure,\n }))\n\n return {\n ...advancedVSeed,\n measureTree: defaultMeasures,\n }\n}\n"],"names":["defaultMeasures","advancedVSeed","context","vseed","measures","dataset","clonedMeasures","clone","preorderTraverse","node","isMeasure","top100dataset","sample","prev","cur","Object","key","item","undefined","measure"],"mappings":";;AAOO,MAAMA,kCAAgC,CAACC,eAAeC;IAC3D,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,QAAQ,EAAEC,OAAO,EAAE,GAAGF;IAE9B,IAAIC,YAAYA,SAAS,MAAM,GAAG,GAAG;QACnC,MAAME,iBAAiBC,MAAMH;QAC7BI,iBAAiBF,gBAAgB,CAACG;YAChC,IAAIC,UAAUD,OACVA,KAAiB,KAAK,GAAIA,KAAiB,KAAK,IAAKA,KAAiB,EAAE;YAE5E,OAAO;QACT;QACA,OAAO;YACL,GAAGR,aAAa;YAChB,aAAaK;QACf;IACF;IAEA,MAAMK,gBAAgBN,QAAQ,KAAK,CAAC,GAAG;IACvC,MAAMO,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IACJ,MAAMd,kBAAkBe,OAAO,IAAI,CAACH,QACjC,MAAM,CAAC,CAACI,MACAL,cAAc,IAAI,CAAC,CAACM,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAAkB,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,MAEvG,GAAG,CAAC,CAACG,UAAa;YACjB,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGlB,aAAa;QAChB,aAAaD;IACf;AACF"}
@@ -1,13 +1,13 @@
1
1
  import { unique } from "remeda";
2
2
  import { findAllMeasures } from "../../../../utils/index.js";
3
3
  const encodingForPivotTable = (advancedVSeed)=>{
4
- const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
5
- const measures = findAllMeasures(vseedMeasures);
6
- const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
4
+ const { measureTree = [], dimensionTree = [] } = advancedVSeed;
5
+ const measures = findAllMeasures(measureTree);
6
+ const hasDimensionEncoding = dimensionTree.some((item)=>item.encoding);
7
7
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
8
8
  const encoding = {};
9
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding);
10
- else generateDefaultDimensionEncoding(dimensions, encoding);
9
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensionTree, encoding);
10
+ else generateDefaultDimensionEncoding(dimensionTree, encoding);
11
11
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
12
12
  else generateDefaultMeasureEncoding(measures, encoding);
13
13
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/table/pipes/encoding/pivotTable.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/encoding/pivotTable.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\n\nexport const encodingForPivotTable: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n\n const hasDimensionEncoding = dimensions.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n const encoding: Encoding = {}\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n return { ...advancedVSeed, encoding }\n}\n\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.tooltip = uniqueDimIds\n encoding.row = []\n encoding.column = []\n\n uniqueDimIds.forEach((item, index) => {\n if (index % 2 === 0) {\n encoding.column!.push(item)\n } else {\n encoding.row!.push(item)\n }\n })\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.tooltip = uniqueDimIds\n encoding.row = []\n encoding.column = []\n\n dimensions.forEach((dim, index) => {\n const id = dim.id\n if (dim.encoding === 'row') {\n encoding.row!.push(id)\n } else if (dim.encoding === 'column') {\n encoding.column!.push(id)\n } else {\n if (index % 2 === 0) {\n encoding.column!.push(id)\n } else {\n encoding.row!.push(id)\n }\n }\n })\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.tooltip = unique(measures.map((item) => item.id))\n encoding.detail = unique(\n measures.filter((item) => item.encoding === 'detail' || !item.encoding).map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.tooltip = measures.map((item) => item.id)\n encoding.detail = unique(\n measures.filter((item) => item.encoding === 'detail' || !item.encoding).map((item) => item.id),\n )\n}\n"],"names":["encodingForPivotTable","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","hasDimensionEncoding","item","hasMeasureEncoding","encoding","generateDimensionEncoding","generateDefaultDimensionEncoding","generateMeasureEncoding","generateDefaultMeasureEncoding","uniqueDimIds","unique","d","index","dim","id"],"mappings":";;AAIO,MAAMA,wBAAsC,CAACC;IAClD,MAAM,EAAE,UAAUC,gBAAgB,EAAE,EAAEC,aAAa,EAAE,EAAE,GAAGF;IAC1D,MAAMG,WAAWC,gBAAgBH;IAEjC,MAAMI,uBAAuBH,WAAW,IAAI,CAAC,CAACI,OAAoBA,KAAK,QAAQ;IAC/E,MAAMC,qBAAqBJ,SAAS,IAAI,CAAC,CAACG,OAAkBA,KAAK,QAAQ;IACzE,MAAME,WAAqB,CAAC;IAE5B,IAAIH,sBACFI,0BAA0BP,YAAYM;SAEtCE,iCAAiCR,YAAYM;IAG/C,IAAID,oBACFI,wBAAwBR,UAAUK;SAElCI,+BAA+BT,UAAUK;IAG3C,OAAO;QAAE,GAAGR,aAAa;QAAEQ;IAAS;AACtC;AAKA,MAAME,mCAAmC,CAACR,YAAwBM;IAChE,MAAMK,eAAeC,OAAOZ,WAAW,GAAG,CAAC,CAACa,IAAMA,EAAE,EAAE;IACtDP,SAAS,OAAO,GAAGK;IACnBL,SAAS,GAAG,GAAG,EAAE;IACjBA,SAAS,MAAM,GAAG,EAAE;IAEpBK,aAAa,OAAO,CAAC,CAACP,MAAMU;QAC1B,IAAIA,QAAQ,MAAM,GAChBR,SAAS,MAAM,CAAE,IAAI,CAACF;aAEtBE,SAAS,GAAG,CAAE,IAAI,CAACF;IAEvB;AACF;AACA,MAAMG,4BAA4B,CAACP,YAAwBM;IACzD,MAAMK,eAAeC,OAAOZ,WAAW,GAAG,CAAC,CAACa,IAAMA,EAAE,EAAE;IACtDP,SAAS,OAAO,GAAGK;IACnBL,SAAS,GAAG,GAAG,EAAE;IACjBA,SAAS,MAAM,GAAG,EAAE;IAEpBN,WAAW,OAAO,CAAC,CAACe,KAAKD;QACvB,MAAME,KAAKD,IAAI,EAAE;QACjB,IAAIA,AAAiB,UAAjBA,IAAI,QAAQ,EACdT,SAAS,GAAG,CAAE,IAAI,CAACU;aACd,IAAID,AAAiB,aAAjBA,IAAI,QAAQ,EACrBT,SAAS,MAAM,CAAE,IAAI,CAACU;aAEtB,IAAIF,QAAQ,MAAM,GAChBR,SAAS,MAAM,CAAE,IAAI,CAACU;aAEtBV,SAAS,GAAG,CAAE,IAAI,CAACU;IAGzB;AACF;AAKA,MAAMN,iCAAiC,CAACT,UAAoBK;IAC1DA,SAAS,OAAO,GAAGM,OAAOX,SAAS,GAAG,CAAC,CAACG,OAASA,KAAK,EAAE;IACxDE,SAAS,MAAM,GAAGM,OAChBX,SAAS,MAAM,CAAC,CAACG,OAASA,AAAkB,aAAlBA,KAAK,QAAQ,IAAiB,CAACA,KAAK,QAAQ,EAAE,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;AAEjG;AACA,MAAMK,0BAA0B,CAACR,UAAoBK;IACnDA,SAAS,OAAO,GAAGL,SAAS,GAAG,CAAC,CAACG,OAASA,KAAK,EAAE;IACjDE,SAAS,MAAM,GAAGM,OAChBX,SAAS,MAAM,CAAC,CAACG,OAASA,AAAkB,aAAlBA,KAAK,QAAQ,IAAiB,CAACA,KAAK,QAAQ,EAAE,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;AAEjG"}
1
+ {"version":3,"file":"pipeline/advanced/table/pipes/encoding/pivotTable.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/encoding/pivotTable.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\n\nexport const encodingForPivotTable: AdvancedPipe = (advancedVSeed) => {\n const { measureTree = [], dimensionTree = [] } = advancedVSeed\n const measures = findAllMeasures(measureTree)\n\n const hasDimensionEncoding = dimensionTree.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n const encoding: Encoding = {}\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensionTree, encoding)\n } else {\n generateDefaultDimensionEncoding(dimensionTree, encoding)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n return { ...advancedVSeed, encoding }\n}\n\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.tooltip = uniqueDimIds\n encoding.row = []\n encoding.column = []\n\n uniqueDimIds.forEach((item, index) => {\n if (index % 2 === 0) {\n encoding.column!.push(item)\n } else {\n encoding.row!.push(item)\n }\n })\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.tooltip = uniqueDimIds\n encoding.row = []\n encoding.column = []\n\n dimensions.forEach((dim, index) => {\n const id = dim.id\n if (dim.encoding === 'row') {\n encoding.row!.push(id)\n } else if (dim.encoding === 'column') {\n encoding.column!.push(id)\n } else {\n if (index % 2 === 0) {\n encoding.column!.push(id)\n } else {\n encoding.row!.push(id)\n }\n }\n })\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.tooltip = unique(measures.map((item) => item.id))\n encoding.detail = unique(\n measures.filter((item) => item.encoding === 'detail' || !item.encoding).map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.tooltip = measures.map((item) => item.id)\n encoding.detail = unique(\n measures.filter((item) => item.encoding === 'detail' || !item.encoding).map((item) => item.id),\n )\n}\n"],"names":["encodingForPivotTable","advancedVSeed","measureTree","dimensionTree","measures","findAllMeasures","hasDimensionEncoding","item","hasMeasureEncoding","encoding","generateDimensionEncoding","generateDefaultDimensionEncoding","generateMeasureEncoding","generateDefaultMeasureEncoding","dimensions","uniqueDimIds","unique","d","index","dim","id"],"mappings":";;AAIO,MAAMA,wBAAsC,CAACC;IAClD,MAAM,EAAEC,cAAc,EAAE,EAAEC,gBAAgB,EAAE,EAAE,GAAGF;IACjD,MAAMG,WAAWC,gBAAgBH;IAEjC,MAAMI,uBAAuBH,cAAc,IAAI,CAAC,CAACI,OAAoBA,KAAK,QAAQ;IAClF,MAAMC,qBAAqBJ,SAAS,IAAI,CAAC,CAACG,OAAkBA,KAAK,QAAQ;IACzE,MAAME,WAAqB,CAAC;IAE5B,IAAIH,sBACFI,0BAA0BP,eAAeM;SAEzCE,iCAAiCR,eAAeM;IAGlD,IAAID,oBACFI,wBAAwBR,UAAUK;SAElCI,+BAA+BT,UAAUK;IAG3C,OAAO;QAAE,GAAGR,aAAa;QAAEQ;IAAS;AACtC;AAKA,MAAME,mCAAmC,CAACG,YAAwBL;IAChE,MAAMM,eAAeC,OAAOF,WAAW,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;IACtDR,SAAS,OAAO,GAAGM;IACnBN,SAAS,GAAG,GAAG,EAAE;IACjBA,SAAS,MAAM,GAAG,EAAE;IAEpBM,aAAa,OAAO,CAAC,CAACR,MAAMW;QAC1B,IAAIA,QAAQ,MAAM,GAChBT,SAAS,MAAM,CAAE,IAAI,CAACF;aAEtBE,SAAS,GAAG,CAAE,IAAI,CAACF;IAEvB;AACF;AACA,MAAMG,4BAA4B,CAACI,YAAwBL;IACzD,MAAMM,eAAeC,OAAOF,WAAW,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;IACtDR,SAAS,OAAO,GAAGM;IACnBN,SAAS,GAAG,GAAG,EAAE;IACjBA,SAAS,MAAM,GAAG,EAAE;IAEpBK,WAAW,OAAO,CAAC,CAACK,KAAKD;QACvB,MAAME,KAAKD,IAAI,EAAE;QACjB,IAAIA,AAAiB,UAAjBA,IAAI,QAAQ,EACdV,SAAS,GAAG,CAAE,IAAI,CAACW;aACd,IAAID,AAAiB,aAAjBA,IAAI,QAAQ,EACrBV,SAAS,MAAM,CAAE,IAAI,CAACW;aAEtB,IAAIF,QAAQ,MAAM,GAChBT,SAAS,MAAM,CAAE,IAAI,CAACW;aAEtBX,SAAS,GAAG,CAAE,IAAI,CAACW;IAGzB;AACF;AAKA,MAAMP,iCAAiC,CAACT,UAAoBK;IAC1DA,SAAS,OAAO,GAAGO,OAAOZ,SAAS,GAAG,CAAC,CAACG,OAASA,KAAK,EAAE;IACxDE,SAAS,MAAM,GAAGO,OAChBZ,SAAS,MAAM,CAAC,CAACG,OAASA,AAAkB,aAAlBA,KAAK,QAAQ,IAAiB,CAACA,KAAK,QAAQ,EAAE,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;AAEjG;AACA,MAAMK,0BAA0B,CAACR,UAAoBK;IACnDA,SAAS,OAAO,GAAGL,SAAS,GAAG,CAAC,CAACG,OAASA,KAAK,EAAE;IACjDE,SAAS,MAAM,GAAGO,OAChBZ,SAAS,MAAM,CAAC,CAACG,OAASA,AAAkB,aAAlBA,KAAK,QAAQ,IAAiB,CAACA,KAAK,QAAQ,EAAE,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;AAEjG"}
@@ -7,8 +7,8 @@ const reshapePivotTable = (advancedVSeed, context)=>{
7
7
  };
8
8
  const { vseed } = context;
9
9
  const { dataset, chartType } = vseed;
10
- const { dimensions, measures } = advancedVSeed;
11
- const { dataset: newDatasets, foldInfo } = foldMeasures(dataset, findAllMeasures(measures), {
10
+ const { measureTree } = advancedVSeed;
11
+ const { dataset: newDatasets, foldInfo } = foldMeasures(dataset, findAllMeasures(measureTree), {
12
12
  measureId: FoldMeasureId,
13
13
  measureName: FoldMeasureName,
14
14
  measureValue: FoldMeasureValue,
@@ -24,9 +24,7 @@ const reshapePivotTable = (advancedVSeed, context)=>{
24
24
  return {
25
25
  ...result,
26
26
  dataset: newDatasets,
27
- datasetReshapeInfo: datasetReshapeInfo,
28
- dimensions,
29
- measures
27
+ datasetReshapeInfo: datasetReshapeInfo
30
28
  };
31
29
  };
32
30
  export { reshapePivotTable };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/table/pipes/reshape/reshapePivotTable.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/reshape/reshapePivotTable.ts"],"sourcesContent":["import { FoldMeasureId, FoldMeasureName, foldMeasures, FoldMeasureValue } from 'src/dataReshape'\nimport {} from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, DatasetReshapeInfo, PivotTable } from 'src/types'\n\nexport const reshapePivotTable: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as PivotTable\n const { dimensions, measures } = advancedVSeed\n const { dataset: newDatasets, foldInfo } = foldMeasures(dataset, findAllMeasures(measures), {\n measureId: FoldMeasureId,\n measureName: FoldMeasureName,\n measureValue: FoldMeasureValue,\n allowEmptyFold: false,\n })\n\n const datasetReshapeInfo = [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n },\n ] as unknown as DatasetReshapeInfo\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: datasetReshapeInfo,\n dimensions,\n measures,\n }\n}\n"],"names":["reshapePivotTable","advancedVSeed","context","result","vseed","dataset","chartType","dimensions","measures","newDatasets","foldInfo","foldMeasures","findAllMeasures","FoldMeasureId","FoldMeasureName","FoldMeasureValue","datasetReshapeInfo","String"],"mappings":";;;AAKO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,UAAU,EAAEC,QAAQ,EAAE,GAAGP;IACjC,MAAM,EAAE,SAASQ,WAAW,EAAEC,QAAQ,EAAE,GAAGC,aAAaN,SAASO,gBAAgBJ,WAAW;QAC1F,WAAWK;QACX,aAAaC;QACb,cAAcC;QACd,gBAAgB;IAClB;IAEA,MAAMC,qBAAqB;QACzB;YACE,IAAIC,OAAOX;YACX,OAAO;YACPI;QACF;KACD;IAED,OAAO;QACL,GAAGP,MAAM;QACT,SAASM;QACT,oBAAoBO;QACpBT;QACAC;IACF;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/table/pipes/reshape/reshapePivotTable.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/table/pipes/reshape/reshapePivotTable.ts"],"sourcesContent":["import { FoldMeasureId, FoldMeasureName, foldMeasures, FoldMeasureValue } from 'src/dataReshape'\nimport {} from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, DatasetReshapeInfo, PivotTable } from 'src/types'\n\nexport const reshapePivotTable: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as PivotTable\n const { measureTree } = advancedVSeed\n const { dataset: newDatasets, foldInfo } = foldMeasures(dataset, findAllMeasures(measureTree), {\n measureId: FoldMeasureId,\n measureName: FoldMeasureName,\n measureValue: FoldMeasureValue,\n allowEmptyFold: false,\n })\n\n const datasetReshapeInfo = [\n {\n id: String(chartType),\n index: 0,\n foldInfo,\n },\n ] as unknown as DatasetReshapeInfo\n\n return {\n ...result,\n dataset: newDatasets,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["reshapePivotTable","advancedVSeed","context","result","vseed","dataset","chartType","measureTree","newDatasets","foldInfo","foldMeasures","findAllMeasures","FoldMeasureId","FoldMeasureName","FoldMeasureValue","datasetReshapeInfo","String"],"mappings":";;;AAKO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAEC,SAAS,EAAE,GAAGF;IAC/B,MAAM,EAAEG,WAAW,EAAE,GAAGN;IACxB,MAAM,EAAE,SAASO,WAAW,EAAEC,QAAQ,EAAE,GAAGC,aAAaL,SAASM,gBAAgBJ,cAAc;QAC7F,WAAWK;QACX,aAAaC;QACb,cAAcC;QACd,gBAAgB;IAClB;IAEA,MAAMC,qBAAqB;QACzB;YACE,IAAIC,OAAOV;YACX,OAAO;YACPG;QACF;KACD;IAED,OAAO;QACL,GAAGN,MAAM;QACT,SAASK;QACT,oBAAoBO;IACtB;AACF"}
@@ -1,26 +1,12 @@
1
- import { annotationAreaBand, annotationHorizontalLine, annotationPointOfDualAxis, annotationVerticalLine, areaStyle, areaStyleFilter, backgroundColor, barGapInGroup, barMaxWidth, barStyle, barStyleFilter, color, colorAdapter, colorAreaStyleFill, colorBarStyleFill, colorLegend, colorLineStyleFill, colorPointStyleFill, datasetPivot, datasetPrimary, datasetSecondary, dimensionLinkage, discreteLegend, dualChartTypePrimary, dualChartTypeSecondary, initDualAxisPrimary, initDualAxisSecondary, initPivot, labelPrimary, labelSecondary, lineStyle, lineStyleFilter, linearColor, linearColorForDualAxis, pivotAdapter, pivotAxisStyle, pivotColorLegend, pivotColumnDimensions, pivotDiscreteLegend, pivotGridStyle, pivotIndicators, pivotIndicatorsAsRow, pivotRowDimensions, pivotTitle, pointStateDimensionHover, pointStyle, pointStyleFilter, progressive, series, seriesDualAxis, stackCornerRadius, tooltipDualAxis, tooltipPrimary, tooltipSecondary, verticalCrosshairRect, xBand, yLinearPrimary, yLinearSecondary } from "../pipes/index.js";
1
+ import { annotationAreaBand, annotationHorizontalLine, annotationPointOfDualAxis, annotationVerticalLine, areaStyle, areaStyleFilter, backgroundColor, barGapInGroup, barMaxWidth, barStyle, barStyleFilter, color, colorAdapter, colorAreaStyleFill, colorBarStyleFill, colorLegend, colorLineStyleFill, colorPointStyleFill, datasetDualAxis, datasetPivot, dimensionLinkage, discreteLegend, dualChartType, initDualAxis, initPivot, labelDualAxis, lineStyle, lineStyleFilter, linearColor, linearColorForDualAxis, pivotAdapter, pivotAxisStyle, pivotColorLegend, pivotColumnDimensions, pivotDiscreteLegend, pivotGridStyle, pivotIndicators, pivotIndicatorsAsRow, pivotRowDimensions, pivotTitle, pointStateDimensionHover, pointStyle, pointStyleFilter, progressive, series, seriesDualAxis, stackCornerRadius, tooltipDualAxis, tooltipOfDualAxisSeries, verticalCrosshairRect, xBand, yLinearPrimary, yLinearSecondary } from "../pipes/index.js";
2
2
  const dualAxis = [
3
3
  seriesDualAxis([
4
- initDualAxisPrimary,
5
- dualChartTypePrimary,
6
- datasetPrimary,
7
- labelPrimary,
8
- tooltipPrimary,
9
- progressive,
10
- barMaxWidth,
11
- barGapInGroup,
12
- stackCornerRadius,
13
- barStyleFilter(colorBarStyleFill(barStyle)),
14
- pointStyleFilter(colorPointStyleFill(pointStyle)),
15
- pointStyleFilter(pointStateDimensionHover),
16
- lineStyleFilter(colorLineStyleFill(lineStyle)),
17
- areaStyleFilter(colorAreaStyleFill(areaStyle))
4
+ initDualAxis,
5
+ dualChartType,
6
+ datasetDualAxis,
7
+ labelDualAxis,
8
+ tooltipOfDualAxisSeries
18
9
  ], [
19
- initDualAxisSecondary,
20
- dualChartTypeSecondary,
21
- datasetSecondary,
22
- labelSecondary,
23
- tooltipSecondary,
24
10
  progressive,
25
11
  barMaxWidth,
26
12
  barGapInGroup,
@@ -51,35 +37,21 @@ const pivotDualAxis = [
51
37
  datasetPivot,
52
38
  pivotIndicators([
53
39
  series([
54
- initDualAxisPrimary,
55
- dualChartTypePrimary,
56
- datasetPrimary,
57
- labelPrimary,
58
- tooltipPrimary,
59
- progressive,
60
- stackCornerRadius,
61
- barMaxWidth,
62
- barGapInGroup,
63
- colorBarStyleFill(barStyle),
64
- colorPointStyleFill(pointStyle),
65
- pointStateDimensionHover,
66
- colorLineStyleFill(lineStyle),
67
- colorAreaStyleFill(areaStyle)
40
+ initDualAxis,
41
+ dualChartType,
42
+ datasetDualAxis,
43
+ labelDualAxis,
44
+ tooltipOfDualAxisSeries
68
45
  ], [
69
- initDualAxisSecondary,
70
- dualChartTypeSecondary,
71
- datasetSecondary,
72
- labelSecondary,
73
- tooltipSecondary,
74
46
  progressive,
75
- stackCornerRadius,
76
47
  barMaxWidth,
77
48
  barGapInGroup,
78
- colorBarStyleFill(barStyle),
79
- colorPointStyleFill(pointStyle),
80
- pointStateDimensionHover,
81
- colorLineStyleFill(lineStyle),
82
- colorAreaStyleFill(areaStyle)
49
+ stackCornerRadius,
50
+ barStyleFilter(colorBarStyleFill(barStyle)),
51
+ pointStyleFilter(colorPointStyleFill(pointStyle)),
52
+ pointStyleFilter(pointStateDimensionHover),
53
+ lineStyleFilter(colorLineStyleFill(lineStyle)),
54
+ areaStyleFilter(colorAreaStyleFill(areaStyle))
83
55
  ]),
84
56
  xBand,
85
57
  yLinearPrimary,
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipeline/dualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipeline/dualAxis.ts"],"sourcesContent":["import type { PivotChartSpecPipeline, VChartSpecPipeline } from 'src/types'\nimport {\n xBand,\n backgroundColor,\n discreteLegend,\n color,\n initPivot,\n datasetPivot,\n pivotDiscreteLegend,\n pivotIndicators,\n pivotAdapter,\n pivotIndicatorsAsRow,\n pivotGridStyle,\n pivotColumnDimensions,\n pivotRowDimensions,\n annotationVerticalLine,\n annotationHorizontalLine,\n pointStyle,\n lineStyle,\n pointStateDimensionHover,\n progressive,\n datasetPrimary,\n datasetSecondary,\n areaStyle,\n barStyle,\n verticalCrosshairRect,\n yLinearSecondary,\n initDualAxisPrimary,\n initDualAxisSecondary,\n labelPrimary,\n labelSecondary,\n tooltipPrimary,\n tooltipSecondary,\n yLinearPrimary,\n dualChartTypePrimary,\n dualChartTypeSecondary,\n seriesDualAxis,\n series,\n colorBarStyleFill,\n colorPointStyleFill,\n colorLineStyleFill,\n colorAreaStyleFill,\n linearColor,\n colorAdapter,\n colorLegend,\n pivotColorLegend,\n linearColorForDualAxis,\n annotationAreaBand,\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n pivotTitle,\n pivotAxisStyle,\n dimensionLinkage,\n annotationPointOfDualAxis,\n barStyleFilter,\n pointStyleFilter,\n lineStyleFilter,\n areaStyleFilter,\n tooltipDualAxis,\n} from '../pipes'\n\nconst dualAxis: VChartSpecPipeline = [\n seriesDualAxis(\n [\n initDualAxisPrimary,\n dualChartTypePrimary,\n datasetPrimary,\n labelPrimary,\n tooltipPrimary,\n progressive,\n\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n\n barStyleFilter(colorBarStyleFill(barStyle)),\n pointStyleFilter(colorPointStyleFill(pointStyle)),\n pointStyleFilter(pointStateDimensionHover),\n lineStyleFilter(colorLineStyleFill(lineStyle)),\n areaStyleFilter(colorAreaStyleFill(areaStyle)),\n ],\n [\n initDualAxisSecondary,\n dualChartTypeSecondary,\n datasetSecondary,\n labelSecondary,\n tooltipSecondary,\n progressive,\n\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n\n barStyleFilter(colorBarStyleFill(barStyle)),\n pointStyleFilter(colorPointStyleFill(pointStyle)),\n pointStyleFilter(pointStateDimensionHover),\n lineStyleFilter(colorLineStyleFill(lineStyle)),\n areaStyleFilter(colorAreaStyleFill(areaStyle)),\n ],\n ),\n xBand,\n yLinearPrimary,\n yLinearSecondary,\n\n colorAdapter(color, linearColorForDualAxis),\n colorAdapter(discreteLegend, colorLegend),\n\n backgroundColor,\n\n verticalCrosshairRect,\n annotationPointOfDualAxis,\n annotationVerticalLine,\n annotationHorizontalLine,\n annotationAreaBand,\n\n tooltipDualAxis,\n]\n\nconst pivotDualAxis: PivotChartSpecPipeline = [\n initPivot,\n pivotGridStyle,\n pivotIndicatorsAsRow,\n datasetPivot,\n pivotIndicators([\n series(\n [\n initDualAxisPrimary,\n dualChartTypePrimary,\n datasetPrimary,\n labelPrimary,\n tooltipPrimary,\n progressive,\n\n stackCornerRadius,\n barMaxWidth,\n barGapInGroup,\n\n colorBarStyleFill(barStyle),\n colorPointStyleFill(pointStyle),\n pointStateDimensionHover,\n colorLineStyleFill(lineStyle),\n colorAreaStyleFill(areaStyle),\n ],\n [\n initDualAxisSecondary,\n dualChartTypeSecondary,\n datasetSecondary,\n labelSecondary,\n tooltipSecondary,\n progressive,\n\n stackCornerRadius,\n barMaxWidth,\n barGapInGroup,\n\n colorBarStyleFill(barStyle),\n colorPointStyleFill(pointStyle),\n pointStateDimensionHover,\n colorLineStyleFill(lineStyle),\n colorAreaStyleFill(areaStyle),\n ],\n ),\n xBand,\n yLinearPrimary,\n pivotAxisStyle(yLinearSecondary),\n colorAdapter(color, linearColor),\n backgroundColor,\n verticalCrosshairRect,\n annotationPointOfDualAxis,\n annotationVerticalLine,\n annotationHorizontalLine,\n annotationAreaBand,\n\n tooltipDualAxis,\n ]),\n pivotRowDimensions,\n pivotColumnDimensions,\n pivotTitle,\n colorAdapter(pivotDiscreteLegend, pivotColorLegend),\n dimensionLinkage,\n]\n\nexport const dualAxisSpecPipeline = [pivotAdapter(dualAxis, pivotDualAxis)]\n"],"names":["dualAxis","seriesDualAxis","initDualAxisPrimary","dualChartTypePrimary","datasetPrimary","labelPrimary","tooltipPrimary","progressive","barMaxWidth","barGapInGroup","stackCornerRadius","barStyleFilter","colorBarStyleFill","barStyle","pointStyleFilter","colorPointStyleFill","pointStyle","pointStateDimensionHover","lineStyleFilter","colorLineStyleFill","lineStyle","areaStyleFilter","colorAreaStyleFill","areaStyle","initDualAxisSecondary","dualChartTypeSecondary","datasetSecondary","labelSecondary","tooltipSecondary","xBand","yLinearPrimary","yLinearSecondary","colorAdapter","color","linearColorForDualAxis","discreteLegend","colorLegend","backgroundColor","verticalCrosshairRect","annotationPointOfDualAxis","annotationVerticalLine","annotationHorizontalLine","annotationAreaBand","tooltipDualAxis","pivotDualAxis","initPivot","pivotGridStyle","pivotIndicatorsAsRow","datasetPivot","pivotIndicators","series","pivotAxisStyle","linearColor","pivotRowDimensions","pivotColumnDimensions","pivotTitle","pivotDiscreteLegend","pivotColorLegend","dimensionLinkage","dualAxisSpecPipeline","pivotAdapter"],"mappings":";AA8DA,MAAMA,WAA+B;IACnCC,eACE;QACEC;QACAC;QACAC;QACAC;QACAC;QACAC;QAEAC;QACAC;QACAC;QAEAC,eAAeC,kBAAkBC;QACjCC,iBAAiBC,oBAAoBC;QACrCF,iBAAiBG;QACjBC,gBAAgBC,mBAAmBC;QACnCC,gBAAgBC,mBAAmBC;KACpC,EACD;QACEC;QACAC;QACAC;QACAC;QACAC;QACArB;QAEAC;QACAC;QACAC;QAEAC,eAAeC,kBAAkBC;QACjCC,iBAAiBC,oBAAoBC;QACrCF,iBAAiBG;QACjBC,gBAAgBC,mBAAmBC;QACnCC,gBAAgBC,mBAAmBC;KACpC;IAEHM;IACAC;IACAC;IAEAC,aAAaC,OAAOC;IACpBF,aAAaG,gBAAgBC;IAE7BC;IAEAC;IACAC;IACAC;IACAC;IACAC;IAEAC;CACD;AAED,MAAMC,gBAAwC;IAC5CC;IACAC;IACAC;IACAC;IACAC,gBAAgB;QACdC,OACE;YACEhD;YACAC;YACAC;YACAC;YACAC;YACAC;YAEAG;YACAF;YACAC;YAEAG,kBAAkBC;YAClBE,oBAAoBC;YACpBC;YACAE,mBAAmBC;YACnBE,mBAAmBC;SACpB,EACD;YACEC;YACAC;YACAC;YACAC;YACAC;YACArB;YAEAG;YACAF;YACAC;YAEAG,kBAAkBC;YAClBE,oBAAoBC;YACpBC;YACAE,mBAAmBC;YACnBE,mBAAmBC;SACpB;QAEHM;QACAC;QACAqB,eAAepB;QACfC,aAAaC,OAAOmB;QACpBf;QACAC;QACAC;QACAC;QACAC;QACAC;QAEAC;KACD;IACDU;IACAC;IACAC;IACAvB,aAAawB,qBAAqBC;IAClCC;CACD;AAEM,MAAMC,uBAAuB;IAACC,aAAa5D,UAAU4C;CAAe"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipeline/dualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipeline/dualAxis.ts"],"sourcesContent":["import type { PivotChartSpecPipeline, VChartSpecPipeline } from 'src/types'\nimport {\n xBand,\n backgroundColor,\n discreteLegend,\n color,\n initPivot,\n datasetPivot,\n pivotDiscreteLegend,\n pivotIndicators,\n pivotAdapter,\n pivotIndicatorsAsRow,\n pivotGridStyle,\n pivotColumnDimensions,\n pivotRowDimensions,\n annotationVerticalLine,\n annotationHorizontalLine,\n pointStyle,\n lineStyle,\n pointStateDimensionHover,\n progressive,\n areaStyle,\n barStyle,\n verticalCrosshairRect,\n yLinearSecondary,\n yLinearPrimary,\n seriesDualAxis,\n series,\n colorBarStyleFill,\n colorPointStyleFill,\n colorLineStyleFill,\n colorAreaStyleFill,\n linearColor,\n colorAdapter,\n colorLegend,\n pivotColorLegend,\n linearColorForDualAxis,\n annotationAreaBand,\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n pivotTitle,\n pivotAxisStyle,\n dimensionLinkage,\n annotationPointOfDualAxis,\n barStyleFilter,\n pointStyleFilter,\n lineStyleFilter,\n areaStyleFilter,\n tooltipDualAxis,\n initDualAxis,\n dualChartType,\n datasetDualAxis,\n labelDualAxis,\n tooltipOfDualAxisSeries,\n} from '../pipes'\n\nconst dualAxis: VChartSpecPipeline = [\n seriesDualAxis(\n [initDualAxis, dualChartType, datasetDualAxis, labelDualAxis, tooltipOfDualAxisSeries],\n\n [\n progressive,\n\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n\n barStyleFilter(colorBarStyleFill(barStyle)),\n pointStyleFilter(colorPointStyleFill(pointStyle)),\n pointStyleFilter(pointStateDimensionHover),\n lineStyleFilter(colorLineStyleFill(lineStyle)),\n areaStyleFilter(colorAreaStyleFill(areaStyle)),\n ],\n ),\n xBand,\n yLinearPrimary,\n yLinearSecondary,\n\n colorAdapter(color, linearColorForDualAxis),\n colorAdapter(discreteLegend, colorLegend),\n\n backgroundColor,\n\n verticalCrosshairRect,\n annotationPointOfDualAxis,\n annotationVerticalLine,\n annotationHorizontalLine,\n annotationAreaBand,\n\n tooltipDualAxis,\n]\n\nconst pivotDualAxis: PivotChartSpecPipeline = [\n initPivot,\n pivotGridStyle,\n pivotIndicatorsAsRow,\n datasetPivot,\n pivotIndicators([\n series(\n [initDualAxis, dualChartType, datasetDualAxis, labelDualAxis, tooltipOfDualAxisSeries],\n\n [\n progressive,\n\n barMaxWidth,\n barGapInGroup,\n stackCornerRadius,\n\n barStyleFilter(colorBarStyleFill(barStyle)),\n pointStyleFilter(colorPointStyleFill(pointStyle)),\n pointStyleFilter(pointStateDimensionHover),\n lineStyleFilter(colorLineStyleFill(lineStyle)),\n areaStyleFilter(colorAreaStyleFill(areaStyle)),\n ],\n ),\n xBand,\n yLinearPrimary,\n pivotAxisStyle(yLinearSecondary),\n colorAdapter(color, linearColor),\n backgroundColor,\n verticalCrosshairRect,\n annotationPointOfDualAxis,\n annotationVerticalLine,\n annotationHorizontalLine,\n annotationAreaBand,\n\n tooltipDualAxis,\n ]),\n pivotRowDimensions,\n pivotColumnDimensions,\n pivotTitle,\n colorAdapter(pivotDiscreteLegend, pivotColorLegend),\n dimensionLinkage,\n]\n\nexport const dualAxisSpecPipeline = [pivotAdapter(dualAxis, pivotDualAxis)]\n"],"names":["dualAxis","seriesDualAxis","initDualAxis","dualChartType","datasetDualAxis","labelDualAxis","tooltipOfDualAxisSeries","progressive","barMaxWidth","barGapInGroup","stackCornerRadius","barStyleFilter","colorBarStyleFill","barStyle","pointStyleFilter","colorPointStyleFill","pointStyle","pointStateDimensionHover","lineStyleFilter","colorLineStyleFill","lineStyle","areaStyleFilter","colorAreaStyleFill","areaStyle","xBand","yLinearPrimary","yLinearSecondary","colorAdapter","color","linearColorForDualAxis","discreteLegend","colorLegend","backgroundColor","verticalCrosshairRect","annotationPointOfDualAxis","annotationVerticalLine","annotationHorizontalLine","annotationAreaBand","tooltipDualAxis","pivotDualAxis","initPivot","pivotGridStyle","pivotIndicatorsAsRow","datasetPivot","pivotIndicators","series","pivotAxisStyle","linearColor","pivotRowDimensions","pivotColumnDimensions","pivotTitle","pivotDiscreteLegend","pivotColorLegend","dimensionLinkage","dualAxisSpecPipeline","pivotAdapter"],"mappings":";AAyDA,MAAMA,WAA+B;IACnCC,eACE;QAACC;QAAcC;QAAeC;QAAiBC;QAAeC;KAAwB,EAEtF;QACEC;QAEAC;QACAC;QACAC;QAEAC,eAAeC,kBAAkBC;QACjCC,iBAAiBC,oBAAoBC;QACrCF,iBAAiBG;QACjBC,gBAAgBC,mBAAmBC;QACnCC,gBAAgBC,mBAAmBC;KACpC;IAEHC;IACAC;IACAC;IAEAC,aAAaC,OAAOC;IACpBF,aAAaG,gBAAgBC;IAE7BC;IAEAC;IACAC;IACAC;IACAC;IACAC;IAEAC;CACD;AAED,MAAMC,gBAAwC;IAC5CC;IACAC;IACAC;IACAC;IACAC,gBAAgB;QACdC,OACE;YAAC3C;YAAcC;YAAeC;YAAiBC;YAAeC;SAAwB,EAEtF;YACEC;YAEAC;YACAC;YACAC;YAEAC,eAAeC,kBAAkBC;YACjCC,iBAAiBC,oBAAoBC;YACrCF,iBAAiBG;YACjBC,gBAAgBC,mBAAmBC;YACnCC,gBAAgBC,mBAAmBC;SACpC;QAEHC;QACAC;QACAqB,eAAepB;QACfC,aAAaC,OAAOmB;QACpBf;QACAC;QACAC;QACAC;QACAC;QACAC;QAEAC;KACD;IACDU;IACAC;IACAC;IACAvB,aAAawB,qBAAqBC;IAClCC;CACD;AAEM,MAAMC,uBAAuB;IAACC,aAAavD,UAAUuC;CAAe"}
@@ -1,20 +1,20 @@
1
1
  import { selector } from "../../../../../dataSelector/index.js";
2
2
  import { isSubset } from "./utils.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { flatReshapeMeasures } from "../../../../utils/index.js";
4
4
  import { MeasureId } from "../../../../../dataReshape/constant.js";
5
5
  import { pickWithout } from "@visactor/vutils";
6
6
  import { generateAnnotationPointPipe } from "./annotationPointCommon.js";
7
7
  const annotationPointOfDualAxis = generateAnnotationPointPipe({
8
8
  findSelectedDatas: (dataset, s, spec, context)=>dataset.reduce((res, d)=>{
9
9
  const { advancedVSeed } = context;
10
- const allMeasureIds = findAllMeasures(advancedVSeed.reshapeMeasures ?? advancedVSeed.measures).map((m)=>m.id);
10
+ const allMeasureIds = flatReshapeMeasures(advancedVSeed.reshapeMeasures ?? []).map((m)=>m.id);
11
11
  const pickedDatum = pickWithout(d, allMeasureIds.filter((id)=>id !== d[MeasureId]));
12
12
  if (selector(pickedDatum, s)) res.push(pickedDatum);
13
13
  return res;
14
14
  }, []),
15
15
  generateMarkPoint: (datum, spec, context)=>{
16
16
  const { advancedVSeed } = context;
17
- const allMeasureIds = findAllMeasures(advancedVSeed.reshapeMeasures ?? advancedVSeed.measures).map((m)=>m.id);
17
+ const allMeasureIds = flatReshapeMeasures(advancedVSeed.reshapeMeasures ?? []).map((m)=>m.id);
18
18
  return spec.series?.map((s, index)=>({
19
19
  relativeSeriesIndex: index,
20
20
  coordinate: (data)=>data.find((item)=>isSubset(datum, item, allMeasureIds.filter((id)=>id !== item[MeasureId])))
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.ts"],"sourcesContent":["import type { IMarkPointSpec, ISpec } from '@visactor/vchart'\nimport { selector } from '../../../../../dataSelector'\nimport type { Datum, SpecPipelineContext, VChartSpecPipe } from 'src/types'\nimport { isSubset } from './utils'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport { MeasureId } from 'src/dataReshape/constant'\nimport { pickWithout } from '@visactor/vutils'\nimport { generateAnnotationPointPipe } from './annotationPointCommon'\n\nexport const annotationPointOfDualAxis: VChartSpecPipe = generateAnnotationPointPipe({\n findSelectedDatas: (dataset, s, spec: ISpec, context: SpecPipelineContext) => {\n return dataset.reduce((res: Datum[], d: Datum) => {\n const { advancedVSeed } = context\n const allMeasureIds = findAllMeasures(advancedVSeed.reshapeMeasures ?? advancedVSeed.measures).map((m) => m.id)\n const pickedDatum = pickWithout(\n d,\n allMeasureIds.filter((id) => id !== d[MeasureId]),\n )\n\n if (selector(pickedDatum, s)) {\n res.push(pickedDatum)\n }\n\n return res\n }, [])\n },\n generateMarkPoint: (datum: Datum, spec: ISpec, context: SpecPipelineContext) => {\n const { advancedVSeed } = context\n const allMeasureIds = findAllMeasures(advancedVSeed.reshapeMeasures ?? advancedVSeed.measures).map((m) => m.id)\n return spec.series?.map((s: any, index: number) => {\n return {\n relativeSeriesIndex: index,\n coordinate: (data: Datum[]) => {\n return data.find((item) => {\n return isSubset(\n datum,\n item,\n allMeasureIds.filter((id) => id !== item[MeasureId]),\n )\n })\n },\n } as IMarkPointSpec\n })\n },\n})\n"],"names":["annotationPointOfDualAxis","generateAnnotationPointPipe","dataset","s","spec","context","res","d","advancedVSeed","allMeasureIds","findAllMeasures","m","pickedDatum","pickWithout","id","MeasureId","selector","datum","index","data","item","isSubset"],"mappings":";;;;;;AASO,MAAMA,4BAA4CC,4BAA4B;IACnF,mBAAmB,CAACC,SAASC,GAAGC,MAAaC,UACpCH,QAAQ,MAAM,CAAC,CAACI,KAAcC;YACnC,MAAM,EAAEC,aAAa,EAAE,GAAGH;YAC1B,MAAMI,gBAAgBC,gBAAgBF,cAAc,eAAe,IAAIA,cAAc,QAAQ,EAAE,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;YAC9G,MAAMC,cAAcC,YAClBN,GACAE,cAAc,MAAM,CAAC,CAACK,KAAOA,OAAOP,CAAC,CAACQ,UAAU;YAGlD,IAAIC,SAASJ,aAAaT,IACxBG,IAAI,IAAI,CAACM;YAGX,OAAON;QACT,GAAG,EAAE;IAEP,mBAAmB,CAACW,OAAcb,MAAaC;QAC7C,MAAM,EAAEG,aAAa,EAAE,GAAGH;QAC1B,MAAMI,gBAAgBC,gBAAgBF,cAAc,eAAe,IAAIA,cAAc,QAAQ,EAAE,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;QAC9G,OAAOP,KAAK,MAAM,EAAE,IAAI,CAACD,GAAQe,QACxB;gBACL,qBAAqBA;gBACrB,YAAY,CAACC,OACJA,KAAK,IAAI,CAAC,CAACC,OACTC,SACLJ,OACAG,MACAX,cAAc,MAAM,CAAC,CAACK,KAAOA,OAAOM,IAAI,CAACL,UAAU;YAI3D;IAEJ;AACF"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.ts"],"sourcesContent":["import type { IMarkPointSpec, ISpec } from '@visactor/vchart'\nimport { selector } from '../../../../../dataSelector'\nimport type { Datum, SpecPipelineContext, VChartSpecPipe } from 'src/types'\nimport { isSubset } from './utils'\nimport { flatReshapeMeasures } from 'src/pipeline/utils'\nimport { MeasureId } from 'src/dataReshape/constant'\nimport { pickWithout } from '@visactor/vutils'\nimport { generateAnnotationPointPipe } from './annotationPointCommon'\n\nexport const annotationPointOfDualAxis: VChartSpecPipe = generateAnnotationPointPipe({\n findSelectedDatas: (dataset, s, spec: ISpec, context: SpecPipelineContext) => {\n return dataset.reduce((res: Datum[], d: Datum) => {\n const { advancedVSeed } = context\n const allMeasureIds = flatReshapeMeasures(advancedVSeed.reshapeMeasures ?? []).map((m) => m.id)\n const pickedDatum = pickWithout(\n d,\n allMeasureIds.filter((id) => id !== d[MeasureId]),\n )\n\n if (selector(pickedDatum, s)) {\n res.push(pickedDatum)\n }\n\n return res\n }, [])\n },\n generateMarkPoint: (datum: Datum, spec: ISpec, context: SpecPipelineContext) => {\n const { advancedVSeed } = context\n const allMeasureIds = flatReshapeMeasures(advancedVSeed.reshapeMeasures ?? []).map((m) => m.id)\n return spec.series?.map((s: any, index: number) => {\n return {\n relativeSeriesIndex: index,\n coordinate: (data: Datum[]) => {\n return data.find((item) => {\n return isSubset(\n datum,\n item,\n allMeasureIds.filter((id) => id !== item[MeasureId]),\n )\n })\n },\n } as IMarkPointSpec\n })\n },\n})\n"],"names":["annotationPointOfDualAxis","generateAnnotationPointPipe","dataset","s","spec","context","res","d","advancedVSeed","allMeasureIds","flatReshapeMeasures","m","pickedDatum","pickWithout","id","MeasureId","selector","datum","index","data","item","isSubset"],"mappings":";;;;;;AASO,MAAMA,4BAA4CC,4BAA4B;IACnF,mBAAmB,CAACC,SAASC,GAAGC,MAAaC,UACpCH,QAAQ,MAAM,CAAC,CAACI,KAAcC;YACnC,MAAM,EAAEC,aAAa,EAAE,GAAGH;YAC1B,MAAMI,gBAAgBC,oBAAoBF,cAAc,eAAe,IAAI,EAAE,EAAE,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;YAC9F,MAAMC,cAAcC,YAClBN,GACAE,cAAc,MAAM,CAAC,CAACK,KAAOA,OAAOP,CAAC,CAACQ,UAAU;YAGlD,IAAIC,SAASJ,aAAaT,IACxBG,IAAI,IAAI,CAACM;YAGX,OAAON;QACT,GAAG,EAAE;IAEP,mBAAmB,CAACW,OAAcb,MAAaC;QAC7C,MAAM,EAAEG,aAAa,EAAE,GAAGH;QAC1B,MAAMI,gBAAgBC,oBAAoBF,cAAc,eAAe,IAAI,EAAE,EAAE,GAAG,CAAC,CAACG,IAAMA,EAAE,EAAE;QAC9F,OAAOP,KAAK,MAAM,EAAE,IAAI,CAACD,GAAQe,QACxB;gBACL,qBAAqBA;gBACrB,YAAY,CAACC,OACJA,KAAK,IAAI,CAAC,CAACC,OACTC,SACLJ,OACAG,MACAX,cAAc,MAAM,CAAC,CAACK,KAAOA,OAAOM,IAAI,CAACL,UAAU;YAI3D;IAEJ;AACF"}
@@ -9,7 +9,7 @@ const histogramXLinear = (spec, context)=>{
9
9
  ...spec
10
10
  };
11
11
  const { advancedVSeed, vseed } = context;
12
- const { encoding, dimensions, measures, dataset } = advancedVSeed;
12
+ const { encoding, dimensions = [], measures = [], dataset } = advancedVSeed;
13
13
  const { chartType } = vseed;
14
14
  const config = advancedVSeed.config?.[chartType]?.xAxis ?? {};
15
15
  if (!result.axes) result.axes = [];
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/chart/pipes/axes/histogramXLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/histogramXLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { Datum, 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'\nimport { BinEndMeasureId, BinStartMeasureId } from 'src/dataReshape/constant'\nimport { unique } from 'remeda'\n\nexport const histogramXLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions, measures, dataset } = 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 linearAxis.tick.tickMode = () => {\n const binValues: number[] = []\n\n dataset.forEach((entry: Datum) => {\n binValues.push((entry as any)[BinStartMeasureId] as number)\n binValues.push((entry as any)[BinEndMeasureId] as number)\n })\n\n return unique(binValues)\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["histogramXLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","dataset","chartType","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle","binValues","entry","BinStartMeasureId","BinEndMeasureId","unique"],"mappings":";;;;;;AASO,MAAMA,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,OAAO,EAAE,GAAGL;IACpD,MAAM,EAAEM,SAAS,EAAE,GAAGL;IACtB,MAAMM,SAAUP,cAAc,MAAM,EAAE,CAACM,UAAmB,EAAE,SAAS,CAAC;IAEtE,IAAI,CAACP,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMS,UAAUC,aAAaR;IAE7B,MAAM,EAAES,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGJ;IAEvC,MAAMK,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAahB,UAAUiB,gBAAgBjB,UAAUkB,cAAclB,QACjE,OAAOmB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYf,OAAO,KAAK,EAAE,aAAagB,iBAAiBnB,UAAUD,YAAYD,SAAS,CAAC;IAE9F,MAAMsB,aAAaC,gBAAgB;QACjC,GAAGlB,MAAM;QACT,QAAQ;QACRQ;QACAO;QACAd;IACF;IAEAgB,WAAW,IAAI,CAAC,QAAQ,GAAG;QACzB,MAAME,YAAsB,EAAE;QAE9BrB,QAAQ,OAAO,CAAC,CAACsB;YACfD,UAAU,IAAI,CAAEC,KAAa,CAACC,kBAAkB;YAChDF,UAAU,IAAI,CAAEC,KAAa,CAACE,gBAAgB;QAChD;QAEA,OAAOC,OAAOJ;IAChB;IAEA3B,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEyB;KAAW;IAE1C,OAAOzB;AACT"}
1
+ {"version":3,"file":"pipeline/spec/chart/pipes/axes/histogramXLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/histogramXLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { Datum, 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'\nimport { BinEndMeasureId, BinStartMeasureId } from 'src/dataReshape/constant'\nimport { unique } from 'remeda'\n\nexport const histogramXLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions = [], measures = [], dataset } = 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 linearAxis.tick.tickMode = () => {\n const binValues: number[] = []\n\n dataset.forEach((entry: Datum) => {\n binValues.push((entry as any)[BinStartMeasureId] as number)\n binValues.push((entry as any)[BinEndMeasureId] as number)\n })\n\n return unique(binValues)\n }\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["histogramXLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","dataset","chartType","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle","binValues","entry","BinStartMeasureId","BinEndMeasureId","unique"],"mappings":";;;;;;AASO,MAAMA,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,OAAO,EAAE,GAAGL;IAC9D,MAAM,EAAEM,SAAS,EAAE,GAAGL;IACtB,MAAMM,SAAUP,cAAc,MAAM,EAAE,CAACM,UAAmB,EAAE,SAAS,CAAC;IAEtE,IAAI,CAACP,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMS,UAAUC,aAAaR;IAE7B,MAAM,EAAES,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGJ;IAEvC,MAAMK,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAahB,UAAUiB,gBAAgBjB,UAAUkB,cAAclB,QACjE,OAAOmB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYf,OAAO,KAAK,EAAE,aAAagB,iBAAiBnB,UAAUD,YAAYD,SAAS,CAAC;IAE9F,MAAMsB,aAAaC,gBAAgB;QACjC,GAAGlB,MAAM;QACT,QAAQ;QACRQ;QACAO;QACAd;IACF;IAEAgB,WAAW,IAAI,CAAC,QAAQ,GAAG;QACzB,MAAME,YAAsB,EAAE;QAE9BrB,QAAQ,OAAO,CAAC,CAACsB;YACfD,UAAU,IAAI,CAAEC,KAAa,CAACC,kBAAkB;YAChDF,UAAU,IAAI,CAAEC,KAAa,CAACE,gBAAgB;QAChD;QAEA,OAAOC,OAAOJ;IAChB;IAEA3B,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAEyB;KAAW;IAE1C,OAAOzB;AACT"}