@mui/x-charts 8.3.0 → 8.4.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 (96) hide show
  1. package/BarChart/BarChart.js +3 -2
  2. package/CHANGELOG.md +206 -10
  3. package/ChartContainer/ChartContainer.js +1 -1
  4. package/ChartsAxis/axisClasses.d.ts +5 -0
  5. package/ChartsAxis/axisClasses.js +1 -1
  6. package/ChartsGrid/ChartsHorizontalGrid.js +2 -1
  7. package/ChartsGrid/ChartsVerticalGrid.js +2 -1
  8. package/ChartsLegend/ChartsLegend.js +1 -0
  9. package/ChartsLocalizationProvider/ChartsLocalizationProvider.js +1 -3
  10. package/ChartsSurface/ChartsSurface.js +1 -0
  11. package/ChartsXAxis/ChartsXAxis.js +9 -17
  12. package/ChartsYAxis/ChartsYAxis.js +6 -9
  13. package/Gauge/Gauge.js +1 -0
  14. package/Gauge/GaugeContainer.js +1 -0
  15. package/Gauge/GaugeProvider.js +1 -3
  16. package/LineChart/AnimatedLine.js +1 -0
  17. package/LineChart/LineChart.js +3 -2
  18. package/LineChart/LineHighlightPlot.js +1 -4
  19. package/LineChart/MarkPlot.js +1 -4
  20. package/PieChart/PieArc.js +1 -0
  21. package/PieChart/PieArcLabel.js +1 -0
  22. package/PieChart/PieChart.js +7 -6
  23. package/RadarChart/RadarChart.js +3 -2
  24. package/ScatterChart/Scatter.js +3 -11
  25. package/ScatterChart/ScatterChart.js +5 -4
  26. package/SparkLineChart/SparkLineChart.js +31 -26
  27. package/Toolbar/ToolbarButton.js +1 -0
  28. package/context/ChartProvider/ChartContext.js +1 -3
  29. package/esm/BarChart/BarChart.js +3 -2
  30. package/esm/ChartContainer/ChartContainer.js +1 -1
  31. package/esm/ChartsAxis/axisClasses.d.ts +5 -0
  32. package/esm/ChartsAxis/axisClasses.js +1 -1
  33. package/esm/ChartsGrid/ChartsHorizontalGrid.js +2 -1
  34. package/esm/ChartsGrid/ChartsVerticalGrid.js +2 -1
  35. package/esm/ChartsLegend/ChartsLegend.js +1 -0
  36. package/esm/ChartsLocalizationProvider/ChartsLocalizationProvider.js +1 -3
  37. package/esm/ChartsSurface/ChartsSurface.js +1 -0
  38. package/esm/ChartsXAxis/ChartsXAxis.js +9 -17
  39. package/esm/ChartsYAxis/ChartsYAxis.js +6 -9
  40. package/esm/Gauge/Gauge.js +1 -0
  41. package/esm/Gauge/GaugeContainer.js +1 -0
  42. package/esm/Gauge/GaugeProvider.js +1 -3
  43. package/esm/LineChart/AnimatedLine.js +1 -0
  44. package/esm/LineChart/LineChart.js +3 -2
  45. package/esm/LineChart/LineHighlightPlot.js +1 -4
  46. package/esm/LineChart/MarkPlot.js +1 -4
  47. package/esm/PieChart/PieArc.js +1 -0
  48. package/esm/PieChart/PieArcLabel.js +1 -0
  49. package/esm/PieChart/PieChart.js +5 -4
  50. package/esm/RadarChart/RadarChart.js +3 -2
  51. package/esm/ScatterChart/Scatter.js +3 -11
  52. package/esm/ScatterChart/ScatterChart.js +5 -4
  53. package/esm/SparkLineChart/SparkLineChart.js +31 -26
  54. package/esm/Toolbar/ToolbarButton.js +1 -0
  55. package/esm/context/ChartProvider/ChartContext.js +1 -3
  56. package/esm/hooks/useTicks.d.ts +1 -4
  57. package/esm/hooks/useTicks.js +29 -28
  58. package/esm/index.js +1 -1
  59. package/esm/internals/constants.d.ts +1 -1
  60. package/esm/internals/constants.js +1 -1
  61. package/esm/internals/consumeSlots.js +2 -1
  62. package/esm/internals/consumeThemeProps.js +3 -1
  63. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +11 -17
  64. package/esm/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.d.ts +16 -13
  65. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +2 -2
  66. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js +2 -3
  67. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.js +3 -1
  68. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +4 -5
  69. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +1 -3
  70. package/esm/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +8 -0
  71. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +2 -2
  72. package/esm/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +1 -3
  73. package/esm/internals/plugins/featurePlugins/useChartVoronoi/useChartVoronoi.js +2 -5
  74. package/esm/internals/ticks.d.ts +6 -0
  75. package/esm/internals/ticks.js +22 -0
  76. package/hooks/useTicks.d.ts +1 -4
  77. package/hooks/useTicks.js +29 -29
  78. package/index.js +1 -1
  79. package/internals/constants.d.ts +1 -1
  80. package/internals/constants.js +2 -2
  81. package/internals/consumeSlots.js +2 -1
  82. package/internals/consumeThemeProps.js +3 -1
  83. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.js +11 -17
  84. package/internals/plugins/corePlugins/useChartDimensions/useChartDimensions.types.d.ts +16 -13
  85. package/internals/plugins/featurePlugins/useChartCartesianAxis/computeAxisValue.js +3 -3
  86. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeAxis.js +7 -8
  87. package/internals/plugins/featurePlugins/useChartCartesianAxis/defaultizeZoom.js +3 -1
  88. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartAxisSize.selectors.js +4 -5
  89. package/internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.js +1 -3
  90. package/internals/plugins/featurePlugins/useChartCartesianAxis/zoom.types.d.ts +8 -0
  91. package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +3 -3
  92. package/internals/plugins/featurePlugins/useChartPolarAxis/useChartPolarAxis.js +1 -3
  93. package/internals/plugins/featurePlugins/useChartVoronoi/useChartVoronoi.js +2 -5
  94. package/internals/ticks.d.ts +6 -0
  95. package/internals/ticks.js +29 -0
  96. package/package.json +3 -3
