@visactor/vseed 0.1.30 → 0.1.32

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 (96) hide show
  1. package/dist/cjs/index.cjs +3 -3
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/builder/builder/builder.d.ts +6156 -0
  4. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureName.js +2 -1
  5. package/dist/esm/pipeline/advanced/table/pipes/default/defaultMeasureName.js.map +1 -1
  6. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationArea.js +4 -3
  7. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationArea.js.map +1 -1
  8. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationAreaBand.js +4 -3
  9. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationAreaBand.js.map +1 -1
  10. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationHorizontalLine.js +20 -9
  11. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationHorizontalLine.js.map +1 -1
  12. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPoint.js +19 -7
  13. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationPoint.js.map +1 -1
  14. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationVerticalLine.js +20 -8
  15. package/dist/esm/pipeline/spec/chart/pipes/annotation/annotationVerticalLine.js.map +1 -1
  16. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +2 -1
  17. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
  18. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js +2 -1
  19. package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
  20. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js +2 -1
  21. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
  22. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js +2 -1
  23. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
  24. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js +2 -1
  25. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearPrimary.js.map +1 -1
  26. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js +2 -1
  27. package/dist/esm/pipeline/spec/chart/pipes/axes/yLinearSecondary.js.map +1 -1
  28. package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairLine.js +1 -1
  29. package/dist/esm/pipeline/spec/chart/pipes/crosshair/horizontalCrosshairLine.js.map +1 -1
  30. package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairLine.js +1 -1
  31. package/dist/esm/pipeline/spec/chart/pipes/crosshair/verticalCrosshairLine.js.map +1 -1
  32. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pieStyle.js +11 -13
  33. package/dist/esm/pipeline/spec/chart/pipes/markStyle/pieStyle.js.map +1 -1
  34. package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js +2 -1
  35. package/dist/esm/pipeline/spec/table/pipeline/pivotTable.js.map +1 -1
  36. package/dist/esm/pipeline/spec/table/pipes/corner/index.d.ts +1 -0
  37. package/dist/esm/pipeline/spec/table/pipes/corner/index.js +2 -0
  38. package/dist/esm/pipeline/spec/table/pipes/corner/titleOnDimension.d.ts +2 -0
  39. package/dist/esm/pipeline/spec/table/pipes/corner/titleOnDimension.js +12 -0
  40. package/dist/esm/pipeline/spec/table/pipes/corner/titleOnDimension.js.map +1 -0
  41. package/dist/esm/pipeline/spec/table/pipes/index.d.ts +1 -0
  42. package/dist/esm/pipeline/spec/table/pipes/index.js +1 -0
  43. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js +5 -3
  44. package/dist/esm/pipeline/spec/table/pipes/indicators/pivotIndicators.js.map +1 -1
  45. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
  46. package/dist/esm/pipeline/utils/chatType.d.ts +1 -0
  47. package/dist/esm/pipeline/utils/chatType.js +2 -1
  48. package/dist/esm/pipeline/utils/chatType.js.map +1 -1
  49. package/dist/esm/theme/common/annotaion.d.ts +22 -0
  50. package/dist/esm/theme/common/annotaion.js +106 -0
  51. package/dist/esm/theme/common/annotaion.js.map +1 -0
  52. package/dist/esm/theme/common/crosshair.js +5 -5
  53. package/dist/esm/theme/common/crosshair.js.map +1 -1
  54. package/dist/esm/theme/dark/dark.js +23 -11
  55. package/dist/esm/theme/dark/dark.js.map +1 -1
  56. package/dist/esm/theme/light/light.js +23 -11
  57. package/dist/esm/theme/light/light.js.map +1 -1
  58. package/dist/esm/types/advancedVSeed.d.ts +2260 -0
  59. package/dist/esm/types/chartType/area/zArea.d.ts +3 -0
  60. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +3 -0
  61. package/dist/esm/types/chartType/bar/zBar.d.ts +2 -0
  62. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +2 -0
  63. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +2 -0
  64. package/dist/esm/types/chartType/column/zColumn.d.ts +2 -0
  65. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +2 -0
  66. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +2 -0
  67. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +5 -0
  68. package/dist/esm/types/chartType/line/zLine.d.ts +3 -0
  69. package/dist/esm/types/chartType/scatter/zScatter.d.ts +3 -0
  70. package/dist/esm/types/properties/annotation/annotationArea.d.ts +1 -1
  71. package/dist/esm/types/properties/config/annotation/annotation.d.ts +76 -0
  72. package/dist/esm/types/properties/config/annotation/annotation.js +0 -0
  73. package/dist/esm/types/properties/config/annotation/index.d.ts +2 -0
  74. package/dist/esm/types/properties/config/annotation/index.js +1 -0
  75. package/dist/esm/types/properties/config/annotation/zAnnotaion.d.ts +167 -0
  76. package/dist/esm/types/properties/config/annotation/zAnnotaion.js +57 -0
  77. package/dist/esm/types/properties/config/annotation/zAnnotaion.js.map +1 -0
  78. package/dist/esm/types/properties/config/axes/bandAxis.d.ts +4 -0
  79. package/dist/esm/types/properties/config/axes/linearAxis.d.ts +4 -0
  80. package/dist/esm/types/properties/config/axes/zBandAxis.d.ts +2 -0
  81. package/dist/esm/types/properties/config/axes/zBandAxis.js +2 -1
  82. package/dist/esm/types/properties/config/axes/zBandAxis.js.map +1 -1
  83. package/dist/esm/types/properties/config/axes/zLinearAxis.d.ts +2 -0
  84. package/dist/esm/types/properties/config/axes/zLinearAxis.js +2 -1
  85. package/dist/esm/types/properties/config/axes/zLinearAxis.js.map +1 -1
  86. package/dist/esm/types/properties/config/config.d.ts +2260 -0
  87. package/dist/esm/types/properties/config/config.js +15 -7
  88. package/dist/esm/types/properties/config/config.js.map +1 -1
  89. package/dist/esm/types/properties/config/crosshair/zCrosshair.d.ts +1 -0
  90. package/dist/esm/types/properties/config/crosshair/zCrosshair.js +2 -1
  91. package/dist/esm/types/properties/config/crosshair/zCrosshair.js.map +1 -1
  92. package/dist/esm/types/properties/theme/customTheme.d.ts +2260 -0
  93. package/dist/esm/types/zVseed.d.ts +29 -0
  94. package/dist/umd/index.js +507 -268
  95. package/dist/umd/index.js.map +1 -1
  96. package/package.json +4 -4
package/dist/umd/index.js CHANGED
@@ -295,10 +295,11 @@
295
295
  zScatterConfig: ()=>zScatterConfig,
296
296
  donutAdvancedPipeline: ()=>donutAdvancedPipeline,
297
297
  zTooltip: ()=>zTooltip,
298
+ isBarLikeChart: ()=>isBarLikeChart,
298
299
  barParallelAdvancedPipeline: ()=>barParallelAdvancedPipeline,
299
300
  deleteMeasureTreeByCallback: ()=>deleteMeasureTreeByCallback,
300
- barPercentSpecPipeline: ()=>barPercentSpecPipeline,
301
301
  zBarPercentConfig: ()=>zBarPercentConfig,
302
+ barPercentSpecPipeline: ()=>barPercentSpecPipeline,
302
303
  dataReshapeByEncoding: ()=>dataReshapeByEncoding,
303
304
  lineSpecPipeline: ()=>lineSpecPipeline,
304
305
  zDimensionGroup: ()=>zDimensionGroup
@@ -562,6 +563,7 @@
562
563
  const isAreaPercent = (vseed)=>vseed.chartType === ChartTypeEnum.AreaPercent;
563
564
  const isColumnPercent = (vseed)=>vseed.chartType === ChartTypeEnum.ColumnPercent;
564
565
  const isBarPercent = (vseed)=>vseed.chartType === ChartTypeEnum.BarPercent;
566
+ const isBarLikeChart = (vseed)=>vseed.chartType === ChartTypeEnum.Bar || vseed.chartType === ChartTypeEnum.BarPercent || vseed.chartType === ChartTypeEnum.BarParallel;
565
567
  const isVTable = (vseed)=>[
566
568
  'table',
567
569
  'pivotTable'
@@ -1337,7 +1339,8 @@
1337
1339
  const measures = findAllMeasures(advancedVSeed.measures);
1338
1340
  if (measures.length > 1 && !result.dimensions?.some((dim)=>dim.id === MeasureName)) result.dimensions?.push({
1339
1341
  id: MeasureName,
1340
- alias: intl.i18n`指标名称`
1342
+ alias: intl.i18n`指标名称`,
1343
+ encoding: 'row'
1341
1344
  });
1342
1345
  return result;
1343
1346
  };
