@mui/material 9.0.0-alpha.4 → 9.0.0-beta.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 (210) hide show
  1. package/ButtonGroup/ButtonGroup.js +1 -9
  2. package/ButtonGroup/ButtonGroup.mjs +1 -9
  3. package/ButtonGroup/buttonGroupClasses.d.mts +0 -68
  4. package/ButtonGroup/buttonGroupClasses.d.ts +0 -68
  5. package/ButtonGroup/buttonGroupClasses.js +1 -1
  6. package/ButtonGroup/buttonGroupClasses.mjs +1 -1
  7. package/CHANGELOG.md +71 -4
  8. package/CardHeader/CardHeader.d.mts +13 -21
  9. package/CardHeader/CardHeader.d.ts +13 -21
  10. package/CardHeader/CardHeader.js +3 -21
  11. package/CardHeader/CardHeader.mjs +3 -21
  12. package/Checkbox/Checkbox.js +1 -7
  13. package/Checkbox/Checkbox.mjs +1 -7
  14. package/Chip/Chip.js +48 -54
  15. package/Chip/Chip.mjs +48 -54
  16. package/Chip/chipClasses.d.mts +0 -104
  17. package/Chip/chipClasses.d.ts +0 -104
  18. package/Chip/chipClasses.js +1 -1
  19. package/Chip/chipClasses.mjs +1 -1
  20. package/Dialog/Dialog.d.mts +0 -21
  21. package/Dialog/Dialog.d.ts +0 -21
  22. package/Dialog/Dialog.js +36 -73
  23. package/Dialog/Dialog.mjs +36 -73
  24. package/Dialog/dialogClasses.d.mts +0 -8
  25. package/Dialog/dialogClasses.d.ts +0 -8
  26. package/Dialog/dialogClasses.js +1 -1
  27. package/Dialog/dialogClasses.mjs +1 -1
  28. package/Divider/Divider.js +2 -2
  29. package/Divider/Divider.mjs +2 -2
  30. package/Divider/dividerClasses.d.mts +0 -4
  31. package/Divider/dividerClasses.d.ts +0 -4
  32. package/Divider/dividerClasses.js +1 -1
  33. package/Divider/dividerClasses.mjs +1 -1
  34. package/Drawer/Drawer.d.mts +0 -12
  35. package/Drawer/Drawer.d.ts +0 -12
  36. package/Drawer/Drawer.js +6 -40
  37. package/Drawer/Drawer.mjs +6 -40
  38. package/Drawer/drawerClasses.d.mts +0 -32
  39. package/Drawer/drawerClasses.d.ts +0 -32
  40. package/Drawer/drawerClasses.js +1 -1
  41. package/Drawer/drawerClasses.mjs +1 -1
  42. package/FilledInput/FilledInput.js +3 -32
  43. package/FilledInput/FilledInput.mjs +3 -32
  44. package/ImageListItemBar/ImageListItemBar.js +4 -17
  45. package/ImageListItemBar/ImageListItemBar.mjs +4 -17
  46. package/ImageListItemBar/imageListItemBarClasses.d.mts +0 -16
  47. package/ImageListItemBar/imageListItemBarClasses.d.ts +0 -16
  48. package/ImageListItemBar/imageListItemBarClasses.js +1 -1
  49. package/ImageListItemBar/imageListItemBarClasses.mjs +1 -1
  50. package/Input/Input.js +3 -32
  51. package/Input/Input.mjs +3 -32
  52. package/Input/inputClasses.d.mts +0 -16
  53. package/Input/inputClasses.d.ts +0 -16
  54. package/InputBase/InputBase.d.mts +0 -27
  55. package/InputBase/InputBase.d.ts +0 -27
  56. package/InputBase/InputBase.js +6 -35
  57. package/InputBase/InputBase.mjs +6 -35
  58. package/InputBase/inputBaseClasses.d.mts +0 -20
  59. package/InputBase/inputBaseClasses.d.ts +0 -20
  60. package/InputBase/inputBaseClasses.js +1 -1
  61. package/InputBase/inputBaseClasses.mjs +1 -1
  62. package/InputLabel/InputLabel.js +1 -1
  63. package/InputLabel/InputLabel.mjs +1 -1
  64. package/LinearProgress/LinearProgress.js +6 -18
  65. package/LinearProgress/LinearProgress.mjs +6 -18
  66. package/LinearProgress/linearProgressClasses.d.mts +0 -36
  67. package/LinearProgress/linearProgressClasses.d.ts +0 -36
  68. package/LinearProgress/linearProgressClasses.js +1 -1
  69. package/LinearProgress/linearProgressClasses.mjs +1 -1
  70. package/Link/Link.d.mts +1 -1
  71. package/Link/Link.d.ts +1 -1
  72. package/ListItem/ListItem.d.mts +2 -36
  73. package/ListItem/ListItem.d.ts +2 -36
  74. package/ListItem/ListItem.js +27 -152
  75. package/ListItem/ListItem.mjs +27 -152
  76. package/ListItem/listItemClasses.d.mts +2 -4
  77. package/ListItem/listItemClasses.d.ts +2 -4
  78. package/ListItem/listItemClasses.js +1 -1
  79. package/ListItem/listItemClasses.mjs +1 -1
  80. package/ListItemButton/ListItemButton.d.mts +1 -2
  81. package/ListItemButton/ListItemButton.d.ts +1 -2
  82. package/ListItemButton/ListItemButton.js +1 -2
  83. package/ListItemButton/ListItemButton.mjs +1 -2
  84. package/ListItemSecondaryAction/ListItemSecondaryAction.d.mts +10 -6
  85. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +10 -6
  86. package/ListItemSecondaryAction/ListItemSecondaryAction.js +7 -2
  87. package/ListItemSecondaryAction/ListItemSecondaryAction.mjs +7 -2
  88. package/ListItemText/ListItemText.d.mts +12 -20
  89. package/ListItemText/ListItemText.d.ts +12 -20
  90. package/ListItemText/ListItemText.js +2 -20
  91. package/ListItemText/ListItemText.mjs +2 -20
  92. package/Modal/Modal.d.mts +1 -41
  93. package/Modal/Modal.d.ts +1 -41
  94. package/Modal/Modal.js +5 -58
  95. package/Modal/Modal.mjs +5 -58
  96. package/OutlinedInput/OutlinedInput.js +2 -14
  97. package/OutlinedInput/OutlinedInput.mjs +2 -14
  98. package/OutlinedInput/outlinedInputClasses.d.mts +0 -16
  99. package/OutlinedInput/outlinedInputClasses.d.ts +0 -16
  100. package/PaginationItem/PaginationItem.d.mts +0 -15
  101. package/PaginationItem/PaginationItem.d.ts +0 -15
  102. package/PaginationItem/PaginationItem.js +3 -24
  103. package/PaginationItem/PaginationItem.mjs +3 -24
  104. package/PaginationItem/paginationItemClasses.d.mts +0 -16
  105. package/PaginationItem/paginationItemClasses.d.ts +0 -16
  106. package/PaginationItem/paginationItemClasses.js +1 -1
  107. package/PaginationItem/paginationItemClasses.mjs +1 -1
  108. package/Radio/Radio.js +1 -13
  109. package/Radio/Radio.mjs +1 -13
  110. package/Rating/Rating.d.mts +0 -9
  111. package/Rating/Rating.d.ts +0 -9
  112. package/Rating/Rating.js +1 -17
  113. package/Rating/Rating.mjs +1 -17
  114. package/Select/SelectInput.js +2 -3
  115. package/Select/SelectInput.mjs +2 -3
  116. package/Select/selectClasses.d.mts +0 -12
  117. package/Select/selectClasses.d.ts +0 -12
  118. package/Select/selectClasses.js +1 -1
  119. package/Select/selectClasses.mjs +1 -1
  120. package/Slider/Slider.d.mts +0 -5
  121. package/Slider/Slider.d.ts +0 -5
  122. package/Slider/Slider.js +2 -8
  123. package/Slider/Slider.mjs +2 -8
  124. package/Slider/sliderClasses.d.mts +0 -28
  125. package/Slider/sliderClasses.d.ts +0 -28
  126. package/Slider/sliderClasses.js +1 -1
  127. package/Slider/sliderClasses.mjs +1 -1
  128. package/Stack/Stack.d.mts +2 -2
  129. package/Stack/Stack.d.ts +2 -2
  130. package/StepConnector/StepConnector.js +2 -8
  131. package/StepConnector/StepConnector.mjs +2 -8
  132. package/StepConnector/stepConnectorClasses.d.mts +0 -8
  133. package/StepConnector/stepConnectorClasses.d.ts +0 -8
  134. package/StepConnector/stepConnectorClasses.js +1 -1
  135. package/StepConnector/stepConnectorClasses.mjs +1 -1
  136. package/StepContent/StepContent.d.mts +1 -16
  137. package/StepContent/StepContent.d.ts +1 -16
  138. package/StepContent/StepContent.js +3 -22
  139. package/StepContent/StepContent.mjs +3 -22
  140. package/StepLabel/StepLabel.d.mts +0 -22
  141. package/StepLabel/StepLabel.d.ts +0 -22
  142. package/StepLabel/StepLabel.js +2 -31
  143. package/StepLabel/StepLabel.mjs +2 -31
  144. package/SvgIcon/createSvgIcon.d.mts +2 -0
  145. package/SvgIcon/createSvgIcon.d.ts +2 -0
  146. package/SvgIcon/createSvgIcon.js +31 -0
  147. package/SvgIcon/createSvgIcon.mjs +26 -0
  148. package/SvgIcon/index.d.mts +1 -0
  149. package/SvgIcon/index.d.ts +1 -0
  150. package/SvgIcon/index.js +8 -0
  151. package/SvgIcon/index.mjs +1 -0
  152. package/SwipeableDrawer/SwipeableDrawer.d.mts +0 -5
  153. package/SwipeableDrawer/SwipeableDrawer.d.ts +0 -5
  154. package/SwipeableDrawer/SwipeableDrawer.js +6 -37
  155. package/SwipeableDrawer/SwipeableDrawer.mjs +6 -37
  156. package/Switch/Switch.js +0 -11
  157. package/Switch/Switch.mjs +0 -11
  158. package/Tab/Tab.js +1 -3
  159. package/Tab/Tab.mjs +1 -3
  160. package/Tab/tabClasses.d.mts +0 -4
  161. package/Tab/tabClasses.d.ts +0 -4
  162. package/Tab/tabClasses.js +1 -1
  163. package/Tab/tabClasses.mjs +1 -1
  164. package/TablePagination/TablePagination.d.mts +0 -24
  165. package/TablePagination/TablePagination.d.ts +0 -24
  166. package/TablePagination/TablePagination.js +1 -29
  167. package/TablePagination/TablePagination.mjs +1 -29
  168. package/TablePaginationActions/TablePaginationActions.d.mts +0 -10
  169. package/TablePaginationActions/TablePaginationActions.d.ts +0 -10
  170. package/TablePaginationActions/TablePaginationActions.js +2 -14
  171. package/TablePaginationActions/TablePaginationActions.mjs +2 -14
  172. package/TableSortLabel/TableSortLabel.js +2 -7
  173. package/TableSortLabel/TableSortLabel.mjs +2 -7
  174. package/TableSortLabel/tableSortLabelClasses.d.mts +0 -8
  175. package/TableSortLabel/tableSortLabelClasses.d.ts +0 -8
  176. package/TableSortLabel/tableSortLabelClasses.js +1 -1
  177. package/TableSortLabel/tableSortLabelClasses.mjs +1 -1
  178. package/Tabs/Tabs.js +3 -3
  179. package/Tabs/Tabs.mjs +3 -3
  180. package/Tabs/tabsClasses.d.mts +0 -6
  181. package/Tabs/tabsClasses.d.ts +0 -6
  182. package/Tabs/tabsClasses.js +1 -1
  183. package/Tabs/tabsClasses.mjs +1 -1
  184. package/ToggleButtonGroup/ToggleButtonGroup.js +1 -4
  185. package/ToggleButtonGroup/ToggleButtonGroup.mjs +1 -4
  186. package/ToggleButtonGroup/toggleButtonGroupClasses.d.mts +0 -8
  187. package/ToggleButtonGroup/toggleButtonGroupClasses.d.ts +0 -8
  188. package/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  189. package/ToggleButtonGroup/toggleButtonGroupClasses.mjs +1 -1
  190. package/Typography/Typography.d.mts +3 -3
  191. package/Typography/Typography.d.ts +3 -3
  192. package/Typography/Typography.js +2 -24
  193. package/Typography/Typography.mjs +3 -25
  194. package/index.js +1 -1
  195. package/index.mjs +1 -1
  196. package/internal/SwitchBase.d.mts +0 -10
  197. package/internal/SwitchBase.d.ts +0 -10
  198. package/internal/SwitchBase.js +1 -16
  199. package/internal/SwitchBase.mjs +1 -16
  200. package/package.json +7 -7
  201. package/styles/createThemeWithVars.js +1 -0
  202. package/styles/createThemeWithVars.mjs +1 -0
  203. package/styles/stringifyTheme.js +1 -1
  204. package/styles/stringifyTheme.mjs +1 -1
  205. package/utils/createSvgIcon.d.mts +4 -2
  206. package/utils/createSvgIcon.d.ts +4 -2
  207. package/utils/createSvgIcon.js +6 -24
  208. package/utils/createSvgIcon.mjs +2 -24
  209. package/version/index.js +2 -2
  210. package/version/index.mjs +2 -2
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { SxProps } from '@mui/system';
3
+ import { OverridableComponent, OverrideProps } from "../OverridableComponent/index.js";
3
4
  import { Theme } from "../styles/index.js";
