@mui/material 5.15.3 → 5.15.5

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 (555) hide show
  1. package/Accordion/Accordion.d.ts +30 -2
  2. package/Accordion/Accordion.js +43 -10
  3. package/AccordionActions/AccordionActions.js +4 -4
  4. package/AccordionDetails/AccordionDetails.js +4 -4
  5. package/AccordionSummary/AccordionSummary.js +4 -4
  6. package/AccordionSummary/accordionSummaryClasses.d.ts +4 -1
  7. package/Alert/Alert.d.ts +4 -2
  8. package/Alert/Alert.js +5 -5
  9. package/AlertTitle/AlertTitle.js +4 -4
  10. package/AppBar/AppBar.js +4 -4
  11. package/Autocomplete/Autocomplete.js +4 -4
  12. package/Avatar/Avatar.js +4 -4
  13. package/AvatarGroup/AvatarGroup.js +4 -4
  14. package/Backdrop/Backdrop.js +4 -4
  15. package/Badge/Badge.js +5 -5
  16. package/BottomNavigation/BottomNavigation.js +4 -4
  17. package/BottomNavigationAction/BottomNavigationAction.js +4 -4
  18. package/Box/Box.js +4 -4
  19. package/Breadcrumbs/Breadcrumbs.js +4 -4
  20. package/Button/Button.js +4 -4
  21. package/ButtonBase/ButtonBase.js +4 -4
  22. package/ButtonGroup/ButtonGroup.js +4 -4
  23. package/ButtonGroup/ButtonGroupContext.d.ts +2 -2
  24. package/CHANGELOG.md +184 -1
  25. package/Card/Card.js +4 -4
  26. package/CardActionArea/CardActionArea.js +4 -4
  27. package/CardActions/CardActions.js +4 -4
  28. package/CardContent/CardContent.js +4 -4
  29. package/CardHeader/CardHeader.js +4 -4
  30. package/CardMedia/CardMedia.js +4 -4
  31. package/Checkbox/Checkbox.js +4 -4
  32. package/Chip/Chip.js +4 -4
  33. package/CircularProgress/CircularProgress.js +4 -4
  34. package/ClickAwayListener/index.d.ts +2 -1
  35. package/Collapse/Collapse.js +4 -4
  36. package/Container/Container.js +4 -4
  37. package/CssBaseline/CssBaseline.js +4 -4
  38. package/Dialog/Dialog.js +4 -4
  39. package/DialogActions/DialogActions.js +4 -4
  40. package/DialogContent/DialogContent.js +4 -4
  41. package/DialogContentText/DialogContentText.js +4 -4
  42. package/DialogTitle/DialogTitle.js +4 -4
  43. package/Divider/Divider.d.ts +1 -0
  44. package/Divider/Divider.js +5 -4
  45. package/Divider/dividerClasses.d.ts +6 -2
  46. package/Drawer/Drawer.js +4 -4
  47. package/Fab/Fab.js +4 -4
  48. package/Fade/Fade.js +4 -4
  49. package/FilledInput/FilledInput.js +4 -4
  50. package/FormControl/FormControl.d.ts +1 -1
  51. package/FormControl/FormControl.js +4 -4
  52. package/FormControlLabel/FormControlLabel.js +4 -4
  53. package/FormGroup/FormGroup.js +4 -4
  54. package/FormHelperText/FormHelperText.js +4 -4
  55. package/FormLabel/FormLabel.d.ts +1 -1
  56. package/FormLabel/FormLabel.js +4 -4
  57. package/GlobalStyles/GlobalStyles.js +4 -4
  58. package/Grid/Grid.js +4 -4
  59. package/Grow/Grow.js +4 -4
  60. package/Hidden/Hidden.js +4 -4
  61. package/Icon/Icon.js +4 -4
  62. package/IconButton/IconButton.js +4 -4
  63. package/ImageList/ImageList.js +4 -4
  64. package/ImageListItem/ImageListItem.js +4 -4
  65. package/ImageListItemBar/ImageListItemBar.js +4 -4
  66. package/Input/Input.js +4 -4
  67. package/InputAdornment/InputAdornment.js +4 -4
  68. package/InputBase/InputBase.js +4 -4
  69. package/InputLabel/InputLabel.d.ts +1 -5
  70. package/InputLabel/InputLabel.js +4 -4
  71. package/LinearProgress/LinearProgress.js +4 -4
  72. package/Link/Link.js +4 -4
  73. package/List/List.js +4 -4
  74. package/ListItem/ListItem.js +4 -4
  75. package/ListItemAvatar/ListItemAvatar.js +4 -4
  76. package/ListItemButton/ListItemButton.js +4 -4
  77. package/ListItemIcon/ListItemIcon.js +4 -4
  78. package/ListItemSecondaryAction/ListItemSecondaryAction.js +4 -4
  79. package/ListItemText/ListItemText.js +4 -4
  80. package/ListSubheader/ListSubheader.js +4 -4
  81. package/Menu/Menu.js +4 -4
  82. package/MenuItem/MenuItem.js +4 -4
  83. package/MenuList/MenuList.js +4 -4
  84. package/MobileStepper/MobileStepper.js +4 -4
  85. package/Modal/Modal.js +4 -4
  86. package/NativeSelect/NativeSelect.js +4 -4
  87. package/OutlinedInput/OutlinedInput.js +4 -4
  88. package/Pagination/Pagination.js +4 -4
  89. package/PaginationItem/PaginationItem.js +4 -4
  90. package/Paper/Paper.js +4 -4
  91. package/Popover/Popover.js +4 -4
  92. package/Popper/Popper.js +4 -4
  93. package/Radio/Radio.js +4 -4
  94. package/RadioGroup/RadioGroup.js +4 -4
  95. package/Rating/Rating.js +5 -14
  96. package/ScopedCssBaseline/ScopedCssBaseline.js +4 -4
  97. package/Select/Select.js +4 -4
  98. package/Skeleton/Skeleton.js +4 -4
  99. package/Slide/Slide.js +4 -4
  100. package/Slider/Slider.js +4 -4
  101. package/Snackbar/Snackbar.js +4 -4
  102. package/SnackbarContent/SnackbarContent.js +4 -4
  103. package/SpeedDial/SpeedDial.js +5 -13
  104. package/SpeedDialAction/SpeedDialAction.js +4 -4
  105. package/SpeedDialIcon/SpeedDialIcon.js +4 -4
  106. package/Stack/Stack.js +4 -4
  107. package/Step/Step.js +4 -4
  108. package/StepButton/StepButton.js +4 -4
  109. package/StepConnector/StepConnector.js +4 -4
  110. package/StepContent/StepContent.js +4 -4
  111. package/StepIcon/StepIcon.js +4 -4
  112. package/StepLabel/StepLabel.js +4 -4
  113. package/Stepper/Stepper.js +4 -4
  114. package/SvgIcon/SvgIcon.js +4 -4
  115. package/SwipeableDrawer/SwipeableDrawer.js +4 -4
  116. package/Switch/Switch.js +4 -4
  117. package/Tab/Tab.js +4 -4
  118. package/TabScrollButton/TabScrollButton.js +4 -4
  119. package/Table/Table.js +4 -4
  120. package/TableBody/TableBody.js +4 -4
  121. package/TableCell/TableCell.js +4 -4
  122. package/TableContainer/TableContainer.js +4 -4
  123. package/TableFooter/TableFooter.js +4 -4
  124. package/TableHead/TableHead.js +4 -4
  125. package/TablePagination/TablePagination.js +4 -4
  126. package/TableRow/TableRow.js +4 -4
  127. package/TableSortLabel/TableSortLabel.js +4 -4
  128. package/Tabs/Tabs.js +4 -4
  129. package/TextField/TextField.d.ts +1 -1
  130. package/TextField/TextField.js +4 -4
  131. package/ToggleButton/ToggleButton.js +24 -8
  132. package/ToggleButtonGroup/ToggleButtonGroup.js +88 -46
  133. package/ToggleButtonGroup/ToggleButtonGroupButtonContext.d.ts +6 -0
  134. package/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +9 -0
  135. package/ToggleButtonGroup/ToggleButtonGroupContext.d.ts +16 -0
  136. package/ToggleButtonGroup/ToggleButtonGroupContext.js +9 -0
  137. package/ToggleButtonGroup/toggleButtonGroupClasses.d.ts +6 -0
  138. package/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  139. package/Toolbar/Toolbar.js +4 -4
  140. package/Tooltip/Tooltip.js +4 -4
  141. package/Typography/Typography.js +4 -4
  142. package/Unstable_Grid2/Grid2.js +4 -4
  143. package/Zoom/Zoom.js +4 -4
  144. package/index.js +1 -1
  145. package/legacy/Accordion/Accordion.js +48 -11
  146. package/legacy/AccordionActions/AccordionActions.js +4 -4
  147. package/legacy/AccordionDetails/AccordionDetails.js +4 -4
  148. package/legacy/AccordionSummary/AccordionSummary.js +4 -4
  149. package/legacy/Alert/Alert.js +5 -5
  150. package/legacy/AlertTitle/AlertTitle.js +4 -4
  151. package/legacy/AppBar/AppBar.js +4 -4
  152. package/legacy/Autocomplete/Autocomplete.js +4 -4
  153. package/legacy/Avatar/Avatar.js +4 -4
  154. package/legacy/AvatarGroup/AvatarGroup.js +4 -4
  155. package/legacy/Backdrop/Backdrop.js +4 -4
  156. package/legacy/Badge/Badge.js +5 -5
  157. package/legacy/BottomNavigation/BottomNavigation.js +4 -4
  158. package/legacy/BottomNavigationAction/BottomNavigationAction.js +4 -4
  159. package/legacy/Box/Box.js +4 -4
  160. package/legacy/Breadcrumbs/Breadcrumbs.js +4 -4
  161. package/legacy/Button/Button.js +4 -4
  162. package/legacy/ButtonBase/ButtonBase.js +4 -4
  163. package/legacy/ButtonGroup/ButtonGroup.js +4 -4
  164. package/legacy/Card/Card.js +4 -4
  165. package/legacy/CardActionArea/CardActionArea.js +4 -4
  166. package/legacy/CardActions/CardActions.js +4 -4
  167. package/legacy/CardContent/CardContent.js +4 -4
  168. package/legacy/CardHeader/CardHeader.js +4 -4
  169. package/legacy/CardMedia/CardMedia.js +4 -4
  170. package/legacy/Checkbox/Checkbox.js +4 -4
  171. package/legacy/Chip/Chip.js +4 -4
  172. package/legacy/CircularProgress/CircularProgress.js +4 -4
  173. package/legacy/Collapse/Collapse.js +4 -4
  174. package/legacy/Container/Container.js +4 -4
  175. package/legacy/CssBaseline/CssBaseline.js +4 -4
  176. package/legacy/Dialog/Dialog.js +4 -4
  177. package/legacy/DialogActions/DialogActions.js +4 -4
  178. package/legacy/DialogContent/DialogContent.js +4 -4
  179. package/legacy/DialogContentText/DialogContentText.js +4 -4
  180. package/legacy/DialogTitle/DialogTitle.js +4 -4
  181. package/legacy/Divider/Divider.js +5 -4
  182. package/legacy/Drawer/Drawer.js +4 -4
  183. package/legacy/Fab/Fab.js +4 -4
  184. package/legacy/Fade/Fade.js +4 -4
  185. package/legacy/FilledInput/FilledInput.js +4 -4
  186. package/legacy/FormControl/FormControl.js +4 -4
  187. package/legacy/FormControlLabel/FormControlLabel.js +4 -4
  188. package/legacy/FormGroup/FormGroup.js +4 -4
  189. package/legacy/FormHelperText/FormHelperText.js +4 -4
  190. package/legacy/FormLabel/FormLabel.js +4 -4
  191. package/legacy/GlobalStyles/GlobalStyles.js +4 -4
  192. package/legacy/Grid/Grid.js +4 -4
  193. package/legacy/Grow/Grow.js +4 -4
  194. package/legacy/Hidden/Hidden.js +4 -4
  195. package/legacy/Icon/Icon.js +4 -4
  196. package/legacy/IconButton/IconButton.js +4 -4
  197. package/legacy/ImageList/ImageList.js +4 -4
  198. package/legacy/ImageListItem/ImageListItem.js +4 -4
  199. package/legacy/ImageListItemBar/ImageListItemBar.js +4 -4
  200. package/legacy/Input/Input.js +4 -4
  201. package/legacy/InputAdornment/InputAdornment.js +4 -4
  202. package/legacy/InputBase/InputBase.js +4 -4
  203. package/legacy/InputLabel/InputLabel.js +4 -4
  204. package/legacy/LinearProgress/LinearProgress.js +4 -4
  205. package/legacy/Link/Link.js +4 -4
  206. package/legacy/List/List.js +4 -4
  207. package/legacy/ListItem/ListItem.js +4 -4
  208. package/legacy/ListItemAvatar/ListItemAvatar.js +4 -4
  209. package/legacy/ListItemButton/ListItemButton.js +4 -4
  210. package/legacy/ListItemIcon/ListItemIcon.js +4 -4
  211. package/legacy/ListItemSecondaryAction/ListItemSecondaryAction.js +4 -4
  212. package/legacy/ListItemText/ListItemText.js +4 -4
  213. package/legacy/ListSubheader/ListSubheader.js +4 -4
  214. package/legacy/Menu/Menu.js +4 -4
  215. package/legacy/MenuItem/MenuItem.js +4 -4
  216. package/legacy/MenuList/MenuList.js +4 -4
  217. package/legacy/MobileStepper/MobileStepper.js +4 -4
  218. package/legacy/Modal/Modal.js +4 -4
  219. package/legacy/NativeSelect/NativeSelect.js +4 -4
  220. package/legacy/OutlinedInput/OutlinedInput.js +4 -4
  221. package/legacy/Pagination/Pagination.js +4 -4
  222. package/legacy/PaginationItem/PaginationItem.js +4 -4
  223. package/legacy/Paper/Paper.js +4 -4
  224. package/legacy/Popover/Popover.js +4 -4
  225. package/legacy/Popper/Popper.js +4 -4
  226. package/legacy/Radio/Radio.js +4 -4
  227. package/legacy/RadioGroup/RadioGroup.js +4 -4
  228. package/legacy/Rating/Rating.js +5 -14
  229. package/legacy/ScopedCssBaseline/ScopedCssBaseline.js +4 -4
  230. package/legacy/Select/Select.js +4 -4
  231. package/legacy/Skeleton/Skeleton.js +4 -4
  232. package/legacy/Slide/Slide.js +4 -4
  233. package/legacy/Slider/Slider.js +4 -4
  234. package/legacy/Snackbar/Snackbar.js +4 -4
  235. package/legacy/SnackbarContent/SnackbarContent.js +4 -4
  236. package/legacy/SpeedDial/SpeedDial.js +5 -13
  237. package/legacy/SpeedDialAction/SpeedDialAction.js +4 -4
  238. package/legacy/SpeedDialIcon/SpeedDialIcon.js +4 -4
  239. package/legacy/Stack/Stack.js +4 -4
  240. package/legacy/Step/Step.js +4 -4
  241. package/legacy/StepButton/StepButton.js +4 -4
  242. package/legacy/StepConnector/StepConnector.js +4 -4
  243. package/legacy/StepContent/StepContent.js +4 -4
  244. package/legacy/StepIcon/StepIcon.js +4 -4
  245. package/legacy/StepLabel/StepLabel.js +4 -4
  246. package/legacy/Stepper/Stepper.js +4 -4
  247. package/legacy/SvgIcon/SvgIcon.js +4 -4
  248. package/legacy/SwipeableDrawer/SwipeableDrawer.js +4 -4
  249. package/legacy/Switch/Switch.js +4 -4
  250. package/legacy/Tab/Tab.js +4 -4
  251. package/legacy/TabScrollButton/TabScrollButton.js +4 -4
  252. package/legacy/Table/Table.js +4 -4
  253. package/legacy/TableBody/TableBody.js +4 -4
  254. package/legacy/TableCell/TableCell.js +4 -4
  255. package/legacy/TableContainer/TableContainer.js +4 -4
  256. package/legacy/TableFooter/TableFooter.js +4 -4
  257. package/legacy/TableHead/TableHead.js +4 -4
  258. package/legacy/TablePagination/TablePagination.js +4 -4
  259. package/legacy/TableRow/TableRow.js +4 -4
  260. package/legacy/TableSortLabel/TableSortLabel.js +4 -4
  261. package/legacy/Tabs/Tabs.js +4 -4
  262. package/legacy/TextField/TextField.js +4 -4
  263. package/legacy/ToggleButton/ToggleButton.js +19 -6
  264. package/legacy/ToggleButtonGroup/ToggleButtonGroup.js +81 -55
  265. package/legacy/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +9 -0
  266. package/legacy/ToggleButtonGroup/ToggleButtonGroupContext.js +9 -0
  267. package/legacy/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  268. package/legacy/Toolbar/Toolbar.js +4 -4
  269. package/legacy/Tooltip/Tooltip.js +4 -4
  270. package/legacy/Typography/Typography.js +4 -4
  271. package/legacy/Unstable_Grid2/Grid2.js +4 -4
  272. package/legacy/Zoom/Zoom.js +4 -4
  273. package/legacy/index.js +1 -1
  274. package/legacy/styles/CssVarsProvider.js +3 -0
  275. package/legacy/utils/types.js +1 -0
  276. package/legacy/utils/useSlot.js +71 -0
  277. package/legacy/zero-styled/index.js +2 -0
  278. package/modern/Accordion/Accordion.js +43 -10
  279. package/modern/AccordionActions/AccordionActions.js +4 -4
  280. package/modern/AccordionDetails/AccordionDetails.js +4 -4
  281. package/modern/AccordionSummary/AccordionSummary.js +4 -4
  282. package/modern/Alert/Alert.js +5 -5
  283. package/modern/AlertTitle/AlertTitle.js +4 -4
  284. package/modern/AppBar/AppBar.js +4 -4
  285. package/modern/Autocomplete/Autocomplete.js +4 -4
  286. package/modern/Avatar/Avatar.js +4 -4
  287. package/modern/AvatarGroup/AvatarGroup.js +4 -4
  288. package/modern/Backdrop/Backdrop.js +4 -4
  289. package/modern/Badge/Badge.js +5 -5
  290. package/modern/BottomNavigation/BottomNavigation.js +4 -4
  291. package/modern/BottomNavigationAction/BottomNavigationAction.js +4 -4
  292. package/modern/Box/Box.js +4 -4
  293. package/modern/Breadcrumbs/Breadcrumbs.js +4 -4
  294. package/modern/Button/Button.js +4 -4
  295. package/modern/ButtonBase/ButtonBase.js +4 -4
  296. package/modern/ButtonGroup/ButtonGroup.js +4 -4
  297. package/modern/Card/Card.js +4 -4
  298. package/modern/CardActionArea/CardActionArea.js +4 -4
  299. package/modern/CardActions/CardActions.js +4 -4
  300. package/modern/CardContent/CardContent.js +4 -4
  301. package/modern/CardHeader/CardHeader.js +4 -4
  302. package/modern/CardMedia/CardMedia.js +4 -4
  303. package/modern/Checkbox/Checkbox.js +4 -4
  304. package/modern/Chip/Chip.js +4 -4
  305. package/modern/CircularProgress/CircularProgress.js +4 -4
  306. package/modern/Collapse/Collapse.js +4 -4
  307. package/modern/Container/Container.js +4 -4
  308. package/modern/CssBaseline/CssBaseline.js +4 -4
  309. package/modern/Dialog/Dialog.js +4 -4
  310. package/modern/DialogActions/DialogActions.js +4 -4
  311. package/modern/DialogContent/DialogContent.js +4 -4
  312. package/modern/DialogContentText/DialogContentText.js +4 -4
  313. package/modern/DialogTitle/DialogTitle.js +4 -4
  314. package/modern/Divider/Divider.js +5 -4
  315. package/modern/Drawer/Drawer.js +4 -4
  316. package/modern/Fab/Fab.js +4 -4
  317. package/modern/Fade/Fade.js +4 -4
  318. package/modern/FilledInput/FilledInput.js +4 -4
  319. package/modern/FormControl/FormControl.js +4 -4
  320. package/modern/FormControlLabel/FormControlLabel.js +4 -4
  321. package/modern/FormGroup/FormGroup.js +4 -4
  322. package/modern/FormHelperText/FormHelperText.js +4 -4
  323. package/modern/FormLabel/FormLabel.js +4 -4
  324. package/modern/GlobalStyles/GlobalStyles.js +4 -4
  325. package/modern/Grid/Grid.js +4 -4
  326. package/modern/Grow/Grow.js +4 -4
  327. package/modern/Hidden/Hidden.js +4 -4
  328. package/modern/Icon/Icon.js +4 -4
  329. package/modern/IconButton/IconButton.js +4 -4
  330. package/modern/ImageList/ImageList.js +4 -4
  331. package/modern/ImageListItem/ImageListItem.js +4 -4
  332. package/modern/ImageListItemBar/ImageListItemBar.js +4 -4
  333. package/modern/Input/Input.js +4 -4
  334. package/modern/InputAdornment/InputAdornment.js +4 -4
  335. package/modern/InputBase/InputBase.js +4 -4
  336. package/modern/InputLabel/InputLabel.js +4 -4
  337. package/modern/LinearProgress/LinearProgress.js +4 -4
  338. package/modern/Link/Link.js +4 -4
  339. package/modern/List/List.js +4 -4
  340. package/modern/ListItem/ListItem.js +4 -4
  341. package/modern/ListItemAvatar/ListItemAvatar.js +4 -4
  342. package/modern/ListItemButton/ListItemButton.js +4 -4
  343. package/modern/ListItemIcon/ListItemIcon.js +4 -4
  344. package/modern/ListItemSecondaryAction/ListItemSecondaryAction.js +4 -4
  345. package/modern/ListItemText/ListItemText.js +4 -4
  346. package/modern/ListSubheader/ListSubheader.js +4 -4
  347. package/modern/Menu/Menu.js +4 -4
  348. package/modern/MenuItem/MenuItem.js +4 -4
  349. package/modern/MenuList/MenuList.js +4 -4
  350. package/modern/MobileStepper/MobileStepper.js +4 -4
  351. package/modern/Modal/Modal.js +4 -4
  352. package/modern/NativeSelect/NativeSelect.js +4 -4
  353. package/modern/OutlinedInput/OutlinedInput.js +4 -4
  354. package/modern/Pagination/Pagination.js +4 -4
  355. package/modern/PaginationItem/PaginationItem.js +4 -4
  356. package/modern/Paper/Paper.js +4 -4
  357. package/modern/Popover/Popover.js +4 -4
  358. package/modern/Popper/Popper.js +4 -4
  359. package/modern/Radio/Radio.js +4 -4
  360. package/modern/RadioGroup/RadioGroup.js +4 -4
  361. package/modern/Rating/Rating.js +5 -14
  362. package/modern/ScopedCssBaseline/ScopedCssBaseline.js +4 -4
  363. package/modern/Select/Select.js +4 -4
  364. package/modern/Skeleton/Skeleton.js +4 -4
  365. package/modern/Slide/Slide.js +4 -4
  366. package/modern/Slider/Slider.js +4 -4
  367. package/modern/Snackbar/Snackbar.js +4 -4
  368. package/modern/SnackbarContent/SnackbarContent.js +4 -4
  369. package/modern/SpeedDial/SpeedDial.js +5 -13
  370. package/modern/SpeedDialAction/SpeedDialAction.js +4 -4
  371. package/modern/SpeedDialIcon/SpeedDialIcon.js +4 -4
  372. package/modern/Stack/Stack.js +4 -4
  373. package/modern/Step/Step.js +4 -4
  374. package/modern/StepButton/StepButton.js +4 -4
  375. package/modern/StepConnector/StepConnector.js +4 -4
  376. package/modern/StepContent/StepContent.js +4 -4
  377. package/modern/StepIcon/StepIcon.js +4 -4
  378. package/modern/StepLabel/StepLabel.js +4 -4
  379. package/modern/Stepper/Stepper.js +4 -4
  380. package/modern/SvgIcon/SvgIcon.js +4 -4
  381. package/modern/SwipeableDrawer/SwipeableDrawer.js +4 -4
  382. package/modern/Switch/Switch.js +4 -4
  383. package/modern/Tab/Tab.js +4 -4
  384. package/modern/TabScrollButton/TabScrollButton.js +4 -4
  385. package/modern/Table/Table.js +4 -4
  386. package/modern/TableBody/TableBody.js +4 -4
  387. package/modern/TableCell/TableCell.js +4 -4
  388. package/modern/TableContainer/TableContainer.js +4 -4
  389. package/modern/TableFooter/TableFooter.js +4 -4
  390. package/modern/TableHead/TableHead.js +4 -4
  391. package/modern/TablePagination/TablePagination.js +4 -4
  392. package/modern/TableRow/TableRow.js +4 -4
  393. package/modern/TableSortLabel/TableSortLabel.js +4 -4
  394. package/modern/Tabs/Tabs.js +4 -4
  395. package/modern/TextField/TextField.js +4 -4
  396. package/modern/ToggleButton/ToggleButton.js +24 -8
  397. package/modern/ToggleButtonGroup/ToggleButtonGroup.js +88 -46
  398. package/modern/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +9 -0
  399. package/modern/ToggleButtonGroup/ToggleButtonGroupContext.js +9 -0
  400. package/modern/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  401. package/modern/Toolbar/Toolbar.js +4 -4
  402. package/modern/Tooltip/Tooltip.js +4 -4
  403. package/modern/Typography/Typography.js +4 -4
  404. package/modern/Unstable_Grid2/Grid2.js +4 -4
  405. package/modern/Zoom/Zoom.js +4 -4
  406. package/modern/index.js +1 -1
  407. package/modern/styles/CssVarsProvider.js +3 -0
  408. package/modern/utils/types.js +1 -0
  409. package/modern/utils/useSlot.js +82 -0
  410. package/modern/zero-styled/index.js +2 -0
  411. package/node/Accordion/Accordion.js +43 -10
  412. package/node/AccordionActions/AccordionActions.js +4 -4
  413. package/node/AccordionDetails/AccordionDetails.js +4 -4
  414. package/node/AccordionSummary/AccordionSummary.js +4 -4
  415. package/node/Alert/Alert.js +5 -5
  416. package/node/AlertTitle/AlertTitle.js +4 -4
  417. package/node/AppBar/AppBar.js +4 -4
  418. package/node/Autocomplete/Autocomplete.js +4 -4
  419. package/node/Avatar/Avatar.js +4 -4
  420. package/node/AvatarGroup/AvatarGroup.js +4 -4
  421. package/node/Backdrop/Backdrop.js +4 -4
  422. package/node/Badge/Badge.js +7 -7
  423. package/node/BottomNavigation/BottomNavigation.js +4 -4
  424. package/node/BottomNavigationAction/BottomNavigationAction.js +4 -4
  425. package/node/Box/Box.js +4 -4
  426. package/node/Breadcrumbs/Breadcrumbs.js +4 -4
  427. package/node/Button/Button.js +4 -4
  428. package/node/ButtonBase/ButtonBase.js +4 -4
  429. package/node/ButtonGroup/ButtonGroup.js +4 -4
  430. package/node/Card/Card.js +4 -4
  431. package/node/CardActionArea/CardActionArea.js +4 -4
  432. package/node/CardActions/CardActions.js +4 -4
  433. package/node/CardContent/CardContent.js +4 -4
  434. package/node/CardHeader/CardHeader.js +4 -4
  435. package/node/CardMedia/CardMedia.js +4 -4
  436. package/node/Checkbox/Checkbox.js +4 -4
  437. package/node/Chip/Chip.js +4 -4
  438. package/node/CircularProgress/CircularProgress.js +4 -4
  439. package/node/Collapse/Collapse.js +4 -4
  440. package/node/Container/Container.js +4 -4
  441. package/node/CssBaseline/CssBaseline.js +4 -4
  442. package/node/Dialog/Dialog.js +4 -4
  443. package/node/DialogActions/DialogActions.js +4 -4
  444. package/node/DialogContent/DialogContent.js +4 -4
  445. package/node/DialogContentText/DialogContentText.js +4 -4
  446. package/node/DialogTitle/DialogTitle.js +4 -4
  447. package/node/Divider/Divider.js +5 -4
  448. package/node/Drawer/Drawer.js +4 -4
  449. package/node/Fab/Fab.js +4 -4
  450. package/node/Fade/Fade.js +4 -4
  451. package/node/FilledInput/FilledInput.js +4 -4
  452. package/node/FormControl/FormControl.js +4 -4
  453. package/node/FormControlLabel/FormControlLabel.js +4 -4
  454. package/node/FormGroup/FormGroup.js +4 -4
  455. package/node/FormHelperText/FormHelperText.js +4 -4
  456. package/node/FormLabel/FormLabel.js +4 -4
  457. package/node/GlobalStyles/GlobalStyles.js +4 -4
  458. package/node/Grid/Grid.js +4 -4
  459. package/node/Grow/Grow.js +4 -4
  460. package/node/Hidden/Hidden.js +4 -4
  461. package/node/Icon/Icon.js +4 -4
  462. package/node/IconButton/IconButton.js +4 -4
  463. package/node/ImageList/ImageList.js +4 -4
  464. package/node/ImageListItem/ImageListItem.js +4 -4
  465. package/node/ImageListItemBar/ImageListItemBar.js +4 -4
  466. package/node/Input/Input.js +4 -4
  467. package/node/InputAdornment/InputAdornment.js +4 -4
  468. package/node/InputBase/InputBase.js +4 -4
  469. package/node/InputLabel/InputLabel.js +4 -4
  470. package/node/LinearProgress/LinearProgress.js +4 -4
  471. package/node/Link/Link.js +4 -4
  472. package/node/List/List.js +4 -4
  473. package/node/ListItem/ListItem.js +4 -4
  474. package/node/ListItemAvatar/ListItemAvatar.js +4 -4
  475. package/node/ListItemButton/ListItemButton.js +4 -4
  476. package/node/ListItemIcon/ListItemIcon.js +4 -4
  477. package/node/ListItemSecondaryAction/ListItemSecondaryAction.js +4 -4
  478. package/node/ListItemText/ListItemText.js +4 -4
  479. package/node/ListSubheader/ListSubheader.js +4 -4
  480. package/node/Menu/Menu.js +4 -4
  481. package/node/MenuItem/MenuItem.js +4 -4
  482. package/node/MenuList/MenuList.js +4 -4
  483. package/node/MobileStepper/MobileStepper.js +4 -4
  484. package/node/Modal/Modal.js +4 -4
  485. package/node/NativeSelect/NativeSelect.js +4 -4
  486. package/node/OutlinedInput/OutlinedInput.js +4 -4
  487. package/node/Pagination/Pagination.js +4 -4
  488. package/node/PaginationItem/PaginationItem.js +4 -4
  489. package/node/Paper/Paper.js +4 -4
  490. package/node/Popover/Popover.js +4 -4
  491. package/node/Popper/Popper.js +4 -4
  492. package/node/Radio/Radio.js +4 -4
  493. package/node/RadioGroup/RadioGroup.js +4 -4
  494. package/node/Rating/Rating.js +5 -14
  495. package/node/ScopedCssBaseline/ScopedCssBaseline.js +4 -4
  496. package/node/Select/Select.js +4 -4
  497. package/node/Skeleton/Skeleton.js +4 -4
  498. package/node/Slide/Slide.js +4 -4
  499. package/node/Slider/Slider.js +4 -4
  500. package/node/Snackbar/Snackbar.js +4 -4
  501. package/node/SnackbarContent/SnackbarContent.js +4 -4
  502. package/node/SpeedDial/SpeedDial.js +6 -14
  503. package/node/SpeedDialAction/SpeedDialAction.js +4 -4
  504. package/node/SpeedDialIcon/SpeedDialIcon.js +4 -4
  505. package/node/Stack/Stack.js +4 -4
  506. package/node/Step/Step.js +4 -4
  507. package/node/StepButton/StepButton.js +4 -4
  508. package/node/StepConnector/StepConnector.js +4 -4
  509. package/node/StepContent/StepContent.js +4 -4
  510. package/node/StepIcon/StepIcon.js +4 -4
  511. package/node/StepLabel/StepLabel.js +4 -4
  512. package/node/Stepper/Stepper.js +4 -4
  513. package/node/SvgIcon/SvgIcon.js +4 -4
  514. package/node/SwipeableDrawer/SwipeableDrawer.js +4 -4
  515. package/node/Switch/Switch.js +4 -4
  516. package/node/Tab/Tab.js +4 -4
  517. package/node/TabScrollButton/TabScrollButton.js +4 -4
  518. package/node/Table/Table.js +4 -4
  519. package/node/TableBody/TableBody.js +4 -4
  520. package/node/TableCell/TableCell.js +4 -4
  521. package/node/TableContainer/TableContainer.js +4 -4
  522. package/node/TableFooter/TableFooter.js +4 -4
  523. package/node/TableHead/TableHead.js +4 -4
  524. package/node/TablePagination/TablePagination.js +4 -4
  525. package/node/TableRow/TableRow.js +4 -4
  526. package/node/TableSortLabel/TableSortLabel.js +4 -4
  527. package/node/Tabs/Tabs.js +4 -4
  528. package/node/TextField/TextField.js +4 -4
  529. package/node/ToggleButton/ToggleButton.js +24 -8
  530. package/node/ToggleButtonGroup/ToggleButtonGroup.js +88 -46
  531. package/node/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +17 -0
  532. package/node/ToggleButtonGroup/ToggleButtonGroupContext.js +17 -0
  533. package/node/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  534. package/node/Toolbar/Toolbar.js +4 -4
  535. package/node/Tooltip/Tooltip.js +4 -4
  536. package/node/Typography/Typography.js +4 -4
  537. package/node/Unstable_Grid2/Grid2.js +4 -4
  538. package/node/Zoom/Zoom.js +4 -4
  539. package/node/index.js +1 -1
  540. package/node/styles/CssVarsProvider.js +3 -0
  541. package/node/utils/types.js +5 -0
  542. package/node/utils/useSlot.js +88 -0
  543. package/node/zero-styled/index.js +13 -0
  544. package/package.json +11 -10
  545. package/styles/CssVarsProvider.d.ts +3 -3
  546. package/styles/CssVarsProvider.js +3 -0
  547. package/umd/material-ui.development.js +15848 -15745
  548. package/umd/material-ui.production.min.js +4 -207
  549. package/utils/types.d.ts +27 -0
  550. package/utils/types.js +1 -0
  551. package/utils/useSlot.d.ts +84 -0
  552. package/utils/useSlot.js +82 -0
  553. package/zero-styled/index.d.ts +2 -0
  554. package/zero-styled/index.js +2 -0
  555. package/zero-styled/package.json +6 -0
