@visactor/vseed 0.2.6 → 0.2.8

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 (491) 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/advanced/colorItems.js.map +1 -1
  4. package/dist/esm/builder/builder/build.js.map +1 -1
  5. package/dist/esm/builder/builder/buildAdvanced.js.map +1 -1
  6. package/dist/esm/builder/builder/buildSpec.js.map +1 -1
  7. package/dist/esm/builder/builder/builder.d.ts +670 -0
  8. package/dist/esm/builder/builder/builder.js.map +1 -1
  9. package/dist/esm/builder/register/all.js.map +1 -1
  10. package/dist/esm/builder/register/chartType/area.js.map +1 -1
  11. package/dist/esm/builder/register/chartType/areaPercent.js.map +1 -1
  12. package/dist/esm/builder/register/chartType/bar.js.map +1 -1
  13. package/dist/esm/builder/register/chartType/barParallel.js.map +1 -1
  14. package/dist/esm/builder/register/chartType/barPercent.js.map +1 -1
  15. package/dist/esm/builder/register/chartType/boxplot.js.map +1 -1
  16. package/dist/esm/builder/register/chartType/column.js.map +1 -1
  17. package/dist/esm/builder/register/chartType/columnParallel.js.map +1 -1
  18. package/dist/esm/builder/register/chartType/columnPercent.js.map +1 -1
  19. package/dist/esm/builder/register/chartType/donut.js.map +1 -1
  20. package/dist/esm/builder/register/chartType/dualAxis.js.map +1 -1
  21. package/dist/esm/builder/register/chartType/funnel.js.map +1 -1
  22. package/dist/esm/builder/register/chartType/heatmap.js.map +1 -1
  23. package/dist/esm/builder/register/chartType/histogram.js.map +1 -1
  24. package/dist/esm/builder/register/chartType/line.js.map +1 -1
  25. package/dist/esm/builder/register/chartType/pie.js.map +1 -1
  26. package/dist/esm/builder/register/chartType/pivotTable.js.map +1 -1
  27. package/dist/esm/builder/register/chartType/radar.js.map +1 -1
  28. package/dist/esm/builder/register/chartType/rose.js.map +1 -1
  29. package/dist/esm/builder/register/chartType/roseParallel.js.map +1 -1
  30. package/dist/esm/builder/register/chartType/scatter.js.map +1 -1
  31. package/dist/esm/builder/register/chartType/table.js.map +1 -1
  32. package/dist/esm/builder/register/custom.js.map +1 -1
  33. package/dist/esm/builder/register/theme/custom.js.map +1 -1
  34. package/dist/esm/builder/register/theme/dark.js.map +1 -1
  35. package/dist/esm/builder/register/theme/light.js.map +1 -1
  36. package/dist/esm/dataReshape/constant.js.map +1 -1
  37. package/dist/esm/dataReshape/dataReshapeByEncoding.js.map +1 -1
  38. package/dist/esm/dataReshape/foldMeasures.js.map +1 -1
  39. package/dist/esm/dataReshape/unfoldDimensions.js.map +1 -1
  40. package/dist/esm/dataSelector/selector.js.map +1 -1
  41. package/dist/esm/i18n/i18n.js.map +1 -1
  42. package/dist/esm/i18n/i18nData.js.map +1 -1
  43. package/dist/esm/i18n/index.d.ts +1 -0
  44. package/dist/esm/i18n/index.js +4 -0
  45. package/dist/esm/i18n/index.js.map +1 -0
  46. package/dist/esm/pipeline/advanced/chart/pipeline/area.js +3 -3
  47. package/dist/esm/pipeline/advanced/chart/pipeline/area.js.map +1 -1
  48. package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js +3 -3
  49. package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js.map +1 -1
  50. package/dist/esm/pipeline/advanced/chart/pipeline/bar.js +3 -3
  51. package/dist/esm/pipeline/advanced/chart/pipeline/bar.js.map +1 -1
  52. package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js +3 -3
  53. package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js.map +1 -1
  54. package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js +3 -3
  55. package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js.map +1 -1
  56. package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js +3 -3
  57. package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js.map +1 -1
  58. package/dist/esm/pipeline/advanced/chart/pipeline/column.js +3 -3
  59. package/dist/esm/pipeline/advanced/chart/pipeline/column.js.map +1 -1
  60. package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js +3 -3
  61. package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js.map +1 -1
  62. package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js +3 -3
  63. package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js.map +1 -1
  64. package/dist/esm/pipeline/advanced/chart/pipeline/donut.js.map +1 -1
  65. package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js +3 -3
  66. package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js.map +1 -1
  67. package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js +3 -3
  68. package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js.map +1 -1
  69. package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js +3 -3
  70. package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js.map +1 -1
  71. package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js +3 -3
  72. package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js.map +1 -1
  73. package/dist/esm/pipeline/advanced/chart/pipeline/line.js +3 -3
  74. package/dist/esm/pipeline/advanced/chart/pipeline/line.js.map +1 -1
  75. package/dist/esm/pipeline/advanced/chart/pipeline/pie.js.map +1 -1
  76. package/dist/esm/pipeline/advanced/chart/pipeline/radar.js +3 -3
  77. package/dist/esm/pipeline/advanced/chart/pipeline/radar.js.map +1 -1
  78. package/dist/esm/pipeline/advanced/chart/pipeline/rose.js +3 -3
  79. package/dist/esm/pipeline/advanced/chart/pipeline/rose.js.map +1 -1
  80. package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js +3 -3
  81. package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js.map +1 -1
  82. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +3 -3
  83. package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
  84. package/dist/esm/pipeline/advanced/chart/pipes/analysis/common.js.map +1 -1
  85. package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortLegend.js.map +1 -1
  86. package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortXBand.js.map +1 -1
  87. package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortYBand.js.map +1 -1
  88. package/dist/esm/pipeline/advanced/chart/pipes/annotation/annotation.js.map +1 -1
  89. package/dist/esm/pipeline/advanced/chart/pipes/config/boxplot.js.map +1 -1
  90. package/dist/esm/pipeline/advanced/chart/pipes/config/column.js.map +1 -1
  91. package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js.map +1 -1
  92. package/dist/esm/pipeline/advanced/chart/pipes/config/histogram.js.map +1 -1
  93. package/dist/esm/pipeline/advanced/chart/pipes/config/index.js.map +1 -1
  94. package/dist/esm/pipeline/advanced/chart/pipes/config/line.js.map +1 -1
  95. package/dist/esm/pipeline/advanced/chart/pipes/config/pie.js.map +1 -1
  96. package/dist/esm/pipeline/advanced/chart/pipes/config/scatter.js.map +1 -1
  97. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js.map +1 -1
  98. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasureId.js.map +1 -1
  99. package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js.map +1 -1
  100. package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js.map +1 -1
  101. package/dist/esm/pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.js.map +1 -1
  102. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +8 -7
  103. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
  104. package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js +8 -7
  105. package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js.map +1 -1
  106. package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.d.ts +7 -0
  107. package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js +9 -1
  108. package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js.map +1 -1
  109. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +8 -7
  110. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
  111. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +16 -7
  112. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
  113. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +7 -6
  114. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
  115. package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js.map +1 -1
  116. package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js.map +1 -1
  117. package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js +8 -6
  118. package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js.map +1 -1
  119. package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
  120. package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js +8 -6
  121. package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js.map +1 -1
  122. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +8 -7
  123. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
  124. package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
  125. package/dist/esm/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js.map +1 -1
  126. package/dist/esm/pipeline/advanced/chart/pipes/markStyle/markStyle.js.map +1 -1
  127. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js.map +1 -1
  128. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js +48 -23
  129. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js.map +1 -1
  130. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js +47 -23
  131. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js.map +1 -1
  132. package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js.map +1 -1
  133. package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js.map +1 -1
  134. package/dist/esm/pipeline/advanced/chart/pipes/pivot/pivotAdapter.js.map +1 -1
  135. package/dist/esm/pipeline/advanced/chart/pipes/regressionLine/regressionLine.js.map +1 -1
  136. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map +1 -1
  137. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +2 -2
  138. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
  139. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
  140. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map +1 -1
  141. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
  142. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js.map +1 -1
  143. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +1 -1
  144. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
  145. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
  146. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js.map +1 -1
  147. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +1 -1
  148. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
  149. package/dist/esm/pipeline/advanced/chart/pipes/theme/theme.js.map +1 -1
  150. package/dist/esm/pipeline/advanced/table/pipeline/pivotTable.js.map +1 -1
  151. package/dist/esm/pipeline/advanced/table/pipeline/table.js.map +1 -1
  152. package/dist/esm/pipeline/advanced/table/pipes/cellStyle/cellStyle.js.map +1 -1
  153. package/dist/esm/pipeline/advanced/table/pipes/config/pivotTableConfig.js.map +1 -1
  154. package/dist/esm/pipeline/advanced/table/pipes/config/tableConfig.js.map +1 -1
  155. package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js.map +1 -1
  156. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js.map +1 -1
  157. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js.map +1 -1
  158. package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js.map +1 -1
  159. package/dist/esm/pipeline/advanced/table/pipes/init/initAdvancedVSeed.js.map +1 -1
  160. package/dist/esm/pipeline/advanced/table/pipes/records/records.js.map +1 -1
  161. package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js.map +1 -1
  162. package/dist/esm/pipeline/spec/chart/pipeline/area.js.map +1 -1
  163. package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js.map +1 -1
  164. package/dist/esm/pipeline/spec/chart/pipeline/bar.js.map +1 -1
  165. package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js.map +1 -1
  166. package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js.map +1 -1
  167. package/dist/esm/pipeline/spec/chart/pipeline/boxplot.js.map +1 -1
  168. package/dist/esm/pipeline/spec/chart/pipeline/column.js.map +1 -1
  169. package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js.map +1 -1
  170. package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js.map +1 -1
  171. package/dist/esm/pipeline/spec/chart/pipeline/donut.js.map +1 -1
  172. package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js.map +1 -1
  173. package/dist/esm/pipeline/spec/chart/pipeline/funnel.js.map +1 -1
  174. package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js.map +1 -1
  175. package/dist/esm/pipeline/spec/chart/pipeline/histogram.js.map +1 -1
  176. package/dist/esm/pipeline/spec/chart/pipeline/line.js.map +1 -1
  177. package/dist/esm/pipeline/spec/chart/pipeline/pie.js.map +1 -1
  178. package/dist/esm/pipeline/spec/chart/pipeline/radar.js.map +1 -1
  179. package/dist/esm/pipeline/spec/chart/pipeline/rose.js.map +1 -1
  180. package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js.map +1 -1
  181. package/dist/esm/pipeline/spec/chart/pipeline/scatter.js.map +1 -1
  182. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationArea.js.map +1 -1
  183. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationAreaBand.js.map +1 -1
  184. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationHorizontalLine.js.map +1 -1
  185. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPoint.js.map +1 -1
  186. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointCommon.js.map +1 -1
  187. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js.map +1 -1
  188. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfHistogram.js.map +1 -1
  189. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationVerticalLine.js.map +1 -1
  190. package/dist/esm/pipeline/spec/chart/pipes/annotation/splitLine.js.map +1 -1
  191. package/dist/esm/pipeline/spec/chart/pipes/annotation/utils.js.map +1 -1
  192. package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js.map +1 -1
  193. package/dist/esm/pipeline/spec/chart/pipes/axes/format/linearFormat.js.map +1 -1
  194. package/dist/esm/pipeline/spec/chart/pipes/axes/heatmapBandAxis.js.map +1 -1
  195. package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js.map +1 -1
  196. package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js.map +1 -1
  197. package/dist/esm/pipeline/spec/chart/pipes/axes/radarAngle.js.map +1 -1
  198. package/dist/esm/pipeline/spec/chart/pipes/axes/radarRadius.js.map +1 -1
  199. package/dist/esm/pipeline/spec/chart/pipes/axes/radius.js.map +1 -1
  200. package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js.map +1 -1
  201. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
  202. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
  203. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
  204. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
  205. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
  206. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
  207. package/dist/esm/pipeline/spec/chart/pipes/backgroundColor/background.js.map +1 -1
  208. package/dist/esm/pipeline/spec/chart/pipes/barWidth/barGapInGroup.js.map +1 -1
  209. package/dist/esm/pipeline/spec/chart/pipes/barWidth/barMaxWidth.js.map +1 -1
  210. package/dist/esm/pipeline/spec/chart/pipes/boxWidth/boxGapInGroup.js.map +1 -1
  211. package/dist/esm/pipeline/spec/chart/pipes/boxWidth/boxMaxWidth.js.map +1 -1
  212. package/dist/esm/pipeline/spec/chart/pipes/color/color.js.map +1 -1
  213. package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js.map +1 -1
  214. package/dist/esm/pipeline/spec/chart/pipes/color/colorAreaStyleFill.js.map +1 -1
  215. package/dist/esm/pipeline/spec/chart/pipes/color/colorBarStyleFill.js.map +1 -1
  216. package/dist/esm/pipeline/spec/chart/pipes/color/colorBoxPlotStyleFill.js.map +1 -1
  217. package/dist/esm/pipeline/spec/chart/pipes/color/colorCellStyleFill.js.map +1 -1
  218. package/dist/esm/pipeline/spec/chart/pipes/color/colorFunnelStyleFill.js.map +1 -1
  219. package/dist/esm/pipeline/spec/chart/pipes/color/colorLineStyleFill.js.map +1 -1
  220. package/dist/esm/pipeline/spec/chart/pipes/color/colorPieStyleFill.js.map +1 -1
  221. package/dist/esm/pipeline/spec/chart/pipes/color/colorPointStyleFill.js.map +1 -1
  222. package/dist/esm/pipeline/spec/chart/pipes/color/colorRoseStyleFill.js.map +1 -1
  223. package/dist/esm/pipeline/spec/chart/pipes/color/linearColor.js.map +1 -1
  224. package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js.map +1 -1
  225. package/dist/esm/pipeline/spec/chart/pipes/crosshair/histogramCrosshair.js.map +1 -1
  226. package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairLine.js.map +1 -1
  227. package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairRect.js.map +1 -1
  228. package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairLine.js.map +1 -1
  229. package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairRect.js.map +1 -1
  230. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetBoxplot.js.map +1 -1
  231. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js.map +1 -1
  232. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHistogram.js.map +1 -1
  233. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetPivot.js.map +1 -1
  234. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetScatter.js.map +1 -1
  235. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetXY.js.map +1 -1
  236. package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetYX.js.map +1 -1
  237. package/dist/esm/pipeline/spec/chart/pipes/dataset/progressive.js.map +1 -1
  238. package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js.map +1 -1
  239. package/dist/esm/pipeline/spec/chart/pipes/init/area.js.map +1 -1
  240. package/dist/esm/pipeline/spec/chart/pipes/init/bar.js.map +1 -1
  241. package/dist/esm/pipeline/spec/chart/pipes/init/barParallel.js.map +1 -1
  242. package/dist/esm/pipeline/spec/chart/pipes/init/boxplot.js.map +1 -1
  243. package/dist/esm/pipeline/spec/chart/pipes/init/column.js.map +1 -1
  244. package/dist/esm/pipeline/spec/chart/pipes/init/columnParallel.js.map +1 -1
  245. package/dist/esm/pipeline/spec/chart/pipes/init/donut.js.map +1 -1
  246. package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js.map +1 -1
  247. package/dist/esm/pipeline/spec/chart/pipes/init/funnel.js.map +1 -1
  248. package/dist/esm/pipeline/spec/chart/pipes/init/heatmap.js.map +1 -1
  249. package/dist/esm/pipeline/spec/chart/pipes/init/histogram.js.map +1 -1
  250. package/dist/esm/pipeline/spec/chart/pipes/init/line.js.map +1 -1
  251. package/dist/esm/pipeline/spec/chart/pipes/init/pie.js.map +1 -1
  252. package/dist/esm/pipeline/spec/chart/pipes/init/pivot.js.map +1 -1
  253. package/dist/esm/pipeline/spec/chart/pipes/init/radar.js.map +1 -1
  254. package/dist/esm/pipeline/spec/chart/pipes/init/rose.js.map +1 -1
  255. package/dist/esm/pipeline/spec/chart/pipes/init/roseParallel.js.map +1 -1
  256. package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js.map +1 -1
  257. package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
  258. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js.map +1 -1
  259. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js.map +1 -1
  260. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js.map +1 -1
  261. package/dist/esm/pipeline/spec/chart/pipes/legend/boxLegend.js.map +1 -1
  262. package/dist/esm/pipeline/spec/chart/pipes/legend/colorLegend.js.map +1 -1
  263. package/dist/esm/pipeline/spec/chart/pipes/legend/discreteLegend.js.map +1 -1
  264. package/dist/esm/pipeline/spec/chart/pipes/legend/heatmapColorLegend.js.map +1 -1
  265. package/dist/esm/pipeline/spec/chart/pipes/legend/pivotColorLegend.js.map +1 -1
  266. package/dist/esm/pipeline/spec/chart/pipes/legend/pivotDiscreteLegend.js.map +1 -1
  267. package/dist/esm/pipeline/spec/chart/pipes/markStyle/areaStyle.js.map +1 -1
  268. package/dist/esm/pipeline/spec/chart/pipes/markStyle/barStyle.js.map +1 -1
  269. package/dist/esm/pipeline/spec/chart/pipes/markStyle/boxPlotStyle.js +5 -1
  270. package/dist/esm/pipeline/spec/chart/pipes/markStyle/boxPlotStyle.js.map +1 -1
  271. package/dist/esm/pipeline/spec/chart/pipes/markStyle/cellStyle.js.map +1 -1
  272. package/dist/esm/pipeline/spec/chart/pipes/markStyle/curve/curve.js.map +1 -1
  273. package/dist/esm/pipeline/spec/chart/pipes/markStyle/funnelStyle.js.map +1 -1
  274. package/dist/esm/pipeline/spec/chart/pipes/markStyle/funnelTransformStyle.js.map +1 -1
  275. package/dist/esm/pipeline/spec/chart/pipes/markStyle/lineStyle.js.map +1 -1
  276. package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js +3 -1
  277. package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js.map +1 -1
  278. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pieStyle.js.map +1 -1
  279. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointState.js.map +1 -1
  280. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointStyle.js.map +1 -1
  281. package/dist/esm/pipeline/spec/chart/pipes/markStyle/roseStyle.js.map +1 -1
  282. package/dist/esm/pipeline/spec/chart/pipes/percent/percent.js.map +1 -1
  283. package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/areaStyleFilter.js.map +1 -1
  284. package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/barStyleFilter.js.map +1 -1
  285. package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/lineStyleFilter.js.map +1 -1
  286. package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/pointStyleFilter.js.map +1 -1
  287. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/dimensionLinkage.js.map +1 -1
  288. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAdapter.js.map +1 -1
  289. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAxisStyle.js +3 -1
  290. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAxisStyle.js.map +1 -1
  291. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotColumnDimensions.js.map +1 -1
  292. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotGridStyle.js.map +1 -1
  293. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotHideIndicatorName.js.map +1 -1
  294. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js.map +1 -1
  295. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotRowDimensions.js.map +1 -1
  296. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotTitle.js.map +1 -1
  297. package/dist/esm/pipeline/spec/chart/pipes/region/addRegionPadding.js.map +1 -1
  298. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/columnRegressionLine.js +6 -1
  299. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/columnRegressionLine.js.map +1 -1
  300. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/common.js.map +1 -1
  301. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/ecdfRegressionLine.js.map +1 -1
  302. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/kdeRegressionLine.js.map +1 -1
  303. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/linearRegressionLine.js +5 -1
  304. package/dist/esm/pipeline/spec/chart/pipes/regressionLine/linearRegressionLine.js.map +1 -1
  305. package/dist/esm/pipeline/spec/chart/pipes/series/series.js.map +1 -1
  306. package/dist/esm/pipeline/spec/chart/pipes/size/scatterSize.js.map +1 -1
  307. package/dist/esm/pipeline/spec/chart/pipes/stack/stack.js.map +1 -1
  308. package/dist/esm/pipeline/spec/chart/pipes/stack/stackCornerRadius.js.map +1 -1
  309. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
  310. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +35 -4
  311. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
  312. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
  313. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipElement.js.map +1 -1
  314. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js.map +1 -1
  315. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js.map +1 -1
  316. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js.map +1 -1
  317. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipStyle.js.map +1 -1
  318. package/dist/esm/pipeline/spec/chart/utils/histogram.js.map +1 -1
  319. package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js +2 -2
  320. package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js.map +1 -1
  321. package/dist/esm/pipeline/spec/table/pipeline/table.js +2 -2
  322. package/dist/esm/pipeline/spec/table/pipeline/table.js.map +1 -1
  323. package/dist/esm/pipeline/spec/table/pipes/cellStyle/common.js.map +1 -1
  324. package/dist/esm/pipeline/spec/table/pipes/cellStyle/pivot.js +16 -4
  325. package/dist/esm/pipeline/spec/table/pipes/cellStyle/pivot.js.map +1 -1
  326. package/dist/esm/pipeline/spec/table/pipes/cellStyle/table.js +16 -4
  327. package/dist/esm/pipeline/spec/table/pipes/cellStyle/table.js.map +1 -1
  328. package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js.map +1 -1
  329. package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js.map +1 -1
  330. package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js.map +1 -1
  331. package/dist/esm/pipeline/spec/table/pipes/corner/titleOnDimension.js.map +1 -1
  332. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotDataConfig.js.map +1 -1
  333. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js.map +1 -1
  334. package/dist/esm/pipeline/spec/table/pipes/init/pivotTable.js.map +1 -1
  335. package/dist/esm/pipeline/spec/table/pipes/init/table.js.map +1 -1
  336. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
  337. package/dist/esm/pipeline/spec/table/pipes/theme/bodyStyle.js.map +1 -1
  338. package/dist/esm/pipeline/spec/table/pipes/theme/cornerHeaderStyle.js.map +1 -1
  339. package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.d.ts +1 -1
  340. package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.js +6 -2
  341. package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.js.map +1 -1
  342. package/dist/esm/pipeline/spec/table/pipes/theme/headerStyle.js.map +1 -1
  343. package/dist/esm/pipeline/spec/table/pipes/theme/rowHeaderStyle.js.map +1 -1
  344. package/dist/esm/pipeline/spec/table/pipes/theme/scrollStyle.js.map +1 -1
  345. package/dist/esm/pipeline/spec/table/pipes/theme/selectionStyle.js.map +1 -1
  346. package/dist/esm/pipeline/utils/boxplot.js.map +1 -1
  347. package/dist/esm/pipeline/utils/chatType.js +2 -2
  348. package/dist/esm/pipeline/utils/chatType.js.map +1 -1
  349. package/dist/esm/pipeline/utils/constant.js.map +1 -1
  350. package/dist/esm/pipeline/utils/dimensions/delete.js.map +1 -1
  351. package/dist/esm/pipeline/utils/dimensions/typeGuard.js.map +1 -1
  352. package/dist/esm/pipeline/utils/format/createFormatter.js.map +1 -1
  353. package/dist/esm/pipeline/utils/format/createFormatterByMeasure.js.map +1 -1
  354. package/dist/esm/pipeline/utils/format/createNumFormatter.js.map +1 -1
  355. package/dist/esm/pipeline/utils/measures/delete.js.map +1 -1
  356. package/dist/esm/pipeline/utils/measures/depth.js.map +1 -1
  357. package/dist/esm/pipeline/utils/measures/find.js.map +1 -1
  358. package/dist/esm/pipeline/utils/measures/typeGuard.d.ts +1 -0
  359. package/dist/esm/pipeline/utils/measures/typeGuard.js +8 -1
  360. package/dist/esm/pipeline/utils/measures/typeGuard.js.map +1 -1
  361. package/dist/esm/pipeline/utils/pipeline.js.map +1 -1
  362. package/dist/esm/pipeline/utils/replaceNullToUndefined.js.map +1 -1
  363. package/dist/esm/pipeline/utils/tree/traverse.js.map +1 -1
  364. package/dist/esm/pipeline/utils/valid/checkVSeed.js.map +1 -1
  365. package/dist/esm/theme/common/annotaion.js.map +1 -1
  366. package/dist/esm/theme/common/axes.js.map +1 -1
  367. package/dist/esm/theme/common/boxPlot.js +15 -4
  368. package/dist/esm/theme/common/boxPlot.js.map +1 -1
  369. package/dist/esm/theme/common/color.js.map +1 -1
  370. package/dist/esm/theme/common/crosshair.js.map +1 -1
  371. package/dist/esm/theme/common/funnelTransform.js.map +1 -1
  372. package/dist/esm/theme/common/heatmapCell.js.map +1 -1
  373. package/dist/esm/theme/common/label.js.map +1 -1
  374. package/dist/esm/theme/common/legend.js.map +1 -1
  375. package/dist/esm/theme/common/regressionLine.js.map +1 -1
  376. package/dist/esm/theme/common/table.js.map +1 -1
  377. package/dist/esm/theme/common/tooltip.js.map +1 -1
  378. package/dist/esm/theme/dark/dark.js.map +1 -1
  379. package/dist/esm/theme/light/light.js.map +1 -1
  380. package/dist/esm/types/advancedVSeed.d.ts +236 -0
  381. package/dist/esm/types/advancedVSeed.js.map +1 -1
  382. package/dist/esm/types/builder/builder.js.map +1 -1
  383. package/dist/esm/types/chartType/area/zArea.js.map +1 -1
  384. package/dist/esm/types/chartType/areaPercent/zAreaPercent.js.map +1 -1
  385. package/dist/esm/types/chartType/bar/zBar.js.map +1 -1
  386. package/dist/esm/types/chartType/barParallel/zBarParallel.js.map +1 -1
  387. package/dist/esm/types/chartType/barPercent/zBarPercent.js.map +1 -1
  388. package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +6 -0
  389. package/dist/esm/types/chartType/boxPlot/zBoxPlot.js.map +1 -1
  390. package/dist/esm/types/chartType/column/zColumn.d.ts +8 -0
  391. package/dist/esm/types/chartType/column/zColumn.js.map +1 -1
  392. package/dist/esm/types/chartType/columnParallel/zColumnParallel.js.map +1 -1
  393. package/dist/esm/types/chartType/columnPercent/zColumnPercent.js.map +1 -1
  394. package/dist/esm/types/chartType/donut/zDonut.js.map +1 -1
  395. package/dist/esm/types/chartType/dualAxis/zDualAxis.js.map +1 -1
  396. package/dist/esm/types/chartType/funnel/zFunnel.js.map +1 -1
  397. package/dist/esm/types/chartType/heatmap/zHeatmap.js.map +1 -1
  398. package/dist/esm/types/chartType/histogram/zHistogram.js.map +1 -1
  399. package/dist/esm/types/chartType/line/zLine.js.map +1 -1
  400. package/dist/esm/types/chartType/pie/zPie.js.map +1 -1
  401. package/dist/esm/types/chartType/pivotTable/zPivotTable.js.map +1 -1
  402. package/dist/esm/types/chartType/radar/zRadar.js.map +1 -1
  403. package/dist/esm/types/chartType/rose/zRose.js.map +1 -1
  404. package/dist/esm/types/chartType/roseParallel/zRoseParallel.js.map +1 -1
  405. package/dist/esm/types/chartType/scatter/zScatter.d.ts +32 -0
  406. package/dist/esm/types/chartType/scatter/zScatter.js.map +1 -1
  407. package/dist/esm/types/chartType/table/zTable.js.map +1 -1
  408. package/dist/esm/types/dataSelector/selector.js.map +1 -1
  409. package/dist/esm/types/i18n/i18n.js.map +1 -1
  410. package/dist/esm/types/properties/analysis/analysis.js.map +1 -1
  411. package/dist/esm/types/properties/analysis/sort.js.map +1 -1
  412. package/dist/esm/types/properties/analysis/sortLegend.js.map +1 -1
  413. package/dist/esm/types/properties/annotation/annotation.js.map +1 -1
  414. package/dist/esm/types/properties/annotation/zAnnotationArea.js.map +1 -1
  415. package/dist/esm/types/properties/annotation/zAnnotationHorizontalLine.js.map +1 -1
  416. package/dist/esm/types/properties/annotation/zAnnotationPoint.js.map +1 -1
  417. package/dist/esm/types/properties/annotation/zAnnotationVerticalLine.js.map +1 -1
  418. package/dist/esm/types/properties/cellStyle/bodyCellStyle.js.map +1 -1
  419. package/dist/esm/types/properties/cellStyle/cellStyle.js.map +1 -1
  420. package/dist/esm/types/properties/chartType/chartType.js.map +1 -1
  421. package/dist/esm/types/properties/chartType/dualChartType.js.map +1 -1
  422. package/dist/esm/types/properties/config/annotation/zAnnotaion.js.map +1 -1
  423. package/dist/esm/types/properties/config/area.js.map +1 -1
  424. package/dist/esm/types/properties/config/axes/zBandAxis.js.map +1 -1
  425. package/dist/esm/types/properties/config/axes/zLinearAxis.js.map +1 -1
  426. package/dist/esm/types/properties/config/backgroundColor/backgroundColor.js.map +1 -1
  427. package/dist/esm/types/properties/config/bar.js.map +1 -1
  428. package/dist/esm/types/properties/config/barWidth/index.js.map +1 -1
  429. package/dist/esm/types/properties/config/boxWidth/zBoxWidth.js.map +1 -1
  430. package/dist/esm/types/properties/config/boxplot.d.ts +3 -0
  431. package/dist/esm/types/properties/config/boxplot.js.map +1 -1
  432. package/dist/esm/types/properties/config/color/color.js.map +1 -1
  433. package/dist/esm/types/properties/config/column.d.ts +32 -0
  434. package/dist/esm/types/properties/config/column.js.map +1 -1
  435. package/dist/esm/types/properties/config/config.d.ts +99 -0
  436. package/dist/esm/types/properties/config/config.js.map +1 -1
  437. package/dist/esm/types/properties/config/crosshair/zCrosshair.js.map +1 -1
  438. package/dist/esm/types/properties/config/dimensionLinkage/dimensionLinkage.js.map +1 -1
  439. package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
  440. package/dist/esm/types/properties/config/funnel.js.map +1 -1
  441. package/dist/esm/types/properties/config/funnelTransform/zFunnelTransform.js.map +1 -1
  442. package/dist/esm/types/properties/config/heatmap/zHeatmap.js.map +1 -1
  443. package/dist/esm/types/properties/config/heatmap.js.map +1 -1
  444. package/dist/esm/types/properties/config/histogram.d.ts +32 -0
  445. package/dist/esm/types/properties/config/histogram.js.map +1 -1
  446. package/dist/esm/types/properties/config/label/zLabel.js.map +1 -1
  447. package/dist/esm/types/properties/config/label/zPieLabel.js.map +1 -1
  448. package/dist/esm/types/properties/config/legend/legend.js.map +1 -1
  449. package/dist/esm/types/properties/config/line.js.map +1 -1
  450. package/dist/esm/types/properties/config/pie.js.map +1 -1
  451. package/dist/esm/types/properties/config/pivotGrid/pivotGrid.js.map +1 -1
  452. package/dist/esm/types/properties/config/pivotTable.js.map +1 -1
  453. package/dist/esm/types/properties/config/rose.js.map +1 -1
  454. package/dist/esm/types/properties/config/scatter.d.ts +32 -0
  455. package/dist/esm/types/properties/config/scatter.js.map +1 -1
  456. package/dist/esm/types/properties/config/stackCornerRadius/stackCornerRadius.js.map +1 -1
  457. package/dist/esm/types/properties/config/table.js.map +1 -1
  458. package/dist/esm/types/properties/config/tooltip/tooltip.js.map +1 -1
  459. package/dist/esm/types/properties/config/whiskers/index.js.map +1 -1
  460. package/dist/esm/types/properties/dataset/dataset.js.map +1 -1
  461. package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js.map +1 -1
  462. package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
  463. package/dist/esm/types/properties/encoding/zDimensionEncoding.js.map +1 -1
  464. package/dist/esm/types/properties/encoding/zEncoding.js.map +1 -1
  465. package/dist/esm/types/properties/encoding/zMeasureEncoding.js.map +1 -1
  466. package/dist/esm/types/properties/format/numFormat.js.map +1 -1
  467. package/dist/esm/types/properties/markStyle/barStyle.js.map +1 -1
  468. package/dist/esm/types/properties/markStyle/boxPlotStyle.d.ts +15 -0
  469. package/dist/esm/types/properties/markStyle/boxPlotStyle.js +4 -1
  470. package/dist/esm/types/properties/markStyle/boxPlotStyle.js.map +1 -1
  471. package/dist/esm/types/properties/markStyle/lineStyle.js.map +1 -1
  472. package/dist/esm/types/properties/markStyle/markStyle.d.ts +6 -0
  473. package/dist/esm/types/properties/markStyle/markStyle.js.map +1 -1
  474. package/dist/esm/types/properties/markStyle/outlierStyle.js.map +1 -1
  475. package/dist/esm/types/properties/markStyle/pointStyle.js.map +1 -1
  476. package/dist/esm/types/properties/markStyle/zAreaStyle.js.map +1 -1
  477. package/dist/esm/types/properties/measures/zDualMeasures.js.map +1 -1
  478. package/dist/esm/types/properties/measures/zMeasures.js.map +1 -1
  479. package/dist/esm/types/properties/measures/zScatterMeasures.js.map +1 -1
  480. package/dist/esm/types/properties/regressionLine/linearRegressionLine.d.ts +20 -0
  481. package/dist/esm/types/properties/regressionLine/zRegressionLine.d.ts +48 -0
  482. package/dist/esm/types/properties/regressionLine/zRegressionLine.js +5 -1
  483. package/dist/esm/types/properties/regressionLine/zRegressionLine.js.map +1 -1
  484. package/dist/esm/types/properties/theme/customTheme.d.ts +198 -0
  485. package/dist/esm/types/properties/theme/customTheme.js.map +1 -1
  486. package/dist/esm/types/properties/theme/theme.js.map +1 -1
  487. package/dist/esm/types/zVseed.d.ts +46 -0
  488. package/dist/esm/types/zVseed.js.map +1 -1
  489. package/dist/umd/index.js +826 -655
  490. package/dist/umd/index.js.map +1 -1
  491. package/package.json +6 -5
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/config/index.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/config/index.ts"],"sourcesContent":["import { lineConfig } from './line'\nimport { columnConfig } from './column'\nimport { pieConfig } from './pie'\nimport { dualAxisConfig } from './dualAxis'\nimport { scatterConfig } from './scatter'\nimport { histogramConfig } from './histogram'\nimport { boxplotConfig } from './boxplot'\n\nexport { lineConfig, columnConfig, pieConfig, dualAxisConfig, scatterConfig, histogramConfig, boxplotConfig }\n\n// area\nexport const areaConfig = lineConfig\nexport const areaPercentConfig = lineConfig\n\n// bar\nexport const barConfig = columnConfig\nexport const barParallelConfig = columnConfig\nexport const barPercentConfig = columnConfig\n\n// column\nexport const columnParallelConfig = columnConfig\nexport const columnPercentConfig = columnConfig\n\n// donut, rose\nexport const donutConfig = pieConfig\nexport const roseConfig = pieConfig\nexport const roseParallelConfig = pieConfig\nexport const radarConfig = pieConfig\n\n// funnel, heatmap\nexport const funnelConfig = pieConfig\nexport const heatmapConfig = pieConfig\n"],"names":["areaConfig","lineConfig","areaPercentConfig","barConfig","columnConfig","barParallelConfig","barPercentConfig","columnParallelConfig","columnPercentConfig","donutConfig","pieConfig","roseConfig","roseParallelConfig","radarConfig","funnelConfig","heatmapConfig"],"mappings":";;;;;;;AAWO,MAAMA,aAAaC;AACnB,MAAMC,oBAAoBD;AAG1B,MAAME,YAAYC;AAClB,MAAMC,oBAAoBD;AAC1B,MAAME,mBAAmBF;AAGzB,MAAMG,uBAAuBH;AAC7B,MAAMI,sBAAsBJ;AAG5B,MAAMK,cAAcC;AACpB,MAAMC,aAAaD;AACnB,MAAME,qBAAqBF;AAC3B,MAAMG,cAAcH;AAGpB,MAAMI,eAAeJ;AACrB,MAAMK,gBAAgBL"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/config/index.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/index.ts"],"sourcesContent":["import { lineConfig } from './line'\nimport { columnConfig } from './column'\nimport { pieConfig } from './pie'\nimport { dualAxisConfig } from './dualAxis'\nimport { scatterConfig } from './scatter'\nimport { histogramConfig } from './histogram'\nimport { boxplotConfig } from './boxplot'\n\nexport { lineConfig, columnConfig, pieConfig, dualAxisConfig, scatterConfig, histogramConfig, boxplotConfig }\n\n// area\nexport const areaConfig = lineConfig\nexport const areaPercentConfig = lineConfig\n\n// bar\nexport const barConfig = columnConfig\nexport const barParallelConfig = columnConfig\nexport const barPercentConfig = columnConfig\n\n// column\nexport const columnParallelConfig = columnConfig\nexport const columnPercentConfig = columnConfig\n\n// donut, rose\nexport const donutConfig = pieConfig\nexport const roseConfig = pieConfig\nexport const roseParallelConfig = pieConfig\nexport const radarConfig = pieConfig\n\n// funnel, heatmap\nexport const funnelConfig = pieConfig\nexport const heatmapConfig = pieConfig\n"],"names":["areaConfig","lineConfig","areaPercentConfig","barConfig","columnConfig","barParallelConfig","barPercentConfig","columnParallelConfig","columnPercentConfig","donutConfig","pieConfig","roseConfig","roseParallelConfig","radarConfig","funnelConfig","heatmapConfig"],"mappings":";;;;;;;AAWO,MAAMA,aAAaC;AACnB,MAAMC,oBAAoBD;AAG1B,MAAME,YAAYC;AAClB,MAAMC,oBAAoBD;AAC1B,MAAME,mBAAmBF;AAGzB,MAAMG,uBAAuBH;AAC7B,MAAMI,sBAAsBJ;AAG5B,MAAMK,cAAcC;AACpB,MAAMC,aAAaD;AACnB,MAAME,qBAAqBF;AAC3B,MAAMG,cAAcH;AAGpB,MAAMI,eAAeJ;AACrB,MAAMK,gBAAgBL"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/config/line.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/config/line.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const lineConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairLine',\n 'dimensionLinkage',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["lineConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,aAA2B,CAACC,eAAeC;IACtD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/config/line.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/line.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const lineConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairLine',\n 'dimensionLinkage',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["lineConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,aAA2B,CAACC,eAAeC;IACtD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/config/pie.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/config/pie.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const pieConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, ['backgroundColor', 'color', 'label', 'legend', 'tooltip']) as Config['pie']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["pieConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,YAA0B,CAACC,eAAeC;IACrD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAAC;QAAmB;QAAS;QAAS;QAAU;KAAU;IAE3F,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/config/pie.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/pie.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const pieConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, ['backgroundColor', 'color', 'label', 'legend', 'tooltip']) as Config['pie']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["pieConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,YAA0B,CAACC,eAAeC;IACrD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAAC;QAAmB;QAAS;QAAS;QAAU;KAAU;IAE3F,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/config/scatter.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/config/scatter.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const scatterConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'sizeRange',\n 'size',\n 'crosshairLine',\n\n 'dimensionLinkage',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["scatterConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,gBAA8B,CAACC,eAAeC;IACzD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QAEA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/config/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/scatter.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const scatterConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'sizeRange',\n 'size',\n 'crosshairLine',\n\n 'dimensionLinkage',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["scatterConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,gBAA8B,CAACC,eAAeC;IACzD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QAEA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultDimensions.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures } 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 return {\n ...result,\n dimensions: clone(dimensions.map((dim) => ({ ...dim, alias: dim.alias || dim.id }))),\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","clone","dim","measures","findAllMeasures","top100dataset","sample","prev","cur","newDimensions","Object","key","item","undefined","measure"],"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,GACpC,OAAO;QACL,GAAGF,MAAM;QACT,YAAYI,MAAMF,WAAW,GAAG,CAAC,CAACG,MAAS;gBAAE,GAAGA,GAAG;gBAAE,OAAOA,IAAI,KAAK,IAAIA,IAAI,EAAE;YAAC;IAClF;IAGF,MAAMC,WAAWC,gBAAgBT,cAAc,QAAQ;IAEvD,MAAMU,gBAAgBL,QAAQ,KAAK,CAAC,GAAG;IAEvC,MAAMM,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,CAACT,MAAS;YACb,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGL,MAAM;QACT,YAAYY;IACd;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultDimensions.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures } 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 return {\n ...result,\n dimensions: clone(dimensions.map((dim) => ({ ...dim, alias: dim.alias || dim.id }))),\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","clone","dim","measures","findAllMeasures","top100dataset","sample","prev","cur","newDimensions","Object","key","item","undefined","measure"],"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,GACpC,OAAO;QACL,GAAGF,MAAM;QACT,YAAYI,MAAMF,WAAW,GAAG,CAAC,CAACG,MAAS;gBAAE,GAAGA,GAAG;gBAAE,OAAOA,IAAI,KAAK,IAAIA,IAAI,EAAE;YAAC;IAClF;IAGF,MAAMC,WAAWC,gBAAgBT,cAAc,QAAQ;IAEvD,MAAMU,gBAAgBL,QAAQ,KAAK,CAAC,GAAG;IAEvC,MAAMM,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,CAACT,MAAS;YACb,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGL,MAAM;QACT,YAAYY;IACd;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasureId.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/default/defaultMeasureId.ts"],"sourcesContent":["import { MeasureId } from 'src/dataReshape'\nimport { intl } from 'src/i18n'\nimport type { AdvancedPipe, Dimension } from 'src/types'\n\nexport const defaultMeasureId: AdvancedPipe = (advancedVSeed) => {\n const result = { ...advancedVSeed }\n\n const MeaIdDim: Dimension = {\n id: MeasureId,\n alias: intl.i18n`指标Id`,\n }\n\n // 如果没有指标Id维度,则默认添加指标Id维度\n if (!result.dimensions?.some((dim) => dim.id === MeasureId)) {\n result.dimensions?.push(MeaIdDim)\n }\n\n return result\n}\n"],"names":["defaultMeasureId","advancedVSeed","result","MeaIdDim","MeasureId","intl","dim"],"mappings":";;AAIO,MAAMA,mBAAiC,CAACC;IAC7C,MAAMC,SAAS;QAAE,GAAGD,aAAa;IAAC;IAElC,MAAME,WAAsB;QAC1B,IAAIC;QACJ,OAAOC,KAAK,IAAI,CAAC,IAAI,CAAC;IACxB;IAGA,IAAI,CAACH,OAAO,UAAU,EAAE,KAAK,CAACI,MAAQA,IAAI,EAAE,KAAKF,YAC/CF,OAAO,UAAU,EAAE,KAAKC;IAG1B,OAAOD;AACT"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasureId.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultMeasureId.ts"],"sourcesContent":["import { MeasureId } from 'src/dataReshape'\nimport { intl } from 'src/i18n'\nimport type { AdvancedPipe, Dimension } from 'src/types'\n\nexport const defaultMeasureId: AdvancedPipe = (advancedVSeed) => {\n const result = { ...advancedVSeed }\n\n const MeaIdDim: Dimension = {\n id: MeasureId,\n alias: intl.i18n`指标Id`,\n }\n\n // 如果没有指标Id维度,则默认添加指标Id维度\n if (!result.dimensions?.some((dim) => dim.id === MeasureId)) {\n result.dimensions?.push(MeaIdDim)\n }\n\n return result\n}\n"],"names":["defaultMeasureId","advancedVSeed","result","MeaIdDim","MeasureId","intl","dim"],"mappings":";;AAIO,MAAMA,mBAAiC,CAACC;IAC7C,MAAMC,SAAS;QAAE,GAAGD,aAAa;IAAC;IAElC,MAAME,WAAsB;QAC1B,IAAIC;QACJ,OAAOC,KAAK,IAAI,CAAC,IAAI,CAAC;IACxB;IAGA,IAAI,CAACH,OAAO,UAAU,EAAE,KAAK,CAACI,MAAQA,IAAI,EAAE,KAAKF,YAC/CF,OAAO,UAAU,EAAE,KAAKC;IAG1B,OAAOD;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasures.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport type { AdvancedPipe, Datum } from 'src/types'\nimport { preorderTraverse } from 'src/pipeline/utils'\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 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","top100dataset","sample","prev","cur","Object","key","item","undefined","measure"],"mappings":";;AAMO,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;YAChCA,KAAK,KAAK,GAAGA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAElC,OAAO;QACT;QACA,OAAO;YACL,GAAGR,aAAa;YAChB,UAAUK;QACZ;IACF;IAEA,MAAMI,gBAAgBL,QAAQ,KAAK,CAAC,GAAG;IACvC,MAAMM,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IACJ,MAAMb,kBAAkBc,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,GAAGjB,aAAa;QAChB,UAAUD;IACZ;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasures.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport type { AdvancedPipe, Datum } from 'src/types'\nimport { preorderTraverse } from 'src/pipeline/utils'\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 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","top100dataset","sample","prev","cur","Object","key","item","undefined","measure"],"mappings":";;AAMO,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;YAChCA,KAAK,KAAK,GAAGA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAElC,OAAO;QACT;QACA,OAAO;YACL,GAAGR,aAAa;YAChB,UAAUK;QACZ;IACF;IAEA,MAAMI,gBAAgBL,QAAQ,KAAK,CAAC,GAAG;IACvC,MAAMM,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IACJ,MAAMb,kBAAkBc,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,GAAGjB,aAAa;QAChB,UAAUD;IACZ;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { deleteDimensionTreeByCallback } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension } from 'src/types'\n\nexport const pickDimensionsForReshape: AdvancedPipe = (advancedVSeed) => {\n const deleteBy = (dimension: Dimension) => dimension.encoding === 'tooltip' || dimension.encoding === 'label'\n const reshapeDimensions = clone(advancedVSeed.dimensions)\n deleteDimensionTreeByCallback(reshapeDimensions, deleteBy)\n\n return {\n ...advancedVSeed,\n reshapeDimensions,\n }\n}\n"],"names":["pickDimensionsForReshape","advancedVSeed","deleteBy","dimension","reshapeDimensions","clone","deleteDimensionTreeByCallback"],"mappings":";;AAIO,MAAMA,2BAAyC,CAACC;IACrD,MAAMC,WAAW,CAACC,YAAyBA,AAAuB,cAAvBA,UAAU,QAAQ,IAAkBA,AAAuB,YAAvBA,UAAU,QAAQ;IACjG,MAAMC,oBAAoBC,MAAMJ,cAAc,UAAU;IACxDK,8BAA8BF,mBAAmBF;IAEjD,OAAO;QACL,GAAGD,aAAa;QAChBG;IACF;AACF"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { deleteDimensionTreeByCallback } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension } from 'src/types'\n\nexport const pickDimensionsForReshape: AdvancedPipe = (advancedVSeed) => {\n const deleteBy = (dimension: Dimension) => dimension.encoding === 'tooltip' || dimension.encoding === 'label'\n const reshapeDimensions = clone(advancedVSeed.dimensions)\n deleteDimensionTreeByCallback(reshapeDimensions, deleteBy)\n\n return {\n ...advancedVSeed,\n reshapeDimensions,\n }\n}\n"],"names":["pickDimensionsForReshape","advancedVSeed","deleteBy","dimension","reshapeDimensions","clone","deleteDimensionTreeByCallback"],"mappings":";;AAIO,MAAMA,2BAAyC,CAACC;IACrD,MAAMC,WAAW,CAACC,YAAyBA,AAAuB,cAAvBA,UAAU,QAAQ,IAAkBA,AAAuB,YAAvBA,UAAU,QAAQ;IACjG,MAAMC,oBAAoBC,MAAMJ,cAAc,UAAU;IACxDK,8BAA8BF,mBAAmBF;IAEjD,OAAO;QACL,GAAGD,aAAa;QAChBG;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.js","sources":["../../../../../../../../src/pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.ts"],"sourcesContent":["import type {\n AdvancedPipe,\n AdvancedPipeline,\n AdvancedPipelineContext,\n AdvancedVSeed,\n Dimension,\n Measure,\n} from 'src/types'\nimport { execPipeline } from 'src/pipeline/utils'\n\nexport const encodingAdapter = (\n noEncodingPipeline: AdvancedPipeline,\n hasEncodingPipeline: AdvancedPipeline,\n): AdvancedPipe => {\n return (advancedVSeed, context) => {\n const { dimensions = [], measures = [] } = advancedVSeed\n const hasDimensionEncoding = dimensions.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n\n const hasEncoding = hasDimensionEncoding || hasMeasureEncoding\n\n if (hasEncoding) {\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(hasEncodingPipeline, context, advancedVSeed)\n }\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(noEncodingPipeline, context, advancedVSeed)\n }\n}\n"],"names":["encodingAdapter","noEncodingPipeline","hasEncodingPipeline","advancedVSeed","context","dimensions","measures","hasDimensionEncoding","item","hasMeasureEncoding","hasEncoding","execPipeline"],"mappings":";AAUO,MAAMA,kBAAkB,CAC7BC,oBACAC,sBAEO,CAACC,eAAeC;QACrB,MAAM,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAE,GAAGH;QAC3C,MAAMI,uBAAuBF,WAAW,IAAI,CAAC,CAACG,OAAoBA,KAAK,QAAQ;QAC/E,MAAMC,qBAAqBH,SAAS,IAAI,CAAC,CAACE,OAAkBA,KAAK,QAAQ;QAEzE,MAAME,cAAcH,wBAAwBE;QAE5C,IAAIC,aACF,OAAOC,aAAqDT,qBAAqBE,SAASD;QAE5F,OAAOQ,aAAqDV,oBAAoBG,SAASD;IAC3F"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.ts"],"sourcesContent":["import type {\n AdvancedPipe,\n AdvancedPipeline,\n AdvancedPipelineContext,\n AdvancedVSeed,\n Dimension,\n Measure,\n} from 'src/types'\nimport { execPipeline } from 'src/pipeline/utils'\n\nexport const encodingAdapter = (\n noEncodingPipeline: AdvancedPipeline,\n hasEncodingPipeline: AdvancedPipeline,\n): AdvancedPipe => {\n return (advancedVSeed, context) => {\n const { dimensions = [], measures = [] } = advancedVSeed\n const hasDimensionEncoding = dimensions.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n\n const hasEncoding = hasDimensionEncoding || hasMeasureEncoding\n\n if (hasEncoding) {\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(hasEncodingPipeline, context, advancedVSeed)\n }\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(noEncodingPipeline, context, advancedVSeed)\n }\n}\n"],"names":["encodingAdapter","noEncodingPipeline","hasEncodingPipeline","advancedVSeed","context","dimensions","measures","hasDimensionEncoding","item","hasMeasureEncoding","hasEncoding","execPipeline"],"mappings":";AAUO,MAAMA,kBAAkB,CAC7BC,oBACAC,sBAEO,CAACC,eAAeC;QACrB,MAAM,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAE,GAAGH;QAC3C,MAAMI,uBAAuBF,WAAW,IAAI,CAAC,CAACG,OAAoBA,KAAK,QAAQ;QAC/E,MAAMC,qBAAqBH,SAAS,IAAI,CAAC,CAACE,OAAkBA,KAAK,QAAQ;QAEzE,MAAME,cAAcH,wBAAwBE;QAE5C,IAAIC,aACF,OAAOC,aAAqDT,qBAAqBE,SAASD;QAE5F,OAAOQ,aAAqDV,oBAAoBG,SAASD;IAC3F"}
@@ -1,12 +1,13 @@
1
1
  import { unique } from "remeda";
