@visactor/vseed 0.0.36 → 0.0.37

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 (112) hide show
  1. package/dist/builder/builder/builder.d.ts +8924 -8912
  2. package/dist/index.cjs +1103 -869
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.js +1071 -855
  5. package/dist/index.js.map +1 -1
  6. package/dist/pipeline/advanced/table/pipes/config/index.d.ts +2 -0
  7. package/dist/pipeline/advanced/table/pipes/config/pivotTableConfig.d.ts +2 -0
  8. package/dist/pipeline/advanced/table/pipes/config/tableConfig.d.ts +2 -0
  9. package/dist/pipeline/advanced/table/pipes/index.d.ts +1 -0
  10. package/dist/pipeline/spec/chart/pipes/series/index.d.ts +1 -1
  11. package/dist/pipeline/spec/chart/pipes/series/series.d.ts +1 -0
  12. package/dist/pipeline/spec/table/pipes/columns/dimensionsToColumns.d.ts +2 -0
  13. package/dist/pipeline/spec/table/pipes/columns/index.d.ts +1 -0
  14. package/dist/pipeline/spec/table/pipes/columns/measuresToColumns.d.ts +0 -1
  15. package/dist/pipeline/spec/table/pipes/indicators/index.d.ts +1 -0
  16. package/dist/pipeline/spec/table/pipes/indicators/pivotDataConfig.d.ts +2 -0
  17. package/dist/pipeline/utils/dimensions/index.d.ts +1 -0
  18. package/dist/pipeline/utils/dimensions/typeGuard.d.ts +4 -0
  19. package/dist/pipeline/utils/measures/index.d.ts +1 -0
  20. package/dist/pipeline/utils/measures/typeGuard.d.ts +4 -0
  21. package/dist/types/advancedVSeed.d.ts +3843 -3839
  22. package/dist/types/chartType/area/zArea.d.ts +569 -569
  23. package/dist/types/chartType/areaPercent/zAreaPercent.d.ts +569 -569
  24. package/dist/types/chartType/areaRange/zAreaRange.d.ts +550 -550
  25. package/dist/types/chartType/bar/bar.d.ts +0 -1183
  26. package/dist/types/chartType/bar/index.d.ts +2 -1
  27. package/dist/types/chartType/bar/zBar.d.ts +1183 -0
  28. package/dist/types/chartType/barParallel/barParallel.d.ts +0 -1183
  29. package/dist/types/chartType/barParallel/index.d.ts +2 -1
  30. package/dist/types/chartType/barParallel/zBarParallel.d.ts +1183 -0
  31. package/dist/types/chartType/barPercent/barPercent.d.ts +0 -1183
  32. package/dist/types/chartType/barPercent/index.d.ts +2 -1
  33. package/dist/types/chartType/barPercent/zBarPercent.d.ts +1183 -0
  34. package/dist/types/chartType/column/column.d.ts +0 -1183
  35. package/dist/types/chartType/column/index.d.ts +2 -1
  36. package/dist/types/chartType/column/zColumn.d.ts +1183 -0
  37. package/dist/types/chartType/columnParallel/columnParallel.d.ts +0 -1183
  38. package/dist/types/chartType/columnParallel/index.d.ts +2 -1
  39. package/dist/types/chartType/columnParallel/zColumnParallel.d.ts +1183 -0
  40. package/dist/types/chartType/columnPercent/columnPercent.d.ts +0 -1183
  41. package/dist/types/chartType/columnPercent/index.d.ts +2 -1
  42. package/dist/types/chartType/columnPercent/zColumnPercent.d.ts +1183 -0
  43. package/dist/types/chartType/donut/donut.d.ts +0 -119
  44. package/dist/types/chartType/donut/index.d.ts +2 -1
  45. package/dist/types/chartType/donut/zDonut.d.ts +119 -0
  46. package/dist/types/chartType/dualAxis/zDualAxis.d.ts +747 -747
  47. package/dist/types/chartType/funnel/funnel.d.ts +0 -89
  48. package/dist/types/chartType/funnel/index.d.ts +2 -1
  49. package/dist/types/chartType/funnel/zFunnel.d.ts +89 -0
  50. package/dist/types/chartType/heatmap/heatmap.d.ts +0 -89
  51. package/dist/types/chartType/heatmap/index.d.ts +2 -1
  52. package/dist/types/chartType/heatmap/zHeatmap.d.ts +89 -0
  53. package/dist/types/chartType/line/index.d.ts +2 -1
  54. package/dist/types/chartType/line/line.d.ts +0 -1365
  55. package/dist/types/chartType/line/zLine.d.ts +1365 -0
  56. package/dist/types/chartType/pie/index.d.ts +2 -1
  57. package/dist/types/chartType/pie/pie.d.ts +0 -119
  58. package/dist/types/chartType/pie/zPie.d.ts +119 -0
  59. package/dist/types/chartType/pivotTable/index.d.ts +2 -1
  60. package/dist/types/chartType/pivotTable/pivotTable.d.ts +44 -60
  61. package/dist/types/chartType/pivotTable/zPivotTable.d.ts +68 -0
  62. package/dist/types/chartType/radar/index.d.ts +2 -1
  63. package/dist/types/chartType/radar/radar.d.ts +0 -119
  64. package/dist/types/chartType/radar/zRadar.d.ts +119 -0
  65. package/dist/types/chartType/rose/index.d.ts +2 -1
  66. package/dist/types/chartType/rose/rose.d.ts +0 -119
  67. package/dist/types/chartType/rose/zRose.d.ts +119 -0
  68. package/dist/types/chartType/roseParallel/index.d.ts +2 -1
  69. package/dist/types/chartType/roseParallel/roseParallel.d.ts +0 -119
  70. package/dist/types/chartType/roseParallel/zRoseParallel.d.ts +119 -0
  71. package/dist/types/chartType/scatter/index.d.ts +2 -1
  72. package/dist/types/chartType/scatter/scatter.d.ts +0 -1191
  73. package/dist/types/chartType/scatter/zScatter.d.ts +1191 -0
  74. package/dist/types/chartType/table/index.d.ts +2 -1
  75. package/dist/types/chartType/table/table.d.ts +45 -64
  76. package/dist/types/chartType/table/zTable.d.ts +68 -0
  77. package/dist/types/dataSelector/selector.d.ts +16 -16
  78. package/dist/types/properties/analysis/analysis.d.ts +1 -1
  79. package/dist/types/properties/analysis/sort.d.ts +2 -4
  80. package/dist/types/properties/analysis/sortLegend.d.ts +2 -3
  81. package/dist/types/properties/annotation/annotation.d.ts +308 -308
  82. package/dist/types/properties/annotation/annotationArea.d.ts +20 -130
  83. package/dist/types/properties/annotation/annotationHorizontalLine.d.ts +31 -138
  84. package/dist/types/properties/annotation/annotationPoint.d.ts +20 -114
  85. package/dist/types/properties/annotation/annotationVerticalLine.d.ts +6 -113
  86. package/dist/types/properties/annotation/index.d.ts +8 -4
  87. package/dist/types/properties/annotation/zAnnotationArea.d.ts +110 -0
  88. package/dist/types/properties/annotation/zAnnotationHorizontalLine.d.ts +107 -0
  89. package/dist/types/properties/annotation/zAnnotationPoint.d.ts +94 -0
  90. package/dist/types/properties/annotation/zAnnotationVerticalLine.d.ts +107 -0
  91. package/dist/types/properties/config/axes/axis.d.ts +44 -44
  92. package/dist/types/properties/config/axes/bandAxis.d.ts +74 -74
  93. package/dist/types/properties/config/axes/linearAxis.d.ts +76 -76
  94. package/dist/types/properties/config/backgroundColor/backgroundColor.d.ts +1 -1
  95. package/dist/types/properties/config/color/color.d.ts +3 -3
  96. package/dist/types/properties/config/config.d.ts +3286 -3282
  97. package/dist/types/properties/config/crosshair/crosshair.d.ts +10 -10
  98. package/dist/types/properties/config/label/label.d.ts +1 -1
  99. package/dist/types/properties/config/legend/legend.d.ts +13 -13
  100. package/dist/types/properties/config/tooltip/tooltip.d.ts +1 -1
  101. package/dist/types/properties/datasetReshapeInfo/datasetReshapeInfo.d.ts +2 -2
  102. package/dist/types/properties/encoding/encoding.d.ts +8 -8
  103. package/dist/types/properties/markStyle/areaStyle.d.ts +20 -20
  104. package/dist/types/properties/markStyle/barStyle.d.ts +24 -24
  105. package/dist/types/properties/markStyle/lineStyle.d.ts +24 -24
  106. package/dist/types/properties/markStyle/markStyle.d.ts +194 -194
  107. package/dist/types/properties/markStyle/pointStyle.d.ts +35 -35
  108. package/dist/types/properties/theme/customTheme.d.ts +3334 -3330
  109. package/dist/types/vseed.d.ts +6781 -6755
  110. package/dist/umd/index.js +1113 -891
  111. package/dist/umd/index.js.map +1 -1
  112. package/package.json +1 -1
package/dist/umd/index.js CHANGED
@@ -30,6 +30,7 @@
30
30
  var __webpack_exports__ = {};
31
31
  __webpack_require__.r(__webpack_exports__);
32
32
  __webpack_require__.d(__webpack_exports__, {
33
+ zTooltip: ()=>zTooltip,
33
34
  funnelAdvancedPipeline: ()=>funnelAdvancedPipeline,
34
35
  zHeatmapConfig: ()=>zHeatmapConfig,
35
36
  zBar: ()=>zBar,
@@ -54,6 +55,7 @@
54
55
  zDualMeasure: ()=>zDualMeasure,
55
56
  zSortLegend: ()=>zSortLegend,
56
57
  pivotTableAdvancedPipeline: ()=>pivotTableAdvancedPipeline,
58
+ isMeasures: ()=>isMeasures,
57
59
  zYBandAxis: ()=>zYBandAxis,
58
60
  dataReshapeFor1D2M: ()=>dataReshapeFor1D2M,
59
61
  zAnnotationHorizontalLine: ()=>zAnnotationHorizontalLine,
@@ -107,31 +109,31 @@
107
109
  registerLightTheme: ()=>registerLightTheme,
108
110
  roseAdvancedPipeline: ()=>roseAdvancedPipeline,
109
111
  zBarParallel: ()=>zBarParallel,
110
- isPartialDatumSelector: ()=>isPartialDatumSelector,
112
+ registerDarkTheme: ()=>registerDarkTheme,
111
113
  registerPivotTable: ()=>registerPivotTable,
112
- tableAdvancedPipeline: ()=>tableAdvancedPipeline,
113
- pieSpecPipeline: ()=>pieSpecPipeline,
114
+ isPartialDatumSelector: ()=>isPartialDatumSelector,
115
+ isDimensionGroup: ()=>isDimensionGroup,
114
116
  dualAxisSpecPipeline: ()=>dualAxisSpecPipeline,
115
- registerDarkTheme: ()=>registerDarkTheme,
116
- zAnnotationVerticalLine: ()=>zAnnotationVerticalLine,
117
+ pieSpecPipeline: ()=>pieSpecPipeline,
118
+ tableAdvancedPipeline: ()=>tableAdvancedPipeline,
117
119
  barSpecPipeline: ()=>barSpecPipeline,
118
- zChartType: ()=>zChartType,
120
+ zAnnotationVerticalLine: ()=>zAnnotationVerticalLine,
119
121
  registerRose: ()=>registerRose,
120
- zCrosshairLine: ()=>zCrosshairLine,
122
+ zChartType: ()=>zChartType,
121
123
  unfoldDimensions: ()=>unfoldDimensions,
122
124
  roseParallelAdvancedPipeline: ()=>roseParallelAdvancedPipeline,
123
125
  registerTable: ()=>registerTable,
124
126
  autoFormatter: ()=>autoFormatter,
127
+ isMeasureGroup: ()=>isMeasureGroup,
125
128
  findFirstDimension: ()=>findFirstDimension,
126
- Builder: ()=>Builder,
127
129
  registerAll: ()=>registerAll,
128
130
  registerBar: ()=>registerBar,
129
131
  isVChart: ()=>isVChart,
130
132
  radarSpecPipeline: ()=>radarSpecPipeline,
133
+ Builder: ()=>Builder,
134
+ zCrosshairLine: ()=>zCrosshairLine,
131
135
  zMeasureTree: ()=>zMeasureTree,
132
136
  zPieConfig: ()=>zPieConfig,
133
- zPivotTable: ()=>zPivotTable,
134
- zRadar: ()=>zRadar,
135
137
  registerLine: ()=>registerLine,
136
138
  registerCustomTheme: ()=>registerCustomTheme,
137
139
  zColor: ()=>zColor,
@@ -151,7 +153,7 @@
151
153
  zAxis: ()=>zAxis,
152
154
  isVTable: ()=>isVTable,
153
155
  zMeasures: ()=>zMeasures,
154
- zRadarConfig: ()=>zRadarConfig,
156
+ zPivotTable: ()=>zPivotTable,
155
157
  zLine: ()=>zLine,
156
158
  columnSpecPipeline: ()=>columnSpecPipeline,
157
159
  UnfoldDimensionGroup: ()=>UnfoldDimensionGroup,
@@ -160,8 +162,9 @@
160
162
  zLinearColor: ()=>zLinearColor,
161
163
  zAreaStyle: ()=>zAreaStyle,
162
164
  ORIGINAL_DATA: ()=>ORIGINAL_DATA,
163
- zStackCornerRadius: ()=>zStackCornerRadius,
165
+ zRadarConfig: ()=>zRadarConfig,
164
166
  zAnnotationArea: ()=>zAnnotationArea,
167
+ zStackCornerRadius: ()=>zStackCornerRadius,
165
168
  zUnfoldInfo: ()=>zUnfoldInfo,
166
169
  zRose: ()=>zRose,
167
170
  columnParallelSpecPipeline: ()=>columnParallelSpecPipeline,
@@ -172,7 +175,9 @@
172
175
  registerColumnParallel: ()=>registerColumnParallel,
173
176
  updateAdvanced: ()=>updateAdvanced,
174
177
  zDimension: ()=>zDimension,
178
+ zRadar: ()=>zRadar,
175
179
  zTable: ()=>zTable,
180
+ isMeasure: ()=>isMeasure,
176
181
  FoldSecondaryMeasureValue: ()=>FoldSecondaryMeasureValue,
177
182
  zSort: ()=>zSort,
178
183
  isPivotChart: ()=>isPivotChart,
@@ -194,8 +199,8 @@
194
199
  registerBarParallel: ()=>registerBarParallel,
195
200
  registerRadar: ()=>registerRadar,
196
201
  zLocale: ()=>zLocale,
202
+ isDimension: ()=>isDimension,
197
203
  pivotTableSpecPipeline: ()=>pivotTableSpecPipeline,
198
- zMeasure: ()=>zMeasure,
199
204
  areaRangeSpecPipeline: ()=>areaRangeSpecPipeline,
200
205
  areaRangeAdvancedPipeline: ()=>areaRangeAdvancedPipeline,
201
206
  dualAxisAdvancedPipeline: ()=>dualAxisAdvancedPipeline,
@@ -208,9 +213,10 @@
208
213
  zConfig: ()=>zConfig,
209
214
  zEncoding: ()=>zEncoding,
210
215
  zBarStyle: ()=>zBarStyle,
216
+ zMeasure: ()=>zMeasure,
211
217
  zRoseParallelConfig: ()=>zRoseParallelConfig,
212
- zXLinearAxis: ()=>zXLinearAxis,
213
218
  zAreaPercent: ()=>zAreaPercent,
219
+ zXLinearAxis: ()=>zXLinearAxis,
214
220
  columnParallelAdvancedPipeline: ()=>columnParallelAdvancedPipeline,
215
221
  isValueSelector: ()=>isValueSelector,
216
222
  donutAdvancedPipeline: ()=>donutAdvancedPipeline,
@@ -228,8 +234,8 @@
228
234
  lineAdvancedPipeline: ()=>lineAdvancedPipeline,
229
235
  zBarPercentConfig: ()=>zBarPercentConfig,
230
236
  lineSpecPipeline: ()=>lineSpecPipeline,
237
+ isDimensions: ()=>isDimensions,
231
238
  zScatterConfig: ()=>zScatterConfig,
232
- zTooltip: ()=>zTooltip,
233
239
  createFormatter: ()=>createFormatter,
234
240
  zDimensionGroup: ()=>zDimensionGroup,
235
241
  isMeasureSelector: ()=>isMeasureSelector,
@@ -609,11 +615,6 @@
609
615
  dataset
610
616
  };
611
617
  };
612
- function chunk_BZNENX2T_r(o) {
613
- if ("object" != typeof o || null === o) return !1;
614
- let e = Object.getPrototypeOf(o);
615
- return null === e || e === Object.prototype;
616
- }
617
618
  function chunk_D6FCK2GA_u(o, n, a) {
618
619
  let t = (r)=>o(r, ...n);
619
620
  return void 0 === a ? t : Object.assign(t, {
@@ -627,6 +628,46 @@
627
628
  if (1 === a) return chunk_D6FCK2GA_u(r, n, o);
628
629
  throw new Error("Wrong number of arguments");
629
630
  }
631
+ function chunk_2T7K3PFL_i(...e) {
632
+ return chunk_WIMGWYZL_u(chunk_2T7K3PFL_o, e);
633
+ }
634
+ function chunk_2T7K3PFL_o(e, s) {
635
+ let r = {};
636
+ for (let n of s)n in e && (r[n] = e[n]);
637
+ return r;
638
+ }
639
+ const tableConfig_tableConfig = (advancedVSeed, context)=>{
640
+ const { vseed } = context;
641
+ const { chartType } = vseed;
642
+ const result = {
643
+ ...advancedVSeed
644
+ };
645
+ const config = chunk_2T7K3PFL_i(vseed, [
646
+ 'backgroundColor',
647
+ 'bodyFontSize',
648
+ 'bodyFontColor',
649
+ 'bodyBackgroundColor',
650
+ 'headerFontSize',
651
+ 'headerFontColor',
652
+ 'headerBackgroundColor',
653
+ 'hoverHeaderBackgroundColor',
654
+ 'hoverHeaderInlineBackgroundColor',
655
+ 'selectedBorderColor',
656
+ 'selectedBackgroundColor'
657
+ ]);
658
+ result.config = {
659
+ ...result.config || {},
660
+ [chartType]: {
661
+ ...config
662
+ }
663
+ };
664
+ return result;
665
+ };
666
+ function chunk_BZNENX2T_r(o) {
667
+ if ("object" != typeof o || null === o) return !1;
668
+ let e = Object.getPrototypeOf(o);
669
+ return null === e || e === Object.prototype;
670
+ }
630
671
  function D(...e) {
631
672
  return chunk_WIMGWYZL_u(chunk_PDQFB3TV_s, e);
632
673
  }
@@ -667,6 +708,12 @@
667
708
  for (let [e, c] of n.entries())r[e] = chunk_BCBB46UE_u(c, o, t);
668
709
  return r;
669
710
  }
711
+ function chunk_SFZGYJFI_t(r) {
712
+ return "string" == typeof r;
713
+ }
714
+ function chunk_6GTAPB47_e(r) {
715
+ return "number" == typeof r && !Number.isNaN(r);
716
+ }
670
717
  function chunk_NMC53JVB_o(e) {
671
718
  return "object" == typeof e && null !== e;
672
719
  }
@@ -705,6 +752,7 @@
705
752
  return result;
706
753
  };