@@ -86,10 +86,10 @@ const Table = /*#__PURE__*/React.forwardRef(function Table(inProps, ref) {
86
86
  });
87
87
  });
88
88
  process.env.NODE_ENV !== "production" ? Table.propTypes /* remove-proptypes */ = {
89
- // ----------------------------- Warning --------------------------------
90
- // | These PropTypes are generated from the TypeScript type definitions |
91
- // | To update them edit the d.ts file and run "yarn proptypes" |
92
- // ----------------------------------------------------------------------
89
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
90
+ // These PropTypes are generated from the TypeScript type definitions.
91
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
92
+ // └─────────────────────────────────────────────────────────────────────┘
93
93
  /**
94
94
  * The content of the table, normally `TableHead` and `TableBody`.
95
95
  */
@@ -58,10 +58,10 @@ const TableBody = /*#__PURE__*/React.forwardRef(function TableBody(inProps, ref)
58
58
  });
59
59
  });
60
60
  process.env.NODE_ENV !== "production" ? TableBody.propTypes /* remove-proptypes */ = {
61
- // ----------------------------- Warning --------------------------------
62
- // | These PropTypes are generated from the TypeScript type definitions |
63
- // | To update them edit the d.ts file and run "yarn proptypes" |
64
- // ----------------------------------------------------------------------
61
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
62
+ // These PropTypes are generated from the TypeScript type definitions.
63
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
64
+ // └─────────────────────────────────────────────────────────────────────┘
65
65
  /**
66
66
  * The content of the component, normally `TableRow`.
67
67
  */
@@ -154,10 +154,10 @@ const TableCell = /*#__PURE__*/React.forwardRef(function TableCell(inProps, ref)
154
154
  }, other));
