@fluentui/react-charts 9.3.5 → 9.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/CHANGELOG.md +23 -2
  2. package/dist/index.d.ts +223 -44
  3. package/lib/AnnotationOnlyChart.js +1 -0
  4. package/lib/AnnotationOnlyChart.js.map +1 -0
  5. package/lib/components/AnnotationOnlyChart/AnnotationOnlyChart.js +208 -0
  6. package/lib/components/AnnotationOnlyChart/AnnotationOnlyChart.js.map +1 -0
  7. package/lib/components/AnnotationOnlyChart/AnnotationOnlyChart.types.js +1 -0
  8. package/lib/components/AnnotationOnlyChart/AnnotationOnlyChart.types.js.map +1 -0
  9. package/lib/components/AnnotationOnlyChart/index.js +2 -0
  10. package/lib/components/AnnotationOnlyChart/index.js.map +1 -0
  11. package/lib/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.js +31 -0
  12. package/lib/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.js.map +1 -0
  13. package/lib/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.raw.js +23 -0
  14. package/lib/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.raw.js.map +1 -0
  15. package/lib/components/AreaChart/useAreaChartStyles.styles.js +11 -6
  16. package/lib/components/AreaChart/useAreaChartStyles.styles.js.map +1 -1
  17. package/lib/components/AreaChart/useAreaChartStyles.styles.raw.js +3 -1
  18. package/lib/components/AreaChart/useAreaChartStyles.styles.raw.js.map +1 -1
  19. package/lib/components/ChartTable/useChartTableStyles.styles.js +59 -39
  20. package/lib/components/ChartTable/useChartTableStyles.styles.js.map +1 -1
  21. package/lib/components/ChartTable/useChartTableStyles.styles.raw.js +5 -5
  22. package/lib/components/ChartTable/useChartTableStyles.styles.raw.js.map +1 -1
  23. package/lib/components/CommonComponents/Annotations/ChartAnnotationLayer.js +617 -0
  24. package/lib/components/CommonComponents/Annotations/ChartAnnotationLayer.js.map +1 -0
  25. package/lib/components/CommonComponents/Annotations/ChartAnnotationLayer.types.js +1 -0
  26. package/lib/components/CommonComponents/Annotations/ChartAnnotationLayer.types.js.map +1 -0
  27. package/lib/components/CommonComponents/Annotations/index.js +2 -0
  28. package/lib/components/CommonComponents/Annotations/index.js.map +1 -0
  29. package/lib/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.js +173 -0
  30. package/lib/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.js.map +1 -0
  31. package/lib/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.raw.js +126 -0
  32. package/lib/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.raw.js.map +1 -0
  33. package/lib/components/CommonComponents/CartesianChart.js +157 -132
  34. package/lib/components/CommonComponents/CartesianChart.js.map +1 -1
  35. package/lib/components/CommonComponents/CartesianChart.types.js.map +1 -1
  36. package/lib/components/CommonComponents/index.js +2 -0
  37. package/lib/components/CommonComponents/index.js.map +1 -1
  38. package/lib/components/CommonComponents/useCartesianChartStyles.styles.js +29 -13
  39. package/lib/components/CommonComponents/useCartesianChartStyles.styles.js.map +1 -1
  40. package/lib/components/CommonComponents/useCartesianChartStyles.styles.raw.js +14 -1
  41. package/lib/components/CommonComponents/useCartesianChartStyles.styles.raw.js.map +1 -1
  42. package/lib/components/CommonComponents/useChartPopoverStyles.styles.js +2 -6
  43. package/lib/components/CommonComponents/useChartPopoverStyles.styles.js.map +1 -1
  44. package/lib/components/CommonComponents/useChartPopoverStyles.styles.raw.js +3 -2
  45. package/lib/components/CommonComponents/useChartPopoverStyles.styles.raw.js.map +1 -1
  46. package/lib/components/DeclarativeChart/DeclarativeChart.js +39 -19
  47. package/lib/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  48. package/lib/components/DeclarativeChart/PlotlyColorAdapter.js +4 -8
  49. package/lib/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  50. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js +644 -72
  51. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  52. package/lib/components/DonutChart/Arc/useArcStyles.styles.js +23 -8
  53. package/lib/components/DonutChart/Arc/useArcStyles.styles.js.map +1 -1
  54. package/lib/components/DonutChart/Arc/useArcStyles.styles.raw.js +2 -2
  55. package/lib/components/DonutChart/Arc/useArcStyles.styles.raw.js.map +1 -1
  56. package/lib/components/DonutChart/useDonutChartStyles.styles.js +2 -2
  57. package/lib/components/DonutChart/useDonutChartStyles.styles.js.map +1 -1
  58. package/lib/components/GanttChart/GanttChart.js +3 -3
  59. package/lib/components/GanttChart/GanttChart.js.map +1 -1
  60. package/lib/components/GanttChart/GanttChart.types.js.map +1 -1
  61. package/lib/components/GanttChart/useGanttChartStyles.styles.js +3 -1
  62. package/lib/components/GanttChart/useGanttChartStyles.styles.js.map +1 -1
  63. package/lib/components/GanttChart/useGanttChartStyles.styles.raw.js +3 -1
  64. package/lib/components/GanttChart/useGanttChartStyles.styles.raw.js.map +1 -1
  65. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +1 -1
  66. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -1
  67. package/lib/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.js +11 -6
  68. package/lib/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.js.map +1 -1
  69. package/lib/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.raw.js +3 -1
  70. package/lib/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.raw.js.map +1 -1
  71. package/lib/components/HeatMapChart/HeatMapChart.js +1 -1
  72. package/lib/components/HeatMapChart/HeatMapChart.js.map +1 -1
  73. package/lib/components/HeatMapChart/HeatMapChart.types.js.map +1 -1
  74. package/lib/components/HeatMapChart/useHeatMapChartStyles.styles.js +3 -1
  75. package/lib/components/HeatMapChart/useHeatMapChartStyles.styles.js.map +1 -1
  76. package/lib/components/HeatMapChart/useHeatMapChartStyles.styles.raw.js +3 -1
  77. package/lib/components/HeatMapChart/useHeatMapChartStyles.styles.raw.js.map +1 -1
  78. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js +25 -12
  79. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js.map +1 -1
  80. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js +4 -4
  81. package/lib/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js.map +1 -1
  82. package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js +2 -2
  83. package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js.map +1 -1
  84. package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js.map +1 -1
  85. package/lib/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.js +3 -1
  86. package/lib/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.js.map +1 -1
  87. package/lib/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.raw.js +3 -1
  88. package/lib/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.raw.js.map +1 -1
  89. package/lib/components/Legends/useLegendsStyles.styles.js +97 -37
  90. package/lib/components/Legends/useLegendsStyles.styles.js.map +1 -1
  91. package/lib/components/Legends/useLegendsStyles.styles.raw.js +10 -11
  92. package/lib/components/Legends/useLegendsStyles.styles.raw.js.map +1 -1
  93. package/lib/components/LineChart/LineChart.js +1 -1
  94. package/lib/components/LineChart/LineChart.js.map +1 -1
  95. package/lib/components/LineChart/useLineChartStyles.styles.js +15 -10
  96. package/lib/components/LineChart/useLineChartStyles.styles.js.map +1 -1
  97. package/lib/components/LineChart/useLineChartStyles.styles.raw.js +3 -1
  98. package/lib/components/LineChart/useLineChartStyles.styles.raw.js.map +1 -1
  99. package/lib/components/SankeyChart/useSankeyChartStyles.styles.js +13 -10
  100. package/lib/components/SankeyChart/useSankeyChartStyles.styles.js.map +1 -1
  101. package/lib/components/ScatterChart/ScatterChart.js +1 -1
  102. package/lib/components/ScatterChart/ScatterChart.js.map +1 -1
  103. package/lib/components/ScatterChart/ScatterChart.types.js.map +1 -1
  104. package/lib/components/ScatterChart/useScatterChartStyles.styles.js +13 -8
  105. package/lib/components/ScatterChart/useScatterChartStyles.styles.js.map +1 -1
  106. package/lib/components/ScatterChart/useScatterChartStyles.styles.raw.js +3 -1
  107. package/lib/components/ScatterChart/useScatterChartStyles.styles.raw.js.map +1 -1
  108. package/lib/components/VerticalBarChart/VerticalBarChart.js +1 -1
  109. package/lib/components/VerticalBarChart/VerticalBarChart.js.map +1 -1
  110. package/lib/components/VerticalBarChart/useVerticalBarChartStyles.styles.js +13 -8
  111. package/lib/components/VerticalBarChart/useVerticalBarChartStyles.styles.js.map +1 -1
  112. package/lib/components/VerticalBarChart/useVerticalBarChartStyles.styles.raw.js +3 -1
  113. package/lib/components/VerticalBarChart/useVerticalBarChartStyles.styles.raw.js.map +1 -1
  114. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js +1 -1
  115. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -1
  116. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -1
  117. package/lib/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.js +11 -6
  118. package/lib/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.js.map +1 -1
  119. package/lib/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.raw.js +3 -1
  120. package/lib/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.raw.js.map +1 -1
  121. package/lib/index.js +1 -0
  122. package/lib/index.js.map +1 -1
  123. package/lib/types/ChartAnnotation.js +1 -0
  124. package/lib/types/ChartAnnotation.js.map +1 -0
  125. package/lib/types/index.js +1 -0
  126. package/lib/types/index.js.map +1 -1
  127. package/lib/utilities/Common.styles.js +1 -2
  128. package/lib/utilities/Common.styles.js.map +1 -1
  129. package/lib/utilities/Common.styles.raw.js +1 -2
  130. package/lib/utilities/Common.styles.raw.js.map +1 -1
  131. package/lib/utilities/image-export-utils.js +108 -0
  132. package/lib/utilities/image-export-utils.js.map +1 -1
  133. package/lib/utilities/utilities.js +16 -13
  134. package/lib/utilities/utilities.js.map +1 -1
  135. package/lib-commonjs/AnnotationOnlyChart.js +6 -0
  136. package/lib-commonjs/AnnotationOnlyChart.js.map +1 -0
  137. package/lib-commonjs/components/AnnotationOnlyChart/AnnotationOnlyChart.js +219 -0
  138. package/lib-commonjs/components/AnnotationOnlyChart/AnnotationOnlyChart.js.map +1 -0
  139. package/lib-commonjs/components/AnnotationOnlyChart/AnnotationOnlyChart.types.js +6 -0
  140. package/lib-commonjs/components/AnnotationOnlyChart/AnnotationOnlyChart.types.js.map +1 -0
  141. package/lib-commonjs/components/AnnotationOnlyChart/index.js +7 -0
  142. package/lib-commonjs/components/AnnotationOnlyChart/index.js.map +1 -0
  143. package/lib-commonjs/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.js +56 -0
  144. package/lib-commonjs/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.js.map +1 -0
  145. package/lib-commonjs/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.raw.js +33 -0
  146. package/lib-commonjs/components/AnnotationOnlyChart/useAnnotationOnlyChartStyles.styles.raw.js.map +1 -0
  147. package/lib-commonjs/components/AreaChart/useAreaChartStyles.styles.js +14 -15
  148. package/lib-commonjs/components/AreaChart/useAreaChartStyles.styles.js.map +1 -1
  149. package/lib-commonjs/components/AreaChart/useAreaChartStyles.styles.raw.js +3 -1
  150. package/lib-commonjs/components/AreaChart/useAreaChartStyles.styles.raw.js.map +1 -1
  151. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.js +74 -102
  152. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.js.map +1 -1
  153. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.raw.js +4 -4
  154. package/lib-commonjs/components/ChartTable/useChartTableStyles.styles.raw.js.map +1 -1
  155. package/lib-commonjs/components/CommonComponents/Annotations/ChartAnnotationLayer.js +628 -0
  156. package/lib-commonjs/components/CommonComponents/Annotations/ChartAnnotationLayer.js.map +1 -0
  157. package/lib-commonjs/components/CommonComponents/Annotations/ChartAnnotationLayer.types.js +4 -0
  158. package/lib-commonjs/components/CommonComponents/Annotations/ChartAnnotationLayer.types.js.map +1 -0
  159. package/lib-commonjs/components/CommonComponents/Annotations/index.js +7 -0
  160. package/lib-commonjs/components/CommonComponents/Annotations/index.js.map +1 -0
  161. package/lib-commonjs/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.js +265 -0
  162. package/lib-commonjs/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.js.map +1 -0
  163. package/lib-commonjs/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.raw.js +161 -0
  164. package/lib-commonjs/components/CommonComponents/Annotations/useChartAnnotationLayer.styles.raw.js.map +1 -0
  165. package/lib-commonjs/components/CommonComponents/CartesianChart.js +157 -131
  166. package/lib-commonjs/components/CommonComponents/CartesianChart.js.map +1 -1
  167. package/lib-commonjs/components/CommonComponents/CartesianChart.types.js.map +1 -1
  168. package/lib-commonjs/components/CommonComponents/index.js +2 -0
  169. package/lib-commonjs/components/CommonComponents/index.js.map +1 -1
  170. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.js +32 -21
  171. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.js.map +1 -1
  172. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.raw.js +14 -1
  173. package/lib-commonjs/components/CommonComponents/useCartesianChartStyles.styles.raw.js.map +1 -1
  174. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.js +0 -14
  175. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.js.map +1 -1
  176. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.raw.js +2 -1
  177. package/lib-commonjs/components/CommonComponents/useChartPopoverStyles.styles.raw.js.map +1 -1
  178. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js +38 -18
  179. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  180. package/lib-commonjs/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  181. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js +630 -38
  182. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  183. package/lib-commonjs/components/DonutChart/Arc/useArcStyles.styles.js +25 -16
  184. package/lib-commonjs/components/DonutChart/Arc/useArcStyles.styles.js.map +1 -1
  185. package/lib-commonjs/components/DonutChart/Arc/useArcStyles.styles.raw.js +1 -1
  186. package/lib-commonjs/components/DonutChart/Arc/useArcStyles.styles.raw.js.map +1 -1
  187. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.js +2 -2
  188. package/lib-commonjs/components/DonutChart/useDonutChartStyles.styles.js.map +1 -1
  189. package/lib-commonjs/components/GanttChart/GanttChart.js +3 -3
  190. package/lib-commonjs/components/GanttChart/GanttChart.js.map +1 -1
  191. package/lib-commonjs/components/GanttChart/GanttChart.types.js.map +1 -1
  192. package/lib-commonjs/components/GanttChart/useGanttChartStyles.styles.js +3 -1
  193. package/lib-commonjs/components/GanttChart/useGanttChartStyles.styles.js.map +1 -1
  194. package/lib-commonjs/components/GanttChart/useGanttChartStyles.styles.raw.js +3 -1
  195. package/lib-commonjs/components/GanttChart/useGanttChartStyles.styles.raw.js.map +1 -1
  196. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +1 -1
  197. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -1
  198. package/lib-commonjs/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.js +14 -15
  199. package/lib-commonjs/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.js.map +1 -1
  200. package/lib-commonjs/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.raw.js +3 -1
  201. package/lib-commonjs/components/GroupedVerticalBarChart/useGroupedVerticalBarChartStyles.styles.raw.js.map +1 -1
  202. package/lib-commonjs/components/HeatMapChart/HeatMapChart.js +1 -1
  203. package/lib-commonjs/components/HeatMapChart/HeatMapChart.js.map +1 -1
  204. package/lib-commonjs/components/HeatMapChart/HeatMapChart.types.js.map +1 -1
  205. package/lib-commonjs/components/HeatMapChart/useHeatMapChartStyles.styles.js +3 -1
  206. package/lib-commonjs/components/HeatMapChart/useHeatMapChartStyles.styles.js.map +1 -1
  207. package/lib-commonjs/components/HeatMapChart/useHeatMapChartStyles.styles.raw.js +3 -1
  208. package/lib-commonjs/components/HeatMapChart/useHeatMapChartStyles.styles.raw.js.map +1 -1
  209. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js +47 -34
  210. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.js.map +1 -1
  211. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js +3 -3
  212. package/lib-commonjs/components/HorizontalBarChart/useHorizontalBarChartStyles.styles.raw.js.map +1 -1
  213. package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js +2 -2
  214. package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.js.map +1 -1
  215. package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.types.js.map +1 -1
  216. package/lib-commonjs/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.js +3 -1
  217. package/lib-commonjs/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.js.map +1 -1
  218. package/lib-commonjs/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.raw.js +3 -1
  219. package/lib-commonjs/components/HorizontalBarChartWithAxis/useHorizontalBarChartWithAxisStyles.styles.raw.js.map +1 -1
  220. package/lib-commonjs/components/Legends/useLegendsStyles.styles.js +144 -86
  221. package/lib-commonjs/components/Legends/useLegendsStyles.styles.js.map +1 -1
  222. package/lib-commonjs/components/Legends/useLegendsStyles.styles.raw.js +9 -10
  223. package/lib-commonjs/components/Legends/useLegendsStyles.styles.raw.js.map +1 -1
  224. package/lib-commonjs/components/LineChart/LineChart.js +1 -1
  225. package/lib-commonjs/components/LineChart/LineChart.js.map +1 -1
  226. package/lib-commonjs/components/LineChart/useLineChartStyles.styles.js +18 -19
  227. package/lib-commonjs/components/LineChart/useLineChartStyles.styles.js.map +1 -1
  228. package/lib-commonjs/components/LineChart/useLineChartStyles.styles.raw.js +3 -1
  229. package/lib-commonjs/components/LineChart/useLineChartStyles.styles.raw.js.map +1 -1
  230. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.js +16 -19
  231. package/lib-commonjs/components/SankeyChart/useSankeyChartStyles.styles.js.map +1 -1
  232. package/lib-commonjs/components/ScatterChart/ScatterChart.js +1 -1
  233. package/lib-commonjs/components/ScatterChart/ScatterChart.js.map +1 -1
  234. package/lib-commonjs/components/ScatterChart/ScatterChart.types.js.map +1 -1
  235. package/lib-commonjs/components/ScatterChart/useScatterChartStyles.styles.js +16 -17
  236. package/lib-commonjs/components/ScatterChart/useScatterChartStyles.styles.js.map +1 -1
  237. package/lib-commonjs/components/ScatterChart/useScatterChartStyles.styles.raw.js +3 -1
  238. package/lib-commonjs/components/ScatterChart/useScatterChartStyles.styles.raw.js.map +1 -1
  239. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.js +1 -1
  240. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.js.map +1 -1
  241. package/lib-commonjs/components/VerticalBarChart/useVerticalBarChartStyles.styles.js +16 -17
  242. package/lib-commonjs/components/VerticalBarChart/useVerticalBarChartStyles.styles.js.map +1 -1
  243. package/lib-commonjs/components/VerticalBarChart/useVerticalBarChartStyles.styles.raw.js +3 -1
  244. package/lib-commonjs/components/VerticalBarChart/useVerticalBarChartStyles.styles.raw.js.map +1 -1
  245. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.js +1 -1
  246. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -1
  247. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -1
  248. package/lib-commonjs/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.js +14 -15
  249. package/lib-commonjs/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.js.map +1 -1
  250. package/lib-commonjs/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.raw.js +3 -1
  251. package/lib-commonjs/components/VerticalStackedBarChart/useVerticalStackedBarChartStyles.styles.raw.js.map +1 -1
  252. package/lib-commonjs/index.js +1 -0
  253. package/lib-commonjs/index.js.map +1 -1
  254. package/lib-commonjs/types/ChartAnnotation.js +6 -0
  255. package/lib-commonjs/types/ChartAnnotation.js.map +1 -0
  256. package/lib-commonjs/types/index.js +1 -0
  257. package/lib-commonjs/types/index.js.map +1 -1
  258. package/lib-commonjs/utilities/Common.styles.js +1 -2
  259. package/lib-commonjs/utilities/Common.styles.js.map +1 -1
  260. package/lib-commonjs/utilities/Common.styles.raw.js +1 -2
  261. package/lib-commonjs/utilities/Common.styles.raw.js.map +1 -1
  262. package/lib-commonjs/utilities/image-export-utils.js +108 -0
  263. package/lib-commonjs/utilities/image-export-utils.js.map +1 -1
  264. package/lib-commonjs/utilities/utilities.js +16 -13
  265. package/lib-commonjs/utilities/utilities.js.map +1 -1
  266. package/package.json +11 -11