2
2
  import { MeasureId } from "../../../../../dataReshape/index.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { findAllMeasures, hasMultipleMeasureInSingleView } from "../../../../utils/index.js";
4
4
  import { addColorToEncoding } from "./color/index.js";
5
+ import { addDefaultColorEncoding } from "./color/addColorToEncoding.js";
5
6
  const defaultEncodingForBar = (advancedVSeed)=>{
6
7
  const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
7
8
  const measures = findAllMeasures(vseedMeasures);
8
9
  const encoding = {};
9
- generateDefaultDimensionEncoding(dimensions, encoding);
10
+ generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures));
10
11
  generateDefaultMeasureEncoding(measures, encoding);
11
12
  return {
12
13
  ...advancedVSeed,
@@ -19,8 +20,9 @@ const encodingForBar = (advancedVSeed)=>{
19
20
  const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
20
21
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
21
22
  const encoding = {};
22
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, measures.length > 1);
23
- else generateDefaultDimensionEncoding(dimensions, encoding);
23
+ const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures);
24
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, hasMulti);
25
+ else generateDefaultDimensionEncoding(dimensions, encoding, hasMulti);
24
26
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
25
27
  else generateDefaultMeasureEncoding(measures, encoding);
26
28
  return {
@@ -28,11 +30,10 @@ const encodingForBar = (advancedVSeed)=>{
28
30
  encoding
29
31
  };
30
32
  };
