@mui/material 6.0.0-alpha.8 → 6.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 (629) hide show
  1. package/Accordion/Accordion.d.ts +3 -5
  2. package/Accordion/Accordion.js +3 -5
  3. package/AccordionActions/AccordionActions.d.ts +3 -3
  4. package/AccordionActions/AccordionActions.js +3 -3
  5. package/AccordionDetails/AccordionDetails.d.ts +3 -3
  6. package/AccordionDetails/AccordionDetails.js +3 -3
  7. package/AccordionSummary/AccordionSummary.d.ts +3 -3
  8. package/AccordionSummary/AccordionSummary.js +3 -3
  9. package/Alert/Alert.d.ts +16 -7
  10. package/Alert/Alert.js +3 -3
  11. package/AlertTitle/AlertTitle.d.ts +6 -6
  12. package/AlertTitle/AlertTitle.js +3 -3
  13. package/AppBar/AppBar.d.ts +3 -3
  14. package/AppBar/AppBar.js +5 -9
  15. package/Autocomplete/Autocomplete.d.ts +4 -9
  16. package/Autocomplete/Autocomplete.js +13 -26
  17. package/Avatar/Avatar.d.ts +2 -3
  18. package/Avatar/Avatar.js +6 -5
  19. package/AvatarGroup/AvatarGroup.d.ts +53 -20
  20. package/AvatarGroup/AvatarGroup.js +40 -21
  21. package/Backdrop/Backdrop.d.ts +5 -8
  22. package/Backdrop/Backdrop.js +5 -8
  23. package/Badge/Badge.d.ts +3 -3
  24. package/Badge/Badge.js +3 -3
  25. package/BottomNavigation/BottomNavigation.d.ts +2 -2
  26. package/BottomNavigation/BottomNavigation.js +3 -3
  27. package/BottomNavigationAction/BottomNavigationAction.d.ts +3 -3
  28. package/BottomNavigationAction/BottomNavigationAction.js +3 -3
  29. package/Box/Box.d.ts +2 -2
  30. package/Breadcrumbs/Breadcrumbs.d.ts +3 -3
  31. package/Breadcrumbs/Breadcrumbs.js +3 -3
  32. package/Button/Button.d.ts +5 -5
  33. package/Button/Button.js +3 -3
  34. package/ButtonBase/ButtonBase.d.ts +3 -3
  35. package/ButtonBase/ButtonBase.js +23 -52
  36. package/ButtonBase/TouchRipple.js +3 -3
  37. package/ButtonGroup/ButtonGroup.d.ts +2 -2
  38. package/ButtonGroup/ButtonGroup.js +3 -3
  39. package/CHANGELOG.md +407 -3
  40. package/Card/Card.d.ts +3 -3
  41. package/Card/Card.js +3 -3
  42. package/CardActionArea/CardActionArea.d.ts +3 -3
  43. package/CardActionArea/CardActionArea.js +3 -3
  44. package/CardActions/CardActions.d.ts +3 -3
  45. package/CardActions/CardActions.js +3 -3
  46. package/CardContent/CardContent.d.ts +2 -2
  47. package/CardContent/CardContent.js +3 -3
  48. package/CardHeader/CardHeader.d.ts +3 -3
  49. package/CardHeader/CardHeader.js +3 -3
  50. package/CardMedia/CardMedia.d.ts +2 -2
  51. package/CardMedia/CardMedia.js +3 -3
  52. package/Checkbox/Checkbox.d.ts +5 -5
  53. package/Checkbox/Checkbox.js +3 -3
  54. package/Chip/Chip.d.ts +5 -5
  55. package/Chip/Chip.js +3 -5
  56. package/CircularProgress/CircularProgress.d.ts +3 -3
  57. package/CircularProgress/CircularProgress.js +3 -3
  58. package/Collapse/Collapse.d.ts +6 -6
  59. package/Collapse/Collapse.js +3 -4
  60. package/Container/Container.d.ts +2 -2
  61. package/CssBaseline/CssBaseline.d.ts +3 -3
  62. package/CssBaseline/CssBaseline.js +66 -8
  63. package/DefaultPropsProvider/DefaultPropsProvider.d.ts +15 -0
  64. package/DefaultPropsProvider/DefaultPropsProvider.js +29 -0
  65. package/DefaultPropsProvider/index.d.ts +1 -0
  66. package/DefaultPropsProvider/index.js +1 -0
  67. package/DefaultPropsProvider/package.json +6 -0
  68. package/Dialog/Dialog.d.ts +4 -4
  69. package/Dialog/Dialog.js +4 -7
  70. package/DialogActions/DialogActions.d.ts +3 -3
  71. package/DialogActions/DialogActions.js +3 -3
  72. package/DialogContent/DialogContent.d.ts +3 -3
  73. package/DialogContent/DialogContent.js +3 -3
  74. package/DialogContentText/DialogContentText.d.ts +3 -3
  75. package/DialogContentText/DialogContentText.js +3 -3
  76. package/DialogTitle/DialogTitle.d.ts +3 -3
  77. package/DialogTitle/DialogTitle.js +3 -3
  78. package/Divider/Divider.d.ts +3 -3
  79. package/Divider/Divider.js +3 -3
  80. package/Drawer/Drawer.d.ts +4 -4
  81. package/Drawer/Drawer.js +3 -4
  82. package/Fab/Fab.d.ts +3 -3
  83. package/Fab/Fab.js +3 -3
  84. package/Fade/Fade.d.ts +4 -4
  85. package/Fade/Fade.js +1 -1
  86. package/FilledInput/FilledInput.d.ts +4 -4
  87. package/FilledInput/FilledInput.js +13 -11
  88. package/FilledInput/filledInputClasses.d.ts +1 -13
  89. package/FilledInput/filledInputClasses.js +1 -1
  90. package/FormControl/FormControl.d.ts +6 -6
  91. package/FormControl/FormControl.js +3 -3
  92. package/FormControlLabel/FormControlLabel.d.ts +5 -5
  93. package/FormControlLabel/FormControlLabel.js +3 -3
  94. package/FormGroup/FormGroup.d.ts +4 -4
  95. package/FormGroup/FormGroup.js +3 -3
  96. package/FormHelperText/FormHelperText.d.ts +2 -2
  97. package/FormHelperText/FormHelperText.js +3 -3
  98. package/FormLabel/FormLabel.d.ts +4 -4
  99. package/FormLabel/FormLabel.js +3 -3
  100. package/GlobalStyles/GlobalStyles.d.ts +3 -3
  101. package/Grid/Grid.d.ts +3 -2
  102. package/Grid/Grid.js +8 -13
  103. package/Grow/Grow.d.ts +6 -6
  104. package/Grow/Grow.js +1 -1
  105. package/Hidden/Hidden.d.ts +4 -2
  106. package/Hidden/Hidden.js +2 -0
  107. package/Hidden/hiddenCssClasses.d.ts +3 -0
  108. package/Icon/Icon.d.ts +3 -3
  109. package/Icon/Icon.js +3 -3
  110. package/IconButton/IconButton.d.ts +4 -4
  111. package/IconButton/IconButton.js +3 -5
  112. package/ImageList/ImageList.d.ts +2 -2
  113. package/ImageList/ImageList.js +3 -11
  114. package/ImageListItem/ImageListItem.d.ts +2 -2
  115. package/ImageListItem/ImageListItem.js +3 -3
  116. package/ImageListItemBar/ImageListItemBar.d.ts +3 -3
  117. package/ImageListItemBar/ImageListItemBar.js +3 -3
  118. package/InitColorSchemeScript/InitColorSchemeScript.d.ts +10 -0
  119. package/InitColorSchemeScript/InitColorSchemeScript.js +16 -0
  120. package/InitColorSchemeScript/index.d.ts +1 -0
  121. package/InitColorSchemeScript/index.js +1 -0
  122. package/InitColorSchemeScript/package.json +6 -0
  123. package/Input/Input.d.ts +4 -4
  124. package/Input/Input.js +5 -9
  125. package/InputAdornment/InputAdornment.d.ts +2 -2
  126. package/InputAdornment/InputAdornment.js +3 -5
  127. package/InputBase/InputBase.d.ts +5 -7
  128. package/InputBase/InputBase.js +31 -40
  129. package/InputLabel/InputLabel.d.ts +3 -3
  130. package/InputLabel/InputLabel.js +3 -3
  131. package/LinearProgress/LinearProgress.d.ts +3 -3
  132. package/LinearProgress/LinearProgress.js +3 -3
  133. package/Link/Link.d.ts +4 -4
  134. package/Link/Link.js +7 -18
  135. package/List/List.d.ts +3 -3
  136. package/List/List.js +3 -3
  137. package/ListItem/ListItem.d.ts +7 -15
  138. package/ListItem/ListItem.js +9 -17
  139. package/ListItemAvatar/ListItemAvatar.d.ts +3 -3
  140. package/ListItemAvatar/ListItemAvatar.js +3 -3
  141. package/ListItemButton/ListItemButton.d.ts +3 -3
  142. package/ListItemButton/ListItemButton.js +3 -3
  143. package/ListItemIcon/ListItemIcon.d.ts +3 -3
  144. package/ListItemIcon/ListItemIcon.js +3 -3
  145. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +7 -3
  146. package/ListItemSecondaryAction/ListItemSecondaryAction.js +5 -3
  147. package/ListItemText/ListItemText.d.ts +5 -3
  148. package/ListItemText/ListItemText.js +3 -3
  149. package/ListSubheader/ListSubheader.d.ts +2 -2
  150. package/ListSubheader/ListSubheader.js +3 -3
  151. package/Menu/Menu.d.ts +5 -5
  152. package/Menu/Menu.js +4 -7
  153. package/MenuItem/MenuItem.d.ts +3 -3
  154. package/MenuItem/MenuItem.js +3 -3
  155. package/MenuList/MenuList.d.ts +4 -4
  156. package/MobileStepper/MobileStepper.d.ts +4 -4
  157. package/MobileStepper/MobileStepper.js +3 -3
  158. package/Modal/Modal.d.ts +10 -12
  159. package/Modal/Modal.js +32 -24
  160. package/NativeSelect/NativeSelect.d.ts +4 -4
  161. package/NativeSelect/NativeSelectInput.js +0 -4
  162. package/OutlinedInput/OutlinedInput.d.ts +6 -4
  163. package/OutlinedInput/OutlinedInput.js +4 -5
  164. package/OverridableComponent.d.ts +2 -2
  165. package/Pagination/Pagination.d.ts +3 -3
  166. package/Pagination/Pagination.js +3 -3
  167. package/PaginationItem/PaginationItem.d.ts +2 -2
  168. package/PaginationItem/PaginationItem.js +3 -3
  169. package/Paper/Paper.d.ts +3 -3
  170. package/Paper/Paper.js +3 -4
  171. package/PigmentContainer/PigmentContainer.d.ts +55 -0
  172. package/PigmentContainer/PigmentContainer.js +98 -0
  173. package/PigmentContainer/index.d.ts +3 -0
  174. package/PigmentContainer/index.js +3 -0
  175. package/PigmentContainer/package.json +6 -0
  176. package/PigmentGrid/PigmentGrid.d.ts +108 -0
  177. package/PigmentGrid/PigmentGrid.js +149 -0
  178. package/PigmentGrid/index.d.ts +3 -0
  179. package/PigmentGrid/index.js +3 -0
  180. package/{useTouchRipple → PigmentGrid}/package.json +1 -1
  181. package/PigmentHidden/PigmentHidden.d.ts +97 -0
  182. package/PigmentHidden/PigmentHidden.js +278 -0
  183. package/PigmentHidden/index.d.ts +2 -0
  184. package/PigmentHidden/index.js +2 -0
  185. package/PigmentHidden/package.json +6 -0
  186. package/PigmentStack/PigmentStack.d.ts +51 -0
  187. package/PigmentStack/PigmentStack.js +81 -0
  188. package/PigmentStack/index.d.ts +3 -0
  189. package/PigmentStack/index.js +3 -0
  190. package/PigmentStack/package.json +6 -0
  191. package/Popover/Popover.d.ts +21 -26
  192. package/Popover/Popover.js +30 -29
  193. package/Popper/Popper.d.ts +8 -4
  194. package/Popper/Popper.js +14 -9
  195. package/Radio/Radio.d.ts +4 -4
  196. package/Radio/Radio.js +3 -3
  197. package/RadioGroup/RadioGroup.d.ts +4 -4
  198. package/Rating/Rating.d.ts +3 -3
  199. package/Rating/Rating.js +8 -15
  200. package/ScopedCssBaseline/ScopedCssBaseline.d.ts +2 -2
  201. package/ScopedCssBaseline/ScopedCssBaseline.js +24 -11
  202. package/Select/Select.d.ts +4 -4
  203. package/Skeleton/Skeleton.d.ts +2 -2
  204. package/Skeleton/Skeleton.js +3 -3
  205. package/Slide/Slide.d.ts +5 -5
  206. package/Slide/Slide.js +1 -1
  207. package/Slider/Slider.d.ts +3 -3
  208. package/Slider/Slider.js +4 -4
  209. package/Slider/SliderValueLabel.types.d.ts +1 -1
  210. package/Snackbar/Snackbar.d.ts +3 -3
  211. package/Snackbar/Snackbar.js +3 -4
  212. package/SnackbarContent/SnackbarContent.d.ts +4 -4
  213. package/SnackbarContent/SnackbarContent.js +3 -3
  214. package/SpeedDial/SpeedDial.d.ts +3 -5
  215. package/SpeedDial/SpeedDial.js +3 -6
  216. package/SpeedDialAction/SpeedDialAction.d.ts +4 -4
  217. package/SpeedDialAction/SpeedDialAction.js +3 -3
  218. package/SpeedDialIcon/SpeedDialIcon.d.ts +5 -3
  219. package/SpeedDialIcon/SpeedDialIcon.js +3 -3
  220. package/Stack/Stack.d.ts +2 -2
  221. package/Step/Step.d.ts +2 -2
  222. package/Step/Step.js +3 -3
  223. package/StepButton/StepButton.d.ts +3 -3
  224. package/StepButton/StepButton.js +3 -3
  225. package/StepConnector/StepConnector.d.ts +4 -4
  226. package/StepConnector/StepConnector.js +3 -3
  227. package/StepContent/StepContent.d.ts +3 -3
  228. package/StepContent/StepContent.js +3 -3
  229. package/StepIcon/StepIcon.d.ts +3 -3
  230. package/StepIcon/StepIcon.js +3 -3
  231. package/StepLabel/StepLabel.d.ts +3 -5
  232. package/StepLabel/StepLabel.js +3 -7
  233. package/Stepper/Stepper.d.ts +2 -2
  234. package/Stepper/Stepper.js +7 -5
  235. package/Stepper/stepperClasses.d.ts +2 -0
  236. package/Stepper/stepperClasses.js +1 -1
  237. package/SvgIcon/SvgIcon.d.ts +3 -3
  238. package/SvgIcon/SvgIcon.js +3 -3
  239. package/SwipeableDrawer/SwipeableDrawer.d.ts +3 -3
  240. package/SwipeableDrawer/SwipeableDrawer.js +3 -3
  241. package/Switch/Switch.d.ts +5 -5
  242. package/Switch/Switch.js +3 -3
  243. package/Tab/Tab.d.ts +4 -4
  244. package/Tab/Tab.js +14 -10
  245. package/Tab/tabClasses.d.ts +5 -1
  246. package/Tab/tabClasses.js +1 -1
  247. package/TabScrollButton/TabScrollButton.d.ts +3 -3
  248. package/TabScrollButton/TabScrollButton.js +3 -3
  249. package/Table/Table.d.ts +2 -2
  250. package/Table/Table.js +3 -3
  251. package/TableBody/TableBody.d.ts +2 -2
  252. package/TableBody/TableBody.js +3 -3
  253. package/TableCell/TableCell.d.ts +3 -3
  254. package/TableCell/TableCell.js +3 -3
  255. package/TableContainer/TableContainer.d.ts +2 -2
  256. package/TableContainer/TableContainer.js +3 -3
  257. package/TableFooter/TableFooter.d.ts +2 -2
  258. package/TableFooter/TableFooter.js +3 -3
  259. package/TableHead/TableHead.d.ts +2 -2
  260. package/TableHead/TableHead.js +3 -3
  261. package/TablePagination/TablePagination.d.ts +4 -4
  262. package/TablePagination/TablePagination.js +3 -3
  263. package/TableRow/TableRow.d.ts +2 -2
  264. package/TableRow/TableRow.js +3 -3
  265. package/TableSortLabel/TableSortLabel.d.ts +3 -3
  266. package/TableSortLabel/TableSortLabel.js +4 -4
  267. package/TableSortLabel/tableSortLabelClasses.d.ts +10 -2
  268. package/TableSortLabel/tableSortLabelClasses.js +1 -1
  269. package/Tabs/Tabs.d.ts +2 -2
  270. package/Tabs/Tabs.js +5 -14
  271. package/TextField/TextField.d.ts +11 -11
  272. package/TextField/TextField.js +3 -3
  273. package/ToggleButton/ToggleButton.d.ts +3 -3
  274. package/ToggleButton/ToggleButton.js +3 -3
  275. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +3 -3
  276. package/ToggleButtonGroup/ToggleButtonGroup.js +3 -3
  277. package/Toolbar/Toolbar.d.ts +2 -2
  278. package/Toolbar/Toolbar.js +3 -3
  279. package/Tooltip/Tooltip.d.ts +5 -7
  280. package/Tooltip/Tooltip.js +9 -22
  281. package/Typography/Typography.d.ts +3 -3
  282. package/Typography/Typography.js +4 -4
  283. package/Zoom/Zoom.d.ts +4 -4
  284. package/Zoom/Zoom.js +1 -1
  285. package/index.js +1 -1
  286. package/locale/index.d.ts +1 -0
  287. package/locale/index.js +74 -1
  288. package/modern/Accordion/Accordion.js +3 -5
  289. package/modern/AccordionActions/AccordionActions.js +3 -3
  290. package/modern/AccordionDetails/AccordionDetails.js +3 -3
  291. package/modern/AccordionSummary/AccordionSummary.js +3 -3
  292. package/modern/Alert/Alert.js +3 -3
  293. package/modern/AlertTitle/AlertTitle.js +3 -3
  294. package/modern/AppBar/AppBar.js +5 -9
  295. package/modern/Autocomplete/Autocomplete.js +13 -26
  296. package/modern/Avatar/Avatar.js +6 -5
  297. package/modern/AvatarGroup/AvatarGroup.js +40 -21
  298. package/modern/Backdrop/Backdrop.js +5 -8
  299. package/modern/Badge/Badge.js +3 -3
  300. package/modern/BottomNavigation/BottomNavigation.js +3 -3
  301. package/modern/BottomNavigationAction/BottomNavigationAction.js +3 -3
  302. package/modern/Breadcrumbs/Breadcrumbs.js +3 -3
  303. package/modern/Button/Button.js +3 -3
  304. package/modern/ButtonBase/ButtonBase.js +23 -52
  305. package/modern/ButtonBase/TouchRipple.js +3 -3
  306. package/modern/ButtonGroup/ButtonGroup.js +3 -3
  307. package/modern/Card/Card.js +3 -3
  308. package/modern/CardActionArea/CardActionArea.js +3 -3
  309. package/modern/CardActions/CardActions.js +3 -3
  310. package/modern/CardContent/CardContent.js +3 -3
  311. package/modern/CardHeader/CardHeader.js +3 -3
  312. package/modern/CardMedia/CardMedia.js +3 -3
  313. package/modern/Checkbox/Checkbox.js +3 -3
  314. package/modern/Chip/Chip.js +3 -5
  315. package/modern/CircularProgress/CircularProgress.js +3 -3
  316. package/modern/Collapse/Collapse.js +3 -4
  317. package/modern/CssBaseline/CssBaseline.js +66 -8
  318. package/modern/DefaultPropsProvider/DefaultPropsProvider.js +29 -0
  319. package/modern/DefaultPropsProvider/index.js +1 -0
  320. package/modern/Dialog/Dialog.js +4 -7
  321. package/modern/DialogActions/DialogActions.js +3 -3
  322. package/modern/DialogContent/DialogContent.js +3 -3
  323. package/modern/DialogContentText/DialogContentText.js +3 -3
  324. package/modern/DialogTitle/DialogTitle.js +3 -3
  325. package/modern/Divider/Divider.js +3 -3
  326. package/modern/Drawer/Drawer.js +3 -4
  327. package/modern/Fab/Fab.js +3 -3
  328. package/modern/Fade/Fade.js +1 -1
  329. package/modern/FilledInput/FilledInput.js +13 -11
  330. package/modern/FilledInput/filledInputClasses.js +1 -1
  331. package/modern/FormControl/FormControl.js +3 -3
  332. package/modern/FormControlLabel/FormControlLabel.js +3 -3
  333. package/modern/FormGroup/FormGroup.js +3 -3
  334. package/modern/FormHelperText/FormHelperText.js +3 -3
  335. package/modern/FormLabel/FormLabel.js +3 -3
  336. package/modern/Grid/Grid.js +8 -13
  337. package/modern/Grow/Grow.js +1 -1
  338. package/modern/Hidden/Hidden.js +2 -0
  339. package/modern/Icon/Icon.js +3 -3
  340. package/modern/IconButton/IconButton.js +3 -5
  341. package/modern/ImageList/ImageList.js +3 -11
  342. package/modern/ImageListItem/ImageListItem.js +3 -3
  343. package/modern/ImageListItemBar/ImageListItemBar.js +3 -3
  344. package/modern/InitColorSchemeScript/InitColorSchemeScript.js +16 -0
  345. package/modern/InitColorSchemeScript/index.js +1 -0
  346. package/modern/Input/Input.js +5 -9
  347. package/modern/InputAdornment/InputAdornment.js +3 -5
  348. package/modern/InputBase/InputBase.js +31 -40
  349. package/modern/InputLabel/InputLabel.js +3 -3
  350. package/modern/LinearProgress/LinearProgress.js +3 -3
  351. package/modern/Link/Link.js +7 -18
  352. package/modern/List/List.js +3 -3
  353. package/modern/ListItem/ListItem.js +9 -17
  354. package/modern/ListItemAvatar/ListItemAvatar.js +3 -3
  355. package/modern/ListItemButton/ListItemButton.js +3 -3
  356. package/modern/ListItemIcon/ListItemIcon.js +3 -3
  357. package/modern/ListItemSecondaryAction/ListItemSecondaryAction.js +5 -3
  358. package/modern/ListItemText/ListItemText.js +3 -3
  359. package/modern/ListSubheader/ListSubheader.js +3 -3
  360. package/modern/Menu/Menu.js +4 -7
  361. package/modern/MenuItem/MenuItem.js +3 -3
  362. package/modern/MobileStepper/MobileStepper.js +3 -3
  363. package/modern/Modal/Modal.js +32 -24
  364. package/modern/NativeSelect/NativeSelectInput.js +0 -4
  365. package/modern/OutlinedInput/OutlinedInput.js +4 -5
  366. package/modern/Pagination/Pagination.js +3 -3
  367. package/modern/PaginationItem/PaginationItem.js +3 -3
  368. package/modern/Paper/Paper.js +3 -4
  369. package/modern/PigmentContainer/PigmentContainer.js +98 -0
  370. package/modern/PigmentContainer/index.js +3 -0
  371. package/modern/PigmentGrid/PigmentGrid.js +149 -0
  372. package/modern/PigmentGrid/index.js +3 -0
  373. package/modern/PigmentHidden/PigmentHidden.js +278 -0
  374. package/modern/PigmentHidden/index.js +2 -0
  375. package/modern/PigmentStack/PigmentStack.js +81 -0
  376. package/modern/PigmentStack/index.js +3 -0
  377. package/modern/Popover/Popover.js +30 -29
  378. package/modern/Popper/Popper.js +14 -9
  379. package/modern/Radio/Radio.js +3 -3
  380. package/modern/Rating/Rating.js +8 -15
  381. package/modern/ScopedCssBaseline/ScopedCssBaseline.js +24 -11
  382. package/modern/Skeleton/Skeleton.js +3 -3
  383. package/modern/Slide/Slide.js +1 -1
  384. package/modern/Slider/Slider.js +4 -4
  385. package/modern/Snackbar/Snackbar.js +3 -4
  386. package/modern/SnackbarContent/SnackbarContent.js +3 -3
  387. package/modern/SpeedDial/SpeedDial.js +3 -6
  388. package/modern/SpeedDialAction/SpeedDialAction.js +3 -3
  389. package/modern/SpeedDialIcon/SpeedDialIcon.js +3 -3
  390. package/modern/Step/Step.js +3 -3
  391. package/modern/StepButton/StepButton.js +3 -3
  392. package/modern/StepConnector/StepConnector.js +3 -3
  393. package/modern/StepContent/StepContent.js +3 -3
  394. package/modern/StepIcon/StepIcon.js +3 -3
  395. package/modern/StepLabel/StepLabel.js +3 -7
  396. package/modern/Stepper/Stepper.js +7 -5
  397. package/modern/Stepper/stepperClasses.js +1 -1
  398. package/modern/SvgIcon/SvgIcon.js +3 -3
  399. package/modern/SwipeableDrawer/SwipeableDrawer.js +3 -3
  400. package/modern/Switch/Switch.js +3 -3
  401. package/modern/Tab/Tab.js +14 -10
  402. package/modern/Tab/tabClasses.js +1 -1
  403. package/modern/TabScrollButton/TabScrollButton.js +3 -3
  404. package/modern/Table/Table.js +3 -3
  405. package/modern/TableBody/TableBody.js +3 -3
  406. package/modern/TableCell/TableCell.js +3 -3
  407. package/modern/TableContainer/TableContainer.js +3 -3
  408. package/modern/TableFooter/TableFooter.js +3 -3
  409. package/modern/TableHead/TableHead.js +3 -3
  410. package/modern/TablePagination/TablePagination.js +3 -3
  411. package/modern/TableRow/TableRow.js +3 -3
  412. package/modern/TableSortLabel/TableSortLabel.js +4 -4
  413. package/modern/TableSortLabel/tableSortLabelClasses.js +1 -1
  414. package/modern/Tabs/Tabs.js +5 -14
  415. package/modern/TextField/TextField.js +3 -3
  416. package/modern/ToggleButton/ToggleButton.js +3 -3
  417. package/modern/ToggleButtonGroup/ToggleButtonGroup.js +3 -3
  418. package/modern/Toolbar/Toolbar.js +3 -3
  419. package/modern/Tooltip/Tooltip.js +9 -22
  420. package/modern/Typography/Typography.js +4 -4
  421. package/modern/Zoom/Zoom.js +1 -1
  422. package/modern/index.js +1 -1
  423. package/modern/locale/index.js +74 -1
  424. package/modern/styles/CssVarsProvider.js +35 -12
  425. package/modern/styles/createTheme.js +1 -1
  426. package/modern/styles/createTransitions.js +2 -2
  427. package/modern/styles/experimental_extendTheme.js +8 -354
  428. package/modern/styles/extendTheme.js +358 -0
  429. package/modern/styles/index.js +3 -2
  430. package/modern/styles/responsiveFontSizes.js +3 -0
  431. package/modern/styles/stringifyTheme.js +55 -0
  432. package/modern/useLazyRipple/index.js +3 -0
  433. package/modern/useLazyRipple/useLazyRipple.js +85 -0
  434. package/modern/usePagination/usePagination.js +1 -1
  435. package/modern/utils/index.js +0 -1
  436. package/modern/zero-styled/index.js +24 -5
  437. package/node/Accordion/Accordion.js +2 -4
  438. package/node/AccordionActions/AccordionActions.js +2 -2
  439. package/node/AccordionDetails/AccordionDetails.js +2 -2
  440. package/node/AccordionSummary/AccordionSummary.js +2 -2
  441. package/node/Alert/Alert.js +2 -2
  442. package/node/AlertTitle/AlertTitle.js +2 -2
  443. package/node/AppBar/AppBar.js +4 -8
  444. package/node/Autocomplete/Autocomplete.js +12 -25
  445. package/node/Avatar/Avatar.js +5 -4
  446. package/node/AvatarGroup/AvatarGroup.js +39 -20
  447. package/node/Backdrop/Backdrop.js +4 -7
  448. package/node/Badge/Badge.js +2 -2
  449. package/node/BottomNavigation/BottomNavigation.js +2 -2
  450. package/node/BottomNavigationAction/BottomNavigationAction.js +2 -2
  451. package/node/Breadcrumbs/Breadcrumbs.js +2 -2
  452. package/node/Button/Button.js +2 -2
  453. package/node/ButtonBase/ButtonBase.js +22 -51
  454. package/node/ButtonBase/TouchRipple.js +2 -2
  455. package/node/ButtonGroup/ButtonGroup.js +2 -2
  456. package/node/Card/Card.js +2 -2
  457. package/node/CardActionArea/CardActionArea.js +2 -2
  458. package/node/CardActions/CardActions.js +2 -2
  459. package/node/CardContent/CardContent.js +2 -2
  460. package/node/CardHeader/CardHeader.js +2 -2
  461. package/node/CardMedia/CardMedia.js +2 -2
  462. package/node/Checkbox/Checkbox.js +2 -2
  463. package/node/Chip/Chip.js +2 -4
  464. package/node/CircularProgress/CircularProgress.js +2 -2
  465. package/node/Collapse/Collapse.js +3 -4
  466. package/node/CssBaseline/CssBaseline.js +70 -10
  467. package/node/DefaultPropsProvider/DefaultPropsProvider.js +38 -0
  468. package/node/DefaultPropsProvider/index.js +20 -0
  469. package/node/Dialog/Dialog.js +4 -7
  470. package/node/DialogActions/DialogActions.js +2 -2
  471. package/node/DialogContent/DialogContent.js +2 -2
  472. package/node/DialogContentText/DialogContentText.js +2 -2
  473. package/node/DialogTitle/DialogTitle.js +2 -2
  474. package/node/Divider/Divider.js +2 -2
  475. package/node/Drawer/Drawer.js +3 -4
  476. package/node/Fab/Fab.js +2 -2
  477. package/node/Fade/Fade.js +2 -2
  478. package/node/FilledInput/FilledInput.js +12 -10
  479. package/node/FilledInput/filledInputClasses.js +1 -1
  480. package/node/FormControl/FormControl.js +2 -2
  481. package/node/FormControlLabel/FormControlLabel.js +2 -2
  482. package/node/FormGroup/FormGroup.js +2 -2
  483. package/node/FormHelperText/FormHelperText.js +2 -2
  484. package/node/FormLabel/FormLabel.js +2 -2
  485. package/node/Grid/Grid.js +8 -13
  486. package/node/Grow/Grow.js +2 -2
  487. package/node/Hidden/Hidden.js +2 -0
  488. package/node/Icon/Icon.js +2 -2
  489. package/node/IconButton/IconButton.js +2 -4
  490. package/node/ImageList/ImageList.js +2 -10
  491. package/node/ImageListItem/ImageListItem.js +2 -2
  492. package/node/ImageListItemBar/ImageListItemBar.js +2 -2
  493. package/node/InitColorSchemeScript/InitColorSchemeScript.js +25 -0
  494. package/node/InitColorSchemeScript/index.js +13 -0
  495. package/node/Input/Input.js +4 -8
  496. package/node/InputAdornment/InputAdornment.js +2 -4
  497. package/node/InputBase/InputBase.js +30 -39
  498. package/node/InputLabel/InputLabel.js +2 -2
  499. package/node/LinearProgress/LinearProgress.js +2 -2
  500. package/node/Link/Link.js +7 -18
  501. package/node/List/List.js +2 -2
  502. package/node/ListItem/ListItem.js +8 -16
  503. package/node/ListItemAvatar/ListItemAvatar.js +2 -2
  504. package/node/ListItemButton/ListItemButton.js +2 -2
  505. package/node/ListItemIcon/ListItemIcon.js +2 -2
  506. package/node/ListItemSecondaryAction/ListItemSecondaryAction.js +4 -2
  507. package/node/ListItemText/ListItemText.js +2 -2
  508. package/node/ListSubheader/ListSubheader.js +2 -2
  509. package/node/Menu/Menu.js +3 -6
  510. package/node/MenuItem/MenuItem.js +2 -2
  511. package/node/MobileStepper/MobileStepper.js +2 -2
  512. package/node/Modal/Modal.js +31 -24
  513. package/node/NativeSelect/NativeSelectInput.js +0 -4
  514. package/node/OutlinedInput/OutlinedInput.js +3 -4
  515. package/node/Pagination/Pagination.js +2 -2
  516. package/node/PaginationItem/PaginationItem.js +2 -2
  517. package/node/Paper/Paper.js +3 -4
  518. package/node/PigmentContainer/PigmentContainer.js +108 -0
  519. package/node/PigmentContainer/index.js +36 -0
  520. package/node/PigmentGrid/PigmentGrid.js +159 -0
  521. package/node/PigmentGrid/index.js +36 -0
  522. package/node/PigmentHidden/PigmentHidden.js +287 -0
  523. package/node/PigmentHidden/index.js +26 -0
  524. package/node/PigmentStack/PigmentStack.js +91 -0
  525. package/node/PigmentStack/index.js +36 -0
  526. package/node/Popover/Popover.js +29 -28
  527. package/node/Popper/Popper.js +15 -10
  528. package/node/Radio/Radio.js +2 -2
  529. package/node/Rating/Rating.js +6 -13
  530. package/node/ScopedCssBaseline/ScopedCssBaseline.js +27 -13
  531. package/node/Skeleton/Skeleton.js +2 -2
  532. package/node/Slide/Slide.js +2 -2
  533. package/node/Slider/Slider.js +3 -3
  534. package/node/Snackbar/Snackbar.js +3 -4
  535. package/node/SnackbarContent/SnackbarContent.js +2 -2
  536. package/node/SpeedDial/SpeedDial.js +3 -6
  537. package/node/SpeedDialAction/SpeedDialAction.js +2 -2
  538. package/node/SpeedDialIcon/SpeedDialIcon.js +2 -2
  539. package/node/Step/Step.js +2 -2
  540. package/node/StepButton/StepButton.js +2 -2
  541. package/node/StepConnector/StepConnector.js +2 -2
  542. package/node/StepContent/StepContent.js +2 -2
  543. package/node/StepIcon/StepIcon.js +2 -2
  544. package/node/StepLabel/StepLabel.js +2 -6
  545. package/node/Stepper/Stepper.js +6 -4
  546. package/node/Stepper/stepperClasses.js +1 -1
  547. package/node/SvgIcon/SvgIcon.js +2 -2
  548. package/node/SwipeableDrawer/SwipeableDrawer.js +4 -4
  549. package/node/Switch/Switch.js +2 -2
  550. package/node/Tab/Tab.js +13 -9
  551. package/node/Tab/tabClasses.js +1 -1
  552. package/node/TabScrollButton/TabScrollButton.js +2 -2
  553. package/node/Table/Table.js +2 -2
  554. package/node/TableBody/TableBody.js +2 -2
  555. package/node/TableCell/TableCell.js +2 -2
  556. package/node/TableContainer/TableContainer.js +2 -2
  557. package/node/TableFooter/TableFooter.js +2 -2
  558. package/node/TableHead/TableHead.js +2 -2
  559. package/node/TablePagination/TablePagination.js +2 -2
  560. package/node/TableRow/TableRow.js +2 -2
  561. package/node/TableSortLabel/TableSortLabel.js +3 -3
  562. package/node/TableSortLabel/tableSortLabelClasses.js +1 -1
  563. package/node/Tabs/Tabs.js +5 -14
  564. package/node/TextField/TextField.js +2 -2
  565. package/node/ToggleButton/ToggleButton.js +2 -2
  566. package/node/ToggleButtonGroup/ToggleButtonGroup.js +2 -2
  567. package/node/Toolbar/Toolbar.js +2 -2
  568. package/node/Tooltip/Tooltip.js +9 -22
  569. package/node/Typography/Typography.js +4 -4
  570. package/node/Zoom/Zoom.js +2 -2
  571. package/node/index.js +1 -1
  572. package/node/locale/index.js +75 -2
  573. package/node/styles/CssVarsProvider.js +41 -14
  574. package/node/styles/createTheme.js +1 -1
  575. package/node/styles/createTransitions.js +2 -2
  576. package/node/styles/experimental_extendTheme.js +9 -360
  577. package/node/styles/extendTheme.js +370 -0
  578. package/node/styles/index.js +18 -1
  579. package/node/styles/responsiveFontSizes.js +3 -0
  580. package/node/styles/stringifyTheme.js +62 -0
  581. package/node/{useTouchRipple → useLazyRipple}/index.js +2 -2
  582. package/node/useLazyRipple/useLazyRipple.js +104 -0
  583. package/node/usePagination/usePagination.js +1 -1
  584. package/node/utils/index.js +0 -7
  585. package/node/zero-styled/index.js +33 -5
  586. package/package.json +24 -8
  587. package/styles/CssVarsProvider.d.ts +5 -3
  588. package/styles/CssVarsProvider.js +35 -12
  589. package/styles/createTheme.js +1 -1
  590. package/styles/createTransitions.js +2 -2
  591. package/styles/experimental_extendTheme.js +8 -354
  592. package/styles/{experimental_extendTheme.d.ts → extendTheme.d.ts} +1 -2
  593. package/styles/extendTheme.js +358 -0
  594. package/styles/index.d.ts +3 -2
  595. package/styles/index.js +3 -2
  596. package/styles/responsiveFontSizes.d.ts +3 -4
  597. package/styles/responsiveFontSizes.js +3 -0
  598. package/styles/stringifyTheme.d.ts +20 -0
  599. package/styles/stringifyTheme.js +55 -0
  600. package/themeCssVarsAugmentation/index.d.ts +1 -1
  601. package/types/OverridableComponentAugmentation.d.ts +2 -2
  602. package/useLazyRipple/index.d.ts +1 -0
  603. package/useLazyRipple/index.js +3 -0
  604. package/useLazyRipple/package.json +6 -0
  605. package/useLazyRipple/useLazyRipple.d.ts +32 -0
  606. package/useLazyRipple/useLazyRipple.js +85 -0
  607. package/usePagination/usePagination.js +1 -1
  608. package/utils/index.d.ts +0 -1
  609. package/utils/index.js +0 -1
  610. package/zero-styled/index.d.ts +10 -2
  611. package/zero-styled/index.js +24 -5
  612. package/modern/useMediaQuery/useMediaQueryTheme.js +0 -8
  613. package/modern/useTouchRipple/index.js +0 -3
  614. package/modern/useTouchRipple/useTouchRipple.js +0 -94
  615. package/modern/utils/scrollLeft.js +0 -1
  616. package/modern/utils/useIsFocusVisible.js +0 -4
  617. package/node/useMediaQuery/useMediaQueryTheme.js +0 -13
  618. package/node/useTouchRipple/useTouchRipple.js +0 -105
  619. package/node/utils/scrollLeft.js +0 -18
  620. package/node/utils/useIsFocusVisible.js +0 -10
  621. package/useMediaQuery/useMediaQueryTheme.d.ts +0 -3
  622. package/useMediaQuery/useMediaQueryTheme.js +0 -8
  623. package/useTouchRipple/index.d.ts +0 -1
  624. package/useTouchRipple/index.js +0 -3
  625. package/useTouchRipple/useTouchRipple.d.ts +0 -28
  626. package/useTouchRipple/useTouchRipple.js +0 -94
  627. package/utils/scrollLeft.js +0 -1
  628. package/utils/useIsFocusVisible.d.ts +0 -3
  629. package/utils/useIsFocusVisible.js +0 -4
