@mui/x-charts 6.0.0-alpha.8 → 6.18.0

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 (286) hide show
  1. package/BarChart/BarChart.d.ts +19 -5
  2. package/BarChart/BarChart.js +52 -13
  3. package/BarChart/BarElement.d.ts +1319 -4
  4. package/BarChart/BarElement.js +10 -10
  5. package/BarChart/BarPlot.d.ts +17 -1
  6. package/BarChart/BarPlot.js +152 -66
  7. package/BarChart/formatter.js +2 -3
  8. package/BarChart/legend.js +1 -2
  9. package/CHANGELOG.md +786 -48
  10. package/ChartContainer/index.js +7 -5
  11. package/ChartsAxis/ChartsAxis.d.ts +9 -0
  12. package/ChartsAxis/ChartsAxis.js +28 -2
  13. package/ChartsAxis/axisClasses.d.ts +1 -1
  14. package/ChartsAxis/axisClasses.js +1 -2
  15. package/ChartsAxisHighlight/ChartsAxisHighlight.d.ts +21 -0
  16. package/ChartsAxisHighlight/ChartsAxisHighlight.js +61 -22
  17. package/ChartsClipPath/ChartsClipPath.d.ts +5 -0
  18. package/ChartsClipPath/ChartsClipPath.js +7 -2
  19. package/ChartsLegend/ChartsLegend.d.ts +44 -24
  20. package/ChartsLegend/ChartsLegend.js +192 -150
  21. package/ChartsLegend/chartsLegendClasses.js +1 -2
  22. package/ChartsLegend/utils.d.ts +1 -6
  23. package/ChartsSurface.d.ts +1 -1
  24. package/ChartsSurface.js +9 -18
  25. package/ChartsTooltip/ChartsAxisTooltipContent.d.ts +1 -0
  26. package/ChartsTooltip/ChartsAxisTooltipContent.js +46 -32
  27. package/ChartsTooltip/ChartsItemTooltipContent.d.ts +3 -2
  28. package/ChartsTooltip/ChartsItemTooltipContent.js +18 -9
  29. package/ChartsTooltip/ChartsTooltip.d.ts +32 -0
  30. package/ChartsTooltip/ChartsTooltip.js +62 -18
  31. package/ChartsTooltip/ChartsTooltipTable.d.ts +3 -10
  32. package/ChartsTooltip/ChartsTooltipTable.js +22 -20
  33. package/ChartsTooltip/tooltipClasses.js +1 -2
  34. package/ChartsTooltip/utils.js +2 -2
  35. package/ChartsXAxis/ChartsXAxis.d.ts +9 -0
  36. package/ChartsXAxis/ChartsXAxis.js +161 -40
  37. package/ChartsYAxis/ChartsYAxis.d.ts +9 -0
  38. package/ChartsYAxis/ChartsYAxis.js +86 -33
  39. package/LineChart/AreaElement.d.ts +12 -2
  40. package/LineChart/AreaElement.js +14 -6
  41. package/LineChart/AreaPlot.d.ts +11 -0
  42. package/LineChart/AreaPlot.js +27 -8
  43. package/LineChart/LineChart.d.ts +21 -3
  44. package/LineChart/LineChart.js +61 -14
  45. package/LineChart/LineElement.d.ts +12 -2
  46. package/LineChart/LineElement.js +14 -6
  47. package/LineChart/LineHighlightElement.d.ts +31 -0
  48. package/LineChart/LineHighlightElement.js +88 -0
  49. package/LineChart/LineHighlightPlot.d.ts +35 -0
  50. package/LineChart/LineHighlightPlot.js +110 -0
  51. package/LineChart/LinePlot.d.ts +10 -0
  52. package/LineChart/LinePlot.js +25 -12
  53. package/LineChart/MarkElement.d.ts +11 -1
  54. package/LineChart/MarkElement.js +15 -9
  55. package/LineChart/MarkPlot.d.ts +10 -0
  56. package/LineChart/MarkPlot.js +62 -15
  57. package/LineChart/formatter.js +5 -5
  58. package/LineChart/index.d.ts +2 -0
  59. package/LineChart/index.js +20 -0
  60. package/LineChart/legend.js +1 -2
  61. package/PieChart/PieArc.d.ts +12 -14
  62. package/PieChart/PieArc.js +28 -60
  63. package/PieChart/PieArcLabel.d.ts +9 -10
  64. package/PieChart/PieArcLabel.js +46 -38
  65. package/PieChart/PieArcLabelPlot.d.ts +28 -0
  66. package/PieChart/PieArcLabelPlot.js +99 -0
  67. package/PieChart/PieArcPlot.d.ts +35 -0
  68. package/PieChart/PieArcPlot.js +92 -0
  69. package/PieChart/PieChart.d.ts +19 -5
  70. package/PieChart/PieChart.js +61 -14
  71. package/PieChart/PiePlot.d.ts +15 -9
  72. package/PieChart/PiePlot.js +77 -55
  73. package/PieChart/dataTransform/transition.d.ts +4 -0
  74. package/PieChart/dataTransform/transition.js +136 -0
  75. package/PieChart/dataTransform/useTransformData.d.ts +15 -0
  76. package/PieChart/dataTransform/useTransformData.js +67 -0
  77. package/PieChart/formatter.js +1 -2
  78. package/PieChart/legend.js +1 -2
  79. package/README.md +8 -14
  80. package/ResponsiveChartContainer/index.js +7 -8
  81. package/ScatterChart/Scatter.d.ts +10 -0
  82. package/ScatterChart/Scatter.js +12 -2
  83. package/ScatterChart/ScatterChart.d.ts +16 -3
  84. package/ScatterChart/ScatterChart.js +43 -12
  85. package/ScatterChart/ScatterPlot.d.ts +10 -0
  86. package/ScatterChart/ScatterPlot.js +12 -2
  87. package/ScatterChart/formatter.js +1 -2
  88. package/ScatterChart/legend.js +1 -2
  89. package/SparkLineChart/SparkLineChart.d.ts +13 -3
  90. package/SparkLineChart/SparkLineChart.js +34 -18
  91. package/colorPalettes/colorPalettes.js +6 -12
  92. package/constants.js +5 -8
  93. package/context/CartesianContextProvider.d.ts +5 -0
  94. package/context/CartesianContextProvider.js +31 -16
  95. package/context/DrawingProvider.d.ts +7 -0
  96. package/context/DrawingProvider.js +12 -6
  97. package/context/HighlightProvider.js +3 -4
  98. package/context/InteractionProvider.js +3 -4
  99. package/context/SeriesContextProvider.js +3 -4
  100. package/esm/BarChart/BarChart.js +49 -9
  101. package/esm/BarChart/BarElement.js +7 -4
  102. package/esm/BarChart/BarPlot.js +152 -67
  103. package/esm/BarChart/formatter.js +1 -1
  104. package/esm/ChartContainer/index.js +3 -0
  105. package/esm/ChartsAxis/ChartsAxis.js +26 -0
  106. package/esm/ChartsAxisHighlight/ChartsAxisHighlight.js +57 -20
  107. package/esm/ChartsClipPath/ChartsClipPath.js +5 -0
  108. package/esm/ChartsLegend/ChartsLegend.js +188 -142
  109. package/esm/ChartsSurface.js +4 -12
  110. package/esm/ChartsTooltip/ChartsAxisTooltipContent.js +44 -30
  111. package/esm/ChartsTooltip/ChartsItemTooltipContent.js +15 -7
  112. package/esm/ChartsTooltip/ChartsTooltip.js +59 -14
  113. package/esm/ChartsTooltip/ChartsTooltipTable.js +17 -10
  114. package/esm/ChartsXAxis/ChartsXAxis.js +158 -37
  115. package/esm/ChartsYAxis/ChartsYAxis.js +83 -30
  116. package/esm/LineChart/AreaElement.js +10 -0
  117. package/esm/LineChart/AreaPlot.js +26 -6
  118. package/esm/LineChart/LineChart.js +58 -10
  119. package/esm/LineChart/LineElement.js +10 -0
  120. package/esm/LineChart/LineHighlightElement.js +78 -0
  121. package/esm/LineChart/LineHighlightPlot.js +103 -0
  122. package/esm/LineChart/LinePlot.js +25 -14
  123. package/esm/LineChart/MarkElement.js +12 -5
  124. package/esm/LineChart/MarkPlot.js +60 -13
  125. package/esm/LineChart/formatter.js +7 -3
  126. package/esm/LineChart/index.js +3 -1
  127. package/esm/PieChart/PieArc.js +26 -58
  128. package/esm/PieChart/PieArcLabel.js +43 -34
  129. package/esm/PieChart/PieArcLabelPlot.js +92 -0
  130. package/esm/PieChart/PieArcPlot.js +84 -0
  131. package/esm/PieChart/PieChart.js +59 -12
  132. package/esm/PieChart/PiePlot.js +76 -57
  133. package/esm/PieChart/dataTransform/transition.js +130 -0
  134. package/esm/PieChart/dataTransform/useTransformData.js +59 -0
  135. package/esm/ResponsiveChartContainer/index.js +3 -3
  136. package/esm/ScatterChart/Scatter.js +10 -0
  137. package/esm/ScatterChart/ScatterChart.js +40 -8
  138. package/esm/ScatterChart/ScatterPlot.js +10 -0
  139. package/esm/SparkLineChart/SparkLineChart.js +32 -15
  140. package/esm/constants.js +1 -1
  141. package/esm/context/CartesianContextProvider.js +30 -14
  142. package/esm/context/DrawingProvider.js +8 -0
  143. package/esm/hooks/useChartDimensions.js +2 -0
  144. package/esm/hooks/useMounted.js +16 -0
  145. package/esm/hooks/useReducedMotion.js +27 -0
  146. package/esm/hooks/useTicks.js +15 -9
  147. package/esm/internals/components/AxisSharedComponents.js +15 -70
  148. package/esm/internals/components/ChartsText.js +77 -0
  149. package/esm/internals/domUtils.js +113 -0
  150. package/esm/internals/geometry.js +36 -0
  151. package/hooks/useAxisEvents.js +2 -2
  152. package/hooks/useChartDimensions.d.ts +2 -0
  153. package/hooks/useChartDimensions.js +5 -4
  154. package/hooks/useDrawingArea.js +2 -2
  155. package/hooks/useInteractionItemProps.js +2 -2
  156. package/hooks/useMounted.d.ts +1 -0
  157. package/hooks/useMounted.js +25 -0
  158. package/hooks/useReducedMotion.d.ts +8 -0
  159. package/hooks/useReducedMotion.js +33 -0
  160. package/hooks/useScale.d.ts +2 -2
  161. package/hooks/useScale.js +2 -2
  162. package/hooks/useTicks.d.ts +19 -11
  163. package/hooks/useTicks.js +19 -14
  164. package/index.js +1 -1
  165. package/internals/components/AxisSharedComponents.d.ts +0 -4
  166. package/internals/components/AxisSharedComponents.js +18 -78
  167. package/internals/components/ChartsText.d.ts +35 -0
  168. package/internals/components/ChartsText.js +87 -0
  169. package/internals/defaultizeColor.d.ts +8 -1
  170. package/internals/defaultizeValueFormatter.js +1 -2
  171. package/internals/domUtils.d.ts +13 -0
  172. package/internals/domUtils.js +122 -0
  173. package/internals/geometry.d.ts +9 -0
  174. package/internals/geometry.js +42 -0
  175. package/internals/stackSeries.js +2 -4
  176. package/legacy/BarChart/BarChart.js +49 -9
  177. package/legacy/BarChart/BarElement.js +6 -3
  178. package/legacy/BarChart/BarPlot.js +151 -63
  179. package/legacy/BarChart/formatter.js +1 -1
  180. package/legacy/ChartContainer/index.js +3 -0
  181. package/legacy/ChartsAxis/ChartsAxis.js +26 -0
  182. package/legacy/ChartsAxisHighlight/ChartsAxisHighlight.js +60 -20
  183. package/legacy/ChartsClipPath/ChartsClipPath.js +5 -0
  184. package/legacy/ChartsLegend/ChartsLegend.js +203 -140
  185. package/legacy/ChartsSurface.js +3 -12
  186. package/legacy/ChartsTooltip/ChartsAxisTooltipContent.js +22 -10
  187. package/legacy/ChartsTooltip/ChartsItemTooltipContent.js +15 -7
  188. package/legacy/ChartsTooltip/ChartsTooltip.js +62 -14
  189. package/legacy/ChartsTooltip/ChartsTooltipTable.js +34 -26
  190. package/legacy/ChartsXAxis/ChartsXAxis.js +162 -39
  191. package/legacy/ChartsYAxis/ChartsYAxis.js +83 -30
  192. package/legacy/LineChart/AreaElement.js +10 -0
  193. package/legacy/LineChart/AreaPlot.js +31 -7
  194. package/legacy/LineChart/LineChart.js +58 -10
  195. package/legacy/LineChart/LineElement.js +10 -0
  196. package/legacy/LineChart/LineHighlightElement.js +77 -0
  197. package/legacy/LineChart/LineHighlightPlot.js +96 -0
  198. package/legacy/LineChart/LinePlot.js +29 -12
  199. package/legacy/LineChart/MarkElement.js +12 -5
  200. package/legacy/LineChart/MarkPlot.js +50 -5
  201. package/legacy/LineChart/formatter.js +7 -3
  202. package/legacy/LineChart/index.js +3 -1
  203. package/legacy/PieChart/PieArc.js +30 -62
  204. package/legacy/PieChart/PieArcLabel.js +48 -34
  205. package/legacy/PieChart/PieArcLabelPlot.js +93 -0
  206. package/legacy/PieChart/PieArcPlot.js +84 -0
  207. package/legacy/PieChart/PieChart.js +59 -12
  208. package/legacy/PieChart/PiePlot.js +76 -59
  209. package/legacy/PieChart/dataTransform/transition.js +142 -0
  210. package/legacy/PieChart/dataTransform/useTransformData.js +60 -0
  211. package/legacy/ResponsiveChartContainer/index.js +3 -3
  212. package/legacy/ScatterChart/Scatter.js +10 -0
  213. package/legacy/ScatterChart/ScatterChart.js +40 -8
  214. package/legacy/ScatterChart/ScatterPlot.js +10 -0
  215. package/legacy/SparkLineChart/SparkLineChart.js +32 -13
  216. package/legacy/constants.js +1 -1
  217. package/legacy/context/CartesianContextProvider.js +30 -14
  218. package/legacy/context/DrawingProvider.js +8 -0
  219. package/legacy/hooks/useChartDimensions.js +2 -0
  220. package/legacy/hooks/useMounted.js +21 -0
  221. package/legacy/hooks/useReducedMotion.js +27 -0
  222. package/legacy/hooks/useTicks.js +16 -9
  223. package/legacy/index.js +1 -1
  224. package/legacy/internals/components/AxisSharedComponents.js +11 -65
  225. package/legacy/internals/components/ChartsText.js +79 -0
  226. package/legacy/internals/domUtils.js +121 -0
  227. package/legacy/internals/geometry.js +37 -0
  228. package/models/axis.d.ts +27 -9
  229. package/models/layout.d.ts +7 -6
  230. package/models/seriesType/line.d.ts +39 -1
  231. package/models/seriesType/pie.d.ts +5 -1
  232. package/modern/BarChart/BarChart.js +49 -9
  233. package/modern/BarChart/BarElement.js +7 -4
  234. package/modern/BarChart/BarPlot.js +149 -65
  235. package/modern/BarChart/formatter.js +1 -1
  236. package/modern/ChartContainer/index.js +3 -0
  237. package/modern/ChartsAxis/ChartsAxis.js +26 -0
  238. package/modern/ChartsAxisHighlight/ChartsAxisHighlight.js +57 -20
  239. package/modern/ChartsClipPath/ChartsClipPath.js +5 -0
  240. package/modern/ChartsLegend/ChartsLegend.js +188 -142
  241. package/modern/ChartsSurface.js +4 -12
  242. package/modern/ChartsTooltip/ChartsAxisTooltipContent.js +44 -30
  243. package/modern/ChartsTooltip/ChartsItemTooltipContent.js +15 -7
  244. package/modern/ChartsTooltip/ChartsTooltip.js +58 -14
  245. package/modern/ChartsTooltip/ChartsTooltipTable.js +17 -10
  246. package/modern/ChartsXAxis/ChartsXAxis.js +158 -37
  247. package/modern/ChartsYAxis/ChartsYAxis.js +83 -30
  248. package/modern/LineChart/AreaElement.js +10 -0
  249. package/modern/LineChart/AreaPlot.js +25 -6
  250. package/modern/LineChart/LineChart.js +58 -10
  251. package/modern/LineChart/LineElement.js +10 -0
  252. package/modern/LineChart/LineHighlightElement.js +78 -0
  253. package/modern/LineChart/LineHighlightPlot.js +102 -0
  254. package/modern/LineChart/LinePlot.js +23 -10
  255. package/modern/LineChart/MarkElement.js +12 -5
  256. package/modern/LineChart/MarkPlot.js +60 -13
  257. package/modern/LineChart/formatter.js +4 -3
  258. package/modern/LineChart/index.js +3 -1
  259. package/modern/PieChart/PieArc.js +26 -57
  260. package/modern/PieChart/PieArcLabel.js +43 -34
  261. package/modern/PieChart/PieArcLabelPlot.js +90 -0
  262. package/modern/PieChart/PieArcPlot.js +83 -0
  263. package/modern/PieChart/PieChart.js +59 -12
  264. package/modern/PieChart/PiePlot.js +76 -55
  265. package/modern/PieChart/dataTransform/transition.js +130 -0
  266. package/modern/PieChart/dataTransform/useTransformData.js +58 -0
  267. package/modern/ResponsiveChartContainer/index.js +3 -3
  268. package/modern/ScatterChart/Scatter.js +10 -0
  269. package/modern/ScatterChart/ScatterChart.js +40 -8
  270. package/modern/ScatterChart/ScatterPlot.js +10 -0
  271. package/modern/SparkLineChart/SparkLineChart.js +32 -15
  272. package/modern/constants.js +1 -1
  273. package/modern/context/CartesianContextProvider.js +29 -13
  274. package/modern/context/DrawingProvider.js +8 -0
  275. package/modern/hooks/useChartDimensions.js +2 -0
  276. package/modern/hooks/useMounted.js +16 -0
  277. package/modern/hooks/useReducedMotion.js +27 -0
  278. package/modern/hooks/useTicks.js +15 -9
  279. package/modern/index.js +1 -1
  280. package/modern/internals/components/AxisSharedComponents.js +15 -70
  281. package/modern/internals/components/ChartsText.js +77 -0
  282. package/modern/internals/domUtils.js +113 -0
  283. package/modern/internals/geometry.js +36 -0
  284. package/package.json +9 -6
  285. package/themeAugmentation/components.d.ts +1 -0
  286. package/themeAugmentation/overrides.d.ts +2 -0