31
- const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
32
- const onlyMeasureId = 1 === dimensions.length && dimensions.find((item)=>item.id === MeasureId);
33
+ const generateDefaultDimensionEncoding = (dimensions, encoding, isMultiMeasure)=>{
33
34
  const uniqueDimIds = unique(dimensions.map((d)=>d.id));
34
35
  encoding.y = uniqueDimIds.slice(0, 1);
35
- encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1);
36
+ addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure);
36
37
  encoding.detail = encoding.color;
37
38
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureId);
38
39
  encoding.label = [];
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/bar.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/encoding/bar.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForBar: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForBar: 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, measures.length > 1)\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 onlyMeasureId = dimensions.length === 1 && dimensions.find((item) => item.id === MeasureId)\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.y = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1) // 第二个之后的维度用于颜色\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // y\n encoding.y = unique(dimensions.filter((item) => item.encoding === 'yAxis').map((item) => item.id))\n if (encoding.y.length === 0) {\n encoding.y = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.x = unique(measures.filter((item) => item.encoding === 'xAxis' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // x\n encoding.x = unique(measures.filter((item) => item.encoding === 'xAxis' || !item.encoding).map((item) => item.id))\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForBar","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForBar","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","onlyMeasureId","MeasureId","uniqueDimIds","unique","d","isMultiMeasure","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/bar.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/bar.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures, hasMultipleMeasureInSingleView } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\nimport { addDefaultColorEncoding } from './color/addColorToEncoding'\n\nexport const defaultEncodingForBar: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures))\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForBar: 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 const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures)\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding, hasMulti)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding, hasMulti)\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, isMultiMeasure: boolean) => {\n const uniqueDimIds: string[] = unique(dimensions.map((d) => d.id))\n encoding.y = uniqueDimIds.slice(0, 1) // 第一个维度放置于Y轴\n addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure)\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // y\n encoding.y = unique(dimensions.filter((item) => item.encoding === 'yAxis').map((item) => item.id))\n if (encoding.y.length === 0) {\n encoding.y = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.x = unique(measures.filter((item) => item.encoding === 'xAxis' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // x\n encoding.x = unique(measures.filter((item) => item.encoding === 'xAxis' || !item.encoding).map((item) => item.id))\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForBar","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","hasMultipleMeasureInSingleView","generateDefaultMeasureEncoding","encodingForBar","hasDimensionEncoding","item","hasMeasureEncoding","hasMulti","generateDimensionEncoding","generateMeasureEncoding","isMultiMeasure","uniqueDimIds","unique","d","addDefaultColorEncoding","MeasureId","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import { unique } from "remeda";
2
2
  import { MeasureId } from "../../../../../dataReshape/index.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { findAllMeasures, hasMultipleMeasureInSingleView } from "../../../../utils/index.js";