707
754
  const mergeArray = (arr, themeItem)=>{
755
+ if (chunk_JK3VNB42_n(themeItem) || chunk_SFZGYJFI_t(themeItem) || chunk_6GTAPB47_e(themeItem)) return arr;
708
756
  if (!Array.isArray(arr)) return arr;
709
757
  if (arr.some((d)=>!chunk_NMC53JVB_o(d))) return arr;
710
758
  return arr.map((item)=>chunk_5S4PYKVY_t(themeItem, item));
@@ -714,11 +762,14 @@
714
762
  autoMeasures,
715
763
  autoDimensions,
716
764
  records_records,
765
+ tableConfig_tableConfig,
717
766
  theme_theme
718
767
  ];
719
768
  const initTable = (spec, context)=>{
720
769
  const { advancedVSeed } = context;
721
770
  const { dataset } = advancedVSeed;
771
+ const { config } = advancedVSeed;
772
+ const { backgroundColor = 'transparent' } = config.table || {};
722
773
  return {
723
774
  ...spec,
724
775
  records: dataset,
@@ -740,23 +791,26 @@
740
791
  highlightMode: 'row'
741
792
  },
742
793
  theme: {
743
- underlayBackgroundColor: 'transparent'
794
+ underlayBackgroundColor: backgroundColor
744
795
  }
745
796
  };
746
797
  };
747
- const measureTreeToColumns = (spec, context)=>{
798
+ const isMeasure = (measure)=>!('children' in measure);
799
+ const isMeasureGroup = (measure)=>'children' in measure;
800
+ const isMeasures = (measures)=>measures.every(isMeasure);
801
+ const dimensionTreeToColumns = (spec, context)=>{
748
802
  const { advancedVSeed } = context;
749
- const measures = advancedVSeed.measures;
803
+ const dimensions = advancedVSeed.dimensions;
750
804
  const result = {
751
805
  ...spec
752
806
  };
753
807
  const eachNode = (node)=>{
754
- if ('children' in node) return {};
755
- return {
808
+ if (isMeasure(node)) return {
756
809
  width: 'auto'
757
810
  };
811
+ return {};
758
812
  };
759
- const columns = treeTreeToColumns(measures, eachNode);
813
+ const columns = treeTreeToColumns(dimensions, eachNode);
760
814
  return {
761
815
  ...result,
762
816
  columns: [
@@ -765,19 +819,109 @@
765
819
  ]
766
820
  };
767
821
  };
768
- const dimensionTreeToColumns = (spec, context)=>{
822
+ const treeTreeToColumns = (tree, callback)=>{
823
+ const result = tree.map((item)=>{
824
+ if ('children' in item && Array.isArray(item.children)) {
825
+ const groupNode = item;
826
+ const field = groupNode.id;
827
+ const title = groupNode.alias ?? groupNode.id;
828
+ const props = callback?.(groupNode) || {};
829
+ return {
830
+ field,
831
+ title,
832
+ columns: treeTreeToColumns(item.children, callback),
833
+ ...props
834
+ };
835
+ }
836
+ {
837
+ const field = item.id;
838
+ const title = item.alias ?? item.id;
839
+ const props = callback?.(item) || {};
840
+ return {
841
+ field,
842
+ title,
843
+ ...props
844
+ };
845
+ }
846
+ });
847
+ return result || [];
848
+ };
849
+ function chunk_VCYTMP4D_n(e) {
850
+ return void 0 === e ? !0 : "string" == typeof e || Array.isArray(e) ? 0 === e.length : 0 === Object.keys(e).length;
851
+ }
852
+ const createNumFormatter = (format, locale = intl.getLocale())=>{
853
+ const { type = 'number', ratio = 1, symbol = '', thousandSeparator = true, prefix = '', suffix = '', fractionDigits = 2, significantDigits, roundingMode = 'halfExpand', roundingPriority = 'auto' } = format || {};
854
+ const numFormatterOptions = {
855
+ style: 'decimal',
856
+ notation: 'scientific' === type ? 'scientific' : 'standard',
857
+ roundingMode,
858
+ roundingPriority
859
+ };
860
+ if (chunk_6GTAPB47_e(fractionDigits)) {
861
+ if (fractionDigits >= 0) {
862
+ numFormatterOptions.minimumFractionDigits = fractionDigits;
863
+ numFormatterOptions.maximumFractionDigits = fractionDigits;
864
+ }
865
+ }
866
+ if (chunk_6GTAPB47_e(significantDigits) && significantDigits > 0) {
867
+ if (significantDigits > 0) {
868
+ numFormatterOptions.minimumSignificantDigits = significantDigits;
869
+ numFormatterOptions.maximumSignificantDigits = significantDigits;
870
+ }
871
+ }
872
+ const numFormatter = new Intl.NumberFormat(locale, numFormatterOptions);
873
+ return (value)=>{
874
+ let num = Number(value);
875
+ let typeSymbol = '';
876
+ if (Number.isNaN(num)) return String(value);
877
+ if ('percent' === type) {
878
+ num *= 100;
879
+ typeSymbol = '%';
880
+ } else if ('permille' === type) {
881
+ num *= 1000;
882
+ typeSymbol = "\u2030";
883
+ } else if ('number' === type) num /= ratio || 1;
884
+ let numStr = numFormatter.format(num);
885
+ if (thousandSeparator) {
886
+ const parts = numStr.split('.');
887
+ parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
888
+ numStr = parts.join('.');
889
+ }
890
+ return `${prefix}${numStr}${typeSymbol}${symbol}${suffix}`;
891
+ };
892
+ };
893
+ const autoNumFormatter = (value, locale = intl.getLocale())=>{
894
+ if (null == value) return String(value);
895
+ const num = Number(value);
896
+ if (Number.isNaN(num)) return String(value);
897
+ const numFormatterOptions = {
898
+ style: 'decimal',
899
+ notation: 'compact'
900
+ };
901
+ numFormatterOptions.minimumFractionDigits = 0;
902
+ numFormatterOptions.maximumFractionDigits = 2;
903
+ const numFormatter = new Intl.NumberFormat(locale, {
904
+ ...numFormatterOptions
905
+ });
906
+ return numFormatter.format(Number(value));
907
+ };
908
+ const createFormatter = (format)=>createNumFormatter(format);
909
+ const autoFormatter = (value, locale)=>autoNumFormatter(value, locale);
910
+ const measureTreeToColumns = (spec, context)=>{
769
911
  const { advancedVSeed } = context;
770
- const dimensions = advancedVSeed.dimensions;
912
+ const { locale } = advancedVSeed;
913
+ const measures = advancedVSeed.measures;
771
914
  const result = {
772
915
  ...spec
773
916
  };
774
917
  const eachNode = (node)=>{
775
- if ('children' in node) return {};
776
- return {
777
- width: 'auto'
918
+ if (isMeasure(node)) return {
919
+ width: 'auto',
920
+ fieldFormat: fieldFormat(node, locale)
778
921
  };
922
+ return {};
779
923
  };
780
- const columns = treeTreeToColumns(dimensions, eachNode);
924
+ const columns = measuresToColumns_treeTreeToColumns(measures, eachNode);
781
925
  return {
782
926
  ...result,
783
927
  columns: [
@@ -786,7 +930,16 @@
786
930
  ]
787
931
  };
788
932
  };
789
- const treeTreeToColumns = (tree, callback)=>{
933
+ const fieldFormat = (node, locale)=>(datum)=>{
934
+ const { format = {}, autoFormat = true, id } = node;
935
+ const value = datum[id];
936
+ if (!chunk_VCYTMP4D_n(format)) {
937
+ const formatter = createFormatter(format);
938
+ return formatter(value);
939
+ }
940
+ if (autoFormat) return autoFormatter(value, locale);
941
+ };
942
+ const measuresToColumns_treeTreeToColumns = (tree, callback)=>{
790
943
  const result = tree.map((item)=>{
791
944
  if ('children' in item && Array.isArray(item.children)) {
792
945
  const groupNode = item;
@@ -796,7 +949,7 @@
796
949
  return {
797
950
  field,
798
951
  title,
799
- columns: treeTreeToColumns(item.children, callback),
952
+ columns: measuresToColumns_treeTreeToColumns(item.children, callback),
800
953
  ...props
801
954
  };
802
955
  }
@@ -818,8 +971,8 @@
818
971
  ...spec
819
972
  };
820
973
  const { advancedVSeed } = context;
821
- const { customTheme, chartType } = advancedVSeed;
822
- const themeConfig = customTheme?.config?.[chartType];
974
+ const { chartType, config } = advancedVSeed;
975
+ const themeConfig = config?.[chartType];
823
976
  if (!result.theme || !themeConfig) return result;
824
977
  const borderColor = themeConfig.borderColor || 'rgb(224, 224, 224)';
825
978
  const backgroundColor = themeConfig.bodyBackgroundColor || '#fff';
@@ -857,8 +1010,8 @@
857
1010
  ...spec
858
1011
  };
859
1012
  const { advancedVSeed } = context;
860
- const { customTheme, chartType } = advancedVSeed;
861
- const themConfig = customTheme?.config?.[chartType];
1013
+ const { config, chartType } = advancedVSeed;
1014
+ const themConfig = config?.[chartType];
862
1015
  if (!result.theme || !themConfig) return result;
863
1016
  const borderColor = themConfig.borderColor || 'rgb(224, 224, 224)';
864
1017
  const backgroundColor = themConfig.headerBackgroundColor || '#EEF1F5';
@@ -905,8 +1058,8 @@
905
1058
  ...spec
906
1059
  };
907
1060
  const { advancedVSeed } = context;
908
- const { customTheme, chartType } = advancedVSeed;
909
- const themConfig = customTheme?.config?.[chartType];
1061
+ const { config, chartType } = advancedVSeed;
1062
+ const themConfig = config?.[chartType];
910
1063
  if (!result.theme || !themConfig) return result;
911
1064
  const borderColor = themConfig.borderColor || 'rgb(224, 224, 224)';
912
1065
  result.theme.frameStyle = {
@@ -921,8 +1074,8 @@
921
1074
  ...spec
922
1075
  };
923
1076
  const { advancedVSeed } = context;
924
- const { customTheme, chartType } = advancedVSeed;
925
- const themConfig = customTheme?.config?.[chartType];
1077
+ const { config, chartType } = advancedVSeed;
1078
+ const themConfig = config?.[chartType];
926
1079
  if (!result.theme || !themConfig) return result;
927
1080
  const borderColor = themConfig.selectedBorderColor || 'rgb(224, 224, 224)';
928
1081
  const backgroundColor = themConfig.selectedBackgroundColor || 'rgb(224, 224, 224, 0.5)';
@@ -1046,16 +1199,46 @@
1046
1199
  }));
1047
1200
  return result;
1048
1201
  };
1202
+ const pivotTableConfig = (advancedVSeed, context)=>{
1203
+ const { vseed } = context;
1204
+ const { chartType } = vseed;
1205
+ const result = {
1206
+ ...advancedVSeed
1207
+ };
1208
+ const config = chunk_2T7K3PFL_i(vseed, [
1209
+ 'backgroundColor',
1210
+ 'bodyFontSize',
1211
+ 'bodyFontColor',
1212
+ 'bodyBackgroundColor',
1213
+ 'headerFontSize',
1214
+ 'headerFontColor',
1215
+ 'headerBackgroundColor',
1216
+ 'hoverHeaderBackgroundColor',
1217
+ 'hoverHeaderInlineBackgroundColor',
1218
+ 'selectedBorderColor',
1219
+ 'selectedBackgroundColor'
1220
+ ]);
1221
+ result.config = {
1222
+ ...result.config || {},
1223
+ [chartType]: {
1224
+ ...config
1225
+ }
1226
+ };
1227
+ return result;
1228
+ };
1049
1229
  const pivotTableAdvancedPipeline = [
1050
1230
  initAdvancedVSeed,
1051
1231
  autoPivotMeasures,
1052
1232
  autoPivotDimensions,
1053
1233
  records_records,
1234
+ pivotTableConfig,
1054
1235
  theme_theme
1055
1236
  ];
1056
1237
  const initPivotTable = (spec, context)=>{
1057
1238
  const { advancedVSeed } = context;
1058
1239
  const { dataset } = advancedVSeed;
1240
+ const { config } = advancedVSeed;
1241
+ const { backgroundColor = 'transparent' } = config.pivotTable || {};
1059
1242
  return {
1060
1243
  ...spec,
1061
1244
  records: dataset,
@@ -1084,7 +1267,7 @@
1084
1267
  direction: 'row'
1085
1268
  },
1086
1269
  theme: {
1087
- underlayBackgroundColor: 'transparent'
1270
+ underlayBackgroundColor: backgroundColor
1088
1271
  }
1089
1272
  };
1090
1273
  };
@@ -1116,26 +1299,39 @@
1116
1299
  };
1117
1300
  const pivotIndicators = (spec, context)=>{
1118
1301
  const { advancedVSeed } = context;
1302
+ const { locale } = advancedVSeed;
1119
1303
  const measures = advancedVSeed.measures;
1120
1304
  return {
1121
1305
  ...spec,
1122
1306
  indicatorsAsCol: true,
1123
1307
  indicatorTitle: intl.i18n`指标名称`,
1124
- indicators: measures.map((item)=>({
1308
+ indicators: measures.map((item)=>{
1309
+ if (isMeasure(item)) return {
1125
1310
  cellType: 'text',
1126
1311
  indicatorKey: item.id,
1127
1312
  title: item.alias || item.id,
1128
- width: 'auto'
1129
- }))
1313
+ width: 'auto',
1314
+ format: pivotIndicators_fieldFormat(item, locale)
1315
+ };
1316
+ return {};
1317
+ })
1130
1318
  };
1131
1319
  };
1320
+ const pivotIndicators_fieldFormat = (node, locale)=>(value)=>{
1321
+ const { format = {}, autoFormat = true } = node;
1322
+ if (!chunk_VCYTMP4D_n(format)) {
1323
+ const formatter = createFormatter(format);
1324
+ return formatter(value);
1325
+ }
1326
+ if (autoFormat) return autoFormatter(value, locale);
1327
+ };
1132
1328
  const rowHeaderStyle = (spec, context)=>{
1133
1329
  const result = {
1134
1330
  ...spec
1135
1331
  };
1136
1332
  const { advancedVSeed } = context;
1137
- const { customTheme, chartType } = advancedVSeed;
1138
- const themConfig = customTheme?.config?.[chartType];
1333
+ const { config, chartType } = advancedVSeed;
1334
+ const themConfig = config?.[chartType];
1139
1335
  if (!result.theme || !themConfig) return result;
1140
1336
  const borderColor = themConfig.borderColor || 'rgb(224, 224, 224)';
1141
1337
  const backgroundColor = themConfig.headerBackgroundColor || '#EEF1F5';
@@ -1182,8 +1378,8 @@
1182
1378
  ...spec
1183
1379
  };
1184
1380
  const { advancedVSeed } = context;
1185
- const { customTheme, chartType } = advancedVSeed;
1186
- const themConfig = customTheme?.config?.[chartType];
1381
+ const { config, chartType } = advancedVSeed;
1382
+ const themConfig = config?.[chartType];
1187
1383
  if (!result.theme || !themConfig) return result;
1188
1384
  const borderColor = themConfig.borderColor || 'rgb(224, 224, 224)';
1189
1385
  const backgroundColor = themConfig.headerBackgroundColor || '#EEF1F5';
@@ -1205,9 +1401,9 @@
1205
1401
  ],
1206
1402
  textAlign: 'left',
1207
1403
  hover: {
1208
- cellBgColor: hoverCellColor,
1209
- inlineRowBgColor: hoverInlineColor,
1210
- inlineColumnBgColor: hoverInlineColor
1404
+ cellBgColor: hoverCellColor || void 0,
1405
+ inlineRowBgColor: hoverInlineColor || void 0,
1406
+ inlineColumnBgColor: hoverInlineColor || void 0
1211
1407
  },
1212
1408
  frameStyle: {
1213
1409
  borderColor: [
@@ -1228,6 +1424,29 @@
1228
1424
  };
1229
1425
  return result;
1230
1426
  };
1427
+ var new_data_set_AggregationType;
1428
+ !function(AggregationType) {
1429
+ AggregationType.RECORD = "RECORD", AggregationType.NONE = "NONE", AggregationType.SUM = "SUM", AggregationType.MIN = "MIN", AggregationType.MAX = "MAX", AggregationType.AVG = "AVG", AggregationType.COUNT = "COUNT", AggregationType.CUSTOM = "CUSTOM", AggregationType.RECALCULATE = "RECALCULATE";
1430
+ }(new_data_set_AggregationType || (new_data_set_AggregationType = {}));
1431
+ var new_data_set_SortType;
1432
+ !function(SortType) {
1433
+ SortType.ASC = "ASC", SortType.DESC = "DESC", SortType.NORMAL = "NORMAL", SortType.desc = "desc", SortType.asc = "asc", SortType.normal = "normal";
1434
+ }(new_data_set_SortType || (new_data_set_SortType = {}));
1435
+ const dataConfig = (spec, context)=>{
1436
+ const { advancedVSeed } = context;
1437
+ const measures = findAllMeasures(advancedVSeed.measures);
1438
+ const aggregationRules = measures.map((measure)=>({
1439
+ field: measure.id,
1440
+ aggregationType: new_data_set_AggregationType.NONE,
1441
+ indicatorKey: measure.id
1442
+ }));
1443
+ return {
1444
+ ...spec,
1445
+ dataConfig: {
1446
+ aggregationRules
1447
+ }
1448
+ };
1449
+ };
1231
1450
  const pivotTableSpecPipeline = [
1232
1451
  initPivotTable,
1233
1452
  pivotColumns,
@@ -1238,7 +1457,8 @@
1238
1457
  rowHeaderStyle,
1239
1458
  cornerHeaderStyle,
1240
1459
  frameStyle,
1241
- selectionStyle
1460
+ selectionStyle,
1461
+ dataConfig
1242
1462
  ];
1243
1463
  const registerPivotTable = ()=>{
1244
1464
  Builder._advancedPipelineMap.pivotTable = pivotTableAdvancedPipeline;
@@ -1770,14 +1990,6 @@
1770
1990
  });
1771
1991
  return chunk_QJLMYOTX_i(res.map((item)=>item[id]));
1772
1992
  };
1773
- function chunk_2T7K3PFL_i(...e) {
1774
- return chunk_WIMGWYZL_u(chunk_2T7K3PFL_o, e);
1775
- }
1776
- function chunk_2T7K3PFL_o(e, s) {
1777
- let r = {};
1778
- for (let n of s)n in e && (r[n] = e[n]);
1779
- return r;
1780
- }
1781
1993
  const lineConfig = (advancedVSeed, context)=>{
1782
1994
  const { vseed } = context;
1783
1995
  const { chartType } = vseed;
@@ -1971,7 +2183,7 @@
1971
2183
  const datasetXY = (spec, context)=>{
1972
2184
  const { advancedVSeed, vseed } = context;
1973
2185
  const { encoding, analysis, datasetReshapeInfo } = advancedVSeed;
1974
- const { orderMapping = {} } = analysis ?? {};
2186
+ const orderMapping = analysis?.orderMapping || {};
1975
2187
  const angle = encoding[0]?.angle?.[0];
1976
2188
  const x = encoding[0]?.x?.[0];
1977
2189
  const group = encoding[0]?.group?.[0];
@@ -2016,7 +2228,7 @@
2016
2228
  ...spec
2017
2229
  };
2018
2230
  const { advancedVSeed } = context;
2019
- const { dataset } = advancedVSeed;
2231
+ const { dataset = [] } = advancedVSeed;
2020
2232
  const size = dataset.length;
2021
2233
  if (size < 5000) return result;
2022
2234
  result.large = true;
@@ -2121,67 +2333,6 @@
2121
2333
  };
