@fluentui/react-charts 9.3.2 → 9.3.4

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 (145) hide show
  1. package/CHANGELOG.md +47 -2
  2. package/dist/index.d.ts +151 -1
  3. package/lib/components/AreaChart/AreaChart.js +208 -60
  4. package/lib/components/AreaChart/AreaChart.js.map +1 -1
  5. package/lib/components/ChartTable/ChartTable.js +14 -12
  6. package/lib/components/ChartTable/ChartTable.js.map +1 -1
  7. package/lib/components/ChartTable/useChartTableStyles.styles.js +3 -3
  8. package/lib/components/ChartTable/useChartTableStyles.styles.js.map +1 -1
  9. package/lib/components/ChartTable/useChartTableStyles.styles.raw.js +2 -2
  10. package/lib/components/ChartTable/useChartTableStyles.styles.raw.js.map +1 -1
  11. package/lib/components/CommonComponents/CartesianChart.js +5 -6
  12. package/lib/components/CommonComponents/CartesianChart.js.map +1 -1
  13. package/lib/components/CommonComponents/ChartPopover.js +2 -1
  14. package/lib/components/CommonComponents/ChartPopover.js.map +1 -1
  15. package/lib/components/CommonComponents/ChartPopover.types.js.map +1 -1
  16. package/lib/components/CommonComponents/useCartesianChartStyles.styles.js +3 -2
  17. package/lib/components/CommonComponents/useCartesianChartStyles.styles.js.map +1 -1
  18. package/lib/components/CommonComponents/useCartesianChartStyles.styles.raw.js +2 -1
  19. package/lib/components/CommonComponents/useCartesianChartStyles.styles.raw.js.map +1 -1
  20. package/lib/components/CommonComponents/useChartPopoverStyles.styles.js +3 -2
  21. package/lib/components/CommonComponents/useChartPopoverStyles.styles.js.map +1 -1
  22. package/lib/components/CommonComponents/useChartPopoverStyles.styles.raw.js +2 -1
  23. package/lib/components/CommonComponents/useChartPopoverStyles.styles.raw.js.map +1 -1
  24. package/lib/components/DeclarativeChart/DeclarativeChart.js +16 -7
  25. package/lib/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  26. package/lib/components/DeclarativeChart/PlotlyColorAdapter.js +63 -18
  27. package/lib/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  28. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js +471 -207
  29. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  30. package/lib/components/DonutChart/Arc/Arc.js +8 -7
  31. package/lib/components/DonutChart/Arc/Arc.js.map +1 -1
  32. package/lib/components/DonutChart/DonutChart.js +16 -32
  33. package/lib/components/DonutChart/DonutChart.js.map +1 -1
  34. package/lib/components/DonutChart/DonutChart.types.js.map +1 -1
  35. package/lib/components/DonutChart/Pie/Pie.js +4 -4
  36. package/lib/components/DonutChart/Pie/Pie.js.map +1 -1
  37. package/lib/components/DonutChart/useDonutChartStyles.styles.js +3 -2
  38. package/lib/components/DonutChart/useDonutChartStyles.styles.js.map +1 -1
  39. package/lib/components/DonutChart/useDonutChartStyles.styles.raw.js +2 -1
  40. package/lib/components/DonutChart/useDonutChartStyles.styles.raw.js.map +1 -1
  41. package/lib/components/FunnelChart/FunnelChart.js +23 -45
  42. package/lib/components/FunnelChart/FunnelChart.js.map +1 -1
  43. package/lib/components/FunnelChart/useFunnelChartStyles.styles.js +3 -2
  44. package/lib/components/FunnelChart/useFunnelChartStyles.styles.js.map +1 -1
  45. package/lib/components/FunnelChart/useFunnelChartStyles.styles.raw.js +2 -1
  46. package/lib/components/FunnelChart/useFunnelChartStyles.styles.raw.js.map +1 -1
  47. package/lib/components/GaugeChart/GaugeChart.js +21 -46
  48. package/lib/components/GaugeChart/GaugeChart.js.map +1 -1
  49. package/lib/components/GaugeChart/useGaugeChartStyles.styles.js +3 -2
  50. package/lib/components/GaugeChart/useGaugeChartStyles.styles.js.map +1 -1
  51. package/lib/components/GaugeChart/useGaugeChartStyles.styles.raw.js +2 -1
  52. package/lib/components/GaugeChart/useGaugeChartStyles.styles.raw.js.map +1 -1
  53. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +332 -114
  54. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -1
  55. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -1
  56. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js +3 -2
  57. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js.map +1 -1
  58. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js +2 -1
  59. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js.map +1 -1
  60. package/lib/components/Legends/Legends.js +1 -1
  61. package/lib/components/Legends/Legends.js.map +1 -1
  62. package/lib/components/LineChart/LineChart.js +145 -97
  63. package/lib/components/LineChart/LineChart.js.map +1 -1
  64. package/lib/components/SankeyChart/useSankeyChartStyles.styles.js +3 -2
  65. package/lib/components/SankeyChart/useSankeyChartStyles.styles.js.map +1 -1
  66. package/lib/components/SankeyChart/useSankeyChartStyles.styles.raw.js +2 -1
  67. package/lib/components/SankeyChart/useSankeyChartStyles.styles.raw.js.map +1 -1
  68. package/lib/components/ScatterChart/ScatterChart.js +7 -11
  69. package/lib/components/ScatterChart/ScatterChart.js.map +1 -1
  70. package/lib/types/DataPoint.js +1 -3
  71. package/lib/types/DataPoint.js.map +1 -1
  72. package/lib/utilities/utilities.js +77 -26
  73. package/lib/utilities/utilities.js.map +1 -1
  74. package/lib-commonjs/components/AreaChart/AreaChart.js +207 -59
  75. package/lib-commonjs/components/AreaChart/AreaChart.js.map +1 -1
  76. package/lib-commonjs/components/ChartTable/ChartTable.js +13 -12
  77. package/lib-commonjs/components/ChartTable/ChartTable.js.map +1 -1
  78. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.js +3 -3
  79. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.js.map +1 -1
  80. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.raw.js +2 -2
  81. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.raw.js.map +1 -1
  82. package/lib-commonjs/components/CommonComponents/CartesianChart.js +5 -6
  83. package/lib-commonjs/components/CommonComponents/CartesianChart.js.map +1 -1
  84. package/lib-commonjs/components/CommonComponents/ChartPopover.js +2 -1
  85. package/lib-commonjs/components/CommonComponents/ChartPopover.js.map +1 -1
  86. package/lib-commonjs/components/CommonComponents/ChartPopover.types.js.map +1 -1
  87. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.js +7 -1
  88. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.js.map +1 -1
  89. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.raw.js +2 -1
  90. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.raw.js.map +1 -1
  91. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.js +7 -1
  92. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.js.map +1 -1
  93. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.raw.js +2 -1
  94. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.raw.js.map +1 -1
  95. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js +16 -7
  96. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  97. package/lib-commonjs/components/DeclarativeChart/PlotlyColorAdapter.js +65 -18
  98. package/lib-commonjs/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  99. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js +470 -206
  100. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  101. package/lib-commonjs/components/DonutChart/Arc/Arc.js +8 -7
  102. package/lib-commonjs/components/DonutChart/Arc/Arc.js.map +1 -1
  103. package/lib-commonjs/components/DonutChart/DonutChart.js +16 -32
  104. package/lib-commonjs/components/DonutChart/DonutChart.js.map +1 -1
  105. package/lib-commonjs/components/DonutChart/DonutChart.types.js.map +1 -1
  106. package/lib-commonjs/components/DonutChart/Pie/Pie.js +4 -4
  107. package/lib-commonjs/components/DonutChart/Pie/Pie.js.map +1 -1
  108. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.js +7 -1
  109. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.js.map +1 -1
  110. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.raw.js +2 -1
  111. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.raw.js.map +1 -1
  112. package/lib-commonjs/components/FunnelChart/FunnelChart.js +23 -45
  113. package/lib-commonjs/components/FunnelChart/FunnelChart.js.map +1 -1
  114. package/lib-commonjs/components/FunnelChart/useFunnelChartStyles.styles.js +7 -1
  115. package/lib-commonjs/components/FunnelChart/useFunnelChartStyles.styles.js.map +1 -1
  116. package/lib-commonjs/components/FunnelChart/useFunnelChartStyles.styles.raw.js +2 -1
  117. package/lib-commonjs/components/FunnelChart/useFunnelChartStyles.styles.raw.js.map +1 -1
  118. package/lib-commonjs/components/GaugeChart/GaugeChart.js +21 -46
  119. package/lib-commonjs/components/GaugeChart/GaugeChart.js.map +1 -1
  120. package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.js +7 -1
  121. package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.js.map +1 -1
  122. package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.raw.js +2 -1
  123. package/lib-commonjs/components/GaugeChart/useGaugeChartStyles.styles.raw.js.map +1 -1
  124. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +329 -112
  125. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -1
  126. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -1
  127. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js +7 -1
  128. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js.map +1 -1
  129. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js +2 -1
  130. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js.map +1 -1
  131. package/lib-commonjs/components/Legends/Legends.js +1 -1
  132. package/lib-commonjs/components/Legends/Legends.js.map +1 -1
  133. package/lib-commonjs/components/LineChart/LineChart.js +144 -96
  134. package/lib-commonjs/components/LineChart/LineChart.js.map +1 -1
  135. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.js +7 -1
  136. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.js.map +1 -1
  137. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.raw.js +2 -1
  138. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.raw.js.map +1 -1
  139. package/lib-commonjs/components/ScatterChart/ScatterChart.js +6 -10
  140. package/lib-commonjs/components/ScatterChart/ScatterChart.js.map +1 -1
  141. package/lib-commonjs/types/DataPoint.js +1 -3
  142. package/lib-commonjs/types/DataPoint.js.map +1 -1
  143. package/lib-commonjs/utilities/utilities.js +80 -26
  144. package/lib-commonjs/utilities/utilities.js.map +1 -1
  145. package/package.json +13 -13