4
4
  import { addColorToEncoding } from "./color/index.js";
5
+ import { addDefaultColorEncoding } from "./color/addColorToEncoding.js";
5
6
  const defaultEncodingForBoxplot = (advancedVSeed)=>{
6
7
  const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
7
8
  const measures = findAllMeasures(vseedMeasures);
8
9
  const encoding = {};
9
- generateDefaultDimensionEncoding(dimensions, encoding);
10
+ generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures));
10
11
  generateDefaultMeasureEncoding(measures, encoding);
11
12
  return {
12
13
  ...advancedVSeed,
@@ -19,8 +20,9 @@ const encodingForBoxplot = (advancedVSeed)=>{
19
20
  const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
20
21
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
21
22
  const encoding = {};
22
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, measures.length > 1);
23
- else generateDefaultDimensionEncoding(dimensions, encoding);
23
+ const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures);
24
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, hasMulti);
25
+ else generateDefaultDimensionEncoding(dimensions, encoding, hasMulti);
24
26
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
25
27
  else generateDefaultMeasureEncoding(measures, encoding);
26
28
  if ((!encoding.value || encoding.value.length <= 1) && encoding.color && encoding.color.length > 1) encoding.color = encoding.color.filter((c)=>c !== MeasureId);
@@ -29,11 +31,10 @@ const encodingForBoxplot = (advancedVSeed)=>{
29
31
  encoding
30
32
  };