2122
2334
  const ANNOTATION_Z_INDEX = 1000;
2123
2335
  const LINEAR_AXIS_INNER_OFFSET_TOP = 7;
2124
- function chunk_6GTAPB47_e(r) {
2125
- return "number" == typeof r && !Number.isNaN(r);
2126
- }
2127
- const createNumFormatter = (format, locale = intl.getLocale())=>{
2128
- const { type = 'number', ratio = 1, symbol = '', thousandSeparator = true, prefix = '', suffix = '', fractionDigits = 2, significantDigits, roundingMode = 'halfExpand', roundingPriority = 'auto' } = format || {};
2129
- const numFormatterOptions = {
2130
- style: 'decimal',
2131
- notation: 'scientific' === type ? 'scientific' : 'standard',
2132
- roundingMode,
2133
- roundingPriority
2134
- };
2135
- if (chunk_6GTAPB47_e(fractionDigits)) {
2136
- if (fractionDigits >= 0) {
2137
- numFormatterOptions.minimumFractionDigits = fractionDigits;
2138
- numFormatterOptions.maximumFractionDigits = fractionDigits;
2139
- }
2140
- }
2141
- if (chunk_6GTAPB47_e(significantDigits) && significantDigits > 0) {
2142
- if (significantDigits > 0) {
2143
- numFormatterOptions.minimumSignificantDigits = significantDigits;
2144
- numFormatterOptions.maximumSignificantDigits = significantDigits;
2145
- }
2146
- }
2147
- const numFormatter = new Intl.NumberFormat(locale, numFormatterOptions);
2148
- return (value)=>{
2149
- let num = Number(value);
2150
- let typeSymbol = '';
2151
- if (Number.isNaN(num)) return num.toString();
2152
- if ('percent' === type) {
2153
- num *= 100;
2154
- typeSymbol = '%';
2155
- } else if ('permille' === type) {
2156
- num *= 1000;
2157
- typeSymbol = "\u2030";
2158
- } else if ('number' === type) num /= ratio || 1;
2159
- let numStr = numFormatter.format(num);
2160
- if (thousandSeparator) {
2161
- const parts = numStr.split('.');
2162
- parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
2163
- numStr = parts.join('.');
2164
- }
2165
- return `${prefix}${numStr}${typeSymbol}${symbol}${suffix}`;
2166
- };
2167
- };
2168
- const autoNumFormatter = (value, locale = intl.getLocale())=>{
2169
- if (null == value) return String(value);
2170
- const num = Number(value);
2171
- if (Number.isNaN(num)) return String(value);
2172
- const numFormatterOptions = {
2173
- style: 'decimal',
2174
- notation: 'compact'
2175
- };
2176
- numFormatterOptions.minimumFractionDigits = 0;
2177
- numFormatterOptions.maximumFractionDigits = 2;
2178
- const numFormatter = new Intl.NumberFormat(locale, {
2179
- ...numFormatterOptions
2180
- });
2181
- return numFormatter.format(Number(value));
2182
- };
2183
- const createFormatter = (format)=>createNumFormatter(format);
2184
- const autoFormatter = (value, locale)=>autoNumFormatter(value, locale);
2185
2336
  const yLinear = (spec, context)=>{
2186
2337
  const result = {
2187
2338
  ...spec
@@ -2264,9 +2415,6 @@
2264
2415
  ];
2265
2416
  return result;
2266
2417
  };