@@ -6,14 +6,15 @@ import clsx from 'clsx';
6
6
  import refType from '@mui/utils/refType';
7
7
  import elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef';
8
8
  import composeClasses from '@mui/utils/composeClasses';
9
- import { styled, createUseThemeProps } from '../zero-styled';
9
+ import isFocusVisible from '@mui/utils/isFocusVisible';
10
+ import { styled } from '../zero-styled';
11
+ import { useDefaultProps } from '../DefaultPropsProvider';
10
12
  import useForkRef from '../utils/useForkRef';
11
13
  import useEventCallback from '../utils/useEventCallback';
12
- import useIsFocusVisible from '../utils/useIsFocusVisible';
14
+ import useLazyRipple from '../useLazyRipple';
13
15
  import TouchRipple from './TouchRipple';
14
16
  import buttonBaseClasses, { getButtonBaseUtilityClass } from './buttonBaseClasses';
15
17
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
- const useThemeProps = createUseThemeProps('MuiButtonBase');
17
18
  const useUtilityClasses = ownerState => {
18
19
  const {
19
20
  disabled,
@@ -80,7 +81,7 @@ export const ButtonBaseRoot = styled('button', {
80
81
  * It contains a load of style reset and some focus/ripple logic.
81
82
  */
82
83
  const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, ref) {
83
- const props = useThemeProps({
84
+ const props = useDefaultProps({
84
85
  props: inProps,
85
86
  name: 'MuiButtonBase'
86
87
  });
@@ -117,14 +118,8 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
117
118
  ...other
118
119
  } = props;
119
120
  const buttonRef = React.useRef(null);
120
- const rippleRef = React.useRef(null);
121
- const handleRippleRef = useForkRef(rippleRef, touchRippleRef);
122
- const {
123
- isFocusVisibleRef,
124
- onFocus: handleFocusVisible,
125
- onBlur: handleBlurVisible,
126
- ref: focusVisibleRef
127
- } = useIsFocusVisible();
121
+ const ripple = useLazyRipple();
122
+ const handleRippleRef = useForkRef(ripple.ref, touchRippleRef);
128
123
  const [focusVisible, setFocusVisible] = React.useState(false);
129
124
  if (disabled && focusVisible) {
130
125
  setFocusVisible(false);
@@ -135,24 +130,20 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
135
130
  buttonRef.current.focus();
136
131
  }
137
132
  }), []);
138
- const [mountedState, setMountedState] = React.useState(false);
139
- React.useEffect(() => {
140
- setMountedState(true);
141
- }, []);
142
- const enableTouchRipple = mountedState && !disableRipple && !disabled;
133
+ const enableTouchRipple = ripple.shouldMount && !disableRipple && !disabled;
143
134
  React.useEffect(() => {
144
- if (focusVisible && focusRipple && !disableRipple && mountedState) {
145
- rippleRef.current.pulsate();
135
+ if (focusVisible && focusRipple && !disableRipple) {
136
+ ripple.pulsate();
146
137
  }
147
- }, [disableRipple, focusRipple, focusVisible, mountedState]);
138
+ }, [disableRipple, focusRipple, focusVisible, ripple]);
148
139
  function useRippleHandler(rippleAction, eventCallback, skipRippleAction = disableTouchRipple) {
149
140
  return useEventCallback(event => {
150
141
  if (eventCallback) {
151
142
  eventCallback(event);
152
143
  }
153
144
  const ignore = skipRippleAction;
154
- if (!ignore && rippleRef.current) {
155
- rippleRef.current[rippleAction](event);
145
+ if (!ignore) {
146
+ ripple[rippleAction](event);
156
147
  }
157
148
  return true;
158
149
  });
@@ -173,8 +164,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
173
164
  const handleTouchEnd = useRippleHandler('stop', onTouchEnd);
174
165
  const handleTouchMove = useRippleHandler('stop', onTouchMove);
175
166
  const handleBlur = useRippleHandler('stop', event => {
176
- handleBlurVisible(event);
177
- if (isFocusVisibleRef.current === false) {
167
+ if (!isFocusVisible(event.target)) {
178
168
  setFocusVisible(false);
179
169
  }
180
170
  if (onBlur) {
@@ -186,8 +176,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
186
176
  if (!buttonRef.current) {
187
177
  buttonRef.current = event.currentTarget;
188
178
  }
189
- handleFocusVisible(event);
190
- if (isFocusVisibleRef.current === true) {
179
+ if (isFocusVisible(event.target)) {
191
180
  setFocusVisible(true);
192
181
  if (onFocusVisible) {
193
182
  onFocusVisible(event);
@@ -201,17 +190,11 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
201
190
  const button = buttonRef.current;
202
191
  return component && component !== 'button' && !(button.tagName === 'A' && button.href);
203
192
  };
204
-
205
- /**
206
- * IE11 shim for https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat
207
- */
208
- const keydownRef = React.useRef(false);
209
193
  const handleKeyDown = useEventCallback(event => {
210
194
  // Check if key is already down to avoid repeats being counted as multiple activations
211
- if (focusRipple && !keydownRef.current && focusVisible && rippleRef.current && event.key === ' ') {
212
- keydownRef.current = true;
213
- rippleRef.current.stop(event, () => {
214
- rippleRef.current.start(event);
195
+ if (focusRipple && !event.repeat && focusVisible && event.key === ' ') {
196
+ ripple.stop(event, () => {
197
+ ripple.start(event);
215
198
  });
216
199
  }
217
200
  if (event.target === event.currentTarget && isNonNativeButton() && event.key === ' ') {
@@ -232,10 +215,9 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
232
215
  const handleKeyUp = useEventCallback(event => {
233
216
  // calling preventDefault in keyUp on a <button> will not dispatch a click event if Space is pressed
234
217
  // https://codesandbox.io/p/sandbox/button-keyup-preventdefault-dn7f0
235
- if (focusRipple && event.key === ' ' && rippleRef.current && focusVisible && !event.defaultPrevented) {
236
- keydownRef.current = false;
237
- rippleRef.current.stop(event, () => {
238
- rippleRef.current.pulsate(event);
218
+ if (focusRipple && event.key === ' ' && focusVisible && !event.defaultPrevented) {
219
+ ripple.stop(event, () => {
220
+ ripple.pulsate(event);
239
221
  });
240
222
  }
241
223
  if (onKeyUp) {
@@ -263,15 +245,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
263
245
  buttonProps['aria-disabled'] = disabled;
264
246
  }
265
247
  }
266
- const handleRef = useForkRef(ref, focusVisibleRef, buttonRef);
267
- if (process.env.NODE_ENV !== 'production') {
268
- // eslint-disable-next-line react-hooks/rules-of-hooks
269
- React.useEffect(() => {
270
- if (enableTouchRipple && !rippleRef.current) {
271
- console.error(['MUI: The `component` prop provided to ButtonBase is invalid.', 'Please make sure the children prop is rendered in this custom component.'].join('\n'));
272
- }
273
- }, [enableTouchRipple]);
274
- }
248
+ const handleRef = useForkRef(ref, buttonRef);
275
249
  const ownerState = {
276
250
  ...props,
277
251
  centerRipple,
@@ -306,10 +280,7 @@ const ButtonBase = /*#__PURE__*/React.forwardRef(function ButtonBase(inProps, re
306
280
  type: type,
307
281
  ...buttonProps,
308
282
  ...other,
309
- children: [children, enableTouchRipple ?
310
- /*#__PURE__*/
311
- /* TouchRipple is only needed client-side, x2 boost on the server. */
312
- _jsx(TouchRipple, {
283
+ children: [children, enableTouchRipple ? /*#__PURE__*/_jsx(TouchRipple, {
313
284
  ref: handleRippleRef,
314
285
  center: centerRipple,
315
286
  ...TouchRippleProps
@@ -5,11 +5,11 @@ import PropTypes from 'prop-types';
5
5
  import { TransitionGroup } from 'react-transition-group';
6
6
  import clsx from 'clsx';
7
7
  import useTimeout from '@mui/utils/useTimeout';
8
- import { keyframes, styled, createUseThemeProps } from '../zero-styled';
8
+ import { keyframes, styled } from '../zero-styled';
9
+ import { useDefaultProps } from '../DefaultPropsProvider';
9
10
  import Ripple from './Ripple';
10
11
  import touchRippleClasses from './touchRippleClasses';
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
- const useThemeProps = createUseThemeProps('MuiTouchRipple');
13
13
  const DURATION = 550;
14
14
  export const DELAY_RIPPLE = 80;
15
15
  const enterKeyframe = keyframes`
@@ -124,7 +124,7 @@ export const TouchRippleRipple = styled(Ripple, {
124
124
  * TODO v5: Make private
125
125
  */
126
126
  const TouchRipple = /*#__PURE__*/React.forwardRef(function TouchRipple(inProps, ref) {
127
- const props = useThemeProps({
127
+ const props = useDefaultProps({
128
128
  props: inProps,
129
129
  name: 'MuiTouchRipple'
130
130
  });
@@ -7,12 +7,12 @@ import composeClasses from '@mui/utils/composeClasses';
7
7
  import { alpha } from '@mui/system/colorManipulator';
8
8
  import getValidReactChildren from '@mui/utils/getValidReactChildren';
9
9
  import capitalize from '../utils/capitalize';
10
- import { styled, createUseThemeProps } from '../zero-styled';
10
+ import { styled } from '../zero-styled';
11
+ import { useDefaultProps } from '../DefaultPropsProvider';
11
12
  import buttonGroupClasses, { getButtonGroupUtilityClass } from './buttonGroupClasses';
12
13
  import ButtonGroupContext from './ButtonGroupContext';
13
14
  import ButtonGroupButtonContext from './ButtonGroupButtonContext';
14
15
  import { jsx as _jsx } from "react/jsx-runtime";
15
- const useThemeProps = createUseThemeProps('MuiButtonGroup');
16
16
  const overridesResolver = (props, styles) => {
17
17
  const {
18
18
  ownerState
@@ -232,7 +232,7 @@ const ButtonGroupRoot = styled('div', {
232
232
  }
233
233
  }));
234
234
  const ButtonGroup = /*#__PURE__*/React.forwardRef(function ButtonGroup(inProps, ref) {
235
- const props = useThemeProps({
235
+ const props = useDefaultProps({
236
236
  props: inProps,
237
237
  name: 'MuiButtonGroup'
238
238
  });
@@ -5,11 +5,11 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import chainPropTypes from '@mui/utils/chainPropTypes';
7
7
  import composeClasses from '@mui/utils/composeClasses';
8
- import { styled, createUseThemeProps } from '../zero-styled';
8
+ import { styled } from '../zero-styled';
9
+ import { useDefaultProps } from '../DefaultPropsProvider';
9
10
  import Paper from '../Paper';
10
11
  import { getCardUtilityClass } from './cardClasses';
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
- const useThemeProps = createUseThemeProps('MuiCard');
13
13
  const useUtilityClasses = ownerState => {
14
14
  const {
15
15
  classes
@@ -27,7 +27,7 @@ const CardRoot = styled(Paper, {
27
27
  overflow: 'hidden'
28
28
  });
29
29
  const Card = /*#__PURE__*/React.forwardRef(function Card(inProps, ref) {
30
- const props = useThemeProps({
30
+ const props = useDefaultProps({
31
31
  props: inProps,
32
32
  name: 'MuiCard'
33
33
  });
@@ -4,11 +4,11 @@ import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
- import { styled, createUseThemeProps } from '../zero-styled';
7
+ import { styled } from '../zero-styled';
8
+ import { useDefaultProps } from '../DefaultPropsProvider';
8
9
  import cardActionAreaClasses, { getCardActionAreaUtilityClass } from './cardActionAreaClasses';
9
10
  import ButtonBase from '../ButtonBase';
10
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
- const useThemeProps = createUseThemeProps('MuiCardActionArea');
12
12
  const useUtilityClasses = ownerState => {
13
13
  const {
14
14
  classes
@@ -63,7 +63,7 @@ const CardActionAreaFocusHighlight = styled('span', {
63
63
  })
64
64
  }));
65
65
  const CardActionArea = /*#__PURE__*/React.forwardRef(function CardActionArea(inProps, ref) {
66
- const props = useThemeProps({
66
+ const props = useDefaultProps({
67
67
  props: inProps,
68
68
  name: 'MuiCardActionArea'
69
69
  });
@@ -4,10 +4,10 @@ import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
- import { styled, createUseThemeProps } from '../zero-styled';
7
+ import { styled } from '../zero-styled';
8
+ import { useDefaultProps } from '../DefaultPropsProvider';
8
9
  import { getCardActionsUtilityClass } from './cardActionsClasses';
9
10
  import { jsx as _jsx } from "react/jsx-runtime";
10
- const useThemeProps = createUseThemeProps('MuiCardActions');
11
11
  const useUtilityClasses = ownerState => {
12
12
  const {
13
13
  classes,
@@ -43,7 +43,7 @@ const CardActionsRoot = styled('div', {
43
43
  }]
44
44
  });
45
45
  const CardActions = /*#__PURE__*/React.forwardRef(function CardActions(inProps, ref) {
46
- const props = useThemeProps({
46
+ const props = useDefaultProps({
47
47
  props: inProps,
48
48
  name: 'MuiCardActions'
49
49
  });
@@ -4,10 +4,10 @@ import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
- import { styled, createUseThemeProps } from '../zero-styled';
7
+ import { styled } from '../zero-styled';
8
+ import { useDefaultProps } from '../DefaultPropsProvider';
8
9
  import { getCardContentUtilityClass } from './cardContentClasses';
9
10
  import { jsx as _jsx } from "react/jsx-runtime";
10
- const useThemeProps = createUseThemeProps('MuiCardContent');
11
11
  const useUtilityClasses = ownerState => {
12
12
  const {
13
13
  classes
@@ -28,7 +28,7 @@ const CardContentRoot = styled('div', {
28
28
  }
29
29
  });
30
30
  const CardContent = /*#__PURE__*/React.forwardRef(function CardContent(inProps, ref) {
31
- const props = useThemeProps({
31
+ const props = useDefaultProps({
32
32
  props: inProps,
33
33
  name: 'MuiCardContent'
34
34
  });
@@ -5,10 +5,10 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
7
  import Typography from '../Typography';
8
- import { styled, createUseThemeProps } from '../zero-styled';
8
+ import { styled } from '../zero-styled';
9
+ import { useDefaultProps } from '../DefaultPropsProvider';
9
10
  import cardHeaderClasses, { getCardHeaderUtilityClass } from './cardHeaderClasses';
10
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
- const useThemeProps = createUseThemeProps('MuiCardHeader');
12
12
  const useUtilityClasses = ownerState => {
13
13
  const {
14
14
  classes
@@ -64,7 +64,7 @@ const CardHeaderContent = styled('div', {
64
64
  flex: '1 1 auto'
65
65
  });
66
66
  const CardHeader = /*#__PURE__*/React.forwardRef(function CardHeader(inProps, ref) {
67
- const props = useThemeProps({
67
+ const props = useDefaultProps({
68
68
  props: inProps,
69
69
  name: 'MuiCardHeader'
70
70
  });
@@ -5,10 +5,10 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import chainPropTypes from '@mui/utils/chainPropTypes';
7
7
  import composeClasses from '@mui/utils/composeClasses';
8
- import { styled, createUseThemeProps } from '../zero-styled';
8
+ import { styled } from '../zero-styled';
9
+ import { useDefaultProps } from '../DefaultPropsProvider';
9
10
  import { getCardMediaUtilityClass } from './cardMediaClasses';
10
11
  import { jsx as _jsx } from "react/jsx-runtime";
11
- const useThemeProps = createUseThemeProps('MuiCardMedia');
12
12
  const useUtilityClasses = ownerState => {
13
13
  const {
14
14
  classes,
@@ -57,7 +57,7 @@ const CardMediaRoot = styled('div', {
57
57
  const MEDIA_COMPONENTS = ['video', 'audio', 'picture', 'iframe', 'img'];
58
58
  const IMAGE_COMPONENTS = ['picture', 'img'];
59
59
  const CardMedia = /*#__PURE__*/React.forwardRef(function CardMedia(inProps, ref) {
60
- const props = useThemeProps({
60
+ const props = useDefaultProps({
61
61
  props: inProps,
62
62
  name: 'MuiCardMedia'
63
63
  });
@@ -13,9 +13,9 @@ import IndeterminateCheckBoxIcon from '../internal/svg-icons/IndeterminateCheckB
13
13
  import capitalize from '../utils/capitalize';
14
14
  import rootShouldForwardProp from '../styles/rootShouldForwardProp';
15
15
  import checkboxClasses, { getCheckboxUtilityClass } from './checkboxClasses';
16
- import { createUseThemeProps, styled } from '../zero-styled';
16
+ import { styled } from '../zero-styled';
17
+ import { useDefaultProps } from '../DefaultPropsProvider';
17
18
  import { jsx as _jsx } from "react/jsx-runtime";
18
- const useThemeProps = createUseThemeProps('MuiCheckbox');
19
19
  const useUtilityClasses = ownerState => {
20
20
  const {
21
21
  classes,
@@ -98,7 +98,7 @@ const defaultCheckedIcon = /*#__PURE__*/_jsx(CheckBoxIcon, {});
98
98
  const defaultIcon = /*#__PURE__*/_jsx(CheckBoxOutlineBlankIcon, {});
99
99
  const defaultIndeterminateIcon = /*#__PURE__*/_jsx(IndeterminateCheckBoxIcon, {});
100
100
  const Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(inProps, ref) {
101
- const props = useThemeProps({
101
+ const props = useDefaultProps({
102
102
  props: inProps,
103
103
  name: 'MuiCheckbox'
104
104
  });
@@ -10,10 +10,10 @@ import useForkRef from '../utils/useForkRef';
10
10
  import unsupportedProp from '../utils/unsupportedProp';
11
11
  import capitalize from '../utils/capitalize';
12
12
  import ButtonBase from '../ButtonBase';
13
- import { styled, createUseThemeProps } from '../zero-styled';
13
+ import { styled } from '../zero-styled';
14
+ import { useDefaultProps } from '../DefaultPropsProvider';
14
15
  import chipClasses, { getChipUtilityClass } from './chipClasses';
15
16
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
- const useThemeProps = createUseThemeProps('MuiChip');
17
17
  const useUtilityClasses = ownerState => {
18
18
  const {
19
19
  classes,
@@ -346,7 +346,7 @@ function isDeleteKeyboardEvent(keyboardEvent) {
346
346
  * Chips represent complex entities in small blocks, such as a contact.
347
347
  */
348
348
  const Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {
349
- const props = useThemeProps({
349
+ const props = useDefaultProps({
350
350
  props: inProps,
351
351
  name: 'MuiChip'
352
352
  });
@@ -396,8 +396,6 @@ const Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {
396
396
  if (event.currentTarget === event.target) {
397
397
  if (onDelete && isDeleteKeyboardEvent(event)) {
398
398
  onDelete(event);
399
- } else if (event.key === 'Escape' && chipRef.current) {
400
- chipRef.current.blur();
401
399
  }
402
400
  }
403
401
  if (onKeyUp) {
@@ -5,11 +5,11 @@ import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import chainPropTypes from '@mui/utils/chainPropTypes';
7
7
  import composeClasses from '@mui/utils/composeClasses';
8
- import { keyframes, css, createUseThemeProps, styled } from '../zero-styled';
8
+ import { keyframes, css, styled } from '../zero-styled';
9
+ import { useDefaultProps } from '../DefaultPropsProvider';
9
10
  import capitalize from '../utils/capitalize';
10
11
  import { getCircularProgressUtilityClass } from './circularProgressClasses';
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
- const useThemeProps = createUseThemeProps('MuiCircularProgress');
13
13
  const SIZE = 44;
14
14
  const circularRotateKeyframe = keyframes`
15
15
  0% {
@@ -151,7 +151,7 @@ const CircularProgressCircle = styled('circle', {
151
151
  * attribute to `true` on that region until it has finished loading.
152
152
  */
153
153
  const CircularProgress = /*#__PURE__*/React.forwardRef(function CircularProgress(inProps, ref) {
154
- const props = useThemeProps({
154
+ const props = useDefaultProps({
155
155
  props: inProps,
156
156
  name: 'MuiCircularProgress'
157
157
  });
@@ -7,14 +7,13 @@ import { Transition } from 'react-transition-group';
7
7
  import useTimeout from '@mui/utils/useTimeout';
8
8
  import elementTypeAcceptingRef from '@mui/utils/elementTypeAcceptingRef';
9
9
  import composeClasses from '@mui/utils/composeClasses';
10
- import { styled, createUseThemeProps } from '../zero-styled';
10
+ import { styled, useTheme } from '../zero-styled';
11
+ import { useDefaultProps } from '../DefaultPropsProvider';
11
12
  import { duration } from '../styles/createTransitions';
12
13
  import { getTransitionProps } from '../transitions/utils';
13
- import useTheme from '../styles/useTheme';
14
14
  import { useForkRef } from '../utils';
15
15
  import { getCollapseUtilityClass } from './collapseClasses';
16
16
  import { jsx as _jsx } from "react/jsx-runtime";
17
- const useThemeProps = createUseThemeProps('MuiCollapse');
18
17
  const useUtilityClasses = ownerState => {
19
18
  const {
20
19
  orientation,
@@ -119,7 +118,7 @@ const CollapseWrapperInner = styled('div', {
119
118
  * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
120
119
  */
121
120
  const Collapse = /*#__PURE__*/React.forwardRef(function Collapse(inProps, ref) {
122
- const props = useThemeProps({
121
+ const props = useDefaultProps({
123
122
  props: inProps,
124
123
  name: 'MuiCollapse'
125
124
  });
@@ -2,9 +2,12 @@
2
2
 
3
3
  import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
- import useThemeProps from '../styles/useThemeProps';
6
- import GlobalStyles from '../GlobalStyles';
5
+ import { globalCss } from '../zero-styled';
6
+ import { useDefaultProps } from '../DefaultPropsProvider';
7
+
8
+ // to determine if the global styles are static or dynamic
7
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ const isDynamicSupport = typeof globalCss({}) === 'function';
8
11
  export const html = (theme, enableColorScheme) => ({
9
12
  WebkitFontSmoothing: 'antialiased',
10
13
  // Antialiasing.
@@ -33,9 +36,20 @@ export const styles = (theme, enableColorScheme = false) => {
33
36
  const colorSchemeStyles = {};
34
37
  if (enableColorScheme && theme.colorSchemes) {
35
38
  Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
36
- colorSchemeStyles[theme.getColorSchemeSelector(key).replace(/\s*&/, '')] = {
37
- colorScheme: scheme.palette?.mode
38
- };
39
+ const selector = theme.getColorSchemeSelector(key);
40
+ if (selector.startsWith('@')) {
41
+ // for @media (prefers-color-scheme), we need to target :root
42
+ colorSchemeStyles[selector] = {
43
+ ':root': {
44
+ colorScheme: scheme.palette?.mode
45
+ }
46
+ };
47
+ } else {
48
+ // else, it's likely that the selector already target an element with a class or data attribute
49
+ colorSchemeStyles[selector.replace(/\s*&/, '')] = {
50
+ colorScheme: scheme.palette?.mode
51
+ };
52
+ }
39
53
  });
40
54
  }
41
55
  let defaultStyles = {
@@ -65,11 +79,50 @@ export const styles = (theme, enableColorScheme = false) => {
65
79
  return defaultStyles;
66
80
  };
67
81
 
82
+ // `ecs` stands for enableColorScheme. This is internal logic to make it work with Pigment CSS, so shorter is better.
83
+ const SELECTOR = 'mui-ecs';
84
+ const staticStyles = theme => {
85
+ const result = styles(theme, false);
86
+ const baseStyles = Array.isArray(result) ? result[0] : result;
87
+ if (!theme.vars && baseStyles) {
88
+ baseStyles.html[`:root:has(${SELECTOR})`] = {
89
+ colorScheme: theme.palette.mode
90
+ };
91
+ }
92
+ if (theme.colorSchemes) {
93
+ Object.entries(theme.colorSchemes).forEach(([key, scheme]) => {
94
+ const selector = theme.getColorSchemeSelector(key);
95
+ if (selector.startsWith('@')) {
96
+ // for @media (prefers-color-scheme), we need to target :root
97
+ baseStyles[selector] = {
98
+ [`:root:not(:has(.${SELECTOR}))`]: {
99
+ colorScheme: scheme.palette?.mode
100
+ }
101
+ };
102
+ } else {
103
+ // else, it's likely that the selector already target an element with a class or data attribute
104
+ baseStyles[selector.replace(/\s*&/, '')] = {
105
+ [`&:not(:has(.${SELECTOR}))`]: {
106
+ colorScheme: scheme.palette?.mode
107
+ }
108
+ };
109
+ }
110
+ });
111
+ }
112
+ return result;
113
+ };
114
+ const GlobalStyles = globalCss(isDynamicSupport ? ({
115
+ theme,
116
+ enableColorScheme
117
+ }) => styles(theme, enableColorScheme) : ({
118
+ theme
119
+ }) => staticStyles(theme));
120
+
68
121
  /**
69
122
  * Kickstart an elegant, consistent, and simple baseline to build upon.
70
123
  */
71
124
  function CssBaseline(inProps) {
72
- const props = useThemeProps({
125
+ const props = useDefaultProps({
73
126
  props: inProps,
74
127
  name: 'MuiCssBaseline'
75
128
  });
@@ -78,8 +131,13 @@ function CssBaseline(inProps) {
78
131
  enableColorScheme = false
79
132
  } = props;
80
133
  return /*#__PURE__*/_jsxs(React.Fragment, {
81
- children: [/*#__PURE__*/_jsx(GlobalStyles, {
82
- styles: theme => styles(theme, enableColorScheme)
134
+ children: [isDynamicSupport && /*#__PURE__*/_jsx(GlobalStyles, {
135
+ enableColorScheme: enableColorScheme
136
+ }), !isDynamicSupport && !enableColorScheme && /*#__PURE__*/_jsx("span", {
137
+ className: SELECTOR,
138
+ style: {
139
+ display: 'none'
140
+ }
83
141
  }), children]
84
142
  });
85
143
  }
@@ -0,0 +1,29 @@
1
+ 'use client';
2
+
3
+ import * as React from 'react';
4
+ import PropTypes from 'prop-types';
5
+ import SystemDefaultPropsProvider, { useDefaultProps as useSystemDefaultProps } from '@mui/system/DefaultPropsProvider';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ function DefaultPropsProvider(props) {
8
+ return /*#__PURE__*/_jsx(SystemDefaultPropsProvider, {
9
+ ...props
10
+ });
11
+ }
12
+ process.env.NODE_ENV !== "production" ? DefaultPropsProvider.propTypes /* remove-proptypes */ = {
13
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
14
+ // │ These PropTypes are generated from the TypeScript type definitions. │
15
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
16
+ // └─────────────────────────────────────────────────────────────────────┘
17
+ /**
18
+ * @ignore
19
+ */
20
+ children: PropTypes.node,
21
+ /**
22
+ * @ignore
23
+ */
24
+ value: PropTypes.object.isRequired
25
+ } : void 0;
26
+ export default DefaultPropsProvider;
27
+ export function useDefaultProps(params) {
28
+ return useSystemDefaultProps(params);
29
+ }
@@ -0,0 +1 @@
1
+ export { default, useDefaultProps } from './DefaultPropsProvider';
@@ -12,10 +12,9 @@ import Paper from '../Paper';
12
12
  import dialogClasses, { getDialogUtilityClass } from './dialogClasses';
13
13
  import DialogContext from './DialogContext';
14
14
  import Backdrop from '../Backdrop';
15
- import useTheme from '../styles/useTheme';
16
- import { styled, createUseThemeProps } from '../zero-styled';
15
+ import { styled, useTheme } from '../zero-styled';
16
+ import { useDefaultProps } from '../DefaultPropsProvider';
17
17
  import { jsx as _jsx } from "react/jsx-runtime";
18
- const useThemeProps = createUseThemeProps('MuiDialog');
19
18
  const DialogBackdrop = styled(Backdrop, {
20
19
  name: 'MuiDialog',
21
20
  slot: 'Backdrop',
@@ -106,8 +105,6 @@ const DialogPaper = styled(Paper, {
106
105
  }) => ({
107
106
  margin: 32,
108
107
  position: 'relative',
109
- overflowY: 'auto',
110
- // Fix IE11 issue, to remove at some point.
111
108
  '@media print': {
112
109
  overflowY: 'visible',
113
110
  boxShadow: 'none'
@@ -128,7 +125,7 @@ const DialogPaper = styled(Paper, {
128
125
  style: {
129
126
  display: 'inline-block',
130
127
  verticalAlign: 'middle',
131
- textAlign: 'left' // 'initial' doesn't work on IE11
128
+ textAlign: 'initial'
132
129
  }
133
130
  }, {
134
131
  props: ({
@@ -191,7 +188,7 @@ const DialogPaper = styled(Paper, {
191
188
  * Dialogs are overlaid modal paper based components with a backdrop.
192
189
  */
193
190
  const Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {
194
- const props = useThemeProps({
191
+ const props = useDefaultProps({
195
192
  props: inProps,
196
193
  name: 'MuiDialog'
197
194
  });
@@ -4,10 +4,10 @@ import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
6
  import composeClasses from '@mui/utils/composeClasses';
7
- import { styled, createUseThemeProps } from '../zero-styled';
7
+ import { styled } from '../zero-styled';
8
+ import { useDefaultProps } from '../DefaultPropsProvider';
8
9
  import { getDialogActionsUtilityClass } from './dialogActionsClasses';
9
10
  import { jsx as _jsx } from "react/jsx-runtime";
10
- const useThemeProps = createUseThemeProps('MuiDialogActions');
11
11
  const useUtilityClasses = ownerState => {
12
12
  const {
13
13
  classes,
@@ -45,7 +45,7 @@ const DialogActionsRoot = styled('div', {
45
45
  }]
46
46
  });
47
47
  const DialogActions = /*#__PURE__*/React.forwardRef(function DialogActions(inProps, ref) {
48
- const props = useThemeProps({
48
+ const props = useDefaultProps({
49
49
  props: inProps,
50
50
  name: 'MuiDialogActions'
51
51
  });