155
155
  });
156
156
  process.env.NODE_ENV !== "production" ? TableCell.propTypes /* remove-proptypes */ = {
157
- // ----------------------------- Warning --------------------------------
158
- // | These PropTypes are generated from the TypeScript type definitions |
159
- // | To update them edit the d.ts file and run "yarn proptypes" |
160
- // ----------------------------------------------------------------------
157
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
158
+ // These PropTypes are generated from the TypeScript type definitions.
159
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
160
+ // └─────────────────────────────────────────────────────────────────────┘
161
161
  /**
162
162
  * Set the text-align on the table cell content.
163
163
  *
@@ -50,10 +50,10 @@ const TableContainer = /*#__PURE__*/React.forwardRef(function TableContainer(inP
50
50
  }, other));
51
51
  });
52
52
  process.env.NODE_ENV !== "production" ? TableContainer.propTypes /* remove-proptypes */ = {
53
- // ----------------------------- Warning --------------------------------
54
- // | These PropTypes are generated from the TypeScript type definitions |
55
- // | To update them edit the d.ts file and run "yarn proptypes" |
56
- // ----------------------------------------------------------------------
53
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
54
+ // These PropTypes are generated from the TypeScript type definitions.
55
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
56
+ // └─────────────────────────────────────────────────────────────────────┘
57
57
  /**
58
58
  * The content of the component, normally `Table`.
59
59
  */
@@ -58,10 +58,10 @@ const TableFooter = /*#__PURE__*/React.forwardRef(function TableFooter(inProps,
58
58
  });
59
59
  });