2267
- function chunk_VCYTMP4D_n(e) {
2268
- return void 0 === e ? !0 : "string" == typeof e || Array.isArray(e) ? 0 === e.length : 0 === Object.keys(e).length;
2269
- }
2270
2418
  const label_label = (spec, context)=>{
2271
2419
  const result = {
2272
2420
  ...spec
@@ -2387,7 +2535,11 @@
2387
2535
  const config = advancedVSeed.config?.[chartType]?.crosshairLine;
2388
2536
  if (!config) return result;
2389
2537
  if (!result.crosshair) result.crosshair = {};
2390
- const { visible = true, lineColor, labelColor, labelVisible, labelBackgroundColor } = config;
2538
+ const visible = config.visible || true;
2539
+ const lineColor = config.lineColor || void 0;
2540
+ const labelColor = config.labelColor || void 0;
2541
+ const labelVisible = config.labelVisible || void 0;
2542
+ const labelBackgroundColor = config.labelBackgroundColor || void 0;
2391
2543
  const crosshair = result.crosshair;
2392
2544
  crosshair.xField = {
2393
2545
  visible,
@@ -2793,7 +2945,7 @@
2793
2945
  annotationPoint
2794
2946
  ];
2795
2947
  const markPoint = annotationPointList.flatMap((annotationPoint)=>{
2796
- const { selector: selectorPoint, text = '', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', backgroundBorderColor, backgroundBorderRadius = 4, backgroundBorderWidth = 1, backgroundColor = '#212121', backgroundPadding = 2, backgroundVisible = true, offsetX = 0, offsetY = 0 } = annotationPoint;
2948
+ const { selector: selectorPoint, text = '', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', textBackgroundBorderColor, textBackgroundBorderRadius = 4, textBackgroundBorderWidth = 1, textBackgroundColor = '#212121', textBackgroundPadding = 2, textBackgroundVisible = true, offsetX = 0, offsetY = 0 } = annotationPoint;
2797
2949
  const dataset = advancedVSeed.dataset.flat();
2798
2950
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
2799
2951
  return selectedData.map((datum)=>({
@@ -2822,20 +2974,20 @@
2822
2974
  textAlign: textAlign,
2823
2975
  textBaseline: textBaseline,
2824
2976
  fill: textColor,
2825
- stroke: backgroundColor,
2977
+ stroke: textBackgroundColor,
2826
2978
  lineWidth: 1,
2827
2979
  fontSize: textFontSize,
2828
2980
  fontWeight: textFontWeight,
2829
2981
  dy: textFontSize
2830
2982
  },
2831
2983
  labelBackground: {
2832
- visible: backgroundVisible,
2833
- padding: backgroundPadding,
2984
+ visible: textBackgroundVisible,
2985
+ padding: textBackgroundPadding,
2834
2986
  style: {
2835
- cornerRadius: backgroundBorderRadius ?? 4,
2836
- fill: backgroundColor,
2837
- stroke: backgroundBorderColor,
2838
- lineWidth: backgroundBorderWidth,
2987
+ cornerRadius: textBackgroundBorderRadius ?? 4,
2988
+ fill: textBackgroundColor,
2989
+ stroke: textBackgroundBorderColor,
2990
+ lineWidth: textBackgroundBorderWidth,
2839
2991
  dy: textFontSize
2840
2992
  }
2841
2993
  }
@@ -2851,9 +3003,6 @@
2851
3003
  function chunk_BO3LQZNF_o(r) {
2852
3004
  return Array.isArray(r);
2853
3005
  }
2854
- function chunk_SFZGYJFI_t(r) {
2855
- return "string" == typeof r;
2856
- }
2857
3006
  const annotationVerticalLine_annotationVerticalLine = (spec, context)=>{
2858
3007
  const { advancedVSeed } = context;
2859
3008
  const { annotation, encoding } = advancedVSeed;
@@ -2871,7 +3020,7 @@
2871
3020
  insideEnd: 'insideEndTop'
2872
3021
  };
2873
3022
  const markLine = annotationVerticalLineList.flatMap((annotationVerticalLine)=>{
2874
- const { selector: selectorPoint, xValue, text = '', textPosition = 'insideEnd', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'right', textBaseline = 'top', backgroundVisible = true, backgroundBorderColor = '#212121', backgroundColor = '#212121', backgroundBorderRadius = 4, backgroundBorderWidth = 1, backgroundPadding = 2, lineVisible = true, lineColor = '#212121', lineWidth = 1, lineStyle = 'dashed', offsetX = 0, offsetY = 0 } = annotationVerticalLine;
3023
+ const { selector: selectorPoint, xValue, text = '', textPosition = 'insideEnd', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'right', textBaseline = 'top', textBackgroundVisible = true, textBackgroundBorderColor = '#212121', textBackgroundColor = '#212121', textBackgroundBorderRadius = 4, textBackgroundBorderWidth = 1, textBackgroundPadding = 2, lineVisible = true, lineColor = '#212121', lineWidth = 1, lineStyle = 'dashed', offsetX = 0, offsetY = 0 } = annotationVerticalLine;
2875
3024
  const dataset = advancedVSeed.dataset.flat();
2876
3025
  const generateOneMarkLine = (x)=>({
2877
3026
  x: x,
@@ -2897,10 +3046,10 @@
2897
3046
  },
2898
3047
  label: {
2899
3048
  text: text,
2900
- position: positionMap[textPosition],
3049
+ position: positionMap[textPosition || 'insideEnd'],
2901
3050
  style: {
2902
3051
  visible: true,
2903
- stroke: backgroundColor,
3052
+ stroke: textBackgroundColor,
2904
3053
  lineWidth: 1,
2905
3054
  textAlign: textAlign,
2906
3055
  textBaseline: textBaseline,
@@ -2910,20 +3059,20 @@
2910
3059
  dy: textFontSize
2911
3060
  },
2912
3061
  labelBackground: {
2913
- visible: backgroundVisible,
2914
- padding: backgroundPadding,
3062
+ visible: textBackgroundVisible,
3063
+ padding: textBackgroundPadding,
2915
3064
  style: {
2916
3065
  dy: textFontSize,
2917
- cornerRadius: backgroundBorderRadius ?? 4,
2918
- fill: backgroundColor,
2919
- stroke: backgroundBorderColor,
2920
- lineWidth: backgroundBorderWidth
3066
+ cornerRadius: textBackgroundBorderRadius ?? 4,
3067
+ fill: textBackgroundColor,
3068
+ stroke: textBackgroundBorderColor,
3069
+ lineWidth: textBackgroundBorderWidth
2921
3070
  }
2922
3071
  }
2923
3072
  },
2924
3073
  endSymbol: {
2925
3074
  visible: true,
2926
- size: 10 + lineWidth,
3075
+ size: 10 + (lineWidth || 1),
2927
3076
  style: {
2928
3077
  dy: 4,
2929
3078
  fill: lineColor
@@ -2970,7 +3119,7 @@
2970
3119
  insideEnd: 'insideEndTop'
2971
3120
  };
2972
3121
  const markLine = annotationVerticalLineList.flatMap((annotationVerticalLine)=>{
2973
- const { selector: selectorPoint, yValue, text = '', textPosition = 'insideEnd', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'right', textBaseline = 'top', lineColor = '#212121', lineStyle = 'dashed', lineVisible = true, lineWidth = 1, backgroundVisible = true, backgroundColor = '#212121', backgroundBorderColor = '#212121', backgroundBorderRadius = 4, backgroundBorderWidth = 1, backgroundPadding = 2, offsetX = 0, offsetY = 0 } = annotationVerticalLine;
3122
+ const { selector: selectorPoint, yValue, text = '', textPosition = 'insideEnd', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'right', textBaseline = 'top', lineColor = '#212121', lineStyle = 'dashed', lineVisible = true, lineWidth = 1, textBackgroundVisible = true, textBackgroundColor = '#212121', textBackgroundBorderColor = '#212121', textBackgroundBorderRadius = 4, textBackgroundBorderWidth = 1, textBackgroundPadding = 2, offsetX = 0, offsetY = 0 } = annotationVerticalLine;
2974
3123
  const dataset = advancedVSeed.dataset.flat();
2975
3124
  const generateOneMarkLine = (y)=>({
2976
3125
  y,
@@ -2996,11 +3145,11 @@
2996
3145
  },
2997
3146
  label: {
2998
3147
  text: text,
2999
- position: positionMap[textPosition],
3148
+ position: positionMap[textPosition || 'insideEnd'],
3000
3149
  style: {
3001
3150
  visible: true,
3002
3151
  dy: textFontSize,
3003
- stroke: backgroundColor,
3152
+ stroke: textBackgroundColor,
3004
3153
  lineWidth: 1,
3005
3154
  textAlign: textAlign,
3006
3155
  textBaseline: textBaseline,
@@ -3009,20 +3158,20 @@
3009
3158
  fontWeight: textFontWeight
3010
3159
  },
3011
3160
  labelBackground: {
3012
- visible: backgroundVisible,
3013
- padding: backgroundPadding,
3161
+ visible: textBackgroundVisible,
3162
+ padding: textBackgroundPadding,
3014
3163
  style: {
3015
3164
  dy: textFontSize,
3016
- cornerRadius: backgroundBorderRadius ?? 4,
3017
- fill: backgroundColor,
3018
- stroke: backgroundBorderColor,
3019
- lineWidth: backgroundBorderWidth
3165
+ cornerRadius: textBackgroundBorderRadius ?? 4,
3166
+ fill: textBackgroundColor,
3167
+ stroke: textBackgroundBorderColor,
3168
+ lineWidth: textBackgroundBorderWidth
3020
3169
  }
3021
3170
  }
3022
3171
  },
3023
3172
  endSymbol: {
3024
3173
  visible: true,
3025
- size: 10 + lineWidth,
3174
+ size: 10 + (lineWidth || 1),
3026
3175
  style: {
3027
3176
  dx: -4,
3028
3177
  fill: lineColor
@@ -3071,9 +3220,11 @@
3071
3220
  right: 'insideRight'
3072
3221
  };
3073
3222
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
3074
- const { selector: selectorPoint, text = '', textPosition = 'top', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', backgroundVisible = true, backgroundColor = '#191d24', backgroundBorderColor = '#191d24', backgroundBorderWidth = 1, backgroundBorderRadius = 4, backgroundPadding = 4, areaColor = '#888888', areaColorOpacity = 0.15, areaBorderColor = '#888888', areaBorderRadius = 4, areaBorderWidth = 1, outerPadding = 4, offsetX = 0, offsetY = 0 } = annotationArea;
3223
+ const { selector: selectorPoint, text = '', textPosition = 'top', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', textBackgroundVisible = true, textBackgroundColor = '#191d24', textBackgroundBorderColor = '#191d24', textBackgroundBorderWidth = 1, textBackgroundBorderRadius = 4, textBackgroundPadding = 4, areaColor = '#888888', areaColorOpacity = 0.15, areaBorderColor = '#888888', areaBorderRadius = 4, areaBorderWidth = 1, outerPadding = 4, offsetX = 0, offsetY = 0 } = annotationArea;
3075
3224
  const dataset = advancedVSeed.dataset.flat();
3076
3225
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
3226
+ const labelPosition = positionMap[textPosition || 'top'];
3227
+ const isBottom = labelPosition.toLocaleLowerCase().includes('bottom');
3077
3228
  return {
3078
3229
  zIndex: ANNOTATION_Z_INDEX,
3079
3230
  regionRelative: true,
@@ -3086,8 +3237,8 @@
3086
3237
  const xAxisHelper = context.getXAxisHelper();
3087
3238
  if ('function' == typeof xAxisHelper?.getBandwidth) {
3088
3239
  const yScale = yAxisHelper.getScale();
3089
- const minX = Math.min(...xyList.map((item)=>item.x)) - outerPadding;
3090
- const maxX = Math.max(...xyList.map((item)=>item.x)) + outerPadding;
3240
+ const minX = Math.min(...xyList.map((item)=>item.x)) - (outerPadding || 4);
3241
+ const maxX = Math.max(...xyList.map((item)=>item.x)) + (outerPadding || 4);
3091
3242
  const minY = Math.min(...yScale.range());
3092
3243
  const maxY = Math.max(...yScale.range());
3093
3244
  return [
@@ -3111,8 +3262,8 @@
3111
3262
  }
3112
3263
  if ('function' == typeof yAxisHelper?.getBandwidth) {
3113
3264
  const xScale = xAxisHelper.getScale();
3114
- const minY = Math.min(...xyList.map((item)=>item.y)) - outerPadding;
3115
- const maxY = Math.max(...xyList.map((item)=>item.y)) + outerPadding;
3265
+ const minY = Math.min(...xyList.map((item)=>item.y)) - (outerPadding || 4);
3266
+ const maxY = Math.max(...xyList.map((item)=>item.y)) + (outerPadding || 4);
3116
3267
  const minX = Math.min(...xScale.range());
3117
3268
  const maxX = Math.max(...xScale.range());
3118
3269
  return [
@@ -3137,28 +3288,28 @@
3137
3288
  return [];
3138
3289
  },
3139
3290
  label: {
3140
- position: positionMap[textPosition],
3291
+ position: labelPosition,
3141
3292
  visible: true,
3142
3293
  text: text,
3143
3294
  style: {
3144
- dy: textFontSize,
3295
+ dy: isBottom ? 2 * -(textFontSize || 12) : textFontSize,
3145
3296
  textAlign: textAlign,
3146
3297
  textBaseline: textBaseline,
3147
3298
  fill: textColor,
3148
- stroke: backgroundColor,
3299
+ stroke: textBackgroundColor,
3149
3300
  lineWidth: 1,
3150
3301
  fontSize: textFontSize,
3151
3302
  fontWeight: textFontWeight
3152
3303
  },
3153
3304
  labelBackground: {
3154
- visible: backgroundVisible,
3155
- padding: backgroundPadding,
3305
+ visible: textBackgroundVisible,
3306
+ padding: textBackgroundPadding,
3156
3307
  style: {
3157
- dy: textFontSize,
3158
- cornerRadius: backgroundBorderRadius ?? 4,
3159
- fill: backgroundColor,
3160
- stroke: backgroundBorderColor,
3161
- lineWidth: backgroundBorderWidth
3308
+ dy: isBottom ? 2 * -(textFontSize || 12) : textFontSize,
3309
+ cornerRadius: textBackgroundBorderRadius ?? 4,
3310
+ fill: textBackgroundColor,
3311
+ stroke: textBackgroundBorderColor,
3312
+ lineWidth: textBackgroundBorderWidth
3162
3313
  }
3163
3314
  }
3164
3315
  },
@@ -3800,7 +3951,11 @@
3800
3951
  const config = advancedVSeed.config?.[chartType]?.crosshairRect;
3801
3952
  if (!config) return result;
3802
3953
  if (!result.crosshair) result.crosshair = {};
3803
- const { visible = true, rectColor, labelColor, labelVisible, labelBackgroundColor } = config;
3954
+ const visible = config.visible || true;
3955
+ const rectColor = config.rectColor || void 0;
3956
+ const labelColor = config.labelColor || void 0;
3957
+ const labelVisible = config.labelVisible || false;
3958
+ const labelBackgroundColor = config.labelBackgroundColor || void 0;
3804
3959
  const crosshair = result.crosshair;
3805
3960
  crosshair.xField = {
3806
3961
  visible,
@@ -3829,14 +3984,13 @@
3829
3984
  };
3830
3985
  const barStyle_barStyle = (spec, context)=>{
3831
3986
  const { advancedVSeed } = context;
3832
- const { markStyle, dataset } = advancedVSeed;
3987
+ const { markStyle, dataset = [] } = advancedVSeed;
3833
3988
  const { barStyle } = markStyle;
3834
3989
  const showStroke = dataset.length <= 100;
3835
3990
  const result = {
3836
3991
  ...spec,
3837
3992
  bar: {
3838
3993
  style: {
3839
- stroke: '#fff',
3840
3994
  lineWidth: showStroke ? 1 : 0
3841
3995
  },
3842
3996
  state: {
@@ -3912,7 +4066,7 @@
3912
4066
  right: 'insideRight'
3913
4067
  };
3914
4068
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
3915
- const { selector: selectorPoint, text = '', textPosition = 'top', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', backgroundVisible = true, backgroundColor = '#191d24', backgroundBorderColor = '#191d24', backgroundBorderWidth = 1, backgroundBorderRadius = 4, backgroundPadding = 4, areaColor = '#888888', areaColorOpacity = 0.15, areaBorderColor = '#888888', areaBorderRadius = 4, areaBorderWidth = 1, outerPadding = 4, offsetX = 0, offsetY = 0 } = annotationArea;
4069
+ const { selector: selectorPoint, text = '', textPosition = 'top', textColor = '#ffffff', textFontSize = 12, textFontWeight = 400, textAlign = 'center', textBaseline = 'top', textBackgroundVisible = true, textBackgroundColor = '#191d24', textBackgroundBorderColor = '#191d24', textBackgroundBorderWidth = 1, textBackgroundBorderRadius = 4, textBackgroundPadding = 4, areaColor = '#888888', areaColorOpacity = 0.15, areaBorderColor = '#888888', areaBorderRadius = 4, areaBorderWidth = 1, outerPadding = 4, offsetX = 0, offsetY = 0 } = annotationArea;
3916
4070
  const dataset = advancedVSeed.dataset.flat();
3917
4071
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
3918
4072
  return {
@@ -3929,8 +4083,8 @@
3929
4083
  const depth = context.fieldX.length ?? 0;
3930
4084
  const xBandWidth = xAxisHelper?.getBandwidth?.(depth - 1);
3931
4085
  const yScale = yAxisHelper.getScale();
3932
- const minX = Math.min(...xyList.map((item)=>item.x)) - outerPadding;
3933
- const maxX = Math.max(...xyList.map((item)=>item.x)) + xBandWidth + outerPadding;
4086
+ const minX = Math.min(...xyList.map((item)=>item.x)) - (outerPadding || 4);
4087
+ const maxX = Math.max(...xyList.map((item)=>item.x)) + xBandWidth + (outerPadding || 4);
3934
4088
  const minY = Math.min(...yScale.range());
3935
4089
  const maxY = Math.max(...yScale.range());
3936
4090
  return [
@@ -3956,8 +4110,8 @@
3956
4110
  const depth = context.fieldY.length ?? 0;
3957
4111
  const yBandWidth = yAxisHelper?.getBandwidth?.(depth - 1);
3958
4112
  const xScale = xAxisHelper.getScale();
3959
- const minY = Math.min(...xyList.map((item)=>item.y)) - outerPadding;
3960
- const maxY = Math.max(...xyList.map((item)=>item.y)) + yBandWidth + outerPadding;
4113
+ const minY = Math.min(...xyList.map((item)=>item.y)) - (outerPadding || 4);
4114
+ const maxY = Math.max(...xyList.map((item)=>item.y)) + yBandWidth + (outerPadding || 4);
3961
4115
  const minX = Math.min(...xScale.range());
3962
4116
  const maxX = Math.max(...xScale.range());
3963
4117
  return [
@@ -3982,28 +4136,28 @@
3982
4136
  return [];
3983
4137
  },
3984
4138
  label: {
3985
- position: positionMap[textPosition],
4139
+ position: positionMap[textPosition || 'top'],
3986
4140
  visible: true,
3987
4141
  text: text,
3988
4142
  style: {
3989
4143
  dy: textFontSize,
3990
4144
  textAlign: textAlign,
3991
4145
  textBaseline: textBaseline,
3992
- stroke: backgroundColor,
4146
+ stroke: textBackgroundColor,
3993
4147
  lineWidth: 1,
3994
4148
  fill: textColor,
3995
4149
  fontSize: textFontSize,
3996
4150
  fontWeight: textFontWeight
3997
4151
  },
3998
4152
  labelBackground: {
3999
- visible: backgroundVisible,
4000
- padding: backgroundPadding,
4153
+ visible: textBackgroundVisible,
4154
+ padding: textBackgroundPadding,
4001
4155
  style: {
4002
4156
  dy: textFontSize,
4003
- cornerRadius: backgroundBorderRadius ?? 4,
4004
- fill: backgroundColor,
4005
- stroke: backgroundBorderColor,
4006
- lineWidth: backgroundBorderWidth
4157
+ cornerRadius: textBackgroundBorderRadius ?? 4,
4158
+ fill: textBackgroundColor,
4159
+ stroke: textBackgroundBorderColor,
4160
+ lineWidth: textBackgroundBorderWidth
4007
4161
  }
4008
4162
  }
4009
4163
  },
@@ -4333,7 +4487,7 @@
4333
4487
  const datasetYX = (spec, context)=>{
4334
4488
  const { advancedVSeed, vseed } = context;
4335
4489
  const { encoding, analysis, datasetReshapeInfo } = advancedVSeed;
4336
- const { orderMapping = {} } = analysis ?? {};
4490
+ const orderMapping = analysis?.orderMapping || {};
4337
4491
  const angle = encoding[0]?.angle?.[0];
4338
4492
  const y = encoding[0]?.y?.[0];
4339
4493
  const group = encoding[0]?.group?.[0];
@@ -4559,7 +4713,11 @@
4559
4713
  const config = advancedVSeed.config?.[chartType]?.crosshairRect;
4560
4714
  if (!config) return result;
4561
4715
  if (!result.crosshair) result.crosshair = {};
4562
- const { visible = true, rectColor, labelColor, labelVisible, labelBackgroundColor } = config;
4716
+ const visible = config.visible || true;
4717
+ const rectColor = config.rectColor || void 0;
4718
+ const labelColor = config.labelColor || void 0;
4719
+ const labelVisible = config.labelVisible || false;
4720
+ const labelBackgroundColor = config.labelBackgroundColor || void 0;
4563
4721
  const crosshair = result.crosshair;
4564
4722
  crosshair.yField = {
4565
4723
  visible,
@@ -5278,6 +5436,35 @@
5278
5436
  return result;
5279
5437
  };
5280
5438
  };
5439
+ const seriesDualAxis = (...args)=>{
5440
+ const result = {
5441
+ type: 'common',
5442
+ padding: 0,
5443
+ region: [
5444
+ {
5445
+ clip: true
5446
+ }
5447
+ ]
5448
+ };
5449
+ const createDualContext = (context, index)=>{
5450
+ const { advancedVSeed } = context;
5451
+ const dataset = advancedVSeed.dataset[index];
5452
+ return {
5453
+ ...context,
5454
+ advancedVSeed: {
5455
+ ...advancedVSeed,
5456
+ dataset: dataset
5457
+ }
5458
+ };
5459
+ };
5460
+ return (_, context)=>{
5461
+ result.series = args.map((pipeline, index)=>{
5462
+ const seriesContext = createDualContext(context, index);
5463
+ return execPipeline(pipeline, seriesContext, {});
5464
+ });
5465
+ return result;
5466
+ };
5467
+ };
5281
5468
  const initAreaRange = (spec, context)=>{
5282
5469
  const result = {
5283
5470
  ...spec
@@ -5707,7 +5894,11 @@
5707
5894
  const config = advancedVSeed.config?.[chartType]?.crosshairLine;
5708
5895
  if (!config) return result;
5709
5896
  if (!result.crosshair) result.crosshair = {};
5710
- const { visible = true, lineColor, labelColor, labelVisible, labelBackgroundColor } = config;
5897
+ const visible = config.visible || true;
5898
+ const lineColor = config.lineColor || void 0;
5899
+ const labelColor = config.labelColor || void 0;
5900
+ const labelVisible = config.labelVisible || void 0;
5901
+ const labelBackgroundColor = config.labelBackgroundColor || void 0;
5711
5902
  const crosshair = result.crosshair;
5712
5903
  crosshair.yField = {
5713
5904
  visible,
@@ -6210,7 +6401,7 @@
6210
6401
  const datasetPrimary = (spec, context)=>{
6211
6402
  const { advancedVSeed, vseed } = context;
6212
6403
  const { encoding, analysis, datasetReshapeInfo } = advancedVSeed;
6213
- const { orderMapping = {} } = analysis ?? {};
6404
+ const orderMapping = analysis?.orderMapping || {};
6214
6405
  const x = encoding[0]?.x?.[0];
6215
6406
  const group = encoding[0]?.group?.[0];
6216
6407
  const id = datasetReshapeInfo[0].id;
@@ -6241,7 +6432,7 @@
6241
6432
  ...spec,
6242
6433
  data: {
6243
6434
  id: `${id}-primary-dataset`,
6244
- values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset[0],
6435
+ values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
6245
6436
  fields: fields
6246
6437
  }
6247
6438
  };
@@ -6249,7 +6440,7 @@
6249
6440
  const datasetSecondary = (spec, context)=>{
6250
6441
  const { advancedVSeed, vseed } = context;
6251
6442
  const { encoding, analysis, datasetReshapeInfo } = advancedVSeed;
6252
- const { orderMapping = {} } = analysis ?? {};
6443
+ const orderMapping = analysis?.orderMapping || {};
6253
6444
  const x = encoding[0]?.x?.[0];
6254
6445
  const group = encoding[0]?.group?.[0];
6255
6446
  const id = datasetReshapeInfo[0].id;
@@ -6280,7 +6471,7 @@
6280
6471
  ...spec,
6281
6472
  data: {
6282
6473
  id: `${id}-secondary-dataset`,
6283
- values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset[1],
6474
+ values: isPivotChart(vseed) ? void 0 : advancedVSeed.dataset,
6284
6475
  fields: fields
6285
6476
  }
6286
6477
  };
@@ -6708,7 +6899,7 @@
6708
6899
  return result;
6709
6900
  };
6710
6901
  const dualAxis = [
6711
- series([
6902
+ seriesDualAxis([
6712
6903
  initDualAxisPrimary,
6713
6904
  dualChartTypePrimary,
6714
6905
  datasetPrimary,
@@ -6751,7 +6942,7 @@
6751
6942
  pivotIndicators_pivotIndicatorsAsRow,
6752
6943
  datasetPivot,
6753
6944
  pivotIndicators_pivotIndicators([
6754
- series([
6945
+ seriesDualAxis([
6755
6946
  initDualAxisPrimary,
6756
6947
  dualChartTypePrimary,
6757
6948
  datasetPrimary,
@@ -8145,7 +8336,8 @@
8145
8336
  hoverHeaderBackgroundColor: '#D9DDE4',
8146
8337
  hoverHeaderInlineBackgroundColor: '#D9DDE455',
8147
8338
  selectedBorderColor: '#4080ff',
8148
- selectedBackgroundColor: '#bedaff33'
8339
+ selectedBackgroundColor: '#bedaff33',
8340
+ backgroundColor: 'transparent'
8149
8341
  };
8150
8342
  return {
8151
8343
  config: {
@@ -8165,8 +8357,8 @@
8165
8357
  stackCornerRadius: [
8166
8358
  4,
8167
8359
  4,
8168
- 0,
8169
- 0
8360
+ 4,
8361
+ 4
8170
8362
  ]
8171
8363
  },
8172
8364
  columnParallel: {
@@ -8177,8 +8369,8 @@
8177
8369
  stackCornerRadius: [
8178
8370
  4,
8179
8371
  4,
8180
- 0,
8181
- 0
8372
+ 4,
8373
+ 4
8182
8374
  ]
8183
8375
  },
8184
8376
  columnPercent: {
@@ -8189,8 +8381,8 @@
8189
8381
  stackCornerRadius: [
8190
8382
  4,
8191
8383
  4,
8192
- 0,
8193
- 0
8384
+ 4,
8385
+ 4
8194
8386
  ]
8195
8387
  },
8196
8388
  bar: {
@@ -8199,10 +8391,10 @@
8199
8391
  yAxis: barBandAxis,
8200
8392
  crosshairRect,
8201
8393
  stackCornerRadius: [
8202
- 0,
8203
8394
  4,
8204
8395
  4,
8205
- 0
8396
+ 4,
8397
+ 4
8206
8398
  ]
8207
8399
  },
8208
8400
  barParallel: {
@@ -8211,10 +8403,10 @@
8211
8403
  yAxis: barBandAxis,
8212
8404
  crosshairRect,
8213
8405
  stackCornerRadius: [
8214
- 0,
8215
8406
  4,
8216
8407
  4,
8217
- 0
8408
+ 4,
8409
+ 4
8218
8410
  ]
8219
8411
  },
8220
8412
  barPercent: {
@@ -8223,10 +8415,10 @@
8223
8415
  yAxis: barBandAxis,
8224
8416
  crosshairRect,
8225
8417
  stackCornerRadius: [
8226
- 0,
8227
8418
  4,
8228
8419
  4,
8229
- 0
8420
+ 4,
8421
+ 4
8230
8422
  ]
8231
8423
  },
8232
8424
  area: {
@@ -8503,8 +8695,8 @@
8503
8695
  stackCornerRadius: [
8504
8696
  4,
8505
8697
  4,
8506
- 0,
8507
- 0
8698
+ 4,
8699
+ 4
8508
8700
  ]
8509
8701
  },
8510
8702
  columnParallel: {
@@ -8515,8 +8707,8 @@
8515
8707
  stackCornerRadius: [
8516
8708
  4,
8517
8709
  4,
8518
- 0,
8519
- 0
8710
+ 4,
8711
+ 4
8520
8712
  ]
8521
8713
  },
8522
8714
  columnPercent: {
@@ -8527,8 +8719,8 @@
8527
8719
  stackCornerRadius: [
8528
8720
  4,
8529
8721
  4,
8530
- 0,
8531
- 0
8722
+ 4,
8723
+ 4
8532
8724
  ]
8533
8725
  },
8534
8726
  bar: {
@@ -8549,10 +8741,10 @@
8549
8741
  yAxis: barBandAxis,
8550
8742
  crosshairRect: crosshairRect,
8551
8743
  stackCornerRadius: [
8552
- 0,
8553
8744
  4,
8554
8745
  4,
8555
- 0
8746
+ 4,
8747
+ 4
8556
8748
  ]
8557
8749
  },
8558
8750
  barPercent: {
@@ -8561,10 +8753,10 @@
8561
8753
  yAxis: barBandAxis,
8562
8754
  crosshairRect: crosshairRect,
8563
8755
  stackCornerRadius: [
8564
- 0,
8565
8756
  4,
8566
8757
  4,
8567
- 0
8758
+ 4,
8759
+ 4
8568
8760
  ]
8569
8761
  },
8570
8762
  area: {
@@ -8701,6 +8893,9 @@
8701
8893
  const updateSpec = (chartType, specPipe)=>{
8702
8894
  Builder._customSpecPipe[chartType] = specPipe;
8703
8895
  };
8896
+ const isDimension = (dimension)=>!('children' in dimension);
8897
+ const isDimensionGroup = (dimension)=>'children' in dimension;
8898
+ const isDimensions = (dimensions)=>dimensions.every(isDimension);
8704
8899
  Object.freeze({
8705
8900
  status: "aborted"
8706
8901
  });
@@ -12110,117 +12305,117 @@
12110
12305
  id: schemas_string(),
12111
12306
  index: schemas_number(),
12112
12307
  foldInfo: zFoldInfo,
12113
- foldInfoList: schemas_array(zFoldInfo).optional(),
12308
+ foldInfoList: schemas_array(zFoldInfo).nullish(),
12114
12309
  unfoldInfo: zUnfoldInfo
12115
12310
  }));
12116
12311
  const zEncoding = schemas_array(schemas_object({
12117
- x: schemas_array(schemas_string()).optional(),
12118
- y: schemas_array(schemas_string()).optional(),
12119
- color: schemas_array(schemas_string()).optional(),
12120
- group: schemas_array(schemas_string()).optional(),
12121
- angle: schemas_array(schemas_string()).optional(),
12122
- radius: schemas_array(schemas_string()).optional(),
12123
- tooltip: schemas_array(schemas_string()).optional(),
12124
- size: schemas_array(schemas_string()).optional()
12312
+ x: schemas_array(schemas_string()).nullish(),
12313
+ y: schemas_array(schemas_string()).nullish(),
12314
+ color: schemas_array(schemas_string()).nullish(),
12315
+ group: schemas_array(schemas_string()).nullish(),
12316
+ angle: schemas_array(schemas_string()).nullish(),
12317
+ radius: schemas_array(schemas_string()).nullish(),
12318
+ tooltip: schemas_array(schemas_string()).nullish(),
12319
+ size: schemas_array(schemas_string()).nullish()
12125
12320
  }));
12126
12321
  const zXBandAxis = schemas_object({
12127
- visible: schemas_boolean().default(true).optional(),
12128
- labelAutoHide: schemas_boolean().default(true).optional(),
12129
- labelAutoHideGap: schemas_number().default(0).optional(),
12130
- labelAutoRotate: schemas_boolean().default(true).optional(),
12322
+ visible: schemas_boolean().default(true).nullish(),
12323
+ labelAutoHide: schemas_boolean().default(true).nullish(),
12324
+ labelAutoHideGap: schemas_number().default(0).nullish(),
12325
+ labelAutoRotate: schemas_boolean().default(true).nullish(),
12131
12326
  labelAutoRotateAngleRange: schemas_array(schemas_number()).default([
12132
12327
  0,
12133
12328
  -45,
12134
12329
  -90
12135
- ]).optional(),
12136
- labelAutoLimit: schemas_boolean().default(true).optional(),
12137
- labelAutoLimitLength: schemas_number().default(100).optional(),
12330
+ ]).nullish(),
12331
+ labelAutoLimit: schemas_boolean().default(true).nullish(),
12332
+ labelAutoLimitLength: schemas_number().default(100).nullish(),
12138
12333
  label: schemas_object({
12139
- visible: schemas_boolean().default(true).optional(),
12140
- labelColor: schemas_string().default('#797B85').optional(),
12141
- labelFontSize: schemas_number().default(12).optional(),
12142
- labelFontWeight: schemas_number().default(400).optional(),
12143
- labelAngle: schemas_number().default(0).optional()
12144
- }).optional(),
12334
+ visible: schemas_boolean().default(true).nullish(),
12335
+ labelColor: schemas_string().default('#797B85').nullish(),
12336
+ labelFontSize: schemas_number().default(12).nullish(),
12337
+ labelFontWeight: schemas_number().default(400).nullish(),
12338
+ labelAngle: schemas_number().default(0).nullish()
12339
+ }).nullish(),
12145
12340
  line: schemas_object({
12146
- visible: schemas_boolean().default(true).optional(),
12147
- lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12148
- lineWidth: schemas_number().default(1).optional()
12149
- }).optional(),
12341
+ visible: schemas_boolean().default(true).nullish(),
12342
+ lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12343
+ lineWidth: schemas_number().default(1).nullish()
12344
+ }).nullish(),
12150
12345
  tick: schemas_object({
12151
- visible: schemas_boolean().default(true).optional(),
12152
- tickInside: schemas_boolean().default(false).optional(),
12153
- tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12154
- tickSize: schemas_number().default(4).optional()
12155
- }).optional(),
12346
+ visible: schemas_boolean().default(true).nullish(),
12347
+ tickInside: schemas_boolean().default(false).nullish(),
12348
+ tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12349
+ tickSize: schemas_number().default(4).nullish()
12350
+ }).nullish(),
12156
12351
  title: schemas_object({
12157
- visible: schemas_boolean().default(false).optional(),
12158
- titleText: schemas_string().default('').optional(),
12159
- titleColor: schemas_string().default('#646A73').optional(),
12160
- titleFontSize: schemas_number().default(12).optional(),
12161
- titleFontWeight: schemas_number().default(400).optional()
12162
- }).optional(),
12352
+ visible: schemas_boolean().default(false).nullish(),
12353
+ titleText: schemas_string().default('').nullish(),
12354
+ titleColor: schemas_string().default('#646A73').nullish(),
12355
+ titleFontSize: schemas_number().default(12).nullish(),
12356
+ titleFontWeight: schemas_number().default(400).nullish()
12357
+ }).nullish(),
12163
12358
  grid: schemas_object({
12164
- visible: schemas_boolean().default(false).optional(),
12165
- gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').optional(),
12166
- gridWidth: schemas_number().default(0.5).optional()
12167
- }).optional()
12359
+ visible: schemas_boolean().default(false).nullish(),
12360
+ gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').nullish(),
12361
+ gridWidth: schemas_number().default(0.5).nullish()
12362
+ }).nullish()
12168
12363
  });
12169
12364
  const zYBandAxis = zXBandAxis;
12170
12365
  const zXLinearAxis = schemas_object({
12171
- visible: schemas_boolean().default(true).optional(),
12172
- min: schemas_number().optional(),
12173
- max: schemas_number().optional(),
12174
- nice: schemas_boolean().default(true).optional(),
12175
- zero: schemas_boolean().default(true).optional(),
12176
- log: schemas_boolean().default(false).optional(),
12177
- logBase: schemas_number().default(10).optional(),
12178
- inverse: schemas_boolean().default(false).optional(),
12366
+ visible: schemas_boolean().default(true).nullish(),
12367
+ min: schemas_number().nullish(),
12368
+ max: schemas_number().nullish(),
12369
+ nice: schemas_boolean().default(true).nullish(),
12370
+ zero: schemas_boolean().default(true).nullish(),
12371
+ log: schemas_boolean().default(false).nullish(),
12372
+ logBase: schemas_number().default(10).nullish(),
12373
+ inverse: schemas_boolean().default(false).nullish(),
12179
12374
  label: schemas_object({
12180
- visible: schemas_boolean().default(true).optional(),
12181
- labelColor: schemas_string().default('#797B85').optional(),
12182
- labelFontSize: schemas_number().default(12).optional(),
12183
- labelFontWeight: schemas_number().default(400).optional(),
12184
- labelAngle: schemas_number().default(0).optional()
12185
- }).optional(),
12375
+ visible: schemas_boolean().default(true).nullish(),
12376
+ labelColor: schemas_string().default('#797B85').nullish(),
12377
+ labelFontSize: schemas_number().default(12).nullish(),
12378
+ labelFontWeight: schemas_number().default(400).nullish(),
12379
+ labelAngle: schemas_number().default(0).nullish()
12380
+ }).nullish(),
12186
12381
  line: schemas_object({
12187
- visible: schemas_boolean().default(true).optional(),
12188
- lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12189
- lineWidth: schemas_number().default(1).optional()
12190
- }).optional(),
12382
+ visible: schemas_boolean().default(true).nullish(),
12383
+ lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12384
+ lineWidth: schemas_number().default(1).nullish()
12385
+ }).nullish(),
12191
12386
  tick: schemas_object({
12192
- visible: schemas_boolean().default(true).optional(),
12193
- tickInside: schemas_boolean().default(false).optional(),
12194
- tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12195
- tickSize: schemas_number().default(4).optional()
12196
- }).optional(),
12387
+ visible: schemas_boolean().default(true).nullish(),
12388
+ tickInside: schemas_boolean().default(false).nullish(),
12389
+ tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12390
+ tickSize: schemas_number().default(4).nullish()
12391
+ }).nullish(),
12197
12392
  title: schemas_object({
12198
- visible: schemas_boolean().default(false).optional(),
12199
- titleText: schemas_string().default('').optional(),
12200
- titleColor: schemas_string().default('#646A73').optional(),
12201
- titleFontSize: schemas_number().default(12).optional(),
12202
- titleFontWeight: schemas_number().default(400).optional()
12203
- }).optional(),
12393
+ visible: schemas_boolean().default(false).nullish(),
12394
+ titleText: schemas_string().default('').nullish(),
12395
+ titleColor: schemas_string().default('#646A73').nullish(),
12396
+ titleFontSize: schemas_number().default(12).nullish(),
12397
+ titleFontWeight: schemas_number().default(400).nullish()
12398
+ }).nullish(),
12204
12399
  grid: schemas_object({
12205
- visible: schemas_boolean().default(false).optional(),
12206
- gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').optional(),
12207
- gridWidth: schemas_number().default(0.5).optional()
12208
- }).optional()
12400
+ visible: schemas_boolean().default(false).nullish(),
12401
+ gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').nullish(),
12402
+ gridWidth: schemas_number().default(0.5).nullish()
12403
+ }).nullish()
12209
12404
  });
12210
12405
  const zYLinearAxis = zXLinearAxis;
12211
12406
  const zCrosshairLine = schemas_object({
12212
- visible: schemas_boolean().optional(),
12213
- lineColor: schemas_string().optional(),
12214
- labelColor: schemas_string().optional(),
12215
- labelVisible: schemas_boolean().optional(),
12216
- labelBackgroundColor: schemas_string().optional()
12407
+ visible: schemas_boolean().nullish(),
12408
+ lineColor: schemas_string().nullish(),
12409
+ labelColor: schemas_string().nullish(),
12410
+ labelVisible: schemas_boolean().nullish(),
12411
+ labelBackgroundColor: schemas_string().nullish()
12217
12412
  });
12218
12413
  const zCrosshairRect = schemas_object({
12219
- visible: schemas_boolean().optional(),
12220
- rectColor: schemas_string().optional(),
12221
- labelColor: schemas_string().optional(),
12222
- labelVisible: schemas_boolean().optional(),
12223
- labelBackgroundColor: schemas_string().optional()
12414
+ visible: schemas_boolean().nullish(),
12415
+ rectColor: schemas_string().nullish(),
12416
+ labelColor: schemas_string().nullish(),
12417
+ labelVisible: schemas_boolean().nullish(),
12418
+ labelBackgroundColor: schemas_string().nullish()
12224
12419
  });
12225
12420
  const zStackCornerRadius = schemas_number().or(schemas_array(schemas_number())).default([
12226
12421
  3,
@@ -12228,21 +12423,21 @@
12228
12423
  0,
12229
12424
  0
12230
12425
  ]);
12231
- const zBackgroundColor = schemas_string().default('transparent').optional();
12426
+ const zBackgroundColor = schemas_string().default('transparent').nullish();
12232
12427
  const zColor = schemas_object({
12233
- colorScheme: schemas_array(schemas_string()).optional(),
12234
- colorMapping: record(schemas_string(), schemas_string()).optional()
12428
+ colorScheme: schemas_array(schemas_string()).nullish(),
12429
+ colorMapping: record(schemas_string(), schemas_string()).nullish()
12235
12430
  });
12236
12431
  const zLinearColor = schemas_object({
12237
- colorScheme: schemas_array(schemas_string()).optional()
12432
+ colorScheme: schemas_array(schemas_string()).nullish()
12238
12433
  });
12239
12434
  const zLabel = schemas_object({
12240
- enable: schemas_boolean().default(true).optional()
12435
+ enable: schemas_boolean().default(true).nullish()
12241
12436
  });
12242
12437
  const zLegend = schemas_object({
12243
- enable: schemas_boolean().default(true).optional(),
12244
- border: schemas_boolean().default(true).optional(),
12245
- maxSize: schemas_number().default(1).optional(),
12438
+ enable: schemas_boolean().default(true).nullish(),
12439
+ border: schemas_boolean().default(true).nullish(),
12440
+ maxSize: schemas_number().default(1).nullish(),
12246
12441
  shapeType: schemas_enum([
12247
12442
  'circle',
12248
12443
  'cross',
@@ -12266,7 +12461,7 @@
12266
12461
  'arrowRight',
12267
12462
  'rectRound',
12268
12463
  'roundLine'
12269
- ]).default('rectRound').optional(),
12464
+ ]).default('rectRound').nullish(),
12270
12465
  position: schemas_enum([
12271
12466
  'left',
12272
12467
  'leftTop',
@@ -12288,10 +12483,10 @@
12288
12483
  'bottomRight',
12289
12484
  'bl',
12290
12485
  'br'
12291
- ]).default('bottom').optional(),
12292
- labelFontSize: schemas_number().default(12).optional(),
12293
- labelFontColor: schemas_string().default('#fff').optional(),
12294
- labelFontWeight: schemas_number().or(schemas_string()).default(400).optional()
12486
+ ]).default('bottom').nullish(),
12487
+ labelFontSize: schemas_number().default(12).nullish(),
12488
+ labelFontColor: schemas_string().default('#fff').nullish(),
12489
+ labelFontWeight: schemas_number().or(schemas_string()).default(400).nullish()
12295
12490
  });
12296
12491
  const zColorLegend = schemas_object({
12297
12492
  position: schemas_enum([
@@ -12315,194 +12510,195 @@
12315
12510
  'bottomRight',
12316
12511
  'bl',
12317
12512
  'br'
12318
- ]).default('bottom').optional(),
12319
- enable: schemas_boolean().default(true).optional()
12513
+ ]).default('bottom').nullish(),
12514
+ enable: schemas_boolean().default(true).nullish()
12320
12515
  });
12321
12516
  const zTooltip = schemas_object({
12322
- enable: schemas_boolean().default(true).optional()
12517
+ enable: schemas_boolean().default(true).nullish()
12323
12518
  });
12324
12519
  const zTableConfig = schemas_object({
12325
- borderColor: schemas_string().optional(),
12326
- bodyFontSize: schemas_number().optional(),
12327
- bodyFontColor: schemas_string().optional(),
12328
- bodyBackgroundColor: schemas_string().optional(),
12329
- hoverBodyBackgroundColor: schemas_string().optional(),
12330
- hoverBodyInlineBackgroundColor: schemas_string().optional(),
12331
- headerFontSize: schemas_number().optional(),
12332
- headerFontColor: schemas_string().optional(),
12333
- headerBackgroundColor: schemas_string().optional(),
12334
- hoverHeaderBackgroundColor: schemas_string().optional(),
12335
- hoverHeaderInlineBackgroundColor: schemas_string().optional(),
12336
- selectedBorderColor: schemas_string().optional(),
12337
- selectedBackgroundColor: schemas_string().optional()
12520
+ backgroundColor: zBackgroundColor.nullish(),
12521
+ borderColor: schemas_string().nullish(),
12522
+ bodyFontSize: schemas_number().nullish(),
12523
+ bodyFontColor: schemas_string().nullish(),
12524
+ bodyBackgroundColor: schemas_string().nullish(),
12525
+ hoverBodyBackgroundColor: schemas_string().nullish(),
12526
+ hoverBodyInlineBackgroundColor: schemas_string().nullish(),
12527
+ headerFontSize: schemas_number().nullish(),
12528
+ headerFontColor: schemas_string().nullish(),
12529
+ headerBackgroundColor: schemas_string().nullish(),
12530
+ hoverHeaderBackgroundColor: schemas_string().nullish(),
12531
+ hoverHeaderInlineBackgroundColor: schemas_string().nullish(),
12532
+ selectedBorderColor: schemas_string().nullish(),
12533
+ selectedBackgroundColor: schemas_string().nullish()
12338
12534
  });
12339
12535
  const zPivotTableConfig = zTableConfig;
12340
12536
  const zLineConfig = schemas_object({
12341
- backgroundColor: zBackgroundColor.optional(),
12342
- label: zLabel.optional(),
12343
- color: zColor.optional(),
12344
- tooltip: zTooltip.optional(),
12345
- legend: zLegend.optional(),
12346
- xAxis: zXBandAxis.optional(),
12347
- yAxis: zYLinearAxis.optional(),
12348
- crosshairLine: zCrosshairLine.optional()
12537
+ backgroundColor: zBackgroundColor.nullish(),
12538
+ label: zLabel.nullish(),
12539
+ color: zColor.nullish(),
12540
+ tooltip: zTooltip.nullish(),
12541
+ legend: zLegend.nullish(),
12542
+ xAxis: zXBandAxis.nullish(),
12543
+ yAxis: zYLinearAxis.nullish(),
12544
+ crosshairLine: zCrosshairLine.nullish()
12349
12545
  });
12350
12546
  const zColumnConfig = schemas_object({
12351
- backgroundColor: zBackgroundColor.optional(),
12352
- label: zLabel.optional(),
12353
- color: zColor.optional(),
12354
- tooltip: zTooltip.optional(),
12355
- legend: zLegend.optional(),
12356
- xAxis: zXBandAxis.optional(),
12357
- yAxis: zYLinearAxis.optional(),
12358
- crosshairRect: zCrosshairRect.optional(),
12359
- stackCornerRadius: zStackCornerRadius.optional()
12547
+ backgroundColor: zBackgroundColor.nullish(),
12548
+ label: zLabel.nullish(),
12549
+ color: zColor.nullish(),
12550
+ tooltip: zTooltip.nullish(),
12551
+ legend: zLegend.nullish(),
12552
+ xAxis: zXBandAxis.nullish(),
12553
+ yAxis: zYLinearAxis.nullish(),
12554
+ crosshairRect: zCrosshairRect.nullish(),
12555
+ stackCornerRadius: zStackCornerRadius.nullish()
12360
12556
  });
12361
12557
  const zColumnParallelConfig = zColumnConfig;
12362
12558
  const zColumnPercentConfig = zColumnConfig;
12363
12559
  const zBarConfig = schemas_object({
12364
- backgroundColor: zBackgroundColor.optional(),
12365
- label: zLabel.optional(),
12366
- color: zColor.optional(),
12367
- tooltip: zTooltip.optional(),
12368
- legend: zLegend.optional(),
12369
- xAxis: zXLinearAxis.optional(),
12370
- yAxis: zYBandAxis.optional(),
12371
- crosshairRect: zCrosshairRect.optional(),
12372
- stackCornerRadius: zStackCornerRadius.optional()
12560
+ backgroundColor: zBackgroundColor.nullish(),
12561
+ label: zLabel.nullish(),
12562
+ color: zColor.nullish(),
12563
+ tooltip: zTooltip.nullish(),
12564
+ legend: zLegend.nullish(),
12565
+ xAxis: zXLinearAxis.nullish(),
12566
+ yAxis: zYBandAxis.nullish(),
12567
+ crosshairRect: zCrosshairRect.nullish(),
12568
+ stackCornerRadius: zStackCornerRadius.nullish()
12373
12569
  });
12374
12570
  const zBarParallelConfig = zBarConfig;
12375
12571
  const zBarPercentConfig = zBarConfig;
12376
12572
  const zAreaConfig = schemas_object({
12377
- backgroundColor: zBackgroundColor.optional(),
12378
- label: zLabel.optional(),
12379
- color: zColor.optional(),
12380
- tooltip: zTooltip.optional(),
12381
- legend: zLegend.optional(),
12382
- xAxis: zXBandAxis.optional(),
12383
- yAxis: zYLinearAxis.optional(),
12384
- crosshairLine: zCrosshairLine.optional()
12573
+ backgroundColor: zBackgroundColor.nullish(),
12574
+ label: zLabel.nullish(),
12575
+ color: zColor.nullish(),
12576
+ tooltip: zTooltip.nullish(),
12577
+ legend: zLegend.nullish(),
12578
+ xAxis: zXBandAxis.nullish(),
12579
+ yAxis: zYLinearAxis.nullish(),
12580
+ crosshairLine: zCrosshairLine.nullish()
12385
12581
  });
12386
12582
  const zAreaPercentConfig = zAreaConfig;
12387
12583
  const zAreaRangeConfig = zAreaConfig;
12388
12584
  const zDualAxisConfig = schemas_object({
12389
- backgroundColor: zBackgroundColor.optional(),
12390
- label: zLabel.optional(),
12391
- color: zColor.optional(),
12392
- tooltip: zTooltip.optional(),
12393
- legend: zLegend.optional(),
12394
- dualChartType: schemas_array(zDualChartType).or(zDualChartType).optional(),
12395
- primaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).optional(),
12396
- secondaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).optional(),
12397
- xAxis: zXBandAxis.optional(),
12398
- crosshairRect: zCrosshairRect.optional()
12585
+ backgroundColor: zBackgroundColor.nullish(),
12586
+ label: zLabel.nullish(),
12587
+ color: zColor.nullish(),
12588
+ tooltip: zTooltip.nullish(),
12589
+ legend: zLegend.nullish(),
12590
+ dualChartType: schemas_array(zDualChartType).or(zDualChartType).nullish(),
12591
+ primaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).nullish(),
12592
+ secondaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).nullish(),
12593
+ xAxis: zXBandAxis.nullish(),
12594
+ crosshairRect: zCrosshairRect.nullish()
12399
12595
  });
12400
12596
  const zScatterConfig = schemas_object({
12401
- backgroundColor: zBackgroundColor.optional(),
12402
- label: zLabel.optional(),
12403
- color: zColor.optional(),
12404
- tooltip: zTooltip.optional(),
12405
- legend: zLegend.optional(),
12406
- xAxis: zXLinearAxis.optional(),
12407
- yAxis: zYLinearAxis.optional(),
12408
- crosshairLine: zCrosshairLine.optional()
12597
+ backgroundColor: zBackgroundColor.nullish(),
12598
+ label: zLabel.nullish(),
12599
+ color: zColor.nullish(),
12600
+ tooltip: zTooltip.nullish(),
12601
+ legend: zLegend.nullish(),
12602
+ xAxis: zXLinearAxis.nullish(),
12603
+ yAxis: zYLinearAxis.nullish(),
12604
+ crosshairLine: zCrosshairLine.nullish()
12409
12605
  });
12410
12606
  const zRoseConfig = schemas_object({
12411
- backgroundColor: zBackgroundColor.optional(),
12412
- label: zLabel.optional(),
12413
- color: zColor.optional(),
12414
- tooltip: zTooltip.optional(),
12415
- legend: zLegend.optional()
12607
+ backgroundColor: zBackgroundColor.nullish(),
12608
+ label: zLabel.nullish(),
12609
+ color: zColor.nullish(),
12610
+ tooltip: zTooltip.nullish(),
12611
+ legend: zLegend.nullish()
12416
12612
  });
12417
12613
  const zRoseParallelConfig = zRoseConfig;
12418
12614
  const zPieConfig = schemas_object({
12419
- backgroundColor: zBackgroundColor.optional(),
12420
- label: zLabel.optional(),
12421
- color: zColor.optional(),
12422
- tooltip: zTooltip.optional(),
12423
- legend: zLegend.optional()
12615
+ backgroundColor: zBackgroundColor.nullish(),
12616
+ label: zLabel.nullish(),
12617
+ color: zColor.nullish(),
12618
+ tooltip: zTooltip.nullish(),
12619
+ legend: zLegend.nullish()
12424
12620
  });
12425
12621
  const zDonutConfig = zPieConfig;
12426
12622
  const zRadarConfig = zPieConfig;
12427
12623
  const zFunnelConfig = zPieConfig;
12428
12624
  const zHeatmapConfig = zPieConfig;
12429
12625
  const zConfig = schemas_object({
12430
- table: zTableConfig.optional(),
12431
- pivotTable: zPivotTableConfig.optional(),
12432
- line: zLineConfig.optional(),
12433
- column: zColumnConfig.optional(),
12434
- columnParallel: zColumnParallelConfig.optional(),
12435
- columnPercent: zColumnPercentConfig.optional(),
12436
- bar: zBarConfig.optional(),
12437
- barParallel: zBarParallelConfig.optional(),
12438
- barPercent: zBarPercentConfig.optional(),
12439
- area: zAreaConfig.optional(),
12440
- areaPercent: zAreaPercentConfig.optional(),
12441
- areaRange: zAreaRangeConfig.optional(),
12442
- scatter: zScatterConfig.optional(),
12443
- dualAxis: zDualAxisConfig.optional(),
12444
- rose: zRoseConfig.optional(),
12445
- roseParallel: zRoseParallelConfig.optional(),
12446
- pie: zPieConfig.optional(),
12447
- donut: zDonutConfig.optional(),
12448
- radar: zRadarConfig.optional(),
12449
- funnel: zFunnelConfig.optional(),
12450
- heatmap: zHeatmapConfig.optional()
12626
+ table: zTableConfig.nullish(),
12627
+ pivotTable: zPivotTableConfig.nullish(),
12628
+ line: zLineConfig.nullish(),
12629
+ column: zColumnConfig.nullish(),
12630
+ columnParallel: zColumnParallelConfig.nullish(),
12631
+ columnPercent: zColumnPercentConfig.nullish(),
12632
+ bar: zBarConfig.nullish(),
12633
+ barParallel: zBarParallelConfig.nullish(),
12634
+ barPercent: zBarPercentConfig.nullish(),
12635
+ area: zAreaConfig.nullish(),
12636
+ areaPercent: zAreaPercentConfig.nullish(),
12637
+ areaRange: zAreaRangeConfig.nullish(),
12638
+ scatter: zScatterConfig.nullish(),
12639
+ dualAxis: zDualAxisConfig.nullish(),
12640
+ rose: zRoseConfig.nullish(),
12641
+ roseParallel: zRoseParallelConfig.nullish(),
12642
+ pie: zPieConfig.nullish(),
12643
+ donut: zDonutConfig.nullish(),
12644
+ radar: zRadarConfig.nullish(),
12645
+ funnel: zFunnelConfig.nullish(),
12646
+ heatmap: zHeatmapConfig.nullish()
12451
12647
  });
12452
12648
  const zAxis = schemas_object({
12453
- visible: schemas_boolean().default(true).optional(),
12454
- min: schemas_number().optional(),
12455
- max: schemas_number().optional(),
12456
- nice: schemas_boolean().default(true).optional(),
12457
- zero: schemas_boolean().default(true).optional(),
12458
- inverse: schemas_boolean().default(false).optional(),
12459
- log: schemas_boolean().default(false).optional(),
12460
- logBase: schemas_number().default(10).optional(),
12461
- labelAutoHide: schemas_boolean().default(true).optional(),
12462
- labelAutoHideGap: schemas_number().default(4).optional(),
12463
- labelAutoRotate: schemas_boolean().default(true).optional(),
12649
+ visible: schemas_boolean().default(true).nullish(),
12650
+ min: schemas_number().nullish(),
12651
+ max: schemas_number().nullish(),
12652
+ nice: schemas_boolean().default(true).nullish(),
12653
+ zero: schemas_boolean().default(true).nullish(),
12654
+ inverse: schemas_boolean().default(false).nullish(),
12655
+ log: schemas_boolean().default(false).nullish(),
12656
+ logBase: schemas_number().default(10).nullish(),
12657
+ labelAutoHide: schemas_boolean().default(true).nullish(),
12658
+ labelAutoHideGap: schemas_number().default(4).nullish(),
12659
+ labelAutoRotate: schemas_boolean().default(true).nullish(),
12464
12660
  labelAutoRotateAngleRange: schemas_array(schemas_number()).default([
12465
12661
  0,
12466
12662
  -45,
12467
12663
  -90
12468
- ]).optional(),
12469
- labelAutoLimit: schemas_boolean().default(true).optional(),
12470
- labelAutoLimitLength: schemas_number().default(100).optional(),
12664
+ ]).nullish(),
12665
+ labelAutoLimit: schemas_boolean().default(true).nullish(),
12666
+ labelAutoLimitLength: schemas_number().default(100).nullish(),
12471
12667
  label: schemas_object({
12472
- visible: schemas_boolean().default(true).optional(),
12473
- labelColor: schemas_string().default('#797B85').optional(),
12474
- labelFontSize: schemas_number().default(12).optional(),
12475
- labelFontWeight: schemas_number().default(400).optional(),
12476
- labelAngle: schemas_number().default(0).optional()
12477
- }).optional(),
12668
+ visible: schemas_boolean().default(true).nullish(),
12669
+ labelColor: schemas_string().default('#797B85').nullish(),
12670
+ labelFontSize: schemas_number().default(12).nullish(),
12671
+ labelFontWeight: schemas_number().default(400).nullish(),
12672
+ labelAngle: schemas_number().default(0).nullish()
12673
+ }).nullish(),
12478
12674
  line: schemas_object({
12479
- visible: schemas_boolean().default(true).optional(),
12480
- lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12481
- lineWidth: schemas_number().default(1).optional()
12482
- }).optional(),
12675
+ visible: schemas_boolean().default(true).nullish(),
12676
+ lineColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12677
+ lineWidth: schemas_number().default(1).nullish()
12678
+ }).nullish(),
12483
12679
  tick: schemas_object({
12484
- visible: schemas_boolean().default(true).optional(),
12485
- tickInside: schemas_boolean().default(false).optional(),
12486
- tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').optional(),
12487
- tickSize: schemas_number().default(4).optional()
12488
- }).optional(),
12680
+ visible: schemas_boolean().default(true).nullish(),
12681
+ tickInside: schemas_boolean().default(false).nullish(),
12682
+ tickColor: schemas_string().default('rgba(54, 65, 89, 0.30)').nullish(),
12683
+ tickSize: schemas_number().default(4).nullish()
12684
+ }).nullish(),
12489
12685
  title: schemas_object({
12490
- visible: schemas_boolean().default(false).optional(),
12491
- titleText: schemas_string().default('').optional(),
12492
- titleColor: schemas_string().default('#646A73').optional(),
12493
- titleFontSize: schemas_number().default(12).optional(),
12494
- titleFontWeight: schemas_number().default(400).optional()
12495
- }).optional(),
12686
+ visible: schemas_boolean().default(false).nullish(),
12687
+ titleText: schemas_string().default('').nullish(),
12688
+ titleColor: schemas_string().default('#646A73').nullish(),
12689
+ titleFontSize: schemas_number().default(12).nullish(),
12690
+ titleFontWeight: schemas_number().default(400).nullish()
12691
+ }).nullish(),
12496
12692
  grid: schemas_object({
12497
- visible: schemas_boolean().default(false).optional(),
12498
- gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').optional(),
12499
- gridWidth: schemas_number().default(0.5).optional()
12500
- }).optional()
12693
+ visible: schemas_boolean().default(false).nullish(),
12694
+ gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').nullish(),
12695
+ gridWidth: schemas_number().default(0.5).nullish()
12696
+ }).nullish()
12501
12697
  });
