@visactor/vseed 0.1.15 → 0.1.17
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 +3 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/builder/builder/buildAdvanced.js +1 -1
- package/dist/esm/builder/builder/buildAdvanced.js.map +1 -1
- package/dist/esm/builder/builder/buildSpec.js +2 -3
- package/dist/esm/builder/builder/buildSpec.js.map +1 -1
- package/dist/esm/dataReshape/foldMeasures.d.ts +1 -0
- package/dist/esm/dataReshape/foldMeasures.js +5 -1
- package/dist/esm/dataReshape/foldMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/area.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/areaPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/bar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/barParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/barPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/column.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/columnPercent.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/donut.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/donut.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/dualAxis.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/funnel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/heatmap.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/line.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/pie.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/pie.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/radar.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js +5 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +6 -2
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/config.d.ts +0 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/config.js +1 -2
- package/dist/esm/pipeline/advanced/chart/pipes/config/config.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.d.ts +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.js +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/scatter.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/scatter.js +32 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/scatter.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js +4 -3
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js +12 -9
- package/dist/esm/pipeline/advanced/chart/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteEncodingForMeasure.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteEncodingForMeasure.js +12 -0
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteEncodingForMeasure.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/measures/index.d.ts +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/index.js +2 -2
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +4 -6
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js +2 -5
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js +2 -4
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +4 -6
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js +2 -5
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +2 -4
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js +13 -7
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js +13 -9
- package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasures.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/init/initAdvancedVSeed.js +2 -0
- package/dist/esm/pipeline/advanced/table/pipes/init/initAdvancedVSeed.js.map +1 -1
- package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js +2 -1
- package/dist/esm/pipeline/advanced/table/pipes/reshape/reshapePivotTable.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/scatter.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/format/linearFormat.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/format/linearFormat.js +11 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/format/linearFormat.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js +14 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/title/defaultTitleText.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js +8 -11
- package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js +3 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js +7 -10
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js +8 -10
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js +8 -10
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/index.js +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/size/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/size/index.js +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/size/scatterSize.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/size/scatterSize.js +22 -0
- package/dist/esm/pipeline/spec/chart/pipes/size/scatterSize.js.map +1 -0
- package/dist/esm/pipeline/utils/format/createFormatterByMeasure.js +4 -3
- package/dist/esm/pipeline/utils/format/createFormatterByMeasure.js.map +1 -1
- package/dist/esm/pipeline/utils/format/createNumFormatter.js +4 -1
- package/dist/esm/pipeline/utils/format/createNumFormatter.js.map +1 -1
- package/dist/esm/pipeline/utils/index.d.ts +1 -0
- package/dist/esm/pipeline/utils/index.js +1 -0
- package/dist/esm/pipeline/utils/valid/checkVSeed.d.ts +2 -0
- package/dist/esm/pipeline/utils/valid/checkVSeed.js +11 -0
- package/dist/esm/pipeline/utils/valid/checkVSeed.js.map +1 -0
- package/dist/esm/pipeline/utils/valid/index.d.ts +1 -0
- package/dist/esm/pipeline/utils/valid/index.js +2 -0
- package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +10 -40
- package/dist/esm/types/chartType/scatter/scatter.d.ts +14 -0
- package/dist/esm/types/chartType/scatter/zScatter.d.ts +12 -40
- package/dist/esm/types/chartType/scatter/zScatter.js +2 -0
- package/dist/esm/types/chartType/scatter/zScatter.js.map +1 -1
- package/dist/esm/types/properties/config/axes/linearAxis.d.ts +3 -3
- package/dist/esm/types/properties/config/label/label.d.ts +2 -2
- package/dist/esm/types/properties/measures/dualMeasures.d.ts +2 -2
- package/dist/esm/types/properties/measures/scatterMeasures.d.ts +2 -2
- package/dist/esm/types/properties/measures/zDualMeasures.d.ts +20 -80
- package/dist/esm/types/properties/measures/zDualMeasures.js +7 -1
- package/dist/esm/types/properties/measures/zDualMeasures.js.map +1 -1
- package/dist/esm/types/properties/measures/zScatterMeasures.d.ts +20 -80
- package/dist/esm/types/properties/measures/zScatterMeasures.js +8 -2
- package/dist/esm/types/properties/measures/zScatterMeasures.js.map +1 -1
- package/dist/esm/types/zVseed.d.ts +22 -80
- package/dist/umd/index.js +316 -183
- package/dist/umd/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteTooltipAndLabelMeasure.d.ts +0 -2
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteTooltipAndLabelMeasure.js +0 -12
- package/dist/esm/pipeline/advanced/chart/pipes/measures/deleteTooltipAndLabelMeasure.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipeline/radar.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/radar.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n annotation,\n markStyle,\n sortLegend,\n radarConfig,\n encodingForRadar,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n defaultEncodingForRadar,\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipeline/radar.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/radar.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n annotation,\n markStyle,\n sortLegend,\n radarConfig,\n encodingForRadar,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n defaultEncodingForRadar,\n deleteEncodingForMeasure,\n deleteTooltipAndLabelDimension,\n} from '../pipes'\n\nexport const radarAdvancedPipeline: AdvancedPipeline = [\n initAdvancedVSeed,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n\n encodingAdapter(\n [defaultEncodingForRadar, buildMeasures],\n [encodingForRadar, buildMeasures, deleteEncodingForMeasure(['tooltip', 'label']), deleteTooltipAndLabelDimension],\n ),\n pivotAdapter([reshapeWithEncoding], [pivotReshapeWithEncoding]),\n\n // sortXBandAxis,\n sortLegend,\n radarConfig,\n theme,\n markStyle,\n annotation,\n]\n"],"names":["radarAdvancedPipeline","initAdvancedVSeed","defaultMeasures","defaultDimensions","defaultMeasureName","encodingAdapter","defaultEncodingForRadar","buildMeasures","encodingForRadar","deleteEncodingForMeasure","deleteTooltipAndLabelDimension","pivotAdapter","reshapeWithEncoding","pivotReshapeWithEncoding","sortLegend","radarConfig","theme","markStyle","annotation"],"mappings":";AAsBO,MAAMA,wBAA0C;IACrDC;IACAC;IACAC;IACAC;IAEAC,gBACE;QAACC;QAAyBC;KAAc,EACxC;QAACC;QAAkBD;QAAeE,yBAAyB;YAAC;YAAW;SAAQ;QAAGC;KAA+B;IAEnHC,aAAa;QAACC;KAAoB,EAAE;QAACC;KAAyB;IAG9DC;IACAC;IACAC;IACAC;IACAC;CACD"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { annotation, buildMeasures, defaultDimensions, defaultEncodingForRose, defaultMeasureName, defaultMeasures,
|
1
|
+
import { annotation, buildMeasures, defaultDimensions, defaultEncodingForRose, defaultMeasureName, defaultMeasures, deleteEncodingForMeasure, deleteTooltipAndLabelDimension, encodingAdapter, encodingForRose, initAdvancedVSeed, markStyle, pivotAdapter, pivotReshapeWithEncoding, reshapeWithEncoding, roseConfig, theme } from "../pipes/index.js";
|
2
2
|
const roseAdvancedPipeline = [
|
3
3
|
initAdvancedVSeed,
|
4
4
|
defaultMeasures,
|
@@ -10,7 +10,10 @@ const roseAdvancedPipeline = [
|
|
10
10
|
], [
|
11
11
|
encodingForRose,
|
12
12
|
buildMeasures,
|
13
|
-
|
13
|
+
deleteEncodingForMeasure([
|
14
|
+
'tooltip',
|
15
|
+
'label'
|
16
|
+
]),
|
14
17
|
deleteTooltipAndLabelDimension
|
15
18
|
]),
|
16
19
|
pivotAdapter([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipeline/rose.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/rose.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n markStyle,\n annotation,\n roseConfig,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n encodingForRose,\n defaultEncodingForRose,\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipeline/rose.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/rose.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n markStyle,\n annotation,\n roseConfig,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n encodingForRose,\n defaultEncodingForRose,\n deleteEncodingForMeasure,\n deleteTooltipAndLabelDimension,\n} from '../pipes'\n\nexport const roseAdvancedPipeline: AdvancedPipeline = [\n initAdvancedVSeed,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n\n encodingAdapter(\n [defaultEncodingForRose, buildMeasures],\n [encodingForRose, buildMeasures, deleteEncodingForMeasure(['tooltip', 'label']), deleteTooltipAndLabelDimension],\n ),\n pivotAdapter([reshapeWithEncoding], [pivotReshapeWithEncoding]),\n\n roseConfig,\n theme,\n markStyle,\n annotation,\n]\n"],"names":["roseAdvancedPipeline","initAdvancedVSeed","defaultMeasures","defaultDimensions","defaultMeasureName","encodingAdapter","defaultEncodingForRose","buildMeasures","encodingForRose","deleteEncodingForMeasure","deleteTooltipAndLabelDimension","pivotAdapter","reshapeWithEncoding","pivotReshapeWithEncoding","roseConfig","theme","markStyle","annotation"],"mappings":";AAqBO,MAAMA,uBAAyC;IACpDC;IACAC;IACAC;IACAC;IAEAC,gBACE;QAACC;QAAwBC;KAAc,EACvC;QAACC;QAAiBD;QAAeE,yBAAyB;YAAC;YAAW;SAAQ;QAAGC;KAA+B;IAElHC,aAAa;QAACC;KAAoB,EAAE;QAACC;KAAyB;IAE9DC;IACAC;IACAC;IACAC;CACD"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { annotation, buildMeasures, defaultDimensions, defaultEncodingForRose, defaultMeasureName, defaultMeasures,
|
1
|
+
import { annotation, buildMeasures, defaultDimensions, defaultEncodingForRose, defaultMeasureName, defaultMeasures, deleteEncodingForMeasure, deleteTooltipAndLabelDimension, encodingAdapter, encodingForRose, initAdvancedVSeed, markStyle, pivotAdapter, pivotReshapeWithEncoding, reshapeWithEncoding, roseParallelConfig, theme } from "../pipes/index.js";
|
2
2
|
const roseParallelAdvancedPipeline = [
|
3
3
|
initAdvancedVSeed,
|
4
4
|
defaultMeasures,
|
@@ -10,7 +10,10 @@ const roseParallelAdvancedPipeline = [
|
|
10
10
|
], [
|
11
11
|
encodingForRose,
|
12
12
|
buildMeasures,
|
13
|
-
|
13
|
+
deleteEncodingForMeasure([
|
14
|
+
'tooltip',
|
15
|
+
'label'
|
16
|
+
]),
|
14
17
|
deleteTooltipAndLabelDimension
|
15
18
|
]),
|
16
19
|
pivotAdapter([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipeline/roseParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/roseParallel.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n markStyle,\n annotation,\n roseParallelConfig,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n encodingForRose,\n defaultEncodingForRose,\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipeline/roseParallel.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/roseParallel.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n markStyle,\n annotation,\n roseParallelConfig,\n reshapeWithEncoding,\n pivotReshapeWithEncoding,\n buildMeasures,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n encodingForRose,\n defaultEncodingForRose,\n deleteEncodingForMeasure,\n deleteTooltipAndLabelDimension,\n} from '../pipes'\n\nexport const roseParallelAdvancedPipeline: AdvancedPipeline = [\n initAdvancedVSeed,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n\n encodingAdapter(\n [defaultEncodingForRose, buildMeasures],\n [encodingForRose, buildMeasures, deleteEncodingForMeasure(['tooltip', 'label']), deleteTooltipAndLabelDimension],\n ),\n pivotAdapter([reshapeWithEncoding], [pivotReshapeWithEncoding]),\n\n roseParallelConfig,\n theme,\n markStyle,\n annotation,\n]\n"],"names":["roseParallelAdvancedPipeline","initAdvancedVSeed","defaultMeasures","defaultDimensions","defaultMeasureName","encodingAdapter","defaultEncodingForRose","buildMeasures","encodingForRose","deleteEncodingForMeasure","deleteTooltipAndLabelDimension","pivotAdapter","reshapeWithEncoding","pivotReshapeWithEncoding","roseParallelConfig","theme","markStyle","annotation"],"mappings":";AAqBO,MAAMA,+BAAiD;IAC5DC;IACAC;IACAC;IACAC;IAEAC,gBACE;QAACC;QAAwBC;KAAc,EACvC;QAACC;QAAiBD;QAAeE,yBAAyB;YAAC;YAAW;SAAQ;QAAGC;KAA+B;IAElHC,aAAa;QAACC;KAAoB,EAAE;QAACC;KAAyB;IAE9DC;IACAC;IACAC;IACAC;CACD"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { annotation, buildMeasuresForScatter, defaultDimensions, defaultEncodingForScatter, defaultMeasureName, defaultMeasures,
|
1
|
+
import { annotation, buildMeasuresForScatter, defaultDimensions, defaultEncodingForScatter, defaultMeasureName, defaultMeasures, deleteEncodingForMeasure, deleteTooltipAndLabelDimension, encodingAdapter, encodingForScatter, initAdvancedVSeed, markStyle, pivotAdapter, scatterConfig, theme } from "../pipes/index.js";
|
2
2
|
import { reshapeWithScatterEncoding } from "../pipes/reshape/reshapeWithScatterEncoding.js";
|
3
3
|
import { pivotReshapeWithScatterEncoding } from "../pipes/reshape/pivotReshapeWithScatterEncoding.js";
|
4
4
|
const scatterAdvancedPipeline = [
|
@@ -12,7 +12,11 @@ const scatterAdvancedPipeline = [
|
|
12
12
|
], [
|
13
13
|
encodingForScatter,
|
14
14
|
buildMeasuresForScatter,
|
15
|
-
|
15
|
+
deleteEncodingForMeasure([
|
16
|
+
'tooltip',
|
17
|
+
'label',
|
18
|
+
'size'
|
19
|
+
]),
|
16
20
|
deleteTooltipAndLabelDimension
|
17
21
|
]),
|
18
22
|
pivotAdapter([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipeline/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/scatter.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n annotation,\n markStyle,\n scatterConfig,\n encodingForScatter,\n buildMeasuresForScatter,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n defaultEncodingForScatter,\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipeline/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipeline/scatter.ts"],"sourcesContent":["import type { AdvancedPipeline } from 'src/types'\nimport {\n initAdvancedVSeed,\n theme,\n pivotAdapter,\n annotation,\n markStyle,\n scatterConfig,\n encodingForScatter,\n buildMeasuresForScatter,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n encodingAdapter,\n defaultEncodingForScatter,\n deleteEncodingForMeasure,\n deleteTooltipAndLabelDimension,\n} from '../pipes'\nimport { reshapeWithScatterEncoding } from '../pipes/reshape/reshapeWithScatterEncoding'\nimport { pivotReshapeWithScatterEncoding } from '../pipes/reshape/pivotReshapeWithScatterEncoding'\n\nexport const scatterAdvancedPipeline: AdvancedPipeline = [\n initAdvancedVSeed,\n defaultMeasures,\n defaultDimensions,\n defaultMeasureName,\n\n encodingAdapter(\n [defaultEncodingForScatter, buildMeasuresForScatter],\n [\n encodingForScatter,\n buildMeasuresForScatter,\n deleteEncodingForMeasure(['tooltip', 'label', 'size']),\n deleteTooltipAndLabelDimension,\n ],\n ),\n pivotAdapter([reshapeWithScatterEncoding], [pivotReshapeWithScatterEncoding]),\n\n scatterConfig,\n theme,\n markStyle,\n annotation,\n]\n"],"names":["scatterAdvancedPipeline","initAdvancedVSeed","defaultMeasures","defaultDimensions","defaultMeasureName","encodingAdapter","defaultEncodingForScatter","buildMeasuresForScatter","encodingForScatter","deleteEncodingForMeasure","deleteTooltipAndLabelDimension","pivotAdapter","reshapeWithScatterEncoding","pivotReshapeWithScatterEncoding","scatterConfig","theme","markStyle","annotation"],"mappings":";;;AAqBO,MAAMA,0BAA4C;IACvDC;IACAC;IACAC;IACAC;IAEAC,gBACE;QAACC;QAA2BC;KAAwB,EACpD;QACEC;QACAD;QACAE,yBAAyB;YAAC;YAAW;YAAS;SAAO;QACrDC;KACD;IAEHC,aAAa;QAACC;KAA2B,EAAE;QAACC;KAAgC;IAE5EC;IACAC;IACAC;IACAC;CACD"}
|
@@ -4,7 +4,6 @@ export declare const columnConfig: AdvancedPipe;
|
|
4
4
|
export declare const pieConfig: AdvancedPipe;
|
5
5
|
export declare const areaConfig: AdvancedPipe;
|
6
6
|
export declare const areaPercentConfig: AdvancedPipe;
|
7
|
-
export declare const scatterConfig: AdvancedPipe;
|
8
7
|
export declare const barConfig: AdvancedPipe;
|
9
8
|
export declare const barParallelConfig: AdvancedPipe;
|
10
9
|
export declare const barPercentConfig: AdvancedPipe;
|
@@ -73,7 +73,6 @@ const pieConfig = (advancedVSeed, context)=>{
|
|
73
73
|
};
|
74
74
|
const areaConfig = lineConfig;
|
75
75
|
const areaPercentConfig = lineConfig;
|
76
|
-
const scatterConfig = lineConfig;
|
77
76
|
const barConfig = columnConfig;
|
78
77
|
const barParallelConfig = columnConfig;
|
79
78
|
const barPercentConfig = columnConfig;
|
@@ -85,6 +84,6 @@ const roseParallelConfig = pieConfig;
|
|
85
84
|
const funnelConfig = pieConfig;
|
86
85
|
const heatmapConfig = pieConfig;
|
87
86
|
const radarConfig = pieConfig;
|
88
|
-
export { areaConfig, areaPercentConfig, barConfig, barParallelConfig, barPercentConfig, columnConfig, columnParallelConfig, columnPercentConfig, donutConfig, funnelConfig, heatmapConfig, lineConfig, pieConfig, radarConfig, roseConfig, roseParallelConfig
|
87
|
+
export { areaConfig, areaPercentConfig, barConfig, barParallelConfig, barPercentConfig, columnConfig, columnParallelConfig, columnPercentConfig, donutConfig, funnelConfig, heatmapConfig, lineConfig, pieConfig, radarConfig, roseConfig, roseParallelConfig };
|
89
88
|
|
90
89
|
//# sourceMappingURL=config.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/config/config.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/config.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const lineConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairLine',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const columnConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const config = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairRect',\n 'stackCornerRadius',\n ]) as Config['column']\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const pieConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const config = pick(vseed, ['backgroundColor', 'color', 'label', 'legend', 'tooltip']) as Config['pie']\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const areaConfig: AdvancedPipe = lineConfig\nexport const areaPercentConfig: AdvancedPipe = lineConfig\
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/config/config.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/config.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const lineConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairLine',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const columnConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const config = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'crosshairRect',\n 'stackCornerRadius',\n ]) as Config['column']\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const pieConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const config = pick(vseed, ['backgroundColor', 'color', 'label', 'legend', 'tooltip']) as Config['pie']\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n\nexport const areaConfig: AdvancedPipe = lineConfig\nexport const areaPercentConfig: AdvancedPipe = lineConfig\n\nexport const barConfig: AdvancedPipe = columnConfig\nexport const barParallelConfig: AdvancedPipe = columnConfig\nexport const barPercentConfig: AdvancedPipe = columnConfig\nexport const columnParallelConfig: AdvancedPipe = columnConfig\nexport const columnPercentConfig: AdvancedPipe = columnConfig\n\nexport const donutConfig: AdvancedPipe = pieConfig\nexport const roseConfig: AdvancedPipe = pieConfig\nexport const roseParallelConfig: AdvancedPipe = pieConfig\nexport const funnelConfig: AdvancedPipe = pieConfig\nexport const heatmapConfig: AdvancedPipe = pieConfig\nexport const radarConfig: AdvancedPipe = pieConfig\n"],"names":["lineConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined","columnConfig","pieConfig","areaConfig","areaPercentConfig","barConfig","barParallelConfig","barPercentConfig","columnParallelConfig","columnPercentConfig","donutConfig","roseConfig","roseParallelConfig","funnelConfig","heatmapConfig","radarConfig"],"mappings":";;AAIO,MAAMA,aAA2B,CAACC,eAAeC;IACtD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT;AAEO,MAAMK,eAA6B,CAACT,eAAeC;IACxD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMO,SAASD,KAAKJ,OAAO;QACzB;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAEDE,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT;AAEO,MAAMM,YAA0B,CAACV,eAAeC;IACrD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMO,SAASD,KAAKJ,OAAO;QAAC;QAAmB;QAAS;QAAS;QAAU;KAAU;IAErFE,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT;AAEO,MAAMO,aAA2BZ;AACjC,MAAMa,oBAAkCb;AAExC,MAAMc,YAA0BJ;AAChC,MAAMK,oBAAkCL;AACxC,MAAMM,mBAAiCN;AACvC,MAAMO,uBAAqCP;AAC3C,MAAMQ,sBAAoCR;AAE1C,MAAMS,cAA4BR;AAClC,MAAMS,aAA2BT;AACjC,MAAMU,qBAAmCV;AACzC,MAAMW,eAA6BX;AACnC,MAAMY,gBAA8BZ;AACpC,MAAMa,cAA4Bb"}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import { pick } from "remeda";
|
2
|
+
import { replaceNullToUndefined } from "../../../../utils/index.js";
|
3
|
+
const scatterConfig = (advancedVSeed, context)=>{
|
4
|
+
const { vseed } = context;
|
5
|
+
const { chartType } = vseed;
|
6
|
+
const result = {
|
7
|
+
...advancedVSeed
|
8
|
+
};
|
9
|
+
const pickedConfig = pick(vseed, [
|
10
|
+
'backgroundColor',
|
11
|
+
'color',
|
12
|
+
'label',
|
13
|
+
'legend',
|
14
|
+
'tooltip',
|
15
|
+
'xAxis',
|
16
|
+
'yAxis',
|
17
|
+
'sizeRange',
|
18
|
+
'size',
|
19
|
+
'crosshairLine'
|
20
|
+
]);
|
21
|
+
const config = replaceNullToUndefined(pickedConfig);
|
22
|
+
result.config = {
|
23
|
+
...result.config || {},
|
24
|
+
[chartType]: {
|
25
|
+
...config
|
26
|
+
}
|
27
|
+
};
|
28
|
+
return result;
|
29
|
+
};
|
30
|
+
export { scatterConfig };
|
31
|
+
|
32
|
+
//# sourceMappingURL=scatter.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/config/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/config/scatter.ts"],"sourcesContent":["import { pick } from 'remeda'\nimport { replaceNullToUndefined } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed, Config } from 'src/types'\n\nexport const scatterConfig: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType } = vseed\n const result = {\n ...advancedVSeed,\n }\n\n const pickedConfig = pick(vseed, [\n 'backgroundColor',\n 'color',\n 'label',\n 'legend',\n 'tooltip',\n 'xAxis',\n 'yAxis',\n 'sizeRange',\n 'size',\n 'crosshairLine',\n ]) as Config['line']\n\n const config = replaceNullToUndefined(pickedConfig)\n\n result.config = {\n ...(result.config || {}),\n [chartType]: {\n ...config,\n },\n }\n\n return result as AdvancedVSeed\n}\n"],"names":["scatterConfig","advancedVSeed","context","vseed","chartType","result","pickedConfig","pick","config","replaceNullToUndefined"],"mappings":";;AAIO,MAAMA,gBAA8B,CAACC,eAAeC;IACzD,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,SAAS;QACb,GAAGJ,aAAa;IAClB;IAEA,MAAMK,eAAeC,KAAKJ,OAAO;QAC/B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAED,MAAMK,SAASC,uBAAuBH;IAEtCD,OAAO,MAAM,GAAG;QACd,GAAIA,OAAO,MAAM,IAAI,CAAC,CAAC;QACvB,CAACD,UAAU,EAAE;YACX,GAAGI,MAAM;QACX;IACF;IAEA,OAAOH;AACT"}
|
@@ -8,10 +8,11 @@ const defaultDimensions = (advancedVSeed, context)=>{
|
|
8
8
|
const { dimensions, dataset } = vseed;
|
9
9
|
if (dimensions && dimensions.length > 0) return {
|
10
10
|
...result,
|
11
|
-
dimensions: clone(dimensions)
|
11
|
+
dimensions: clone(dimensions.map((dim)=>({
|
12
|
+
...dim,
|
13
|
+
alias: dim.alias || dim.id
|
14
|
+
})))
|
12
15
|
};
|
13
|
-
if (!dataset) throw new Error('dataset is required');
|
14
|
-
if (0 === dataset.length) return result;
|
15
16
|
const measures = findAllMeasures(advancedVSeed.measures);
|
16
17
|
const top100dataset = dataset.slice(0, 100);
|
17
18
|
const sample = top100dataset.reduce((prev, cur)=>({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultDimensions.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum, Dimensions, DimensionTree } from 'src/types'\n\nexport const defaultDimensions: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dimensions, dataset } = vseed\n\n if (dimensions && dimensions.length > 0) {\n return {\n ...result,\n dimensions: clone(dimensions)
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultDimensions.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultDimensions.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Datum, Dimensions, DimensionTree } from 'src/types'\n\nexport const defaultDimensions: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dimensions, dataset } = vseed\n\n if (dimensions && dimensions.length > 0) {\n return {\n ...result,\n dimensions: clone(dimensions.map((dim) => ({ ...dim, alias: dim.alias || dim.id }))),\n }\n }\n\n const measures = findAllMeasures(advancedVSeed.measures as DimensionTree)\n\n const top100dataset = dataset.slice(0, 100)\n\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n\n const newDimensions = Object.keys(sample)\n .filter(\n (key) =>\n top100dataset.some((item) => typeof item[key] === 'string') &&\n !['', null, undefined].includes(key) &&\n !measures.some((measure) => measure.id === key),\n )\n .map((dim) => ({\n id: dim,\n alias: dim,\n })) as Dimensions\n\n return {\n ...result,\n dimensions: newDimensions,\n }\n}\n"],"names":["defaultDimensions","advancedVSeed","context","result","vseed","dimensions","dataset","clone","dim","measures","findAllMeasures","top100dataset","sample","prev","cur","newDimensions","Object","key","item","undefined","measure"],"mappings":";;AAIO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,UAAU,EAAEC,OAAO,EAAE,GAAGF;IAEhC,IAAIC,cAAcA,WAAW,MAAM,GAAG,GACpC,OAAO;QACL,GAAGF,MAAM;QACT,YAAYI,MAAMF,WAAW,GAAG,CAAC,CAACG,MAAS;gBAAE,GAAGA,GAAG;gBAAE,OAAOA,IAAI,KAAK,IAAIA,IAAI,EAAE;YAAC;IAClF;IAGF,MAAMC,WAAWC,gBAAgBT,cAAc,QAAQ;IAEvD,MAAMU,gBAAgBL,QAAQ,KAAK,CAAC,GAAG;IAEvC,MAAMM,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IAEJ,MAAMC,gBAAgBC,OAAO,IAAI,CAACJ,QAC/B,MAAM,CACL,CAACK,MACCN,cAAc,IAAI,CAAC,CAACO,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAC7C,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,QAChC,CAACR,SAAS,IAAI,CAAC,CAACW,UAAYA,QAAQ,EAAE,KAAKH,MAE9C,GAAG,CAAC,CAACT,MAAS;YACb,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGL,MAAM;QACT,YAAYY;IACd;AACF"}
|
@@ -1,16 +1,19 @@
|
|
1
1
|
import { clone } from "remeda";
|
2
|
+
import { isMeasure, preorderTraverse } from "../../../../utils/index.js";
|
2
3
|
const defaultMeasures_defaultMeasures = (advancedVSeed, context)=>{
|
3
4
|
const { vseed } = context;
|
4
5
|
const { measures, dataset } = vseed;
|
5
|
-
if (measures && measures.length > 0)
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
6
|
+
if (measures && measures.length > 0) {
|
7
|
+
const clonedMeasures = clone(measures);
|
8
|
+
preorderTraverse(clonedMeasures, (node)=>{
|
9
|
+
if (isMeasure(node)) node.alias = node.alias || node.id;
|
10
|
+
return false;
|
11
|
+
});
|
12
|
+
return {
|
13
|
+
...advancedVSeed,
|
14
|
+
measures: clonedMeasures
|
15
|
+
};
|
16
|
+
}
|
14
17
|
const top100dataset = dataset.slice(0, 100);
|
15
18
|
const sample = top100dataset.reduce((prev, cur)=>({
|
16
19
|
...prev,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasures.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport type { AdvancedPipe, Datum } from 'src/types'\
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/default/defaultMeasures.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/default/defaultMeasures.ts"],"sourcesContent":["import { clone } from 'remeda'\nimport type { AdvancedPipe, Datum } from 'src/types'\nimport { isMeasure, preorderTraverse } from 'src/pipeline/utils'\n/**\n * @description 如果用户没有配置 measures, 则基于 dataset 构建默认的 measures\n */\nexport const defaultMeasures: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { measures, dataset } = vseed\n\n if (measures && measures.length > 0) {\n const clonedMeasures = clone(measures)\n preorderTraverse(clonedMeasures, (node) => {\n if (isMeasure(node)) {\n node.alias = node.alias || node.id\n }\n return false\n })\n return {\n ...advancedVSeed,\n measures: clonedMeasures,\n }\n }\n\n const top100dataset = dataset.slice(0, 100)\n const sample = top100dataset.reduce<Datum>((prev, cur) => {\n return { ...prev, ...cur }\n }, {})\n const defaultMeasures = Object.keys(sample)\n .filter((key) => {\n return top100dataset.some((item) => typeof item[key] === 'number') && !['', null, undefined].includes(key)\n })\n .map((measure) => ({\n id: measure,\n alias: measure,\n }))\n\n return {\n ...advancedVSeed,\n measures: defaultMeasures,\n }\n}\n"],"names":["defaultMeasures","advancedVSeed","context","vseed","measures","dataset","clonedMeasures","clone","preorderTraverse","node","isMeasure","top100dataset","sample","prev","cur","Object","key","item","undefined","measure"],"mappings":";;AAMO,MAAMA,kCAAgC,CAACC,eAAeC;IAC3D,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,QAAQ,EAAEC,OAAO,EAAE,GAAGF;IAE9B,IAAIC,YAAYA,SAAS,MAAM,GAAG,GAAG;QACnC,MAAME,iBAAiBC,MAAMH;QAC7BI,iBAAiBF,gBAAgB,CAACG;YAChC,IAAIC,UAAUD,OACZA,KAAK,KAAK,GAAGA,KAAK,KAAK,IAAIA,KAAK,EAAE;YAEpC,OAAO;QACT;QACA,OAAO;YACL,GAAGR,aAAa;YAChB,UAAUK;QACZ;IACF;IAEA,MAAMK,gBAAgBN,QAAQ,KAAK,CAAC,GAAG;IACvC,MAAMO,SAASD,cAAc,MAAM,CAAQ,CAACE,MAAMC,MACzC;YAAE,GAAGD,IAAI;YAAE,GAAGC,GAAG;QAAC,IACxB,CAAC;IACJ,MAAMd,kBAAkBe,OAAO,IAAI,CAACH,QACjC,MAAM,CAAC,CAACI,MACAL,cAAc,IAAI,CAAC,CAACM,OAAS,AAAqB,YAArB,OAAOA,IAAI,CAACD,IAAI,KAAkB,CAAC;YAAC;YAAI;YAAME;SAAU,CAAC,QAAQ,CAACF,MAEvG,GAAG,CAAC,CAACG,UAAa;YACjB,IAAIA;YACJ,OAAOA;QACT;IAEF,OAAO;QACL,GAAGlB,aAAa;QAChB,UAAUD;IACZ;AACF"}
|
@@ -58,6 +58,7 @@ const generateMeasureEncoding = (measures, encoding)=>{
|
|
58
58
|
if (color.length > 0) encoding.color = [
|
59
59
|
color[0]
|
60
60
|
];
|
61
|
+
encoding.size = unique(measures.filter((item)=>'size' === item.encoding).map((item)=>item.id));
|
61
62
|
const label = unique(measures.filter((item)=>'label' === item.encoding).map((item)=>item.id));
|
62
63
|
encoding.label = unique([
|
63
64
|
...encoding.label || [],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/encoding/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/scatter.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForScatter: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForScatter: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n // prepare measures and dimensions\n const measures = findAllMeasures(vseedMeasures)\n\n // exist encoding condition\n const hasDimensionEncoding = dimensions.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n\n // encoding for modify in place\n const encoding: Encoding = {}\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n return { ...advancedVSeed, encoding }\n}\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const dimensionsWithoutMeasureName = dimensions.filter((item) => item.id !== MeasureName)\n const uniqueDimIds = unique(dimensionsWithoutMeasureName.map((d) => d.id))\n encoding.color = uniqueDimIds.slice(0)\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureName) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n // color\n addColorToEncoding(dimensions, encoding, false)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = [MeasureName]\n }\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureName)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureName)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'xAxis' || item.encoding === 'yAxis' || !item.encoding)\n .map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'xAxis' || item.encoding === 'yAxis' || !item.encoding)\n .map((item) => item.id),\n )\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = [color[0]]\n }\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForScatter","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForScatter","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","dimensionsWithoutMeasureName","MeasureName","uniqueDimIds","unique","d","addColorToEncoding","color","label","tooltip"],"mappings":";;;;AAMO,MAAMA,4BAA0C,CAACC;IACtD,MAAM,EAAE,UAAUC,gBAAgB,EAAE,EAAEC,aAAa,EAAE,EAAE,GAAGF;IAC1D,MAAMG,WAAWC,gBAAgBH;IACjC,MAAMI,WAAqB,CAAC;IAC5BC,iCAAiCJ,YAAYG;IAC7CE,+BAA+BJ,UAAUE;IACzC,OAAO;QAAE,GAAGL,aAAa;QAAEK;IAAS;AACtC;AAEO,MAAMG,qBAAmC,CAACR;IAC/C,MAAM,EAAE,UAAUC,gBAAgB,EAAE,EAAEC,aAAa,EAAE,EAAE,GAAGF;IAE1D,MAAMG,WAAWC,gBAAgBH;IAGjC,MAAMQ,uBAAuBP,WAAW,IAAI,CAAC,CAACQ,OAAoBA,KAAK,QAAQ;IAC/E,MAAMC,qBAAqBR,SAAS,IAAI,CAAC,CAACO,OAAkBA,KAAK,QAAQ;IAGzE,MAAML,WAAqB,CAAC;IAE5B,IAAII,sBACFG,0BAA0BV,YAAYG;SAEtCC,iCAAiCJ,YAAYG;IAG/C,IAAIM,oBACFE,wBAAwBV,UAAUE;SAElCE,+BAA+BJ,UAAUE;IAG3C,OAAO;QAAE,GAAGL,aAAa;QAAEK;IAAS;AACtC;AAIA,MAAMC,mCAAmC,CAACJ,YAAwBG;IAChE,MAAMS,+BAA+BZ,WAAW,MAAM,CAAC,CAACQ,OAASA,KAAK,EAAE,KAAKK;IAC7E,MAAMC,eAAeC,OAAOH,6BAA6B,GAAG,CAAC,CAACI,IAAMA,EAAE,EAAE;IACxEb,SAAS,KAAK,GAAGW,aAAa,KAAK,CAAC;IACpCX,SAAS,MAAM,GAAGA,SAAS,KAAK;IAChCA,SAAS,OAAO,GAAGW,aAAa,MAAM,CAAC,CAACE,IAAMA,MAAMH;IACpDV,SAAS,KAAK,GAAG,EAAE;IACnBA,SAAS,GAAG,GAAG,EAAE;IACjBA,SAAS,MAAM,GAAG,EAAE;AACtB;AACA,MAAMO,4BAA4B,CAACV,YAAwBG;IAEzDc,mBAAmBjB,YAAYG,UAAU;IAGzCA,SAAS,MAAM,GAAGY,OAAOf,WAAW,MAAM,CAAC,CAACQ,OAASA,AAAkB,aAAlBA,KAAK,QAAQ,EAAe,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IACtG,IAAIL,AAA2B,MAA3BA,SAAS,MAAM,CAAC,MAAM,EACxBA,SAAS,MAAM,GAAG;QAACU;KAAY;IAGjCV,SAAS,OAAO,GAAGY,OAAOf,WAAW,GAAG,CAAC,CAACQ,OAASA,KAAK,EAAE;IAC1DL,SAAS,OAAO,GAAGA,SAAS,OAAO,CAAC,MAAM,CAAC,CAACa,IAAMA,MAAMH;IAGxDV,SAAS,KAAK,GAAGY,OAAOf,WAAW,MAAM,CAAC,CAACQ,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,EAAc,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IACpGL,SAAS,KAAK,GAAGA,SAAS,KAAK,CAAC,MAAM,CAAC,CAACa,IAAMA,MAAMH;AACtD;AAKA,MAAMR,iCAAiC,CAACJ,UAAoBE;IAC1DA,SAAS,CAAC,GAAGY,OACXd,SACG,MAAM,CAAC,CAACO,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,IAAgBA,AAAkB,YAAlBA,KAAK,QAAQ,IAAgB,CAACA,KAAK,QAAQ,EACzF,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;AAE5B;AACA,MAAMG,0BAA0B,CAACV,UAAoBE;IACnDA,SAAS,CAAC,GAAGY,OACXd,SACG,MAAM,CAAC,CAACO,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,IAAgBA,AAAkB,YAAlBA,KAAK,QAAQ,IAAgB,CAACA,KAAK,QAAQ,EACzF,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IAE1B,MAAMU,QAAQH,OAAOd,SAAS,MAAM,CAAC,CAACO,OAASA,AAAkB,YAAlBA,KAAK,QAAQ,EAAc,GAAG,CAAC,CAACA,OAASA,KAAK,EAAE;IAC/F,IAAIU,MAAM,MAAM,GAAG,GACjBf,SAAS,KAAK,GAAG;QAACe,KAAK,CAAC,EAAE;KAAC;
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/encoding/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/encoding/scatter.ts"],"sourcesContent":["import { unique } from 'remeda'\nimport { MeasureName } from 'src/dataReshape'\nimport { findAllMeasures } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Dimension, Dimensions, Encoding, Measure, Measures } from 'src/types'\nimport { addColorToEncoding } from './color'\n\nexport const defaultEncodingForScatter: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n const measures = findAllMeasures(vseedMeasures)\n const encoding: Encoding = {}\n generateDefaultDimensionEncoding(dimensions, encoding)\n generateDefaultMeasureEncoding(measures, encoding)\n return { ...advancedVSeed, encoding }\n}\n\nexport const encodingForScatter: AdvancedPipe = (advancedVSeed) => {\n const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed\n // prepare measures and dimensions\n const measures = findAllMeasures(vseedMeasures)\n\n // exist encoding condition\n const hasDimensionEncoding = dimensions.some((item: Dimension) => item.encoding)\n const hasMeasureEncoding = measures.some((item: Measure) => item.encoding)\n\n // encoding for modify in place\n const encoding: Encoding = {}\n\n if (hasDimensionEncoding) {\n generateDimensionEncoding(dimensions, encoding)\n } else {\n generateDefaultDimensionEncoding(dimensions, encoding)\n }\n\n if (hasMeasureEncoding) {\n generateMeasureEncoding(measures, encoding)\n } else {\n generateDefaultMeasureEncoding(measures, encoding)\n }\n\n return { ...advancedVSeed, encoding }\n}\n/**\n * --------------------维度--------------------\n */\nconst generateDefaultDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n const dimensionsWithoutMeasureName = dimensions.filter((item) => item.id !== MeasureName)\n const uniqueDimIds = unique(dimensionsWithoutMeasureName.map((d) => d.id))\n encoding.color = uniqueDimIds.slice(0)\n encoding.detail = encoding.color\n encoding.tooltip = uniqueDimIds.filter((d) => d !== MeasureName) // 展示指标名称之外的所有维度\n encoding.label = [] // 默认不展示标签\n encoding.row = [] // 默认不进行行透视\n encoding.column = [] // 默认不进行列透视\n}\nconst generateDimensionEncoding = (dimensions: Dimensions, encoding: Encoding) => {\n // color\n addColorToEncoding(dimensions, encoding, false)\n\n // detail\n encoding.detail = unique(dimensions.filter((item) => item.encoding === 'detail').map((item) => item.id))\n if (encoding.detail.length === 0) {\n encoding.detail = [MeasureName]\n }\n // tooltip\n encoding.tooltip = unique(dimensions.map((item) => item.id))\n encoding.tooltip = encoding.tooltip.filter((d) => d !== MeasureName)\n\n // label\n encoding.label = unique(dimensions.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = encoding.label.filter((d) => d !== MeasureName)\n}\n\n/**\n * --------------------指标--------------------\n */\nconst generateDefaultMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'xAxis' || item.encoding === 'yAxis' || !item.encoding)\n .map((item) => item.id),\n )\n}\nconst generateMeasureEncoding = (measures: Measures, encoding: Encoding) => {\n encoding.y = unique(\n measures\n .filter((item) => item.encoding === 'xAxis' || item.encoding === 'yAxis' || !item.encoding)\n .map((item) => item.id),\n )\n const color = unique(measures.filter((item) => item.encoding === 'color').map((item) => item.id))\n if (color.length > 0) {\n encoding.color = [color[0]]\n }\n\n // size\n encoding.size = unique(measures.filter((item) => item.encoding === 'size').map((item) => item.id))\n\n // label\n const label = unique(measures.filter((item) => item.encoding === 'label').map((item) => item.id))\n encoding.label = unique([...(encoding.label || []), ...label])\n\n // tooltip\n const tooltip = unique(measures.filter((item) => item.encoding === 'tooltip').map((item) => item.id))\n encoding.tooltip = unique([...(encoding.tooltip || []), ...label, ...tooltip])\n}\n"],"names":["defaultEncodingForScatter","advancedVSeed","vseedMeasures","dimensions","measures","findAllMeasures","encoding","generateDefaultDimensionEncoding","generateDefaultMeasureEncoding","encodingForScatter","hasDimensionEncoding","item","hasMeasureEncoding","generateDimensionEncoding","generateMeasureEncoding","dimensionsWithoutMeasureName","MeasureName","uniqueDimIds","unique","d","addColorToEncoding","color","label","tooltip"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.ts"],"sourcesContent":["import type { AdvancedPipe, AdvancedVSeed } from 'src/types'\n\nexport const initAdvancedVSeed: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType, locale } = vseed\n return {\n ...advancedVSeed,\n chartType,\n locale: locale || 'zh-CN',\n } as AdvancedVSeed\n}\n"],"names":["initAdvancedVSeed","advancedVSeed","context","vseed","chartType","locale"],"mappings":"
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/init/initAdvancedVSeed.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/init/initAdvancedVSeed.ts"],"sourcesContent":["import { checkVSeed } from 'src/pipeline/utils'\nimport type { AdvancedPipe, AdvancedVSeed } from 'src/types'\n\nexport const initAdvancedVSeed: AdvancedPipe = (advancedVSeed, context) => {\n const { vseed } = context\n const { chartType, locale } = vseed\n\n checkVSeed(vseed)\n\n return {\n ...advancedVSeed,\n chartType,\n locale: locale || 'zh-CN',\n } as AdvancedVSeed\n}\n"],"names":["initAdvancedVSeed","advancedVSeed","context","vseed","chartType","locale","checkVSeed"],"mappings":";AAGO,MAAMA,oBAAkC,CAACC,eAAeC;IAC7D,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,MAAM,EAAEE,SAAS,EAAEC,MAAM,EAAE,GAAGF;IAE9BG,WAAWH;IAEX,OAAO;QACL,GAAGF,aAAa;QAChBG;QACA,QAAQC,UAAU;IACpB;AACF"}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { deleteMeasureTreeByCallback } from "../../../../utils/index.js";
|
2
|
+
const deleteEncodingForMeasure = (encodingKeys)=>(advancedVSeed)=>{
|
3
|
+
const deleteBy = (measure)=>encodingKeys.includes(measure.encoding);
|
4
|
+
const measureTree = deleteMeasureTreeByCallback(advancedVSeed.measures, deleteBy);
|
5
|
+
return {
|
6
|
+
...advancedVSeed,
|
7
|
+
measures: measureTree
|
8
|
+
};
|
9
|
+
};
|
10
|
+
export { deleteEncodingForMeasure };
|
11
|
+
|
12
|
+
//# sourceMappingURL=deleteEncodingForMeasure.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/measures/deleteEncodingForMeasure.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/measures/deleteEncodingForMeasure.ts"],"sourcesContent":["import { deleteMeasureTreeByCallback } from 'src/pipeline/utils'\nimport type { AdvancedPipe, Measure } from 'src/types'\n\nexport const deleteEncodingForMeasure = (encodingKeys: string[]): AdvancedPipe => {\n return (advancedVSeed) => {\n const deleteBy = (measure: Measure) => encodingKeys.includes(measure.encoding as string)\n\n const measureTree = deleteMeasureTreeByCallback(advancedVSeed.measures, deleteBy)\n\n return {\n ...advancedVSeed,\n measures: measureTree,\n }\n }\n}\n"],"names":["deleteEncodingForMeasure","encodingKeys","advancedVSeed","deleteBy","measure","measureTree","deleteMeasureTreeByCallback"],"mappings":";AAGO,MAAMA,2BAA2B,CAACC,eAChC,CAACC;QACN,MAAMC,WAAW,CAACC,UAAqBH,aAAa,QAAQ,CAACG,QAAQ,QAAQ;QAE7E,MAAMC,cAAcC,4BAA4BJ,cAAc,QAAQ,EAAEC;QAExE,OAAO;YACL,GAAGD,aAAa;YAChB,UAAUG;QACZ;IACF"}
|
@@ -2,4 +2,4 @@ export * from './utils';
|
|
2
2
|
export { buildMeasuresForDualAxis } from './buildMeasuresForDualAxis';
|
3
3
|
export { buildMeasures } from './buildMeasures';
|
4
4
|
export { buildMeasuresForScatter } from './buildMeasuresForScatter';
|
5
|
-
export {
|
5
|
+
export { deleteEncodingForMeasure } from './deleteEncodingForMeasure';
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { buildMeasuresForDualAxis } from "./buildMeasuresForDualAxis.js";
|
2
2
|
import { buildMeasures } from "./buildMeasures.js";
|
3
3
|
import { buildMeasuresForScatter } from "./buildMeasuresForScatter.js";
|
4
|
-
import {
|
4
|
+
import { deleteEncodingForMeasure } from "./deleteEncodingForMeasure.js";
|
5
5
|
export * from "./utils.js";
|
6
|
-
export { buildMeasures, buildMeasuresForDualAxis, buildMeasuresForScatter,
|
6
|
+
export { buildMeasures, buildMeasuresForDualAxis, buildMeasuresForScatter, deleteEncodingForMeasure };
|
@@ -8,9 +8,7 @@ const pivotReshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
8
8
|
};
|
9
9
|
const { vseed } = context;
|
10
10
|
const { dataset } = vseed;
|
11
|
-
const { dimensions, measures, encoding, chartType } = advancedVSeed;
|
12
|
-
if (!measures || !dimensions || !dataset || !encoding) return result;
|
13
|
-
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
11
|
+
const { dimensions = [], measures = [], encoding, chartType } = advancedVSeed;
|
14
12
|
const datasetList = [];
|
15
13
|
const datasetReshapeInfo = [];
|
16
14
|
const measureGroups = [];
|
@@ -20,8 +18,7 @@ const pivotReshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
20
18
|
});
|
21
19
|
else if (2 === depth) measureGroups.push(measures);
|
22
20
|
measureGroups.forEach((measures, index)=>{
|
23
|
-
if (
|
24
|
-
if (measures.length > 2) throw new Error('measures can not be more than 2');
|
21
|
+
if (measures.length > 2) throw new Error('measures can not be more than 2 groups in dualAxis');
|
25
22
|
const foldInfoList = [];
|
26
23
|
const unfoldInfoList = [];
|
27
24
|
const datasets = [];
|
@@ -29,7 +26,7 @@ const pivotReshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
29
26
|
const secondaryMeasures = measures[1] || [];
|
30
27
|
if (primaryMeasures && primaryMeasures.children) {
|
31
28
|
const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (item)=>item.id), uniqueBy(primaryMeasures.children, (item)=>item.id), encoding, {
|
32
|
-
colorItemAsId:
|
29
|
+
colorItemAsId: false,
|
33
30
|
foldMeasureValue: `${FoldPrimaryMeasureValue}${index}`,
|
34
31
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
35
32
|
});
|
@@ -39,6 +36,7 @@ const pivotReshapeWithDualEncoding = (advancedVSeed, context)=>{
|
|
39
36
|
}
|
40
37
|
if (secondaryMeasures && secondaryMeasures.children) {
|
41
38
|
const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (item)=>item.id), uniqueBy(secondaryMeasures.children, (item)=>item.id), encoding, {
|
39
|
+
colorItemAsId: false,
|
42
40
|
foldMeasureValue: `${FoldSecondaryMeasureValue}${index}`,
|
43
41
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
44
42
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldPrimaryMeasureValue, FoldSecondaryMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Dimension,\n Encoding,\n FoldInfo,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithDualEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions, measures, encoding, chartType } = advancedVSeed\n\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldPrimaryMeasureValue, FoldSecondaryMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Dimension,\n Encoding,\n FoldInfo,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithDualEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions = [], measures = [], encoding, chartType } = advancedVSeed\n\n const datasetList: Dataset[] = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n const measureGroups: Array<MeasureGroup[]> = []\n\n const depth = measureDepth(measures)\n if (depth === 3) {\n measures.forEach((measure: MeasureGroup) => {\n measureGroups.push(measure.children as unknown as MeasureGroup[])\n })\n } else if (depth === 2) {\n measureGroups.push(measures as unknown as MeasureGroup[])\n }\n\n measureGroups.forEach((measures: MeasureGroup[], index) => {\n if (measures.length > 2) {\n throw new Error('measures can not be more than 2 groups in dualAxis')\n }\n\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const primaryMeasures = measures[0]\n const secondaryMeasures = measures[1] || []\n\n if (primaryMeasures && primaryMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(primaryMeasures.children, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldPrimaryMeasureValue}${index}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed),\n },\n )\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n if (secondaryMeasures && secondaryMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(secondaryMeasures.children, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldSecondaryMeasureValue}${index}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed),\n },\n )\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n const reshapeInfo = {\n id: `${chartType}-${index}`,\n index,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n }\n\n datasetReshapeInfo.push(reshapeInfo)\n datasetList.push(datasets.flat(2))\n })\n\n return {\n ...result,\n dataset: datasetList,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithDualEncoding","advancedVSeed","context","result","vseed","dataset","dimensions","measures","encoding","chartType","datasetList","datasetReshapeInfo","measureGroups","depth","measureDepth","measure","index","Error","foldInfoList","unfoldInfoList","datasets","primaryMeasures","secondaryMeasures","newDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","FoldPrimaryMeasureValue","getColorMeasureId","FoldSecondaryMeasureValue","d","prev","cur","reshapeInfo"],"mappings":";;;;AAiBO,MAAMA,+BAA6C,CAACC,eAAeC;IACxE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGR;IAEhE,MAAMS,cAAyB,EAAE;IACjC,MAAMC,qBAAyC,EAAE;IAEjD,MAAMC,gBAAuC,EAAE;IAE/C,MAAMC,QAAQC,aAAaP;IAC3B,IAAIM,AAAU,MAAVA,OACFN,SAAS,OAAO,CAAC,CAACQ;QAChBH,cAAc,IAAI,CAACG,QAAQ,QAAQ;IACrC;SACK,IAAIF,AAAU,MAAVA,OACTD,cAAc,IAAI,CAACL;IAGrBK,cAAc,OAAO,CAAC,CAACL,UAA0BS;QAC/C,IAAIT,SAAS,MAAM,GAAG,GACpB,MAAM,IAAIU,MAAM;QAGlB,MAAMC,eAA2B,EAAE;QACnC,MAAMC,iBAA+B,EAAE;QAEvC,MAAMC,WAAsB,EAAE;QAC9B,MAAMC,kBAAkBd,QAAQ,CAAC,EAAE;QACnC,MAAMe,oBAAoBf,QAAQ,CAAC,EAAE,IAAI,EAAE;QAE3C,IAAIc,mBAAmBA,gBAAgB,QAAQ,EAAE;YAC/C,MAAM,EACJ,SAASE,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFrB,SACAsB,SAASrB,YAAY,CAACsB,OAASA,KAAK,EAAE,GACtCD,SAASN,gBAAgB,QAAQ,EAAE,CAACO,OAASA,KAAK,EAAE,GACpDpB,UACA;gBACE,eAAe;gBACf,kBAAkB,GAAGqB,0BAA0Bb,OAAO;gBACtD,gBAAgBc,kBAAkB7B;YACpC;YAGFmB,SAAS,IAAI,CAACG;YACdL,aAAa,IAAI,CAACM;YAClBL,eAAe,IAAI,CAACM;QACtB;QAEA,IAAIH,qBAAqBA,kBAAkB,QAAQ,EAAE;YACnD,MAAM,EACJ,SAASC,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFrB,SACAsB,SAASrB,YAAY,CAACsB,OAASA,KAAK,EAAE,GACtCD,SAASL,kBAAkB,QAAQ,EAAE,CAACM,OAASA,KAAK,EAAE,GACtDpB,UACA;gBACE,eAAe;gBACf,kBAAkB,GAAGuB,4BAA4Bf,OAAO;gBACxD,gBAAgBc,kBAAkB7B;YACpC;YAGFmB,SAAS,IAAI,CAACG;YACdL,aAAa,IAAI,CAACM;YAClBL,eAAe,IAAI,CAACM;QACtB;QAEA,MAAMA,aAAyB;YAC7B,GAAGN,cAAc,CAAC,EAAE;YACpB,YAAYA,eAAe,OAAO,CAAC,CAACa,IAAMA,EAAE,UAAU;YACtD,YAAYb,eAAe,MAAM,CAAC,CAACc,MAAMC,MAAS;oBAAE,GAAGD,IAAI;oBAAE,GAAGC,IAAI,UAAU;gBAAC,IAAI,CAAC;QACtF;QAEA,MAAMC,cAAc;YAClB,IAAI,GAAG1B,UAAU,CAAC,EAAEO,OAAO;YAC3BA;YACA,UAAUE,YAAY,CAAC,EAAE;YACzB,cAAcA;YACd,YAAYO;QACd;QAEAd,mBAAmB,IAAI,CAACwB;QACxBzB,YAAY,IAAI,CAACU,SAAS,IAAI,CAAC;IACjC;IAEA,OAAO;QACL,GAAGjB,MAAM;QACT,SAASO;QACT,oBAAoBC;IACtB;AACF"}
|
@@ -7,14 +7,11 @@ const pivotReshapeWithEncoding = (advancedVSeed, context)=>{
|
|
7
7
|
};
|
8
8
|
const { vseed } = context;
|
9
9
|
const { dataset } = vseed;
|
10
|
-
const { dimensions, measures, encoding } = advancedVSeed;
|
11
|
-
if (!measures || !dimensions || !dataset || !encoding) return result;
|
12
|
-
if (0 === measures.length) throw new Error('measures can not be empty');
|
10
|
+
const { dimensions = [], measures = [], encoding } = advancedVSeed;
|
13
11
|
const measureGroups = [];
|
14
12
|
if (measures) measures.forEach((measure)=>{
|
15
13
|
if (measure.children && measure.children.length > 0) measureGroups.push(measure);
|
16
14
|
});
|
17
|
-
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
18
15
|
const datasets = [];
|
19
16
|
const datasetReshapeInfo = [];
|
20
17
|
measureGroups.forEach((measureGroup, index)=>{
|
@@ -22,7 +19,7 @@ const pivotReshapeWithEncoding = (advancedVSeed, context)=>{
|
|
22
19
|
if (!measures) return;
|
23
20
|
const groupId = measureGroup.id;
|
24
21
|
const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, uniqueBy(dimensions, (item)=>item.id), uniqueBy(measures, (item)=>item.id), encoding, {
|
25
|
-
colorItemAsId:
|
22
|
+
colorItemAsId: false,
|
26
23
|
foldMeasureValue: `${FoldMeasureValue}${groupId}`,
|
27
24
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
28
25
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Dimension,\n Encoding,\n MeasureGroup,\n} from 'src/types'\n\nexport const pivotReshapeWithEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.ts"],"sourcesContent":["import { uniqueBy } from 'remeda'\nimport { dataReshapeByEncoding, FoldMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Dimension,\n Encoding,\n MeasureGroup,\n} from 'src/types'\n\nexport const pivotReshapeWithEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions = [], measures = [], encoding } = advancedVSeed\n\n const measureGroups: MeasureGroup[] = []\n if (measures) {\n measures.forEach((measure: MeasureGroup) => {\n if (measure.children && measure.children.length > 0) {\n measureGroups.push(measure)\n }\n })\n }\n\n const datasets: Dataset = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measureGroup, index) => {\n const measures = measureGroup.children\n if (!measures) {\n return\n }\n const groupId = measureGroup.id\n const {\n dataset: newSubDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(\n dataset,\n uniqueBy(dimensions, (item) => item.id),\n uniqueBy(measures, (item) => item.id),\n encoding as Encoding,\n {\n colorItemAsId: false,\n foldMeasureValue: `${FoldMeasureValue}${groupId}`,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed),\n },\n )\n\n const reshapeInfo = {\n id: groupId,\n index,\n foldInfo,\n unfoldInfo,\n }\n datasets.push(newSubDataset)\n datasetReshapeInfo.push(reshapeInfo)\n })\n\n return {\n ...result,\n dataset: datasets,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithEncoding","advancedVSeed","context","result","vseed","dataset","dimensions","measures","encoding","measureGroups","measure","datasets","datasetReshapeInfo","measureGroup","index","groupId","newSubDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","uniqueBy","item","FoldMeasureValue","getColorMeasureId","reshapeInfo"],"mappings":";;;AAcO,MAAMA,2BAAyC,CAACC,eAAeC;IACpE,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,QAAQ,EAAE,GAAGP;IAErD,MAAMQ,gBAAgC,EAAE;IACxC,IAAIF,UACFA,SAAS,OAAO,CAAC,CAACG;QAChB,IAAIA,QAAQ,QAAQ,IAAIA,QAAQ,QAAQ,CAAC,MAAM,GAAG,GAChDD,cAAc,IAAI,CAACC;IAEvB;IAGF,MAAMC,WAAoB,EAAE;IAC5B,MAAMC,qBAAyC,EAAE;IAEjDH,cAAc,OAAO,CAAC,CAACI,cAAcC;QACnC,MAAMP,WAAWM,aAAa,QAAQ;QACtC,IAAI,CAACN,UACH;QAEF,MAAMQ,UAAUF,aAAa,EAAE;QAC/B,MAAM,EACJ,SAASG,aAAa,EACtBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBACFd,SACAe,SAASd,YAAY,CAACe,OAASA,KAAK,EAAE,GACtCD,SAASb,UAAU,CAACc,OAASA,KAAK,EAAE,GACpCb,UACA;YACE,eAAe;YACf,kBAAkB,GAAGc,mBAAmBP,SAAS;YACjD,gBAAgBQ,kBAAkBtB;QACpC;QAGF,MAAMuB,cAAc;YAClB,IAAIT;YACJD;YACAG;YACAC;QACF;QACAP,SAAS,IAAI,CAACK;QACdJ,mBAAmB,IAAI,CAACY;IAC1B;IAEA,OAAO;QACL,GAAGrB,MAAM;QACT,SAASQ;QACT,oBAAoBC;IACtB;AACF"}
|
@@ -7,8 +7,7 @@ const pivotReshapeWithScatterEncoding = (advancedVSeed, context)=>{
|
|
7
7
|
};
|
8
8
|
const { vseed } = context;
|
9
9
|
const { dataset } = vseed;
|
10
|
-
const { dimensions, measures, encoding, chartType } = advancedVSeed;
|
11
|
-
if (!measures || !dimensions || !dataset || !encoding) return result;
|
10
|
+
const { dimensions = [], measures = [], encoding, chartType } = advancedVSeed;
|
12
11
|
const measureGroups = [];
|
13
12
|
const depth = measureDepth(measures);
|
14
13
|
if (3 === depth) measures.forEach((measure)=>{
|
@@ -18,8 +17,7 @@ const pivotReshapeWithScatterEncoding = (advancedVSeed, context)=>{
|
|
18
17
|
const datasetList = [];
|
19
18
|
const datasetReshapeInfo = [];
|
20
19
|
measureGroups.forEach((measures, index)=>{
|
21
|
-
if (
|
22
|
-
if (measures.length > 2) throw new Error('measures can not be more than 2');
|
20
|
+
if (measures.length > 2) throw new Error('measures can not be more than 2 groups in scatter');
|
23
21
|
const foldInfoList = [];
|
24
22
|
const unfoldInfoList = [];
|
25
23
|
const datasets = [];
|
package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.ts"],"sourcesContent":["import { dataReshapeByEncoding, FoldXMeasureValue, FoldYMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Encoding,\n FoldInfo,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithScatterEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions, measures, encoding, chartType } = advancedVSeed\n\n
|
1
|
+
{"version":3,"file":"pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js","sources":["webpack://@visactor/vseed/./src/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.ts"],"sourcesContent":["import { dataReshapeByEncoding, FoldXMeasureValue, FoldYMeasureValue } from 'src/dataReshape'\nimport { getColorMeasureId } from 'src/pipeline/spec/chart/pipes'\nimport { measureDepth } from 'src/pipeline/utils'\nimport type {\n AdvancedPipe,\n AdvancedVSeed,\n ColumnParallel,\n Dataset,\n DatasetReshapeInfo,\n Encoding,\n FoldInfo,\n MeasureGroup,\n UnfoldInfo,\n} from 'src/types'\n\nexport const pivotReshapeWithScatterEncoding: AdvancedPipe = (advancedVSeed, context) => {\n const result = { ...advancedVSeed }\n const { vseed } = context\n const { dataset } = vseed as ColumnParallel\n const { dimensions = [], measures = [], encoding, chartType } = advancedVSeed\n\n const measureGroups: Array<MeasureGroup[]> = []\n\n const depth = measureDepth(measures)\n if (depth === 3) {\n measures.forEach((measure: MeasureGroup) => {\n measureGroups.push(measure.children as unknown as MeasureGroup[])\n })\n } else if (depth === 2) {\n measureGroups.push(measures)\n }\n\n const datasetList: Dataset[] = []\n const datasetReshapeInfo: DatasetReshapeInfo = []\n\n measureGroups.forEach((measures: MeasureGroup[], index) => {\n if (measures.length > 2) {\n throw new Error('measures can not be more than 2 groups in scatter')\n }\n\n const foldInfoList: FoldInfo[] = []\n const unfoldInfoList: UnfoldInfo[] = []\n\n const datasets: Dataset[] = []\n const xMeasures = measures[0]\n const yMeasures = measures[1] || xMeasures\n\n if (xMeasures && xMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(dataset, dimensions, xMeasures.children, encoding as Encoding, {\n foldMeasureValue: `${FoldXMeasureValue}${index}`,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed),\n })\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n if (yMeasures && yMeasures.children) {\n const {\n dataset: newDataset,\n foldInfo,\n unfoldInfo,\n } = dataReshapeByEncoding(dataset, dimensions, yMeasures.children, encoding as Encoding, {\n foldMeasureValue: `${FoldYMeasureValue}${index}`,\n colorItemAsId: true,\n colorMeasureId: getColorMeasureId(advancedVSeed as AdvancedVSeed),\n })\n\n datasets.push(newDataset)\n foldInfoList.push(foldInfo)\n unfoldInfoList.push(unfoldInfo)\n }\n\n const unfoldInfo: UnfoldInfo = {\n ...unfoldInfoList[0],\n colorItems: unfoldInfoList.flatMap((d) => d.colorItems),\n colorIdMap: unfoldInfoList.reduce((prev, cur) => ({ ...prev, ...cur.colorIdMap }), {}),\n }\n\n const reshapeInfo = {\n id: `${chartType}-${index}`,\n index,\n foldInfo: foldInfoList[0],\n foldInfoList: foldInfoList,\n unfoldInfo: unfoldInfo,\n }\n\n datasetReshapeInfo.push(reshapeInfo)\n datasetList.push(datasets[0].map((d, index) => ({ ...d, ...(datasets[1]?.[index] || {}) })))\n })\n\n return {\n ...result,\n dataset: datasetList,\n datasetReshapeInfo: datasetReshapeInfo,\n }\n}\n"],"names":["pivotReshapeWithScatterEncoding","advancedVSeed","context","result","vseed","dataset","dimensions","measures","encoding","chartType","measureGroups","depth","measureDepth","measure","datasetList","datasetReshapeInfo","index","Error","foldInfoList","unfoldInfoList","datasets","xMeasures","yMeasures","newDataset","foldInfo","unfoldInfo","dataReshapeByEncoding","FoldXMeasureValue","getColorMeasureId","FoldYMeasureValue","d","prev","cur","reshapeInfo"],"mappings":";;;AAeO,MAAMA,kCAAgD,CAACC,eAAeC;IAC3E,MAAMC,SAAS;QAAE,GAAGF,aAAa;IAAC;IAClC,MAAM,EAAEG,KAAK,EAAE,GAAGF;IAClB,MAAM,EAAEG,OAAO,EAAE,GAAGD;IACpB,MAAM,EAAEE,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGR;IAEhE,MAAMS,gBAAuC,EAAE;IAE/C,MAAMC,QAAQC,aAAaL;IAC3B,IAAII,AAAU,MAAVA,OACFJ,SAAS,OAAO,CAAC,CAACM;QAChBH,cAAc,IAAI,CAACG,QAAQ,QAAQ;IACrC;SACK,IAAIF,AAAU,MAAVA,OACTD,cAAc,IAAI,CAACH;IAGrB,MAAMO,cAAyB,EAAE;IACjC,MAAMC,qBAAyC,EAAE;IAEjDL,cAAc,OAAO,CAAC,CAACH,UAA0BS;QAC/C,IAAIT,SAAS,MAAM,GAAG,GACpB,MAAM,IAAIU,MAAM;QAGlB,MAAMC,eAA2B,EAAE;QACnC,MAAMC,iBAA+B,EAAE;QAEvC,MAAMC,WAAsB,EAAE;QAC9B,MAAMC,YAAYd,QAAQ,CAAC,EAAE;QAC7B,MAAMe,YAAYf,QAAQ,CAAC,EAAE,IAAIc;QAEjC,IAAIA,aAAaA,UAAU,QAAQ,EAAE;YACnC,MAAM,EACJ,SAASE,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBAAsBrB,SAASC,YAAYe,UAAU,QAAQ,EAAEb,UAAsB;gBACvF,kBAAkB,GAAGmB,oBAAoBX,OAAO;gBAChD,eAAe;gBACf,gBAAgBY,kBAAkB3B;YACpC;YAEAmB,SAAS,IAAI,CAACG;YACdL,aAAa,IAAI,CAACM;YAClBL,eAAe,IAAI,CAACM;QACtB;QAEA,IAAIH,aAAaA,UAAU,QAAQ,EAAE;YACnC,MAAM,EACJ,SAASC,UAAU,EACnBC,QAAQ,EACRC,UAAU,EACX,GAAGC,sBAAsBrB,SAASC,YAAYgB,UAAU,QAAQ,EAAEd,UAAsB;gBACvF,kBAAkB,GAAGqB,oBAAoBb,OAAO;gBAChD,eAAe;gBACf,gBAAgBY,kBAAkB3B;YACpC;YAEAmB,SAAS,IAAI,CAACG;YACdL,aAAa,IAAI,CAACM;YAClBL,eAAe,IAAI,CAACM;QACtB;QAEA,MAAMA,aAAyB;YAC7B,GAAGN,cAAc,CAAC,EAAE;YACpB,YAAYA,eAAe,OAAO,CAAC,CAACW,IAAMA,EAAE,UAAU;YACtD,YAAYX,eAAe,MAAM,CAAC,CAACY,MAAMC,MAAS;oBAAE,GAAGD,IAAI;oBAAE,GAAGC,IAAI,UAAU;gBAAC,IAAI,CAAC;QACtF;QAEA,MAAMC,cAAc;YAClB,IAAI,GAAGxB,UAAU,CAAC,EAAEO,OAAO;YAC3BA;YACA,UAAUE,YAAY,CAAC,EAAE;YACzB,cAAcA;YACd,YAAYO;QACd;QAEAV,mBAAmB,IAAI,CAACkB;QACxBnB,YAAY,IAAI,CAACM,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAACU,GAAGd,QAAW;gBAAE,GAAGc,CAAC;gBAAE,GAAIV,QAAQ,CAAC,EAAE,EAAE,CAACJ,MAAM,IAAI,CAAC,CAAC;YAAE;IAC1F;IAEA,OAAO;QACL,GAAGb,MAAM;QACT,SAASW;QACT,oBAAoBC;IACtB;AACF"}
|