4
- import { InternalStandardProps as StandardProps } from "../internal/index.js";
5
5
  import { ListItemSecondaryActionClasses } from "./listItemSecondaryActionClasses.js";
6
- export interface ListItemSecondaryActionProps extends StandardProps<React.HTMLAttributes<HTMLDivElement>> {
6
+ export interface ListItemSecondaryActionOwnProps {
7
7
  /**
8
8
  * The content of the component, normally an `IconButton` or selection control.
9
9
  */
@@ -17,7 +17,10 @@ export interface ListItemSecondaryActionProps extends StandardProps<React.HTMLAt
17
17
  */
18
18
  sx?: SxProps<Theme> | undefined;
19
19
  }
20
-
20
+ export interface ListItemSecondaryActionTypeMap<AdditionalProps = {}, RootComponent extends React.ElementType = 'div'> {
21
+ props: AdditionalProps & ListItemSecondaryActionOwnProps;
22
+ defaultComponent: RootComponent;
23
+ }
21
24
  /**
22
25
  * Must be used as the last child of ListItem to function properly.
23
26
  *
@@ -28,10 +31,11 @@ export interface ListItemSecondaryActionProps extends StandardProps<React.HTMLAt
28
31
  * API:
29
32
  *
30
33
  * - [ListItemSecondaryAction API](https://next.mui.com/material-ui/api/list-item-secondary-action/)
31
- *
32
- * @deprecated Use the `secondaryAction` prop in the `ListItem` component instead. This component will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
33
34
  */
34
- declare const ListItemSecondaryAction: ((props: ListItemSecondaryActionProps) => React.JSX.Element) & {
35
+ declare const ListItemSecondaryAction: OverridableComponent<ListItemSecondaryActionTypeMap> & {
35
36
  muiName: string;
36
37
  };
38
+ export type ListItemSecondaryActionProps<RootComponent extends React.ElementType = ListItemSecondaryActionTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<ListItemSecondaryActionTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
39
+ component?: React.ElementType | undefined;
40
+ };
37
41
  export default ListItemSecondaryAction;
@@ -52,8 +52,6 @@ const ListItemSecondaryActionRoot = (0, _zeroStyled.styled)('div', {
52
52
 
53
53
  /**
54
54
  * Must be used as the last child of ListItem to function properly.
55
- *
56
- * @deprecated Use the `secondaryAction` prop in the `ListItem` component instead. This component will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
57
55
  */
58
56
  const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemSecondaryAction(inProps, ref) {
59
57
  const props = (0, _DefaultPropsProvider.useDefaultProps)({
@@ -62,6 +60,7 @@ const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemS
62
60
  });
63
61
  const {
64
62
  className,
63
+ component,
65
64
  ...other
66
65
  } = props;
67
66
  const context = React.useContext(_ListContext.default);
@@ -71,6 +70,7 @@ const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemS
71
70
  };
72
71
  const classes = useUtilityClasses(ownerState);
73
72
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ListItemSecondaryActionRoot, {
73
+ as: component,
74
74
  className: (0, _clsx.default)(classes.root, className),
75
75
  ownerState: ownerState,
76
76
  ref: ref,
@@ -94,6 +94,11 @@ process.env.NODE_ENV !== "production" ? ListItemSecondaryAction.propTypes /* rem
94
94
  * @ignore
95
95
  */
96
96
  className: _propTypes.default.string,
97
+ /**
98
+ * The component used for the root node.
99
+ * Either a string to use a HTML element or a component.
100
+ */
101
+ component: _propTypes.default.elementType,
97
102
  /**
98
103
  * The system prop that allows defining system overrides as well as additional CSS styles.
99
104
  */
@@ -45,8 +45,6 @@ const ListItemSecondaryActionRoot = styled('div', {
45
45
 
46
46
  /**
47
47
  * Must be used as the last child of ListItem to function properly.
48
- *
49
- * @deprecated Use the `secondaryAction` prop in the `ListItem` component instead. This component will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
50
48
  */
51
49
  const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemSecondaryAction(inProps, ref) {
52
50
  const props = useDefaultProps({
@@ -55,6 +53,7 @@ const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemS
55
53
  });
56
54
  const {
57
55
  className,
56
+ component,
58
57
  ...other
59
58
  } = props;
60
59
  const context = React.useContext(ListContext);
@@ -64,6 +63,7 @@ const ListItemSecondaryAction = /*#__PURE__*/React.forwardRef(function ListItemS
64
63
  };
65
64
  const classes = useUtilityClasses(ownerState);
66
65
  return /*#__PURE__*/_jsx(ListItemSecondaryActionRoot, {
66
+ as: component,
67
67
  className: clsx(classes.root, className),
68
68
  ownerState: ownerState,
69
69
  ref: ref,
@@ -87,6 +87,11 @@ process.env.NODE_ENV !== "production" ? ListItemSecondaryAction.propTypes /* rem
87
87
  * @ignore
88
88
  */
89
89
  className: PropTypes.string,
90
+ /**
91
+ * The component used for the root node.
92
+ * Either a string to use a HTML element or a component.
93
+ */
94
+ component: PropTypes.elementType,
90
95
  /**
91
96
  * The system prop that allows defining system overrides as well as additional CSS styles.
92
97
  */
@@ -22,7 +22,7 @@ export interface ListItemTextSlots {
22
22
  */
23
23
  secondary?: React.ElementType | undefined;
24
24
  }
25
- export type ListItemTextSlotsAndSlotProps = CreateSlotsAndSlotProps<ListItemTextSlots, {
25
+ export type ListItemTextSlotsAndSlotProps<PrimaryTypographyComponent extends React.ElementType = React.ElementType<TypographyProps<'span'>>, SecondaryTypographyComponent extends React.ElementType = React.ElementType<TypographyProps<'p'>>> = CreateSlotsAndSlotProps<ListItemTextSlots, {
26
26
  /**
27
27
  * Props forwarded to the root slot.
28
28
  * By default, the available props are based on `div` element.
@@ -32,15 +32,23 @@ export type ListItemTextSlotsAndSlotProps = CreateSlotsAndSlotProps<ListItemText
32
32
  * Props forwarded to the primary slot (as long as disableTypography is not `true`)
33
33
  * By default, the available props are based on the [Typography](https://mui.com/material-ui/api/typography/#props) component
34
34
  */
35
- primary: SlotProps<React.ElementType<TypographyProps>, {}, ListItemTextOwnerState>;
35
+ primary: TypographyProps<PrimaryTypographyComponent, {
36
+ component?: PrimaryTypographyComponent | undefined;
37
+ }> | ((ownerState: ListItemTextOwnerState) => TypographyProps<PrimaryTypographyComponent, {
38
+ component?: PrimaryTypographyComponent | undefined;
39
+ }>);
36
40
  /**
37
41
  * Props forwarded to the secondary slot (as long as disableTypography is not `true`)
38
42
  * By default, the available props are based on the [Typography](https://mui.com/material-ui/api/typography/#props) component
39
43
  */
40
- secondary: SlotProps<React.ElementType<TypographyProps>, {}, ListItemTextOwnerState>;
44
+ secondary: TypographyProps<SecondaryTypographyComponent, {
45
+ component?: SecondaryTypographyComponent | undefined;
46
+ }> | ((ownerState: ListItemTextOwnerState) => TypographyProps<SecondaryTypographyComponent, {
47
+ component?: SecondaryTypographyComponent | undefined;
48
+ }>);
41
49
  }>;
42
50
  export interface ListItemTextOwnerState extends ListItemTextProps {}
43
- export interface ListItemTextProps<PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p'> extends StandardProps<React.HTMLAttributes<HTMLDivElement>>, ListItemTextSlotsAndSlotProps {
51
+ export interface ListItemTextProps<PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p'> extends StandardProps<React.HTMLAttributes<HTMLDivElement>>, ListItemTextSlotsAndSlotProps<PrimaryTypographyComponent, SecondaryTypographyComponent> {
44
52
  /**
45
53
  * Alias for the `primary` prop.
46
54
  */
@@ -67,26 +75,10 @@ export interface ListItemTextProps<PrimaryTypographyComponent extends React.Elem
67
75
  * The main content element.
68
76
  */
69
77
  primary?: React.ReactNode;
70
- /**
71
- * These props will be forwarded to the primary typography component
72
- * (as long as disableTypography is not `true`).
73
- * @deprecated Use `slotProps.primary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
74
- */
75
- primaryTypographyProps?: TypographyProps<PrimaryTypographyComponent, {
76
- component?: PrimaryTypographyComponent | undefined;
77
- }> | undefined;
78
78
  /**
79
79
  * The secondary content element.
80
80
  */
81
81
  secondary?: React.ReactNode;
82
- /**
83
- * These props will be forwarded to the secondary typography component
84
- * (as long as disableTypography is not `true`).
85
- * @deprecated Use `slotProps.secondary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
86
- */
87
- secondaryTypographyProps?: TypographyProps<SecondaryTypographyComponent, {
88
- component?: SecondaryTypographyComponent | undefined;
89
- }> | undefined;
90
82
  /**
91
83
  * The system prop that allows defining system overrides as well as additional CSS styles.
92
84
  */
@@ -22,7 +22,7 @@ export interface ListItemTextSlots {
22
22
  */
23
23
  secondary?: React.ElementType | undefined;
24
24
  }
25
- export type ListItemTextSlotsAndSlotProps = CreateSlotsAndSlotProps<ListItemTextSlots, {
25
+ export type ListItemTextSlotsAndSlotProps<PrimaryTypographyComponent extends React.ElementType = React.ElementType<TypographyProps<'span'>>, SecondaryTypographyComponent extends React.ElementType = React.ElementType<TypographyProps<'p'>>> = CreateSlotsAndSlotProps<ListItemTextSlots, {
26
26
  /**
27
27
  * Props forwarded to the root slot.
28
28
  * By default, the available props are based on `div` element.
@@ -32,15 +32,23 @@ export type ListItemTextSlotsAndSlotProps = CreateSlotsAndSlotProps<ListItemText
32
32
  * Props forwarded to the primary slot (as long as disableTypography is not `true`)
33
33
  * By default, the available props are based on the [Typography](https://mui.com/material-ui/api/typography/#props) component
34
34
  */
35
- primary: SlotProps<React.ElementType<TypographyProps>, {}, ListItemTextOwnerState>;
35
+ primary: TypographyProps<PrimaryTypographyComponent, {
36
+ component?: PrimaryTypographyComponent | undefined;
37
+ }> | ((ownerState: ListItemTextOwnerState) => TypographyProps<PrimaryTypographyComponent, {
38
+ component?: PrimaryTypographyComponent | undefined;
39
+ }>);
36
40
  /**
37
41
  * Props forwarded to the secondary slot (as long as disableTypography is not `true`)
38
42
  * By default, the available props are based on the [Typography](https://mui.com/material-ui/api/typography/#props) component
39
43
  */
40
- secondary: SlotProps<React.ElementType<TypographyProps>, {}, ListItemTextOwnerState>;
44
+ secondary: TypographyProps<SecondaryTypographyComponent, {
45
+ component?: SecondaryTypographyComponent | undefined;
46
+ }> | ((ownerState: ListItemTextOwnerState) => TypographyProps<SecondaryTypographyComponent, {
47
+ component?: SecondaryTypographyComponent | undefined;
48
+ }>);
41
49
  }>;
42
50
  export interface ListItemTextOwnerState extends ListItemTextProps {}
43
- export interface ListItemTextProps<PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p'> extends StandardProps<React.HTMLAttributes<HTMLDivElement>>, ListItemTextSlotsAndSlotProps {
51
+ export interface ListItemTextProps<PrimaryTypographyComponent extends React.ElementType = 'span', SecondaryTypographyComponent extends React.ElementType = 'p'> extends StandardProps<React.HTMLAttributes<HTMLDivElement>>, ListItemTextSlotsAndSlotProps<PrimaryTypographyComponent, SecondaryTypographyComponent> {
44
52
  /**
45
53
  * Alias for the `primary` prop.
46
54
  */
@@ -67,26 +75,10 @@ export interface ListItemTextProps<PrimaryTypographyComponent extends React.Elem
67
75
  * The main content element.
68
76
  */
69
77
  primary?: React.ReactNode;
70
- /**
71
- * These props will be forwarded to the primary typography component
72
- * (as long as disableTypography is not `true`).
73
- * @deprecated Use `slotProps.primary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
74
- */
75
- primaryTypographyProps?: TypographyProps<PrimaryTypographyComponent, {
76
- component?: PrimaryTypographyComponent | undefined;
77
- }> | undefined;
78
78
  /**
79
79
  * The secondary content element.
80
80
  */
81
81
  secondary?: React.ReactNode;
82
- /**
83
- * These props will be forwarded to the secondary typography component
84
- * (as long as disableTypography is not `true`).
85
- * @deprecated Use `slotProps.secondary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
86
- */
87
- secondaryTypographyProps?: TypographyProps<SecondaryTypographyComponent, {
88
- component?: SecondaryTypographyComponent | undefined;
89
- }> | undefined;
90
82
  /**
91
83
  * The system prop that allows defining system overrides as well as additional CSS styles.
92
84
  */
@@ -86,9 +86,7 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
86
86
  disableTypography = false,
87
87
  inset = false,
88
88
  primary: primaryProp,
89
- primaryTypographyProps,
90
89
  secondary: secondaryProp,
91
- secondaryTypographyProps,
92
90
  slots = {},
93
91
  slotProps = {},
94
92
  ...other
@@ -109,11 +107,7 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
109
107
  const classes = useUtilityClasses(ownerState);
110
108
  const externalForwardedProps = {
111
109
  slots,
112
- slotProps: {
113
- primary: primaryTypographyProps,
114
- secondary: secondaryTypographyProps,
115
- ...slotProps
116
- }
110
+ slotProps
117
111
  };
118
112
  const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
119
113
  className: (0, _clsx.default)(classes.root, className),
@@ -193,27 +187,15 @@ process.env.NODE_ENV !== "production" ? ListItemText.propTypes /* remove-proptyp
193
187
  * The main content element.
194
188
  */
195
189
  primary: _propTypes.default.node,
196
- /**
197
- * These props will be forwarded to the primary typography component
198
- * (as long as disableTypography is not `true`).
199
- * @deprecated Use `slotProps.primary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
200
- */
201
- primaryTypographyProps: _propTypes.default.object,
202
190
  /**
203
191
  * The secondary content element.
204
192
  */
205
193
  secondary: _propTypes.default.node,
206
- /**
207
- * These props will be forwarded to the secondary typography component
208
- * (as long as disableTypography is not `true`).
209
- * @deprecated Use `slotProps.secondary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
210
- */
211
- secondaryTypographyProps: _propTypes.default.object,
212
194
  /**
213
195
  * The props used for each slot inside.
214
196
  * @default {}
215
197
  */
216
- slotProps: _propTypes.default.shape({
198
+ slotProps: _propTypes.default /* @typescript-to-proptypes-ignore */.shape({
217
199
  primary: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
218
200
  root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
219
201
  secondary: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
@@ -79,9 +79,7 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
79
79
  disableTypography = false,
80
80
  inset = false,
81
81
  primary: primaryProp,
82
- primaryTypographyProps,
83
82
  secondary: secondaryProp,
84
- secondaryTypographyProps,
85
83
  slots = {},
86
84
  slotProps = {},
87
85
  ...other
@@ -102,11 +100,7 @@ const ListItemText = /*#__PURE__*/React.forwardRef(function ListItemText(inProps
102
100
  const classes = useUtilityClasses(ownerState);
103
101
  const externalForwardedProps = {
104
102
  slots,
105
- slotProps: {
106
- primary: primaryTypographyProps,
107
- secondary: secondaryTypographyProps,
108
- ...slotProps
109
- }
103
+ slotProps
110
104
  };
111
105
  const [RootSlot, rootSlotProps] = useSlot('root', {
112
106
  className: clsx(classes.root, className),
@@ -186,27 +180,15 @@ process.env.NODE_ENV !== "production" ? ListItemText.propTypes /* remove-proptyp
186
180
  * The main content element.
187
181
  */
188
182
  primary: PropTypes.node,
189
- /**
190
- * These props will be forwarded to the primary typography component
191
- * (as long as disableTypography is not `true`).
192
- * @deprecated Use `slotProps.primary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
193
- */
194
- primaryTypographyProps: PropTypes.object,
195
183
  /**
196
184
  * The secondary content element.
197
185
  */
198
186
  secondary: PropTypes.node,
199
- /**
200
- * These props will be forwarded to the secondary typography component
201
- * (as long as disableTypography is not `true`).
202
- * @deprecated Use `slotProps.secondary` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
203
- */
204
- secondaryTypographyProps: PropTypes.object,
205
187
  /**
206
188
  * The props used for each slot inside.
207
189
  * @default {}
208
190
  */
209
- slotProps: PropTypes.shape({
191
+ slotProps: PropTypes /* @typescript-to-proptypes-ignore */.shape({
210
192
  primary: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
211
193
  root: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
212
194
  secondary: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
package/Modal/Modal.d.mts CHANGED
@@ -4,7 +4,7 @@ import { OverrideProps } from '@mui/types';
4
4
  import { SlotComponentProps } from "../utils/types.mjs";
5
5
  import { PortalProps } from "../Portal/index.mjs";
6
6
  import { Theme } from "../styles/index.mjs";
7
- import Backdrop, { BackdropProps } from "../Backdrop/index.mjs";
7
+ import Backdrop from "../Backdrop/index.mjs";
8
8
  import { OverridableComponent } from "../OverridableComponent/index.mjs";
9
9
  import { ModalClasses } from "./modalClasses.mjs";
10
10
  export interface ModalComponentsPropsOverrides {}
@@ -23,23 +23,6 @@ export interface ModalSlots {
23
23
  backdrop?: React.ElementType | undefined;
24
24
  }
25
25
  export interface ModalOwnProps {
26
- /**
27
- * A backdrop component. This prop enables custom backdrop rendering.
28
- * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
29
- * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.
30
- * @default styled(Backdrop, {
31
- * name: 'MuiModal',
32
- * slot: 'Backdrop',
33
- * })({
34
- * zIndex: -1,
35
- * })
36
- */
37
- BackdropComponent?: React.ElementType<BackdropProps> | undefined;
38
- /**
39
- * Props applied to the [`Backdrop`](https://mui.com/material-ui/api/backdrop/) element.
40
- * @deprecated Use `slotProps.backdrop` instead.
41
- */
42
- BackdropProps?: Partial<BackdropProps> | undefined;
43
26
  /**
44
27
  * A single child content element.
45
28
  */
@@ -57,29 +40,6 @@ export interface ModalOwnProps {
57
40
  * @default false
58
41
  */
59
42
  closeAfterTransition?: boolean | undefined;
60
- /**
61
- * The components used for each slot inside.
62
- *
63
- * @deprecated Use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
64
- *
65
- * @default {}
66
- */
67
- components?: {
68
- Root?: React.ElementType | undefined;
69
- Backdrop?: React.ElementType | undefined;
70
- } | undefined;
71
- /**
72
- * The extra props for the slot components.
73
- * You can override the existing props or add new ones.
74
- *
75
- * @deprecated Use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
76
- *
77
- * @default {}
78
- */
79
- componentsProps?: {
80
- root?: SlotComponentProps<'div', ModalComponentsPropsOverrides, ModalOwnerState> | undefined;
81
- backdrop?: SlotComponentProps<typeof Backdrop, ModalComponentsPropsOverrides, ModalOwnerState> | undefined;
82
- } | undefined;
83
43
  /**
84
44
  * An HTML element or function that returns one.
85
45
  * The `container` will have the portal children appended to it.
package/Modal/Modal.d.ts CHANGED
@@ -4,7 +4,7 @@ import { OverrideProps } from '@mui/types';
4
4
  import { SlotComponentProps } from "../utils/types.js";
5
5
  import { PortalProps } from "../Portal/index.js";
6
6
  import { Theme } from "../styles/index.js";
7
- import Backdrop, { BackdropProps } from "../Backdrop/index.js";
7
+ import Backdrop from "../Backdrop/index.js";
8
8
  import { OverridableComponent } from "../OverridableComponent/index.js";
9
9
  import { ModalClasses } from "./modalClasses.js";
10
10
  export interface ModalComponentsPropsOverrides {}
@@ -23,23 +23,6 @@ export interface ModalSlots {
23
23
  backdrop?: React.ElementType | undefined;
24
24
  }
25
25
  export interface ModalOwnProps {
26
- /**
27
- * A backdrop component. This prop enables custom backdrop rendering.
28
- * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
29
- * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.
30
- * @default styled(Backdrop, {
31
- * name: 'MuiModal',
32
- * slot: 'Backdrop',
33
- * })({
34
- * zIndex: -1,
35
- * })
36
- */
37
- BackdropComponent?: React.ElementType<BackdropProps> | undefined;
38
- /**
39
- * Props applied to the [`Backdrop`](https://mui.com/material-ui/api/backdrop/) element.
40
- * @deprecated Use `slotProps.backdrop` instead.
41
- */
42
- BackdropProps?: Partial<BackdropProps> | undefined;
43
26
  /**
44
27
  * A single child content element.
45
28
  */
@@ -57,29 +40,6 @@ export interface ModalOwnProps {
57
40
  * @default false
58
41
  */
59
42
  closeAfterTransition?: boolean | undefined;
60
- /**
61
- * The components used for each slot inside.
62
- *
63
- * @deprecated Use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
64
- *
65
- * @default {}
66
- */
67
- components?: {
68
- Root?: React.ElementType | undefined;
69
- Backdrop?: React.ElementType | undefined;
70
- } | undefined;
71
- /**
72
- * The extra props for the slot components.
73
- * You can override the existing props or add new ones.
74
- *
75
- * @deprecated Use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
76
- *
77
- * @default {}
78
- */
79
- componentsProps?: {
80
- root?: SlotComponentProps<'div', ModalComponentsPropsOverrides, ModalOwnerState> | undefined;
81
- backdrop?: SlotComponentProps<typeof Backdrop, ModalComponentsPropsOverrides, ModalOwnerState> | undefined;
82
- } | undefined;
83
43
  /**
84
44
  * An HTML element or function that returns one.
85
45
  * The `container` will have the portal children appended to it.
package/Modal/Modal.js CHANGED
@@ -88,16 +88,12 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
88
88
  props: inProps
89
89
  });
90
90
  const {
91
- BackdropComponent = ModalBackdrop,
92
- BackdropProps,
93
91
  classes: classesProp,
94
92
  className,
95
93
  closeAfterTransition = false,
96
94
  children,
97
95
  container,
98
96
  component,
99
- components = {},
100
- componentsProps = {},
101
97
  disableAutoFocus = false,
102
98
  disableEnforceFocus = false,
103
99
  disablePortal = false,
@@ -158,15 +154,8 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
158
154
  childProps.onExited = onExited;
159
155
  }
160
156
  const externalForwardedProps = {
161
- slots: {
162
- root: components.Root,
163
- backdrop: components.Backdrop,
164
- ...slots
165
- },
166
- slotProps: {
167
- ...componentsProps,
168
- ...slotProps
169
- }
157
+ slots,
158
+ slotProps
170
159
  };
171
160
  const [RootSlot, rootProps] = (0, _useSlot.default)('root', {
172
161
  ref,
@@ -181,11 +170,9 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
181
170
  className: (0, _clsx.default)(className, classes?.root, !ownerState.open && ownerState.exited && classes?.hidden)
182
171
  });
183
172
  const [BackdropSlot, backdropProps] = (0, _useSlot.default)('backdrop', {
184
- ref: BackdropProps?.ref,
185
- elementType: BackdropComponent,
173
+ elementType: ModalBackdrop,
186
174
  externalForwardedProps,
187
175
  shouldForwardComponentProp: true,
188
- additionalProps: BackdropProps,
189
176
  getSlotProps: otherHandlers => {
190
177
  return getBackdropProps({
191
178
  ...otherHandlers,
@@ -196,7 +183,7 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
196
183
  }
197
184
  });
198
185
  },
199
- className: (0, _clsx.default)(BackdropProps?.className, classes?.backdrop),
186
+ className: classes?.backdrop,
200
187
  ownerState
201
188
  });
202
189
  if (!keepMounted && !open && (!hasTransition || exited)) {
@@ -208,7 +195,7 @@ const Modal = /*#__PURE__*/React.forwardRef(function Modal(inProps, ref) {
208
195
  disablePortal: disablePortal,
209
196
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(RootSlot, {
210
197
  ...rootProps,
211
- children: [!hideBackdrop && BackdropComponent ? /*#__PURE__*/(0, _jsxRuntime.jsx)(BackdropSlot, {
198
+ children: [!hideBackdrop ? /*#__PURE__*/(0, _jsxRuntime.jsx)(BackdropSlot, {
212
199
  ...backdropProps
213
200
  }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Unstable_TrapFocus.default, {
214
201
  disableEnforceFocus: disableEnforceFocus,
@@ -226,23 +213,6 @@ process.env.NODE_ENV !== "production" ? Modal.propTypes /* remove-proptypes */ =
226
213
  // │ These PropTypes are generated from the TypeScript type definitions. │
227
214
  // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
228
215
  // └─────────────────────────────────────────────────────────────────────┘
229
- /**
230
- * A backdrop component. This prop enables custom backdrop rendering.
231
- * @deprecated Use `slots.backdrop` instead. While this prop currently works, it will be removed in the next major version.
232
- * Use the `slots.backdrop` prop to make your application ready for the next version of Material UI.
233
- * @default styled(Backdrop, {
234
- * name: 'MuiModal',
235
- * slot: 'Backdrop',
236
- * })({
237
- * zIndex: -1,
238
- * })
239
- */
240
- BackdropComponent: _propTypes.default.elementType,
241
- /**
242
- * Props applied to the [`Backdrop`](https://mui.com/material-ui/api/backdrop/) element.
243
- * @deprecated Use `slotProps.backdrop` instead.
244
- */
245
- BackdropProps: _propTypes.default.object,
246
216
  /**
247
217
  * A single child content element.
248
218
  */
@@ -265,29 +235,6 @@ process.env.NODE_ENV !== "production" ? Modal.propTypes /* remove-proptypes */ =
265
235
  * Either a string to use a HTML element or a component.
266
236
  */
267
237
  component: _propTypes.default.elementType,
268
- /**
269
- * The components used for each slot inside.
270
- *
271
- * @deprecated Use the `slots` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
272
- *
273
- * @default {}
274
- */
275
- components: _propTypes.default.shape({
276
- Backdrop: _propTypes.default.elementType,
277
- Root: _propTypes.default.elementType
278
- }),
279
- /**
280
- * The extra props for the slot components.
281
- * You can override the existing props or add new ones.
282
- *
283
- * @deprecated Use the `slotProps` prop instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.
284
- *
285
- * @default {}
286
- */
287
- componentsProps: _propTypes.default.shape({
288
- backdrop: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
289
- root: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object])
290
- }),
291
238
  /**
292
239
  * An HTML element or function that returns one.
293
240
  * The `container` will have the portal children appended to it.