@visactor/vseed 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/cjs/index.cjs +1 -1
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/pipeline/advanced/chart/pipes/config/config.js +3 -1
  4. package/dist/esm/pipeline/advanced/chart/pipes/config/config.js.map +1 -1
  5. package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js +6 -2
  6. package/dist/esm/pipeline/advanced/chart/pipes/config/dualAxis.js.map +1 -1
  7. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js +2 -4
  8. package/dist/esm/pipeline/advanced/chart/pipes/encoding/bar.js.map +1 -1
  9. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js +2 -4
  10. package/dist/esm/pipeline/advanced/chart/pipes/encoding/column.js.map +1 -1
  11. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js +2 -4
  12. package/dist/esm/pipeline/advanced/chart/pipes/encoding/dualAxis.js.map +1 -1
  13. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js +1 -1
  14. package/dist/esm/pipeline/advanced/chart/pipes/encoding/funnel.js.map +1 -1
  15. package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js +2 -4
  16. package/dist/esm/pipeline/advanced/chart/pipes/encoding/heatmap.js.map +1 -1
  17. package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js +1 -1
  18. package/dist/esm/pipeline/advanced/chart/pipes/encoding/pie.js.map +1 -1
  19. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js +2 -4
  20. package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
  21. package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js +1 -1
  22. package/dist/esm/pipeline/advanced/chart/pipes/encoding/scatter.js.map +1 -1
  23. package/dist/esm/pipeline/advanced/chart/pipes/markStyle/markStyle.js +3 -1
  24. package/dist/esm/pipeline/advanced/chart/pipes/markStyle/markStyle.js.map +1 -1
  25. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js +8 -2
  26. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasures.js.map +1 -1
  27. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js +6 -5
  28. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForDualAxis.js.map +1 -1
  29. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js +6 -5
  30. package/dist/esm/pipeline/advanced/chart/pipes/measures/buildMeasuresForScatter.js.map +1 -1
  31. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +3 -2
  32. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
  33. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +3 -2
  34. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
  35. package/dist/esm/pipeline/spec/chart/pipes/markStyle/areaStyle.js +2 -2
  36. package/dist/esm/pipeline/spec/chart/pipes/markStyle/areaStyle.js.map +1 -1
  37. package/dist/esm/pipeline/spec/chart/pipes/markStyle/barStyle.js +2 -1
  38. package/dist/esm/pipeline/spec/chart/pipes/markStyle/barStyle.js.map +1 -1
  39. package/dist/esm/pipeline/spec/chart/pipes/markStyle/lineStyle.js +2 -2
  40. package/dist/esm/pipeline/spec/chart/pipes/markStyle/lineStyle.js.map +1 -1
  41. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointStyle.js +2 -1
  42. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pointStyle.js.map +1 -1
  43. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js +3 -3
  44. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
  45. package/dist/esm/pipeline/utils/chatType.js +2 -1
  46. package/dist/esm/pipeline/utils/chatType.js.map +1 -1
  47. package/dist/esm/pipeline/utils/constant.d.ts +1 -0
  48. package/dist/esm/pipeline/utils/constant.js +2 -1
  49. package/dist/esm/pipeline/utils/constant.js.map +1 -1
  50. package/dist/esm/pipeline/utils/index.d.ts +1 -0
  51. package/dist/esm/pipeline/utils/index.js +1 -0
  52. package/dist/esm/pipeline/utils/replaceNullToUndefined.d.ts +5 -0
  53. package/dist/esm/pipeline/utils/replaceNullToUndefined.js +10 -0
  54. package/dist/esm/pipeline/utils/replaceNullToUndefined.js.map +1 -0
  55. package/dist/esm/types/chartType/dualAxis/dualAxis.d.ts +5 -1
  56. package/dist/esm/types/properties/dimensions/dimensions.d.ts +2 -1
  57. package/dist/esm/types/properties/encoding/dimensionEncoding.d.ts +13 -0
  58. package/dist/esm/types/properties/encoding/dimensionEncoding.js +0 -0
  59. package/dist/esm/types/properties/encoding/index.d.ts +7 -0
  60. package/dist/esm/types/properties/encoding/index.js +4 -2
  61. package/dist/esm/types/properties/encoding/measureEncoding.d.ts +1 -0
  62. package/dist/esm/types/properties/encoding/measureEncoding.js +0 -0
  63. package/dist/esm/types/properties/encoding/zDimensionEncoding.d.ts +23 -0
  64. package/dist/esm/types/properties/encoding/zDimensionEncoding.js +26 -0
  65. package/dist/esm/types/properties/encoding/zDimensionEncoding.js.map +1 -0
  66. package/dist/esm/types/properties/encoding/zEncoding.d.ts +17 -0
  67. package/dist/esm/types/properties/encoding/zEncoding.js +15 -1
  68. package/dist/esm/types/properties/encoding/zEncoding.js.map +1 -1
  69. package/dist/esm/types/properties/encoding/zMeasureEncoding.d.ts +29 -0
  70. package/dist/esm/types/properties/encoding/zMeasureEncoding.js +32 -0
  71. package/dist/esm/types/properties/encoding/zMeasureEncoding.js.map +1 -0
  72. package/dist/esm/types/properties/measures/measures.d.ts +2 -1
  73. package/dist/umd/index.js +143 -55
  74. package/dist/umd/index.js.map +1 -1
  75. package/package.json +1 -1
