@visactor/vseed 0.0.22 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/builder/builder/builder.d.ts +2168 -926
  2. package/dist/builder/register/chartType.d.ts +3 -0
  3. package/dist/builder/register/custom.d.ts +3 -0
  4. package/dist/builder/register/index.d.ts +1 -0
  5. package/dist/dataReshape/dataReshapeFor1D.d.ts +19 -0
  6. package/dist/dataReshape/dataReshapeFor2D1M0Name.d.ts +19 -0
  7. package/dist/dataReshape/index.d.ts +2 -0
  8. package/dist/dataReshape/unfoldZeroDimensions.d.ts +10 -0
  9. package/dist/index.cjs +1104 -149
  10. package/dist/index.cjs.map +1 -1
  11. package/dist/index.js +1032 -134
  12. package/dist/index.js.map +1 -1
  13. package/dist/pipeline/advanced/chart/pipeline/areaRange.d.ts +2 -0
  14. package/dist/pipeline/advanced/chart/pipeline/heatmap.d.ts +2 -0
  15. package/dist/pipeline/advanced/chart/pipeline/index.d.ts +3 -0
  16. package/dist/pipeline/advanced/chart/pipeline/radar.d.ts +2 -0
  17. package/dist/pipeline/advanced/chart/pipes/config/config.d.ts +2 -0
  18. package/dist/pipeline/advanced/chart/pipes/encoding/encodingAR.d.ts +2 -0
  19. package/dist/pipeline/advanced/chart/pipes/encoding/encodingXYY.d.ts +2 -0
  20. package/dist/pipeline/advanced/chart/pipes/encoding/index.d.ts +2 -0
  21. package/dist/pipeline/advanced/chart/pipes/init/autoMeasuresBy2M1Group.d.ts +8 -0
  22. package/dist/pipeline/advanced/chart/pipes/init/index.d.ts +1 -0
  23. package/dist/pipeline/advanced/chart/pipes/reshape/index.d.ts +5 -1
  24. package/dist/pipeline/advanced/chart/pipes/reshape/pivotReshapeTo1D.d.ts +8 -0
  25. package/dist/pipeline/advanced/chart/pipes/reshape/pivotReshapeTo2D1M0Name.d.ts +8 -0
  26. package/dist/pipeline/advanced/chart/pipes/reshape/reshapeTo1D.d.ts +8 -0
  27. package/dist/pipeline/advanced/chart/pipes/reshape/reshapeTo2D1M0Name.d.ts +8 -0
  28. package/dist/pipeline/spec/chart/pipeline/areaRange.d.ts +1 -0
  29. package/dist/pipeline/spec/chart/pipeline/heatmap.d.ts +2 -0
  30. package/dist/pipeline/spec/chart/pipeline/index.d.ts +4 -1
  31. package/dist/pipeline/spec/chart/pipeline/radar.d.ts +2 -0
  32. package/dist/pipeline/spec/chart/pipes/axes/index.d.ts +2 -0
  33. package/dist/pipeline/spec/chart/pipes/axes/radarAngle.d.ts +2 -0
  34. package/dist/pipeline/spec/chart/pipes/axes/radarRadius.d.ts +2 -0
  35. package/dist/pipeline/spec/chart/pipes/index.d.ts +1 -0
  36. package/dist/pipeline/spec/chart/pipes/init/areaRange.d.ts +4 -0
  37. package/dist/pipeline/spec/chart/pipes/init/index.d.ts +4 -2
  38. package/dist/pipeline/spec/chart/pipes/{axes/a.d.ts → init/radar.d.ts} +1 -1
  39. package/dist/pipeline/spec/chart/pipes/series/index.d.ts +1 -0
  40. package/dist/pipeline/spec/chart/pipes/series/series.d.ts +2 -0
  41. package/dist/types/advancedVSeed.d.ts +763 -186
  42. package/dist/types/chartType/areaRange/areaRange.d.ts +1337 -0
  43. package/dist/types/chartType/areaRange/index.d.ts +1 -0
  44. package/dist/types/chartType/heatmap/heatmap.d.ts +207 -0
  45. package/dist/types/chartType/heatmap/index.d.ts +1 -0
  46. package/dist/types/chartType/index.d.ts +5 -2
  47. package/dist/types/chartType/radar/index.d.ts +1 -0
  48. package/dist/types/chartType/radar/radar.d.ts +207 -0
  49. package/dist/types/properties/chartType/chartType.d.ts +12 -6
  50. package/dist/types/properties/config/config.d.ts +843 -255
  51. package/dist/types/properties/theme/customTheme.d.ts +788 -214
  52. package/dist/types/vseed.d.ts +2051 -628
  53. package/dist/umd/index.js +1066 -149
  54. package/dist/umd/index.js.map +1 -1
  55. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -34,16 +34,18 @@ var __webpack_exports__ = {};
34
34
  __webpack_require__.r(__webpack_exports__);