@@ -1597,20 +1600,31 @@
1597
1600
  }))
1598
1601
  };
1599
1602
  };
1603
+ const titleOnDimension = (spec)=>{
1604
+ const { rows = [], columns = [] } = spec;
1605
+ return {
1606
+ ...spec,
1607
+ corner: {
1608
+ titleOnDimension: rows.length <= 1 && columns.length >= 1 ? 'column' : 'row'
1609
+ }
1610
+ };
1611
+ };
1600
1612
  const pivotIndicators = (spec, context)=>{
1601
1613
  const { advancedVSeed } = context;
1602
1614
  const { measures, datasetReshapeInfo } = advancedVSeed;
1603
1615
  const { foldInfo } = datasetReshapeInfo[0];
1616
+ const hasRow = spec?.rows?.length > 0;
1617
+ const foldMapValues = Object.values(foldInfo.foldMap);
1604
1618
  return {
1605
1619
  ...spec,
1606
- indicatorsAsCol: true,
1607
1620
  indicatorTitle: intl.i18n`指标名称`,
1608
- hideIndicatorName: true,
1621
+ indicatorsAsCol: hasRow,
1622
+ hideIndicatorName: hasRow,
1609
1623
  indicators: [
1610
1624
  {
1611
1625
  cellType: 'text',
1612
1626
  indicatorKey: foldInfo.measureValue,
1613
- title: 'indicator',
1627
+ title: foldMapValues.length > 1 ? '' : foldMapValues[0],
1614
1628
  width: 'auto',
1615
1629
  format: pivotIndicators_fieldFormat(measures, foldInfo)
1616
1630
  }
@@ -1753,6 +1767,7 @@
1753
1767
  initPivotTable,
1754
1768
  pivotColumns,
1755
1769
  pivotRows,
1770
+ titleOnDimension,
1756
1771
  pivotIndicators,
1757
1772
  bodyStyle,
1758
1773
  headerStyle,
@@ -2722,7 +2737,8 @@
2722
2737
  visible: grid?.visible,
2723
2738
  style: {
2724
2739
  lineWidth: grid?.gridWidth,
2725
- stroke: grid?.gridColor
2740
+ stroke: grid?.gridColor,
2741
+ lineDash: grid?.gridLineDash
2726
2742
  }
2727
2743
  },
2728
2744
  domainLine: {
@@ -2817,7 +2833,8 @@
2817
2833
  visible: grid?.visible,
2818
2834
  style: {
2819
2835
  lineWidth: grid?.gridWidth,
2820
- stroke: grid?.gridColor
2836
+ stroke: grid?.gridColor,
2837
+ lineDash: grid?.gridLineDash
2821
2838
  }
2822
2839
  },
2823
2840
  domainLine: {
@@ -2860,7 +2877,7 @@
2860
2877
  lineWidth: 1,
2861
2878
  opacity: 1,
2862
2879
  stroke: lineColor,
2863
- lineDash: [
2880
+ lineDash: config.lineDash ?? [
2864
2881
  4,
2865
2882
  2
2866
2883
  ]
@@ -3543,17 +3560,28 @@
3543
3560
  return true;
3544
3561
  });
3545
3562
  const annotationPoint_annotationPoint = (spec, context)=>{
3546
- const { advancedVSeed } = context;
3547
- const { annotation } = advancedVSeed;
3563
+ const { advancedVSeed, vseed } = context;
3564
+ const { annotation, config } = advancedVSeed;
3548
3565
  if (!annotation || !annotation.annotationPoint) return spec;
3566
+ const theme = config?.[vseed.chartType]?.annotation?.annotationPoint;
3549
3567
  const { annotationPoint } = annotation;
3550
3568
  const annotationPointList = Array.isArray(annotationPoint) ? annotationPoint : [
3551
3569
  annotationPoint
3552
3570
  ];
3571
+ const isHorizontalBar = isBarLikeChart(advancedVSeed);
3572
+ const defaultStyle = isHorizontalBar ? {
3573
+ textAlign: 'right',
3574
+ textBaseline: 'middle'
3575
+ } : {
3576
+ textAlign: 'center',
3577
+ textBaseline: 'top'
3578
+ };
3553
3579
  const markPoint = annotationPointList.flatMap((annotationPoint)=>{
3554
- 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;
3580
+ const { selector: selectorPoint, text = '', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = defaultStyle.textAlign, textBaseline = defaultStyle.textBaseline, textBackgroundBorderColor = theme?.textBackgroundBorderColor, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundColor = theme?.textBackgroundColor ?? '#212121', textBackgroundPadding = theme?.textBackgroundPadding ?? 2, textBackgroundVisible = theme?.textBackgroundVisible ?? true, offsetX = theme?.offsetX ?? 0, offsetY = theme?.offsetY ?? 0 } = annotationPoint;
3555
3581
  const dataset = advancedVSeed.dataset.flat();
3556
3582
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
3583
+ const dx = -10 - (isHorizontalBar ? textFontSize : 0);
3584
+ const dy = isHorizontalBar ? 0 : textFontSize;
3557
3585
  return selectedData.map((datum)=>({
3558
3586
  zIndex: 1000,
3559
3587
  regionRelative: true,
@@ -3576,8 +3604,8 @@
3576
3604
  lineWidth: 1,
3577
3605
  fontSize: textFontSize,
3578
3606
  fontWeight: textFontWeight,
3579
- dy: textFontSize,
3580
- dx: -10
3607
+ dx,
3608
+ dy
3581
3609
  },
3582
3610
  labelBackground: {
3583
3611
  visible: textBackgroundVisible,
@@ -3587,8 +3615,8 @@
3587
3615
  fill: textBackgroundColor,
3588
3616
  stroke: textBackgroundBorderColor,
3589
3617
  lineWidth: textBackgroundBorderWidth,
3590
- dy: textFontSize,
3591
- dx: -10
3618
+ dx,
3619
+ dy
3592
3620
  }
3593
3621
  }
3594
3622
  }
@@ -3604,10 +3632,11 @@
3604
3632
  return Array.isArray(r);
3605
3633
  }
3606
3634
  const annotationVerticalLine_annotationVerticalLine = (spec, context)=>{
3607
- const { advancedVSeed } = context;
3608
- const { annotation, datasetReshapeInfo } = advancedVSeed;
3635
+ const { advancedVSeed, vseed } = context;
3636
+ const { annotation, datasetReshapeInfo, config } = advancedVSeed;
3609
3637
  const { unfoldInfo, foldInfo } = datasetReshapeInfo[0];
3610
3638
  if (!annotation || !annotation.annotationVerticalLine) return spec;
3639
+ const theme = config?.[vseed.chartType]?.annotation?.annotationVerticalLine;
3611
3640
  const { annotationVerticalLine } = annotation;
3612
3641
  const annotationVerticalLineList = Array.isArray(annotationVerticalLine) ? annotationVerticalLine : [
3613
3642
  annotationVerticalLine
@@ -3621,7 +3650,7 @@
3621
3650
  insideEnd: 'insideEndTop'
3622
3651
  };
3623
3652
  const markLine = annotationVerticalLineList.flatMap((annotationVerticalLine)=>{
3624
- 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' } = annotationVerticalLine;
3653
+ const { selector: selectorPoint, xValue, text = '', textPosition = 'insideEnd', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = 'center', textBaseline = 'top', lineColor = theme?.lineColor ?? '#212121', lineStyle = theme?.lineStyle ?? 'dashed', lineVisible = theme?.lineStyle ?? true, lineWidth = theme?.lineWidth ?? 1, textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#212121', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#212121', textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundPadding = theme?.textBackgroundPadding ?? 2 } = annotationVerticalLine;
3625
3654
  const dataset = advancedVSeed.dataset.flat();
3626
3655
  const generateOneMarkLine = (x)=>({
3627
3656
  x: x,
@@ -3647,6 +3676,7 @@
3647
3676
  text: text,
3648
3677
  position: positionMap[textPosition || 'insideEnd'],
3649
3678
  style: {
3679
+ dx: 5,
3650
3680
  visible: true,
3651
3681
  stroke: textBackgroundColor,
3652
3682
  lineWidth: 1,
@@ -3654,23 +3684,33 @@
3654
3684
  textBaseline: textBaseline,
3655
3685
  fill: textColor,
3656
3686
  fontSize: textFontSize,
3657
- fontWeight: textFontWeight,
3658
- dy: textFontSize
3687
+ fontWeight: textFontWeight
3659
3688
  },
3660
3689
  labelBackground: {
3661
3690
  visible: textBackgroundVisible,
3662
3691
  padding: textBackgroundPadding,
3663
3692
  style: {
3664
- dy: textFontSize,
3665
- cornerRadius: textBackgroundBorderRadius ?? 4,
3693
+ dx: 5,
3694
+ cornerRadius: textBackgroundBorderRadius,
3666
3695
  fill: textBackgroundColor,
3696
+ fillOpacity: 1,
3667
3697
  stroke: textBackgroundBorderColor,
3668
3698
  lineWidth: textBackgroundBorderWidth
3669
3699
  }
3670
3700
  }
3671
3701
  },
3702
+ startSymbol: {
3703
+ visible: theme?.startSymbolVisible ?? true,
3704
+ symbolType: theme?.startSymbolType ?? 'triangleDown',
3705
+ size: 5 + (lineWidth || 1),
3706
+ style: {
3707
+ dy: -3,
3708
+ fill: lineColor
3709
+ }
3710
+ },
3672
3711
  endSymbol: {
3673
- visible: true,
3712
+ visible: theme?.endSymbolVisible ?? false,
3713
+ symbolType: theme?.endSymbolType ?? 'arrow',
3674
3714
  size: 10 + (lineWidth || 1),
3675
3715
  style: {
3676
3716
  dy: 4,
@@ -3702,10 +3742,11 @@
3702
3742
  };
3703
3743
  };
3704
3744
  const annotationHorizontalLine_annotationHorizontalLine = (spec, context)=>{
3705
- const { advancedVSeed } = context;
3706
- const { annotation, datasetReshapeInfo } = advancedVSeed;
3745
+ const { advancedVSeed, vseed } = context;
3746
+ const { annotation, datasetReshapeInfo, config } = advancedVSeed;
3707
3747
  const { foldInfo, unfoldInfo } = datasetReshapeInfo[0];
3708
3748
  if (!annotation || !annotation.annotationHorizontalLine) return spec;
3749
+ const theme = config?.[vseed.chartType]?.annotation?.annotationHorizontalLine;
3709
3750
  const { annotationHorizontalLine } = annotation;
3710
3751
  const annotationHorizontalLineList = Array.isArray(annotationHorizontalLine) ? annotationHorizontalLine : [
3711
3752
  annotationHorizontalLine
@@ -3719,7 +3760,7 @@
3719
3760
  insideEnd: 'insideEndTop'
3720
3761
  };
3721
3762
  const markLine = annotationHorizontalLineList.flatMap((annotationHorizontalLine)=>{
3722
- 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 } = annotationHorizontalLine;
3763
+ const { selector: selectorPoint, yValue, text = '', textPosition = 'insideEnd', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = 'right', textBaseline = 'bottom', lineColor = theme?.lineColor ?? '#212121', lineStyle = theme?.lineStyle ?? 'dashed', lineVisible = theme?.lineStyle ?? true, lineWidth = theme?.lineWidth ?? 1, textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#212121', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#212121', textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundPadding = theme?.textBackgroundPadding ?? 2 } = annotationHorizontalLine;
3723
3764
  const dataset = advancedVSeed.dataset.flat();
3724
3765
  const generateOneMarkLine = (y)=>({
3725
3766
  y,
@@ -3728,7 +3769,6 @@
3728
3769
  style: {
3729
3770
  visible: lineVisible,
3730
3771
  stroke: lineColor,
3731
- lineStyle: lineStyle,
3732
3772
  lineWidth: lineWidth,
3733
3773
  lineDash: 'dashed' === lineStyle ? [
3734
3774
  5,
@@ -3746,7 +3786,7 @@
3746
3786
  position: positionMap[textPosition || 'insideEnd'],
3747
3787
  style: {
3748
3788
  visible: true,
3749
- dy: textFontSize,
3789
+ dy: 4,
3750
3790
  stroke: textBackgroundColor,
3751
3791
  lineWidth: 1,
3752
3792
  textAlign: textAlign,
@@ -3759,16 +3799,27 @@
3759
3799
  visible: textBackgroundVisible,
3760
3800
  padding: textBackgroundPadding,
3761
3801
  style: {
3762
- dy: textFontSize,
3763
- cornerRadius: textBackgroundBorderRadius ?? 4,
3802
+ dy: 4,
3803
+ cornerRadius: textBackgroundBorderRadius,
3764
3804
  fill: textBackgroundColor,
3765
3805
  stroke: textBackgroundBorderColor,
3766
- lineWidth: textBackgroundBorderWidth
3806
+ lineWidth: textBackgroundBorderWidth,
3807
+ fillOpacity: 1
3767
3808
  }
3768
3809
  }
3769
3810
  },
3811
+ startSymbol: {
3812
+ visible: theme?.startSymbolVisible ?? true,
3813
+ symbolType: theme?.startSymbolType ?? 'triangleDown',
3814
+ size: 5,
3815
+ style: {
3816
+ dx: 0,
3817
+ fill: lineColor
3818
+ }
3819
+ },
3770
3820
  endSymbol: {
3771
- visible: true,
3821
+ visible: theme?.endSymbolVisible ?? false,
3822
+ symbolType: theme?.endSymbolType ?? 'arrow',
3772
3823
  size: 10 + (lineWidth || 1),
3773
3824
  style: {
3774
3825
  dx: -4,
@@ -3800,9 +3851,10 @@
3800
3851
  };
3801
3852
  };
3802
3853
  const annotationArea_annotationArea = (spec, context)=>{
3803
- const { advancedVSeed } = context;
3804
- const { annotation } = advancedVSeed;
3854
+ const { advancedVSeed, vseed } = context;
3855
+ const { annotation, config } = advancedVSeed;
3805
3856
  if (!annotation || !annotation.annotationArea) return spec;
3857
+ const theme = config?.[vseed.chartType]?.annotation?.annotationArea;
3806
3858
  const { annotationArea } = annotation;
3807
3859
  const annotationAreaList = Array.isArray(annotationArea) ? annotationArea : [
3808
3860
  annotationArea
@@ -3818,7 +3870,7 @@
3818
3870
  right: 'insideRight'
3819
3871
  };
3820
3872
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
3821
- 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 } = annotationArea;
3873
+ const { selector: selectorPoint, text = '', textPosition = 'top', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = 'center', textBaseline = 'top', textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#191d24', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#191d24', textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundPadding = theme?.textBackgroundPadding ?? 4, areaColor = theme?.areaColor ?? '#888888', areaColorOpacity = theme?.areaColorOpacity ?? 0.15, areaBorderColor = theme?.areaBorderColor ?? '#888888', areaBorderRadius = theme?.areaBorderRadius ?? 4, areaBorderWidth = theme?.areaBorderWidth ?? 1, outerPadding = theme?.outerPadding ?? 4 } = annotationArea;
3822
3874
  const dataset = advancedVSeed.dataset.flat();
3823
3875
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
3824
3876
  const labelPosition = positionMap[textPosition || 'top'];
@@ -4758,9 +4810,10 @@
4758
4810
  };
4759
4811
  };
4760
4812
  const annotationAreaBand = (spec, context)=>{
4761
- const { advancedVSeed } = context;
4762
- const { annotation } = advancedVSeed;
4813
+ const { advancedVSeed, vseed } = context;
4814
+ const { annotation, config } = advancedVSeed;
4763
4815
  if (!annotation || !annotation.annotationArea) return spec;
4816
+ const theme = config?.[vseed.chartType]?.annotation?.annotationArea;
4764
4817
  const { annotationArea } = annotation;
4765
4818
  const annotationAreaList = Array.isArray(annotationArea) ? annotationArea : [
4766
4819
  annotationArea
@@ -4776,7 +4829,7 @@
4776
4829
  right: 'insideRight'
4777
4830
  };
4778
4831
  const markArea = annotationAreaList.flatMap((annotationArea)=>{
4779
- 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 } = annotationArea;
4832
+ const { selector: selectorPoint, text = '', textPosition = 'top', textColor = theme?.textColor ?? '#ffffff', textFontSize = theme?.textFontSize ?? 12, textFontWeight = theme?.textFontWeight ?? 400, textAlign = 'center', textBaseline = 'top', textBackgroundVisible = theme?.textBackgroundVisible ?? true, textBackgroundColor = theme?.textBackgroundColor ?? '#191d24', textBackgroundBorderColor = theme?.textBackgroundBorderColor ?? '#191d24', textBackgroundBorderWidth = theme?.textBackgroundBorderWidth ?? 1, textBackgroundBorderRadius = theme?.textBackgroundBorderRadius ?? 4, textBackgroundPadding = theme?.textBackgroundPadding ?? 4, areaColor = theme?.areaColor ?? '#888888', areaColorOpacity = theme?.areaColorOpacity ?? 0.15, areaBorderColor = theme?.areaBorderColor ?? '#888888', areaBorderRadius = theme?.areaBorderRadius ?? 4, areaBorderWidth = theme?.areaBorderWidth ?? 1, outerPadding = theme?.outerPadding ?? 4 } = annotationArea;
4780
4833
  const dy = textPosition?.includes('bottom') ? -1 * textFontSize : textFontSize;
4781
4834
  const dataset = advancedVSeed.dataset.flat();
4782
4835
  const selectedData = selectorPoint ? dataset.filter((datum)=>selector_selector(datum, selectorPoint)) : [];
@@ -5434,7 +5487,8 @@
5434
5487
  visible: grid?.visible,
5435
5488
  style: {
5436
5489
  lineWidth: grid?.gridWidth,
5437
- stroke: grid?.gridColor
5490
+ stroke: grid?.gridColor,
5491
+ lineDash: grid?.gridLineDash
5438
5492
  }
5439
5493
  },
5440
5494
  domainLine: {
@@ -5514,7 +5568,8 @@
5514
5568
  visible: grid?.visible,
5515
5569
  style: {
5516
5570
  lineWidth: grid?.gridWidth,
5517
- stroke: grid?.gridColor
5571
+ stroke: grid?.gridColor,
5572
+ lineDash: grid?.gridLineDash
5518
5573
  }
5519
5574
  },
5520
5575
  domainLine: {
@@ -6637,7 +6692,7 @@
6637
6692
  lineWidth: 1,
6638
6693
  opacity: 1,
6639
6694
  stroke: lineColor,
6640
- lineDash: [
6695
+ lineDash: config.lineDash ?? [
6641
6696
  4,
6642
6697
  2
6643
6698
  ]
@@ -7488,7 +7543,8 @@
7488
7543
  visible: grid?.visible,
7489
7544
  style: {
7490
7545
  lineWidth: grid?.gridWidth,
7491
- stroke: grid?.gridColor
7546
+ stroke: grid?.gridColor,
7547
+ lineDash: grid?.gridLineDash
7492
7548
  }
7493
7549
  },
7494
7550
  domainLine: {
@@ -7580,7 +7636,8 @@
7580
7636
  visible: onlySecondary ? true : grid?.visible,
7581
7637
  style: {
7582
7638
  lineWidth: grid?.gridWidth,
7583
- stroke: grid?.gridColor
7639
+ stroke: grid?.gridColor,
7640
+ lineDash: grid?.gridLineDash
7584
7641
  }
7585
7642
  },
7586
7643
  domainLine: {
@@ -7849,29 +7906,27 @@
7849
7906
  return result;
7850
7907
  };
7851
7908
  const pieStyle = (spec, context)=>{
7852
- const { advancedVSeed } = context;
7909
+ const { advancedVSeed, vseed } = context;
7910
+ const { chartType } = vseed;
7853
7911
  const { dataset } = advancedVSeed;
7854
7912
  const showStroke = dataset.length <= 30;
7913
+ const config = advancedVSeed.config?.[chartType];
7855
7914
  const result = {
7856
7915
  ...spec,
7857
- pie: {
7858
- style: {}
7859
- }
7860
- };
7861
- return {
7862
- ...result,
7863
7916
  pie: {
7864
7917
  style: {
7865
- stroke: '#ffffff',
7918
+ stroke: config?.backgroundColor ?? '#ffffff',
7866
7919
  lineWidth: showStroke ? 1 : 0
7867
- },
7868
- state: {
7869
- hover: {
7870
- outerRadius: 1.1 * result.outerRadius
7871
- }
7872
7920
  }
7873
7921
  }
7874
7922
  };
7923
+ if (spec.outerRadius) result.pie.state = {
7924
+ hover: {
7925
+ outerRadius: 1.1 * spec.outerRadius
7926
+ }
7927
+ };
7928
+ if (config?.cornerRadius) result.pie.style.cornerRadius = config.cornerRadius;
7929
+ return result;
7875
7930
  };
7876
7931
  const labelPie = (spec, context)=>{
7877
7932
  const result = {
@@ -9097,9 +9152,9 @@
9097
9152
  const getDarkCrosshairLine = ()=>({
9098
9153
  visible: true,
9099
9154
  labelVisible: true,
9100
- labelColor: '#4B4F54',
9101
- labelBackgroundColor: '#ffffff',
9102
- lineColor: '#E2E3E6'
9155
+ labelColor: '#ffffff',
9156
+ labelBackgroundColor: '#404349',
9157
+ lineColor: '#55595F'
9103
9158
  });
9104
9159
  const getDarkCrosshairRect = ()=>({
9105
9160
  visible: true,
@@ -9112,8 +9167,8 @@
9112
9167
  visible: true,
9113
9168
  labelVisible: true,
9114
9169
  labelColor: '#ffffff',
9115
- labelBackgroundColor: '#364159',
9116
- lineColor: '#3641594d'
9170
+ labelBackgroundColor: '##21252C',
9171
+ lineColor: '#000000'
9117
9172
  });
9118
9173
  const getLightCrosshairRect = ()=>({
9119
9174
  visible: true,
@@ -9377,6 +9432,108 @@
9377
9432
  lineWidth: 1
9378
9433
  }
9379
9434
  });
9435
+ const getLightAnnotationPoint = ()=>({
9436
+ textColor: '#ffffff',
9437
+ textBackgroundVisible: true,
9438
+ textBackgroundColor: '#364159',
9439
+ textBackgroundBorderColor: '#3641594d',
9440
+ textFontSize: 12,
9441
+ textFontWeight: 400,
9442
+ textBackgroundBorderRadius: 4,
9443
+ textBackgroundBorderWidth: 1,
9444
+ textBackgroundPadding: 2
9445
+ });
9446
+ const getLightAnnotationHorizontalLine = ()=>({
9447
+ lineColor: '#BCC1CB',
9448
+ lineWidth: 1,
9449
+ lineStyle: 'solid',
9450
+ lineVisible: true,
9451
+ textColor: '#ffffff',
9452
+ textFontSize: 12,
9453
+ textFontWeight: 400,
9454
+ startSymbolVisible: true,
9455
+ endSymbolVisible: false,
9456
+ textBackgroundVisible: true,
9457
+ textBackgroundColor: '#BCC1CB',
9458
+ textBackgroundBorderColor: '#BCC1CB',
9459
+ textBackgroundBorderWidth: 1,
9460
+ textBackgroundBorderRadius: 0,
9461
+ textBackgroundPadding: 2
9462
+ });
9463
+ const getLightAnnotationVerticalLine = ()=>getLightAnnotationHorizontalLine();
9464
+ const getLightAnnotationArea = ()=>({
9465
+ textColor: '#ffffff',
9466
+ textFontSize: 12,
9467
+ textFontWeight: 400,
9468
+ textBackgroundVisible: true,
9469
+ textBackgroundColor: '#364159',
9470
+ textBackgroundBorderColor: '#3641594d',
9471
+ textBackgroundBorderWidth: 1,
9472
+ textBackgroundBorderRadius: 4,
9473
+ textBackgroundPadding: 4,
9474
+ areaColor: '#364159',
9475
+ areaColorOpacity: 0.15,
9476
+ areaBorderColor: '#364159',
9477
+ areaBorderWidth: 1,
9478
+ areaBorderRadius: 4,
9479
+ outerPadding: 4
9480
+ });
9481
+ const getLightAnnotation = ()=>({
9482
+ annotationPoint: getLightAnnotationPoint(),
9483
+ annotationHorizontalLine: getLightAnnotationHorizontalLine(),
9484
+ annotationVerticalLine: getLightAnnotationVerticalLine(),
9485
+ annotationArea: getLightAnnotationArea()
9486
+ });
9487
+ const getDarkAnnotationPoint = ()=>({
9488
+ textColor: '#4B4F54',
9489
+ textBackgroundVisible: true,
9490
+ textBackgroundColor: '#ffffff',
9491
+ textBackgroundBorderColor: '#ffffff',
9492
+ textFontSize: 12,
9493
+ textFontWeight: 400,
9494
+ textBackgroundBorderRadius: 4,
9495
+ textBackgroundBorderWidth: 1,
9496
+ textBackgroundPadding: 2
9497
+ });
9498
+ const getDarkAnnotationHorizontalLine = ()=>({
9499
+ lineColor: '#55595F',
9500
+ lineWidth: 1,
9501
+ lineStyle: 'solid',
9502
+ lineVisible: true,
9503
+ textFontSize: 12,
9504
+ textFontWeight: 400,
9505
+ textBackgroundVisible: true,
9506
+ textColor: '#E2E3E6',
9507
+ textBackgroundColor: '#55595F',
9508
+ textBackgroundBorderColor: '#55595F',
9509
+ textBackgroundBorderWidth: 1,
9510
+ textBackgroundBorderRadius: 0,
9511
+ textBackgroundPadding: 2
9512
+ });
9513
+ const getDarkAnnotationVerticalLine = ()=>getDarkAnnotationHorizontalLine();
9514
+ const getDarkAnnotationArea = ()=>({
9515
+ textColor: '#4B4F54',
9516
+ textFontSize: 12,
9517
+ textFontWeight: 400,
9518
+ textBackgroundVisible: true,
9519
+ textBackgroundColor: '#ffffff',
9520
+ textBackgroundBorderColor: '#ffffff',
9521
+ textBackgroundBorderWidth: 1,
9522
+ textBackgroundBorderRadius: 4,
9523
+ textBackgroundPadding: 4,
9524
+ areaColor: '#E2E3E6',
9525
+ areaColorOpacity: 0.15,
9526
+ areaBorderColor: '#E2E3E6',
9527
+ areaBorderWidth: 1,
9528
+ areaBorderRadius: 4,
9529
+ outerPadding: 4
9530
+ });
9531
+ const getDarkAnnotation = ()=>({
9532
+ annotationPoint: getDarkAnnotationPoint(),
9533
+ annotationHorizontalLine: getDarkAnnotationHorizontalLine(),
9534
+ annotationVerticalLine: getDarkAnnotationVerticalLine(),
9535
+ annotationArea: getDarkAnnotationArea()
9536
+ });
9380
9537
  const lightTheme = ()=>{
9381
9538
  const linearAxis = getLightLinearAxis();
9382
9539
  const bandAxis = getLightBandAxis();
@@ -9412,7 +9569,8 @@
9412
9569
  xAxis: bandAxis,
9413
9570
  yAxis: linearAxis,
9414
9571
  crosshairLine,
9415
- pivotGrid: getLightPivotChartGridConfig()
9572
+ pivotGrid: getLightPivotChartGridConfig(),
9573
+ annotation: getLightAnnotation()
9416
9574
  },
9417
9575
  column: {
9418
9576
  ...baseConfig,
@@ -9425,7 +9583,8 @@
9425
9583
  0,
9426
9584
  0
9427
9585
  ],
9428
- pivotGrid: getLightPivotChartGridConfig()
9586
+ pivotGrid: getLightPivotChartGridConfig(),
9587
+ annotation: getLightAnnotation()
9429
9588
  },
9430
9589
  columnParallel: {
9431
9590
  ...baseConfig,
@@ -9438,7 +9597,8 @@
9438
9597
  0,
9439
9598
  0
9440
9599
  ],
9441
- pivotGrid: getLightPivotChartGridConfig()
9600
+ pivotGrid: getLightPivotChartGridConfig(),
9601
+ annotation: getLightAnnotation()
9442
9602
  },
9443
9603
  columnPercent: {
9444
9604
  ...baseConfig,
@@ -9453,7 +9613,8 @@
9453
9613
  0,
9454
9614
  0
9455
9615
  ],
9456
- pivotGrid: getLightPivotChartGridConfig()
9616
+ pivotGrid: getLightPivotChartGridConfig(),
9617
+ annotation: getLightAnnotation()
9457
9618
  },
9458
9619
  bar: {
9459
9620
  ...baseConfig,
@@ -9466,7 +9627,8 @@
9466
9627
  4,
9467
9628
  0
9468
9629
  ],
9469
- pivotGrid: getLightPivotChartGridConfig()
9630
+ pivotGrid: getLightPivotChartGridConfig(),
9631
+ annotation: getLightAnnotation()
9470
9632
  },
9471
9633
  barParallel: {
9472
9634
  ...baseConfig,
@@ -9479,7 +9641,8 @@
9479
9641
  4,
9480
9642
  0
9481
9643
  ],
9482
- pivotGrid: getLightPivotChartGridConfig()
9644
+ pivotGrid: getLightPivotChartGridConfig(),
9645
+ annotation: getLightAnnotation()
9483
9646
  },
9484
9647
  barPercent: {
9485
9648
  ...baseConfig,
@@ -9494,14 +9657,16 @@
9494
9657
  4,
9495
9658
  0
9496
9659
  ],
9497
- pivotGrid: getLightPivotChartGridConfig()
9660
+ pivotGrid: getLightPivotChartGridConfig(),
9661
+ annotation: getLightAnnotation()
9498
9662
  },
9499
9663
  area: {
9500
9664
  ...baseConfig,
9501
9665
  xAxis: bandAxis,
9502
9666
  yAxis: linearAxis,
9503
9667
  crosshairLine,
9504
- pivotGrid: getLightPivotChartGridConfig()
9668
+ pivotGrid: getLightPivotChartGridConfig(),
9669
+ annotation: getLightAnnotation()
9505
9670
  },
9506
9671
  areaPercent: {
9507
9672
  ...baseConfig,
@@ -9510,7 +9675,8 @@
9510
9675
  ...linearAxis
9511
9676
  },
9512
9677
  crosshairLine,
9513
- pivotGrid: getLightPivotChartGridConfig()
9678
+ pivotGrid: getLightPivotChartGridConfig(),
9679
+ annotation: getLightAnnotation()
9514
9680
  },
9515
9681
  scatter: {
9516
9682
  ...baseConfig,
@@ -9538,7 +9704,8 @@
9538
9704
  showValue: false,
9539
9705
  showValuePercent: false
9540
9706
  },
9541
- pivotGrid: getLightPivotChartGridConfig()
9707
+ pivotGrid: getLightPivotChartGridConfig(),
9708
+ annotation: getLightAnnotation()
9542
9709
  },
9543
9710
  dualAxis: {
9544
9711
  ...baseConfig,
@@ -9555,7 +9722,8 @@
9555
9722
  secondary: 'line'
9556
9723
  },
9557
9724
  crosshairRect,
9558
- pivotGrid: getLightPivotChartGridConfig()
9725
+ pivotGrid: getLightPivotChartGridConfig(),
9726
+ annotation: getLightAnnotation()
9559
9727
  },
9560
9728
  pie: {
9561
9729
  ...baseConfig,
@@ -9649,7 +9817,8 @@
9649
9817
  xAxis: bandAxis,
9650
9818
  yAxis: linearAxis,
9651
9819
  crosshairLine: crosshairLine,
9652
- pivotGrid: getDarkPivotChartGridConfig()
9820
+ pivotGrid: getDarkPivotChartGridConfig(),
9821
+ annotation: getDarkAnnotation()
9653
9822
  },
9654
9823
  column: {
9655
9824
  ...baseConfig,
@@ -9662,7 +9831,8 @@
9662
9831
  0,
9663
9832
  0
9664
9833
  ],
9665
- pivotGrid: getDarkPivotChartGridConfig()
9834
+ pivotGrid: getDarkPivotChartGridConfig(),
9835
+ annotation: getDarkAnnotation()
9666
9836
  },
9667
9837
  columnParallel: {
9668
9838
  ...baseConfig,
@@ -9675,7 +9845,8 @@
9675
9845
  0,
9676
9846
  0
9677
9847
  ],
9678
- pivotGrid: getDarkPivotChartGridConfig()
9848
+ pivotGrid: getDarkPivotChartGridConfig(),
9849
+ annotation: getDarkAnnotation()
9679
9850
  },
9680
9851
  columnPercent: {
9681
9852
  ...baseConfig,
@@ -9688,7 +9859,8 @@
9688
9859
  0,
9689
9860
  0
9690
9861
  ],
9691
- pivotGrid: getDarkPivotChartGridConfig()
9862
+ pivotGrid: getDarkPivotChartGridConfig(),
9863
+ annotation: getDarkAnnotation()
9692
9864
  },
9693
9865
  bar: {
9694
9866
  ...baseConfig,
@@ -9701,7 +9873,8 @@
9701
9873
  4,
9702
9874
  0
9703
9875
  ],
9704
- pivotGrid: getDarkPivotChartGridConfig()
9876
+ pivotGrid: getDarkPivotChartGridConfig(),
9877
+ annotation: getDarkAnnotation()
9705
9878
  },
9706
9879
  barParallel: {
9707
9880
  ...baseConfig,
@@ -9714,7 +9887,8 @@
9714
9887
  4,
9715
9888
  0
9716
9889
  ],
9717
- pivotGrid: getDarkPivotChartGridConfig()
9890
+ pivotGrid: getDarkPivotChartGridConfig(),
9891
+ annotation: getDarkAnnotation()
9718
9892
  },
9719
9893
  barPercent: {
9720
9894
  ...baseConfig,
@@ -9727,21 +9901,24 @@
9727
9901
  4,
9728
9902
  0
9729
9903
  ],
9730
- pivotGrid: getDarkPivotChartGridConfig()
9904
+ pivotGrid: getDarkPivotChartGridConfig(),
9905
+ annotation: getDarkAnnotation()
9731
9906
  },
9732
9907
  area: {
9733
9908
  ...baseConfig,
9734
9909
  xAxis: bandAxis,
9735
9910
  yAxis: linearAxis,
9736
9911
  crosshairLine: crosshairLine,
9737
- pivotGrid: getDarkPivotChartGridConfig()
9912
+ pivotGrid: getDarkPivotChartGridConfig(),
9913
+ annotation: getDarkAnnotation()
9738
9914
  },
9739
9915
  areaPercent: {
9740
9916
  ...baseConfig,
9741
9917
  xAxis: bandAxis,
9742
9918
  yAxis: linearAxis,
9743
9919
  crosshairLine: crosshairLine,
9744
- pivotGrid: getDarkPivotChartGridConfig()
9920
+ pivotGrid: getDarkPivotChartGridConfig(),
9921
+ annotation: getDarkAnnotation()
9745
9922
  },
9746
9923
  scatter: {
9747
9924
  ...baseConfig,
@@ -9769,7 +9946,8 @@
9769
9946
  showValue: false,
9770
9947
  showValuePercent: false
9771
9948
  },
9772
- pivotGrid: getDarkPivotChartGridConfig()
9949
+ pivotGrid: getDarkPivotChartGridConfig(),
9950
+ annotation: getDarkAnnotation()
9773
9951
  },
9774
9952
  dualAxis: {
9775
9953
  ...baseConfig,
@@ -9786,7 +9964,8 @@
9786
9964
  secondary: 'line'
9787
9965
  },
9788
9966
  crosshairRect,
9789
- pivotGrid: getDarkPivotChartGridConfig()
9967
+ pivotGrid: getDarkPivotChartGridConfig(),
9968
+ annotation: getDarkAnnotation()
9790
9969
  },