12502
12698
  const zCustomThemeConfig = schemas_object({
12503
- config: zConfig.optional()
12699
+ config: zConfig.nullish()
12504
12700
  });
12505
- const zCustomTheme = record(schemas_string(), zCustomThemeConfig).optional();
12701
+ const zCustomTheme = record(schemas_string(), zCustomThemeConfig).nullish();
12506
12702
  const zTheme = schemas_string();
12507
12703
  const zSelector = union([
12508
12704
  schemas_string(),
@@ -12518,7 +12714,7 @@
12518
12714
  '>=',
12519
12715
  '<=',
12520
12716
  'between'
12521
- ]).optional(),
12717
+ ]).nullish(),
12522
12718
  op: schemas_enum([
12523
12719
  '=',
12524
12720
  '==',
@@ -12528,7 +12724,7 @@
12528
12724
  '>=',
12529
12725
  '<=',
12530
12726
  'between'
12531
- ]).optional(),
12727
+ ]).nullish(),
12532
12728
  value: union([
12533
12729
  schemas_string(),
12534
12730
  schemas_number(),
@@ -12543,11 +12739,11 @@
12543
12739
  operator: schemas_enum([
12544
12740
  'in',
12545
12741
  'not in'
12546
- ]).optional(),
12742
+ ]).nullish(),
12547
12743
  op: schemas_enum([
12548
12744
  'in',
12549
12745
  'not in'
12550
- ]).optional(),
12746
+ ]).nullish(),
12551
12747
  value: union([
12552
12748
  schemas_string(),
12553
12749
  schemas_number(),
@@ -12563,103 +12759,103 @@
12563
12759
  selector: union([
12564
12760
  zSelector,
12565
12761
  zSelectors
12566
- ]).optional(),
12567
- barColor: schemas_string().optional(),
12568
- barColorOpacity: schemas_number().optional(),
12569
- barBorderColor: schemas_string().optional(),
12570
- barBorderWidth: schemas_number().optional(),
12762
+ ]).nullish(),
12763
+ barColor: schemas_string().nullish(),
12764
+ barColorOpacity: schemas_number().nullish(),
12765
+ barBorderColor: schemas_string().nullish(),
12766
+ barBorderWidth: schemas_number().nullish(),
12571
12767
  barBorderStyle: union([
12572
12768
  literal('solid'),
12573
12769
  literal('dashed'),
12574
12770
  literal('dotted')
12575
- ]).optional(),
12771
+ ]).nullish(),
12576
12772
  barRadius: union([
12577
12773
  schemas_number(),
12578
12774
  schemas_array(schemas_number())
12579
- ]).optional()
12775
+ ]).nullish()
12580
12776
  });