package/dist/umd/index.js CHANGED
@@ -67,6 +67,7 @@
67
67
  var __webpack_exports__ = {};
68
68
  __webpack_require__.r(__webpack_exports__);
69
69
  __webpack_require__.d(__webpack_exports__, {
70
+ zScatterConfig: ()=>zScatterConfig,
70
71
  zTooltip: ()=>zTooltip,
71
72
  funnelAdvancedPipeline: ()=>funnelAdvancedPipeline,
72
73
  zHeatmapConfig: ()=>zHeatmapConfig,
@@ -109,6 +110,7 @@
109
110
  isDimensionSelector: ()=>isDimensionSelector,
110
111
  zAnalysis: ()=>zAnalysis,
111
112
  zColorLegend: ()=>zColorLegend,
113
+ EncodingEnum: ()=>EncodingEnum,
112
114
  preorderTraverse: ()=>preorderTraverse,
113
115
  zDimensionTree: ()=>zDimensionTree,
114
116
  roseParallelSpecPipeline: ()=>roseParallelSpecPipeline,
@@ -118,6 +120,7 @@
118
120
  MeasureName: ()=>MeasureName,
119
121
  zDataset: ()=>zDataset,
120
122
  zNumFormat: ()=>zNumFormat,
123
+ DimensionEncodingEnum: ()=>DimensionEncodingEnum,
121
124
  barPercentAdvancedPipeline: ()=>barPercentAdvancedPipeline,
122
125
  findAllDimensions: ()=>findAllDimensions,
123
126
  FoldYMeasureValue: ()=>FoldYMeasureValue,
@@ -127,14 +130,16 @@
127
130
  zDimensions: ()=>zDimensions,
128
131
  zLegend: ()=>zLegend,
129
132
  FoldMeasureId: ()=>FoldMeasureId,
130
- zColumnParallelConfig: ()=>zColumnParallelConfig,
133
+ replaceNullToUndefined: ()=>replaceNullToUndefined,
131
134
  donutSpecPipeline: ()=>donutSpecPipeline,
132
135
  FoldXMeasureId: ()=>FoldXMeasureId,
133
136
  registerAreaPercent: ()=>registerAreaPercent,
134
137
  zBarPercent: ()=>zBarPercent,
138
+ zColumnParallelConfig: ()=>zColumnParallelConfig,
135
139
  zHeatmap: ()=>zHeatmap,
136
- zScatterMeasure: ()=>zScatterMeasure,
137
140
  zDatum: ()=>zDatum,
141
+ zMeasureEncoding: ()=>zMeasureEncoding,
142
+ zScatterMeasure: ()=>zScatterMeasure,
138
143
  zTheme: ()=>zTheme,
139
144
  barAdvancedPipeline: ()=>barAdvancedPipeline,
140
145
  zCustomThemeConfig: ()=>zCustomThemeConfig,
@@ -149,10 +154,10 @@
149
154
  zBarParallel: ()=>zBarParallel,
150
155
  isPartialDatumSelector: ()=>isPartialDatumSelector,
151
156
  registerPivotTable: ()=>registerPivotTable,
152
- tableAdvancedPipeline: ()=>tableAdvancedPipeline,
153
- pieSpecPipeline: ()=>pieSpecPipeline,
154
157
  registerDarkTheme: ()=>registerDarkTheme,
158
+ pieSpecPipeline: ()=>pieSpecPipeline,
155
159
  dualAxisSpecPipeline: ()=>dualAxisSpecPipeline,
160
+ tableAdvancedPipeline: ()=>tableAdvancedPipeline,
156
161
  zAnnotationVerticalLine: ()=>zAnnotationVerticalLine,
157
162
  barSpecPipeline: ()=>barSpecPipeline,
158
163
  zChartType: ()=>zChartType,
@@ -236,6 +241,7 @@
236
241
  registerRadar: ()=>registerRadar,
237
242
  zLocale: ()=>zLocale,
238
243
  pivotTableSpecPipeline: ()=>pivotTableSpecPipeline,
244
+ MeasureEncodingEnum: ()=>MeasureEncodingEnum,
239
245
  zMeasure: ()=>zMeasure,
240
246
  FoldXMeasureValue: ()=>FoldXMeasureValue,
241
247
  dualAxisAdvancedPipeline: ()=>dualAxisAdvancedPipeline,
@@ -258,9 +264,9 @@
258
264
  registerPie: ()=>registerPie,
259
265
  foldMeasures: ()=>foldMeasures,
260
266
  isPivotTable: ()=>isPivotTable,
267
+ zDimensionEncoding: ()=>zDimensionEncoding,
261
268
  zFunnel: ()=>zFunnel,
262
269
  zScatter: ()=>zScatter,
263
- zScatterConfig: ()=>zScatterConfig,
264
270
  zBarParallelConfig: ()=>zBarParallelConfig,
265
271
  barParallelAdvancedPipeline: ()=>barParallelAdvancedPipeline,
266
272
  FoldMeasureValue: ()=>FoldMeasureValue,
@@ -1791,6 +1797,7 @@
1791
1797
  });
