@mui/material 5.15.14 → 6.0.0-alpha.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 (545) hide show
  1. package/Accordion/Accordion.js +1 -2
  2. package/AccordionSummary/AccordionSummary.js +1 -2
  3. package/Alert/Alert.js +1 -2
  4. package/AppBar/AppBar.js +1 -1
  5. package/Autocomplete/Autocomplete.js +12 -17
  6. package/AvatarGroup/AvatarGroup.js +27 -25
  7. package/Backdrop/Backdrop.d.ts +40 -22
  8. package/Backdrop/Backdrop.js +50 -33
  9. package/Badge/Badge.js +156 -164
  10. package/BottomNavigation/BottomNavigation.js +2 -2
  11. package/BottomNavigationAction/BottomNavigationAction.js +40 -24
  12. package/Breadcrumbs/Breadcrumbs.js +2 -2
  13. package/Button/Button.js +2 -4
  14. package/ButtonBase/ButtonBase.js +1 -2
  15. package/ButtonBase/TouchRipple.js +34 -39
  16. package/ButtonGroup/ButtonGroup.js +1 -1
  17. package/ButtonGroup/buttonGroupClasses.d.ts +57 -17
  18. package/ButtonGroup/buttonGroupClasses.js +1 -1
  19. package/CHANGELOG.md +80 -1
  20. package/Card/Card.js +4 -6
  21. package/CardActionArea/CardActionArea.js +3 -4
  22. package/CardActions/CardActions.js +16 -12
  23. package/CardContent/CardContent.js +7 -9
  24. package/CardHeader/CardHeader.js +3 -4
  25. package/CardMedia/CardMedia.js +22 -13
  26. package/Checkbox/Checkbox.js +2 -3
  27. package/Chip/Chip.js +191 -122
  28. package/CircularProgress/CircularProgress.js +10 -15
  29. package/CssBaseline/CssBaseline.js +3 -6
  30. package/DialogTitle/DialogTitle.js +1 -1
  31. package/Divider/Divider.js +140 -81
  32. package/Fab/Fab.js +55 -58
  33. package/FilledInput/FilledInput.js +4 -6
  34. package/FormControl/FormControl.js +30 -15
  35. package/FormControlLabel/FormControlLabel.js +42 -27
  36. package/FormGroup/FormGroup.js +14 -10
  37. package/Grid/Grid.js +2 -4
  38. package/IconButton/IconButton.js +2 -3
  39. package/ImageListItemBar/ImageListItemBar.js +1 -2
  40. package/Input/Input.js +3 -4
  41. package/InputAdornment/InputAdornment.js +1 -2
  42. package/InputBase/InputBase.js +2 -4
  43. package/LinearProgress/LinearProgress.js +16 -24
  44. package/List/List.js +1 -2
  45. package/ListItem/ListItem.js +1 -2
  46. package/ListItemText/ListItemText.js +2 -3
  47. package/Menu/Menu.js +2 -3
  48. package/MobileStepper/MobileStepper.js +80 -47
  49. package/Modal/Modal.js +22 -19
  50. package/NativeSelect/NativeSelectInput.js +1 -2
  51. package/OutlinedInput/OutlinedInput.js +4 -5
  52. package/PaginationItem/PaginationItem.js +1 -2
  53. package/Paper/Paper.js +15 -18
  54. package/Popover/Popover.js +7 -8
  55. package/Popper/Popper.js +3 -4
  56. package/README.md +3 -1
  57. package/Radio/Radio.js +2 -3
  58. package/Radio/RadioButtonIcon.js +1 -2
  59. package/Rating/Rating.js +1 -2
  60. package/ScopedCssBaseline/ScopedCssBaseline.js +1 -2
  61. package/Select/SelectInput.js +3 -5
  62. package/Skeleton/Skeleton.js +11 -16
  63. package/Slider/Slider.js +187 -205
  64. package/Slider/SliderValueLabel.js +1 -2
  65. package/SnackbarContent/SnackbarContent.js +1 -2
  66. package/SpeedDial/SpeedDial.js +1 -2
  67. package/SpeedDialAction/SpeedDialAction.js +1 -2
  68. package/SpeedDialIcon/SpeedDialIcon.js +1 -2
  69. package/Step/Step.js +23 -14
  70. package/StepButton/StepButton.js +17 -14
  71. package/StepConnector/StepConnector.js +45 -26
  72. package/StepContent/StepContent.js +13 -8
  73. package/StepIcon/StepIcon.js +3 -4
  74. package/StepLabel/StepLabel.d.ts +25 -13
  75. package/StepLabel/StepLabel.js +47 -27
  76. package/Stepper/Stepper.js +29 -15
  77. package/SvgIcon/SvgIcon.js +26 -30
  78. package/SwipeableDrawer/SwipeableDrawer.js +2 -4
  79. package/Switch/Switch.js +1 -2
  80. package/TabScrollButton/TabScrollButton.js +2 -3
  81. package/TablePagination/TablePagination.js +2 -4
  82. package/TablePagination/TablePaginationActions.js +11 -13
  83. package/TableSortLabel/TableSortLabel.js +1 -2
  84. package/Tabs/Tabs.js +6 -10
  85. package/TextField/TextField.js +1 -2
  86. package/Tooltip/Tooltip.js +14 -17
  87. package/index.js +1 -1
  88. package/internal/SwitchBase.js +1 -2
  89. package/legacy/Accordion/Accordion.js +1 -2
  90. package/legacy/AccordionSummary/AccordionSummary.js +1 -2
  91. package/legacy/Alert/Alert.js +1 -2
  92. package/legacy/Autocomplete/Autocomplete.js +2 -3
  93. package/legacy/AvatarGroup/AvatarGroup.js +19 -11
  94. package/legacy/Backdrop/Backdrop.js +66 -44
  95. package/legacy/Badge/Badge.js +1 -2
  96. package/legacy/BottomNavigation/BottomNavigation.js +2 -2
  97. package/legacy/BottomNavigationAction/BottomNavigationAction.js +42 -23
  98. package/legacy/Breadcrumbs/Breadcrumbs.js +2 -2
  99. package/legacy/Button/Button.js +1 -2
  100. package/legacy/ButtonBase/ButtonBase.js +1 -2
  101. package/legacy/ButtonGroup/ButtonGroup.js +1 -1
  102. package/legacy/ButtonGroup/buttonGroupClasses.js +1 -1
  103. package/legacy/Card/Card.js +4 -6
  104. package/legacy/CardActionArea/CardActionArea.js +3 -4
  105. package/legacy/CardActions/CardActions.js +16 -13
  106. package/legacy/CardContent/CardContent.js +7 -9
  107. package/legacy/CardHeader/CardHeader.js +3 -4
  108. package/legacy/CardMedia/CardMedia.js +24 -16
  109. package/legacy/Chip/Chip.js +199 -107
  110. package/legacy/CssBaseline/CssBaseline.js +1 -2
  111. package/legacy/Divider/Divider.js +148 -88
  112. package/legacy/FormControl/FormControl.js +37 -23
  113. package/legacy/FormControlLabel/FormControlLabel.js +42 -25
  114. package/legacy/FormGroup/FormGroup.js +15 -12
  115. package/legacy/ImageListItemBar/ImageListItemBar.js +1 -2
  116. package/legacy/InputAdornment/InputAdornment.js +1 -2
  117. package/legacy/InputBase/InputBase.js +1 -2
  118. package/legacy/LinearProgress/LinearProgress.js +1 -2
  119. package/legacy/List/List.js +1 -2
  120. package/legacy/ListItem/ListItem.js +1 -2
  121. package/legacy/ListItemText/ListItemText.js +1 -2
  122. package/legacy/MobileStepper/MobileStepper.js +80 -48
  123. package/legacy/Modal/Modal.js +20 -15
  124. package/legacy/NativeSelect/NativeSelectInput.js +1 -2
  125. package/legacy/OutlinedInput/OutlinedInput.js +1 -2
  126. package/legacy/PaginationItem/PaginationItem.js +1 -2
  127. package/legacy/Popover/Popover.js +2 -2
  128. package/legacy/Radio/RadioButtonIcon.js +1 -2
  129. package/legacy/Rating/Rating.js +1 -2
  130. package/legacy/Select/SelectInput.js +1 -2
  131. package/legacy/Slider/Slider.js +1 -2
  132. package/legacy/Slider/SliderValueLabel.js +1 -2
  133. package/legacy/SnackbarContent/SnackbarContent.js +1 -2
  134. package/legacy/SpeedDial/SpeedDial.js +1 -2
  135. package/legacy/SpeedDialAction/SpeedDialAction.js +1 -2
  136. package/legacy/SpeedDialIcon/SpeedDialIcon.js +1 -2
  137. package/legacy/Step/Step.js +22 -14
  138. package/legacy/StepButton/StepButton.js +17 -15
  139. package/legacy/StepConnector/StepConnector.js +46 -28
  140. package/legacy/StepContent/StepContent.js +15 -10
  141. package/legacy/StepIcon/StepIcon.js +3 -4
  142. package/legacy/StepLabel/StepLabel.js +65 -44
  143. package/legacy/Stepper/Stepper.js +28 -15
  144. package/legacy/SvgIcon/SvgIcon.js +1 -2
  145. package/legacy/SwipeableDrawer/SwipeableDrawer.js +1 -2
  146. package/legacy/Switch/Switch.js +1 -2
  147. package/legacy/TablePagination/TablePagination.js +1 -2
  148. package/legacy/TablePagination/TablePaginationActions.js +1 -2
  149. package/legacy/TableSortLabel/TableSortLabel.js +1 -2
  150. package/legacy/Tabs/Tabs.js +1 -2
  151. package/legacy/TextField/TextField.js +1 -2
  152. package/legacy/Tooltip/Tooltip.js +1 -2
  153. package/legacy/index.js +1 -1
  154. package/legacy/internal/SwitchBase.js +1 -2
  155. package/legacy/styles/CssVarsProvider.js +1 -3
  156. package/legacy/styles/createGetSelector.js +21 -0
  157. package/legacy/styles/experimental_extendTheme.js +26 -7
  158. package/modern/Accordion/Accordion.js +1 -2
  159. package/modern/AccordionSummary/AccordionSummary.js +1 -2
  160. package/modern/Alert/Alert.js +1 -2
  161. package/modern/Autocomplete/Autocomplete.js +2 -3
  162. package/modern/AvatarGroup/AvatarGroup.js +25 -22
  163. package/modern/Backdrop/Backdrop.js +50 -32
  164. package/modern/Badge/Badge.js +1 -2
  165. package/modern/BottomNavigation/BottomNavigation.js +2 -2
  166. package/modern/BottomNavigationAction/BottomNavigationAction.js +40 -24
  167. package/modern/Breadcrumbs/Breadcrumbs.js +2 -2
  168. package/modern/Button/Button.js +1 -2
  169. package/modern/ButtonBase/ButtonBase.js +1 -2
  170. package/modern/ButtonGroup/ButtonGroup.js +1 -1
  171. package/modern/ButtonGroup/buttonGroupClasses.js +1 -1
  172. package/modern/Card/Card.js +4 -6
  173. package/modern/CardActionArea/CardActionArea.js +3 -4
  174. package/modern/CardActions/CardActions.js +16 -12
  175. package/modern/CardContent/CardContent.js +7 -9
  176. package/modern/CardHeader/CardHeader.js +3 -4
  177. package/modern/CardMedia/CardMedia.js +22 -13
  178. package/modern/Chip/Chip.js +191 -122
  179. package/modern/CssBaseline/CssBaseline.js +1 -2
  180. package/modern/Divider/Divider.js +140 -81
  181. package/modern/FormControl/FormControl.js +30 -15
  182. package/modern/FormControlLabel/FormControlLabel.js +38 -22
  183. package/modern/FormGroup/FormGroup.js +14 -10
  184. package/modern/ImageListItemBar/ImageListItemBar.js +1 -2
  185. package/modern/InputAdornment/InputAdornment.js +1 -2
  186. package/modern/InputBase/InputBase.js +1 -2
  187. package/modern/LinearProgress/LinearProgress.js +1 -2
  188. package/modern/List/List.js +1 -2
  189. package/modern/ListItem/ListItem.js +1 -2
  190. package/modern/ListItemText/ListItemText.js +1 -2
  191. package/modern/MobileStepper/MobileStepper.js +80 -47
  192. package/modern/Modal/Modal.js +15 -11
  193. package/modern/NativeSelect/NativeSelectInput.js +1 -2
  194. package/modern/OutlinedInput/OutlinedInput.js +1 -2
  195. package/modern/PaginationItem/PaginationItem.js +1 -2
  196. package/modern/Popover/Popover.js +2 -2
  197. package/modern/Radio/RadioButtonIcon.js +1 -2
  198. package/modern/Rating/Rating.js +1 -2
  199. package/modern/Select/SelectInput.js +1 -2
  200. package/modern/Slider/Slider.js +1 -2
  201. package/modern/Slider/SliderValueLabel.js +1 -2
  202. package/modern/SnackbarContent/SnackbarContent.js +1 -2
  203. package/modern/SpeedDial/SpeedDial.js +1 -2
  204. package/modern/SpeedDialAction/SpeedDialAction.js +1 -2
  205. package/modern/SpeedDialIcon/SpeedDialIcon.js +1 -2
  206. package/modern/Step/Step.js +23 -14
  207. package/modern/StepButton/StepButton.js +17 -14
  208. package/modern/StepConnector/StepConnector.js +45 -26
  209. package/modern/StepContent/StepContent.js +13 -8
  210. package/modern/StepIcon/StepIcon.js +3 -4
  211. package/modern/StepLabel/StepLabel.js +47 -26
  212. package/modern/Stepper/Stepper.js +29 -15
  213. package/modern/SvgIcon/SvgIcon.js +1 -2
  214. package/modern/SwipeableDrawer/SwipeableDrawer.js +1 -2
  215. package/modern/Switch/Switch.js +1 -2
  216. package/modern/TablePagination/TablePagination.js +1 -2
  217. package/modern/TablePagination/TablePaginationActions.js +1 -2
  218. package/modern/TableSortLabel/TableSortLabel.js +1 -2
  219. package/modern/Tabs/Tabs.js +1 -2
  220. package/modern/TextField/TextField.js +1 -2
  221. package/modern/Tooltip/Tooltip.js +1 -2
  222. package/modern/index.js +1 -1
  223. package/modern/internal/SwitchBase.js +1 -2
  224. package/modern/styles/CssVarsProvider.js +1 -3
  225. package/modern/styles/createGetSelector.js +21 -0
  226. package/modern/styles/experimental_extendTheme.js +21 -8
  227. package/node/Accordion/Accordion.js +1 -1
  228. package/node/Accordion/AccordionContext.js +1 -1
  229. package/node/Accordion/index.js +1 -1
  230. package/node/AccordionActions/AccordionActions.js +1 -1
  231. package/node/AccordionActions/index.js +1 -1
  232. package/node/AccordionDetails/AccordionDetails.js +1 -1
  233. package/node/AccordionDetails/index.js +1 -1
  234. package/node/AccordionSummary/AccordionSummary.js +1 -1
  235. package/node/AccordionSummary/index.js +1 -1
  236. package/node/Alert/Alert.js +1 -1
  237. package/node/Alert/index.js +1 -1
  238. package/node/AlertTitle/AlertTitle.js +1 -1
  239. package/node/AlertTitle/index.js +1 -1
  240. package/node/AppBar/AppBar.js +1 -1
  241. package/node/AppBar/index.js +1 -1
  242. package/node/Autocomplete/Autocomplete.js +2 -2
  243. package/node/Autocomplete/index.js +1 -1
  244. package/node/Avatar/Avatar.js +1 -1
  245. package/node/Avatar/index.js +1 -1
  246. package/node/AvatarGroup/AvatarGroup.js +27 -23
  247. package/node/AvatarGroup/index.js +1 -1
  248. package/node/Backdrop/Backdrop.js +53 -36
  249. package/node/Backdrop/index.js +1 -1
  250. package/node/Badge/Badge.js +1 -1
  251. package/node/Badge/index.js +1 -1
  252. package/node/BottomNavigation/BottomNavigation.js +5 -5
  253. package/node/BottomNavigation/index.js +1 -1
  254. package/node/BottomNavigationAction/BottomNavigationAction.js +43 -26
  255. package/node/BottomNavigationAction/index.js +1 -1
  256. package/node/Box/index.js +1 -1
  257. package/node/Breadcrumbs/BreadcrumbCollapsed.js +1 -1
  258. package/node/Breadcrumbs/Breadcrumbs.js +7 -7
  259. package/node/Breadcrumbs/index.js +1 -1
  260. package/node/Button/Button.js +1 -1
  261. package/node/Button/index.js +1 -1
  262. package/node/ButtonBase/ButtonBase.js +1 -1
  263. package/node/ButtonBase/Ripple.js +1 -1
  264. package/node/ButtonBase/TouchRipple.js +1 -1
  265. package/node/ButtonBase/index.js +1 -1
  266. package/node/ButtonGroup/ButtonGroup.js +2 -2
  267. package/node/ButtonGroup/ButtonGroupButtonContext.js +1 -1
  268. package/node/ButtonGroup/ButtonGroupContext.js +1 -1
  269. package/node/ButtonGroup/buttonGroupClasses.js +1 -1
  270. package/node/ButtonGroup/index.js +1 -1
  271. package/node/Card/Card.js +7 -9
  272. package/node/Card/index.js +1 -1
  273. package/node/CardActionArea/CardActionArea.js +6 -6
  274. package/node/CardActionArea/index.js +1 -1
  275. package/node/CardActions/CardActions.js +19 -15
  276. package/node/CardActions/index.js +1 -1
  277. package/node/CardContent/CardContent.js +10 -12
  278. package/node/CardContent/index.js +1 -1
  279. package/node/CardHeader/CardHeader.js +8 -8
  280. package/node/CardHeader/index.js +1 -1
  281. package/node/CardMedia/CardMedia.js +25 -16
  282. package/node/CardMedia/index.js +1 -1
  283. package/node/Checkbox/Checkbox.js +1 -1
  284. package/node/Checkbox/index.js +1 -1
  285. package/node/Chip/Chip.js +194 -124
  286. package/node/Chip/index.js +1 -1
  287. package/node/CircularProgress/CircularProgress.js +1 -1
  288. package/node/CircularProgress/index.js +1 -1
  289. package/node/Collapse/Collapse.js +1 -1
  290. package/node/Collapse/index.js +1 -1
  291. package/node/Container/index.js +1 -1
  292. package/node/CssBaseline/CssBaseline.js +1 -1
  293. package/node/Dialog/Dialog.js +1 -1
  294. package/node/Dialog/DialogContext.js +1 -1
  295. package/node/Dialog/index.js +1 -1
  296. package/node/DialogActions/DialogActions.js +1 -1
  297. package/node/DialogActions/index.js +1 -1
  298. package/node/DialogContent/DialogContent.js +1 -1
  299. package/node/DialogContent/index.js +1 -1
  300. package/node/DialogContentText/DialogContentText.js +1 -1
  301. package/node/DialogContentText/index.js +1 -1
  302. package/node/DialogTitle/DialogTitle.js +1 -1
  303. package/node/DialogTitle/index.js +1 -1
  304. package/node/Divider/Divider.js +144 -85
  305. package/node/Divider/index.js +1 -1
  306. package/node/Drawer/Drawer.js +1 -1
  307. package/node/Drawer/index.js +1 -1
  308. package/node/Fab/Fab.js +1 -1
  309. package/node/Fab/index.js +1 -1
  310. package/node/Fade/Fade.js +1 -1
  311. package/node/FilledInput/FilledInput.js +1 -1
  312. package/node/FilledInput/index.js +1 -1
  313. package/node/FormControl/FormControl.js +33 -18
  314. package/node/FormControl/FormControlContext.js +1 -1
  315. package/node/FormControl/index.js +1 -1
  316. package/node/FormControl/useFormControl.js +1 -1
  317. package/node/FormControlLabel/FormControlLabel.js +41 -24
  318. package/node/FormControlLabel/index.js +1 -1
  319. package/node/FormGroup/FormGroup.js +17 -13
  320. package/node/FormGroup/index.js +1 -1
  321. package/node/FormHelperText/FormHelperText.js +1 -1
  322. package/node/FormHelperText/index.js +1 -1
  323. package/node/FormLabel/FormLabel.js +1 -1
  324. package/node/FormLabel/index.js +1 -1
  325. package/node/GlobalStyles/GlobalStyles.js +1 -1
  326. package/node/Grid/Grid.js +1 -1
  327. package/node/Grid/GridContext.js +1 -1
  328. package/node/Grid/index.js +1 -1
  329. package/node/Grow/Grow.js +1 -1
  330. package/node/Hidden/Hidden.js +1 -1
  331. package/node/Hidden/HiddenCss.js +1 -1
  332. package/node/Hidden/HiddenJs.js +1 -1
  333. package/node/Hidden/withWidth.js +1 -1
  334. package/node/Icon/Icon.js +1 -1
  335. package/node/Icon/index.js +1 -1
  336. package/node/IconButton/IconButton.js +1 -1
  337. package/node/IconButton/index.js +1 -1
  338. package/node/ImageList/ImageList.js +1 -1
  339. package/node/ImageList/ImageListContext.js +1 -1
  340. package/node/ImageList/index.js +1 -1
  341. package/node/ImageListItem/ImageListItem.js +1 -1
  342. package/node/ImageListItem/index.js +1 -1
  343. package/node/ImageListItemBar/ImageListItemBar.js +1 -1
  344. package/node/ImageListItemBar/index.js +1 -1
  345. package/node/Input/Input.js +1 -1
  346. package/node/Input/index.js +1 -1
  347. package/node/InputAdornment/InputAdornment.js +1 -1
  348. package/node/InputAdornment/index.js +1 -1
  349. package/node/InputBase/InputBase.js +1 -1
  350. package/node/InputBase/index.js +1 -1
  351. package/node/InputLabel/InputLabel.js +1 -1
  352. package/node/InputLabel/index.js +1 -1
  353. package/node/LinearProgress/LinearProgress.js +1 -1
  354. package/node/LinearProgress/index.js +1 -1
  355. package/node/Link/Link.js +1 -1
  356. package/node/Link/index.js +1 -1
  357. package/node/List/List.js +1 -1
  358. package/node/List/ListContext.js +1 -1
  359. package/node/List/index.js +1 -1
  360. package/node/ListItem/ListItem.js +1 -1
  361. package/node/ListItem/index.js +1 -1
  362. package/node/ListItemAvatar/ListItemAvatar.js +1 -1
  363. package/node/ListItemAvatar/index.js +1 -1
  364. package/node/ListItemButton/ListItemButton.js +1 -1
  365. package/node/ListItemButton/index.js +1 -1
  366. package/node/ListItemIcon/ListItemIcon.js +1 -1
  367. package/node/ListItemIcon/index.js +1 -1
  368. package/node/ListItemSecondaryAction/ListItemSecondaryAction.js +1 -1
  369. package/node/ListItemSecondaryAction/index.js +1 -1
  370. package/node/ListItemText/ListItemText.js +1 -1
  371. package/node/ListItemText/index.js +1 -1
  372. package/node/ListSubheader/ListSubheader.js +1 -1
  373. package/node/ListSubheader/index.js +1 -1
  374. package/node/Menu/Menu.js +1 -1
  375. package/node/Menu/index.js +1 -1
  376. package/node/MenuItem/MenuItem.js +1 -1
  377. package/node/MenuItem/index.js +1 -1
  378. package/node/MenuList/MenuList.js +1 -1
  379. package/node/MobileStepper/MobileStepper.js +86 -52
  380. package/node/MobileStepper/index.js +1 -1
  381. package/node/Modal/Modal.js +18 -13
  382. package/node/Modal/index.js +1 -1
  383. package/node/NativeSelect/NativeSelect.js +1 -1
  384. package/node/NativeSelect/NativeSelectInput.js +1 -1
  385. package/node/NativeSelect/index.js +1 -1
  386. package/node/OutlinedInput/NotchedOutline.js +1 -1
  387. package/node/OutlinedInput/OutlinedInput.js +1 -1
  388. package/node/OutlinedInput/index.js +1 -1
  389. package/node/Pagination/Pagination.js +1 -1
  390. package/node/Pagination/index.js +1 -1
  391. package/node/PaginationItem/PaginationItem.js +1 -1
  392. package/node/PaginationItem/index.js +1 -1
  393. package/node/Paper/Paper.js +1 -1
  394. package/node/Paper/index.js +1 -1
  395. package/node/Popover/Popover.js +6 -6
  396. package/node/Popover/index.js +1 -1
  397. package/node/Popper/Popper.js +1 -1
  398. package/node/Radio/Radio.js +1 -1
  399. package/node/Radio/RadioButtonIcon.js +1 -1
  400. package/node/Radio/index.js +1 -1
  401. package/node/RadioGroup/RadioGroup.js +1 -1
  402. package/node/RadioGroup/RadioGroupContext.js +1 -1
  403. package/node/RadioGroup/useRadioGroup.js +1 -1
  404. package/node/Rating/Rating.js +1 -1
  405. package/node/Rating/index.js +1 -1
  406. package/node/ScopedCssBaseline/ScopedCssBaseline.js +1 -1
  407. package/node/ScopedCssBaseline/index.js +1 -1
  408. package/node/Select/Select.js +1 -1
  409. package/node/Select/SelectInput.js +1 -1
  410. package/node/Select/index.js +1 -1
  411. package/node/Skeleton/Skeleton.js +1 -1
  412. package/node/Skeleton/index.js +1 -1
  413. package/node/Slide/Slide.js +1 -1
  414. package/node/Slider/Slider.js +1 -1
  415. package/node/Slider/SliderValueLabel.js +1 -1
  416. package/node/Slider/index.js +1 -1
  417. package/node/Snackbar/Snackbar.js +1 -1
  418. package/node/Snackbar/index.js +1 -1
  419. package/node/SnackbarContent/SnackbarContent.js +1 -1
  420. package/node/SnackbarContent/index.js +1 -1
  421. package/node/SpeedDial/SpeedDial.js +1 -1
  422. package/node/SpeedDial/index.js +1 -1
  423. package/node/SpeedDialAction/SpeedDialAction.js +1 -1
  424. package/node/SpeedDialAction/index.js +1 -1
  425. package/node/SpeedDialIcon/SpeedDialIcon.js +1 -1
  426. package/node/SpeedDialIcon/index.js +1 -1
  427. package/node/Step/Step.js +25 -15
  428. package/node/Step/StepContext.js +1 -1
  429. package/node/Step/index.js +1 -1
  430. package/node/StepButton/StepButton.js +20 -17
  431. package/node/StepButton/index.js +1 -1
  432. package/node/StepConnector/StepConnector.js +49 -30
  433. package/node/StepConnector/index.js +1 -1
  434. package/node/StepContent/StepContent.js +17 -12
  435. package/node/StepContent/index.js +1 -1
  436. package/node/StepIcon/StepIcon.js +6 -6
  437. package/node/StepIcon/index.js +1 -1
  438. package/node/StepLabel/StepLabel.js +52 -31
  439. package/node/StepLabel/index.js +1 -1
  440. package/node/Stepper/Stepper.js +32 -18
  441. package/node/Stepper/StepperContext.js +1 -1
  442. package/node/Stepper/index.js +1 -1
  443. package/node/SvgIcon/SvgIcon.js +1 -1
  444. package/node/SvgIcon/index.js +1 -1
  445. package/node/SwipeableDrawer/SwipeArea.js +1 -1
  446. package/node/SwipeableDrawer/SwipeableDrawer.js +1 -1
  447. package/node/Switch/Switch.js +1 -1
  448. package/node/Switch/index.js +1 -1
  449. package/node/Tab/Tab.js +1 -1
  450. package/node/Tab/index.js +1 -1
  451. package/node/TabScrollButton/TabScrollButton.js +1 -1
  452. package/node/TabScrollButton/index.js +1 -1
  453. package/node/Table/Table.js +1 -1
  454. package/node/Table/TableContext.js +1 -1
  455. package/node/Table/Tablelvl2Context.js +1 -1
  456. package/node/Table/index.js +1 -1
  457. package/node/TableBody/TableBody.js +1 -1
  458. package/node/TableBody/index.js +1 -1
  459. package/node/TableCell/TableCell.js +1 -1
  460. package/node/TableCell/index.js +1 -1
  461. package/node/TableContainer/TableContainer.js +1 -1
  462. package/node/TableContainer/index.js +1 -1
  463. package/node/TableFooter/TableFooter.js +1 -1
  464. package/node/TableFooter/index.js +1 -1
  465. package/node/TableHead/TableHead.js +1 -1
  466. package/node/TableHead/index.js +1 -1
  467. package/node/TablePagination/TablePagination.js +1 -1
  468. package/node/TablePagination/TablePaginationActions.js +1 -1
  469. package/node/TablePagination/index.js +1 -1
  470. package/node/TableRow/TableRow.js +1 -1
  471. package/node/TableRow/index.js +1 -1
  472. package/node/TableSortLabel/TableSortLabel.js +1 -1
  473. package/node/TableSortLabel/index.js +1 -1
  474. package/node/Tabs/ScrollbarSize.js +1 -1
  475. package/node/Tabs/Tabs.js +1 -1
  476. package/node/Tabs/index.js +1 -1
  477. package/node/TextField/TextField.js +1 -1
  478. package/node/TextField/index.js +1 -1
  479. package/node/ToggleButton/ToggleButton.js +1 -1
  480. package/node/ToggleButton/index.js +1 -1
  481. package/node/ToggleButtonGroup/ToggleButtonGroup.js +1 -1
  482. package/node/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +1 -1
  483. package/node/ToggleButtonGroup/ToggleButtonGroupContext.js +1 -1
  484. package/node/ToggleButtonGroup/index.js +1 -1
  485. package/node/Toolbar/Toolbar.js +1 -1
  486. package/node/Toolbar/index.js +1 -1
  487. package/node/Tooltip/Tooltip.js +1 -1
  488. package/node/Tooltip/index.js +1 -1
  489. package/node/Typography/Typography.js +1 -1
  490. package/node/Typography/index.js +1 -1
  491. package/node/Unstable_Grid2/index.js +1 -1
  492. package/node/Zoom/Zoom.js +1 -1
  493. package/node/index.js +2 -2
  494. package/node/internal/SwitchBase.js +1 -1
  495. package/node/internal/svg-icons/Add.js +1 -1
  496. package/node/internal/svg-icons/ArrowDownward.js +1 -1
  497. package/node/internal/svg-icons/ArrowDropDown.js +1 -1
  498. package/node/internal/svg-icons/Cancel.js +1 -1
  499. package/node/internal/svg-icons/CheckBox.js +1 -1
  500. package/node/internal/svg-icons/CheckBoxOutlineBlank.js +1 -1
  501. package/node/internal/svg-icons/CheckCircle.js +1 -1
  502. package/node/internal/svg-icons/Close.js +1 -1
  503. package/node/internal/svg-icons/ErrorOutline.js +1 -1
  504. package/node/internal/svg-icons/FirstPage.js +1 -1
  505. package/node/internal/svg-icons/IndeterminateCheckBox.js +1 -1
  506. package/node/internal/svg-icons/InfoOutlined.js +1 -1
  507. package/node/internal/svg-icons/KeyboardArrowLeft.js +1 -1
  508. package/node/internal/svg-icons/KeyboardArrowRight.js +1 -1
  509. package/node/internal/svg-icons/LastPage.js +1 -1
  510. package/node/internal/svg-icons/MoreHoriz.js +1 -1
  511. package/node/internal/svg-icons/NavigateBefore.js +1 -1
  512. package/node/internal/svg-icons/NavigateNext.js +1 -1
  513. package/node/internal/svg-icons/Person.js +1 -1
  514. package/node/internal/svg-icons/RadioButtonChecked.js +1 -1
  515. package/node/internal/svg-icons/RadioButtonUnchecked.js +1 -1
  516. package/node/internal/svg-icons/ReportProblemOutlined.js +1 -1
  517. package/node/internal/svg-icons/Star.js +1 -1
  518. package/node/internal/svg-icons/StarBorder.js +1 -1
  519. package/node/internal/svg-icons/SuccessOutlined.js +1 -1
  520. package/node/internal/svg-icons/Warning.js +1 -1
  521. package/node/styles/CssVarsProvider.js +1 -3
  522. package/node/styles/ThemeProvider.js +1 -1
  523. package/node/styles/createGetSelector.js +29 -0
  524. package/node/styles/createTheme.js +1 -1
  525. package/node/styles/experimental_extendTheme.js +22 -9
  526. package/node/styles/index.js +1 -1
  527. package/node/styles/useTheme.js +1 -1
  528. package/node/useAutocomplete/index.js +1 -1
  529. package/node/useScrollTrigger/useScrollTrigger.js +1 -1
  530. package/node/useTouchRipple/useTouchRipple.js +1 -1
  531. package/node/utils/createSvgIcon.js +1 -1
  532. package/package.json +4 -4
  533. package/styles/CssVarsProvider.js +1 -3
  534. package/styles/createGetSelector.d.ts +10 -0
  535. package/styles/createGetSelector.js +21 -0
  536. package/styles/createTheme.js +1 -1
  537. package/styles/excludeVariablesFromRoot.d.ts +1 -1
  538. package/styles/experimental_extendTheme.d.ts +23 -5
  539. package/styles/experimental_extendTheme.js +28 -16
  540. package/styles/shouldSkipGeneratingVar.js +1 -2
  541. package/transitions/utils.js +2 -3
  542. package/umd/material-ui.development.js +1136 -736
  543. package/umd/material-ui.production.min.js +4 -4
  544. package/useTouchRipple/useTouchRipple.js +4 -8
  545. package/utils/useSlot.js +1 -1