60
60
  process.env.NODE_ENV !== "production" ? TableFooter.propTypes /* remove-proptypes */ = {
61
- // ----------------------------- Warning --------------------------------
62
- // | These PropTypes are generated from the TypeScript type definitions |
63
- // | To update them edit the d.ts file and run "yarn proptypes" |
64
- // ----------------------------------------------------------------------
61
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
62
+ // These PropTypes are generated from the TypeScript type definitions.
63
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
64
+ // └─────────────────────────────────────────────────────────────────────┘
65
65
  /**
66
66
  * The content of the component, normally `TableRow`.
67
67
  */
@@ -58,10 +58,10 @@ const TableHead = /*#__PURE__*/React.forwardRef(function TableHead(inProps, ref)
58
58
  });
59
59
  });
60
60
  process.env.NODE_ENV !== "production" ? TableHead.propTypes /* remove-proptypes */ = {
61
- // ----------------------------- Warning --------------------------------
62
- // | These PropTypes are generated from the TypeScript type definitions |
63
- // | To update them edit the d.ts file and run "yarn proptypes" |
64
- // ----------------------------------------------------------------------
61
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
62
+ // These PropTypes are generated from the TypeScript type definitions.
63
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
64
+ // └─────────────────────────────────────────────────────────────────────┘
65
65
  /**
66
66
  * The content of the component, normally `TableRow`.
67
67
  */
@@ -254,10 +254,10 @@ const TablePagination = /*#__PURE__*/React.forwardRef(function TablePagination(i
254
254
  }));