31
33
  };
32
- const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
33
- const onlyMeasureId = 1 === dimensions.length && dimensions.find((item)=>item.id === MeasureId);
34
+ const generateDefaultDimensionEncoding = (dimensions, encoding, isMultiMeasure)=>{
34
35
  const uniqueDimIds = unique(dimensions.map((d)=>d.id));
35
36
  encoding.x = uniqueDimIds.slice(0, 1);
36
- encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1);
37
+ addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure);
37
38
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureId);
38
39
  encoding.label = [];
39
40
  encoding.row = [];
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/boxplot.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/encoding/boxplot.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForBoxplot: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForBoxplot: 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, measures.length > 1)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n if ((!encoding.value || encoding.value.length <= 1) && encoding.color && encoding.color.length > 1) {\n encoding.color = encoding.color.filter((c) => c !== MeasureId)\n }\n\n return { ...advancedVSeed, encoding }\n}\n\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const onlyMeasureId = dimensions.length === 1 && dimensions.find((item) => item.id === MeasureId)\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1) // 第二个之后的维度用于颜色\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.value = unique(measures.filter((item) => item.encoding === 'value' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.value = unique(measures.filter((item) => item.encoding === 'value' || !item.encoding).map((item) => item.id))\n encoding.q1 = unique(measures.filter((item) => item.encoding === 'q1').map((item) => item.id))\n encoding.median = unique(measures.filter((item) => item.encoding === 'median').map((item) => item.id))\n encoding.q3 = unique(measures.filter((item) => item.encoding === 'q3').map((item) => item.id))\n encoding.min = unique(measures.filter((item) => item.encoding === 'min').map((item) => item.id))\n encoding.max = unique(measures.filter((item) => item.encoding === 'max').map((item) => item.id))\n encoding.outliers = unique(measures.filter((item) => item.encoding === 'outliers').map((item) => item.id))\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForBoxplot","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForBoxplot","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","c","MeasureId","onlyMeasureId","uniqueDimIds","unique","d","isMultiMeasure","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/boxplot.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/boxplot.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures, hasMultipleMeasureInSingleView } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\nimport { addDefaultColorEncoding } from './color/addColorToEncoding'\n\nexport const defaultEncodingForBoxplot: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures))\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForBoxplot: 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 const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures)\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding, hasMulti)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding, hasMulti)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n if ((!encoding.value || encoding.value.length <= 1) && encoding.color && encoding.color.length > 1) {\n encoding.color = encoding.color.filter((c) => c !== MeasureId)\n }\n\n return { ...advancedVSeed, encoding }\n}\n\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n const uniqueDimIds: string[] = unique(dimensions.map((d) => d.id))\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure)\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.value = unique(measures.filter((item) => item.encoding === 'value' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.value = unique(measures.filter((item) => item.encoding === 'value' || !item.encoding).map((item) => item.id))\n encoding.q1 = unique(measures.filter((item) => item.encoding === 'q1').map((item) => item.id))\n encoding.median = unique(measures.filter((item) => item.encoding === 'median').map((item) => item.id))\n encoding.q3 = unique(measures.filter((item) => item.encoding === 'q3').map((item) => item.id))\n encoding.min = unique(measures.filter((item) => item.encoding === 'min').map((item) => item.id))\n encoding.max = unique(measures.filter((item) => item.encoding === 'max').map((item) => item.id))\n encoding.outliers = unique(measures.filter((item) => item.encoding === 'outliers').map((item) => item.id))\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForBoxplot","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","hasMultipleMeasureInSingleView","generateDefaultMeasureEncoding","encodingForBoxplot","hasDimensionEncoding","item","hasMeasureEncoding","hasMulti","generateDimensionEncoding","generateMeasureEncoding","c","MeasureId","isMultiMeasure","uniqueDimIds","unique","d","addDefaultColorEncoding","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
@@ -6,3 +6,10 @@ import type { Dimensions, Encoding } from '../../../../../../types';
6
6
  * @param isMultiMeasure
