@visactor/vseed 0.0.7 → 0.0.9
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 +5998 -109
- package/dist/dataReshape/constant.d.ts +1 -0
- package/dist/dataReshape/index.d.ts +1 -0
- package/dist/dataSelector/index.d.ts +1 -0
- package/dist/dataSelector/selector.d.ts +7 -0
- package/dist/index.cjs +1468 -241
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1427 -242
- package/dist/index.js.map +1 -1
- package/dist/pipeline/advanced/pipes/config/config.d.ts +11 -0
- package/dist/pipeline/advanced/pipes/config/index.d.ts +1 -0
- package/dist/pipeline/advanced/pipes/index.d.ts +3 -1
- package/dist/pipeline/advanced/pipes/markStyle/index.d.ts +1 -0
- package/dist/pipeline/advanced/pipes/{encoding/encodingXY copy.d.ts → markStyle/markStyle.d.ts} +1 -1
- package/dist/pipeline/spec/pipes/index.d.ts +1 -0
- package/dist/pipeline/spec/pipes/legend/{pivotLegend.d.ts → discreteLegend.d.ts} +1 -1
- package/dist/pipeline/spec/pipes/legend/index.d.ts +2 -2
- package/dist/pipeline/spec/pipes/legend/pivotDiscreteLegend.d.ts +2 -0
- package/dist/pipeline/spec/pipes/{init/line copy.d.ts → markStyle/barStyle.d.ts} +1 -1
- package/dist/pipeline/spec/pipes/markStyle/index.d.ts +1 -0
- package/dist/pipeline/spec/pipes/stack/index.d.ts +1 -1
- package/dist/pipeline/spec/pipes/stack/stack.d.ts +2 -2
- package/dist/types/advancedVSeed.d.ts +1567 -0
- package/dist/types/chartType/area/area.d.ts +11 -1
- package/dist/types/chartType/areaPercent/areaPercent.d.ts +11 -1
- package/dist/types/chartType/bar/bar.d.ts +20 -1
- package/dist/types/chartType/barParallel/barParallel.d.ts +20 -1
- package/dist/types/chartType/barPercent/barPercent.d.ts +20 -1
- package/dist/types/chartType/column/column.d.ts +20 -1
- package/dist/types/chartType/columnParallel/columnParallel.d.ts +20 -1
- package/dist/types/chartType/columnPercent/columnPercent.d.ts +20 -1
- package/dist/types/chartType/donut/donut.d.ts +1 -1
- package/dist/types/chartType/dualAxis/dualAxis.d.ts +1 -1
- package/dist/types/chartType/line/line.d.ts +11 -1
- package/dist/types/chartType/pie/pie.d.ts +4 -4
- package/dist/types/chartType/pivotTable/pivotTable.d.ts +1 -1
- package/dist/types/chartType/rose/rose.d.ts +4 -4
- package/dist/types/chartType/table/table.d.ts +1 -1
- package/dist/types/dataSelector/index.d.ts +1 -0
- package/dist/types/dataSelector/selector.d.ts +34 -0
- package/dist/types/properties/baseConfig/baseConfig.d.ts +102 -0
- package/dist/types/properties/baseConfig/legend.d.ts +101 -4
- package/dist/types/properties/chartType/index.d.ts +2 -2
- package/dist/types/properties/config/axis.d.ts +257 -0
- package/dist/types/properties/config/bandAxis.d.ts +82 -0
- package/dist/types/properties/config/config.d.ts +721 -0
- package/dist/types/properties/config/index.d.ts +4 -0
- package/dist/types/properties/config/linearAxis.d.ts +80 -0
- package/dist/types/properties/index.d.ts +2 -0
- package/dist/types/properties/markStyle/barStyle.d.ts +114 -0
- package/dist/types/properties/markStyle/index.d.ts +2 -0
- package/dist/types/properties/markStyle/markStyle.d.ts +29 -0
- package/dist/types/properties/theme/customTheme.d.ts +1540 -0
- package/package.json +1 -1
- package/dist/pipeline/advanced/pipeline/line copy.d.ts +0 -2
- package/dist/pipeline/spec/pipes/legend/legend.d.ts +0 -2
- package/dist/pipeline/spec/pipes/pivotChart/pivotGridStyle copy.d.ts +0 -2
- package/dist/pipeline/spec/pipes/pivotChart/pivotRowDimensions copy.d.ts +0 -2
- /package/dist/types/properties/chartType/{zChartType.d.ts → chartType.d.ts} +0 -0
package/dist/index.cjs
CHANGED
@@ -36,14 +36,22 @@ __webpack_require__.d(__webpack_exports__, {
|
|
36
36
|
zMeasureGroup: ()=>zMeasureGroup,
|
37
37
|
zUnfoldInfo: ()=>zUnfoldInfo,
|
38
38
|
zMeasures: ()=>zMeasures,
|
39
|
+
FoldMeasureName: ()=>FoldMeasureName,
|
39
40
|
darkTheme: ()=>darkTheme,
|
40
41
|
columnPercentAdvancedPipeline: ()=>columnPercentAdvancedPipeline,
|
42
|
+
zAxis: ()=>zAxis,
|
41
43
|
isVTable: ()=>isVTable,
|
42
44
|
columnSpecPipeline: ()=>columnSpecPipeline,
|
43
|
-
|
45
|
+
UnfoldDimensionGroup: ()=>UnfoldDimensionGroup,
|
44
46
|
zDatasetReshapeInfo: ()=>zDatasetReshapeInfo,
|
45
|
-
|
47
|
+
zFoldInfo: ()=>zFoldInfo,
|
48
|
+
zYBandAxis: ()=>zYBandAxis,
|
49
|
+
ORIGINAL_DATA: ()=>ORIGINAL_DATA,
|
50
|
+
zYLinearAxis: ()=>zYLinearAxis,
|
51
|
+
zMarkStyle: ()=>zMarkStyle,
|
52
|
+
Separator: ()=>Separator,
|
46
53
|
columnAdvancedPipeline: ()=>columnAdvancedPipeline,
|
54
|
+
columnParallelSpecPipeline: ()=>columnParallelSpecPipeline,
|
47
55
|
zLabel: ()=>zLabel,
|
48
56
|
registerColumn: ()=>registerColumn,
|
49
57
|
zDimension: ()=>zDimension,
|
@@ -51,6 +59,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
51
59
|
registerColumnParallel: ()=>registerColumnParallel,
|
52
60
|
isPivotChart: ()=>isPivotChart,
|
53
61
|
zCustomTheme: ()=>zCustomTheme,
|
62
|
+
zXBandAxis: ()=>zXBandAxis,
|
54
63
|
dataReshapeFor1D1M: ()=>dataReshapeFor1D1M,
|
55
64
|
registerArea: ()=>registerArea,
|
56
65
|
zDataset: ()=>zDataset,
|
@@ -61,10 +70,14 @@ __webpack_require__.d(__webpack_exports__, {
|
|
61
70
|
zMeasure: ()=>zMeasure,
|
62
71
|
zDimensions: ()=>zDimensions,
|
63
72
|
zLegend: ()=>zLegend,
|
73
|
+
FoldMeasureId: ()=>FoldMeasureId,
|
64
74
|
zTheme: ()=>zTheme,
|
65
75
|
zEncoding: ()=>zEncoding,
|
66
76
|
registerAreaPercent: ()=>registerAreaPercent,
|
77
|
+
zXLinearAxis: ()=>zXLinearAxis,
|
78
|
+
zConfig: ()=>zConfig,
|
67
79
|
zDatum: ()=>zDatum,
|
80
|
+
zBarStyle: ()=>zBarStyle,
|
68
81
|
barAdvancedPipeline: ()=>barAdvancedPipeline,
|
69
82
|
zCustomThemeConfig: ()=>zCustomThemeConfig,
|
70
83
|
columnParallelAdvancedPipeline: ()=>columnParallelAdvancedPipeline,
|
@@ -73,15 +86,16 @@ __webpack_require__.d(__webpack_exports__, {
|
|
73
86
|
foldMeasures: ()=>foldMeasures,
|
74
87
|
dataReshapeFor2D1M: ()=>dataReshapeFor2D1M,
|
75
88
|
registerLightTheme: ()=>registerLightTheme,
|
76
|
-
registerDarkTheme: ()=>registerDarkTheme,
|
77
89
|
zChartType: ()=>zChartType,
|
90
|
+
registerDarkTheme: ()=>registerDarkTheme,
|
78
91
|
barParallelAdvancedPipeline: ()=>barParallelAdvancedPipeline,
|
92
|
+
FoldMeasureValue: ()=>FoldMeasureValue,
|
79
93
|
barPercentSpecPipeline: ()=>barPercentSpecPipeline,
|
80
94
|
lineAdvancedPipeline: ()=>lineAdvancedPipeline,
|
81
95
|
pieSpecPipeline: ()=>pieSpecPipeline,
|
82
|
-
zTooltip: ()=>zTooltip,
|
83
96
|
barSpecPipeline: ()=>barSpecPipeline,
|
84
97
|
lineSpecPipeline: ()=>lineSpecPipeline,
|
98
|
+
zTooltip: ()=>zTooltip,
|
85
99
|
zBaseConfig: ()=>zBaseConfig,
|
86
100
|
unfoldDimensions: ()=>unfoldDimensions,
|
87
101
|
areaAdvancedPipeline: ()=>areaAdvancedPipeline,
|
@@ -90,11 +104,131 @@ __webpack_require__.d(__webpack_exports__, {
|
|
90
104
|
barParallelSpecPipeline: ()=>barParallelSpecPipeline,
|
91
105
|
registerAll: ()=>all_registerAll
|
92
106
|
});
|
107
|
+
const initAdvancedVSeed = (advancedVSeed, context)=>{
|
108
|
+
const { vseed } = context;
|
109
|
+
const { chartType = 'table' } = vseed;
|
110
|
+
return {
|
111
|
+
...advancedVSeed,
|
112
|
+
chartType
|
113
|
+
};
|
114
|
+
};
|
115
|
+
const isVTable = (chartType)=>[
|
116
|
+
'table',
|
117
|
+
'pivotTable'
|
118
|
+
].includes(chartType);
|
119
|
+
const isVChart = (chartType)=>!isVTable(chartType);
|
120
|
+
const isPivotChart = (vseed)=>{
|
121
|
+
const { measures, dimensions } = vseed;
|
122
|
+
const hasRowOrColumnDimension = dimensions && dimensions.some((dimension)=>'rowDimension' === dimension.location || 'columnDimension' === dimension.location);
|
123
|
+
const hasMeasureGroup = measures && measures.find((measure)=>measure && measure.children);
|
124
|
+
return hasRowOrColumnDimension || hasMeasureGroup;
|
125
|
+
};
|
126
|
+
const autoMeasures = (advancedVSeed, context)=>{
|
127
|
+
const result = {
|
128
|
+
...advancedVSeed
|
129
|
+
};
|
130
|
+
const { vseed } = context;
|
131
|
+
const { measures, dataset } = vseed;
|
132
|
+
if (!dataset) throw new Error('dataset is required');
|
133
|
+
if (0 === dataset.length) return result;
|
134
|
+
if (isPivotChart(vseed)) return autoMeasureGroup(advancedVSeed, context);
|
135
|
+
if (measures) {
|
136
|
+
result.measures = measures;
|
137
|
+
return result;
|
138
|
+
}
|
139
|
+
const top100dataset = dataset.slice(0, 100);
|
140
|
+
const sample = top100dataset.reduce((prev, cur)=>({
|
141
|
+
...prev,
|
142
|
+
...cur
|
143
|
+
}), {});
|
144
|
+
result.measures = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'number' == typeof item[key]) && ![
|
145
|
+
'',
|
146
|
+
null,
|
147
|
+
void 0
|
148
|
+
].includes(key)).map((measure)=>({
|
149
|
+
id: measure,
|
150
|
+
alias: measure
|
151
|
+
}));
|
152
|
+
return result;
|
153
|
+
};
|
154
|
+
const autoMeasureGroup = (advancedVSeed, context)=>{
|
155
|
+
const { vseed } = context;
|
156
|
+
const { measures } = vseed;
|
157
|
+
const hasMeasureGroup = measures?.some((measure)=>measure.children);
|
158
|
+
if (!measures) return advancedVSeed;
|
159
|
+
if (!hasMeasureGroup) {
|
160
|
+
const newMeasures = [
|
161
|
+
{
|
162
|
+
id: 'measureGroup',
|
163
|
+
alias: 'measureGroup',
|
164
|
+
children: measures
|
165
|
+
}
|
166
|
+
];
|
167
|
+
return {
|
168
|
+
...advancedVSeed,
|
169
|
+
measures: newMeasures
|
170
|
+
};
|
171
|
+
}
|
172
|
+
let currentGroup = createEmptyMeasureGroup();
|
173
|
+
const measureGroups = [];
|
174
|
+
for (const measure of measures)if ('children' in measure) {
|
175
|
+
if (currentGroup.children?.length) {
|
176
|
+
currentGroup.id = currentGroup.children.map((item)=>item.id).join('-');
|
177
|
+
currentGroup.alias = currentGroup.children.map((item)=>item.alias).join('-');
|
178
|
+
measureGroups.push(currentGroup);
|
179
|
+
currentGroup = createEmptyMeasureGroup();
|
180
|
+
}
|
181
|
+
measureGroups.push(measure);
|
182
|
+
} else currentGroup.children?.push(measure);
|
183
|
+
if (currentGroup.children?.length) {
|
184
|
+
currentGroup.id = currentGroup.children.map((item)=>item.id).join('-');
|
185
|
+
currentGroup.alias = currentGroup.children.map((item)=>item.alias).join('-');
|
186
|
+
measureGroups.push(currentGroup);
|
187
|
+
currentGroup = createEmptyMeasureGroup();
|
188
|
+
}
|
189
|
+
advancedVSeed.measures = measureGroups;
|
190
|
+
return advancedVSeed;
|
191
|
+
};
|
192
|
+
const createEmptyMeasureGroup = ()=>({
|
193
|
+
id: '',
|
194
|
+
alias: '',
|
195
|
+
children: []
|
196
|
+
});
|
197
|
+
const autoDimensions = (advancedVSeed, context)=>{
|
198
|
+
const result = {
|
199
|
+
...advancedVSeed
|
200
|
+
};
|
201
|
+
const { vseed } = context;
|
202
|
+
const { dimensions, dataset } = vseed;
|
203
|
+
const { measures = [] } = advancedVSeed;
|
204
|
+
if (!dataset) throw new Error('dataset is required');
|
205
|
+
if (0 === dataset.length) return result;
|
206
|
+
if (dimensions) {
|
207
|
+
result.dimensions = dimensions;
|
208
|
+
return result;
|
209
|
+
}
|
210
|
+
const top100dataset = dataset.slice(0, 100);
|
211
|
+
const sample = top100dataset.reduce((prev, cur)=>({
|
212
|
+
...prev,
|
213
|
+
...cur
|
214
|
+
}), {});
|
215
|
+
result.dimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
216
|
+
'',
|
217
|
+
null,
|
218
|
+
void 0
|
219
|
+
].includes(key) && !measures.some((measure)=>measure.id === key)).map((dim)=>({
|
220
|
+
id: dim,
|
221
|
+
alias: dim,
|
222
|
+
location: 'dimension'
|
223
|
+
}));
|
224
|
+
return result;
|
225
|
+
};
|
93
226
|
const FoldMeasureName = '__MeaName__';
|
94
227
|
const FoldMeasureValue = '__MeaValue__';
|
95
228
|
const FoldMeasureId = '__MeaId__';
|
96
229
|
const UnfoldDimensionGroup = '__DimGroup__';
|
97
230
|
const Separator = '-';
|
231
|
+
const ORIGINAL_DATA = '__OriginalData__';
|
98
232
|
const external_remeda_namespaceObject = require("remeda");
|
99
233
|
const unfoldDimensions = (dataset, dimensions, measures, unfoldStartIndex = 0, foldGroupName = UnfoldDimensionGroup, dimensionsSeparator = Separator)=>{
|
100
234
|
if (unfoldStartIndex < 0 || unfoldStartIndex >= dimensions.length) throw new Error('unfoldStartIndex is out of range');
|
@@ -133,12 +267,15 @@ const foldMeasures = (dataset, measures, measureId = FoldMeasureId, measureName
|
|
133
267
|
};
|
134
268
|
const result = new Array(dataset.length * measures.length);
|
135
269
|
let index = 0;
|
270
|
+
const ids = measures.map((d)=>d.id);
|
136
271
|
for(let i = 0; i < dataset.length; i++)for(let j = 0; j < measures.length; j++){
|
137
|
-
const datum = {
|
272
|
+
const datum = (0, external_remeda_namespaceObject.omit)({
|
138
273
|
...dataset[i]
|
139
|
-
};
|
274
|
+
}, ids);
|
275
|
+
datum[ORIGINAL_DATA] = dataset[i];
|
140
276
|
const measure = measures[j];
|
141
277
|
const { id, alias } = measure;
|
278
|
+
datum[id] = dataset[i][id];
|
142
279
|
datum[measureId] = id;
|
143
280
|
datum[measureName] = alias;
|
144
281
|
datum[measureValue] = dataset[i][id];
|
@@ -374,10 +511,10 @@ const pivotReshapeTo2D1M = (advancedVSeed, context)=>{
|
|
374
511
|
if (!measures) return;
|
375
512
|
const groupId = measureGroup.id;
|
376
513
|
const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeFor2D1M(dataset, commonDimensions, measures, {
|
377
|
-
foldMeasureId: FoldMeasureId
|
378
|
-
foldMeasureName: FoldMeasureName
|
514
|
+
foldMeasureId: FoldMeasureId,
|
515
|
+
foldMeasureName: FoldMeasureName,
|
379
516
|
foldMeasureValue: FoldMeasureValue + groupId,
|
380
|
-
unfoldDimensionGroup: UnfoldDimensionGroup
|
517
|
+
unfoldDimensionGroup: UnfoldDimensionGroup
|
381
518
|
});
|
382
519
|
const reshapeInfo = {
|
383
520
|
id: groupId,
|
@@ -401,15 +538,16 @@ const encodingXY = (advancedVSeed)=>{
|
|
401
538
|
if (!datasetReshapeInfo || !dimensions) return result;
|
402
539
|
const encoding = datasetReshapeInfo.reduce((prev, cur)=>{
|
403
540
|
const { foldInfo, unfoldInfo } = cur;
|
404
|
-
const isSingleDimension =
|
541
|
+
const isSingleDimension = 1 === dimensions.length;
|
542
|
+
const isZeroDimension = 0 === dimensions.length;
|
405
543
|
const x = [
|
406
|
-
|
544
|
+
isZeroDimension ? foldInfo.measureName : dimensions[0].id
|
407
545
|
];
|
408
546
|
const y = [
|
409
547
|
foldInfo.measureValue
|
410
548
|
];
|
411
549
|
const group = [
|
412
|
-
isSingleDimension ? foldInfo.measureName : unfoldInfo.groupName
|
550
|
+
isSingleDimension || isZeroDimension ? foldInfo.measureName : unfoldInfo.groupName
|
413
551
|
];
|
414
552
|
const color = [
|
415
553
|
foldInfo.measureName
|
@@ -437,15 +575,16 @@ const encodingYX = (advancedVSeed)=>{
|
|
437
575
|
if (!datasetReshapeInfo || !dimensions) return result;
|
438
576
|
const encoding = datasetReshapeInfo.reduce((prev, cur)=>{
|
439
577
|
const { foldInfo, unfoldInfo } = cur;
|
440
|
-
const
|
578
|
+
const isZeroDimension = 0 === dimensions.length;
|
579
|
+
const isSingleDimension = 1 === dimensions.length;
|
441
580
|
const y = [
|
442
|
-
|
581
|
+
isZeroDimension ? foldInfo.measureName : dimensions[0].id
|
443
582
|
];
|
444
583
|
const x = [
|
445
584
|
foldInfo.measureValue
|
446
585
|
];
|
447
586
|
const group = [
|
448
|
-
isSingleDimension ? foldInfo.measureName : unfoldInfo.groupName
|
587
|
+
isSingleDimension || isZeroDimension ? foldInfo.measureName : unfoldInfo.groupName
|
449
588
|
];
|
450
589
|
const color = [
|
451
590
|
foldInfo.measureName
|
@@ -500,158 +639,89 @@ const encodingPolar = (advancedVSeed)=>{
|
|
500
639
|
encoding
|
501
640
|
};
|
502
641
|
};
|
503
|
-
const
|
642
|
+
const vchartBaseConfig = (advancedVSeed, context)=>{
|
504
643
|
const { vseed } = context;
|
505
|
-
const { chartType = 'table' } = vseed;
|
506
|
-
return {
|
507
|
-
...advancedVSeed,
|
508
|
-
chartType
|
509
|
-
};
|
510
|
-
};
|
511
|
-
const isVTable = (chartType)=>[
|
512
|
-
'table',
|
513
|
-
'pivotTable'
|
514
|
-
].includes(chartType);
|
515
|
-
const isVChart = (chartType)=>!isVTable(chartType);
|
516
|
-
const isPivotChart = (vseed)=>{
|
517
|
-
const { measures, dimensions } = vseed;
|
518
|
-
const hasRowOrColumnDimension = dimensions && dimensions.some((dimension)=>'rowDimension' === dimension.location || 'columnDimension' === dimension.location);
|
519
|
-
const hasMeasureGroup = measures && measures.find((measure)=>measure && measure.children);
|
520
|
-
return hasRowOrColumnDimension || hasMeasureGroup;
|
521
|
-
};
|
522
|
-
const autoMeasures = (advancedVSeed, context)=>{
|
523
644
|
const result = {
|
524
645
|
...advancedVSeed
|
525
646
|
};
|
526
|
-
const
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
...cur
|
539
|
-
}), {});
|
540
|
-
result.measures = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'number' == typeof item[key]) && ![
|
541
|
-
'',
|
542
|
-
null,
|
543
|
-
void 0
|
544
|
-
].includes(key)).map((measure)=>({
|
545
|
-
id: measure,
|
546
|
-
alias: measure
|
547
|
-
}));
|
647
|
+
const config = (0, external_remeda_namespaceObject.pick)(vseed, [
|
648
|
+
'backgroundColor',
|
649
|
+
'color',
|
650
|
+
'label',
|
651
|
+
'legend',
|
652
|
+
'tooltip'
|
653
|
+
]);
|
654
|
+
result.baseConfig = {
|
655
|
+
vchart: {
|
656
|
+
...config
|
657
|
+
}
|
658
|
+
};
|
548
659
|
return result;
|
549
660
|
};
|
550
|
-
const
|
661
|
+
const lineConfig = (advancedVSeed, context)=>{
|
551
662
|
const { vseed } = context;
|
552
|
-
const {
|
553
|
-
const hasMeasureGroup = measures?.some((measure)=>measure.children);
|
554
|
-
if (!measures) return advancedVSeed;
|
555
|
-
if (!hasMeasureGroup) {
|
556
|
-
const newMeasures = [
|
557
|
-
{
|
558
|
-
id: 'measureGroup',
|
559
|
-
alias: 'measureGroup',
|
560
|
-
children: measures
|
561
|
-
}
|
562
|
-
];
|
563
|
-
return {
|
564
|
-
...advancedVSeed,
|
565
|
-
measures: newMeasures
|
566
|
-
};
|
567
|
-
}
|
568
|
-
let currentGroup = createEmptyMeasureGroup();
|
569
|
-
const measureGroups = [];
|
570
|
-
for (const measure of measures)if ('children' in measure) {
|
571
|
-
if (currentGroup.children?.length) {
|
572
|
-
currentGroup.id = currentGroup.children.map((item)=>item.id).join('-');
|
573
|
-
currentGroup.alias = currentGroup.children.map((item)=>item.alias).join('-');
|
574
|
-
measureGroups.push(currentGroup);
|
575
|
-
currentGroup = createEmptyMeasureGroup();
|
576
|
-
}
|
577
|
-
measureGroups.push(measure);
|
578
|
-
} else currentGroup.children?.push(measure);
|
579
|
-
if (currentGroup.children?.length) {
|
580
|
-
currentGroup.id = currentGroup.children.map((item)=>item.id).join('-');
|
581
|
-
currentGroup.alias = currentGroup.children.map((item)=>item.alias).join('-');
|
582
|
-
measureGroups.push(currentGroup);
|
583
|
-
currentGroup = createEmptyMeasureGroup();
|
584
|
-
}
|
585
|
-
advancedVSeed.measures = measureGroups;
|
586
|
-
return advancedVSeed;
|
587
|
-
};
|
588
|
-
const createEmptyMeasureGroup = ()=>({
|
589
|
-
id: '',
|
590
|
-
alias: '',
|
591
|
-
children: []
|
592
|
-
});
|
593
|
-
const autoDimensions = (advancedVSeed, context)=>{
|
663
|
+
const { chartType } = vseed;
|
594
664
|
const result = {
|
595
665
|
...advancedVSeed
|
596
666
|
};
|
597
|
-
const
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
const sample = top100dataset.reduce((prev, cur)=>({
|
608
|
-
...prev,
|
609
|
-
...cur
|
610
|
-
}), {});
|
611
|
-
result.dimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
612
|
-
'',
|
613
|
-
null,
|
614
|
-
void 0
|
615
|
-
].includes(key) && !measures.some((measure)=>measure.id === key)).map((dim)=>({
|
616
|
-
id: dim,
|
617
|
-
alias: dim,
|
618
|
-
location: 'dimension'
|
619
|
-
}));
|
667
|
+
const config = (0, external_remeda_namespaceObject.pick)(vseed, [
|
668
|
+
'xAxis',
|
669
|
+
'yAxis'
|
670
|
+
]);
|
671
|
+
result.config = {
|
672
|
+
...result.config || {},
|
673
|
+
[chartType]: {
|
674
|
+
...config
|
675
|
+
}
|
676
|
+
};
|
620
677
|
return result;
|
621
678
|
};
|
622
|
-
const
|
679
|
+
const pieConfig = (advancedVSeed, context)=>{
|
623
680
|
const { vseed } = context;
|
681
|
+
const { chartType } = vseed;
|
624
682
|
const result = {
|
625
683
|
...advancedVSeed
|
626
684
|
};
|
627
|
-
const config = (0, external_remeda_namespaceObject.pick)(vseed, [
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
'legend',
|
632
|
-
'tooltip'
|
633
|
-
]);
|
634
|
-
result.baseConfig = {
|
635
|
-
vchart: {
|
685
|
+
const config = (0, external_remeda_namespaceObject.pick)(vseed, []);
|
686
|
+
result.config = {
|
687
|
+
...result.config || {},
|
688
|
+
[chartType]: {
|
636
689
|
...config
|
637
690
|
}
|
638
691
|
};
|
639
692
|
return result;
|
640
693
|
};
|
694
|
+
const barConfig = lineConfig;
|
695
|
+
const barParallelConfig = lineConfig;
|
696
|
+
const barPercentConfig = lineConfig;
|
697
|
+
const columnConfig = lineConfig;
|
698
|
+
const columnParallelConfig = lineConfig;
|
699
|
+
const columnPercentConfig = lineConfig;
|
700
|
+
const areaConfig = lineConfig;
|
701
|
+
const areaPercentConfig = lineConfig;
|
641
702
|
const vchartTheme = (advancedVSeed, context)=>{
|
642
703
|
const { customTheme, vseed } = context;
|
643
|
-
const { theme = 'light' } = vseed;
|
704
|
+
const { theme = 'light', chartType } = vseed;
|
644
705
|
const result = {
|
645
706
|
...advancedVSeed
|
646
707
|
};
|
647
708
|
if (!customTheme || !customTheme[theme]) return result;
|
648
|
-
const
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
709
|
+
const baseConfigVChartTheme = customTheme?.[theme].baseConfig?.vchart;
|
710
|
+
if (baseConfigVChartTheme) {
|
711
|
+
const baseConfigVChart = result.baseConfig?.vchart || {};
|
712
|
+
const mergedConfig = (0, external_remeda_namespaceObject.mergeDeep)(baseConfigVChartTheme, (0, external_remeda_namespaceObject.clone)(baseConfigVChart));
|
713
|
+
result.baseConfig = {
|
714
|
+
vchart: mergedConfig
|
715
|
+
};
|
716
|
+
}
|
717
|
+
const chartConfigTheme = customTheme?.[theme].config?.[chartType];
|
718
|
+
if (chartConfigTheme) {
|
719
|
+
const chartConfig = result.config?.[chartType] || {};
|
720
|
+
const mergedConfig = (0, external_remeda_namespaceObject.mergeDeep)(chartConfigTheme, (0, external_remeda_namespaceObject.clone)(chartConfig));
|
721
|
+
result.config = {
|
722
|
+
[chartType]: mergedConfig
|
723
|
+
};
|
724
|
+
}
|
655
725
|
return result;
|
656
726
|
};
|
657
727
|
const execPipeline = (pipeline, context, initialValue = {})=>{
|
@@ -664,6 +734,16 @@ const pivotAdapter = (pipeline, pivotPipeline)=>(advancedVSeed, context)=>{
|
|
664
734
|
if (usePivotChart) return execPipeline(pivotPipeline, context, advancedVSeed);
|
665
735
|
return execPipeline(pipeline, context, advancedVSeed);
|
666
736
|
};
|
737
|
+
const markStyle_markStyle = (advancedVSeed, context)=>{
|
738
|
+
const { vseed } = context;
|
739
|
+
const markStyle = (0, external_remeda_namespaceObject.pick)(vseed, [
|
740
|
+
'barStyle'
|
741
|
+
]);
|
742
|
+
return {
|
743
|
+
...advancedVSeed,
|
744
|
+
markStyle
|
745
|
+
};
|
746
|
+
};
|
667
747
|
const lineAdvancedPipeline = [
|
668
748
|
initAdvancedVSeed,
|
669
749
|
autoMeasures,
|
@@ -675,6 +755,7 @@ const lineAdvancedPipeline = [
|
|
675
755
|
]),
|
676
756
|
encodingXY,
|
677
757
|
vchartBaseConfig,
|
758
|
+
lineConfig,
|
678
759
|
vchartTheme
|
679
760
|
];
|
680
761
|
const barAdvancedPipeline = [
|
@@ -687,8 +768,10 @@ const barAdvancedPipeline = [
|
|
687
768
|
pivotReshapeTo2D1M
|
688
769
|
]),
|
689
770
|
encodingYX,
|
771
|
+
barConfig,
|
690
772
|
vchartBaseConfig,
|
691
|
-
vchartTheme
|
773
|
+
vchartTheme,
|
774
|
+
markStyle_markStyle
|
692
775
|
];
|
693
776
|
const barParallelAdvancedPipeline = [
|
694
777
|
initAdvancedVSeed,
|
@@ -700,8 +783,10 @@ const barParallelAdvancedPipeline = [
|
|
700
783
|
pivotReshapeTo2D1M
|
701
784
|
]),
|
702
785
|
encodingYX,
|
786
|
+
barParallelConfig,
|
703
787
|
vchartBaseConfig,
|
704
|
-
vchartTheme
|
788
|
+
vchartTheme,
|
789
|
+
markStyle_markStyle
|
705
790
|
];
|
706
791
|
const barPercentAdvancedPipeline = [
|
707
792
|
initAdvancedVSeed,
|
@@ -713,8 +798,10 @@ const barPercentAdvancedPipeline = [
|
|
713
798
|
pivotReshapeTo2D1M
|
714
799
|
]),
|
715
800
|
encodingYX,
|
801
|
+
barPercentConfig,
|
716
802
|
vchartBaseConfig,
|
717
|
-
vchartTheme
|
803
|
+
vchartTheme,
|
804
|
+
markStyle_markStyle
|
718
805
|
];
|
719
806
|
const columnAdvancedPipeline = [
|
720
807
|
initAdvancedVSeed,
|
@@ -726,8 +813,10 @@ const columnAdvancedPipeline = [
|
|
726
813
|
pivotReshapeTo2D1M
|
727
814
|
]),
|
728
815
|
encodingXY,
|
816
|
+
columnConfig,
|
729
817
|
vchartBaseConfig,
|
730
|
-
vchartTheme
|
818
|
+
vchartTheme,
|
819
|
+
markStyle_markStyle
|
731
820
|
];
|
732
821
|
const columnParallelAdvancedPipeline = [
|
733
822
|
initAdvancedVSeed,
|
@@ -739,8 +828,10 @@ const columnParallelAdvancedPipeline = [
|
|
739
828
|
pivotReshapeTo2D1M
|
740
829
|
]),
|
741
830
|
encodingXY,
|
831
|
+
columnParallelConfig,
|
742
832
|
vchartBaseConfig,
|
743
|
-
vchartTheme
|
833
|
+
vchartTheme,
|
834
|
+
markStyle_markStyle
|
744
835
|
];
|
745
836
|
const columnPercentAdvancedPipeline = [
|
746
837
|
initAdvancedVSeed,
|
@@ -752,8 +843,10 @@ const columnPercentAdvancedPipeline = [
|
|
752
843
|
pivotReshapeTo2D1M
|
753
844
|
]),
|
754
845
|
encodingXY,
|
846
|
+
columnPercentConfig,
|
755
847
|
vchartBaseConfig,
|
756
|
-
vchartTheme
|
848
|
+
vchartTheme,
|
849
|
+
markStyle_markStyle
|
757
850
|
];
|
758
851
|
const areaAdvancedPipeline = [
|
759
852
|
initAdvancedVSeed,
|
@@ -765,6 +858,7 @@ const areaAdvancedPipeline = [
|
|
765
858
|
pivotReshapeTo2D1M
|
766
859
|
]),
|
767
860
|
encodingXY,
|
861
|
+
areaConfig,
|
768
862
|
vchartBaseConfig,
|
769
863
|
vchartTheme
|
770
864
|
];
|
@@ -778,6 +872,7 @@ const areaPercentAdvancedPipeline = [
|
|
778
872
|
pivotReshapeTo2D1M
|
779
873
|
]),
|
780
874
|
encodingXY,
|
875
|
+
areaPercentConfig,
|
781
876
|
vchartBaseConfig,
|
782
877
|
vchartTheme
|
783
878
|
];
|
@@ -791,6 +886,7 @@ const pieAdvancedPipeline = [
|
|
791
886
|
pivotReshapeTo1D1M
|
792
887
|
]),
|
793
888
|
encodingPolar,
|
889
|
+
pieConfig,
|
794
890
|
vchartBaseConfig,
|
795
891
|
vchartTheme
|
796
892
|
];
|
@@ -838,6 +934,11 @@ const initColumn = (spec, context)=>{
|
|
838
934
|
result.yField = encoding[0].y[0];
|
839
935
|
result.seriesField = encoding[0].group[0];
|
840
936
|
result.padding = 0;
|
937
|
+
result.region = [
|
938
|
+
{
|
939
|
+
clip: true
|
940
|
+
}
|
941
|
+
];
|
841
942
|
return result;
|
842
943
|
};
|
843
944
|
const initBar = (spec, context)=>{
|
@@ -853,6 +954,11 @@ const initBar = (spec, context)=>{
|
|
853
954
|
result.xField = encoding[0].x?.[0];
|
854
955
|
result.seriesField = encoding[0].group?.[0];
|
855
956
|
result.padding = 0;
|
957
|
+
result.region = [
|
958
|
+
{
|
959
|
+
clip: true
|
960
|
+
}
|
961
|
+
];
|
856
962
|
return result;
|
857
963
|
};
|
858
964
|
const initBarParallel = (spec, context)=>{
|
@@ -872,6 +978,11 @@ const initBarParallel = (spec, context)=>{
|
|
872
978
|
result.xField = encoding[0].x[0];
|
873
979
|
result.seriesField = encoding[0].group[0];
|
874
980
|
result.padding = 0;
|
981
|
+
result.region = [
|
982
|
+
{
|
983
|
+
clip: true
|
984
|
+
}
|
985
|
+
];
|
875
986
|
return result;
|
876
987
|
};
|
877
988
|
const initArea = (spec, context)=>{
|
@@ -887,6 +998,11 @@ const initArea = (spec, context)=>{
|
|
887
998
|
result.yField = encoding[0].y[0];
|
888
999
|
result.seriesField = encoding[0].group[0];
|
889
1000
|
result.padding = 0;
|
1001
|
+
result.region = [
|
1002
|
+
{
|
1003
|
+
clip: true
|
1004
|
+
}
|
1005
|
+
];
|
890
1006
|
return result;
|
891
1007
|
};
|
892
1008
|
const initLine = (spec, context)=>{
|
@@ -902,6 +1018,11 @@ const initLine = (spec, context)=>{
|
|
902
1018
|
result.yField = encoding[0].y[0];
|
903
1019
|
result.seriesField = encoding[0].group[0];
|
904
1020
|
result.padding = 0;
|
1021
|
+
result.region = [
|
1022
|
+
{
|
1023
|
+
clip: true
|
1024
|
+
}
|
1025
|
+
];
|
905
1026
|
return result;
|
906
1027
|
};
|
907
1028
|
const initColumnParallel = (spec, context)=>{
|
@@ -921,6 +1042,11 @@ const initColumnParallel = (spec, context)=>{
|
|
921
1042
|
result.yField = encoding[0].y[0];
|
922
1043
|
result.seriesField = encoding[0].group[0];
|
923
1044
|
result.padding = 0;
|
1045
|
+
result.region = [
|
1046
|
+
{
|
1047
|
+
clip: true
|
1048
|
+
}
|
1049
|
+
];
|
924
1050
|
return result;
|
925
1051
|
};
|
926
1052
|
const initPie = (spec, context)=>{
|
@@ -937,6 +1063,11 @@ const initPie = (spec, context)=>{
|
|
937
1063
|
result.categoryField = encoding[0].angle[0];
|
938
1064
|
result.seriesField = encoding[0].group[0];
|
939
1065
|
result.padding = 0;
|
1066
|
+
result.region = [
|
1067
|
+
{
|
1068
|
+
clip: true
|
1069
|
+
}
|
1070
|
+
];
|
940
1071
|
return result;
|
941
1072
|
};
|
942
1073
|
const initPivot = (spec)=>{
|
@@ -954,67 +1085,328 @@ const initPivot = (spec)=>{
|
|
954
1085
|
indicatorsAsCol: false
|
955
1086
|
};
|
956
1087
|
};
|
957
|
-
const xBand = (spec)=>{
|
1088
|
+
const xBand = (spec, context)=>{
|
958
1089
|
const result = {
|
959
1090
|
...spec
|
960
1091
|
};
|
1092
|
+
const { advancedVSeed, vseed } = context;
|
1093
|
+
const { chartType } = vseed;
|
1094
|
+
const config = advancedVSeed.config?.[chartType]?.xAxis;
|
961
1095
|
if (!result.axes) result.axes = [];
|
1096
|
+
if (!config) {
|
1097
|
+
result.axes = [
|
1098
|
+
...result.axes,
|
1099
|
+
{
|
1100
|
+
visible: true,
|
1101
|
+
type: 'band',
|
1102
|
+
orient: 'bottom'
|
1103
|
+
}
|
1104
|
+
];
|
1105
|
+
return result;
|
1106
|
+
}
|
1107
|
+
const { visible = true, label, tick, title, grid, line, labelAutoHide, labelAutoHideGap, labelAutoLimit, labelAutoLimitLength, labelAutoRotate, labelAutoRotateAngleRange } = config;
|
1108
|
+
const sampling = !(labelAutoHide || labelAutoRotate || labelAutoLimit);
|
1109
|
+
const bandAxis = {
|
1110
|
+
visible,
|
1111
|
+
type: 'band',
|
1112
|
+
orient: 'bottom',
|
1113
|
+
maxHeight: labelAutoLimitLength,
|
1114
|
+
sampling,
|
1115
|
+
hover: true,
|
1116
|
+
label: {
|
1117
|
+
visible: label?.visible,
|
1118
|
+
flush: true,
|
1119
|
+
space: 8,
|
1120
|
+
style: {
|
1121
|
+
maxLineWidth: labelAutoLimitLength,
|
1122
|
+
fill: label?.labelColor,
|
1123
|
+
angle: label?.labelAngle,
|
1124
|
+
fontSize: label?.labelFontSize,
|
1125
|
+
fontWeight: label?.labelFontWeight
|
1126
|
+
},
|
1127
|
+
minGap: labelAutoHideGap,
|
1128
|
+
autoHide: labelAutoHide,
|
1129
|
+
autoHideMethod: 'greedy',
|
1130
|
+
autoHideSeparation: labelAutoHideGap,
|
1131
|
+
autoLimit: labelAutoLimit,
|
1132
|
+
autoRotate: labelAutoRotate,
|
1133
|
+
autoRotateAngle: labelAutoRotateAngleRange,
|
1134
|
+
lastVisible: true
|
1135
|
+
},
|
1136
|
+
title: {
|
1137
|
+
visible: title?.visible,
|
1138
|
+
text: title?.titleText,
|
1139
|
+
style: {
|
1140
|
+
fill: title?.titleColor,
|
1141
|
+
fontSize: title?.titleFontSize,
|
1142
|
+
fontWeight: title?.titleFontWeight
|
1143
|
+
}
|
1144
|
+
},
|
1145
|
+
tick: {
|
1146
|
+
visible: tick?.visible,
|
1147
|
+
tickSize: tick?.tickSize,
|
1148
|
+
inside: tick?.tickInside,
|
1149
|
+
style: {
|
1150
|
+
stroke: tick?.tickColor
|
1151
|
+
}
|
1152
|
+
},
|
1153
|
+
grid: {
|
1154
|
+
visible: grid?.visible,
|
1155
|
+
style: {
|
1156
|
+
lineWidth: grid?.gridWidth,
|
1157
|
+
stroke: grid?.gridColor
|
1158
|
+
}
|
1159
|
+
},
|
1160
|
+
domainLine: {
|
1161
|
+
visible: line?.visible,
|
1162
|
+
style: {
|
1163
|
+
lineWidth: line?.lineWidth,
|
1164
|
+
stroke: line?.lineColor
|
1165
|
+
}
|
1166
|
+
}
|
1167
|
+
};
|
962
1168
|
result.axes = [
|
963
1169
|
...result.axes,
|
964
|
-
|
965
|
-
visible: true,
|
966
|
-
type: 'band',
|
967
|
-
orient: 'bottom'
|
968
|
-
}
|
1170
|
+
bandAxis
|
969
1171
|
];
|
970
1172
|
return result;
|
971
1173
|
};
|
972
|
-
const xLinear = (spec)=>{
|
1174
|
+
const xLinear = (spec, context)=>{
|
973
1175
|
const result = {
|
974
1176
|
...spec
|
975
1177
|
};
|
1178
|
+
const { advancedVSeed, vseed } = context;
|
1179
|
+
const { chartType } = vseed;
|
1180
|
+
const config = advancedVSeed.config?.[chartType]?.xAxis;
|
976
1181
|
if (!result.axes) result.axes = [];
|
1182
|
+
if (!config) {
|
1183
|
+
result.axes = [
|
1184
|
+
...result.axes,
|
1185
|
+
{
|
1186
|
+
visible: true,
|
1187
|
+
type: 'linear',
|
1188
|
+
orient: 'bottom'
|
1189
|
+
}
|
1190
|
+
];
|
1191
|
+
return result;
|
1192
|
+
}
|
1193
|
+
const { visible = true, label, tick, title, grid, line, zero, nice, inverse, max, min } = config;
|
1194
|
+
const linearAxis = {
|
1195
|
+
visible,
|
1196
|
+
type: 'linear',
|
1197
|
+
orient: 'bottom',
|
1198
|
+
nice,
|
1199
|
+
zero,
|
1200
|
+
inverse,
|
1201
|
+
max,
|
1202
|
+
min,
|
1203
|
+
label: {
|
1204
|
+
visible: label?.visible,
|
1205
|
+
style: {
|
1206
|
+
fill: label?.labelColor,
|
1207
|
+
angle: label?.labelAngle,
|
1208
|
+
fontSize: label?.labelFontSize,
|
1209
|
+
fontWeight: label?.labelFontWeight
|
1210
|
+
}
|
1211
|
+
},
|
1212
|
+
title: {
|
1213
|
+
visible: title?.visible,
|
1214
|
+
text: title?.titleText,
|
1215
|
+
style: {
|
1216
|
+
fill: title?.titleColor,
|
1217
|
+
fontSize: title?.titleFontSize,
|
1218
|
+
fontWeight: title?.titleFontWeight
|
1219
|
+
}
|
1220
|
+
},
|
1221
|
+
tick: {
|
1222
|
+
visible: tick?.visible,
|
1223
|
+
tickSize: tick?.tickSize,
|
1224
|
+
inside: tick?.tickInside,
|
1225
|
+
style: {
|
1226
|
+
stroke: tick?.tickColor
|
1227
|
+
}
|
1228
|
+
},
|
1229
|
+
grid: {
|
1230
|
+
visible: grid?.visible,
|
1231
|
+
style: {
|
1232
|
+
lineWidth: grid?.gridWidth,
|
1233
|
+
stroke: grid?.gridColor
|
1234
|
+
}
|
1235
|
+
},
|
1236
|
+
domainLine: {
|
1237
|
+
visible: line?.visible,
|
1238
|
+
style: {
|
1239
|
+
lineWidth: line?.lineWidth,
|
1240
|
+
stroke: line?.lineColor
|
1241
|
+
}
|
1242
|
+
}
|
1243
|
+
};
|
977
1244
|
result.axes = [
|
978
1245
|
...result.axes,
|
979
|
-
|
980
|
-
visible: true,
|
981
|
-
type: 'linear',
|
982
|
-
orient: 'bottom',
|
983
|
-
nice: true,
|
984
|
-
zero: true
|
985
|
-
}
|
1246
|
+
linearAxis
|
986
1247
|
];
|
987
1248
|
return result;
|
988
1249
|
};
|
989
|
-
const yBand = (spec)=>{
|
1250
|
+
const yBand = (spec, context)=>{
|
990
1251
|
const result = {
|
991
1252
|
...spec
|
992
1253
|
};
|
1254
|
+
const { advancedVSeed, vseed } = context;
|
1255
|
+
const { chartType } = vseed;
|
1256
|
+
const config = advancedVSeed.config?.[chartType]?.yAxis;
|
993
1257
|
if (!result.axes) result.axes = [];
|
1258
|
+
if (!config) {
|
1259
|
+
result.axes = [
|
1260
|
+
...result.axes,
|
1261
|
+
{
|
1262
|
+
visible: true,
|
1263
|
+
type: 'band',
|
1264
|
+
orient: 'left'
|
1265
|
+
}
|
1266
|
+
];
|
1267
|
+
return result;
|
1268
|
+
}
|
1269
|
+
const { visible = true, label, tick, title, grid, line, labelAutoHide, labelAutoHideGap, labelAutoLimit, labelAutoLimitLength, labelAutoRotate, labelAutoRotateAngleRange } = config;
|
1270
|
+
const sampling = !(labelAutoHide || labelAutoRotate || labelAutoLimit);
|
1271
|
+
const bandAxis = {
|
1272
|
+
visible,
|
1273
|
+
type: 'band',
|
1274
|
+
orient: 'left',
|
1275
|
+
maxWidth: labelAutoLimitLength,
|
1276
|
+
sampling,
|
1277
|
+
hover: true,
|
1278
|
+
label: {
|
1279
|
+
visible: label?.visible,
|
1280
|
+
flush: true,
|
1281
|
+
containerAlign: 'left',
|
1282
|
+
space: 8,
|
1283
|
+
style: {
|
1284
|
+
maxLineWidth: labelAutoLimitLength,
|
1285
|
+
fill: label?.labelColor,
|
1286
|
+
angle: label?.labelAngle,
|
1287
|
+
fontSize: label?.labelFontSize,
|
1288
|
+
fontWeight: label?.labelFontWeight
|
1289
|
+
},
|
1290
|
+
minGap: labelAutoHideGap,
|
1291
|
+
autoHide: labelAutoHide,
|
1292
|
+
autoHideMethod: 'greedy',
|
1293
|
+
autoHideSeparation: labelAutoHideGap,
|
1294
|
+
autoLimit: labelAutoLimit,
|
1295
|
+
autoRotate: labelAutoRotate,
|
1296
|
+
autoRotateAngle: labelAutoRotateAngleRange,
|
1297
|
+
lastVisible: true
|
1298
|
+
},
|
1299
|
+
title: {
|
1300
|
+
visible: title?.visible,
|
1301
|
+
text: title?.titleText,
|
1302
|
+
style: {
|
1303
|
+
fill: title?.titleColor,
|
1304
|
+
fontSize: title?.titleFontSize,
|
1305
|
+
fontWeight: title?.titleFontWeight
|
1306
|
+
}
|
1307
|
+
},
|
1308
|
+
tick: {
|
1309
|
+
visible: tick?.visible,
|
1310
|
+
tickSize: tick?.tickSize,
|
1311
|
+
inside: tick?.tickInside,
|
1312
|
+
style: {
|
1313
|
+
stroke: tick?.tickColor
|
1314
|
+
}
|
1315
|
+
},
|
1316
|
+
grid: {
|
1317
|
+
visible: grid?.visible,
|
1318
|
+
style: {
|
1319
|
+
lineWidth: grid?.gridWidth,
|
1320
|
+
stroke: grid?.gridColor
|
1321
|
+
}
|
1322
|
+
},
|
1323
|
+
domainLine: {
|
1324
|
+
visible: line?.visible,
|
1325
|
+
style: {
|
1326
|
+
lineWidth: line?.lineWidth,
|
1327
|
+
stroke: line?.lineColor
|
1328
|
+
}
|
1329
|
+
}
|
1330
|
+
};
|
994
1331
|
result.axes = [
|
995
1332
|
...result.axes,
|
996
|
-
|
997
|
-
visible: true,
|
998
|
-
type: 'band',
|
999
|
-
orient: 'left'
|
1000
|
-
}
|
1333
|
+
bandAxis
|
1001
1334
|
];
|
1002
1335
|
return result;
|
1003
1336
|
};
|
1004
|
-
const yLinear = (spec)=>{
|
1337
|
+
const yLinear = (spec, context)=>{
|
1005
1338
|
const result = {
|
1006
1339
|
...spec
|
1007
1340
|
};
|
1341
|
+
const { advancedVSeed, vseed } = context;
|
1342
|
+
const { chartType } = vseed;
|
1343
|
+
const config = advancedVSeed.config?.[chartType]?.yAxis;
|
1008
1344
|
if (!result.axes) result.axes = [];
|
1345
|
+
if (!config) {
|
1346
|
+
result.axes = [
|
1347
|
+
...result.axes,
|
1348
|
+
{
|
1349
|
+
visible: true,
|
1350
|
+
type: 'linear',
|
1351
|
+
orient: 'left'
|
1352
|
+
}
|
1353
|
+
];
|
1354
|
+
return result;
|
1355
|
+
}
|
1356
|
+
const { visible = true, label, tick, title, grid, line, zero, nice, inverse, max, min } = config;
|
1357
|
+
const linearAxis = {
|
1358
|
+
visible,
|
1359
|
+
type: 'linear',
|
1360
|
+
orient: 'left',
|
1361
|
+
nice,
|
1362
|
+
zero,
|
1363
|
+
inverse,
|
1364
|
+
max,
|
1365
|
+
min,
|
1366
|
+
label: {
|
1367
|
+
visible: label?.visible,
|
1368
|
+
style: {
|
1369
|
+
fill: label?.labelColor,
|
1370
|
+
angle: label?.labelAngle,
|
1371
|
+
fontSize: label?.labelFontSize,
|
1372
|
+
fontWeight: label?.labelFontWeight
|
1373
|
+
}
|
1374
|
+
},
|
1375
|
+
title: {
|
1376
|
+
visible: title?.visible,
|
1377
|
+
text: title?.titleText,
|
1378
|
+
style: {
|
1379
|
+
fill: title?.titleColor,
|
1380
|
+
fontSize: title?.titleFontSize,
|
1381
|
+
fontWeight: title?.titleFontWeight
|
1382
|
+
}
|
1383
|
+
},
|
1384
|
+
tick: {
|
1385
|
+
visible: tick?.visible,
|
1386
|
+
tickSize: tick?.tickSize,
|
1387
|
+
inside: tick?.tickInside,
|
1388
|
+
style: {
|
1389
|
+
stroke: tick?.tickColor
|
1390
|
+
}
|
1391
|
+
},
|
1392
|
+
grid: {
|
1393
|
+
visible: grid?.visible,
|
1394
|
+
style: {
|
1395
|
+
lineWidth: grid?.gridWidth,
|
1396
|
+
stroke: grid?.gridColor
|
1397
|
+
}
|
1398
|
+
},
|
1399
|
+
domainLine: {
|
1400
|
+
visible: line?.visible,
|
1401
|
+
style: {
|
1402
|
+
lineWidth: line?.lineWidth,
|
1403
|
+
stroke: line?.lineColor
|
1404
|
+
}
|
1405
|
+
}
|
1406
|
+
};
|
1009
1407
|
result.axes = [
|
1010
1408
|
...result.axes,
|
1011
|
-
|
1012
|
-
visible: true,
|
1013
|
-
type: 'linear',
|
1014
|
-
orient: 'left',
|
1015
|
-
nice: true,
|
1016
|
-
zero: true
|
1017
|
-
}
|
1409
|
+
linearAxis
|
1018
1410
|
];
|
1019
1411
|
return result;
|
1020
1412
|
};
|
@@ -1025,11 +1417,11 @@ const percent = (spec, context)=>{
|
|
1025
1417
|
result.percent = true;
|
1026
1418
|
return result;
|
1027
1419
|
};
|
1028
|
-
const
|
1420
|
+
const stackInverse = (spec)=>{
|
1029
1421
|
const result = {
|
1030
1422
|
...spec
|
1031
1423
|
};
|
1032
|
-
result.
|
1424
|
+
result.stackInverse = true;
|
1033
1425
|
return result;
|
1034
1426
|
};
|
1035
1427
|
const background_backgroundColor = (spec, context)=>{
|
@@ -1075,24 +1467,103 @@ const label_label = (spec, context)=>{
|
|
1075
1467
|
};
|
1076
1468
|
return result;
|
1077
1469
|
};
|
1078
|
-
const
|
1079
|
-
enable: true
|
1080
|
-
};
|
1081
|
-
const legend_legend = (spec, context)=>{
|
1470
|
+
const discreteLegend = (spec, context)=>{
|
1082
1471
|
const result = {
|
1083
1472
|
...spec
|
1084
1473
|
};
|
1085
1474
|
const { advancedVSeed } = context;
|
1086
1475
|
const baseConfig = advancedVSeed.baseConfig.vchart;
|
1087
1476
|
if (!baseConfig || !baseConfig.legend) return result;
|
1088
|
-
const { legend
|
1089
|
-
const { enable } = legend;
|
1477
|
+
const { legend } = baseConfig;
|
1478
|
+
const { enable, position = 'bottom', labelFontColor, labelFontSize = 12, labelFontWeight, maxSize, border, shapeType = 'rectRound' } = legend || {};
|
1479
|
+
const orient = [
|
1480
|
+
'bottom',
|
1481
|
+
'bottomLeft',
|
1482
|
+
'bottomRight',
|
1483
|
+
'bl',
|
1484
|
+
'br'
|
1485
|
+
].includes(position) ? 'bottom' : [
|
1486
|
+
'top',
|
1487
|
+
'topLeft',
|
1488
|
+
'topRight',
|
1489
|
+
'tl',
|
1490
|
+
'tr'
|
1491
|
+
].includes(position) ? 'top' : [
|
1492
|
+
'left',
|
1493
|
+
'leftTop',
|
1494
|
+
'leftBottom',
|
1495
|
+
'lt',
|
1496
|
+
'lb'
|
1497
|
+
].includes(position) ? 'left' : 'right';
|
1498
|
+
const legendPosition = [
|
1499
|
+
'topLeft',
|
1500
|
+
'bottomLeft',
|
1501
|
+
'leftTop',
|
1502
|
+
'rightTop',
|
1503
|
+
'lt',
|
1504
|
+
'rt',
|
1505
|
+
'tl',
|
1506
|
+
'bl'
|
1507
|
+
].includes(position) ? 'start' : [
|
1508
|
+
'topRight',
|
1509
|
+
'bottomRight',
|
1510
|
+
'leftBottom',
|
1511
|
+
'rightBottom',
|
1512
|
+
'lb',
|
1513
|
+
'rb',
|
1514
|
+
'rt',
|
1515
|
+
'br'
|
1516
|
+
].includes(position) ? 'end' : 'middle';
|
1090
1517
|
result.legends = {
|
1091
|
-
|
1518
|
+
type: 'discrete',
|
1519
|
+
visible: enable,
|
1520
|
+
maxCol: maxSize,
|
1521
|
+
maxRow: maxSize,
|
1522
|
+
autoPage: true,
|
1523
|
+
orient,
|
1524
|
+
position: legendPosition,
|
1525
|
+
data: border ? (items)=>items.map((item)=>{
|
1526
|
+
item.shape.outerBorder = {
|
1527
|
+
stroke: item.shape.fill,
|
1528
|
+
distance: 3,
|
1529
|
+
lineWidth: 1
|
1530
|
+
};
|
1531
|
+
return item;
|
1532
|
+
}) : void 0,
|
1533
|
+
item: {
|
1534
|
+
focus: true,
|
1535
|
+
focusIconStyle: {
|
1536
|
+
size: labelFontSize + 2,
|
1537
|
+
fill: labelFontColor,
|
1538
|
+
fontWeight: labelFontWeight
|
1539
|
+
},
|
1540
|
+
shape: {
|
1541
|
+
space: border ? 6 : 4,
|
1542
|
+
style: {
|
1543
|
+
symbolType: shapeType,
|
1544
|
+
size: border ? 8 : 10
|
1545
|
+
}
|
1546
|
+
},
|
1547
|
+
label: {
|
1548
|
+
style: {
|
1549
|
+
fontSize: labelFontSize,
|
1550
|
+
fill: labelFontColor,
|
1551
|
+
fontWeight: labelFontWeight
|
1552
|
+
}
|
1553
|
+
},
|
1554
|
+
background: {
|
1555
|
+
state: {
|
1556
|
+
selectedHover: {
|
1557
|
+
fill: labelFontColor,
|
1558
|
+
fillOpacity: 0.05
|
1559
|
+
}
|
1560
|
+
}
|
1561
|
+
}
|
1562
|
+
}
|
1092
1563
|
};
|
1093
1564
|
return result;
|
1094
1565
|
};
|
1095
|
-
const
|
1566
|
+
const pivotDiscreteLegend = (spec, context)=>{
|
1096
1567
|
const result = {
|
1097
1568
|
...spec
|
1098
1569
|
};
|
@@ -1102,38 +1573,94 @@ const pivotLegend = (spec, context)=>{
|
|
1102
1573
|
const { datasetReshapeInfo } = advancedVSeed;
|
1103
1574
|
const colorItems = (0, external_remeda_namespaceObject.unique)(datasetReshapeInfo.flatMap((d)=>d.unfoldInfo.colorItems));
|
1104
1575
|
const { legend, color } = baseConfig;
|
1105
|
-
const { enable } = legend;
|
1106
1576
|
const { colorScheme } = color;
|
1577
|
+
const { enable, position = 'bottom', labelFontColor, labelFontSize = 12, labelFontWeight, maxSize, border, shapeType = 'rectRound' } = legend || {};
|
1578
|
+
const orient = [
|
1579
|
+
'bottom',
|
1580
|
+
'bottomLeft',
|
1581
|
+
'bottomRight',
|
1582
|
+
'bl',
|
1583
|
+
'br'
|
1584
|
+
].includes(position) ? 'bottom' : [
|
1585
|
+
'top',
|
1586
|
+
'topLeft',
|
1587
|
+
'topRight',
|
1588
|
+
'tl',
|
1589
|
+
'tr'
|
1590
|
+
].includes(position) ? 'top' : [
|
1591
|
+
'left',
|
1592
|
+
'leftTop',
|
1593
|
+
'leftBottom',
|
1594
|
+
'lt',
|
1595
|
+
'lb'
|
1596
|
+
].includes(position) ? 'left' : 'right';
|
1597
|
+
const legendPosition = [
|
1598
|
+
'topLeft',
|
1599
|
+
'bottomLeft',
|
1600
|
+
'leftTop',
|
1601
|
+
'rightTop',
|
1602
|
+
'lt',
|
1603
|
+
'rt',
|
1604
|
+
'tl',
|
1605
|
+
'bl'
|
1606
|
+
].includes(position) ? 'start' : [
|
1607
|
+
'topRight',
|
1608
|
+
'bottomRight',
|
1609
|
+
'leftBottom',
|
1610
|
+
'rightBottom',
|
1611
|
+
'lb',
|
1612
|
+
'rb',
|
1613
|
+
'rt',
|
1614
|
+
'br'
|
1615
|
+
].includes(position) ? 'end' : 'middle';
|
1107
1616
|
const legends = {
|
1108
1617
|
visible: enable,
|
1109
|
-
alignSelf: 'end',
|
1110
1618
|
type: 'discrete',
|
1111
|
-
|
1619
|
+
orient,
|
1620
|
+
position: legendPosition,
|
1621
|
+
maxCol: maxSize,
|
1622
|
+
maxRow: maxSize,
|
1112
1623
|
data: colorItems.map((d, index)=>({
|
1113
1624
|
label: d,
|
1114
1625
|
shape: {
|
1115
|
-
|
1626
|
+
outerBorder: border ? {
|
1627
|
+
stroke: colorScheme[index],
|
1628
|
+
distance: 3,
|
1629
|
+
lineWidth: 1
|
1630
|
+
} : void 0,
|
1116
1631
|
fill: colorScheme[index]
|
1117
1632
|
}
|
1118
1633
|
})),
|
1119
1634
|
item: {
|
1635
|
+
focus: true,
|
1636
|
+
focusIconStyle: {
|
1637
|
+
size: labelFontSize + 2,
|
1638
|
+
fill: labelFontColor,
|
1639
|
+
fontWeight: labelFontWeight
|
1640
|
+
},
|
1641
|
+
shape: {
|
1642
|
+
space: border ? 6 : 4,
|
1643
|
+
style: {
|
1644
|
+
symbolType: shapeType,
|
1645
|
+
size: border ? 8 : 10
|
1646
|
+
}
|
1647
|
+
},
|
1648
|
+
label: {
|
1649
|
+
style: {
|
1650
|
+
fontSize: labelFontSize,
|
1651
|
+
fill: labelFontColor,
|
1652
|
+
fontWeight: labelFontWeight
|
1653
|
+
}
|
1654
|
+
},
|
1120
1655
|
background: {
|
1121
|
-
visible: true,
|
1122
1656
|
state: {
|
1123
1657
|
selectedHover: {
|
1124
|
-
fill:
|
1658
|
+
fill: labelFontColor,
|
1125
1659
|
fillOpacity: 0.05
|
1126
1660
|
}
|
1127
1661
|
}
|
1128
|
-
},
|
1129
|
-
label: {
|
1130
|
-
style: {
|
1131
|
-
fontSize: 12,
|
1132
|
-
fill: '#6F6F6F'
|
1133
|
-
}
|
1134
1662
|
}
|
1135
|
-
}
|
1136
|
-
orient: 'bottom'
|
1663
|
+
}
|
1137
1664
|
};
|
1138
1665
|
return {
|
1139
1666
|
...result,
|
@@ -1382,7 +1909,123 @@ const pivotRowDimensions = (spec, context)=>{
|
|
1382
1909
|
rows: rows
|
1383
1910
|
};
|
1384
1911
|
};
|
1385
|
-
const
|
1912
|
+
const selector_selector = (datum, selector)=>{
|
1913
|
+
if (!selector) return true;
|
1914
|
+
const selectors = Array.isArray(selector) ? selector : [
|
1915
|
+
selector
|
1916
|
+
];
|
1917
|
+
for (const selector of selectors)if (isValueSelector(selector)) {
|
1918
|
+
if (Object.values(datum).find((v)=>v === selector)) return true;
|
1919
|
+
} else if (isMeasureSelector(selector)) {
|
1920
|
+
const selectorValueArr = Array.isArray(selector.value) ? selector.value : [
|
1921
|
+
selector.value
|
1922
|
+
];
|
1923
|
+
switch(selector.operator){
|
1924
|
+
case '=':
|
1925
|
+
if (datum[selector.field] === selectorValueArr[0]) return true;
|
1926
|
+
break;
|
1927
|
+
case '!=':
|
1928
|
+
if (datum[selector.field] !== selectorValueArr[0]) return true;
|
1929
|
+
break;
|
1930
|
+
case '>':
|
1931
|
+
if (datum[selector.field] > selectorValueArr[0]) return true;
|
1932
|
+
break;
|
1933
|
+
case '<':
|
1934
|
+
if (datum[selector.field] < selectorValueArr[0]) return true;
|
1935
|
+
break;
|
1936
|
+
case '>=':
|
1937
|
+
if (datum[selector.field] >= selectorValueArr[0]) return true;
|
1938
|
+
break;
|
1939
|
+
case '<=':
|
1940
|
+
if (datum[selector.field] <= selectorValueArr[0]) return true;
|
1941
|
+
break;
|
1942
|
+
case 'between':
|
1943
|
+
if (Array.isArray(selector.value) && datum[selector.field] >= selectorValueArr[0] && datum[selector.field] <= selectorValueArr[1]) return true;
|
1944
|
+
break;
|
1945
|
+
default:
|
1946
|
+
break;
|
1947
|
+
}
|
1948
|
+
} else if (isDimensionSelector(selector)) {
|
1949
|
+
const selectorValueArr = Array.isArray(selector.value) ? selector.value : [
|
1950
|
+
selector.value
|
1951
|
+
];
|
1952
|
+
if ('in' === selector.operator && selectorValueArr.includes(datum[selector.field])) return true;
|
1953
|
+
if ('not in' === selector.operator && !selectorValueArr.includes(datum[selector.field])) return true;
|
1954
|
+
} else if (isPartialDatumSelector(selector)) {
|
1955
|
+
if (Object.keys(selector).every((key)=>datum[key] === selector[key])) return true;
|
1956
|
+
}
|
1957
|
+
return false;
|
1958
|
+
};
|
1959
|
+
const isValueSelector = (selector)=>'string' == typeof selector || 'number' == typeof selector;
|
1960
|
+
const isPartialDatumSelector = (selector)=>'object' == typeof selector && null !== selector;
|
1961
|
+
const isMeasureSelector = (selector)=>'object' == typeof selector && null !== selector && 'field' in selector && 'operator' in selector && 'value' in selector && [
|
1962
|
+
'=',
|
1963
|
+
'!=',
|
1964
|
+
'>',
|
1965
|
+
'<',
|
1966
|
+
'>=',
|
1967
|
+
'<=',
|
1968
|
+
'between'
|
1969
|
+
].includes(selector.operator);
|
1970
|
+
const isDimensionSelector = (selector)=>'object' == typeof selector && null !== selector && 'field' in selector && 'operator' in selector && 'value' in selector && [
|
1971
|
+
'in',
|
1972
|
+
'not in'
|
1973
|
+
].includes(selector.operator);
|
1974
|
+
const barStyle_barStyle = (spec, context)=>{
|
1975
|
+
const { advancedVSeed } = context;
|
1976
|
+
const { markStyle, encoding } = advancedVSeed;
|
1977
|
+
const { barStyle } = markStyle;
|
1978
|
+
if (!barStyle) return spec;
|
1979
|
+
const result = {
|
1980
|
+
...spec
|
1981
|
+
};
|
1982
|
+
const { selector: barSelector, barBorderColor, barBorderStyle, barBorderWidth, barColor, barColorOpacity, barRadius } = barStyle;
|
1983
|
+
return {
|
1984
|
+
...result,
|
1985
|
+
bar: {
|
1986
|
+
style: {
|
1987
|
+
fill: (datum, context)=>{
|
1988
|
+
if (selector_selector(datum, barSelector)) return barColor;
|
1989
|
+
return context.seriesColor(datum[encoding[0]?.group?.[0]]);
|
1990
|
+
},
|
1991
|
+
fillOpacity: (datum)=>{
|
1992
|
+
if (selector_selector(datum, barSelector)) return barColorOpacity;
|
1993
|
+
return 1;
|
1994
|
+
},
|
1995
|
+
stroke: (datum, context)=>{
|
1996
|
+
if (selector_selector(datum, barSelector)) return barBorderColor;
|
1997
|
+
return context.seriesColor(datum[encoding[0]?.group?.[0]]);
|
1998
|
+
},
|
1999
|
+
lineWidth: (datum)=>{
|
2000
|
+
if (selector_selector(datum, barSelector)) return barBorderWidth;
|
2001
|
+
return 0;
|
2002
|
+
},
|
2003
|
+
lineDash: (datum)=>{
|
2004
|
+
if (selector_selector(datum, barSelector)) {
|
2005
|
+
if ('solid' === barBorderStyle) ;
|
2006
|
+
else if ('dashed' === barBorderStyle) return [
|
2007
|
+
5,
|
2008
|
+
5
|
2009
|
+
];
|
2010
|
+
else if ('dotted' === barBorderStyle) return [
|
2011
|
+
1,
|
2012
|
+
5
|
2013
|
+
];
|
2014
|
+
}
|
2015
|
+
return [
|
2016
|
+
0,
|
2017
|
+
0
|
2018
|
+
];
|
2019
|
+
},
|
2020
|
+
cornerRadius: (datum)=>{
|
2021
|
+
if (selector_selector(datum, barSelector)) return barRadius;
|
2022
|
+
return 0;
|
2023
|
+
}
|
2024
|
+
}
|
2025
|
+
}
|
2026
|
+
};
|
2027
|
+
};
|
2028
|
+
const line_line = [
|
1386
2029
|
initLine,
|
1387
2030
|
color_color,
|
1388
2031
|
background_backgroundColor,
|
@@ -1391,7 +2034,7 @@ const line = [
|
|
1391
2034
|
yLinear,
|
1392
2035
|
label_label,
|
1393
2036
|
tooltip_tooltip,
|
1394
|
-
|
2037
|
+
discreteLegend
|
1395
2038
|
];
|
1396
2039
|
const pivotLine = [
|
1397
2040
|
initPivot,
|
@@ -1410,13 +2053,14 @@ const pivotLine = [
|
|
1410
2053
|
]),
|
1411
2054
|
pivotRowDimensions,
|
1412
2055
|
pivotColumnDimensions,
|
1413
|
-
|
2056
|
+
pivotDiscreteLegend
|
1414
2057
|
];
|
1415
2058
|
const lineSpecPipeline = [
|
1416
|
-
pivotAdapter_pivotAdapter(
|
2059
|
+
pivotAdapter_pivotAdapter(line_line, pivotLine)
|
1417
2060
|
];
|
1418
2061
|
const column = [
|
1419
2062
|
initColumn,
|
2063
|
+
stackInverse,
|
1420
2064
|
color_color,
|
1421
2065
|
background_backgroundColor,
|
1422
2066
|
dataset_dataset,
|
@@ -1424,7 +2068,8 @@ const column = [
|
|
1424
2068
|
yLinear,
|
1425
2069
|
label_label,
|
1426
2070
|
tooltip_tooltip,
|
1427
|
-
|
2071
|
+
discreteLegend,
|
2072
|
+
barStyle_barStyle
|
1428
2073
|
];
|
1429
2074
|
const pivotColumn = [
|
1430
2075
|
initPivot,
|
@@ -1433,17 +2078,19 @@ const pivotColumn = [
|
|
1433
2078
|
datasetPivot,
|
1434
2079
|
pivotIndicators([
|
1435
2080
|
initColumn,
|
2081
|
+
stackInverse,
|
1436
2082
|
color_color,
|
1437
2083
|
background_backgroundColor,
|
1438
2084
|
datasetPivotPlaceholder,
|
1439
2085
|
xBand,
|
1440
2086
|
yLinear,
|
1441
2087
|
label_label,
|
1442
|
-
tooltip_tooltip
|
2088
|
+
tooltip_tooltip,
|
2089
|
+
barStyle_barStyle
|
1443
2090
|
]),
|
1444
2091
|
pivotRowDimensions,
|
1445
2092
|
pivotColumnDimensions,
|
1446
|
-
|
2093
|
+
pivotDiscreteLegend
|
1447
2094
|
];
|
1448
2095
|
const columnSpecPipeline = [
|
1449
2096
|
pivotAdapter_pivotAdapter(column, pivotColumn)
|
@@ -1457,7 +2104,8 @@ const columnParallel = [
|
|
1457
2104
|
yLinear,
|
1458
2105
|
label_label,
|
1459
2106
|
tooltip_tooltip,
|
1460
|
-
|
2107
|
+
discreteLegend,
|
2108
|
+
barStyle_barStyle
|
1461
2109
|
];
|
1462
2110
|
const pivotColumnParallel = [
|
1463
2111
|
initPivot,
|
@@ -1472,17 +2120,19 @@ const pivotColumnParallel = [
|
|
1472
2120
|
xBand,
|
1473
2121
|
yLinear,
|
1474
2122
|
label_label,
|
1475
|
-
tooltip_tooltip
|
2123
|
+
tooltip_tooltip,
|
2124
|
+
barStyle_barStyle
|
1476
2125
|
]),
|
1477
2126
|
pivotRowDimensions,
|
1478
2127
|
pivotColumnDimensions,
|
1479
|
-
|
2128
|
+
pivotDiscreteLegend
|
1480
2129
|
];
|
1481
2130
|
const columnParallelSpecPipeline = [
|
1482
2131
|
pivotAdapter_pivotAdapter(columnParallel, pivotColumnParallel)
|
1483
2132
|
];
|
1484
2133
|
const columnPercent = [
|
1485
2134
|
initColumn,
|
2135
|
+
stackInverse,
|
1486
2136
|
color_color,
|
1487
2137
|
background_backgroundColor,
|
1488
2138
|
percent,
|
@@ -1491,7 +2141,8 @@ const columnPercent = [
|
|
1491
2141
|
yLinear,
|
1492
2142
|
label_label,
|
1493
2143
|
tooltip_tooltip,
|
1494
|
-
|
2144
|
+
discreteLegend,
|
2145
|
+
barStyle_barStyle
|
1495
2146
|
];
|
1496
2147
|
const pivotColumnPercent = [
|
1497
2148
|
initPivot,
|
@@ -1500,6 +2151,7 @@ const pivotColumnPercent = [
|
|
1500
2151
|
datasetPivot,
|
1501
2152
|
pivotIndicators([
|
1502
2153
|
initColumn,
|
2154
|
+
stackInverse,
|
1503
2155
|
color_color,
|
1504
2156
|
percent,
|
1505
2157
|
background_backgroundColor,
|
@@ -1507,11 +2159,12 @@ const pivotColumnPercent = [
|
|
1507
2159
|
xBand,
|
1508
2160
|
yLinear,
|
1509
2161
|
label_label,
|
1510
|
-
tooltip_tooltip
|
2162
|
+
tooltip_tooltip,
|
2163
|
+
barStyle_barStyle
|
1511
2164
|
]),
|
1512
2165
|
pivotRowDimensions,
|
1513
2166
|
pivotColumnDimensions,
|
1514
|
-
|
2167
|
+
pivotDiscreteLegend
|
1515
2168
|
];
|
1516
2169
|
const columnPercentSpecPipeline = [
|
1517
2170
|
pivotAdapter_pivotAdapter(columnPercent, pivotColumnPercent)
|
@@ -1525,7 +2178,8 @@ const bar = [
|
|
1525
2178
|
yBand,
|
1526
2179
|
label_label,
|
1527
2180
|
tooltip_tooltip,
|
1528
|
-
|
2181
|
+
discreteLegend,
|
2182
|
+
barStyle_barStyle
|
1529
2183
|
];
|
1530
2184
|
const pivotBar = [
|
1531
2185
|
initPivot,
|
@@ -1540,11 +2194,12 @@ const pivotBar = [
|
|
1540
2194
|
yBand,
|
1541
2195
|
label_label,
|
1542
2196
|
label_label,
|
1543
|
-
tooltip_tooltip
|
2197
|
+
tooltip_tooltip,
|
2198
|
+
barStyle_barStyle
|
1544
2199
|
]),
|
1545
2200
|
pivotRowDimensions,
|
1546
2201
|
pivotColumnDimensions,
|
1547
|
-
|
2202
|
+
pivotDiscreteLegend
|
1548
2203
|
];
|
1549
2204
|
const barSpecPipeline = [
|
1550
2205
|
pivotAdapter_pivotAdapter(bar, pivotBar)
|
@@ -1558,7 +2213,8 @@ const barParallel = [
|
|
1558
2213
|
yBand,
|
1559
2214
|
label_label,
|
1560
2215
|
tooltip_tooltip,
|
1561
|
-
|
2216
|
+
discreteLegend,
|
2217
|
+
barStyle_barStyle
|
1562
2218
|
];
|
1563
2219
|
const pivotBarParallel = [
|
1564
2220
|
initPivot,
|
@@ -1573,11 +2229,12 @@ const pivotBarParallel = [
|
|
1573
2229
|
yBand,
|
1574
2230
|
xLinear,
|
1575
2231
|
label_label,
|
1576
|
-
tooltip_tooltip
|
2232
|
+
tooltip_tooltip,
|
2233
|
+
barStyle_barStyle
|
1577
2234
|
]),
|
1578
2235
|
pivotRowDimensions,
|
1579
2236
|
pivotColumnDimensions,
|
1580
|
-
|
2237
|
+
pivotDiscreteLegend
|
1581
2238
|
];
|
1582
2239
|
const barParallelSpecPipeline = [
|
1583
2240
|
pivotAdapter_pivotAdapter(barParallel, pivotBarParallel)
|
@@ -1592,7 +2249,8 @@ const barPercent = [
|
|
1592
2249
|
yBand,
|
1593
2250
|
label_label,
|
1594
2251
|
tooltip_tooltip,
|
1595
|
-
|
2252
|
+
discreteLegend,
|
2253
|
+
barStyle_barStyle
|
1596
2254
|
];
|
1597
2255
|
const pivotBarPercent = [
|
1598
2256
|
initPivot,
|
@@ -1608,26 +2266,27 @@ const pivotBarPercent = [
|
|
1608
2266
|
yBand,
|
1609
2267
|
xLinear,
|
1610
2268
|
label_label,
|
1611
|
-
tooltip_tooltip
|
2269
|
+
tooltip_tooltip,
|
2270
|
+
barStyle_barStyle
|
1612
2271
|
]),
|
1613
2272
|
pivotRowDimensions,
|
1614
2273
|
pivotColumnDimensions,
|
1615
|
-
|
2274
|
+
pivotDiscreteLegend
|
1616
2275
|
];
|
1617
2276
|
const barPercentSpecPipeline = [
|
1618
2277
|
pivotAdapter_pivotAdapter(barPercent, pivotBarPercent)
|
1619
2278
|
];
|
1620
2279
|
const area_area = [
|
1621
2280
|
initArea,
|
2281
|
+
stackInverse,
|
1622
2282
|
color_color,
|
1623
2283
|
background_backgroundColor,
|
1624
|
-
stack,
|
1625
2284
|
dataset_dataset,
|
1626
2285
|
xBand,
|
1627
2286
|
yLinear,
|
1628
2287
|
label_label,
|
1629
2288
|
tooltip_tooltip,
|
1630
|
-
|
2289
|
+
discreteLegend
|
1631
2290
|
];
|
1632
2291
|
const pivotArea = [
|
1633
2292
|
initPivot,
|
@@ -1638,7 +2297,7 @@ const pivotArea = [
|
|
1638
2297
|
initArea,
|
1639
2298
|
color_color,
|
1640
2299
|
background_backgroundColor,
|
1641
|
-
|
2300
|
+
stackInverse,
|
1642
2301
|
datasetPivotPlaceholder,
|
1643
2302
|
xBand,
|
1644
2303
|
yLinear,
|
@@ -1647,13 +2306,14 @@ const pivotArea = [
|
|
1647
2306
|
]),
|
1648
2307
|
pivotRowDimensions,
|
1649
2308
|
pivotColumnDimensions,
|
1650
|
-
|
2309
|
+
pivotDiscreteLegend
|
1651
2310
|
];
|
1652
2311
|
const areaSpecPipeline = [
|
1653
2312
|
pivotAdapter_pivotAdapter(area_area, pivotArea)
|
1654
2313
|
];
|
1655
2314
|
const areaPercent = [
|
1656
2315
|
initArea,
|
2316
|
+
stackInverse,
|
1657
2317
|
color_color,
|
1658
2318
|
background_backgroundColor,
|
1659
2319
|
percent,
|
@@ -1662,7 +2322,7 @@ const areaPercent = [
|
|
1662
2322
|
yLinear,
|
1663
2323
|
label_label,
|
1664
2324
|
tooltip_tooltip,
|
1665
|
-
|
2325
|
+
discreteLegend
|
1666
2326
|
];
|
1667
2327
|
const pivotAreaPercent = [
|
1668
2328
|
initPivot,
|
@@ -1671,6 +2331,7 @@ const pivotAreaPercent = [
|
|
1671
2331
|
datasetPivot,
|
1672
2332
|
pivotIndicators([
|
1673
2333
|
initArea,
|
2334
|
+
stackInverse,
|
1674
2335
|
color_color,
|
1675
2336
|
background_backgroundColor,
|
1676
2337
|
percent,
|
@@ -1682,7 +2343,7 @@ const pivotAreaPercent = [
|
|
1682
2343
|
]),
|
1683
2344
|
pivotRowDimensions,
|
1684
2345
|
pivotColumnDimensions,
|
1685
|
-
|
2346
|
+
pivotDiscreteLegend
|
1686
2347
|
];
|
1687
2348
|
const areaPercentSpecPipeline = [
|
1688
2349
|
pivotAdapter_pivotAdapter(areaPercent, pivotAreaPercent)
|
@@ -1694,7 +2355,7 @@ const pie = [
|
|
1694
2355
|
dataset_dataset,
|
1695
2356
|
label_label,
|
1696
2357
|
tooltip_tooltip,
|
1697
|
-
|
2358
|
+
discreteLegend
|
1698
2359
|
];
|
1699
2360
|
const pivotPie = [
|
1700
2361
|
initPivot,
|
@@ -1711,7 +2372,7 @@ const pivotPie = [
|
|
1711
2372
|
]),
|
1712
2373
|
pivotRowDimensions,
|
1713
2374
|
pivotColumnDimensions,
|
1714
|
-
|
2375
|
+
pivotDiscreteLegend
|
1715
2376
|
];
|
1716
2377
|
const pieSpecPipeline = [
|
1717
2378
|
pivotAdapter_pivotAdapter(pie, pivotPie)
|
@@ -1827,13 +2488,104 @@ const registerPie = ()=>{
|
|
1827
2488
|
Builder._advancedPipelineMap.pie = pieAdvancedPipeline;
|
1828
2489
|
Builder._specPipelineMap.pie = pieSpecPipeline;
|
1829
2490
|
};
|
1830
|
-
const lightTheme = ()=>
|
2491
|
+
const lightTheme = ()=>{
|
2492
|
+
const linearAxis = {
|
2493
|
+
nice: true,
|
2494
|
+
zero: true,
|
2495
|
+
inverse: false,
|
2496
|
+
label: {
|
2497
|
+
visible: true,
|
2498
|
+
labelAngle: 0,
|
2499
|
+
labelColor: '#797B85',
|
2500
|
+
labelFontSize: 12,
|
2501
|
+
labelFontWeight: 400
|
2502
|
+
},
|
2503
|
+
title: {
|
2504
|
+
visible: false,
|
2505
|
+
titleText: '',
|
2506
|
+
titleColor: '#646A73',
|
2507
|
+
titleFontSize: 12,
|
2508
|
+
titleFontWeight: 400
|
2509
|
+
},
|
2510
|
+
grid: {
|
2511
|
+
visible: true,
|
2512
|
+
gridColor: '#36415926',
|
2513
|
+
gridWidth: 0.5
|
2514
|
+
},
|
2515
|
+
tick: {
|
2516
|
+
visible: false,
|
2517
|
+
tickInside: false,
|
2518
|
+
tickSize: 4,
|
2519
|
+
tickColor: '#3641594d'
|
2520
|
+
},
|
2521
|
+
line: {
|
2522
|
+
visible: false,
|
2523
|
+
lineColor: '#3641594d',
|
2524
|
+
lineWidth: 1
|
2525
|
+
}
|
2526
|
+
};
|
2527
|
+
const bandAxis = {
|
2528
|
+
labelAutoHide: true,
|
2529
|
+
labelAutoHideGap: 4,
|
2530
|
+
labelAutoLimit: true,
|
2531
|
+
labelAutoLimitLength: 100,
|
2532
|
+
labelAutoRotate: true,
|
2533
|
+
labelAutoRotateAngleRange: [
|
2534
|
+
0,
|
2535
|
+
-45,
|
2536
|
+
-90
|
2537
|
+
],
|
2538
|
+
label: {
|
2539
|
+
visible: true,
|
2540
|
+
labelAngle: 0,
|
2541
|
+
labelColor: '#797B85',
|
2542
|
+
labelFontSize: 12,
|
2543
|
+
labelFontWeight: 400
|
2544
|
+
},
|
2545
|
+
title: {
|
2546
|
+
visible: false,
|
2547
|
+
titleText: '',
|
2548
|
+
titleColor: '#646A73',
|
2549
|
+
titleFontSize: 12,
|
2550
|
+
titleFontWeight: 400
|
2551
|
+
},
|
2552
|
+
grid: {
|
2553
|
+
visible: false,
|
2554
|
+
gridColor: '#36415926',
|
2555
|
+
gridWidth: 0.5
|
2556
|
+
},
|
2557
|
+
tick: {
|
2558
|
+
visible: false,
|
2559
|
+
tickInside: false,
|
2560
|
+
tickSize: 4,
|
2561
|
+
tickColor: '#3641594d'
|
2562
|
+
},
|
2563
|
+
line: {
|
2564
|
+
visible: true,
|
2565
|
+
lineColor: '#3641594d',
|
2566
|
+
lineWidth: 1
|
2567
|
+
}
|
2568
|
+
};
|
2569
|
+
const barBandAxis = {
|
2570
|
+
...bandAxis,
|
2571
|
+
labelAutoHide: false,
|
2572
|
+
labelAutoHideGap: 1,
|
2573
|
+
labelAutoLimit: false,
|
2574
|
+
labelAutoLimitLength: void 0,
|
2575
|
+
labelAutoRotate: false,
|
2576
|
+
labelAutoRotateAngleRange: [
|
2577
|
+
0,
|
2578
|
+
-45,
|
2579
|
+
-90
|
2580
|
+
]
|
2581
|
+
};
|
2582
|
+
return {
|
1831
2583
|
baseConfig: {
|
1832
2584
|
vtable: {
|
1833
|
-
backgroundColor: '
|
2585
|
+
backgroundColor: 'transparent'
|
1834
2586
|
},
|
1835
2587
|
vchart: {
|
1836
|
-
backgroundColor: '
|
2588
|
+
backgroundColor: 'transparent',
|
1837
2589
|
color: {
|
1838
2590
|
colorScheme: [
|
1839
2591
|
'#8D72F6',
|
@@ -1855,18 +2607,141 @@ const lightTheme = ()=>({
|
|
1855
2607
|
enable: true
|
1856
2608
|
},
|
1857
2609
|
legend: {
|
1858
|
-
enable: true
|
2610
|
+
enable: true,
|
2611
|
+
border: true,
|
2612
|
+
maxSize: 1,
|
2613
|
+
shapeType: 'rectRound',
|
2614
|
+
position: 'rt',
|
2615
|
+
labelFontColor: '#646A73',
|
2616
|
+
labelFontSize: 12,
|
2617
|
+
labelFontWeight: 400
|
1859
2618
|
}
|
1860
2619
|
}
|
2620
|
+
},
|
2621
|
+
config: {
|
2622
|
+
line: {
|
2623
|
+
xAxis: bandAxis,
|
2624
|
+
yAxis: linearAxis
|
2625
|
+
},
|
2626
|
+
column: {
|
2627
|
+
xAxis: bandAxis,
|
2628
|
+
yAxis: linearAxis
|
2629
|
+
},
|
2630
|
+
columnParallel: {
|
2631
|
+
xAxis: bandAxis,
|
2632
|
+
yAxis: linearAxis
|
2633
|
+
},
|
2634
|
+
columnPercent: {
|
2635
|
+
xAxis: bandAxis,
|
2636
|
+
yAxis: linearAxis
|
2637
|
+
},
|
2638
|
+
bar: {
|
2639
|
+
xAxis: linearAxis,
|
2640
|
+
yAxis: barBandAxis
|
2641
|
+
},
|
2642
|
+
barParallel: {
|
2643
|
+
xAxis: linearAxis,
|
2644
|
+
yAxis: barBandAxis
|
2645
|
+
},
|
2646
|
+
barPercent: {
|
2647
|
+
xAxis: linearAxis,
|
2648
|
+
yAxis: barBandAxis
|
2649
|
+
},
|
2650
|
+
area: {
|
2651
|
+
xAxis: bandAxis,
|
2652
|
+
yAxis: linearAxis
|
2653
|
+
},
|
2654
|
+
areaPercent: {
|
2655
|
+
xAxis: bandAxis,
|
2656
|
+
yAxis: linearAxis
|
2657
|
+
}
|
1861
2658
|
}
|
1862
|
-
}
|
1863
|
-
|
2659
|
+
};
|
2660
|
+
};
|
2661
|
+
const darkTheme = ()=>{
|
2662
|
+
const linearAxis = {
|
2663
|
+
nice: true,
|
2664
|
+
zero: true,
|
2665
|
+
label: {
|
2666
|
+
visible: true,
|
2667
|
+
labelAngle: 0,
|
2668
|
+
labelColor: '#E2E3E6',
|
2669
|
+
labelFontSize: 12,
|
2670
|
+
labelFontWeight: 400
|
2671
|
+
},
|
2672
|
+
title: {
|
2673
|
+
visible: false,
|
2674
|
+
titleText: '',
|
2675
|
+
titleColor: '#FDFDFD',
|
2676
|
+
titleFontSize: 12,
|
2677
|
+
titleFontWeight: 400
|
2678
|
+
},
|
2679
|
+
grid: {
|
2680
|
+
visible: true,
|
2681
|
+
gridColor: '#404349',
|
2682
|
+
gridWidth: 0.5
|
2683
|
+
},
|
2684
|
+
tick: {
|
2685
|
+
visible: false,
|
2686
|
+
tickInside: false,
|
2687
|
+
tickSize: 4,
|
2688
|
+
tickColor: '#4B4F54'
|
2689
|
+
},
|
2690
|
+
line: {
|
2691
|
+
visible: false,
|
2692
|
+
lineColor: '#4B4F54',
|
2693
|
+
lineWidth: 1
|
2694
|
+
}
|
2695
|
+
};
|
2696
|
+
const bandAxis = {
|
2697
|
+
labelAutoHide: true,
|
2698
|
+
labelAutoHideGap: 4,
|
2699
|
+
labelAutoLimit: true,
|
2700
|
+
labelAutoLimitLength: 100,
|
2701
|
+
labelAutoRotate: true,
|
2702
|
+
labelAutoRotateAngleRange: [
|
2703
|
+
0,
|
2704
|
+
-45,
|
2705
|
+
-90
|
2706
|
+
],
|
2707
|
+
label: {
|
2708
|
+
visible: true,
|
2709
|
+
labelAngle: 0,
|
2710
|
+
labelColor: '#E2E3E6',
|
2711
|
+
labelFontSize: 12,
|
2712
|
+
labelFontWeight: 400
|
2713
|
+
},
|
2714
|
+
title: {
|
2715
|
+
visible: false,
|
2716
|
+
titleText: '',
|
2717
|
+
titleColor: '#FDFDFD',
|
2718
|
+
titleFontSize: 12,
|
2719
|
+
titleFontWeight: 400
|
2720
|
+
},
|
2721
|
+
grid: {
|
2722
|
+
visible: false,
|
2723
|
+
gridColor: '#404349',
|
2724
|
+
gridWidth: 0.5
|
2725
|
+
},
|
2726
|
+
tick: {
|
2727
|
+
visible: false,
|
2728
|
+
tickInside: false,
|
2729
|
+
tickSize: 4,
|
2730
|
+
tickColor: '#4B4F54'
|
2731
|
+
},
|
2732
|
+
line: {
|
2733
|
+
visible: true,
|
2734
|
+
lineColor: '#4B4F54',
|
2735
|
+
lineWidth: 1
|
2736
|
+
}
|
2737
|
+
};
|
2738
|
+
return {
|
1864
2739
|
baseConfig: {
|
1865
2740
|
vtable: {
|
1866
|
-
backgroundColor: '
|
2741
|
+
backgroundColor: 'transparent'
|
1867
2742
|
},
|
1868
2743
|
vchart: {
|
1869
|
-
backgroundColor: '
|
2744
|
+
backgroundColor: 'transparent',
|
1870
2745
|
color: {
|
1871
2746
|
colorScheme: [
|
1872
2747
|
'#2E62F1',
|
@@ -1888,11 +2763,57 @@ const darkTheme = ()=>({
|
|
1888
2763
|
enable: true
|
1889
2764
|
},
|
1890
2765
|
legend: {
|
1891
|
-
enable: true
|
2766
|
+
enable: true,
|
2767
|
+
border: true,
|
2768
|
+
maxSize: 1,
|
2769
|
+
position: 'rt',
|
2770
|
+
shapeType: 'rectRound',
|
2771
|
+
labelFontColor: '#FDFDFD',
|
2772
|
+
labelFontSize: 12,
|
2773
|
+
labelFontWeight: 400
|
1892
2774
|
}
|
1893
2775
|
}
|
2776
|
+
},
|
2777
|
+
config: {
|
2778
|
+
line: {
|
2779
|
+
xAxis: bandAxis,
|
2780
|
+
yAxis: linearAxis
|
2781
|
+
},
|
2782
|
+
column: {
|
2783
|
+
xAxis: bandAxis,
|
2784
|
+
yAxis: linearAxis
|
2785
|
+
},
|
2786
|
+
columnParallel: {
|
2787
|
+
xAxis: bandAxis,
|
2788
|
+
yAxis: linearAxis
|
2789
|
+
},
|
2790
|
+
columnPercent: {
|
2791
|
+
xAxis: bandAxis,
|
2792
|
+
yAxis: linearAxis
|
2793
|
+
},
|
2794
|
+
bar: {
|
2795
|
+
xAxis: linearAxis,
|
2796
|
+
yAxis: bandAxis
|
2797
|
+
},
|
2798
|
+
barParallel: {
|
2799
|
+
xAxis: linearAxis,
|
2800
|
+
yAxis: bandAxis
|
2801
|
+
},
|
2802
|
+
barPercent: {
|
2803
|
+
xAxis: linearAxis,
|
2804
|
+
yAxis: bandAxis
|
2805
|
+
},
|
2806
|
+
area: {
|
2807
|
+
xAxis: bandAxis,
|
2808
|
+
yAxis: linearAxis
|
2809
|
+
},
|
2810
|
+
areaPercent: {
|
2811
|
+
xAxis: bandAxis,
|
2812
|
+
yAxis: linearAxis
|
2813
|
+
}
|
1894
2814
|
}
|
1895
|
-
}
|
2815
|
+
};
|
2816
|
+
};
|
1896
2817
|
const registerCustomTheme = (key, themeConfig)=>{
|
1897
2818
|
Builder._themeMap[key] = themeConfig;
|
1898
2819
|
};
|
@@ -2016,7 +2937,58 @@ const zTooltip = external_zod_namespaceObject.z.object({
|
|
2016
2937
|
enable: external_zod_namespaceObject.z.boolean().default(true).optional()
|
2017
2938
|
});
|
2018
2939
|
const zLegend = external_zod_namespaceObject.z.object({
|
2019
|
-
enable: external_zod_namespaceObject.z.boolean().default(true).optional()
|
2940
|
+
enable: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
2941
|
+
border: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
2942
|
+
maxSize: external_zod_namespaceObject.z.number().default(1).optional(),
|
2943
|
+
shapeType: external_zod_namespaceObject.z["enum"]([
|
2944
|
+
'circle',
|
2945
|
+
'cross',
|
2946
|
+
'diamond',
|
2947
|
+
'square',
|
2948
|
+
'arrow',
|
2949
|
+
'arrow2Left',
|
2950
|
+
'arrow2Right',
|
2951
|
+
'wedge',
|
2952
|
+
'thinTriangle',
|
2953
|
+
'triangle',
|
2954
|
+
'triangleUp',
|
2955
|
+
'triangleDown',
|
2956
|
+
'triangleRight',
|
2957
|
+
'triangleLeft',
|
2958
|
+
'stroke',
|
2959
|
+
'star',
|
2960
|
+
'wye',
|
2961
|
+
'rect',
|
2962
|
+
'arrowLeft',
|
2963
|
+
'arrowRight',
|
2964
|
+
'rectRound',
|
2965
|
+
'roundLine'
|
2966
|
+
]).default('rectRound').optional(),
|
2967
|
+
position: external_zod_namespaceObject.z["enum"]([
|
2968
|
+
'left',
|
2969
|
+
'leftTop',
|
2970
|
+
'leftBottom',
|
2971
|
+
'lt',
|
2972
|
+
'lb',
|
2973
|
+
'top',
|
2974
|
+
'topLeft',
|
2975
|
+
'topRight',
|
2976
|
+
'tl',
|
2977
|
+
'tr',
|
2978
|
+
'right',
|
2979
|
+
'rightTop',
|
2980
|
+
'rightBottom',
|
2981
|
+
'rt',
|
2982
|
+
'rb',
|
2983
|
+
'bottom',
|
2984
|
+
'bottomLeft',
|
2985
|
+
'bottomRight',
|
2986
|
+
'bl',
|
2987
|
+
'br'
|
2988
|
+
]).default('bottom').optional(),
|
2989
|
+
labelFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
2990
|
+
labelFontColor: external_zod_namespaceObject.z.string().default('#fff').optional(),
|
2991
|
+
labelFontWeight: external_zod_namespaceObject.z.number().or(external_zod_namespaceObject.z.string()).default(400).optional()
|
2020
2992
|
});
|
2021
2993
|
const zVChartBaseConfig = external_zod_namespaceObject.z.object({
|
2022
2994
|
backgroundColor: zBackgroundColor,
|
@@ -2032,12 +3004,245 @@ const zBaseConfig = external_zod_namespaceObject.z.object({
|
|
2032
3004
|
vchart: zVChartBaseConfig.optional(),
|
2033
3005
|
vtable: zVTableBaseConfig.optional()
|
2034
3006
|
});
|
3007
|
+
const zAxis = external_zod_namespaceObject.z.object({
|
3008
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3009
|
+
min: external_zod_namespaceObject.z.number().optional(),
|
3010
|
+
max: external_zod_namespaceObject.z.number().optional(),
|
3011
|
+
nice: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3012
|
+
zero: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3013
|
+
inverse: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3014
|
+
labelAutoHide: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3015
|
+
labelAutoHideGap: external_zod_namespaceObject.z.number().default(4).optional(),
|
3016
|
+
labelAutoRotate: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3017
|
+
labelAutoRotateAngleRange: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.number()).default([
|
3018
|
+
0,
|
3019
|
+
-45,
|
3020
|
+
-90
|
3021
|
+
]).optional(),
|
3022
|
+
labelAutoLimit: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3023
|
+
labelAutoLimitLength: external_zod_namespaceObject.z.number().default(100).optional(),
|
3024
|
+
label: external_zod_namespaceObject.z.object({
|
3025
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3026
|
+
labelColor: external_zod_namespaceObject.z.string().default('#797B85').optional(),
|
3027
|
+
labelFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3028
|
+
labelFontWeight: external_zod_namespaceObject.z.number().default(400).optional(),
|
3029
|
+
labelAngle: external_zod_namespaceObject.z.number().default(0).optional()
|
3030
|
+
}).optional(),
|
3031
|
+
line: external_zod_namespaceObject.z.object({
|
3032
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3033
|
+
lineColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3034
|
+
lineWidth: external_zod_namespaceObject.z.number().default(1).optional()
|
3035
|
+
}).optional(),
|
3036
|
+
tick: external_zod_namespaceObject.z.object({
|
3037
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3038
|
+
tickInside: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3039
|
+
tickColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3040
|
+
tickSize: external_zod_namespaceObject.z.number().default(4).optional()
|
3041
|
+
}).optional(),
|
3042
|
+
title: external_zod_namespaceObject.z.object({
|
3043
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3044
|
+
titleText: external_zod_namespaceObject.z.string().default('').optional(),
|
3045
|
+
titleColor: external_zod_namespaceObject.z.string().default('#646A73').optional(),
|
3046
|
+
titleFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3047
|
+
titleFontWeight: external_zod_namespaceObject.z.number().default(400).optional()
|
3048
|
+
}).optional(),
|
3049
|
+
grid: external_zod_namespaceObject.z.object({
|
3050
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3051
|
+
gridColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.15)').optional(),
|
3052
|
+
gridWidth: external_zod_namespaceObject.z.number().default(0.5).optional()
|
3053
|
+
}).optional()
|
3054
|
+
});
|
3055
|
+
const zXBandAxis = external_zod_namespaceObject.z.object({
|
3056
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3057
|
+
labelAutoHide: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3058
|
+
labelAutoHideGap: external_zod_namespaceObject.z.number().default(0).optional(),
|
3059
|
+
labelAutoRotate: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3060
|
+
labelAutoRotateAngleRange: external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.number()).default([
|
3061
|
+
0,
|
3062
|
+
-45,
|
3063
|
+
-90
|
3064
|
+
]).optional(),
|
3065
|
+
labelAutoLimit: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3066
|
+
labelAutoLimitLength: external_zod_namespaceObject.z.number().default(100).optional(),
|
3067
|
+
label: external_zod_namespaceObject.z.object({
|
3068
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3069
|
+
labelColor: external_zod_namespaceObject.z.string().default('#797B85').optional(),
|
3070
|
+
labelFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3071
|
+
labelFontWeight: external_zod_namespaceObject.z.number().default(400).optional(),
|
3072
|
+
labelAngle: external_zod_namespaceObject.z.number().default(0).optional()
|
3073
|
+
}).optional(),
|
3074
|
+
line: external_zod_namespaceObject.z.object({
|
3075
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3076
|
+
lineColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3077
|
+
lineWidth: external_zod_namespaceObject.z.number().default(1).optional()
|
3078
|
+
}).optional(),
|
3079
|
+
tick: external_zod_namespaceObject.z.object({
|
3080
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3081
|
+
tickInside: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3082
|
+
tickColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3083
|
+
tickSize: external_zod_namespaceObject.z.number().default(4).optional()
|
3084
|
+
}).optional(),
|
3085
|
+
title: external_zod_namespaceObject.z.object({
|
3086
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3087
|
+
titleText: external_zod_namespaceObject.z.string().default('').optional(),
|
3088
|
+
titleColor: external_zod_namespaceObject.z.string().default('#646A73').optional(),
|
3089
|
+
titleFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3090
|
+
titleFontWeight: external_zod_namespaceObject.z.number().default(400).optional()
|
3091
|
+
}).optional(),
|
3092
|
+
grid: external_zod_namespaceObject.z.object({
|
3093
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3094
|
+
gridColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.15)').optional(),
|
3095
|
+
gridWidth: external_zod_namespaceObject.z.number().default(0.5).optional()
|
3096
|
+
}).optional()
|
3097
|
+
});
|
3098
|
+
const zYBandAxis = zXBandAxis;
|
3099
|
+
const zXLinearAxis = external_zod_namespaceObject.z.object({
|
3100
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3101
|
+
min: external_zod_namespaceObject.z.number().optional(),
|
3102
|
+
max: external_zod_namespaceObject.z.number().optional(),
|
3103
|
+
nice: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3104
|
+
zero: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3105
|
+
inverse: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3106
|
+
label: external_zod_namespaceObject.z.object({
|
3107
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3108
|
+
labelColor: external_zod_namespaceObject.z.string().default('#797B85').optional(),
|
3109
|
+
labelFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3110
|
+
labelFontWeight: external_zod_namespaceObject.z.number().default(400).optional(),
|
3111
|
+
labelAngle: external_zod_namespaceObject.z.number().default(0).optional()
|
3112
|
+
}).optional(),
|
3113
|
+
line: external_zod_namespaceObject.z.object({
|
3114
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3115
|
+
lineColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3116
|
+
lineWidth: external_zod_namespaceObject.z.number().default(1).optional()
|
3117
|
+
}).optional(),
|
3118
|
+
tick: external_zod_namespaceObject.z.object({
|
3119
|
+
visible: external_zod_namespaceObject.z.boolean().default(true).optional(),
|
3120
|
+
tickInside: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3121
|
+
tickColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.30)').optional(),
|
3122
|
+
tickSize: external_zod_namespaceObject.z.number().default(4).optional()
|
3123
|
+
}).optional(),
|
3124
|
+
title: external_zod_namespaceObject.z.object({
|
3125
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3126
|
+
titleText: external_zod_namespaceObject.z.string().default('').optional(),
|
3127
|
+
titleColor: external_zod_namespaceObject.z.string().default('#646A73').optional(),
|
3128
|
+
titleFontSize: external_zod_namespaceObject.z.number().default(12).optional(),
|
3129
|
+
titleFontWeight: external_zod_namespaceObject.z.number().default(400).optional()
|
3130
|
+
}).optional(),
|
3131
|
+
grid: external_zod_namespaceObject.z.object({
|
3132
|
+
visible: external_zod_namespaceObject.z.boolean().default(false).optional(),
|
3133
|
+
gridColor: external_zod_namespaceObject.z.string().default('rgba(54, 65, 89, 0.15)').optional(),
|
3134
|
+
gridWidth: external_zod_namespaceObject.z.number().default(0.5).optional()
|
3135
|
+
}).optional()
|
3136
|
+
});
|
3137
|
+
const zYLinearAxis = zXLinearAxis;
|
3138
|
+
const zConfig = external_zod_namespaceObject.z.object({
|
3139
|
+
line: external_zod_namespaceObject.z.object({
|
3140
|
+
xAxis: zXBandAxis,
|
3141
|
+
yAxis: zYLinearAxis
|
3142
|
+
}).optional(),
|
3143
|
+
column: external_zod_namespaceObject.z.object({
|
3144
|
+
xAxis: zXBandAxis,
|
3145
|
+
yAxis: zYLinearAxis
|
3146
|
+
}).optional(),
|
3147
|
+
columnParallel: external_zod_namespaceObject.z.object({
|
3148
|
+
xAxis: zXBandAxis,
|
3149
|
+
yAxis: zYLinearAxis
|
3150
|
+
}).optional(),
|
3151
|
+
columnPercent: external_zod_namespaceObject.z.object({
|
3152
|
+
xAxis: zXBandAxis,
|
3153
|
+
yAxis: zYLinearAxis
|
3154
|
+
}).optional(),
|
3155
|
+
bar: external_zod_namespaceObject.z.object({
|
3156
|
+
xAxis: zXLinearAxis,
|
3157
|
+
yAxis: zYBandAxis
|
3158
|
+
}).optional(),
|
3159
|
+
barParallel: external_zod_namespaceObject.z.object({
|
3160
|
+
xAxis: zXLinearAxis,
|
3161
|
+
yAxis: zYBandAxis
|
3162
|
+
}).optional(),
|
3163
|
+
barPercent: external_zod_namespaceObject.z.object({
|
3164
|
+
xAxis: zXLinearAxis,
|
3165
|
+
yAxis: zYBandAxis
|
3166
|
+
}).optional(),
|
3167
|
+
area: external_zod_namespaceObject.z.object({
|
3168
|
+
xAxis: zXBandAxis,
|
3169
|
+
yAxis: zYLinearAxis
|
3170
|
+
}).optional(),
|
3171
|
+
areaPercent: external_zod_namespaceObject.z.object({
|
3172
|
+
xAxis: zXBandAxis,
|
3173
|
+
yAxis: zYLinearAxis
|
3174
|
+
}).optional(),
|
3175
|
+
pie: external_zod_namespaceObject.z.object({}).optional(),
|
3176
|
+
donut: external_zod_namespaceObject.z.object({}).optional(),
|
3177
|
+
rose: external_zod_namespaceObject.z.object({}).optional(),
|
3178
|
+
dualAxis: external_zod_namespaceObject.z.object({}).optional(),
|
3179
|
+
table: external_zod_namespaceObject.z.object({}).optional(),
|
3180
|
+
pivotTable: external_zod_namespaceObject.z.object({}).optional()
|
3181
|
+
});
|
2035
3182
|
const zCustomThemeConfig = external_zod_namespaceObject.z.object({
|
2036
|
-
baseConfig: zBaseConfig.optional()
|
3183
|
+
baseConfig: zBaseConfig.optional(),
|
3184
|
+
config: zConfig.optional()
|
2037
3185
|
});
|
2038
3186
|
const zCustomTheme = external_zod_namespaceObject.z.record(external_zod_namespaceObject.z.string(), zCustomThemeConfig).optional();
|
2039
3187
|
const zTheme = external_zod_namespaceObject.z.string();
|
3188
|
+
const zSelector = external_zod_namespaceObject.z.union([
|
3189
|
+
external_zod_namespaceObject.z.string(),
|
3190
|
+
external_zod_namespaceObject.z.number(),
|
3191
|
+
external_zod_namespaceObject.z.object({
|
3192
|
+
field: external_zod_namespaceObject.z.string(),
|
3193
|
+
operator: external_zod_namespaceObject.z.string(),
|
3194
|
+
value: external_zod_namespaceObject.z.union([
|
3195
|
+
external_zod_namespaceObject.z.string(),
|
3196
|
+
external_zod_namespaceObject.z.number(),
|
3197
|
+
external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.union([
|
3198
|
+
external_zod_namespaceObject.z.string(),
|
3199
|
+
external_zod_namespaceObject.z.number()
|
3200
|
+
]))
|
3201
|
+
])
|
3202
|
+
}),
|
3203
|
+
external_zod_namespaceObject.z.object({
|
3204
|
+
field: external_zod_namespaceObject.z.string(),
|
3205
|
+
operator: external_zod_namespaceObject.z.string(),
|
3206
|
+
value: external_zod_namespaceObject.z.union([
|
3207
|
+
external_zod_namespaceObject.z.string(),
|
3208
|
+
external_zod_namespaceObject.z.number(),
|
3209
|
+
external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.union([
|
3210
|
+
external_zod_namespaceObject.z.string(),
|
3211
|
+
external_zod_namespaceObject.z.number()
|
3212
|
+
]))
|
3213
|
+
])
|
3214
|
+
})
|
3215
|
+
]);
|
3216
|
+
const zSelectors = external_zod_namespaceObject.z.array(zSelector);
|
3217
|
+
const zBarStyle = external_zod_namespaceObject.z.object({
|
3218
|
+
selector: external_zod_namespaceObject.z.union([
|
3219
|
+
zSelector,
|
3220
|
+
zSelectors
|
3221
|
+
]),
|
3222
|
+
barColor: external_zod_namespaceObject.z.string(),
|
3223
|
+
barColorOpacity: external_zod_namespaceObject.z.number(),
|
3224
|
+
barBorderColor: external_zod_namespaceObject.z.string(),
|
3225
|
+
barBorderWidth: external_zod_namespaceObject.z.number(),
|
3226
|
+
barBorderStyle: external_zod_namespaceObject.z.union([
|
3227
|
+
external_zod_namespaceObject.z.literal('solid'),
|
3228
|
+
external_zod_namespaceObject.z.literal('dashed'),
|
3229
|
+
external_zod_namespaceObject.z.literal('dotted')
|
3230
|
+
]),
|
3231
|
+
barRadius: external_zod_namespaceObject.z.union([
|
3232
|
+
external_zod_namespaceObject.z.number(),
|
3233
|
+
external_zod_namespaceObject.z.array(external_zod_namespaceObject.z.number())
|
3234
|
+
])
|
3235
|
+
});
|
3236
|
+
const zMarkStyle = external_zod_namespaceObject.z.object({
|
3237
|
+
barStyle: zBarStyle.optional()
|
3238
|
+
});
|
2040
3239
|
exports.Builder = __webpack_exports__.Builder;
|
3240
|
+
exports.FoldMeasureId = __webpack_exports__.FoldMeasureId;
|
3241
|
+
exports.FoldMeasureName = __webpack_exports__.FoldMeasureName;
|
3242
|
+
exports.FoldMeasureValue = __webpack_exports__.FoldMeasureValue;
|
3243
|
+
exports.ORIGINAL_DATA = __webpack_exports__.ORIGINAL_DATA;
|
3244
|
+
exports.Separator = __webpack_exports__.Separator;
|
3245
|
+
exports.UnfoldDimensionGroup = __webpack_exports__.UnfoldDimensionGroup;
|
2041
3246
|
exports.areaAdvancedPipeline = __webpack_exports__.areaAdvancedPipeline;
|
2042
3247
|
exports.areaPercentAdvancedPipeline = __webpack_exports__.areaPercentAdvancedPipeline;
|
2043
3248
|
exports.areaPercentSpecPipeline = __webpack_exports__.areaPercentSpecPipeline;
|
@@ -2081,10 +3286,13 @@ exports.registerDarkTheme = __webpack_exports__.registerDarkTheme;
|
|
2081
3286
|
exports.registerLightTheme = __webpack_exports__.registerLightTheme;
|
2082
3287
|
exports.registerLine = __webpack_exports__.registerLine;
|
2083
3288
|
exports.unfoldDimensions = __webpack_exports__.unfoldDimensions;
|
3289
|
+
exports.zAxis = __webpack_exports__.zAxis;
|
2084
3290
|
exports.zBackgroundColor = __webpack_exports__.zBackgroundColor;
|
3291
|
+
exports.zBarStyle = __webpack_exports__.zBarStyle;
|
2085
3292
|
exports.zBaseConfig = __webpack_exports__.zBaseConfig;
|
2086
3293
|
exports.zChartType = __webpack_exports__.zChartType;
|
2087
3294
|
exports.zColor = __webpack_exports__.zColor;
|
3295
|
+
exports.zConfig = __webpack_exports__.zConfig;
|
2088
3296
|
exports.zCustomTheme = __webpack_exports__.zCustomTheme;
|
2089
3297
|
exports.zCustomThemeConfig = __webpack_exports__.zCustomThemeConfig;
|
2090
3298
|
exports.zDataset = __webpack_exports__.zDataset;
|
@@ -2096,14 +3304,25 @@ exports.zEncoding = __webpack_exports__.zEncoding;
|
|
2096
3304
|
exports.zFoldInfo = __webpack_exports__.zFoldInfo;
|
2097
3305
|
exports.zLabel = __webpack_exports__.zLabel;
|
2098
3306
|
exports.zLegend = __webpack_exports__.zLegend;
|
3307
|
+
exports.zMarkStyle = __webpack_exports__.zMarkStyle;
|
2099
3308
|
exports.zMeasure = __webpack_exports__.zMeasure;
|
2100
3309
|
exports.zMeasureGroup = __webpack_exports__.zMeasureGroup;
|
2101
3310
|
exports.zMeasures = __webpack_exports__.zMeasures;
|
2102
3311
|
exports.zTheme = __webpack_exports__.zTheme;
|
2103
3312
|
exports.zTooltip = __webpack_exports__.zTooltip;
|
2104
3313
|
exports.zUnfoldInfo = __webpack_exports__.zUnfoldInfo;
|
3314
|
+
exports.zXBandAxis = __webpack_exports__.zXBandAxis;
|
3315
|
+
exports.zXLinearAxis = __webpack_exports__.zXLinearAxis;
|
3316
|
+
exports.zYBandAxis = __webpack_exports__.zYBandAxis;
|
3317
|
+
exports.zYLinearAxis = __webpack_exports__.zYLinearAxis;
|
2105
3318
|
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
2106
3319
|
"Builder",
|
3320
|
+
"FoldMeasureId",
|
3321
|
+
"FoldMeasureName",
|
3322
|
+
"FoldMeasureValue",
|
3323
|
+
"ORIGINAL_DATA",
|
3324
|
+
"Separator",
|
3325
|
+
"UnfoldDimensionGroup",
|
2107
3326
|
"areaAdvancedPipeline",
|
2108
3327
|
"areaPercentAdvancedPipeline",
|
2109
3328
|
"areaPercentSpecPipeline",
|
@@ -2147,10 +3366,13 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
2147
3366
|
"registerLightTheme",
|
2148
3367
|
"registerLine",
|
2149
3368
|
"unfoldDimensions",
|
3369
|
+
"zAxis",
|
2150
3370
|
"zBackgroundColor",
|
3371
|
+
"zBarStyle",
|
2151
3372
|
"zBaseConfig",
|
2152
3373
|
"zChartType",
|
2153
3374
|
"zColor",
|
3375
|
+
"zConfig",
|
2154
3376
|
"zCustomTheme",
|
2155
3377
|
"zCustomThemeConfig",
|
2156
3378
|
"zDataset",
|
@@ -2162,12 +3384,17 @@ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
2162
3384
|
"zFoldInfo",
|
2163
3385
|
"zLabel",
|
2164
3386
|
"zLegend",
|
3387
|
+
"zMarkStyle",
|
2165
3388
|
"zMeasure",
|
2166
3389
|
"zMeasureGroup",
|
2167
3390
|
"zMeasures",
|
2168
3391
|
"zTheme",
|
2169
3392
|
"zTooltip",
|
2170
|
-
"zUnfoldInfo"
|
3393
|
+
"zUnfoldInfo",
|
3394
|
+
"zXBandAxis",
|
3395
|
+
"zXLinearAxis",
|
3396
|
+
"zYBandAxis",
|
3397
|
+
"zYLinearAxis"
|
2171
3398
|
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
2172
3399
|
Object.defineProperty(exports, '__esModule', {
|
2173
3400
|
value: true
|