@@ -1,12 +1,18 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
+ var _excluded = ["rotate", "dominantBaseline"],
5
+ _excluded2 = ["label"];
2
6
  import * as React from 'react';
3
7
  import { useSlotProps } from '@mui/base/utils';
8
+ import { NoSsr } from '@mui/base/NoSsr';
4
9
  import { unstable_composeClasses as composeClasses } from '@mui/utils';
5
10
  import { useThemeProps, useTheme, styled } from '@mui/material/styles';
6
11
  import { DrawingContext } from '../context/DrawingProvider';
7
12
  import { getSeriesToDisplay } from './utils';
8
13
  import { SeriesContext } from '../context/SeriesContextProvider';
9
14
  import { getChartsLegendUtilityClass } from './chartsLegendClasses';
15
+ import { ChartsText, getWordsByLines } from '../internals/components/ChartsText';
10
16
  import { jsx as _jsx } from "react/jsx-runtime";
11
17
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
18
  var useUtilityClasses = function useUtilityClasses(ownerState) {
@@ -20,165 +26,224 @@ var useUtilityClasses = function useUtilityClasses(ownerState) {
20
26
  };
21
27
  return composeClasses(slots, getChartsLegendUtilityClass, classes);
22
28
  };
23
- function getTranslePosition(_ref) {
24
- var position = _ref.position,
25
- drawingArea = _ref.drawingArea;
26
- var xValue;
27
- switch (position.horizontal) {
28
- case 'left':
29
- xValue = "calc(var(--ChartsLegend-rootOffsetX, 0px) + ".concat(drawingArea.left, "px - var(--ChartsLegend-rootWidth))");
30
- break;
31
- case 'middle':
32
- xValue = "calc(var(--ChartsLegend-rootOffsetX, 0px) + ".concat(drawingArea.left + drawingArea.width / 2, "px - 0.5 * var(--ChartsLegend-rootWidth))");
33
- break;
34
- default:
35
- xValue = "calc(var(--ChartsLegend-rootOffsetX, 0px) + ".concat(drawingArea.left + drawingArea.width, "px)");
36
- break;
37
- }
38
- var yValue;
39
- switch (position.vertical) {
40
- case 'top':
41
- yValue = "calc(var(--ChartsLegend-rootOffsetY, 0px) + ".concat(drawingArea.top, "px - var(--ChartsLegend-rootHeight))");
42
- break;
43
- case 'middle':
44
- yValue = "calc(var(--ChartsLegend-rootOffsetY, 0px) + ".concat(drawingArea.top + drawingArea.height / 2, "px - 0.5 * var(--ChartsLegend-rootHeight))");
45
- break;
46
- default:
47
- yValue = "calc(var(--ChartsLegend-rootOffsetY, 0px) + ".concat(drawingArea.top + drawingArea.height, "px)");
48
- break;
49
- }
50
- return {
51
- transform: "translate(".concat(xValue, ", ").concat(yValue, ")")
52
- };
53
- }
54
29
  export var ChartsLegendRoot = styled('g', {
55
30
  name: 'MuiChartsLegend',
56
31
  slot: 'Root',
57
32
  overridesResolver: function overridesResolver(props, styles) {
58
33
  return styles.root;
59
34
  }
60
- })(function (_ref2) {
61
- var ownerState = _ref2.ownerState;
62
- var direction = ownerState.direction,
63
- drawingArea = ownerState.drawingArea,
64
- offsetX = ownerState.offsetX,
65
- offsetY = ownerState.offsetY,
66
- seriesNumber = ownerState.seriesNumber,
67
- position = ownerState.position;
68
- return _extends({
69
- '--ChartsLegend-rootOffsetX': typeof offsetX === 'number' ? "".concat(offsetX, "px") : undefined,
70
- '--ChartsLegend-rootOffsetY': typeof offsetY === 'number' ? "".concat(offsetY, "px") : undefined,
71
- '--ChartsLegend-rootWidth': direction === 'row' ? "calc(var(--ChartsLegend-itemWidth) * ".concat(seriesNumber, " + var(--ChartsLegend-rootSpacing) * ").concat(seriesNumber - 1, " )") : 'var(--ChartsLegend-itemWidth)',
72
- '--ChartsLegend-rootHeight': direction === 'row' ? 'var(--ChartsLegend-itemMarkSize)' : "calc(var(--ChartsLegend-itemMarkSize) * ".concat(seriesNumber, " + var(--ChartsLegend-rootSpacing) * ").concat(seriesNumber - 1, " )")
73
- }, getTranslePosition({
74
- position: position,
75
- drawingArea: drawingArea,
76
- offsetX: offsetX,
77
- offsetY: offsetY
78
- }));
79
- });
80
- export var ChartsSeriesLegendGroup = styled('g', {
81
- name: 'MuiChartsLegend',
82
- slot: 'ChartsSeriesLegendGroup',
83
- overridesResolver: function overridesResolver(props, styles) {
84
- return styles.series;
85
- }
86
- })(function (_ref3) {
87
- var ownerState = _ref3.ownerState;
88
- var direction = ownerState.direction,
89
- seriesIndex = ownerState.seriesIndex;
90
- if (direction === 'row') {
91
- return {
92
- transform: "translate(calc(".concat(seriesIndex, " * (var(--ChartsLegend-itemWidth) + var(--ChartsLegend-rootSpacing))), 0)")
93
- };
94
- }
95
- return {
96
- transform: "translate(0, calc(".concat(seriesIndex, " * (var(--ChartsLegend-itemMarkSize) + var(--ChartsLegend-rootSpacing))))")
97
- };
98
- });
99
- export var ChartsLegendMark = styled('rect', {
100
- name: 'MuiChartsLegend',
101
- slot: 'Mark',
102
- overridesResolver: function overridesResolver(props, styles) {
103
- return styles.mark;
104
- }
105
- })(function (_ref4) {
106
- var ownerState = _ref4.ownerState;
107
- return {
108
- x: 0,
109
- y: 0,
110
- width: 'var(--ChartsLegend-itemMarkSize)',
111
- height: 'var(--ChartsLegend-itemMarkSize)',
112
- fill: ownerState.color
113
- };
114
- });
115
- export var ChartsLegendLabel = styled('text', {
116
- name: 'MuiChartsLegend',
117
- slot: 'Label',
118
- overridesResolver: function overridesResolver(props, styles) {
119
- return styles.label;
120
- }
121
- })(function (_ref5) {
122
- var theme = _ref5.theme;
123
- return _extends({}, theme.typography.body1, {
124
- color: 'inherit',
125
- transform: "translate(\n calc(var(--ChartsLegend-itemMarkSize) + var(--ChartsLegend-labelSpacing)),\n calc(0.5 * var(--ChartsLegend-itemMarkSize))\n )",
126
- fill: theme.palette.text.primary,
127
- dominantBaseline: 'central'
128
- });
129
- });
35
+ })({});
130
36
  var defaultProps = {
131
37
  position: {
132
38
  horizontal: 'middle',
133
39
  vertical: 'top'
134
40
  },
135
- direction: 'row',
136
- markSize: 20,
137
- itemWidth: 100,
138
- spacing: 2
41
+ direction: 'row'
42
+ };
43
+ /**
44
+ * Transforms number or partial padding object to a defaultized padding object.
45
+ */
46
+ var getStandardizedPadding = function getStandardizedPadding(padding) {
47
+ if (typeof padding === 'number') {
48
+ return {
49
+ left: padding,
50
+ right: padding,
51
+ top: padding,
52
+ bottom: padding
53
+ };
54
+ }
55
+ return _extends({
56
+ left: 0,
57
+ right: 0,
58
+ top: 0,
59
+ bottom: 0
60
+ }, padding);
139
61
  };
