@mui/material 6.4.7 → 6.4.9

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 (222) hide show
  1. package/Accordion/Accordion.d.ts +20 -5
  2. package/Accordion/Accordion.js +18 -6
  3. package/AccordionActions/AccordionActions.d.ts +2 -2
  4. package/AccordionDetails/AccordionDetails.d.ts +2 -2
  5. package/AccordionSummary/AccordionSummary.d.ts +62 -7
  6. package/AccordionSummary/AccordionSummary.js +67 -16
  7. package/Alert/Alert.d.ts +3 -3
  8. package/AlertTitle/AlertTitle.d.ts +3 -3
  9. package/AppBar/AppBar.d.ts +3 -3
  10. package/Autocomplete/Autocomplete.d.ts +2 -2
  11. package/Autocomplete/Autocomplete.js +1 -1
  12. package/Avatar/Avatar.d.ts +2 -2
  13. package/AvatarGroup/AvatarGroup.d.ts +2 -2
  14. package/Backdrop/Backdrop.d.ts +3 -3
  15. package/Badge/Badge.d.ts +3 -3
  16. package/BottomNavigation/BottomNavigation.d.ts +2 -2
  17. package/BottomNavigationAction/BottomNavigationAction.d.ts +3 -3
  18. package/Box/Box.d.ts +2 -2
  19. package/Breadcrumbs/Breadcrumbs.d.ts +3 -3
  20. package/Button/Button.d.ts +4 -4
  21. package/ButtonBase/ButtonBase.d.ts +2 -2
  22. package/ButtonGroup/ButtonGroup.d.ts +2 -2
  23. package/CHANGELOG.md +78 -4
  24. package/Card/Card.d.ts +3 -3
  25. package/CardActionArea/CardActionArea.d.ts +3 -3
  26. package/CardActions/CardActions.d.ts +2 -2
  27. package/CardContent/CardContent.d.ts +2 -2
  28. package/CardHeader/CardHeader.d.ts +2 -2
  29. package/CardMedia/CardMedia.d.ts +2 -2
  30. package/Checkbox/Checkbox.d.ts +4 -4
  31. package/Chip/Chip.d.ts +2 -2
  32. package/CircularProgress/CircularProgress.d.ts +2 -2
  33. package/ClickAwayListener/ClickAwayListener.d.ts +3 -3
  34. package/ClickAwayListener/ClickAwayListener.js +3 -3
  35. package/Collapse/Collapse.d.ts +5 -5
  36. package/Container/Container.d.ts +2 -2
  37. package/CssBaseline/CssBaseline.d.ts +2 -2
  38. package/Dialog/Dialog.d.ts +3 -3
  39. package/DialogActions/DialogActions.d.ts +2 -2
  40. package/DialogContent/DialogContent.d.ts +2 -2
  41. package/DialogContentText/DialogContentText.d.ts +3 -3
  42. package/DialogTitle/DialogTitle.d.ts +3 -3
  43. package/Divider/Divider.d.ts +3 -3
  44. package/Drawer/Drawer.d.ts +3 -3
  45. package/Fab/Fab.d.ts +3 -3
  46. package/Fade/Fade.d.ts +3 -3
  47. package/FilledInput/FilledInput.d.ts +3 -3
  48. package/FormControl/FormControl.d.ts +6 -6
  49. package/FormControlLabel/FormControlLabel.d.ts +4 -4
  50. package/FormGroup/FormGroup.d.ts +3 -3
  51. package/FormHelperText/FormHelperText.d.ts +2 -2
  52. package/FormLabel/FormLabel.d.ts +4 -4
  53. package/GlobalStyles/GlobalStyles.d.ts +2 -2
  54. package/Grid/Grid.d.ts +2 -2
  55. package/Grid2/Grid2.d.ts +2 -2
  56. package/Grid2/Grid2.js +2 -2
  57. package/Grow/Grow.d.ts +5 -5
  58. package/Hidden/Hidden.d.ts +2 -2
  59. package/Icon/Icon.d.ts +3 -3
  60. package/IconButton/IconButton.d.ts +4 -4
  61. package/ImageList/ImageList.d.ts +2 -2
  62. package/ImageListItem/ImageListItem.d.ts +2 -2
  63. package/ImageListItemBar/ImageListItemBar.d.ts +2 -2
  64. package/Input/Input.d.ts +3 -3
  65. package/InputAdornment/InputAdornment.d.ts +2 -2
  66. package/InputBase/InputBase.d.ts +2 -2
  67. package/InputLabel/InputLabel.d.ts +3 -3
  68. package/LinearProgress/LinearProgress.d.ts +2 -2
  69. package/Link/Link.d.ts +4 -4
  70. package/List/List.d.ts +3 -3
  71. package/ListItem/ListItem.d.ts +3 -3
  72. package/ListItemAvatar/ListItemAvatar.d.ts +2 -2
  73. package/ListItemButton/ListItemButton.d.ts +3 -3
  74. package/ListItemIcon/ListItemIcon.d.ts +2 -2
  75. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +2 -2
  76. package/ListItemText/ListItemText.d.ts +12 -2
  77. package/ListItemText/ListItemText.js +14 -5
  78. package/ListSubheader/ListSubheader.d.ts +2 -2
  79. package/Menu/Menu.d.ts +4 -4
  80. package/MenuItem/MenuItem.d.ts +3 -3
  81. package/MenuList/MenuList.d.ts +4 -4
  82. package/MobileStepper/MobileStepper.d.ts +3 -3
  83. package/Modal/Modal.d.ts +7 -7
  84. package/NativeSelect/NativeSelect.d.ts +3 -3
  85. package/NoSsr/NoSsr.d.ts +2 -2
  86. package/NoSsr/NoSsr.js +2 -2
  87. package/OutlinedInput/OutlinedInput.d.ts +3 -3
  88. package/Pagination/Pagination.d.ts +2 -2
  89. package/PaginationItem/PaginationItem.d.ts +2 -2
  90. package/Paper/Paper.d.ts +3 -3
  91. package/PigmentContainer/PigmentContainer.d.ts +2 -2
  92. package/PigmentContainer/PigmentContainer.js +2 -2
  93. package/PigmentGrid/PigmentGrid.d.ts +2 -2
  94. package/PigmentGrid/PigmentGrid.js +2 -2
  95. package/PigmentHidden/PigmentHidden.d.ts +2 -2
  96. package/PigmentHidden/PigmentHidden.js +2 -2
  97. package/PigmentStack/PigmentStack.d.ts +2 -2
  98. package/PigmentStack/PigmentStack.js +2 -2
  99. package/Popover/Popover.d.ts +4 -4
  100. package/Popper/Popper.d.ts +4 -4
  101. package/Popper/Popper.js +4 -4
  102. package/Portal/Portal.d.ts +2 -2
  103. package/Portal/Portal.js +2 -2
  104. package/README.md +4 -2
  105. package/Radio/Radio.d.ts +3 -3
  106. package/RadioGroup/RadioGroup.d.ts +3 -3
  107. package/Rating/Rating.d.ts +2 -2
  108. package/ScopedCssBaseline/ScopedCssBaseline.d.ts +2 -2
  109. package/Select/Select.d.ts +3 -3
  110. package/Skeleton/Skeleton.d.ts +2 -2
  111. package/Slide/Slide.d.ts +4 -4
  112. package/Slider/Slider.d.ts +2 -2
  113. package/Snackbar/Snackbar.d.ts +2 -2
  114. package/Snackbar/Snackbar.js +7 -1
  115. package/SnackbarContent/SnackbarContent.d.ts +3 -3
  116. package/SpeedDial/SpeedDial.d.ts +12 -2
  117. package/SpeedDial/SpeedDial.js +40 -11
  118. package/SpeedDialAction/SpeedDialAction.d.ts +3 -3
  119. package/SpeedDialAction/SpeedDialAction.js +1 -1
  120. package/SpeedDialIcon/SpeedDialIcon.d.ts +2 -2
  121. package/Stack/Stack.d.ts +2 -2
  122. package/Step/Step.d.ts +2 -2
  123. package/StepButton/StepButton.d.ts +3 -3
  124. package/StepConnector/StepConnector.d.ts +2 -2
  125. package/StepContent/StepContent.d.ts +2 -2
  126. package/StepIcon/StepIcon.d.ts +3 -3
  127. package/StepLabel/StepLabel.d.ts +21 -3
  128. package/StepLabel/StepLabel.js +14 -5
  129. package/Stepper/Stepper.d.ts +2 -2
  130. package/SvgIcon/SvgIcon.d.ts +3 -3
  131. package/SwipeableDrawer/SwipeableDrawer.d.ts +3 -3
  132. package/Switch/Switch.d.ts +78 -5
  133. package/Switch/Switch.js +71 -9
  134. package/Tab/Tab.d.ts +3 -3
  135. package/TabScrollButton/TabScrollButton.d.ts +2 -2
  136. package/Table/Table.d.ts +2 -2
  137. package/TableBody/TableBody.d.ts +2 -2
  138. package/TableCell/TableCell.d.ts +2 -2
  139. package/TableContainer/TableContainer.d.ts +2 -2
  140. package/TableFooter/TableFooter.d.ts +2 -2
  141. package/TableHead/TableHead.d.ts +2 -2
  142. package/TablePagination/TablePagination.d.ts +4 -4
  143. package/TableRow/TableRow.d.ts +2 -2
  144. package/TableSortLabel/TableSortLabel.d.ts +3 -3
  145. package/Tabs/Tabs.d.ts +2 -2
  146. package/Tabs/Tabs.js +4 -0
  147. package/TextField/TextField.d.ts +40 -10
  148. package/TextField/TextField.js +22 -11
  149. package/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  150. package/TextareaAutosize/TextareaAutosize.js +28 -17
  151. package/ToggleButton/ToggleButton.d.ts +3 -3
  152. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +2 -2
  153. package/Toolbar/Toolbar.d.ts +2 -2
  154. package/Tooltip/Tooltip.d.ts +3 -15
  155. package/Tooltip/Tooltip.js +1 -1
  156. package/Typography/Typography.d.ts +3 -3
  157. package/Zoom/Zoom.d.ts +3 -3
  158. package/index.js +1 -1
  159. package/modern/Accordion/Accordion.js +18 -6
  160. package/modern/AccordionSummary/AccordionSummary.js +67 -16
  161. package/modern/Autocomplete/Autocomplete.js +1 -1
  162. package/modern/ClickAwayListener/ClickAwayListener.js +3 -3
  163. package/modern/Grid2/Grid2.js +2 -2
  164. package/modern/ListItemText/ListItemText.js +14 -5
  165. package/modern/NoSsr/NoSsr.js +2 -2
  166. package/modern/PigmentContainer/PigmentContainer.js +2 -2
  167. package/modern/PigmentGrid/PigmentGrid.js +2 -2
  168. package/modern/PigmentHidden/PigmentHidden.js +2 -2
  169. package/modern/PigmentStack/PigmentStack.js +2 -2
  170. package/modern/Popper/Popper.js +4 -4
  171. package/modern/Portal/Portal.js +2 -2
  172. package/modern/Snackbar/Snackbar.js +7 -1
  173. package/modern/SpeedDial/SpeedDial.js +40 -11
  174. package/modern/SpeedDialAction/SpeedDialAction.js +1 -1
  175. package/modern/StepLabel/StepLabel.js +14 -5
  176. package/modern/Switch/Switch.js +71 -9
  177. package/modern/Tabs/Tabs.js +4 -0
  178. package/modern/TextField/TextField.js +22 -11
  179. package/modern/TextareaAutosize/TextareaAutosize.js +28 -17
  180. package/modern/Tooltip/Tooltip.js +1 -1
  181. package/modern/index.js +1 -1
  182. package/modern/styles/ThemeProvider.js +11 -0
  183. package/modern/styles/createThemeNoVars.js +1 -3
  184. package/modern/useAutocomplete/useAutocomplete.js +3 -3
  185. package/modern/useScrollTrigger/useScrollTrigger.js +3 -0
  186. package/modern/version/index.js +2 -2
  187. package/node/Accordion/Accordion.js +18 -6
  188. package/node/AccordionSummary/AccordionSummary.js +67 -16
  189. package/node/Autocomplete/Autocomplete.js +1 -1
  190. package/node/ClickAwayListener/ClickAwayListener.js +3 -3
  191. package/node/Grid2/Grid2.js +2 -2
  192. package/node/ListItemText/ListItemText.js +14 -5
  193. package/node/NoSsr/NoSsr.js +2 -2
  194. package/node/PigmentContainer/PigmentContainer.js +2 -2
  195. package/node/PigmentGrid/PigmentGrid.js +2 -2
  196. package/node/PigmentHidden/PigmentHidden.js +2 -2
  197. package/node/PigmentStack/PigmentStack.js +2 -2
  198. package/node/Popper/Popper.js +4 -4
  199. package/node/Portal/Portal.js +2 -2
  200. package/node/Snackbar/Snackbar.js +7 -1
  201. package/node/SpeedDial/SpeedDial.js +40 -11
  202. package/node/SpeedDialAction/SpeedDialAction.js +1 -1
  203. package/node/StepLabel/StepLabel.js +14 -5
  204. package/node/Switch/Switch.js +71 -9
  205. package/node/Tabs/Tabs.js +4 -0
  206. package/node/TextField/TextField.js +22 -11
  207. package/node/TextareaAutosize/TextareaAutosize.js +27 -16
  208. package/node/Tooltip/Tooltip.js +1 -1
  209. package/node/index.js +1 -1
  210. package/node/styles/ThemeProvider.js +11 -0
  211. package/node/styles/createThemeNoVars.js +1 -3
  212. package/node/useAutocomplete/useAutocomplete.js +3 -3
  213. package/node/useScrollTrigger/useScrollTrigger.js +3 -0
  214. package/node/version/index.js +2 -2
  215. package/package.json +6 -6
  216. package/styles/ThemeProvider.js +11 -0
  217. package/styles/createThemeNoVars.js +1 -3
  218. package/useAutocomplete/useAutocomplete.d.ts +2 -2
  219. package/useAutocomplete/useAutocomplete.js +3 -3
  220. package/useScrollTrigger/useScrollTrigger.d.ts +1 -1
  221. package/useScrollTrigger/useScrollTrigger.js +3 -0
  222. package/version/index.js +2 -2