@@ -16,8 +16,7 @@ import AccordionContext from './AccordionContext';
16
16
  import useControlled from '../utils/useControlled';
17
17
  import useSlot from '../utils/useSlot';
18
18
  import accordionClasses, { getAccordionUtilityClass } from './accordionClasses';
19
- import { jsx as _jsx } from "react/jsx-runtime";
20
- import { jsxs as _jsxs } from "react/jsx-runtime";
19
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
21
20
  const useThemeProps = createUseThemeProps('MuiAccordion');
22
21
  const useUtilityClasses = ownerState => {
23
22
  const {
@@ -11,8 +11,7 @@ import { styled, createUseThemeProps } from '../zero-styled';
11
11
  import ButtonBase from '../ButtonBase';
12
12
  import AccordionContext from '../Accordion/AccordionContext';
13
13
  import accordionSummaryClasses, { getAccordionSummaryUtilityClass } from './accordionSummaryClasses';
14
- import { jsx as _jsx } from "react/jsx-runtime";
15
- import { jsxs as _jsxs } from "react/jsx-runtime";
14
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
15
  const useThemeProps = createUseThemeProps('MuiAccordionSummary');
17
16
  const useUtilityClasses = ownerState => {
18
17
  const {
package/Alert/Alert.js CHANGED
@@ -19,8 +19,7 @@ import ReportProblemOutlinedIcon from '../internal/svg-icons/ReportProblemOutlin
19
19
  import ErrorOutlineIcon from '../internal/svg-icons/ErrorOutline';
20
20
  import InfoOutlinedIcon from '../internal/svg-icons/InfoOutlined';
21
21
  import CloseIcon from '../internal/svg-icons/Close';
22
- import { jsx as _jsx } from "react/jsx-runtime";
23
- import { jsxs as _jsxs } from "react/jsx-runtime";
22
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
23
  const useThemeProps = createUseThemeProps('MuiAlert');
25
24
  const useUtilityClasses = ownerState => {
26
25
  const {
package/AppBar/AppBar.js CHANGED
@@ -27,7 +27,7 @@ const useUtilityClasses = ownerState => {
27
27
 
28
28
  // var2 is the fallback.
29
29
  // Ex. var1: 'var(--a)', var2: 'var(--b)'; return: 'var(--a, var(--b))'
30
- const joinVars = (var1, var2) => var1 ? `${var1 == null ? void 0 : var1.replace(')', '')}, ${var2})` : var2;
30
+ const joinVars = (var1, var2) => var1 ? `${var1?.replace(')', '')}, ${var2})` : var2;
31
31
  const AppBarRoot = styled(Paper, {
32
32
  name: 'MuiAppBar',
33
33
  slot: 'Root',
@@ -28,8 +28,7 @@ import { styled, createUseThemeProps } from '../zero-styled';
28
28
  import autocompleteClasses, { getAutocompleteUtilityClass } from './autocompleteClasses';
29
29
  import capitalize from '../utils/capitalize';
30
30
  import useForkRef from '../utils/useForkRef';
31
- import { jsx as _jsx } from "react/jsx-runtime";
32
- import { jsxs as _jsxs } from "react/jsx-runtime";
31
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
33
32
  import { createElement as _createElement } from "react";
34
33
  const useThemeProps = createUseThemeProps('MuiAutocomplete');
35
34
  const useUtilityClasses = ownerState => {
@@ -397,7 +396,6 @@ const AutocompleteGroupUl = styled('ul', {
397
396
  });
398
397
  export { createFilterOptions };
399
398
  const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps, ref) {
400
- var _slotProps$clearIndic, _slotProps$paper, _slotProps$popper, _slotProps$popupIndic;
401
399
  const props = useThemeProps({
402
400
  props: inProps,
403
401
  name: 'MuiAutocomplete'
@@ -489,17 +487,14 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps
489
487
  } = getInputProps();
490
488
  const {
491
489
  ref: externalListboxRef
492
- } = ListboxProps != null ? ListboxProps : {};
490
+ } = ListboxProps ?? {};
493
491
  const _getListboxProps = getListboxProps(),
494
492
  {
495
493
  ref: listboxRef
496
494
  } = _getListboxProps,
497
495
  otherListboxProps = _objectWithoutPropertiesLoose(_getListboxProps, _excluded2);
498
496
  const combinedListboxRef = useForkRef(listboxRef, externalListboxRef);
499
- const defaultGetOptionLabel = option => {
500
- var _option$label;
501
- return (_option$label = option.label) != null ? _option$label : option;
502
- };
497
+ const defaultGetOptionLabel = option => option.label ?? option;
503
498
  const getOptionLabel = getOptionLabelProp || defaultGetOptionLabel;
504
499
 
505
500
  // If you modify this, make sure to keep the `AutocompleteOwnerState` type in sync.
@@ -576,10 +571,10 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps
576
571
  inputValue
577
572
  }, ownerState);
578
573
  };
579
- const clearIndicatorSlotProps = (_slotProps$clearIndic = slotProps.clearIndicator) != null ? _slotProps$clearIndic : componentsProps.clearIndicator;
580
- const paperSlotProps = (_slotProps$paper = slotProps.paper) != null ? _slotProps$paper : componentsProps.paper;
581
- const popperSlotProps = (_slotProps$popper = slotProps.popper) != null ? _slotProps$popper : componentsProps.popper;
582
- const popupIndicatorSlotProps = (_slotProps$popupIndic = slotProps.popupIndicator) != null ? _slotProps$popupIndic : componentsProps.popupIndicator;
574
+ const clearIndicatorSlotProps = slotProps.clearIndicator ?? componentsProps.clearIndicator;
575
+ const paperSlotProps = slotProps.paper ?? componentsProps.paper;
576
+ const popperSlotProps = slotProps.popper ?? componentsProps.popper;
577
+ const popupIndicatorSlotProps = slotProps.popupIndicator ?? componentsProps.popupIndicator;
583
578
  const renderAutocompletePopperChildren = children => /*#__PURE__*/_jsx(AutocompletePopper, _extends({
584
579
  as: PopperComponent,
585
580
  disablePortal: disablePortal,
@@ -591,17 +586,17 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps
591
586
  anchorEl: anchorEl,
592
587
  open: popupOpen
593
588
  }, popperSlotProps, {
594
- className: clsx(classes.popper, popperSlotProps == null ? void 0 : popperSlotProps.className),
589
+ className: clsx(classes.popper, popperSlotProps?.className),
595
590
  children: /*#__PURE__*/_jsx(AutocompletePaper, _extends({
596
591
  ownerState: ownerState,
597
592
  as: PaperComponent
598
593
  }, paperSlotProps, {
599
- className: clsx(classes.paper, paperSlotProps == null ? void 0 : paperSlotProps.className),
594
+ className: clsx(classes.paper, paperSlotProps?.className),
600
595
  children: children
601
596
  }))
602
597
  }));
603
598
  let autocompletePopper = null;
604
- if (!loading && groupedOptions.length > 0) {
599
+ if (groupedOptions.length > 0) {
605
600
  autocompletePopper = renderAutocompletePopperChildren( /*#__PURE__*/_jsx(AutocompleteListbox, _extends({
606
601
  as: ListboxComponent,
607
602
  className: classes.listbox,
@@ -667,7 +662,7 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps
667
662
  title: clearText,
668
663
  ownerState: ownerState
669
664
  }, clearIndicatorSlotProps, {
670
- className: clsx(classes.clearIndicator, clearIndicatorSlotProps == null ? void 0 : clearIndicatorSlotProps.className),
665
+ className: clsx(classes.clearIndicator, clearIndicatorSlotProps?.className),
671
666
  children: clearIcon
672
667
  })) : null, hasPopupIcon ? /*#__PURE__*/_jsx(AutocompletePopupIndicator, _extends({}, getPopupIndicatorProps(), {
673
668
  disabled: disabled,
@@ -675,7 +670,7 @@ const Autocomplete = /*#__PURE__*/React.forwardRef(function Autocomplete(inProps
675
670
  title: popupOpen ? closeText : openText,
676
671
  ownerState: ownerState
677
672
  }, popupIndicatorSlotProps, {
678
- className: clsx(classes.popupIndicator, popupIndicatorSlotProps == null ? void 0 : popupIndicatorSlotProps.className),
673
+ className: clsx(classes.popupIndicator, popupIndicatorSlotProps?.className),
679
674
  children: popupIcon
680
675
  })) : null]
681
676
  })
@@ -9,16 +9,15 @@ import { isFragment } from 'react-is';
9
9
  import clsx from 'clsx';
10
10
  import chainPropTypes from '@mui/utils/chainPropTypes';
11
11
  import composeClasses from '@mui/utils/composeClasses';
12
- import styled from '../styles/styled';
13
- import useThemeProps from '../styles/useThemeProps';
12
+ import { styled, createUseThemeProps } from '../zero-styled';
14
13
  import Avatar, { avatarClasses } from '../Avatar';
15
14
  import avatarGroupClasses, { getAvatarGroupUtilityClass } from './avatarGroupClasses';
16
- import { jsx as _jsx } from "react/jsx-runtime";
17
- import { jsxs as _jsxs } from "react/jsx-runtime";
15
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
16
  const SPACINGS = {
19
17
  small: -16,
20
- medium: null
18
+ medium: -8
21
19
  };
20
+ const useThemeProps = createUseThemeProps('MuiAlert');
22
21
  const useUtilityClasses = ownerState => {
23
22
  const {
24
23
  classes
@@ -36,25 +35,20 @@ const AvatarGroupRoot = styled('div', {
36
35
  [`& .${avatarGroupClasses.avatar}`]: styles.avatar
37
36
  }, styles.root)
38
37
  })(({
39
- theme,
40
- ownerState
41
- }) => {
42
- const marginValue = ownerState.spacing && SPACINGS[ownerState.spacing] !== undefined ? SPACINGS[ownerState.spacing] : -ownerState.spacing;
43
- return {
44
- [`& .${avatarClasses.root}`]: {
45
- border: `2px solid ${(theme.vars || theme).palette.background.default}`,
46
- boxSizing: 'content-box',
47
- marginLeft: marginValue != null ? marginValue : -8,
48
- '&:last-child': {
49
- marginLeft: 0
50
- }
51
- },
52
- display: 'flex',
53
- flexDirection: 'row-reverse'
54
- };
55
- });
38
+ theme
39
+ }) => ({
40
+ display: 'flex',
41
+ flexDirection: 'row-reverse',
42
+ [`& .${avatarClasses.root}`]: {
43
+ border: `2px solid ${(theme.vars || theme).palette.background.default}`,
44
+ boxSizing: 'content-box',
45
+ marginLeft: 'var(--AvatarGroup-spacing, -8px)',
46
+ '&:last-child': {
47
+ marginLeft: 0
48
+ }
49
+ }
50
+ }));
56
51
  const AvatarGroup = /*#__PURE__*/React.forwardRef(function AvatarGroup(inProps, ref) {
57
- var _slotProps$additional;
58
52
  const props = useThemeProps({
59
53
  props: inProps,
60
54
  name: 'MuiAvatarGroup'
@@ -96,7 +90,8 @@ const AvatarGroup = /*#__PURE__*/React.forwardRef(function AvatarGroup(inProps,
96
90
  const maxAvatars = Math.min(children.length, clampedMax - 1);
97
91
  const extraAvatars = Math.max(totalAvatars - clampedMax, totalAvatars - maxAvatars, 0);
98
92
  const extraAvatarsElement = renderSurplus ? renderSurplus(extraAvatars) : `+${extraAvatars}`;
99
- const additionalAvatarSlotProps = (_slotProps$additional = slotProps.additionalAvatar) != null ? _slotProps$additional : componentsProps.additionalAvatar;
93
+ const additionalAvatarSlotProps = slotProps.additionalAvatar ?? componentsProps.additionalAvatar;
94
+ const marginValue = ownerState.spacing && SPACINGS[ownerState.spacing] !== undefined ? SPACINGS[ownerState.spacing] : -ownerState.spacing || -8;
100
95
  return /*#__PURE__*/_jsxs(AvatarGroupRoot, _extends({
101
96
  as: component,
102
97
  ownerState: ownerState,
@@ -106,7 +101,10 @@ const AvatarGroup = /*#__PURE__*/React.forwardRef(function AvatarGroup(inProps,
106
101
  children: [extraAvatars ? /*#__PURE__*/_jsx(Avatar, _extends({
107
102
  variant: variant
108
103
  }, additionalAvatarSlotProps, {
109
- className: clsx(classes.avatar, additionalAvatarSlotProps == null ? void 0 : additionalAvatarSlotProps.className),
104
+ className: clsx(classes.avatar, additionalAvatarSlotProps?.className),
105
+ style: _extends({
106
+ '--AvatarRoot-spacing': marginValue ? `${marginValue}px` : undefined
107
+ }, other.style),
110
108
  children: extraAvatarsElement
111
109
  })) : null, children.slice(0, maxAvatars).reverse().map(child => {
112
110
  return /*#__PURE__*/React.cloneElement(child, {
@@ -182,6 +180,10 @@ process.env.NODE_ENV !== "production" ? AvatarGroup.propTypes /* remove-proptype
182
180
  * @default 'medium'
183
181
  */
184
182
  spacing: PropTypes.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.number]),
183
+ /**
184
+ * @ignore
185
+ */
186
+ style: PropTypes.object,
185
187
  /**
186
188
  * The system prop that allows defining system overrides as well as additional CSS styles.
187
189
  */
@@ -5,10 +5,46 @@ import { TransitionProps } from '../transitions/transition';
5
5
  import { Theme } from '../styles';
6
6
  import { BackdropClasses } from './backdropClasses';
7
7
  import { OverridableComponent, OverrideProps } from '../OverridableComponent';
8
+ import { CreateSlotsAndSlotProps, SlotProps } from '../utils/types';
8
9
 
10
+ export interface BackdropSlots {
11
+ /**
12
+ * The component that renders the root.
13
+ * @default 'div'
14
+ */
15
+ root?: React.ElementType;
16
+ /**
17
+ * The component that renders the transition.
18
+ * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
19
+ * @default Fade
20
+ */
21
+ transition?: React.JSXElementConstructor<
22
+ TransitionProps & { children: React.ReactElement<any, any> }
23
+ >;
24
+ }
9
25
  export interface BackdropComponentsPropsOverrides {}
10
26
 
11
- export interface BackdropOwnProps extends Partial<Omit<FadeProps, 'children'>> {
27
+ export interface BackdropTransitionSlotPropsOverrides {}
28
+
29
+ export type BackdropSlotsAndSlotProps = CreateSlotsAndSlotProps<
30
+ BackdropSlots,
31
+ {
32
+ root: SlotProps<
33
+ React.ElementType<HTMLDivElement>,
34
+ BackdropComponentsPropsOverrides,
35
+ BackdropOwnerState
36
+ >;
37
+ transition: SlotProps<
38
+ React.JSXElementConstructor<TransitionProps>,
39
+ BackdropTransitionSlotPropsOverrides,
40
+ BackdropOwnerState
41
+ >;
42
+ }
43
+ >;
44
+
45
+ export interface BackdropOwnProps
46
+ extends Partial<Omit<FadeProps, 'children'>>,
47
+ BackdropSlotsAndSlotProps {
12
48
  /**
13
49
  * The content of the component.
14
50
  */
@@ -50,27 +86,6 @@ export interface BackdropOwnProps extends Partial<Omit<FadeProps, 'children'>> {
50
86
  * If `true`, the component is shown.
51
87
  */
52
88
  open: boolean;
53
- /**
54
- * The extra props for the slot components.
55
- * You can override the existing props or add new ones.
56
- *
57
- * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
58
- *
59
- * @default {}
60
- */
61
- slotProps?: {
62
- root?: React.HTMLAttributes<HTMLDivElement> & BackdropComponentsPropsOverrides;
63
- };
64
- /**
65
- * The components used for each slot inside.
66
- *
67
- * This prop is an alias for the `components` prop, which will be deprecated in the future.
68
- *
69
- * @default {}
70
- */
71
- slots?: {
72
- root?: React.ElementType;
73
- };
74
89
  /**
75
90
  * The system prop that allows defining system overrides as well as additional CSS styles.
76
91
  */
@@ -84,6 +99,7 @@ export interface BackdropOwnProps extends Partial<Omit<FadeProps, 'children'>> {
84
99
  * The component used for the transition.
85
100
  * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
86
101
  * @default Fade
102
+ * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/).
87
103
  */
88
104
  TransitionComponent?: React.JSXElementConstructor<
89
105
  TransitionProps & {
@@ -124,4 +140,6 @@ export type BackdropProps<
124
140
  component?: React.ElementType;
125
141
  };
126
142
 
143
+ export interface BackdropOwnerState extends BackdropProps {}
144
+
127
145
  export default Backdrop;
@@ -1,17 +1,18 @@
1
1
  'use client';
2
2
 
3
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
3
  import _extends from "@babel/runtime/helpers/esm/extends";
5
- const _excluded = ["children", "className", "component", "components", "componentsProps", "invisible", "open", "slotProps", "slots", "TransitionComponent", "transitionDuration"];
4
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
+ const _excluded = ["children", "className", "component", "invisible", "open", "components", "componentsProps", "slotProps", "slots", "TransitionComponent", "transitionDuration"];
6
6
  import * as React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import clsx from 'clsx';
9
9
  import composeClasses from '@mui/utils/composeClasses';
10
- import styled from '../styles/styled';
11
- import useThemeProps from '../styles/useThemeProps';
10
+ import { styled, createUseThemeProps } from '../zero-styled';
11
+ import useSlot from '../utils/useSlot';
12
12
  import Fade from '../Fade';
13
13
  import { getBackdropUtilityClass } from './backdropClasses';
14
14
  import { jsx as _jsx } from "react/jsx-runtime";
15
+ const useThemeProps = createUseThemeProps('MuiBackdrop');
15
16
  const useUtilityClasses = ownerState => {
16
17
  const {
17
18
  classes,
@@ -31,9 +32,7 @@ const BackdropRoot = styled('div', {
31
32
  } = props;
32
33
  return [styles.root, ownerState.invisible && styles.invisible];
33
34
  }
34
- })(({
35
- ownerState
36
- }) => _extends({
35
+ })({
37
36
  position: 'fixed',
38
37
  display: 'flex',
39
38
  alignItems: 'center',
@@ -43,12 +42,17 @@ const BackdropRoot = styled('div', {
43
42
  top: 0,
44
43
  left: 0,
45
44
  backgroundColor: 'rgba(0, 0, 0, 0.5)',
46
- WebkitTapHighlightColor: 'transparent'
47
- }, ownerState.invisible && {
48
- backgroundColor: 'transparent'
49
- }));
45
+ WebkitTapHighlightColor: 'transparent',
46
+ variants: [{
47
+ props: {
48
+ invisible: true
49
+ },
50
+ style: {
51
+ backgroundColor: 'transparent'
52
+ }
53
+ }]
54
+ });
50
55
  const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
51
- var _slotProps$root, _ref, _slots$root;
52
56
  const props = useThemeProps({
53
57
  props: inProps,
54
58
  name: 'MuiBackdrop'
@@ -57,13 +61,13 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
57
61
  children,
58
62
  className,
59
63
  component = 'div',
60
- components = {},
61
- componentsProps = {},
62
64
  invisible = false,
63
65
  open,
66
+ components = {},
67
+ componentsProps = {},
64
68
  slotProps = {},
65
69
  slots = {},
66
- TransitionComponent = Fade,
70
+ TransitionComponent: TransitionComponentProp,
67
71
  transitionDuration
68
72
  } = props,
69
73
  other = _objectWithoutPropertiesLoose(props, _excluded);
@@ -72,17 +76,34 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
72
76
  invisible
73
77
  });
74
78
  const classes = useUtilityClasses(ownerState);
75
- const rootSlotProps = (_slotProps$root = slotProps.root) != null ? _slotProps$root : componentsProps.root;
76
- return /*#__PURE__*/_jsx(TransitionComponent, _extends({
79
+ const backwardCompatibleSlots = _extends({
80
+ transition: TransitionComponentProp,
81
+ root: components.Root
82
+ }, slots);
83
+ const backwardCompatibleSlotProps = _extends({}, componentsProps, slotProps);
84
+ const externalForwardedProps = {
85
+ slots: backwardCompatibleSlots,
86
+ slotProps: backwardCompatibleSlotProps
87
+ };
88
+ const [RootSlot, rootProps] = useSlot('root', {
89
+ elementType: BackdropRoot,
90
+ externalForwardedProps,
91
+ className: clsx(classes.root, className),
92
+ ownerState
93
+ });
94
+ const [TransitionSlot, transitionProps] = useSlot('transition', {
95
+ elementType: Fade,
96
+ externalForwardedProps,
97
+ ownerState
98
+ });
99
+ delete transitionProps.ownerState;
100
+ return /*#__PURE__*/_jsx(TransitionSlot, _extends({
77
101
  in: open,
78
102
  timeout: transitionDuration
79
- }, other, {
80
- children: /*#__PURE__*/_jsx(BackdropRoot, _extends({
103
+ }, other, transitionProps, {
104
+ children: /*#__PURE__*/_jsx(RootSlot, _extends({
81
105
  "aria-hidden": true
82
- }, rootSlotProps, {
83
- as: (_ref = (_slots$root = slots.root) != null ? _slots$root : components.Root) != null ? _ref : component,
84
- className: clsx(classes.root, className, rootSlotProps == null ? void 0 : rootSlotProps.className),
85
- ownerState: _extends({}, ownerState, rootSlotProps == null ? void 0 : rootSlotProps.ownerState),
106
+ }, rootProps, {
86
107
  classes: classes,
87
108
  ref: ref,
88
109
  children: children
@@ -145,25 +166,20 @@ process.env.NODE_ENV !== "production" ? Backdrop.propTypes /* remove-proptypes *
145
166
  */
146
167
  open: PropTypes.bool.isRequired,
147
168
  /**
148
- * The extra props for the slot components.
149
- * You can override the existing props or add new ones.
150
- *
151
- * This prop is an alias for the `componentsProps` prop, which will be deprecated in the future.
152
- *
169
+ * The props used for each slot inside.
153
170
  * @default {}
154
171
  */
155
172
  slotProps: PropTypes.shape({
156
- root: PropTypes.object
173
+ root: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
174
+ transition: PropTypes.oneOfType([PropTypes.func, PropTypes.object])
157
175
  }),
158
176
  /**
159
177
  * The components used for each slot inside.
160
- *
161
- * This prop is an alias for the `components` prop, which will be deprecated in the future.
162
- *
163
178
  * @default {}
164
179
  */
165
180
  slots: PropTypes.shape({
166
- root: PropTypes.elementType
181
+ root: PropTypes.elementType,
182
+ transition: PropTypes.elementType
167
183
  }),
168
184
  /**
169
185
  * The system prop that allows defining system overrides as well as additional CSS styles.
@@ -173,6 +189,7 @@ process.env.NODE_ENV !== "production" ? Backdrop.propTypes /* remove-proptypes *
173
189
  * The component used for the transition.
174
190
  * [Follow this guide](/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
175
191
  * @default Fade
192
+ * @deprecated Use `slots.transition` instead. This prop will be removed in v7. [How to migrate](/material-ui/migration/migrating-from-deprecated-apis/).
176
193
  */
177
194
  TransitionComponent: PropTypes.elementType,
178
195
  /**