9791
9970
  pie: {
9792
9971
  ...baseConfig,
@@ -13469,7 +13648,8 @@
13469
13648
  grid: schemas_object({
13470
13649
  visible: schemas_boolean().default(false).nullish(),
13471
13650
  gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').nullish(),
13472
- gridWidth: schemas_number().default(0.5).nullish()
13651
+ gridWidth: schemas_number().default(0.5).nullish(),
13652
+ gridLineDash: schemas_array(schemas_number()).nullish()
13473
13653
  }).nullish()
13474
13654
  });
13475
13655
  const zYBandAxis = zXBandAxis;
@@ -13511,7 +13691,8 @@
13511
13691
  grid: schemas_object({
13512
13692
  visible: schemas_boolean().default(false).nullish(),
13513
13693
  gridColor: schemas_string().default('rgba(54, 65, 89, 0.15)').nullish(),
13514
- gridWidth: schemas_number().default(0.5).nullish()
13694
+ gridWidth: schemas_number().default(0.5).nullish(),
13695
+ gridLineDash: schemas_array(schemas_number()).nullish()
13515
13696
  }).nullish()
13516
13697
  });
13517
13698
  const zYLinearAxis = zXLinearAxis;
@@ -13520,7 +13701,8 @@
13520
13701
  lineColor: schemas_string().nullish(),