@@ -192,6 +192,20 @@ const Accordion = /*#__PURE__*/React.forwardRef(function Accordion(inProps, ref)
192
192
  slots: backwardCompatibleSlots,
193
193
  slotProps: backwardCompatibleSlotProps
194
194
  };
195
+ const [RootSlot, rootProps] = (0, _useSlot.default)('root', {
196
+ elementType: AccordionRoot,
197
+ externalForwardedProps: {
198
+ ...externalForwardedProps,
199
+ ...other
200
+ },
201
+ className: (0, _clsx.default)(classes.root, className),
202
+ shouldForwardComponentProp: true,
203
+ ownerState,
204
+ ref,
205
+ additionalProps: {
206
+ square
207
+ }
208
+ });
195
209
  const [AccordionHeadingSlot, accordionProps] = (0, _useSlot.default)('heading', {
196
210
  elementType: AccordionHeading,
197
211
  externalForwardedProps,
@@ -203,12 +217,8 @@ const Accordion = /*#__PURE__*/React.forwardRef(function Accordion(inProps, ref)
203
217
  externalForwardedProps,
204
218
  ownerState
205
219
  });
206
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(AccordionRoot, {
207
- className: (0, _clsx.default)(classes.root, className),
208
- ref: ref,
209
- ownerState: ownerState,
210
- square: square,
211
- ...other,
220
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
221
+ ...rootProps,
212
222
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(AccordionHeadingSlot, {
213
223
  ...accordionProps,
214
224
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_AccordionContext.default.Provider, {
@@ -288,6 +298,7 @@ process.env.NODE_ENV !== "production" ? Accordion.propTypes /* remove-proptypes
288
298
  */
289
299
  slotProps: _propTypes.default.shape({
290
300
  heading: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
301
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
291
302
  transition: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
292
303
  }),
293
304
  /**
@@ -296,6 +307,7 @@ process.env.NODE_ENV !== "production" ? Accordion.propTypes /* remove-proptypes
296
307
  */
297
308
  slots: _propTypes.default.shape({
298
309
  heading: _propTypes.default.elementType,
310
+ root: _propTypes.default.elementType,
299
311
  transition: _propTypes.default.elementType
300
312
  }),
301
313
  /**
@@ -17,6 +17,7 @@ var _DefaultPropsProvider = require("../DefaultPropsProvider");
17
17
  var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
18
18
  var _AccordionContext = _interopRequireDefault(require("../Accordion/AccordionContext"));
19
19
  var _accordionSummaryClasses = _interopRequireWildcard(require("./accordionSummaryClasses"));
20
+ var _useSlot = _interopRequireDefault(require("../utils/useSlot"));
20
21
  var _jsxRuntime = require("react/jsx-runtime");
21
22
  const useUtilityClasses = ownerState => {
22
23
  const {
@@ -119,6 +120,8 @@ const AccordionSummary = /*#__PURE__*/React.forwardRef(function AccordionSummary
119
120
  expandIcon,
120
121
  focusVisibleClassName,
121
122
  onClick,
123
+ slots,
124
+ slotProps,
122
125
  ...other
123
126
  } = props;
124
127
  const {
@@ -142,24 +145,54 @@ const AccordionSummary = /*#__PURE__*/React.forwardRef(function AccordionSummary
142
145
  disableGutters
143
146
  };
144
147
  const classes = useUtilityClasses(ownerState);
145
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(AccordionSummaryRoot, {
146
- focusRipple: false,
147
- disableRipple: true,
148
- disabled: disabled,
149
- "aria-expanded": expanded,
148
+ const externalForwardedProps = {
149
+ slots,
150
+ slotProps
151
+ };
152
+ const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
153
+ ref,
154
+ shouldForwardComponentProp: true,
150
155
  className: (0, _clsx.default)(classes.root, className),
151
- focusVisibleClassName: (0, _clsx.default)(classes.focusVisible, focusVisibleClassName),
152
- onClick: handleChange,
153
- ref: ref,
154
- ownerState: ownerState,
155
- ...other,
156
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(AccordionSummaryContent, {
157
- className: classes.content,
158
- ownerState: ownerState,
156
+ elementType: AccordionSummaryRoot,
157
+ externalForwardedProps: {
158
+ ...externalForwardedProps,
159
+ ...other
160
+ },
161
+ ownerState,
162
+ additionalProps: {
163
+ focusRipple: false,
164
+ disableRipple: true,
165
+ disabled,
166
+ 'aria-expanded': expanded,
167
+ focusVisibleClassName: (0, _clsx.default)(classes.focusVisible, focusVisibleClassName)
168
+ },
169
+ getSlotProps: handlers => ({
170
+ ...handlers,
171
+ onClick: event => {
172
+ handlers.onClick?.(event);
173
+ handleChange(event);
174
+ }
175
+ })
176
+ });
177
+ const [ContentSlot, contentSlotProps] = (0, _useSlot.default)('content', {
178
+ className: classes.content,
179
+ elementType: AccordionSummaryContent,
180
+ externalForwardedProps,
181
+ ownerState
182
+ });
183
+ const [ExpandIconWrapperSlot, expandIconWrapperSlotProps] = (0, _useSlot.default)('expandIconWrapper', {
184
+ className: classes.expandIconWrapper,
185
+ elementType: AccordionSummaryExpandIconWrapper,
186
+ externalForwardedProps,
187
+ ownerState
188
+ });
189
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
190
+ ...rootSlotProps,
191
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(ContentSlot, {
192
+ ...contentSlotProps,
159
193
  children: children
160
- }), expandIcon && /*#__PURE__*/(0, _jsxRuntime.jsx)(AccordionSummaryExpandIconWrapper, {
161
- className: classes.expandIconWrapper,
162
- ownerState: ownerState,
194
+ }), expandIcon && /*#__PURE__*/(0, _jsxRuntime.jsx)(ExpandIconWrapperSlot, {
195
+ ...expandIconWrapperSlotProps,
163
196
  children: expandIcon
164
197
  })]
165
198
  });
@@ -198,6 +231,24 @@ process.env.NODE_ENV !== "production" ? AccordionSummary.propTypes /* remove-pro
198
231
  * @ignore
199
232
  */
200
233
  onClick: _propTypes.default.func,
234
+ /**
235
+ * The props used for each slot inside.
236
+ * @default {}
237
+ */
238
+ slotProps: _propTypes.default.shape({
239
+ content: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
240
+ expandIconWrapper: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
241
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
242
+ }),
243
+ /**
244
+ * The components used for each slot inside.
245
+ * @default {}
246
+ */
247
+ slots: _propTypes.default.shape({
248
+ content: _propTypes.default.elementType,
249
+ expandIconWrapper: _propTypes.default.elementType,
250
+ root: _propTypes.default.elementType
251
+ }),
201
252
  /**
202
253
  * The system prop that allows defining system overrides as well as additional CSS styles.
203
254
  */
@@ -1049,7 +1049,7 @@ process.env.NODE_ENV !== "production" ? Autocomplete.propTypes /* remove-proptyp
1049
1049
  *
1050
1050
  * @param {React.SyntheticEvent} event The event source of the callback.
1051
1051
  * @param {Value} option The highlighted option.
1052
- * @param {string} reason Can be: `"keyboard"`, `"auto"`, `"mouse"`, `"touch"`.
1052
+ * @param {string} reason Can be: `"keyboard"`, `"mouse"`, `"touch"`.
1053
1053
  */
1054
1054
  onHighlightChange: _propTypes.default.func,
1055
1055
  /**
@@ -24,12 +24,12 @@ function clickedRootScrollbar(event, doc) {
24
24
  *
25
25
  * Demos:
26
26
  *
27
- * - [Click-Away Listener](https://mui.com/material-ui/react-click-away-listener/)
28
- * - [Menu](https://mui.com/material-ui/react-menu/)
27
+ * - [Click-Away Listener](https://v6.mui.com/material-ui/react-click-away-listener/)
28
+ * - [Menu](https://v6.mui.com/material-ui/react-menu/)
29
29
  *
30
30
  * API:
31
31
  *
32
- * - [ClickAwayListener API](https://mui.com/material-ui/api/click-away-listener/)
32
+ * - [ClickAwayListener API](https://v6.mui.com/material-ui/api/click-away-listener/)
33
33
  */
34
34
  function ClickAwayListener(props) {
35
35
  const {
@@ -16,11 +16,11 @@ var _useTheme = _interopRequireDefault(require("../styles/useTheme"));
16
16
  *
17
17
  * Demos:
18
18
  *
19
- * - [Grid version 2](https://mui.com/material-ui/react-grid2/)
19
+ * - [Grid version 2](https://v6.mui.com/material-ui/react-grid2/)
20
20
  *
21
21
  * API:
22
22
  *
23
- * - [Grid2 API](https://mui.com/material-ui/api/grid-2/)
23
+ * - [Grid2 API](https://v6.mui.com/material-ui/api/grid-2/)
24
24
  */
25
25
  const Grid2 = (0, _Grid.createGrid)({
26
26
  createStyledComponent: (0, _styles.styled)('div', {
@@ -114,6 +114,16 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
114
114
  ...slotProps
115
115
  }
116
116
  };
117
+ const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
118
+ className: (0, _clsx.default)(classes.root, className),
119
+ elementType: ListItemTextRoot,
120
+ externalForwardedProps: {
121
+ ...externalForwardedProps,
122
+ ...other
123
+ },
124
+ ownerState,
125
+ ref
126
+ });
117
127
  const [PrimarySlot, primarySlotProps] = (0, _useSlot.default)('primary', {
118
128
  className: classes.primary,
119
129
  elementType: _Typography.default,
@@ -142,11 +152,8 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
142
152
  children: secondary
143
153
  });
144
154
  }
145
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(ListItemTextRoot, {
146
- className: (0, _clsx.default)(classes.root, className),
147
- ownerState: ownerState,
148
- ref: ref,
149
- ...other,
155
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
156
+ ...rootSlotProps,
150
157
  children: [primary, secondary]
151
158
  });
152
159
  });
@@ -207,6 +214,7 @@ process.env.NODE_ENV !== "production" ? ListItemText.propTypes /* remove-proptyp
207
214
  */
208
215
  slotProps: _propTypes.default.shape({
209
216
  primary: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
217
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
210
218
  secondary: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
211
219
  }),
212
220
  /**
@@ -215,6 +223,7 @@ process.env.NODE_ENV !== "production" ? ListItemText.propTypes /* remove-proptyp
215
223
  */
216
224
  slots: _propTypes.default.shape({
217
225
  primary: _propTypes.default.elementType,
226
+ root: _propTypes.default.elementType,
218
227
  secondary: _propTypes.default.elementType
219
228
  }),
220
229
  /**
@@ -22,11 +22,11 @@ var _utils = require("@mui/utils");
22
22
  *
23
23
  * Demos:
24
24
  *
25
- * - [No SSR](https://mui.com/material-ui/react-no-ssr/)
25
+ * - [No SSR](https://v6.mui.com/material-ui/react-no-ssr/)
26
26
  *
27
27
  * API:
28
28
  *
29
- * - [NoSsr API](https://mui.com/material-ui/api/no-ssr/)
29
+ * - [NoSsr API](https://v6.mui.com/material-ui/api/no-ssr/)
30
30
  */
31
31
  function NoSsr(props) {
32
32
  const {
@@ -32,11 +32,11 @@ const useUtilityClasses = ownerState => {
32
32
  *
33
33
  * Demos:
34
34
  *
35
- * - [Container](https://mui.com/material-ui/react-container/)
35
+ * - [Container](https://v6.mui.com/material-ui/react-container/)
36
36
  *
37
37
  * API:
38
38
  *
39
- * - [PigmentContainer API](https://mui.com/material-ui/api/pigment-container/)
39
+ * - [PigmentContainer API](https://v6.mui.com/material-ui/api/pigment-container/)
40
40
  */
41
41
  const PigmentContainer = /*#__PURE__*/React.forwardRef(function PigmentContainer({
42
42
  className,
@@ -46,11 +46,11 @@ const useUtilityClasses = ownerState => {
46
46
  *
47
47
  * Demos:
48
48
  *
49
- * - [Grid version 2](https://mui.com/material-ui/react-grid2/)
49
+ * - [Grid version 2](https://v6.mui.com/material-ui/react-grid2/)
50
50
  *
51
51
  * API:
52
52
  *
53
- * - [PigmentGrid API](https://mui.com/material-ui/api/pigment-grid/)
53
+ * - [PigmentGrid API](https://v6.mui.com/material-ui/api/pigment-grid/)
54
54
  */
55
55
  const PigmentGrid = /*#__PURE__*/React.forwardRef(function PigmentGrid(props, ref) {
56
56
  const {
@@ -179,11 +179,11 @@ process.env.NODE_ENV !== "production" ? HiddenCss.propTypes /* remove-proptypes
179
179
  *
180
180
  * Demos:
181
181
  *
182
- * - [Hidden](https://mui.com/material-ui/react-hidden/)
182
+ * - [Hidden](https://v6.mui.com/material-ui/react-hidden/)
183
183
  *
184
184
  * API:
185
185
  *
186
- * - [PigmentHidden API](https://mui.com/material-ui/api/pigment-hidden/)
186
+ * - [PigmentHidden API](https://v6.mui.com/material-ui/api/pigment-hidden/)
187
187
  */
188
188
  function PigmentHidden({
189
189
  implementation = 'js',
@@ -25,11 +25,11 @@ const useUtilityClasses = () => {
25
25
  *
26
26
  * Demos:
27
27
  *
28
- * - [Stack](https://mui.com/material-ui/react-stack/)
28
+ * - [Stack](https://v6.mui.com/material-ui/react-stack/)
29
29
  *
30
30
  * API:
31
31
  *
32
- * - [PigmentStack API](https://mui.com/material-ui/api/pigment-stack/)
32
+ * - [PigmentStack API](https://v6.mui.com/material-ui/api/pigment-stack/)
33
33
  */
34
34
  const PigmentStack = /*#__PURE__*/React.forwardRef(function PigmentStack({
35
35
  className,
@@ -26,13 +26,13 @@ const PopperRoot = (0, _zeroStyled.styled)(_BasePopper.default, {
26
26
  *
27
27
  * Demos:
28
28
  *
29
- * - [Autocomplete](https://mui.com/material-ui/react-autocomplete/)
30
- * - [Menu](https://mui.com/material-ui/react-menu/)
31
- * - [Popper](https://mui.com/material-ui/react-popper/)
29
+ * - [Autocomplete](https://v6.mui.com/material-ui/react-autocomplete/)
30
+ * - [Menu](https://v6.mui.com/material-ui/react-menu/)
31
+ * - [Popper](https://v6.mui.com/material-ui/react-popper/)
32
32
  *
33
33
  * API:
34
34
  *
35
- * - [Popper API](https://mui.com/material-ui/api/popper/)
35
+ * - [Popper API](https://v6.mui.com/material-ui/api/popper/)
36
36
  */
37
37
  const Popper = /*#__PURE__*/React.forwardRef(function Popper(inProps, ref) {
38
38
  const isRtl = (0, _RtlProvider.useRtl)();
@@ -21,11 +21,11 @@ function getContainer(container) {
21
21
  *
22
22
  * Demos:
23
23
  *
24
- * - [Portal](https://mui.com/material-ui/react-portal/)
24
+ * - [Portal](https://v6.mui.com/material-ui/react-portal/)
25
25
  *
26
26
  * API:
27
27
  *
28
- * - [Portal API](https://mui.com/material-ui/api/portal/)
28
+ * - [Portal API](https://v6.mui.com/material-ui/api/portal/)
29
29
  */
30
30
  const Portal = /*#__PURE__*/React.forwardRef(function Portal(props, forwardedRef) {
31
31
  const {
@@ -203,7 +203,10 @@ const Snackbar = /*#__PURE__*/React.forwardRef(function Snackbar(inProps, ref) {
203
203
  },
204
204
  ownerState
205
205
  });
206
- const [ClickAwaySlot, clickAwayListenerProps] = (0, _useSlot.default)('clickAwayListener', {
206
+ const [ClickAwaySlot, {
207
+ ownerState: clickAwayOwnerStateProp,
208
+ ...clickAwayListenerProps
209
+ }] = (0, _useSlot.default)('clickAwayListener', {
207
210
  elementType: _ClickAwayListener.default,
208
211
  externalForwardedProps,
209
212
  getSlotProps: handlers => ({
@@ -252,6 +255,9 @@ const Snackbar = /*#__PURE__*/React.forwardRef(function Snackbar(inProps, ref) {
252
255
  }
253
256
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ClickAwaySlot, {
254
257
  ...clickAwayListenerProps,
258
+ ...(slots.clickAwayListener && {
259
+ ownerState: clickAwayOwnerStateProp
260
+ }),
255
261
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Root, {
256
262
  ...rootProps,
257
263
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(TransitionSlot, {
@@ -379,22 +379,49 @@ const SpeedDial = /*#__PURE__*/React.forwardRef(function SpeedDial(inProps, ref)
379
379
  slots: backwardCompatibleSlots,
380
380
  slotProps: backwardCompatibleSlotProps
381
381
  };
382
+ const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
383
+ elementType: SpeedDialRoot,
384
+ externalForwardedProps: {
385
+ ...externalForwardedProps,
386
+ ...other
387
+ },
388
+ ownerState,
389
+ ref,
390
+ className: (0, _clsx.default)(classes.root, className),
391
+ additionalProps: {
392
+ role: 'presentation'
393
+ },
394
+ getSlotProps: handlers => ({
395
+ ...handlers,
396
+ onKeyDown: event => {
397
+ handlers.onKeyDown?.(event);
398
+ handleKeyDown(event);
399
+ },
400
+ onBlur: event => {
401
+ handlers.onBlur?.(event);
402
+ handleClose(event);
403
+ },
404
+ onFocus: event => {
405
+ handlers.onFocus?.(event);
406
+ handleOpen(event);
407
+ },
408
+ onMouseEnter: event => {
409
+ handlers.onMouseEnter?.(event);
410
+ handleOpen(event);
411
+ },
412
+ onMouseLeave: event => {
413
+ handlers.onMouseLeave?.(event);
414
+ handleClose(event);
415
+ }
416
+ })
417
+ });
382
418
  const [TransitionSlot, transitionProps] = (0, _useSlot.default)('transition', {
383
419
  elementType: _Zoom.default,
384
420
  externalForwardedProps,
385
421
  ownerState
386
422
  });
387
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(SpeedDialRoot, {
388
- className: (0, _clsx.default)(classes.root, className),
389
- ref: ref,
390
- role: "presentation",
391
- onKeyDown: handleKeyDown,
392
- onBlur: handleClose,
393
- onFocus: handleOpen,
394
- onMouseEnter: handleOpen,
395
- onMouseLeave: handleClose,
396
- ownerState: ownerState,
397
- ...other,
423
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
424
+ ...rootSlotProps,
398
425
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(TransitionSlot, {
399
426
  in: !hidden,
400
427
  timeout: transitionDuration,
@@ -514,6 +541,7 @@ process.env.NODE_ENV !== "production" ? SpeedDial.propTypes /* remove-proptypes
514
541
  * @default {}
515
542
  */
516
543
  slotProps: _propTypes.default.shape({
544
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
517
545
  transition: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
518
546
  }),
519
547
  /**
@@ -521,6 +549,7 @@ process.env.NODE_ENV !== "production" ? SpeedDial.propTypes /* remove-proptypes
521
549
  * @default {}
522
550
  */
523
551
  slots: _propTypes.default.shape({
552
+ root: _propTypes.default.elementType,
524
553
  transition: _propTypes.default.elementType
525
554
  }),
526
555
  /**
@@ -348,7 +348,7 @@ process.env.NODE_ENV !== "production" ? SpeedDialAction.propTypes /* remove-prop
348
348
  * @default 'left'
349
349
  * @deprecated Use `slotProps.tooltip.placement` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
350
350
  */
351
- tooltipPlacement: _propTypes.default.oneOf(['bottom-end', 'bottom-start', 'bottom', 'left-end', 'left-start', 'left', 'right-end', 'right-start', 'right', 'top-end', 'top-start', 'top']),
351
+ tooltipPlacement: _propTypes.default.oneOf(['auto-end', 'auto-start', 'auto', 'bottom-end', 'bottom-start', 'bottom', 'left-end', 'left-start', 'left', 'right-end', 'right-start', 'right', 'top-end', 'top-start', 'top']),
352
352
  /**
353
353
  * Label to display in the tooltip.
354
354
  * @deprecated Use `slotProps.tooltip.title` instead. This prop will be removed in v7. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
@@ -169,6 +169,16 @@ const StepLabel = /*#__PURE__*/React.forwardRef(function StepLabel(inProps, ref)
169
169
  ...slotProps
170
170
  }
171
171
  };
172
+ const [RootSlot, rootProps] = (0, _useSlot.default)('root', {
173
+ elementType: StepLabelRoot,
174
+ externalForwardedProps: {
175
+ ...externalForwardedProps,
176
+ ...other
177
+ },
178
+ ownerState,
179
+ ref,
180
+ className: (0, _clsx.default)(classes.root, className)
181
+ });
172
182
  const [LabelSlot, labelProps] = (0, _useSlot.default)('label', {
173
183
  elementType: StepLabelLabel,
174
184
  externalForwardedProps,
@@ -179,11 +189,8 @@ const StepLabel = /*#__PURE__*/React.forwardRef(function StepLabel(inProps, ref)
179
189
  externalForwardedProps,
180
190
  ownerState
181
191
  });
182
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(StepLabelRoot, {
183
- className: (0, _clsx.default)(classes.root, className),
184
- ref: ref,
185
- ownerState: ownerState,
186
- ...other,
192
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
193
+ ...rootProps,
187
194
  children: [icon || StepIconSlot ? /*#__PURE__*/(0, _jsxRuntime.jsx)(StepLabelIconContainer, {
188
195
  className: classes.iconContainer,
189
196
  ownerState: ownerState,
@@ -249,6 +256,7 @@ process.env.NODE_ENV !== "production" ? StepLabel.propTypes /* remove-proptypes
249
256
  */
250
257
  slotProps: _propTypes.default.shape({
251
258
  label: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
259
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
252
260
  stepIcon: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
253
261
  }),
254
262
  /**
@@ -257,6 +265,7 @@ process.env.NODE_ENV !== "production" ? StepLabel.propTypes /* remove-proptypes
257
265
  */
258
266
  slots: _propTypes.default.shape({
259
267
  label: _propTypes.default.elementType,
268
+ root: _propTypes.default.elementType,
260
269
  stepIcon: _propTypes.default.elementType
261
270
  }),
262
271
  /**
@@ -21,6 +21,7 @@ var _zeroStyled = require("../zero-styled");
21
21
  var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
22
22
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
23
23
  var _switchClasses = _interopRequireWildcard(require("./switchClasses"));
24
+ var _useSlot = _interopRequireDefault(require("../utils/useSlot"));
24
25
  var _jsxRuntime = require("react/jsx-runtime");
25
26
  const useUtilityClasses = ownerState => {
26
27
  const {
@@ -219,6 +220,8 @@ const Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {
219
220
  edge = false,
220
221
  size = 'medium',
221
222
  sx,
223
+ slots = {},
224
+ slotProps = {},
222
225
  ...other
223
226
  } = props;
224
227
  const ownerState = {
@@ -228,14 +231,36 @@ const Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {
228
231
  size
229
232
  };
230
233
  const classes = useUtilityClasses(ownerState);
231
- const icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(SwitchThumb, {
234
+ const externalForwardedProps = {
235
+ slots,
236
+ slotProps
237
+ };
238
+ const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
239
+ className: (0, _clsx.default)(classes.root, className),
240
+ elementType: SwitchRoot,
241
+ externalForwardedProps,
242
+ ownerState,
243
+ additionalProps: {
244
+ sx
245
+ }
246
+ });
247
+ const [ThumbSlot, thumbSlotProps] = (0, _useSlot.default)('thumb', {
232
248
  className: classes.thumb,
233
- ownerState: ownerState
249
+ elementType: SwitchThumb,
250
+ externalForwardedProps,
251
+ ownerState
234
252
  });
235
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(SwitchRoot, {
236
- className: (0, _clsx.default)(classes.root, className),
237
- sx: sx,
238
- ownerState: ownerState,
253
+ const icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(ThumbSlot, {
254
+ ...thumbSlotProps
255
+ });
256
+ const [TrackSlot, trackSlotProps] = (0, _useSlot.default)('track', {
257
+ className: classes.track,
258
+ elementType: SwitchTrack,
259
+ externalForwardedProps,
260
+ ownerState
261
+ });
262
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
263
+ ...rootSlotProps,
239
264
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SwitchSwitchBase, {
240
265
  type: "checkbox",
241
266
  icon: icon,
@@ -246,10 +271,25 @@ const Switch = /*#__PURE__*/React.forwardRef(function Switch(inProps, ref) {
246
271
  classes: {
247
272
  ...classes,
248
273
  root: classes.switchBase
274
+ },
275
+ slots: {
276
+ ...(slots.switchBase && {
277
+ root: slots.switchBase
278
+ }),
279
+ ...(slots.input && {
280
+ input: slots.input
281
+ })
282
+ },
283
+ slotProps: {
284
+ ...(slotProps.switchBase && {
285
+ root: typeof slotProps.switchBase === 'function' ? slotProps.switchBase(ownerState) : slotProps.switchBase
286
+ }),
287
+ ...(slotProps.input && {
288
+ input: typeof slotProps.input === 'function' ? slotProps.input(ownerState) : slotProps.input
289
+ })
249
290
  }
250
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(SwitchTrack, {
251
- className: classes.track,
252
- ownerState: ownerState
291
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(TrackSlot, {
292
+ ...trackSlotProps
253
293
  })]
254
294
  });
255
295
  });
@@ -339,6 +379,28 @@ process.env.NODE_ENV !== "production" ? Switch.propTypes /* remove-proptypes */
339
379
  * @default 'medium'
340
380
  */
341
381
  size: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.oneOf(['medium', 'small']), _propTypes.default.string]),
382
+ /**
383
+ * The props used for each slot inside.
384
+ * @default {}
385
+ */
386
+ slotProps: _propTypes.default.shape({
387
+ input: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
388
+ root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
389
+ switchBase: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
390
+ thumb: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
391
+ track: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
392
+ }),
393
+ /**
394
+ * The components used for each slot inside.
395
+ * @default {}
396
+ */
397
+ slots: _propTypes.default.shape({
398
+ input: _propTypes.default.elementType,
399
+ root: _propTypes.default.elementType,
400
+ switchBase: _propTypes.default.elementType,
401
+ thumb: _propTypes.default.elementType,
402
+ track: _propTypes.default.elementType
403
+ }),
342
404
  /**
343
405
  * The system prop that allows defining system overrides as well as additional CSS styles.
344
406
  */
package/node/Tabs/Tabs.js CHANGED
@@ -700,6 +700,10 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(inProps, ref) {
700
700
  });
701
701
  });
702
702
  const handleKeyDown = event => {
703
+ // Check if a modifier key (Alt, Shift, Ctrl, Meta) is pressed
704
+ if (event.altKey || event.shiftKey || event.ctrlKey || event.metaKey) {
705
+ return;
706
+ }
703
707
  const list = tabListRef.current;
704
708
  const currentFocus = (0, _ownerDocument.default)(list).activeElement;
705
709
  // Keyboard navigation assumes that [role="tab"] are siblings