@@ -16,10 +16,15 @@ const _d3selection = require("d3-selection");
16
16
  const _index = require("../../utilities/index");
17
17
  const _reactutilities = require("@fluentui/react-utilities");
18
18
  const _SVGTooltipText = require("../../utilities/SVGTooltipText");
19
+ const _ChartAnnotationLayer = require("./Annotations/ChartAnnotationLayer");
19
20
  const _ChartPopover = require("./ChartPopover");
20
21
  const _reacttabster = require("@fluentui/react-tabster");
22
+ const HORIZONTAL_MARGIN_FOR_YAXIS_TITLE = 24;
23
+ const VERTICAL_MARGIN_FOR_XAXIS_TITLE = 20;
24
+ const AXIS_TITLE_PADDING = 8;
25
+ const DEFAULT_MARGIN_WITH_TICKS = 40;
26
+ const DEFAULT_MARGIN_NO_TICKS = 20;
21
27
  const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true, ...props }, forwardedRef)=>{
22
- var _props_margins, _props_margins1, _props_margins2, _props_margins3, _props_margins4, _props_margins5;
23
28
  const chartContainer = _react.useRef(null);
24
29
  let legendContainer;
25
30
  const minLegendContainerHeight = 40;
@@ -31,7 +36,6 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
31
36
  let _reqID;
32
37
  const _useRtl = (0, _index.useRtl)();
33
38
  let _tickValues;
34
- const titleMargin = 8;
35
39
  const _isFirstRender = _react.useRef(true);
36
40
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
37
41
  let _xScale;
@@ -47,61 +51,12 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
47
51
  * These value need to be removed from actual svg height/graph height.
48
52
  * Defalut value is 0. And this values calculted when 'wrapXAxisLables' or 'showXAxisLablesTooltip' is true.
49
53
  */ let _removalValueForTextTuncate = 0;
54
+ const _yAxisTickText = _react.useRef([]);
50
55
  const [containerWidth, setContainerWidth] = _react.useState(0);
51
56
  const [containerHeight, setContainerHeight] = _react.useState(0);
52
57
  const [startFromX, setStartFromX] = _react.useState(0);
53
58
  const prevWidthRef = _react.useRef(undefined);
54
59
  const prevHeightRef = _react.useRef(undefined);
55
- const chartTypesWithStringYAxis = [
56
- _index.ChartTypes.HorizontalBarChartWithAxis,
57
- _index.ChartTypes.HeatMapChart,
58
- _index.ChartTypes.VerticalStackedBarChart,
59
- _index.ChartTypes.GanttChart,
60
- _index.ChartTypes.ScatterChart
61
- ];
62
- var _props_margins_top, _props_margins_bottom, _props_margins_left, _props_margins_right, _props_margins_right1, _props_margins_left1;
63
- /**
64
- * In RTL mode, Only graph will be rendered left/right. We need to provide left and right margins manually.
65
- * So that, in RTL, left margins becomes right margins and viceversa.
66
- * As graph needs to be drawn perfecty, these values consider as default values.
67
- * Same margins using for all other cartesian charts. Can be accessible through 'getMargins' call back method.
68
- */ // eslint-disable-next-line prefer-const
69
- margins = {
70
- top: (_props_margins_top = (_props_margins = props.margins) === null || _props_margins === void 0 ? void 0 : _props_margins.top) !== null && _props_margins_top !== void 0 ? _props_margins_top : 20,
71
- bottom: (_props_margins_bottom = (_props_margins1 = props.margins) === null || _props_margins1 === void 0 ? void 0 : _props_margins1.bottom) !== null && _props_margins_bottom !== void 0 ? _props_margins_bottom : 35,
72
- right: _useRtl ? (_props_margins_left = (_props_margins2 = props.margins) === null || _props_margins2 === void 0 ? void 0 : _props_margins2.left) !== null && _props_margins_left !== void 0 ? _props_margins_left : 40 : ((_props_margins_right = (_props_margins3 = props.margins) === null || _props_margins3 === void 0 ? void 0 : _props_margins3.right) !== null && _props_margins_right !== void 0 ? _props_margins_right : props === null || props === void 0 ? void 0 : props.secondaryYScaleOptions) ? 40 : 20,
73
- left: _useRtl ? ((_props_margins_right1 = (_props_margins4 = props.margins) === null || _props_margins4 === void 0 ? void 0 : _props_margins4.right) !== null && _props_margins_right1 !== void 0 ? _props_margins_right1 : props === null || props === void 0 ? void 0 : props.secondaryYScaleOptions) ? 40 : 20 : (_props_margins_left1 = (_props_margins5 = props.margins) === null || _props_margins5 === void 0 ? void 0 : _props_margins5.left) !== null && _props_margins_left1 !== void 0 ? _props_margins_left1 : 40
74
- };
75
- const TITLE_MARGIN_HORIZONTAL = 24;
76
- const TITLE_MARGIN_VERTICAL = 20;
77
- if (props.xAxisTitle !== undefined && props.xAxisTitle !== '') {
78
- var _props_margins6;
79
- var _props_margins_bottom1;
80
- margins.bottom = (_props_margins_bottom1 = (_props_margins6 = props.margins) === null || _props_margins6 === void 0 ? void 0 : _props_margins6.bottom) !== null && _props_margins_bottom1 !== void 0 ? _props_margins_bottom1 : margins.bottom + TITLE_MARGIN_VERTICAL;
81
- }
82
- if (props.yAxisTitle !== undefined && props.yAxisTitle !== '') {
83
- var _props_margins7, _props_margins8, _props_margins9, _props_margins10;
84
- var _props_margins_right2, _props_margins_left2;
85
- margins.left = _useRtl ? ((_props_margins_right2 = (_props_margins7 = props.margins) === null || _props_margins7 === void 0 ? void 0 : _props_margins7.right) !== null && _props_margins_right2 !== void 0 ? _props_margins_right2 : props === null || props === void 0 ? void 0 : props.secondaryYAxistitle) ? margins.right + 2 * TITLE_MARGIN_HORIZONTAL : margins.right + TITLE_MARGIN_HORIZONTAL : (_props_margins_left2 = (_props_margins8 = props.margins) === null || _props_margins8 === void 0 ? void 0 : _props_margins8.left) !== null && _props_margins_left2 !== void 0 ? _props_margins_left2 : margins.left + TITLE_MARGIN_HORIZONTAL;
86
- var _props_margins_left3, _props_margins_right3;
87
- margins.right = _useRtl ? (_props_margins_left3 = (_props_margins9 = props.margins) === null || _props_margins9 === void 0 ? void 0 : _props_margins9.left) !== null && _props_margins_left3 !== void 0 ? _props_margins_left3 : margins.left + TITLE_MARGIN_HORIZONTAL : ((_props_margins_right3 = (_props_margins10 = props.margins) === null || _props_margins10 === void 0 ? void 0 : _props_margins10.right) !== null && _props_margins_right3 !== void 0 ? _props_margins_right3 : props === null || props === void 0 ? void 0 : props.secondaryYAxistitle) ? margins.right + 2 * TITLE_MARGIN_HORIZONTAL : margins.right + TITLE_MARGIN_HORIZONTAL;
88
- }
89
- if (props.xAxisAnnotation !== undefined && props.xAxisAnnotation !== '') {
90
- var _props_margins11;
91
- var _props_margins_top1;
92
- margins.top = (_props_margins_top1 = (_props_margins11 = props.margins) === null || _props_margins11 === void 0 ? void 0 : _props_margins11.top) !== null && _props_margins_top1 !== void 0 ? _props_margins_top1 : margins.top + TITLE_MARGIN_VERTICAL;
93
- }
94
- if (props.yAxisAnnotation !== undefined && props.yAxisAnnotation !== '' && (props.secondaryYAxistitle === undefined || props.secondaryYAxistitle === '')) {
95
- if (_useRtl) {
96
- var _props_margins12;
97
- var _props_margins_right4;
98
- margins.left = (_props_margins_right4 = (_props_margins12 = props.margins) === null || _props_margins12 === void 0 ? void 0 : _props_margins12.right) !== null && _props_margins_right4 !== void 0 ? _props_margins_right4 : margins.right + TITLE_MARGIN_HORIZONTAL;
99
- } else {
100
- var _props_margins13;
101
- var _props_margins_right5;
102
- margins.right = (_props_margins_right5 = (_props_margins13 = props.margins) === null || _props_margins13 === void 0 ? void 0 : _props_margins13.right) !== null && _props_margins_right5 !== void 0 ? _props_margins_right5 : margins.right + TITLE_MARGIN_HORIZONTAL;
103
- }
104
- }
105
60
  const classes = (0, _useCartesianChartStylesstyles.useCartesianChartStyles)(props);
106
61
  const focusAttributes = (0, _reacttabster.useFocusableGroup)();
107
62
  const arrowAttributes = (0, _reacttabster.useArrowNavigationGroup)({
@@ -110,7 +65,7 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
110
65
  // ComponentdidMount and Componentwillunmount logic
111
66
  _react.useEffect(()=>{
112
67
  _fitParentContainer();
113
- if (chartTypesWithStringYAxis.includes(props.chartType) && props.showYAxisLables && yAxisElement && props.yAxisType === _index.YAxisType.StringAxis) {
68
+ if (props.showYAxisLables) {
114
69
  const maxYAxisLabelLength = calculateMaxYAxisLabelLength(classes.yAxis);
115
70
  if (startFromX !== maxYAxisLabelLength) {
116
71
  setStartFromX(maxYAxisLabelLength);
@@ -135,7 +90,7 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
135
90
  // Update refs with current values
136
91
  prevWidthRef.current = props.width;
137
92
  prevHeightRef.current = props.height;
138
- if (chartTypesWithStringYAxis.includes(props.chartType) && props.showYAxisLables && yAxisElement && props.yAxisType === _index.YAxisType.StringAxis) {
93
+ if (props.showYAxisLables) {
139
94
  const maxYAxisLabelLength = calculateMaxYAxisLabelLength(classes.yAxis);
140
95
  if (startFromX !== maxYAxisLabelLength) {
141
96
  setStartFromX(maxYAxisLabelLength);
@@ -173,32 +128,26 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
173
128
  }
174
129
  return str;
175
130
  };
176
- return (0, _index.calculateLongestLabelWidth)(props.stringDatasetForYAxisDomain.map((label)=>formatTickLabel(label)), `.${className} text`);
131
+ return (0, _index.calculateLongestLabelWidth)(_yAxisTickText.current.map((label)=>formatTickLabel(label)), `.${className} text`);
177
132
  }
178
133
  const { calloutProps, points, chartType, svgProps, culture, dateLocalizeOptions, timeFormatLocale, customDateTimeFormatter } = props;
179
134
  if (props.parentRef) {
180
135
  _fitParentContainer();
181
136
  }
182
- const margin = {
183
- ...margins
184
- };
185
- // Note: This check is unnecessary since startFromX is only set for charts with string y-axis.
186
- if (chartTypesWithStringYAxis.includes(props.chartType)) {
187
- if (!_useRtl) {
188
- margin.left += startFromX;
189
- } else {
190
- margin.right += startFromX;
191
- }
192
- }
137
+ margins = _calcMargins();
193
138
  // Callback for margins to the chart
194
- props.getmargins && props.getmargins(margin);
139
+ props.getmargins && props.getmargins(margins);
195
140
  let callout = null;
141
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
142
+ let yScalePrimary;
143
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
144
+ let yScaleSecondary;
196
145
  let children = null;
197
146
  if (props.enableFirstRenderOptimization && chartContainer.current || !props.enableFirstRenderOptimization) {
198
147
  _isFirstRender.current = false;
199
148
  var _props_showRoundOffXTickValues;
200
149
  const XAxisParams = {
201
- domainNRangeValues: props.getDomainNRangeValues(points, props.getDomainMargins ? props.getDomainMargins(containerWidth) : margins, containerWidth, chartType, _useRtl, props.xAxisType, props.barwidth, props.tickValues, startFromX),
150
+ domainNRangeValues: props.getDomainNRangeValues(points, props.getDomainMargins ? props.getDomainMargins(containerWidth) : margins, containerWidth, chartType, _useRtl, props.xAxisType, props.barwidth, props.tickValues),
202
151
  // FIXME: In XAxisParams, containerHeight is used by HBWA to generate vertical gridlines.
203
152
  // Since the x-axis in HBWA is numeric, it typically doesn't require transformation.
204
153
  // However, if transformation props are enabled, the updated _removalValueForTextTuncate
@@ -268,15 +217,12 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
268
217
  * 1. To create x and y axis
269
218
  * 2. To draw the graph.
270
219
  * For area/line chart using same scales. For other charts, creating their own scales to draw the graph.
271
- */ // eslint-disable-next-line @typescript-eslint/no-explicit-any
272
- let yScalePrimary;
273
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
274
- let yScaleSecondary;
275
- const axisData = {
276
- yAxisDomainValues: []
220
+ */ const axisData = {
221
+ yAxisDomainValues: [],
222
+ yAxisTickText: []
277
223
  };
278
224
  if (props.yAxisType && props.yAxisType === _index.YAxisType.StringAxis) {
279
- yScalePrimary = props.createStringYAxis(YAxisParams, props.stringDatasetForYAxisDomain, _useRtl, props.barwidth, props.chartType);
225
+ yScalePrimary = props.createStringYAxis(YAxisParams, props.stringDatasetForYAxisDomain, _useRtl, axisData, props.barwidth, props.chartType);
280
226
  } else {
281
227
  // TODO: Since the scale domain values are now computed independently for both the primary and
282
228
  // secondary y-axes, the yMinValue and yMaxValue props are no longer necessary for accurately
@@ -303,42 +249,41 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
303
249
  }
304
250
  yScalePrimary = props.createYAxis(YAxisParams, _useRtl, axisData, isIntegralDataset, chartType, false, props.roundedTicks, props.yScaleType, _useRtl);
305
251
  }
306
- if (chartTypesWithStringYAxis.includes(props.chartType) && props.yAxisType === _index.YAxisType.StringAxis) {
307
- // Removing un wanted tooltip div from DOM, when prop not provided, for proper cleanup
308
- // of unwanted DOM elements, to prevent flacky behaviour in tooltips , that might occur
309
- // in creating tooltips when tooltips are enabled( as we try to recreate a tspan with _tooltipId)
310
- if (!props.showYAxisLablesTooltip) {
311
- try {
312
- document.getElementById(_tooltipId) && document.getElementById(_tooltipId).remove();
313
- //eslint-disable-next-line no-empty
314
- } catch (e) {}
315
- }
316
- // Used to display tooltip at y axis labels.
317
- if (props.showYAxisLablesTooltip) {
318
- // To create y axis tick values by if specified truncating the rest of the text
319
- // and showing elipsis or showing the whole string,
320
- yScalePrimary && // Note: This function should be invoked within the showYAxisLablesTooltip check,
321
- // as its sole purpose is to truncate labels that exceed the noOfCharsToTruncate limit.
322
- (0, _index.createYAxisLabels)(yAxisElement.current, yScalePrimary, props.noOfCharsToTruncate || 4, props.showYAxisLablesTooltip || false, _useRtl);
323
- const _yAxisElement = (0, _d3selection.select)(yAxisElement.current).call(yScalePrimary);
324
- try {
325
- document.getElementById(_tooltipId) && document.getElementById(_tooltipId).remove();
326
- //eslint-disable-next-line no-empty
327
- } catch (e) {}
328
- const ytooltipProps = {
329
- tooltipCls: classes.tooltip,
330
- id: _tooltipId,
331
- axis: _yAxisElement
332
- };
333
- _yAxisElement && (0, _index.tooltipOfAxislabels)(ytooltipProps);
334
- }
252
+ _yAxisTickText.current = axisData.yAxisTickText;
253
+ props.getAxisData && props.getAxisData(axisData);
254
+ // Removing un wanted tooltip div from DOM, when prop not provided, for proper cleanup
255
+ // of unwanted DOM elements, to prevent flacky behaviour in tooltips , that might occur
256
+ // in creating tooltips when tooltips are enabled( as we try to recreate a tspan with _tooltipId)
257
+ if (!props.showYAxisLablesTooltip) {
258
+ try {
259
+ document.getElementById(_tooltipId) && document.getElementById(_tooltipId).remove();
260
+ //eslint-disable-next-line no-empty
261
+ } catch (e) {}
262
+ }
263
+ // Used to display tooltip at y axis labels.
264
+ if (props.showYAxisLablesTooltip) {
265
+ // To create y axis tick values by if specified truncating the rest of the text
266
+ // and showing elipsis or showing the whole string,
267
+ yScalePrimary && // Note: This function should be invoked within the showYAxisLablesTooltip check,
268
+ // as its sole purpose is to truncate labels that exceed the noOfCharsToTruncate limit.
269
+ (0, _index.createYAxisLabels)(yAxisElement.current, yScalePrimary, props.noOfCharsToTruncate || 4, props.showYAxisLablesTooltip || false, _useRtl);
270
+ const _yAxisElement = (0, _d3selection.select)(yAxisElement.current).call(yScalePrimary);
271
+ try {
272
+ document.getElementById(_tooltipId) && document.getElementById(_tooltipId).remove();
273
+ //eslint-disable-next-line no-empty
274
+ } catch (e) {}
275
+ const ytooltipProps = {
276
+ tooltipCls: classes.tooltip,
277
+ id: _tooltipId,
278
+ axis: _yAxisElement
279
+ };
280
+ _yAxisElement && (0, _index.tooltipOfAxislabels)(ytooltipProps);
335
281
  }
336
282
  // Call back to the chart.
337
283
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
338
284
  const _getData = (xScale, yScalePrimary, yScaleSecondary)=>{
339
285
  props.getGraphData && props.getGraphData(xScale, yScalePrimary, containerHeight - _removalValueForTextTuncate, containerWidth, xAxisElement.current, yAxisElement.current, yScaleSecondary);
340
286
  };
341
- props.getAxisData && props.getAxisData(axisData);
342
287
  // Callback function for chart, returns axis
343
288
  _getData(xScale, yScalePrimary, yScaleSecondary);
344
289
  children = props.children({
@@ -356,8 +301,30 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
356
301
  width: containerWidth,
357
302
  height: containerHeight
358
303
  };
359
- const xAxisTitleMaximumAllowedWidth = svgDimensions.width - margins.left - margins.right - startFromX;
360
- const yAxisTitleMaximumAllowedHeight = svgDimensions.height - margins.bottom - margins.top - _removalValueForTextTuncate - titleMargin;
304
+ const plotWidth = Math.max(0, svgDimensions.width - margins.left - margins.right);
305
+ const plotHeight = Math.max(0, svgDimensions.height - margins.top - margins.bottom - _removalValueForTextTuncate);
306
+ const plotRect = {
307
+ x: margins.left,
308
+ y: margins.top,
309
+ width: plotWidth,
310
+ height: plotHeight
311
+ };
312
+ var _props_annotations;
313
+ const annotations = (_props_annotations = props.annotations) !== null && _props_annotations !== void 0 ? _props_annotations : [];
314
+ const hasAnnotations = annotations.length > 0;
315
+ const annotationContext = hasAnnotations ? {
316
+ plotRect,
317
+ svgRect: svgDimensions,
318
+ isRtl: _useRtl,
319
+ xScale: _xScale,
320
+ yScalePrimary,
321
+ yScaleSecondary
322
+ } : undefined;
323
+ const xAxisTitleMaxWidth = svgDimensions.width - margins.left - margins.right - AXIS_TITLE_PADDING * 2;
324
+ const yAxisTitleMaxHeight = svgDimensions.height - margins.bottom - margins.top - _removalValueForTextTuncate - AXIS_TITLE_PADDING * 2;
325
+ const yAxisTitleCenterY = margins.top + AXIS_TITLE_PADDING + yAxisTitleMaxHeight / 2;
326
+ const yAxisTitleCenterX = _useRtl ? svgDimensions.width - AXIS_TITLE_PADDING : HORIZONTAL_MARGIN_FOR_YAXIS_TITLE - AXIS_TITLE_PADDING;
327
+ const secondaryYAxisTitleCenterX = _useRtl ? HORIZONTAL_MARGIN_FOR_YAXIS_TITLE - AXIS_TITLE_PADDING : svgDimensions.width - AXIS_TITLE_PADDING;
361
328
  const commonSvgToolTipProps = {
362
329
  wrapContent: _index.wrapContent,
363
330
  showBackground: true,
@@ -477,6 +444,64 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
477
444
  _removalValueForTextTuncate = rotatedHeight + margins.bottom;
478
445
  }
479
446
  }
447
+ function _calcMargins() {
448
+ let _margins = _getDefaultMargins();
449
+ _margins = _applyTitleMargins(_margins);
450
+ _margins = _applyAnnotationMargins(_margins);
451
+ if (_useRtl) {
452
+ _margins = _swapRtlMargins(_margins);
453
+ }
454
+ return {
455
+ ..._margins,
456
+ ...props.margins
457
+ };
458
+ }
459
+ function _getDefaultMargins() {
460
+ return {
461
+ top: DEFAULT_MARGIN_NO_TICKS,
462
+ // Smaller than the default because it is based on the line height rather than
463
+ // the length of the tick labels.
464
+ bottom: DEFAULT_MARGIN_WITH_TICKS - 5,
465
+ // For the actual margin, add the tick size, tick padding, and some extra space to
466
+ // the width of the longest yaxis tick label (startFromX).
467
+ left: Math.max(DEFAULT_MARGIN_WITH_TICKS, startFromX + 20),
468
+ right: props.secondaryYScaleOptions ? DEFAULT_MARGIN_WITH_TICKS : DEFAULT_MARGIN_NO_TICKS
469
+ };
470
+ }
471
+ function _applyTitleMargins(_margins) {
472
+ const updated = {
473
+ ..._margins
474
+ };
475
+ if (props.xAxisTitle !== undefined && props.xAxisTitle !== '') {
476
+ updated.bottom += VERTICAL_MARGIN_FOR_XAXIS_TITLE;
477
+ }
478
+ if (props.yAxisTitle !== undefined && props.yAxisTitle !== '') {
479
+ updated.left += HORIZONTAL_MARGIN_FOR_YAXIS_TITLE;
480
+ }
481
+ if (props.secondaryYAxistitle !== undefined && props.secondaryYAxistitle !== '') {
482
+ updated.right += HORIZONTAL_MARGIN_FOR_YAXIS_TITLE;
483
+ }
484
+ return updated;
485
+ }
486
+ function _applyAnnotationMargins(_margins) {
487
+ const updated = {
488
+ ..._margins
489
+ };
490
+ if (props.xAxisAnnotation !== undefined && props.xAxisAnnotation !== '') {
491
+ updated.top += VERTICAL_MARGIN_FOR_XAXIS_TITLE;
492
+ }
493
+ if (props.yAxisAnnotation !== undefined && props.yAxisAnnotation !== '' && (props.secondaryYAxistitle === undefined || props.secondaryYAxistitle === '')) {
494
+ updated.right += HORIZONTAL_MARGIN_FOR_YAXIS_TITLE;
495
+ }
496
+ return updated;
497
+ }
498
+ function _swapRtlMargins(_margins) {
499
+ return {
500
+ ..._margins,
501
+ left: _margins.right,
502
+ right: _margins.left
503
+ };
504
+ }
480
505
  /**
481
506
  * We have use the {@link defaultTabbableElement } to fix
482
507
  * the Focus not landing on chart while tabbing, instead goes to legend.
@@ -528,75 +553,76 @@ const CartesianChart = /*#__PURE__*/ _react.forwardRef(({ hideTickOverlap = true
528
553
  ...commonSvgToolTipProps,
529
554
  content: props.xAxisTitle,
530
555
  textProps: {
531
- x: margins.left + startFromX + xAxisTitleMaximumAllowedWidth / 2,
532
- y: svgDimensions.height - titleMargin,
556
+ x: margins.left + AXIS_TITLE_PADDING + xAxisTitleMaxWidth / 2,
557
+ y: svgDimensions.height - AXIS_TITLE_PADDING,
533
558
  className: classes.axisTitle,
534
559
  textAnchor: 'middle'
535
560
  },
536
- maxWidth: xAxisTitleMaximumAllowedWidth
561
+ maxWidth: xAxisTitleMaxWidth
537
562
  }), props.xAxisAnnotation !== undefined && props.xAxisAnnotation !== '' && /*#__PURE__*/ _react.createElement(_SVGTooltipText.SVGTooltipText, {
538
563
  ...commonSvgToolTipProps,
539
564
  content: props.xAxisAnnotation,
540
565
  textProps: {
541
- x: margins.left + startFromX + xAxisTitleMaximumAllowedWidth / 2,
542
- y: titleMargin + 3,
566
+ x: margins.left + AXIS_TITLE_PADDING + xAxisTitleMaxWidth / 2,
567
+ y: VERTICAL_MARGIN_FOR_XAXIS_TITLE - AXIS_TITLE_PADDING,
543
568
  className: classes.axisAnnotation,
544
569
  textAnchor: 'middle',
545
570
  'aria-hidden': true
546
571
  },
547
- maxWidth: xAxisTitleMaximumAllowedWidth
572
+ maxWidth: xAxisTitleMaxWidth
548
573
  }), /*#__PURE__*/ _react.createElement("g", {
549
574
  ref: (e)=>{
550
575
  yAxisElement.current = e;
551
576
  },
552
577
  id: `yAxisGElement${idForGraph}`,
553
- transform: `translate(${_useRtl ? svgDimensions.width - margins.right - startFromX : margins.left + startFromX}, 0)`,
578
+ transform: `translate(${_useRtl ? svgDimensions.width - margins.right : margins.left}, 0)`,
554
579
  className: classes.yAxis
555
580
  }), props.secondaryYScaleOptions && /*#__PURE__*/ _react.createElement("g", null, /*#__PURE__*/ _react.createElement("g", {
556
581
  ref: (e)=>{
557
582
  yAxisElementSecondary.current = e;
558
583
  },
559
584
  id: `yAxisGElementSecondary${idForGraph}`,
560
- transform: `translate(${_useRtl ? margins.left + startFromX : svgDimensions.width - margins.right - startFromX}, 0)`,
585
+ transform: `translate(${_useRtl ? margins.left : svgDimensions.width - margins.right}, 0)`,
561
586
  className: classes.yAxis
562
587
  }), props.secondaryYAxistitle !== undefined && props.secondaryYAxistitle !== '' && /*#__PURE__*/ _react.createElement(_SVGTooltipText.SVGTooltipText, {
563
588
  ...commonSvgToolTipProps,
564
589
  content: props.secondaryYAxistitle,
565
590
  textProps: {
566
- x: (yAxisTitleMaximumAllowedHeight - margins.bottom) / 2 + _removalValueForTextTuncate,
567
- y: _useRtl ? startFromX - titleMargin : svgDimensions.width - margins.right,
591
+ x: secondaryYAxisTitleCenterX,
592
+ y: yAxisTitleCenterY,
568
593
  textAnchor: 'middle',
569
- transform: `translate(${_useRtl ? margins.right / 2 - titleMargin : margins.right / 2 + titleMargin},
570
- ${svgDimensions.height - margins.bottom - margins.top - titleMargin})rotate(-90)`,
594
+ transform: `rotate(-90, ${secondaryYAxisTitleCenterX}, ${yAxisTitleCenterY})`,
571
595
  className: classes.axisTitle
572
596
  },
573
- maxWidth: yAxisTitleMaximumAllowedHeight
597
+ maxWidth: yAxisTitleMaxHeight
574
598
  })), children, props.yAxisTitle !== undefined && props.yAxisTitle !== '' && /*#__PURE__*/ _react.createElement(_SVGTooltipText.SVGTooltipText, {
575
599
  ...commonSvgToolTipProps,
576
600
  content: props.yAxisTitle,
577
601
  textProps: {
578
- x: (yAxisTitleMaximumAllowedHeight - margins.bottom) / 2 + _removalValueForTextTuncate,
579
- y: _useRtl ? svgDimensions.width - margins.right / 2 + titleMargin : margins.left / 2 - titleMargin,
602
+ x: yAxisTitleCenterX,
603
+ y: yAxisTitleCenterY,
580
604
  textAnchor: 'middle',
581
- transform: `translate(0,
582
- ${svgDimensions.height - margins.bottom - margins.top - titleMargin})rotate(-90)`,
605
+ transform: `rotate(-90, ${yAxisTitleCenterX}, ${yAxisTitleCenterY})`,
583
606
  className: classes.axisTitle
584
607
  },
585
- maxWidth: yAxisTitleMaximumAllowedHeight
608
+ maxWidth: yAxisTitleMaxHeight
586
609
  }), props.yAxisAnnotation !== undefined && props.yAxisAnnotation !== '' && (props.secondaryYAxistitle === undefined || props.secondaryYAxistitle === '') && /*#__PURE__*/ _react.createElement(_SVGTooltipText.SVGTooltipText, {
587
610
  ...commonSvgToolTipProps,
588
611
  content: props.yAxisAnnotation,
589
612
  textProps: {
590
- x: (yAxisTitleMaximumAllowedHeight - margins.bottom) / 2 + _removalValueForTextTuncate,
591
- y: _useRtl ? startFromX - titleMargin : svgDimensions.width - margins.right,
613
+ x: secondaryYAxisTitleCenterX,
614
+ y: yAxisTitleCenterY,
592
615
  textAnchor: 'middle',
593
- transform: `translate(${_useRtl ? margins.right / 2 - titleMargin : margins.right / 2 + titleMargin},
594
- ${svgDimensions.height - margins.bottom - margins.top - titleMargin})rotate(-90)`,
616
+ transform: `rotate(-90, ${secondaryYAxisTitleCenterX}, ${yAxisTitleCenterY})`,
595
617
  className: classes.axisAnnotation,
596
618
  'aria-hidden': true
597
619
  },
598
- maxWidth: yAxisTitleMaximumAllowedHeight
599
- }))), !props.hideLegend && /*#__PURE__*/ _react.createElement("div", {
620
+ maxWidth: yAxisTitleMaxHeight
621
+ })), hasAnnotations && annotationContext && /*#__PURE__*/ _react.createElement(_ChartAnnotationLayer.ChartAnnotationLayer, {
622
+ annotations: annotations,
623
+ context: annotationContext,
624
+ className: classes.annotationLayer
625
+ })), !props.hideLegend && /*#__PURE__*/ _react.createElement("div", {
600
626
  ref: (e)=>{
601
627
  legendContainer = e;
602
628
  },