13521
13702
  labelColor: schemas_string().nullish(),
13522
13703
  labelVisible: schemas_boolean().nullish(),
13523
- labelBackgroundColor: schemas_string().nullish()
13704
+ labelBackgroundColor: schemas_string().nullish(),
13705
+ lineDash: schemas_array(schemas_number()).nullish()
13524
13706
  });
13525
13707
  const zCrosshairRect = schemas_object({
13526
13708
  visible: schemas_boolean().nullish(),
@@ -13649,6 +13831,231 @@
13649
13831
  const zTooltip = schemas_object({
13650
13832
  enable: schemas_boolean().default(true).nullish()
13651
13833
  });
13834
+ const zSelector = union([
13835
+ schemas_string(),
13836
+ schemas_number(),
13837
+ schemas_object({
13838
+ field: schemas_string(),
13839
+ operator: schemas_enum([
13840
+ '=',
13841
+ '==',
13842
+ '!=',
13843
+ '>',
13844
+ '<',
13845
+ '>=',
13846
+ '<=',
13847
+ 'between'
13848
+ ]).nullish(),
13849
+ op: schemas_enum([
13850
+ '=',
13851
+ '==',
13852
+ '!=',
13853
+ '>',
13854
+ '<',
13855
+ '>=',
13856
+ '<=',
13857
+ 'between'
13858
+ ]).nullish(),
13859
+ value: union([
13860
+ schemas_string(),
13861
+ schemas_number(),
13862
+ schemas_array(union([
13863
+ schemas_string(),
13864
+ schemas_number()
13865
+ ]))
13866
+ ])
13867
+ }),
13868
+ schemas_object({
13869
+ field: schemas_string(),
13870
+ operator: schemas_enum([
13871
+ 'in',
13872
+ 'not in'
13873
+ ]).nullish(),
13874
+ op: schemas_enum([
13875
+ 'in',
13876
+ 'not in'
13877
+ ]).nullish(),
13878
+ value: union([
13879
+ schemas_string(),
13880
+ schemas_number(),
13881
+ schemas_array(union([
13882
+ schemas_string(),
13883
+ schemas_number()
13884
+ ]))
13885
+ ])
13886
+ })
13887
+ ]);
13888
+ const zSelectors = schemas_array(zSelector);
13889
+ const zAnnotationPoint = schemas_object({
13890
+ selector: union([
13891
+ zSelector,
13892
+ zSelectors
13893
+ ]).nullish(),
13894
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
13895
+ textColor: schemas_string().default('#ffffff').nullish(),
13896
+ textFontSize: schemas_number().default(12).nullish(),
13897
+ textFontWeight: schemas_number().default(400).nullish(),
13898
+ textAlign: schemas_enum([
13899
+ 'left',
13900
+ 'right',
13901
+ 'center'
13902
+ ]).default('center').nullish(),
13903
+ textBaseline: schemas_enum([
13904
+ 'top',
13905
+ 'middle',
13906
+ 'bottom'
13907
+ ]).default('middle').nullish(),
13908
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
13909
+ textBackgroundColor: schemas_string().default('#212121').nullish(),
13910
+ textBackgroundBorderColor: schemas_string().nullish(),
13911
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
13912
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
13913
+ textBackgroundPadding: schemas_number().nullish(),
13914
+ offsetY: schemas_number().default(0).nullish(),
13915
+ offsetX: schemas_number().default(0).nullish()
13916
+ });
13917
+ const zAnnotationHorizontalLine = schemas_object({
13918
+ selector: union([
13919
+ zSelector,
13920
+ zSelectors
13921
+ ]).nullish(),
13922
+ yValue: union([
13923
+ schemas_number(),
13924
+ schemas_string(),
13925
+ schemas_array(union([
13926
+ schemas_number(),
13927
+ schemas_string()
13928
+ ]))
13929
+ ]).nullish(),
13930
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
13931
+ textPosition: schemas_enum([
13932
+ 'outsideStart',
13933
+ 'outsideEnd',
13934
+ 'outsideMiddle',
13935
+ 'insideStart',
13936
+ 'insideMiddle',
13937
+ 'insideEnd'
13938
+ ]).default('insideEnd').nullish(),
13939
+ textColor: schemas_string().default('#ffffff').nullish(),
13940
+ textFontSize: schemas_number().default(12).nullish(),
13941
+ textFontWeight: schemas_number().default(400).nullish(),
13942
+ textAlign: schemas_enum([
13943
+ 'left',
13944
+ 'right',
13945
+ 'center'
13946
+ ]).default('right').nullish(),
13947
+ textBaseline: schemas_enum([
13948
+ 'top',
13949
+ 'middle',
13950
+ 'bottom'
13951
+ ]).default('top').nullish(),
13952
+ lineVisible: schemas_boolean().default(true).nullish(),
13953
+ lineColor: schemas_string().default('#212121').nullish(),
13954
+ lineWidth: schemas_number().default(1).nullish(),
13955
+ lineStyle: union([
13956
+ literal('solid'),
13957
+ literal('dashed'),
13958
+ literal('dotted')
13959
+ ]).default('dashed').nullish(),
13960
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
13961
+ textBackgroundColor: schemas_string().default('#212121').nullish(),
13962
+ textBackgroundBorderColor: schemas_string().default('#212121').nullish(),
13963
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
13964
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
13965
+ textBackgroundPadding: schemas_number().default(2).nullish()
13966
+ });
13967
+ const zAnnotationArea = schemas_object({
13968
+ selector: union([
13969
+ zSelector,
13970
+ zSelectors
13971
+ ]).nullish(),
13972
+ textPosition: schemas_enum([
13973
+ 'top',
13974
+ 'topRight',
13975
+ 'topLeft',
13976
+ 'bottom',
13977
+ 'bottomLeft',
13978
+ 'bottomRight',
13979
+ 'left',
13980
+ 'right'
13981
+ ]).default('top').nullish(),
13982
+ text: schemas_string().or(schemas_array(schemas_string())).nullish(),
13983
+ textColor: schemas_string().default('#ffffff').nullish(),
13984
+ textFontSize: schemas_number().default(12).nullish(),
13985
+ textFontWeight: schemas_number().default(400).nullish(),
13986
+ textAlign: schemas_enum([
13987
+ 'left',
13988
+ 'right',
13989
+ 'center'
13990
+ ]).default('center').nullish(),
13991
+ textBaseline: schemas_enum([
13992
+ 'top',
13993
+ 'middle',
13994
+ 'bottom'
13995
+ ]).default('top').nullish(),
13996
+ textBackgroundVisible: schemas_boolean().default(true).nullish(),
13997
+ textBackgroundColor: schemas_string().default('#191d24').nullish(),
13998
+ textBackgroundBorderColor: schemas_string().default('#191d24').nullish(),
13999
+ textBackgroundBorderWidth: schemas_number().default(1).nullish(),
14000
+ textBackgroundBorderRadius: schemas_number().default(4).nullish(),
14001
+ textBackgroundPadding: schemas_number().default(4).nullish(),
14002
+ areaColor: schemas_string().default('#888888').nullish(),
14003
+ areaColorOpacity: schemas_number().default(0.15).nullish(),
14004
+ areaBorderColor: schemas_string().default('#888888').nullish(),
14005
+ areaBorderWidth: schemas_number().default(1).nullish(),
14006
+ areaBorderRadius: schemas_number().default(4).nullish(),
14007
+ outerPadding: schemas_number().default(4).nullish()
14008
+ });
14009
+ const zAnnotationPointConfig = zAnnotationPoint.omit({
14010
+ selector: true,
14011
+ text: true
14012
+ }).partial();
14013
+ const zAnnotationHorizontalLineConfig = zAnnotationHorizontalLine.pick({
14014
+ lineColor: true,
14015
+ lineWidth: true,
14016
+ lineVisible: true,
14017
+ lineStyle: true,
14018
+ textBackgroundVisible: true,
14019
+ textColor: true,
14020
+ textFontSize: true,
14021
+ textFontWeight: true,
14022
+ textBackgroundColor: true,
14023
+ textBackgroundBorderColor: true,
14024
+ textBackgroundBorderWidth: true,
14025
+ textBackgroundBorderRadius: true,
14026
+ textBackgroundPadding: true
14027
+ }).extend({
14028
+ endSymbolVisible: schemas_boolean().nullish(),
14029
+ endSymbolType: schemas_string().nullish(),
14030
+ endSymbolSize: schemas_number().nullish(),
14031
+ startSymbolVisible: schemas_boolean().nullish(),
14032
+ startSymbolType: schemas_string().nullish(),
14033
+ startSymbolSize: schemas_number().nullish()
14034
+ }).partial();
14035
+ const zAnnotationVerticalLineConfig = zAnnotationHorizontalLineConfig.clone();
14036
+ const zAnnotationAreaConfig = zAnnotationArea.pick({
14037
+ textColor: true,
14038
+ textFontSize: true,
14039
+ textFontWeight: true,
14040
+ textBackgroundVisible: true,
14041
+ textBackgroundColor: true,
14042
+ textBackgroundBorderColor: true,
14043
+ textBackgroundBorderWidth: true,
14044
+ textBackgroundBorderRadius: true,
14045
+ textBackgroundPadding: true,
14046
+ areaColor: true,
14047
+ areaColorOpacity: true,
14048
+ areaBorderColor: true,
14049
+ areaBorderWidth: true,
14050
+ areaBorderRadius: true,
14051
+ outerPadding: true
14052
+ }).partial();
14053
+ const zAnnotaionConfig = schemas_object({
14054
+ annotationPoint: zAnnotationPointConfig.nullish(),
14055
+ annotationHorizontalLine: zAnnotationHorizontalLineConfig.nullish(),
14056
+ annotationVerticalLine: zAnnotationVerticalLineConfig.nullish(),
14057
+ annotationArea: zAnnotationAreaConfig.nullish()
14058
+ });
13652
14059
  const zTableConfig = schemas_object({
13653
14060
  backgroundColor: zBackgroundColor.nullish(),
13654
14061
  borderColor: schemas_string().nullish(),
@@ -13683,7 +14090,8 @@
13683
14090
  xAxis: zXBandAxis.nullish(),
13684
14091
  yAxis: zYLinearAxis.nullish(),
13685
14092
  crosshairLine: zCrosshairLine.nullish(),
13686
- pivotGrid: zPivotChartGridConfig.nullish()
14093
+ pivotGrid: zPivotChartGridConfig.nullish(),
14094
+ annotation: zAnnotaionConfig.nullish()
13687
14095
  });
13688
14096
  const zColumnConfig = schemas_object({
13689
14097
  backgroundColor: zBackgroundColor.nullish(),
@@ -13695,7 +14103,8 @@
13695
14103
  yAxis: zYLinearAxis.nullish(),
13696
14104
  crosshairRect: zCrosshairRect.nullish(),
13697
14105
  stackCornerRadius: zStackCornerRadius.nullish(),
13698
- pivotGrid: zPivotChartGridConfig.nullish()
14106
+ pivotGrid: zPivotChartGridConfig.nullish(),
14107
+ annotation: zAnnotaionConfig.nullish()
13699
14108
  });
13700
14109
  const zColumnParallelConfig = zColumnConfig;
13701
14110
  const zColumnPercentConfig = zColumnConfig;
@@ -13709,7 +14118,8 @@
13709
14118
  yAxis: zYBandAxis.nullish(),
13710
14119
  crosshairRect: zCrosshairRect.nullish(),
13711
14120
  stackCornerRadius: zStackCornerRadius.nullish(),
13712
- pivotGrid: zPivotChartGridConfig.nullish()
14121
+ pivotGrid: zPivotChartGridConfig.nullish(),
14122
+ annotation: zAnnotaionConfig.nullish()
13713
14123
  });