255
255
  });
256
256
  process.env.NODE_ENV !== "production" ? TablePagination.propTypes /* remove-proptypes */ = {
257
- // ----------------------------- Warning --------------------------------
258
- // | These PropTypes are generated from the TypeScript type definitions |
259
- // | To update them edit the d.ts file and run "yarn proptypes" |
260
- // ----------------------------------------------------------------------
257
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
258
+ // These PropTypes are generated from the TypeScript type definitions.
259
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
260
+ // └─────────────────────────────────────────────────────────────────────┘
261
261
  /**
262
262
  * The component used for displaying the actions.
263
263
  * Either a string to use a HTML element or a component.
@@ -88,10 +88,10 @@ const TableRow = /*#__PURE__*/React.forwardRef(function TableRow(inProps, ref) {
88
88
  }, other));
89
89
  });
90
90
  process.env.NODE_ENV !== "production" ? TableRow.propTypes /* remove-proptypes */ = {
91
- // ----------------------------- Warning --------------------------------
92
- // | These PropTypes are generated from the TypeScript type definitions |
93
- // | To update them edit the d.ts file and run "yarn proptypes" |
94
- // ----------------------------------------------------------------------
91
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
92
+ // These PropTypes are generated from the TypeScript type definitions.
93
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
94
+ // └─────────────────────────────────────────────────────────────────────┘
95
95
  /**
96
96
  * Should be valid <tr> children such as `TableCell`.
97
97
  */
@@ -127,10 +127,10 @@ const TableSortLabel = /*#__PURE__*/React.forwardRef(function TableSortLabel(inP
127
127
  }));
