@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.
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/builder/builder/advanced/colorItems.js.map +1 -1
- package/dist/esm/builder/builder/build.js.map +1 -1
- package/dist/esm/builder/builder/buildAdvanced.js.map +1 -1
- package/dist/esm/builder/builder/buildSpec.js.map +1 -1
- package/dist/esm/builder/builder/builder.d.ts +670 -0
- package/dist/esm/builder/builder/builder.js.map +1 -1
- package/dist/esm/builder/register/all.js.map +1 -1
- package/dist/esm/builder/register/chartType/area.js.map +1 -1
- package/dist/esm/builder/register/chartType/areaPercent.js.map +1 -1
- package/dist/esm/builder/register/chartType/bar.js.map +1 -1
- package/dist/esm/builder/register/chartType/barParallel.js.map +1 -1
- package/dist/esm/builder/register/chartType/barPercent.js.map +1 -1
- package/dist/esm/builder/register/chartType/boxplot.js.map +1 -1
- package/dist/esm/builder/register/chartType/column.js.map +1 -1
- package/dist/esm/builder/register/chartType/columnParallel.js.map +1 -1
- package/dist/esm/builder/register/chartType/columnPercent.js.map +1 -1
- package/dist/esm/builder/register/chartType/donut.js.map +1 -1
- package/dist/esm/builder/register/chartType/dualAxis.js.map +1 -1
- package/dist/esm/builder/register/chartType/funnel.js.map +1 -1
- package/dist/esm/builder/register/chartType/heatmap.js.map +1 -1
- package/dist/esm/builder/register/chartType/histogram.js.map +1 -1
- package/dist/esm/builder/register/chartType/line.js.map +1 -1
- package/dist/esm/builder/register/chartType/pie.js.map +1 -1
- package/dist/esm/builder/register/chartType/pivotTable.js.map +1 -1
- package/dist/esm/builder/register/chartType/radar.js.map +1 -1
- package/dist/esm/builder/register/chartType/rose.js.map +1 -1
- package/dist/esm/builder/register/chartType/roseParallel.js.map +1 -1
- package/dist/esm/builder/register/chartType/scatter.js.map +1 -1
- package/dist/esm/builder/register/chartType/table.js.map +1 -1
- package/dist/esm/builder/register/custom.js.map +1 -1
- package/dist/esm/builder/register/theme/custom.js.map +1 -1
- package/dist/esm/builder/register/theme/dark.js.map +1 -1
- package/dist/esm/builder/register/theme/light.js.map +1 -1
- package/dist/esm/dataReshape/constant.js.map +1 -1
- package/dist/esm/dataReshape/dataReshapeByEncoding.js.map +1 -1
- package/dist/esm/dataReshape/foldMeasures.js.map +1 -1
- package/dist/esm/dataReshape/unfoldDimensions.js.map +1 -1
- package/dist/esm/dataSelector/selector.js.map +1 -1
- package/dist/esm/i18n/i18n.js.map +1 -1
- package/dist/esm/i18n/i18nData.js.map +1 -1
- package/dist/esm/i18n/index.d.ts +1 -0
- package/dist/esm/i18n/index.js +4 -0
- package/dist/esm/i18n/index.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/donut.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +3 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/analysis/common.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortLegend.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortXBand.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/analysis/sortYBand.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/annotation/annotation.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasureId.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/adapter/encodingAdapter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +8 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js +8 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.d.ts +7 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js +9 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/color/addColorToEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +8 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +16 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +7 -6
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js +8 -6
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js +8 -6
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +8 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/markStyle/markStyle.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js +48 -23
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js +47 -23
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/pivot/pivotAdapter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/regressionLine/regressionLine.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +2 -2
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/theme/theme.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipeline/pivotTable.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipeline/table.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/cellStyle/cellStyle.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/config/pivotTableConfig.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/config/tableConfig.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/init/initAdvancedVSeed.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/records/records.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/area.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/bar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/boxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/column.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/donut.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/funnel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/histogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/line.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/pie.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/radar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/rose.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationArea.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationAreaBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationHorizontalLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPoint.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointCommon.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfHistogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationVerticalLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/splitLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/utils.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/format/linearFormat.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/heatmapBandAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/radarAngle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/radarRadius.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/radius.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/backgroundColor/background.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/barWidth/barGapInGroup.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/barWidth/barMaxWidth.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/boxWidth/boxGapInGroup.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/boxWidth/boxMaxWidth.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/color.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorAreaStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorBarStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorBoxPlotStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorCellStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorFunnelStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorLineStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorPieStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorPointStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorRoseStyleFill.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/linearColor.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/crosshair/histogramCrosshair.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairRect.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairRect.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetBoxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHistogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetPivot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetScatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetXY.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetYX.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/progressive.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/area.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/bar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/barParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/boxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/column.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/donut.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/funnel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/heatmap.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/histogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/line.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/pie.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/pivot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/radar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/rose.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/boxLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/colorLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/discreteLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/heatmapColorLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/pivotColorLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/legend/pivotDiscreteLegend.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/areaStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/barStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/boxPlotStyle.js +5 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/boxPlotStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/cellStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/curve/curve.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/funnelStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/funnelTransformStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/lineStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/pieStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointState.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/roseStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/percent/percent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/areaStyleFilter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/barStyleFilter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/lineStyleFilter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pipeFilter/pointStyleFilter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/dimensionLinkage.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAdapter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAxisStyle.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotAxisStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotColumnDimensions.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotGridStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotHideIndicatorName.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotRowDimensions.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotTitle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/region/addRegionPadding.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/columnRegressionLine.js +6 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/columnRegressionLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/common.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/ecdfRegressionLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/kdeRegressionLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/linearRegressionLine.js +5 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/linearRegressionLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/series/series.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/size/scatterSize.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/stack/stack.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/stack/stackCornerRadius.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +35 -4
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipElement.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/utils/histogram.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js +2 -2
- package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipeline/table.js +2 -2
- package/dist/esm/pipeline/spec/table/pipeline/table.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/cellStyle/common.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/cellStyle/pivot.js +16 -4
- package/dist/esm/pipeline/spec/table/pipes/cellStyle/pivot.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/cellStyle/table.js +16 -4
- package/dist/esm/pipeline/spec/table/pipes/cellStyle/table.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/corner/titleOnDimension.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/indicators/pivotDataConfig.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/init/pivotTable.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/init/table.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/bodyStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/cornerHeaderStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.d.ts +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.js +6 -2
- package/dist/esm/pipeline/spec/table/pipes/theme/frameStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/headerStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/rowHeaderStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/scrollStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/theme/selectionStyle.js.map +1 -1
- package/dist/esm/pipeline/utils/boxplot.js.map +1 -1
- package/dist/esm/pipeline/utils/chatType.js +2 -2
- package/dist/esm/pipeline/utils/chatType.js.map +1 -1
- package/dist/esm/pipeline/utils/constant.js.map +1 -1
- package/dist/esm/pipeline/utils/dimensions/delete.js.map +1 -1
- package/dist/esm/pipeline/utils/dimensions/typeGuard.js.map +1 -1
- package/dist/esm/pipeline/utils/format/createFormatter.js.map +1 -1
- package/dist/esm/pipeline/utils/format/createFormatterByMeasure.js.map +1 -1
- package/dist/esm/pipeline/utils/format/createNumFormatter.js.map +1 -1
- package/dist/esm/pipeline/utils/measures/delete.js.map +1 -1
- package/dist/esm/pipeline/utils/measures/depth.js.map +1 -1
- package/dist/esm/pipeline/utils/measures/find.js.map +1 -1
- package/dist/esm/pipeline/utils/measures/typeGuard.d.ts +1 -0
- package/dist/esm/pipeline/utils/measures/typeGuard.js +8 -1
- package/dist/esm/pipeline/utils/measures/typeGuard.js.map +1 -1
- package/dist/esm/pipeline/utils/pipeline.js.map +1 -1
- package/dist/esm/pipeline/utils/replaceNullToUndefined.js.map +1 -1
- package/dist/esm/pipeline/utils/tree/traverse.js.map +1 -1
- package/dist/esm/pipeline/utils/valid/checkVSeed.js.map +1 -1
- package/dist/esm/theme/common/annotaion.js.map +1 -1
- package/dist/esm/theme/common/axes.js.map +1 -1
- package/dist/esm/theme/common/boxPlot.js +15 -4
- package/dist/esm/theme/common/boxPlot.js.map +1 -1
- package/dist/esm/theme/common/color.js.map +1 -1
- package/dist/esm/theme/common/crosshair.js.map +1 -1
- package/dist/esm/theme/common/funnelTransform.js.map +1 -1
- package/dist/esm/theme/common/heatmapCell.js.map +1 -1
- package/dist/esm/theme/common/label.js.map +1 -1
- package/dist/esm/theme/common/legend.js.map +1 -1
- package/dist/esm/theme/common/regressionLine.js.map +1 -1
- package/dist/esm/theme/common/table.js.map +1 -1
- package/dist/esm/theme/common/tooltip.js.map +1 -1
- package/dist/esm/theme/dark/dark.js.map +1 -1
- package/dist/esm/theme/light/light.js.map +1 -1
- package/dist/esm/types/advancedVSeed.d.ts +236 -0
- package/dist/esm/types/advancedVSeed.js.map +1 -1
- package/dist/esm/types/builder/builder.js.map +1 -1
- package/dist/esm/types/chartType/area/zArea.js.map +1 -1
- package/dist/esm/types/chartType/areaPercent/zAreaPercent.js.map +1 -1
- package/dist/esm/types/chartType/bar/zBar.js.map +1 -1
- package/dist/esm/types/chartType/barParallel/zBarParallel.js.map +1 -1
- package/dist/esm/types/chartType/barPercent/zBarPercent.js.map +1 -1
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +6 -0
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.js.map +1 -1
- package/dist/esm/types/chartType/column/zColumn.d.ts +8 -0
- package/dist/esm/types/chartType/column/zColumn.js.map +1 -1
- package/dist/esm/types/chartType/columnParallel/zColumnParallel.js.map +1 -1
- package/dist/esm/types/chartType/columnPercent/zColumnPercent.js.map +1 -1
- package/dist/esm/types/chartType/donut/zDonut.js.map +1 -1
- package/dist/esm/types/chartType/dualAxis/zDualAxis.js.map +1 -1
- package/dist/esm/types/chartType/funnel/zFunnel.js.map +1 -1
- package/dist/esm/types/chartType/heatmap/zHeatmap.js.map +1 -1
- package/dist/esm/types/chartType/histogram/zHistogram.js.map +1 -1
- package/dist/esm/types/chartType/line/zLine.js.map +1 -1
- package/dist/esm/types/chartType/pie/zPie.js.map +1 -1
- package/dist/esm/types/chartType/pivotTable/zPivotTable.js.map +1 -1
- package/dist/esm/types/chartType/radar/zRadar.js.map +1 -1
- package/dist/esm/types/chartType/rose/zRose.js.map +1 -1
- package/dist/esm/types/chartType/roseParallel/zRoseParallel.js.map +1 -1
- package/dist/esm/types/chartType/scatter/zScatter.d.ts +32 -0
- package/dist/esm/types/chartType/scatter/zScatter.js.map +1 -1
- package/dist/esm/types/chartType/table/zTable.js.map +1 -1
- package/dist/esm/types/dataSelector/selector.js.map +1 -1
- package/dist/esm/types/i18n/i18n.js.map +1 -1
- package/dist/esm/types/properties/analysis/analysis.js.map +1 -1
- package/dist/esm/types/properties/analysis/sort.js.map +1 -1
- package/dist/esm/types/properties/analysis/sortLegend.js.map +1 -1
- package/dist/esm/types/properties/annotation/annotation.js.map +1 -1
- package/dist/esm/types/properties/annotation/zAnnotationArea.js.map +1 -1
- package/dist/esm/types/properties/annotation/zAnnotationHorizontalLine.js.map +1 -1
- package/dist/esm/types/properties/annotation/zAnnotationPoint.js.map +1 -1
- package/dist/esm/types/properties/annotation/zAnnotationVerticalLine.js.map +1 -1
- package/dist/esm/types/properties/cellStyle/bodyCellStyle.js.map +1 -1
- package/dist/esm/types/properties/cellStyle/cellStyle.js.map +1 -1
- package/dist/esm/types/properties/chartType/chartType.js.map +1 -1
- package/dist/esm/types/properties/chartType/dualChartType.js.map +1 -1
- package/dist/esm/types/properties/config/annotation/zAnnotaion.js.map +1 -1
- package/dist/esm/types/properties/config/area.js.map +1 -1
- package/dist/esm/types/properties/config/axes/zBandAxis.js.map +1 -1
- package/dist/esm/types/properties/config/axes/zLinearAxis.js.map +1 -1
- package/dist/esm/types/properties/config/backgroundColor/backgroundColor.js.map +1 -1
- package/dist/esm/types/properties/config/bar.js.map +1 -1
- package/dist/esm/types/properties/config/barWidth/index.js.map +1 -1
- package/dist/esm/types/properties/config/boxWidth/zBoxWidth.js.map +1 -1
- package/dist/esm/types/properties/config/boxplot.d.ts +3 -0
- package/dist/esm/types/properties/config/boxplot.js.map +1 -1
- package/dist/esm/types/properties/config/color/color.js.map +1 -1
- package/dist/esm/types/properties/config/column.d.ts +32 -0
- package/dist/esm/types/properties/config/column.js.map +1 -1
- package/dist/esm/types/properties/config/config.d.ts +99 -0
- package/dist/esm/types/properties/config/config.js.map +1 -1
- package/dist/esm/types/properties/config/crosshair/zCrosshair.js.map +1 -1
- package/dist/esm/types/properties/config/dimensionLinkage/dimensionLinkage.js.map +1 -1
- package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
- package/dist/esm/types/properties/config/funnel.js.map +1 -1
- package/dist/esm/types/properties/config/funnelTransform/zFunnelTransform.js.map +1 -1
- package/dist/esm/types/properties/config/heatmap/zHeatmap.js.map +1 -1
- package/dist/esm/types/properties/config/heatmap.js.map +1 -1
- package/dist/esm/types/properties/config/histogram.d.ts +32 -0
- package/dist/esm/types/properties/config/histogram.js.map +1 -1
- package/dist/esm/types/properties/config/label/zLabel.js.map +1 -1
- package/dist/esm/types/properties/config/label/zPieLabel.js.map +1 -1
- package/dist/esm/types/properties/config/legend/legend.js.map +1 -1
- package/dist/esm/types/properties/config/line.js.map +1 -1
- package/dist/esm/types/properties/config/pie.js.map +1 -1
- package/dist/esm/types/properties/config/pivotGrid/pivotGrid.js.map +1 -1
- package/dist/esm/types/properties/config/pivotTable.js.map +1 -1
- package/dist/esm/types/properties/config/rose.js.map +1 -1
- package/dist/esm/types/properties/config/scatter.d.ts +32 -0
- package/dist/esm/types/properties/config/scatter.js.map +1 -1
- package/dist/esm/types/properties/config/stackCornerRadius/stackCornerRadius.js.map +1 -1
- package/dist/esm/types/properties/config/table.js.map +1 -1
- package/dist/esm/types/properties/config/tooltip/tooltip.js.map +1 -1
- package/dist/esm/types/properties/config/whiskers/index.js.map +1 -1
- package/dist/esm/types/properties/dataset/dataset.js.map +1 -1
- package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js.map +1 -1
- package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
- package/dist/esm/types/properties/encoding/zDimensionEncoding.js.map +1 -1
- package/dist/esm/types/properties/encoding/zEncoding.js.map +1 -1
- package/dist/esm/types/properties/encoding/zMeasureEncoding.js.map +1 -1
- package/dist/esm/types/properties/format/numFormat.js.map +1 -1
- package/dist/esm/types/properties/markStyle/barStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/boxPlotStyle.d.ts +15 -0
- package/dist/esm/types/properties/markStyle/boxPlotStyle.js +4 -1
- package/dist/esm/types/properties/markStyle/boxPlotStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/lineStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/markStyle.d.ts +6 -0
- package/dist/esm/types/properties/markStyle/markStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/outlierStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/pointStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/zAreaStyle.js.map +1 -1
- package/dist/esm/types/properties/measures/zDualMeasures.js.map +1 -1
- package/dist/esm/types/properties/measures/zMeasures.js.map +1 -1
- package/dist/esm/types/properties/measures/zScatterMeasures.js.map +1 -1
- package/dist/esm/types/properties/regressionLine/linearRegressionLine.d.ts +20 -0
- package/dist/esm/types/properties/regressionLine/zRegressionLine.d.ts +48 -0
- package/dist/esm/types/properties/regressionLine/zRegressionLine.js +5 -1
- package/dist/esm/types/properties/regressionLine/zRegressionLine.js.map +1 -1
- package/dist/esm/types/properties/theme/customTheme.d.ts +198 -0
- package/dist/esm/types/properties/theme/customTheme.js.map +1 -1
- package/dist/esm/types/properties/theme/theme.js.map +1 -1
- package/dist/esm/types/zVseed.d.ts +46 -0
- package/dist/esm/types/zVseed.js.map +1 -1
- package/dist/umd/index.js +826 -655
- package/dist/umd/index.js.map +1 -1
- package/package.json +6 -5
|
@@ -8,32 +8,48 @@ const buildMeasuresForDualAxis = (advancedVSeed, context)=>{
|
|
|
8
8
|
advancedVSeed.measures = generateMeasuresByParentId(advancedVSeed.measures);
|
|
9
9
|
return advancedVSeed;
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
if (vseed.dualMeasures) {
|
|
12
|
+
advancedVSeed.measures = dualMeasuresToMeasureTree(clone(vseed.dualMeasures));
|
|
13
|
+
return advancedVSeed;
|
|
14
|
+
}
|
|
15
|
+
const { dualMeasures, encodedMeasures } = basicMeasuresToDualMeasures(advancedVSeed.measures || []);
|
|
12
16
|
advancedVSeed.measures = dualMeasuresToMeasureTree(dualMeasures);
|
|
17
|
+
if (encodedMeasures.length) encodedMeasures.forEach((m)=>{
|
|
18
|
+
advancedVSeed.measures.push(m);
|
|
19
|
+
});
|
|
13
20
|
return advancedVSeed;
|
|
14
21
|
};
|
|
15
22
|
const basicMeasuresToDualMeasures = (basicMeasures)=>{
|
|
16
23
|
const primaryMeasures = [];
|
|
17
24
|
const secondaryMeasures = [];
|
|
25
|
+
const encodedMeasures = [];
|
|
18
26
|
for(let index = 0; index < basicMeasures.length; index++){
|
|
19
27
|
const item = basicMeasures[index];
|
|
20
|
-
const encoding =
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
28
|
+
const encoding = item.encoding;
|
|
29
|
+
const isPrimaryYAxis = 'primaryYAxis' === encoding;
|
|
30
|
+
const isSecondaryYAxis = 'secondaryYAxis' === encoding;
|
|
31
|
+
const isOtherEncoding = item.encoding && [
|
|
32
|
+
'color',
|
|
33
|
+
'label',
|
|
34
|
+
'tooltip',
|
|
35
|
+
'detail'
|
|
36
|
+
].includes(item.encoding);
|
|
25
37
|
if (isPrimaryYAxis) primaryMeasures.push(item);
|
|
26
38
|
else if (isSecondaryYAxis) secondaryMeasures.push(item);
|
|
39
|
+
else if (isOtherEncoding) encodedMeasures.push(item);
|
|
27
40
|
else if (0 === index) primaryMeasures.push(item);
|
|
28
41
|
else secondaryMeasures.push(item);
|
|
29
42
|
}
|
|
30
|
-
return
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
43
|
+
return {
|
|
44
|
+
dualMeasures: [
|
|
45
|
+
{
|
|
46
|
+
id: 'dualMeasures',
|
|
47
|
+
primaryMeasures,
|
|
48
|
+
secondaryMeasures
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
encodedMeasures
|
|
52
|
+
};
|
|
37
53
|
};
|
|
38
54
|
const dualMeasuresToMeasureTree = (dualMeasures)=>{
|
|
39
55
|
const measureTree = dualMeasures.map((item, index)=>{
|
|
@@ -75,6 +91,7 @@ const dualMeasuresToMeasureTree = (dualMeasures)=>{
|
|
|
75
91
|
};
|
|
76
92
|
const generateMeasuresByParentId = (measures)=>{
|
|
77
93
|
const dualMeasures = [];
|
|
94
|
+
const encodedMeasures = [];
|
|
78
95
|
measures.forEach((item)=>{
|
|
79
96
|
const id = item.parentId || DEFAULT_PARENT_ID;
|
|
80
97
|
if (!dualMeasures.find((d)=>d.id === id)) dualMeasures.push({
|
|
@@ -84,18 +101,26 @@ const generateMeasuresByParentId = (measures)=>{
|
|
|
84
101
|
});
|
|
85
102
|
const dualChart = dualMeasures.find((d)=>d.id === id);
|
|
86
103
|
if (!dualChart || !Array.isArray(dualChart.primaryMeasures) || !Array.isArray(dualChart.secondaryMeasures)) return;
|
|
87
|
-
const encoding =
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
const
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
104
|
+
const encoding = item.encoding;
|
|
105
|
+
const isPrimaryYAxis = 'primaryYAxis' === encoding;
|
|
106
|
+
const isSecondaryYAxis = 'secondaryYAxis' === encoding;
|
|
107
|
+
const isOtherEncoding = item.encoding && [
|
|
108
|
+
'color',
|
|
109
|
+
'label',
|
|
110
|
+
'tooltip',
|
|
111
|
+
'detail'
|
|
112
|
+
].includes(item.encoding);
|
|
113
|
+
if (isPrimaryYAxis) dualChart.primaryMeasures.push(item);
|
|
114
|
+
else if (isSecondaryYAxis) dualChart.secondaryMeasures.push(item);
|
|
115
|
+
else if (isOtherEncoding) encodedMeasures.push(item);
|
|
116
|
+
else if (0 === dualChart.primaryMeasures.length) dualChart.primaryMeasures.push(item);
|
|
96
117
|
else dualChart.secondaryMeasures.push(item);
|
|
97
118
|
});
|
|
98
|
-
|
|
119
|
+
const res = dualMeasuresToMeasureTree(dualMeasures);
|
|
120
|
+
if (encodedMeasures.length) encodedMeasures.forEach((m)=>{
|
|
121
|
+
res.push(m);
|
|
122
|
+
});
|
|
123
|
+
return res;
|
|
99
124
|
};
|
|
100
125
|
export { buildMeasuresForDualAxis };
|
|
101
126
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.ts"],"sourcesContent":["import type { AdvancedPipe, DualAxis, DualMeasures, MeasureGroup, Measures, MeasureTree } from 'src/types'\nimport { isMeasureTreeWithParentId, isMeasureTreeWithChildren } from './utils'\nimport { clone } from 'remeda'\nimport { DEFAULT_PARENT_ID } from 'src/pipeline/utils/constant'\n\nexport const buildMeasuresForDualAxis: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context as {\n vseed: DualAxis\n }\n\n // 带Children的指标树, 不进行任何处理\n if (isMeasureTreeWithChildren(advancedVSeed.measures)) {\n return advancedVSeed\n }\n // 带parentId的指标树, 转换为带children的指标树\n if (isMeasureTreeWithParentId(advancedVSeed.measures)) {\n advancedVSeed.measures = generateMeasuresByParentId(advancedVSeed.measures as Measures)\n return advancedVSeed\n }\n\n if (vseed.dualMeasures) {\n advancedVSeed.measures = dualMeasuresToMeasureTree(clone(vseed.dualMeasures))\n\n return advancedVSeed\n }\n\n const { dualMeasures, encodedMeasures } = basicMeasuresToDualMeasures(advancedVSeed.measures || [])\n advancedVSeed.measures = dualMeasuresToMeasureTree(dualMeasures)\n\n if (encodedMeasures.length) {\n encodedMeasures.forEach((m) => {\n advancedVSeed.measures!.push(m)\n })\n }\n\n return advancedVSeed\n}\n\nconst basicMeasuresToDualMeasures = (basicMeasures: Measures) => {\n const primaryMeasures: Measures = []\n const secondaryMeasures: Measures = []\n const encodedMeasures: Measures = []\n\n for (let index = 0; index < basicMeasures.length; index++) {\n const item = basicMeasures[index]\n const encoding = item.encoding\n const isPrimaryYAxis = encoding === 'primaryYAxis'\n const isSecondaryYAxis = encoding === 'secondaryYAxis'\n const isOtherEncoding = item.encoding && ['color', 'label', 'tooltip', 'detail'].includes(item.encoding)\n\n if (isPrimaryYAxis) {\n primaryMeasures.push(item)\n } else if (isSecondaryYAxis) {\n secondaryMeasures.push(item)\n } else if (!isOtherEncoding) {\n if (index === 0) {\n primaryMeasures.push(item)\n } else {\n secondaryMeasures.push(item)\n }\n } else {\n encodedMeasures.push(item)\n }\n }\n\n return {\n dualMeasures: [{ id: 'dualMeasures', primaryMeasures, secondaryMeasures }],\n encodedMeasures,\n }\n}\n\nconst dualMeasuresToMeasureTree = (dualMeasures: DualMeasures): MeasureTree => {\n const measureTree = dualMeasures.map((item, index): MeasureGroup => {\n const { id, primaryMeasures, secondaryMeasures } = item\n const groupChildren: MeasureGroup[] = []\n\n let groupId: string = `${id}-`\n if (primaryMeasures) {\n const arrPrimaryMeasures = Array.isArray(primaryMeasures) ? primaryMeasures : [primaryMeasures]\n const alias = arrPrimaryMeasures.map((item) => item.alias || item.id).toString()\n groupId += alias\n groupChildren.push({\n id: `${index}-primary`,\n alias: arrPrimaryMeasures.map((item) => item.alias || item.id).toString(),\n children: arrPrimaryMeasures,\n })\n }\n if (secondaryMeasures) {\n const arrSecondaryMeasures = Array.isArray(secondaryMeasures) ? secondaryMeasures : [secondaryMeasures]\n const alias = arrSecondaryMeasures.map((item) => item.alias || item.id).toString()\n groupId += alias\n groupChildren.push({\n id: `${index}-secondary`,\n alias: arrSecondaryMeasures.map((item) => item.alias || item.id).toString(),\n children: arrSecondaryMeasures,\n })\n }\n\n return {\n id: groupId,\n alias: groupId,\n children: groupChildren,\n }\n })\n\n // 只有1个双轴图, 仅返回2层, vchart 绘制双轴图\n if (dualMeasures.length === 1) {\n return measureTree[0].children || []\n }\n\n // 有多个双轴图, 返回3层, pivot chart 绘制组合双轴图\n return measureTree\n}\n\nconst generateMeasuresByParentId = (measures: Measures) => {\n const dualMeasures: DualMeasures = []\n const encodedMeasures: Measures = []\n\n measures.forEach((item) => {\n const id = item.parentId || DEFAULT_PARENT_ID\n if (!dualMeasures.find((d) => d.id === id)) {\n dualMeasures.push({\n id,\n primaryMeasures: [],\n secondaryMeasures: [],\n })\n }\n\n const dualChart = dualMeasures.find((d) => d.id === id)\n if (!dualChart || !Array.isArray(dualChart.primaryMeasures) || !Array.isArray(dualChart.secondaryMeasures)) {\n return\n }\n\n const encoding = item.encoding\n const isPrimaryYAxis = encoding === 'primaryYAxis'\n const isSecondaryYAxis = encoding === 'secondaryYAxis'\n const isOtherEncoding = item.encoding && ['color', 'label', 'tooltip', 'detail'].includes(item.encoding)\n\n if (isPrimaryYAxis) {\n dualChart.primaryMeasures.push(item)\n } else if (isSecondaryYAxis) {\n dualChart.secondaryMeasures.push(item)\n } else if (!isOtherEncoding) {\n if (dualChart.primaryMeasures.length === 0) {\n dualChart.primaryMeasures.push(item)\n } else {\n dualChart.secondaryMeasures.push(item)\n }\n } else {\n encodedMeasures.push(item)\n }\n })\n\n const res = dualMeasuresToMeasureTree(dualMeasures)\n\n if (encodedMeasures.length) {\n encodedMeasures.forEach((m) => {\n res.push(m)\n })\n }\n\n return res\n}\n"],"names":["buildMeasuresForDualAxis","advancedVSeed","context","vseed","isMeasureTreeWithChildren","isMeasureTreeWithParentId","generateMeasuresByParentId","dualMeasuresToMeasureTree","clone","dualMeasures","encodedMeasures","basicMeasuresToDualMeasures","m","basicMeasures","primaryMeasures","secondaryMeasures","index","item","encoding","isPrimaryYAxis","isSecondaryYAxis","isOtherEncoding","measureTree","id","groupChildren","groupId","arrPrimaryMeasures","Array","alias","arrSecondaryMeasures","measures","DEFAULT_PARENT_ID","d","dualChart","res"],"mappings":"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"}
|
|
@@ -8,33 +8,49 @@ const buildMeasuresForScatter = (advancedVSeed, context)=>{
|
|
|
8
8
|
advancedVSeed.measures = generateMeasuresByParentId(advancedVSeed.measures);
|
|
9
9
|
return advancedVSeed;
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
if (vseed.scatterMeasures) {
|
|
12
|
+
advancedVSeed.measures = scatterMeasuresToMeasureTree(clone(vseed.scatterMeasures));
|
|
13
|
+
return advancedVSeed;
|
|
14
|
+
}
|
|
15
|
+
const { scatterMeasures, encodedMeasures } = basicMeasuresToScatterMeasures(advancedVSeed.measures || []);
|
|
12
16
|
advancedVSeed.measures = scatterMeasuresToMeasureTree(scatterMeasures);
|
|
17
|
+
if (encodedMeasures.length) encodedMeasures.forEach((m)=>{
|
|
18
|
+
advancedVSeed.measures.push(m);
|
|
19
|
+
});
|
|
13
20
|
return advancedVSeed;
|
|
14
21
|
};
|
|
15
22
|
const basicMeasuresToScatterMeasures = (basicMeasures)=>{
|
|
16
23
|
const yMeasures = [];
|
|
17
24
|
const xMeasures = [];
|
|
25
|
+
const encodedMeasures = [];
|
|
18
26
|
for(let index = 0; index < basicMeasures.length; index++){
|
|
19
27
|
const item = basicMeasures[index];
|
|
20
|
-
const encoding =
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
28
|
+
const encoding = item.encoding;
|
|
29
|
+
const isYAxis = 'yAxis' === encoding;
|
|
30
|
+
const isXAxis = 'xAxis' === encoding;
|
|
31
|
+
const isOther = encoding && [
|
|
32
|
+
'color',
|
|
33
|
+
'label',
|
|
34
|
+
'tooltip',
|
|
35
|
+
'detail'
|
|
36
|
+
].includes(encoding);
|
|
25
37
|
if (isYAxis) yMeasures.push(item);
|
|
26
38
|
else if (isXAxis) xMeasures.push(item);
|
|
39
|
+
else if (isOther) encodedMeasures.push(item);
|
|
27
40
|
else if (0 !== index) yMeasures.push(item);
|
|
28
41
|
else xMeasures.push(item);
|
|
29
42
|
}
|
|
30
43
|
if (0 === yMeasures.length && xMeasures.length > 0) yMeasures.push(xMeasures[0]);
|
|
31
|
-
return
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
44
|
+
return {
|
|
45
|
+
scatterMeasures: [
|
|
46
|
+
{
|
|
47
|
+
id: 'scatterMeasures',
|
|
48
|
+
xMeasures,
|
|
49
|
+
yMeasures
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
encodedMeasures
|
|
53
|
+
};
|
|
38
54
|
};
|
|
39
55
|
const scatterMeasuresToMeasureTree = (scatterMeasures)=>{
|
|
40
56
|
const measureTree = scatterMeasures.map((item, index)=>{
|
|
@@ -76,6 +92,7 @@ const scatterMeasuresToMeasureTree = (scatterMeasures)=>{
|
|
|
76
92
|
};
|
|
77
93
|
const generateMeasuresByParentId = (measures)=>{
|
|
78
94
|
const scatterMeasures = [];
|
|
95
|
+
const encodedMeasures = [];
|
|
79
96
|
measures.forEach((item)=>{
|
|
80
97
|
const id = item.parentId || DEFAULT_PARENT_ID;
|
|
81
98
|
if (!scatterMeasures.find((d)=>d.id === id)) scatterMeasures.push({
|
|
@@ -85,18 +102,25 @@ const generateMeasuresByParentId = (measures)=>{
|
|
|
85
102
|
});
|
|
86
103
|
const scatterChart = scatterMeasures.find((d)=>d.id === id);
|
|
87
104
|
if (!scatterChart || !Array.isArray(scatterChart.yMeasures) || !Array.isArray(scatterChart.xMeasures)) return;
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
105
|
+
const isYAxis = 'yAxis' === item.encoding;
|
|
106
|
+
const isXAxis = 'xAxis' === item.encoding;
|
|
107
|
+
const isOther = item.encoding && [
|
|
108
|
+
'color',
|
|
109
|
+
'label',
|
|
110
|
+
'tooltip',
|
|
111
|
+
'detail'
|
|
112
|
+
].includes(item.encoding);
|
|
113
|
+
if (isYAxis) scatterChart.yMeasures.push(item);
|
|
114
|
+
else if (isXAxis) scatterChart.xMeasures.push(item);
|
|
115
|
+
else if (isOther) encodedMeasures.push(item);
|
|
116
|
+
else if (0 !== scatterChart.yMeasures.length) scatterChart.yMeasures.push(item);
|
|
97
117
|
else scatterChart.xMeasures.push(item);
|
|
98
118
|
});
|
|
99
|
-
|
|
119
|
+
const res = scatterMeasuresToMeasureTree(scatterMeasures);
|
|
120
|
+
if (encodedMeasures.length) encodedMeasures.forEach((m)=>{
|
|
121
|
+
res.push(m);
|
|
122
|
+
});
|
|
123
|
+
return res;
|
|
100
124
|
};
|
|
101
125
|
export { buildMeasuresForScatter };
|
|
102
126
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.ts"],"sourcesContent":["import type { AdvancedPipe, MeasureGroup, Measures, MeasureTree, Scatter, ScatterMeasures } from 'src/types'\nimport { isMeasureTreeWithParentId, isMeasureTreeWithChildren } from './utils'\nimport { clone } from 'remeda'\nimport { DEFAULT_PARENT_ID } from 'src/pipeline/utils/constant'\n\nexport const buildMeasuresForScatter: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context as {\n vseed: Scatter\n }\n\n // 带Children的指标树, 不进行任何处理\n if (isMeasureTreeWithChildren(advancedVSeed.measures)) {\n return advancedVSeed\n }\n // 带parentId的指标树, 转换为带children的指标树\n if (isMeasureTreeWithParentId(advancedVSeed.measures)) {\n advancedVSeed.measures = generateMeasuresByParentId(advancedVSeed.measures as Measures)\n return advancedVSeed\n }\n\n /**\n * 既不是带Children的指标树, 也不是带parentId的指标树, 则自动生成指标\n */\n\n if (vseed.scatterMeasures) {\n advancedVSeed.measures = scatterMeasuresToMeasureTree(clone(vseed.scatterMeasures))\n\n return advancedVSeed\n }\n\n const { scatterMeasures, encodedMeasures } = basicMeasuresToScatterMeasures(advancedVSeed.measures || [])\n advancedVSeed.measures = scatterMeasuresToMeasureTree(scatterMeasures)\n\n if (encodedMeasures.length) {\n encodedMeasures.forEach((m) => {\n advancedVSeed.measures!.push(m)\n })\n }\n\n return advancedVSeed\n}\n\nconst basicMeasuresToScatterMeasures = (basicMeasures: Measures) => {\n const yMeasures: Measures = []\n const xMeasures: Measures = []\n const encodedMeasures: Measures = []\n\n for (let index = 0; index < basicMeasures.length; index++) {\n const item = basicMeasures[index]\n const encoding = item.encoding\n const isYAxis = encoding === 'yAxis'\n const isXAxis = encoding === 'xAxis'\n const isOther = encoding && ['color', 'label', 'tooltip', 'detail'].includes(encoding)\n\n if (isYAxis) {\n yMeasures.push(item)\n } else if (isXAxis) {\n xMeasures.push(item)\n } else if (!isOther) {\n if (index !== 0) {\n yMeasures.push(item)\n } else {\n xMeasures.push(item)\n }\n } else {\n encodedMeasures.push(item)\n }\n }\n\n if (yMeasures.length === 0 && xMeasures.length > 0) {\n yMeasures.push(xMeasures[0])\n }\n\n return {\n scatterMeasures: [{ id: 'scatterMeasures', xMeasures, yMeasures }],\n encodedMeasures,\n }\n}\n\nconst scatterMeasuresToMeasureTree = (scatterMeasures: ScatterMeasures): MeasureTree => {\n const measureTree = scatterMeasures.map((item, index): MeasureGroup => {\n const { id, xMeasures, yMeasures } = item\n const groupChildren: MeasureGroup[] = []\n\n let groupId: string = `${id}-`\n if (xMeasures) {\n const arrPrimaryMeasures = Array.isArray(xMeasures) ? xMeasures : [xMeasures]\n const alias = arrPrimaryMeasures.map((item) => item.alias || item.id).toString()\n groupId += alias\n groupChildren.push({\n id: `${index}-x`,\n alias: arrPrimaryMeasures.map((item) => item.alias || item.id).toString(),\n children: arrPrimaryMeasures,\n })\n }\n if (yMeasures) {\n const arrSecondaryMeasures = Array.isArray(yMeasures) ? yMeasures : [yMeasures]\n const alias = arrSecondaryMeasures.map((item) => item.alias || item.id).toString()\n groupId += alias\n groupChildren.push({\n id: `${index}-y`,\n alias: arrSecondaryMeasures.map((item) => item.alias || item.id).toString(),\n children: arrSecondaryMeasures,\n })\n }\n\n return {\n id: groupId,\n alias: groupId,\n children: groupChildren,\n }\n })\n\n // 只有1个散点图, 仅返回2层, vchart 绘制散点图\n if (scatterMeasures.length === 1) {\n return measureTree[0].children || []\n }\n\n // 有多个散点图, 返回3层, pivot chart 绘制组合散点图\n return measureTree\n}\n\nconst generateMeasuresByParentId = (measures: Measures) => {\n const scatterMeasures: ScatterMeasures = []\n const encodedMeasures: Measures = []\n\n measures.forEach((item) => {\n const id = item.parentId || DEFAULT_PARENT_ID\n\n if (!scatterMeasures.find((d) => d.id === id)) {\n scatterMeasures.push({\n id,\n yMeasures: [],\n xMeasures: [],\n })\n }\n const scatterChart = scatterMeasures.find((d) => d.id === id)\n if (!scatterChart || !Array.isArray(scatterChart.yMeasures) || !Array.isArray(scatterChart.xMeasures)) {\n return\n }\n\n const isYAxis = item.encoding === 'yAxis'\n const isXAxis = item.encoding === 'xAxis'\n const isOther = item.encoding && ['color', 'label', 'tooltip', 'detail'].includes(item.encoding)\n\n if (isYAxis) {\n scatterChart.yMeasures.push(item)\n } else if (isXAxis) {\n scatterChart.xMeasures.push(item)\n } else if (!isOther) {\n if (scatterChart.yMeasures.length !== 0) {\n scatterChart.yMeasures.push(item)\n } else {\n scatterChart.xMeasures.push(item)\n }\n } else {\n encodedMeasures.push(item)\n }\n })\n\n const res = scatterMeasuresToMeasureTree(scatterMeasures)\n\n if (encodedMeasures.length) {\n encodedMeasures.forEach((m) => {\n res.push(m)\n })\n }\n\n return res\n}\n"],"names":["buildMeasuresForScatter","advancedVSeed","context","vseed","isMeasureTreeWithChildren","isMeasureTreeWithParentId","generateMeasuresByParentId","scatterMeasuresToMeasureTree","clone","scatterMeasures","encodedMeasures","basicMeasuresToScatterMeasures","m","basicMeasures","yMeasures","xMeasures","index","item","encoding","isYAxis","isXAxis","isOther","measureTree","id","groupChildren","groupId","arrPrimaryMeasures","Array","alias","arrSecondaryMeasures","measures","DEFAULT_PARENT_ID","d","scatterChart","res"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { deleteMeasureTreeByCallback } from 'src/index'\nimport type { AdvancedPipe, Measure } from 'src/types'\n\nexport const pickMeasuresForReshape = (encodingKeys: string[]): AdvancedPipe => {\n return (advancedVSeed) => {\n const clonedMeasures = clone(advancedVSeed.measures)\n\n const deleteBy = (measure: Measure) => encodingKeys.includes(measure.encoding as string)\n\n deleteMeasureTreeByCallback(clonedMeasures, deleteBy)\n\n return {\n ...advancedVSeed,\n reshapeMeasures: clonedMeasures,\n }\n }\n}\n"],"names":["pickMeasuresForReshape","encodingKeys","advancedVSeed","clonedMeasures","clone","deleteBy","measure","deleteMeasureTreeByCallback"],"mappings":";;AAIO,MAAMA,yBAAyB,CAACC,eAC9B,CAACC;QACN,MAAMC,iBAAiBC,MAAMF,cAAc,QAAQ;QAEnD,MAAMG,WAAW,CAACC,UAAqBL,aAAa,QAAQ,CAACK,QAAQ,QAAQ;QAE7EC,4BAA4BJ,gBAAgBE;QAE5C,OAAO;YACL,GAAGH,aAAa;YAChB,iBAAiBC;QACnB;IACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/utils.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/utils.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/measures/utils.ts"],"sourcesContent":["import type { MeasureGroup, MeasureTree } from 'src/types'\n\n/**\n * @description 检查是否为指标树, 指标树深度大于1. 如果存在一个指标为组, 即有children配置, 则认为是指标树.\n * @param vseed vseed\n * @returns\n */\nexport const isMeasureTreeWithChildren = <T extends MeasureTree>(measures?: T) => {\n if (!measures) {\n return false\n }\n\n return measures.some((measure) => 'children' in measure)\n}\n\n/**\n * @description 检查是否为指标树, 指标树存在parentId. 如果存在一个指标有parentId, 则认为是指标树.\n * @param vseed vseed\n * @returns\n */\nexport const isMeasureTreeWithParentId = <T extends MeasureTree>(measures?: T) => {\n if (!measures) {\n return false\n }\n\n return measures.some((measure) => 'parentId' in measure)\n}\n\n/**\n * @description 保证指标树中的每一组都有children, 没有children的指标, 会被放到一个默认的指标组中.\n * @param measures 指标树\n * @returns\n */\nexport const normalizeMeasureTree = (measures: MeasureTree) => {\n const createEmptyMeasureGroup = (): MeasureGroup => {\n return {\n id: 'group',\n alias: '',\n children: [],\n }\n }\n\n let currentGroup: MeasureGroup = createEmptyMeasureGroup()\n const measureGroups: MeasureGroup[] = []\n for (const measure of measures) {\n if ('children' in measure) {\n // 当前指标组之前的所有独立指标成组\n if (currentGroup.children?.length) {\n currentGroup.id = [currentGroup.id, ...currentGroup.children.map((item) => item.id)].join('-')\n currentGroup.alias = currentGroup.children.map((item) => item.alias).join('-')\n measureGroups.push(currentGroup)\n currentGroup = createEmptyMeasureGroup()\n }\n // 当前是指标组\n measureGroups.push(measure)\n } else {\n currentGroup.children?.push(measure)\n }\n }\n\n // 最后一组\n if (currentGroup.children?.length) {\n currentGroup.id = [currentGroup.id, ...currentGroup.children.map((item) => item.id)].join('-')\n currentGroup.alias = currentGroup.children.map((item) => item.alias).join('-')\n measureGroups.push(currentGroup)\n currentGroup = createEmptyMeasureGroup()\n }\n\n return measureGroups\n}\n"],"names":["isMeasureTreeWithChildren","measures","measure","isMeasureTreeWithParentId","normalizeMeasureTree","createEmptyMeasureGroup","currentGroup","measureGroups","item"],"mappings":"AAOO,MAAMA,4BAA4B,CAAwBC;IAC/D,IAAI,CAACA,UACH,OAAO;IAGT,OAAOA,SAAS,IAAI,CAAC,CAACC,UAAY,cAAcA;AAClD;AAOO,MAAMC,4BAA4B,CAAwBF;IAC/D,IAAI,CAACA,UACH,OAAO;IAGT,OAAOA,SAAS,IAAI,CAAC,CAACC,UAAY,cAAcA;AAClD;AAOO,MAAME,uBAAuB,CAACH;IACnC,MAAMI,0BAA0B,IACvB;YACL,IAAI;YACJ,OAAO;YACP,UAAU,EAAE;QACd;IAGF,IAAIC,eAA6BD;IACjC,MAAME,gBAAgC,EAAE;IACxC,KAAK,MAAML,WAAWD,SACpB,IAAI,cAAcC,SAAS;QAEzB,IAAII,aAAa,QAAQ,EAAE,QAAQ;YACjCA,aAAa,EAAE,GAAG;gBAACA,aAAa,EAAE;mBAAKA,aAAa,QAAQ,CAAC,GAAG,CAAC,CAACE,OAASA,KAAK,EAAE;aAAE,CAAC,IAAI,CAAC;YAC1FF,aAAa,KAAK,GAAGA,aAAa,QAAQ,CAAC,GAAG,CAAC,CAACE,OAASA,KAAK,KAAK,EAAE,IAAI,CAAC;YAC1ED,cAAc,IAAI,CAACD;YACnBA,eAAeD;QACjB;QAEAE,cAAc,IAAI,CAACL;IACrB,OACEI,aAAa,QAAQ,EAAE,KAAKJ;IAKhC,IAAII,aAAa,QAAQ,EAAE,QAAQ;QACjCA,aAAa,EAAE,GAAG;YAACA,aAAa,EAAE;eAAKA,aAAa,QAAQ,CAAC,GAAG,CAAC,CAACE,OAASA,KAAK,EAAE;SAAE,CAAC,IAAI,CAAC;QAC1FF,aAAa,KAAK,GAAGA,aAAa,QAAQ,CAAC,GAAG,CAAC,CAACE,OAASA,KAAK,KAAK,EAAE,IAAI,CAAC;QAC1ED,cAAc,IAAI,CAACD;QACnBA,eAAeD;IACjB;IAEA,OAAOE;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/pivot/pivotAdapter.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/pivot/pivotAdapter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/pivot/pivotAdapter.ts"],"sourcesContent":["import type { AdvancedPipe, AdvancedPipeline, AdvancedPipelineContext, AdvancedVSeed } from 'src/types'\nimport { execPipeline, isPivotChart } from 'src/pipeline/utils'\n\nexport const pivotAdapter = (pipeline: AdvancedPipeline, pivotPipeline: AdvancedPipeline): AdvancedPipe => {\n return (advancedVSeed, context) => {\n const { vseed } = context\n const usePivotChart = isPivotChart(vseed)\n\n if (usePivotChart) {\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(pivotPipeline, context, advancedVSeed)\n }\n\n return execPipeline<AdvancedVSeed, AdvancedPipelineContext>(pipeline, context, advancedVSeed)\n }\n}\n"],"names":["pivotAdapter","pipeline","pivotPipeline","advancedVSeed","context","vseed","usePivotChart","isPivotChart","execPipeline"],"mappings":";AAGO,MAAMA,eAAe,CAACC,UAA4BC,gBAChD,CAACC,eAAeC;QACrB,MAAM,EAAEC,KAAK,EAAE,GAAGD;QAClB,MAAME,gBAAgBC,aAAaF;QAEnC,IAAIC,eACF,OAAOE,aAAqDN,eAAeE,SAASD;QAGtF,OAAOK,aAAqDP,UAAUG,SAASD;IACjF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/regressionLine/regressionLine.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/regressionLine/regressionLine.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/regressionLine/regressionLine.ts"],"sourcesContent":["import type { AdvancedPipe, RegressionLineConfig } from 'src/types'\n\nexport const regressionLine: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n let keys = [] as string[]\n\n if (vseed.chartType === 'histogram') {\n keys = ['kdeRegressionLine', 'ecdfRegressionLine']\n } else if (vseed.chartType === 'scatter') {\n keys = ['linearRegressionLine', 'lowessRegressionLine', 'polynomialRegressionLine', 'logisticRegressionLine']\n } else if (vseed.chartType === 'column') {\n keys = ['polynomialRegressionLine']\n }\n\n if (keys.length) {\n const regressionLineConfig: RegressionLineConfig = {}\n let hasLine = false\n\n keys.forEach((key: string) => {\n if ((vseed as any)[key]) {\n hasLine = true\n regressionLineConfig[key as keyof RegressionLineConfig] = (vseed as any)[key]\n }\n })\n\n return hasLine\n ? {\n ...advancedVSeed,\n regressionLine: regressionLineConfig,\n }\n : advancedVSeed\n }\n\n return advancedVSeed\n}\n"],"names":["regressionLine","advancedVSeed","context","vseed","keys","regressionLineConfig","hasLine","key"],"mappings":"AAEO,MAAMA,iBAA+B,CAACC,eAAeC;IAC1D,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,IAAIE,OAAO,EAAE;IAEb,IAAID,AAAoB,gBAApBA,MAAM,SAAS,EACjBC,OAAO;QAAC;QAAqB;KAAqB;SAC7C,IAAID,AAAoB,cAApBA,MAAM,SAAS,EACxBC,OAAO;QAAC;QAAwB;QAAwB;QAA4B;KAAyB;SACxG,IAAID,AAAoB,aAApBA,MAAM,SAAS,EACxBC,OAAO;QAAC;KAA2B;IAGrC,IAAIA,KAAK,MAAM,EAAE;QACf,MAAMC,uBAA6C,CAAC;QACpD,IAAIC,UAAU;QAEdF,KAAK,OAAO,CAAC,CAACG;YACZ,IAAKJ,KAAa,CAACI,IAAI,EAAE;gBACvBD,UAAU;gBACVD,oBAAoB,CAACE,IAAkC,GAAIJ,KAAa,CAACI,IAAI;YAC/E;QACF;QAEA,OAAOD,UACH;YACE,GAAGL,aAAa;YAChB,gBAAgBI;QAClB,IACAJ;IACN;IAEA,OAAOA;AACT"}
|
package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.ts"],"sourcesContent":["import { boxplot } from '@visactor/vdataset'\nimport { uniqueBy } from 'remeda'\nimport {\n FoldMeasureId,\n FoldMeasureName,\n LowerWhisker,\n MedianMeasureId,\n OutliersMeasureId,\n Q1MeasureValue,\n Q3MeasureValue,\n Separator,\n unfoldDimensions,\n UpperWhisker,\n} from 'src/dataReshape'\nimport { revisedBoxPlotFieldKey } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Dimension,\n Encoding,\n MeasureGroup,\n} from 'src/types'\n\nexport const pivotReshapeWithBoxplotEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding = {}, config } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n const uniqDims = uniqueBy(dimensions, (item: Dimension) => item.id)\n const chartConfig = config?.[chartType as 'boxPlot']\n const whiskers = chartConfig?.whiskers\n\n const measureGroups: MeasureGroup[] = []\n if (measures) {\n measures.forEach((measure: MeasureGroup) => {\n if (measure.children && measure.children.length > 0) {\n measureGroups.push(measure)\n }\n })\n }\n\n const rowColumnFields = uniqueBy(\n dimensions.filter((dim: Dimension) => dim.encoding === 'row' || dim.encoding === 'column'),\n (item: Dimension) => item.id,\n )\n const datasets: Dataset = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measureGroup, index) => {\n const subMeasures = measureGroup.children\n if (!subMeasures) {\n return\n }\n const groupId = measureGroup.id\n let newDatasets: any[] = []\n let foldInfo: any = {}\n let unfoldInfo: any = {}\n const validEncodingIds = (encoding.value || []).filter((id) => subMeasures.find((field) => field.id === id))\n\n if (validEncodingIds.length) {\n const boxPlotDataList: Dataset = []\n validEncodingIds.forEach((f) => {\n const m = subMeasures.find((m) => m.id === f)\n const boxPlotData = boxplot(dataset, {\n field: f,\n groupField: [\n ...(encoding.x ?? []),\n ...(encoding.color ?? []),\n ...rowColumnFields.map((item: Dimension) => item.id),\n ] as string[],\n whiskers,\n outputNames: {\n q1: Q1MeasureValue,\n q3: Q3MeasureValue,\n lowerWhisker: LowerWhisker,\n upperWhisker: UpperWhisker,\n median: MedianMeasureId,\n outliers: OutliersMeasureId,\n },\n }) as Dataset\n\n boxPlotData.forEach((datum) => {\n datum[FoldMeasureId] = f\n datum[FoldMeasureName] = m?.alias ?? f\n datum[revisedBoxPlotFieldKey(Q1MeasureValue, groupId)] = datum[Q1MeasureValue]\n datum[revisedBoxPlotFieldKey(Q3MeasureValue, groupId)] = datum[Q3MeasureValue]\n datum[revisedBoxPlotFieldKey(LowerWhisker, groupId)] = datum[LowerWhisker]\n datum[revisedBoxPlotFieldKey(UpperWhisker, groupId)] = datum[UpperWhisker]\n datum[revisedBoxPlotFieldKey(MedianMeasureId, groupId)] = datum[MedianMeasureId]\n datum[revisedBoxPlotFieldKey(OutliersMeasureId, groupId)] = datum[OutliersMeasureId]\n })\n\n boxPlotDataList.push(...boxPlotData)\n })\n const res = unfoldDimensions(boxPlotDataList, uniqDims, encoding as Encoding, {\n foldMeasureId: FoldMeasureId,\n separator: Separator,\n colorItemAsId: false,\n })\n\n res.dataset.forEach((d) => {\n newDatasets.push(d)\n })\n unfoldInfo = res.unfoldInfo\n } else if (\n encoding.q1?.length &&\n encoding.q3?.length &&\n encoding.min?.length &&\n encoding.max?.length &&\n encoding.median?.length\n ) {\n const res = unfoldDimensions(dataset, uniqDims, encoding as Encoding, {\n foldMeasureId: FoldMeasureId,\n separator: Separator,\n colorItemAsId: false,\n })\n\n res.dataset.forEach((datum) => {\n datum[UpperWhisker] = datum[encoding.max![0]]\n datum[revisedBoxPlotFieldKey(Q1MeasureValue, groupId)] = datum[encoding.max![0]]\n datum[LowerWhisker] = datum[encoding.min![0]]\n datum[revisedBoxPlotFieldKey(LowerWhisker, groupId)] = datum[encoding.min![0]]\n datum[Q1MeasureValue] = datum[encoding.q1![0]]\n datum[revisedBoxPlotFieldKey(Q1MeasureValue, groupId)] = datum[encoding.q1![0]]\n datum[Q3MeasureValue] = datum[encoding.q3![0]]\n datum[revisedBoxPlotFieldKey(Q3MeasureValue, groupId)] = datum[encoding.q3![0]]\n datum[MedianMeasureId] = datum[encoding.median![0]]\n datum[revisedBoxPlotFieldKey(MedianMeasureId, groupId)] = datum[encoding.median![0]]\n })\n\n newDatasets = res.dataset\n foldInfo = {}\n unfoldInfo = res.unfoldInfo\n }\n\n const reshapeInfo = {\n id: `${groupId}`,\n index,\n foldInfo,\n unfoldInfo,\n }\n datasets.push(newDatasets)\n datasetReshapeInfo.push(reshapeInfo)\n })\n\n return {\n ...result,\n dataset: datasets,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithBoxplotEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","config","measures","dimensions","uniqDims","uniqueBy","item","chartConfig","whiskers","measureGroups","measure","rowColumnFields","dim","datasets","datasetReshapeInfo","measureGroup","index","subMeasures","groupId","newDatasets","foldInfo","unfoldInfo","validEncodingIds","id","field","boxPlotDataList","f","m","boxPlotData","boxplot","Q1MeasureValue","Q3MeasureValue","LowerWhisker","UpperWhisker","MedianMeasureId","OutliersMeasureId","datum","FoldMeasureId","FoldMeasureName","revisedBoxPlotFieldKey","res","unfoldDimensions","Separator","d","reshapeInfo"],"mappings":"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"}
|
|
@@ -17,9 +17,9 @@ const pivotReshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
|
17
17
|
const measureGroups = [];
|
|
18
18
|
const depth = measureDepth(measures);
|
|
19
19
|
if (3 === depth) measures.forEach((measure)=>{
|
|
20
|
-
measureGroups.push(measure.children);
|
|
20
|
+
if (measure.children) measureGroups.push(measure.children);
|
|
21
21
|
});
|
|
22
|
-
else if (2 === depth) measureGroups.push(measures);
|
|
22
|
+
else if (2 === depth) measureGroups.push(measures.filter((m)=>m && m.children));
|
|
23
23
|
measureGroups.forEach((measures, index)=>{
|
|
24
24
|
if (measures.length > 2) throw new Error('measures can not be more than 2 groups in dualAxis');
|
|
25
25
|
const foldInfoList = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldPrimaryMeasureValue, FoldSecondaryMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures, measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Encoding,\n FoldInfo,\n Measure,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithDualEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { encoding, chartType } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n\n const allMeasures = findAllMeasures(measures)\n const datasetList: Dataset[] = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n const measureGroups: Array<MeasureGroup[]> = []\n\n const depth = measureDepth(measures)\n if (depth === 3) {\n measures.forEach((measure: MeasureGroup) => {\n if (measure.children) {\n measureGroups.push(measure.children as unknown as MeasureGroup[])\n }\n })\n } else if (depth === 2) {\n measureGroups.push(\n measures.filter((m: Measure | MeasureGroup) => m && (m as MeasureGroup).children) as unknown as MeasureGroup[],\n )\n }\n\n measureGroups.forEach((measures: MeasureGroup[], index) => {\n if (measures.length > 2) {\n throw new Error('measures can not be more than 2 groups in dualAxis')\n }\n\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const primaryMeasures = measures[0]\n const secondaryMeasures = measures[1] || []\n\n if (primaryMeasures && primaryMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(primaryMeasures.children, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldPrimaryMeasureValue}${index}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n omitIds: allMeasures.map((item) => item.id),\n },\n )\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n if (secondaryMeasures && secondaryMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(secondaryMeasures.children, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldSecondaryMeasureValue}${index}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n omitIds: allMeasures.map((item) => item.id),\n },\n )\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n const reshapeInfo = {\n id: `${chartType}-${index}`,\n index,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n }\n\n datasetReshapeInfo.push(reshapeInfo)\n datasetList.push(datasets.flat(2))\n })\n\n return {\n ...result,\n dataset: datasetList,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithDualEncoding","advancedVSeed","context","result","vseed","dataset","encoding","chartType","measures","dimensions","allMeasures","findAllMeasures","datasetList","datasetReshapeInfo","measureGroups","depth","measureDepth","measure","m","index","Error","foldInfoList","unfoldInfoList","datasets","primaryMeasures","secondaryMeasures","newDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","FoldPrimaryMeasureValue","getColorMeasureId","FoldSecondaryMeasureValue","d","prev","cur","reshapeInfo"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Encoding,\n MeasureGroup,\n} from 'src/types'\n\nexport const pivotReshapeWithEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { encoding } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n\n const allMeasures = findAllMeasures(measures)\n const measureGroups: MeasureGroup[] = []\n if (measures) {\n measures.forEach((measure: MeasureGroup) => {\n if (measure.children && measure.children.length > 0) {\n measureGroups.push(measure)\n }\n })\n }\n\n const datasets: Dataset = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measureGroup, index) => {\n const measures = measureGroup.children\n if (!measures) {\n return\n }\n const groupId = measureGroup.id\n const {\n dataset: newSubDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(measures, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldMeasureValue}${groupId}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n omitIds: allMeasures.map((item) => item.id),\n },\n )\n\n const reshapeInfo = {\n id: `${groupId}`,\n index,\n foldInfo,\n unfoldInfo,\n }\n datasets.push(newSubDataset)\n datasetReshapeInfo.push(reshapeInfo)\n })\n\n return {\n ...result,\n dataset: datasets,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithEncoding","advancedVSeed","context","result","vseed","dataset","encoding","measures","dimensions","allMeasures","findAllMeasures","measureGroups","measure","datasets","datasetReshapeInfo","measureGroup","index","groupId","newSubDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","FoldMeasureValue","getColorMeasureId","reshapeInfo"],"mappings":";;;;AAcO,MAAMA,2BAAyC,CAACC,eAAeC;IACpE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,QAAQ,EAAE,GAAGL;IACrB,MAAMM,WAAWN,cAAc,eAAe,IAAIA,cAAc,QAAQ,IAAI,EAAE;IAC9E,MAAMO,aAAaP,cAAc,iBAAiB,IAAIA,cAAc,UAAU,IAAI,EAAE;IAEpF,MAAMQ,cAAcC,gBAAgBH;IACpC,MAAMI,gBAAgC,EAAE;IACxC,IAAIJ,UACFA,SAAS,OAAO,CAAC,CAACK;QAChB,IAAIA,QAAQ,QAAQ,IAAIA,QAAQ,QAAQ,CAAC,MAAM,GAAG,GAChDD,cAAc,IAAI,CAACC;IAEvB;IAGF,MAAMC,WAAoB,EAAE;IAC5B,MAAMC,qBAAyC,EAAE;IAEjDH,cAAc,OAAO,CAAC,CAACI,cAAcC;QACnC,MAAMT,WAAWQ,aAAa,QAAQ;QACtC,IAAI,CAACR,UACH;QAEF,MAAMU,UAAUF,aAAa,EAAE;QAC/B,MAAM,EACJ,SAASG,aAAa,EACtBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFhB,SACAiB,SAASd,YAAY,CAACe,OAASA,KAAK,EAAE,GACtCD,SAASf,UAAU,CAACgB,OAASA,KAAK,EAAE,GACpCjB,UACA;YACE,eAAe;YACf,kBAAkB,GAAGkB,mBAAmBP,SAAS;YACjD,gBAAgBQ,kBAAkBxB,eAAgCG;YAClE,SAASK,YAAY,GAAG,CAAC,CAACc,OAASA,KAAK,EAAE;QAC5C;QAGF,MAAMG,cAAc;YAClB,IAAI,GAAGT,SAAS;YAChBD;YACAG;YACAC;QACF;QACAP,SAAS,IAAI,CAACK;QACdJ,mBAAmB,IAAI,CAACY;IAC1B;IAEA,OAAO;QACL,GAAGvB,MAAM;QACT,SAASU;QACT,oBAAoBC;IACtB;AACF"}
|
package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.ts"],"sourcesContent":["import { bin } from '@visactor/vdataset'\nimport { uniqueBy } from 'remeda'\nimport {\n BinCountMeasureId,\n BinEndMeasureId,\n BinPercentageMeasureId,\n BinStartMeasureId,\n dataReshapeByEncoding,\n FoldMeasureId,\n FoldMeasureName,\n FoldMeasureValue,\n Separator,\n unfoldDimensions,\n} from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Datum,\n Dimension,\n Encoding,\n FoldInfo,\n MeasureGroup,\n} from 'src/types'\n\nexport const pivotReshapeWithHistogramEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset, chartType } = vseed as ColumnParallel\n const { encoding = {}, config } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n const colorMeasureId = getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed)\n const uniqDims = uniqueBy(dimensions, (item: Dimension) => item.id)\n const chartConfig = config?.[chartType as 'histogram']\n const binCount = chartConfig?.binCount\n const binStep = chartConfig?.binStep\n const binValueType = chartConfig?.binValueType\n\n const measureGroups: MeasureGroup[] = []\n if (measures) {\n measures.forEach((measure: MeasureGroup) => {\n if (measure.children && measure.children.length > 0) {\n measureGroups.push(measure)\n }\n })\n }\n const rowColumnFields = uniqueBy(\n dimensions.filter((dim: Dimension) => dim.encoding === 'row' || dim.encoding === 'column'),\n (item: Dimension) => item.id,\n )\n\n const datasets: Dataset = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measureGroup, index) => {\n const subMeasures = measureGroup.children\n if (!subMeasures) {\n return\n }\n const groupId = measureGroup.id\n\n let newDatasets: any[] = []\n let foldInfo: FoldInfo = {\n foldMap: {},\n measureId: FoldMeasureId,\n measureName: FoldMeasureName,\n measureValue: FoldMeasureValue,\n statistics: {\n max: -Infinity,\n min: Infinity,\n sum: 0,\n count: 0,\n colorMin: Infinity,\n colorMax: -Infinity,\n },\n }\n let unfoldInfo: any = {}\n\n if (encoding.value?.length) {\n const valueField = encoding.value[0]\n const m = subMeasures.find((m) => m.id === valueField)\n const binData = bin(dataset, {\n field: valueField,\n groupField: [...(encoding.x ?? []), ...(encoding.color ?? [])] as string[],\n facetField: rowColumnFields.map((item: Dimension) => item.id),\n bins: binCount,\n step: binStep,\n outputNames: {\n x0: BinStartMeasureId,\n x1: BinEndMeasureId,\n count: BinCountMeasureId,\n percentage: BinPercentageMeasureId,\n },\n }) as Dataset\n\n binData.forEach((datum: Datum) => {\n datum[FoldMeasureId] = valueField\n datum[FoldMeasureName] = m?.alias ?? valueField\n const valueNumber = binValueType === 'percentage' ? +datum[BinPercentageMeasureId] : +datum[BinCountMeasureId]\n datum[FoldMeasureValue] = valueNumber\n datum[valueField] = valueNumber\n\n foldInfo.statistics.min = Math.min(foldInfo.statistics.min, valueNumber)\n foldInfo.statistics.max = Math.max(foldInfo.statistics.max, valueNumber)\n foldInfo.statistics.sum += valueNumber\n foldInfo.statistics.count++\n })\n if (m?.id) {\n foldInfo.foldMap[m?.id] = m?.alias\n }\n\n const res = unfoldDimensions(binData, uniqDims, encoding as Encoding, {\n foldMeasureId: FoldMeasureId,\n separator: Separator,\n colorItemAsId: false,\n })\n\n res.dataset.forEach((d) => {\n newDatasets.push(d)\n })\n unfoldInfo = res.unfoldInfo\n } else if (encoding.x0?.length && encoding.x1?.length && encoding.y?.length) {\n const res = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item: Dimension) => item.id),\n subMeasures.filter((item) => encoding.y?.includes(item.id)).slice(0, 1),\n encoding as Encoding,\n {\n colorItemAsId: false,\n colorMeasureId,\n },\n )\n\n res.dataset.forEach((datum) => {\n datum[BinStartMeasureId] = datum[encoding.x0![0]]\n datum[BinEndMeasureId] = datum[encoding.x1![0]]\n datum[FoldMeasureId] = datum[encoding.y![0]]\n })\n\n newDatasets = res.dataset\n foldInfo = res.foldInfo\n unfoldInfo = res.unfoldInfo\n }\n\n const reshapeInfo = {\n id: `${groupId}`,\n index,\n foldInfo,\n unfoldInfo,\n }\n datasets.push(newDatasets)\n datasetReshapeInfo.push(reshapeInfo)\n })\n\n return {\n ...result,\n dataset: datasets,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithHistogramEncoding","advancedVSeed","context","result","vseed","dataset","chartType","encoding","config","measures","dimensions","colorMeasureId","getColorMeasureId","uniqDims","uniqueBy","item","chartConfig","binCount","binStep","binValueType","measureGroups","measure","rowColumnFields","dim","datasets","datasetReshapeInfo","measureGroup","index","subMeasures","groupId","newDatasets","foldInfo","FoldMeasureId","FoldMeasureName","FoldMeasureValue","Infinity","unfoldInfo","valueField","m","binData","bin","BinStartMeasureId","BinEndMeasureId","BinCountMeasureId","BinPercentageMeasureId","datum","valueNumber","Math","res","unfoldDimensions","Separator","d","dataReshapeByEncoding","reshapeInfo"],"mappings":"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"}
|
package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js","sources":["
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.ts"],"sourcesContent":["import { dataReshapeByEncoding, FoldXMeasureValue, FoldYMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { findAllMeasures, measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Encoding,\n FoldInfo,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithScatterEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { encoding, chartType } = advancedVSeed\n const measures = advancedVSeed.reshapeMeasures ?? advancedVSeed.measures ?? []\n const dimensions = advancedVSeed.reshapeDimensions ?? advancedVSeed.dimensions ?? []\n const allMeasures = findAllMeasures(measures)\n\n const measureGroups: Array<MeasureGroup[]> = []\n\n const depth = measureDepth(measures)\n if (depth === 3) {\n measures.forEach((measure: MeasureGroup) => {\n measureGroups.push(measure.children as unknown as MeasureGroup[])\n })\n } else if (depth === 2) {\n measureGroups.push(measures)\n }\n\n const datasetList: Dataset[] = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measures: MeasureGroup[], index) => {\n if (measures.length > 2) {\n throw new Error('measures can not be more than 2 groups in scatter')\n }\n\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const xMeasures = measures[0]\n const yMeasures = measures[1] || xMeasures\n\n if (xMeasures && xMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(dataset, dimensions, xMeasures.children, encoding as Encoding, {\n foldMeasureValue: `${FoldXMeasureValue}${index}`,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n omitIds: allMeasures.map((item) => item.id),\n })\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n if (yMeasures && yMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(dataset, dimensions, yMeasures.children, encoding as Encoding, {\n foldMeasureValue: `${FoldYMeasureValue}${index}`,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed, vseed),\n omitIds: allMeasures.map((item) => item.id),\n })\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n const reshapeInfo = {\n id: `${chartType}-${index}`,\n index,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n }\n\n datasetReshapeInfo.push(reshapeInfo)\n datasetList.push(datasets[0].map((d, index) => ({ ...d, ...(datasets[1]?.[index] || {}) })))\n })\n\n return {\n ...result,\n dataset: datasetList,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithScatterEncoding","advancedVSeed","context","result","vseed","dataset","encoding","chartType","measures","dimensions","allMeasures","findAllMeasures","measureGroups","depth","measureDepth","measure","datasetList","datasetReshapeInfo","index","Error","foldInfoList","unfoldInfoList","datasets","xMeasures","yMeasures","newDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","FoldXMeasureValue","getColorMeasureId","item","FoldYMeasureValue","d","prev","cur","reshapeInfo"],"mappings":"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"}
|