12581
12777
  const zPointStyle = schemas_object({
12582
12778
  selector: union([
12583
12779
  zSelector,
12584
12780
  zSelectors
12585
- ]).optional(),
12586
- pointSize: schemas_number().optional(),
12587
- pointColor: schemas_string().optional(),
12588
- pointColorOpacity: schemas_number().optional(),
12589
- pointBorderColor: schemas_string().optional(),
12590
- pointBorderWidth: schemas_number().optional(),
12781
+ ]).nullish(),
12782
+ pointSize: schemas_number().nullish(),
12783
+ pointColor: schemas_string().nullish(),
12784
+ pointColorOpacity: schemas_number().nullish(),
12785
+ pointBorderColor: schemas_string().nullish(),
12786
+ pointBorderWidth: schemas_number().nullish(),
12591
12787
  pointBorderStyle: union([
12592
12788
  schemas_enum([
12593
12789
  'solid',
12594
12790
  'dashed',
12595
12791
  'dotted'
12596
12792
  ])
12597
- ]).optional()
12793
+ ]).nullish()
12598
12794
  });
12599
12795
  const zLineStyle = schemas_object({
12600
12796
  selector: union([
12601
12797
  zSelector,
12602
12798
  zSelectors
12603
- ]).optional(),
12604
- lineSmooth: schemas_boolean().optional(),
12605
- lineColor: schemas_string().optional(),
12606
- lineColorOpacity: schemas_number().optional(),
12607
- lineWidth: schemas_number().optional(),
12799
+ ]).nullish(),
12800
+ lineSmooth: schemas_boolean().nullish(),
12801
+ lineColor: schemas_string().nullish(),
12802
+ lineColorOpacity: schemas_number().nullish(),
12803
+ lineWidth: schemas_number().nullish(),
12608
12804
  lineStyle: union([
12609
12805
  schemas_enum([
12610
12806
  'solid',
12611
12807
  'dashed',
12612
12808
  'dotted'
12613
12809
  ])
12614
- ]).optional()
12810
+ ]).nullish()
12615
12811
  });
12616
12812
  const zAreaStyle = schemas_object({
12617
12813
  selector: union([
12618
12814
  zSelector,
12619
12815
  zSelectors
12620
- ]).optional(),
12621
- areaColor: schemas_string().optional(),
12622
- areaColorOpacity: schemas_number().optional()
12816
+ ]).nullish(),
12817
+ areaColor: schemas_string().nullish(),
12818
+ areaColorOpacity: schemas_number().nullish()
12623
12819
  });
12624
12820
  const zMarkStyle = schemas_object({
12625
- barStyle: zBarStyle.or(schemas_array(zBarStyle)).optional(),
12626
- pointStyle: zPointStyle.or(schemas_array(zPointStyle)).optional(),
12627
- lineStyle: zLineStyle.or(schemas_array(zLineStyle)).optional(),
12628
- areaStyle: zAreaStyle.or(schemas_array(zAreaStyle)).optional()
12821
+ barStyle: zBarStyle.or(schemas_array(zBarStyle)).nullish(),
12822
+ pointStyle: zPointStyle.or(schemas_array(zPointStyle)).nullish(),
12823
+ lineStyle: zLineStyle.or(schemas_array(zLineStyle)).nullish(),
12824
+ areaStyle: zAreaStyle.or(schemas_array(zAreaStyle)).nullish()
12629
12825
  });
12630
12826
  const zAnnotationPoint = schemas_object({
12631
12827
  selector: union([
12632
12828
  zSelector,
12633
12829
  zSelectors
12634
12830
  ]),
12635
- text: schemas_string().or(schemas_array(schemas_string())).optional(),
12636
- textColor: schemas_string().default('#ffffff').optional(),
12637
- textFontSize: schemas_number().default(12).optional(),
12638
- textFontWeight: schemas_number().default(400).optional(),
12831
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
12832
+ textColor: schemas_string().default('#ffffff').nullish(),
12833
+ textFontSize: schemas_number().default(12).nullish(),
12834
+ textFontWeight: schemas_number().default(400).nullish(),
12639
12835
  textAlign: schemas_enum([
12640
12836
  'left',
12641
12837
  'right',
12642
12838
  'center'
12643
- ]).default('center').optional(),
12839
+ ]).default('center').nullish(),
12644
12840
  textBaseline: schemas_enum([
12645
12841
  'top',
12646
12842
  'middle',
12647
12843
  'bottom'
12648
- ]).default('middle').optional(),
12649
- backgroundVisible: schemas_boolean().default(true).optional(),
12650
- backgroundColor: schemas_string().default('#212121').optional(),
12651
- backgroundBorderColor: schemas_string().optional(),
12652
- backgroundBorderWidth: schemas_number().default(1).optional(),
12653
- backgroundBorderRadius: schemas_number().default(4).optional(),
12654
- backgroundPadding: schemas_number().optional(),
12655
- offsetY: schemas_number().default(0).optional(),
12656
- offsetX: schemas_number().default(0).optional()
12844
+ ]).default('middle').nullish(),
12845
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
12846
+ textBackgroundColor: schemas_string().default('#212121').nullish(),
12847
+ textBackgroundBorderColor: schemas_string().nullish(),
12848
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
12849
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
12850
+ textBackgroundPadding: schemas_number().nullish(),
12851
+ offsetY: schemas_number().default(0).nullish(),
12852
+ offsetX: schemas_number().default(0).nullish()
12657
12853
  });
12658
12854
  const zAnnotationVerticalLine = schemas_object({
12659
12855
  selector: union([
12660
12856
  zSelector,
12661
12857
  zSelectors
12662
- ]).optional(),
12858
+ ]).nullish(),
12663
12859
  xValue: union([
12664
12860
  schemas_number(),
12665
12861
  schemas_string(),
@@ -12667,8 +12863,8 @@
12667
12863
  schemas_number(),
12668
12864
  schemas_string()
12669
12865
  ]))
12670
- ]).optional(),
12671
- text: schemas_string().or(schemas_array(schemas_string())).optional(),
12866
+ ]).nullish(),
12867
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
12672
12868
  textPosition: schemas_enum([
12673
12869
  'outsideStart',
12674
12870
  'outsideEnd',
@@ -12676,34 +12872,34 @@
12676
12872
  'insideStart',
12677
12873
  'insideMiddle',
12678
12874
  'insideEnd'
12679
- ]).default('insideEnd').optional(),
12680
- textColor: schemas_string().default('#ffffff').optional(),
12681
- textFontSize: schemas_number().default(12).optional(),
12682
- textFontWeight: schemas_number().default(400).optional(),
12875
+ ]).default('insideEnd').nullish(),
12876
+ textColor: schemas_string().default('#ffffff').nullish(),
12877
+ textFontSize: schemas_number().default(12).nullish(),
12878
+ textFontWeight: schemas_number().default(400).nullish(),
12683
12879
  textAlign: schemas_enum([
12684
12880
  'left',
12685
12881
  'right',
12686
12882
  'center'
12687
- ]).default('right').optional(),
12883
+ ]).default('right').nullish(),
12688
12884
  textBaseline: schemas_enum([
12689
12885
  'top',
12690
12886
  'middle',
12691
12887
  'bottom'
12692
- ]).default('top').optional(),
12693
- lineVisible: schemas_boolean().default(true).optional(),
12694
- lineColor: schemas_string().default('#212121').optional(),
12695
- lineWidth: schemas_number().default(1).optional(),
12888
+ ]).default('top').nullish(),
12889
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
12890
+ textBackgroundColor: schemas_string().default('#212121').nullish(),
12891
+ textBackgroundBorderColor: schemas_string().default('#212121').nullish(),
12892
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
12893
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
12894
+ textBackgroundPadding: schemas_number().default(2).nullish(),
12895
+ lineVisible: schemas_boolean().default(true).nullish(),
12896
+ lineColor: schemas_string().default('#212121').nullish(),
12897
+ lineWidth: schemas_number().default(1).nullish(),
12696
12898
  lineStyle: union([
12697
12899
  literal('solid'),
12698
12900
  literal('dashed'),
12699
12901
  literal('dotted')
12700
- ]).default('dashed').optional(),
12701
- backgroundVisible: schemas_boolean().default(true).optional(),
12702
- backgroundColor: schemas_string().default('#212121').optional(),
12703
- backgroundBorderColor: schemas_string().default('#212121').optional(),
12704
- backgroundBorderRadius: schemas_number().default(4).optional(),
12705
- backgroundBorderWidth: schemas_number().default(1).optional(),
12706
- backgroundPadding: schemas_number().default(2).optional(),
12902
+ ]).default('dashed').nullish(),
12707
12903
  offsetX: schemas_number().default(0),
12708
12904
  offsetY: schemas_number().default(0)
12709
12905
  });
@@ -12711,7 +12907,7 @@
12711
12907
  selector: union([
12712
12908
  zSelector,
12713
12909
  zSelectors
12714
- ]).optional(),
12910
+ ]).nullish(),
12715
12911
  yValue: union([
12716
12912
  schemas_number(),
12717
12913
  schemas_string(),
@@ -12719,8 +12915,8 @@
12719
12915
  schemas_number(),
12720
12916
  schemas_string()
12721
12917
  ]))
12722
- ]).optional(),
12723
- text: schemas_string().or(schemas_array(schemas_string())).optional(),
12918
+ ]).nullish(),
12919
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
12724
12920
  textPosition: schemas_enum([
12725
12921
  'outsideStart',
12726
12922
  'outsideEnd',
@@ -12728,34 +12924,34 @@
12728
12924
  'insideStart',
12729
12925
  'insideMiddle',
12730
12926
  'insideEnd'
12731
- ]).default('insideEnd').optional(),
12732
- textColor: schemas_string().default('#ffffff').optional(),
12733
- textFontSize: schemas_number().default(12).optional(),
12734
- textFontWeight: schemas_number().default(400).optional(),
12927
+ ]).default('insideEnd').nullish(),
12928
+ textColor: schemas_string().default('#ffffff').nullish(),
12929
+ textFontSize: schemas_number().default(12).nullish(),
12930
+ textFontWeight: schemas_number().default(400).nullish(),
12735
12931
  textAlign: schemas_enum([
12736
12932
  'left',
12737
12933
  'right',
12738
12934
  'center'
12739
- ]).default('right').optional(),
12935
+ ]).default('right').nullish(),
12740
12936
  textBaseline: schemas_enum([
12741
12937
  'top',
12742
12938
  'middle',
12743
12939
  'bottom'
12744
- ]).default('top').optional(),
12745
- lineVisible: schemas_boolean().default(true).optional(),
12746
- lineColor: schemas_string().default('#212121').optional(),
12747
- lineWidth: schemas_number().default(1).optional(),
12940
+ ]).default('top').nullish(),
12941
+ lineVisible: schemas_boolean().default(true).nullish(),
12942
+ lineColor: schemas_string().default('#212121').nullish(),
12943
+ lineWidth: schemas_number().default(1).nullish(),
12748
12944
  lineStyle: union([
12749
12945
  literal('solid'),
12750
12946
  literal('dashed'),
12751
12947
  literal('dotted')
12752
- ]).default('dashed').optional(),
12753
- backgroundVisible: schemas_boolean().default(true).optional(),
12754
- backgroundColor: schemas_string().default('#212121').optional(),
12755
- backgroundBorderColor: schemas_string().default('#212121').optional(),
12756
- backgroundBorderRadius: schemas_number().default(4).optional(),
12757
- backgroundBorderWidth: schemas_number().default(1).optional(),
12758
- backgroundPadding: schemas_number().default(2).optional(),
12948
+ ]).default('dashed').nullish(),
12949
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
12950
+ textBackgroundColor: schemas_string().default('#212121').nullish(),
12951
+ textBackgroundBorderColor: schemas_string().default('#212121').nullish(),
12952
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
12953
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
12954
+ textBackgroundPadding: schemas_number().default(2).nullish(),
12759
12955
  offsetX: schemas_number().default(0),