7
7
  */
8
8
  export declare const addColorToEncoding: (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => void;
9
+ /**
10
+ * @description 为 encoding 添加 color 编码, 多指标场景, 会将 MeasureId 也添加到 color 编码中.
11
+ * @param dimensions
12
+ * @param encoding
13
+ * @param isMultiMeasure
14
+ */
15
+ export declare const addDefaultColorEncoding: (uniqueDimIds: string[], encoding: Encoding, isMultiMeasure: boolean) => void;
@@ -8,6 +8,14 @@ const addColorToEncoding = (dimensions, encoding, isMultiMeasure)=>{
8
8
  MeasureId
9
9
  ];
10
10
  };
11
- export { addColorToEncoding };
11
+ const addDefaultColorEncoding = (uniqueDimIds, encoding, isMultiMeasure)=>{
12
+ if (1 === uniqueDimIds.length && uniqueDimIds[0] === MeasureId) encoding.color = uniqueDimIds.slice(0);
13
+ else if (isMultiMeasure) encoding.color = uniqueDimIds.slice(1);
14
+ else encoding.color = uniqueDimIds.slice(1).filter((d)=>d !== MeasureId);
15
+ if (0 === encoding.color.length) encoding.color = [
16
+ MeasureId
17
+ ];
18
+ };
19
+ export { addColorToEncoding, addDefaultColorEncoding };
12
20
 