140
62
  function DefaultChartsLegend(props) {
141
63
  var hidden = props.hidden,
142
64
  position = props.position,
143
65
  direction = props.direction,
144
- offset = props.offset,
145
- series = props.series,
146
66
  seriesToDisplay = props.seriesToDisplay,
147
67
  drawingArea = props.drawingArea,
148
- classes = props.classes;
68
+ classes = props.classes,
69
+ _props$itemMarkWidth = props.itemMarkWidth,
70
+ itemMarkWidth = _props$itemMarkWidth === void 0 ? 20 : _props$itemMarkWidth,
71
+ _props$itemMarkHeight = props.itemMarkHeight,
72
+ itemMarkHeight = _props$itemMarkHeight === void 0 ? 20 : _props$itemMarkHeight,
73
+ _props$markGap = props.markGap,
74
+ markGap = _props$markGap === void 0 ? 5 : _props$markGap,
75
+ _props$itemGap = props.itemGap,
76
+ itemGap = _props$itemGap === void 0 ? 10 : _props$itemGap,
77
+ _props$padding = props.padding,
78
+ paddingProps = _props$padding === void 0 ? 10 : _props$padding,
79
+ inLabelStyle = props.labelStyle;
80
+ var theme = useTheme();
81
+ var labelStyle = React.useMemo(function () {
82
+ return _extends({}, theme.typography.subtitle1, {
83
+ color: 'inherit',
84
+ dominantBaseline: 'central',
85
+ textAnchor: 'start',
86
+ fill: (theme.vars || theme).palette.text.primary,
87
+ lineHeight: 1
88
+ }, inLabelStyle);
89
+ },
90
+ // To say to TS that the dominantBaseline and textAnchor are correct
91
+ [inLabelStyle, theme]);
92
+ var padding = React.useMemo(function () {
93
+ return getStandardizedPadding(paddingProps);
94
+ }, [paddingProps]);
95
+ var getItemSpace = React.useCallback(function (label) {
96
+ var inStyle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
97
+ var rotate = inStyle.rotate,
98
+ dominantBaseline = inStyle.dominantBaseline,
99
+ style = _objectWithoutProperties(inStyle, _excluded);
100
+ var linesSize = getWordsByLines({
101
+ style: style,
102
+ needsComputation: true,
103
+ text: label
104
+ });
105
+ var innerSize = {
106
+ innerWidth: itemMarkWidth + markGap + Math.max.apply(Math, _toConsumableArray(linesSize.map(function (size) {
107
+ return size.width;
108
+ }))),
109
+ innerHeight: Math.max(itemMarkHeight, linesSize.length * linesSize[0].height)
110
+ };
111
+ return _extends({}, innerSize, {
112
+ outerWidth: innerSize.innerWidth + itemGap,
113
+ outerHeight: innerSize.innerHeight + itemGap
114
+ });
115
+ }, [itemGap, itemMarkHeight, itemMarkWidth, markGap]);
116
+ var totalWidth = drawingArea.left + drawingArea.width + drawingArea.right;
117
+ var totalHeight = drawingArea.top + drawingArea.height + drawingArea.bottom;
118
+ var availableWidth = totalWidth - padding.left - padding.right;
119
+ var availableHeight = totalHeight - padding.top - padding.bottom;
120
+ var seriesWithPosition = React.useMemo(function () {
121
+ // Start at 0, 0. Will be modified later by padding and position.
122
+ var x = 0;
123
+ var y = 0;
124
+
125
+ // total values used to align legend later.
126
+ var totalWidthUsed = 0;
127
+ var totalHeightUsed = 0;
128
+ var rowIndex = 0;
129
+ var rowMaxHeight = [0];
130
+ var seriesWithRawPosition = seriesToDisplay.map(function (_ref) {
131
+ var label = _ref.label,
132
+ other = _objectWithoutProperties(_ref, _excluded2);
133
+ var itemSpace = getItemSpace(label, labelStyle);
134
+ var rep = _extends({}, other, {
135
+ label: label,
136
+ positionX: x,
137
+ positionY: y,
138
+ innerHeight: itemSpace.innerHeight,
139
+ innerWidth: itemSpace.innerWidth,
140
+ outerHeight: itemSpace.outerHeight,
141
+ outerWidth: itemSpace.outerWidth,
142
+ rowIndex: rowIndex
143
+ });
144
+ if (direction === 'row') {
145
+ if (x + itemSpace.innerWidth > availableWidth) {
146
+ // This legend item would create overflow along the x-axis, so we start a new row.
147
+ x = 0;
148
+ y += rowMaxHeight[rowIndex];
149
+ rowIndex += 1;
150
+ if (rowMaxHeight.length <= rowIndex) {
151
+ rowMaxHeight.push(0);
152
+ }
153
+ rep.positionX = x;
154
+ rep.positionY = y;
155
+ rep.rowIndex = rowIndex;
156
+ }
157
+ totalWidthUsed = Math.max(totalWidthUsed, x + itemSpace.outerWidth);
158
+ totalHeightUsed = Math.max(totalHeightUsed, y + itemSpace.outerHeight);
159
+ rowMaxHeight[rowIndex] = Math.max(rowMaxHeight[rowIndex], itemSpace.outerHeight);
160
+ x += itemSpace.outerWidth;
161
+ }
162
+ if (direction === 'column') {
163
+ if (y + itemSpace.innerHeight > availableHeight) {
164
+ // This legend item would create overflow along the y-axis, so we start a new column.
165
+ x = totalWidthUsed + itemGap;
166
+ y = 0;
167
+ rowIndex = 0;
168
+ rep.positionX = x;
169
+ rep.positionY = y;
170
+ rep.rowIndex = rowIndex;
171
+ }
172
+ if (rowMaxHeight.length <= rowIndex) {
173
+ rowMaxHeight.push(0);
174
+ }
175
+ totalWidthUsed = Math.max(totalWidthUsed, x + itemSpace.outerWidth);
176
+ totalHeightUsed = Math.max(totalHeightUsed, y + itemSpace.outerHeight);
177
+ rowIndex += 1;
178
+ y += itemSpace.outerHeight;
179
+ }
180
+ return rep;
181
+ });
182
+
183
+ // Move the legend according to padding and position
184
+ var gapX = 0;
185
+ var gapY = 0;
186
+ switch (position.horizontal) {
187
+ case 'left':
188
+ gapX = padding.left;
189
+ break;
190
+ case 'right':
191
+ gapX = totalWidth - padding.right - totalWidthUsed;
192
+ break;
193
+ default:
194
+ gapX = (totalWidth - totalWidthUsed) / 2;
195
+ break;
196
+ }
197
+ switch (position.vertical) {
198
+ case 'top':
199
+ gapY = padding.top;
200
+ break;
201
+ case 'bottom':
202
+ gapY = totalHeight - padding.bottom - totalHeightUsed;
203
+ break;
204
+ default:
205
+ gapY = (totalHeight - totalHeightUsed) / 2;
206
+ break;
207
+ }
208
+ return seriesWithRawPosition.map(function (item) {
209
+ return _extends({}, item, {
210
+ // Add the gap due to the position
211
+ positionX: item.positionX + gapX,
212
+ // Add the gap due to the position
213
+ positionY: item.positionY + gapY + (direction === 'row' ? rowMaxHeight[item.rowIndex] / 2 // Get the center of the entire row
214
+ : item.outerHeight / 2) // Get the center of the item
215
+ });
216
+ });
217
+ }, [seriesToDisplay, position.horizontal, position.vertical, getItemSpace, labelStyle, direction, availableWidth, availableHeight, itemGap, padding.left, padding.right, padding.top, padding.bottom, totalWidth, totalHeight]);
149
218
  if (hidden) {
150
219
  return null;
151
220
  }
152
- return /*#__PURE__*/_jsx(ChartsLegendRoot, {
153
- ownerState: {
154
- direction: direction,
155
- offsetX: offset == null ? void 0 : offset.x,
156
- offsetY: offset == null ? void 0 : offset.y,
157
- seriesNumber: seriesToDisplay.length,
158
- position: position,
159
- drawingArea: drawingArea
160
- },
161
- className: classes.root,
162
- children: seriesToDisplay.map(function (_ref6, seriesIndex) {
163
- var id = _ref6.id,
164
- label = _ref6.label,
165
- color = _ref6.color;
166
- return /*#__PURE__*/_jsxs(ChartsSeriesLegendGroup, {
167
- ownerState: _extends({
168
- direction: direction,
169
- seriesIndex: seriesIndex
170
- }, series),
171
- className: classes.series,
172
- children: [/*#__PURE__*/_jsx(ChartsLegendMark, {
173
- ownerState: {
174
- color: color
175
- },
176
- className: classes.mark
177
- }), /*#__PURE__*/_jsx(ChartsLegendLabel, {
178
- className: classes.label,
179
- children: label
180
- })]
181
- }, id);
221
+ return /*#__PURE__*/_jsx(NoSsr, {
222
+ children: /*#__PURE__*/_jsx(ChartsLegendRoot, {
223
+ className: classes.root,
224
+ children: seriesWithPosition.map(function (_ref2) {
225
+ var id = _ref2.id,
226
+ label = _ref2.label,
227
+ color = _ref2.color,
228
+ positionX = _ref2.positionX,
229
+ positionY = _ref2.positionY;
230
+ return /*#__PURE__*/_jsxs("g", {
231
+ className: classes.series,
232
+ transform: "translate(".concat(positionX, " ").concat(positionY, ")"),
233
+ children: [/*#__PURE__*/_jsx("rect", {
234
+ className: classes.mark,
235
+ y: -itemMarkHeight / 2,
236
+ width: itemMarkWidth,
237
+ height: itemMarkHeight,
238
+ fill: color
239
+ }), /*#__PURE__*/_jsx(ChartsText, {
240
+ style: labelStyle,
241
+ text: label,
242
+ x: itemMarkWidth + markGap,
243
+ y: 0
244
+ })]
245
+ }, id);
246
+ })
182
247
  })
183
248
  });
184
249
  }
@@ -190,7 +255,6 @@ export function ChartsLegend(inProps) {
190
255
  });
191
256
  var position = props.position,
192
257
  direction = props.direction,
193
- offset = props.offset,
194
258
  hidden = props.hidden,
195
259
  slots = props.slots,
196
260
  slotProps = props.slotProps;
@@ -208,7 +272,6 @@ export function ChartsLegend(inProps) {
208
272
  additionalProps: {
209
273
  position: position,
210
274
  direction: direction,
211
- offset: offset,
212
275
  classes: classes,
213
276
  drawingArea: drawingArea,
214
277
  series: series,
@@ -1,8 +1,7 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
1
  import _extends from "@babel/runtime/helpers/esm/extends";
3
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["children", "width", "height", "viewBox", "disableAxisListener", "className", "sx"];
5
- import { styled } from '@mui/system';
3
+ var _excluded = ["children", "width", "height", "viewBox", "disableAxisListener", "className"];
4
+ import { styled } from '@mui/material/styles';
6
5
  import * as React from 'react';
7
6
  import { useAxisEvents } from './hooks/useAxisEvents';
8
7
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -21,7 +20,6 @@ export var ChartsSurface = /*#__PURE__*/React.forwardRef(function ChartsSurface(
21
20
  _props$disableAxisLis = props.disableAxisListener,
22
21
  disableAxisListener = _props$disableAxisLis === void 0 ? false : _props$disableAxisLis,
23
22
  className = props.className,
24
- sx = props.sx,
25
23
  other = _objectWithoutProperties(props, _excluded);
26
24
  var svgView = _extends({
27
25
  width: width,
@@ -34,14 +32,7 @@ export var ChartsSurface = /*#__PURE__*/React.forwardRef(function ChartsSurface(
34
32
  width: width,
35
33
  height: height,
36
34
  viewBox: "".concat(svgView.x, " ").concat(svgView.y, " ").concat(svgView.width, " ").concat(svgView.height),
37
- ref: ref,
38
- sx: [{
39
- '--ChartsLegend-itemWidth': '100px',
40
- '--ChartsLegend-itemMarkSize': '20px',
41
- '--ChartsLegend-rootSpacing': '5px',
42
- '--ChartsLegend-labelSpacing': '5px',
43
- '--ChartsLegend-rootOffsetY': '-20px'
44
- }].concat(_toConsumableArray(Array.isArray(sx) ? sx : [sx]))
35
+ ref: ref
45
36
  }, other, {
46
37
  children: [/*#__PURE__*/_jsx("title", {
47
38
  children: props.title
@@ -1,5 +1,7 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
1
2
  import * as React from 'react';
2
3
  import Typography from '@mui/material/Typography';
4
+ import { useSlotProps } from '@mui/base/utils';
3
5
  import { SeriesContext } from '../context/SeriesContextProvider';
4
6
  import { CartesianContext } from '../context/CartesianContextProvider';
5
7
  import { ChartsTooltipCell, ChartsTooltipPaper, ChartsTooltipTable, ChartsTooltipMark, ChartsTooltipRow } from './ChartsTooltipTable';
@@ -21,7 +23,6 @@ export function DefaultChartsAxisContent(props) {
21
23
  };
22
24
  return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
23
25
  sx: sx,
24
- variant: "outlined",
25
26
  className: classes.root,
26
27
  children: /*#__PURE__*/_jsxs(ChartsTooltipTable, {
27
28
  children: [axisValue != null && !axis.hideTooltip && /*#__PURE__*/_jsx("thead", {
@@ -40,6 +41,10 @@ export function DefaultChartsAxisContent(props) {
40
41
  label = _ref.label,
41
42
  valueFormatter = _ref.valueFormatter,
42
43
  data = _ref.data;
44
+ var formattedValue = valueFormatter(data[dataIndex]);
45
+ if (formattedValue == null) {
46
+ return null;
47
+ }
43
48
  return /*#__PURE__*/_jsxs(ChartsTooltipRow, {
44
49
  children: [/*#__PURE__*/_jsx(ChartsTooltipCell, {
45
50
  className: classes.markCell,
@@ -57,7 +62,7 @@ export function DefaultChartsAxisContent(props) {
57
62
  }), /*#__PURE__*/_jsx(ChartsTooltipCell, {
58
63
  className: classes.valueCell,
59
64
  children: /*#__PURE__*/_jsx(Typography, {
60
- children: valueFormatter(data[dataIndex])
65
+ children: formattedValue
61
66
  })
62
67
  })]
63
68
  }, id);
@@ -68,6 +73,7 @@ export function DefaultChartsAxisContent(props) {
68
73
  }
69
74
  export function ChartsAxisTooltipContent(props) {
70
75
  var content = props.content,
76
+ contentProps = props.contentProps,
71
77
  axisData = props.axisData,
72
78
  sx = props.sx,
73
79
  classes = props.classes;
@@ -100,13 +106,19 @@ export function ChartsAxisTooltipContent(props) {
100
106
  return isXaxis ? xAxis[USED_AXIS_ID] : yAxis[USED_AXIS_ID];
101
107
  }, [USED_AXIS_ID, isXaxis, xAxis, yAxis]);
102
108
  var Content = content != null ? content : DefaultChartsAxisContent;
103
- return /*#__PURE__*/_jsx(Content, {
104
- axisData: axisData,
105
- series: relevantSeries,
106
- axis: relevantAxis,
107
- dataIndex: dataIndex,
108
- axisValue: axisValue,
109
- sx: sx,
110
- classes: classes
109
+ var chartTooltipContentProps = useSlotProps({
110
+ elementType: Content,
111
+ externalSlotProps: contentProps,
112
+ additionalProps: {
113
+ axisData: axisData,
114
+ series: relevantSeries,
115
+ axis: relevantAxis,
116
+ dataIndex: dataIndex,
117
+ axisValue: axisValue,
118
+ sx: sx,
119
+ classes: classes
120
+ },
121
+ ownerState: {}
111
122
  });
123
+ return /*#__PURE__*/_jsx(Content, _extends({}, chartTooltipContentProps));
112
124
  }
@@ -1,4 +1,6 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
1
2
  import * as React from 'react';
3
+ import { useSlotProps } from '@mui/base/utils';
2
4
  import { SeriesContext } from '../context/SeriesContextProvider';
3
5
  import { ChartsTooltipTable, ChartsTooltipCell, ChartsTooltipMark, ChartsTooltipPaper, ChartsTooltipRow } from './ChartsTooltipTable';
4
6
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -26,7 +28,6 @@ export function DefaultChartsItemContent(props) {
26
28
  var formattedValue = series.valueFormatter(series.data[itemData.dataIndex]);
27
29
  return /*#__PURE__*/_jsx(ChartsTooltipPaper, {
28
30
  sx: sx,
29
- variant: "outlined",
30
31
  className: classes.root,
31
32
  children: /*#__PURE__*/_jsx(ChartsTooltipTable, {
32
33
  children: /*#__PURE__*/_jsx("tbody", {
@@ -54,13 +55,20 @@ export function ChartsItemTooltipContent(props) {
54
55
  var content = props.content,
55
56
  itemData = props.itemData,
56
57
  sx = props.sx,
57
- classes = props.classes;
58
+ classes = props.classes,
59
+ contentProps = props.contentProps;
58
60
  var series = React.useContext(SeriesContext)[itemData.type].series[itemData.seriesId];
59
61
  var Content = content != null ? content : DefaultChartsItemContent;
60
- return /*#__PURE__*/_jsx(Content, {
61
- itemData: itemData,
62
- series: series,
63
- sx: sx,
64
- classes: classes
62
+ var chartTooltipContentProps = useSlotProps({
63
+ elementType: Content,
64
+ externalSlotProps: contentProps,
65
+ additionalProps: {
66
+ itemData: itemData,
67
+ series: series,
68
+ sx: sx,
69
+ classes: classes
70
+ },
71
+ ownerState: {}
65
72
  });
73
+ return /*#__PURE__*/_jsx(Content, _extends({}, chartTooltipContentProps));
66
74
  }
@@ -1,8 +1,11 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
1
2
  import * as React from 'react';
2
3
  import PropTypes from 'prop-types';
3
- import { unstable_composeClasses as composeClasses } from '@mui/utils';
4
- import Popper from '@mui/material/Popper';
5
- import NoSsr from '@mui/material/NoSsr';
4
+ import composeClasses from '@mui/utils/composeClasses';
5
+ import { styled } from '@mui/material/styles';
6
+ import { Popper } from '@mui/base/Popper';
7
+ import { NoSsr } from '@mui/base/NoSsr';
8
+ import { useSlotProps } from '@mui/base/utils';
6
9
  import { InteractionContext } from '../context/InteractionProvider';
7
10
  import { generateVirtualElement, useMouseTracker, getTootipHasData } from './utils';
8
11
  import { ChartsItemTooltipContent } from './ChartsItemTooltipContent';
@@ -19,11 +22,37 @@ var useUtilityClasses = function useUtilityClasses(ownerState) {
19
22
  };
20
23
  return composeClasses(slots, getTooltipUtilityClass, classes);
21
24
  };
25
+ var ChartsTooltipRoot = styled(Popper, {
26
+ name: 'MuiChartsTooltip',
27
+ slot: 'Root',
28
+ overridesResolver: function overridesResolver(_, styles) {
29
+ return styles.root;
30
+ }
31
+ })(function (_ref) {
32
+ var theme = _ref.theme;
33
+ return {
34
+ pointerEvents: 'none',
35
+ zIndex: theme.zIndex.modal
36
+ };
37
+ });
38
+
39
+ /**
40
+ * Demos:
41
+ *
42
+ * - [ChartsTooltip](https://mui.com/x/react-charts/tooltip/)
43
+ *
44
+ * API:
45
+ *
46
+ * - [ChartsTooltip API](https://mui.com/x/api/charts/charts-tool-tip/)
47
+ */
22
48
  function ChartsTooltip(props) {
49
+ var _slots$popper, _slots$itemContent, _slots$axisContent;
23
50
  var _props$trigger = props.trigger,
24
51
  trigger = _props$trigger === void 0 ? 'axis' : _props$trigger,
25
52
  itemContent = props.itemContent,
26
- axisContent = props.axisContent;
53
+ axisContent = props.axisContent,
54
+ slots = props.slots,
55
+ slotProps = props.slotProps;
27
56
  var mousePosition = useMouseTracker();
28
57
  var _React$useContext = React.useContext(InteractionContext),
29
58
  item = _React$useContext.item,
@@ -34,33 +63,40 @@ function ChartsTooltip(props) {
34
63
  var classes = useUtilityClasses({
35
64
  classes: props.classes
36
65
  });
66
+ var PopperComponent = (_slots$popper = slots == null ? void 0 : slots.popper) != null ? _slots$popper : ChartsTooltipRoot;
67
+ var popperProps = useSlotProps({
68
+ elementType: PopperComponent,
69
+ externalSlotProps: slotProps == null ? void 0 : slotProps.popper,
70
+ additionalProps: {
71
+ open: popperOpen,
72
+ placement: 'right-start',
73
+ anchorEl: generateVirtualElement(mousePosition)
74
+ },
75
+ ownerState: {}
76
+ });
37
77
  if (trigger === 'none') {
38
78
  return null;
39
79
  }
40
80
  return /*#__PURE__*/_jsx(NoSsr, {
41
- children: popperOpen && /*#__PURE__*/_jsx(Popper, {
42
- open: popperOpen,
43
- placement: "right-start",
44
- anchorEl: generateVirtualElement(mousePosition),
45
- style: {
46
- pointerEvents: 'none'
47
- },
81
+ children: popperOpen && /*#__PURE__*/_jsx(PopperComponent, _extends({}, popperProps, {
48
82
  children: trigger === 'item' ? /*#__PURE__*/_jsx(ChartsItemTooltipContent, {
49
83
  itemData: displayedData,
50
- content: itemContent,
84
+ content: (_slots$itemContent = slots == null ? void 0 : slots.itemContent) != null ? _slots$itemContent : itemContent,
85
+ contentProps: slotProps == null ? void 0 : slotProps.itemContent,
51
86
  sx: {
52
87
  mx: 2
53
88
  },
54
89
  classes: classes
55
90
  }) : /*#__PURE__*/_jsx(ChartsAxisTooltipContent, {
56
91
  axisData: displayedData,
57
- content: axisContent,
92
+ content: (_slots$axisContent = slots == null ? void 0 : slots.axisContent) != null ? _slots$axisContent : axisContent,
93
+ contentProps: slotProps == null ? void 0 : slotProps.axisContent,
58
94
  sx: {
59
95
  mx: 2
60
96
  },
61
97
  classes: classes
62
98
  })
63
- })
99
+ }))
64
100
  });
65
101
  }
66
102
  process.env.NODE_ENV !== "production" ? ChartsTooltip.propTypes = {
@@ -70,6 +106,7 @@ process.env.NODE_ENV !== "production" ? ChartsTooltip.propTypes = {
70
106
  // ----------------------------------------------------------------------
71
107
  /**
72
108
  * Component to override the tooltip content when triger is set to 'axis'.
109
+ * @deprecated Use slots.axisContent instead
73
110
  */
74
111
  axisContent: PropTypes.elementType,
75
112
  /**
@@ -78,8 +115,19 @@ process.env.NODE_ENV !== "production" ? ChartsTooltip.propTypes = {
78
115
  classes: PropTypes.object,
79
116
  /**
80
117
  * Component to override the tooltip content when triger is set to 'item'.
118
+ * @deprecated Use slots.itemContent instead
81
119
  */
82
120
  itemContent: PropTypes.elementType,
121
+ /**
122
+ * The props used for each component slot.
123
+ * @default {}
124
+ */
125
+ slotProps: PropTypes.object,
126
+ /**
127
+ * Overridable component slots.
128
+ * @default {}
129
+ */
130
+ slots: PropTypes.object,
83
131
  /**
84
132
  * Select the kind of tooltip to display
85
133
  * - 'item': Shows data about the item below the mouse.