13714
14124
  const zBarParallelConfig = zBarConfig;
13715
14125
  const zBarPercentConfig = zBarConfig;
@@ -13722,7 +14132,8 @@
13722
14132
  xAxis: zXBandAxis.nullish(),
13723
14133
  yAxis: zYLinearAxis.nullish(),
13724
14134
  crosshairLine: zCrosshairLine.nullish(),
13725
- pivotGrid: zPivotChartGridConfig.nullish()
14135
+ pivotGrid: zPivotChartGridConfig.nullish(),
14136
+ annotation: zAnnotaionConfig.nullish()
13726
14137
  });
13727
14138
  const zAreaPercentConfig = zAreaConfig;
13728
14139
  const zDualAxisConfig = schemas_object({
@@ -13737,7 +14148,8 @@
13737
14148
  secondaryYAxis: schemas_array(zYLinearAxis).or(zYLinearAxis).nullish(),
13738
14149
  xAxis: zXBandAxis.nullish(),
13739
14150
  crosshairRect: zCrosshairRect.nullish(),
13740
- pivotGrid: zPivotChartGridConfig.nullish()
14151
+ pivotGrid: zPivotChartGridConfig.nullish(),
14152
+ annotation: zAnnotaionConfig.nullish()
13741
14153
  });
13742
14154
  const zScatterConfig = schemas_object({
13743
14155
  backgroundColor: zBackgroundColor.nullish(),
@@ -13750,7 +14162,8 @@
13750
14162
  crosshairLine: zCrosshairLine.nullish(),
13751
14163
  size: schemas_number().or(schemas_array(schemas_number())).nullish(),
13752
14164
  sizeRange: schemas_number().or(schemas_array(schemas_number())).nullish(),
13753
- pivotGrid: zPivotChartGridConfig.nullish()
14165
+ pivotGrid: zPivotChartGridConfig.nullish(),
14166
+ annotation: zAnnotaionConfig.nullish()
13754
14167
  });