13
21
  //# sourceMappingURL=addColorToEncoding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js","sources":["../../../../../../../../src/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport type { Dimensions, Encoding } from 'src/types'\n\n/**\n * @description 为 encoding 添加 color 编码, 多指标场景, 会将 MeasureId 也添加到 color 编码中.\n * @param dimensions\n * @param encoding\n * @param isMultiMeasure\n */\nexport const addColorToEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n encoding.color = unique(dimensions.filter((item) => item.encoding === 'color').map((item) => item.id))\n const measureId = dimensions.find((item) => item.id === MeasureId)\n if (isMultiMeasure && measureId && !measureId.encoding) {\n encoding.color.push(MeasureId)\n }\n if (encoding.color.length === 0) {\n encoding.color = [MeasureId]\n }\n}\n"],"names":["addColorToEncoding","dimensions","encoding","isMultiMeasure","unique","item","measureId","MeasureId"],"mappings":";;AAUO,MAAMA,qBAAqB,CAACC,YAAwBC,UAAoBC;IAC7ED,SAAS,KAAK,GAAGE,OAAOH,WAAW,MAAM,CAAC,CAACI,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,EAAc,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IACpG,MAAMC,YAAYL,WAAW,IAAI,CAAC,CAACI,OAASA,KAAK,EAAE,KAAKE;IACxD,IAAIJ,kBAAkBG,aAAa,CAACA,UAAU,QAAQ,EACpDJ,SAAS,KAAK,CAAC,IAAI,CAACK;IAEtB,IAAIL,AAA0B,MAA1BA,SAAS,KAAK,CAAC,MAAM,EACvBA,SAAS,KAAK,GAAG;QAACK;KAAU;AAEhC"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport type { Dimensions, Encoding } from 'src/types'\n\n/**\n * @description 为 encoding 添加 color 编码, 多指标场景, 会将 MeasureId 也添加到 color 编码中.\n * @param dimensions\n * @param encoding\n * @param isMultiMeasure\n */\nexport const addColorToEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n encoding.color = unique(dimensions.filter((item) => item.encoding === 'color').map((item) => item.id))\n\n const measureId = dimensions.find((item) => item.id === MeasureId)\n\n if (isMultiMeasure && measureId && !measureId.encoding) {\n encoding.color.push(MeasureId)\n }\n if (encoding.color.length === 0) {\n encoding.color = [MeasureId]\n }\n}\n\n/**\n * @description 为 encoding 添加 color 编码, 多指标场景, 会将 MeasureId 也添加到 color 编码中.\n * @param dimensions\n * @param encoding\n * @param isMultiMeasure\n */\nexport const addDefaultColorEncoding = (uniqueDimIds: string[], encoding: Encoding, isMultiMeasure: boolean) => {\n if (uniqueDimIds.length === 1 && uniqueDimIds[0] === MeasureId) {\n encoding.color = uniqueDimIds.slice(0)\n } else if (isMultiMeasure) {\n encoding.color = uniqueDimIds.slice(1)\n } else {\n encoding.color = uniqueDimIds.slice(1).filter((d: string) => d !== MeasureId)\n }\n if (encoding.color.length === 0) {\n encoding.color = [MeasureId]\n }\n}\n"],"names":["addColorToEncoding","dimensions","encoding","isMultiMeasure","unique","item","measureId","MeasureId","addDefaultColorEncoding","uniqueDimIds","d"],"mappings":";;AAUO,MAAMA,qBAAqB,CAACC,YAAwBC,UAAoBC;IAC7ED,SAAS,KAAK,GAAGE,OAAOH,WAAW,MAAM,CAAC,CAACI,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,EAAc,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IAEpG,MAAMC,YAAYL,WAAW,IAAI,CAAC,CAACI,OAASA,KAAK,EAAE,KAAKE;IAExD,IAAIJ,kBAAkBG,aAAa,CAACA,UAAU,QAAQ,EACpDJ,SAAS,KAAK,CAAC,IAAI,CAACK;IAEtB,IAAIL,AAA0B,MAA1BA,SAAS,KAAK,CAAC,MAAM,EACvBA,SAAS,KAAK,GAAG;QAACK;KAAU;AAEhC;AAQO,MAAMC,0BAA0B,CAACC,cAAwBP,UAAoBC;IAClF,IAAIM,AAAwB,MAAxBA,aAAa,MAAM,IAAUA,YAAY,CAAC,EAAE,KAAKF,WACnDL,SAAS,KAAK,GAAGO,aAAa,KAAK,CAAC;SAC/B,IAAIN,gBACTD,SAAS,KAAK,GAAGO,aAAa,KAAK,CAAC;SAEpCP,SAAS,KAAK,GAAGO,aAAa,KAAK,CAAC,GAAG,MAAM,CAAC,CAACC,IAAcA,MAAMH;IAErE,IAAIL,AAA0B,MAA1BA,SAAS,KAAK,CAAC,MAAM,EACvBA,SAAS,KAAK,GAAG;QAACK;KAAU;AAEhC"}
@@ -1,12 +1,13 @@
1
1
  import { unique } from "remeda";
2
2
  import { MeasureId } from "../../../../../dataReshape/index.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { findAllMeasures, hasMultipleMeasureInSingleView } from "../../../../utils/index.js";
4
4
  import { addColorToEncoding } from "./color/index.js";
5
+ import { addDefaultColorEncoding } from "./color/addColorToEncoding.js";
5
6
  const defaultEncodingForColumn = (advancedVSeed)=>{
6
7
  const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
7
8
  const measures = findAllMeasures(vseedMeasures);
8
9
  const encoding = {};
9
- generateDefaultDimensionEncoding(dimensions, encoding);
10
+ generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures));
10
11
  generateDefaultMeasureEncoding(measures, encoding);
11
12
  return {
12
13
  ...advancedVSeed,
@@ -19,8 +20,9 @@ const encodingForColumn = (advancedVSeed)=>{
19
20
  const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
20
21
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
21
22
  const encoding = {};
22
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, measures.length > 1);
23
- else generateDefaultDimensionEncoding(dimensions, encoding);
23
+ const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures);
24
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, hasMulti);
25
+ else generateDefaultDimensionEncoding(dimensions, encoding, hasMulti);
24
26
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
25
27
  else generateDefaultMeasureEncoding(measures, encoding);
26
28
  return {
@@ -28,11 +30,10 @@ const encodingForColumn = (advancedVSeed)=>{
28
30
  encoding
29
31
  };
30
32
  };
31
- const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
32
- const onlyMeasureId = 1 === dimensions.length && dimensions.find((item)=>item.id === MeasureId);
33
+ const generateDefaultDimensionEncoding = (dimensions, encoding, isMultiMeasure)=>{
33
34
  const uniqueDimIds = unique(dimensions.map((d)=>d.id));
34
35
  encoding.x = uniqueDimIds.slice(0, 1);
35
- encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1);
36
+ addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure);
36
37
  encoding.detail = encoding.color;