@@ -64,11 +64,12 @@ const BarChart = exports.BarChart = /*#__PURE__*/React.forwardRef(function BarCh
64
64
  children: [!props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartsSurface.ChartsSurface, (0, _extends2.default)({}, chartsSurfaceProps, {
65
65
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsGrid.ChartsGrid, (0, _extends2.default)({}, gridProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", (0, _extends2.default)({}, clipPathGroupProps, {
66
66
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_BarPlot.BarPlot, (0, _extends2.default)({}, barPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxisHighlight.ChartsAxisHighlight, (0, _extends2.default)({}, axisHighlightProps))]
67
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
68
- }))]
67
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
68
+ })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip))]
69
69
  }))
70
70
  }));
71
71
  });
72
+ if (process.env.NODE_ENV !== "production") BarChart.displayName = "BarChart";
72
73
  process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
73
74
  // ----------------------------- Warning --------------------------------
74
75
  // | These PropTypes are generated from the TypeScript type definitions |
package/CHANGELOG.md CHANGED
@@ -5,6 +5,206 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.4.0
9
+
10
+ _May 21, 2025_
11
+
12
+ We'd like to offer a big thanks to the 21 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🔺 Support regular [`pyramid` variation in the `<FunnelChart />` component](https://mui.com/x/react-charts/funnel/#pyramid-chart):
15
+
16
+ <img width="398" alt="Pyramid funnel chart" src="https://github.com/user-attachments/assets/90ccb221-3a48-4ffa-8878-89c6db16da86" />
17
+
18
+ - 📚 Documentation improvements
19
+ - 🌎 Improve Icelandic (is-IS) locale on the Data Grid
20
+ - 🐞 Bugfixes
21
+
22
+ Special thanks go out to the community members for their valuable contributions:
23
+ @aizerin, @arminmeh, @campmarc, @jyash97, @mapache-salvaje, @noraleonte, @nusr, @ragnarr18, @romgrk, @whereisrmsqhs.
24
+ Following are all team members who have contributed to this release:
25
+ @alexfauquette, @bernardobelchior, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @rita-codes.
26
+
27
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
28
+
29
+ ### Data Grid
30
+
31
+ #### `@mui/x-data-grid@8.4.0`
32
+
33
+ - [DataGrid] Fix content rendering for large rows while using automatic page size (#14737) @campmarc
34
+ - [DataGrid] Fix disabled typography variants crashing grid (#17934) @KenanYusuf
35
+ - [DataGrid] Fix tree data demo crash (#17904) @MBilalShafi
36
+ - [DataGrid] Use `exclude` selection model type if quick filter does not have actual values (#17899) @arminmeh
37
+ - [DataGrid] Fix clipboard copy behavior for cell ranges with empty cells (#16797) @nusr
38
+ - [l10n] Improve Icelandic (is-IS) locale (#17915) @ragnarr18
39
+
40
+ #### `@mui/x-data-grid-pro@8.4.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
41
+
42
+ Same changes as in `@mui/x-data-grid@8.4.0`, plus:
43
+
44
+ - [DataGridPro] Add `aria-expanded` attribute to the master detail toggle button (#17122) @whereisrmsqhs
45
+ - [DataGridPro] Preserve row state during server-side lazy loading (#17743) @arminmeh
46
+ - [DataGridPro] Prevent text selection when reordering rows (#16568) @jyash97
47
+
48
+ #### `@mui/x-data-grid-premium@8.4.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
49
+
50
+ Same changes as in `@mui/x-data-grid-pro@8.4.0`.
51
+
52
+ ### Date and Time Pickers
53
+
54
+ #### `@mui/x-date-pickers@8.4.0`
55
+
56
+ - [fields] Ensure fresh `disabled` value is used when focusing or clicking (#17914) @aizerin
57
+ - [fields] Improve the field controlled edition (#17816) @flaviendelangle
58
+ - [pickers] Fix `PickersTextField` overflow (#17942) @noraleonte
59
+
60
+ #### `@mui/x-date-pickers-pro@8.4.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
61
+
62
+ Same changes as in `@mui/x-date-pickers@8.4.0`.
63
+
64
+ ### Charts
65
+
66
+ #### `@mui/x-charts@8.4.0`
67
+
68
+ - [charts] Add grouped axes demo (#17848) @bernardobelchior
69
+ - [charts] Enable tooltip disable portal (#17871) @alexfauquette
70
+ - [charts] Improve performance in scatter chart (#17849) @bernardobelchior
71
+ - [charts] Recreate `isPointInside` less often (#17850) @bernardobelchior
72
+ - [charts] Try fix for flaky `useAnimate` test (#17777) @JCQuintas
73
+ - [charts] Add `isXInside` and `isYInside` (#17911) @bernardobelchior
74
+
75
+ #### `@mui/x-charts-pro@8.4.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
76
+
77
+ Same changes as in `@mui/x-charts@8.4.0`, plus:
78
+
79
+ - [charts-pro] Add size for zoom slider (#17736) @bernardobelchior
80
+ - [charts-pro] Add zoom slider tooltip (#17733) @bernardobelchior
81
+ - [charts-pro] Clean and document Heatmap Tooltip (#17933) @alexfauquette
82
+ - [charts-pro] Introduce `Pyramid` chart (#17783) @JCQuintas
83
+ - [charts-pro] Update zoom slider nomenclature (#17938) @bernardobelchior
84
+ - [charts-pro] Fix error when importing rasterizehtml (#17897) @bernardobelchior
85
+
86
+ ### Tree View
87
+
88
+ #### `@mui/x-tree-view@8.4.0`
89
+
90
+ - [TreeView] Add `getItemChildren` prop in `RichTreeView` (#17894) @rita-codes
91
+ - [TreeView] Add a method in the `apiRef` to toggle the editing status of an item (#17768) @rita-codes
92
+ - [TreeView] Add missing sx prop on the Tree Item component (#17930) @flaviendelangle
93
+
94
+ #### `@mui/x-tree-view-pro@8.4.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
95
+
96
+ Same changes as in `@mui/x-tree-view@8.4.0`.
97
+
98
+ ### Docs
99
+
100
+ - [docs] Add a recipe for drag and drop row grouping (#17638) @KenanYusuf
101
+ - [docs] Add introductory text to Data Grid component pages (#17902) @KenanYusuf
102
+ - [docs] Refactor embedded CodeSandbox on Data Grid—Quickstart page (#17749) @rita-codes
103
+ - [docs] Remove double border on Data Grid—Quickstart demo (#17932) @rita-codes
104
+ - [docs] Standardize `apiRef` copy (#17776) @mapache-salvaje
105
+ - [docs][DataGrid] Revise server-side data docs (#17007) @mapache-salvaje
106
+ - [docs][DataGrid] Audit and revise the tree data doc (#17650) @mapache-salvaje
107
+ - [docs][pickers] Fix migration guide references to range fields (#17861) @LukasTy
108
+ - [docs][charts] Reorganize the Tooltip documentation (#17917) @alexfauquette
109
+
110
+ ### Core
111
+
112
+ - [core] refactor: remove manual `displayName` (#17845) @romgrk
113
+ - [code-infra] Document how to use `vitest` cli (#17847) @JCQuintas
114
+ - [code-infra] Increase charts export test timeout (#17909) @JCQuintas
115
+ - [code-infra] Set `isolatedModules=true` in tsconfig (#17781) @JCQuintas
116
+ - [infra] Ensure proper docs preview path resolution (#17863) @LukasTy
117
+
118
+ ## 8.3.1
119
+
120
+ _May 14, 2025_
121
+
122
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
123
+
124
+ - 🌍 Improve Norwegian Bokmål (nb-NO) locale on the Data Grid
125
+ - 🌍 Improve Korean (ko-KR) locale on the Data Grid and Pickers
126
+ - 📚 Documentation improvements
127
+ - 🐞 Bugfixes
128
+
129
+ Special thanks go out to the community members for their valuable contributions:
130
+ @100pearlcent, @htollefsen, @JanPretzel, @sai6855.
131
+ Following are all team members who have contributed to this release:
132
+ @bernardobelchior, @cherniavskii, @flaviendelangle, @Janpot, @JCQuintas, @MBilalShafi, @oliviertassinari, @prakhargupta1.
133
+
134
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
135
+
136
+ ### Data Grid
137
+
138
+ #### `@mui/x-data-grid@8.3.1`
139
+
140
+ - [DataGrid] Add `reason` param for `onRowSelectionModelChange` callback (#17545) @sai6855
141
+ - [DataGrid] Fix `renderContext` calculation loop (#17779) @cherniavskii
142
+ - [DataGrid] Fix column spanning jump on scroll (#17759) @cherniavskii
143
+ - [DataGrid] Fix material augmentation not working (#17761) @cherniavskii
144
+ - [DataGrid] Use arguments selector for checkbox props (#17683) @MBilalShafi
145
+ - [l10n] Improve Norwegian Bokmål (nb-NO) locale (#17766) @htollefsen
146
+ - [l10n] Improve Korean (ko-KR) locale (#17484) @100pearlcent
147
+
148
+ #### `@mui/x-data-grid-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
149
+
150
+ Same changes as in `@mui/x-data-grid@8.3.1`.
151
+
152
+ #### `@mui/x-data-grid-premium@8.3.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
153
+
154
+ Same changes as in `@mui/x-data-grid-pro@8.3.1`, plus:
155
+
156
+ - [DataGridPremium] Fix aggregation label not being used in pivot panel (#17760) @cherniavskii
157
+
158
+ ### Date and Time Pickers
159
+
160
+ #### `@mui/x-date-pickers@8.3.1`
161
+
162
+ - [fields] Add notch to the field outlined when the label is manually shrank (#17620) @flaviendelangle
163
+ - [l10n] Improve Korean (ko-KR) locale (#17484) @100pearlcent
164
+
165
+ #### `@mui/x-date-pickers-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
166
+
167
+ Same changes as in `@mui/x-date-pickers@8.3.1`.
168
+
169
+ ### Charts
170
+
171
+ #### `@mui/x-charts@8.3.1`
172
+
173
+ - [charts] Fix infinite tick number when zoom range is zero (#17750) @bernardobelchior
174
+ - [charts] Improve tick rendering performance (#17755) @bernardobelchior
175
+
176
+ #### `@mui/x-charts-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
177
+
178
+ Same changes as in `@mui/x-charts@8.3.1`, plus:
179
+
180
+ - [charts-pro] Fix ESM build issue with Vite (#17774) @bernardobelchior
181
+ - [charts-pro] Add benchmark for zoomed in scatter chart (#17756) @bernardobelchior
182
+
183
+ ### Tree View
184
+
185
+ #### `@mui/x-tree-view@8.3.1`
186
+
187
+ Internal changes.
188
+
189
+ #### `@mui/x-tree-view-pro@8.3.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
190
+
191
+ Same changes as in `@mui/x-tree-view@8.3.1`.
192
+
193
+ ### Docs
194
+
195
+ - [docs] Fix 301 to Next.js docs for license @oliviertassinari
196
+ - [docs] Fix AI assistant API URL (#17745) @oliviertassinari
197
+ - [docs] Fix heading structure in README @oliviertassinari
198
+ - [docs] Fix translation keys documentation (#17811) @JanPretzel
199
+ - [docs] Improve CHANGELOG format @oliviertassinari
200
+
201
+ ### Core
202
+
203
+ - [core] Apply YAML convention, blank line only at top level @oliviertassinari
204
+ - [code-infra] Fix dynamic import missing extensions (#17767) @Janpot
205
+ - [code-infra] Replace `mocha` with `vitest` for browser & jsdom tests (#14508) @JCQuintas
206
+ - [scheduler] Create the package and setup a private doc page (#17239) @flaviendelangle
207
+
8
208
  ## 8.3.0
9
209
 
10
210
  _May 8, 2025_
@@ -15,10 +215,8 @@ We'd like to offer a big thanks to the 11 contributors who made this release pos
15
215
  - 📚 Documentation improvements
16
216
  - 🐞 Bugfixes
17
217
 
18
- Special thanks go out to this community member for a valuable contribution:
19
- @ptuukkan.
20
- Team members who have contributed to this release:
21
- @alexfauquette, @arminmeh, @bernardobelchior, @flaviendelangle, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @rita-codes, @romgrk.
218
+ Special thanks go out to this community member for a valuable contribution: @ptuukkan.
219
+ Team members who have contributed to this release: @alexfauquette, @arminmeh, @bernardobelchior, @flaviendelangle, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @rita-codes, @romgrk.
22
220
 
23
221
  ### Data Grid
24
222
 
@@ -531,8 +729,7 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
531
729
  - 📚 Documentation improvements
532
730
  - 🐞 Bugfixes
533
731
 
534
- Team members who have contributed to this release:
535
- @bernardobelchior, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @noraleonte, @romgrk, @alexfauquette.
732
+ Team members who have contributed to this release: @bernardobelchior, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @noraleonte, @romgrk, @alexfauquette.
536
733
 
537
734
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
538
735
 
@@ -845,7 +1042,7 @@ We'd like to offer a big thanks to the 21 contributors who made this release pos
845
1042
  - 🌍 Improve Chinese (zh-CN), (zh-HK), (zh-TW), Czech (cs-CZ), Korean (ko-KR) and Slovak (sk-Sk) locales on the Data Grid
846
1043
  - 🌍 Improve Chinese (zh-CN), (zh-HK) and (zh-TW) locales on the Pickers
847
1044
 
848
- ## Breaking changes
1045
+ ### Breaking changes
849
1046
 
850
1047
  - ℹ️ The peer dependency on `@mui/material` has been updated to accept only v7.
851
1048
  This has been done to increase the adoption rate of ESM.
@@ -858,7 +1055,7 @@ Following are all team members who have contributed to this release:
858
1055
 
859
1056
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
860
1057
 
861
- ## Alpha release highlights
1058
+ ### Alpha release highlights
862
1059
 
863
1060
  Below are the highlights of the alpha releases leading up to this beta release:
864
1061
 
@@ -3152,8 +3349,7 @@ We'd like to offer a big thanks to the 4 contributors who made this release poss
3152
3349
 
3153
3350
  - 🐞 Bugfixes
3154
3351
 
3155
- Team members who have contributed to this release:
3156
- @arminmeh, @cherniavskii, @LukasTy, @michelengelen.
3352
+ Team members who have contributed to this release: @arminmeh, @cherniavskii, @LukasTy, @michelengelen.
3157
3353
 
3158
3354
  <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
3159
3355
 
@@ -52,7 +52,7 @@ const ChartContainer = exports.ChartContainer = /*#__PURE__*/React.forwardRef(fu
52
52
  });
53
53
 
54
54
  // @ts-ignore
55
-
55
+ if (process.env.NODE_ENV !== "production") ChartContainer.displayName = "ChartContainer";
56
56
  process.env.NODE_ENV !== "production" ? ChartContainer.propTypes = {
57
57
  // ----------------------------- Warning --------------------------------
58
58
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -27,6 +27,11 @@ export interface ChartsAxisClasses {
27
27
  left: string;
28
28
  /** Styles applied to the right axis. */
29
29
  right: string;
30
+ /**
31
+ * Styles applied to the root element for the axis with the given ID.
32
+ * Needs to be suffixed with the axis ID: `.${axisClasses.id}-${axisId}`.
33
+ */
34
+ id: string;
30
35
  }
31
36
  export type ChartsAxisClassKey = keyof ChartsAxisClasses;
32
37
  export declare function getAxisUtilityClass(slot: string): string;
@@ -11,4 +11,4 @@ var _generateUtilityClasses = _interopRequireDefault(require("@mui/utils/generat
11
11
  function getAxisUtilityClass(slot) {
12
12
  return (0, _generateUtilityClass.default)('MuiChartsAxis', slot);
13
13
  }
14
- const axisClasses = exports.axisClasses = (0, _generateUtilityClasses.default)('MuiChartsAxis', ['root', 'line', 'tickContainer', 'tick', 'tickLabel', 'label', 'directionX', 'directionY', 'top', 'bottom', 'left', 'right']);
14
+ const axisClasses = exports.axisClasses = (0, _generateUtilityClasses.default)('MuiChartsAxis', ['root', 'line', 'tickContainer', 'tick', 'tickLabel', 'label', 'directionX', 'directionY', 'top', 'bottom', 'left', 'right', 'id']);
@@ -27,7 +27,8 @@ function ChartsGridHorizontal(props) {
27
27
  const yTicks = (0, _useTicks.useTicks)({
28
28
  scale,
29
29
  tickNumber,
30
- tickInterval
30
+ tickInterval,
31
+ direction: 'y'
31
32
  });
32
33
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(React.Fragment, {
33
34
  children: yTicks.map(({
@@ -27,7 +27,8 @@ function ChartsGridVertical(props) {
27
27
  const xTicks = (0, _useTicks.useTicks)({
28
28
  scale,
29
29
  tickNumber,
30
- tickInterval
30
+ tickInterval,
31
+ direction: 'x'
31
32
  });
32
33
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(React.Fragment, {
33
34
  children: xTicks.map(({
@@ -107,6 +107,7 @@ const ChartsLegend = exports.ChartsLegend = (0, _consumeSlots.consumeSlots)('Mui
107
107
  })
108
108
  }));
109
109
  }));
110
+ if (process.env.NODE_ENV !== "production") ChartsLegend.displayName = "ChartsLegend";
110
111
  process.env.NODE_ENV !== "production" ? ChartsLegend.propTypes = {
111
112
  // ----------------------------- Warning --------------------------------
112
113
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -17,9 +17,7 @@ var _enUS = require("../locales/enUS");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  const _excluded = ["localeText"];
19
19
  const ChartsLocalizationContext = exports.ChartsLocalizationContext = /*#__PURE__*/React.createContext(null);
20
- if (process.env.NODE_ENV !== 'production') {
21
- ChartsLocalizationContext.displayName = 'ChartsLocalizationContext';
22
- }
20
+ if (process.env.NODE_ENV !== "production") ChartsLocalizationContext.displayName = "ChartsLocalizationContext";
23
21
  /**
24
22
  * Demos:
25
23
  *
@@ -93,6 +93,7 @@ const ChartsSurface = exports.ChartsSurface = /*#__PURE__*/React.forwardRef(func
93
93
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxesGradients.ChartsAxesGradients, {}), hasIntrinsicSize && children]
94
94
  }));
95
95
  });
96
+ if (process.env.NODE_ENV !== "production") ChartsSurface.displayName = "ChartsSurface";
96
97
  process.env.NODE_ENV !== "production" ? ChartsSurface.propTypes = {
97
98
  // ----------------------------- Warning --------------------------------
98
99
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -38,10 +38,11 @@ const _excluded = ["scale", "tickNumber", "reverse"];
38
38
  const useUtilityClasses = ownerState => {
39
39
  const {
40
40
  classes,
41
- position
41
+ position,
42
+ id
42
43
  } = ownerState;
43
44
  const slots = {
44
- root: ['root', 'directionX', position],
45
+ root: ['root', 'directionX', position, `id-${id}`],
45
46
  line: ['line'],
46
47
  tickContainer: ['tickContainer'],
47
48
  tick: ['tick'],
@@ -63,7 +64,7 @@ function getVisibleLabels(xTicks, {
63
64
  tickLabelMinGap,
64
65
  reverse,
65
66
  isMounted,
66
- isPointInside
67
+ isXInside
67
68
  }) {
68
69
  const getTickLabelSize = tick => {
69
70
  if (!isMounted || tick.formattedValue === undefined) {
@@ -98,7 +99,7 @@ function getVisibleLabels(xTicks, {
98
99
  if (labelIndex > 0 && direction * textPosition < direction * (previousTextLimit + tickLabelMinGap)) {
99
100
  return false;
100
101
  }
101
- if (!isPointInside(textPosition)) {
102
+ if (!isXInside(textPosition)) {
102
103
  return false;
103
104
  }
104
105
 
@@ -257,7 +258,8 @@ function ChartsXAxis(inProps) {
257
258
  valueFormatter,
258
259
  tickInterval,
259
260
  tickPlacement,
260
- tickLabelPlacement
261
+ tickLabelPlacement,
262
+ direction: 'x'
261
263
  });
262
264
  const visibleLabels = getVisibleLabels(xTicks, {
263
265
  tickLabelStyle: axisTickLabelProps.style,
@@ -265,12 +267,7 @@ function ChartsXAxis(inProps) {
265
267
  tickLabelMinGap,
266
268
  reverse,
267
269
  isMounted,
268
- isPointInside: x => instance.isPointInside({
269
- x,
270
- y: -1
271
- }, {
272
- direction: 'x'
273
- })
270
+ isXInside: instance.isXInside
274
271
  });
275
272
  const axisLabelProps = (0, _useSlotProps.default)({
276
273
  elementType: Label,
@@ -318,12 +315,7 @@ function ChartsXAxis(inProps) {
318
315
  } = item;
319
316
  const xTickLabel = labelOffset ?? 0;
320
317
  const yTickLabel = positionSign * (tickSize + TICK_LABEL_GAP);
321
- const showTick = instance.isPointInside({
322
- x: tickOffset,
323
- y: -1
324
- }, {
325
- direction: 'x'
326
- });
318
+ const showTick = instance.isXInside(tickOffset);
327
319
  const tickLabel = tickLabels.get(item);
328
320
  const showTickLabel = visibleLabels.has(item);
329
321
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("g", {
@@ -35,10 +35,11 @@ const _excluded = ["scale", "tickNumber"];
35
35
  const useUtilityClasses = ownerState => {
36
36
  const {
37
37
  classes,
38
- position
38
+ position,
39
+ id
39
40
  } = ownerState;
40
41
  const slots = {
41
- root: ['root', 'directionY', position],
42
+ root: ['root', 'directionY', position, `id-${id}`],
42
43
  line: ['line'],
43
44
  tickContainer: ['tickContainer'],
44
45
  tick: ['tick'],
@@ -163,7 +164,8 @@ function ChartsYAxis(inProps) {
163
164
  valueFormatter,
164
165
  tickPlacement,
165
166
  tickLabelPlacement,
166
- tickInterval
167
+ tickInterval,
168
+ direction: 'y'
167
169
  });
168
170
  const positionSign = position === 'right' ? 1 : -1;
169
171
  const tickFontSize = typeof tickLabelStyle?.fontSize === 'number' ? tickLabelStyle.fontSize : 12;
@@ -242,12 +244,7 @@ function ChartsYAxis(inProps) {
242
244
  const xTickLabel = positionSign * (tickSize + TICK_LABEL_GAP);
243
245
  const yTickLabel = labelOffset;
244
246
  const skipLabel = typeof tickLabelInterval === 'function' && !tickLabelInterval?.(value, index);
245
- const showLabel = instance.isPointInside({
246
- x: -1,
247
- y: tickOffset
248
- }, {
249
- direction: 'y'
250
- });
247
+ const showLabel = instance.isYInside(tickOffset);
251
248
  const tickLabel = tickLabels.get(item);
252
249
  if (!showLabel) {
253
250
  return null;
package/Gauge/Gauge.js CHANGED
@@ -55,6 +55,7 @@ const Gauge = exports.Gauge = /*#__PURE__*/React.forwardRef(function Gauge(props
55
55
  }), children]
56
56
  }));
57
57
  });
58
+ if (process.env.NODE_ENV !== "production") Gauge.displayName = "Gauge";
58
59
  process.env.NODE_ENV !== "production" ? Gauge.propTypes = {
59
60
  // ----------------------------- Warning --------------------------------
60
61
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -85,6 +85,7 @@ const GaugeContainer = exports.GaugeContainer = /*#__PURE__*/React.forwardRef(fu
85
85
  })
86
86
  });
87
87
  });
88
+ if (process.env.NODE_ENV !== "production") GaugeContainer.displayName = "GaugeContainer";
88
89
  process.env.NODE_ENV !== "production" ? GaugeContainer.propTypes = {
89
90
  // ----------------------------- Warning --------------------------------
90
91
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -29,9 +29,7 @@ const GaugeContext = exports.GaugeContext = /*#__PURE__*/React.createContext({
29
29
  maxRadius: 0,
30
30
  valueAngle: null
31
31
  });
32
- if (process.env.NODE_ENV !== 'production') {
33
- GaugeContext.displayName = 'GaugeContext';
34
- }
32
+ if (process.env.NODE_ENV !== "production") GaugeContext.displayName = "GaugeContext";
35
33
  function GaugeProvider(props) {
36
34
  const {
37
35
  value = null,
@@ -47,6 +47,7 @@ const AnimatedLine = exports.AnimatedLine = /*#__PURE__*/React.forwardRef(functi
47
47
  }, other, animateProps))
48
48
  });
49
49
  });
50
+ if (process.env.NODE_ENV !== "production") AnimatedLine.displayName = "AnimatedLine";
50
51
  process.env.NODE_ENV !== "production" ? AnimatedLine.propTypes = {
51
52
  // ----------------------------- Warning --------------------------------
52
53
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -72,11 +72,12 @@ const LineChart = exports.LineChart = /*#__PURE__*/React.forwardRef(function Lin
72
72
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsAxis.ChartsAxis, (0, _extends2.default)({}, chartsAxisProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)("g", {
73
73
  "data-drawing-container": true,
74
74
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MarkPlot.MarkPlot, (0, _extends2.default)({}, markPlotProps))
75
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineHighlightPlot.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
76
- }))]
75
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_LineHighlightPlot.LineHighlightPlot, (0, _extends2.default)({}, lineHighlightPlotProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsClipPath.ChartsClipPath, (0, _extends2.default)({}, clipPathProps)), children]
76
+ })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip))]
77
77
  }))
78
78
  }));
79
79
  });
80
+ if (process.env.NODE_ENV !== "production") LineChart.displayName = "LineChart";
80
81
  process.env.NODE_ENV !== "production" ? LineChart.propTypes = {
81
82
  // ----------------------------- Warning --------------------------------
82
83
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -91,10 +91,7 @@ function LineHighlightPlot(props) {
91
91
  const x = xScale(xData[highlightedIndex]);
92
92
  const y = yScale(stackedData[highlightedIndex][1]); // This should not be undefined since y should not be a band scale
93
93
 
94
- if (!instance.isPointInside({
95
- x,
96
- y
97
- })) {
94
+ if (!instance.isPointInside(x, y)) {
98
95
  return null;
99
96
  }
100
97
  const colorGetter = (0, _getColor.default)(series[seriesId], xAxis[xAxisId], yAxis[yAxisId]);
@@ -129,10 +129,7 @@ function MarkPlot(props) {
129
129
  // Remove missing data point
130
130
  return false;
131
131
  }
132
- if (!instance.isPointInside({
133
- x,
134
- y
135
- })) {
132
+ if (!instance.isPointInside(x, y)) {
136
133
  // Remove out of range
137
134
  return false;
138
135
  }
@@ -106,6 +106,7 @@ const PieArc = exports.PieArc = /*#__PURE__*/React.forwardRef(function PieArc(pr
106
106
  strokeLinejoin: "round"
107
107
  }, other, interactionProps, animatedProps));
108
108
  });
109
+ if (process.env.NODE_ENV !== "production") PieArc.displayName = "PieArc";
109
110
  process.env.NODE_ENV !== "production" ? PieArc.propTypes = {
110
111
  // ----------------------------- Warning --------------------------------
111
112
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -101,6 +101,7 @@ const PieArcLabel = exports.PieArcLabel = /*#__PURE__*/React.forwardRef(function
101
101
  children: formattedArcLabel
102
102
  }));
103
103
  });
104
+ if (process.env.NODE_ENV !== "production") PieArcLabel.displayName = "PieArcLabel";
104
105
  process.env.NODE_ENV !== "production" ? PieArcLabel.propTypes = {
105
106
  // ----------------------------- Warning --------------------------------
106
107
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -20,7 +20,7 @@ var _ChartsSurface = require("../ChartsSurface");
20
20
  var _ChartDataProvider = require("../ChartDataProvider");
21
21
  var _useChartContainerProps = require("../ChartContainer/useChartContainerProps");
22
22
  var _ChartsWrapper = require("../internals/components/ChartsWrapper");
23
- var _PieChart = require("./PieChart.plugins");
23
+ var _PieChart2 = require("./PieChart.plugins");
24
24
  var _defaultizeMargin = require("../internals/defaultizeMargin");
25
25
  var _jsxRuntime = require("react/jsx-runtime");
26
26
  const _excluded = ["series", "width", "height", "margin", "colors", "sx", "skipAnimation", "hideLegend", "children", "slots", "slotProps", "onItemClick", "loading", "highlightedItem", "onHighlightChange", "className"];
@@ -81,7 +81,7 @@ const PieChart = exports.PieChart = /*#__PURE__*/React.forwardRef(function PieCh
81
81
  onHighlightChange,
82
82
  className,
83
83
  skipAnimation,
84
- plugins: _PieChart.PIE_CHART_PLUGINS
84
+ plugins: _PieChart2.PIE_CHART_PLUGINS
85
85
  }), ref);
86
86
  const Tooltip = slots?.tooltip ?? _ChartsTooltip.ChartsTooltip;
87
87
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartDataProvider.ChartDataProvider, (0, _extends2.default)({}, chartDataProviderProps, {
@@ -102,13 +102,14 @@ const PieChart = exports.PieChart = /*#__PURE__*/React.forwardRef(function PieCh
102
102
  loading: loading,
103
103
  slots: slots,
104
104
  slotProps: slotProps
105
- }), !loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({
106
- trigger: "item"
107
- }, slotProps?.tooltip)), children]
108
- }))]
105
+ }), children]
106
+ })), !loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({
107
+ trigger: "item"
108
+ }, slotProps?.tooltip))]
109
109
  })
110
110
  }));
111
111
  });
112
+ if (process.env.NODE_ENV !== "production") PieChart.displayName = "PieChart";
112
113
  process.env.NODE_ENV !== "production" ? PieChart.propTypes = {
113
114
  // ----------------------------- Warning --------------------------------
114
115
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -43,11 +43,12 @@ const RadarChart = exports.RadarChart = /*#__PURE__*/React.forwardRef(function R
43
43
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartsWrapper.ChartsWrapper, (0, _extends2.default)({}, chartsWrapperProps, {
44
44
  children: [!props.hideLegend && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsLegend.ChartsLegend, (0, _extends2.default)({}, legendProps)), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ChartsSurface.ChartsSurface, (0, _extends2.default)({}, chartsSurfaceProps, {
45
45
  ref: ref,
46
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarGrid.RadarGrid, (0, _extends2.default)({}, radarGrid)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarMetricLabels.RadarMetricLabels, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarSeriesPlot.RadarSeriesArea, {}), highlight === 'axis' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarAxisHighlight.RadarAxisHighlight, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarSeriesPlot.RadarSeriesMarks, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip)), children]
47
- }))]
46
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarGrid.RadarGrid, (0, _extends2.default)({}, radarGrid)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarMetricLabels.RadarMetricLabels, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarSeriesPlot.RadarSeriesArea, {}), highlight === 'axis' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarAxisHighlight.RadarAxisHighlight, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_RadarSeriesPlot.RadarSeriesMarks, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsOverlay.ChartsOverlay, (0, _extends2.default)({}, overlayProps)), children]
47
+ })), !props.loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(Tooltip, (0, _extends2.default)({}, props.slotProps?.tooltip))]
48
48
  }))
49
49
  }));
50
50
  });
51
+ if (process.env.NODE_ENV !== "production") RadarChart.displayName = "RadarChart";
51
52
  process.env.NODE_ENV !== "production" ? RadarChart.propTypes = {
52
53
  // ----------------------------- Warning --------------------------------
53
54
  // | These PropTypes are generated from the TypeScript type definitions |
@@ -61,19 +61,11 @@ function Scatter(props) {
61
61
  const scatterPoint = series.data[i];
62
62
  const x = getXPosition(scatterPoint.x);
63
63
  const y = getYPosition(scatterPoint.y);
64
- const isInRange = instance.isPointInside({
65
- x,
66
- y
67
- });
68
- const pointCtx = {
69
- type: 'scatter',
70
- seriesId: series.id,
71
- dataIndex: i
72
- };
64
+ const isInRange = instance.isPointInside(x, y);
73
65
  if (isInRange) {
74
66
  const currentItem = {
75
- seriesId: pointCtx.seriesId,
76
- dataIndex: pointCtx.dataIndex
67
+ seriesId: series.id,
68
+ dataIndex: i
77
69
  };
78
70
  const isItemHighlighted = isHighlighted(currentItem);
79
71
  temp.push({