12760
12956
  offsetY: schemas_number().default(0)
12761
12957
  });
@@ -12773,60 +12969,60 @@
12773
12969
  'bottomRight',
12774
12970
  'left',
12775
12971
  'right'
12776
- ]).default('top').optional(),
12777
- text: schemas_string().or(schemas_array(schemas_string())).optional(),
12778
- textColor: schemas_string().default('#ffffff').optional(),
12779
- textFontSize: schemas_number().default(12).optional(),
12780
- textFontWeight: schemas_number().default(400).optional(),
12972
+ ]).default('top').nullish(),
12973
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
12974
+ textColor: schemas_string().default('#ffffff').nullish(),
12975
+ textFontSize: schemas_number().default(12).nullish(),
12976
+ textFontWeight: schemas_number().default(400).nullish(),
12781
12977
  textAlign: schemas_enum([
12782
12978
  'left',
12783
12979
  'right',
12784
12980
  'center'
12785
- ]).default('center').optional(),
12981
+ ]).default('center').nullish(),
12786
12982
  textBaseline: schemas_enum([
12787
12983
  'top',
12788
12984
  'middle',
12789
12985
  'bottom'
12790
- ]).default('top').optional(),
12791
- backgroundVisible: schemas_boolean().default(true).optional(),
12792
- backgroundColor: schemas_string().default('#191d24').optional(),
12793
- backgroundBorderColor: schemas_string().default('#191d24').optional(),
12794
- backgroundBorderWidth: schemas_number().default(1).optional(),
12795
- backgroundBorderRadius: schemas_number().default(4).optional(),
12796
- backgroundPadding: schemas_number().default(4).optional(),
12797
- areaColor: schemas_string().default('#888888').optional(),
12798
- areaColorOpacity: schemas_number().default(0.15).optional(),
12799
- areaBorderColor: schemas_string().default('#888888').optional(),
12800
- areaBorderWidth: schemas_number().default(1).optional(),
12801
- areaBorderRadius: schemas_number().default(4).optional(),
12802
- outerPadding: schemas_number().default(4).optional(),
12803
- offsetX: schemas_number().default(0).optional(),
12804
- offsetY: schemas_number().default(0).optional()
12986
+ ]).default('top').nullish(),
12987
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
12988
+ textBackgroundColor: schemas_string().default('#191d24').nullish(),
12989
+ textBackgroundBorderColor: schemas_string().default('#191d24').nullish(),
12990
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
12991
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
12992
+ textBackgroundPadding: schemas_number().default(4).nullish(),
12993
+ areaColor: schemas_string().default('#888888').nullish(),
12994
+ areaColorOpacity: schemas_number().default(0.15).nullish(),
12995
+ areaBorderColor: schemas_string().default('#888888').nullish(),
12996
+ areaBorderWidth: schemas_number().default(1).nullish(),
12997
+ areaBorderRadius: schemas_number().default(4).nullish(),
12998
+ outerPadding: schemas_number().default(4).nullish(),
12999
+ offsetX: schemas_number().default(0).nullish(),
13000
+ offsetY: schemas_number().default(0).nullish()
12805
13001
  });
12806
13002
  const zAnnotation = schemas_object({
12807
- annotationPoint: zAnnotationPoint.or(schemas_array(zAnnotationPoint)).optional(),
12808
- annotationVerticalLine: zAnnotationVerticalLine.or(schemas_array(zAnnotationVerticalLine)).optional(),
12809
- annotationHorizontalLine: zAnnotationHorizontalLine.or(schemas_array(zAnnotationHorizontalLine)).optional(),
12810
- annotationArea: zAnnotationArea.or(schemas_array(zAnnotationArea)).optional()
13003
+ annotationPoint: zAnnotationPoint.or(schemas_array(zAnnotationPoint)).nullish(),
13004
+ annotationVerticalLine: zAnnotationVerticalLine.or(schemas_array(zAnnotationVerticalLine)).nullish(),
13005
+ annotationHorizontalLine: zAnnotationHorizontalLine.or(schemas_array(zAnnotationHorizontalLine)).nullish(),
13006
+ annotationArea: zAnnotationArea.or(schemas_array(zAnnotationArea)).nullish()
12811
13007
  });
12812
13008
  const zSort = schemas_object({
12813
13009
  order: schemas_enum([
12814
13010
  'asc',
12815
13011
  'desc'
12816
13012
  ]).default('asc'),
12817
- orderBy: schemas_string().optional(),
12818
- customOrder: schemas_array(any()).optional()
13013
+ orderBy: schemas_string().nullish(),
13014
+ customOrder: schemas_array(any()).nullish()
12819
13015
  });
12820
13016
  const zSortLegend = schemas_object({
12821
13017
  order: schemas_enum([
12822
13018
  'asc',
12823
13019
  'desc'
12824
13020
  ]).default('asc'),
12825
- orderBy: schemas_string().optional(),
12826
- customOrder: schemas_array(any()).optional()
13021
+ orderBy: schemas_string().nullish(),
13022
+ customOrder: schemas_array(any()).nullish()
12827
13023
  });
12828
13024
  const zAnalysis = schemas_object({
12829
- orderMapping: record(schemas_string(), schemas_array(schemas_string())).optional()
13025
+ orderMapping: record(schemas_string(), schemas_array(schemas_string())).nullish()
12830
13026
  });
12831
13027
  const zLocale = schemas_enum([
12832
13028
  'zh-CN',
@@ -12834,384 +13030,410 @@
12834
13030
  ]).default('zh-CN');
12835
13031
  const zTable = schemas_object({
12836
13032
  chartType: literal('table'),
12837
- dataset: zDataset.optional(),
12838
- dimensions: zDimensions.optional(),
12839
- measures: zMeasureTree.optional(),
12840
- backgroundColor: zBackgroundColor.optional(),
12841
- theme: zTheme.optional(),
12842
- locale: zLocale.optional()
13033
+ dataset: zDataset.nullish(),
13034
+ dimensions: zDimensions.nullish(),
13035
+ measures: zMeasureTree.nullish(),
13036
+ backgroundColor: zBackgroundColor.nullish(),
13037
+ borderColor: schemas_string().nullish(),
13038
+ bodyFontSize: schemas_number().nullish(),
13039
+ bodyFontColor: schemas_string().nullish(),
13040
+ bodyBackgroundColor: schemas_string().nullish(),
13041
+ hoverBodyBackgroundColor: schemas_string().nullish(),
13042
+ hoverBodyInlineBackgroundColor: schemas_string().nullish(),
13043
+ headerFontSize: schemas_number().nullish(),
13044
+ headerFontColor: schemas_string().nullish(),
13045
+ headerBackgroundColor: schemas_string().nullish(),
13046
+ hoverHeaderBackgroundColor: schemas_string().nullish(),
13047
+ hoverHeaderInlineBackgroundColor: schemas_string().nullish(),
13048
+ selectedBorderColor: schemas_string().nullish(),
13049
+ selectedBackgroundColor: schemas_string().nullish(),
13050
+ theme: zTheme.nullish(),
13051
+ locale: zLocale.nullish()
12843
13052
  });
12844
13053
  const zPivotTable = schemas_object({
12845
13054
  chartType: literal('pivotTable'),
12846
- dataset: zDataset.optional(),
12847
- dimensions: zDimensions.optional(),
12848
- measures: zMeasures.optional(),
12849
- backgroundColor: zBackgroundColor.optional(),
12850
- theme: zTheme.optional(),
12851
- locale: zLocale.optional()
13055
+ dataset: zDataset.nullish(),
13056
+ dimensions: zDimensions.nullish(),
13057
+ measures: zMeasures.nullish(),
13058
+ backgroundColor: zBackgroundColor.nullish(),
13059
+ borderColor: schemas_string().nullish(),
13060
+ bodyFontSize: schemas_number().nullish(),
13061
+ bodyFontColor: schemas_string().nullish(),
13062
+ bodyBackgroundColor: schemas_string().nullish(),
13063
+ hoverBodyBackgroundColor: schemas_string().nullish(),
13064
+ hoverBodyInlineBackgroundColor: schemas_string().nullish(),
13065
+ headerFontSize: schemas_number().nullish(),
13066
+ headerFontColor: schemas_string().nullish(),
13067
+ headerBackgroundColor: schemas_string().nullish(),
13068
+ hoverHeaderBackgroundColor: schemas_string().nullish(),
13069
+ hoverHeaderInlineBackgroundColor: schemas_string().nullish(),
13070
+ selectedBorderColor: schemas_string().nullish(),
13071
+ selectedBackgroundColor: schemas_string().nullish(),
13072
+ theme: zTheme.nullish(),
13073
+ locale: zLocale.nullish()
12852
13074
  });
12853
13075
  const zLine = schemas_object({
12854
13076
  chartType: literal('line'),
12855
- dataset: zDataset.optional(),
12856
- dimensions: zDimensions.optional(),
12857
- measures: zMeasureTree.optional(),
12858
- backgroundColor: zBackgroundColor.optional(),
12859
- color: zColor.optional(),
12860
- label: zLabel.optional(),
12861
- legend: zLegend.optional(),
12862
- tooltip: zTooltip.optional(),
12863
- xAxis: zXBandAxis.optional(),
12864
- yAxis: zYLinearAxis.optional(),
12865
- crosshairLine: zCrosshairLine.optional(),
12866
- sort: zSort.optional(),
12867
- sortLegend: zSortLegend.optional(),
12868
- theme: zTheme.optional(),
12869
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
12870
- lineStyle: schemas_array(zLineStyle).or(zLineStyle).optional(),
12871
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12872
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12873
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12874
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12875
- locale: zLocale.optional()
13077
+ dataset: zDataset.nullish(),
13078
+ dimensions: zDimensions.nullish(),
13079
+ measures: zMeasureTree.nullish(),
13080
+ backgroundColor: zBackgroundColor.nullish(),
13081
+ color: zColor.nullish(),
13082
+ label: zLabel.nullish(),
13083
+ legend: zLegend.nullish(),
13084
+ tooltip: zTooltip.nullish(),
13085
+ xAxis: zXBandAxis.nullish(),
13086
+ yAxis: zYLinearAxis.nullish(),
13087
+ crosshairLine: zCrosshairLine.nullish(),
13088
+ sort: zSort.nullish(),
13089
+ sortLegend: zSortLegend.nullish(),
13090
+ theme: zTheme.nullish(),
13091
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13092
+ lineStyle: schemas_array(zLineStyle).or(zLineStyle).nullish(),
13093
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13094
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13095
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13096
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13097
+ locale: zLocale.nullish()
12876
13098
  });
12877
13099
  const zColumn = schemas_object({
12878
13100
  chartType: literal('column'),
12879
- dataset: zDataset.optional(),
12880
- dimensions: zDimensions.optional(),
12881
- measures: zMeasureTree.optional(),
12882
- backgroundColor: zBackgroundColor.optional(),
12883
- color: zColor.optional(),
12884
- label: zLabel.optional(),
12885
- legend: zLegend.optional(),
12886
- tooltip: zTooltip.optional(),
12887
- xAxis: zXBandAxis.optional(),
12888
- yAxis: zYLinearAxis.optional(),
12889
- crosshairRect: zCrosshairRect.optional(),
12890
- stackCornerRadius: zStackCornerRadius.optional(),
12891
- theme: zTheme.optional(),
12892
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
12893
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12894
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12895
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12896
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12897
- locale: zLocale.optional()
13101
+ dataset: zDataset.nullish(),
13102
+ dimensions: zDimensions.nullish(),
13103
+ measures: zMeasureTree.nullish(),
13104
+ backgroundColor: zBackgroundColor.nullish(),
13105
+ color: zColor.nullish(),
13106
+ label: zLabel.nullish(),
13107
+ legend: zLegend.nullish(),
13108
+ tooltip: zTooltip.nullish(),
13109
+ xAxis: zXBandAxis.nullish(),
13110
+ yAxis: zYLinearAxis.nullish(),
13111
+ crosshairRect: zCrosshairRect.nullish(),
13112
+ stackCornerRadius: zStackCornerRadius.nullish(),
13113
+ theme: zTheme.nullish(),
13114
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13115
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13116
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13117
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13118
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13119
+ locale: zLocale.nullish()
12898
13120
  });
12899
13121
  const zColumnParallel = schemas_object({
12900
13122
  chartType: literal('columnParallel'),
12901
- dataset: zDataset.optional(),
12902
- dimensions: zDimensions.optional(),
12903
- measures: zMeasureTree.optional(),
12904
- backgroundColor: zBackgroundColor.optional(),
12905
- color: zColor.optional(),
12906
- label: zLabel.optional(),
12907
- legend: zLegend.optional(),
12908
- tooltip: zTooltip.optional(),
12909
- xAxis: zXBandAxis.optional(),
12910
- yAxis: zYLinearAxis.optional(),
12911
- crosshairRect: zCrosshairRect.optional(),
12912
- stackCornerRadius: zStackCornerRadius.optional(),
12913
- theme: zTheme.optional(),
12914
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
12915
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12916
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12917
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12918
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12919
- locale: zLocale.optional()
13123
+ dataset: zDataset.nullish(),
13124
+ dimensions: zDimensions.nullish(),
13125
+ measures: zMeasureTree.nullish(),
13126
+ backgroundColor: zBackgroundColor.nullish(),
13127
+ color: zColor.nullish(),
13128
+ label: zLabel.nullish(),
13129
+ legend: zLegend.nullish(),
13130
+ tooltip: zTooltip.nullish(),
13131
+ xAxis: zXBandAxis.nullish(),
13132
+ yAxis: zYLinearAxis.nullish(),
13133
+ crosshairRect: zCrosshairRect.nullish(),
13134
+ stackCornerRadius: zStackCornerRadius.nullish(),
13135
+ theme: zTheme.nullish(),
13136
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13137
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13138
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13139
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13140
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13141
+ locale: zLocale.nullish()
12920
13142
  });
12921
13143
  const zColumnPercent = schemas_object({
12922
13144
  chartType: literal('columnPercent'),
12923
- dataset: zDataset.optional(),
12924
- dimensions: zDimensions.optional(),
12925
- measures: zMeasureTree.optional(),
12926
- backgroundColor: zBackgroundColor.optional(),
12927
- color: zColor.optional(),
12928
- label: zLabel.optional(),
12929
- legend: zLegend.optional(),
12930
- tooltip: zTooltip.optional(),
12931
- xAxis: zXBandAxis.optional(),
12932
- yAxis: zYLinearAxis.optional(),
12933
- crosshairRect: zCrosshairRect.optional(),
12934
- stackCornerRadius: zStackCornerRadius.optional(),
12935
- theme: zTheme.optional(),
12936
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
12937
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12938
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12939
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12940
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12941
- locale: zLocale.optional()
13145
+ dataset: zDataset.nullish(),
13146
+ dimensions: zDimensions.nullish(),
13147
+ measures: zMeasureTree.nullish(),
13148
+ backgroundColor: zBackgroundColor.nullish(),
13149
+ color: zColor.nullish(),
13150
+ label: zLabel.nullish(),
13151
+ legend: zLegend.nullish(),
13152
+ tooltip: zTooltip.nullish(),
13153
+ xAxis: zXBandAxis.nullish(),
13154
+ yAxis: zYLinearAxis.nullish(),
13155
+ crosshairRect: zCrosshairRect.nullish(),
13156
+ stackCornerRadius: zStackCornerRadius.nullish(),
13157
+ theme: zTheme.nullish(),
13158
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13159
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13160
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13161
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13162
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13163
+ locale: zLocale.nullish()
12942
13164
  });
12943
13165
  const zBar = schemas_object({
12944
13166
  chartType: literal('bar'),
12945
- dataset: zDataset.optional(),
12946
- dimensions: zDimensions.optional(),
12947
- measures: zMeasureTree.optional(),
12948
- backgroundColor: zBackgroundColor.optional(),
12949
- color: zColor.optional(),
12950
- label: zLabel.optional(),
12951
- legend: zLegend.optional(),
12952
- tooltip: zTooltip.optional(),
12953
- xAxis: zXLinearAxis.optional(),
12954
- yAxis: zYBandAxis.optional(),
12955
- crosshairRect: zCrosshairRect.optional(),
12956
- stackCornerRadius: zStackCornerRadius.optional(),
12957
- theme: zTheme.optional(),
12958
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
12959
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12960
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12961
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12962
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12963
- locale: zLocale.optional()
13167
+ dataset: zDataset.nullish(),
13168
+ dimensions: zDimensions.nullish(),
13169
+ measures: zMeasureTree.nullish(),
13170
+ backgroundColor: zBackgroundColor.nullish(),
13171
+ color: zColor.nullish(),
13172
+ label: zLabel.nullish(),
13173
+ legend: zLegend.nullish(),
13174
+ tooltip: zTooltip.nullish(),
13175
+ xAxis: zXLinearAxis.nullish(),
13176
+ yAxis: zYBandAxis.nullish(),
13177
+ crosshairRect: zCrosshairRect.nullish(),
13178
+ stackCornerRadius: zStackCornerRadius.nullish(),
13179
+ theme: zTheme.nullish(),
13180
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13181
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13182
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13183
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13184
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13185
+ locale: zLocale.nullish()
12964
13186
  });
12965
13187
  const zBarParallel = schemas_object({
12966
13188
  chartType: literal('barParallel'),
12967
- dataset: zDataset.optional(),
12968
- dimensions: zDimensions.optional(),
12969
- measures: zMeasureTree.optional(),
12970
- backgroundColor: zBackgroundColor.optional(),
12971
- color: zColor.optional(),
12972
- label: zLabel.optional(),
12973
- legend: zLegend.optional(),
12974
- tooltip: zTooltip.optional(),
12975
- xAxis: zXLinearAxis.optional(),
12976
- yAxis: zYBandAxis.optional(),
12977
- crosshairRect: zCrosshairRect.optional(),
12978
- stackCornerRadius: zStackCornerRadius.optional(),
12979
- theme: zTheme.optional(),
12980
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
12981
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
12982
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
12983
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
12984
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
12985
- locale: zLocale.optional()
13189
+ dataset: zDataset.nullish(),
13190
+ dimensions: zDimensions.nullish(),
13191
+ measures: zMeasureTree.nullish(),
13192
+ backgroundColor: zBackgroundColor.nullish(),
13193
+ color: zColor.nullish(),
13194
+ label: zLabel.nullish(),
13195
+ legend: zLegend.nullish(),
13196
+ tooltip: zTooltip.nullish(),
13197
+ xAxis: zXLinearAxis.nullish(),
13198
+ yAxis: zYBandAxis.nullish(),
13199
+ crosshairRect: zCrosshairRect.nullish(),
13200
+ stackCornerRadius: zStackCornerRadius.nullish(),
13201
+ theme: zTheme.nullish(),
13202
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13203
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13204
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13205
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13206
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13207
+ locale: zLocale.nullish()
12986
13208
  });