1792
1798
  return depth;
1793
1799
  };
1800
+ const DEFAULT_PARENT_ID = '__DefaultParentId__';
1794
1801
  const isTable = (vseed)=>'table' === vseed.chartType;
1795
1802
  const isPivotTable = (vseed)=>'pivotTable' === vseed.chartType;
1796
1803
  const isVTable = (vseed)=>[
@@ -1801,7 +1808,7 @@
1801
1808
  const isPivotChart = (vseed)=>{
1802
1809
  if (isVTable(vseed)) return false;
1803
1810
  if (isMeasureTreeWithParentId(vseed.measures)) {
1804
- const parentIds = vseed.measures?.map((measure)=>measure.parentId);
1811
+ const parentIds = vseed.measures?.map((measure)=>measure.parentId || DEFAULT_PARENT_ID);
1805
1812
  return parentIds && chunk_QJLMYOTX_i(parentIds).length > 1;
1806
1813
  }
1807
1814
  if ('dualAxis' === vseed.chartType || 'scatter' === vseed.chartType) {
@@ -1845,17 +1852,22 @@
1845
1852
  const generateMeasuresByParentId = (measures)=>{
1846
1853
  const measureTree = [];
1847
1854
  measures.forEach((measure)=>{
1848
- if (!measure.parentId) return;
1849
1855
  const parent = measureTree.find((item)=>item.id === measure.parentId);
1850
1856
  if (parent && 'children' in parent) {
1851
1857
  parent.children = parent.children || [];
1852
1858
  parent.children.push(measure);
1853
- } else measureTree.push({
1859
+ } else if (measure.parentId) measureTree.push({
1854
1860
  id: measure.parentId,
1855
1861
  children: [
1856
1862
  measure
1857
1863
  ]
1858
1864
  });
1865
+ else measureTree.push({
1866
+ id: DEFAULT_PARENT_ID,
1867
+ children: [
1868
+ measure
1869
+ ]
1870
+ });
1859
1871
  });
1860
1872
  return measureTree;
1861
1873
  };
@@ -2175,13 +2187,30 @@
2175
2187
  });
2176
2188
  return chunk_QJLMYOTX_i(res.map((item)=>item[id]));
2177
2189
  };
2190
+ function chunk_3ZJAREUD_i(...e) {
2191
+ return chunk_WIMGWYZL_u(chunk_3ZJAREUD_o, e);
2192
+ }
2193
+ function chunk_3ZJAREUD_o(e, r) {
2194
+ let a = {};
2195
+ for (let [n, u] of Object.entries(e)){
2196
+ let l = r(u, n, e);
2197
+ a[n] = l;
2198
+ }
2199
+ return a;
2200
+ }
2201
+ const replaceNullToUndefined = (obj)=>{
2202
+ if (null === obj) return;
2203
+ if (Array.isArray(obj)) return obj.map(replaceNullToUndefined);
2204
+ if (chunk_BZNENX2T_r(obj)) return C(obj, chunk_3ZJAREUD_i((value)=>replaceNullToUndefined(value)));
2205
+ return obj;
2206
+ };
2178
2207
  const lineConfig = (advancedVSeed, context)=>{
2179
2208
  const { vseed } = context;
2180
2209
  const { chartType } = vseed;
2181
2210
  const result = {
2182
2211
  ...advancedVSeed
2183
2212
  };
2184
- const config = chunk_2T7K3PFL_i(vseed, [
2213
+ const pickedConfig = chunk_2T7K3PFL_i(vseed, [
2185
2214
  'backgroundColor',
2186
2215
  'color',
2187
2216
  'label',
@@ -2191,6 +2220,7 @@
2191
2220
  'yAxis',
2192
2221
  'crosshairLine'
2193
2222
  ]);
2223
+ const config = replaceNullToUndefined(pickedConfig);
2194
2224
  result.config = {
2195
2225
  ...result.config || {},
2196
2226
  [chartType]: {
@@ -2261,12 +2291,13 @@
2261
2291
  const radarConfig = pieConfig;
2262
2292
  const markStyle_markStyle = (advancedVSeed, context)=>{
2263
2293
  const { vseed } = context;
2264
- const markStyle = chunk_2T7K3PFL_i(vseed, [
2294
+ const pickedMarkStyle = chunk_2T7K3PFL_i(vseed, [
2265
2295
  'barStyle',
2266
2296
  'pointStyle',
2267
2297
  'lineStyle',
2268
2298
  'areaStyle'
2269
2299
  ]);
2300
+ const markStyle = replaceNullToUndefined(pickedMarkStyle);
2270
2301
  return {
2271
2302
  ...advancedVSeed,
2272
2303
  markStyle
@@ -2989,7 +3020,7 @@
2989
3020
  style: {}
2990
3021
  }
2991
3022
  };
2992
- if (!pointStyle) return result;
3023
+ if (chunk_JK3VNB42_n(pointStyle) || chunk_VCYTMP4D_n(pointStyle)) return result;
2993
3024
  const pointStyles = Array.isArray(pointStyle) ? pointStyle : [
2994
3025
  pointStyle
2995
3026
  ];
@@ -3127,7 +3158,7 @@
3127
3158
  style: {}
3128
3159
  }
3129
3160
  };
3130
- if (!lineStyle) return result;
3161
+ if (chunk_JK3VNB42_n(lineStyle) || chunk_VCYTMP4D_n(lineStyle)) return result;
3131
3162
  const lineStyles = Array.isArray(lineStyle) ? lineStyle : [
3132
3163
  lineStyle
3133
3164
  ];
@@ -3272,8 +3303,8 @@
3272
3303
  ];
3273
3304
  };
3274
3305
  const createMarkContent = (tooltip, dimensions, measures, locale, foldInfo, unfoldInfo)=>{
3275
- const dims = T(dimensions.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
3276
- const meas = T(measures.filter((item)=>tooltip.includes(item.id)), (item)=>item.id);
3306
+ const dims = C(dimensions.filter((item)=>tooltip.includes(item.id)), T((item)=>item.id), T((item)=>item.alias));
3307
+ const meas = C(measures.filter((item)=>tooltip.includes(item.id)), T((item)=>item.id), T((item)=>item.alias));
3277
3308
  const dimContent = dims.map((item)=>({
3278
3309
  visible: true,
3279
3310
  hasShape: true,
@@ -4284,7 +4315,7 @@
4284
4315
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
4285
4316
  encoding.x = uniqueDimIds.slice(0, 1);
4286
4317
  encoding.color = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
4287
- encoding.detail = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
4318
+ encoding.detail = encoding.color;
4288
4319
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
4289
4320
  encoding.label = [];
4290
4321
  encoding.row = [];
@@ -4300,9 +4331,7 @@
4300
4331
  MeasureName
4301
4332
  ];
4302
4333
  encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
4303
- if (0 === encoding.detail.length) encoding.detail = [
4304
- MeasureName
4305
- ];
4334
+ if (0 === encoding.detail.length) encoding.detail = encoding.color;
4306
4335
  encoding.tooltip = chunk_QJLMYOTX_i(dimensions.map((item)=>item.id));
4307
4336
  encoding.tooltip = encoding.tooltip.filter((d)=>d !== MeasureName);
4308
4337
  };
@@ -4457,7 +4486,7 @@
4457
4486
  }
4458
4487
  }
4459
4488
  };
4460
- if (!barStyle) return result;
4489
+ if (chunk_JK3VNB42_n(barStyle) || chunk_VCYTMP4D_n(barStyle)) return result;
4461
4490
  const barStyles = Array.isArray(barStyle) ? barStyle : [
4462
4491
  barStyle
4463
4492
  ];
@@ -4914,7 +4943,7 @@
4914
4943
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
4915
4944
  encoding.y = uniqueDimIds.slice(0, 1);
4916
4945
  encoding.color = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
4917
- encoding.detail = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
4946
+ encoding.detail = encoding.color;
4918
4947
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
4919
4948
  encoding.label = [];
4920
4949
  encoding.row = [];
@@ -4930,9 +4959,7 @@
4930
4959
  MeasureName
4931
4960
  ];
4932
4961
  encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
4933
- if (0 === encoding.detail.length) encoding.detail = [
4934
- MeasureName
4935
- ];
4962
+ if (0 === encoding.detail.length) encoding.detail = encoding.color;
4936
4963
  encoding.tooltip = chunk_QJLMYOTX_i(dimensions.map((item)=>item.id));
4937
4964
  encoding.tooltip = encoding.tooltip.filter((d)=>d !== MeasureName);
4938
4965
  };
@@ -5580,7 +5607,7 @@
5580
5607
  style: {}
5581
5608
  }
5582
5609
  };
