@mui/material 5.5.1 → 5.6.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 (357) hide show
  1. package/Accordion/accordionClasses.d.ts +18 -18
  2. package/AccordionActions/accordionActionsClasses.d.ts +10 -10
  3. package/AccordionDetails/accordionDetailsClasses.d.ts +8 -8
  4. package/AccordionSummary/accordionSummaryClasses.d.ts +22 -22
  5. package/Alert/Alert.d.ts +3 -1
  6. package/Alert/Alert.js +3 -1
  7. package/Alert/alertClasses.d.ts +44 -44
  8. package/AlertTitle/alertTitleClasses.d.ts +8 -8
  9. package/AppBar/AppBar.d.ts +3 -1
  10. package/AppBar/AppBar.js +3 -1
  11. package/AppBar/appBarClasses.d.ts +28 -28
  12. package/Autocomplete/Autocomplete.js +1 -1
  13. package/Autocomplete/autocompleteClasses.d.ts +54 -54
  14. package/Avatar/avatarClasses.d.ts +20 -20
  15. package/AvatarGroup/avatarGroupClasses.d.ts +10 -10
  16. package/Backdrop/Backdrop.d.ts +32 -15
  17. package/Backdrop/Backdrop.js +26 -20
  18. package/Backdrop/backdropClasses.d.ts +10 -0
  19. package/Backdrop/backdropClasses.js +6 -0
  20. package/Backdrop/index.d.ts +3 -0
  21. package/Backdrop/index.js +2 -1
  22. package/Badge/Badge.d.ts +23 -8
  23. package/Badge/Badge.js +46 -22
  24. package/Badge/badgeClasses.d.ts +24 -0
  25. package/Badge/badgeClasses.js +8 -0
  26. package/Badge/index.d.ts +3 -0
  27. package/Badge/index.js +2 -1
  28. package/BottomNavigation/BottomNavigation.js +0 -0
  29. package/BottomNavigation/bottomNavigationClasses.d.ts +8 -8
  30. package/BottomNavigationAction/bottomNavigationActionClasses.d.ts +14 -14
  31. package/Breadcrumbs/breadcrumbsClasses.d.ts +14 -14
  32. package/Button/Button.d.ts +3 -1
  33. package/Button/Button.js +104 -97
  34. package/Button/buttonClasses.d.ts +76 -76
  35. package/ButtonBase/ButtonBase.js +7 -7
  36. package/ButtonBase/buttonBaseClasses.d.ts +12 -12
  37. package/ButtonBase/touchRippleClasses.d.ts +20 -20
  38. package/ButtonGroup/ButtonGroup.d.ts +3 -1
  39. package/ButtonGroup/ButtonGroup.js +3 -1
  40. package/ButtonGroup/ButtonGroupContext.d.ts +18 -18
  41. package/ButtonGroup/buttonGroupClasses.d.ts +58 -58
  42. package/CHANGELOG.md +215 -0
  43. package/Card/Card.d.ts +1 -0
  44. package/Card/cardClasses.d.ts +8 -8
  45. package/CardActionArea/cardActionAreaClasses.d.ts +12 -12
  46. package/CardActions/cardActionsClasses.d.ts +10 -10
  47. package/CardContent/cardContentClasses.d.ts +8 -8
  48. package/CardHeader/cardHeaderClasses.d.ts +18 -18
  49. package/CardMedia/cardMediaClasses.d.ts +12 -12
  50. package/Checkbox/Checkbox.d.ts +3 -1
  51. package/Checkbox/Checkbox.js +3 -1
  52. package/Checkbox/checkboxClasses.d.ts +18 -18
  53. package/Chip/Chip.d.ts +3 -1
  54. package/Chip/Chip.js +3 -1
  55. package/Chip/chipClasses.d.ts +80 -80
  56. package/CircularProgress/CircularProgress.d.ts +3 -1
  57. package/CircularProgress/CircularProgress.js +3 -1
  58. package/CircularProgress/circularProgressClasses.d.ts +26 -26
  59. package/ClickAwayListener/index.d.ts +2 -2
  60. package/Collapse/collapseClasses.d.ts +18 -18
  61. package/Container/containerClasses.d.ts +22 -22
  62. package/Dialog/DialogContext.d.ts +6 -6
  63. package/Dialog/dialogClasses.d.ts +36 -36
  64. package/DialogActions/dialogActionsClasses.d.ts +10 -10
  65. package/DialogContent/dialogContentClasses.d.ts +10 -10
  66. package/DialogContentText/dialogContentTextClasses.d.ts +8 -8
  67. package/DialogTitle/dialogTitleClasses.d.ts +8 -8
  68. package/Divider/dividerClasses.d.ts +34 -34
  69. package/Drawer/drawerClasses.d.ts +30 -30
  70. package/Fab/Fab.d.ts +3 -1
  71. package/Fab/Fab.js +3 -1
  72. package/Fab/fabClasses.d.ts +26 -26
  73. package/FilledInput/FilledInput.js +3 -1
  74. package/FilledInput/filledInputClasses.d.ts +40 -40
  75. package/FormControl/FormControl.d.ts +3 -1
  76. package/FormControl/FormControl.js +3 -1
  77. package/FormControl/formControlClasses.d.ts +14 -14
  78. package/FormControlLabel/FormControlLabel.d.ts +1 -1
  79. package/FormControlLabel/FormControlLabel.js +14 -9
  80. package/FormControlLabel/formControlLabelClasses.d.ts +20 -20
  81. package/FormGroup/formGroupClasses.d.ts +12 -12
  82. package/FormHelperText/formHelperTextClasses.d.ts +22 -22
  83. package/FormLabel/FormLabel.d.ts +3 -1
  84. package/FormLabel/FormLabel.js +3 -1
  85. package/FormLabel/formLabelClasses.d.ts +22 -22
  86. package/Grid/gridClasses.d.ts +48 -48
  87. package/Grow/Grow.js +11 -5
  88. package/Icon/Icon.d.ts +3 -1
  89. package/Icon/Icon.js +3 -1
  90. package/Icon/iconClasses.d.ts +24 -24
  91. package/IconButton/IconButton.d.ts +3 -1
  92. package/IconButton/IconButton.js +3 -1
  93. package/IconButton/iconButtonClasses.d.ts +26 -26
  94. package/ImageList/imageListClasses.d.ts +16 -16
  95. package/ImageListItem/imageListItemClasses.d.ts +18 -18
  96. package/ImageListItemBar/imageListItemBarClasses.d.ts +30 -30
  97. package/Input/Input.js +3 -1
  98. package/Input/inputClasses.d.ts +34 -34
  99. package/InputAdornment/inputAdornmentClasses.d.ts +24 -24
  100. package/InputBase/InputBase.d.ts +3 -1
  101. package/InputBase/InputBase.js +3 -1
  102. package/InputBase/inputBaseClasses.d.ts +44 -44
  103. package/InputLabel/InputLabel.js +3 -1
  104. package/InputLabel/inputLabelClasses.d.ts +32 -32
  105. package/LinearProgress/LinearProgress.d.ts +3 -1
  106. package/LinearProgress/LinearProgress.js +3 -1
  107. package/LinearProgress/linearProgressClasses.d.ts +42 -42
  108. package/Link/Link.js +12 -5
  109. package/Link/linkClasses.d.ts +18 -18
  110. package/List/listClasses.d.ts +14 -14
  111. package/ListItem/listItemClasses.d.ts +30 -30
  112. package/ListItemAvatar/listItemAvatarClasses.d.ts +10 -10
  113. package/ListItemButton/ListItemButton.js +1 -0
  114. package/ListItemButton/listItemButtonClasses.d.ts +22 -22
  115. package/ListItemIcon/listItemIconClasses.d.ts +10 -10
  116. package/ListItemSecondaryAction/listItemSecondaryActionClasses.d.ts +10 -10
  117. package/ListItemText/listItemTextClasses.d.ts +18 -18
  118. package/ListSubheader/listSubheaderClasses.d.ts +18 -18
  119. package/Menu/menuClasses.d.ts +12 -12
  120. package/MenuItem/menuItemClasses.d.ts +20 -20
  121. package/MobileStepper/mobileStepperClasses.d.ts +22 -22
  122. package/NativeSelect/nativeSelectClasses.d.ts +32 -32
  123. package/OutlinedInput/OutlinedInput.js +3 -1
  124. package/OutlinedInput/outlinedInputClasses.d.ts +36 -36
  125. package/Pagination/Pagination.d.ts +2 -0
  126. package/Pagination/Pagination.js +2 -0
  127. package/Pagination/paginationClasses.d.ts +14 -14
  128. package/PaginationItem/PaginationItem.d.ts +2 -0
  129. package/PaginationItem/PaginationItem.js +2 -0
  130. package/PaginationItem/paginationItemClasses.d.ts +42 -42
  131. package/Paper/paperClasses.d.ts +39 -39
  132. package/Popover/popoverClasses.d.ts +10 -10
  133. package/Popper/Popper.d.ts +29 -17
  134. package/Popper/Popper.js +16 -6
  135. package/Radio/Radio.d.ts +3 -1
  136. package/Radio/Radio.js +3 -1
  137. package/Radio/radioClasses.d.ts +16 -16
  138. package/RadioGroup/RadioGroupContext.d.ts +11 -11
  139. package/RadioGroup/useRadioGroup.d.ts +4 -4
  140. package/Rating/ratingClasses.d.ts +40 -40
  141. package/ScopedCssBaseline/scopedCssBaselineClasses.d.ts +8 -8
  142. package/Select/selectClasses.d.ts +30 -30
  143. package/Skeleton/skeletonClasses.d.ts +24 -24
  144. package/Slider/Slider.d.ts +3 -1
  145. package/Slider/Slider.js +3 -1
  146. package/Snackbar/snackbarClasses.d.ts +20 -20
  147. package/SnackbarContent/snackbarContentClasses.d.ts +12 -12
  148. package/SpeedDial/speedDialClasses.d.ts +22 -22
  149. package/SpeedDialAction/speedDialActionClasses.d.ts +20 -20
  150. package/SpeedDialIcon/speedDialIconClasses.d.ts +18 -18
  151. package/Step/StepContext.d.ts +20 -20
  152. package/Step/stepClasses.d.ts +16 -16
  153. package/StepButton/stepButtonClasses.d.ts +14 -14
  154. package/StepConnector/stepConnectorClasses.d.ts +26 -26
  155. package/StepContent/stepContentClasses.d.ts +12 -12
  156. package/StepIcon/stepIconClasses.d.ts +16 -16
  157. package/StepLabel/stepLabelClasses.d.ts +28 -28
  158. package/Stepper/stepperClasses.d.ts +14 -14
  159. package/SvgIcon/SvgIcon.d.ts +3 -1
  160. package/SvgIcon/SvgIcon.js +3 -1
  161. package/SvgIcon/svgIconClasses.d.ts +24 -24
  162. package/Switch/Switch.d.ts +3 -1
  163. package/Switch/Switch.js +3 -1
  164. package/Switch/switchClasses.d.ts +32 -32
  165. package/Tab/tabClasses.d.ts +26 -26
  166. package/TabScrollButton/tabScrollButtonClasses.d.ts +12 -12
  167. package/Table/tableClasses.d.ts +10 -10
  168. package/TableBody/tableBodyClasses.d.ts +8 -8
  169. package/TableCell/tableCellClasses.d.ts +32 -32
  170. package/TableContainer/tableContainerClasses.d.ts +8 -8
  171. package/TableFooter/tableFooterClasses.d.ts +8 -8
  172. package/TableHead/tableHeadClasses.d.ts +8 -8
  173. package/TablePagination/tablePaginationClasses.d.ts +28 -28
  174. package/TableRow/tableRowClasses.d.ts +16 -16
  175. package/TableSortLabel/tableSortLabelClasses.d.ts +16 -16
  176. package/Tabs/tabsClasses.d.ts +32 -32
  177. package/TextField/TextField.d.ts +3 -2
  178. package/TextField/TextField.js +3 -1
  179. package/TextField/textFieldClasses.d.ts +8 -8
  180. package/ToggleButton/ToggleButton.d.ts +2 -0
  181. package/ToggleButton/ToggleButton.js +2 -0
  182. package/ToggleButton/toggleButtonClasses.d.ts +24 -24
  183. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +3 -1
  184. package/ToggleButtonGroup/ToggleButtonGroup.js +3 -1
  185. package/ToggleButtonGroup/toggleButtonGroupClasses.d.ts +18 -18
  186. package/Toolbar/toolbarClasses.d.ts +14 -14
  187. package/Tooltip/tooltipClasses.d.ts +30 -30
  188. package/Typography/typographyClasses.d.ts +50 -50
  189. package/Unstable_TrapFocus/index.d.ts +2 -2
  190. package/Unstable_TrapFocus/index.js +1 -1
  191. package/className/index.d.ts +8 -8
  192. package/darkScrollbar/index.d.ts +28 -28
  193. package/index.js +1 -1
  194. package/internal/switchBaseClasses.d.ts +12 -12
  195. package/legacy/Alert/Alert.js +3 -1
  196. package/legacy/AppBar/AppBar.js +3 -1
  197. package/legacy/Autocomplete/Autocomplete.js +1 -1
  198. package/legacy/Backdrop/Backdrop.js +27 -20
  199. package/legacy/Backdrop/backdropClasses.js +6 -0
  200. package/legacy/Backdrop/index.js +2 -1
  201. package/legacy/Badge/Badge.js +47 -22
  202. package/legacy/Badge/badgeClasses.js +8 -0
  203. package/legacy/Badge/index.js +2 -1
  204. package/legacy/BottomNavigation/BottomNavigation.js +0 -0
  205. package/legacy/Button/Button.js +33 -30
  206. package/legacy/ButtonBase/ButtonBase.js +11 -11
  207. package/legacy/ButtonGroup/ButtonGroup.js +3 -1
  208. package/legacy/Checkbox/Checkbox.js +3 -1
  209. package/legacy/Chip/Chip.js +3 -1
  210. package/legacy/CircularProgress/CircularProgress.js +3 -1
  211. package/legacy/Fab/Fab.js +3 -1
  212. package/legacy/FilledInput/FilledInput.js +3 -1
  213. package/legacy/FormControl/FormControl.js +3 -1
  214. package/legacy/FormControlLabel/FormControlLabel.js +14 -9
  215. package/legacy/FormLabel/FormLabel.js +3 -1
  216. package/legacy/Grow/Grow.js +11 -5
  217. package/legacy/Icon/Icon.js +3 -1
  218. package/legacy/IconButton/IconButton.js +3 -1
  219. package/legacy/Input/Input.js +3 -1
  220. package/legacy/InputBase/InputBase.js +3 -1
  221. package/legacy/InputLabel/InputLabel.js +3 -1
  222. package/legacy/LinearProgress/LinearProgress.js +3 -1
  223. package/legacy/Link/Link.js +12 -4
  224. package/legacy/ListItemButton/ListItemButton.js +1 -0
  225. package/legacy/OutlinedInput/OutlinedInput.js +3 -1
  226. package/legacy/Pagination/Pagination.js +2 -0
  227. package/legacy/PaginationItem/PaginationItem.js +2 -0
  228. package/legacy/Popper/Popper.js +18 -6
  229. package/legacy/Radio/Radio.js +3 -1
  230. package/legacy/Slider/Slider.js +3 -1
  231. package/legacy/SvgIcon/SvgIcon.js +3 -1
  232. package/legacy/Switch/Switch.js +3 -1
  233. package/legacy/TextField/TextField.js +3 -1
  234. package/legacy/ToggleButton/ToggleButton.js +2 -0
  235. package/legacy/ToggleButtonGroup/ToggleButtonGroup.js +3 -1
  236. package/legacy/Unstable_TrapFocus/index.js +1 -1
  237. package/legacy/index.js +1 -1
  238. package/legacy/locale/index.js +115 -111
  239. package/legacy/styles/CssVarsProvider.js +31 -0
  240. package/legacy/styles/experimental_extendTheme.js +96 -0
  241. package/legacy/styles/index.js +3 -1
  242. package/locale/index.d.ts +71 -71
  243. package/locale/index.js +6 -3
  244. package/modern/Alert/Alert.js +3 -1
  245. package/modern/AppBar/AppBar.js +3 -1
  246. package/modern/Autocomplete/Autocomplete.js +1 -1
  247. package/modern/Backdrop/Backdrop.js +25 -19
  248. package/modern/Backdrop/backdropClasses.js +6 -0
  249. package/modern/Backdrop/index.js +2 -1
  250. package/modern/Badge/Badge.js +43 -19
  251. package/modern/Badge/badgeClasses.js +8 -0
  252. package/modern/Badge/index.js +2 -1
  253. package/modern/BottomNavigation/BottomNavigation.js +0 -0
  254. package/modern/Button/Button.js +32 -29
  255. package/modern/ButtonBase/ButtonBase.js +7 -7
  256. package/modern/ButtonGroup/ButtonGroup.js +3 -1
  257. package/modern/Checkbox/Checkbox.js +3 -1
  258. package/modern/Chip/Chip.js +3 -1
  259. package/modern/CircularProgress/CircularProgress.js +3 -1
  260. package/modern/Fab/Fab.js +3 -1
  261. package/modern/FilledInput/FilledInput.js +3 -1
  262. package/modern/FormControl/FormControl.js +3 -1
  263. package/modern/FormControlLabel/FormControlLabel.js +14 -9
  264. package/modern/FormLabel/FormLabel.js +3 -1
  265. package/modern/Grow/Grow.js +11 -5
  266. package/modern/Icon/Icon.js +3 -1
  267. package/modern/IconButton/IconButton.js +3 -1
  268. package/modern/Input/Input.js +3 -1
  269. package/modern/InputBase/InputBase.js +3 -1
  270. package/modern/InputLabel/InputLabel.js +3 -1
  271. package/modern/LinearProgress/LinearProgress.js +3 -1
  272. package/modern/Link/Link.js +12 -5
  273. package/modern/ListItemButton/ListItemButton.js +1 -0
  274. package/modern/OutlinedInput/OutlinedInput.js +3 -1
  275. package/modern/Pagination/Pagination.js +2 -0
  276. package/modern/PaginationItem/PaginationItem.js +2 -0
  277. package/modern/Popper/Popper.js +16 -6
  278. package/modern/Radio/Radio.js +3 -1
  279. package/modern/Slider/Slider.js +3 -1
  280. package/modern/SvgIcon/SvgIcon.js +3 -1
  281. package/modern/Switch/Switch.js +3 -1
  282. package/modern/TextField/TextField.js +3 -1
  283. package/modern/ToggleButton/ToggleButton.js +2 -0
  284. package/modern/ToggleButtonGroup/ToggleButtonGroup.js +3 -1
  285. package/modern/Unstable_TrapFocus/index.js +1 -1
  286. package/modern/index.js +1 -1
  287. package/modern/locale/index.js +6 -3
  288. package/modern/styles/CssVarsProvider.js +28 -0
  289. package/modern/styles/experimental_extendTheme.js +89 -0
  290. package/modern/styles/index.js +3 -1
  291. package/node/Alert/Alert.js +3 -1
  292. package/node/AppBar/AppBar.js +3 -1
  293. package/node/Autocomplete/Autocomplete.js +1 -1
  294. package/node/Backdrop/Backdrop.js +28 -23
  295. package/node/Backdrop/backdropClasses.js +17 -0
  296. package/node/Backdrop/index.js +17 -5
  297. package/node/Badge/Badge.js +56 -33
  298. package/node/Badge/badgeClasses.js +22 -0
  299. package/node/Badge/index.js +17 -5
  300. package/node/BottomNavigation/BottomNavigation.js +0 -0
  301. package/node/Button/Button.js +104 -97
  302. package/node/ButtonBase/ButtonBase.js +7 -7
  303. package/node/ButtonGroup/ButtonGroup.js +3 -1
  304. package/node/Checkbox/Checkbox.js +3 -1
  305. package/node/Chip/Chip.js +3 -1
  306. package/node/CircularProgress/CircularProgress.js +3 -1
  307. package/node/Fab/Fab.js +3 -1
  308. package/node/FilledInput/FilledInput.js +3 -1
  309. package/node/FormControl/FormControl.js +3 -1
  310. package/node/FormControlLabel/FormControlLabel.js +14 -9
  311. package/node/FormLabel/FormLabel.js +3 -1
  312. package/node/Grow/Grow.js +10 -4
  313. package/node/Icon/Icon.js +3 -1
  314. package/node/IconButton/IconButton.js +3 -1
  315. package/node/Input/Input.js +3 -1
  316. package/node/InputBase/InputBase.js +3 -1
  317. package/node/InputLabel/InputLabel.js +3 -1
  318. package/node/LinearProgress/LinearProgress.js +3 -1
  319. package/node/Link/Link.js +13 -5
  320. package/node/ListItemButton/ListItemButton.js +1 -0
  321. package/node/OutlinedInput/OutlinedInput.js +3 -1
  322. package/node/Pagination/Pagination.js +2 -0
  323. package/node/PaginationItem/PaginationItem.js +2 -0
  324. package/node/Popper/Popper.js +19 -8
  325. package/node/Radio/Radio.js +3 -1
  326. package/node/Slider/Slider.js +3 -1
  327. package/node/SvgIcon/SvgIcon.js +3 -1
  328. package/node/Switch/Switch.js +3 -1
  329. package/node/TextField/TextField.js +3 -1
  330. package/node/ToggleButton/ToggleButton.js +2 -0
  331. package/node/ToggleButtonGroup/ToggleButtonGroup.js +3 -1
  332. package/node/Unstable_TrapFocus/index.js +2 -2
  333. package/node/index.js +1 -1
  334. package/node/locale/index.js +6 -3
  335. package/node/styles/CssVarsProvider.js +41 -0
  336. package/node/styles/experimental_extendTheme.js +105 -0
  337. package/node/styles/index.js +58 -0
  338. package/package.json +7 -7
  339. package/styles/CssVarsProvider.d.ts +28 -0
  340. package/styles/CssVarsProvider.js +28 -0
  341. package/styles/createPalette.d.ts +26 -0
  342. package/styles/experimental_extendTheme.d.ts +90 -0
  343. package/styles/experimental_extendTheme.js +91 -0
  344. package/styles/index.d.ts +5 -0
  345. package/styles/index.js +3 -1
  346. package/transitions/index.d.ts +1 -1
  347. package/transitions/transition.d.ts +13 -13
  348. package/transitions/utils.d.ts +23 -23
  349. package/umd/material-ui.development.js +1314 -505
  350. package/umd/material-ui.production.min.js +21 -21
  351. package/useMediaQuery/useMediaQuery.d.ts +31 -31
  352. package/useTouchRipple/index.d.ts +1 -1
  353. package/useTouchRipple/useTouchRipple.d.ts +28 -28
  354. package/utils/getScrollbarSize.d.ts +2 -2
  355. package/utils/ownerDocument.d.ts +2 -2
  356. package/utils/ownerWindow.d.ts +2 -2
  357. package/utils/setRef.d.ts +2 -2