128
128
  });
129
129
  process.env.NODE_ENV !== "production" ? TableSortLabel.propTypes /* remove-proptypes */ = {
130
- // ----------------------------- Warning --------------------------------
131
- // | These PropTypes are generated from the TypeScript type definitions |
132
- // | To update them edit the d.ts file and run "yarn proptypes" |
133
- // ----------------------------------------------------------------------
130
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
131
+ // These PropTypes are generated from the TypeScript type definitions.
132
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
133
+ // └─────────────────────────────────────────────────────────────────────┘
134
134
  /**
135
135
  * If `true`, the label will have the active styling (should be true for the sorted column).
136
136
  * @default false
@@ -684,10 +684,10 @@ const Tabs = /*#__PURE__*/React.forwardRef(function Tabs(inProps, ref) {
684
684
  }));
685
685
  });
686
686
  process.env.NODE_ENV !== "production" ? Tabs.propTypes /* remove-proptypes */ = {
687
- // ----------------------------- Warning --------------------------------
688
- // | These PropTypes are generated from the TypeScript type definitions |
689
- // | To update them edit the d.ts file and run "yarn proptypes" |
690
- // ----------------------------------------------------------------------
687
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
688
+ // These PropTypes are generated from the TypeScript type definitions.
689
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
690
+ // └─────────────────────────────────────────────────────────────────────┘
691
691
  /**
692
692
  * Callback fired when the component mounts.
693
693
  * This is useful when you want to trigger an action programmatically.
@@ -200,10 +200,10 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(inProps, ref)
200
200
  }));
201
201
  });
202
202
  process.env.NODE_ENV !== "production" ? TextField.propTypes /* remove-proptypes */ = {
203
- // ----------------------------- Warning --------------------------------
204
- // | These PropTypes are generated from the TypeScript type definitions |
205
- // | To update them edit the d.ts file and run "yarn proptypes" |
206
- // ----------------------------------------------------------------------
203
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
204
+ // These PropTypes are generated from the TypeScript type definitions.
205
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
206
+ // └─────────────────────────────────────────────────────────────────────┘
207
207
  /**
208
208
  * This prop helps users to fill forms faster, especially on mobile devices.
209
209
  * The name can be confusing, as it's more like an autofill.
@@ -3,10 +3,12 @@
3
3
  // @inheritedComponent ButtonBase
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
5
  import _extends from "@babel/runtime/helpers/esm/extends";
6
- const _excluded = ["children", "className", "color", "disabled", "disableFocusRipple", "fullWidth", "onChange", "onClick", "selected", "size", "value"];
6
+ const _excluded = ["value"],
7
+ _excluded2 = ["children", "className", "color", "disabled", "disableFocusRipple", "fullWidth", "onChange", "onClick", "selected", "size", "value"];
7
8
  import * as React from 'react';
8
9
  import PropTypes from 'prop-types';
9
10
  import clsx from 'clsx';
11
+ import { internal_resolveProps as resolveProps } from '@mui/utils';
10
12
  import { unstable_composeClasses as composeClasses } from '@mui/base/composeClasses';
11
13
  import { alpha } from '../styles';
12
14
  import ButtonBase from '../ButtonBase';
@@ -14,6 +16,9 @@ import capitalize from '../utils/capitalize';
14
16
  import useThemeProps from '../styles/useThemeProps';
15
17
  import styled from '../styles/styled';
16
18
  import toggleButtonClasses, { getToggleButtonUtilityClass } from './toggleButtonClasses';
19
+ import ToggleButtonGroupContext from '../ToggleButtonGroup/ToggleButtonGroupContext';
20
+ import ToggleButtonGroupButtonContext from '../ToggleButtonGroup/ToggleButtonGroupButtonContext';
21
+ import isValueSelected from '../ToggleButtonGroup/isValueSelected';
17
22
  import { jsx as _jsx } from "react/jsx-runtime";
18
23
  const useUtilityClasses = ownerState => {
19
24
  const {
@@ -88,8 +93,18 @@ const ToggleButtonRoot = styled(ButtonBase, {
88
93
  });
89
94
  });
90
95
  const ToggleButton = /*#__PURE__*/React.forwardRef(function ToggleButton(inProps, ref) {
96
+ // props priority: `inProps` > `contextProps` > `themeDefaultProps`
97
+ const _React$useContext = React.useContext(ToggleButtonGroupContext),
98
+ {
99
+ value: contextValue
100
+ } = _React$useContext,
101
+ contextProps = _objectWithoutPropertiesLoose(_React$useContext, _excluded);
102
+ const toggleButtonGroupButtonContextPositionClassName = React.useContext(ToggleButtonGroupButtonContext);
103
+ const resolvedProps = resolveProps(_extends({}, contextProps, {
104
+ selected: isValueSelected(inProps.value, contextValue)
105
+ }), inProps);
91
106
  const props = useThemeProps({
92
- props: inProps,
107
+ props: resolvedProps,
93
108
  name: 'MuiToggleButton'
94
109
  });
95
110
  const {
@@ -105,7 +120,7 @@ const ToggleButton = /*#__PURE__*/React.forwardRef(function ToggleButton(inProps
105
120
  size = 'medium',
106
121
  value
107
122
  } = props,
108
- other = _objectWithoutPropertiesLoose(props, _excluded);
123
+ other = _objectWithoutPropertiesLoose(props, _excluded2);
109
124
  const ownerState = _extends({}, props, {
110
125
  color,
111
126
  disabled,
@@ -125,8 +140,9 @@ const ToggleButton = /*#__PURE__*/React.forwardRef(function ToggleButton(inProps
125
140
  onChange(event, value);
126
141
  }
127
142
  };
143
+ const positionClassName = toggleButtonGroupButtonContextPositionClassName || '';
128
144
  return /*#__PURE__*/_jsx(ToggleButtonRoot, _extends({
129
- className: clsx(classes.root, className),
145
+ className: clsx(contextProps.className, classes.root, className, positionClassName),
130
146
  disabled: disabled,
131
147
  focusRipple: !disableFocusRipple,
132
148
  ref: ref,
@@ -140,10 +156,10 @@ const ToggleButton = /*#__PURE__*/React.forwardRef(function ToggleButton(inProps
140
156
  }));
141
157
  });
142
158
  process.env.NODE_ENV !== "production" ? ToggleButton.propTypes /* remove-proptypes */ = {
143
- // ----------------------------- Warning --------------------------------
144
- // | These PropTypes are generated from the TypeScript type definitions |
145
- // | To update them edit the d.ts file and run "yarn proptypes" |
146
- // ----------------------------------------------------------------------
159
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
160
+ // These PropTypes are generated from the TypeScript type definitions.
161
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
162
+ // └─────────────────────────────────────────────────────────────────────┘
147
163
  /**
148
164
  * The content of the component.
149
165
  */
@@ -8,11 +8,14 @@ import { isFragment } from 'react-is';
8
8
  import PropTypes from 'prop-types';
9
9
  import clsx from 'clsx';
10
10
  import { unstable_composeClasses as composeClasses } from '@mui/base/composeClasses';
11
+ import { getValidReactChildren } from '@mui/utils';
11
12
  import styled from '../styles/styled';
12
13
  import useThemeProps from '../styles/useThemeProps';
13
14
  import capitalize from '../utils/capitalize';
14
- import isValueSelected from './isValueSelected';
15
15
  import toggleButtonGroupClasses, { getToggleButtonGroupUtilityClass } from './toggleButtonGroupClasses';
16
+ import ToggleButtonGroupContext from './ToggleButtonGroupContext';
17
+ import ToggleButtonGroupButtonContext from './ToggleButtonGroupButtonContext';
18
+ import toggleButtonClasses from '../ToggleButton/toggleButtonClasses';
16
19
  import { jsx as _jsx } from "react/jsx-runtime";
17
20
  const useUtilityClasses = ownerState => {
18
21
  const {
@@ -23,7 +26,10 @@ const useUtilityClasses = ownerState => {
23
26
  } = ownerState;
24
27
  const slots = {
25
28
  root: ['root', orientation === 'vertical' && 'vertical', fullWidth && 'fullWidth'],
26
- grouped: ['grouped', `grouped${capitalize(orientation)}`, disabled && 'disabled']
29
+ grouped: ['grouped', `grouped${capitalize(orientation)}`, disabled && 'disabled'],
30
+ firstButton: ['firstButton'],
31
+ lastButton: ['lastButton'],
32
+ middleButton: ['middleButton']
27
33
  };
28
34
  return composeClasses(slots, getToggleButtonGroupUtilityClass, classes);
29
35
  };
@@ -38,6 +44,12 @@ const ToggleButtonGroupRoot = styled('div', {
38
44
  [`& .${toggleButtonGroupClasses.grouped}`]: styles.grouped
39
45
  }, {
40
46
  [`& .${toggleButtonGroupClasses.grouped}`]: styles[`grouped${capitalize(ownerState.orientation)}`]
47
+ }, {
48
+ [`& .${toggleButtonGroupClasses.firstButton}`]: styles.firstButton
49
+ }, {
50
+ [`& .${toggleButtonGroupClasses.lastButton}`]: styles.lastButton
51
+ }, {
52
+ [`& .${toggleButtonGroupClasses.middleButton}`]: styles.middleButton
41
53
  }, styles.root, ownerState.orientation === 'vertical' && styles.vertical, ownerState.fullWidth && styles.fullWidth];
42
54
  }
43
55
  })(({
@@ -52,36 +64,46 @@ const ToggleButtonGroupRoot = styled('div', {
52
64
  width: '100%'
53
65
  }, {
54
66
  [`& .${toggleButtonGroupClasses.grouped}`]: _extends({}, ownerState.orientation === 'horizontal' ? {
55
- '&:not(:first-of-type)': {
56
- marginLeft: -1,
57
- borderLeft: '1px solid transparent',
58
- borderTopLeftRadius: 0,
59
- borderBottomLeftRadius: 0
60
- },
61
- '&:not(:last-of-type)': {
62
- borderTopRightRadius: 0,
63
- borderBottomRightRadius: 0
64
- },
65
67
  [`&.${toggleButtonGroupClasses.selected} + .${toggleButtonGroupClasses.grouped}.${toggleButtonGroupClasses.selected}`]: {
66
68
  borderLeft: 0,
67
69
  marginLeft: 0
68
70
  }
69
71
  } : {
70
- '&:not(:first-of-type)': {
71
- marginTop: -1,
72
- borderTop: '1px solid transparent',
73
- borderTopLeftRadius: 0,
74
- borderTopRightRadius: 0
75
- },
76
- '&:not(:last-of-type)': {
77
- borderBottomLeftRadius: 0,
78
- borderBottomRightRadius: 0
79
- },
80
72
  [`&.${toggleButtonGroupClasses.selected} + .${toggleButtonGroupClasses.grouped}.${toggleButtonGroupClasses.selected}`]: {
81
73
  borderTop: 0,
82
74
  marginTop: 0
83
75
  }
84
76
  })
77
+ }, ownerState.orientation === 'horizontal' ? {
78
+ [`& .${toggleButtonGroupClasses.firstButton},& .${toggleButtonGroupClasses.middleButton}`]: {
79
+ borderTopRightRadius: 0,
80
+ borderBottomRightRadius: 0
81
+ },
82
+ [`& .${toggleButtonGroupClasses.lastButton},& .${toggleButtonGroupClasses.middleButton}`]: {
83
+ marginLeft: -1,
84
+ borderLeft: '1px solid transparent',
85
+ borderTopLeftRadius: 0,
86
+ borderBottomLeftRadius: 0
87
+ }
88
+ } : {
89
+ [`& .${toggleButtonGroupClasses.firstButton},& .${toggleButtonGroupClasses.middleButton}`]: {
90
+ borderBottomLeftRadius: 0,
91
+ borderBottomRightRadius: 0
92
+ },
93
+ [`& .${toggleButtonGroupClasses.lastButton},& .${toggleButtonGroupClasses.middleButton}`]: {
94
+ marginTop: -1,
95
+ borderTop: '1px solid transparent',
96
+ borderTopLeftRadius: 0,
97
+ borderTopRightRadius: 0
98
+ }
99
+ }, ownerState.orientation === 'horizontal' ? {
100
+ [`& .${toggleButtonGroupClasses.lastButton}.${toggleButtonClasses.disabled},& .${toggleButtonGroupClasses.middleButton}.${toggleButtonClasses.disabled}`]: {
101
+ borderLeft: '1px solid transparent'
102
+ }
103
+ } : {
104
+ [`& .${toggleButtonGroupClasses.lastButton}.${toggleButtonClasses.disabled},& .${toggleButtonGroupClasses.middleButton}.${toggleButtonClasses.disabled}`]: {
105
+ borderTop: '1px solid transparent'
106
+ }
85
107
  }));
86
108
  const ToggleButtonGroup = /*#__PURE__*/React.forwardRef(function ToggleButtonGroup(inProps, ref) {
87
109
  const props = useThemeProps({
@@ -108,7 +130,7 @@ const ToggleButtonGroup = /*#__PURE__*/React.forwardRef(function ToggleButtonGro
108
130
  size
109
131
  });
110
132
  const classes = useUtilityClasses(ownerState);
111
- const handleChange = (event, buttonValue) => {
133
+ const handleChange = React.useCallback((event, buttonValue) => {
112
134
  if (!onChange) {
113
135
  return;
114
136
  }
@@ -121,12 +143,37 @@ const ToggleButtonGroup = /*#__PURE__*/React.forwardRef(function ToggleButtonGro
121
143
  newValue = value ? value.concat(buttonValue) : [buttonValue];
122
144
  }
123
145
  onChange(event, newValue);
124
- };
125
- const handleExclusiveChange = (event, buttonValue) => {
146
+ }, [onChange, value]);
147
+ const handleExclusiveChange = React.useCallback((event, buttonValue) => {
126
148
  if (!onChange) {
127
149
  return;
128
150
  }
129
151
  onChange(event, value === buttonValue ? null : buttonValue);
152
+ }, [onChange, value]);
153
+ const context = React.useMemo(() => ({
154
+ className: classes.grouped,
155
+ onChange: exclusive ? handleExclusiveChange : handleChange,
156
+ value,
157
+ size,
158
+ fullWidth,
159
+ color,
160
+ disabled
161
+ }), [classes.grouped, exclusive, handleExclusiveChange, handleChange, value, size, fullWidth, color, disabled]);
162
+ const validChildren = getValidReactChildren(children);
163
+ const childrenCount = validChildren.length;
164
+ const getButtonPositionClassName = index => {
165
+ const isFirstButton = index === 0;
166
+ const isLastButton = index === childrenCount - 1;
167
+ if (isFirstButton && isLastButton) {
168
+ return '';
169
+ }
170
+ if (isFirstButton) {
171
+ return classes.firstButton;
172
+ }
173
+ if (isLastButton) {
174
+ return classes.lastButton;
175
+ }
176
+ return classes.middleButton;
130
177
  };
131
178
  return /*#__PURE__*/_jsx(ToggleButtonGroupRoot, _extends({
132
179
  role: "group",
@@ -134,32 +181,27 @@ const ToggleButtonGroup = /*#__PURE__*/React.forwardRef(function ToggleButtonGro
134
181
  ref: ref,
135
182
  ownerState: ownerState
136
183
  }, other, {
137
- children: React.Children.map(children, child => {
138
- if (! /*#__PURE__*/React.isValidElement(child)) {
139
- return null;
140
- }
141
- if (process.env.NODE_ENV !== 'production') {
142
- if (isFragment(child)) {
143
- console.error(["MUI: The ToggleButtonGroup component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
184
+ children: /*#__PURE__*/_jsx(ToggleButtonGroupContext.Provider, {
185
+ value: context,
186
+ children: validChildren.map((child, index) => {
187
+ if (process.env.NODE_ENV !== 'production') {
188
+ if (isFragment(child)) {
189
+ console.error(["MUI: The ToggleButtonGroup component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
190
+ }
144
191
  }
145
- }
146
- return /*#__PURE__*/React.cloneElement(child, {
147
- className: clsx(classes.grouped, child.props.className),
148
- onChange: exclusive ? handleExclusiveChange : handleChange,
149
- selected: child.props.selected === undefined ? isValueSelected(child.props.value, value) : child.props.selected,
150
- size: child.props.size || size,
151
- fullWidth,
152
- color: child.props.color || color,
153
- disabled: child.props.disabled || disabled
154
- });
192
+ return /*#__PURE__*/_jsx(ToggleButtonGroupButtonContext.Provider, {
193
+ value: getButtonPositionClassName(index),
194
+ children: child
195
+ }, index);
196
+ })
155
197
  })
156
198
  }));
157
199
  });
158
200
  process.env.NODE_ENV !== "production" ? ToggleButtonGroup.propTypes /* remove-proptypes */ = {
159
- // ----------------------------- Warning --------------------------------
160
- // | These PropTypes are generated from the TypeScript type definitions |
161
- // | To update them edit the d.ts file and run "yarn proptypes" |
162
- // ----------------------------------------------------------------------
201
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
202
+ // These PropTypes are generated from the TypeScript type definitions.
203
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
204
+ // └─────────────────────────────────────────────────────────────────────┘
163
205
  /**
164
206
  * The content of the component.
165
207
  */
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @ignore - internal component.
4
+ */
5
+ const ToggleButtonGroupButtonContext = /*#__PURE__*/React.createContext(undefined);
6
+ if (process.env.NODE_ENV !== 'production') {
7
+ ToggleButtonGroupButtonContext.displayName = 'ToggleButtonGroupButtonContext';
8
+ }
9
+ export default ToggleButtonGroupButtonContext;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * @ignore - internal component.
4
+ */
5
+ const ToggleButtonGroupContext = /*#__PURE__*/React.createContext({});
6
+ if (process.env.NODE_ENV !== 'production') {
7
+ ToggleButtonGroupContext.displayName = 'ToggleButtonGroupContext';
8
+ }
9
+ export default ToggleButtonGroupContext;
@@ -3,5 +3,5 @@ import generateUtilityClass from '@mui/utils/generateUtilityClass';
3
3
  export function getToggleButtonGroupUtilityClass(slot) {
4
4
  return generateUtilityClass('MuiToggleButtonGroup', slot);
5
5
  }
6
- const toggleButtonGroupClasses = generateUtilityClasses('MuiToggleButtonGroup', ['root', 'selected', 'vertical', 'disabled', 'grouped', 'groupedHorizontal', 'groupedVertical', 'fullWidth']);
6
+ const toggleButtonGroupClasses = generateUtilityClasses('MuiToggleButtonGroup', ['root', 'selected', 'vertical', 'disabled', 'grouped', 'groupedHorizontal', 'groupedVertical', 'fullWidth', 'firstButton', 'lastButton', 'middleButton']);
7
7
  export default toggleButtonGroupClasses;
@@ -77,10 +77,10 @@ const Toolbar = /*#__PURE__*/React.forwardRef(function Toolbar(inProps, ref) {
77
77
  }, other));
78
78
  });
79
79
  process.env.NODE_ENV !== "production" ? Toolbar.propTypes /* remove-proptypes */ = {
80
- // ----------------------------- Warning --------------------------------
81
- // | These PropTypes are generated from the TypeScript type definitions |
82
- // | To update them edit the d.ts file and run "yarn proptypes" |
83
- // ----------------------------------------------------------------------
80
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
81
+ // These PropTypes are generated from the TypeScript type definitions.
82
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
83
+ // └─────────────────────────────────────────────────────────────────────┘
84
84
  /**
85
85
  * The Toolbar children, usually a mixture of `IconButton`, `Button` and `Typography`.
86
86
  * The Toolbar is a flex container, allowing flex item properties to be used to lay out the children.
@@ -584,10 +584,10 @@ const Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(inProps, ref) {
584
584
  });
585
585
  });
586
586
  process.env.NODE_ENV !== "production" ? Tooltip.propTypes /* remove-proptypes */ = {
587
- // ----------------------------- Warning --------------------------------
588
- // | These PropTypes are generated from the TypeScript type definitions |
589
- // | To update them edit the d.ts file and run "yarn proptypes" |
590
- // ----------------------------------------------------------------------
587
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
588
+ // These PropTypes are generated from the TypeScript type definitions.
589
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
590
+ // └─────────────────────────────────────────────────────────────────────┘
591
591
  /**
592
592
  * If `true`, adds an arrow to the tooltip.
593
593
  * @default false
@@ -121,10 +121,10 @@ const Typography = /*#__PURE__*/React.forwardRef(function Typography(inProps, re
121
121
  }, other));
122
122
  });
123
123
  process.env.NODE_ENV !== "production" ? Typography.propTypes /* remove-proptypes */ = {
124
- // ----------------------------- Warning --------------------------------
125
- // | These PropTypes are generated from the TypeScript type definitions |
126
- // | To update them edit the d.ts file and run "yarn proptypes" |
127
- // ----------------------------------------------------------------------
124
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
125
+ // These PropTypes are generated from the TypeScript type definitions.
126
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
127
+ // └─────────────────────────────────────────────────────────────────────┘
128
128
  /**
129
129
  * Set the text-align on the component.
130
130
  * @default 'inherit'
@@ -16,10 +16,10 @@ const Grid2 = createGrid2({
16
16
  })
17
17
  });
18
18
  process.env.NODE_ENV !== "production" ? Grid2.propTypes /* remove-proptypes */ = {
19
- // ----------------------------- Warning --------------------------------
20
- // | These PropTypes are generated from the TypeScript type definitions |
21
- // | To update them edit TypeScript types and run "yarn proptypes" |
22
- // ----------------------------------------------------------------------
19
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
20
+ // These PropTypes are generated from the TypeScript type definitions.
21
+ // To update them, edit the TypeScript types and run `pnpm proptypes`. │
22
+ // └─────────────────────────────────────────────────────────────────────┘
23
23
  /**
24
24
  * The content of the component.
25
25
  */
@@ -128,10 +128,10 @@ const Zoom = /*#__PURE__*/React.forwardRef(function Zoom(props, ref) {
128
128
  }));
129
129
  });
130
130
  process.env.NODE_ENV !== "production" ? Zoom.propTypes /* remove-proptypes */ = {
131
- // ----------------------------- Warning --------------------------------
132
- // | These PropTypes are generated from the TypeScript type definitions |
133
- // | To update them edit the d.ts file and run "yarn proptypes" |
134
- // ----------------------------------------------------------------------
131
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
132
+ // These PropTypes are generated from the TypeScript type definitions.
133
+ // To update them, edit the d.ts file and run `pnpm proptypes`.
134
+ // └─────────────────────────────────────────────────────────────────────┘
135
135
  /**
136
136
  * Add a custom transition end trigger. Called with the transitioning DOM
137
137
  * node and a done callback. Allows for more fine grained transition end
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/material v5.15.3
2
+ * @mui/material v5.15.5
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -1,5 +1,8 @@
1
1
  'use client';
2
2
 
3
+ // do not remove the following import (https://github.com/microsoft/TypeScript/issues/29808#issuecomment-1320713018)
4
+ /* eslint-disable @typescript-eslint/no-unused-vars */
5
+ // @ts-ignore
3
6
  import _extends from "@babel/runtime/helpers/esm/extends";
4
7
  import { unstable_createCssVarsProvider as createCssVarsProvider, unstable_styleFunctionSx as styleFunctionSx } from '@mui/system';
5
8
  import experimental_extendTheme from './experimental_extendTheme';
@@ -0,0 +1 @@
1
+ export {};