35
35
  __webpack_require__.d(__webpack_exports__, {
36
36
  funnelAdvancedPipeline: ()=>funnelAdvancedPipeline,
37
- zPie: ()=>zPie,
37
+ zHeatmapConfig: ()=>zHeatmapConfig,
38
38
  zBar: ()=>zBar,
39
39
  pieAdvancedPipeline: ()=>pieAdvancedPipeline,
40
40
  execPipeline: ()=>execPipeline,
41
41
  areaSpecPipeline: ()=>areaSpecPipeline,
42
42
  isTable: ()=>isTable,
43
43
  zDonut: ()=>zDonut,
44
+ zPie: ()=>zPie,
44
45
  zRoseConfig: ()=>zRoseConfig,
45
46
  findFirstMeasure: ()=>findFirstMeasure,
46
47
  scatterAdvancedPipeline: ()=>scatterAdvancedPipeline,
48
+ updateSpec: ()=>updateSpec,
47
49
  zCrosshairRect: ()=>zCrosshairRect,
48
50
  scatterSpecPipeline: ()=>scatterSpecPipeline,
49
51
  intl: ()=>intl,
@@ -78,6 +80,7 @@ __webpack_require__.d(__webpack_exports__, {
78
80
  barPercentAdvancedPipeline: ()=>barPercentAdvancedPipeline,
79
81
  findAllDimensions: ()=>findAllDimensions,
80
82
  findDimensionById: ()=>findDimensionById,
83
+ zAreaRangeConfig: ()=>zAreaRangeConfig,
81
84
  zPivotTableConfig: ()=>zPivotTableConfig,
82
85
  zArea: ()=>zArea,
83
86
  zColumnParallel: ()=>zColumnParallel,
@@ -87,31 +90,32 @@ __webpack_require__.d(__webpack_exports__, {
87
90
  zColumnParallelConfig: ()=>zColumnParallelConfig,
88
91
  donutSpecPipeline: ()=>donutSpecPipeline,
89
92
  registerAreaPercent: ()=>registerAreaPercent,
90
- zTheme: ()=>zTheme,
93
+ zHeatmap: ()=>zHeatmap,
91
94
  zBarPercent: ()=>zBarPercent,
95
+ zTheme: ()=>zTheme,
92
96
  zDatum: ()=>zDatum,
93
97
  barAdvancedPipeline: ()=>barAdvancedPipeline,
94
98
  zCustomThemeConfig: ()=>zCustomThemeConfig,
95
99
  registerColumnPercent: ()=>registerColumnPercent,
96
- zCrosshairLine: ()=>zCrosshairLine,
97
- registerBarPercent: ()=>registerBarPercent,
100
+ registerHeatmap: ()=>registerHeatmap,
101
+ registerAreaRange: ()=>registerAreaRange,
98
102
  roseSpecPipeline: ()=>roseSpecPipeline,
99
- zPivotTable: ()=>zPivotTable,
100
- zSortAxis: ()=>zSortAxis,
103
+ dataReshapeFor2D1M0Name: ()=>dataReshapeFor2D1M0Name,
104
+ registerBarPercent: ()=>registerBarPercent,
101
105
  registerLightTheme: ()=>registerLightTheme,
102
106
  roseAdvancedPipeline: ()=>roseAdvancedPipeline,
103
107
  zBarParallel: ()=>zBarParallel,
104
108
  zAnnotationVerticalLine: ()=>zAnnotationVerticalLine,
105
- zChartType: ()=>zChartType,
109
+ registerPivotTable: ()=>registerPivotTable,
106
110
  tableAdvancedPipeline: ()=>tableAdvancedPipeline,
107
111
  registerDarkTheme: ()=>registerDarkTheme,
108
- registerPivotTable: ()=>registerPivotTable,
109
112
  pieSpecPipeline: ()=>pieSpecPipeline,
110
- zMeasureTree: ()=>zMeasureTree,
113
+ zChartType: ()=>zChartType,
114
+ zCrosshairLine: ()=>zCrosshairLine,
111
115
  barSpecPipeline: ()=>barSpecPipeline,
112
- zStackCornerRadius: ()=>zStackCornerRadius,
116
+ zMeasureTree: ()=>zMeasureTree,
113
117
  registerRose: ()=>registerRose,
114
- zRose: ()=>zRose,
118
+ zPivotTable: ()=>zPivotTable,
115
119
  unfoldDimensions: ()=>unfoldDimensions,
116
120
  roseParallelAdvancedPipeline: ()=>roseParallelAdvancedPipeline,
117
121
  registerTable: ()=>registerTable,
@@ -121,29 +125,37 @@ __webpack_require__.d(__webpack_exports__, {
121
125
  registerAll: ()=>registerAll,
122
126
  registerBar: ()=>registerBar,
123
127
  isVChart: ()=>isVChart,
128
+ radarSpecPipeline: ()=>radarSpecPipeline,
124
129
  zPieConfig: ()=>zPieConfig,
125
- zTable: ()=>zTable,
130
+ zRadar: ()=>zRadar,
131
+ zRose: ()=>zRose,
132
+ zStackCornerRadius: ()=>zStackCornerRadius,
126
133
  registerLine: ()=>registerLine,
127
134
  registerCustomTheme: ()=>registerCustomTheme,
128
135
  zColor: ()=>zColor,
129
136
  registerRoseParallel: ()=>registerRoseParallel,
130
137
  registerDonut: ()=>registerDonut,
138
+ heatmapSpecPipeline: ()=>heatmapSpecPipeline,
139
+ heatmapAdvancedPipeline: ()=>heatmapAdvancedPipeline,
131
140
  zDonutConfig: ()=>zDonutConfig,
132
- zMeasureGroup: ()=>zMeasureGroup,
133
- zUnfoldInfo: ()=>zUnfoldInfo,
134
141
  zFunnelConfig: ()=>zFunnelConfig,
142
+ zMeasureGroup: ()=>zMeasureGroup,
135
143
  zMeasures: ()=>zMeasures,
136
144
  FoldMeasureName: ()=>FoldMeasureName,
145
+ zRadarConfig: ()=>zRadarConfig,
137
146
  darkTheme: ()=>darkTheme,
138
147
  createNumFormatter: ()=>createNumFormatter,
139
148
  zAreaConfig: ()=>zAreaConfig,
140
149
  zAxis: ()=>zAxis,
141
150
  isVTable: ()=>isVTable,
151
+ zSortAxis: ()=>zSortAxis,
152
+ zTable: ()=>zTable,
142
153
  zLine: ()=>zLine,
143
154
  columnSpecPipeline: ()=>columnSpecPipeline,
144
155
  UnfoldDimensionGroup: ()=>UnfoldDimensionGroup,
145
156
  zDatasetReshapeInfo: ()=>zDatasetReshapeInfo,
146
157
  zFoldInfo: ()=>zFoldInfo,
158
+ zUnfoldInfo: ()=>zUnfoldInfo,
147
159
  zAreaStyle: ()=>zAreaStyle,
148
160
  ORIGINAL_DATA: ()=>ORIGINAL_DATA,
149
161
  zAnnotationArea: ()=>zAnnotationArea,
@@ -153,6 +165,7 @@ __webpack_require__.d(__webpack_exports__, {
153
165
  zAnnotationPoint: ()=>zAnnotationPoint,
154
166
  lightTheme: ()=>lightTheme,
155
167
  registerColumnParallel: ()=>registerColumnParallel,
168
+ updateAdvanced: ()=>updateAdvanced,
156
169
  zDimension: ()=>zDimension,
157
170
  isPivotChart: ()=>isPivotChart,
158
171
  zDualAxisConfig: ()=>zDualAxisConfig,
@@ -161,16 +174,22 @@ __webpack_require__.d(__webpack_exports__, {
161
174
  zLineConfig: ()=>zLineConfig,
162
175
  zTableConfig: ()=>zTableConfig,
163
176
  zXBandAxis: ()=>zXBandAxis,
177
+ dataReshapeFor1D: ()=>dataReshapeFor1D,
164
178
  zColumnPercentConfig: ()=>zColumnPercentConfig,
165
179
  findMeasureById: ()=>findMeasureById,
166
180
  zVSeed: ()=>zVSeed,
167
181
  areaPercentAdvancedPipeline: ()=>areaPercentAdvancedPipeline,
182
+ radarAdvancedPipeline: ()=>radarAdvancedPipeline,
168
183
  zBackgroundColor: ()=>zBackgroundColor,
169
184
  zAreaPercentConfig: ()=>zAreaPercentConfig,
170
185
  registerBarParallel: ()=>registerBarParallel,
171
- zMeasure: ()=>zMeasure,
186
+ registerRadar: ()=>registerRadar,
172
187
  zLocale: ()=>zLocale,
173
188
  pivotTableSpecPipeline: ()=>pivotTableSpecPipeline,
189
+ zMeasure: ()=>zMeasure,
190
+ areaRangeSpecPipeline: ()=>areaRangeSpecPipeline,
191
+ areaRangeAdvancedPipeline: ()=>areaRangeAdvancedPipeline,
192
+ zAreaRange: ()=>zAreaRange,
174
193
  registerScatter: ()=>registerScatter,
175
194
  zEncoding: ()=>zEncoding,
176
195
  autoNumFormatter: ()=>autoNumFormatter,
@@ -194,9 +213,9 @@ __webpack_require__.d(__webpack_exports__, {
194
213
  zBarParallelConfig: ()=>zBarParallelConfig,
195
214
  barParallelAdvancedPipeline: ()=>barParallelAdvancedPipeline,
196
215
  FoldMeasureValue: ()=>FoldMeasureValue,
197
- zBarPercentConfig: ()=>zBarPercentConfig,
198
216
  barPercentSpecPipeline: ()=>barPercentSpecPipeline,
199
217
  lineAdvancedPipeline: ()=>lineAdvancedPipeline,
218
+ zBarPercentConfig: ()=>zBarPercentConfig,
200
219
  lineSpecPipeline: ()=>lineSpecPipeline,
201
220
  zTooltip: ()=>zTooltip,
202
221
  createFormatter: ()=>createFormatter,
@@ -506,6 +525,51 @@ const autoDimensions = (advancedVSeed, context)=>{
506
525
  }));
507
526
  return result;
508
527
  };
528
+ const autoMeasuresBy2M1Group = (advancedVSeed, context)=>{
529
+ const result = {
530
+ ...advancedVSeed
531
+ };
532
+ const { vseed } = context;
533
+ const { measures, dataset } = vseed;
534
+ if (!dataset) throw new Error('dataset is required');
535
+ if (0 === dataset.length) return result;
536
+ if (measures) {
537
+ result.measures = auto2M1Group(measures);
538
+ return result;
539
+ }
540
+ const top100dataset = dataset.slice(0, 100);
541
+ const sample = top100dataset.reduce((prev, cur)=>({
542
+ ...prev,
543
+ ...cur
544
+ }), {});
545
+ const newMeasures = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'number' == typeof item[key]) && ![
546
+ '',
547
+ null,
548
+ void 0
549
+ ].includes(key)).map((measure)=>({
550
+ id: measure,
551
+ alias: measure
552
+ }));
553
+ result.measures = auto2M1Group(newMeasures);
554
+ return result;
555
+ };
556
+ const auto2M1Group = (measures)=>{
557
+ const allMeasures = findAllMeasures(measures);
558
+ if (allMeasures.length <= 2) return allMeasures;
559
+ const groups = measures.filter((measure)=>'children' in measure);
560
+ const singleMeasures = measures.filter((measure)=>!('children' in measure));
561
+ for(let i = 0; i < singleMeasures.length; i += 2){
562
+ const group = autoMeasuresBy2M1Group_createEmptyMeasureGroup();
563
+ group.children = allMeasures.slice(i, i + 2);
564
+ groups.push(group);
565
+ }
566
+ return groups;
567
+ };
568
+ const autoMeasuresBy2M1Group_createEmptyMeasureGroup = ()=>({
569
+ id: '',
570
+ alias: '',
571
+ children: []
572
+ });
509
573
  const FoldMeasureName = '__MeaName__';
510
574
  const FoldMeasureValue = '__MeaValue__';
511
575
  const FoldMeasureId = '__MeaId__';
@@ -536,10 +600,10 @@ const unfoldDimensions = (dataset, dimensions, measures, unfoldStartIndex = 0, u
536
600
  for(let i = 0; i < dataset.length; i++){
537
601
  const datum = dataset[i];
538
602
  const colorName = generateDimGroupName(dimensionsToBeUnfolded, datum, dimensionsSeparator);
539
- const colorId = [
603
+ const colorId = datum[foldMeasureId] ? [
540
604
  colorName,
541
- datum[foldMeasureId] || 'id'
542
- ].join(dimensionsSeparator);
605
+ datum[foldMeasureId]
606
+ ].join(dimensionsSeparator) : colorName;
543
607
  datum[unfoldGroupName] = colorName;
544
608
  datum[unfoldGroupId] = colorId;
545
609
  colorItems.push(colorId);
@@ -765,6 +829,148 @@ const dataReshapeFor1D2M = (dataset, dimensions, measures, options)=>{
765
829
  };
766
830
  }
767
831
  };
832
+ const dataReshapeFor1D_emptyReshapeResult = {
833
+ dataset: [],
834
+ foldInfo: {
835
+ foldMap: {},
836
+ measureId: '',
837
+ measureName: '',
838
+ measureValue: ''
839
+ },
840
+ unfoldInfo: {
841
+ groupName: '',
842
+ groupId: '',
843
+ colorItems: [],
844
+ colorIdMap: {}
845
+ }
846
+ };
847
+ const dataReshapeFor1D = (dataset, dimensions, measures, options)=>{
848
+ const { foldMeasureId = FoldMeasureId, foldMeasureName = FoldMeasureName, foldMeasureValue = FoldMeasureValue, unfoldDimensionGroup = UnfoldDimensionGroup, unfoldDimensionGroupId = UnfoldDimensionGroupId } = options || {};
849
+ if (0 === dimensions.length && 0 === measures.length) return dataReshapeFor1D_emptyReshapeResult;
850
+ if (0 === dimensions.length) {
851
+ const { dataset: finalDataset, unfoldInfo } = unfoldDimensions(dataset, [], [], 0, unfoldDimensionGroup, unfoldDimensionGroupId, foldMeasureId);
852
+ return {
853
+ dataset: finalDataset,
854
+ foldInfo: {
855
+ foldMap: {},
856
+ measureId: foldMeasureId,
857
+ measureName: foldMeasureName,
858
+ measureValue: foldMeasureValue
859
+ },
860
+ unfoldInfo
861
+ };
862
+ }
863
+ {
864
+ const { dataset: finalDataset, unfoldInfo } = unfoldDimensions(dataset, [
865
+ ...dimensions
866
+ ], [
867
+ {
868
+ id: foldMeasureValue,
869
+ alias: i18n`指标值`
870
+ }
871
+ ], 0, unfoldDimensionGroup, unfoldDimensionGroupId, foldMeasureId);
872
+ return {
873
+ dataset: finalDataset,
874
+ foldInfo: {
875
+ foldMap: {},
876
+ measureId: foldMeasureId,
877
+ measureName: foldMeasureName,
878
+ measureValue: foldMeasureValue
879
+ },
880
+ unfoldInfo
881
+ };
882
+ }
883
+ };
884
+ const unfoldZeroDimensions = (dataset, measures, measureName, unfoldGroupName = UnfoldDimensionGroup, unfoldGroupId = UnfoldDimensionGroupId)=>{
885
+ const unfoldInfo = {
886
+ groupName: unfoldGroupName,
887
+ groupId: unfoldGroupId,
888
+ colorItems: [],
889
+ colorIdMap: {}
890
+ };
891
+ if (0 === measures.length) return {
892
+ dataset,
893
+ unfoldInfo: {
894
+ groupName: unfoldGroupName,
895
+ groupId: unfoldGroupId,
896
+ colorItems: [],
897
+ colorIdMap: {}
898
+ }
899
+ };
900
+ const colorItems = [];
901
+ const colorMap = {};
902
+ for(let i = 0; i < dataset.length; i++){
903
+ const datum = dataset[i];
904
+ const colorName = measureName;
905
+ const colorId = measureName;
906
+ datum[unfoldGroupName] = colorName;
907
+ datum[unfoldGroupId] = colorId;
908
+ colorItems.push(colorId);
909
+ colorMap[colorId] = colorName;
910
+ }
911
+ unfoldInfo.colorItems = (0, external_remeda_namespaceObject.unique)(colorItems);
912
+ unfoldInfo.colorIdMap = colorMap;
913
+ return {
914
+ dataset,
915
+ unfoldInfo
916
+ };
917
+ };
918
+ const dataReshapeFor2D1M0Name_emptyReshapeResult = {
919
+ dataset: [],
920
+ foldInfo: {
921
+ foldMap: {},
922
+ measureId: '',
923
+ measureName: '',
924
+ measureValue: ''
925
+ },
926
+ unfoldInfo: {
927
+ groupName: '',
928
+ groupId: '',
929
+ colorItems: [],
930
+ colorIdMap: {}
931
+ }
932
+ };
933
+ const dataReshapeFor2D1M0Name = (dataset, dimensions, measures, options)=>{
934
+ const { foldMeasureId = FoldMeasureId, foldMeasureName = FoldMeasureName, foldMeasureValue = FoldMeasureValue, unfoldDimensionGroup = UnfoldDimensionGroup, unfoldDimensionGroupId = UnfoldDimensionGroupId } = options || {};
935
+ if (0 === dimensions.length && 0 === measures.length) return dataReshapeFor2D1M0Name_emptyReshapeResult;
936
+ const { dataset: foldedDataset, foldInfo } = foldMeasures(dataset, measures, foldMeasureId, foldMeasureName, foldMeasureValue);
937
+ if (0 === dimensions.length) {
938
+ const { dataset: finalDataset, unfoldInfo } = unfoldZeroDimensions(foldedDataset, [
939
+ {
940
+ id: foldMeasureValue,
941
+ alias: i18n`指标值`
942
+ }
943
+ ], i18n`指标名称`, unfoldDimensionGroup, unfoldDimensionGroupId);
944
+ return {
945
+ dataset: finalDataset,
946
+ foldInfo,
947
+ unfoldInfo
948
+ };
949
+ }
950
+ {
951
+ const onlyOneMeasure = 1 === measures.length;
952
+ const onlyOneDimension = 1 === dimensions.length;
953
+ const dims = [
954
+ ...dimensions
955
+ ];
956
+ if (!onlyOneMeasure || onlyOneDimension) dims.push({
957
+ id: foldMeasureName,
958
+ alias: i18n`指标名称`,
959
+ location: 'dimension'
960
+ });
961
+ const { dataset: finalDataset, unfoldInfo } = unfoldDimensions(foldedDataset, dims, [
962
+ {
963
+ id: foldMeasureValue,
964
+ alias: i18n`指标值`
965
+ }
966
+ ], 1, unfoldDimensionGroup, unfoldDimensionGroupId, foldMeasureId);
967
+ return {
968
+ dataset: finalDataset,
969
+ foldInfo,
970
+ unfoldInfo
971
+ };
972
+ }
973
+ };
768
974
  const reshapeTo2D1M = (advancedVSeed, context)=>{
769
975
  const result = {
770
976
  ...advancedVSeed
@@ -789,6 +995,30 @@ const reshapeTo2D1M = (advancedVSeed, context)=>{
789
995
  measures
790
996
  };
791
997
  };
998
+ const reshapeTo2D1M0Name = (advancedVSeed, context)=>{
999
+ const result = {
1000
+ ...advancedVSeed
1001
+ };
1002
+ const { vseed } = context;
1003
+ const { dataset } = vseed;
1004
+ const { dimensions, measures } = advancedVSeed;
1005
+ if (!measures || !dimensions || !dataset) return result;
1006
+ if (0 === measures.length) throw new Error('measures can not be empty');
1007
+ const { dataset: newDatasets, foldInfo, unfoldInfo } = dataReshapeFor2D1M0Name(dataset, dimensions, measures);
1008
+ return {
1009
+ ...result,
1010
+ dataset: newDatasets,
1011
+ datasetReshapeInfo: [
1012
+ {
1013
+ id: '2D1M',
1014
+ foldInfo,
1015
+ unfoldInfo
1016
+ }
1017
+ ],
1018
+ dimensions,
1019
+ measures
1020
+ };
1021
+ };
792
1022
  const reshapeTo1D1M = (advancedVSeed, context)=>{
793
1023
  const result = {
794
1024
  ...advancedVSeed
@@ -833,6 +1063,108 @@ const reshapeTo1D2M = (advancedVSeed, context)=>{
833
1063
  ]
834
1064
  };
835
1065
  };
1066
+ const reshapeTo1D = (advancedVSeed, context)=>{
1067
+ const result = {
1068
+ ...advancedVSeed
1069
+ };
1070
+ const { vseed } = context;
1071
+ const { dataset } = vseed;
1072
+ const { dimensions, measures } = advancedVSeed;
1073
+ if (!measures || !dimensions || !dataset) return result;
1074
+ if (0 === measures.length) throw new Error('measures can not be empty');
1075
+ const { dataset: newDatasets, foldInfo, unfoldInfo } = dataReshapeFor1D(dataset, dimensions, measures);
1076
+ return {
1077
+ ...result,
1078
+ dataset: newDatasets,
1079
+ datasetReshapeInfo: [
1080
+ {
1081
+ id: '1D2M',
1082
+ foldInfo,
1083
+ unfoldInfo
1084
+ }
1085
+ ]
1086
+ };
1087
+ };
1088
+ const pivotReshapeTo2D1M = (advancedVSeed, context)=>{
1089
+ const result = {
1090
+ ...advancedVSeed
1091
+ };
1092
+ const { vseed } = context;
1093
+ const { dataset } = vseed;
1094
+ const { measures } = advancedVSeed;
1095
+ const dimensions = advancedVSeed.dimensions;
1096
+ if (!measures || !dimensions) return result;
1097
+ const measureGroups = [];
1098
+ if (measures) measures.forEach((measure)=>{
1099
+ if (measure.children && measure.children.length > 0) measureGroups.push(measure);
1100
+ });
1101
+ const commonDimensions = dimensions.filter((dim)=>'dimension' === dim.location);
1102
+ const newDatasets = [];
1103
+ const datasetReshapeInfo = [];
1104
+ measureGroups.forEach((measureGroup)=>{
1105
+ const measures = measureGroup.children;
1106
+ if (!measures) return;
1107
+ const groupId = measureGroup.id;
1108
+ const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor2D1M(dataset, commonDimensions, measures, {
1109
+ foldMeasureId: FoldMeasureId,
1110
+ foldMeasureName: FoldMeasureName,
1111
+ foldMeasureValue: FoldMeasureValue + groupId,
1112
+ unfoldDimensionGroup: UnfoldDimensionGroup
1113
+ });
1114
+ const reshapeInfo = {
1115
+ id: groupId,
1116
+ foldInfo,
1117
+ unfoldInfo
1118
+ };
1119
+ newDatasets.push(newSubDataset);
1120
+ datasetReshapeInfo.push(reshapeInfo);
1121
+ });
1122
+ return {
1123
+ ...result,
1124
+ dataset: newDatasets,
1125
+ datasetReshapeInfo: datasetReshapeInfo
1126
+ };
1127
+ };
1128
+ const pivotReshapeTo2D1M0Name = (advancedVSeed, context)=>{
1129
+ const result = {
1130
+ ...advancedVSeed
1131
+ };
1132
+ const { vseed } = context;
1133
+ const { dataset } = vseed;
1134
+ const { measures } = advancedVSeed;
1135
+ const dimensions = advancedVSeed.dimensions;
1136
+ if (!measures || !dimensions) return result;
1137
+ const measureGroups = [];
1138
+ if (measures) measures.forEach((measure)=>{
1139
+ if (measure.children && measure.children.length > 0) measureGroups.push(measure);
1140
+ });
1141
+ const commonDimensions = dimensions.filter((dim)=>'dimension' === dim.location);
1142
+ const newDatasets = [];
1143
+ const datasetReshapeInfo = [];
1144
+ measureGroups.forEach((measureGroup)=>{
1145
+ const measures = measureGroup.children;
1146
+ if (!measures) return;
1147
+ const groupId = measureGroup.id;
1148
+ const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor2D1M0Name(dataset, commonDimensions, measures, {
1149
+ foldMeasureId: FoldMeasureId,
1150
+ foldMeasureName: FoldMeasureName,
1151
+ foldMeasureValue: FoldMeasureValue + groupId,
1152
+ unfoldDimensionGroup: UnfoldDimensionGroup
1153
+ });
1154
+ const reshapeInfo = {
1155
+ id: groupId,
1156
+ foldInfo,
1157
+ unfoldInfo
1158
+ };
1159
+ newDatasets.push(newSubDataset);
1160
+ datasetReshapeInfo.push(reshapeInfo);
1161
+ });
1162
+ return {
1163
+ ...result,
1164
+ dataset: newDatasets,
1165
+ datasetReshapeInfo: datasetReshapeInfo
1166
+ };
1167
+ };
836
1168
  const pivotReshapeTo1D1M = (advancedVSeed, context)=>{
837
1169
  const result = {
838
1170
  ...advancedVSeed
@@ -913,7 +1245,7 @@ const pivotReshapeTo1D2M = (advancedVSeed, context)=>{
913
1245
  datasetReshapeInfo: datasetReshapeInfo
914
1246
  };
915
1247
  };
916
- const pivotReshapeTo2D1M = (advancedVSeed, context)=>{
1248
+ const pivotReshapeTo1D = (advancedVSeed, context)=>{
917
1249
  const result = {
918
1250
  ...advancedVSeed
919
1251
  };
@@ -926,14 +1258,14 @@ const pivotReshapeTo2D1M = (advancedVSeed, context)=>{
926
1258
  if (measures) measures.forEach((measure)=>{
927
1259
  if (measure.children && measure.children.length > 0) measureGroups.push(measure);
928
1260
  });
929
- const commonDimensions = dimensions.filter((dim)=>'dimension' === dim.location);
930
1261
  const newDatasets = [];
931
1262
  const datasetReshapeInfo = [];
932
1263
  measureGroups.forEach((measureGroup)=>{
933
1264
  const measures = measureGroup.children;
934
1265
  if (!measures) return;
1266
+ const commonDimensions = dimensions.filter((dim)=>'dimension' === dim.location);
935
1267
  const groupId = measureGroup.id;
936
- const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor2D1M(dataset, commonDimensions, measures, {
1268
+ const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor1D(dataset, commonDimensions, measures, {
937
1269
  foldMeasureId: FoldMeasureId,
938
1270
  foldMeasureName: FoldMeasureName,
939
1271
  foldMeasureValue: FoldMeasureValue + groupId,
@@ -1063,6 +1395,74 @@ const encodingYY = (advancedVSeed)=>{
1063
1395
  encoding
1064
1396
  };
1065
1397
  };
1398
+ const encodingXYY = (advancedVSeed)=>{
1399
+ const result = {
1400
+ ...advancedVSeed
1401
+ };
1402
+ const { datasetReshapeInfo, dimensions, measures } = advancedVSeed;
1403
+ if (!datasetReshapeInfo || !dimensions || !measures) return result;
1404
+ const encoding = datasetReshapeInfo.reduce((prev, cur, index)=>{
1405
+ const measure = measures[index];
1406
+ if ('children' in measure) {
1407
+ const m1 = measure.children?.[0];
1408
+ const m2 = measure.children?.[1] || m1;
1409
+ const { foldInfo, unfoldInfo } = cur;
1410
+ const x = [
1411
+ unfoldInfo.groupId
1412
+ ];
1413
+ const y = [
1414
+ m1?.id,
1415
+ m2?.id
1416
+ ];
1417
+ const group = [
1418
+ unfoldInfo.groupId
1419
+ ];
1420
+ const color = [
1421
+ foldInfo.measureName
1422
+ ];
1423
+ return [
1424
+ ...prev,
1425
+ {
1426
+ x,
1427
+ y,
1428
+ group,
1429
+ color
1430
+ }
1431
+ ];
1432
+ }
1433
+ {
1434
+ const m1 = measures[index];
1435
+ const m2 = measures[index + 1] || m1;
1436
+ const { foldInfo, unfoldInfo } = cur;
1437
+ const x = [
1438
+ unfoldInfo.groupId
1439
+ ];
1440
+ const y = [
1441
+ m1.id,
1442
+ m2.id
1443
+ ];
1444
+ const group = [
1445
+ unfoldInfo.groupId
1446
+ ];
1447
+ const color = [
1448
+ foldInfo.measureName
1449
+ ];
1450
+ return [
1451
+ ...prev,
1452
+ {
1453
+ x,
1454
+ y,
1455
+ group,
1456
+ color
1457
+ }
1458
+ ];
1459
+ }
1460
+ }, []);
1461
+ return {
1462
+ ...result,
1463
+ encoding
1464
+ };
1465
+ };
1066
1466
  const encodingRose = (advancedVSeed)=>{
1067
1467
  const result = {
1068
1468
  ...advancedVSeed
@@ -1136,6 +1536,43 @@ const encodingPie = (advancedVSeed)=>{
1136
1536
  encoding
1137
1537
  };
1138
1538
  };
1539
+ const encodingAR = (advancedVSeed)=>{
1540
+ const result = {
1541
+ ...advancedVSeed
1542
+ };
1543
+ const { datasetReshapeInfo, dimensions, measures } = advancedVSeed;
1544
+ if (!datasetReshapeInfo || !dimensions || !measures) return result;
1545
+ const angleDimension = dimensions.find((item)=>'rowDimension' !== item.location && 'columnDimension' !== item.location);
1546
+ const isZeroDimension = 0 === dimensions.length;
1547
+ const encoding = datasetReshapeInfo.reduce((prev, cur)=>{
1548
+ const { foldInfo, unfoldInfo } = cur;
1549
+ const angle = [
1550
+ isZeroDimension ? foldInfo.measureName : angleDimension?.id
1551
+ ];
1552
+ const radius = [
1553
+ foldInfo.measureValue
1554
+ ];
1555
+ const group = [
1556
+ unfoldInfo.groupId
1557
+ ];
1558
+ const color = [
1559
+ unfoldInfo.groupId
1560
+ ];
1561
+ return [
1562
+ ...prev,
1563
+ {
1564
+ angle,
1565
+ radius,
1566
+ group,
1567
+ color
1568
+ }
1569
+ ];
1570
+ }, []);
1571
+ return {
1572
+ ...result,
1573
+ encoding
1574
+ };
1575
+ };
1139
1576
  const encodingFunnel = (advancedVSeed)=>{
1140
1577
  const result = {
1141
1578
  ...advancedVSeed
@@ -1249,6 +1686,8 @@ const donutConfig = pieConfig;
1249
1686
  const roseConfig = pieConfig;
1250
1687
  const roseParallelConfig = pieConfig;
1251
1688
  const funnelConfig = pieConfig;
1689
+ const heatmapConfig = pieConfig;
1690
+ const radarConfig = pieConfig;
1252
1691
  const theme_theme = (advancedVSeed, context)=>{
1253
1692
  const { customTheme, vseed } = context;
1254
1693
  const { theme = 'light', chartType } = vseed;
@@ -1384,9 +1823,9 @@ const lineAdvancedPipeline = [
1384
1823
  autoMeasures,
1385
1824
  autoDimensions,
1386
1825
  pivotAdapter([
1387
- reshapeTo2D1M
1826
+ reshapeTo2D1M0Name
1388
1827
  ], [
1389
- pivotReshapeTo2D1M
1828
+ pivotReshapeTo2D1M0Name
1390
1829
  ]),
1391
1830
  encodingXY,
1392
1831
  sortXBandAxis,
@@ -1503,9 +1942,9 @@ const areaAdvancedPipeline = [
1503
1942
  autoMeasures,
1504
1943
  autoDimensions,
1505
1944
  pivotAdapter([
1506
- reshapeTo2D1M
1945
+ reshapeTo2D1M0Name
1507
1946
  ], [
1508
- pivotReshapeTo2D1M
1947
+ pivotReshapeTo2D1M0Name
1509
1948
  ]),
1510
1949
  encodingXY,
1511
1950
  sortXBandAxis,
@@ -1520,9 +1959,9 @@ const areaPercentAdvancedPipeline = [
1520
1959
  autoMeasures,
1521
1960
  autoDimensions,
1522
1961
  pivotAdapter([
1523
- reshapeTo2D1M
1962
+ reshapeTo2D1M0Name
1524
1963
  ], [
1525
- pivotReshapeTo2D1M
1964
+ pivotReshapeTo2D1M0Name
1526
1965
  ]),
1527
1966
  encodingXY,
1528
1967
  sortXBandAxis,
@@ -1532,6 +1971,22 @@ const areaPercentAdvancedPipeline = [
1532
1971
  markStyle_markStyle,
1533
1972
  annotation_annotation
1534
1973
  ];
1974
+ const areaRangeAdvancedPipeline = [
1975
+ initAdvancedVSeed,
1976
+ autoMeasuresBy2M1Group,
1977
+ autoDimensions,
1978
+ pivotAdapter([
1979
+ reshapeTo1D
1980
+ ], [
1981
+ pivotReshapeTo1D
1982
+ ]),
1983
+ encodingXYY,
1984
+ sortXBandAxis,
1985
+ areaConfig,
1986
+ theme_theme,
1987
+ markStyle_markStyle,
1988
+ annotation_annotation
1989
+ ];
1535
1990
  const pieAdvancedPipeline = [
1536
1991
  initAdvancedVSeed,
1537
1992
  autoMeasures,
@@ -1584,37 +2039,69 @@ const roseParallelAdvancedPipeline = [
1584
2039
  ], [
1585
2040
  pivotReshapeTo2D1M
1586
2041
  ]),
1587
- encodingRose,
1588
- roseParallelConfig,
2042
+ encodingRose,
2043
+ roseParallelConfig,
2044
+ theme_theme,
2045
+ markStyle_markStyle,
2046
+ annotation_annotation
2047
+ ];
2048
+ const funnelAdvancedPipeline = [
2049
+ initAdvancedVSeed,
2050
+ autoMeasures,
2051
+ autoDimensions,
2052
+ pivotAdapter([
2053
+ reshapeTo1D1M
2054
+ ], [
2055
+ pivotReshapeTo1D1M
2056
+ ]),
2057
+ encodingFunnel,
2058
+ funnelConfig,
2059
+ theme_theme,
2060
+ annotation_annotation
2061
+ ];
2062
+ const scatterAdvancedPipeline = [
2063
+ initAdvancedVSeed,
2064
+ autoMeasures,
2065
+ autoDimensions,
2066
+ pivotAdapter([
2067
+ reshapeTo1D2M
2068
+ ], [
2069
+ pivotReshapeTo1D2M
2070
+ ]),
2071
+ encodingYY,
2072
+ scatterConfig,
1589
2073
  theme_theme,
1590
2074
  markStyle_markStyle,
1591
2075
  annotation_annotation
1592
2076
  ];
1593
- const funnelAdvancedPipeline = [
2077
+ const heatmapAdvancedPipeline = [
1594
2078
  initAdvancedVSeed,
1595
2079
  autoMeasures,
1596
2080
  autoDimensions,
1597
2081
  pivotAdapter([
1598
- reshapeTo1D1M
2082
+ reshapeTo2D1M
1599
2083
  ], [
1600
- pivotReshapeTo1D1M
2084
+ pivotReshapeTo2D1M
1601
2085
  ]),
1602
- encodingFunnel,
1603
- funnelConfig,
2086
+ encodingXY,
2087
+ sortXBandAxis,
2088
+ heatmapConfig,
1604
2089
  theme_theme,
2090
+ markStyle_markStyle,
1605
2091
  annotation_annotation
1606
2092
  ];
1607
- const scatterAdvancedPipeline = [
2093
+ const radarAdvancedPipeline = [
1608
2094
  initAdvancedVSeed,
1609
2095
  autoMeasures,
1610
2096
  autoDimensions,
1611
2097
  pivotAdapter([
1612
- reshapeTo1D2M
2098
+ reshapeTo2D1M0Name
1613
2099
  ], [
1614
- pivotReshapeTo1D2M
2100
+ pivotReshapeTo2D1M0Name
1615
2101
  ]),
1616
- encodingYY,
1617
- scatterConfig,
2102
+ encodingAR,
2103
+ sort_sortLegend,
2104
+ radarConfig,
1618
2105
  theme_theme,
1619
2106
  markStyle_markStyle,
1620
2107
  annotation_annotation
@@ -1772,7 +2259,7 @@ const tableAdvancedPipeline = [
1772
2259
  theme_theme
1773
2260
  ];
1774
2261
  const dataset_dataset = (spec, context)=>{
1775
- const { advancedVSeed } = context;
2262
+ const { advancedVSeed, vseed } = context;
1776
2263
  const { encoding, analysis, datasetReshapeInfo } = advancedVSeed;
1777
2264
  const { orderMapping = {} } = analysis ?? {};
1778
2265
  const angle = encoding[0]?.angle?.[0];
@@ -1821,7 +2308,7 @@ const dataset_dataset = (spec, context)=>{
1821
2308
  ...spec,
1822
2309
  data: {
1823
2310
  id,
1824
- values: advancedVSeed.dataset,
2311
+ values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
1825
2312
  fields: fields
1826
2313
  }
1827
2314
  };
@@ -1930,6 +2417,88 @@ const initArea = (spec, context)=>{
1930
2417
  result.animation = true;
1931
2418
  return result;
1932
2419
  };
2420
+ const initAreaRange = (spec, context)=>{
2421
+ const result = {
2422
+ ...spec
2423
+ };
2424
+ const { advancedVSeed } = context;
2425
+ const { encoding } = advancedVSeed;
2426
+ if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
2427
+ const { color } = advancedVSeed.config.areaRange;
2428
+ result.type = 'rangeArea';
2429
+ result.direction = 'vertical';
2430
+ result.stack = false;
2431
+ result.xField = encoding[0].x[0];
2432
+ result.yField = [
2433
+ encoding[0].y[0],
2434
+ encoding[0].y[1]
2435
+ ];
2436
+ result.animation = true;
2437
+ result.area = {
2438
+ style: {
2439
+ fill: color.colorScheme?.[0]
2440
+ }
2441
+ };
2442
+ return result;
2443
+ };
2444
+ const initAreaRangeLine1 = (spec, context)=>{
2445
+ const result = {
2446
+ ...spec
2447
+ };
2448
+ const { advancedVSeed } = context;
2449
+ const { encoding } = advancedVSeed;
2450
+ if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
2451
+ const { color } = advancedVSeed.config.areaRange;
2452
+ result.type = 'line';
2453
+ result.direction = 'vertical';
2454
+ result.stack = false;
2455
+ result.xField = encoding[0].x[0];
2456
+ result.yField = [
2457
+ encoding[0].y[0]
2458
+ ];
2459
+ result.animation = true;
2460
+ result.line = {
2461
+ style: {
2462
+ stroke: color.colorScheme?.[0]
2463
+ }
2464
+ };
2465
+ result.point = {
2466
+ style: {
2467
+ visible: false,
2468
+ fill: color.colorScheme?.[0]
2469
+ }
2470
+ };
2471
+ return result;
2472
+ };
2473
+ const initAreaRangeLine2 = (spec, context)=>{
2474
+ const result = {
2475
+ ...spec
2476
+ };
2477
+ const { advancedVSeed } = context;
2478
+ const { encoding } = advancedVSeed;
2479
+ if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
2480
+ const { color } = advancedVSeed.config.areaRange;
2481
+ result.type = 'line';
2482
+ result.direction = 'vertical';
2483
+ result.stack = false;
2484
+ result.xField = encoding[0].x[0];
2485
+ result.yField = [
2486
+ encoding[0].y[1]
2487
+ ];
2488
+ result.animation = true;
2489
+ result.line = {
2490
+ style: {
2491
+ stroke: color.colorScheme?.[0]
2492
+ }
2493
+ };
2494
+ result.point = {
2495
+ style: {
2496
+ visible: false,
2497
+ fill: color.colorScheme?.[0]
2498
+ }
2499
+ };
2500
+ return result;
2501
+ };
1933
2502
  const initLine = (spec, context)=>{
1934
2503
  const result = {
1935
2504
  ...spec
@@ -2121,21 +2690,46 @@ const initRoseParallel = (spec, context)=>{
2121
2690
  result.animation = true;
2122
2691
  return result;
2123
2692
  };
2124
- const initPivot = (spec)=>{
2693
+ const initScatter = (spec, context)=>{
2125
2694
  const result = {
2126
2695
  ...spec
2127
2696
  };
2128
- return {
2129
- ...result,
2130
- animation: true,
2131
- rows: [],
2132
- columns: [],
2133
- indicators: [],
2134
- records: [],
2135
- widthMode: 'adaptive',
2136
- heightMode: 'adaptive',
2137
- indicatorsAsCol: false
2697
+ const { advancedVSeed } = context;
2698
+ const { encoding } = advancedVSeed;
2699
+ if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
2700
+ result.type = 'scatter';
2701
+ result.direction = 'vertical';
2702
+ result.xField = encoding[0].x[0];
2703
+ result.yField = encoding[0].y[0];
2704
+ result.seriesField = encoding[0].group[0];
2705
+ result.padding = 0;
2706
+ result.region = [
2707
+ {
2708
+ clip: true
2709
+ }
2710
+ ];
2711
+ result.animation = true;
2712
+ return result;
2713
+ };
2714
+ const initRadar = (spec, context)=>{
2715
+ const result = {
2716
+ ...spec
2138
2717
  };
2718
+ const { advancedVSeed } = context;
2719
+ const { encoding } = advancedVSeed;
2720
+ if (!encoding[0].angle || !encoding[0].radius || !encoding[0].group) return result;
2721
+ result.type = 'radar';
2722
+ result.angleField = encoding[0].angle[0];
2723
+ result.radiusField = encoding[0].radius[0];
2724
+ result.seriesField = encoding[0].group[0];
2725
+ result.padding = 0;
2726
+ result.region = [
2727
+ {
2728
+ clip: true
2729
+ }
2730
+ ];
2731
+ result.animation = true;
2732
+ return result;
2139
2733
  };
2140
2734
  const initFunnel = (spec, context)=>{
2141
2735
  const result = {
@@ -2173,26 +2767,21 @@ const initFunnel = (spec, context)=>{
2173
2767
  result.animation = true;
2174
2768
  return result;
2175
2769
  };
2176
- const initScatter = (spec, context)=>{
2770
+ const initPivot = (spec)=>{
2177
2771
  const result = {
2178
2772
  ...spec
2179
2773
  };
2180
- const { advancedVSeed } = context;
2181
- const { encoding } = advancedVSeed;
2182
- if (!encoding[0].y || !encoding[0].x || !encoding[0].group) return result;
2183
- result.type = 'scatter';
2184
- result.direction = 'vertical';
2185
- result.xField = encoding[0].x[0];
2186
- result.yField = encoding[0].y[0];
2187
- result.seriesField = encoding[0].group[0];
2188
- result.padding = 0;
2189
- result.region = [
2190
- {
2191
- clip: true
2192
- }
2193
- ];
2194
- result.animation = true;
2195
- return result;
2774
+ return {
2775
+ ...result,
2776
+ animation: true,
2777
+ rows: [],
2778
+ columns: [],
2779
+ indicators: [],
2780
+ records: [],
2781
+ widthMode: 'adaptive',
2782
+ heightMode: 'adaptive',
2783
+ indicatorsAsCol: false
2784
+ };
2196
2785
  };
2197
2786
  const xBand = (spec, context)=>{
2198
2787
  const result = {
@@ -2555,7 +3144,7 @@ const radiusAxis = (spec, context)=>{
2555
3144
  };
2556
3145
  const { advancedVSeed } = context;
2557
3146
  const { dimensions, measures } = advancedVSeed;
2558
- if (!dimensions || !measures) return spec;
3147
+ if (!dimensions || !measures) return result;
2559
3148
  const is0D = 0 === dimensions.length;
2560
3149
  const is1M1D = 1 === dimensions.length && 1 === measures.length;
2561
3150
  const showAxis = !(is0D || is1M1D);
@@ -2586,7 +3175,7 @@ const angleAxis = (spec, context)=>{
2586
3175
  };
2587
3176
  const { advancedVSeed } = context;
2588
3177
  const { dimensions, measures } = advancedVSeed;
2589
- if (!dimensions || !measures) return spec;
3178
+ if (!dimensions || !measures) return result;
2590
3179
  const is0D = 0 === dimensions.length;
2591
3180
  const is1M1D = 1 === dimensions.length && 1 === measures.length;
2592
3181
  const showAxis = !(is0D || is1M1D);
@@ -2622,6 +3211,59 @@ const angleAxis = (spec, context)=>{
2622
3211
  });
2623
3212
  return result;
2624
3213
  };
3214
+ const radarAngleAxis = (spec, context)=>{
3215
+ const result = {
3216
+ ...spec
3217
+ };
3218
+ const { advancedVSeed } = context;
3219
+ const { dimensions, measures } = advancedVSeed;
3220
+ if (!dimensions || !measures) return result;
3221
+ if (!result.axes) result.axes = [];
3222
+ result.axes.push({
3223
+ orient: 'angle',
3224
+ visible: true,
3225
+ zero: true,
3226
+ nice: true,
3227
+ grid: {
3228
+ visible: true
3229
+ },
3230
+ domainLine: {
3231
+ visible: true
3232
+ },
3233
+ tick: {
3234
+ visible: true
3235
+ }
3236
+ });
3237
+ return result;
3238
+ };
3239
+ const radarRadiusAxis = (spec, context)=>{
3240
+ const result = {
3241
+ ...spec
3242
+ };
3243
+ const { advancedVSeed } = context;
3244
+ const { dimensions, measures } = advancedVSeed;
3245
+ if (!dimensions || !measures) return result;
3246
+ if (!result.axes) result.axes = [];
3247
+ result.axes.push({
3248
+ orient: 'radius',
3249
+ visible: true,
3250
+ zero: true,
3251
+ nice: true,
3252
+ grid: {
3253
+ visible: true
3254
+ },
3255
+ tick: {
3256
+ visible: true
3257
+ },
3258
+ label: {
3259
+ visible: true
3260
+ },
3261
+ domainLine: {
3262
+ visible: true
3263
+ }
3264
+ });
3265
+ return result;
3266
+ };
2625
3267
  const percent = (spec, context)=>{
2626
3268
  const result = {
2627
3269
  ...spec
@@ -2665,7 +3307,9 @@ const tooltip_tooltip = (spec, context)=>{
2665
3307
  const { advancedVSeed } = context;
2666
3308
  const { measures, datasetReshapeInfo, chartType } = advancedVSeed;
2667
3309
  const baseConfig = advancedVSeed.config[chartType];
2668
- const { tooltip } = baseConfig;
3310
+ const { tooltip = {
3311
+ enable: true
3312
+ } } = baseConfig;
2669
3313
  const { enable } = tooltip;
2670
3314
  const { measureId, measureValue } = datasetReshapeInfo[0].foldInfo;
2671
3315
  const { groupName } = datasetReshapeInfo[0].unfoldInfo;
@@ -4203,6 +4847,21 @@ const horizontalCrosshairLine = (spec, context)=>{
4203
4847
  };
4204
4848
  return result;
4205
4849
  };
4850
+ const series = (...args)=>{
4851
+ const result = {
4852
+ type: 'common',
4853
+ padding: 0,
4854
+ region: [
4855
+ {
4856
+ clip: true
4857
+ }
4858
+ ]
4859
+ };
4860
+ return (_, context)=>{
4861
+ result.series = args.map((pipeline)=>execPipeline(pipeline, context, {}));
4862
+ return result;
4863
+ };
4864
+ };
4206
4865
  const line_line = [
4207
4866
  initLine,
4208
4867
  color_color,
@@ -4543,11 +5202,65 @@ const pivotBarPercent = [
4543
5202
  const barPercentSpecPipeline = [
4544
5203
  pivotAdapter_pivotAdapter(barPercent, pivotBarPercent)
4545
5204
  ];
4546
- const area_area = [
5205
+ const area_area = [
5206
+ initArea,
5207
+ stackInverse,
5208
+ color_color,
5209
+ background_backgroundColor,
5210
+ dataset_dataset,
5211
+ xBand,
5212
+ yLinear,
5213
+ label_label,
5214
+ tooltip_tooltip,
5215
+ verticalCrosshairLine,
5216
+ discreteLegend,
5217
+ pointStyle_pointStyle,
5218
+ pointStateDimensionHover,
5219
+ lineStyle_lineStyle,
5220
+ areaStyle_areaStyle,
5221
+ annotationPoint_annotationPoint,
5222
+ annotationVerticalLine_annotationVerticalLine,
5223
+ annotationHorizontalLine_annotationHorizontalLine,
5224
+ annotationArea_annotationArea
5225
+ ];
5226
+ const pivotArea = [
5227
+ initPivot,
5228
+ pivotGridStyle,
5229
+ pivotIndicators_pivotIndicatorsAsRow,
5230
+ datasetPivot,
5231
+ pivotIndicators([
5232
+ initArea,
5233
+ color_color,
5234
+ background_backgroundColor,
5235
+ stackInverse,
5236
+ dataset_dataset,
5237
+ xBand,
5238
+ yLinear,
5239
+ label_label,
5240
+ tooltip_tooltip,
5241
+ verticalCrosshairLine,
5242
+ pointStyle_pointStyle,
5243
+ pointStateDimensionHover,
5244
+ lineStyle_lineStyle,
5245
+ areaStyle_areaStyle,
5246
+ annotationPoint_annotationPoint,
5247
+ annotationVerticalLine_annotationVerticalLine,
5248
+ annotationHorizontalLine_annotationHorizontalLine,
5249
+ annotationArea_annotationArea
5250
+ ]),
5251
+ pivotRowDimensions,
5252
+ pivotColumnDimensions,
5253
+ pivotDiscreteLegend
5254
+ ];
5255
+ const areaSpecPipeline = [
5256
+ pivotAdapter_pivotAdapter(area_area, pivotArea)
5257
+ ];
5258
+ const areaPercent = [
4547
5259
  initArea,
4548
5260
  stackInverse,
4549
5261
  color_color,
4550
5262
  background_backgroundColor,
5263
+ percent,
4551
5264
  dataset_dataset,
4552
5265
  xBand,
4553
5266
  yLinear,
@@ -4556,7 +5269,6 @@ const area_area = [
4556
5269
  verticalCrosshairLine,
4557
5270
  discreteLegend,
4558
5271
  pointStyle_pointStyle,
4559
- pointStateDimensionHover,
4560
5272
  lineStyle_lineStyle,
4561
5273
  areaStyle_areaStyle,
4562
5274
  annotationPoint_annotationPoint,
@@ -4564,16 +5276,17 @@ const area_area = [
4564
5276
  annotationHorizontalLine_annotationHorizontalLine,
4565
5277
  annotationArea_annotationArea
4566
5278
  ];
4567
- const pivotArea = [
5279
+ const pivotAreaPercent = [
4568
5280
  initPivot,
4569
5281
  pivotGridStyle,
4570
5282
  pivotIndicators_pivotIndicatorsAsRow,
4571
5283
  datasetPivot,
4572
5284
  pivotIndicators([
4573
5285
  initArea,
5286
+ stackInverse,
4574
5287
  color_color,
4575
5288
  background_backgroundColor,
4576
- stackInverse,
5289
+ percent,
4577
5290
  dataset_dataset,
4578
5291
  xBand,
4579
5292
  yLinear,
@@ -4581,7 +5294,6 @@ const pivotArea = [
4581
5294
  tooltip_tooltip,
4582
5295
  verticalCrosshairLine,
4583
5296
  pointStyle_pointStyle,
4584
- pointStateDimensionHover,
4585
5297
  lineStyle_lineStyle,
4586
5298
  areaStyle_areaStyle,
4587
5299
  annotationPoint_annotationPoint,
@@ -4593,50 +5305,109 @@ const pivotArea = [
4593
5305
  pivotColumnDimensions,
4594
5306
  pivotDiscreteLegend
4595
5307
  ];
4596
- const areaSpecPipeline = [
4597
- pivotAdapter_pivotAdapter(area_area, pivotArea)
5308
+ const areaPercentSpecPipeline = [
5309
+ pivotAdapter_pivotAdapter(areaPercent, pivotAreaPercent)
4598
5310
  ];
4599
- const areaPercent = [
4600
- initArea,
4601
- stackInverse,
5311
+ const areaRange = [
5312
+ series([
5313
+ initAreaRange,
5314
+ areaStyle_areaStyle
5315
+ ], [
5316
+ initAreaRangeLine1,
5317
+ lineStyle_lineStyle,
5318
+ pointStyle_pointStyle,
5319
+ pointStateDimensionHover
5320
+ ], [
5321
+ initAreaRangeLine2,
5322
+ lineStyle_lineStyle,
5323
+ pointStyle_pointStyle,
5324
+ pointStateDimensionHover
5325
+ ]),
5326
+ dataset_dataset,
5327
+ background_backgroundColor,
5328
+ xBand,
5329
+ yLinear,
5330
+ label_label,
5331
+ verticalCrosshairLine,
5332
+ annotationPoint_annotationPoint,
5333
+ annotationVerticalLine_annotationVerticalLine,
5334
+ annotationHorizontalLine_annotationHorizontalLine,
5335
+ annotationArea_annotationArea
5336
+ ];
5337
+ const pivotAreaRange = [
5338
+ initPivot,
5339
+ pivotGridStyle,
5340
+ pivotIndicators_pivotIndicatorsAsRow,
5341
+ datasetPivot,
5342
+ pivotIndicators([
5343
+ series([
5344
+ initAreaRange,
5345
+ areaStyle_areaStyle
5346
+ ], [
5347
+ initAreaRangeLine1,
5348
+ lineStyle_lineStyle,
5349
+ pointStyle_pointStyle,
5350
+ pointStateDimensionHover
5351
+ ], [
5352
+ initAreaRangeLine2,
5353
+ lineStyle_lineStyle,
5354
+ pointStyle_pointStyle,
5355
+ pointStateDimensionHover
5356
+ ]),
5357
+ background_backgroundColor,
5358
+ dataset_dataset,
5359
+ xBand,
5360
+ yLinear,
5361
+ label_label,
5362
+ verticalCrosshairLine,
5363
+ annotationPoint_annotationPoint,
5364
+ annotationVerticalLine_annotationVerticalLine,
5365
+ annotationHorizontalLine_annotationHorizontalLine,
5366
+ annotationArea_annotationArea
5367
+ ]),
5368
+ pivotRowDimensions,
5369
+ pivotColumnDimensions
5370
+ ];
5371
+ const areaRangeSpecPipeline = [
5372
+ pivotAdapter_pivotAdapter(areaRange, pivotAreaRange)
5373
+ ];
5374
+ const scatter = [
5375
+ initScatter,
4602
5376
  color_color,
4603
5377
  background_backgroundColor,
4604
- percent,
4605
5378
  dataset_dataset,
4606
- xBand,
5379
+ xLinear,
4607
5380
  yLinear,
4608
5381
  label_label,
4609
5382
  tooltip_tooltip,
4610
5383
  verticalCrosshairLine,
5384
+ horizontalCrosshairLine,
4611
5385
  discreteLegend,
4612
5386
  pointStyle_pointStyle,
4613
- lineStyle_lineStyle,
4614
- areaStyle_areaStyle,
5387
+ pointStateHover,
4615
5388
  annotationPoint_annotationPoint,
4616
5389
  annotationVerticalLine_annotationVerticalLine,
4617
5390
  annotationHorizontalLine_annotationHorizontalLine,
4618
5391
  annotationArea_annotationArea
4619
5392
  ];
4620
- const pivotAreaPercent = [
5393
+ const pivotScatter = [
4621
5394
  initPivot,
4622
5395
  pivotGridStyle,
4623
5396
  pivotIndicators_pivotIndicatorsAsRow,
4624
5397
  datasetPivot,
4625
5398
  pivotIndicators([
4626
- initArea,
4627
- stackInverse,
5399
+ initScatter,
4628
5400
  color_color,
4629
5401
  background_backgroundColor,
4630
- percent,
4631
5402
  dataset_dataset,
4632
- xBand,
5403
+ xLinear,
4633
5404
  yLinear,
4634
5405
  label_label,
4635
5406
  tooltip_tooltip,
4636
5407
  verticalCrosshairLine,
5408
+ horizontalCrosshairLine,
4637
5409
  pointStyle_pointStyle,
4638
- lineStyle_lineStyle,
4639
- areaStyle_areaStyle,
5410
+ pointStateHover,
4640
5411
  annotationPoint_annotationPoint,
4641
5412
  annotationVerticalLine_annotationVerticalLine,
4642
5413
  annotationHorizontalLine_annotationHorizontalLine,
@@ -4646,8 +5417,8 @@ const pivotAreaPercent = [
4646
5417
  pivotColumnDimensions,
4647
5418
  pivotDiscreteLegend
4648
5419
  ];
4649
- const areaPercentSpecPipeline = [
4650
- pivotAdapter_pivotAdapter(areaPercent, pivotAreaPercent)
5420
+ const scatterSpecPipeline = [
5421
+ pivotAdapter_pivotAdapter(scatter, pivotScatter)
4651
5422
  ];
4652
5423
  const pie = [
4653
5424
  initPie,
@@ -4807,6 +5578,49 @@ const pivotRoseParallel = [
4807
5578
  const roseParallelSpecPipeline = [
4808
5579
  pivotAdapter_pivotAdapter(roseParallel, pivotRoseParallel)
4809
5580
  ];
5581
+ const radar = [
5582
+ initRadar,
5583
+ color_color,
5584
+ background_backgroundColor,
5585
+ dataset_dataset,
5586
+ radarAngleAxis,
5587
+ radarRadiusAxis,
5588
+ label_label,
5589
+ tooltip_tooltip,
5590
+ verticalCrosshairLine,
5591
+ discreteLegend,
5592
+ pointStyle_pointStyle,
5593
+ pointStateDimensionHover,
5594
+ lineStyle_lineStyle,
5595
+ areaStyle_areaStyle
5596
+ ];
5597
+ const pivotRadar = [
5598
+ initPivot,
5599
+ pivotGridStyle,
5600
+ pivotIndicators_pivotIndicatorsAsRow,
5601
+ datasetPivot,
5602
+ pivotIndicators([
5603
+ initRadar,
5604
+ color_color,
5605
+ background_backgroundColor,
5606
+ dataset_dataset,
5607
+ radarAngleAxis,
5608
+ radarRadiusAxis,
5609
+ label_label,
5610
+ tooltip_tooltip,
5611
+ verticalCrosshairLine,
5612
+ pointStyle_pointStyle,
5613
+ pointStateDimensionHover,
5614
+ lineStyle_lineStyle,
5615
+ areaStyle_areaStyle
5616
+ ]),
5617
+ pivotRowDimensions,
5618
+ pivotColumnDimensions,
5619
+ pivotDiscreteLegend
5620
+ ];
5621
+ const radarSpecPipeline = [
5622
+ pivotAdapter_pivotAdapter(radar, pivotRadar)
5623
+ ];
4810
5624
  const funnel = [
4811
5625
  initFunnel,
4812
5626
  color_color,
@@ -4844,43 +5658,43 @@ const pivotFunnel = [
4844
5658
  const funnelSpecPipeline = [
4845
5659
  pivotAdapter_pivotAdapter(funnel, pivotFunnel)
4846
5660
  ];
4847
- const scatter = [
4848
- initScatter,
5661
+ const heatmap = [
5662
+ initLine,
4849
5663
  color_color,
4850
5664
  background_backgroundColor,
4851
5665
  dataset_dataset,
4852
- xLinear,
5666
+ xBand,
4853
5667
  yLinear,
4854
5668
  label_label,
4855
5669
  tooltip_tooltip,
4856
5670
  verticalCrosshairLine,
4857
- horizontalCrosshairLine,
4858
5671
  discreteLegend,
4859
5672
  pointStyle_pointStyle,
4860
- pointStateHover,
5673
+ pointStateDimensionHover,
5674
+ lineStyle_lineStyle,
4861
5675
  annotationPoint_annotationPoint,
4862
5676
  annotationVerticalLine_annotationVerticalLine,
4863
5677
  annotationHorizontalLine_annotationHorizontalLine,
4864
5678
  annotationArea_annotationArea
4865
5679
  ];
4866
- const pivotScatter = [
5680
+ const pivotHeatmap = [
4867
5681
  initPivot,
4868
5682
  pivotGridStyle,
4869
5683
  pivotIndicators_pivotIndicatorsAsRow,
4870
5684
  datasetPivot,
4871
5685
  pivotIndicators([
4872
- initScatter,
5686
+ initLine,
4873
5687
  color_color,
4874
5688
  background_backgroundColor,
4875
5689
  dataset_dataset,
4876
- xLinear,
5690
+ xBand,
4877
5691
  yLinear,
4878
5692
  label_label,
4879
5693
  tooltip_tooltip,
4880
5694
  verticalCrosshairLine,
4881
- horizontalCrosshairLine,
4882
5695
  pointStyle_pointStyle,
4883
- pointStateHover,
5696
+ pointStateDimensionHover,
5697
+ lineStyle_lineStyle,
4884
5698
  annotationPoint_annotationPoint,
4885
5699
  annotationVerticalLine_annotationVerticalLine,
4886
5700
  annotationHorizontalLine_annotationHorizontalLine,
@@ -4890,8 +5704,8 @@ const pivotScatter = [
4890
5704
  pivotColumnDimensions,
4891
5705
  pivotDiscreteLegend
4892
5706
  ];
4893
- const scatterSpecPipeline = [
4894
- pivotAdapter_pivotAdapter(scatter, pivotScatter)
5707
+ const heatmapSpecPipeline = [
5708
+ pivotAdapter_pivotAdapter(heatmap, pivotHeatmap)
4895
5709
  ];
4896
5710
  const initTable = (spec, context)=>{
4897
5711
  const { advancedVSeed } = context;
@@ -5388,8 +6202,18 @@ class Builder {
5388
6202
  build = ()=>build(this);
5389
6203
  buildSpec = (advanced)=>buildSpec(this, advanced);
5390
6204
  buildAdvanced = ()=>buildAdvanced(this);
5391
- getAdvancedPipeline = (chartType)=>Builder._advancedPipelineMap[chartType];
5392
- getSpecPipeline = (chartType)=>Builder._specPipelineMap[chartType];
6205
+ getAdvancedPipeline = (chartType)=>{
6206
+ const customPipe = Builder._customAdvancedPipe[chartType];
6207
+ const pipeline = Builder._advancedPipelineMap[chartType];
6208
+ if (customPipe) pipeline.push(customPipe);
6209
+ return pipeline;
6210
+ };
6211
+ getSpecPipeline = (chartType)=>{
6212
+ const customPipe = Builder._customSpecPipe[chartType];
6213
+ const pipeline = Builder._specPipelineMap[chartType];
6214
+ if (customPipe) pipeline.push(customPipe);
6215
+ return pipeline;
6216
+ };
5393
6217
  getTheme = (themeKey)=>Builder._themeMap[themeKey];
5394
6218
  getThemeMap = ()=>Builder._themeMap;
5395
6219
  getColorItems = ()=>getColorItems(this);
@@ -5414,6 +6238,8 @@ class Builder {
5414
6238
  }
5415
6239
  static _advancedPipelineMap = {};
5416
6240
  static _specPipelineMap = {};
6241
+ static _customAdvancedPipe = {};
6242
+ static _customSpecPipe = {};
5417
6243
  static _themeMap = {};
5418
6244
  static from = (vseed)=>new Builder(vseed);
5419
6245
  }
@@ -5437,6 +6263,10 @@ const registerAreaPercent = ()=>{
5437
6263
  Builder._advancedPipelineMap.areaPercent = areaPercentAdvancedPipeline;
5438
6264
  Builder._specPipelineMap.areaPercent = areaPercentSpecPipeline;
5439
6265
  };
6266
+ const registerAreaRange = ()=>{
6267
+ Builder._advancedPipelineMap.areaRange = areaRangeAdvancedPipeline;
6268
+ Builder._specPipelineMap.areaRange = areaRangeSpecPipeline;
6269
+ };
5440
6270
  const registerBarPercent = ()=>{
5441
6271
  Builder._advancedPipelineMap.barPercent = barPercentAdvancedPipeline;
5442
6272
  Builder._specPipelineMap.barPercent = barPercentSpecPipeline;
@@ -5485,6 +6315,14 @@ const registerPivotTable = ()=>{
5485
6315
  Builder._advancedPipelineMap.pivotTable = pivotTableAdvancedPipeline;
5486
6316
  Builder._specPipelineMap.pivotTable = pivotTableSpecPipeline;
5487
6317
  };
6318
+ const registerHeatmap = ()=>{
6319
+ Builder._advancedPipelineMap.heatmap = heatmapAdvancedPipeline;
6320
+ Builder._specPipelineMap.heatmap = heatmapSpecPipeline;
6321
+ };
6322
+ const registerRadar = ()=>{
6323
+ Builder._advancedPipelineMap.radar = radarAdvancedPipeline;
6324
+ Builder._specPipelineMap.radar = radarSpecPipeline;
6325
+ };
5488
6326
  const lightTheme = ()=>{
5489
6327
  const linearAxis = {
5490
6328
  nice: true,
@@ -5729,6 +6567,12 @@ const lightTheme = ()=>{
5729
6567
  yAxis: linearAxis,
5730
6568
  crosshairLine
5731
6569
  },
6570
+ areaRange: {
6571
+ ...baseConfig,
6572
+ xAxis: bandAxis,
6573
+ yAxis: linearAxis,
6574
+ crosshairLine
6575
+ },
5732
6576
  scatter: {
5733
6577
  ...baseConfig,
5734
6578
  xAxis: {
@@ -5753,6 +6597,9 @@ const lightTheme = ()=>{
5753
6597
  donut: {
5754
6598
  ...baseConfig
5755
6599
  },
6600
+ radar: {
6601
+ ...baseConfig
6602
+ },
5756
6603
  rose: {
5757
6604
  ...baseConfig
5758
6605
  },
@@ -6022,6 +6869,12 @@ const darkTheme = ()=>{
6022
6869
  yAxis: linearAxis,
6023
6870
  crosshairLine: crosshairLine
6024
6871
  },
6872
+ areaRange: {
6873
+ ...baseConfig,
6874
+ xAxis: bandAxis,
6875
+ yAxis: linearAxis,
6876
+ crosshairLine: crosshairLine
6877
+ },
6025
6878
  scatter: {
6026
6879
  ...baseConfig,
6027
6880
  xAxis: {
@@ -6046,6 +6899,9 @@ const darkTheme = ()=>{
6046
6899
  donut: {
6047
6900
  ...baseConfig
6048
6901
  },
6902
+ radar: {
6903
+ ...baseConfig
6904
+ },
6049
6905
  rose: {
6050
6906
  ...baseConfig
6051
6907
  },
@@ -6086,6 +6942,8 @@ const registerDarkTheme = ()=>{
6086
6942
  registerCustomTheme('dark', darkTheme());
6087
6943
  };
6088
6944
  const registerAll = ()=>{
6945
+ registerTable();
6946
+ registerPivotTable();
6089
6947
  registerLine();
6090
6948
  registerColumn();
6091
6949
  registerColumnParallel();
@@ -6095,17 +6953,24 @@ const registerAll = ()=>{
6095
6953
  registerBarPercent();
6096
6954
  registerArea();
6097
6955
  registerAreaPercent();
6956
+ registerAreaRange();
6957
+ registerScatter();
6098
6958
  registerPie();
6099
6959
  registerDonut();
6100
6960
  registerRose();
6101
6961
  registerRoseParallel();
6962
+ registerRadar();
6102
6963
  registerFunnel();
6103
- registerScatter();
6104
- registerTable();
6105
- registerPivotTable();
6964
+ registerHeatmap();
6106
6965
  registerLightTheme();
6107
6966
  registerDarkTheme();
6108
6967
  };
6968
+ const updateAdvanced = (chartType, advancedPipe)=>{
6969
+ Builder._customAdvancedPipe[chartType] = advancedPipe;
6970
+ };
6971
+ const updateSpec = (chartType, specPipe)=>{
6972
+ Builder._customSpecPipe[chartType] = specPipe;
6973
+ };
6109
6974
  const external_zod_namespaceObject = require("zod");
6110
6975
  var external_zod_default = /*#__PURE__*/ __webpack_require__.n(external_zod_namespaceObject);
6111
6976
  const zChartType = external_zod_namespaceObject.z["enum"]([
@@ -6120,13 +6985,16 @@ const zChartType = external_zod_namespaceObject.z["enum"]([
6120
6985
  'barParallel',
6121
6986
  'area',
6122
6987
  'areaPercent',
6988
+ 'areaRange',
6989
+ 'scatter',
6990
+ 'dualAxis',
6123
6991
  'rose',
6124
6992
  'roseParallel',
6125
6993
  'pie',
6126
6994
  'donut',
6127
- 'dualAxis',
6128
- 'scatter',
6129
- 'funnel'
6995
+ 'radar',
6996
+ 'funnel',
6997
+ 'heatmap'
6130
6998
  ]);
6131
6999
  const zDatum = external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string().or(external_zod_namespaceObject.z.number()), external_zod_namespaceObject.z.any());
6132
7000
  const zDataset = external_zod_namespaceObject.z.array(zDatum);
@@ -6450,22 +7318,7 @@ const zAreaConfig = external_zod_namespaceObject.z.object({
6450
7318
  crosshairLine: zCrosshairLine.optional()
6451
7319
  });
6452
7320
  const zAreaPercentConfig = zAreaConfig;
6453
- const zRoseConfig = external_zod_namespaceObject.z.object({
6454
- backgroundColor: zBackgroundColor.optional(),
6455
- label: zLabel.optional(),
6456
- color: zColor.optional(),
6457
- tooltip: zTooltip.optional(),
6458
- legend: zLegend.optional()
6459
- });
6460
- const zRoseParallelConfig = zRoseConfig;
6461
- const zPieConfig = external_zod_namespaceObject.z.object({
6462
- backgroundColor: zBackgroundColor.optional(),
6463
- label: zLabel.optional(),
6464
- color: zColor.optional(),
6465
- tooltip: zTooltip.optional(),
6466
- legend: zLegend.optional()
6467
- });
6468
- const zDonutConfig = zPieConfig;
7321
+ const zAreaRangeConfig = zAreaConfig;
6469
7322
  const zDualAxisConfig = external_zod_namespaceObject.z.object({
6470
7323
  backgroundColor: zBackgroundColor.optional(),
6471
7324
  label: zLabel.optional(),
@@ -6483,13 +7336,25 @@ const zScatterConfig = external_zod_namespaceObject.z.object({
6483
7336
  yAxis: zYLinearAxis.optional(),
6484
7337
  crosshairLine: zCrosshairLine.optional()
6485
7338
  });
6486
- const zFunnelConfig = external_zod_namespaceObject.z.object({
7339
+ const zRoseConfig = external_zod_namespaceObject.z.object({
6487
7340
  backgroundColor: zBackgroundColor.optional(),
7341
+ label: zLabel.optional(),
6488
7342
  color: zColor.optional(),
6489
7343
  tooltip: zTooltip.optional(),
7344
+ legend: zLegend.optional()
7345
+ });
7346
+ const zRoseParallelConfig = zRoseConfig;
7347
+ const zPieConfig = external_zod_namespaceObject.z.object({
7348
+ backgroundColor: zBackgroundColor.optional(),
6490
7349
  label: zLabel.optional(),
7350
+ color: zColor.optional(),
7351
+ tooltip: zTooltip.optional(),
6491
7352
  legend: zLegend.optional()
6492
7353
  });
7354
+ const zDonutConfig = zPieConfig;
7355
+ const zRadarConfig = zPieConfig;
7356
+ const zFunnelConfig = zPieConfig;
7357
+ const zHeatmapConfig = zPieConfig;
6493
7358
  const zConfig = external_zod_namespaceObject.z.object({
6494
7359
  table: zTableConfig.optional(),
6495
7360
  pivotTable: zPivotTableConfig.optional(),
@@ -6502,13 +7367,16 @@ const zConfig = external_zod_namespaceObject.z.object({
6502
7367
  barPercent: zBarPercentConfig.optional(),
6503
7368
  area: zAreaConfig.optional(),
6504
7369
  areaPercent: zAreaPercentConfig.optional(),
7370
+ areaRange: zAreaRangeConfig.optional(),
7371
+ dualAxis: zDualAxisConfig.optional(),
7372
+ scatter: zScatterConfig.optional(),
6505
7373
  rose: zRoseConfig.optional(),
6506
7374
  roseParallel: zRoseParallelConfig.optional(),
6507
7375
  pie: zPieConfig.optional(),
6508
7376
  donut: zDonutConfig.optional(),
6509
- dualAxis: zDualAxisConfig.optional(),
6510
- scatter: zScatterConfig.optional(),
6511
- funnel: zFunnelConfig.optional()
7377
+ radar: zRadarConfig.optional(),
7378
+ funnel: zFunnelConfig.optional(),
7379
+ heatmap: zHeatmapConfig.optional()
6512
7380
  });
6513
7381
  const zAxis = external_zod_namespaceObject.z.object({
6514
7382
  visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
@@ -7107,6 +7975,47 @@ const zAreaPercent = external_zod_namespaceObject.z.object({
7107
7975
  annotationArea: external_zod_namespaceObject.z.array(zAnnotationArea).or(zAnnotationArea).optional(),
7108
7976
  locale: zLocale.optional()
7109
7977
  });
7978
+ const zAreaRange = external_zod_namespaceObject.z.object({
7979
+ chartType: external_zod_namespaceObject.z.literal('areaRange'),
7980
+ dataset: zDataset.optional(),
7981
+ dimensions: zDimensions.optional(),
7982
+ measures: zMeasureTree.optional(),
7983
+ backgroundColor: zBackgroundColor.optional(),
7984
+ label: zLabel.optional(),
7985
+ xAxis: zXBandAxis.optional(),
7986
+ yAxis: zYLinearAxis.optional(),
7987
+ crosshairLine: zCrosshairLine.optional(),
7988
+ theme: zTheme.optional(),
7989
+ pointStyle: zPointStyle.optional(),
7990
+ lineStyle: zLineStyle.optional(),
7991
+ areaStyle: zAreaStyle.optional(),
7992
+ annotationPoint: external_zod_namespaceObject.z.array(zAnnotationPoint).or(zAnnotationPoint).optional(),
7993
+ annotationVerticalLine: external_zod_namespaceObject.z.array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
7994
+ annotationHorizontalLine: external_zod_namespaceObject.z.array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
7995
+ annotationArea: external_zod_namespaceObject.z.array(zAnnotationArea).or(zAnnotationArea).optional(),
7996
+ locale: zLocale.optional()
7997
+ });
7998
+ const zScatter = external_zod_namespaceObject.z.object({
7999
+ chartType: external_zod_namespaceObject.z.literal('scatter'),
8000
+ dataset: zDataset.optional(),
8001
+ dimensions: zDimensions.optional(),
8002
+ measures: zMeasureTree.optional(),
8003
+ backgroundColor: zBackgroundColor.optional(),
8004
+ color: zColor.optional(),
8005
+ label: zLabel.optional(),
8006
+ legend: zLegend.optional(),
8007
+ tooltip: zTooltip.optional(),
8008
+ xAxis: zXLinearAxis.optional(),
8009
+ yAxis: zYLinearAxis.optional(),
8010
+ crosshairLine: zCrosshairLine.optional(),
8011
+ theme: zTheme.optional(),
8012
+ pointStyle: zPointStyle.optional(),
8013
+ annotationPoint: external_zod_namespaceObject.z.array(zAnnotationPoint).or(zAnnotationPoint).optional(),
8014
+ annotationVerticalLine: external_zod_namespaceObject.z.array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
8015
+ annotationHorizontalLine: external_zod_namespaceObject.z.array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
8016
+ annotationArea: external_zod_namespaceObject.z.array(zAnnotationArea).or(zAnnotationArea).optional(),
8017
+ locale: zLocale.optional()
8018
+ });
7110
8019
  const zRose = external_zod_namespaceObject.z.object({
7111
8020
  chartType: external_zod_namespaceObject.z.literal('rose'),
7112
8021
  dataset: zDataset.optional(),
@@ -7159,8 +8068,8 @@ const zDonut = external_zod_namespaceObject.z.object({
7159
8068
  theme: zTheme.optional(),
7160
8069
  locale: zLocale.optional()
7161
8070
  });
7162
- const zScatter = external_zod_namespaceObject.z.object({
7163
- chartType: external_zod_namespaceObject.z.literal('scatter'),
8071
+ const zRadar = external_zod_namespaceObject.z.object({
8072
+ chartType: external_zod_namespaceObject.z.literal('radar'),
7164
8073
  dataset: zDataset.optional(),
7165
8074
  dimensions: zDimensions.optional(),
7166
8075
  measures: zMeasureTree.optional(),
@@ -7169,15 +8078,7 @@ const zScatter = external_zod_namespaceObject.z.object({
7169
8078
  label: zLabel.optional(),
7170
8079
  legend: zLegend.optional(),
7171
8080
  tooltip: zTooltip.optional(),
7172
- xAxis: zXLinearAxis.optional(),
7173
- yAxis: zYLinearAxis.optional(),
7174
- crosshairLine: zCrosshairLine.optional(),
7175
8081
  theme: zTheme.optional(),
7176
- pointStyle: zPointStyle.optional(),
7177
- annotationPoint: external_zod_namespaceObject.z.array(zAnnotationPoint).or(zAnnotationPoint).optional(),
7178
- annotationVerticalLine: external_zod_namespaceObject.z.array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
7179
- annotationHorizontalLine: external_zod_namespaceObject.z.array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
7180
- annotationArea: external_zod_namespaceObject.z.array(zAnnotationArea).or(zAnnotationArea).optional(),
7181
8082
  locale: zLocale.optional()
7182
8083
  });
7183
8084
  const zFunnel = external_zod_namespaceObject.z.object({
@@ -7193,6 +8094,19 @@ const zFunnel = external_zod_namespaceObject.z.object({
7193
8094
  theme: zTheme.optional(),
7194
8095
  locale: zLocale.optional()
7195
8096
  });
8097
+ const zHeatmap = external_zod_namespaceObject.z.object({
8098
+ chartType: external_zod_namespaceObject.z.literal('heatmap'),
8099
+ dataset: zDataset.optional(),
8100
+ dimensions: zDimensions.optional(),
8101
+ measures: zMeasureTree.optional(),
8102
+ backgroundColor: zBackgroundColor.optional(),
8103
+ color: zColor.optional(),
8104
+ label: zLabel.optional(),
8105
+ legend: zLegend.optional(),
8106
+ tooltip: zTooltip.optional(),
8107
+ theme: zTheme.optional(),
8108
+ locale: zLocale.optional()
8109
+ });
7196
8110
  const zVSeed = external_zod_namespaceObject.z.discriminatedUnion('chartType', [
7197
8111
  zTable,
7198
8112
  zPivotTable,
@@ -7205,12 +8119,15 @@ const zVSeed = external_zod_namespaceObject.z.discriminatedUnion('chartType', [
7205
8119
  zBarPercent,
7206
8120
  zArea,
7207
8121
  zAreaPercent,
8122
+ zAreaRange,
8123
+ zScatter,
7208
8124
  zPie,
8125
+ zDonut,
7209
8126
  zRose,
7210
8127
  zRoseParallel,
7211
- zScatter,
7212
- zDonut,
7213
- zFunnel
8128
+ zRadar,
8129
+ zFunnel,
8130
+ zHeatmap
7214
8131
  ]);
7215
8132
  const zAdvancedVSeed = external_zod_namespaceObject.z.object({
7216
8133
  chartType: zChartType,
@@ -7238,6 +8155,8 @@ exports.UnfoldDimensionGroupId = __webpack_exports__.UnfoldDimensionGroupId;
7238
8155
  exports.areaAdvancedPipeline = __webpack_exports__.areaAdvancedPipeline;
7239
8156
  exports.areaPercentAdvancedPipeline = __webpack_exports__.areaPercentAdvancedPipeline;
7240
8157
  exports.areaPercentSpecPipeline = __webpack_exports__.areaPercentSpecPipeline;
8158
+ exports.areaRangeAdvancedPipeline = __webpack_exports__.areaRangeAdvancedPipeline;
8159
+ exports.areaRangeSpecPipeline = __webpack_exports__.areaRangeSpecPipeline;
7241
8160
  exports.areaSpecPipeline = __webpack_exports__.areaSpecPipeline;
7242
8161
  exports.autoFormatter = __webpack_exports__.autoFormatter;
7243
8162
  exports.autoNumFormatter = __webpack_exports__.autoNumFormatter;
@@ -7256,9 +8175,11 @@ exports.columnSpecPipeline = __webpack_exports__.columnSpecPipeline;
7256
8175
  exports.createFormatter = __webpack_exports__.createFormatter;
7257
8176
  exports.createNumFormatter = __webpack_exports__.createNumFormatter;
7258
8177
  exports.darkTheme = __webpack_exports__.darkTheme;
8178
+ exports.dataReshapeFor1D = __webpack_exports__.dataReshapeFor1D;
7259
8179
  exports.dataReshapeFor1D1M = __webpack_exports__.dataReshapeFor1D1M;
7260
8180
  exports.dataReshapeFor1D2M = __webpack_exports__.dataReshapeFor1D2M;
7261
8181
  exports.dataReshapeFor2D1M = __webpack_exports__.dataReshapeFor2D1M;
8182
+ exports.dataReshapeFor2D1M0Name = __webpack_exports__.dataReshapeFor2D1M0Name;
7262
8183
  exports.donutAdvancedPipeline = __webpack_exports__.donutAdvancedPipeline;
7263
8184
  exports.donutSpecPipeline = __webpack_exports__.donutSpecPipeline;
7264
8185
  exports.execPipeline = __webpack_exports__.execPipeline;
@@ -7271,6 +8192,8 @@ exports.findMeasureById = __webpack_exports__.findMeasureById;
7271
8192
  exports.foldMeasures = __webpack_exports__.foldMeasures;
7272
8193
  exports.funnelAdvancedPipeline = __webpack_exports__.funnelAdvancedPipeline;
7273
8194
  exports.funnelSpecPipeline = __webpack_exports__.funnelSpecPipeline;
8195
+ exports.heatmapAdvancedPipeline = __webpack_exports__.heatmapAdvancedPipeline;
8196
+ exports.heatmapSpecPipeline = __webpack_exports__.heatmapSpecPipeline;
7274
8197
  exports.i18n = __webpack_exports__.i18n;
7275
8198
  exports.intl = __webpack_exports__.intl;
7276
8199
  exports.isPivotChart = __webpack_exports__.isPivotChart;
@@ -7286,9 +8209,12 @@ exports.pieSpecPipeline = __webpack_exports__.pieSpecPipeline;
7286
8209
  exports.pivotTableAdvancedPipeline = __webpack_exports__.pivotTableAdvancedPipeline;
7287
8210
  exports.pivotTableSpecPipeline = __webpack_exports__.pivotTableSpecPipeline;
7288
8211
  exports.preorderTraverse = __webpack_exports__.preorderTraverse;
8212
+ exports.radarAdvancedPipeline = __webpack_exports__.radarAdvancedPipeline;
8213
+ exports.radarSpecPipeline = __webpack_exports__.radarSpecPipeline;
7289
8214
  exports.registerAll = __webpack_exports__.registerAll;
7290
8215
  exports.registerArea = __webpack_exports__.registerArea;
7291
8216
  exports.registerAreaPercent = __webpack_exports__.registerAreaPercent;
8217
+ exports.registerAreaRange = __webpack_exports__.registerAreaRange;
7292
8218
  exports.registerBar = __webpack_exports__.registerBar;
7293
8219
  exports.registerBarParallel = __webpack_exports__.registerBarParallel;
7294
8220
  exports.registerBarPercent = __webpack_exports__.registerBarPercent;
@@ -7299,10 +8225,12 @@ exports.registerCustomTheme = __webpack_exports__.registerCustomTheme;
7299
8225
  exports.registerDarkTheme = __webpack_exports__.registerDarkTheme;
7300
8226
  exports.registerDonut = __webpack_exports__.registerDonut;
7301
8227
  exports.registerFunnel = __webpack_exports__.registerFunnel;
8228
+ exports.registerHeatmap = __webpack_exports__.registerHeatmap;
7302
8229
  exports.registerLightTheme = __webpack_exports__.registerLightTheme;
7303
8230
  exports.registerLine = __webpack_exports__.registerLine;
7304
8231
  exports.registerPie = __webpack_exports__.registerPie;
7305
8232
  exports.registerPivotTable = __webpack_exports__.registerPivotTable;
8233
+ exports.registerRadar = __webpack_exports__.registerRadar;
7306
8234
  exports.registerRose = __webpack_exports__.registerRose;
7307
8235
  exports.registerRoseParallel = __webpack_exports__.registerRoseParallel;
7308
8236
  exports.registerScatter = __webpack_exports__.registerScatter;
@@ -7316,6 +8244,8 @@ exports.scatterSpecPipeline = __webpack_exports__.scatterSpecPipeline;
7316
8244
  exports.tableAdvancedPipeline = __webpack_exports__.tableAdvancedPipeline;
7317
8245
  exports.tableSpecPipeline = __webpack_exports__.tableSpecPipeline;
7318
8246
  exports.unfoldDimensions = __webpack_exports__.unfoldDimensions;
8247
+ exports.updateAdvanced = __webpack_exports__.updateAdvanced;
8248
+ exports.updateSpec = __webpack_exports__.updateSpec;
7319
8249
  exports.zAdvancedVSeed = __webpack_exports__.zAdvancedVSeed;
7320
8250
  exports.zAnalysis = __webpack_exports__.zAnalysis;
7321
8251
  exports.zAnnotation = __webpack_exports__.zAnnotation;
@@ -7327,6 +8257,8 @@ exports.zArea = __webpack_exports__.zArea;
7327
8257
  exports.zAreaConfig = __webpack_exports__.zAreaConfig;
7328
8258
  exports.zAreaPercent = __webpack_exports__.zAreaPercent;
7329
8259
  exports.zAreaPercentConfig = __webpack_exports__.zAreaPercentConfig;
8260
+ exports.zAreaRange = __webpack_exports__.zAreaRange;
8261
+ exports.zAreaRangeConfig = __webpack_exports__.zAreaRangeConfig;
7330
8262
  exports.zAreaStyle = __webpack_exports__.zAreaStyle;
7331
8263
  exports.zAxis = __webpack_exports__.zAxis;
7332
8264
  exports.zBackgroundColor = __webpack_exports__.zBackgroundColor;
@@ -7364,6 +8296,8 @@ exports.zEncoding = __webpack_exports__.zEncoding;
7364
8296
  exports.zFoldInfo = __webpack_exports__.zFoldInfo;
7365
8297
  exports.zFunnel = __webpack_exports__.zFunnel;
7366
8298
  exports.zFunnelConfig = __webpack_exports__.zFunnelConfig;
8299
+ exports.zHeatmap = __webpack_exports__.zHeatmap;
8300
+ exports.zHeatmapConfig = __webpack_exports__.zHeatmapConfig;
7367
8301
  exports.zLabel = __webpack_exports__.zLabel;
7368
8302
  exports.zLegend = __webpack_exports__.zLegend;
7369
8303
  exports.zLine = __webpack_exports__.zLine;
@@ -7381,6 +8315,8 @@ exports.zPieConfig = __webpack_exports__.zPieConfig;
7381
8315
  exports.zPivotTable = __webpack_exports__.zPivotTable;
7382
8316
  exports.zPivotTableConfig = __webpack_exports__.zPivotTableConfig;
7383
8317
  exports.zPointStyle = __webpack_exports__.zPointStyle;
8318
+ exports.zRadar = __webpack_exports__.zRadar;
8319
+ exports.zRadarConfig = __webpack_exports__.zRadarConfig;
7384
8320
  exports.zRose = __webpack_exports__.zRose;
7385
8321
  exports.zRoseConfig = __webpack_exports__.zRoseConfig;
7386
8322
  exports.zRoseParallel = __webpack_exports__.zRoseParallel;
@@ -7412,6 +8348,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7412
8348
  "areaAdvancedPipeline",
7413
8349
  "areaPercentAdvancedPipeline",
7414
8350
  "areaPercentSpecPipeline",
8351
+ "areaRangeAdvancedPipeline",
8352
+ "areaRangeSpecPipeline",
7415
8353
  "areaSpecPipeline",
7416
8354
  "autoFormatter",
7417
8355
  "autoNumFormatter",
@@ -7430,9 +8368,11 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7430
8368
  "createFormatter",
7431
8369
  "createNumFormatter",
7432
8370
  "darkTheme",
8371
+ "dataReshapeFor1D",
7433
8372
  "dataReshapeFor1D1M",
7434
8373
  "dataReshapeFor1D2M",
7435
8374
  "dataReshapeFor2D1M",
8375
+ "dataReshapeFor2D1M0Name",
7436
8376
  "donutAdvancedPipeline",
7437
8377
  "donutSpecPipeline",
7438
8378
  "execPipeline",
@@ -7445,6 +8385,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7445
8385
  "foldMeasures",
7446
8386
  "funnelAdvancedPipeline",
7447
8387
  "funnelSpecPipeline",
8388
+ "heatmapAdvancedPipeline",
8389
+ "heatmapSpecPipeline",
7448
8390
  "i18n",
7449
8391
  "intl",
7450
8392
  "isPivotChart",
@@ -7460,9 +8402,12 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7460
8402
  "pivotTableAdvancedPipeline",
7461
8403
  "pivotTableSpecPipeline",
7462
8404
  "preorderTraverse",
8405
+ "radarAdvancedPipeline",
8406
+ "radarSpecPipeline",
7463
8407
  "registerAll",
7464
8408
  "registerArea",
7465
8409
  "registerAreaPercent",
8410
+ "registerAreaRange",
7466
8411
  "registerBar",
7467
8412
  "registerBarParallel",
7468
8413
  "registerBarPercent",
@@ -7473,10 +8418,12 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7473
8418
  "registerDarkTheme",
7474
8419
  "registerDonut",
7475
8420
  "registerFunnel",
8421
+ "registerHeatmap",
7476
8422
  "registerLightTheme",
7477
8423
  "registerLine",
7478
8424
  "registerPie",
7479
8425
  "registerPivotTable",
8426
+ "registerRadar",
7480
8427
  "registerRose",
7481
8428
  "registerRoseParallel",
7482
8429
  "registerScatter",
@@ -7490,6 +8437,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7490
8437
  "tableAdvancedPipeline",
7491
8438
  "tableSpecPipeline",
7492
8439
  "unfoldDimensions",
8440
+ "updateAdvanced",
8441
+ "updateSpec",
7493
8442
  "zAdvancedVSeed",
7494
8443
  "zAnalysis",
7495
8444
  "zAnnotation",
@@ -7501,6 +8450,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7501
8450
  "zAreaConfig",
7502
8451
  "zAreaPercent",
7503
8452
  "zAreaPercentConfig",
8453
+ "zAreaRange",
8454
+ "zAreaRangeConfig",
7504
8455
  "zAreaStyle",
7505
8456
  "zAxis",
7506
8457
  "zBackgroundColor",
@@ -7538,6 +8489,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7538
8489
  "zFoldInfo",
7539
8490
  "zFunnel",
7540
8491
  "zFunnelConfig",
8492
+ "zHeatmap",
8493
+ "zHeatmapConfig",
7541
8494
  "zLabel",
7542
8495
  "zLegend",
7543
8496
  "zLine",
@@ -7555,6 +8508,8 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
7555
8508
  "zPivotTable",
7556
8509
  "zPivotTableConfig",
7557
8510
  "zPointStyle",
8511
+ "zRadar",
8512
+ "zRadarConfig",
7558
8513
  "zRose",
7559
8514
  "zRoseConfig",
7560
8515
  "zRoseParallel",