@@ -118,6 +118,9 @@ _export(exports, {
118
118
  find: function() {
119
119
  return find;
120
120
  },
121
+ findCalloutPoints: function() {
122
+ return findCalloutPoints;
123
+ },
121
124
  findHBCWANumericMinMaxOfY: function() {
122
125
  return findHBCWANumericMinMaxOfY;
123
126
  },
@@ -294,7 +297,7 @@ function defaultYAxisTickFormatter(value) {
294
297
  return yAxisTickFormatterInternal(value);
295
298
  }
296
299
  function createNumericXAxis(xAxisParams, tickParams, chartType, culture, scaleType, _useRtl) {
297
- const { domainNRangeValues, showRoundOffXTickValues = false, xAxistickSize = 6, tickPadding = 10, xAxisCount, xAxisElement, hideTickOverlap, calcMaxLabelWidth, tickStep, tick0 } = xAxisParams;
300
+ const { domainNRangeValues, showRoundOffXTickValues = false, xAxistickSize = 6, tickPadding = 10, xAxisCount, xAxisElement, hideTickOverlap, calcMaxLabelWidth, tickStep, tick0, tickText } = xAxisParams;
298
301
  const xAxisScale = createNumericScale(scaleType).domain([
299
302
  domainNRangeValues.dStartValue,
300
303
  domainNRangeValues.dEndValue
@@ -305,6 +308,9 @@ function createNumericXAxis(xAxisParams, tickParams, chartType, culture, scaleTy
305
308
  showRoundOffXTickValues && xAxisScale.nice();
306
309
  let tickCount = xAxisCount !== null && xAxisCount !== void 0 ? xAxisCount : 6;
307
310
  const tickFormat = (domainValue, _index, defaultFormat)=>{
311
+ if (tickParams.tickValues && tickText && typeof tickText[_index] !== 'undefined') {
312
+ return tickText[_index];
313
+ }
308
314
  if (tickParams.tickFormat) {
309
315
  return (0, _d3format.format)(tickParams.tickFormat)(domainValue);
310
316
  }
@@ -526,7 +532,7 @@ function getDateFormatLevel(date, useUTC) {
526
532
  return (_matchedFormat_formatLevel = matchedFormat === null || matchedFormat === void 0 ? void 0 : matchedFormat.formatLevel) !== null && _matchedFormat_formatLevel !== void 0 ? _matchedFormat_formatLevel : 7;
527
533
  }
528
534
  function createDateXAxis(xAxisParams, tickParams, culture, options, timeFormatLocale, customDateTimeFormatter, useUTC, chartType) {
529
- const { domainNRangeValues, xAxisElement, tickPadding = 6, xAxistickSize = 6, xAxisCount, calcMaxLabelWidth, tickStep, tick0 } = xAxisParams;
535
+ const { domainNRangeValues, xAxisElement, tickPadding = 6, xAxistickSize = 6, xAxisCount, calcMaxLabelWidth, tickStep, tick0, tickText } = xAxisParams;
530
536
  const isUtcSet = useUTC === true || useUTC === 'utc';
531
537
  const xAxisScale = isUtcSet ? (0, _d3scale.scaleUtc)() : (0, _d3scale.scaleTime)();
532
538
  xAxisScale.domain([
@@ -552,6 +558,9 @@ function createDateXAxis(xAxisParams, tickParams, culture, options, timeFormatLo
552
558
  const formatOptions = options !== null && options !== void 0 ? options : (0, _chartutilities.getMultiLevelDateTimeFormatOptions)(lowestFormatLevel, highestFormatLevel);
553
559
  const formatFn = getMultiLevelD3DateFormatter(lowestFormatLevel, highestFormatLevel, locale, isUtcSet);
554
560
  const tickFormat = (domainValue, _index)=>{
561
+ if (tickParams.tickValues && tickText && typeof tickText[_index] !== 'undefined') {
562
+ return tickText[_index];
563
+ }
555
564
  if (customDateTimeFormatter) {
556
565
  return customDateTimeFormatter(domainValue);
557
566
  }
@@ -596,7 +605,7 @@ function createDateXAxis(xAxisParams, tickParams, culture, options, timeFormatLo
596
605
  };
597
606
  }
598
607
  function createStringXAxis(xAxisParams, tickParams, dataset, culture, _useRtl) {
599
- const { domainNRangeValues, xAxistickSize = 6, tickPadding = 10, xAxisPadding = 0.1, xAxisInnerPadding, xAxisOuterPadding, containerWidth, hideTickOverlap, calcMaxLabelWidth } = xAxisParams;
608
+ const { domainNRangeValues, xAxistickSize = 6, tickPadding = 10, xAxisPadding = 0.1, xAxisInnerPadding, xAxisOuterPadding, containerWidth, hideTickOverlap, calcMaxLabelWidth, tickText } = xAxisParams;
600
609
  const xAxisScale = (0, _d3scale.scaleBand)().domain(dataset).range([
601
610
  domainNRangeValues.rStartValue,
602
611
  domainNRangeValues.rEndValue
@@ -604,7 +613,10 @@ function createStringXAxis(xAxisParams, tickParams, dataset, culture, _useRtl) {
604
613
  var _tickParams_tickValues;
605
614
  let tickValues = (_tickParams_tickValues = tickParams.tickValues) !== null && _tickParams_tickValues !== void 0 ? _tickParams_tickValues : dataset;
606
615
  const tickFormat = (domainValue, _index)=>{
607
- return (0, _chartutilities.formatToLocaleString)(domainValue, culture);
616
+ if (tickParams.tickValues && tickText && typeof tickText[_index] !== 'undefined') {
617
+ return tickText[_index];
618
+ }
619
+ return domainValue;
608
620
  };
609
621
  if (hideTickOverlap) {
610
622
  let nonOverlappingTickValues = [];
@@ -705,7 +717,7 @@ function createYAxisForHorizontalBarChartWithAxis(yAxisParams, isRtl) {
705
717
  const { yMinMaxValues = {
706
718
  startValue: 0,
707
719
  endValue: 0
708
- }, yAxisElement = null, yMaxValue = 0, yMinValue = 0, containerHeight, margins, tickPadding = 12, maxOfYVal = 0, yAxisTickFormat, yAxisTickCount = 4, tickValues, tickStep, tick0 } = yAxisParams;
720
+ }, yAxisElement = null, yMaxValue = 0, yMinValue = 0, containerHeight, margins, tickPadding = 12, maxOfYVal = 0, yAxisTickFormat, yAxisTickCount = 4, tickValues, tickStep, tick0, tickText } = yAxisParams;
709
721
  // maxOfYVal coming from horizontal bar chart with axis (Calculation done at base file)
710
722
  const tempVal = maxOfYVal || yMinMaxValues.endValue;
711
723
  const finalYmax = tempVal > yMaxValue ? tempVal : yMaxValue;
@@ -719,7 +731,20 @@ function createYAxisForHorizontalBarChartWithAxis(yAxisParams, isRtl) {
719
731
  ]);
720
732
  const axis = isRtl ? (0, _d3axis.axisRight)(yAxisScale) : (0, _d3axis.axisLeft)(yAxisScale);
721
733
  const yAxis = axis.tickPadding(tickPadding).ticks(yAxisTickCount);
722
- yAxisTickFormat ? yAxis.tickFormat(yAxisTickFormat) : yAxis.tickFormat(defaultYAxisTickFormatter);
734
+ const tickFormat = (domainValue, index)=>{
735
+ if (tickValues && tickText && typeof tickText[index] !== 'undefined') {
736
+ return tickText[index];
737
+ }
738
+ if (typeof yAxisTickFormat === 'function') {
739
+ return yAxisTickFormat(domainValue, index);
740
+ }
741
+ if (typeof yAxisTickFormat === 'string') {
742
+ return (0, _d3format.format)(yAxisTickFormat)(domainValue);
743
+ }
744
+ const value = typeof domainValue === 'number' ? domainValue : domainValue.valueOf();
745
+ return defaultYAxisTickFormatter(value);
746
+ };
747
+ yAxis.tickFormat(tickFormat);
723
748
  let customTickValues;
724
749
  if (tickValues) {
725
750
  customTickValues = tickValues;
@@ -736,7 +761,7 @@ function createNumericYAxis(yAxisParams, isRtl, axisData, isIntegralDataset, cha
736
761
  const { yMinMaxValues = {
737
762
  startValue: 0,
738
763
  endValue: 0
739
- }, yAxisElement = null, yMaxValue = 0, yMinValue = 0, containerHeight, containerWidth, margins, tickPadding = 12, maxOfYVal = 0, yAxisTickFormat, yAxisTickCount = 4, eventAnnotationProps, eventLabelHeight, tickValues, tickStep, tick0 } = yAxisParams;
764
+ }, yAxisElement = null, yMaxValue = 0, yMinValue = 0, containerHeight, containerWidth, margins, tickPadding = 12, maxOfYVal = 0, yAxisTickFormat, yAxisTickCount = 4, eventAnnotationProps, eventLabelHeight, tickValues, tickStep, tick0, tickText } = yAxisParams;
740
765
  // maxOfYVal coming from only area chart and Grouped vertical bar chart(Calculation done at base file)
741
766
  const tempVal = maxOfYVal || yMinMaxValues.endValue || 0;
742
767
  const finalYmax = tempVal > yMaxValue ? tempVal : yMaxValue;
@@ -791,15 +816,24 @@ function createNumericYAxis(yAxisParams, isRtl, axisData, isIntegralDataset, cha
791
816
  }
792
817
  }
793
818
  const tickFormat = (domainValue, index, defaultFormat)=>{
819
+ if (tickValues && tickText && typeof tickText[index] !== 'undefined') {
820
+ return tickText[index];
821
+ }
822
+ if (typeof yAxisTickFormat === 'function') {
823
+ return yAxisTickFormat(domainValue, index);
824
+ }
825
+ if (typeof yAxisTickFormat === 'string') {
826
+ return (0, _d3format.format)(yAxisTickFormat)(domainValue);
827
+ }
794
828
  const value = typeof domainValue === 'number' ? domainValue : domainValue.valueOf();
795
829
  return (defaultFormat === null || defaultFormat === void 0 ? void 0 : defaultFormat(value)) === '' ? '' : defaultYAxisTickFormatter(value);
796
830
  };
797
- yAxisTickFormat ? yAxis.tickFormat(yAxisTickFormat) : yAxis.tickFormat((v, i)=>tickFormat(v, i, yAxisScale.tickFormat(yAxisTickCount)));
831
+ yAxis.tickFormat((v, i)=>tickFormat(v, i, yAxisScale.tickFormat(yAxisTickCount)));
798
832
  yAxisElement ? (0, _d3selection.select)(yAxisElement).call(yAxis).selectAll('text').attr('aria-hidden', 'true').style('direction', 'ltr').style('unicode-bidi', 'isolate').style('text-anchor', !useSecondaryYScale && (_useRtl ? 'start' : 'end')) : '';
799
833
  return yAxisScale;
800
834
  }
801
835
  const createStringYAxisForHorizontalBarChartWithAxis = (yAxisParams, dataPoints, isRtl, barWidth)=>{
802
- const { containerHeight, tickPadding = 12, margins, yAxisTickFormat, yAxisElement, yAxisPadding } = yAxisParams;
836
+ const { containerHeight, tickPadding = 12, margins, yAxisTickFormat, yAxisElement, yAxisPadding, tickValues, tickText } = yAxisParams;
803
837
  let yAxisPaddingValue = yAxisPadding !== null && yAxisPadding !== void 0 ? yAxisPadding : 0.5;
804
838
  yAxisPaddingValue = yAxisPaddingValue === 1 ? 0.99 : yAxisPaddingValue;
805
839
  const yAxisScale = (0, _d3scale.scaleBand)().domain(dataPoints).range([
@@ -807,15 +841,22 @@ const createStringYAxisForHorizontalBarChartWithAxis = (yAxisParams, dataPoints,
807
841
  margins.top
808
842
  ]).padding(yAxisPaddingValue);
809
843
  const axis = isRtl ? (0, _d3axis.axisRight)(yAxisScale) : (0, _d3axis.axisLeft)(yAxisScale);
810
- const yAxis = axis.tickPadding(tickPadding).ticks(dataPoints);
811
- if (yAxisTickFormat) {
812
- yAxis.tickFormat(yAxisTickFormat);
813
- }
844
+ const customTickValues = tickValues !== null && tickValues !== void 0 ? tickValues : dataPoints;
845
+ const tickFormat = (domainValue, _index)=>{
846
+ if (tickValues && tickText && typeof tickText[_index] !== 'undefined') {
847
+ return tickText[_index];
848
+ }
849
+ if (typeof yAxisTickFormat === 'function') {
850
+ return yAxisTickFormat(domainValue, _index);
851
+ }
852
+ return domainValue;
853
+ };
854
+ const yAxis = axis.tickPadding(tickPadding).tickValues(customTickValues).tickFormat(tickFormat);
814
855
  yAxisElement ? (0, _d3selection.select)(yAxisElement).call(yAxis).selectAll('text') : '';
815
856
  return yAxisScale;
816
857
  };
817
858
  const createStringYAxis = (yAxisParams, dataPoints, isRtl, barWidth, chartType)=>{
818
- const { containerHeight, tickPadding = 12, margins, yAxisTickFormat, yAxisElement, yAxisPadding = 0, containerWidth } = yAxisParams;
859
+ const { containerHeight, tickPadding = 12, margins, yAxisTickFormat, yAxisElement, yAxisPadding = 0, containerWidth, tickValues, tickText } = yAxisParams;
819
860
  const yAxisScale = (0, _d3scale.scaleBand)().domain(dataPoints).range([
820
861
  containerHeight - margins.bottom,
821
862
  margins.top
@@ -824,13 +865,20 @@ const createStringYAxis = (yAxisParams, dataPoints, isRtl, barWidth, chartType)=
824
865
  yAxisScale.paddingInner(1).paddingOuter(0);
825
866
  }
826
867
  const axis = isRtl ? (0, _d3axis.axisRight)(yAxisScale) : (0, _d3axis.axisLeft)(yAxisScale);
827
- const yAxis = axis.tickPadding(tickPadding).tickValues(dataPoints).tickSize(0);
868
+ const customTickValues = tickValues !== null && tickValues !== void 0 ? tickValues : dataPoints;
869
+ const tickFormat = (domainValue, _index)=>{
870
+ if (tickValues && tickText && typeof tickText[_index] !== 'undefined') {
871
+ return tickText[_index];
872
+ }
873
+ if (typeof yAxisTickFormat === 'function') {
874
+ return yAxisTickFormat(domainValue, _index);
875
+ }
876
+ return domainValue;
877
+ };
878
+ const yAxis = axis.tickPadding(tickPadding).tickValues(customTickValues).tickFormat(tickFormat).tickSize(0);
828
879
  if (chartType === 3) {
829
880
  axis.tickSizeInner(-(containerWidth - margins.left - margins.right));
830
881
  }
831
- if (yAxisTickFormat) {
832
- yAxis.tickFormat(yAxisTickFormat);
833
- }
834
882
  yAxisElement ? (0, _d3selection.select)(yAxisElement).call(yAxis).selectAll('text') : '';
835
883
  return yAxisScale;
836
884
  };
@@ -875,14 +923,7 @@ function calloutData(values) {
875
923
  ];
876
924
  }
877
925
  });
878
- const result = Object.keys(xValToDataPoints).map((xValue)=>{
879
- const originalXValue = isNaN(Number(xValue)) ? xValue : Number(xValue);
880
- return {
881
- x: originalXValue,
882
- values: xValToDataPoints[xValue]
883
- };
884
- });
885
- return result;
926
+ return xValToDataPoints;
886
927
  }
887
928
  function getUnique(arr, comp) {
888
929
  const unique = arr // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1775,3 +1816,16 @@ function precisionRound(value, precision, base = 10) {
1775
1816
  const exp = Math.pow(base, precision);
1776
1817
  return Math.round(value * exp) / exp;
1777
1818
  }
1819
+ const findCalloutPoints = (calloutPointsByX, x)=>{
1820
+ if (x === null) {
1821
+ return undefined;
1822
+ }
1823
+ const key = x instanceof Date ? x.getTime() : x;
1824
+ if (!calloutPointsByX[key]) {
1825
+ return undefined;
1826
+ }
1827
+ return {
1828
+ x,
1829
+ values: calloutPointsByX[key]
1830
+ };
1831
+ };