5583
- if (!areaStyle) return result;
5610
+ if (chunk_JK3VNB42_n(areaStyle) || chunk_VCYTMP4D_n(areaStyle)) return result;
5584
5611
  const areaStyles = Array.isArray(areaStyle) ? areaStyle : [
5585
5612
  areaStyle
5586
5613
  ];
@@ -5791,7 +5818,7 @@
5791
5818
  const dimensionsWithoutMeasureName = dimensions.filter((item)=>item.id !== MeasureName);
5792
5819
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensionsWithoutMeasureName.map((d)=>d.id));
5793
5820
  encoding.color = uniqueDimIds.slice(0);
5794
- encoding.detail = uniqueDimIds.slice(0);
5821
+ encoding.detail = encoding.color;
5795
5822
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
5796
5823
  encoding.label = [];
5797
5824
  encoding.row = [];
@@ -5900,17 +5927,17 @@
5900
5927
  const buildMeasuresForScatter_generateMeasuresByParentId = (measures)=>{
5901
5928
  const scatterMeasures = [];
5902
5929
  measures.forEach((item)=>{
5903
- if (!item.parentId) return;
5904
- if (!scatterMeasures.find((d)=>d.id === item.parentId)) scatterMeasures.push({
5905
- id: item.parentId,
5930
+ const id = item.parentId || DEFAULT_PARENT_ID;
5931
+ if (!scatterMeasures.find((d)=>d.id === id)) scatterMeasures.push({
5932
+ id,
5906
5933
  yMeasures: [],
5907
5934
  xMeasures: []
5908
5935
  });
5909
- const scatterChart = scatterMeasures.find((d)=>d.id === item.parentId);
5936
+ const scatterChart = scatterMeasures.find((d)=>d.id === id);
5910
5937
  if (!scatterChart || !Array.isArray(scatterChart.yMeasures) || !Array.isArray(scatterChart.xMeasures)) return;
5911
5938
  const encoding = Array.isArray(item.encoding) ? item.encoding : [
5912
5939
  item.encoding
5913
- ];
5940
+ ].filter(Boolean);
5914
5941
  const isX = encoding.includes('xAxis');
5915
5942
  const isY = encoding.includes('yAxis');
5916
5943
  const isEmpty = !encoding.length;
@@ -6338,7 +6365,7 @@
6338
6365
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
6339
6366
  encoding.x = uniqueDimIds.slice(0, 1);
6340
6367
  encoding.color = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
6341
- encoding.detail = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
6368
+ encoding.detail = encoding.color;
6342
6369
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
6343
6370
  encoding.label = [];
6344
6371
  encoding.row = [];
@@ -6354,9 +6381,7 @@
6354
6381
  MeasureName
6355
6382
  ];
6356
6383
  encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
6357
- if (0 === encoding.detail.length) encoding.detail = [
6358
- MeasureName
6359
- ];
6384
+ if (0 === encoding.detail.length) encoding.detail = encoding.color;
6360
6385
  encoding.tooltip = chunk_QJLMYOTX_i(dimensions.map((item)=>item.id));
6361
6386
  encoding.tooltip = encoding.tooltip.filter((d)=>d !== MeasureName);
6362
6387
  };
@@ -6448,17 +6473,17 @@
6448
6473
  const buildMeasuresForDualAxis_generateMeasuresByParentId = (measures)=>{
6449
6474
  const dualMeasures = [];
6450
6475
  measures.forEach((item)=>{
6451
- if (!item.parentId) return;
6452
- if (!dualMeasures.find((d)=>d.id === item.parentId)) dualMeasures.push({
6453
- id: item.parentId,
6476
+ const id = item.parentId || DEFAULT_PARENT_ID;
6477
+ if (!dualMeasures.find((d)=>d.id === id)) dualMeasures.push({
6478
+ id,
6454
6479
  primaryMeasures: [],
6455
6480
  secondaryMeasures: []
6456
6481
  });
6457
- const dualChart = dualMeasures.find((d)=>d.id === item.parentId);
6482
+ const dualChart = dualMeasures.find((d)=>d.id === id);
6458
6483
  if (!dualChart || !Array.isArray(dualChart.primaryMeasures) || !Array.isArray(dualChart.secondaryMeasures)) return;
6459
6484
  const encoding = Array.isArray(item.encoding) ? item.encoding : [
6460
6485
  item.encoding
6461
- ];
6486
+ ].filter(Boolean);
6462
6487
  const isPrimary = encoding.includes('primaryYAxis');
6463
6488
  const isSecondary = encoding.includes('secondaryYAxis');
6464
6489
  const isEmpty = !item.encoding;
@@ -6486,7 +6511,7 @@
6486
6511
  const secondaryMeasures = measures[1] || [];
6487
6512
  const hasEncoding = (vseed.dimensions || []).some((item)=>item.encoding);
6488
6513
  if (primaryMeasures && primaryMeasures.children) {
6489
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, primaryMeasures.children, encoding, {
6514
+ const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(primaryMeasures.children, (item)=>item.id), encoding, {
6490
6515
  colorItemAsId: hasEncoding,
6491
6516
  foldMeasureValue: FoldPrimaryMeasureValue,
6492
6517
  colorMeasureId: getColorMeasureId(advancedVSeed)
@@ -6496,7 +6521,7 @@
6496
6521
  unfoldInfoList.push(unfoldInfo);
6497
6522
  }
6498
6523
  if (secondaryMeasures && secondaryMeasures.children) {
6499
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, secondaryMeasures.children, encoding, {
6524
+ const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(secondaryMeasures.children, (item)=>item.id), encoding, {
6500
6525
  foldMeasureValue: FoldSecondaryMeasureValue,
6501
6526
  colorMeasureId: getColorMeasureId(advancedVSeed)
6502
6527
  });
@@ -6552,7 +6577,7 @@
6552
6577
  const primaryMeasures = measures[0];
6553
6578
  const secondaryMeasures = measures[1] || [];
6554
6579
  if (primaryMeasures && primaryMeasures.children) {
6555
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, primaryMeasures.children, encoding, {
6580
+ const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(primaryMeasures.children, (item)=>item.id), encoding, {
6556
6581
  colorItemAsId: hasEncoding,
6557
6582
  foldMeasureValue: `${FoldPrimaryMeasureValue}${index}`,
6558
6583
  colorMeasureId: getColorMeasureId(advancedVSeed)
@@ -6562,7 +6587,7 @@
6562
6587
  unfoldInfoList.push(unfoldInfo);
6563
6588
  }
6564
6589
  if (secondaryMeasures && secondaryMeasures.children) {
6565
- const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, dimensions, secondaryMeasures.children, encoding, {
6590
+ const { dataset: newDataset, foldInfo, unfoldInfo } = dataReshapeByEncoding(dataset, T(dimensions, (item)=>item.id), T(secondaryMeasures.children, (item)=>item.id), encoding, {
6566
6591
  foldMeasureValue: `${FoldSecondaryMeasureValue}${index}`,
6567
6592
  colorMeasureId: getColorMeasureId(advancedVSeed)
6568
6593
  });
@@ -6600,18 +6625,21 @@
6600
6625
  const result = {
6601
6626
  ...advancedVSeed
6602
6627
  };
6603
- const config = chunk_2T7K3PFL_i(vseed, [
6628
+ const pickedConfig = chunk_2T7K3PFL_i(vseed, [
6604
6629
  'backgroundColor',
6605
6630
  'color',
6606
6631
  'label',
6607
6632
  'legend',
6608
6633
  'tooltip',
6634
+ 'xAxis',
6609
6635
  'dualChartType',
6610
6636
  'alignTicks',
6611
6637
  'primaryYAxis',
6612
6638
  'secondaryYAxis',
6613
- 'crosshairLine'
6639
+ 'crosshairLine',
6640
+ 'crosshairRect'
6614
6641
  ]);
6642
+ const config = replaceNullToUndefined(pickedConfig);
6615
6643
  result.config = {
6616
6644
  ...result.config || {},
6617
6645
  [chartType]: {
@@ -7399,7 +7427,7 @@
7399
7427
  const pie_generateDefaultDimensionEncoding = (dimensions, encoding)=>{
7400
7428
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
7401
7429
  encoding.color = uniqueDimIds.slice(0);
7402
- encoding.detail = uniqueDimIds.slice(0);
7430
+ encoding.detail = encoding.color;
7403
7431
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
7404
7432
  encoding.label = [];
7405
7433
  encoding.row = [];
@@ -7675,7 +7703,7 @@
7675
7703
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
7676
7704
  encoding.angle = uniqueDimIds.slice(0, 1);
7677
7705
  encoding.color = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
7678
- encoding.detail = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
7706
+ encoding.detail = encoding.color;
7679
7707
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
7680
7708
  encoding.label = [];
7681
7709
  encoding.row = [];
@@ -7691,9 +7719,7 @@
7691
7719
  MeasureName
7692
7720
  ];
7693
7721
  encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
7694
- if (0 === encoding.detail.length) encoding.detail = [
7695
- MeasureName
7696
- ];
7722
+ if (0 === encoding.detail.length) encoding.detail = encoding.color;
7697
7723
  encoding.tooltip = chunk_QJLMYOTX_i(dimensions.map((item)=>item.id));
7698
7724
  encoding.tooltip = encoding.tooltip.filter((d)=>d !== MeasureName);
7699
7725
  };
@@ -8274,7 +8300,7 @@
8274
8300
  const funnel_generateDefaultDimensionEncoding = (dimensions, encoding)=>{
8275
8301
  const uniqueDimIds = chunk_QJLMYOTX_i(dimensions.map((d)=>d.id));
8276
8302
  encoding.color = uniqueDimIds.slice(0);
8277
- encoding.detail = uniqueDimIds.slice(0);
8303
+ encoding.detail = encoding.color;
8278
8304
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
8279
8305
  encoding.label = [];
8280
8306
  encoding.row = [];
@@ -8464,7 +8490,7 @@
8464
8490
  encoding.x = uniqueDimIds.slice(0, 1);
8465
8491
  encoding.y = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
8466
8492
  encoding.color = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
8467
- encoding.detail = uniqueDimIds.slice(onlyMeasureName ? 0 : 1);
8493
+ encoding.detail = encoding.color;
8468
8494
  encoding.tooltip = uniqueDimIds.filter((d)=>d !== MeasureName);
8469
8495
  encoding.label = [];
8470
8496
  encoding.row = [];
@@ -8483,9 +8509,7 @@
8483
8509
  MeasureName
8484
8510
  ];
8485
8511
  encoding.detail = chunk_QJLMYOTX_i(dimensions.filter((item)=>'detail' === item.encoding).map((item)=>item.id));
8486
- if (0 === encoding.detail.length) encoding.detail = [
8487
- MeasureName
8488
- ];
8512
+ if (0 === encoding.detail.length) encoding.detail = encoding.color;
8489
8513
  encoding.tooltip = chunk_QJLMYOTX_i(dimensions.map((item)=>item.id));
8490
8514
  encoding.tooltip = encoding.tooltip.filter((d)=>d !== MeasureName);
8491
8515
  };
@@ -12880,6 +12904,70 @@
12880
12904
  column: schemas_array(schemas_string()).nullish(),
12881
12905
  group: schemas_array(schemas_string()).nullish().describe("\u5DF2\u5F03\u7528, \u8BF7\u4F7F\u7528\u989C\u8272\u66FF\u4EE3")
12882
12906
  });
12907
+ const EncodingEnum = {
12908
+ x: 'x',
12909
+ y: 'y',
12910
+ angle: 'angle',
12911
+ radius: 'radius',
12912
+ detail: 'detail',
12913
+ color: 'color',
12914
+ size: 'size',
12915
+ tooltip: 'tooltip',
12916
+ label: 'label',
12917
+ row: 'row',
12918
+ column: 'column',
12919
+ group: 'group'
12920
+ };
12921
+ const zDimensionEncoding = schemas_enum([
12922
+ 'xAxis',
12923
+ 'yAxis',
12924
+ 'angle',
12925
+ 'color',
12926
+ 'detail',
12927
+ 'tooltip',
12928
+ 'label',
12929
+ 'row',
12930
+ 'column'
12931
+ ]);
12932
+ const DimensionEncodingEnum = {
12933
+ xAxis: 'xAxis',
12934
+ yAxis: 'yAxis',
12935
+ angle: 'angle',
12936
+ color: 'color',
12937
+ detail: 'detail',
12938
+ tooltip: 'tooltip',
12939
+ label: 'label',
12940
+ row: 'row',
12941
+ column: 'column'
12942
+ };
12943
+ const zMeasureEncoding = schemas_enum([
12944
+ 'primaryYAxis',
12945
+ 'secondaryYAxis',
12946
+ 'xAxis',
12947
+ 'yAxis',
12948
+ 'angle',
12949
+ 'radius',
12950
+ 'size',
12951
+ 'color',
12952
+ 'detail',
12953
+ 'column',
12954
+ 'label',
12955
+ 'tooltip'
12956
+ ]);
12957
+ const MeasureEncodingEnum = {
12958
+ primaryYAxis: 'primaryYAxis',
12959
+ secondaryYAxis: 'secondaryYAxis',
12960
+ xAxis: 'xAxis',
12961
+ yAxis: 'yAxis',
12962
+ angle: 'angle',
12963
+ radius: 'radius',
12964
+ size: 'size',
12965
+ color: 'color',
12966
+ detail: 'detail',
12967
+ column: 'column',
12968
+ label: 'label',
12969
+ tooltip: 'tooltip'
12970
+ };
12883
12971
  const zXBandAxis = schemas_object({
12884
12972
  visible: schemas_boolean().default(true).nullish(),
12885
12973
  labelAutoHide: schemas_boolean().default(true).nullish(),