@visactor/vseed 0.1.5 → 0.1.6
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 +2 -2
- package/dist/index.cjs +347 -285
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +347 -285
- package/dist/index.js.map +1 -1
- package/dist/pipeline/advanced/chart/pipes/{init/autoDimensions.d.ts → default/defaultDimensions.d.ts} +1 -1
- package/dist/pipeline/advanced/chart/pipes/default/defaultMeasureName.d.ts +2 -0
- package/dist/pipeline/advanced/chart/pipes/default/defaultMeasures.d.ts +5 -0
- package/dist/pipeline/advanced/chart/pipes/default/index.d.ts +3 -0
- package/dist/pipeline/advanced/chart/pipes/encoding/column.d.ts +19 -0
- package/dist/pipeline/advanced/chart/pipes/encoding/line.d.ts +17 -0
- package/dist/pipeline/advanced/chart/pipes/index.d.ts +1 -0
- package/dist/pipeline/advanced/chart/pipes/init/index.d.ts +0 -2
- package/dist/pipeline/advanced/chart/pipes/measures/utils.d.ts +3 -18
- package/dist/pipeline/advanced/table/pipes/reshape/index.d.ts +1 -0
- package/dist/pipeline/advanced/table/pipes/reshape/reshapePivotTable.d.ts +2 -0
- package/dist/types/advancedVSeed.d.ts +2 -0
- package/dist/types/chartType/area/area.d.ts +20 -3
- package/dist/types/chartType/area/zArea.d.ts +2 -0
- package/dist/types/chartType/areaPercent/areaPercent.d.ts +16 -0
- package/dist/types/chartType/areaPercent/zAreaPercent.d.ts +2 -0
- package/dist/types/chartType/bar/zBar.d.ts +2 -0
- package/dist/types/chartType/barParallel/zBarParallel.d.ts +2 -0
- package/dist/types/chartType/barPercent/zBarPercent.d.ts +2 -0
- package/dist/types/chartType/column/column.d.ts +17 -1
- package/dist/types/chartType/column/zColumn.d.ts +2 -0
- package/dist/types/chartType/columnParallel/columnParallel.d.ts +17 -0
- package/dist/types/chartType/columnParallel/zColumnParallel.d.ts +2 -0
- package/dist/types/chartType/columnPercent/columnPercent.d.ts +17 -1
- package/dist/types/chartType/columnPercent/zColumnPercent.d.ts +2 -0
- package/dist/types/chartType/donut/zDonut.d.ts +2 -0
- package/dist/types/chartType/dualAxis/zDualAxis.d.ts +10 -0
- package/dist/types/chartType/funnel/zFunnel.d.ts +2 -0
- package/dist/types/chartType/heatmap/zHeatmap.d.ts +2 -0
- package/dist/types/chartType/line/line.d.ts +16 -0
- package/dist/types/chartType/line/zLine.d.ts +2 -0
- package/dist/types/chartType/pie/zPie.d.ts +2 -0
- package/dist/types/chartType/pivotTable/zPivotTable.d.ts +2 -0
- package/dist/types/chartType/radar/zRadar.d.ts +2 -0
- package/dist/types/chartType/rose/zRose.d.ts +2 -0
- package/dist/types/chartType/roseParallel/zRoseParallel.d.ts +2 -0
- package/dist/types/chartType/scatter/zScatter.d.ts +10 -0
- package/dist/types/chartType/table/zTable.d.ts +2 -0
- package/dist/types/properties/measures/measures.d.ts +3 -1
- package/dist/types/properties/measures/zDualMeasures.d.ts +16 -0
- package/dist/types/properties/measures/zMeasures.d.ts +6 -0
- package/dist/types/properties/measures/zScatterMeasures.d.ts +16 -0
- package/dist/types/zVseed.d.ts +56 -0
- package/dist/umd/index.js +368 -306
- package/dist/umd/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/pipeline/advanced/chart/pipes/init/utils.d.ts +0 -2
package/dist/umd/index.js
CHANGED
@@ -514,7 +514,8 @@
|
|
514
514
|
void 0
|
515
515
|
].includes(key)).map((measure)=>({
|
516
516
|
id: measure,
|
517
|
-
alias: measure
|
517
|
+
alias: measure,
|
518
|
+
encoding: 'column'
|
518
519
|
}));
|
519
520
|
return result;
|
520
521
|
};
|
@@ -598,7 +599,7 @@
|
|
598
599
|
].includes(key) && !measures.some((measure)=>measure.id === key)).map((dim)=>({
|
599
600
|
id: dim,
|
600
601
|
alias: dim,
|
601
|
-
|
602
|
+
encoding: 'column'
|
602
603
|
}));
|
603
604
|
return result;
|
604
605
|
};
|
@@ -1118,10 +1119,27 @@
|
|
1118
1119
|
void 0
|
1119
1120
|
].includes(key)).map((measure)=>({
|
1120
1121
|
id: measure,
|
1121
|
-
alias: measure
|
1122
|
+
alias: measure,
|
1123
|
+
encoding: 'detail'
|
1122
1124
|
}));
|
1123
1125
|
return result;
|
1124
1126
|
};
|
1127
|
+
const ORIGINAL_DATA = '__OriginalData__';
|
1128
|
+
const Separator = '-';
|
1129
|
+
const FoldMeasureName = '__MeaName__';
|
1130
|
+
const FoldMeasureId = '__MeaId__';
|
1131
|
+
const FoldMeasureValue = '__MeaValue__';
|
1132
|
+
const MeasureName = FoldMeasureName;
|
1133
|
+
const FoldPrimaryMeasureValue = '__MeaPrimaryValue__';
|
1134
|
+
const FoldSecondaryMeasureValue = '__MeaSecondaryValue__';
|
1135
|
+
const FoldXMeasureValue = '__MeaXValue__';
|
1136
|
+
const FoldYMeasureValue = '__MeaYValue__';
|
1137
|
+
const XEncoding = '__Dim_X__';
|
1138
|
+
const YEncoding = '__Dim_Y__';
|
1139
|
+
const AngleEncoding = '__Dim_Angle__';
|
1140
|
+
const DetailEncoding = '__Dim_Detail__';
|
1141
|
+
const ColorEncoding = '__Dim_Color__';
|
1142
|
+
const ColorIdEncoding = '__Dim_ColorId__';
|
1125
1143
|
const findAllDimensions = (dimensions = [])=>{
|
1126
1144
|
if (!dimensions) return [];
|
1127
1145
|
const result = [];
|
@@ -1138,15 +1156,21 @@
|
|
1138
1156
|
const { vseed } = context;
|
1139
1157
|
const { dimensions, dataset } = vseed;
|
1140
1158
|
const measures = findAllMeasures(advancedVSeed.measures);
|
1159
|
+
const MeaName = {
|
1160
|
+
id: MeasureName,
|
1161
|
+
alias: intl.i18n`指标名称`
|
1162
|
+
};
|
1141
1163
|
if (!dataset) throw new Error('dataset is required');
|
1142
1164
|
if (0 === dataset.length) return result;
|
1143
1165
|
if (dimensions) {
|
1144
1166
|
const newDimensions = findAllDimensions(dimensions);
|
1167
|
+
if (!newDimensions.some((dim)=>dim.id === MeasureName)) newDimensions.push(MeaName);
|
1145
1168
|
result.dimensions = newDimensions.map((item, index)=>{
|
1169
|
+
if ('row' === item.encoding || 'column' === item.encoding) return item;
|
1146
1170
|
if ('rowDimension' === item.location || 'columnDimension' === item.location) return item;
|
1147
1171
|
return {
|
1148
1172
|
...item,
|
1149
|
-
|
1173
|
+
encoding: index % 2 === 0 ? 'column' : 'row'
|
1150
1174
|
};
|
1151
1175
|
});
|
1152
1176
|
return result;
|
@@ -1156,15 +1180,19 @@
|
|
1156
1180
|
...prev,
|
1157
1181
|
...cur
|
1158
1182
|
}), {});
|
1159
|
-
|
1160
|
-
result.dimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
1183
|
+
const newDimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
1161
1184
|
'',
|
1162
1185
|
null,
|
1163
1186
|
void 0
|
1164
|
-
].includes(key) && !measures.some((measure)=>measure.id === key))
|
1187
|
+
].includes(key) && !measures.some((measure)=>measure.id === key));
|
1188
|
+
result.dimensions = newDimensions.map((dim)=>({
|
1165
1189
|
id: dim,
|
1166
|
-
alias: dim
|
1167
|
-
|
1190
|
+
alias: dim
|
1191
|
+
}));
|
1192
|
+
result.dimensions.push(MeaName);
|
1193
|
+
result.dimensions = result.dimensions.map((dim, index)=>({
|
1194
|
+
...dim,
|
1195
|
+
encoding: index % 2 === 0 ? 'column' : 'row'
|
1168
1196
|
}));
|
1169
1197
|
return result;
|
1170
1198
|
};
|
@@ -1195,11 +1223,110 @@
|
|
1195
1223
|
};
|
1196
1224
|
return result;
|
1197
1225
|
};
|
1226
|
+
function chunk_AIG3BDKO_i(...e) {
|
1227
|
+
return chunk_WIMGWYZL_u(chunk_AIG3BDKO_n, e);
|
1228
|
+
}
|
1229
|
+
var chunk_AIG3BDKO_n = (e, r)=>e.length >= r;
|
1230
|
+
function chunk_KI5X74E2_y(...t) {
|
1231
|
+
return chunk_WIMGWYZL_u(chunk_KI5X74E2_f, t);
|
1232
|
+
}
|
1233
|
+
function chunk_KI5X74E2_f(t, e) {
|
1234
|
+
if (!chunk_AIG3BDKO_i(e, 1)) return {
|
1235
|
+
...t
|
1236
|
+
};
|
1237
|
+
if (!chunk_AIG3BDKO_i(e, 2)) {
|
1238
|
+
let { [e[0]]: r, ...m } = t;
|
1239
|
+
return m;
|
1240
|
+
}
|
1241
|
+
let o = {
|
1242
|
+
...t
|
1243
|
+
};
|
1244
|
+
for (let r of e)delete o[r];
|
1245
|
+
return o;
|
1246
|
+
}
|
1247
|
+
const foldMeasures = (dataset, measures, options)=>{
|
1248
|
+
const { measureId, measureName, measureValue, colorMeasureId } = options || {};
|
1249
|
+
const foldInfo = {
|
1250
|
+
measureId,
|
1251
|
+
measureName,
|
1252
|
+
measureValue,
|
1253
|
+
colorRange: [
|
1254
|
+
0,
|
1255
|
+
1
|
1256
|
+
],
|
1257
|
+
measureRange: [
|
1258
|
+
0,
|
1259
|
+
1
|
1260
|
+
],
|
1261
|
+
foldMap: {}
|
1262
|
+
};
|
1263
|
+
const result = new Array(dataset.length * measures.length);
|
1264
|
+
let index = 0;
|
1265
|
+
const ids = measures.map((d)=>d.id);
|
1266
|
+
for(let i = 0; i < dataset.length; i++)for(let j = 0; j < measures.length; j++){
|
1267
|
+
const datum = chunk_KI5X74E2_y({
|
1268
|
+
...dataset[i]
|
1269
|
+
}, ids);
|
1270
|
+
datum[ORIGINAL_DATA] = dataset[i];
|
1271
|
+
const measure = measures[j];
|
1272
|
+
const { id, alias } = measure;
|
1273
|
+
datum[id] = dataset[i][id];
|
1274
|
+
datum[measureId] = id;
|
1275
|
+
datum[measureName] = alias || id;
|
1276
|
+
datum[measureValue] = dataset[i][id];
|
1277
|
+
if (colorMeasureId) {
|
1278
|
+
const value = datum[ORIGINAL_DATA][colorMeasureId];
|
1279
|
+
datum[ColorEncoding] = value;
|
1280
|
+
datum[ColorIdEncoding] = colorMeasureId;
|
1281
|
+
foldInfo.colorRange = [
|
1282
|
+
Math.min(foldInfo.colorRange[0] || 1 / 0, Number(value)),
|
1283
|
+
Math.max(foldInfo.colorRange[1] || -1 / 0, Number(value))
|
1284
|
+
];
|
1285
|
+
}
|
1286
|
+
foldInfo.measureRange = [
|
1287
|
+
Math.min(foldInfo.measureRange[0] || 1 / 0, Number(datum[id])),
|
1288
|
+
Math.max(foldInfo.measureRange[1] || -1 / 0, Number(datum[id]))
|
1289
|
+
];
|
1290
|
+
foldInfo.foldMap[id] = alias;
|
1291
|
+
result[index++] = datum;
|
1292
|
+
}
|
1293
|
+
return {
|
1294
|
+
dataset: result,
|
1295
|
+
foldInfo
|
1296
|
+
};
|
1297
|
+
};
|
1298
|
+
const reshapePivotTable = (advancedVSeed, context)=>{
|
1299
|
+
const result = {
|
1300
|
+
...advancedVSeed
|
1301
|
+
};
|
1302
|
+
const { vseed } = context;
|
1303
|
+
const { dataset, chartType } = vseed;
|
1304
|
+
const { dimensions, measures } = advancedVSeed;
|
1305
|
+
const { dataset: newDatasets, foldInfo } = foldMeasures(dataset, findAllMeasures(measures), {
|
1306
|
+
measureId: FoldMeasureId,
|
1307
|
+
measureName: FoldMeasureName,
|
1308
|
+
measureValue: FoldMeasureValue
|
1309
|
+
});
|
1310
|
+
const datasetReshapeInfo = [
|
1311
|
+
{
|
1312
|
+
id: String(chartType),
|
1313
|
+
index: 0,
|
1314
|
+
foldInfo
|
1315
|
+
}
|
1316
|
+
];
|
1317
|
+
return {
|
1318
|
+
...result,
|
1319
|
+
dataset: newDatasets,
|
1320
|
+
datasetReshapeInfo: datasetReshapeInfo,
|
1321
|
+
dimensions,
|
1322
|
+
measures
|
1323
|
+
};
|
1324
|
+
};
|
1198
1325
|
const pivotTableAdvancedPipeline = [
|
1199
1326
|
initAdvancedVSeed,
|
1200
1327
|
autoPivotMeasures,
|
1201
1328
|
autoPivotDimensions,
|
1202
|
-
|
1329
|
+
reshapePivotTable,
|
1203
1330
|
pivotTableConfig,
|
1204
1331
|
theme_theme
|
1205
1332
|
];
|
@@ -1246,7 +1373,7 @@
|
|
1246
1373
|
const pivotColumns = (spec, context)=>{
|
1247
1374
|
const { advancedVSeed } = context;
|
1248
1375
|
const dimensions = advancedVSeed.dimensions;
|
1249
|
-
const columns = dimensions.filter((item)=>'columnDimension' === item['location']);
|
1376
|
+
const columns = dimensions.filter((item)=>'columnDimension' === item['location'] || 'column' === item['encoding']);
|
1250
1377
|
return {
|
1251
1378
|
...spec,
|
1252
1379
|
columns: columns.map((item)=>({
|
@@ -1259,7 +1386,7 @@
|
|
1259
1386
|
const pivotRows = (spec, context)=>{
|
1260
1387
|
const { advancedVSeed } = context;
|
1261
1388
|
const dimensions = advancedVSeed.dimensions;
|
1262
|
-
const rows = dimensions.filter((item)=>'rowDimension' === item['location']);
|
1389
|
+
const rows = dimensions.filter((item)=>'rowDimension' === item['location'] || 'row' === item['encoding']);
|
1263
1390
|
return {
|
1264
1391
|
...spec,
|
1265
1392
|
rows: rows.map((item)=>({
|
@@ -1271,25 +1398,31 @@
|
|
1271
1398
|
};
|
1272
1399
|
const pivotIndicators = (spec, context)=>{
|
1273
1400
|
const { advancedVSeed } = context;
|
1274
|
-
const { locale } = advancedVSeed;
|
1275
|
-
const
|
1401
|
+
const { locale, measures, datasetReshapeInfo } = advancedVSeed;
|
1402
|
+
const { foldInfo } = datasetReshapeInfo[0];
|
1276
1403
|
return {
|
1277
1404
|
...spec,
|
1278
1405
|
indicatorsAsCol: true,
|
1279
1406
|
indicatorTitle: intl.i18n`指标名称`,
|
1280
|
-
|
1281
|
-
|
1407
|
+
hideIndicatorName: true,
|
1408
|
+
indicators: [
|
1409
|
+
{
|
1282
1410
|
cellType: 'text',
|
1283
|
-
indicatorKey:
|
1284
|
-
title:
|
1411
|
+
indicatorKey: foldInfo.measureValue,
|
1412
|
+
title: 'indicator',
|
1285
1413
|
width: 'auto',
|
1286
|
-
format: pivotIndicators_fieldFormat(
|
1287
|
-
}
|
1288
|
-
|
1289
|
-
})
|
1414
|
+
format: pivotIndicators_fieldFormat(measures, foldInfo, locale)
|
1415
|
+
}
|
1416
|
+
]
|
1290
1417
|
};
|
1291
1418
|
};
|
1292
|
-
const pivotIndicators_fieldFormat = (
|
1419
|
+
const pivotIndicators_fieldFormat = (measures, foldInfo, locale)=>(value, col, row, table)=>{
|
1420
|
+
if (!chunk_6GTAPB47_e(col) || !chunk_6GTAPB47_e(row) || !table) return value;
|
1421
|
+
const datum = table.getCellOriginRecord(col, row);
|
1422
|
+
const { measureId: foldMeasureId } = foldInfo;
|
1423
|
+
const measureId = datum[0][foldMeasureId];
|
1424
|
+
const node = findMeasureById(measures, measureId);
|
1425
|
+
if (!node) return value;
|
1293
1426
|
const { format = {}, autoFormat = true } = node;
|
1294
1427
|
if (!chunk_VCYTMP4D_n(format)) {
|
1295
1428
|
const formatter = createFormatter(format);
|
@@ -1445,94 +1578,81 @@
|
|
1445
1578
|
locale: locale || 'zh-CN'
|
1446
1579
|
};
|
1447
1580
|
};
|
1448
|
-
const
|
1449
|
-
|
1450
|
-
|
1451
|
-
|
1452
|
-
|
1453
|
-
|
1454
|
-
const FoldPrimaryMeasureValue = '__MeaPrimaryValue__';
|
1455
|
-
const FoldSecondaryMeasureValue = '__MeaSecondaryValue__';
|
1456
|
-
const FoldXMeasureValue = '__MeaXValue__';
|
1457
|
-
const FoldYMeasureValue = '__MeaYValue__';
|
1458
|
-
const XEncoding = '__Dim_X__';
|
1459
|
-
const YEncoding = '__Dim_Y__';
|
1460
|
-
const AngleEncoding = '__Dim_Angle__';
|
1461
|
-
const DetailEncoding = '__Dim_Detail__';
|
1462
|
-
const ColorEncoding = '__Dim_Color__';
|
1463
|
-
const ColorIdEncoding = '__Dim_ColorId__';
|
1464
|
-
const getBasicDimensions = (vseed)=>{
|
1465
|
-
const { dimensions, dataset } = vseed;
|
1466
|
-
const MeaName = {
|
1467
|
-
id: MeasureName,
|
1468
|
-
alias: intl.i18n`指标名称`
|
1581
|
+
const defaultMeasures_defaultMeasures = (advancedVSeed, context)=>{
|
1582
|
+
const { vseed } = context;
|
1583
|
+
const { measures, dataset } = vseed;
|
1584
|
+
if (measures && measures.length > 0) return {
|
1585
|
+
...advancedVSeed,
|
1586
|
+
measures
|
1469
1587
|
};
|
1470
1588
|
if (!dataset) throw new Error('dataset is required');
|
1471
|
-
if (0 === dataset.length) return
|
1472
|
-
|
1473
|
-
|
1474
|
-
|
1475
|
-
...dim
|
1476
|
-
}));
|
1477
|
-
if (basicDimensions.some((dim)=>dim.id === MeasureName)) return basicDimensions;
|
1478
|
-
basicDimensions.push(MeaName);
|
1479
|
-
return basicDimensions;
|
1480
|
-
}
|
1589
|
+
if (0 === dataset.length) return {
|
1590
|
+
...advancedVSeed,
|
1591
|
+
measures: []
|
1592
|
+
};
|
1481
1593
|
const top100dataset = dataset.slice(0, 100);
|
1482
1594
|
const sample = top100dataset.reduce((prev, cur)=>({
|
1483
1595
|
...prev,
|
1484
1596
|
...cur
|
1485
1597
|
}), {});
|
1486
|
-
const
|
1598
|
+
const defaultMeasures = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'number' == typeof item[key]) && ![
|
1487
1599
|
'',
|
1488
1600
|
null,
|
1489
1601
|
void 0
|
1490
|
-
].includes(key)).map((
|
1491
|
-
id:
|
1492
|
-
alias:
|
1493
|
-
location: 'dimension'
|
1602
|
+
].includes(key)).map((measure)=>({
|
1603
|
+
id: measure,
|
1604
|
+
alias: measure
|
1494
1605
|
}));
|
1495
|
-
|
1496
|
-
|
1497
|
-
|
1498
|
-
|
1499
|
-
const { dataset, measures } = vseed;
|
1500
|
-
if (!measures || 0 === measures.length) return generateMeasuresByDataset(dataset);
|
1501
|
-
return measures;
|
1606
|
+
return {
|
1607
|
+
...advancedVSeed,
|
1608
|
+
measures: defaultMeasures
|
1609
|
+
};
|
1502
1610
|
};
|
1503
|
-
const
|
1611
|
+
const defaultDimensions = (advancedVSeed, context)=>{
|
1612
|
+
const result = {
|
1613
|
+
...advancedVSeed
|
1614
|
+
};
|
1615
|
+
const { vseed } = context;
|
1616
|
+
const { dimensions, dataset } = vseed;
|
1617
|
+
if (dimensions && dimensions.length > 0) return {
|
1618
|
+
...result,
|
1619
|
+
dimensions
|
1620
|
+
};
|
1504
1621
|
if (!dataset) throw new Error('dataset is required');
|
1505
|
-
if (0 === dataset.length) return
|
1622
|
+
if (0 === dataset.length) return result;
|
1623
|
+
const measures = findAllMeasures(advancedVSeed.measures);
|
1506
1624
|
const top100dataset = dataset.slice(0, 100);
|
1507
1625
|
const sample = top100dataset.reduce((prev, cur)=>({
|
1508
1626
|
...prev,
|
1509
1627
|
...cur
|
1510
1628
|
}), {});
|
1511
|
-
const
|
1629
|
+
const newDimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
1512
1630
|
'',
|
1513
1631
|
null,
|
1514
1632
|
void 0
|
1515
|
-
].includes(key)).map((
|
1516
|
-
id:
|
1517
|
-
alias:
|
1633
|
+
].includes(key) && !measures.some((measure)=>measure.id === key)).map((dim)=>({
|
1634
|
+
id: dim,
|
1635
|
+
alias: dim
|
1518
1636
|
}));
|
1519
|
-
return
|
1520
|
-
|
1521
|
-
|
1522
|
-
|
1523
|
-
if (!measures) return false;
|
1524
|
-
return measures.some((measure)=>'children' in measure);
|
1637
|
+
return {
|
1638
|
+
...result,
|
1639
|
+
dimensions: newDimensions
|
1640
|
+
};
|
1525
1641
|
};
|
1526
|
-
const
|
1527
|
-
const
|
1528
|
-
|
1529
|
-
|
1642
|
+
const defaultMeasureName = (advancedVSeed)=>{
|
1643
|
+
const result = {
|
1644
|
+
...advancedVSeed
|
1645
|
+
};
|
1646
|
+
const MeaName = {
|
1647
|
+
id: MeasureName,
|
1648
|
+
alias: intl.i18n`指标名称`
|
1649
|
+
};
|
1650
|
+
if (!result.dimensions?.some((dim)=>dim.id === MeasureName)) result.dimensions?.push(MeaName);
|
1651
|
+
return result;
|
1530
1652
|
};
|
1531
|
-
const encodingForLine = (advancedVSeed
|
1532
|
-
const {
|
1533
|
-
const
|
1534
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
1535
|
-
const dimensions = getBasicDimensions(vseed);
|
1653
|
+
const encodingForLine = (advancedVSeed)=>{
|
1654
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
1655
|
+
const measures = findAllMeasures(vseedMeasures);
|
1536
1656
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
1537
1657
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
1538
1658
|
const encoding = {};
|
@@ -1545,10 +1665,6 @@
|
|
1545
1665
|
encoding
|
1546
1666
|
};
|
1547
1667
|
};
|
1548
|
-
const generateDefaultMeasureEncoding = (measures, encoding)=>{
|
1549
|
-
encoding.tooltip = chunk_QJLMYOTX_i(measures.map((item)=>item.id));
|
1550
|
-
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
1551
|
-
};
|
1552
1668
|
const generateDefaultDimensionEncoding = (dimensions, encoding)=>{
|
1553
1669
|
const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
|
1554
1670
|
encoding.x = uniqueDimIds.slice(0, 1);
|
@@ -1559,20 +1675,36 @@
|
|
1559
1675
|
encoding.row = [];
|
1560
1676
|
encoding.column = [];
|
1561
1677
|
};
|
1562
|
-
const generateMeasureEncoding = (measures, encoding)=>{
|
1563
|
-
encoding.tooltip = measures.map((item)=>item.id);
|
1564
|
-
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
1565
|
-
const color = chunk_QJLMYOTX_i(measures.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
1566
|
-
if (color.length > 0) encoding.color = color;
|
1567
|
-
};
|
1568
1678
|
const generateDimensionEncoding = (dimensions, encoding)=>{
|
1569
1679
|
encoding.x = chunk_QJLMYOTX_i(dimensions.filter((item)=>'xAxis' === item.encoding).map((item)=>item.id));
|
1570
1680
|
encoding.color = chunk_QJLMYOTX_i(dimensions.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
1571
|
-
encoding.detail =
|
1681
|
+
encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
|
1572
1682
|
if (0 === encoding.x.length) encoding.x = [
|
1573
1683
|
dimensions[0].id
|
1574
1684
|
];
|
1575
|
-
if (0 === encoding.color.length) encoding.color =
|
1685
|
+
if (0 === encoding.color.length) encoding.color = [
|
1686
|
+
MeasureName
|
1687
|
+
];
|
1688
|
+
};
|
1689
|
+
const generateDefaultMeasureEncoding = (measures, encoding)=>{
|
1690
|
+
encoding.tooltip = chunk_QJLMYOTX_i(measures.map((item)=>item.id));
|
1691
|
+
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
1692
|
+
};
|
1693
|
+
const generateMeasureEncoding = (measures, encoding)=>{
|
1694
|
+
encoding.tooltip = measures.map((item)=>item.id);
|
1695
|
+
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
1696
|
+
const color = chunk_QJLMYOTX_i(measures.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
1697
|
+
if (color.length > 0) encoding.color = color;
|
1698
|
+
};
|
1699
|
+
const isMeasureTreeWithChildren = (vseed)=>{
|
1700
|
+
const { measures } = vseed;
|
1701
|
+
if (!measures) return false;
|
1702
|
+
return measures.some((measure)=>'children' in measure);
|
1703
|
+
};
|
1704
|
+
const isMeasureTreeWithParentId = (vseed)=>{
|
1705
|
+
const { measures } = vseed;
|
1706
|
+
if (!measures) return false;
|
1707
|
+
return measures.some((measure)=>'parentId' in measure);
|
1576
1708
|
};
|
1577
1709
|
const measureDepth = (measures = [])=>{
|
1578
1710
|
if (!measures) return 0;
|
@@ -1632,9 +1764,7 @@
|
|
1632
1764
|
advancedVSeed.measures = generateMeasuresByParentId(vseed.measures);
|
1633
1765
|
return advancedVSeed;
|
1634
1766
|
}
|
1635
|
-
|
1636
|
-
if (isPivotChart(vseed)) advancedVSeed.measures = basicMeasuresToMeasureTree(basicMeasures);
|
1637
|
-
else advancedVSeed.measures = basicMeasures;
|
1767
|
+
if (isPivotChart(vseed)) advancedVSeed.measures = basicMeasuresToMeasureTree(advancedVSeed.measures);
|
1638
1768
|
return advancedVSeed;
|
1639
1769
|
};
|
1640
1770
|
const generateMeasuresByParentId = (measures)=>{
|
@@ -1665,45 +1795,6 @@
|
|
1665
1795
|
}
|
1666
1796
|
];
|
1667
1797
|
};
|
1668
|
-
const autoDimensions_autoDimensions = (advancedVSeed, context)=>{
|
1669
|
-
const result = {
|
1670
|
-
...advancedVSeed
|
1671
|
-
};
|
1672
|
-
const { vseed } = context;
|
1673
|
-
const { dimensions, dataset } = vseed;
|
1674
|
-
const measures = findAllMeasures(advancedVSeed.measures);
|
1675
|
-
const MeaName = {
|
1676
|
-
id: MeasureName,
|
1677
|
-
alias: intl.i18n`指标名称`
|
1678
|
-
};
|
1679
|
-
if (!dataset) throw new Error('dataset is required');
|
1680
|
-
if (0 === dataset.length) return result;
|
1681
|
-
if (dimensions) {
|
1682
|
-
result.dimensions = dimensions.map((dim)=>({
|
1683
|
-
location: 'dimension',
|
1684
|
-
...dim
|
1685
|
-
}));
|
1686
|
-
if (result.dimensions.some((dim)=>dim.id === MeasureName)) return result;
|
1687
|
-
result.dimensions.push(MeaName);
|
1688
|
-
return result;
|
1689
|
-
}
|
1690
|
-
const top100dataset = dataset.slice(0, 100);
|
1691
|
-
const sample = top100dataset.reduce((prev, cur)=>({
|
1692
|
-
...prev,
|
1693
|
-
...cur
|
1694
|
-
}), {});
|
1695
|
-
result.dimensions = Object.keys(sample).filter((key)=>top100dataset.some((item)=>'string' == typeof item[key]) && ![
|
1696
|
-
'',
|
1697
|
-
null,
|
1698
|
-
void 0
|
1699
|
-
].includes(key) && !measures.some((measure)=>measure.id === key)).map((dim)=>({
|
1700
|
-
id: dim,
|
1701
|
-
alias: dim,
|
1702
|
-
location: 'dimension'
|
1703
|
-
}));
|
1704
|
-
result.dimensions.push(MeaName);
|
1705
|
-
return result;
|
1706
|
-
};
|
1707
1798
|
const pivotAdapter = (pipeline, pivotPipeline)=>(advancedVSeed, context)=>{
|
1708
1799
|
const { vseed } = context;
|
1709
1800
|
const usePivotChart = isPivotChart(vseed);
|
@@ -1724,78 +1815,6 @@
|
|
1724
1815
|
});
|
1725
1816
|
};
|
1726
1817
|
}
|
1727
|
-
function chunk_AIG3BDKO_i(...e) {
|
1728
|
-
return chunk_WIMGWYZL_u(chunk_AIG3BDKO_n, e);
|
1729
|
-
}
|
1730
|
-
var chunk_AIG3BDKO_n = (e, r)=>e.length >= r;
|
1731
|
-
function chunk_KI5X74E2_y(...t) {
|
1732
|
-
return chunk_WIMGWYZL_u(chunk_KI5X74E2_f, t);
|
1733
|
-
}
|
1734
|
-
function chunk_KI5X74E2_f(t, e) {
|
1735
|
-
if (!chunk_AIG3BDKO_i(e, 1)) return {
|
1736
|
-
...t
|
1737
|
-
};
|
1738
|
-
if (!chunk_AIG3BDKO_i(e, 2)) {
|
1739
|
-
let { [e[0]]: r, ...m } = t;
|
1740
|
-
return m;
|
1741
|
-
}
|
1742
|
-
let o = {
|
1743
|
-
...t
|
1744
|
-
};
|
1745
|
-
for (let r of e)delete o[r];
|
1746
|
-
return o;
|
1747
|
-
}
|
1748
|
-
const foldMeasures = (dataset, measures, options)=>{
|
1749
|
-
const { measureId, measureName, measureValue, colorMeasureId } = options || {};
|
1750
|
-
const foldInfo = {
|
1751
|
-
measureId,
|
1752
|
-
measureName,
|
1753
|
-
measureValue,
|
1754
|
-
colorRange: [
|
1755
|
-
0,
|
1756
|
-
1
|
1757
|
-
],
|
1758
|
-
measureRange: [
|
1759
|
-
0,
|
1760
|
-
1
|
1761
|
-
],
|
1762
|
-
foldMap: {}
|
1763
|
-
};
|
1764
|
-
const result = new Array(dataset.length * measures.length);
|
1765
|
-
let index = 0;
|
1766
|
-
const ids = measures.map((d)=>d.id);
|
1767
|
-
for(let i = 0; i < dataset.length; i++)for(let j = 0; j < measures.length; j++){
|
1768
|
-
const datum = chunk_KI5X74E2_y({
|
1769
|
-
...dataset[i]
|
1770
|
-
}, ids);
|
1771
|
-
datum[ORIGINAL_DATA] = dataset[i];
|
1772
|
-
const measure = measures[j];
|
1773
|
-
const { id, alias } = measure;
|
1774
|
-
datum[id] = dataset[i][id];
|
1775
|
-
datum[measureId] = id;
|
1776
|
-
datum[measureName] = alias || id;
|
1777
|
-
datum[measureValue] = dataset[i][id];
|
1778
|
-
if (colorMeasureId) {
|
1779
|
-
const value = datum[ORIGINAL_DATA][colorMeasureId];
|
1780
|
-
datum[ColorEncoding] = value;
|
1781
|
-
datum[ColorIdEncoding] = colorMeasureId;
|
1782
|
-
foldInfo.colorRange = [
|
1783
|
-
Math.min(foldInfo.colorRange[0] || 1 / 0, Number(value)),
|
1784
|
-
Math.max(foldInfo.colorRange[1] || -1 / 0, Number(value))
|
1785
|
-
];
|
1786
|
-
}
|
1787
|
-
foldInfo.measureRange = [
|
1788
|
-
Math.min(foldInfo.measureRange[0] || 1 / 0, Number(datum[id])),
|
1789
|
-
Math.max(foldInfo.measureRange[1] || -1 / 0, Number(datum[id]))
|
1790
|
-
];
|
1791
|
-
foldInfo.foldMap[id] = alias;
|
1792
|
-
result[index++] = datum;
|
1793
|
-
}
|
1794
|
-
return {
|
1795
|
-
dataset: result,
|
1796
|
-
foldInfo
|
1797
|
-
};
|
1798
|
-
};
|
1799
1818
|
const unfoldDimensions = (dataset, dimensions, encoding, options)=>{
|
1800
1819
|
const { foldMeasureId, separator, colorItemAsId } = options;
|
1801
1820
|
const unfoldInfo = {
|
@@ -1890,7 +1909,9 @@
|
|
1890
1909
|
const { dimensions, measures, encoding } = advancedVSeed;
|
1891
1910
|
if (!measures || !dimensions || !dataset || !encoding) return result;
|
1892
1911
|
if (0 === measures.length) throw new Error('measures can not be empty');
|
1912
|
+
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
1893
1913
|
const { dataset: newDatasets, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(findAllMeasures(measures), (item)=>item.id), encoding, {
|
1914
|
+
colorItemAsId: hasEncoding,
|
1894
1915
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
1895
1916
|
});
|
1896
1917
|
return {
|
@@ -1921,6 +1942,7 @@
|
|
1921
1942
|
if (measures) measures.forEach((measure)=>{
|
1922
1943
|
if (measure.children && measure.children.length > 0) measureGroups.push(measure);
|
1923
1944
|
});
|
1945
|
+
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
1924
1946
|
const datasets = [];
|
1925
1947
|
const datasetReshapeInfo = [];
|
1926
1948
|
measureGroups.forEach((measureGroup, index)=>{
|
@@ -1928,6 +1950,7 @@
|
|
1928
1950
|
if (!measures) return;
|
1929
1951
|
const groupId = measureGroup.id;
|
1930
1952
|
const { dataset: newSubDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(measures, (item)=>item.id), encoding, {
|
1953
|
+
colorItemAsId: hasEncoding,
|
1931
1954
|
foldMeasureValue: `${FoldMeasureValue}${groupId}`,
|
1932
1955
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
1933
1956
|
});
|
@@ -2145,9 +2168,11 @@
|
|
2145
2168
|
};
|
2146
2169
|
const lineAdvancedPipeline = [
|
2147
2170
|
initAdvancedVSeed_initAdvancedVSeed,
|
2171
|
+
defaultMeasures_defaultMeasures,
|
2172
|
+
defaultDimensions,
|
2173
|
+
defaultMeasureName,
|
2148
2174
|
encodingForLine,
|
2149
2175
|
buildMeasures,
|
2150
|
-
autoDimensions_autoDimensions,
|
2151
2176
|
pivotAdapter([
|
2152
2177
|
reshapeWithEncoding
|
2153
2178
|
], [
|
@@ -3762,7 +3787,7 @@
|
|
3762
3787
|
const { advancedVSeed } = context;
|
3763
3788
|
const dimensions = advancedVSeed.dimensions;
|
3764
3789
|
if (!dimensions) return result;
|
3765
|
-
const rowDimensions = dimensions.filter((dim)=>'rowDimension' === dim.location);
|
3790
|
+
const rowDimensions = dimensions.filter((dim)=>'rowDimension' === dim.location || 'row' === dim.encoding);
|
3766
3791
|
const rows = rowDimensions.map((dim)=>({
|
3767
3792
|
dimensionKey: dim.id,
|
3768
3793
|
title: dim.alias || dim.id
|
@@ -3779,7 +3804,7 @@
|
|
3779
3804
|
const { advancedVSeed } = context;
|
3780
3805
|
const dimensions = advancedVSeed.dimensions;
|
3781
3806
|
if (!dimensions) return result;
|
3782
|
-
const columnDimensions = dimensions.filter((dim)=>'columnDimension' === dim.location);
|
3807
|
+
const columnDimensions = dimensions.filter((dim)=>'columnDimension' === dim.location || 'column' === dim.encoding);
|
3783
3808
|
const columns = columnDimensions.map((dim)=>({
|
3784
3809
|
dimensionKey: dim.id,
|
3785
3810
|
title: dim.alias || dim.id
|
@@ -4052,11 +4077,9 @@
|
|
4052
4077
|
Builder._advancedPipelineMap.line = lineAdvancedPipeline;
|
4053
4078
|
Builder._specPipelineMap.line = lineSpecPipeline;
|
4054
4079
|
};
|
4055
|
-
const encodingForColumn = (advancedVSeed
|
4056
|
-
const {
|
4057
|
-
const
|
4058
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
4059
|
-
const dimensions = getBasicDimensions(vseed);
|
4080
|
+
const encodingForColumn = (advancedVSeed)=>{
|
4081
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
4082
|
+
const measures = findAllMeasures(vseedMeasures);
|
4060
4083
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
4061
4084
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
4062
4085
|
const encoding = {};
|
@@ -4069,10 +4092,6 @@
|
|
4069
4092
|
encoding
|
4070
4093
|
};
|
4071
4094
|
};
|
4072
|
-
const column_generateDefaultMeasureEncoding = (measures, encoding)=>{
|
4073
|
-
encoding.tooltip = chunk_QJLMYOTX_i(measures.map((item)=>item.id));
|
4074
|
-
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
4075
|
-
};
|
4076
4095
|
const column_generateDefaultDimensionEncoding = (dimensions, encoding)=>{
|
4077
4096
|
const onlyMeasureName = 1 === dimensions.length && dimensions.find((item)=>item.id === MeasureName);
|
4078
4097
|
const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
|
@@ -4084,13 +4103,6 @@
|
|
4084
4103
|
encoding.row = [];
|
4085
4104
|
encoding.column = [];
|
4086
4105
|
};
|
4087
|
-
const column_generateMeasureEncoding = (measures, encoding)=>{
|
4088
|
-
encoding.tooltip = measures.map((item)=>item.id);
|
4089
|
-
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
4090
|
-
const color = chunk_QJLMYOTX_i(measures.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
4091
|
-
if (color.length > 0) encoding.color = color;
|
4092
|
-
return encoding;
|
4093
|
-
};
|
4094
4106
|
const column_generateDimensionEncoding = (dimensions, encoding)=>{
|
4095
4107
|
encoding.x = chunk_QJLMYOTX_i(dimensions.filter((item)=>'xAxis' === item.encoding).map((item)=>item.id));
|
4096
4108
|
encoding.color = chunk_QJLMYOTX_i(dimensions.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
@@ -4098,14 +4110,28 @@
|
|
4098
4110
|
if (0 === encoding.x.length) encoding.x = [
|
4099
4111
|
dimensions[0].id
|
4100
4112
|
];
|
4101
|
-
if (0 === encoding.color.length) encoding.color =
|
4102
|
-
|
4113
|
+
if (0 === encoding.color.length) encoding.color = [
|
4114
|
+
MeasureName
|
4115
|
+
];
|
4116
|
+
};
|
4117
|
+
const column_generateDefaultMeasureEncoding = (measures, encoding)=>{
|
4118
|
+
encoding.tooltip = chunk_QJLMYOTX_i(measures.map((item)=>item.id));
|
4119
|
+
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
4120
|
+
};
|
4121
|
+
const column_generateMeasureEncoding = (measures, encoding)=>{
|
4122
|
+
encoding.tooltip = measures.map((item)=>item.id);
|
4123
|
+
encoding.y = chunk_QJLMYOTX_i(measures.filter((item)=>'yAxis' === item.encoding || !item.encoding).map((item)=>item.id));
|
4124
|
+
const color = chunk_QJLMYOTX_i(measures.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
4125
|
+
if (color.length > 0) encoding.color = color;
|
4126
|
+
return encoding;
|
4103
4127
|
};
|
4104
4128
|
const columnAdvancedPipeline = [
|
4105
4129
|
initAdvancedVSeed_initAdvancedVSeed,
|
4130
|
+
defaultMeasures_defaultMeasures,
|
4131
|
+
defaultDimensions,
|
4132
|
+
defaultMeasureName,
|
4106
4133
|
encodingForColumn,
|
4107
4134
|
buildMeasures,
|
4108
|
-
autoDimensions_autoDimensions,
|
4109
4135
|
pivotAdapter([
|
4110
4136
|
reshapeWithEncoding
|
4111
4137
|
], [
|
@@ -4465,9 +4491,11 @@
|
|
4465
4491
|
};
|
4466
4492
|
const columnParallelAdvancedPipeline = [
|
4467
4493
|
initAdvancedVSeed_initAdvancedVSeed,
|
4494
|
+
defaultMeasures_defaultMeasures,
|
4495
|
+
defaultDimensions,
|
4496
|
+
defaultMeasureName,
|
4468
4497
|
encodingForColumn,
|
4469
4498
|
buildMeasures,
|
4470
|
-
autoDimensions_autoDimensions,
|
4471
4499
|
pivotAdapter([
|
4472
4500
|
reshapeWithEncoding
|
4473
4501
|
], [
|
@@ -4562,9 +4590,11 @@
|
|
4562
4590
|
};
|
4563
4591
|
const columnPercentAdvancedPipeline = [
|
4564
4592
|
initAdvancedVSeed_initAdvancedVSeed,
|
4593
|
+
defaultMeasures_defaultMeasures,
|
4594
|
+
defaultDimensions,
|
4595
|
+
defaultMeasureName,
|
4565
4596
|
encodingForColumn,
|
4566
4597
|
buildMeasures,
|
4567
|
-
autoDimensions_autoDimensions,
|
4568
4598
|
pivotAdapter([
|
4569
4599
|
reshapeWithEncoding
|
4570
4600
|
], [
|
@@ -4641,11 +4671,9 @@
|
|
4641
4671
|
Builder._advancedPipelineMap.columnPercent = columnPercentAdvancedPipeline;
|
4642
4672
|
Builder._specPipelineMap.columnPercent = columnPercentSpecPipeline;
|
4643
4673
|
};
|
4644
|
-
const encodingForBar = (advancedVSeed
|
4645
|
-
const {
|
4646
|
-
const
|
4647
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
4648
|
-
const dimensions = getBasicDimensions(vseed);
|
4674
|
+
const encodingForBar = (advancedVSeed)=>{
|
4675
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
4676
|
+
const measures = findAllMeasures(vseedMeasures);
|
4649
4677
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
4650
4678
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
4651
4679
|
const encoding = {};
|
@@ -4687,7 +4715,9 @@
|
|
4687
4715
|
if (0 === encoding.y.length) encoding.y = [
|
4688
4716
|
dimensions[0].id
|
4689
4717
|
];
|
4690
|
-
if (0 === encoding.color.length) encoding.color =
|
4718
|
+
if (0 === encoding.color.length) encoding.color = [
|
4719
|
+
MeasureName
|
4720
|
+
];
|
4691
4721
|
if (0 === encoding.detail.length) encoding.detail = dimensions.filter((item)=>!encoding.y?.includes(item.id)).map((item)=>item.id);
|
4692
4722
|
};
|
4693
4723
|
const sortYBandAxis = (advancedVSeed, context)=>{
|
@@ -4708,9 +4738,11 @@
|
|
4708
4738
|
};
|
4709
4739
|
const barAdvancedPipeline = [
|
4710
4740
|
initAdvancedVSeed_initAdvancedVSeed,
|
4741
|
+
defaultMeasures_defaultMeasures,
|
4742
|
+
defaultDimensions,
|
4743
|
+
defaultMeasureName,
|
4711
4744
|
encodingForBar,
|
4712
4745
|
buildMeasures,
|
4713
|
-
autoDimensions_autoDimensions,
|
4714
4746
|
pivotAdapter([
|
4715
4747
|
reshapeWithEncoding
|
4716
4748
|
], [
|
@@ -5061,9 +5093,11 @@
|
|
5061
5093
|
};
|
5062
5094
|
const barParallelAdvancedPipeline = [
|
5063
5095
|
initAdvancedVSeed_initAdvancedVSeed,
|
5064
|
-
|
5065
|
-
|
5096
|
+
defaultMeasures_defaultMeasures,
|
5097
|
+
defaultDimensions,
|
5098
|
+
defaultMeasureName,
|
5066
5099
|
encodingForBar,
|
5100
|
+
buildMeasures,
|
5067
5101
|
pivotAdapter([
|
5068
5102
|
reshapeWithEncoding
|
5069
5103
|
], [
|
@@ -5157,9 +5191,11 @@
|
|
5157
5191
|
};
|
5158
5192
|
const barPercentAdvancedPipeline = [
|
5159
5193
|
initAdvancedVSeed_initAdvancedVSeed,
|
5160
|
-
|
5161
|
-
|
5194
|
+
defaultMeasures_defaultMeasures,
|
5195
|
+
defaultDimensions,
|
5196
|
+
defaultMeasureName,
|
5162
5197
|
encodingForBar,
|
5198
|
+
buildMeasures,
|
5163
5199
|
pivotAdapter([
|
5164
5200
|
reshapeWithEncoding
|
5165
5201
|
], [
|
@@ -5228,9 +5264,11 @@
|
|
5228
5264
|
};
|
5229
5265
|
const areaAdvancedPipeline = [
|
5230
5266
|
initAdvancedVSeed_initAdvancedVSeed,
|
5267
|
+
defaultMeasures_defaultMeasures,
|
5268
|
+
defaultDimensions,
|
5269
|
+
defaultMeasureName,
|
5231
5270
|
encodingForLine,
|
5232
5271
|
buildMeasures,
|
5233
|
-
autoDimensions_autoDimensions,
|
5234
5272
|
pivotAdapter([
|
5235
5273
|
reshapeWithEncoding
|
5236
5274
|
], [
|
@@ -5386,9 +5424,11 @@
|
|
5386
5424
|
};
|
5387
5425
|
const areaPercentAdvancedPipeline = [
|
5388
5426
|
initAdvancedVSeed_initAdvancedVSeed,
|
5427
|
+
defaultMeasures_defaultMeasures,
|
5428
|
+
defaultDimensions,
|
5429
|
+
defaultMeasureName,
|
5389
5430
|
encodingForLine,
|
5390
5431
|
buildMeasures,
|
5391
|
-
autoDimensions_autoDimensions,
|
5392
5432
|
pivotAdapter([
|
5393
5433
|
reshapeWithEncoding
|
5394
5434
|
], [
|
@@ -5462,11 +5502,9 @@
|
|
5462
5502
|
Builder._advancedPipelineMap.areaPercent = areaPercentAdvancedPipeline;
|
5463
5503
|
Builder._specPipelineMap.areaPercent = areaPercentSpecPipeline;
|
5464
5504
|
};
|
5465
|
-
const encodingForScatter = (advancedVSeed
|
5466
|
-
const {
|
5467
|
-
const
|
5468
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
5469
|
-
const dimensions = getBasicDimensions(vseed);
|
5505
|
+
const encodingForScatter = (advancedVSeed)=>{
|
5506
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
5507
|
+
const measures = findAllMeasures(vseedMeasures);
|
5470
5508
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
5471
5509
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
5472
5510
|
const encoding = {};
|
@@ -5502,7 +5540,9 @@
|
|
5502
5540
|
const scatter_generateDimensionEncoding = (dimensions, encoding)=>{
|
5503
5541
|
encoding.color = chunk_QJLMYOTX_i(dimensions.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
5504
5542
|
encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
|
5505
|
-
if (0 === encoding.color.length) encoding.color =
|
5543
|
+
if (0 === encoding.color.length) encoding.color = [
|
5544
|
+
MeasureName
|
5545
|
+
];
|
5506
5546
|
if (0 === encoding.detail.length) encoding.detail = dimensions.filter((item)=>!encoding.x?.includes(item.id)).map((item)=>item.id);
|
5507
5547
|
};
|
5508
5548
|
const buildMeasuresForScatter = (advancedVSeed, context)=>{
|
@@ -5515,8 +5555,7 @@
|
|
5515
5555
|
advancedVSeed.measures = buildMeasuresForScatter_generateMeasuresByParentId(vseed.measures);
|
5516
5556
|
return advancedVSeed;
|
5517
5557
|
}
|
5518
|
-
const
|
5519
|
-
const scatterMeasures = vseed.scatterMeasures ? vseed.scatterMeasures : basicMeasuresToScatterMeasures(basicMeasures);
|
5558
|
+
const scatterMeasures = vseed.scatterMeasures ? vseed.scatterMeasures : basicMeasuresToScatterMeasures(advancedVSeed.measures || []);
|
5520
5559
|
advancedVSeed.measures = scatterMeasuresToMeasureTree(scatterMeasures);
|
5521
5560
|
return advancedVSeed;
|
5522
5561
|
};
|
@@ -5735,9 +5774,11 @@
|
|
5735
5774
|
};
|
5736
5775
|
const scatterAdvancedPipeline = [
|
5737
5776
|
initAdvancedVSeed_initAdvancedVSeed,
|
5777
|
+
defaultMeasures_defaultMeasures,
|
5778
|
+
defaultDimensions,
|
5779
|
+
defaultMeasureName,
|
5738
5780
|
encodingForScatter,
|
5739
5781
|
buildMeasuresForScatter,
|
5740
|
-
autoDimensions_autoDimensions,
|
5741
5782
|
pivotAdapter([
|
5742
5783
|
reshapeWithScatterEncoding
|
5743
5784
|
], [
|
@@ -5882,11 +5923,9 @@
|
|
5882
5923
|
Builder._advancedPipelineMap.scatter = scatterAdvancedPipeline;
|
5883
5924
|
Builder._specPipelineMap.scatter = scatterSpecPipeline;
|
5884
5925
|
};
|
5885
|
-
const encodingForDualAxis = (advancedVSeed
|
5886
|
-
const {
|
5887
|
-
const
|
5888
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
5889
|
-
const dimensions = getBasicDimensions(vseed);
|
5926
|
+
const encodingForDualAxis = (advancedVSeed)=>{
|
5927
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
5928
|
+
const measures = findAllMeasures(vseedMeasures);
|
5890
5929
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
5891
5930
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
5892
5931
|
const encoding = {};
|
@@ -5928,7 +5967,9 @@
|
|
5928
5967
|
if (0 === encoding.x.length) encoding.x = [
|
5929
5968
|
dimensions[0].id
|
5930
5969
|
];
|
5931
|
-
if (0 === encoding.color.length) encoding.color =
|
5970
|
+
if (0 === encoding.color.length) encoding.color = [
|
5971
|
+
MeasureName
|
5972
|
+
];
|
5932
5973
|
if (0 === encoding.detail.length) encoding.detail = dimensions.filter((item)=>!encoding.x?.includes(item.id)).map((item)=>item.id);
|
5933
5974
|
};
|
5934
5975
|
const buildMeasuresForDualAxis = (advancedVSeed, context)=>{
|
@@ -5941,8 +5982,7 @@
|
|
5941
5982
|
advancedVSeed.measures = buildMeasuresForDualAxis_generateMeasuresByParentId(vseed.measures);
|
5942
5983
|
return advancedVSeed;
|
5943
5984
|
}
|
5944
|
-
const
|
5945
|
-
const dualMeasures = vseed.dualMeasures ? vseed.dualMeasures : basicMeasuresToDualMeasures(basicMeasures);
|
5985
|
+
const dualMeasures = vseed.dualMeasures ? vseed.dualMeasures : basicMeasuresToDualMeasures(advancedVSeed.measures || []);
|
5946
5986
|
advancedVSeed.measures = dualMeasuresToMeasureTree(dualMeasures);
|
5947
5987
|
return advancedVSeed;
|
5948
5988
|
};
|
@@ -6046,8 +6086,10 @@
|
|
6046
6086
|
const datasets = [];
|
6047
6087
|
const primaryMeasures = measures[0];
|
6048
6088
|
const secondaryMeasures = measures[1] || [];
|
6089
|
+
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
6049
6090
|
if (primaryMeasures && primaryMeasures.children) {
|
6050
6091
|
const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, primaryMeasures.children, encoding, {
|
6092
|
+
colorItemAsId: hasEncoding,
|
6051
6093
|
foldMeasureValue: FoldPrimaryMeasureValue,
|
6052
6094
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
6053
6095
|
});
|
@@ -6094,6 +6136,7 @@
|
|
6094
6136
|
const { dataset } = vseed;
|
6095
6137
|
const { dimensions, measures, encoding, chartType } = advancedVSeed;
|
6096
6138
|
if (!measures || !dimensions || !dataset || !encoding) return result;
|
6139
|
+
const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
|
6097
6140
|
const datasetList = [];
|
6098
6141
|
const datasetReshapeInfo = [];
|
6099
6142
|
const measureGroups = [];
|
@@ -6112,6 +6155,7 @@
|
|
6112
6155
|
const secondaryMeasures = measures[1] || [];
|
6113
6156
|
if (primaryMeasures && primaryMeasures.children) {
|
6114
6157
|
const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, primaryMeasures.children, encoding, {
|
6158
|
+
colorItemAsId: hasEncoding,
|
6115
6159
|
foldMeasureValue: `${FoldPrimaryMeasureValue}${index}`,
|
6116
6160
|
colorMeasureId: getColorMeasureId(advancedVSeed)
|
6117
6161
|
});
|
@@ -6180,9 +6224,11 @@
|
|
6180
6224
|
};
|
6181
6225
|
const dualAxisAdvancedPipeline = [
|
6182
6226
|
initAdvancedVSeed_initAdvancedVSeed,
|
6227
|
+
defaultMeasures_defaultMeasures,
|
6228
|
+
defaultDimensions,
|
6229
|
+
defaultMeasureName,
|
6183
6230
|
encodingForDualAxis,
|
6184
6231
|
buildMeasuresForDualAxis,
|
6185
|
-
autoDimensions_autoDimensions,
|
6186
6232
|
pivotAdapter([
|
6187
6233
|
reshapeWithDualEncoding
|
6188
6234
|
], [
|
@@ -7015,11 +7061,9 @@
|
|
7015
7061
|
Builder._advancedPipelineMap.dualAxis = dualAxisAdvancedPipeline;
|
7016
7062
|
Builder._specPipelineMap.dualAxis = dualAxisSpecPipeline;
|
7017
7063
|
};
|
7018
|
-
const encodingForPie = (advancedVSeed
|
7019
|
-
const {
|
7020
|
-
const
|
7021
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
7022
|
-
const dimensions = getBasicDimensions(vseed);
|
7064
|
+
const encodingForPie = (advancedVSeed)=>{
|
7065
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
7066
|
+
const measures = findAllMeasures(vseedMeasures);
|
7023
7067
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
7024
7068
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
7025
7069
|
const encoding = {};
|
@@ -7054,14 +7098,18 @@
|
|
7054
7098
|
const pie_generateDimensionEncoding = (dimensions, encoding)=>{
|
7055
7099
|
encoding.color = chunk_QJLMYOTX_i(dimensions.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
7056
7100
|
encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
|
7057
|
-
if (0 === encoding.color.length) encoding.color =
|
7101
|
+
if (0 === encoding.color.length) encoding.color = [
|
7102
|
+
MeasureName
|
7103
|
+
];
|
7058
7104
|
if (0 === encoding.detail.length) encoding.detail = dimensions.map((item)=>item.id);
|
7059
7105
|
};
|
7060
7106
|
const pieAdvancedPipeline = [
|
7061
7107
|
initAdvancedVSeed_initAdvancedVSeed,
|
7108
|
+
defaultMeasures_defaultMeasures,
|
7109
|
+
defaultDimensions,
|
7110
|
+
defaultMeasureName,
|
7062
7111
|
encodingForPie,
|
7063
7112
|
buildMeasures,
|
7064
|
-
autoDimensions_autoDimensions,
|
7065
7113
|
pivotAdapter([
|
7066
7114
|
reshapeWithEncoding
|
7067
7115
|
], [
|
@@ -7177,8 +7225,10 @@
|
|
7177
7225
|
};
|
7178
7226
|
const donutAdvancedPipeline = [
|
7179
7227
|
initAdvancedVSeed_initAdvancedVSeed,
|
7228
|
+
defaultMeasures_defaultMeasures,
|
7229
|
+
defaultDimensions,
|
7230
|
+
defaultMeasureName,
|
7180
7231
|
buildMeasures,
|
7181
|
-
autoDimensions_autoDimensions,
|
7182
7232
|
encodingForPie,
|
7183
7233
|
pivotAdapter([
|
7184
7234
|
reshapeWithEncoding
|
@@ -7255,11 +7305,9 @@
|
|
7255
7305
|
Builder._advancedPipelineMap.donut = donutAdvancedPipeline;
|
7256
7306
|
Builder._specPipelineMap.donut = donutSpecPipeline;
|
7257
7307
|
};
|
7258
|
-
const encodingForRose = (advancedVSeed
|
7259
|
-
const {
|
7260
|
-
const
|
7261
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
7262
|
-
const dimensions = getBasicDimensions(vseed);
|
7308
|
+
const encodingForRose = (advancedVSeed)=>{
|
7309
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
7310
|
+
const measures = findAllMeasures(vseedMeasures);
|
7263
7311
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
7264
7312
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
7265
7313
|
const encoding = {};
|
@@ -7300,14 +7348,18 @@
|
|
7300
7348
|
if (0 === encoding.angle.length) encoding.angle = [
|
7301
7349
|
dimensions[0].id
|
7302
7350
|
];
|
7303
|
-
if (0 === encoding.color.length) encoding.color =
|
7351
|
+
if (0 === encoding.color.length) encoding.color = [
|
7352
|
+
MeasureName
|
7353
|
+
];
|
7304
7354
|
if (0 === encoding.detail.length) encoding.detail = dimensions.filter((item)=>!encoding.angle?.includes(item.id)).map((item)=>item.id);
|
7305
7355
|
};
|
7306
7356
|
const roseAdvancedPipeline = [
|
7307
7357
|
initAdvancedVSeed_initAdvancedVSeed,
|
7358
|
+
defaultMeasures_defaultMeasures,
|
7359
|
+
defaultDimensions,
|
7360
|
+
defaultMeasureName,
|
7308
7361
|
encodingForRose,
|
7309
7362
|
buildMeasures,
|
7310
|
-
autoDimensions_autoDimensions,
|
7311
7363
|
pivotAdapter([
|
7312
7364
|
reshapeWithEncoding
|
7313
7365
|
], [
|
@@ -7503,9 +7555,11 @@
|
|
7503
7555
|
};
|
7504
7556
|
const roseParallelAdvancedPipeline = [
|
7505
7557
|
initAdvancedVSeed_initAdvancedVSeed,
|
7558
|
+
defaultMeasures_defaultMeasures,
|
7559
|
+
defaultDimensions,
|
7560
|
+
defaultMeasureName,
|
7506
7561
|
encodingForRose,
|
7507
7562
|
buildMeasures,
|
7508
|
-
autoDimensions_autoDimensions,
|
7509
7563
|
pivotAdapter([
|
7510
7564
|
reshapeWithEncoding
|
7511
7565
|
], [
|
@@ -7611,11 +7665,9 @@
|
|
7611
7665
|
Builder._advancedPipelineMap.roseParallel = roseParallelAdvancedPipeline;
|
7612
7666
|
Builder._specPipelineMap.roseParallel = roseParallelSpecPipeline;
|
7613
7667
|
};
|
7614
|
-
const encodingForRadar = (advancedVSeed
|
7615
|
-
const {
|
7616
|
-
const
|
7617
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
7618
|
-
const dimensions = getBasicDimensions(vseed);
|
7668
|
+
const encodingForRadar = (advancedVSeed)=>{
|
7669
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
7670
|
+
const measures = findAllMeasures(vseedMeasures);
|
7619
7671
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
7620
7672
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
7621
7673
|
const encoding = {};
|
@@ -7655,13 +7707,17 @@
|
|
7655
7707
|
if (0 === encoding.angle.length) encoding.angle = [
|
7656
7708
|
dimensions[0].id
|
7657
7709
|
];
|
7658
|
-
if (0 === encoding.color.length) encoding.color =
|
7710
|
+
if (0 === encoding.color.length) encoding.color = [
|
7711
|
+
MeasureName
|
7712
|
+
];
|
7659
7713
|
};
|
7660
7714
|
const radarAdvancedPipeline = [
|
7661
7715
|
initAdvancedVSeed_initAdvancedVSeed,
|
7716
|
+
defaultMeasures_defaultMeasures,
|
7717
|
+
defaultDimensions,
|
7718
|
+
defaultMeasureName,
|
7662
7719
|
encodingForRadar,
|
7663
7720
|
buildMeasures,
|
7664
|
-
autoDimensions_autoDimensions,
|
7665
7721
|
pivotAdapter([
|
7666
7722
|
reshapeWithEncoding
|
7667
7723
|
], [
|
@@ -7795,11 +7851,9 @@
|
|
7795
7851
|
Builder._advancedPipelineMap.radar = radarAdvancedPipeline;
|
7796
7852
|
Builder._specPipelineMap.radar = radarSpecPipeline;
|
7797
7853
|
};
|
7798
|
-
const encodingForFunnel = (advancedVSeed
|
7799
|
-
const {
|
7800
|
-
const
|
7801
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
7802
|
-
const dimensions = getBasicDimensions(vseed);
|
7854
|
+
const encodingForFunnel = (advancedVSeed)=>{
|
7855
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
7856
|
+
const measures = findAllMeasures(vseedMeasures);
|
7803
7857
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
7804
7858
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
7805
7859
|
const encoding = {};
|
@@ -7834,14 +7888,18 @@
|
|
7834
7888
|
const funnel_generateDimensionEncoding = (dimensions, encoding)=>{
|
7835
7889
|
encoding.color = chunk_QJLMYOTX_i(dimensions.filter((item)=>'color' === item.encoding).map((item)=>item.id));
|
7836
7890
|
encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
|
7837
|
-
if (0 === encoding.color.length) encoding.color =
|
7891
|
+
if (0 === encoding.color.length) encoding.color = [
|
7892
|
+
MeasureName
|
7893
|
+
];
|
7838
7894
|
if (0 === encoding.detail.length) encoding.detail = dimensions.map((item)=>item.id);
|
7839
7895
|
};
|
7840
7896
|
const funnelAdvancedPipeline = [
|
7841
7897
|
initAdvancedVSeed_initAdvancedVSeed,
|
7898
|
+
defaultMeasures_defaultMeasures,
|
7899
|
+
defaultDimensions,
|
7900
|
+
defaultMeasureName,
|
7842
7901
|
encodingForFunnel,
|
7843
7902
|
buildMeasures,
|
7844
|
-
autoDimensions_autoDimensions,
|
7845
7903
|
pivotAdapter([
|
7846
7904
|
reshapeWithEncoding
|
7847
7905
|
], [
|
@@ -7954,11 +8012,9 @@
|
|
7954
8012
|
Builder._advancedPipelineMap.funnel = funnelAdvancedPipeline;
|
7955
8013
|
Builder._specPipelineMap.funnel = funnelSpecPipeline;
|
7956
8014
|
};
|
7957
|
-
const encodingForHeatmap = (advancedVSeed
|
7958
|
-
const {
|
7959
|
-
const
|
7960
|
-
const measures = vseedMeasures.length ? findAllMeasures(vseedMeasures) : getBasicMeasures(vseed);
|
7961
|
-
const dimensions = getBasicDimensions(vseed);
|
8015
|
+
const encodingForHeatmap = (advancedVSeed)=>{
|
8016
|
+
const { measures: vseedMeasures = [], dimensions = [] } = advancedVSeed;
|
8017
|
+
const measures = findAllMeasures(vseedMeasures);
|
7962
8018
|
const hasDimensionEncoding = dimensions.some((item)=>item.encoding);
|
7963
8019
|
const hasMeasureEncoding = measures.some((item)=>item.encoding);
|
7964
8020
|
const encoding = {};
|
@@ -8003,14 +8059,18 @@
|
|
8003
8059
|
];
|
8004
8060
|
if (0 === encoding.y.length) if (dimensions.length > 1) encoding.y = dimensions.slice(1).map((item)=>item.id);
|
8005
8061
|
else encoding.y = dimensions.slice(0).map((item)=>item.id);
|
8006
|
-
if (0 === encoding.color.length) encoding.color =
|
8062
|
+
if (0 === encoding.color.length) encoding.color = [
|
8063
|
+
MeasureName
|
8064
|
+
];
|
8007
8065
|
if (0 === encoding.detail.length) encoding.detail = dimensions.filter((item)=>!encoding.x?.includes(item.id)).map((item)=>item.id);
|
8008
8066
|
};
|
8009
8067
|
const heatmapAdvancedPipeline = [
|
8010
8068
|
initAdvancedVSeed_initAdvancedVSeed,
|
8069
|
+
defaultMeasures_defaultMeasures,
|
8070
|
+
defaultDimensions,
|
8071
|
+
defaultMeasureName,
|
8011
8072
|
encodingForHeatmap,
|
8012
8073
|
buildMeasures,
|
8013
|
-
autoDimensions_autoDimensions,
|
8014
8074
|
pivotAdapter([
|
8015
8075
|
reshapeWithEncoding
|
8016
8076
|
], [
|
@@ -12201,7 +12261,9 @@
|
|
12201
12261
|
'size',
|
12202
12262
|
'color',
|
12203
12263
|
'label',
|
12204
|
-
'tooltip'
|
12264
|
+
'tooltip',
|
12265
|
+
'detail',
|
12266
|
+
'column'
|
12205
12267
|
]).optional(),
|
12206
12268
|
parentId: schemas_string().optional()
|
12207
12269
|
});
|