37
38
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureId);
38
39
  encoding.label = [];
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/column.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/encoding/column.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForColumn: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForColumn: 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, measures.length > 1)\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 onlyMeasureId = dimensions.length === 1 && dimensions.find((item) => item.id === MeasureId)\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1) // 第二个之后的维度用于颜色\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(measures.filter((item) => item.encoding === 'yAxis' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.y = unique(measures.filter((item) => item.encoding === 'yAxis' || !item.encoding).map((item) => item.id))\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForColumn","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForColumn","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","onlyMeasureId","MeasureId","uniqueDimIds","unique","d","isMultiMeasure","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/column.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/column.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures, hasMultipleMeasureInSingleView } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\nimport { addDefaultColorEncoding } from './color/addColorToEncoding'\n\nexport const defaultEncodingForColumn: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures))\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForColumn: 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 const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures)\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding, hasMulti)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding, hasMulti)\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, isMultiMeasure: boolean) => {\n const uniqueDimIds: string[] = unique(dimensions.map((d) => d.id))\n\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure)\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(measures.filter((item) => item.encoding === 'yAxis' || !item.encoding).map((item) => item.id))\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.y = unique(measures.filter((item) => item.encoding === 'yAxis' || !item.encoding).map((item) => item.id))\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForColumn","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","hasMultipleMeasureInSingleView","generateDefaultMeasureEncoding","encodingForColumn","hasDimensionEncoding","item","hasMeasureEncoding","hasMulti","generateDimensionEncoding","generateMeasureEncoding","isMultiMeasure","uniqueDimIds","unique","d","addDefaultColorEncoding","MeasureId","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
@@ -1,12 +1,21 @@
1
1
  import { unique } from "remeda";
2
2
  import { MeasureId } from "../../../../../dataReshape/index.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { findAllMeasures, measureDepth } from "../../../../utils/index.js";
4
4
  import { addColorToEncoding } from "./color/index.js";
5
+ import { addDefaultColorEncoding } from "./color/addColorToEncoding.js";
6
+ const checkSingleViewMultiMeasures = (measures = [])=>measures.length <= 1 && (measures[0].children ?? []).length <= 1;
7
+ const hasMultipleMeasureInSingleView = (measures = [])=>{
8
+ const depth = measureDepth(measures);
9
+ if (depth >= 3) return measures.some((m)=>m && m.children && !checkSingleViewMultiMeasures(m.children));
10
+ if (2 === depth) return !checkSingleViewMultiMeasures(measures);
11
+ if (1 === depth) return measures.length >= 1;
12
+ return false;
13
+ };
5
14
  const defaultEncodingForDualAxis = (advancedVSeed)=>{
6
15
  const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
7
16
  const measures = findAllMeasures(vseedMeasures);
8
17
  const encoding = {};
9
- generateDefaultDimensionEncoding(dimensions, encoding);
18
+ generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures));
10
19
  generateDefaultMeasureEncoding(measures, encoding);
11
20
  return {
12
21
  ...advancedVSeed,
@@ -19,8 +28,9 @@ const encodingForDualAxis = (advancedVSeed)=>{
19
28
  const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
20
29
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
21
30
  const encoding = {};
22
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, measures.length > 1);
23
- else generateDefaultDimensionEncoding(dimensions, encoding);
31
+ const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures);
32
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, hasMulti);
33
+ else generateDefaultDimensionEncoding(dimensions, encoding, hasMulti);
24
34
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
25
35
  else generateDefaultMeasureEncoding(measures, encoding);
26
36
  return {
@@ -28,11 +38,10 @@ const encodingForDualAxis = (advancedVSeed)=>{
28
38
  encoding
29
39
  };
30
40
  };
31
- const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
32
- const onlyMeasureId = 1 === dimensions.length && dimensions.find((item)=>item.id === MeasureId);
41
+ const generateDefaultDimensionEncoding = (dimensions, encoding, isMultiMeasure)=>{
33
42
  const uniqueDimIds = unique(dimensions.map((d)=>d.id));
34
43
  encoding.x = uniqueDimIds.slice(0, 1);
35
- encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1);
44
+ addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure);
36
45
  encoding.detail = encoding.color;
37
46
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureId);
38
47
  encoding.label = [];
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/dualAxis.js","sources":["../../../../../../../src/pipeline/advanced/chart/pipes/encoding/dualAxis.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForDualAxis: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForDualAxis: 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, measures.length > 1)\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 onlyMeasureId = dimensions.length === 1 && dimensions.find((item) => item.id === MeasureId)\n const uniqueDimIds = unique(dimensions.map((d) => d.id))\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n encoding.color = uniqueDimIds.slice(onlyMeasureId ? 0 : 1) // 第二个之后的维度用于颜色\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'primaryYAxis' || item.encoding === 'secondaryYAxis' || !item.encoding)\n .map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'primaryYAxis' || item.encoding === 'secondaryYAxis' || !item.encoding)\n .map((item) => item.id),\n )\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForDualAxis","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForDualAxis","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","onlyMeasureId","MeasureId","uniqueDimIds","unique","d","isMultiMeasure","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"pipeline/advanced/chart/pipes/encoding/dualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/dualAxis.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureId } from 'src/dataReshape'\nimport { findAllMeasures, measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n Dimension,\n Dimensions,\n Encoding,\n Measure,\n MeasureGroup,\n Measures,\n MeasureTree,\n} from 'src/types'\nimport { addColorToEncoding } from './color'\nimport { addDefaultColorEncoding } from './color/addColorToEncoding'\n\nconst checkSingleViewMultiMeasures = (measures: MeasureTree = []): boolean => {\n return measures.length <= 1 && ((measures[0] as MeasureGroup).children ?? []).length <= 1\n}\n\nconst hasMultipleMeasureInSingleView = (measures: MeasureTree = []): boolean => {\n const depth = measureDepth(measures)\n\n if (depth >= 3) {\n return measures.some(\n (m) => m && (m as MeasureGroup).children && !checkSingleViewMultiMeasures((m as MeasureGroup).children),\n )\n }\n\n if (depth === 2) {\n return !checkSingleViewMultiMeasures(measures)\n }\n\n if (depth === 1) {\n return measures.length >= 1\n }\n\n return false\n}\n\nexport const defaultEncodingForDualAxis: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures))\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForDualAxis: 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 const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures)\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding, hasMulti)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding, hasMulti)\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, isMultiMeasure: boolean) => {\n const uniqueDimIds: string[] = unique(dimensions.map((d) => d.id))\n encoding.x = uniqueDimIds.slice(0, 1) // 第一个维度放置于X轴\n addDefaultColorEncoding(uniqueDimIds, encoding, isMultiMeasure)\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureId) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding, isMultiMeasure: boolean) => {\n // x\n encoding.x = unique(dimensions.filter((item) => item.encoding === 'xAxis').map((item) => item.id))\n if (encoding.x.length === 0) {\n encoding.x = [dimensions[0].id]\n }\n\n // color\n addColorToEncoding(dimensions, encoding, isMultiMeasure)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = encoding.color\n }\n\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureId)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureId)\n}\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'primaryYAxis' || item.encoding === 'secondaryYAxis' || !item.encoding)\n .map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n // y\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'primaryYAxis' || item.encoding === 'secondaryYAxis' || !item.encoding)\n .map((item) => item.id),\n )\n\n // color\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = color\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["checkSingleViewMultiMeasures","measures","hasMultipleMeasureInSingleView","depth","measureDepth","m","defaultEncodingForDualAxis","advancedVSeed","vseedMeasures","dimensions","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForDualAxis","hasDimensionEncoding","item","hasMeasureEncoding","hasMulti","generateDimensionEncoding","generateMeasureEncoding","isMultiMeasure","uniqueDimIds","unique","d","addDefaultColorEncoding","MeasureId","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { unique } from "remeda";
2
2
  import { MeasureId } from "../../../../../dataReshape/index.js";
3
- import { findAllMeasures } from "../../../../utils/index.js";
3
+ import { findAllMeasures, hasMultipleMeasureInSingleView } from "../../../../utils/index.js";
4
4
  import { addColorToEncoding } from "./color/index.js";
5
5
  const defaultEncodingForFunnel = (advancedVSeed)=>{
6
6
  const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
7
7
  const measures = findAllMeasures(vseedMeasures);
8
8
  const encoding = {};
9
- generateDefaultDimensionEncoding(dimensions, encoding);
9
+ generateDefaultDimensionEncoding(dimensions, encoding, hasMultipleMeasureInSingleView(vseedMeasures));
10
10
  generateDefaultMeasureEncoding(measures, encoding);
11
11
  return {
12
12
  ...advancedVSeed,
@@ -19,8 +19,9 @@ const encodingForFunnel = (advancedVSeed)=>{
19
19
  const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
20
20
  const hasMeasureEncoding = measures.some((item)=>item.encoding);
21
21
  const encoding = {};
22
- if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, measures.length > 1);
23
- else generateDefaultDimensionEncoding(dimensions, encoding);
22
+ const hasMulti = hasMultipleMeasureInSingleView(vseedMeasures);
23
+ if (hasDimensionEncoding) generateDimensionEncoding(dimensions, encoding, hasMulti);
24
+ else generateDefaultDimensionEncoding(dimensions, encoding, hasMulti);
24
25
  if (hasMeasureEncoding) generateMeasureEncoding(measures, encoding);
25
26
  else generateDefaultMeasureEncoding(measures, encoding);
26
27
  return {
@@ -28,9 +29,9 @@ const encodingForFunnel = (advancedVSeed)=>{
28
29
  encoding
29
30
  };
30
31
  };
31
- const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
32
+ const generateDefaultDimensionEncoding = (dimensions, encoding, isMultiMeasure)=>{
32
33
  const uniqueDimIds = unique(dimensions.map((d)=>d.id));
33
- encoding.color = uniqueDimIds.slice(0);
34
+ encoding.color = !isMultiMeasure && uniqueDimIds.some((id)=>id !== MeasureId) ? uniqueDimIds.filter((id)=>id !== MeasureId) : uniqueDimIds.slice(0);
34
35
  encoding.detail = encoding.color;
35
36
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureId);
36
37
  encoding.label = [];