13755
14168
  const zRoseConfig = schemas_object({
13756
14169
  backgroundColor: zBackgroundColor.nullish(),
@@ -13767,7 +14180,8 @@
13767
14180
  color: zColor.nullish(),
13768
14181
  tooltip: zTooltip.nullish(),
13769
14182
  legend: zLegend.nullish(),
13770
- pivotGrid: zPivotChartGridConfig.nullish()
14183
+ pivotGrid: zPivotChartGridConfig.nullish(),
14184
+ cornerRadius: schemas_number().nullish()
13771
14185
  });
13772
14186
  const zDonutConfig = zPieConfig;
13773
14187
  const zRadarConfig = zPieConfig;
@@ -13800,61 +14214,6 @@
13800
14214
  });
13801
14215
  const zCustomTheme = record(schemas_string(), zCustomThemeConfig).nullish();
13802
14216
  const zTheme = schemas_string();
13803
- const zSelector = union([
13804
- schemas_string(),
13805
- schemas_number(),
13806
- schemas_object({
13807
- field: schemas_string(),
13808
- operator: schemas_enum([
13809
- '=',
13810
- '==',
13811
- '!=',
13812
- '>',
13813
- '<',
13814
- '>=',
13815
- '<=',
13816
- 'between'
13817
- ]).nullish(),
13818
- op: schemas_enum([
13819
- '=',
13820
- '==',
13821
- '!=',
13822
- '>',
13823
- '<',
13824
- '>=',
13825
- '<=',
13826
- 'between'
13827
- ]).nullish(),
13828
- value: union([
13829
- schemas_string(),
13830
- schemas_number(),
13831
- schemas_array(union([
13832
- schemas_string(),
13833
- schemas_number()
13834
- ]))
13835
- ])
13836
- }),
13837
- schemas_object({
13838
- field: schemas_string(),
13839
- operator: schemas_enum([
13840
- 'in',
13841
- 'not in'
13842
- ]).nullish(),
13843
- op: schemas_enum([
13844
- 'in',
13845
- 'not in'
13846
- ]).nullish(),
13847
- value: union([
13848
- schemas_string(),
13849
- schemas_number(),
13850
- schemas_array(union([
13851
- schemas_string(),
13852
- schemas_number()
13853
- ]))
13854
- ])
13855
- })
13856
- ]);
13857
- const zSelectors = schemas_array(zSelector);
13858
14217
  const zBarStyle = schemas_object({
13859
14218
  selector: union([
13860
14219
  zSelector,
@@ -13927,34 +14286,6 @@
13927
14286
  lineStyle: zLineStyle.or(schemas_array(zLineStyle)).nullish(),
13928
14287
  areaStyle: zAreaStyle.or(schemas_array(zAreaStyle)).nullish()
13929
14288
  });
13930
- const zAnnotationPoint = schemas_object({
13931
- selector: union([
13932
- zSelector,
13933
- zSelectors
13934
- ]).nullish(),
13935
- text: schemas_string().or(schemas_array(schemas_string())).nullish(),
13936
- textColor: schemas_string().default('#ffffff').nullish(),
13937
- textFontSize: schemas_number().default(12).nullish(),
13938
- textFontWeight: schemas_number().default(400).nullish(),
13939
- textAlign: schemas_enum([
13940
- 'left',
13941
- 'right',
13942
- 'center'
13943
- ]).default('center').nullish(),
13944
- textBaseline: schemas_enum([
13945
- 'top',
13946
- 'middle',
13947
- 'bottom'
13948
- ]).default('middle').nullish(),
13949
- textBackgroundVisible: schemas_boolean().default(true).nullish(),
13950
- textBackgroundColor: schemas_string().default('#212121').nullish(),
13951
- textBackgroundBorderColor: schemas_string().nullish(),
13952
- textBackgroundBorderWidth: schemas_number().default(1).nullish(),
13953
- textBackgroundBorderRadius: schemas_number().default(4).nullish(),
13954
- textBackgroundPadding: schemas_number().nullish(),
13955
- offsetY: schemas_number().default(0).nullish(),
13956
- offsetX: schemas_number().default(0).nullish()
13957
- });
13958
14289
  const zAnnotationVerticalLine = schemas_object({
13959
14290
  selector: union([
13960
14291
  zSelector,
@@ -14005,98 +14336,6 @@
14005
14336
  literal('dotted')
14006
14337
  ]).default('dashed').nullish()
14007
14338
  });
14008
- const zAnnotationHorizontalLine = schemas_object({
14009
- selector: union([
14010
- zSelector,
14011
- zSelectors
14012
- ]).nullish(),
14013
- yValue: union([
14014
- schemas_number(),
14015
- schemas_string(),
14016
- schemas_array(union([
14017
- schemas_number(),
14018
- schemas_string()
14019
- ]))
14020
- ]).nullish(),
14021
- text: schemas_string().or(schemas_array(schemas_string())).nullish(),
14022
- textPosition: schemas_enum([
14023
- 'outsideStart',
14024
- 'outsideEnd',
14025
- 'outsideMiddle',
14026
- 'insideStart',
14027
- 'insideMiddle',
14028
- 'insideEnd'
14029
- ]).default('insideEnd').nullish(),
14030
- textColor: schemas_string().default('#ffffff').nullish(),
14031
- textFontSize: schemas_number().default(12).nullish(),
14032
- textFontWeight: schemas_number().default(400).nullish(),
14033
- textAlign: schemas_enum([
14034
- 'left',
14035
- 'right',
14036
- 'center'
14037
- ]).default('right').nullish(),
14038
- textBaseline: schemas_enum([
14039
- 'top',
14040
- 'middle',
14041
- 'bottom'
14042
- ]).default('top').nullish(),
14043
- lineVisible: schemas_boolean().default(true).nullish(),
14044
- lineColor: schemas_string().default('#212121').nullish(),
14045
- lineWidth: schemas_number().default(1).nullish(),
14046
- lineStyle: union([
14047
- literal('solid'),
14048
- literal('dashed'),
14049
- literal('dotted')
14050
- ]).default('dashed').nullish(),
14051
- textBackgroundVisible: schemas_boolean().default(true).nullish(),
14052
- textBackgroundColor: schemas_string().default('#212121').nullish(),
14053
- textBackgroundBorderColor: schemas_string().default('#212121').nullish(),
14054
- textBackgroundBorderRadius: schemas_number().default(4).nullish(),
14055
- textBackgroundBorderWidth: schemas_number().default(1).nullish(),
14056
- textBackgroundPadding: schemas_number().default(2).nullish()
14057
- });
14058
- const zAnnotationArea = schemas_object({
14059
- selector: union([
14060
- zSelector,
14061
- zSelectors
14062
- ]).nullish(),
14063
- textPosition: schemas_enum([
14064
- 'top',
14065
- 'topRight',
14066
- 'topLeft',
14067
- 'bottom',
14068
- 'bottomLeft',
14069
- 'bottomRight',
14070
- 'left',
14071
- 'right'
14072
- ]).default('top').nullish(),
14073
- text: schemas_string().or(schemas_array(schemas_string())).nullish(),
14074
- textColor: schemas_string().default('#ffffff').nullish(),
14075
- textFontSize: schemas_number().default(12).nullish(),
14076
- textFontWeight: schemas_number().default(400).nullish(),
14077
- textAlign: schemas_enum([
14078
- 'left',
14079
- 'right',
14080
- 'center'
14081
- ]).default('center').nullish(),
14082
- textBaseline: schemas_enum([
14083
- 'top',
14084
- 'middle',
14085
- 'bottom'
14086
- ]).default('top').nullish(),
14087
- textBackgroundVisible: schemas_boolean().default(true).nullish(),
14088
- textBackgroundColor: schemas_string().default('#191d24').nullish(),
14089
- textBackgroundBorderColor: schemas_string().default('#191d24').nullish(),
14090
- textBackgroundBorderWidth: schemas_number().default(1).nullish(),
14091
- textBackgroundBorderRadius: schemas_number().default(4).nullish(),
14092
- textBackgroundPadding: schemas_number().default(4).nullish(),
14093
- areaColor: schemas_string().default('#888888').nullish(),
14094
- areaColorOpacity: schemas_number().default(0.15).nullish(),
14095
- areaBorderColor: schemas_string().default('#888888').nullish(),
14096
- areaBorderWidth: schemas_number().default(1).nullish(),
14097
- areaBorderRadius: schemas_number().default(4).nullish(),
14098
- outerPadding: schemas_number().default(4).nullish()
14099
- });
14100
14339
  const zAnnotation = schemas_object({
14101
14340
  annotationPoint: zAnnotationPoint.or(schemas_array(zAnnotationPoint)).nullish(),
14102
14341
  annotationVerticalLine: zAnnotationVerticalLine.or(schemas_array(zAnnotationVerticalLine)).nullish(),