@visactor/vseed 0.0.16 → 0.0.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/builder/builder/builder.d.ts +821 -130
- package/dist/builder/builder/builder.d.ts.map +1 -1
- package/dist/builder/register/all.d.ts.map +1 -1
- package/dist/builder/register/chartType.d.ts +2 -0
- package/dist/builder/register/chartType.d.ts.map +1 -1
- package/dist/dataReshape/dataReshapeFor1D2M.d.ts +20 -0
- package/dist/dataReshape/dataReshapeFor1D2M.d.ts.map +1 -0
- package/dist/dataReshape/index.d.ts +1 -0
- package/dist/dataReshape/index.d.ts.map +1 -1
- package/dist/index.cjs +661 -39
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +636 -32
- package/dist/index.js.map +1 -1
- package/dist/pipeline/advanced/pipeline/funnel.d.ts +3 -0
- package/dist/pipeline/advanced/pipeline/funnel.d.ts.map +1 -0
- package/dist/pipeline/advanced/pipeline/index.d.ts +2 -0
- package/dist/pipeline/advanced/pipeline/index.d.ts.map +1 -1
- package/dist/pipeline/advanced/pipeline/scatter.d.ts +3 -0
- package/dist/pipeline/advanced/pipeline/scatter.d.ts.map +1 -0
- package/dist/pipeline/advanced/pipes/config/config.d.ts +2 -0
- package/dist/pipeline/advanced/pipes/config/config.d.ts.map +1 -1
- package/dist/pipeline/advanced/pipes/encoding/encodingFunnel.d.ts +3 -0
- package/dist/pipeline/advanced/pipes/encoding/encodingFunnel.d.ts.map +1 -0
- package/dist/pipeline/advanced/pipes/encoding/encodingYY.d.ts +3 -0
- package/dist/pipeline/advanced/pipes/encoding/encodingYY.d.ts.map +1 -0
- package/dist/pipeline/advanced/pipes/encoding/index.d.ts +1 -0
- package/dist/pipeline/advanced/pipes/encoding/index.d.ts.map +1 -1
- package/dist/pipeline/advanced/pipes/reshape/index.d.ts +2 -0
- package/dist/pipeline/advanced/pipes/reshape/index.d.ts.map +1 -1
- package/dist/pipeline/advanced/pipes/reshape/pivotReshapeTo1D2M.d.ts +9 -0
- package/dist/pipeline/advanced/pipes/reshape/pivotReshapeTo1D2M.d.ts.map +1 -0
- package/dist/pipeline/advanced/pipes/reshape/reshapeTo1D2M.d.ts +9 -0
- package/dist/pipeline/advanced/pipes/reshape/reshapeTo1D2M.d.ts.map +1 -0
- package/dist/pipeline/spec/pipeline/area.d.ts.map +1 -1
- package/dist/pipeline/spec/pipeline/funnel.d.ts +3 -0
- package/dist/pipeline/spec/pipeline/funnel.d.ts.map +1 -0
- package/dist/pipeline/spec/pipeline/index.d.ts +2 -0
- package/dist/pipeline/spec/pipeline/index.d.ts.map +1 -1
- package/dist/pipeline/spec/pipeline/line.d.ts.map +1 -1
- package/dist/pipeline/spec/pipeline/roseParallel.d.ts.map +1 -1
- package/dist/pipeline/spec/pipeline/scatter.d.ts +3 -0
- package/dist/pipeline/spec/pipeline/scatter.d.ts.map +1 -0
- package/dist/pipeline/spec/pipes/vchart/axes/xLinear.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/axes/yLinear.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/color/color.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/crosshair/horizontalCrosshairLine.d.ts +3 -0
- package/dist/pipeline/spec/pipes/vchart/crosshair/horizontalCrosshairLine.d.ts.map +1 -0
- package/dist/pipeline/spec/pipes/vchart/crosshair/index.d.ts +1 -0
- package/dist/pipeline/spec/pipes/vchart/crosshair/index.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/dataset/dataset.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/init/funnel.d.ts +3 -0
- package/dist/pipeline/spec/pipes/vchart/init/funnel.d.ts.map +1 -0
- package/dist/pipeline/spec/pipes/vchart/init/index.d.ts +1 -0
- package/dist/pipeline/spec/pipes/vchart/init/index.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/init/roseParallel.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/init/scatter.d.ts +3 -0
- package/dist/pipeline/spec/pipes/vchart/init/scatter.d.ts.map +1 -0
- package/dist/pipeline/spec/pipes/vchart/markStyle/barStyle.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/markStyle/index.d.ts +1 -0
- package/dist/pipeline/spec/pipes/vchart/markStyle/index.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/markStyle/pointState.d.ts +4 -0
- package/dist/pipeline/spec/pipes/vchart/markStyle/pointState.d.ts.map +1 -0
- package/dist/pipeline/spec/pipes/vchart/markStyle/pointStyle.d.ts.map +1 -1
- package/dist/pipeline/spec/pipes/vchart/tooltip/tooltip.d.ts.map +1 -1
- package/dist/pipeline/utils/measures/findMeasureById.d.ts +2 -1
- package/dist/pipeline/utils/measures/findMeasureById.d.ts.map +1 -1
- package/dist/pipeline/utils/measures/index.d.ts +1 -1
- package/dist/pipeline/utils/measures/index.d.ts.map +1 -1
- package/dist/theme/dark.d.ts.map +1 -1
- package/dist/theme/light.d.ts.map +1 -1
- package/dist/types/advancedVSeed.d.ts +179 -4
- package/dist/types/advancedVSeed.d.ts.map +1 -1
- package/dist/types/chartType/funnel/funnel.d.ts +224 -0
- package/dist/types/chartType/funnel/funnel.d.ts.map +1 -0
- package/dist/types/chartType/funnel/index.d.ts +2 -0
- package/dist/types/chartType/funnel/index.d.ts.map +1 -0
- package/dist/types/chartType/index.d.ts +2 -0
- package/dist/types/chartType/index.d.ts.map +1 -1
- package/dist/types/chartType/scatter/index.d.ts +2 -0
- package/dist/types/chartType/scatter/index.d.ts.map +1 -0
- package/dist/types/chartType/scatter/scatter.d.ts +843 -0
- package/dist/types/chartType/scatter/scatter.d.ts.map +1 -0
- package/dist/types/properties/baseConfig/color.d.ts +2 -2
- package/dist/types/properties/baseConfig/color.d.ts.map +1 -1
- package/dist/types/properties/chartType/chartType.d.ts +6 -2
- package/dist/types/properties/chartType/chartType.d.ts.map +1 -1
- package/dist/types/properties/config/config.d.ts +88 -2
- package/dist/types/properties/config/config.d.ts.map +1 -1
- package/dist/types/properties/encoding/encoding.d.ts +2 -0
- package/dist/types/properties/encoding/encoding.d.ts.map +1 -1
- package/dist/types/properties/theme/customTheme.d.ts +176 -4
- package/dist/types/properties/theme/customTheme.d.ts.map +1 -1
- package/dist/types/vseed.d.ts +1255 -4
- package/dist/types/vseed.d.ts.map +1 -1
- package/dist/umd/index.js +649 -39
- package/dist/umd/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
@@ -26,42 +26,45 @@ __webpack_require__.r(__webpack_exports__);
|
|
26
26
|
__webpack_require__.d(__webpack_exports__, {
|
27
27
|
registerBar: ()=>registerBar,
|
28
28
|
isVChart: ()=>isVChart,
|
29
|
+
funnelAdvancedPipeline: ()=>funnelAdvancedPipeline,
|
29
30
|
autoFormatter: ()=>autoFormatter,
|
30
31
|
roseParallelAdvancedPipeline: ()=>roseParallelAdvancedPipeline,
|
31
|
-
zBaseConfig: ()=>zBaseConfig,
|
32
32
|
pieAdvancedPipeline: ()=>pieAdvancedPipeline,
|
33
33
|
execPipeline: ()=>execPipeline,
|
34
34
|
areaSpecPipeline: ()=>areaSpecPipeline,
|
35
35
|
registerCustomTheme: ()=>registerCustomTheme,
|
36
36
|
registerLine: ()=>registerLine,
|
37
|
+
zBaseConfig: ()=>zBaseConfig,
|
37
38
|
zColor: ()=>zColor,
|
39
|
+
findFirstMeasure: ()=>findFirstMeasure,
|
40
|
+
scatterAdvancedPipeline: ()=>scatterAdvancedPipeline,
|
38
41
|
zMeasureGroup: ()=>zMeasureGroup,
|
39
|
-
zStackCornerRadius: ()=>zStackCornerRadius,
|
40
|
-
zTooltip: ()=>zTooltip,
|
41
|
-
zUnfoldInfo: ()=>zUnfoldInfo,
|
42
42
|
zMeasures: ()=>zMeasures,
|
43
|
+
zUnfoldInfo: ()=>zUnfoldInfo,
|
43
44
|
zCrosshairRect: ()=>zCrosshairRect,
|
44
45
|
FoldMeasureName: ()=>FoldMeasureName,
|
45
46
|
intl: ()=>intl,
|
46
47
|
darkTheme: ()=>darkTheme,
|
47
48
|
createNumFormatter: ()=>createNumFormatter,
|
48
49
|
columnPercentAdvancedPipeline: ()=>columnPercentAdvancedPipeline,
|
49
|
-
|
50
|
+
scatterSpecPipeline: ()=>scatterSpecPipeline,
|
50
51
|
isVTable: ()=>isVTable,
|
51
52
|
zAnnotation: ()=>zAnnotation,
|
53
|
+
zAxis: ()=>zAxis,
|
52
54
|
zCrosshairLine: ()=>zCrosshairLine,
|
53
55
|
columnSpecPipeline: ()=>columnSpecPipeline,
|
54
56
|
UnfoldDimensionGroup: ()=>UnfoldDimensionGroup,
|
55
57
|
zDatasetReshapeInfo: ()=>zDatasetReshapeInfo,
|
56
58
|
zFoldInfo: ()=>zFoldInfo,
|
57
|
-
|
59
|
+
zStackCornerRadius: ()=>zStackCornerRadius,
|
58
60
|
zAreaStyle: ()=>zAreaStyle,
|
59
61
|
ORIGINAL_DATA: ()=>ORIGINAL_DATA,
|
60
|
-
|
62
|
+
dataReshapeFor1D2M: ()=>dataReshapeFor1D2M,
|
61
63
|
zAnnotationArea: ()=>zAnnotationArea,
|
64
|
+
zAnnotationHorizontalLine: ()=>zAnnotationHorizontalLine,
|
62
65
|
zMarkStyle: ()=>zMarkStyle,
|
63
|
-
zYLinearAxis: ()=>zYLinearAxis,
|
64
66
|
Separator: ()=>Separator,
|
67
|
+
zTooltip: ()=>zTooltip,
|
65
68
|
columnAdvancedPipeline: ()=>columnAdvancedPipeline,
|
66
69
|
columnParallelSpecPipeline: ()=>columnParallelSpecPipeline,
|
67
70
|
zLabel: ()=>zLabel,
|
@@ -71,7 +74,10 @@ __webpack_require__.d(__webpack_exports__, {
|
|
71
74
|
lightTheme: ()=>lightTheme,
|
72
75
|
registerColumnParallel: ()=>registerColumnParallel,
|
73
76
|
zDimension: ()=>zDimension,
|
77
|
+
funnelSpecPipeline: ()=>funnelSpecPipeline,
|
74
78
|
zPointStyle: ()=>zPointStyle,
|
79
|
+
zYBandAxis: ()=>zYBandAxis,
|
80
|
+
zYLinearAxis: ()=>zYLinearAxis,
|
75
81
|
isPivotChart: ()=>isPivotChart,
|
76
82
|
zCustomTheme: ()=>zCustomTheme,
|
77
83
|
roseParallelSpecPipeline: ()=>roseParallelSpecPipeline,
|
@@ -282,7 +288,7 @@ const NUMBER_FORMAT_RULES = {
|
|
282
288
|
};
|
283
289
|
const createFormatter = (format)=>createNumFormatter(format);
|
284
290
|
const autoFormatter = (value, locale)=>autoNumFormatter(value, locale);
|
285
|
-
|
291
|
+
const findMeasureById = (measures, id)=>{
|
286
292
|
if (!measures) return;
|
287
293
|
const stack = [
|
288
294
|
...measures
|
@@ -293,7 +299,22 @@ function findMeasureById(measures, id) {
|
|
293
299
|
if (current.id === id && !('children' in current)) return current;
|
294
300
|
if ('children' in current && current.children) stack.push(...current.children);
|
295
301
|
}
|
296
|
-
}
|
302
|
+
};
|
303
|
+
const findFirstMeasure = (measures)=>{
|
304
|
+
if (!measures) return;
|
305
|
+
const stack = [
|
306
|
+
...measures
|
307
|
+
].reverse();
|
308
|
+
while(stack.length > 0){
|
309
|
+
const current = stack.pop();
|
310
|
+
if (!current) continue;
|
311
|
+
if (!('children' in current)) return current;
|
312
|
+
if ('children' in current && current.children) {
|
313
|
+
const children = (current.children || []).reverse();
|
314
|
+
stack.push(...children);
|
315
|
+
}
|
316
|
+
}
|
317
|
+
};
|
297
318
|
const autoMeasures = (advancedVSeed, context)=>{
|
298
319
|
const result = {
|
299
320
|
...advancedVSeed
|
@@ -590,6 +611,60 @@ const dataReshapeFor1D1M = (dataset, dimensions, measures, options)=>{
|
|
590
611
|
};
|
591
612
|
}
|
592
613
|
};
|
614
|
+
const dataReshapeFor1D2M_emptyReshapeResult = {
|
615
|
+
dataset: [],
|
616
|
+
foldInfo: {
|
617
|
+
foldMap: {},
|
618
|
+
measureId: '',
|
619
|
+
measureName: '',
|
620
|
+
measureValue: ''
|
621
|
+
},
|
622
|
+
unfoldInfo: {
|
623
|
+
groupName: '',
|
624
|
+
groupId: '',
|
625
|
+
colorItems: [],
|
626
|
+
colorIdMap: {}
|
627
|
+
}
|
628
|
+
};
|
629
|
+
const dataReshapeFor1D2M = (dataset, dimensions, measures, options)=>{
|
630
|
+
const { foldMeasureId = FoldMeasureId, foldMeasureName = FoldMeasureName, foldMeasureValue = FoldMeasureValue, unfoldDimensionGroup = UnfoldDimensionGroup, unfoldDimensionGroupId = UnfoldDimensionGroupId } = options || {};
|
631
|
+
if (0 === dimensions.length && 0 === measures.length) return dataReshapeFor1D2M_emptyReshapeResult;
|
632
|
+
const { dataset: foldedDataset, foldInfo } = foldMeasures(dataset, measures.length > 1 ? measures.slice(1) : measures, foldMeasureId, foldMeasureName, foldMeasureValue);
|
633
|
+
if (0 === dimensions.length) {
|
634
|
+
const { dataset: finalDataset, unfoldInfo } = unfoldDimensions(foldedDataset, [
|
635
|
+
{
|
636
|
+
id: foldMeasureValue,
|
637
|
+
alias: i18n`指标值`,
|
638
|
+
location: 'dimension'
|
639
|
+
}
|
640
|
+
], [
|
641
|
+
{
|
642
|
+
id: foldMeasureValue,
|
643
|
+
alias: i18n`指标值`
|
644
|
+
}
|
645
|
+
], 0, unfoldDimensionGroup, unfoldDimensionGroupId, foldMeasureId);
|
646
|
+
return {
|
647
|
+
dataset: finalDataset,
|
648
|
+
foldInfo,
|
649
|
+
unfoldInfo
|
650
|
+
};
|
651
|
+
}
|
652
|
+
{
|
653
|
+
const { dataset: finalDataset, unfoldInfo } = unfoldDimensions(foldedDataset, [
|
654
|
+
...dimensions
|
655
|
+
], [
|
656
|
+
{
|
657
|
+
id: foldMeasureValue,
|
658
|
+
alias: i18n`指标值`
|
659
|
+
}
|
660
|
+
], 0, unfoldDimensionGroup, unfoldDimensionGroupId, foldMeasureId);
|
661
|
+
return {
|
662
|
+
dataset: finalDataset,
|
663
|
+
foldInfo,
|
664
|
+
unfoldInfo
|
665
|
+
};
|
666
|
+
}
|
667
|
+
};
|
593
668
|
const reshapeTo2D1M = (advancedVSeed, context)=>{
|
594
669
|
const result = {
|
595
670
|
...advancedVSeed
|
@@ -636,6 +711,28 @@ const reshapeTo1D1M = (advancedVSeed, context)=>{
|
|
636
711
|
]
|
637
712
|
};
|
638
713
|
};
|
714
|
+
const reshapeTo1D2M = (advancedVSeed, context)=>{
|
715
|
+
const result = {
|
716
|
+
...advancedVSeed
|
717
|
+
};
|
718
|
+
const { vseed } = context;
|
719
|
+
const { dataset } = vseed;
|
720
|
+
const { dimensions, measures } = advancedVSeed;
|
721
|
+
if (!measures || !dimensions || !dataset) return result;
|
722
|
+
if (0 === measures.length) throw new Error('measures can not be empty');
|
723
|
+
const { dataset: newDatasets, foldInfo, unfoldInfo } = dataReshapeFor1D2M(dataset, dimensions, measures);
|
724
|
+
return {
|
725
|
+
...result,
|
726
|
+
dataset: newDatasets,
|
727
|
+
datasetReshapeInfo: [
|
728
|
+
{
|
729
|
+
id: '1D2M',
|
730
|
+
foldInfo,
|
731
|
+
unfoldInfo
|
732
|
+
}
|
733
|
+
]
|
734
|
+
};
|
735
|
+
};
|
639
736
|
const pivotReshapeTo1D1M = (advancedVSeed, context)=>{
|
640
737
|
const result = {
|
641
738
|
...advancedVSeed
|
@@ -675,6 +772,45 @@ const pivotReshapeTo1D1M = (advancedVSeed, context)=>{
|
|
675
772
|
datasetReshapeInfo: datasetReshapeInfo
|
676
773
|
};
|
677
774
|
};
|
775
|
+
const pivotReshapeTo1D2M = (advancedVSeed, context)=>{
|
776
|
+
const result = {
|
777
|
+
...advancedVSeed
|
778
|
+
};
|
779
|
+
const { vseed } = context;
|
780
|
+
const { dataset } = vseed;
|
781
|
+
const { dimensions, measures } = advancedVSeed;
|
782
|
+
if (!measures || !dimensions) return result;
|
783
|
+
const measureGroups = [];
|
784
|
+
if (measures) measures.forEach((measure)=>{
|
785
|
+
if (measure.children && measure.children.length > 0) measureGroups.push(measure);
|
786
|
+
});
|
787
|
+
const newDatasets = [];
|
788
|
+
const datasetReshapeInfo = [];
|
789
|
+
measureGroups.forEach((measureGroup)=>{
|
790
|
+
const measures = measureGroup.children;
|
791
|
+
if (!measures) return;
|
792
|
+
const commonDimensions = dimensions.filter((dim)=>'dimension' === dim.location);
|
793
|
+
const groupId = measureGroup.id;
|
794
|
+
const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor1D2M(dataset, commonDimensions, measures, {
|
795
|
+
foldMeasureId: FoldMeasureId,
|
796
|
+
foldMeasureName: FoldMeasureName,
|
797
|
+
foldMeasureValue: FoldMeasureValue + groupId,
|
798
|
+
unfoldDimensionGroup: UnfoldDimensionGroup
|
799
|
+
});
|
800
|
+
const reshapeInfo = {
|
801
|
+
id: groupId,
|
802
|
+
foldInfo,
|
803
|
+
unfoldInfo
|
804
|
+
};
|
805
|
+
newDatasets.push(newSubDataset);
|
806
|
+
datasetReshapeInfo.push(reshapeInfo);
|
807
|
+
});
|
808
|
+
return {
|
809
|
+
...result,
|
810
|
+
dataset: newDatasets,
|
811
|
+
datasetReshapeInfo: datasetReshapeInfo
|
812
|
+
};
|
813
|
+
};
|
678
814
|
const pivotReshapeTo2D1M = (advancedVSeed, context)=>{
|
679
815
|
const result = {
|
680
816
|
...advancedVSeed
|
@@ -858,6 +994,37 @@ const encodingPie = (advancedVSeed)=>{
|
|
858
994
|
encoding
|
859
995
|
};
|
860
996
|
};
|
997
|
+
const encodingFunnel = (advancedVSeed)=>{
|
998
|
+
const result = {
|
999
|
+
...advancedVSeed
|
1000
|
+
};
|
1001
|
+
const { datasetReshapeInfo, dimensions } = advancedVSeed;
|
1002
|
+
if (!datasetReshapeInfo || !dimensions) return result;
|
1003
|
+
const encoding = datasetReshapeInfo.reduce((prev, cur)=>{
|
1004
|
+
const { foldInfo, unfoldInfo } = cur;
|
1005
|
+
const size = [
|
1006
|
+
foldInfo.measureValue
|
1007
|
+
];
|
1008
|
+
const group = [
|
1009
|
+
unfoldInfo.groupId
|
1010
|
+
];
|
1011
|
+
const color = [
|
1012
|
+
unfoldInfo.groupId
|
1013
|
+
];
|
1014
|
+
return [
|
1015
|
+
...prev,
|
1016
|
+
{
|
1017
|
+
size,
|
1018
|
+
group,
|
1019
|
+
color
|
1020
|
+
}
|
1021
|
+
];
|
1022
|
+
}, []);
|
1023
|
+
return {
|
1024
|
+
...result,
|
1025
|
+
encoding
|
1026
|
+
};
|
1027
|
+
};
|
861
1028
|
const vchartBaseConfig = (advancedVSeed, context)=>{
|
862
1029
|
const { vseed } = context;
|
863
1030
|
const result = {
|
@@ -933,6 +1100,7 @@ const pieConfig = (advancedVSeed, context)=>{
|
|
933
1100
|
};
|
934
1101
|
const areaConfig = lineConfig;
|
935
1102
|
const areaPercentConfig = lineConfig;
|
1103
|
+
const scatterConfig = lineConfig;
|
936
1104
|
const barConfig = columnConfig;
|
937
1105
|
const barParallelConfig = columnConfig;
|
938
1106
|
const barPercentConfig = columnConfig;
|
@@ -941,6 +1109,7 @@ const columnPercentConfig = columnConfig;
|
|
941
1109
|
const donutConfig = pieConfig;
|
942
1110
|
const roseConfig = pieConfig;
|
943
1111
|
const roseParallelConfig = pieConfig;
|
1112
|
+
const funnelConfig = pieConfig;
|
944
1113
|
const vchartTheme = (advancedVSeed, context)=>{
|
945
1114
|
const { customTheme, vseed } = context;
|
946
1115
|
const { theme = 'light', chartType } = vseed;
|
@@ -1225,12 +1394,96 @@ const roseParallelAdvancedPipeline = [
|
|
1225
1394
|
markStyle_markStyle,
|
1226
1395
|
annotation_annotation
|
1227
1396
|
];
|
1397
|
+
const funnelAdvancedPipeline = [
|
1398
|
+
initAdvancedVSeed,
|
1399
|
+
locale_locale,
|
1400
|
+
autoMeasures,
|
1401
|
+
autoDimensions,
|
1402
|
+
pivotAdapter([
|
1403
|
+
reshapeTo1D1M
|
1404
|
+
], [
|
1405
|
+
pivotReshapeTo1D1M
|
1406
|
+
]),
|
1407
|
+
encodingFunnel,
|
1408
|
+
funnelConfig,
|
1409
|
+
vchartBaseConfig,
|
1410
|
+
vchartTheme,
|
1411
|
+
annotation_annotation
|
1412
|
+
];
|
1413
|
+
const encodingYY = (advancedVSeed)=>{
|
1414
|
+
const result = {
|
1415
|
+
...advancedVSeed
|
1416
|
+
};
|
1417
|
+
const { datasetReshapeInfo, measures } = advancedVSeed;
|
1418
|
+
if (!datasetReshapeInfo || !measures) return result;
|
1419
|
+
const firstMeasure = findFirstMeasure(measures);
|
1420
|
+
const encoding = datasetReshapeInfo.reduce((prev, cur)=>{
|
1421
|
+
const { foldInfo, unfoldInfo } = cur;
|
1422
|
+
const x = [
|
1423
|
+
firstMeasure?.id
|
1424
|
+
];
|
1425
|
+
const y = [
|
1426
|
+
foldInfo.measureValue
|
1427
|
+
];
|
1428
|
+
const group = [
|
1429
|
+
unfoldInfo.groupId
|
1430
|
+
];
|
1431
|
+
const color = [
|
1432
|
+
unfoldInfo.groupId
|
1433
|
+
];
|
1434
|
+
return [
|
1435
|
+
...prev,
|
1436
|
+
{
|
1437
|
+
x,
|
1438
|
+
y,
|
1439
|
+
group,
|
1440
|
+
color
|
1441
|
+
}
|
1442
|
+
];
|
1443
|
+
}, []);
|
1444
|
+
return {
|
1445
|
+
...result,
|
1446
|
+
encoding
|
1447
|
+
};
|
1448
|
+
};
|
1449
|
+
const scatterAdvancedPipeline = [
|
1450
|
+
initAdvancedVSeed,
|
1451
|
+
locale_locale,
|
1452
|
+
autoMeasures,
|
1453
|
+
autoDimensions,
|
1454
|
+
pivotAdapter([
|
1455
|
+
reshapeTo1D2M
|
1456
|
+
], [
|
1457
|
+
pivotReshapeTo1D2M
|
1458
|
+
]),
|
1459
|
+
encodingYY,
|
1460
|
+
vchartBaseConfig,
|
1461
|
+
scatterConfig,
|
1462
|
+
vchartTheme,
|
1463
|
+
markStyle_markStyle,
|
1464
|
+
annotation_annotation
|
1465
|
+
];
|
1228
1466
|
const dataset_dataset = (spec, context)=>{
|
1229
1467
|
const { advancedVSeed } = context;
|
1468
|
+
const { encoding } = advancedVSeed;
|
1469
|
+
const angle = encoding[0]?.angle?.[0];
|
1470
|
+
const x = encoding[0]?.x?.[0];
|
1471
|
+
const group = encoding[0]?.group?.[0];
|
1472
|
+
const fields = {};
|
1473
|
+
if (angle) fields[angle] = {
|
1474
|
+
sortIndex: 0
|
1475
|
+
};
|
1476
|
+
if (x) fields[x] = {
|
1477
|
+
sortIndex: 0
|
1478
|
+
};
|
1479
|
+
if (group) fields[group] = {
|
1480
|
+
sortIndex: 1
|
1481
|
+
};
|
1230
1482
|
return {
|
1231
1483
|
...spec,
|
1232
1484
|
data: {
|
1233
|
-
values: advancedVSeed.dataset
|
1485
|
+
values: advancedVSeed.dataset,
|
1486
|
+
fields: fields
|
1234
1487
|
}
|
1235
1488
|
};
|
1236
1489
|
};
|
@@ -1482,7 +1735,7 @@ const initRose = (spec, context)=>{
|
|
1482
1735
|
state: {
|
1483
1736
|
hover: {
|
1484
1737
|
lineWidth: 1,
|
1485
|
-
fillOpacity: 0.
|
1738
|
+
fillOpacity: 0.6
|
1486
1739
|
}
|
1487
1740
|
}
|
1488
1741
|
};
|
@@ -1518,6 +1771,12 @@ const initRoseParallel = (spec, context)=>{
|
|
1518
1771
|
style: {
|
1519
1772
|
stroke: '#ffffff',
|
1520
1773
|
lineWidth: 1
|
1774
|
+
},
|
1775
|
+
state: {
|
1776
|
+
hover: {
|
1777
|
+
lineWidth: 1,
|
1778
|
+
fillOpacity: 0.6
|
1779
|
+
}
|
1521
1780
|
}
|
1522
1781
|
};
|
1523
1782
|
result.region = [
|
@@ -1544,6 +1803,42 @@ const initPivot = (spec)=>{
|
|
1544
1803
|
indicatorsAsCol: false
|
1545
1804
|
};
|
1546
1805
|
};
|
1806
|
+
const initFunnel = (spec, context)=>{
|
1807
|
+
const result = {
|
1808
|
+
...spec
|
1809
|
+
};
|
1810
|
+
const { advancedVSeed } = context;
|
1811
|
+
const { encoding } = advancedVSeed;
|
1812
|
+
if (!encoding[0].size || !encoding[0].group || !encoding[0].color) return result;
|
1813
|
+
result.type = 'funnel';
|
1814
|
+
result.valueField = encoding[0].size[0];
|
1815
|
+
result.categoryField = encoding[0].group[0];
|
1816
|
+
result.padding = 0;
|
1817
|
+
result.isTransform = true;
|
1818
|
+
result.shape = 'rect';
|
1819
|
+
result.maxSize = '75%';
|
1820
|
+
result.minSize = '10%';
|
1821
|
+
result.region = [
|
1822
|
+
{
|
1823
|
+
clip: true
|
1824
|
+
}
|
1825
|
+
];
|
1826
|
+
result.funnel = {
|
1827
|
+
style: {
|
1828
|
+
cornerRadius: 4
|
1829
|
+
},
|
1830
|
+
state: {
|
1831
|
+
hover: {
|
1832
|
+
fillOpacity: 0.6
|
1833
|
+
}
|
1834
|
+
}
|
1835
|
+
};
|
1836
|
+
result.transformLabel = {
|
1837
|
+
visible: true
|
1838
|
+
};
|
1839
|
+
result.animation = true;
|
1840
|
+
return result;
|
1841
|
+
};
|
1547
1842
|
const xBand = (spec, context)=>{
|
1548
1843
|
const result = {
|
1549
1844
|
...spec
|
@@ -1712,7 +2007,7 @@ const xLinear = (spec, context)=>{
|
|
1712
2007
|
}
|
1713
2008
|
},
|
1714
2009
|
innerOffset: {
|
1715
|
-
|
2010
|
+
right: LINEAR_AXIS_INNER_OFFSET_TOP
|
1716
2011
|
}
|
1717
2012
|
};
|
1718
2013
|
result.axes = [
|
@@ -2023,6 +2318,9 @@ const tooltip_tooltip = (spec, context)=>{
|
|
2023
2318
|
result.tooltip = {
|
2024
2319
|
visible: enable,
|
2025
2320
|
mark: {
|
2321
|
+
title: {
|
2322
|
+
value: (datum)=>datum && datum[groupName] || ''
|
2323
|
+
},
|
2026
2324
|
content: [
|
2027
2325
|
{
|
2028
2326
|
visible: true,
|
@@ -2266,11 +2564,11 @@ const pivotDiscreteLegend = (spec, context)=>{
|
|
2266
2564
|
label: d,
|
2267
2565
|
shape: {
|
2268
2566
|
outerBorder: border ? {
|
2269
|
-
stroke: colorScheme[index],
|
2567
|
+
stroke: colorScheme?.[index],
|
2270
2568
|
distance: 3,
|
2271
2569
|
lineWidth: 1
|
2272
2570
|
} : void 0,
|
2273
|
-
fill: colorScheme[index]
|
2571
|
+
fill: colorScheme?.[index]
|
2274
2572
|
}
|
2275
2573
|
})),
|
2276
2574
|
item: {
|
@@ -2322,8 +2620,8 @@ const color_color = (spec, context)=>{
|
|
2322
2620
|
const { color } = baseConfig;
|
2323
2621
|
const { colorScheme, colorMapping } = color;
|
2324
2622
|
const mappingList = [];
|
2325
|
-
if (colorMapping) Object.entries(colorMapping).forEach(([key, value])=>{
|
2326
|
-
const idMap = Object.entries(unfoldInfo.colorIdMap).filter(([_, v])=>key
|
2623
|
+
if (colorMapping) Object.entries(colorMapping).sort((a, b)=>a[0].split(Separator).length - b[0].split(Separator).length).forEach(([key, value])=>{
|
2624
|
+
const idMap = Object.entries(unfoldInfo.colorIdMap).filter(([_, v])=>v.includes(key));
|
2327
2625
|
for (const [colorId] of idMap)mappingList.push([
|
2328
2626
|
colorId,
|
2329
2627
|
value
|
@@ -2654,19 +2952,17 @@ const isDimensionSelector = (selector)=>'object' == typeof selector && null !==
|
|
2654
2952
|
].includes(selector.op));
|
2655
2953
|
const barStyle_barStyle = (spec, context)=>{
|
2656
2954
|
const { advancedVSeed } = context;
|
2657
|
-
const { markStyle
|
2955
|
+
const { markStyle } = advancedVSeed;
|
2658
2956
|
const { barStyle } = markStyle;
|
2659
2957
|
const result = {
|
2660
2958
|
...spec,
|
2661
2959
|
bar: {
|
2960
|
+
style: {
|
2961
|
+
stroke: '#fff',
|
2962
|
+
lineWidth: 1
|
2963
|
+
},
|
2662
2964
|
state: {
|
2663
2965
|
hover: {
|
2664
|
-
stroke: (datum, context)=>{
|
2665
|
-
const field = encoding[0]?.group?.[0];
|
2666
|
-
const color = context.seriesColor(datum[field]);
|
2667
|
-
return color;
|
2668
|
-
},
|
2669
|
-
lineWidth: 4,
|
2670
2966
|
fillOpacity: 0.6
|
2671
2967
|
}
|
2672
2968
|
}
|
@@ -2722,14 +3018,7 @@ const pointStyle_pointStyle = (spec, context)=>{
|
|
2722
3018
|
const { pointStyle } = markStyle;
|
2723
3019
|
const result = {
|
2724
3020
|
...spec,
|
2725
|
-
point: {
|
2726
|
-
state: {
|
2727
|
-
dimension_hover: {
|
2728
|
-
scaleX: 1.4,
|
2729
|
-
scaleY: 1.4
|
2730
|
-
}
|
2731
|
-
}
|
2732
|
-
}
|
3021
|
+
point: {}
|
2733
3022
|
};
|
2734
3023
|
if (!pointStyle) return result;
|
2735
3024
|
const pointStyles = Array.isArray(pointStyle) ? pointStyle : [
|
@@ -2775,6 +3064,47 @@ const pointStyle_pointStyle = (spec, context)=>{
|
|
2775
3064
|
}
|
2776
3065
|
};
|
2777
3066
|
};
|
3067
|
+
const pointStateDimensionHover = (spec)=>{
|
3068
|
+
const point = spec.point || {};
|
3069
|
+
const result = {
|
3070
|
+
...spec,
|
3071
|
+
point: {
|
3072
|
+
...point,
|
3073
|
+
state: {
|
3074
|
+
dimension_hover: {
|
3075
|
+
scaleX: 1.4,
|
3076
|
+
scaleY: 1.4
|
3077
|
+
}
|
3078
|
+
}
|
3079
|
+
}
|
3080
|
+
};
|
3081
|
+
return result;
|
3082
|
+
};
|
3083
|
+
const pointStateHover = (spec, context)=>{
|
3084
|
+
const point = spec.point || {};
|
3085
|
+
const { advancedVSeed } = context;
|
3086
|
+
const { encoding } = advancedVSeed;
|
3087
|
+
const result = {
|
3088
|
+
...spec,
|
3089
|
+
point: {
|
3090
|
+
...point,
|
3091
|
+
state: {
|
3092
|
+
hover: {
|
3093
|
+
scaleX: 1.4,
|
3094
|
+
scaleY: 1.4,
|
3095
|
+
stroke: (datum, context)=>{
|
3096
|
+
const field = encoding[0]?.group?.[0];
|
3097
|
+
const color = context.seriesColor(datum[field]);
|
3098
|
+
return color;
|
3099
|
+
},
|
3100
|
+
fillOpacity: 0.6,
|
3101
|
+
lineWidth: 1
|
3102
|
+
}
|
3103
|
+
}
|
3104
|
+
}
|
3105
|
+
};
|
3106
|
+
return result;
|
3107
|
+
};
|
2778
3108
|
const lineStyle_lineStyle = (spec, context)=>{
|
2779
3109
|
const { advancedVSeed } = context;
|
2780
3110
|
const { markStyle, encoding, dataset } = advancedVSeed;
|
@@ -3488,6 +3818,46 @@ const horizontalCrosshairRect = (spec, context)=>{
|
|
3488
3818
|
};
|
3489
3819
|
return result;
|
3490
3820
|
};
|
3821
|
+
const horizontalCrosshairLine = (spec, context)=>{
|
3822
|
+
const result = {
|
3823
|
+
...spec
|
3824
|
+
};
|
3825
|
+
const { advancedVSeed, vseed } = context;
|
3826
|
+
const { chartType } = vseed;
|
3827
|
+
const config = advancedVSeed.config?.[chartType]?.crosshairLine;
|
3828
|
+
if (!config) return result;
|
3829
|
+
if (!result.crosshair) result.crosshair = {};
|
3830
|
+
const { visible = true, lineColor, labelColor, labelVisible, labelBackgroundColor } = config;
|
3831
|
+
const crosshair = result.crosshair;
|
3832
|
+
crosshair.yField = {
|
3833
|
+
visible,
|
3834
|
+
line: {
|
3835
|
+
type: 'line',
|
3836
|
+
style: {
|
3837
|
+
lineWidth: 1,
|
3838
|
+
opacity: 1,
|
3839
|
+
stroke: lineColor,
|
3840
|
+
lineDash: [
|
3841
|
+
4,
|
3842
|
+
2
|
3843
|
+
]
|
3844
|
+
}
|
3845
|
+
},
|
3846
|
+
label: {
|
3847
|
+
visible: labelVisible,
|
3848
|
+
labelBackground: {
|
3849
|
+
visible: labelVisible,
|
3850
|
+
style: {
|
3851
|
+
fill: labelBackgroundColor
|
3852
|
+
}
|
3853
|
+
},
|
3854
|
+
style: {
|
3855
|
+
fill: labelColor
|
3856
|
+
}
|
3857
|
+
}
|
3858
|
+
};
|
3859
|
+
return result;
|
3860
|
+
};
|
3491
3861
|
const line_line = [
|
3492
3862
|
initLine,
|
3493
3863
|
color_color,
|
@@ -3500,6 +3870,7 @@ const line_line = [
|
|
3500
3870
|
verticalCrosshairLine,
|
3501
3871
|
discreteLegend,
|
3502
3872
|
pointStyle_pointStyle,
|
3873
|
+
pointStateDimensionHover,
|
3503
3874
|
lineStyle_lineStyle,
|
3504
3875
|
annotationPoint_annotationPoint,
|
3505
3876
|
annotationVerticalLine_annotationVerticalLine,
|
@@ -3522,6 +3893,7 @@ const pivotLine = [
|
|
3522
3893
|
tooltip_tooltip,
|
3523
3894
|
verticalCrosshairLine,
|
3524
3895
|
pointStyle_pointStyle,
|
3896
|
+
pointStateDimensionHover,
|
3525
3897
|
lineStyle_lineStyle,
|
3526
3898
|
annotationPoint_annotationPoint,
|
3527
3899
|
annotationVerticalLine_annotationVerticalLine,
|
@@ -3838,6 +4210,7 @@ const area_area = [
|
|
3838
4210
|
verticalCrosshairLine,
|
3839
4211
|
discreteLegend,
|
3840
4212
|
pointStyle_pointStyle,
|
4213
|
+
pointStateDimensionHover,
|
3841
4214
|
lineStyle_lineStyle,
|
3842
4215
|
areaStyle_areaStyle,
|
3843
4216
|
annotationPoint_annotationPoint,
|
@@ -3862,6 +4235,7 @@ const pivotArea = [
|
|
3862
4235
|
tooltip_tooltip,
|
3863
4236
|
verticalCrosshairLine,
|
3864
4237
|
pointStyle_pointStyle,
|
4238
|
+
pointStateDimensionHover,
|
3865
4239
|
lineStyle_lineStyle,
|
3866
4240
|
areaStyle_areaStyle,
|
3867
4241
|
annotationPoint_annotationPoint,
|
@@ -4054,7 +4428,6 @@ const roseParallel = [
|
|
4054
4428
|
tooltip_tooltip,
|
4055
4429
|
discreteLegend,
|
4056
4430
|
verticalCrosshairRect,
|
4057
|
-
barStyle_barStyle,
|
4058
4431
|
annotationPoint_annotationPoint,
|
4059
4432
|
annotationVerticalLine_annotationVerticalLine,
|
4060
4433
|
annotationHorizontalLine_annotationHorizontalLine,
|
@@ -4076,7 +4449,6 @@ const pivotRoseParallel = [
|
|
4076
4449
|
label_label,
|
4077
4450
|
tooltip_tooltip,
|
4078
4451
|
verticalCrosshairRect,
|
4079
|
-
barStyle_barStyle,
|
4080
4452
|
annotationPoint_annotationPoint,
|
4081
4453
|
annotationVerticalLine_annotationVerticalLine,
|
4082
4454
|
annotationHorizontalLine_annotationHorizontalLine,
|
@@ -4089,6 +4461,113 @@ const pivotRoseParallel = [
|
|
4089
4461
|
const roseParallelSpecPipeline = [
|
4090
4462
|
pivotAdapter_pivotAdapter(roseParallel, pivotRoseParallel)
|
4091
4463
|
];
|
4464
|
+
const funnel = [
|
4465
|
+
initFunnel,
|
4466
|
+
color_color,
|
4467
|
+
background_backgroundColor,
|
4468
|
+
dataset_dataset,
|
4469
|
+
label_label,
|
4470
|
+
tooltip_tooltip,
|
4471
|
+
discreteLegend,
|
4472
|
+
annotationPoint_annotationPoint,
|
4473
|
+
annotationVerticalLine_annotationVerticalLine,
|
4474
|
+
annotationHorizontalLine_annotationHorizontalLine,
|
4475
|
+
annotationArea_annotationArea
|
4476
|
+
];
|
4477
|
+
const pivotFunnel = [
|
4478
|
+
initPivot,
|
4479
|
+
pivotGridStyle,
|
4480
|
+
pivotIndicators_pivotIndicatorsAsRow,
|
4481
|
+
datasetPivot,
|
4482
|
+
pivotIndicators([
|
4483
|
+
initFunnel,
|
4484
|
+
color_color,
|
4485
|
+
background_backgroundColor,
|
4486
|
+
datasetPivotPlaceholder,
|
4487
|
+
label_label,
|
4488
|
+
tooltip_tooltip,
|
4489
|
+
annotationPoint_annotationPoint,
|
4490
|
+
annotationVerticalLine_annotationVerticalLine,
|
4491
|
+
annotationHorizontalLine_annotationHorizontalLine,
|
4492
|
+
annotationArea_annotationArea
|
4493
|
+
]),
|
4494
|
+
pivotRowDimensions,
|
4495
|
+
pivotColumnDimensions,
|
4496
|
+
pivotDiscreteLegend
|
4497
|
+
];
|
4498
|
+
const funnelSpecPipeline = [
|
4499
|
+
pivotAdapter_pivotAdapter(funnel, pivotFunnel)
|
4500
|
+
];
|
4501
|
+
const initScatter = (spec, context)=>{
|
4502
|
+
const result = {
|
4503
|
+
...spec
|
4504
|
+
};
|
4505
|
+
const { advancedVSeed } = context;
|
4506
|
+
const { encoding } = advancedVSeed;
|
4507
|
+
if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
|
4508
|
+
result.type = 'scatter';
|
4509
|
+
result.direction = 'vertical';
|
4510
|
+
result.xField = encoding[0].x[0];
|
4511
|
+
result.yField = encoding[0].y[0];
|
4512
|
+
result.seriesField = encoding[0].group[0];
|
4513
|
+
result.padding = 0;
|
4514
|
+
result.region = [
|
4515
|
+
{
|
4516
|
+
clip: true
|
4517
|
+
}
|
4518
|
+
];
|
4519
|
+
result.animation = true;
|
4520
|
+
return result;
|
4521
|
+
};
|
4522
|
+
const scatter = [
|
4523
|
+
initScatter,
|
4524
|
+
color_color,
|
4525
|
+
background_backgroundColor,
|
4526
|
+
dataset_dataset,
|
4527
|
+
xLinear,
|
4528
|
+
yLinear,
|
4529
|
+
label_label,
|
4530
|
+
tooltip_tooltip,
|
4531
|
+
verticalCrosshairLine,
|
4532
|
+
horizontalCrosshairLine,
|
4533
|
+
discreteLegend,
|
4534
|
+
pointStyle_pointStyle,
|
4535
|
+
pointStateHover,
|
4536
|
+
annotationPoint_annotationPoint,
|
4537
|
+
annotationVerticalLine_annotationVerticalLine,
|
4538
|
+
annotationHorizontalLine_annotationHorizontalLine,
|
4539
|
+
annotationArea_annotationArea
|
4540
|
+
];
|
4541
|
+
const pivotScatter = [
|
4542
|
+
initPivot,
|
4543
|
+
pivotGridStyle,
|
4544
|
+
pivotIndicators_pivotIndicatorsAsRow,
|
4545
|
+
datasetPivot,
|
4546
|
+
pivotIndicators([
|
4547
|
+
initScatter,
|
4548
|
+
color_color,
|
4549
|
+
background_backgroundColor,
|
4550
|
+
datasetPivotPlaceholder,
|
4551
|
+
xLinear,
|
4552
|
+
yLinear,
|
4553
|
+
label_label,
|
4554
|
+
tooltip_tooltip,
|
4555
|
+
verticalCrosshairLine,
|
4556
|
+
horizontalCrosshairLine,
|
4557
|
+
pointStyle_pointStyle,
|
4558
|
+
pointStateHover,
|
4559
|
+
annotationPoint_annotationPoint,
|
4560
|
+
annotationVerticalLine_annotationVerticalLine,
|
4561
|
+
annotationHorizontalLine_annotationHorizontalLine,
|
4562
|
+
annotationArea_annotationArea
|
4563
|
+
]),
|
4564
|
+
pivotRowDimensions,
|
4565
|
+
pivotColumnDimensions,
|
4566
|
+
pivotDiscreteLegend
|
4567
|
+
];
|
4568
|
+
const scatterSpecPipeline = [
|
4569
|
+
pivotAdapter_pivotAdapter(scatter, pivotScatter)
|
4570
|
+
];
|
4092
4571
|
const buildAdvanced = (builder)=>{
|
4093
4572
|
const { chartType } = builder.vseed;
|
4094
4573
|
if (!chartType) throw new Error('chartType is nil in buildAdvanced');
|
@@ -4219,6 +4698,14 @@ const registerRoseParallel = ()=>{
|
|
4219
4698
|
Builder._advancedPipelineMap.roseParallel = roseParallelAdvancedPipeline;
|
4220
4699
|
Builder._specPipelineMap.roseParallel = roseParallelSpecPipeline;
|
4221
4700
|
};
|
4701
|
+
const registerFunnel = ()=>{
|
4702
|
+
Builder._advancedPipelineMap.funnel = funnelAdvancedPipeline;
|
4703
|
+
Builder._specPipelineMap.funnel = funnelSpecPipeline;
|
4704
|
+
};
|
4705
|
+
const registerScatter = ()=>{
|
4706
|
+
Builder._advancedPipelineMap.scatter = scatterAdvancedPipeline;
|
4707
|
+
Builder._specPipelineMap.scatter = scatterSpecPipeline;
|
4708
|
+
};
|
4222
4709
|
const lightTheme = ()=>{
|
4223
4710
|
const linearAxis = {
|
4224
4711
|
nice: true,
|
@@ -4444,6 +4931,23 @@ const lightTheme = ()=>{
|
|
4444
4931
|
xAxis: bandAxis,
|
4445
4932
|
yAxis: linearAxis,
|
4446
4933
|
crosshairLine
|
4934
|
+
},
|
4935
|
+
scatter: {
|
4936
|
+
xAxis: {
|
4937
|
+
...linearAxis,
|
4938
|
+
line: {
|
4939
|
+
...linearAxis.line,
|
4940
|
+
visible: true
|
4941
|
+
}
|
4942
|
+
},
|
4943
|
+
yAxis: {
|
4944
|
+
...linearAxis,
|
4945
|
+
line: {
|
4946
|
+
...linearAxis.line,
|
4947
|
+
visible: true
|
4948
|
+
}
|
4949
|
+
},
|
4950
|
+
crosshairLine
|
4447
4951
|
}
|
4448
4952
|
}
|
4449
4953
|
};
|
@@ -4672,6 +5176,23 @@ const darkTheme = ()=>{
|
|
4672
5176
|
xAxis: bandAxis,
|
4673
5177
|
yAxis: linearAxis,
|
4674
5178
|
crosshairLine: crosshairLine
|
5179
|
+
},
|
5180
|
+
scatter: {
|
5181
|
+
xAxis: {
|
5182
|
+
...linearAxis,
|
5183
|
+
line: {
|
5184
|
+
...linearAxis.line,
|
5185
|
+
visible: true
|
5186
|
+
}
|
5187
|
+
},
|
5188
|
+
yAxis: {
|
5189
|
+
...linearAxis,
|
5190
|
+
line: {
|
5191
|
+
...linearAxis.line,
|
5192
|
+
visible: true
|
5193
|
+
}
|
5194
|
+
},
|
5195
|
+
crosshairLine
|
4675
5196
|
}
|
4676
5197
|
}
|
4677
5198
|
};
|
@@ -4703,6 +5224,8 @@ const registerAll = ()=>{
|
|
4703
5224
|
registerDonut();
|
4704
5225
|
registerRose();
|
4705
5226
|
registerRoseParallel();
|
5227
|
+
registerFunnel();
|
5228
|
+
registerScatter();
|
4706
5229
|
registerLightTheme();
|
4707
5230
|
registerDarkTheme();
|
4708
5231
|
};
|
@@ -4723,7 +5246,9 @@ const zChartType = external_zod_namespaceObject.z["enum"]([
|
|
4723
5246
|
'roseParallel',
|
4724
5247
|
'pie',
|
4725
5248
|
'donut',
|
4726
|
-
'dualAxis'
|
5249
|
+
'dualAxis',
|
5250
|
+
'scatter',
|
5251
|
+
'funnel'
|
4727
5252
|
]);
|
4728
5253
|
const zDatum = external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string().or(external_zod_namespaceObject.z.number()), external_zod_namespaceObject.z.any());
|
4729
5254
|
const zDataset = external_zod_namespaceObject.z.array(zDatum);
|
@@ -4796,7 +5321,8 @@ const zEncoding = external_zod_namespaceObject.z.array(external_zod_namespaceObj
|
|
4796
5321
|
group: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional(),
|
4797
5322
|
angle: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional(),
|
4798
5323
|
radius: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional(),
|
4799
|
-
tooltip: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional()
|
5324
|
+
tooltip: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional(),
|
5325
|
+
size: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.string()).optional()
|
4800
5326
|
}));
|
4801
5327
|
const zBackgroundColor = external_zod_namespaceObject.z.string().default('transparent').optional();
|
4802
5328
|
const zLabel = external_zod_namespaceObject.z.object({
|
@@ -5029,6 +5555,8 @@ const zStackCornerRadius = external_zod_namespaceObject.z.number().or(external_z
|
|
5029
5555
|
0
|
5030
5556
|
]);
|
5031
5557
|
const zConfig = external_zod_namespaceObject.z.object({
|
5558
|
+
table: external_zod_namespaceObject.z.object({}).optional(),
|
5559
|
+
pivotTable: external_zod_namespaceObject.z.object({}).optional(),
|
5032
5560
|
line: external_zod_namespaceObject.z.object({
|
5033
5561
|
xAxis: zXBandAxis.optional(),
|
5034
5562
|
yAxis: zYLinearAxis.optional(),
|
@@ -5085,8 +5613,12 @@ const zConfig = external_zod_namespaceObject.z.object({
|
|
5085
5613
|
pie: external_zod_namespaceObject.z.object({}).optional(),
|
5086
5614
|
donut: external_zod_namespaceObject.z.object({}).optional(),
|
5087
5615
|
dualAxis: external_zod_namespaceObject.z.object({}).optional(),
|
5088
|
-
|
5089
|
-
|
5616
|
+
scatter: external_zod_namespaceObject.z.object({
|
5617
|
+
xAxis: zXLinearAxis.optional(),
|
5618
|
+
yAxis: zYLinearAxis.optional(),
|
5619
|
+
crosshairLine: zCrosshairLine.optional()
|
5620
|
+
}).optional(),
|
5621
|
+
funnel: external_zod_namespaceObject.z.object({}).optional()
|
5090
5622
|
});
|
5091
5623
|
const zSelector = external_zod_namespaceObject.z.union([
|
5092
5624
|
external_zod_namespaceObject.z.string(),
|
@@ -5535,6 +6067,19 @@ const zLine = external_zod_namespaceObject.z.object({
|
|
5535
6067
|
annotationArea: zAnnotationArea.optional(),
|
5536
6068
|
locale: zLocale.optional()
|
5537
6069
|
});
|
6070
|
+
const zRose = external_zod_namespaceObject.z.object({
|
6071
|
+
chartType: external_zod_namespaceObject.z.literal('rose'),
|
6072
|
+
dataset: zDataset.optional(),
|
6073
|
+
dimensions: zDimensions.optional(),
|
6074
|
+
measures: zMeasures.optional(),
|
6075
|
+
backgroundColor: zBackgroundColor.optional(),
|
6076
|
+
color: zColor.optional(),
|
6077
|
+
label: zLabel.optional(),
|
6078
|
+
legend: zLegend.optional(),
|
6079
|
+
tooltip: zTooltip.optional(),
|
6080
|
+
theme: zTheme.optional(),
|
6081
|
+
locale: zLocale.optional()
|
6082
|
+
});
|
5538
6083
|
const zBarPercent = external_zod_namespaceObject.z.object({
|
5539
6084
|
chartType: external_zod_namespaceObject.z.literal('barPercent'),
|
5540
6085
|
dataset: zDataset.optional(),
|
@@ -5570,6 +6115,19 @@ const zPie = external_zod_namespaceObject.z.object({
|
|
5570
6115
|
theme: zTheme.optional(),
|
5571
6116
|
locale: zLocale.optional()
|
5572
6117
|
});
|
6118
|
+
const zDonut = external_zod_namespaceObject.z.object({
|
6119
|
+
chartType: external_zod_namespaceObject.z.literal('donut'),
|
6120
|
+
dataset: zDataset.optional(),
|
6121
|
+
dimensions: zDimensions.optional(),
|
6122
|
+
measures: zMeasures.optional(),
|
6123
|
+
backgroundColor: zBackgroundColor.optional(),
|
6124
|
+
color: zColor.optional(),
|
6125
|
+
label: zLabel.optional(),
|
6126
|
+
legend: zLegend.optional(),
|
6127
|
+
tooltip: zTooltip.optional(),
|
6128
|
+
theme: zTheme.optional(),
|
6129
|
+
locale: zLocale.optional()
|
6130
|
+
});
|
5573
6131
|
const zArea = external_zod_namespaceObject.z.object({
|
5574
6132
|
chartType: external_zod_namespaceObject.z.literal('area'),
|
5575
6133
|
dataset: zDataset.optional(),
|
@@ -5616,6 +6174,53 @@ const zAreaPercent = external_zod_namespaceObject.z.object({
|
|
5616
6174
|
annotationArea: zAnnotationArea.optional(),
|
5617
6175
|
locale: zLocale.optional()
|
5618
6176
|
});
|
6177
|
+
const zRoseParallel = external_zod_namespaceObject.z.object({
|
6178
|
+
chartType: external_zod_namespaceObject.z.literal('roseParallel'),
|
6179
|
+
dataset: zDataset.optional(),
|
6180
|
+
dimensions: zDimensions.optional(),
|
6181
|
+
measures: zMeasures.optional(),
|
6182
|
+
backgroundColor: zBackgroundColor.optional(),
|
6183
|
+
color: zColor.optional(),
|
6184
|
+
label: zLabel.optional(),
|
6185
|
+
legend: zLegend.optional(),
|
6186
|
+
tooltip: zTooltip.optional(),
|
6187
|
+
theme: zTheme.optional(),
|
6188
|
+
locale: zLocale.optional()
|
6189
|
+
});
|
6190
|
+
const zScatter = external_zod_namespaceObject.z.object({
|
6191
|
+
chartType: external_zod_namespaceObject.z.literal('scatter'),
|
6192
|
+
dataset: zDataset.optional(),
|
6193
|
+
dimensions: zDimensions.optional(),
|
6194
|
+
measures: zMeasures.optional(),
|
6195
|
+
backgroundColor: zBackgroundColor.optional(),
|
6196
|
+
color: zColor.optional(),
|
6197
|
+
label: zLabel.optional(),
|
6198
|
+
legend: zLegend.optional(),
|
6199
|
+
tooltip: zTooltip.optional(),
|
6200
|
+
xAxis: zXLinearAxis.optional(),
|
6201
|
+
yAxis: zYLinearAxis.optional(),
|
6202
|
+
crosshairLine: zCrosshairLine.optional(),
|
6203
|
+
theme: zTheme.optional(),
|
6204
|
+
pointStyle: zPointStyle.optional(),
|
6205
|
+
annotationPoint: zAnnotationPoint.optional(),
|
6206
|
+
annotationVerticalLine: zAnnotationVerticalLine.optional(),
|
6207
|
+
annotationHorizontalLine: zAnnotationHorizontalLine.optional(),
|
6208
|
+
annotationArea: zAnnotationArea.optional(),
|
6209
|
+
locale: zLocale.optional()
|
6210
|
+
});
|
6211
|
+
const zFunnel = external_zod_namespaceObject.z.object({
|
6212
|
+
chartType: external_zod_namespaceObject.z.literal('funnel'),
|
6213
|
+
dataset: zDataset.optional(),
|
6214
|
+
dimensions: zDimensions.optional(),
|
6215
|
+
measures: zMeasures.optional(),
|
6216
|
+
backgroundColor: zBackgroundColor.optional(),
|
6217
|
+
color: zColor.optional(),
|
6218
|
+
label: zLabel.optional(),
|
6219
|
+
legend: zLegend.optional(),
|
6220
|
+
tooltip: zTooltip.optional(),
|
6221
|
+
theme: zTheme.optional(),
|
6222
|
+
locale: zLocale.optional()
|
6223
|
+
});
|
5619
6224
|
const zVSeed = external_zod_namespaceObject.z.discriminatedUnion('chartType', [
|
5620
6225
|
zLine,
|
5621
6226
|
zColumn,
|
@@ -5626,7 +6231,12 @@ const zVSeed = external_zod_namespaceObject.z.discriminatedUnion('chartType', [
|
|
5626
6231
|
zBarPercent,
|
5627
6232
|
zArea,
|
5628
6233
|
zAreaPercent,
|
5629
|
-
zPie
|
6234
|
+
zPie,
|
6235
|
+
zRose,
|
6236
|
+
zRoseParallel,
|
6237
|
+
zScatter,
|
6238
|
+
zDonut,
|
6239
|
+
zFunnel
|
5630
6240
|
]);
|
5631
6241
|
exports.Builder = __webpack_exports__.Builder;
|
5632
6242
|
exports.FoldMeasureId = __webpack_exports__.FoldMeasureId;
|
@@ -5658,12 +6268,16 @@ exports.createFormatter = __webpack_exports__.createFormatter;
|
|
5658
6268
|
exports.createNumFormatter = __webpack_exports__.createNumFormatter;
|
5659
6269
|
exports.darkTheme = __webpack_exports__.darkTheme;
|
5660
6270
|
exports.dataReshapeFor1D1M = __webpack_exports__.dataReshapeFor1D1M;
|
6271
|
+
exports.dataReshapeFor1D2M = __webpack_exports__.dataReshapeFor1D2M;
|
5661
6272
|
exports.dataReshapeFor2D1M = __webpack_exports__.dataReshapeFor2D1M;
|
5662
6273
|
exports.donutAdvancedPipeline = __webpack_exports__.donutAdvancedPipeline;
|
5663
6274
|
exports.donutSpecPipeline = __webpack_exports__.donutSpecPipeline;
|
5664
6275
|
exports.execPipeline = __webpack_exports__.execPipeline;
|
6276
|
+
exports.findFirstMeasure = __webpack_exports__.findFirstMeasure;
|
5665
6277
|
exports.findMeasureById = __webpack_exports__.findMeasureById;
|
5666
6278
|
exports.foldMeasures = __webpack_exports__.foldMeasures;
|
6279
|
+
exports.funnelAdvancedPipeline = __webpack_exports__.funnelAdvancedPipeline;
|
6280
|
+
exports.funnelSpecPipeline = __webpack_exports__.funnelSpecPipeline;
|
5667
6281
|
exports.i18n = __webpack_exports__.i18n;
|
5668
6282
|
exports.intl = __webpack_exports__.intl;
|
5669
6283
|
exports.isPivotChart = __webpack_exports__.isPivotChart;
|
@@ -5691,6 +6305,8 @@ exports.roseAdvancedPipeline = __webpack_exports__.roseAdvancedPipeline;
|
|
5691
6305
|
exports.roseParallelAdvancedPipeline = __webpack_exports__.roseParallelAdvancedPipeline;
|
5692
6306
|
exports.roseParallelSpecPipeline = __webpack_exports__.roseParallelSpecPipeline;
|
5693
6307
|
exports.roseSpecPipeline = __webpack_exports__.roseSpecPipeline;
|
6308
|
+
exports.scatterAdvancedPipeline = __webpack_exports__.scatterAdvancedPipeline;
|
6309
|
+
exports.scatterSpecPipeline = __webpack_exports__.scatterSpecPipeline;
|
5694
6310
|
exports.unfoldDimensions = __webpack_exports__.unfoldDimensions;
|
5695
6311
|
exports.zAnnotation = __webpack_exports__.zAnnotation;
|
5696
6312
|
exports.zAnnotationArea = __webpack_exports__.zAnnotationArea;
|
@@ -5765,12 +6381,16 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
5765
6381
|
"createNumFormatter",
|
5766
6382
|
"darkTheme",
|
5767
6383
|
"dataReshapeFor1D1M",
|
6384
|
+
"dataReshapeFor1D2M",
|
5768
6385
|
"dataReshapeFor2D1M",
|
5769
6386
|
"donutAdvancedPipeline",
|
5770
6387
|
"donutSpecPipeline",
|
5771
6388
|
"execPipeline",
|
6389
|
+
"findFirstMeasure",
|
5772
6390
|
"findMeasureById",
|
5773
6391
|
"foldMeasures",
|
6392
|
+
"funnelAdvancedPipeline",
|
6393
|
+
"funnelSpecPipeline",
|
5774
6394
|
"i18n",
|
5775
6395
|
"intl",
|
5776
6396
|
"isPivotChart",
|
@@ -5798,6 +6418,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
5798
6418
|
"roseParallelAdvancedPipeline",
|
5799
6419
|
"roseParallelSpecPipeline",
|
5800
6420
|
"roseSpecPipeline",
|
6421
|
+
"scatterAdvancedPipeline",
|
6422
|
+
"scatterSpecPipeline",
|
5801
6423
|
"unfoldDimensions",
|
5802
6424
|
"zAnnotation",
|
5803
6425
|
"zAnnotationArea",
|