@@ -1,21 +1,25 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["children", "components", "componentsProps", "className", "invisible", "open", "transitionDuration", "TransitionComponent"];
3
+ const _excluded = ["children", "component", "components", "componentsProps", "className", "invisible", "open", "transitionDuration", "TransitionComponent"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
- import { isHostComponent } from '@mui/base';
7
- import BackdropUnstyled, { backdropUnstyledClasses } from '@mui/base/BackdropUnstyled';
6
+ import clsx from 'clsx';
7
+ import { unstable_composeClasses as composeClasses } from '@mui/base';
8
8
  import styled from '../styles/styled';
9
9
  import useThemeProps from '../styles/useThemeProps';
10
10
  import Fade from '../Fade';
11
+ import { getBackdropUtilityClass } from './backdropClasses';
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
- export const backdropClasses = backdropUnstyledClasses;
13
13
 
14
- const extendUtilityClasses = ownerState => {
14
+ const useUtilityClasses = ownerState => {
15
15
  const {
16
- classes
16
+ classes,
17
+ invisible
17
18
  } = ownerState;
18
- return classes;
19
+ const slots = {
20
+ root: ['root', invisible && 'invisible']
21
+ };
22
+ return composeClasses(slots, getBackdropUtilityClass, classes);
19
23
  };
20
24
 
21
25
  const BackdropRoot = styled('div', {
@@ -44,7 +48,7 @@ const BackdropRoot = styled('div', {
44
48
  backgroundColor: 'transparent'
45
49
  }));
46
50
  const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
47
- var _componentsProps$root;
51
+ var _components$Root, _componentsProps$root;
48
52
 
49
53
  const props = useThemeProps({
50
54
  props: inProps,
@@ -53,6 +57,7 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
53
57
 
54
58
  const {
55
59
  children,
60
+ component = 'div',
56
61
  components = {},
57
62
  componentsProps = {},
58
63
  className,
@@ -65,25 +70,20 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
65
70
  other = _objectWithoutPropertiesLoose(props, _excluded);
66
71
 
67
72
  const ownerState = _extends({}, props, {
73
+ component,
68
74
  invisible
69
75
  });
70
76
 
71
- const classes = extendUtilityClasses(ownerState);
77
+ const classes = useUtilityClasses(ownerState);
72
78
  return /*#__PURE__*/_jsx(TransitionComponent, _extends({
73
79
  in: open,
74
80
  timeout: transitionDuration
75
81
  }, other, {
76
- children: /*#__PURE__*/_jsx(BackdropUnstyled, {
77
- className: className,
78
- invisible: invisible,
79
- components: _extends({
80
- Root: BackdropRoot
81
- }, components),
82
- componentsProps: {
83
- root: _extends({}, componentsProps.root, (!components.Root || !isHostComponent(components.Root)) && {
84
- ownerState: _extends({}, (_componentsProps$root = componentsProps.root) == null ? void 0 : _componentsProps$root.ownerState)
85
- })
86
- },
82
+ children: /*#__PURE__*/_jsx(BackdropRoot, {
83
+ "aria-hidden": true,
84
+ as: (_components$Root = components.Root) != null ? _components$Root : component,
85
+ className: clsx(classes.root, className),
86
+ ownerState: _extends({}, ownerState, (_componentsProps$root = componentsProps.root) == null ? void 0 : _componentsProps$root.ownerState),
87
87
  classes: classes,
88
88
  ref: ref,
89
89
  children: children
@@ -113,6 +113,12 @@ process.env.NODE_ENV !== "production" ? Backdrop.propTypes
113
113
  */
114
114
  className: PropTypes.string,
115
115
 
116
+ /**
117
+ * The component used for the root node.
118
+ * Either a string to use a HTML element or a component.
119
+ */
120
+ component: PropTypes.elementType,
121
+
116
122
  /**
117
123
  * The components used for each slot inside the Backdrop.
118
124
  * Either a string to use a HTML element or a component.
@@ -0,0 +1,10 @@
1
+ export interface BackdropClasses {
2
+ /** Styles applied to the root element. */
3
+ root: string;
4
+ /** Styles applied to the root element if `invisible={true}`. */
5
+ invisible: string;
6
+ }
7
+ export declare type BackdropClassKey = keyof BackdropClasses;
8
+ export declare function getBackdropUtilityClass(slot: string): string;
9
+ declare const backdropClasses: BackdropClasses;
10
+ export default backdropClasses;
@@ -0,0 +1,6 @@
1
+ import { generateUtilityClass, generateUtilityClasses } from '@mui/base';
2
+ export function getBackdropUtilityClass(slot) {
3
+ return generateUtilityClass('MuiBackdrop', slot);
4
+ }
5
+ const backdropClasses = generateUtilityClasses('MuiBackdrop', ['root', 'invisible']);
6
+ export default backdropClasses;
@@ -1,2 +1,5 @@
1
1
  export { default } from './Backdrop';
2
2
  export * from './Backdrop';
3
+
4
+ export { default as backdropClasses } from './backdropClasses';
5
+ export * from './backdropClasses';
package/Backdrop/index.js CHANGED
@@ -1,2 +1,3 @@
1
1
  export { default } from './Backdrop';
2
- export * from './Backdrop';
2
+ export { default as backdropClasses } from './backdropClasses';
3
+ export * from './backdropClasses';
package/Badge/Badge.d.ts CHANGED
@@ -1,23 +1,37 @@
1
1
  import * as React from 'react';
2
2
  import { SxProps } from '@mui/system';
3
3
  import { OverridableStringUnion } from '@mui/types';
4
- import { ExtendBadgeUnstyledTypeMap, BadgeUnstyledTypeMap } from '@mui/base/BadgeUnstyled';
4
+ import { ExtendBadgeUnstyledTypeMap } from '@mui/base/BadgeUnstyled';
5
5
  import { Theme } from '../styles';
6
6
  import { OverridableComponent, OverrideProps } from '../OverridableComponent';
7
+ import { BadgeClasses } from './badgeClasses';
7
8
 
8
9
  export interface BadgePropsVariantOverrides {}
9
10
 
10
11
  export interface BadgePropsColorOverrides {}
11
12
 
13
+ export interface BadgeOrigin {
14
+ vertical: 'top' | 'bottom';
15
+ horizontal: 'left' | 'right';
16
+ }
17
+
12
18
  export type BadgeTypeMap<
13
19
  D extends React.ElementType = 'span',
14
20
  P = {},
15
21
  > = ExtendBadgeUnstyledTypeMap<{
16
22
  props: P & {
23
+ /**
24
+ * The anchor of the badge.
25
+ * @default {
26
+ * vertical: 'top',
27
+ * horizontal: 'right',
28
+ * }
29
+ */
30
+ anchorOrigin?: BadgeOrigin;
17
31
  /**
18
32
  * Override or extend the styles applied to the component.
19
33
  */
20
- classes?: BadgeUnstyledTypeMap['props']['classes'] & {
34
+ classes?: Partial<BadgeClasses> & {
21
35
  /** Styles applied to the badge `span` element if `color="primary"`. */
22
36
  colorPrimary?: string;
23
37
  /** Styles applied to the badge `span` element if `color="secondary"`. */
@@ -52,7 +66,13 @@ export type BadgeTypeMap<
52
66
  overlapCircular?: string;
53
67
  };
54
68
  /**
55
- * The color of the component. It supports those theme colors that make sense for this component.
69
+ * @ignore
70
+ */
71
+ className?: string;
72
+ /**
73
+ * The color of the component.
74
+ * It supports both default and custom theme colors, which can be added as shown in the
75
+ * [palette customization guide](https://mui.com/customization/palette/#adding-new-colors).
56
76
  * @default 'default'
57
77
  */
58
78
  color?: OverridableStringUnion<
@@ -83,7 +103,6 @@ type BadgeBadgeProps = NonNullable<BadgeTypeMap['props']['componentsProps']>['ba
83
103
  export const BadgeRoot: React.FC<BadgeRootProps>;
84
104
  export const BadgeMark: React.FC<BadgeBadgeProps>;
85
105
 
86
- export type BadgeClassKey = keyof NonNullable<BadgeTypeMap['props']['classes']>;
87
106
  /**
88
107
  *
89
108
  * Demos:
@@ -98,10 +117,6 @@ export type BadgeClassKey = keyof NonNullable<BadgeTypeMap['props']['classes']>;
98
117
  */
99
118
  declare const Badge: OverridableComponent<BadgeTypeMap>;
100
119
 
101
- export type BadgeClasses = Record<BadgeClassKey, string>;
102
-
103
- export const badgeClasses: BadgeClasses;
104
-
105
120
  export type BadgeProps<
106
121
  D extends React.ElementType = BadgeTypeMap['defaultComponent'],
107
122
  P = {},
package/Badge/Badge.js CHANGED
@@ -1,19 +1,17 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["anchorOrigin", "component", "components", "componentsProps", "overlap", "color", "invisible", "badgeContent", "showZero", "variant"];
3
+ const _excluded = ["anchorOrigin", "className", "component", "components", "componentsProps", "overlap", "color", "invisible", "max", "badgeContent", "showZero", "variant"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import clsx from 'clsx';
7
7
  import { usePreviousProps } from '@mui/utils';
8
- import { generateUtilityClasses } from '@mui/base';
9
- import BadgeUnstyled, { badgeUnstyledClasses, getBadgeUtilityClass } from '@mui/base/BadgeUnstyled';
8
+ import BadgeUnstyled from '@mui/base/BadgeUnstyled';
10
9
  import styled from '../styles/styled';
11
10
  import useThemeProps from '../styles/useThemeProps';
12
11
  import shouldSpreadAdditionalProps from '../utils/shouldSpreadAdditionalProps';
13
12
  import capitalize from '../utils/capitalize';
13
+ import badgeClasses, { getBadgeUtilityClass } from './badgeClasses';
14
14
  import { jsx as _jsx } from "react/jsx-runtime";
15
- export const badgeClasses = _extends({}, badgeUnstyledClasses, generateUtilityClasses('MuiBadge', ['colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'overlapRectangular', 'overlapCircular', // TODO: v6 remove the overlap value from these class keys
16
- 'anchorOriginTopLeftCircular', 'anchorOriginTopLeftRectangular', 'anchorOriginTopRightCircular', 'anchorOriginTopRightRectangular', 'anchorOriginBottomLeftCircular', 'anchorOriginBottomLeftRectangular', 'anchorOriginBottomRightCircular', 'anchorOriginBottomRightRectangular']));
17
15
  const RADIUS_STANDARD = 10;
18
16
  const RADIUS_DOT = 4;
19
17
 
@@ -21,12 +19,15 @@ const extendUtilityClasses = ownerState => {
21
19
  const {
22
20
  color,
23
21
  anchorOrigin,
22
+ invisible,
24
23
  overlap,
24
+ variant,
25
25
  classes = {}
26
26
  } = ownerState;
27
- return _extends({}, classes, {
28
- badge: clsx(classes.badge, getBadgeUtilityClass(`anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}${capitalize(overlap)}`), getBadgeUtilityClass(`overlap${capitalize(overlap)}`), color !== 'default' && [getBadgeUtilityClass(`color${capitalize(color)}`), classes[`color${capitalize(color)}`]])
29
- });
27
+ return {
28
+ root: clsx(classes.root, 'root'),
29
+ badge: clsx(classes.badge, getBadgeUtilityClass('badge'), getBadgeUtilityClass(variant), `anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}`, getBadgeUtilityClass(`anchorOrigin${capitalize(anchorOrigin.vertical)}${capitalize(anchorOrigin.horizontal)}${capitalize(overlap)}`), getBadgeUtilityClass(`overlap${capitalize(overlap)}`), color !== 'default' && [getBadgeUtilityClass(`color${capitalize(color)}`), classes[`color${capitalize(color)}`]], invisible && getBadgeUtilityClass('invisible'))
30
+ };
30
31
  };
31
32
 
32
33
  const BadgeRoot = styled('span', {
@@ -154,7 +155,7 @@ const BadgeBadge = styled('span', {
154
155
  })
155
156
  }));
156
157
  const Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {
157
- var _componentsProps$root, _componentsProps$badg;
158
+ var _componentsProps$root, _componentsProps$root2, _componentsProps$badg, _componentsProps$badg2;
158
159
 
159
160
  const props = useThemeProps({
160
161
  props: inProps,
@@ -166,12 +167,14 @@ const Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {
166
167
  vertical: 'top',
167
168
  horizontal: 'right'
168
169
  },
170
+ className,
169
171
  component = 'span',
170
172
  components = {},
171
173
  componentsProps = {},
172
174
  overlap: overlapProp = 'rectangular',
173
175
  color: colorProp = 'default',
174
176
  invisible: invisibleProp = false,
177
+ max,
175
178
  badgeContent: badgeContentProp,
176
179
  showZero = false,
177
180
  variant: variantProp = 'standard'
@@ -181,7 +184,8 @@ const Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {
181
184
  const prevProps = usePreviousProps({
182
185
  anchorOrigin: anchorOriginProp,
183
186
  color: colorProp,
184
- overlap: overlapProp
187
+ overlap: overlapProp,
188
+ variant: variantProp
185
189
  });
186
190
  let invisible = invisibleProp;
187
191
 
@@ -192,44 +196,57 @@ const Badge = /*#__PURE__*/React.forwardRef(function Badge(inProps, ref) {
192
196
  const {
193
197
  color = colorProp,
194
198
  overlap = overlapProp,
195
- anchorOrigin = anchorOriginProp
199
+ anchorOrigin = anchorOriginProp,
200
+ variant = variantProp
196
201
  } = invisible ? prevProps : props;
197
202
 
198
203
  const ownerState = _extends({}, props, {
199
204
  anchorOrigin,
200
205
  invisible,
201
206
  color,
202
- overlap
207
+ overlap,
208
+ variant
203
209
  });
204
210
 
205
211
  const classes = extendUtilityClasses(ownerState);
212
+ let displayValue;
213
+
214
+ if (variant !== 'dot') {
215
+ displayValue = badgeContentProp && Number(badgeContentProp) > max ? `${max}+` : badgeContentProp;
216
+ }
217
+
206
218
  return /*#__PURE__*/_jsx(BadgeUnstyled, _extends({
207
- anchorOrigin: anchorOrigin,
208
219
  invisible: invisibleProp,
209
- badgeContent: badgeContentProp,
220
+ badgeContent: displayValue,
210
221
  showZero: showZero,
211
- variant: variantProp
222
+ max: max
212
223
  }, other, {
213
224
  components: _extends({
214
225
  Root: BadgeRoot,
215
226
  Badge: BadgeBadge
216
227
  }, components),
228
+ className: clsx(className, classes.root, (_componentsProps$root = componentsProps.root) == null ? void 0 : _componentsProps$root.className),
217
229
  componentsProps: {
218
230
  root: _extends({}, componentsProps.root, shouldSpreadAdditionalProps(components.Root) && {
219
231
  as: component,
220
- ownerState: _extends({}, (_componentsProps$root = componentsProps.root) == null ? void 0 : _componentsProps$root.ownerState, {
232
+ ownerState: _extends({}, (_componentsProps$root2 = componentsProps.root) == null ? void 0 : _componentsProps$root2.ownerState, {
233
+ anchorOrigin,
221
234
  color,
222
- overlap
235
+ overlap,
236
+ variant
223
237
  })
224
238
  }),
225
- badge: _extends({}, componentsProps.badge, shouldSpreadAdditionalProps(components.Badge) && {
226
- ownerState: _extends({}, (_componentsProps$badg = componentsProps.badge) == null ? void 0 : _componentsProps$badg.ownerState, {
239
+ badge: _extends({}, componentsProps.badge, {
240
+ className: clsx(classes.badge, (_componentsProps$badg = componentsProps.badge) == null ? void 0 : _componentsProps$badg.className)
241
+ }, shouldSpreadAdditionalProps(components.Badge) && {
242
+ ownerState: _extends({}, (_componentsProps$badg2 = componentsProps.badge) == null ? void 0 : _componentsProps$badg2.ownerState, {
243
+ anchorOrigin,
227
244
  color,
228
- overlap
245
+ overlap,
246
+ variant
229
247
  })
230
248
  })
231
249
  },
232
- classes: classes,
233
250
  ref: ref
234
251
  }));
235
252
  });
@@ -269,7 +286,14 @@ process.env.NODE_ENV !== "production" ? Badge.propTypes
269
286
  classes: PropTypes.object,
270
287
 
271
288
  /**
272
- * The color of the component. It supports those theme colors that make sense for this component.
289
+ * @ignore
290
+ */
291
+ className: PropTypes.string,
292
+
293
+ /**
294
+ * The color of the component.
295
+ * It supports both default and custom theme colors, which can be added as shown in the
296
+ * [palette customization guide](https://mui.com/customization/palette/#adding-new-colors).
273
297
  * @default 'default'
274
298
  */
275
299
  color: PropTypes
@@ -0,0 +1,24 @@
1
+ export interface BadgeClasses {
2
+ /** Class name applied to the root element. */
3
+ root: string;
4
+ /** Class name applied to the badge `span` element. */
5
+ badge: string;
6
+ /** Class name applied to the badge `span` element if `variant="dot"`. */
7
+ dot: string;
8
+ /** Class name applied to the badge `span` element if `variant="standard"`. */
9
+ standard: string;
10
+ /** Class name applied to the badge `span` element if `anchorOrigin={{ 'top', 'right' }}`. */
11
+ anchorOriginTopRight: string;
12
+ /** Class name applied to the badge `span` element if `anchorOrigin={{ 'bottom', 'right' }}`. */
13
+ anchorOriginBottomRight: string;
14
+ /** Class name applied to the badge `span` element if `anchorOrigin={{ 'top', 'left' }}`. */
15
+ anchorOriginTopLeft: string;
16
+ /** Class name applied to the badge `span` element if `anchorOrigin={{ 'bottom', 'left' }}`. */
17
+ anchorOriginBottomLeft: string;
18
+ /** State class applied to the badge `span` element if `invisible={true}`. */
19
+ invisible: string;
20
+ }
21
+ export declare type BadgeClassKey = keyof BadgeClasses;
22
+ export declare function getBadgeUtilityClass(slot: string): string;
23
+ declare const badgeClasses: BadgeClasses;
24
+ export default badgeClasses;
@@ -0,0 +1,8 @@
1
+ import generateUtilityClasses from '@mui/base/generateUtilityClasses';
2
+ import generateUtilityClass from '@mui/base/generateUtilityClass';
3
+ export function getBadgeUtilityClass(slot) {
4
+ return generateUtilityClass('MuiBadge', slot);
5
+ }
6
+ const badgeClasses = generateUtilityClasses('MuiBadge', ['root', 'badge', 'dot', 'standard', 'anchorOriginTopRight', 'anchorOriginBottomRight', 'anchorOriginTopLeft', 'anchorOriginBottomLeft', 'invisible', 'colorError', 'colorInfo', 'colorPrimary', 'colorSecondary', 'colorSuccess', 'colorWarning', 'overlapRectangular', 'overlapCircular', // TODO: v6 remove the overlap value from these class keys
7
+ 'anchorOriginTopLeftCircular', 'anchorOriginTopLeftRectangular', 'anchorOriginTopRightCircular', 'anchorOriginTopRightRectangular', 'anchorOriginBottomLeftCircular', 'anchorOriginBottomLeftRectangular', 'anchorOriginBottomRightCircular', 'anchorOriginBottomRightRectangular']);
8
+ export default badgeClasses;
package/Badge/index.d.ts CHANGED
@@ -1,2 +1,5 @@
1
1
  export { default } from './Badge';
2
2
  export * from './Badge';
3
+
4
+ export { default as badgeClasses } from './badgeClasses';
5
+ export * from './badgeClasses';
package/Badge/index.js CHANGED
@@ -1,2 +1,3 @@
1
1
  export { default } from './Badge';
2
- export * from './Badge';
2
+ export { default as badgeClasses } from './badgeClasses';
3
+ export * from './badgeClasses';
File without changes
@@ -1,8 +1,8 @@
1
- export interface BottomNavigationClasses {
2
- /** Styles applied to the root element. */
3
- root: string;
4
- }
5
- export declare type BottomNavigationClassKey = keyof BottomNavigationClasses;
6
- export declare function getBottomNavigationUtilityClass(slot: string): string;
7
- declare const bottomNavigationClasses: BottomNavigationClasses;
8
- export default bottomNavigationClasses;
1
+ export interface BottomNavigationClasses {
2
+ /** Styles applied to the root element. */
3
+ root: string;
4
+ }
5
+ export declare type BottomNavigationClassKey = keyof BottomNavigationClasses;
6
+ export declare function getBottomNavigationUtilityClass(slot: string): string;
7
+ declare const bottomNavigationClasses: BottomNavigationClasses;
8
+ export default bottomNavigationClasses;
@@ -1,14 +1,14 @@
1
- export interface BottomNavigationActionClasses {
2
- /** Styles applied to the root element. */
3
- root: string;
4
- /** State class applied to the root element if selected. */
5
- selected: string;
6
- /** State class applied to the root element if `showLabel={false}` and not selected. */
7
- iconOnly: string;
8
- /** Styles applied to the label's span element. */
9
- label: string;
10
- }
11
- export declare type BottomNavigationActionClassKey = keyof BottomNavigationActionClasses;
12
- export declare function getBottomNavigationActionUtilityClass(slot: string): string;
13
- declare const bottomNavigationActionClasses: BottomNavigationActionClasses;
14
- export default bottomNavigationActionClasses;
1
+ export interface BottomNavigationActionClasses {
2
+ /** Styles applied to the root element. */
3
+ root: string;
4
+ /** State class applied to the root element if selected. */
5
+ selected: string;
6
+ /** State class applied to the root element if `showLabel={false}` and not selected. */
7
+ iconOnly: string;
8
+ /** Styles applied to the label's span element. */
9
+ label: string;
10
+ }
11
+ export declare type BottomNavigationActionClassKey = keyof BottomNavigationActionClasses;
12
+ export declare function getBottomNavigationActionUtilityClass(slot: string): string;
13
+ declare const bottomNavigationActionClasses: BottomNavigationActionClasses;
14
+ export default bottomNavigationActionClasses;
@@ -1,14 +1,14 @@
1
- export interface BreadcrumbsClasses {
2
- /** Styles applied to the root element. */
3
- root: string;
4
- /** Styles applied to the ol element. */
5
- ol: string;
6
- /** Styles applied to the li element. */
7
- li: string;
8
- /** Styles applied to the separator element. */
9
- separator: string;
10
- }
11
- export declare type BreadcrumbsClassKey = keyof BreadcrumbsClasses;
12
- export declare function getBreadcrumbsUtilityClass(slot: string): string;
13
- declare const breadcrumbsClasses: BreadcrumbsClasses;
14
- export default breadcrumbsClasses;
1
+ export interface BreadcrumbsClasses {
2
+ /** Styles applied to the root element. */
3
+ root: string;
4
+ /** Styles applied to the ol element. */
5
+ ol: string;
6
+ /** Styles applied to the li element. */
7
+ li: string;
8
+ /** Styles applied to the separator element. */
9
+ separator: string;
10
+ }
11
+ export declare type BreadcrumbsClassKey = keyof BreadcrumbsClasses;
12
+ export declare function getBreadcrumbsUtilityClass(slot: string): string;
13
+ declare const breadcrumbsClasses: BreadcrumbsClasses;
14
+ export default breadcrumbsClasses;
@@ -26,7 +26,9 @@ export type ButtonTypeMap<
26
26
  */
27
27
  classes?: Partial<ButtonClasses>;
28
28
  /**
29
- * The color of the component. It supports those theme colors that make sense for this component.
29
+ * The color of the component.
30
+ * It supports both default and custom theme colors, which can be added as shown in the
31
+ * [palette customization guide](https://mui.com/customization/palette/#adding-new-colors).
30
32
  * @default 'primary'
31
33
  */
32
34
  color?: OverridableStringUnion<