@mui/material 5.10.8 → 5.10.10

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 (58) hide show
  1. package/ButtonBase/ButtonBase.js +1 -2
  2. package/CHANGELOG.md +208 -19
  3. package/CssBaseline/CssBaseline.js +15 -3
  4. package/Fade/Fade.js +1 -2
  5. package/Grow/Grow.js +1 -2
  6. package/InputBase/InputBase.js +1 -3
  7. package/Popover/Popover.js +13 -1
  8. package/Rating/Rating.js +1 -2
  9. package/ScopedCssBaseline/ScopedCssBaseline.js +13 -1
  10. package/Slide/Slide.js +1 -2
  11. package/Tooltip/Tooltip.js +1 -3
  12. package/Unstable_TrapFocus/index.d.ts +1 -1
  13. package/Zoom/Zoom.js +1 -2
  14. package/esm/ButtonBase/ButtonBase.js +1 -2
  15. package/esm/CssBaseline/CssBaseline.js +16 -3
  16. package/esm/Fade/Fade.js +1 -2
  17. package/esm/Grow/Grow.js +1 -2
  18. package/esm/InputBase/InputBase.js +1 -3
  19. package/esm/Popover/Popover.js +13 -1
  20. package/esm/Rating/Rating.js +1 -2
  21. package/esm/ScopedCssBaseline/ScopedCssBaseline.js +13 -1
  22. package/esm/Slide/Slide.js +1 -2
  23. package/esm/Tooltip/Tooltip.js +1 -3
  24. package/esm/Zoom/Zoom.js +1 -2
  25. package/esm/utils/createSvgIcon.js +8 -6
  26. package/index.js +1 -1
  27. package/legacy/ButtonBase/ButtonBase.js +1 -2
  28. package/legacy/CssBaseline/CssBaseline.js +21 -3
  29. package/legacy/Fade/Fade.js +1 -2
  30. package/legacy/Grow/Grow.js +1 -2
  31. package/legacy/InputBase/InputBase.js +1 -3
  32. package/legacy/Popover/Popover.js +17 -1
  33. package/legacy/Rating/Rating.js +1 -2
  34. package/legacy/ScopedCssBaseline/ScopedCssBaseline.js +18 -1
  35. package/legacy/Slide/Slide.js +1 -2
  36. package/legacy/Tooltip/Tooltip.js +1 -3
  37. package/legacy/Zoom/Zoom.js +1 -2
  38. package/legacy/index.js +1 -1
  39. package/legacy/utils/createSvgIcon.js +2 -2
  40. package/modern/ButtonBase/ButtonBase.js +1 -2
  41. package/modern/CssBaseline/CssBaseline.js +14 -3
  42. package/modern/Fade/Fade.js +1 -2
  43. package/modern/Grow/Grow.js +1 -2
  44. package/modern/InputBase/InputBase.js +1 -3
  45. package/modern/Popover/Popover.js +13 -1
  46. package/modern/Rating/Rating.js +1 -2
  47. package/modern/ScopedCssBaseline/ScopedCssBaseline.js +11 -1
  48. package/modern/Slide/Slide.js +1 -2
  49. package/modern/Tooltip/Tooltip.js +1 -3
  50. package/modern/Zoom/Zoom.js +1 -2
  51. package/modern/index.js +1 -1
  52. package/modern/utils/createSvgIcon.js +8 -6
  53. package/package.json +5 -5
  54. package/styles/components.d.ts +3 -0
  55. package/styles/experimental_extendTheme.d.ts +1 -1
  56. package/umd/material-ui.development.js +165 -95
  57. package/umd/material-ui.production.min.js +20 -20
  58. package/utils/createSvgIcon.js +8 -6
@@ -321,8 +321,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
321
321
  }
322
322
  }
323
323
 
324
- const handleOwnRef = (0, _useForkRef.default)(focusVisibleRef, buttonRef);
325
- const handleRef = (0, _useForkRef.default)(ref, handleOwnRef);
324
+ const handleRef = (0, _useForkRef.default)(ref, focusVisibleRef, buttonRef);
326
325
 
