@visactor/vseed 0.2.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/builder/builder/builder.d.ts +164 -128
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js +19 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/donut.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/donut.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js +1 -6
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js +9 -7
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js +15 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/pie.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js +9 -8
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +1 -6
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js +0 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js +1 -2
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js +2 -4
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js +4 -4
- package/dist/esm/pipeline/advanced/chart/pipes/dimensions/pickDimensionsForReshape.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/boxplot.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +5 -15
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js +4 -6
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js +2 -5
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/histogram.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js +7 -14
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +5 -7
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js +2 -5
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.d.ts +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js +19 -50
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js +25 -118
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js +30 -115
- package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/index.d.ts +0 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/index.js +1 -2
- package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.d.ts +12 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js +12 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/utils.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js +6 -12
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +25 -28
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js +6 -11
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js +4 -8
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js +23 -35
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js +3 -8
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +21 -17
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js +1 -2
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js +4 -9
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +22 -27
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js +3 -3
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js +3 -2
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureId.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js +2 -2
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js +5 -5
- package/dist/esm/pipeline/advanced/table/pipes/encoding/pivotTable.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js +3 -5
- package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/boxplot.js +3 -3
- package/dist/esm/pipeline/spec/chart/pipeline/boxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js +17 -45
- package/dist/esm/pipeline/spec/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js +3 -3
- package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPointOfDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/histogramXLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.d.ts +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js +2 -6
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +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 +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 +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 +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 +16 -13
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js +10 -13
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js +1 -3
- package/dist/esm/pipeline/spec/chart/pipes/color/colorAdapter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js +4 -12
- package/dist/esm/pipeline/spec/chart/pipes/color/linearColorForDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.d.ts +2 -3
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js +38 -78
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/index.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/index.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.d.ts +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js +16 -75
- package/dist/esm/pipeline/spec/chart/pipes/dual/dualChartType.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dual/index.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dual/index.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.d.ts +2 -3
- package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js +16 -32
- package/dist/esm/pipeline/spec/chart/pipes/init/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/index.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/index.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/label/index.d.ts +2 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/index.js +3 -2
- package/dist/esm/pipeline/spec/chart/pipes/label/label.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js +4 -2
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.js +21 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.d.ts +2 -3
- package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js +14 -30
- 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/markStyle/boxPlotStyle.js +7 -5
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/boxPlotStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js +3 -6
- package/dist/esm/pipeline/spec/chart/pipes/markStyle/outlierStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js +5 -5
- package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotIndicators.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/ecdfRegressionLine.js +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 +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/regressionLine/kdeRegressionLine.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/series/series.d.ts +3 -3
- package/dist/esm/pipeline/spec/chart/pipes/series/series.js +45 -17
- package/dist/esm/pipeline/spec/chart/pipes/series/series.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.d.ts +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js +5 -5
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +3 -3
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.d.ts +2 -3
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js +28 -62
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js +4 -4
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.d.ts +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js +4 -4
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js +2 -2
- package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js +2 -2
- package/dist/esm/pipeline/spec/table/pipes/columns/measuresToColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js +1 -1
- package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/indicators/pivotDataConfig.js +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 +4 -4
- package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js.map +1 -1
- package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js +3 -3
- package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
- package/dist/esm/pipeline/utils/chatType.d.ts +9 -0
- package/dist/esm/pipeline/utils/chatType.js +33 -21
- package/dist/esm/pipeline/utils/chatType.js.map +1 -1
- package/dist/esm/pipeline/utils/measures/find.d.ts +2 -1
- package/dist/esm/pipeline/utils/measures/find.js +3 -13
- package/dist/esm/pipeline/utils/measures/find.js.map +1 -1
- package/dist/esm/theme/common/boxPlot.js +10 -7
- package/dist/esm/theme/common/boxPlot.js.map +1 -1
- package/dist/esm/theme/dark/dark.js +0 -4
- package/dist/esm/theme/dark/dark.js.map +1 -1
- package/dist/esm/theme/light/light.js +0 -4
- package/dist/esm/theme/light/light.js.map +1 -1
- package/dist/esm/types/advancedVSeed.d.ts +141 -72
- package/dist/esm/types/advancedVSeed.js +8 -6
- package/dist/esm/types/advancedVSeed.js.map +1 -1
- package/dist/esm/types/chartType/area/area.d.ts +3 -5
- package/dist/esm/types/chartType/area/zArea.d.ts +11 -2
- package/dist/esm/types/chartType/area/zArea.js +2 -2
- package/dist/esm/types/chartType/area/zArea.js.map +1 -1
- package/dist/esm/types/chartType/areaPercent/areaPercent.d.ts +3 -5
- package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +11 -2
- package/dist/esm/types/chartType/areaPercent/zAreaPercent.js +2 -2
- package/dist/esm/types/chartType/areaPercent/zAreaPercent.js.map +1 -1
- package/dist/esm/types/chartType/bar/bar.d.ts +4 -6
- package/dist/esm/types/chartType/bar/zBar.d.ts +11 -2
- package/dist/esm/types/chartType/bar/zBar.js +2 -2
- package/dist/esm/types/chartType/bar/zBar.js.map +1 -1
- package/dist/esm/types/chartType/barParallel/barParallel.d.ts +3 -5
- package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +11 -2
- package/dist/esm/types/chartType/barParallel/zBarParallel.js +2 -2
- package/dist/esm/types/chartType/barParallel/zBarParallel.js.map +1 -1
- package/dist/esm/types/chartType/barPercent/barPercent.d.ts +3 -3
- package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +11 -2
- package/dist/esm/types/chartType/barPercent/zBarPercent.js +2 -2
- package/dist/esm/types/chartType/barPercent/zBarPercent.js.map +1 -1
- package/dist/esm/types/chartType/boxPlot/boxPlot.d.ts +3 -5
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +13 -4
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.js +2 -2
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.js.map +1 -1
- package/dist/esm/types/chartType/column/column.d.ts +3 -5
- package/dist/esm/types/chartType/column/zColumn.d.ts +11 -2
- package/dist/esm/types/chartType/column/zColumn.js +2 -2
- package/dist/esm/types/chartType/column/zColumn.js.map +1 -1
- package/dist/esm/types/chartType/columnParallel/columnParallel.d.ts +4 -6
- package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +11 -2
- package/dist/esm/types/chartType/columnParallel/zColumnParallel.js +2 -2
- package/dist/esm/types/chartType/columnParallel/zColumnParallel.js.map +1 -1
- package/dist/esm/types/chartType/columnPercent/columnPercent.d.ts +3 -5
- package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +11 -2
- package/dist/esm/types/chartType/columnPercent/zColumnPercent.js +2 -2
- package/dist/esm/types/chartType/columnPercent/zColumnPercent.js.map +1 -1
- package/dist/esm/types/chartType/donut/donut.d.ts +3 -5
- package/dist/esm/types/chartType/donut/zDonut.d.ts +11 -2
- package/dist/esm/types/chartType/donut/zDonut.js +2 -2
- package/dist/esm/types/chartType/donut/zDonut.js.map +1 -1
- package/dist/esm/types/chartType/dualAxis/dualAxis.d.ts +7 -88
- package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +9 -358
- package/dist/esm/types/chartType/dualAxis/zDualAxis.js +2 -4
- package/dist/esm/types/chartType/dualAxis/zDualAxis.js.map +1 -1
- package/dist/esm/types/chartType/funnel/funnel.d.ts +3 -5
- package/dist/esm/types/chartType/funnel/zFunnel.d.ts +11 -2
- package/dist/esm/types/chartType/funnel/zFunnel.js +2 -2
- package/dist/esm/types/chartType/funnel/zFunnel.js.map +1 -1
- package/dist/esm/types/chartType/heatmap/heatmap.d.ts +4 -6
- package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +11 -2
- package/dist/esm/types/chartType/heatmap/zHeatmap.js +2 -2
- package/dist/esm/types/chartType/heatmap/zHeatmap.js.map +1 -1
- package/dist/esm/types/chartType/histogram/histogram.d.ts +3 -5
- package/dist/esm/types/chartType/histogram/zHistogram.d.ts +11 -2
- package/dist/esm/types/chartType/histogram/zHistogram.js +2 -2
- package/dist/esm/types/chartType/histogram/zHistogram.js.map +1 -1
- package/dist/esm/types/chartType/line/line.d.ts +3 -4
- package/dist/esm/types/chartType/line/zLine.d.ts +11 -2
- package/dist/esm/types/chartType/line/zLine.js +2 -2
- package/dist/esm/types/chartType/line/zLine.js.map +1 -1
- package/dist/esm/types/chartType/pie/pie.d.ts +3 -5
- package/dist/esm/types/chartType/pie/zPie.d.ts +11 -2
- package/dist/esm/types/chartType/pie/zPie.js +2 -2
- package/dist/esm/types/chartType/pie/zPie.js.map +1 -1
- package/dist/esm/types/chartType/pivotTable/pivotTable.d.ts +4 -4
- package/dist/esm/types/chartType/pivotTable/zPivotTable.d.ts +9 -0
- package/dist/esm/types/chartType/radar/radar.d.ts +4 -6
- package/dist/esm/types/chartType/radar/zRadar.d.ts +11 -2
- package/dist/esm/types/chartType/radar/zRadar.js +2 -2
- package/dist/esm/types/chartType/radar/zRadar.js.map +1 -1
- package/dist/esm/types/chartType/rose/rose.d.ts +4 -6
- package/dist/esm/types/chartType/rose/zRose.d.ts +11 -2
- package/dist/esm/types/chartType/rose/zRose.js +2 -2
- package/dist/esm/types/chartType/rose/zRose.js.map +1 -1
- package/dist/esm/types/chartType/roseParallel/roseParallel.d.ts +4 -6
- package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +11 -2
- package/dist/esm/types/chartType/roseParallel/zRoseParallel.js +2 -2
- package/dist/esm/types/chartType/roseParallel/zRoseParallel.js.map +1 -1
- package/dist/esm/types/chartType/scatter/scatter.d.ts +5 -75
- package/dist/esm/types/chartType/scatter/zScatter.d.ts +10 -310
- package/dist/esm/types/chartType/scatter/zScatter.js +2 -3
- package/dist/esm/types/chartType/scatter/zScatter.js.map +1 -1
- package/dist/esm/types/chartType/table/zTable.d.ts +9 -0
- package/dist/esm/types/properties/chartType/index.d.ts +0 -2
- package/dist/esm/types/properties/chartType/index.js +1 -2
- package/dist/esm/types/properties/config/boxplot.d.ts +1 -1
- package/dist/esm/types/properties/config/config.d.ts +1 -32
- package/dist/esm/types/properties/config/dualAxis.d.ts +7 -31
- package/dist/esm/types/properties/config/dualAxis.js +0 -2
- package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
- package/dist/esm/types/properties/dimensions/areaDimension.d.ts +3 -0
- package/dist/esm/types/properties/dimensions/barDimension.d.ts +16 -0
- package/dist/esm/types/properties/dimensions/{dimensions.d.ts → baseDimension.d.ts} +13 -14
- package/dist/esm/types/properties/dimensions/boxPlotDimension.d.ts +13 -0
- package/dist/esm/types/properties/dimensions/columnDimension.d.ts +19 -0
- package/dist/esm/types/properties/dimensions/columnDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/donutDimension.d.ts +2 -0
- package/dist/esm/types/properties/dimensions/donutDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/dualAxisDimension.d.ts +2 -0
- package/dist/esm/types/properties/dimensions/dualAxisDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/funnelDimension.d.ts +2 -0
- package/dist/esm/types/properties/dimensions/funnelDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/heatmapDimension.d.ts +13 -0
- package/dist/esm/types/properties/dimensions/heatmapDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/histogramDimension.d.ts +13 -0
- package/dist/esm/types/properties/dimensions/histogramDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/index.d.ts +16 -1
- package/dist/esm/types/properties/dimensions/lineDimension.d.ts +2 -0
- package/dist/esm/types/properties/dimensions/lineDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/pieDimension.d.ts +13 -0
- package/dist/esm/types/properties/dimensions/pieDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/radarDimension.d.ts +14 -0
- package/dist/esm/types/properties/dimensions/radarDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/roseDimension.d.ts +3 -0
- package/dist/esm/types/properties/dimensions/roseDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/scatterDimension.d.ts +13 -0
- package/dist/esm/types/properties/dimensions/scatterDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/tableDimension.d.ts +18 -0
- package/dist/esm/types/properties/dimensions/tableDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/zDimensions.d.ts +1 -1
- package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
- package/dist/esm/types/properties/markStyle/boxPlotStyle.d.ts +5 -5
- package/dist/esm/types/properties/markStyle/boxPlotStyle.js +2 -2
- package/dist/esm/types/properties/markStyle/boxPlotStyle.js.map +1 -1
- package/dist/esm/types/properties/markStyle/markStyle.d.ts +2 -2
- package/dist/esm/types/properties/measures/areaMeasure.d.ts +2 -0
- package/dist/esm/types/properties/measures/areaMeasure.js +0 -0
- package/dist/esm/types/properties/measures/barMeasure.d.ts +14 -0
- package/dist/esm/types/properties/measures/barMeasure.js +0 -0
- package/dist/esm/types/properties/measures/{measures.d.ts → baseMeasure.d.ts} +29 -13
- package/dist/esm/types/properties/measures/baseMeasure.js +0 -0
- package/dist/esm/types/properties/measures/boxPlotMeasure.d.ts +18 -0
- package/dist/esm/types/properties/measures/boxPlotMeasure.js +0 -0
- package/dist/esm/types/properties/measures/columnMeasure.d.ts +14 -0
- package/dist/esm/types/properties/measures/columnMeasure.js +0 -0
- package/dist/esm/types/properties/measures/dualAxisMeasure.d.ts +23 -0
- package/dist/esm/types/properties/measures/dualAxisMeasure.js +0 -0
- package/dist/esm/types/properties/measures/funnelMeasure.d.ts +11 -0
- package/dist/esm/types/properties/measures/funnelMeasure.js +0 -0
- package/dist/esm/types/properties/measures/heatmapMeasure.d.ts +10 -0
- package/dist/esm/types/properties/measures/heatmapMeasure.js +0 -0
- package/dist/esm/types/properties/measures/histogramMeasure.d.ts +13 -0
- package/dist/esm/types/properties/measures/histogramMeasure.js +0 -0
- package/dist/esm/types/properties/measures/index.d.ts +15 -4
- package/dist/esm/types/properties/measures/index.js +0 -1
- package/dist/esm/types/properties/measures/lineMeasure.d.ts +2 -0
- package/dist/esm/types/properties/measures/lineMeasure.js +0 -0
- package/dist/esm/types/properties/measures/measureTree.d.ts +17 -0
- package/dist/esm/types/properties/measures/measureTree.js +0 -0
- package/dist/esm/types/properties/measures/pieMeasure.d.ts +12 -0
- package/dist/esm/types/properties/measures/pieMeasure.js +0 -0
- package/dist/esm/types/properties/measures/radarMeasure.d.ts +13 -0
- package/dist/esm/types/properties/measures/radarMeasure.js +0 -0
- package/dist/esm/types/properties/measures/scatterMeasure.d.ts +13 -0
- package/dist/esm/types/properties/measures/scatterMeasure.js +0 -0
- package/dist/esm/types/properties/measures/tableMeasure.d.ts +8 -0
- package/dist/esm/types/properties/measures/tableMeasure.js +0 -0
- package/dist/esm/types/properties/measures/zDualMeasures.d.ts +154 -612
- package/dist/esm/types/properties/measures/zDualMeasures.js +15 -10
- package/dist/esm/types/properties/measures/zDualMeasures.js.map +1 -1
- package/dist/esm/types/properties/measures/zMeasures.d.ts +28 -1
- package/dist/esm/types/properties/measures/zMeasures.js +10 -1
- package/dist/esm/types/properties/measures/zMeasures.js.map +1 -1
- package/dist/esm/types/properties/theme/customTheme.d.ts +2 -64
- package/dist/esm/types/zVseed.d.ts +237 -706
- package/dist/umd/index.js +899 -1368
- package/dist/umd/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.d.ts +0 -2
- package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js +0 -14
- package/dist/esm/pipeline/advanced/chart/pipes/measures/pickMeasuresForReshape.js.map +0 -1
- package/dist/esm/types/properties/chartType/dualChartType.d.ts +0 -18
- package/dist/esm/types/properties/chartType/dualChartType.js +0 -20
- package/dist/esm/types/properties/chartType/dualChartType.js.map +0 -1
- package/dist/esm/types/properties/measures/dualMeasures.d.ts +0 -7
- package/dist/esm/types/properties/measures/scatterMeasures.d.ts +0 -7
- package/dist/esm/types/properties/measures/zScatterMeasures.d.ts +0 -619
- package/dist/esm/types/properties/measures/zScatterMeasures.js +0 -17
- package/dist/esm/types/properties/measures/zScatterMeasures.js.map +0 -1
- /package/dist/esm/types/properties/dimensions/{dimensions.js → areaDimension.js} +0 -0
- /package/dist/esm/types/properties/{measures/dualMeasures.js → dimensions/barDimension.js} +0 -0
- /package/dist/esm/types/properties/{measures/measures.js → dimensions/baseDimension.js} +0 -0
- /package/dist/esm/types/properties/{measures/scatterMeasures.js → dimensions/boxPlotDimension.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltip.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltip.ts"],"sourcesContent":["import { pipe, uniqueBy } from 'remeda'\nimport { createFormatterByMeasure,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltip.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltip.ts"],"sourcesContent":["import { pipe, uniqueBy } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimensions,\n FoldInfo,\n Measures,\n VChartSpecPipe,\n TooltipConfig,\n UnfoldInfo,\n Dimension,\n Measure,\n} from 'src/types'\nimport { ORIGINAL_DATA } from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltip: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType as 'line'] as { tooltip: TooltipConfig }\n const { tooltip = { enable: true } } = baseConfig\n const { enable = true } = tooltip\n const { foldInfo, unfoldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n visible: !!enable,\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures as Measures, foldInfo, unfoldInfo),\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, measures, foldInfo, unfoldInfo),\n },\n\n updateElement: updateTooltipElement,\n }\n return result\n}\n\nexport const createDimensionContent = (\n dimensions: Dimensions = [],\n measures: Measures = [],\n foldInfo: FoldInfo,\n unfoldInfo: UnfoldInfo,\n) => {\n const { measureId, measureValue, foldMap } = foldInfo\n const { encodingColor } = unfoldInfo\n\n return [\n {\n visible: true,\n shapeType: 'rectRound',\n hasShape: true,\n key: dimensions.some((d) => d.encoding === 'color')\n ? (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[encodingColor] as string)) || ''\n\n return unfoldInfo.colorIdMap[key].alias ?? key\n }\n : (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[measureId] as string)) || ''\n return foldMap[key] ?? key\n },\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[measureValue] as string | number\n const id = datum[measureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n },\n ]\n}\n\nexport const createMarkContent = (\n tooltip: string[],\n dimensions: Dimensions = [],\n measures: Measures = [],\n foldInfo: FoldInfo,\n unfoldInfo: UnfoldInfo,\n) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n const meas = pipe(\n measures.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Measure) => item.id),\n uniqueBy((item: Measure) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (v: unknown) => {\n const datum = v as Datum\n if (item.alias || item.id) {\n return item.alias || item.id\n }\n return datum && (datum[item.id] as string)\n },\n value: (v: unknown) => {\n const datum = v as Datum\n return datum && (datum[item.id] as string)\n },\n }))\n\n const meaContent = meas.map((item: Measure) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias || item.id,\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const id = item.id\n if (!datum || !datum[ORIGINAL_DATA] || !datum[ORIGINAL_DATA]) {\n return ''\n }\n const originalData = datum[ORIGINAL_DATA] as Datum\n const value = originalData[id] as string | number\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }))\n\n const defaultContent = {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (v: unknown) => {\n const { measureName } = foldInfo\n const { encodingColor: colorName } = unfoldInfo\n\n const datum = v as Datum\n return (datum && (datum[measureName || colorName] as string)) || ''\n },\n value: (v: unknown) => {\n const { measureId, measureValue } = foldInfo\n\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[measureValue] as string | number\n const id = datum[measureId] as string\n const measure = findMeasureById(measures, id)\n if (!measure) {\n return String(value)\n }\n\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }\n\n return [...dimContent, defaultContent, ...meaContent]\n}\n"],"names":["tooltip","spec","context","result","advancedVSeed","vseed","measures","datasetReshapeInfo","chartType","dimensions","encoding","baseConfig","enable","foldInfo","unfoldInfo","getTooltipStyle","createMarkContent","createDimensionContent","updateTooltipElement","measureId","measureValue","foldMap","encodingColor","d","v","datum","key","value","id","measure","findMeasureById","formatter","createFormatterByMeasure","dims","pipe","item","uniqueBy","meas","dimContent","meaContent","ORIGINAL_DATA","originalData","defaultContent","measureName","colorName","String"],"mappings":";;;;;AAiBO,MAAMA,kBAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,WAAW,EAAE,EAAEC,kBAAkB,EAAEC,SAAS,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAE,GAAGN;IACpF,MAAMO,aAAaP,cAAc,MAAM,CAACI,UAAoB;IAC5D,MAAM,EAAER,UAAU;QAAE,QAAQ;IAAK,CAAC,EAAE,GAAGW;IACvC,MAAM,EAAEC,SAAS,IAAI,EAAE,GAAGZ;IAC1B,MAAM,EAAEa,QAAQ,EAAEC,UAAU,EAAE,GAAGP,kBAAkB,CAAC,EAAE;IAKtDJ,OAAO,OAAO,GAAG;QACf,OAAOY,gBAAgBf;QACvB,SAAS,CAAC,CAACY;QACX,MAAM;YACJ,OAAO;gBACL,SAAS;YACX;YACA,SAASI,kBAAkBN,SAAS,OAAO,IAAI,EAAE,EAAED,YAAYJ,MAAM,QAAQ,EAAcQ,UAAUC;QACvG;QACA,WAAW;YACT,OAAO;gBACL,SAAS;YACX;YACA,SAASG,uBAAuBR,YAAYH,UAAUO,UAAUC;QAClE;QAEA,eAAeI;IACjB;IACA,OAAOf;AACT;AAEO,MAAMc,yBAAyB,CACpCR,aAAyB,EAAE,EAC3BH,WAAqB,EAAE,EACvBO,UACAC;IAEA,MAAM,EAAEK,SAAS,EAAEC,YAAY,EAAEC,OAAO,EAAE,GAAGR;IAC7C,MAAM,EAAES,aAAa,EAAE,GAAGR;IAE1B,OAAO;QACL;YACE,SAAS;YACT,WAAW;YACX,UAAU;YACV,KAAKL,WAAW,IAAI,CAAC,CAACc,IAAMA,AAAe,YAAfA,EAAE,QAAQ,IAClC,CAACC;gBACC,MAAMC,QAAQD;gBACd,MAAME,MAAOD,SAAUA,KAAK,CAACH,cAAc,IAAgB;gBAE3D,OAAOR,WAAW,UAAU,CAACY,IAAI,CAAC,KAAK,IAAIA;YAC7C,IACA,CAACF;gBACC,MAAMC,QAAQD;gBACd,MAAME,MAAOD,SAAUA,KAAK,CAACN,UAAU,IAAgB;gBACvD,OAAOE,OAAO,CAACK,IAAI,IAAIA;YACzB;YACJ,OAAO,CAACF;gBACN,MAAMC,QAAQD;gBACd,IAAI,CAACC,OACH,OAAO;gBAET,MAAME,QAAQF,KAAK,CAACL,aAAa;gBACjC,MAAMQ,KAAKH,KAAK,CAACN,UAAU;gBAC3B,MAAMU,UAAUC,gBAAgBxB,UAAUsB;gBAC1C,MAAMG,YAAYC,yBAAyBH;gBAC3C,OAAOE,UAAUJ;YACnB;QACF;KACD;AACH;AAEO,MAAMX,oBAAoB,CAC/BhB,SACAS,aAAyB,EAAE,EAC3BH,WAAqB,EAAE,EACvBO,UACAC;IAEA,MAAMmB,OAAOC,KACXzB,WAAW,MAAM,CAAC,CAAC0B,OAASnC,QAAQ,QAAQ,CAACmC,KAAK,EAAE,IACpDC,SAAS,CAACD,OAAoBA,KAAK,EAAE,GACrCC,SAAS,CAACD,OAAoBA,KAAK,KAAK;IAE1C,MAAME,OAAOH,KACX5B,SAAS,MAAM,CAAC,CAAC6B,OAASnC,QAAQ,QAAQ,CAACmC,KAAK,EAAE,IAClDC,SAAS,CAACD,OAAkBA,KAAK,EAAE,GACnCC,SAAS,CAACD,OAAkBA,KAAK,KAAK;IAGxC,MAAMG,aAAaL,KAAK,GAAG,CAAC,CAACE,OAAqB;YAChD,SAAS;YACT,UAAU;YACV,WAAW;YACX,KAAK,CAACX;gBACJ,MAAMC,QAAQD;gBACd,IAAIW,KAAK,KAAK,IAAIA,KAAK,EAAE,EACvB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAE9B,OAAOV,SAAUA,KAAK,CAACU,KAAK,EAAE,CAAC;YACjC;YACA,OAAO,CAACX;gBACN,MAAMC,QAAQD;gBACd,OAAOC,SAAUA,KAAK,CAACU,KAAK,EAAE,CAAC;YACjC;QACF;IAEA,MAAMI,aAAaF,KAAK,GAAG,CAAC,CAACF,OAAmB;YAC9C,SAAS;YACT,UAAU;YACV,WAAW;YACX,KAAKA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAC1B,OAAO,CAACX;gBACN,MAAMC,QAAQD;gBACd,IAAI,CAACC,OACH,OAAO;gBAET,MAAMG,KAAKO,KAAK,EAAE;gBAClB,IAAI,CAACV,SAAS,CAACA,KAAK,CAACe,cAAc,IAAI,CAACf,KAAK,CAACe,cAAc,EAC1D,OAAO;gBAET,MAAMC,eAAehB,KAAK,CAACe,cAAc;gBACzC,MAAMb,QAAQc,YAAY,CAACb,GAAG;gBAC9B,MAAMC,UAAUC,gBAAgBxB,UAAUsB;gBAC1C,MAAMG,YAAYC,yBAAyBH;gBAC3C,OAAOE,UAAUJ;YACnB;QACF;IAEA,MAAMe,iBAAiB;QACrB,SAAS;QACT,UAAU;QACV,WAAW;QACX,KAAK,CAAClB;YACJ,MAAM,EAAEmB,WAAW,EAAE,GAAG9B;YACxB,MAAM,EAAE,eAAe+B,SAAS,EAAE,GAAG9B;YAErC,MAAMW,QAAQD;YACd,OAAQC,SAAUA,KAAK,CAACkB,eAAeC,UAAU,IAAgB;QACnE;QACA,OAAO,CAACpB;YACN,MAAM,EAAEL,SAAS,EAAEC,YAAY,EAAE,GAAGP;YAEpC,MAAMY,QAAQD;YACd,IAAI,CAACC,OACH,OAAO;YAET,MAAME,QAAQF,KAAK,CAACL,aAAa;YACjC,MAAMQ,KAAKH,KAAK,CAACN,UAAU;YAC3B,MAAMU,UAAUC,gBAAgBxB,UAAUsB;YAC1C,IAAI,CAACC,SACH,OAAOgB,OAAOlB;YAGhB,MAAMI,YAAYC,yBAAyBH;YAC3C,OAAOE,UAAUJ;QACnB;IACF;IAEA,OAAO;WAAIW;QAAYI;WAAmBH;KAAW;AACvD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { isNullish, pipe, uniqueBy } from "remeda";
|
|
2
|
-
import { createFormatterByMeasure,
|
|
2
|
+
import { createFormatterByMeasure, findMeasureById } from "../../../../utils/index.js";
|
|
3
3
|
import { ColorEncoding, LowerWhisker, MeasureId, MeasureName, MedianMeasureId, OutliersMeasureId, Q1MeasureValue, Q3MeasureValue, UpperWhisker, XEncoding } from "../../../../../dataReshape/index.js";
|
|
4
4
|
import { getTooltipStyle } from "./tooltipStyle.js";
|
|
5
5
|
import { intl } from "../../../../../i18n/index.js";
|
|
@@ -17,13 +17,13 @@ const tooltipBoxplot = (spec, context)=>{
|
|
|
17
17
|
...spec
|
|
18
18
|
};
|
|
19
19
|
const { advancedVSeed, vseed } = context;
|
|
20
|
-
const { chartType, dimensions, encoding, datasetReshapeInfo } = advancedVSeed;
|
|
20
|
+
const { chartType, dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed;
|
|
21
21
|
const baseConfig = advancedVSeed.config[chartType];
|
|
22
22
|
const { tooltip = {
|
|
23
23
|
enable: true
|
|
24
24
|
} } = baseConfig;
|
|
25
25
|
const { enable } = tooltip;
|
|
26
|
-
const meas =
|
|
26
|
+
const meas = vseed.measures ?? [];
|
|
27
27
|
const valueMeasure = meas.find((item)=>'value' === item.encoding || isNullish(item.encoding));
|
|
28
28
|
const defaultFormatter = valueMeasure ? createFormatterByMeasure(valueMeasure) : (v)=>v;
|
|
29
29
|
const measureAliasMapping = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport { createFormatterByMeasure, findAllMeasures, findMeasureById } from '../../../../utils'\nimport type {\n Dimension,\n Dimensions,\n Encoding,\n VChartSpecPipe,\n Tooltip,\n Measures,\n FoldInfo,\n UnfoldInfo,\n} from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern, ITooltipLineActual, TooltipData } from '@visactor/vchart'\nimport {\n ColorEncoding,\n LowerWhisker,\n MeasureId,\n MeasureName,\n MedianMeasureId,\n OutliersMeasureId,\n Q1MeasureValue,\n Q3MeasureValue,\n UpperWhisker,\n XEncoding,\n} from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { intl } from 'src/i18n'\nimport { updateTooltipElement } from './tooltipElement'\n\nconst boxPlotMeasureKeys = [UpperWhisker, Q3MeasureValue, MedianMeasureId, Q1MeasureValue, LowerWhisker]\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipBoxplot: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { chartType, dimensions, encoding, datasetReshapeInfo } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType as 'boxPlot'] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const meas = findAllMeasures(vseed.measures)\n const valueMeasure = meas.find((item) => item.encoding === 'value' || isNullish(item.encoding))\n const defaultFormatter = valueMeasure ? createFormatterByMeasure(valueMeasure) : (v: unknown) => v\n const measureAliasMapping: Record<string, string> = {\n [OutliersMeasureId]: intl.i18n`异常点`,\n [UpperWhisker]: intl.i18n`上边界`,\n [Q3MeasureValue]: intl.i18n`上四分位数`,\n [MedianMeasureId]: intl.i18n`中位数`,\n [Q1MeasureValue]: intl.i18n`下四分位数`,\n [LowerWhisker]: intl.i18n`下边界`,\n }\n const { unfoldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n visible: enable,\n style: getTooltipStyle(tooltip),\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, encoding as Encoding),\n updateContent: (prev: ITooltipLineActual[] | undefined, data: TooltipData | undefined) => {\n const datum = (data as any)?.[0]?.datum?.[0]\n\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n const tooltipItems: ITooltipLineActual[] = (prev ?? []).filter(\n (item: any) => !boxPlotMeasureKeys.includes(item.key as string),\n )\n const outerlierMeasure = meas.find((item) => item.id === OutliersMeasureId)\n const formatter = outerlierMeasure ? createFormatterByMeasure(outerlierMeasure) : defaultFormatter\n\n tooltipItems.push({\n ...(tooltipItems[0] as any),\n key: outerlierMeasure?.alias ?? measureAliasMapping[OutliersMeasureId],\n value: formatter(datum?.[VCHART_OUTLIER_KEY] as number) as string,\n } as ITooltipLineActual)\n\n return tooltipItems\n }\n\n return (prev ?? []).map((entry) => {\n if (boxPlotMeasureKeys.includes((entry as any).key as string)) {\n const mea = meas.find((item) => item.id === (entry as any).key)\n const formatter = mea ? createFormatterByMeasure(mea) : defaultFormatter\n\n return {\n ...(entry as any),\n value: formatter(datum?.[(entry as any).key] as number) as string,\n key: mea?.alias ?? measureAliasMapping[entry?.key as string] ?? (entry as any).key,\n }\n }\n\n return entry\n }) as ITooltipLineActual[]\n },\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, meas, unfoldInfo, measureAliasMapping[MedianMeasureId]),\n },\n updateElement: updateTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (tooltip: string[], dimensions: Dimensions, encoding: Encoding) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return datum?.[item.id] as string\n },\n }))\n\n const defaultContent = boxPlotMeasureKeys.map((key: string) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key,\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return datum[key] as string | number\n },\n }\n })\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n\nconst createDimensionContent = (\n dimensions: Dimensions,\n measures: Measures,\n unfoldInfo: UnfoldInfo,\n medianAlias: string,\n) => {\n const { encodingColor } = unfoldInfo\n\n return [\n {\n visible: true,\n shapeType: 'rectRound',\n hasShape: true,\n key: dimensions.some((d) => d.encoding === 'color')\n ? (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[encodingColor] as string)) || ''\n return `${unfoldInfo.colorIdMap[key].alias ?? key}(${medianAlias})`\n }\n : (v: unknown) => {\n const datum = v as Datum\n return `${datum[MeasureName] ?? datum[MeasureId]}(${medianAlias})`\n },\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[MedianMeasureId] as string | number // dimension tooltip 中默认显示中位数\n const id = datum[MeasureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n },\n ]\n}\n"],"names":["boxPlotMeasureKeys","UpperWhisker","Q3MeasureValue","MedianMeasureId","Q1MeasureValue","LowerWhisker","VCHART_OUTLIER_KEY","tooltipBoxplot","spec","context","result","advancedVSeed","vseed","chartType","dimensions","encoding","datasetReshapeInfo","baseConfig","tooltip","enable","meas","findAllMeasures","valueMeasure","item","isNullish","defaultFormatter","createFormatterByMeasure","v","measureAliasMapping","OutliersMeasureId","intl","unfoldInfo","getTooltipStyle","createMarkContent","prev","data","datum","tooltipItems","outerlierMeasure","formatter","entry","mea","createDimensionContent","updateTooltipElement","dims","pipe","uniqueBy","dimContent","ColorEncoding","XEncoding","defaultContent","key","measures","medianAlias","encodingColor","d","MeasureName","MeasureId","value","id","measure","findMeasureById"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type {\n Dimension,\n Dimensions,\n Encoding,\n VChartSpecPipe,\n Tooltip,\n Measures,\n FoldInfo,\n UnfoldInfo,\n} from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern, ITooltipLineActual, TooltipData } from '@visactor/vchart'\nimport {\n ColorEncoding,\n LowerWhisker,\n MeasureId,\n MeasureName,\n MedianMeasureId,\n OutliersMeasureId,\n Q1MeasureValue,\n Q3MeasureValue,\n UpperWhisker,\n XEncoding,\n} from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { intl } from 'src/i18n'\nimport { updateTooltipElement } from './tooltipElement'\n\nconst boxPlotMeasureKeys = [UpperWhisker, Q3MeasureValue, MedianMeasureId, Q1MeasureValue, LowerWhisker]\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipBoxplot: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { chartType, dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType as 'boxPlot'] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const meas = (vseed.measures ?? []) as Measures\n const valueMeasure = meas.find((item) => item.encoding === 'value' || isNullish(item.encoding))\n const defaultFormatter = valueMeasure ? createFormatterByMeasure(valueMeasure) : (v: unknown) => v\n const measureAliasMapping: Record<string, string> = {\n [OutliersMeasureId]: intl.i18n`异常点`,\n [UpperWhisker]: intl.i18n`上边界`,\n [Q3MeasureValue]: intl.i18n`上四分位数`,\n [MedianMeasureId]: intl.i18n`中位数`,\n [Q1MeasureValue]: intl.i18n`下四分位数`,\n [LowerWhisker]: intl.i18n`下边界`,\n }\n const { unfoldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n visible: enable,\n style: getTooltipStyle(tooltip),\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, encoding as Encoding),\n updateContent: (prev: ITooltipLineActual[] | undefined, data: TooltipData | undefined) => {\n const datum = (data as any)?.[0]?.datum?.[0]\n\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n const tooltipItems: ITooltipLineActual[] = (prev ?? []).filter(\n (item: any) => !boxPlotMeasureKeys.includes(item.key as string),\n )\n const outerlierMeasure = meas.find((item) => item.id === OutliersMeasureId)\n const formatter = outerlierMeasure ? createFormatterByMeasure(outerlierMeasure) : defaultFormatter\n\n tooltipItems.push({\n ...(tooltipItems[0] as any),\n key: outerlierMeasure?.alias ?? measureAliasMapping[OutliersMeasureId],\n value: formatter(datum?.[VCHART_OUTLIER_KEY] as number) as string,\n } as ITooltipLineActual)\n\n return tooltipItems\n }\n\n return (prev ?? []).map((entry) => {\n if (boxPlotMeasureKeys.includes((entry as any).key as string)) {\n const mea = meas.find((item) => item.id === (entry as any).key)\n const formatter = mea ? createFormatterByMeasure(mea) : defaultFormatter\n\n return {\n ...(entry as any),\n value: formatter(datum?.[(entry as any).key] as number) as string,\n key: mea?.alias ?? measureAliasMapping[entry?.key as string] ?? (entry as any).key,\n }\n }\n\n return entry\n }) as ITooltipLineActual[]\n },\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, meas, unfoldInfo, measureAliasMapping[MedianMeasureId]),\n },\n updateElement: updateTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (tooltip: string[], dimensions: Dimensions, encoding: Encoding) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return datum?.[item.id] as string\n },\n }))\n\n const defaultContent = boxPlotMeasureKeys.map((key: string) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key,\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return datum[key] as string | number\n },\n }\n })\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n\nconst createDimensionContent = (\n dimensions: Dimensions,\n measures: Measures,\n unfoldInfo: UnfoldInfo,\n medianAlias: string,\n) => {\n const { encodingColor } = unfoldInfo\n\n return [\n {\n visible: true,\n shapeType: 'rectRound',\n hasShape: true,\n key: dimensions.some((d) => d.encoding === 'color')\n ? (v: unknown) => {\n const datum = v as Datum\n const key = (datum && (datum[encodingColor] as string)) || ''\n return `${unfoldInfo.colorIdMap[key].alias ?? key}(${medianAlias})`\n }\n : (v: unknown) => {\n const datum = v as Datum\n return `${datum[MeasureName] ?? datum[MeasureId]}(${medianAlias})`\n },\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[MedianMeasureId] as string | number // dimension tooltip 中默认显示中位数\n const id = datum[MeasureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n },\n ]\n}\n"],"names":["boxPlotMeasureKeys","UpperWhisker","Q3MeasureValue","MedianMeasureId","Q1MeasureValue","LowerWhisker","VCHART_OUTLIER_KEY","tooltipBoxplot","spec","context","result","advancedVSeed","vseed","chartType","dimensions","encoding","datasetReshapeInfo","baseConfig","tooltip","enable","meas","valueMeasure","item","isNullish","defaultFormatter","createFormatterByMeasure","v","measureAliasMapping","OutliersMeasureId","intl","unfoldInfo","getTooltipStyle","createMarkContent","prev","data","datum","tooltipItems","outerlierMeasure","formatter","entry","mea","createDimensionContent","updateTooltipElement","dims","pipe","uniqueBy","dimContent","ColorEncoding","XEncoding","defaultContent","key","measures","medianAlias","encodingColor","d","MeasureName","MeasureId","value","id","measure","findMeasureById"],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { VChartSpecPipe } from '../../../../../types';
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const tooltipSecondary: VChartSpecPipe;
|
|
1
|
+
import type { VChartSpecPipe, DualAxisOptions } from '../../../../../types';
|
|
2
|
+
export declare const tooltipOfDualAxisSeries: (options: DualAxisOptions) => VChartSpecPipe;
|
|
4
3
|
export declare const tooltipDualAxis: VChartSpecPipe;
|
|
@@ -1,69 +1,35 @@
|
|
|
1
|
-
import { isNullish } from "remeda";
|
|
2
1
|
import { createDimensionContent, createMarkContent } from "./tooltip.js";
|
|
3
|
-
import { findAllMeasures } from "../../../../utils/index.js";
|
|
4
2
|
import { getTooltipStyle } from "./tooltipStyle.js";
|
|
5
3
|
import { updateTooltipElement } from "./tooltipElement.js";
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
content: createMarkContent(encoding.tooltip || [], dimensions, findAllMeasures(vseed.measures), foldInfoList[0], unfoldInfo)
|
|
26
|
-
},
|
|
27
|
-
dimension: {
|
|
28
|
-
title: {
|
|
29
|
-
visible: true
|
|
30
|
-
},
|
|
31
|
-
content: createDimensionContent(dimensions, measures, foldInfoList[0], unfoldInfo)
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
return result;
|
|
35
|
-
};
|
|
36
|
-
const tooltipSecondary = (spec, context)=>{
|
|
37
|
-
const result = {
|
|
38
|
-
...spec
|
|
39
|
-
};
|
|
40
|
-
const { advancedVSeed, vseed } = context;
|
|
41
|
-
const { measures, datasetReshapeInfo, chartType, dimensions, encoding } = advancedVSeed;
|
|
42
|
-
const baseConfig = advancedVSeed.config[chartType];
|
|
43
|
-
const { tooltip = {
|
|
44
|
-
enable: true
|
|
45
|
-
} } = baseConfig;
|
|
46
|
-
const { enable } = tooltip;
|
|
47
|
-
if (isNullish(datasetReshapeInfo[0].foldInfoList?.[1])) return result;
|
|
48
|
-
const foldInfoList = datasetReshapeInfo[0].foldInfoList;
|
|
49
|
-
const unfoldInfo = datasetReshapeInfo[0].unfoldInfo;
|
|
50
|
-
result.tooltip = {
|
|
51
|
-
visible: enable,
|
|
52
|
-
mark: {
|
|
53
|
-
title: {
|
|
54
|
-
visible: false
|
|
4
|
+
const tooltipOfDualAxisSeries = (options)=>(spec, context)=>{
|
|
5
|
+
const result = {
|
|
6
|
+
...spec
|
|
7
|
+
};
|
|
8
|
+
const { advancedVSeed, vseed } = context;
|
|
9
|
+
const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed;
|
|
10
|
+
const baseConfig = advancedVSeed.config[chartType];
|
|
11
|
+
const { tooltip = {
|
|
12
|
+
enable: true
|
|
13
|
+
} } = baseConfig;
|
|
14
|
+
const { enable } = tooltip;
|
|
15
|
+
const unfoldInfo = datasetReshapeInfo[0].unfoldInfo;
|
|
16
|
+
result.tooltip = {
|
|
17
|
+
visible: enable,
|
|
18
|
+
mark: {
|
|
19
|
+
title: {
|
|
20
|
+
visible: false
|
|
21
|
+
},
|
|
22
|
+
content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures, options.foldInfo, unfoldInfo)
|
|
55
23
|
},
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
24
|
+
dimension: {
|
|
25
|
+
title: {
|
|
26
|
+
visible: true
|
|
27
|
+
},
|
|
28
|
+
content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo)
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
return result;
|
|
64
32
|
};
|
|
65
|
-
return result;
|
|
66
|
-
};
|
|
67
33
|
const tooltipDualAxis = (spec, context)=>{
|
|
68
34
|
const result = {
|
|
69
35
|
...spec
|
|
@@ -80,6 +46,6 @@ const tooltipDualAxis = (spec, context)=>{
|
|
|
80
46
|
};
|
|
81
47
|
return result;
|
|
82
48
|
};
|
|
83
|
-
export { tooltipDualAxis,
|
|
49
|
+
export { tooltipDualAxis, tooltipOfDualAxisSeries };
|
|
84
50
|
|
|
85
51
|
//# sourceMappingURL=tooltipDualAxis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.ts"],"sourcesContent":["import { createDimensionContent, createMarkContent } from './tooltip'\nimport type { VChartSpecPipe, Tooltip, Measures, DualAxisOptions } from 'src/types'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltipOfDualAxisSeries = (options: DualAxisOptions): VChartSpecPipe => {\n return (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { measures = [], datasetReshapeInfo, chartType, dimensions = [], encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n\n const unfoldInfo = datasetReshapeInfo[0].unfoldInfo\n\n result.tooltip = {\n visible: enable,\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n vseed.measures as Measures,\n options.foldInfo,\n unfoldInfo,\n ),\n },\n dimension: {\n title: {\n visible: true,\n },\n content: createDimensionContent(dimensions, measures, options.foldInfo, unfoldInfo),\n },\n }\n return result\n }\n}\n\nexport const tooltipDualAxis: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n updateElement: updateTooltipElement,\n }\n return result\n}\n"],"names":["tooltipOfDualAxisSeries","options","spec","context","result","advancedVSeed","vseed","measures","datasetReshapeInfo","chartType","dimensions","encoding","baseConfig","tooltip","enable","unfoldInfo","createMarkContent","createDimensionContent","tooltipDualAxis","getTooltipStyle","updateTooltipElement"],"mappings":";;;AAKO,MAAMA,0BAA0B,CAACC,UAC/B,CAACC,MAAMC;QACZ,MAAMC,SAAS;YAAE,GAAGF,IAAI;QAAC;QACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;QACjC,MAAM,EAAEI,WAAW,EAAE,EAAEC,kBAAkB,EAAEC,SAAS,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAE,GAAGN;QACpF,MAAMO,aAAaP,cAAc,MAAM,CAACI,UAAU;QAClD,MAAM,EAAEI,UAAU;YAAE,QAAQ;QAAK,CAAC,EAAE,GAAGD;QACvC,MAAM,EAAEE,MAAM,EAAE,GAAGD;QAEnB,MAAME,aAAaP,kBAAkB,CAAC,EAAE,CAAC,UAAU;QAEnDJ,OAAO,OAAO,GAAG;YACf,SAASU;YACT,MAAM;gBACJ,OAAO;oBACL,SAAS;gBACX;gBACA,SAASE,kBACPL,SAAS,OAAO,IAAI,EAAE,EACtBD,YACAJ,MAAM,QAAQ,EACdL,QAAQ,QAAQ,EAChBc;YAEJ;YACA,WAAW;gBACT,OAAO;oBACL,SAAS;gBACX;gBACA,SAASE,uBAAuBP,YAAYH,UAAUN,QAAQ,QAAQ,EAAEc;YAC1E;QACF;QACA,OAAOX;IACT;AAGK,MAAMc,kBAAkC,CAAChB,MAAMC;IACpD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEM,SAAS,EAAE,GAAGJ;IACtB,MAAMO,aAAaP,cAAc,MAAM,CAACI,UAAU;IAClD,MAAM,EAAEI,UAAU;QAAE,QAAQ;IAAK,CAAC,EAAE,GAAGD;IAEvCR,OAAO,OAAO,GAAG;QACf,OAAOe,gBAAgBN;QACvB,eAAeO;IACjB;IACA,OAAOhB;AACT"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Dimensions, FoldInfo, Locale, Measures, VChartSpecPipe } from '../../../../../types';
|
|
2
2
|
export declare const tooltipHeatmap: VChartSpecPipe;
|
|
3
|
-
export declare const createMarkContent: (tooltip: string[], dimensions: Dimensions, measures: Measures, locale: Locale, foldInfo: FoldInfo) => ({
|
|
3
|
+
export declare const createMarkContent: (tooltip: string[], dimensions: Dimensions, measures: Measures | undefined, locale: Locale, foldInfo: FoldInfo) => ({
|
|
4
4
|
visible: boolean;
|
|
5
5
|
hasShape: boolean;
|
|
6
6
|
shapeType: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { uniqueBy } from "remeda";
|
|
2
|
-
import { createFormatterByMeasure,
|
|
2
|
+
import { createFormatterByMeasure, findMeasureById } from "../../../../utils/index.js";
|
|
3
3
|
import { ORIGINAL_DATA } from "../../../../../dataReshape/index.js";
|
|
4
4
|
import { getTooltipStyle } from "./tooltipStyle.js";
|
|
5
5
|
import { updateTooltipElement } from "./tooltipElement.js";
|
|
@@ -8,7 +8,7 @@ const tooltipHeatmap = (spec, context)=>{
|
|
|
8
8
|
...spec
|
|
9
9
|
};
|
|
10
10
|
const { advancedVSeed, vseed } = context;
|
|
11
|
-
const { datasetReshapeInfo, chartType, locale, dimensions, encoding } = advancedVSeed;
|
|
11
|
+
const { datasetReshapeInfo, chartType, locale, dimensions = [], encoding } = advancedVSeed;
|
|
12
12
|
const baseConfig = advancedVSeed.config[chartType];
|
|
13
13
|
const { tooltip = {
|
|
14
14
|
enable: true
|
|
@@ -22,7 +22,7 @@ const tooltipHeatmap = (spec, context)=>{
|
|
|
22
22
|
title: {
|
|
23
23
|
visible: false
|
|
24
24
|
},
|
|
25
|
-
content: createMarkContent(encoding.tooltip || [], dimensions,
|
|
25
|
+
content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures, locale, foldInfo)
|
|
26
26
|
},
|
|
27
27
|
dimension: {
|
|
28
28
|
visible: false
|
|
@@ -31,7 +31,7 @@ const tooltipHeatmap = (spec, context)=>{
|
|
|
31
31
|
};
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
|
-
const createMarkContent = (tooltip, dimensions, measures, locale, foldInfo)=>{
|
|
34
|
+
const createMarkContent = (tooltip, dimensions, measures = [], locale, foldInfo)=>{
|
|
35
35
|
const dims = uniqueBy(dimensions.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
|
|
36
36
|
const meas = uniqueBy(measures.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
|
|
37
37
|
const dimContent = dims.map((item)=>({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { createFormatterByMeasure,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type { Datum, Dimensions, FoldInfo, Locale, Measures, VChartSpecPipe, Tooltip, UnfoldInfo } from 'src/types'\nimport { ORIGINAL_DATA } from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltipHeatmap: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, chartType, locale, dimensions = [], encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const { foldInfo } = datasetReshapeInfo[0] as unknown as {\n foldInfo: FoldInfo\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n visible: enable,\n\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures as Measures, locale, foldInfo),\n },\n dimension: {\n visible: false,\n },\n updateElement: updateTooltipElement,\n }\n return result\n}\n\nexport const createMarkContent = (\n tooltip: string[],\n dimensions: Dimensions,\n measures: Measures = [],\n locale: Locale,\n foldInfo: FoldInfo,\n) => {\n const dims = uniqueBy(\n dimensions.filter((item) => tooltip.includes(item.id)),\n (item) => item.id,\n )\n const meas = uniqueBy(\n measures.filter((item) => tooltip.includes(item.id)),\n (item) => item.id,\n )\n\n const dimContent = dims.map((item) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (v: unknown) => {\n const datum = v as Datum\n if (item.alias || item.id) {\n return item.alias || item.id\n }\n return datum && (datum[item.id] as string)\n },\n value: (v: unknown) => {\n const datum = v as Datum\n return datum && (datum[item.id] as string)\n },\n }))\n\n const meaContent = meas.map((item) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias || item.id,\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const id = item.id\n if (!datum || !datum[ORIGINAL_DATA] || !datum[ORIGINAL_DATA]) {\n return ''\n }\n const originalData = datum[ORIGINAL_DATA] as Datum\n const value = originalData[id] as string | number\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }))\n\n const foldMeaContent = [foldInfo].map((foldInfo) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (v: unknown) => {\n const { measureId, foldMap } = foldInfo\n const datum = v as Datum\n const id = datum[measureId] as string\n return foldMap[id] || id\n },\n value: (v: unknown) => {\n const { measureId, measureValue } = foldInfo\n\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[measureValue] as string | number\n const id = datum[measureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }\n })\n return [...dimContent, ...foldMeaContent, ...meaContent]\n}\n"],"names":["tooltipHeatmap","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","locale","dimensions","encoding","baseConfig","tooltip","enable","foldInfo","getTooltipStyle","createMarkContent","updateTooltipElement","measures","dims","uniqueBy","item","meas","dimContent","v","datum","meaContent","id","ORIGINAL_DATA","originalData","value","measure","findMeasureById","formatter","createFormatterByMeasure","foldMeaContent","measureId","foldMap","measureValue"],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ const tooltipHistogram = (spec, context)=>{
|
|
|
9
9
|
...spec
|
|
10
10
|
};
|
|
11
11
|
const { advancedVSeed } = context;
|
|
12
|
-
const { chartType, dimensions, encoding } = advancedVSeed;
|
|
12
|
+
const { chartType, dimensions = [], encoding } = advancedVSeed;
|
|
13
13
|
const baseConfig = advancedVSeed.config[chartType];
|
|
14
14
|
const { binValueType, tooltip = {
|
|
15
15
|
enable: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport type { Dimension, Dimensions, Encoding, VChartSpecPipe, Tooltip } from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern } from '@visactor/vchart'\nimport { BinEndMeasureId, BinStartMeasureId, ColorEncoding, FoldMeasureValue, XEncoding } from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { getDefaultValueFormatterOfHistogram, getDefaultXFormatterOfHistogram } from '../../utils/histogram'\nimport { updateMarkTooltipElement } from './tooltipElement'\n\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipHistogram: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { chartType, dimensions, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip; binValueType: 'count' | 'percentage' }\n const { binValueType, tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const defaultXFormatter = getDefaultXFormatterOfHistogram(advancedVSeed)\n const defaultValueFormatter = getDefaultValueFormatterOfHistogram(binValueType)\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n visible: enable,\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n encoding as Encoding,\n defaultXFormatter,\n defaultValueFormatter,\n ),\n },\n dimension: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n encoding as Encoding,\n defaultXFormatter,\n defaultValueFormatter,\n ),\n },\n\n updateElement: updateMarkTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (\n tooltip: string[],\n dimensions: Dimensions,\n encoding: Encoding,\n dimFormatter: (value: number) => string,\n defaultValueFormatter: (value: number | string) => string,\n) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return defaultValueFormatter(datum?.[item.id] as string)\n },\n }))\n\n const defaultContent = [\n {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return `[${dimFormatter(+datum[BinStartMeasureId])}, ${dimFormatter(+datum[BinEndMeasureId])})`\n },\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return defaultValueFormatter(datum[FoldMeasureValue] as string | number)\n },\n },\n ]\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n"],"names":["VCHART_OUTLIER_KEY","tooltipHistogram","spec","context","result","advancedVSeed","chartType","dimensions","encoding","baseConfig","binValueType","tooltip","enable","defaultXFormatter","getDefaultXFormatterOfHistogram","defaultValueFormatter","getDefaultValueFormatterOfHistogram","getTooltipStyle","createMarkContent","updateMarkTooltipElement","dimFormatter","dims","pipe","item","uniqueBy","dimContent","datum","isNullish","ColorEncoding","XEncoding","defaultContent","BinStartMeasureId","BinEndMeasureId","FoldMeasureValue"],"mappings":";;;;;AAQA,MAAMA,qBAAqB;AAEpB,MAAMC,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,SAAS,EAAEC,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipHistogram.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipHistogram.ts"],"sourcesContent":["import { pipe, uniqueBy, isNullish } from 'remeda'\nimport type { Dimension, Dimensions, Encoding, VChartSpecPipe, Tooltip } from 'src/types'\nimport type { Datum, ISpec, ITooltipLinePattern } from '@visactor/vchart'\nimport { BinEndMeasureId, BinStartMeasureId, ColorEncoding, FoldMeasureValue, XEncoding } from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { getDefaultValueFormatterOfHistogram, getDefaultXFormatterOfHistogram } from '../../utils/histogram'\nimport { updateMarkTooltipElement } from './tooltipElement'\n\nconst VCHART_OUTLIER_KEY = '__VCHART_BOX_PLOT_OUTLIER_VALUE'\n\nexport const tooltipHistogram: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { chartType, dimensions = [], encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip; binValueType: 'count' | 'percentage' }\n const { binValueType, tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const defaultXFormatter = getDefaultXFormatterOfHistogram(advancedVSeed)\n const defaultValueFormatter = getDefaultValueFormatterOfHistogram(binValueType)\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n visible: enable,\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n encoding as Encoding,\n defaultXFormatter,\n defaultValueFormatter,\n ),\n },\n dimension: {\n title: {\n visible: false,\n },\n content: createMarkContent(\n encoding.tooltip || [],\n dimensions,\n encoding as Encoding,\n defaultXFormatter,\n defaultValueFormatter,\n ),\n },\n\n updateElement: updateMarkTooltipElement,\n }\n return result as unknown as ISpec\n}\n\nconst createMarkContent = (\n tooltip: string[],\n dimensions: Dimensions,\n encoding: Encoding,\n dimFormatter: (value: number) => string,\n defaultValueFormatter: (value: number | string) => string,\n) => {\n const dims = pipe(\n dimensions.filter((item) => tooltip.includes(item.id)),\n uniqueBy((item: Dimension) => item.id),\n uniqueBy((item: Dimension) => item.alias),\n )\n\n const dimContent = dims.map((item: Dimension) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias ?? item.id,\n value: (datum: Datum | undefined) => {\n if (!isNullish(datum?.[VCHART_OUTLIER_KEY])) {\n if (encoding.color?.includes(item.id)) {\n return datum?.[ColorEncoding] as string\n }\n if (encoding.x?.includes(item.id)) {\n return datum?.[XEncoding] as string\n }\n }\n\n return defaultValueFormatter(datum?.[item.id] as string)\n },\n }))\n\n const defaultContent = [\n {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return `[${dimFormatter(+datum[BinStartMeasureId])}, ${dimFormatter(+datum[BinEndMeasureId])})`\n },\n value: (datum: Datum | undefined) => {\n if (!datum) {\n return ''\n }\n return defaultValueFormatter(datum[FoldMeasureValue] as string | number)\n },\n },\n ]\n\n return [...dimContent, defaultContent] as ITooltipLinePattern[]\n}\n"],"names":["VCHART_OUTLIER_KEY","tooltipHistogram","spec","context","result","advancedVSeed","chartType","dimensions","encoding","baseConfig","binValueType","tooltip","enable","defaultXFormatter","getDefaultXFormatterOfHistogram","defaultValueFormatter","getDefaultValueFormatterOfHistogram","getTooltipStyle","createMarkContent","updateMarkTooltipElement","dimFormatter","dims","pipe","item","uniqueBy","dimContent","datum","isNullish","ColorEncoding","XEncoding","defaultContent","BinStartMeasureId","BinEndMeasureId","FoldMeasureValue"],"mappings":";;;;;AAQA,MAAMA,qBAAqB;AAEpB,MAAMC,mBAAmC,CAACC,MAAMC;IACrD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,SAAS,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAE,GAAGH;IACjD,MAAMI,aAAaJ,cAAc,MAAM,CAACC,UAAU;IAClD,MAAM,EAAEI,YAAY,EAAEC,UAAU;QAAE,QAAQ;IAAK,CAAC,EAAE,GAAGF;IACrD,MAAM,EAAEG,MAAM,EAAE,GAAGD;IACnB,MAAME,oBAAoBC,gCAAgCT;IAC1D,MAAMU,wBAAwBC,oCAAoCN;IAElEN,OAAO,OAAO,GAAG;QACf,OAAOa,gBAAgBN;QACvB,SAASC;QACT,MAAM;YACJ,OAAO;gBACL,SAAS;YACX;YACA,SAASM,kBACPV,SAAS,OAAO,IAAI,EAAE,EACtBD,YACAC,UACAK,mBACAE;QAEJ;QACA,WAAW;YACT,OAAO;gBACL,SAAS;YACX;YACA,SAASG,kBACPV,SAAS,OAAO,IAAI,EAAE,EACtBD,YACAC,UACAK,mBACAE;QAEJ;QAEA,eAAeI;IACjB;IACA,OAAOf;AACT;AAEA,MAAMc,oBAAoB,CACxBP,SACAJ,YACAC,UACAY,cACAL;IAEA,MAAMM,OAAOC,KACXf,WAAW,MAAM,CAAC,CAACgB,OAASZ,QAAQ,QAAQ,CAACY,KAAK,EAAE,IACpDC,SAAS,CAACD,OAAoBA,KAAK,EAAE,GACrCC,SAAS,CAACD,OAAoBA,KAAK,KAAK;IAG1C,MAAME,aAAaJ,KAAK,GAAG,CAAC,CAACE,OAAqB;YAChD,SAAS;YACT,UAAU;YACV,WAAW;YACX,KAAKA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAC1B,OAAO,CAACG;gBACN,IAAI,CAACC,UAAUD,OAAO,CAAC1B,mBAAmB,GAAG;oBAC3C,IAAIQ,SAAS,KAAK,EAAE,SAASe,KAAK,EAAE,GAClC,OAAOG,OAAO,CAACE,cAAc;oBAE/B,IAAIpB,SAAS,CAAC,EAAE,SAASe,KAAK,EAAE,GAC9B,OAAOG,OAAO,CAACG,UAAU;gBAE7B;gBAEA,OAAOd,sBAAsBW,OAAO,CAACH,KAAK,EAAE,CAAC;YAC/C;QACF;IAEA,MAAMO,iBAAiB;QACrB;YACE,SAAS;YACT,UAAU;YACV,WAAW;YACX,KAAK,CAACJ;gBACJ,IAAI,CAACA,OACH,OAAO;gBAET,OAAO,CAAC,CAAC,EAAEN,aAAa,CAACM,KAAK,CAACK,kBAAkB,EAAE,EAAE,EAAEX,aAAa,CAACM,KAAK,CAACM,gBAAgB,EAAE,CAAC,CAAC;YACjG;YACA,OAAO,CAACN;gBACN,IAAI,CAACA,OACH,OAAO;gBAET,OAAOX,sBAAsBW,KAAK,CAACO,iBAAiB;YACtD;QACF;KACD;IAED,OAAO;WAAIR;QAAYK;KAAe;AACxC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Dimensions, FoldInfo, Locale, Measures, VChartSpecPipe } from '../../../../../types';
|
|
2
2
|
export declare const tooltipScatter: VChartSpecPipe;
|
|
3
|
-
export declare const createMarkContent: (tooltip: string[], dimensions: Dimensions, measures: Measures, locale: Locale, foldInfoList: FoldInfo[]) => ({
|
|
3
|
+
export declare const createMarkContent: (tooltip: string[], dimensions: Dimensions, measures: Measures | undefined, locale: Locale, foldInfoList: FoldInfo[]) => ({
|
|
4
4
|
visible: boolean;
|
|
5
5
|
hasShape: boolean;
|
|
6
6
|
shapeType: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { uniqueBy } from "remeda";
|
|
2
|
-
import { createFormatterByMeasure,
|
|
2
|
+
import { createFormatterByMeasure, findMeasureById } from "../../../../utils/index.js";
|
|
3
3
|
import { ORIGINAL_DATA } from "../../../../../dataReshape/index.js";
|
|
4
4
|
import { getTooltipStyle } from "./tooltipStyle.js";
|
|
5
5
|
import { updateTooltipElement } from "./tooltipElement.js";
|
|
@@ -8,7 +8,7 @@ const tooltipScatter = (spec, context)=>{
|
|
|
8
8
|
...spec
|
|
9
9
|
};
|
|
10
10
|
const { advancedVSeed, vseed } = context;
|
|
11
|
-
const { datasetReshapeInfo, chartType, locale, dimensions, encoding } = advancedVSeed;
|
|
11
|
+
const { datasetReshapeInfo, chartType, locale, dimensions = [], encoding } = advancedVSeed;
|
|
12
12
|
const baseConfig = advancedVSeed.config[chartType];
|
|
13
13
|
const { tooltip = {
|
|
14
14
|
enable: true
|
|
@@ -22,7 +22,7 @@ const tooltipScatter = (spec, context)=>{
|
|
|
22
22
|
title: {
|
|
23
23
|
visible: false
|
|
24
24
|
},
|
|
25
|
-
content: createMarkContent(encoding.tooltip || [], dimensions,
|
|
25
|
+
content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures, locale, foldInfoList)
|
|
26
26
|
},
|
|
27
27
|
dimension: {
|
|
28
28
|
visible: false
|
|
@@ -31,7 +31,7 @@ const tooltipScatter = (spec, context)=>{
|
|
|
31
31
|
};
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
|
-
const createMarkContent = (tooltip, dimensions, measures, locale, foldInfoList)=>{
|
|
34
|
+
const createMarkContent = (tooltip, dimensions, measures = [], locale, foldInfoList)=>{
|
|
35
35
|
const dims = uniqueBy(dimensions.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
|
|
36
36
|
const meas = uniqueBy(measures.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
|
|
37
37
|
const dimContent = dims.map((item)=>({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipScatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipScatter.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { createFormatterByMeasure,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/tooltip/tooltipScatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/tooltip/tooltipScatter.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { createFormatterByMeasure, findMeasureById } from '../../../../utils'\nimport type { Datum, Dimensions, FoldInfo, Locale, Measures, VChartSpecPipe, Tooltip, UnfoldInfo } from 'src/types'\nimport { ORIGINAL_DATA } from 'src/dataReshape'\nimport { getTooltipStyle } from './tooltipStyle'\nimport { updateTooltipElement } from './tooltipElement'\n\nexport const tooltipScatter: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo, chartType, locale, dimensions = [], encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { tooltip: Tooltip }\n const { tooltip = { enable: true } } = baseConfig\n const { enable } = tooltip\n const { foldInfoList } = datasetReshapeInfo[0] as unknown as {\n foldInfoList: FoldInfo[]\n unfoldInfo: UnfoldInfo\n }\n\n result.tooltip = {\n style: getTooltipStyle(tooltip),\n visible: enable,\n\n mark: {\n title: {\n visible: false,\n },\n content: createMarkContent(encoding.tooltip || [], dimensions, vseed.measures as Measures, locale, foldInfoList),\n },\n dimension: {\n visible: false,\n },\n updateElement: updateTooltipElement,\n }\n return result\n}\n\nexport const createMarkContent = (\n tooltip: string[],\n dimensions: Dimensions,\n measures: Measures = [],\n locale: Locale,\n foldInfoList: FoldInfo[],\n) => {\n const dims = uniqueBy(\n dimensions.filter((item) => tooltip.includes(item.id)),\n (item) => item.id,\n )\n const meas = uniqueBy(\n measures.filter((item) => tooltip.includes(item.id)),\n (item) => item.id,\n )\n\n const dimContent = dims.map((item) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: (v: unknown) => {\n const datum = v as Datum\n if (item.alias || item.id) {\n return item.alias || item.id\n }\n return datum && (datum[item.id] as string)\n },\n value: (v: unknown) => {\n const datum = v as Datum\n return datum && (datum[item.id] as string)\n },\n }))\n\n const meaContent = meas.map((item) => ({\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: item.alias || item.id,\n value: (v: unknown) => {\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const id = item.id\n if (!datum || !datum[ORIGINAL_DATA] || !datum[ORIGINAL_DATA]) {\n return ''\n }\n const originalData = datum[ORIGINAL_DATA] as Datum\n const value = originalData[id] as string | number\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }))\n\n const foldMeaContent = foldInfoList.map((foldInfo) => {\n return {\n visible: true,\n hasShape: true,\n shapeType: 'rectRound',\n key: Object.values(foldInfo.foldMap)[0],\n value: (v: unknown) => {\n const { measureId, measureValue } = foldInfo\n\n const datum = v as Datum\n if (!datum) {\n return ''\n }\n const value = datum[measureValue] as string | number\n const id = datum[measureId] as string\n const measure = findMeasureById(measures, id)\n const formatter = createFormatterByMeasure(measure)\n return formatter(value)\n },\n }\n })\n return [...dimContent, ...foldMeaContent, ...meaContent]\n}\n"],"names":["tooltipScatter","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","locale","dimensions","encoding","baseConfig","tooltip","enable","foldInfoList","getTooltipStyle","createMarkContent","updateTooltipElement","measures","dims","uniqueBy","item","meas","dimContent","v","datum","meaContent","id","ORIGINAL_DATA","originalData","value","measure","findMeasureById","formatter","createFormatterByMeasure","foldMeaContent","foldInfo","Object","measureId","measureValue"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isMeasure } from "../../../../utils/index.js";
|
|
2
2
|
const dimensionTreeToColumns = (spec, context)=>{
|
|
3
3
|
const { advancedVSeed } = context;
|
|
4
|
-
const
|
|
4
|
+
const dimensionTree = advancedVSeed.dimensionTree;
|
|
5
5
|
const result = {
|
|
6
6
|
...spec
|
|
7
7
|
};
|
|
@@ -11,7 +11,7 @@ const dimensionTreeToColumns = (spec, context)=>{
|
|
|
11
11
|
};
|
|
12
12
|
return {};
|
|
13
13
|
};
|
|
14
|
-
const columns = treeTreeToColumns(
|
|
14
|
+
const columns = treeTreeToColumns(dimensionTree, eachNode);
|
|
15
15
|
return {
|
|
16
16
|
...result,
|
|
17
17
|
columns: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/table/pipes/columns/dimensionsToColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/dimensionsToColumns.ts"],"sourcesContent":["import type { ColumnsDefine, ListTableConstructorOptions } from '@visactor/vtable'\nimport { isMeasure } from 'src/pipeline/utils'\nimport type { Dimension, DimensionGroup, DimensionTree, ListTableSpecPipe } from 'src/types'\n\nexport const dimensionTreeToColumns: ListTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const
|
|
1
|
+
{"version":3,"file":"pipeline/spec/table/pipes/columns/dimensionsToColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/dimensionsToColumns.ts"],"sourcesContent":["import type { ColumnsDefine, ListTableConstructorOptions } from '@visactor/vtable'\nimport { isMeasure } from 'src/pipeline/utils'\nimport type { Dimension, DimensionGroup, DimensionTree, ListTableSpecPipe } from 'src/types'\n\nexport const dimensionTreeToColumns: ListTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const dimensionTree = (advancedVSeed as unknown as { dimensionTree: DimensionTree }).dimensionTree\n const result = { ...spec } as ListTableConstructorOptions\n const eachNode = (node: Dimension | DimensionGroup) => {\n if (isMeasure(node)) {\n return {\n width: 'auto',\n }\n }\n\n return {}\n }\n const columns = treeTreeToColumns<Dimension, DimensionGroup>(dimensionTree, eachNode)\n\n return {\n ...result,\n columns: [...(result.columns || []), ...columns] as ListTableConstructorOptions['columns'],\n }\n}\n\nconst treeTreeToColumns = <\n T extends { id: string; alias?: string },\n U extends { id: string; alias?: string; children?: (T | U)[] },\n>(\n tree: (T | U)[],\n callback?: (node: T | U) => object,\n): ColumnsDefine[] => {\n const result = tree.map((item) => {\n if ('children' in item && Array.isArray(item.children)) {\n const groupNode = item as unknown as U\n const field = groupNode.id\n const title = groupNode.alias ?? groupNode.id\n const props = callback?.(groupNode) || {}\n // group\n return {\n field,\n title,\n columns: treeTreeToColumns(item.children, callback),\n ...props,\n }\n } else {\n const field = item.id\n const title = item.alias ?? item.id\n const props = callback?.(item) || {}\n // leaf\n return {\n field,\n title,\n ...props,\n }\n }\n }) as unknown as ColumnsDefine[]\n\n return result || []\n}\n"],"names":["dimensionTreeToColumns","spec","context","advancedVSeed","dimensionTree","result","eachNode","node","isMeasure","columns","treeTreeToColumns","tree","callback","item","Array","groupNode","field","title","props"],"mappings":";AAIO,MAAMA,yBAA4C,CAACC,MAAMC;IAC9D,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAME,gBAAiBD,cAA8D,aAAa;IAClG,MAAME,SAAS;QAAE,GAAGJ,IAAI;IAAC;IACzB,MAAMK,WAAW,CAACC;QAChB,IAAIC,UAAUD,OACZ,OAAO;YACL,OAAO;QACT;QAGF,OAAO,CAAC;IACV;IACA,MAAME,UAAUC,kBAA6CN,eAAeE;IAE5E,OAAO;QACL,GAAGD,MAAM;QACT,SAAS;eAAKA,OAAO,OAAO,IAAI,EAAE;eAAMI;SAAQ;IAClD;AACF;AAEA,MAAMC,oBAAoB,CAIxBC,MACAC;IAEA,MAAMP,SAASM,KAAK,GAAG,CAAC,CAACE;QACvB,IAAI,cAAcA,QAAQC,MAAM,OAAO,CAACD,KAAK,QAAQ,GAAG;YACtD,MAAME,YAAYF;YAClB,MAAMG,QAAQD,UAAU,EAAE;YAC1B,MAAME,QAAQF,UAAU,KAAK,IAAIA,UAAU,EAAE;YAC7C,MAAMG,QAAQN,WAAWG,cAAc,CAAC;YAExC,OAAO;gBACLC;gBACAC;gBACA,SAASP,kBAAkBG,KAAK,QAAQ,EAAED;gBAC1C,GAAGM,KAAK;YACV;QACF;QAAO;YACL,MAAMF,QAAQH,KAAK,EAAE;YACrB,MAAMI,QAAQJ,KAAK,KAAK,IAAIA,KAAK,EAAE;YACnC,MAAMK,QAAQN,WAAWC,SAAS,CAAC;YAEnC,OAAO;gBACLG;gBACAC;gBACA,GAAGC,KAAK;YACV;QACF;IACF;IAEA,OAAOb,UAAU,EAAE;AACrB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createFormatterByMeasure, isMeasure } from "../../../../utils/index.js";
|
|
2
2
|
const measureTreeToColumns = (spec, context)=>{
|
|
3
3
|
const { advancedVSeed } = context;
|
|
4
|
-
const
|
|
4
|
+
const measureTree = advancedVSeed.measureTree;
|
|
5
5
|
const result = {
|
|
6
6
|
...spec
|
|
7
7
|
};
|
|
@@ -12,7 +12,7 @@ const measureTreeToColumns = (spec, context)=>{
|
|
|
12
12
|
};
|
|
13
13
|
return {};
|
|
14
14
|
};
|
|
15
|
-
const columns = treeTreeToColumns(
|
|
15
|
+
const columns = treeTreeToColumns(measureTree, eachNode);
|
|
16
16
|
return {
|
|
17
17
|
...result,
|
|
18
18
|
columns: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/table/pipes/columns/measuresToColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/measuresToColumns.ts"],"sourcesContent":["import type { ColumnsDefine, ListTableConstructorOptions } from '@visactor/vtable'\nimport { createFormatterByMeasure, isMeasure } from 'src/pipeline/utils'\nimport type { MeasureGroup, Measure, MeasureTree, ListTableSpecPipe, Datum } from 'src/types'\n\nexport const measureTreeToColumns: ListTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const
|
|
1
|
+
{"version":3,"file":"pipeline/spec/table/pipes/columns/measuresToColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/measuresToColumns.ts"],"sourcesContent":["import type { ColumnsDefine, ListTableConstructorOptions } from '@visactor/vtable'\nimport { createFormatterByMeasure, isMeasure } from 'src/pipeline/utils'\nimport type { MeasureGroup, Measure, MeasureTree, ListTableSpecPipe, Datum } from 'src/types'\n\nexport const measureTreeToColumns: ListTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const measureTree = (advancedVSeed as unknown as { measureTree: MeasureTree }).measureTree\n const result = { ...spec } as ListTableConstructorOptions\n\n const eachNode = (node: Measure | MeasureGroup) => {\n if (isMeasure(node)) {\n return {\n width: 'auto',\n fieldFormat: fieldFormat(node),\n }\n }\n\n return {}\n }\n const columns = treeTreeToColumns<Measure, MeasureGroup>(measureTree, eachNode)\n return {\n ...result,\n columns: [...(result.columns || []), ...columns] as ListTableConstructorOptions['columns'],\n }\n}\n\nconst fieldFormat = (node: Measure) => {\n const formatter = createFormatterByMeasure(node)\n\n return (datum: Datum) => {\n const { id } = node\n const value = datum[id] as number | string | undefined\n return formatter(value)\n }\n}\nconst treeTreeToColumns = <\n T extends { id: string; alias?: string },\n U extends { id: string; alias?: string; children?: (T | U)[] },\n>(\n tree: (T | U)[],\n callback?: (node: T | U) => object,\n): ColumnsDefine[] => {\n const result = tree.map((item) => {\n if ('children' in item && Array.isArray(item.children)) {\n const groupNode = item as unknown as U\n const field = groupNode.id\n const title = groupNode.alias ?? groupNode.id\n const props = callback?.(groupNode) || {}\n // group\n return {\n field,\n title,\n columns: treeTreeToColumns(item.children, callback),\n ...props,\n }\n } else {\n const field = item.id\n const title = item.alias ?? item.id\n const props = callback?.(item) || {}\n // leaf\n return {\n field,\n title,\n ...props,\n }\n }\n }) as unknown as ColumnsDefine[]\n\n return result || []\n}\n"],"names":["measureTreeToColumns","spec","context","advancedVSeed","measureTree","result","eachNode","node","isMeasure","fieldFormat","columns","treeTreeToColumns","formatter","createFormatterByMeasure","datum","id","value","tree","callback","item","Array","groupNode","field","title","props"],"mappings":";AAIO,MAAMA,uBAA0C,CAACC,MAAMC;IAC5D,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAME,cAAeD,cAA0D,WAAW;IAC1F,MAAME,SAAS;QAAE,GAAGJ,IAAI;IAAC;IAEzB,MAAMK,WAAW,CAACC;QAChB,IAAIC,UAAUD,OACZ,OAAO;YACL,OAAO;YACP,aAAaE,YAAYF;QAC3B;QAGF,OAAO,CAAC;IACV;IACA,MAAMG,UAAUC,kBAAyCP,aAAaE;IACtE,OAAO;QACL,GAAGD,MAAM;QACT,SAAS;eAAKA,OAAO,OAAO,IAAI,EAAE;eAAMK;SAAQ;IAClD;AACF;AAEA,MAAMD,cAAc,CAACF;IACnB,MAAMK,YAAYC,yBAAyBN;IAE3C,OAAO,CAACO;QACN,MAAM,EAAEC,EAAE,EAAE,GAAGR;QACf,MAAMS,QAAQF,KAAK,CAACC,GAAG;QACvB,OAAOH,UAAUI;IACnB;AACF;AACA,MAAML,oBAAoB,CAIxBM,MACAC;IAEA,MAAMb,SAASY,KAAK,GAAG,CAAC,CAACE;QACvB,IAAI,cAAcA,QAAQC,MAAM,OAAO,CAACD,KAAK,QAAQ,GAAG;YACtD,MAAME,YAAYF;YAClB,MAAMG,QAAQD,UAAU,EAAE;YAC1B,MAAME,QAAQF,UAAU,KAAK,IAAIA,UAAU,EAAE;YAC7C,MAAMG,QAAQN,WAAWG,cAAc,CAAC;YAExC,OAAO;gBACLC;gBACAC;gBACA,SAASZ,kBAAkBQ,KAAK,QAAQ,EAAED;gBAC1C,GAAGM,KAAK;YACV;QACF;QAAO;YACL,MAAMF,QAAQH,KAAK,EAAE;YACrB,MAAMI,QAAQJ,KAAK,KAAK,IAAIA,KAAK,EAAE;YACnC,MAAMK,QAAQN,WAAWC,SAAS,CAAC;YAEnC,OAAO;gBACLG;gBACAC;gBACA,GAAGC,KAAK;YACV;QACF;IACF;IAEA,OAAOnB,UAAU,EAAE;AACrB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const pivotColumns = (spec, context)=>{
|
|
2
2
|
const { advancedVSeed } = context;
|
|
3
3
|
const { encoding } = advancedVSeed;
|
|
4
|
-
const dimensions = advancedVSeed.
|
|
4
|
+
const dimensions = advancedVSeed.dimensionTree;
|
|
5
5
|
const columns = dimensions.filter((item)=>encoding.column?.includes(item.id));
|
|
6
6
|
return {
|
|
7
7
|
...spec,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/table/pipes/columns/pivotColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/pivotColumns.ts"],"sourcesContent":["import type { PivotTableConstructorOptions } from '@visactor/vtable'\nimport type { Dimensions, PivotTableSpecPipe } from 'src/types'\n\nexport const pivotColumns: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { encoding } = advancedVSeed\n const dimensions = advancedVSeed.
|
|
1
|
+
{"version":3,"file":"pipeline/spec/table/pipes/columns/pivotColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/pivotColumns.ts"],"sourcesContent":["import type { PivotTableConstructorOptions } from '@visactor/vtable'\nimport type { Dimensions, PivotTableSpecPipe } from 'src/types'\n\nexport const pivotColumns: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { encoding } = advancedVSeed\n const dimensions = advancedVSeed.dimensionTree as Dimensions\n const columns = dimensions.filter((item) => encoding.column?.includes(item.id))\n\n return {\n ...spec,\n columns: columns.map((item) => {\n return {\n dimensionKey: item.id,\n title: item.alias || item.id,\n width: 'auto',\n }\n }),\n } as PivotTableConstructorOptions\n}\n"],"names":["pivotColumns","spec","context","advancedVSeed","encoding","dimensions","columns","item"],"mappings":"AAGO,MAAMA,eAAmC,CAACC,MAAMC;IACrD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,QAAQ,EAAE,GAAGD;IACrB,MAAME,aAAaF,cAAc,aAAa;IAC9C,MAAMG,UAAUD,WAAW,MAAM,CAAC,CAACE,OAASH,SAAS,MAAM,EAAE,SAASG,KAAK,EAAE;IAE7E,OAAO;QACL,GAAGN,IAAI;QACP,SAASK,QAAQ,GAAG,CAAC,CAACC,OACb;gBACL,cAAcA,KAAK,EAAE;gBACrB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAC5B,OAAO;YACT;IAEJ;AACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { findAllMeasures } from "../../../../utils/index.js";
|
|
2
2
|
const dataConfig = (spec, context)=>{
|
|
3
3
|
const { advancedVSeed } = context;
|
|
4
|
-
const measures = findAllMeasures(advancedVSeed.
|
|
4
|
+
const measures = findAllMeasures(advancedVSeed.measureTree);
|
|
5
5
|
const aggregationRules = measures.map((measure)=>({
|
|
6
6
|
field: measure.id,
|
|
7
7
|
aggregationType: 'NONE',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/table/pipes/indicators/pivotDataConfig.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/indicators/pivotDataConfig.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { PivotTableSpecPipe } from 'src/types'\n\nexport const dataConfig: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const measures = findAllMeasures(advancedVSeed.
|
|
1
|
+
{"version":3,"file":"pipeline/spec/table/pipes/indicators/pivotDataConfig.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/indicators/pivotDataConfig.ts"],"sourcesContent":["import { findAllMeasures } from 'src/pipeline/utils'\nimport type { PivotTableSpecPipe } from 'src/types'\n\nexport const dataConfig: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const measures = findAllMeasures(advancedVSeed.measureTree)\n\n const aggregationRules = measures.map((measure) => ({\n field: measure.id,\n aggregationType: 'NONE',\n indicatorKey: measure.id,\n }))\n\n return {\n ...spec,\n dataConfig: {\n aggregationRules,\n },\n }\n}\n"],"names":["dataConfig","spec","context","advancedVSeed","measures","findAllMeasures","aggregationRules","measure"],"mappings":";AAGO,MAAMA,aAAiC,CAACC,MAAMC;IACnD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAME,WAAWC,gBAAgBF,cAAc,WAAW;IAE1D,MAAMG,mBAAmBF,SAAS,GAAG,CAAC,CAACG,UAAa;YAClD,OAAOA,QAAQ,EAAE;YACjB,iBAAiB;YACjB,cAAcA,QAAQ,EAAE;QAC1B;IAEA,OAAO;QACL,GAAGN,IAAI;QACP,YAAY;YACVK;QACF;IACF;AACF"}
|