@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
@@ -25,6 +25,11 @@ export declare const CartesianContext: React.Context<{
25
25
  xAxisIds: string[];
26
26
  yAxisIds: string[];
27
27
  }>;
28
+ /**
29
+ * API:
30
+ *
31
+ * - [CartesianContextProvider API](https://mui.com/x/api/charts/cartesian-context-provider/)
32
+ */
28
33
  declare function CartesianContextProvider({ xAxis: inXAxis, yAxis: inYAxis, dataset, children, }: CartesianContextProviderProps): React.JSX.Element;
29
34
  declare namespace CartesianContextProvider {
30
35
  var propTypes: any;
@@ -20,9 +20,10 @@ var _SeriesContextProvider = require("./SeriesContextProvider");
20
20
  var _constants = require("../constants");
21
21
  var _useTicks = require("../hooks/useTicks");
22
22
  var _jsxRuntime = require("react/jsx-runtime");
23
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
- const DEFAULT_CATEGORY_GAP_RATIO = 0.1;
23
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
+ const DEFAULT_CATEGORY_GAP_RATIO = 0.2;
26
+ const DEFAULT_BAR_GAP_RATIO = 0.1;
26
27
 
27
28
  // TODO: those might be better placed in a distinct file
28
29
  const xExtremumGetters = {
@@ -35,13 +36,18 @@ const yExtremumGetters = {
35
36
  scatter: _extremums2.getExtremumY,
36
37
  line: _extremums3.getExtremumY
37
38
  };
38
- const CartesianContext = /*#__PURE__*/React.createContext({
39
+ const CartesianContext = exports.CartesianContext = /*#__PURE__*/React.createContext({
39
40
  xAxis: {},
40
41
  yAxis: {},
41
42
  xAxisIds: [],
42
43
  yAxisIds: []
43
44
  });
44
- exports.CartesianContext = CartesianContext;
45
+
46
+ /**
47
+ * API:
48
+ *
49
+ * - [CartesianContextProvider API](https://mui.com/x/api/charts/cartesian-context-provider/)
50
+ */
45
51
  function CartesianContextProvider({
46
52
  xAxis: inXAxis,
47
53
  yAxis: inYAxis,
@@ -113,18 +119,19 @@ function CartesianContextProvider({
113
119
  const range = [drawingArea.left, drawingArea.left + drawingArea.width];
114
120
  if ((0, _axis.isBandScaleConfig)(axis)) {
115
121
  const categoryGapRatio = axis.categoryGapRatio ?? DEFAULT_CATEGORY_GAP_RATIO;
122
+ const barGapRatio = axis.barGapRatio ?? DEFAULT_BAR_GAP_RATIO;
116
123
  completedXAxis[axis.id] = (0, _extends2.default)({
117
124
  categoryGapRatio,
118
- barGapRatio: 0
125
+ barGapRatio
119
126
  }, axis, {
120
127
  scale: (0, _d3Scale.scaleBand)(axis.data, range).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
121
- ticksNumber: axis.data.length
128
+ tickNumber: axis.data.length
122
129
  });
123
130
  }
124
131
  if ((0, _axis.isPointScaleConfig)(axis)) {
125
132
  completedXAxis[axis.id] = (0, _extends2.default)({}, axis, {
126
133
  scale: (0, _d3Scale.scalePoint)(axis.data, range),
127
- ticksNumber: axis.data.length
134
+ tickNumber: axis.data.length
128
135
  });
129
136
  }
130
137
  if (axis.scaleType === 'band' || axis.scaleType === 'point') {
@@ -133,17 +140,17 @@ function CartesianContextProvider({
133
140
  }
134
141
  const scaleType = axis.scaleType ?? 'linear';
135
142
  const extremums = [axis.min ?? minData, axis.max ?? maxData];
136
- const ticksNumber = (0, _useTicks.getTicksNumber)((0, _extends2.default)({}, axis, {
143
+ const tickNumber = (0, _useTicks.getTickNumber)((0, _extends2.default)({}, axis, {
137
144
  range,
138
145
  domain: extremums
139
146
  }));
140
- const niceScale = (0, _getScale.getScale)(scaleType, extremums, range).nice(ticksNumber);
147
+ const niceScale = (0, _getScale.getScale)(scaleType, extremums, range).nice(tickNumber);
141
148
  const niceDomain = niceScale.domain();
142
149
  const domain = [axis.min ?? niceDomain[0], axis.max ?? niceDomain[1]];
143
150
  completedXAxis[axis.id] = (0, _extends2.default)({}, axis, {
144
151
  scaleType,
145
152
  scale: niceScale.domain(domain),
146
- ticksNumber
153
+ tickNumber
147
154
  });
148
155
  });
149
156
  const allYAxis = [...(yAxis?.map((axis, index) => (0, _extends2.default)({
@@ -166,13 +173,13 @@ function CartesianContextProvider({
166
173
  barGapRatio: 0
167
174
  }, axis, {
168
175
  scale: (0, _d3Scale.scaleBand)(axis.data, [range[1], range[0]]).paddingInner(categoryGapRatio).paddingOuter(categoryGapRatio / 2),
169
- ticksNumber: axis.data.length
176
+ tickNumber: axis.data.length
170
177
  });
171
178
  }
172
179
  if ((0, _axis.isPointScaleConfig)(axis)) {
173
180
  completedYAxis[axis.id] = (0, _extends2.default)({}, axis, {
174
181
  scale: (0, _d3Scale.scalePoint)(axis.data, [range[1], range[0]]),
175
- ticksNumber: axis.data.length
182
+ tickNumber: axis.data.length
176
183
  });
177
184
  }
178
185
  if (axis.scaleType === 'band' || axis.scaleType === 'point') {
@@ -181,17 +188,17 @@ function CartesianContextProvider({
181
188
  }
182
189
  const scaleType = axis.scaleType ?? 'linear';
183
190
  const extremums = [axis.min ?? minData, axis.max ?? maxData];
184
- const ticksNumber = (0, _useTicks.getTicksNumber)((0, _extends2.default)({}, axis, {
191
+ const tickNumber = (0, _useTicks.getTickNumber)((0, _extends2.default)({}, axis, {
185
192
  range,
186
193
  domain: extremums
187
194
  }));
188
- const niceScale = (0, _getScale.getScale)(scaleType, extremums, range).nice(ticksNumber);
195
+ const niceScale = (0, _getScale.getScale)(scaleType, extremums, range).nice(tickNumber);
189
196
  const niceDomain = niceScale.domain();
190
197
  const domain = [axis.min ?? niceDomain[0], axis.max ?? niceDomain[1]];
191
198
  completedYAxis[axis.id] = (0, _extends2.default)({}, axis, {
192
199
  scaleType,
193
200
  scale: niceScale.domain(domain),
194
- ticksNumber
201
+ tickNumber
195
202
  });
196
203
  });
197
204
  return {
@@ -231,6 +238,7 @@ process.env.NODE_ENV !== "production" ? CartesianContextProvider.propTypes = {
231
238
  id: _propTypes.default.string,
232
239
  label: _propTypes.default.string,
233
240
  labelFontSize: _propTypes.default.number,
241
+ labelStyle: _propTypes.default.object,
234
242
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
235
243
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
236
244
  position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
@@ -239,6 +247,9 @@ process.env.NODE_ENV !== "production" ? CartesianContextProvider.propTypes = {
239
247
  slots: _propTypes.default.object,
240
248
  stroke: _propTypes.default.string,
241
249
  tickFontSize: _propTypes.default.number,
250
+ tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
251
+ tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
252
+ tickLabelStyle: _propTypes.default.object,
242
253
  tickMaxStep: _propTypes.default.number,
243
254
  tickMinStep: _propTypes.default.number,
244
255
  tickNumber: _propTypes.default.number,
@@ -257,6 +268,7 @@ process.env.NODE_ENV !== "production" ? CartesianContextProvider.propTypes = {
257
268
  id: _propTypes.default.string,
258
269
  label: _propTypes.default.string,
259
270
  labelFontSize: _propTypes.default.number,
271
+ labelStyle: _propTypes.default.object,
260
272
  max: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
261
273
  min: _propTypes.default.oneOfType([_propTypes.default.instanceOf(Date), _propTypes.default.number]),
262
274
  position: _propTypes.default.oneOf(['bottom', 'left', 'right', 'top']),
@@ -265,6 +277,9 @@ process.env.NODE_ENV !== "production" ? CartesianContextProvider.propTypes = {
265
277
  slots: _propTypes.default.object,
266
278
  stroke: _propTypes.default.string,
267
279
  tickFontSize: _propTypes.default.number,
280
+ tickInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.array, _propTypes.default.func]),
281
+ tickLabelInterval: _propTypes.default.oneOfType([_propTypes.default.oneOf(['auto']), _propTypes.default.func]),
282
+ tickLabelStyle: _propTypes.default.object,
268
283
  tickMaxStep: _propTypes.default.number,
269
284
  tickMinStep: _propTypes.default.number,
270
285
  tickNumber: _propTypes.default.number,
@@ -10,11 +10,18 @@ export interface DrawingProviderProps extends LayoutConfig {
10
10
  export type DrawingArea = {
11
11
  left: number;
12
12
  top: number;
13
+ bottom: number;
14
+ right: number;
13
15
  width: number;
14
16
  height: number;
15
17
  };
16
18
  export declare const DrawingContext: React.Context<DrawingArea>;
17
19
  export declare const SVGContext: React.Context<React.RefObject<SVGSVGElement>>;
20
+ /**
21
+ * API:
22
+ *
23
+ * - [DrawingProvider API](https://mui.com/x/api/charts/drawing-provider/)
24
+ */
18
25
  declare function DrawingProvider({ width, height, margin, svgRef, children }: DrawingProviderProps): React.JSX.Element;
19
26
  declare namespace DrawingProvider {
20
27
  var propTypes: any;
@@ -11,23 +11,29 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _useChartDimensions = _interopRequireDefault(require("../hooks/useChartDimensions"));
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  /**
17
17
  * Defines the area in which it is possible to draw the charts.
18
18
  */
19
19
 
20
- const DrawingContext = /*#__PURE__*/React.createContext({
20
+ const DrawingContext = exports.DrawingContext = /*#__PURE__*/React.createContext({
21
21
  top: 0,
22
22
  left: 0,
23
+ bottom: 0,
24
+ right: 0,
23
25
  height: 300,
24
26
  width: 400
25
27
  });
26
- exports.DrawingContext = DrawingContext;
27
- const SVGContext = /*#__PURE__*/React.createContext({
28
+ const SVGContext = exports.SVGContext = /*#__PURE__*/React.createContext({
28
29
  current: null
29
30
  });
30
- exports.SVGContext = SVGContext;
31
+
32
+ /**
33
+ * API:
34
+ *
35
+ * - [DrawingProvider API](https://mui.com/x/api/charts/drawing-provider/)
36
+ */
31
37
  function DrawingProvider({
32
38
  width,
33
39
  height,
@@ -9,18 +9,17 @@ exports.HighlightProvider = HighlightProvider;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
14
  const defaultScope = {
15
15
  highlighted: 'none',
16
16
  faded: 'none'
17
17
  };
18
- const HighlighContext = /*#__PURE__*/React.createContext({
18
+ const HighlighContext = exports.HighlighContext = /*#__PURE__*/React.createContext({
19
19
  item: null,
20
20
  scope: defaultScope,
21
21
  dispatch: () => null
22
22
  });
23
- exports.HighlighContext = HighlighContext;
24
23
  const dataReducer = (prevState, action) => {
25
24
  switch (action.type) {
26
25
  case 'enterItem':
@@ -9,9 +9,9 @@ exports.InteractionProvider = InteractionProvider;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
- const InteractionContext = /*#__PURE__*/React.createContext({
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ const InteractionContext = exports.InteractionContext = /*#__PURE__*/React.createContext({
15
15
  item: null,
16
16
  axis: {
17
17
  x: null,
@@ -19,7 +19,6 @@ const InteractionContext = /*#__PURE__*/React.createContext({
19
19
  },
20
20
  dispatch: () => null
21
21
  });
22
- exports.InteractionContext = InteractionContext;
23
22
  const dataReducer = (prevState, action) => {
24
23
  switch (action.type) {
25
24
  case 'enterItem':
@@ -16,10 +16,9 @@ var _formatter4 = _interopRequireDefault(require("../PieChart/formatter"));
16
16
  var _defaultizeColor = require("../internals/defaultizeColor");
17
17
  var _colorPalettes = require("../colorPalettes");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
20
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
- const SeriesContext = /*#__PURE__*/React.createContext({});
22
- exports.SeriesContext = SeriesContext;
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
+ const SeriesContext = exports.SeriesContext = /*#__PURE__*/React.createContext({});
23
22
  const seriesTypeFormatter = {
24
23
  bar: _formatter.default,
25
24
  scatter: _formatter2.default,
@@ -12,6 +12,17 @@ import { ChartsAxisHighlight } from '../ChartsAxisHighlight';
12
12
  import { ChartsClipPath } from '../ChartsClipPath';
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
15
+ /**
16
+ * Demos:
17
+ *
18
+ * - [Bars](https://mui.com/x/react-charts/bars/)
19
+ * - [Bar demonstration](https://mui.com/x/react-charts/bar-demo/)
20
+ * - [Stacking](https://mui.com/x/react-charts/stacking/)
21
+ *
22
+ * API:
23
+ *
24
+ * - [BarChart API](https://mui.com/x/api/charts/bar-chart/)
25
+ */
15
26
  const BarChart = /*#__PURE__*/React.forwardRef(function BarChart(props, ref) {
16
27
  const {
17
28
  xAxis,
@@ -31,6 +42,7 @@ const BarChart = /*#__PURE__*/React.forwardRef(function BarChart(props, ref) {
31
42
  leftAxis,
32
43
  rightAxis,
33
44
  bottomAxis,
45
+ skipAnimation,
34
46
  children,
35
47
  slots,
36
48
  slotProps
@@ -76,7 +88,8 @@ const BarChart = /*#__PURE__*/React.forwardRef(function BarChart(props, ref) {
76
88
  clipPath: `url(#${clipPathId})`,
77
89
  children: /*#__PURE__*/_jsx(BarPlot, {
78
90
  slots: slots,
79
- slotProps: slotProps
91
+ slotProps: slotProps,
92
+ skipAnimation: skipAnimation
80
93
  })
81
94
  }), /*#__PURE__*/_jsx(ChartsAxis, {
82
95
  topAxis: topAxis,
@@ -118,11 +131,15 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
118
131
  fill: PropTypes.string,
119
132
  label: PropTypes.string,
120
133
  labelFontSize: PropTypes.number,
134
+ labelStyle: PropTypes.object,
121
135
  position: PropTypes.oneOf(['bottom', 'top']),
122
136
  slotProps: PropTypes.object,
123
137
  slots: PropTypes.object,
124
138
  stroke: PropTypes.string,
125
139
  tickFontSize: PropTypes.number,
140
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
141
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
142
+ tickLabelStyle: PropTypes.object,
126
143
  tickMaxStep: PropTypes.number,
127
144
  tickMinStep: PropTypes.number,
128
145
  tickNumber: PropTypes.number,
@@ -152,33 +169,33 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
152
169
  fill: PropTypes.string,
153
170
  label: PropTypes.string,
154
171
  labelFontSize: PropTypes.number,
172
+ labelStyle: PropTypes.object,
155
173
  position: PropTypes.oneOf(['left', 'right']),
156
174
  slotProps: PropTypes.object,
157
175
  slots: PropTypes.object,
158
176
  stroke: PropTypes.string,
159
177
  tickFontSize: PropTypes.number,
178
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
179
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
180
+ tickLabelStyle: PropTypes.object,
160
181
  tickMaxStep: PropTypes.number,
161
182
  tickMinStep: PropTypes.number,
162
183
  tickNumber: PropTypes.number,
163
184
  tickSize: PropTypes.number
164
185
  }), PropTypes.string]),
186
+ /**
187
+ * @deprecated Consider using `slotProps.legend` instead.
188
+ */
165
189
  legend: PropTypes.shape({
166
190
  classes: PropTypes.object,
167
191
  direction: PropTypes.oneOf(['column', 'row']),
168
192
  hidden: PropTypes.bool,
169
- itemWidth: PropTypes.number,
170
- markSize: PropTypes.number,
171
- offset: PropTypes.shape({
172
- x: PropTypes.number,
173
- y: PropTypes.number
174
- }),
175
193
  position: PropTypes.shape({
176
194
  horizontal: PropTypes.oneOf(['left', 'middle', 'right']).isRequired,
177
195
  vertical: PropTypes.oneOf(['bottom', 'middle', 'top']).isRequired
178
196
  }),
179
197
  slotProps: PropTypes.object,
180
- slots: PropTypes.object,
181
- spacing: PropTypes.number
198
+ slots: PropTypes.object
182
199
  }),
183
200
  margin: PropTypes.shape({
184
201
  bottom: PropTypes.number,
@@ -199,11 +216,15 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
199
216
  fill: PropTypes.string,
200
217
  label: PropTypes.string,
201
218
  labelFontSize: PropTypes.number,
219
+ labelStyle: PropTypes.object,
202
220
  position: PropTypes.oneOf(['left', 'right']),
203
221
  slotProps: PropTypes.object,
204
222
  slots: PropTypes.object,
205
223
  stroke: PropTypes.string,
206
224
  tickFontSize: PropTypes.number,
225
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
226
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
227
+ tickLabelStyle: PropTypes.object,
207
228
  tickMaxStep: PropTypes.number,
208
229
  tickMinStep: PropTypes.number,
209
230
  tickNumber: PropTypes.number,
@@ -228,6 +249,11 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
228
249
  xAxisKey: PropTypes.string,
229
250
  yAxisKey: PropTypes.string
230
251
  })).isRequired,
252
+ /**
253
+ * If `true`, animations are skiped.
254
+ * @default false
255
+ */
256
+ skipAnimation: PropTypes.bool,
231
257
  /**
232
258
  * The props used for each component slot.
233
259
  * @default {}
@@ -244,6 +270,8 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
244
270
  axisContent: PropTypes.elementType,
245
271
  classes: PropTypes.object,
246
272
  itemContent: PropTypes.elementType,
273
+ slotProps: PropTypes.object,
274
+ slots: PropTypes.object,
247
275
  trigger: PropTypes.oneOf(['axis', 'item', 'none'])
248
276
  }),
249
277
  /**
@@ -259,11 +287,15 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
259
287
  fill: PropTypes.string,
260
288
  label: PropTypes.string,
261
289
  labelFontSize: PropTypes.number,
290
+ labelStyle: PropTypes.object,
262
291
  position: PropTypes.oneOf(['bottom', 'top']),
263
292
  slotProps: PropTypes.object,
264
293
  slots: PropTypes.object,
265
294
  stroke: PropTypes.string,
266
295
  tickFontSize: PropTypes.number,
296
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
297
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
298
+ tickLabelStyle: PropTypes.object,
267
299
  tickMaxStep: PropTypes.number,
268
300
  tickMinStep: PropTypes.number,
269
301
  tickNumber: PropTypes.number,
@@ -288,6 +320,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
288
320
  id: PropTypes.string,
289
321
  label: PropTypes.string,
290
322
  labelFontSize: PropTypes.number,
323
+ labelStyle: PropTypes.object,
291
324
  max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
292
325
  min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
293
326
  position: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),
@@ -296,6 +329,9 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
296
329
  slots: PropTypes.object,
297
330
  stroke: PropTypes.string,
298
331
  tickFontSize: PropTypes.number,
332
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
333
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
334
+ tickLabelStyle: PropTypes.object,
299
335
  tickMaxStep: PropTypes.number,
300
336
  tickMinStep: PropTypes.number,
301
337
  tickNumber: PropTypes.number,
@@ -314,6 +350,7 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
314
350
  id: PropTypes.string,
315
351
  label: PropTypes.string,
316
352
  labelFontSize: PropTypes.number,
353
+ labelStyle: PropTypes.object,
317
354
  max: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
318
355
  min: PropTypes.oneOfType([PropTypes.instanceOf(Date), PropTypes.number]),
319
356
  position: PropTypes.oneOf(['bottom', 'left', 'right', 'top']),
@@ -322,6 +359,9 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
322
359
  slots: PropTypes.object,
323
360
  stroke: PropTypes.string,
324
361
  tickFontSize: PropTypes.number,
362
+ tickInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.array, PropTypes.func]),
363
+ tickLabelInterval: PropTypes.oneOfType([PropTypes.oneOf(['auto']), PropTypes.func]),
364
+ tickLabelStyle: PropTypes.object,
325
365
  tickMaxStep: PropTypes.number,
326
366
  tickMinStep: PropTypes.number,
327
367
  tickNumber: PropTypes.number,
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- const _excluded = ["id", "dataIndex", "classes", "color", "highlightScope", "slots", "slotProps"];
3
+ const _excluded = ["id", "dataIndex", "classes", "color", "highlightScope", "slots", "slotProps", "style"];
4
4
  import * as React from 'react';
5
5
  import composeClasses from '@mui/utils/composeClasses';
6
6
  import { useSlotProps } from '@mui/base/utils';
@@ -8,13 +8,14 @@ import generateUtilityClass from '@mui/utils/generateUtilityClass';
8
8
  import { styled } from '@mui/material/styles';
9
9
  import { color as d3Color } from 'd3-color';
10
10
  import generateUtilityClasses from '@mui/utils/generateUtilityClasses';
11
+ import { animated } from '@react-spring/web';
11
12
  import { getIsFaded, getIsHighlighted, useInteractionItemProps } from '../hooks/useInteractionItemProps';
12
13
  import { InteractionContext } from '../context/InteractionProvider';
13
14
  import { jsx as _jsx } from "react/jsx-runtime";
14
15
  export function getBarElementUtilityClass(slot) {
15
16
  return generateUtilityClass('MuiBarElement', slot);
16
17
  }
17
- export const lineElementClasses = generateUtilityClasses('MuiBarElement', ['root']);
18
+ export const barElementClasses = generateUtilityClasses('MuiBarElement', ['root']);
18
19
  const useUtilityClasses = ownerState => {
19
20
  const {
20
21
  classes,
@@ -25,7 +26,7 @@ const useUtilityClasses = ownerState => {
25
26
  };
26
27
  return composeClasses(slots, getBarElementUtilityClass, classes);
27
28
  };
28
- export const BarElementPath = styled('rect', {
29
+ export const BarElementPath = styled(animated.rect, {
29
30
  name: 'MuiBarElement',
30
31
  slot: 'Root',
31
32
  overridesResolver: (_, styles) => styles.root
@@ -47,7 +48,8 @@ export function BarElement(props) {
47
48
  color,
48
49
  highlightScope,
49
50
  slots,
50
- slotProps
51
+ slotProps,
52
+ style
51
53
  } = props,
52
54
  other = _objectWithoutPropertiesLoose(props, _excluded);
53
55
  const getInteractionItemProps = useInteractionItemProps(highlightScope);
@@ -82,6 +84,7 @@ export function BarElement(props) {
82
84
  seriesId: id,
83
85
  dataIndex
84
86
  }), {
87
+ style,
85
88
  className: classes.root
86
89
  }),
87
90
  ownerState