327
326
  if (process.env.NODE_ENV !== 'production') {
328
327
  // eslint-disable-next-line react-hooks/rules-of-hooks
package/CHANGELOG.md CHANGED
@@ -1,5 +1,194 @@
1
1
  # [Versions](https://mui.com/versions/)
2
2
 
3
+ ## 5.10.10
4
+
5
+ <!-- generated comparing v5.10.9..master -->
6
+
7
+ _Oct 18, 2022_
8
+
9
+ A big thanks to the 21 contributors who made this release possible. Here are some highlights ✨:
10
+
11
+ - 🖌 Thanks to the efforts of @bharatkashyap and @nihgwu, we now have editable demos across our docs (#34454)!
12
+ - 🚀 The Tooltip component has been added to Joy UI by @hbjORbj (#34509).
13
+ - ⚙️ We started converting the remaining JS components in MUI Base to TypeScript.
14
+ @mbayucot finished the first PR with the conversion of the NoSsr code (#34735).
15
+ - And more 🐛 bug fixes and 📚 documentation improvements.
16
+
17
+ ### `@mui/material@5.10.10`
18
+
19
+ - [Popover] Fix paper position flash on open (#34546) @TheUnlocked
20
+ - [SwipeableDrawer] Make component `defaultProps` overridable (#34643) @hbjORbj
21
+
22
+ ### `@mui/system@5.10.10`
23
+
24
+ - [system] Support CSS `grey` color in `sx` (#34548) @TheUnlocked
25
+
26
+ ### `@mui/styles@5.10.10`
27
+
28
+ - [styles] Use memoized context in StylesProvider (#34637) @mohd-akram
29
+
30
+ ### `@mui/joy@5.0.0-alpha.50`
31
+
32
+ - [Select][joy] Added hidden input element (#34657) @zee-bit
33
+ - [Slider][joy] Add global variant to slider (#34733) @siriwatknp
34
+ - [Tooltip][joy] Add component (#34509) @hbjORbj
35
+
36
+ ### `@mui/base@5.0.0-alpha.102`
37
+
38
+ - [MultiSelect][base] Prevent the renderValue prop from being propagated to the DOM (#34698) @michaldudak
39
+ - [NoSsr] Convert code to TypeScript (#34735) @mbayucot
40
+
41
+ ### Docs
42
+
43
+ - [docs] Fix the Autocomplete Highlighting example (#34184) @hayawata3626
44
+ - [docs] Fix typos in Base (Menu, Tabs) and Joy UI (Chip) (#34803) @rvrvrv
45
+ - [docs] Use new editing API in homepage demos (#34220) @m4theushw
46
+ - [docs] Live demos (#34454) @bharatkashyap
47
+ - [docs] Fix typos in Joy UI Switch (#34728) @ndresx
48
+ - [docs] Avoid scrollbar in the code demos (#34741) @oliviertassinari
49
+ - [docs] Revise the Joy UI "Automatic adjustment" page (#34614) @samuelsycamore
50
+ - [docs] Revise and rename the Joy UI "Perfect dark mode" page (#34613) @samuelsycamore
51
+ - [docs] Revise the Joy UI "Global variants" page (#34595) @samuelsycamore
52
+ - [docs] Basic link verification at PR level (#34588) @alexfauquette
53
+ - [docs] Add a missing comma in the customization example (#34617) @AbayKinayat
54
+ - [website] Clarify Pro/Premium support (#34607) @oliviertassinari
55
+ - [website] Fix home page dark mode flicker (#33545)
56
+ - [website] Update the state of the date pickers on the landing page (#34750) @joserodolfofreitas
57
+
58
+ ### Core
59
+
60
+ - [core] Clean conditionals (#34772) @pedroprado010
61
+ - [core] Temporary remove the authorization (#34796) @siriwatknp
62
+ - [core] Avoid slower CI run statues @oliviertassinari
63
+ - [core] Improve the playground DX (#34739) @oliviertassinari
64
+ - [core] Link Netlify in the danger comment (#34688) @oliviertassinari
65
+ - [core] Fix CI after out of sync merge @oliviertassinari
66
+ - [core] Enforce straight quote (#34686) @oliviertassinari
67
+ - [core] Add code scanning via CodeQL (#34707) @DanailH
68
+ - [core] Fix some upcoming eslint issues (#34727) @oliviertassinari
69
+ - [core] Auto-fix upcoming eslint issues (#34644) @Janpot
70
+ - [core] Move SearchIcons to docs src folder (#34802)
71
+ - [test] Enable `react/no-unstable-nested-components` (#34518) @eps1lon
72
+
73
+ All contributors of this release in alphabetical order: @AbayKinayat, @alexfauquette, @bharatkashyap, @DanailH, @eps1lon, @hayawata3626, @hbjORbj, @Janpot, @joserodolfofreitas, @m4theushw, @mbayucot, @michaldudak, @mohd-akram, @ndresx, @oliviertassinari, @pedroprado010, @rvrvrv, @samuelsycamore, @siriwatknp, @TheUnlocked, @zee-bit
74
+
75
+ ## 5.10.9
76
+
77
+ <!-- generated comparing v5.10.8..master -->
78
+
79
+ _Oct 10, 2022_
80
+
81
+ A big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
82
+
83
+ - 🚀 [Joy] Button loading functionality has been added by @kushagra010 (#34658)
84
+ - And more 🐛 bug fixes and 📚 documentation improvements.
85
+
86
+ ### `@mui/material@5.10.9`
87
+
88
+ - &#8203;<!-- 16 -->[Grid v2][system] Handle direction object prop for responsive design (#34574) @vanyaxk
89
+ - &#8203;<!-- 03 -->[Slider] Fix unnecessary accessibility attribute in root element (#34610) @vanyaxk
90
+
91
+ ### `@mui/system@5.10.9`
92
+
93
+ #### BREAKING CHANGE
94
+
95
+ - &#8203;<!-- 17 -->[system] Fix color-scheme implementation (#34639) @siriwatknp
96
+
97
+ The `enableColorScheme` prop has been removed from `CssVarsProvider` and `getInitColorScheme` (both Material UI and Joy UI).
98
+
99
+ Migration:
100
+
101
+ - **Material UI**: you can enable the CSS color scheme via `<CssBaseline enableColorScheme />`.
102
+ - **Joy UI**: it is enabled automatically if you use `<CssBaseline />`, [see the docs](https://mui.com/joy-ui/react-css-baseline/).
103
+
104
+ #### Changes
105
+
106
+ - &#8203;<!-- 02 -->[system] Fix typo in createCssVarsProvider (#34661) @HexM7
107
+
108
+ ### `@mui/base@5.0.0-alpha.101`
109
+
110
+ - &#8203;<!-- 01 -->[TrapFocus] Restore the previously exported type from @mui/material (#34601) @michaldudak
111
+
112
+ ### `@mui/joy@5.0.0-alpha.49`
113
+
114
+ - &#8203;<!-- 04 -->[Joy] Add button loading functionality (#34658) @kushagra010
115
+
116
+ ### Docs
117
+
118
+ - &#8203;<!-- 18 -->[docs] Revert #34541 (#34700) @michaldudak
119
+ - &#8203;<!-- 15 -->[blog] Blog post for MUI X v6 alpha zero (#34424) @joserodolfofreitas
120
+ - &#8203;<!-- 09 -->[docs] Improve Joy UI tutorial demo (#34653) @oliviertassinari
121
+ - &#8203;<!-- 08 -->[docs] Explain how SelectUnstyled renders a hidden input (#34638) @michaldudak
122
+ - &#8203;<!-- 07 -->[docs] Fix Taiwan description (#34611) @oliviertassinari
123
+ - &#8203;<!-- 06 -->[docs] Fix codesandbox export with dayjs (#34619) @oliviertassinari
124
+ - &#8203;<!-- 05 -->[docs] Explain the purpose of renderGroup prop (#34066) @michaldudak
125
+
126
+ ### Core
127
+
128
+ - &#8203;<!-- 14 -->[core] Make useForkRef variadic (#27939) @michaldudak
129
+ - &#8203;<!-- 13 -->[core] Speedup of yarn install in the CI (#34632) @oliviertassinari
130
+ - &#8203;<!-- 12 -->[core] Fix markdown loader on Windows (#34623) @michaldudak
131
+ - &#8203;<!-- 11 -->[core] Update changelog for version v5.10.8 (#34593) @mnajdova
132
+ - &#8203;<!-- 10 -->[core] Update root package.json version (#34592) @mnajdova
133
+
134
+ All contributors of this release in alphabetical order: @HexM7, @joserodolfofreitas, @kushagra010, @michaldudak, @mnajdova, @oliviertassinari, @vanyaxk
135
+
136
+ ## 5.10.8
137
+
138
+ <!-- generated comparing v5.10.7..master -->
139
+
140
+ _Oct 3, 2022_
141
+
142
+ A big thanks to the 18 contributors who made this release possible. Here are some highlights ✨:
143
+
144
+ - 🚀 [SnackbarUnstyled](https://mui.com/base/react-snackbar/) component & headless hook are added to MUI Base (#33227) @ZeeshanTamboli
145
+ - 📚 [CSS variables documentation](https://mui.com/material-ui/experimental-api/css-theme-variables/overview/) for Material UI has been added by @siriwatknp (#33958)
146
+ - And more 🐛 bug fixes and 📚 documentation improvements.
147
+
148
+ ### `@mui/material@5.10.8`
149
+
150
+ - &#8203;<!-- 28 -->[Autocomplete] Skip filtering when list of options is loading (#33278) @ndebeiss
151
+ - &#8203;<!-- 13 -->[Fab] Add `disabled` class to FAB button (#34245) @meenarama
152
+ - &#8203;<!-- 09 -->[l10n] Add Arabic Saudi Arabia (ar-SA) locale (#33340) @rolule
153
+ - &#8203;<!-- 08 -->[l10n] zhTW refinement (#33391) @Aporim2051
154
+ - &#8203;<!-- 07 -->[Popover] Add `ownerState` on the paper slot (#34445) @kabernardes
155
+ - &#8203;<!-- 05 -->[Slider] Fixed incorrect marks displayed due to duplicate keys in range (#33526) @kskd1804
156
+ - &#8203;<!-- 03 -->[TextField] Fix typo in FormControlLabel declaration file (#34535) @hghmn
157
+
158
+ ### `@mui/base@5.0.0-alpha.100`
159
+
160
+ - &#8203;<!-- 04 -->[SnackbarUnstyled] Create component and `useSnackbar` hook (#33227) @ZeeshanTamboli
161
+
162
+ ### `@mui/joy@5.0.0-alpha.48`
163
+
164
+ - &#8203;<!-- 12 -->[Joy] Fix `variantPlain` classname missing in few components (#34534) @hbjORbj
165
+ - &#8203;<!-- 11 -->[Joy] Fix input decorator color and list padding (#34586) @siriwatknp
166
+ - &#8203;<!-- 10 -->[Joy] Miscellaneous fixes (#34492) @siriwatknp
167
+
168
+ ### Docs
169
+
170
+ - &#8203;<!-- 27 -->[blog] Fix 404 link in base introduction @oliviertassinari
171
+ - &#8203;<!-- 21 -->[docs] Fix CI build (#34589) @mnajdova
172
+ - &#8203;<!-- 20 -->[docs] Temporary remove date picker from home page (#34541) @siriwatknp
173
+ - &#8203;<!-- 19 -->[docs] Revise and expand Joy UI "Tutorial" doc (#34569) @samuelsycamore
174
+ - &#8203;<!-- 18 -->[docs] Fix SEO issues (#34537) @oliviertassinari
175
+ - &#8203;<!-- 17 -->[docs] Add CSS variables documentation for Material UI (#33958) @siriwatknp
176
+ - &#8203;<!-- 16 -->[docs] Capitalize Material Design on the Breakpoints page (#34481) @Dustin-Digitar
177
+ - &#8203;<!-- 15 -->[docs] Able to load doc components inside markdown files (#34243) @flaviendelangle
178
+ - &#8203;<!-- 14 -->[docs] Use mouse pointer on esc button in the search modal (#34485) @minkyngkm
179
+ - &#8203;<!-- 02 -->[website] Fix typo in pricing FAQ @oliviertassinari
180
+ - &#8203;<!-- 01 -->[website] Move the React Engineer role from open to next (#34494) @mnajdova
181
+
182
+ ### Core
183
+
184
+ - &#8203;<!-- 26 -->[core] Update root package.json version (#34592) @mnajdova
185
+ - &#8203;<!-- 25 -->[core] Remove useless comment in fixtures (#34581) @Garz4
186
+ - &#8203;<!-- 24 -->[core] Fix link to CODE_OF_CONDUCT.md (#34543) @peippo
187
+ - &#8203;<!-- 23 -->[core] Remove outdated docsearch.js dependency (#34421) @oliviertassinari
188
+ - &#8203;<!-- 22 -->[core] Add `newFeature` to the typing of MuiPage (#34511) @flaviendelangle
189
+
190
+ All contributors of this release in alphabetical order: @Aporim2051, @Dustin-Digitar, @flaviendelangle, @Garz4, @hbjORbj, @hghmn, @kabernardes, @kskd1804, @meenarama, @minkyngkm, @mnajdova, @ndebeiss, @oliviertassinari, @peippo, @rolule, @samuelsycamore, @siriwatknp, @ZeeshanTamboli
191
+
3
192
  ## 5.10.7
4
193
 
5
194
  <!-- generated comparing v5.10.6..master -->
@@ -37,8 +226,8 @@ A big thanks to the 21 contributors who made this release possible. Here are som
37
226
  - [TrapFocus] Rename TrapFocus to FocusTrap (#34216) @kabernardes
38
227
 
39
228
  ```diff
40
- - import TrapFocus from ‘@mui/base/TrapFocus’;
41
- + import FocusTrap from ‘@mui/base/FocusTrap’;
229
+ -import TrapFocus from '@mui/base/TrapFocus';
230
+ +import FocusTrap from '@mui/base/FocusTrap';
42
231
  ```
43
232
 
44
233
  #### Changes
@@ -320,7 +509,7 @@ _Aug 22, 2022_
320
509
 
321
510
  A big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
322
511
 
323
- - ✨ @michaldudak synced the Material Icons set with the latest from Google (#33988).
512
+ - ✨ @michaldudak synced the Material Icons set with the latest from Google (#33988).\
324
513
  A couple of icons changed their appearance. See the difference [on this Argos build](https://app.argos-ci.com/mui/material-ui/builds/4428]).
325
514
 
326
515
  ### `@mui/material@5.10.2`
@@ -1910,8 +2099,8 @@ A big thanks to the 16 contributors who made this release possible. Here are som
1910
2099
  `unstable_ClassNameGenerator` has been moved from `utils` to `className` folder to prevent all MUI Base module imports. If you use the module, please update the import as suggested in the diff below:
1911
2100
 
1912
2101
  ```diff
1913
- - import { unstable_ClassNameGenerator } from '@mui/material/utils';
1914
- + import { unstable_ClassNameGenerator } from '@mui/material/className';
2102
+ -import { unstable_ClassNameGenerator } from '@mui/material/utils';
2103
+ +import { unstable_ClassNameGenerator } from '@mui/material/className';
1915
2104
  ```
1916
2105
 
1917
2106
  #### Changes
@@ -2253,8 +2442,8 @@ A big thanks to the 22 contributors who made this release possible. Here are som
2253
2442
  3. Change the import paths of unstyled components from @mui/material to @mui/base, e.g.:
2254
2443
 
2255
2444
  ```diff
2256
- - @import ButtonUnstyled from '@mui/material/ButtonUnstyled';
2257
- + @import ButtonUnstyled from '@mui/base/ButtonUnstyled';
2445
+ -import ButtonUnstyled from '@mui/material/ButtonUnstyled';
2446
+ +import ButtonUnstyled from '@mui/base/ButtonUnstyled';
2258
2447
  ```
2259
2448
 
2260
2449
  #### Changes
@@ -4297,12 +4486,12 @@ A big thanks to the 13 contributors who made this release possible. Here are som
4297
4486
  `span` element that wraps children has been removed. `wrapper` classKey is also removed. More details about [this change](https://github.com/mui/material-ui/pull/26666).
4298
4487
 
4299
4488
  ```diff
4300
- <button class="MuiTab-root">
4301
- - <span class="MuiTab-wrapper">
4489
+ <button class="MuiTab-root">
4490
+ - <span class="MuiTab-wrapper">
4302
4491
  {icon}
4303
4492
  {label}
4304
- - </span>
4305
- </button>
4493
+ - </span>
4494
+ </button>
4306
4495
  ```
4307
4496
 
4308
4497
  - [BottomNavigation] Remove wrapper from BottomNavigationAction (#26923) @siriwatknp
@@ -4310,14 +4499,14 @@ A big thanks to the 13 contributors who made this release possible. Here are som
4310
4499
  `span` element that wraps children has been removed. `wrapper` classKey is also removed. More details about [this change](https://github.com/mui/material-ui/pull/26666).
4311
4500
 
4312
4501
  ```diff
4313
- <button class="MuiBottomNavigationAction-root">
4314
- - <span class="MuiBottomNavigationAction-wrapper">
4315
- {icon}
4316
- <span class="MuiBottomNavigationAction-label">
4317
- {label}
4318
- </span>
4319
- - </span>
4320
- </button>
4502
+ <button class="MuiBottomNavigationAction-root">
4503
+ - <span class="MuiBottomNavigationAction-wrapper">
4504
+ {icon}
4505
+ <span class="MuiBottomNavigationAction-label">
4506
+ {label}
4507
+ </span>
4508
+ - </span>
4509
+ </button>
4321
4510
  ```
4322
4511
 
4323
4512
  #### Changes
@@ -33,7 +33,7 @@ const html = (theme, enableColorScheme) => (0, _extends2.default)({
33
33
  boxSizing: 'border-box',
34
34
  // Fix font resize problem in iOS
35
35
  WebkitTextSizeAdjust: '100%'
36
- }, enableColorScheme && {
36
+ }, enableColorScheme && !theme.vars && {
37
37
  colorScheme: theme.palette.mode
38
38
  });
39
39
 
@@ -54,7 +54,19 @@ exports.body = body;
54
54
  const styles = (theme, enableColorScheme = false) => {
55
55
  var _theme$components, _theme$components$Mui;
56
56
 
57
- let defaultStyles = {
57
+ const colorSchemeStyles = {};
58
+
59
+ if (enableColorScheme && theme.colorSchemes) {
60
+ Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
61
+ var _scheme$palette;
62
+
63
+ colorSchemeStyles[theme.getColorSchemeSelector(key).replace(/\s*&/, '')] = {
64
+ colorScheme: (_scheme$palette = scheme.palette) == null ? void 0 : _scheme$palette.mode
65
+ };
66
+ });
67
+ }
68
+
69
+ let defaultStyles = (0, _extends2.default)({
58
70
  html: html(theme, enableColorScheme),
59
71
  '*, *::before, *::after': {
60
72
  boxSizing: 'inherit'
@@ -71,7 +83,7 @@ const styles = (theme, enableColorScheme = false) => {
71
83
  backgroundColor: (theme.vars || theme).palette.background.default
72
84
  }
73
85
  })
74
- };
86
+ }, colorSchemeStyles);
75
87
  const themeOverrides = (_theme$components = theme.components) == null ? void 0 : (_theme$components$Mui = _theme$components.MuiCssBaseline) == null ? void 0 : _theme$components$Mui.styleOverrides;
76
88
 
77
89
  if (themeOverrides) {
package/Fade/Fade.js CHANGED
@@ -72,8 +72,7 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
72
72
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
73
73
  const enableStrictModeCompat = true;
74
74
  const nodeRef = React.useRef(null);
75
- const foreignRef = (0, _useForkRef.default)(children.ref, ref);
76
- const handleRef = (0, _useForkRef.default)(nodeRef, foreignRef);
75
+ const handleRef = (0, _useForkRef.default)(nodeRef, children.ref, ref);
77
76
 
78
77
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
79
78
  if (callback) {
package/Grow/Grow.js CHANGED
@@ -82,8 +82,7 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
82
82
  const autoTimeout = React.useRef();
83
83
  const theme = (0, _useTheme.default)();
84
84
  const nodeRef = React.useRef(null);
85
- const foreignRef = (0, _useForkRef.default)(children.ref, ref);
86
- const handleRef = (0, _useForkRef.default)(nodeRef, foreignRef);
85
+ const handleRef = (0, _useForkRef.default)(nodeRef, children.ref, ref);
87
86
 
88
87
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
89
88
  if (callback) {
@@ -300,9 +300,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
300
300
  }
301
301
  }
302
302
  }, []);
303
- const handleInputPropsRefProp = (0, _useForkRef.default)(inputPropsProp.ref, handleInputRefWarning);
304
- const handleInputRefProp = (0, _useForkRef.default)(inputRefProp, handleInputPropsRefProp);
305
- const handleInputRef = (0, _useForkRef.default)(inputRef, handleInputRefProp);
303
+ const handleInputRef = (0, _useForkRef.default)(inputRef, inputRefProp, inputPropsProp.ref, handleInputRefWarning);
306
304
  const [focused, setFocused] = React.useState(false);
307
305
  const muiFormControl = (0, _useFormControl.default)();
308
306
 
@@ -268,6 +268,7 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
268
268
  transformOrigin: getTransformOriginValue(elemTransformOrigin)
269
269
  };
270
270
  }, [anchorEl, anchorReference, getAnchorOffset, getTransformOrigin, marginThreshold]);
271
+ const [isPositioned, setIsPositioned] = React.useState(open);
271
272
  const setPositioningStyles = React.useCallback(() => {
272
273
  const element = paperRef.current;
273
274
 
@@ -286,6 +287,7 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
286
287
  }
287
288
 
288
289
  element.style.transformOrigin = positioning.transformOrigin;
290
+ setIsPositioned(true);
289
291
  }, [getPositioningStyle]);
290
292
 
291
293
  const handleEntering = (element, isAppearing) => {
@@ -296,6 +298,10 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
296
298
  setPositioningStyles();
297
299
  };
298
300
 
301
+ const handleExited = () => {
302
+ setIsPositioned(false);
303
+ };
304
+
299
305
  React.useEffect(() => {
300
306
  if (open) {
301
307
  setPositioningStyles();
@@ -345,13 +351,19 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
345
351
  appear: true,
346
352
  in: open,
347
353
  onEntering: handleEntering,
354
+ onExited: handleExited,
348
355
  timeout: transitionDuration
349
356
  }, TransitionProps, {
350
357
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPaper, (0, _extends2.default)({
351
358
  elevation: elevation
352
359
  }, PaperProps, {
353
360
  ref: handlePaperRef,
354
- className: (0, _clsx.default)(classes.paper, PaperProps.className),
361
+ className: (0, _clsx.default)(classes.paper, PaperProps.className)
362
+ }, isPositioned ? undefined : {
363
+ style: (0, _extends2.default)({}, PaperProps.style, {
364
+ opacity: 0
365
+ })
366
+ }, {
355
367
  ownerState: ownerState,
356
368
  children: children
357
369
  }))
package/Rating/Rating.js CHANGED
@@ -371,8 +371,7 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
371
371
  } = (0, _utils2.useIsFocusVisible)();
372
372
  const [focusVisible, setFocusVisible] = React.useState(false);
373
373
  const rootRef = React.useRef();
374
- const handleFocusRef = (0, _utils2.useForkRef)(focusVisibleRef, rootRef);
375
- const handleRef = (0, _utils2.useForkRef)(handleFocusRef, ref);
374
+ const handleRef = (0, _utils2.useForkRef)(focusVisibleRef, rootRef, ref);
376
375
 
377
376
  const handleMouseMove = event => {
378
377
  if (onMouseMove) {
@@ -53,6 +53,18 @@ const ScopedCssBaselineRoot = (0, _styled.default)('div', {
53
53
  theme,
54
54
  ownerState
55
55
  }) => {
56
+ const colorSchemeStyles = {};
57
+
58
+ if (ownerState.enableColorScheme && theme.colorSchemes) {
59
+ Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
60
+ var _scheme$palette;
61
+
62
+ colorSchemeStyles[`&${theme.getColorSchemeSelector(key).replace(/\s*&/, '')}`] = {
63
+ colorScheme: (_scheme$palette = scheme.palette) == null ? void 0 : _scheme$palette.mode
64
+ };
65
+ });
66
+ }
67
+
56
68
  return (0, _extends2.default)({}, (0, _CssBaseline.html)(theme, ownerState.enableColorScheme), (0, _CssBaseline.body)(theme), {
57
69
  '& *, & *::before, & *::after': {
58
70
  boxSizing: 'inherit'
@@ -60,7 +72,7 @@ const ScopedCssBaselineRoot = (0, _styled.default)('div', {
60
72
  '& strong, & b': {
61
73
  fontWeight: theme.typography.fontWeightBold
62
74
  }
63
- });
75
+ }, colorSchemeStyles);
64
76
  });
65
77
  const ScopedCssBaseline = /*#__PURE__*/React.forwardRef(function ScopedCssBaseline(inProps, ref) {
66
78
  const props = (0, _useThemeProps.default)({
package/Slide/Slide.js CHANGED
@@ -144,8 +144,7 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
144
144
  } = props,
145
145
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
146
146
  const childrenRef = React.useRef(null);
147
- const handleRefIntermediary = (0, _useForkRef.default)(children.ref, childrenRef);
148
- const handleRef = (0, _useForkRef.default)(handleRefIntermediary, ref);
147
+ const handleRef = (0, _useForkRef.default)(children.ref, childrenRef, ref);
149
148
 
150
149
  const normalizedTransitionCallback = callback => isAppearing => {
151
150
  if (callback) {
@@ -494,9 +494,7 @@ const Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(inProps, ref) {
494
494
  document.removeEventListener('keydown', handleKeyDown);
495
495
  };
496
496
  }, [handleClose, open]);
497
- const handleUseRef = (0, _useForkRef.default)(setChildNode, ref);
498
- const handleFocusRef = (0, _useForkRef.default)(focusVisibleRef, handleUseRef);
499
- const handleRef = (0, _useForkRef.default)(children.ref, handleFocusRef); // There is no point in displaying an empty tooltip.
497
+ const handleRef = (0, _useForkRef.default)(children.ref, focusVisibleRef, setChildNode, ref); // There is no point in displaying an empty tooltip.
500
498
 
501
499
  if (typeof title !== 'number' && !title) {
502
500
  open = false;
@@ -1,2 +1,2 @@
1
1
  export { default } from '@mui/base/FocusTrap';
2
- export * from '@mui/base/FocusTrap';
2
+ export { FocusTrapProps as TrapFocusProps } from '@mui/base/FocusTrap';
package/Zoom/Zoom.js CHANGED
@@ -72,8 +72,7 @@ const Zoom = /*#__PURE__*/React.forwardRef(function Zoom(props, ref) {
72
72
  } = props,
73
73
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
74
74
  const nodeRef = React.useRef(null);
75
- const foreignRef = (0, _useForkRef.default)(children.ref, ref);
76
- const handleRef = (0, _useForkRef.default)(nodeRef, foreignRef);
75
+ const handleRef = (0, _useForkRef.default)(nodeRef, children.ref, ref);
77
76
 
78
77
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
79
78
  if (callback) {
@@ -295,8 +295,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
295
295
  }
296
296
  }
297
297
 
298
- const handleOwnRef = useForkRef(focusVisibleRef, buttonRef);
299
- const handleRef = useForkRef(ref, handleOwnRef);
298
+ const handleRef = useForkRef(ref, focusVisibleRef, buttonRef);
300
299
 
301
300
  if (process.env.NODE_ENV !== 'production') {
302
301
  // eslint-disable-next-line react-hooks/rules-of-hooks
@@ -15,7 +15,7 @@ export const html = (theme, enableColorScheme) => _extends({
15
15
  boxSizing: 'border-box',
16
16
  // Fix font resize problem in iOS
17
17
  WebkitTextSizeAdjust: '100%'
18
- }, enableColorScheme && {
18
+ }, enableColorScheme && !theme.vars && {
19
19
  colorScheme: theme.palette.mode
20
20
  });
21
21
  export const body = theme => _extends({
@@ -30,7 +30,19 @@ export const body = theme => _extends({
30
30
  export const styles = (theme, enableColorScheme = false) => {
31
31
  var _theme$components, _theme$components$Mui;
32
32
 
33
- let defaultStyles = {
33
+ const colorSchemeStyles = {};
34
+
35
+ if (enableColorScheme && theme.colorSchemes) {
36
+ Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
37
+ var _scheme$palette;
38
+
39
+ colorSchemeStyles[theme.getColorSchemeSelector(key).replace(/\s*&/, '')] = {
40
+ colorScheme: (_scheme$palette = scheme.palette) == null ? void 0 : _scheme$palette.mode
41
+ };
42
+ });
43
+ }
44
+
45
+ let defaultStyles = _extends({
34
46
  html: html(theme, enableColorScheme),
35
47
  '*, *::before, *::after': {
36
48
  boxSizing: 'inherit'
@@ -47,7 +59,8 @@ export const styles = (theme, enableColorScheme = false) => {
47
59
  backgroundColor: (theme.vars || theme).palette.background.default
48
60
  }
49
61
  })
50
- };
62
+ }, colorSchemeStyles);
63
+
51
64
  const themeOverrides = (_theme$components = theme.components) == null ? void 0 : (_theme$components$Mui = _theme$components.MuiCssBaseline) == null ? void 0 : _theme$components$Mui.styleOverrides;
52
65
 
53
66
  if (themeOverrides) {
package/esm/Fade/Fade.js CHANGED
@@ -50,8 +50,7 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
50
50
 
51
51
  const enableStrictModeCompat = true;
52
52
  const nodeRef = React.useRef(null);
53
- const foreignRef = useForkRef(children.ref, ref);
54
- const handleRef = useForkRef(nodeRef, foreignRef);
53
+ const handleRef = useForkRef(nodeRef, children.ref, ref);
55
54
 
56
55
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
57
56
  if (callback) {
package/esm/Grow/Grow.js CHANGED
@@ -60,8 +60,7 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
60
60
  const autoTimeout = React.useRef();
61
61
  const theme = useTheme();
62
62
  const nodeRef = React.useRef(null);
63
- const foreignRef = useForkRef(children.ref, ref);
64
- const handleRef = useForkRef(nodeRef, foreignRef);
63
+ const handleRef = useForkRef(nodeRef, children.ref, ref);
65
64
 
66
65
  const normalizedTransitionCallback = callback => maybeIsAppearing => {
67
66
  if (callback) {
@@ -268,9 +268,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
268
268
  }
269
269
  }
270
270
  }, []);
271
- const handleInputPropsRefProp = useForkRef(inputPropsProp.ref, handleInputRefWarning);
272
- const handleInputRefProp = useForkRef(inputRefProp, handleInputPropsRefProp);
273
- const handleInputRef = useForkRef(inputRef, handleInputRefProp);
271
+ const handleInputRef = useForkRef(inputRef, inputRefProp, inputPropsProp.ref, handleInputRefWarning);
274
272
  const [focused, setFocused] = React.useState(false);
275
273
  const muiFormControl = useFormControl();
276
274
 
@@ -237,6 +237,7 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
237
237
  transformOrigin: getTransformOriginValue(elemTransformOrigin)
238
238
  };
239
239
  }, [anchorEl, anchorReference, getAnchorOffset, getTransformOrigin, marginThreshold]);
240
+ const [isPositioned, setIsPositioned] = React.useState(open);
240
241
  const setPositioningStyles = React.useCallback(() => {
241
242
  const element = paperRef.current;
242
243
 
@@ -255,6 +256,7 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
255
256
  }
256
257
 
257
258
  element.style.transformOrigin = positioning.transformOrigin;
259
+ setIsPositioned(true);
258
260
  }, [getPositioningStyle]);
259
261
 
260
262
  const handleEntering = (element, isAppearing) => {
@@ -265,6 +267,10 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
265
267
  setPositioningStyles();
266
268
  };
267
269
 
270
+ const handleExited = () => {
271
+ setIsPositioned(false);
272
+ };
273
+
268
274
  React.useEffect(() => {
269
275
  if (open) {
270
276
  setPositioningStyles();
@@ -314,13 +320,19 @@ const Popover = /*#__PURE__*/React.forwardRef(function Popover(inProps, ref) {
314
320
  appear: true,
315
321
  in: open,
316
322
  onEntering: handleEntering,
323
+ onExited: handleExited,
317
324
  timeout: transitionDuration
318
325
  }, TransitionProps, {
319
326
  children: /*#__PURE__*/_jsx(PopoverPaper, _extends({
320
327
  elevation: elevation
321
328
  }, PaperProps, {
322
329
  ref: handlePaperRef,
323
- className: clsx(classes.paper, PaperProps.className),
330
+ className: clsx(classes.paper, PaperProps.className)
331
+ }, isPositioned ? undefined : {
332
+ style: _extends({}, PaperProps.style, {
333
+ opacity: 0
334
+ })
335
+ }, {
324
336
  ownerState: ownerState,
325
337
  children: children
326
338
  }))
@@ -350,8 +350,7 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
350
350
  } = useIsFocusVisible();
351
351
  const [focusVisible, setFocusVisible] = React.useState(false);
352
352
  const rootRef = React.useRef();
353
- const handleFocusRef = useForkRef(focusVisibleRef, rootRef);
354
- const handleRef = useForkRef(handleFocusRef, ref);
353
+ const handleRef = useForkRef(focusVisibleRef, rootRef, ref);
355
354
 
356
355
  const handleMouseMove = event => {
357
356
  if (onMouseMove) {
@@ -29,6 +29,18 @@ const ScopedCssBaselineRoot = styled('div', {
29
29
  theme,
30
30
  ownerState
31
31
  }) => {
32
+ const colorSchemeStyles = {};
33
+
34
+ if (ownerState.enableColorScheme && theme.colorSchemes) {
35
+ Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
36
+ var _scheme$palette;
37
+
38
+ colorSchemeStyles[`&${theme.getColorSchemeSelector(key).replace(/\s*&/, '')}`] = {
39
+ colorScheme: (_scheme$palette = scheme.palette) == null ? void 0 : _scheme$palette.mode
40
+ };
41
+ });
42
+ }
43
+
32
44
  return _extends({}, html(theme, ownerState.enableColorScheme), body(theme), {
33
45
  '& *, & *::before, & *::after': {
34
46
  boxSizing: 'inherit'
@@ -36,7 +48,7 @@ const ScopedCssBaselineRoot = styled('div', {
36
48
  '& strong, & b': {
37
49
  fontWeight: theme.typography.fontWeightBold
38
50
  }
39
- });
51
+ }, colorSchemeStyles);
40
52
  });
41
53
  const ScopedCssBaseline = /*#__PURE__*/React.forwardRef(function ScopedCssBaseline(inProps, ref) {
42
54
  const props = useThemeProps({