12987
13209
  const zBarPercent = schemas_object({
12988
13210
  chartType: literal('barPercent'),
12989
- dataset: zDataset.optional(),
12990
- dimensions: zDimensions.optional(),
12991
- measures: zMeasureTree.optional(),
12992
- backgroundColor: zBackgroundColor.optional(),
12993
- color: zColor.optional(),
12994
- label: zLabel.optional(),
12995
- legend: zLegend.optional(),
12996
- tooltip: zTooltip.optional(),
12997
- xAxis: zXLinearAxis.optional(),
12998
- yAxis: zYBandAxis.optional(),
12999
- crosshairRect: zCrosshairRect.optional(),
13000
- stackCornerRadius: zStackCornerRadius.optional(),
13001
- theme: zTheme.optional(),
13002
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
13003
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13004
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13005
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13006
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13007
- locale: zLocale.optional()
13211
+ dataset: zDataset.nullish(),
13212
+ dimensions: zDimensions.nullish(),
13213
+ measures: zMeasureTree.nullish(),
13214
+ backgroundColor: zBackgroundColor.nullish(),
13215
+ color: zColor.nullish(),
13216
+ label: zLabel.nullish(),
13217
+ legend: zLegend.nullish(),
13218
+ tooltip: zTooltip.nullish(),
13219
+ xAxis: zXLinearAxis.nullish(),
13220
+ yAxis: zYBandAxis.nullish(),
13221
+ crosshairRect: zCrosshairRect.nullish(),
13222
+ stackCornerRadius: zStackCornerRadius.nullish(),
13223
+ theme: zTheme.nullish(),
13224
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13225
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13226
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13227
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13228
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13229
+ locale: zLocale.nullish()
13008
13230
  });
13009
13231
  const zArea = schemas_object({
13010
13232
  chartType: literal('area'),
13011
- dataset: zDataset.optional(),
13012
- dimensions: zDimensions.optional(),
13013
- measures: zMeasureTree.optional(),
13014
- backgroundColor: zBackgroundColor.optional(),
13015
- color: zColor.optional(),
13016
- label: zLabel.optional(),
13017
- legend: zLegend.optional(),
13018
- tooltip: zTooltip.optional(),
13019
- xAxis: zXBandAxis.optional(),
13020
- yAxis: zYLinearAxis.optional(),
13021
- crosshairLine: zCrosshairLine.optional(),
13022
- theme: zTheme.optional(),
13023
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
13024
- lineStyle: schemas_array(zLineStyle).or(zLineStyle).optional(),
13025
- areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).optional(),
13026
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13027
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13028
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13029
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13030
- locale: zLocale.optional()
13233
+ dataset: zDataset.nullish(),
13234
+ dimensions: zDimensions.nullish(),
13235
+ measures: zMeasureTree.nullish(),
13236
+ backgroundColor: zBackgroundColor.nullish(),
13237
+ color: zColor.nullish(),
13238
+ label: zLabel.nullish(),
13239
+ legend: zLegend.nullish(),
13240
+ tooltip: zTooltip.nullish(),
13241
+ xAxis: zXBandAxis.nullish(),
13242
+ yAxis: zYLinearAxis.nullish(),
13243
+ crosshairLine: zCrosshairLine.nullish(),
13244
+ theme: zTheme.nullish(),
13245
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13246
+ lineStyle: schemas_array(zLineStyle).or(zLineStyle).nullish(),
13247
+ areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).nullish(),
13248
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13249
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13250
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13251
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13252
+ locale: zLocale.nullish()
13031
13253
  });
13032
13254
  const zAreaPercent = schemas_object({
13033
13255
  chartType: literal('areaPercent'),
13034
- dataset: zDataset.optional(),
13035
- dimensions: zDimensions.optional(),
13036
- measures: zMeasureTree.optional(),
13037
- backgroundColor: zBackgroundColor.optional(),
13038
- color: zColor.optional(),
13039
- label: zLabel.optional(),
13040
- legend: zLegend.optional(),
13041
- tooltip: zTooltip.optional(),
13042
- xAxis: zXBandAxis.optional(),
13043
- yAxis: zYLinearAxis.optional(),
13044
- crosshairLine: zCrosshairLine.optional(),
13045
- theme: zTheme.optional(),
13046
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
13047
- lineStyle: schemas_array(zLineStyle).or(zLineStyle).optional(),
13048
- areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).optional(),
13049
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13050
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13051
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13052
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13053
- locale: zLocale.optional()
13256
+ dataset: zDataset.nullish(),
13257
+ dimensions: zDimensions.nullish(),
13258
+ measures: zMeasureTree.nullish(),
13259
+ backgroundColor: zBackgroundColor.nullish(),
13260
+ color: zColor.nullish(),
13261
+ label: zLabel.nullish(),
13262
+ legend: zLegend.nullish(),
13263
+ tooltip: zTooltip.nullish(),
13264
+ xAxis: zXBandAxis.nullish(),
13265
+ yAxis: zYLinearAxis.nullish(),
13266
+ crosshairLine: zCrosshairLine.nullish(),
13267
+ theme: zTheme.nullish(),
13268
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13269
+ lineStyle: schemas_array(zLineStyle).or(zLineStyle).nullish(),
13270
+ areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).nullish(),
13271
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13272
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13273
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13274
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13275
+ locale: zLocale.nullish()
13054
13276
  });
13055
13277
  const zAreaRange = schemas_object({
13056
13278
  chartType: literal('areaRange'),
13057
- dataset: zDataset.optional(),
13058
- dimensions: zDimensions.optional(),
13059
- measures: zMeasureTree.optional(),
13060
- backgroundColor: zBackgroundColor.optional(),
13061
- label: zLabel.optional(),
13062
- xAxis: zXBandAxis.optional(),
13063
- yAxis: zYLinearAxis.optional(),
13064
- crosshairLine: zCrosshairLine.optional(),
13065
- theme: zTheme.optional(),
13066
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
13067
- lineStyle: schemas_array(zLineStyle).or(zLineStyle).optional(),
13068
- areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).optional(),
13069
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13070
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13071
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13072
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13073
- locale: zLocale.optional()
13279
+ dataset: zDataset.nullish(),
13280
+ dimensions: zDimensions.nullish(),
13281
+ measures: zMeasureTree.nullish(),
13282
+ backgroundColor: zBackgroundColor.nullish(),
13283
+ label: zLabel.nullish(),
13284
+ xAxis: zXBandAxis.nullish(),
13285
+ yAxis: zYLinearAxis.nullish(),
13286
+ crosshairLine: zCrosshairLine.nullish(),
13287
+ theme: zTheme.nullish(),
13288
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13289
+ lineStyle: schemas_array(zLineStyle).or(zLineStyle).nullish(),
13290
+ areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).nullish(),
13291
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13292
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13293
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13294
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13295
+ locale: zLocale.nullish()
13074
13296
  });
13075
13297
  const zScatter = schemas_object({
13076
13298
  chartType: literal('scatter'),
13077
- dataset: zDataset.optional(),
13078
- dimensions: zDimensions.optional(),
13079
- measures: zMeasureTree.optional(),
13080
- backgroundColor: zBackgroundColor.optional(),
13081
- color: zColor.optional(),
13082
- label: zLabel.optional(),
13083
- legend: zLegend.optional(),
13084
- tooltip: zTooltip.optional(),
13085
- xAxis: zXLinearAxis.optional(),
13086
- yAxis: zYLinearAxis.optional(),
13087
- crosshairLine: zCrosshairLine.optional(),
13088
- theme: zTheme.optional(),
13089
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
13090
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13091
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13092
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13093
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13094
- locale: zLocale.optional()
13299
+ dataset: zDataset.nullish(),
13300
+ dimensions: zDimensions.nullish(),
13301
+ measures: zMeasureTree.nullish(),
13302
+ backgroundColor: zBackgroundColor.nullish(),
13303
+ color: zColor.nullish(),
13304
+ label: zLabel.nullish(),
13305
+ legend: zLegend.nullish(),
13306
+ tooltip: zTooltip.nullish(),
13307
+ xAxis: zXLinearAxis.nullish(),
13308
+ yAxis: zYLinearAxis.nullish(),
13309
+ crosshairLine: zCrosshairLine.nullish(),
13310
+ theme: zTheme.nullish(),
13311
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13312
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13313
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13314
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13315
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13316
+ locale: zLocale.nullish()
13095
13317
  });
13096
13318
  const zDualAxis = schemas_object({
13097
13319
  chartType: literal('dualAxis'),
13098
- dataset: zDataset.optional(),
13099
- dimensions: zDimensions.optional(),
13100
- measures: zMeasureTree.optional(),
13101
- dualMeasures: zDualMeasures.optional(),
13102
- dualChartType: schemas_array(zDualChartType).or(zDualChartType).optional(),
13103
- primaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).optional(),
13104
- secondaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).optional(),
13105
- xAxis: zXBandAxis.optional(),
13106
- backgroundColor: zBackgroundColor.optional(),
13107
- color: zColor.optional(),
13108
- label: zLabel.optional(),
13109
- legend: zLegend.optional(),
13110
- tooltip: zTooltip.optional(),
13111
- crosshairRect: zCrosshairRect.optional(),
13112
- sort: zSort.optional(),
13113
- sortLegend: zSortLegend.optional(),
13114
- theme: zTheme.optional(),
13115
- barStyle: schemas_array(zBarStyle).or(zBarStyle).optional(),
13116
- pointStyle: schemas_array(zPointStyle).or(zPointStyle).optional(),
13117
- lineStyle: schemas_array(zLineStyle).or(zLineStyle).optional(),
13118
- areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).optional(),
13119
- annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).optional(),
13120
- annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).optional(),
13121
- annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).optional(),
13122
- annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).optional(),
13123
- locale: zLocale.optional()
13320
+ dataset: zDataset.nullish(),
13321
+ dimensions: zDimensions.nullish(),
13322
+ measures: zMeasureTree.nullish(),
13323
+ dualMeasures: zDualMeasures.nullish(),
13324
+ dualChartType: schemas_array(zDualChartType).or(zDualChartType).nullish(),
13325
+ primaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).nullish(),
13326
+ secondaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).nullish(),
13327
+ xAxis: zXBandAxis.nullish(),
13328
+ backgroundColor: zBackgroundColor.nullish(),
13329
+ color: zColor.nullish(),
13330
+ label: zLabel.nullish(),
13331
+ legend: zLegend.nullish(),
13332
+ tooltip: zTooltip.nullish(),
13333
+ crosshairRect: zCrosshairRect.nullish(),
13334
+ sort: zSort.nullish(),
13335
+ sortLegend: zSortLegend.nullish(),
13336
+ theme: zTheme.nullish(),
13337
+ barStyle: schemas_array(zBarStyle).or(zBarStyle).nullish(),
13338
+ pointStyle: schemas_array(zPointStyle).or(zPointStyle).nullish(),
13339
+ lineStyle: schemas_array(zLineStyle).or(zLineStyle).nullish(),
13340
+ areaStyle: schemas_array(zAreaStyle).or(zAreaStyle).nullish(),
13341
+ annotationPoint: schemas_array(zAnnotationPoint).or(zAnnotationPoint).nullish(),
13342
+ annotationVerticalLine: schemas_array(zAnnotationVerticalLine).or(zAnnotationVerticalLine).nullish(),
13343
+ annotationHorizontalLine: schemas_array(zAnnotationHorizontalLine).or(zAnnotationHorizontalLine).nullish(),
13344
+ annotationArea: schemas_array(zAnnotationArea).or(zAnnotationArea).nullish(),
13345
+ locale: zLocale.nullish()
13124
13346
  });
13125
13347
  const zRose = schemas_object({
13126
13348
  chartType: literal('rose'),
13127
- dataset: zDataset.optional(),
13128
- dimensions: zDimensions.optional(),
13129
- measures: zMeasureTree.optional(),
13130
- backgroundColor: zBackgroundColor.optional(),
13131
- color: zColor.optional(),
13132
- label: zLabel.optional(),
13133
- legend: zLegend.optional(),
13134
- tooltip: zTooltip.optional(),
13135
- theme: zTheme.optional(),
13136
- locale: zLocale.optional()
13349
+ dataset: zDataset.nullish(),
13350
+ dimensions: zDimensions.nullish(),
13351
+ measures: zMeasureTree.nullish(),
13352
+ backgroundColor: zBackgroundColor.nullish(),
13353
+ color: zColor.nullish(),
13354
+ label: zLabel.nullish(),
13355
+ legend: zLegend.nullish(),
13356
+ tooltip: zTooltip.nullish(),
13357
+ theme: zTheme.nullish(),
13358
+ locale: zLocale.nullish()
13137
13359
  });
13138
13360
  const zRoseParallel = schemas_object({
13139
13361
  chartType: literal('roseParallel'),
13140
- dataset: zDataset.optional(),
13141
- dimensions: zDimensions.optional(),
13142
- measures: zMeasureTree.optional(),
13143
- backgroundColor: zBackgroundColor.optional(),
13144
- color: zColor.optional(),
13145
- label: zLabel.optional(),
13146
- legend: zLegend.optional(),
13147
- tooltip: zTooltip.optional(),
13148
- theme: zTheme.optional(),
13149
- locale: zLocale.optional()
13362
+ dataset: zDataset.nullish(),
13363
+ dimensions: zDimensions.nullish(),
13364
+ measures: zMeasureTree.nullish(),
13365
+ backgroundColor: zBackgroundColor.nullish(),
13366
+ color: zColor.nullish(),
13367
+ label: zLabel.nullish(),
13368
+ legend: zLegend.nullish(),
13369
+ tooltip: zTooltip.nullish(),
13370
+ theme: zTheme.nullish(),
13371
+ locale: zLocale.nullish()
13150
13372
  });
13151
13373
  const zPie = schemas_object({
13152
13374
  chartType: literal('pie'),
13153
- dataset: zDataset.optional(),
13154
- dimensions: zDimensions.optional(),
13155
- measures: zMeasureTree.optional(),
13156
- backgroundColor: zBackgroundColor.optional(),
13157
- color: zColor.optional(),
13158
- label: zLabel.optional(),
13159
- legend: zLegend.optional(),
13160
- tooltip: zTooltip.optional(),
13161
- theme: zTheme.optional(),
13162
- locale: zLocale.optional()
13375
+ dataset: zDataset.nullish(),
13376
+ dimensions: zDimensions.nullish(),
13377
+ measures: zMeasureTree.nullish(),
13378
+ backgroundColor: zBackgroundColor.nullish(),
13379
+ color: zColor.nullish(),
13380
+ label: zLabel.nullish(),
13381
+ legend: zLegend.nullish(),
13382
+ tooltip: zTooltip.nullish(),
13383
+ theme: zTheme.nullish(),
13384
+ locale: zLocale.nullish()
13163
13385
  });
13164
13386
  const zDonut = schemas_object({
13165
13387
  chartType: literal('donut'),
13166
- dataset: zDataset.optional(),
13167
- dimensions: zDimensions.optional(),
13168
- measures: zMeasureTree.optional(),
13169
- backgroundColor: zBackgroundColor.optional(),
13170
- color: zColor.optional(),
13171
- label: zLabel.optional(),
13172
- legend: zLegend.optional(),
13173
- tooltip: zTooltip.optional(),
13174
- theme: zTheme.optional(),
13175
- locale: zLocale.optional()
13388
+ dataset: zDataset.nullish(),
13389
+ dimensions: zDimensions.nullish(),
13390
+ measures: zMeasureTree.nullish(),
13391
+ backgroundColor: zBackgroundColor.nullish(),
13392
+ color: zColor.nullish(),
13393
+ label: zLabel.nullish(),
13394
+ legend: zLegend.nullish(),
13395
+ tooltip: zTooltip.nullish(),
13396
+ theme: zTheme.nullish(),
13397
+ locale: zLocale.nullish()
13176
13398
  });
13177
13399
  const zRadar = schemas_object({
13178
13400
  chartType: literal('radar'),
13179
- dataset: zDataset.optional(),
13180
- dimensions: zDimensions.optional(),
13181
- measures: zMeasureTree.optional(),
13182
- backgroundColor: zBackgroundColor.optional(),
13183
- color: zColor.optional(),
13184
- label: zLabel.optional(),
13185
- legend: zLegend.optional(),
13186
- tooltip: zTooltip.optional(),
13187
- theme: zTheme.optional(),
13188
- locale: zLocale.optional()
13401
+ dataset: zDataset.nullish(),
13402
+ dimensions: zDimensions.nullish(),
13403
+ measures: zMeasureTree.nullish(),
13404
+ backgroundColor: zBackgroundColor.nullish(),
13405
+ color: zColor.nullish(),
13406
+ label: zLabel.nullish(),
13407
+ legend: zLegend.nullish(),
13408
+ tooltip: zTooltip.nullish(),
13409
+ theme: zTheme.nullish(),
13410
+ locale: zLocale.nullish()
13189
13411
  });
13190
13412
  const zFunnel = schemas_object({
13191
13413
  chartType: literal('funnel'),
13192
- dataset: zDataset.optional(),
13193
- dimensions: zDimensions.optional(),
13194
- measures: zMeasureTree.optional(),
13195
- backgroundColor: zBackgroundColor.optional(),
13196
- color: zLinearColor.optional(),
13197
- label: zLabel.optional(),
13198
- legend: zColorLegend.optional(),
13199
- tooltip: zTooltip.optional(),
13200
- theme: zTheme.optional(),
13201
- locale: zLocale.optional()
13414
+ dataset: zDataset.nullish(),
13415
+ dimensions: zDimensions.nullish(),
13416
+ measures: zMeasureTree.nullish(),
13417
+ backgroundColor: zBackgroundColor.nullish(),
13418
+ color: zLinearColor.nullish(),
13419
+ label: zLabel.nullish(),
13420
+ legend: zColorLegend.nullish(),
13421
+ tooltip: zTooltip.nullish(),
13422
+ theme: zTheme.nullish(),
13423
+ locale: zLocale.nullish()
13202
13424
  });
13203
13425
  const zHeatmap = schemas_object({
13204
13426
  chartType: literal('heatmap'),
13205
- dataset: zDataset.optional(),
13206
- dimensions: zDimensions.optional(),
13207
- measures: zMeasureTree.optional(),
13208
- backgroundColor: zBackgroundColor.optional(),
13209
- color: zLinearColor.optional(),
13210
- label: zLabel.optional(),
13211
- legend: zColorLegend.optional(),
13212
- tooltip: zTooltip.optional(),
13213
- theme: zTheme.optional(),
13214
- locale: zLocale.optional()
13427
+ dataset: zDataset.nullish(),
13428
+ dimensions: zDimensions.nullish(),
13429
+ measures: zMeasureTree.nullish(),
13430
+ backgroundColor: zBackgroundColor.nullish(),
13431
+ color: zLinearColor.nullish(),
13432
+ label: zLabel.nullish(),
13433
+ legend: zColorLegend.nullish(),
13434
+ tooltip: zTooltip.nullish(),
13435
+ theme: zTheme.nullish(),
13436
+ locale: zLocale.nullish()
13215
13437
  });
13216
13438
  const zVSeed = discriminatedUnion('chartType', [
13217
13439
  zTable,