@mui/material 7.3.9 → 7.3.11

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 (395) hide show
  1. package/Accordion/Accordion.d.ts +3 -3
  2. package/AccordionActions/AccordionActions.d.ts +2 -2
  3. package/AccordionDetails/AccordionDetails.d.ts +2 -2
  4. package/AccordionSummary/AccordionSummary.d.ts +3 -3
  5. package/Alert/Alert.d.ts +3 -3
  6. package/AlertTitle/AlertTitle.d.ts +3 -3
  7. package/AppBar/AppBar.d.ts +3 -3
  8. package/Autocomplete/Autocomplete.d.ts +18 -2
  9. package/Autocomplete/Autocomplete.js +111 -37
  10. package/Avatar/Avatar.d.ts +2 -2
  11. package/AvatarGroup/AvatarGroup.d.ts +2 -2
  12. package/Backdrop/Backdrop.d.ts +3 -3
  13. package/Badge/Badge.d.ts +3 -3
  14. package/BottomNavigation/BottomNavigation.d.ts +2 -2
  15. package/BottomNavigationAction/BottomNavigationAction.d.ts +3 -3
  16. package/Box/Box.d.ts +3 -2
  17. package/Breadcrumbs/Breadcrumbs.d.ts +3 -3
  18. package/Button/Button.d.ts +6 -5
  19. package/Button/Button.js +18 -1
  20. package/ButtonBase/ButtonBase.d.ts +2 -2
  21. package/ButtonBase/ButtonBase.js +8 -2
  22. package/ButtonGroup/ButtonGroup.d.ts +2 -2
  23. package/CHANGELOG.md +82 -0
  24. package/Card/Card.d.ts +3 -3
  25. package/CardActionArea/CardActionArea.d.ts +3 -3
  26. package/CardActions/CardActions.d.ts +2 -2
  27. package/CardContent/CardContent.d.ts +2 -2
  28. package/CardHeader/CardHeader.d.ts +2 -2
  29. package/CardHeader/CardHeader.js +5 -1
  30. package/CardMedia/CardMedia.d.ts +2 -2
  31. package/Checkbox/Checkbox.d.ts +4 -4
  32. package/Checkbox/Checkbox.js +2 -1
  33. package/Chip/Chip.d.ts +2 -2
  34. package/CircularProgress/CircularProgress.d.ts +2 -2
  35. package/ClickAwayListener/ClickAwayListener.d.ts +3 -3
  36. package/ClickAwayListener/ClickAwayListener.js +5 -8
  37. package/Collapse/Collapse.d.ts +5 -5
  38. package/Collapse/Collapse.js +6 -18
  39. package/Container/Container.d.ts +2 -2
  40. package/CssBaseline/CssBaseline.d.ts +2 -2
  41. package/Dialog/Dialog.d.ts +10 -3
  42. package/Dialog/Dialog.js +19 -6
  43. package/DialogActions/DialogActions.d.ts +2 -2
  44. package/DialogContent/DialogContent.d.ts +2 -2
  45. package/DialogContentText/DialogContentText.d.ts +3 -3
  46. package/DialogTitle/DialogTitle.d.ts +3 -3
  47. package/Divider/Divider.d.ts +4 -3
  48. package/Drawer/Drawer.d.ts +3 -3
  49. package/Drawer/Drawer.js +18 -4
  50. package/Fab/Fab.d.ts +3 -3
  51. package/Fab/Fab.js +7 -1
  52. package/Fade/Fade.d.ts +3 -3
  53. package/Fade/Fade.js +28 -32
  54. package/FilledInput/FilledInput.d.ts +3 -3
  55. package/FilledInput/FilledInput.js +1 -1
  56. package/FormControl/FormControl.d.ts +7 -7
  57. package/FormControlLabel/FormControlLabel.d.ts +4 -4
  58. package/FormGroup/FormGroup.d.ts +3 -3
  59. package/FormHelperText/FormHelperText.d.ts +3 -3
  60. package/FormLabel/FormLabel.d.ts +5 -5
  61. package/GlobalStyles/GlobalStyles.d.ts +2 -2
  62. package/Grid/Grid.d.ts +2 -2
  63. package/Grid/Grid.js +2 -2
  64. package/GridLegacy/GridLegacy.d.ts +2 -2
  65. package/Grow/Grow.d.ts +5 -5
  66. package/Grow/Grow.js +30 -38
  67. package/Icon/Icon.d.ts +3 -3
  68. package/IconButton/IconButton.d.ts +5 -5
  69. package/ImageList/ImageList.d.ts +2 -2
  70. package/ImageListItem/ImageListItem.d.ts +2 -2
  71. package/ImageListItemBar/ImageListItemBar.d.ts +2 -2
  72. package/InitColorSchemeScript/InitColorSchemeScript.d.ts +2 -2
  73. package/InitColorSchemeScript/InitColorSchemeScript.js +2 -2
  74. package/Input/Input.d.ts +3 -3
  75. package/Input/Input.js +1 -1
  76. package/InputAdornment/InputAdornment.d.ts +2 -2
  77. package/InputBase/InputBase.d.ts +2 -2
  78. package/InputBase/InputBase.js +39 -7
  79. package/InputLabel/InputLabel.d.ts +4 -4
  80. package/LinearProgress/LinearProgress.d.ts +2 -2
  81. package/Link/Link.d.ts +4 -4
  82. package/List/List.d.ts +4 -3
  83. package/ListItem/ListItem.d.ts +3 -3
  84. package/ListItemAvatar/ListItemAvatar.d.ts +2 -2
  85. package/ListItemButton/ListItemButton.d.ts +4 -3
  86. package/ListItemButton/ListItemButton.js +7 -1
  87. package/ListItemIcon/ListItemIcon.d.ts +3 -2
  88. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +2 -2
  89. package/ListItemText/ListItemText.d.ts +3 -2
  90. package/ListItemText/ListItemText.js +5 -1
  91. package/ListSubheader/ListSubheader.d.ts +3 -2
  92. package/Menu/Menu.d.ts +4 -4
  93. package/MenuItem/MenuItem.d.ts +3 -3
  94. package/MenuItem/MenuItem.js +27 -2
  95. package/MenuList/MenuList.d.ts +4 -4
  96. package/MobileStepper/MobileStepper.d.ts +3 -3
  97. package/Modal/Modal.d.ts +7 -7
  98. package/NativeSelect/NativeSelect.d.ts +3 -3
  99. package/NoSsr/NoSsr.d.ts +2 -2
  100. package/NoSsr/NoSsr.js +2 -2
  101. package/OutlinedInput/OutlinedInput.d.ts +4 -4
  102. package/Pagination/Pagination.d.ts +2 -2
  103. package/PaginationItem/PaginationItem.d.ts +3 -3
  104. package/Paper/Paper.d.ts +4 -3
  105. package/PigmentContainer/PigmentContainer.d.ts +2 -2
  106. package/PigmentContainer/PigmentContainer.js +2 -3
  107. package/PigmentGrid/PigmentGrid.d.ts +2 -2
  108. package/PigmentGrid/PigmentGrid.js +2 -3
  109. package/PigmentStack/PigmentStack.d.ts +2 -2
  110. package/PigmentStack/PigmentStack.js +2 -3
  111. package/Popover/Popover.d.ts +4 -4
  112. package/Popper/BasePopper.js +23 -1
  113. package/Popper/Popper.d.ts +4 -4
  114. package/Popper/Popper.js +4 -4
  115. package/Popper/index.d.ts +1 -0
  116. package/Popper/index.js +11 -2
  117. package/Portal/Portal.d.ts +2 -2
  118. package/Portal/Portal.js +2 -2
  119. package/README.md +2 -2
  120. package/Radio/Radio.d.ts +3 -3
  121. package/RadioGroup/RadioGroup.d.ts +3 -3
  122. package/Rating/Rating.d.ts +2 -2
  123. package/ScopedCssBaseline/ScopedCssBaseline.d.ts +2 -2
  124. package/Select/Select.d.ts +3 -3
  125. package/Select/SelectInput.js +46 -47
  126. package/Select/index.d.ts +1 -0
  127. package/Select/index.js +12 -0
  128. package/Select/utils/SelectFocusSourceContext.d.ts +4 -0
  129. package/Select/utils/SelectFocusSourceContext.js +19 -0
  130. package/Select/utils/areEqualValues.d.ts +1 -0
  131. package/Select/utils/areEqualValues.js +14 -0
  132. package/Select/utils/getOpenInteractionType.d.ts +1 -0
  133. package/Select/utils/getOpenInteractionType.js +18 -0
  134. package/Select/utils/index.d.ts +4 -0
  135. package/Select/utils/index.js +40 -0
  136. package/Select/utils/isEmpty.d.ts +1 -0
  137. package/Select/utils/isEmpty.js +9 -0
  138. package/Skeleton/Skeleton.d.ts +2 -2
  139. package/Slide/Slide.d.ts +4 -4
  140. package/Slide/Slide.js +43 -42
  141. package/Slider/Slider.d.ts +7 -7
  142. package/Slider/useSlider.js +6 -3
  143. package/Snackbar/Snackbar.d.ts +2 -2
  144. package/SnackbarContent/SnackbarContent.d.ts +3 -3
  145. package/SpeedDial/SpeedDial.d.ts +2 -2
  146. package/SpeedDialAction/SpeedDialAction.d.ts +3 -3
  147. package/SpeedDialIcon/SpeedDialIcon.d.ts +2 -2
  148. package/Stack/Stack.d.ts +2 -2
  149. package/Step/Step.d.ts +2 -2
  150. package/StepButton/StepButton.d.ts +3 -3
  151. package/StepConnector/StepConnector.d.ts +2 -2
  152. package/StepContent/StepContent.d.ts +2 -2
  153. package/StepIcon/StepIcon.d.ts +3 -3
  154. package/StepLabel/StepLabel.d.ts +2 -2
  155. package/Stepper/Stepper.d.ts +2 -2
  156. package/SvgIcon/SvgIcon.d.ts +3 -3
  157. package/SwipeableDrawer/SwipeableDrawer.d.ts +3 -3
  158. package/SwipeableDrawer/SwipeableDrawer.js +5 -7
  159. package/Switch/Switch.d.ts +4 -4
  160. package/Switch/Switch.js +7 -4
  161. package/Tab/Tab.d.ts +3 -3
  162. package/TabScrollButton/TabScrollButton.d.ts +2 -2
  163. package/Table/Table.d.ts +2 -2
  164. package/TableBody/TableBody.d.ts +2 -2
  165. package/TableCell/TableCell.d.ts +2 -2
  166. package/TableContainer/TableContainer.d.ts +2 -2
  167. package/TableFooter/TableFooter.d.ts +2 -2
  168. package/TableHead/TableHead.d.ts +2 -2
  169. package/TablePagination/TablePagination.d.ts +4 -4
  170. package/TablePaginationActions/TablePaginationActions.d.ts +2 -2
  171. package/TableRow/TableRow.d.ts +2 -2
  172. package/TableSortLabel/TableSortLabel.d.ts +3 -3
  173. package/Tabs/Tabs.d.ts +2 -2
  174. package/TextField/TextField.d.ts +10 -10
  175. package/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  176. package/TextareaAutosize/TextareaAutosize.js +2 -2
  177. package/ToggleButton/ToggleButton.d.ts +3 -3
  178. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +2 -2
  179. package/Toolbar/Toolbar.d.ts +2 -2
  180. package/Tooltip/Tooltip.d.ts +2 -2
  181. package/Typography/Typography.d.ts +4 -3
  182. package/Unstable_TrapFocus/FocusTrap.js +15 -5
  183. package/Zoom/Zoom.d.ts +3 -3
  184. package/Zoom/Zoom.js +24 -30
  185. package/esm/Accordion/Accordion.d.ts +3 -3
  186. package/esm/AccordionActions/AccordionActions.d.ts +2 -2
  187. package/esm/AccordionDetails/AccordionDetails.d.ts +2 -2
  188. package/esm/AccordionSummary/AccordionSummary.d.ts +3 -3
  189. package/esm/Alert/Alert.d.ts +3 -3
  190. package/esm/AlertTitle/AlertTitle.d.ts +3 -3
  191. package/esm/AppBar/AppBar.d.ts +3 -3
  192. package/esm/Autocomplete/Autocomplete.d.ts +18 -2
  193. package/esm/Autocomplete/Autocomplete.js +111 -37
  194. package/esm/Avatar/Avatar.d.ts +2 -2
  195. package/esm/AvatarGroup/AvatarGroup.d.ts +2 -2
  196. package/esm/Backdrop/Backdrop.d.ts +3 -3
  197. package/esm/Badge/Badge.d.ts +3 -3
  198. package/esm/BottomNavigation/BottomNavigation.d.ts +2 -2
  199. package/esm/BottomNavigationAction/BottomNavigationAction.d.ts +3 -3
  200. package/esm/Box/Box.d.ts +3 -2
  201. package/esm/Breadcrumbs/Breadcrumbs.d.ts +3 -3
  202. package/esm/Button/Button.d.ts +6 -5
  203. package/esm/Button/Button.js +18 -1
  204. package/esm/ButtonBase/ButtonBase.d.ts +2 -2
  205. package/esm/ButtonBase/ButtonBase.js +8 -2
  206. package/esm/ButtonGroup/ButtonGroup.d.ts +2 -2
  207. package/esm/Card/Card.d.ts +3 -3
  208. package/esm/CardActionArea/CardActionArea.d.ts +3 -3
  209. package/esm/CardActions/CardActions.d.ts +2 -2
  210. package/esm/CardContent/CardContent.d.ts +2 -2
  211. package/esm/CardHeader/CardHeader.d.ts +2 -2
  212. package/esm/CardHeader/CardHeader.js +5 -1
  213. package/esm/CardMedia/CardMedia.d.ts +2 -2
  214. package/esm/Checkbox/Checkbox.d.ts +4 -4
  215. package/esm/Checkbox/Checkbox.js +2 -1
  216. package/esm/Chip/Chip.d.ts +2 -2
  217. package/esm/CircularProgress/CircularProgress.d.ts +2 -2
  218. package/esm/ClickAwayListener/ClickAwayListener.d.ts +3 -3
  219. package/esm/ClickAwayListener/ClickAwayListener.js +5 -8
  220. package/esm/Collapse/Collapse.d.ts +5 -5
  221. package/esm/Collapse/Collapse.js +7 -19
  222. package/esm/Container/Container.d.ts +2 -2
  223. package/esm/CssBaseline/CssBaseline.d.ts +2 -2
  224. package/esm/Dialog/Dialog.d.ts +10 -3
  225. package/esm/Dialog/Dialog.js +19 -6
  226. package/esm/DialogActions/DialogActions.d.ts +2 -2
  227. package/esm/DialogContent/DialogContent.d.ts +2 -2
  228. package/esm/DialogContentText/DialogContentText.d.ts +3 -3
  229. package/esm/DialogTitle/DialogTitle.d.ts +3 -3
  230. package/esm/Divider/Divider.d.ts +4 -3
  231. package/esm/Drawer/Drawer.d.ts +3 -3
  232. package/esm/Drawer/Drawer.js +18 -4
  233. package/esm/Fab/Fab.d.ts +3 -3
  234. package/esm/Fab/Fab.js +7 -1
  235. package/esm/Fade/Fade.d.ts +3 -3
  236. package/esm/Fade/Fade.js +29 -33
  237. package/esm/FilledInput/FilledInput.d.ts +3 -3
  238. package/esm/FilledInput/FilledInput.js +1 -1
  239. package/esm/FormControl/FormControl.d.ts +7 -7
  240. package/esm/FormControlLabel/FormControlLabel.d.ts +4 -4
  241. package/esm/FormGroup/FormGroup.d.ts +3 -3
  242. package/esm/FormHelperText/FormHelperText.d.ts +3 -3
  243. package/esm/FormLabel/FormLabel.d.ts +5 -5
  244. package/esm/GlobalStyles/GlobalStyles.d.ts +2 -2
  245. package/esm/Grid/Grid.d.ts +2 -2
  246. package/esm/Grid/Grid.js +2 -2
  247. package/esm/GridLegacy/GridLegacy.d.ts +2 -2
  248. package/esm/Grow/Grow.d.ts +5 -5
  249. package/esm/Grow/Grow.js +31 -39
  250. package/esm/Icon/Icon.d.ts +3 -3
  251. package/esm/IconButton/IconButton.d.ts +5 -5
  252. package/esm/ImageList/ImageList.d.ts +2 -2
  253. package/esm/ImageListItem/ImageListItem.d.ts +2 -2
  254. package/esm/ImageListItemBar/ImageListItemBar.d.ts +2 -2
  255. package/esm/InitColorSchemeScript/InitColorSchemeScript.d.ts +2 -2
  256. package/esm/InitColorSchemeScript/InitColorSchemeScript.js +2 -2
  257. package/esm/Input/Input.d.ts +3 -3
  258. package/esm/Input/Input.js +1 -1
  259. package/esm/InputAdornment/InputAdornment.d.ts +2 -2
  260. package/esm/InputBase/InputBase.d.ts +2 -2
  261. package/esm/InputBase/InputBase.js +39 -7
  262. package/esm/InputLabel/InputLabel.d.ts +4 -4
  263. package/esm/LinearProgress/LinearProgress.d.ts +2 -2
  264. package/esm/Link/Link.d.ts +4 -4
  265. package/esm/List/List.d.ts +4 -3
  266. package/esm/ListItem/ListItem.d.ts +3 -3
  267. package/esm/ListItemAvatar/ListItemAvatar.d.ts +2 -2
  268. package/esm/ListItemButton/ListItemButton.d.ts +4 -3
  269. package/esm/ListItemButton/ListItemButton.js +7 -1
  270. package/esm/ListItemIcon/ListItemIcon.d.ts +3 -2
  271. package/esm/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +2 -2
  272. package/esm/ListItemText/ListItemText.d.ts +3 -2
  273. package/esm/ListItemText/ListItemText.js +5 -1
  274. package/esm/ListSubheader/ListSubheader.d.ts +3 -2
  275. package/esm/Menu/Menu.d.ts +4 -4
  276. package/esm/MenuItem/MenuItem.d.ts +3 -3
  277. package/esm/MenuItem/MenuItem.js +29 -2
  278. package/esm/MenuList/MenuList.d.ts +4 -4
  279. package/esm/MobileStepper/MobileStepper.d.ts +3 -3
  280. package/esm/Modal/Modal.d.ts +7 -7
  281. package/esm/NativeSelect/NativeSelect.d.ts +3 -3
  282. package/esm/NoSsr/NoSsr.d.ts +2 -2
  283. package/esm/NoSsr/NoSsr.js +2 -2
  284. package/esm/OutlinedInput/OutlinedInput.d.ts +4 -4
  285. package/esm/Pagination/Pagination.d.ts +2 -2
  286. package/esm/PaginationItem/PaginationItem.d.ts +3 -3
  287. package/esm/Paper/Paper.d.ts +4 -3
  288. package/esm/PigmentContainer/PigmentContainer.d.ts +2 -2
  289. package/esm/PigmentContainer/PigmentContainer.js +2 -4
  290. package/esm/PigmentGrid/PigmentGrid.d.ts +2 -2
  291. package/esm/PigmentGrid/PigmentGrid.js +2 -4
  292. package/esm/PigmentStack/PigmentStack.d.ts +2 -2
  293. package/esm/PigmentStack/PigmentStack.js +2 -4
  294. package/esm/Popover/Popover.d.ts +4 -4
  295. package/esm/Popper/BasePopper.js +23 -1
  296. package/esm/Popper/Popper.d.ts +4 -4
  297. package/esm/Popper/Popper.js +4 -4
  298. package/esm/Popper/index.d.ts +1 -0
  299. package/esm/Popper/index.js +1 -0
  300. package/esm/Portal/Portal.d.ts +2 -2
  301. package/esm/Portal/Portal.js +2 -2
  302. package/esm/Radio/Radio.d.ts +3 -3
  303. package/esm/RadioGroup/RadioGroup.d.ts +3 -3
  304. package/esm/Rating/Rating.d.ts +2 -2
  305. package/esm/ScopedCssBaseline/ScopedCssBaseline.d.ts +2 -2
  306. package/esm/Select/Select.d.ts +3 -3
  307. package/esm/Select/SelectInput.js +43 -44
  308. package/esm/Select/index.d.ts +1 -0
  309. package/esm/Select/index.js +1 -0
  310. package/esm/Select/utils/SelectFocusSourceContext.d.ts +4 -0
  311. package/esm/Select/utils/SelectFocusSourceContext.js +13 -0
  312. package/esm/Select/utils/areEqualValues.d.ts +1 -0
  313. package/esm/Select/utils/areEqualValues.js +8 -0
  314. package/esm/Select/utils/getOpenInteractionType.d.ts +1 -0
  315. package/esm/Select/utils/getOpenInteractionType.js +12 -0
  316. package/esm/Select/utils/index.d.ts +4 -0
  317. package/esm/Select/utils/index.js +4 -0
  318. package/esm/Select/utils/isEmpty.d.ts +1 -0
  319. package/esm/Select/utils/isEmpty.js +3 -0
  320. package/esm/Skeleton/Skeleton.d.ts +2 -2
  321. package/esm/Slide/Slide.d.ts +4 -4
  322. package/esm/Slide/Slide.js +44 -44
  323. package/esm/Slider/Slider.d.ts +7 -7
  324. package/esm/Slider/useSlider.js +6 -3
  325. package/esm/Snackbar/Snackbar.d.ts +2 -2
  326. package/esm/SnackbarContent/SnackbarContent.d.ts +3 -3
  327. package/esm/SpeedDial/SpeedDial.d.ts +2 -2
  328. package/esm/SpeedDialAction/SpeedDialAction.d.ts +3 -3
  329. package/esm/SpeedDialIcon/SpeedDialIcon.d.ts +2 -2
  330. package/esm/Stack/Stack.d.ts +2 -2
  331. package/esm/Step/Step.d.ts +2 -2
  332. package/esm/StepButton/StepButton.d.ts +3 -3
  333. package/esm/StepConnector/StepConnector.d.ts +2 -2
  334. package/esm/StepContent/StepContent.d.ts +2 -2
  335. package/esm/StepIcon/StepIcon.d.ts +3 -3
  336. package/esm/StepLabel/StepLabel.d.ts +2 -2
  337. package/esm/Stepper/Stepper.d.ts +2 -2
  338. package/esm/SvgIcon/SvgIcon.d.ts +3 -3
  339. package/esm/SwipeableDrawer/SwipeableDrawer.d.ts +3 -3
  340. package/esm/SwipeableDrawer/SwipeableDrawer.js +5 -7
  341. package/esm/Switch/Switch.d.ts +4 -4
  342. package/esm/Switch/Switch.js +7 -4
  343. package/esm/Tab/Tab.d.ts +3 -3
  344. package/esm/TabScrollButton/TabScrollButton.d.ts +2 -2
  345. package/esm/Table/Table.d.ts +2 -2
  346. package/esm/TableBody/TableBody.d.ts +2 -2
  347. package/esm/TableCell/TableCell.d.ts +2 -2
  348. package/esm/TableContainer/TableContainer.d.ts +2 -2
  349. package/esm/TableFooter/TableFooter.d.ts +2 -2
  350. package/esm/TableHead/TableHead.d.ts +2 -2
  351. package/esm/TablePagination/TablePagination.d.ts +4 -4
  352. package/esm/TablePaginationActions/TablePaginationActions.d.ts +2 -2
  353. package/esm/TableRow/TableRow.d.ts +2 -2
  354. package/esm/TableSortLabel/TableSortLabel.d.ts +3 -3
  355. package/esm/Tabs/Tabs.d.ts +2 -2
  356. package/esm/TextField/TextField.d.ts +10 -10
  357. package/esm/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  358. package/esm/TextareaAutosize/TextareaAutosize.js +2 -2
  359. package/esm/ToggleButton/ToggleButton.d.ts +3 -3
  360. package/esm/ToggleButtonGroup/ToggleButtonGroup.d.ts +2 -2
  361. package/esm/Toolbar/Toolbar.d.ts +2 -2
  362. package/esm/Tooltip/Tooltip.d.ts +2 -2
  363. package/esm/Typography/Typography.d.ts +4 -3
  364. package/esm/Unstable_TrapFocus/FocusTrap.js +15 -5
  365. package/esm/Zoom/Zoom.d.ts +3 -3
  366. package/esm/Zoom/Zoom.js +25 -31
  367. package/esm/index.js +1 -1
  368. package/esm/styles/createThemeNoVars.js +1 -1
  369. package/esm/styles/createThemeWithVars.js +9 -9
  370. package/esm/transitions/utils.d.ts +7 -0
  371. package/esm/transitions/utils.js +25 -0
  372. package/esm/useAutocomplete/useAutocomplete.d.ts +4 -5
  373. package/esm/useAutocomplete/useAutocomplete.js +211 -47
  374. package/esm/utils/contains.d.ts +2 -0
  375. package/esm/utils/contains.js +2 -0
  376. package/esm/utils/focusable.d.ts +7 -0
  377. package/esm/utils/focusable.js +13 -0
  378. package/esm/utils/getEventTarget.d.ts +2 -0
  379. package/esm/utils/getEventTarget.js +2 -0
  380. package/esm/version/index.js +2 -2
  381. package/index.js +1 -1
  382. package/package.json +5 -5
  383. package/styles/createThemeNoVars.js +1 -1
  384. package/styles/createThemeWithVars.js +9 -9
  385. package/transitions/utils.d.ts +7 -0
  386. package/transitions/utils.js +27 -0
  387. package/useAutocomplete/useAutocomplete.d.ts +4 -5
  388. package/useAutocomplete/useAutocomplete.js +211 -47
  389. package/utils/contains.d.ts +2 -0
  390. package/utils/contains.js +9 -0
  391. package/utils/focusable.d.ts +7 -0
  392. package/utils/focusable.js +20 -0
  393. package/utils/getEventTarget.d.ts +2 -0
  394. package/utils/getEventTarget.js +9 -0
  395. package/version/index.js +2 -2
@@ -141,15 +141,15 @@ export interface DrawerProps extends StandardProps<ModalProps, 'open' | 'childre
141
141
  export interface DrawerOwnerState extends Omit<DrawerProps, 'slots' | 'slotProps'> {}
142
142
 
143
143
  /**
144
- * The props of the [Modal](https://mui.com/material-ui/api/modal/) component are available
144
+ * The props of the [Modal](https://v7.mui.com/material-ui/api/modal/) component are available
145
145
  * when `variant="temporary"` is set.
146
146
  *
147
147
  * Demos:
148
148
  *
149
- * - [Drawer](https://mui.com/material-ui/react-drawer/)
149
+ * - [Drawer](https://v7.mui.com/material-ui/react-drawer/)
150
150
  *
151
151
  * API:
152
152
  *
153
- * - [Drawer API](https://mui.com/material-ui/api/drawer/)
153
+ * - [Drawer API](https://v7.mui.com/material-ui/api/drawer/)
154
154
  */
155
155
  export default function Drawer(props: DrawerProps): React.JSX.Element;
@@ -14,8 +14,10 @@ import rootShouldForwardProp from "../styles/rootShouldForwardProp.js";
14
14
  import { styled, useTheme } from "../zero-styled/index.js";
15
15
  import memoTheme from "../utils/memoTheme.js";
16
16
  import { useDefaultProps } from "../DefaultPropsProvider/index.js";
17
+ import useForkRef from "../utils/useForkRef.js";
17
18
  import { getDrawerUtilityClass } from "./drawerClasses.js";
18
19
  import useSlot from "../utils/useSlot.js";
20
+ import { FOCUSABLE_ATTRIBUTE } from "../utils/focusable.js";
19
21
  import { mergeSlotProps } from "../utils/index.js";
20
22
  import { jsx as _jsx } from "react/jsx-runtime";
21
23
  const overridesResolver = (props, styles) => {
@@ -208,9 +210,15 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
208
210
  // We use this state is order to skip the appear transition during the
209
211
  // initial mount of the component.
210
212
  const mounted = React.useRef(false);
213
+ const rootRef = React.useRef(null);
214
+ const handleRef = useForkRef(ref, rootRef);
211
215
  React.useEffect(() => {
212
216
  mounted.current = true;
213
217
  }, []);
218
+
219
+ // Resolve the container lazily so Slide reads the mounted modal root
220
+ // after refs are assigned, rather than the initial null ref during render.
221
+ const resolveSlideContainer = React.useCallback(() => rootRef.current, []);
214
222
  const anchorInvariant = getAnchor({
215
223
  direction: isRtl ? 'rtl' : 'ltr'
216
224
  }, anchorProp);
@@ -242,7 +250,7 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
242
250
  }
243
251
  };
244
252
  const [RootSlot, rootSlotProps] = useSlot('root', {
245
- ref,
253
+ ref: handleRef,
246
254
  elementType: DrawerRoot,
247
255
  className: clsx(classes.root, classes.modal, className),
248
256
  shouldForwardComponentProp: true,
@@ -253,6 +261,7 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
253
261
  ...ModalProps
254
262
  },
255
263
  additionalProps: {
264
+ closeAfterTransition: true,
256
265
  open,
257
266
  onClose,
258
267
  hideBackdrop,
@@ -275,13 +284,15 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
275
284
  square: true,
276
285
  ...(variant === 'temporary' && {
277
286
  role: 'dialog',
278
- 'aria-modal': 'true'
287
+ 'aria-modal': 'true',
288
+ [FOCUSABLE_ATTRIBUTE]: '',
289
+ tabIndex: -1
279
290
  })
280
291
  }
281
292
  });
282
293
  const [DockedSlot, dockedSlotProps] = useSlot('docked', {
283
294
  elementType: DrawerDockedRoot,
284
- ref,
295
+ ref: handleRef,
285
296
  className: clsx(classes.root, classes.docked, className),
286
297
  ownerState,
287
298
  externalForwardedProps,
@@ -295,7 +306,10 @@ const Drawer = /*#__PURE__*/React.forwardRef(function Drawer(inProps, ref) {
295
306
  in: open,
296
307
  direction: oppositeDirection[anchorInvariant],
297
308
  timeout: transitionDuration,
298
- appear: mounted.current
309
+ appear: mounted.current,
310
+ ...(variant === 'temporary' && (slots.transition == null || slots.transition === Slide) && {
311
+ container: resolveSlideContainer
312
+ })
299
313
  }
300
314
  });
301
315
  const drawer = /*#__PURE__*/_jsx(PaperSlot, {
package/esm/Fab/Fab.d.ts CHANGED
@@ -68,12 +68,12 @@ export type FabTypeMap<AdditionalProps = {}, RootComponent extends React.Element
68
68
  *
69
69
  * Demos:
70
70
  *
71
- * - [Floating Action Button](https://mui.com/material-ui/react-floating-action-button/)
71
+ * - [Floating Action Button](https://v7.mui.com/material-ui/react-floating-action-button/)
72
72
  *
73
73
  * API:
74
74
  *
75
- * - [Fab API](https://mui.com/material-ui/api/fab/)
76
- * - inherits [ButtonBase API](https://mui.com/material-ui/api/button-base/)
75
+ * - [Fab API](https://v7.mui.com/material-ui/api/fab/)
76
+ * - inherits [ButtonBase API](https://v7.mui.com/material-ui/api/button-base/)
77
77
  */
78
78
  declare const Fab: ExtendButtonBase<FabTypeMap>;
79
79
  export type FabProps<RootComponent extends React.ElementType = FabTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<FabTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
package/esm/Fab/Fab.js CHANGED
@@ -187,6 +187,12 @@ const Fab = /*#__PURE__*/React.forwardRef(function Fab(inProps, ref) {
187
187
  variant
188
188
  };
189
189
  const classes = useUtilityClasses(ownerState);
190
+
191
+ // Don't forward the 'root' class to the ButtonBase, as it will get duplicated with the one passed to the className prop.
192
+ const {
193
+ root,
194
+ ...forwardedClasses
195
+ } = classes;
190
196
  return /*#__PURE__*/_jsx(FabRoot, {
191
197
  className: clsx(classes.root, className),
192
198
  component: component,
@@ -196,7 +202,7 @@ const Fab = /*#__PURE__*/React.forwardRef(function Fab(inProps, ref) {
196
202
  ownerState: ownerState,
197
203
  ref: ref,
198
204
  ...other,
199
- classes: classes,
205
+ classes: forwardedClasses,
200
206
  children: children
201
207
  });
202
208
  });
@@ -33,16 +33,16 @@ export interface FadeProps extends Omit<TransitionProps, 'children'> {
33
33
  }
34
34
 
35
35
  /**
36
- * The Fade transition is used by the [Modal](https://mui.com/material-ui/react-modal/) component.
36
+ * The Fade transition is used by the [Modal](https://v7.mui.com/material-ui/react-modal/) component.
37
37
  * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
38
38
  *
39
39
  * Demos:
40
40
  *
41
- * - [Transitions](https://mui.com/material-ui/transitions/)
41
+ * - [Transitions](https://v7.mui.com/material-ui/transitions/)
42
42
  *
43
43
  * API:
44
44
  *
45
- * - [Fade API](https://mui.com/material-ui/api/fade/)
45
+ * - [Fade API](https://v7.mui.com/material-ui/api/fade/)
46
46
  * - inherits [Transition API](https://reactcommunity.org/react-transition-group/transition/#Transition-props)
47
47
  */
48
48
  export default function Fade(props: FadeProps): React.JSX.Element;
package/esm/Fade/Fade.js CHANGED
@@ -6,7 +6,7 @@ import { Transition } from 'react-transition-group';
6
6
  import elementAcceptingRef from '@mui/utils/elementAcceptingRef';
7
7
  import getReactElementRef from '@mui/utils/getReactElementRef';
8
8
  import { useTheme } from "../zero-styled/index.js";
9
- import { reflow, getTransitionProps } from "../transitions/utils.js";
9
+ import { normalizedTransitionCallback, reflow, getTransitionProps, getTransitionChildStyle } from "../transitions/utils.js";
10
10
  import useForkRef from "../utils/useForkRef.js";
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  const styles = {
@@ -15,8 +15,18 @@ const styles = {
15
15
  },
16
16
  entered: {
17
17
  opacity: 1
18
+ },
19
+ exiting: {
20
+ opacity: 0
21
+ },
22
+ exited: {
23
+ opacity: 0
18
24
  }
19
25
  };
26
+ const hiddenStyles = {
27
+ opacity: 0,
28
+ visibility: 'hidden'
29
+ };
20
30
 
21
31
  /**
22
32
  * The Fade transition is used by the [Modal](/material-ui/react-modal/) component.
@@ -42,27 +52,12 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
42
52
  onExiting,
43
53
  style,
44
54
  timeout = defaultTimeout,
45
- // eslint-disable-next-line react/prop-types
46
- TransitionComponent = Transition,
47
55
  ...other
48
56
  } = props;
49
- const enableStrictModeCompat = true;
50
57
  const nodeRef = React.useRef(null);
51
58
  const handleRef = useForkRef(nodeRef, getReactElementRef(children), ref);
52
- const normalizedTransitionCallback = callback => maybeIsAppearing => {
53
- if (callback) {
54
- const node = nodeRef.current;
55
-
56
- // onEnterXxx and onExitXxx callbacks have a different arguments.length value.
57
- if (maybeIsAppearing === undefined) {
58
- callback(node);
59
- } else {
60
- callback(node, maybeIsAppearing);
61
- }
62
- }
63
- };
64
- const handleEntering = normalizedTransitionCallback(onEntering);
65
- const handleEnter = normalizedTransitionCallback((node, isAppearing) => {
59
+ const handleEntering = normalizedTransitionCallback(nodeRef, onEntering);
60
+ const handleEnter = normalizedTransitionCallback(nodeRef, (node, isAppearing) => {
66
61
  reflow(node); // So the animation always start from the start.
67
62
 
68
63
  const transitionProps = getTransitionProps({
@@ -72,15 +67,14 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
72
67
  }, {
73
68
  mode: 'enter'
74
69
  });
75
- node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
76
70
  node.style.transition = theme.transitions.create('opacity', transitionProps);
77
71
  if (onEnter) {
78
72
  onEnter(node, isAppearing);
79
73
  }
80
74
  });
81
- const handleEntered = normalizedTransitionCallback(onEntered);
82
- const handleExiting = normalizedTransitionCallback(onExiting);
83
- const handleExit = normalizedTransitionCallback(node => {
75
+ const handleEntered = normalizedTransitionCallback(nodeRef, onEntered);
76
+ const handleExiting = normalizedTransitionCallback(nodeRef, onExiting);
77
+ const handleExit = normalizedTransitionCallback(nodeRef, node => {
84
78
  const transitionProps = getTransitionProps({
85
79
  style,
86
80
  timeout,
@@ -88,23 +82,30 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
88
82
  }, {
89
83
  mode: 'exit'
90
84
  });
91
- node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
92
85
  node.style.transition = theme.transitions.create('opacity', transitionProps);
93
86
  if (onExit) {
94
87
  onExit(node);
95
88
  }
96
89
  });
97
- const handleExited = normalizedTransitionCallback(onExited);
90
+ const handleExited = normalizedTransitionCallback(nodeRef, node => {
91
+ // Clear the transition CSS to release the compositor layer when the
92
+ // element is fully exited (prevents idle CPU usage on fixed elements
93
+ // like Backdrop). handleEnter re-sets it on the next open.
94
+ node.style.transition = '';
95
+ if (onExited) {
96
+ onExited(node);
97
+ }
98
+ });
98
99
  const handleAddEndListener = next => {
99
100
  if (addEndListener) {
100
101
  // Old call signature before `react-transition-group` implemented `nodeRef`
101
102
  addEndListener(nodeRef.current, next);
102
103
  }
103
104
  };
104
- return /*#__PURE__*/_jsx(TransitionComponent, {
105
+ return /*#__PURE__*/_jsx(Transition, {
105
106
  appear: appear,
106
107
  in: inProp,
107
- nodeRef: enableStrictModeCompat ? nodeRef : undefined,
108
+ nodeRef: nodeRef,
108
109
  onEnter: handleEnter,
109
110
  onEntered: handleEntered,
110
111
  onEntering: handleEntering,
@@ -118,14 +119,9 @@ const Fade = /*#__PURE__*/React.forwardRef(function Fade(props, ref) {
118
119
  ownerState,
119
120
  ...restChildProps
120
121
  }) => {
122
+ const childStyle = getTransitionChildStyle(state, inProp, styles, hiddenStyles, style, children.props.style);
121
123
  return /*#__PURE__*/React.cloneElement(children, {
122
- style: {
123
- opacity: 0,
124
- visibility: state === 'exited' && !inProp ? 'hidden' : undefined,
125
- ...styles[state],
126
- ...style,
127
- ...children.props.style
128
- },
124
+ style: childStyle,
129
125
  ref: handleRef,
130
126
  ...restChildProps
131
127
  });
@@ -30,12 +30,12 @@ export interface FilledInputProps extends StandardProps<InputBaseProps> {
30
30
  *
31
31
  * Demos:
32
32
  *
33
- * - [Text Field](https://mui.com/material-ui/react-text-field/)
33
+ * - [Text Field](https://v7.mui.com/material-ui/react-text-field/)
34
34
  *
35
35
  * API:
36
36
  *
37
- * - [FilledInput API](https://mui.com/material-ui/api/filled-input/)
38
- * - inherits [InputBase API](https://mui.com/material-ui/api/input-base/)
37
+ * - [FilledInput API](https://v7.mui.com/material-ui/api/filled-input/)
38
+ * - inherits [InputBase API](https://v7.mui.com/material-ui/api/input-base/)
39
39
  */
40
40
  declare const FilledInput: ((props: FilledInputProps) => React.JSX.Element) & {
41
41
  muiName: string;
@@ -108,7 +108,7 @@ const FilledInputRoot = styled(InputBaseRoot, {
108
108
  borderBottom: `1px solid ${theme.vars ? theme.alpha(theme.vars.palette.common.onBackground, theme.vars.opacity.inputUnderline) : bottomLineColor}`,
109
109
  left: 0,
110
110
  bottom: 0,
111
- content: '"\\00a0"',
111
+ content: '""',
112
112
  position: 'absolute',
113
113
  right: 0,
114
114
  transition: theme.transitions.create('border-bottom-color', {
@@ -89,7 +89,7 @@ export interface FormControlTypeMap<AdditionalProps = {}, RootComponent extends
89
89
  * * Input
90
90
  * * InputLabel
91
91
  *
92
- * You can find one composition example below and more going to [the demos](https://mui.com/material-ui/react-text-field/#components).
92
+ * You can find one composition example below and more going to [the demos](https://v7.mui.com/material-ui/react-text-field/#components).
93
93
  *
94
94
  * ```jsx
95
95
  * <FormControl>
@@ -104,15 +104,15 @@ export interface FormControlTypeMap<AdditionalProps = {}, RootComponent extends
104
104
  *
105
105
  * Demos:
106
106
  *
107
- * - [Checkbox](https://mui.com/material-ui/react-checkbox/)
108
- * - [Number Field](https://mui.com/material-ui/react-number-field/)
109
- * - [Radio Group](https://mui.com/material-ui/react-radio-button/)
110
- * - [Switch](https://mui.com/material-ui/react-switch/)
111
- * - [Text Field](https://mui.com/material-ui/react-text-field/)
107
+ * - [Checkbox](https://v7.mui.com/material-ui/react-checkbox/)
108
+ * - [Number Field](https://v7.mui.com/material-ui/react-number-field/)
109
+ * - [Radio Group](https://v7.mui.com/material-ui/react-radio-button/)
110
+ * - [Switch](https://v7.mui.com/material-ui/react-switch/)
111
+ * - [Text Field](https://v7.mui.com/material-ui/react-text-field/)
112
112
  *
113
113
  * API:
114
114
  *
115
- * - [FormControl API](https://mui.com/material-ui/api/form-control/)
115
+ * - [FormControl API](https://v7.mui.com/material-ui/api/form-control/)
116
116
  */
117
117
  declare const FormControl: OverridableComponent<FormControlTypeMap>;
118
118
  export type FormControlProps<RootComponent extends React.ElementType = FormControlTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<FormControlTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
@@ -91,12 +91,12 @@ export interface FormControlLabelProps extends StandardProps<React.LabelHTMLAttr
91
91
  *
92
92
  * Demos:
93
93
  *
94
- * - [Checkbox](https://mui.com/material-ui/react-checkbox/)
95
- * - [Radio Group](https://mui.com/material-ui/react-radio-button/)
96
- * - [Switch](https://mui.com/material-ui/react-switch/)
94
+ * - [Checkbox](https://v7.mui.com/material-ui/react-checkbox/)
95
+ * - [Radio Group](https://v7.mui.com/material-ui/react-radio-button/)
96
+ * - [Switch](https://v7.mui.com/material-ui/react-switch/)
97
97
  *
98
98
  * API:
99
99
  *
100
- * - [FormControlLabel API](https://mui.com/material-ui/api/form-control-label/)
100
+ * - [FormControlLabel API](https://v7.mui.com/material-ui/api/form-control-label/)
101
101
  */
102
102
  export default function FormControlLabel(props: FormControlLabelProps): React.JSX.Element;
@@ -30,11 +30,11 @@ export interface FormGroupProps extends StandardProps<React.HTMLAttributes<HTMLD
30
30
  *
31
31
  * Demos:
32
32
  *
33
- * - [Checkbox](https://mui.com/material-ui/react-checkbox/)
34
- * - [Switch](https://mui.com/material-ui/react-switch/)
33
+ * - [Checkbox](https://v7.mui.com/material-ui/react-checkbox/)
34
+ * - [Switch](https://v7.mui.com/material-ui/react-switch/)
35
35
  *
36
36
  * API:
37
37
  *
38
- * - [FormGroup API](https://mui.com/material-ui/api/form-group/)
38
+ * - [FormGroup API](https://v7.mui.com/material-ui/api/form-group/)
39
39
  */
40
40
  export default function FormGroup(props: FormGroupProps): React.JSX.Element;
@@ -58,12 +58,12 @@ export interface FormHelperTextTypeMap<AdditionalProps = {}, RootComponent exten
58
58
  *
59
59
  * Demos:
60
60
  *
61
- * - [Number Field](https://mui.com/material-ui/react-number-field/)
62
- * - [Text Field](https://mui.com/material-ui/react-text-field/)
61
+ * - [Number Field](https://v7.mui.com/material-ui/react-number-field/)
62
+ * - [Text Field](https://v7.mui.com/material-ui/react-text-field/)
63
63
  *
64
64
  * API:
65
65
  *
66
- * - [FormHelperText API](https://mui.com/material-ui/api/form-helper-text/)
66
+ * - [FormHelperText API](https://v7.mui.com/material-ui/api/form-helper-text/)
67
67
  */
68
68
  declare const FormHelperText: OverridableComponent<FormHelperTextTypeMap>;
69
69
  export type FormHelperTextProps<RootComponent extends React.ElementType = FormHelperTextTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<FormHelperTextTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
@@ -59,14 +59,14 @@ export interface FormLabelTypeMap<AdditionalProps = {}, RootComponent extends Re
59
59
  *
60
60
  * Demos:
61
61
  *
62
- * - [Checkbox](https://mui.com/material-ui/react-checkbox/)
63
- * - [Number Field](https://mui.com/material-ui/react-number-field/)
64
- * - [Radio Group](https://mui.com/material-ui/react-radio-button/)
65
- * - [Switch](https://mui.com/material-ui/react-switch/)
62
+ * - [Checkbox](https://v7.mui.com/material-ui/react-checkbox/)
63
+ * - [Number Field](https://v7.mui.com/material-ui/react-number-field/)
64
+ * - [Radio Group](https://v7.mui.com/material-ui/react-radio-button/)
65
+ * - [Switch](https://v7.mui.com/material-ui/react-switch/)
66
66
  *
67
67
  * API:
68
68
  *
69
- * - [FormLabel API](https://mui.com/material-ui/api/form-label/)
69
+ * - [FormLabel API](https://v7.mui.com/material-ui/api/form-label/)
70
70
  */
71
71
  declare const FormLabel: OverridableComponent<FormLabelTypeMap>;
72
72
  export interface ExtendFormLabelTypeMap<TypeMap extends OverridableTypeMap> {
@@ -11,10 +11,10 @@ export interface GlobalStylesProps {
11
11
  *
12
12
  * Demos:
13
13
  *
14
- * - [How to customize](https://mui.com/material-ui/customization/how-to-customize/)
14
+ * - [How to customize](https://v7.mui.com/material-ui/customization/how-to-customize/)
15
15
  *
16
16
  * API:
17
17
  *
18
- * - [GlobalStyles API](https://mui.com/material-ui/api/global-styles/)
18
+ * - [GlobalStyles API](https://v7.mui.com/material-ui/api/global-styles/)
19
19
  */
20
20
  export default function GlobalStyles(props: GlobalStylesProps): React.ReactElement<unknown>;
@@ -101,11 +101,11 @@ export type GridProps<D extends React.ElementType = GridTypeMap['defaultComponen
101
101
  *
102
102
  * Demos:
103
103
  *
104
- * - [Grid](https://mui.com/material-ui/react-grid/)
104
+ * - [Grid](https://v7.mui.com/material-ui/react-grid/)
105
105
  *
106
106
  * API:
107
107
  *
108
- * - [Grid API](https://mui.com/material-ui/api/grid/)
108
+ * - [Grid API](https://v7.mui.com/material-ui/api/grid/)
109
109
  */
110
110
  declare const Grid: OverridableComponent<GridTypeMap>;
111
111
  export default Grid;
package/esm/Grid/Grid.js CHANGED
@@ -10,11 +10,11 @@ import useTheme from "../styles/useTheme.js";
10
10
  *
11
11
  * Demos:
12
12
  *
13
- * - [Grid](https://mui.com/material-ui/react-grid/)
13
+ * - [Grid](https://v7.mui.com/material-ui/react-grid/)
14
14
  *
15
15
  * API:
16
16
  *
17
- * - [Grid API](https://mui.com/material-ui/api/grid/)
17
+ * - [Grid API](https://v7.mui.com/material-ui/api/grid/)
18
18
  */
19
19
  const Grid = createGrid({
20
20
  createStyledComponent: styled('div', {
@@ -141,11 +141,11 @@ export interface GridLegacyTypeMap<AdditionalProps = {}, RootComponent extends R
141
141
  *
142
142
  * Demos:
143
143
  *
144
- * - [GridLegacy](https://mui.com/material-ui/react-grid-legacy/)
144
+ * - [GridLegacy](https://v7.mui.com/material-ui/react-grid-legacy/)
145
145
  *
146
146
  * API:
147
147
  *
148
- * - [GridLegacy API](https://mui.com/material-ui/api/grid-legacy/)
148
+ * - [GridLegacy API](https://v7.mui.com/material-ui/api/grid-legacy/)
149
149
  *
150
150
  * @deprecated Use the [`Grid`](https://mui.com/material-ui/react-grid/) component instead.
151
151
  */
@@ -32,18 +32,18 @@ export interface GrowProps extends Omit<TransitionProps, 'timeout'> {
32
32
  }
33
33
 
34
34
  /**
35
- * The Grow transition is used by the [Tooltip](https://mui.com/material-ui/react-tooltip/) and
36
- * [Popover](https://mui.com/material-ui/react-popover/) components.
35
+ * The Grow transition is used by the [Tooltip](https://v7.mui.com/material-ui/react-tooltip/) and
36
+ * [Popover](https://v7.mui.com/material-ui/react-popover/) components.
37
37
  * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
38
38
  *
39
39
  * Demos:
40
40
  *
41
- * - [Popover](https://mui.com/material-ui/react-popover/)
42
- * - [Transitions](https://mui.com/material-ui/transitions/)
41
+ * - [Popover](https://v7.mui.com/material-ui/react-popover/)
42
+ * - [Transitions](https://v7.mui.com/material-ui/transitions/)
43
43
  *
44
44
  * API:
45
45
  *
46
- * - [Grow API](https://mui.com/material-ui/api/grow/)
46
+ * - [Grow API](https://v7.mui.com/material-ui/api/grow/)
47
47
  * - inherits [Transition API](https://reactcommunity.org/react-transition-group/transition/#Transition-props)
48
48
  */
49
49
  export default function Grow(props: GrowProps): React.JSX.Element;
package/esm/Grow/Grow.js CHANGED
@@ -7,7 +7,7 @@ import elementAcceptingRef from '@mui/utils/elementAcceptingRef';
7
7
  import getReactElementRef from '@mui/utils/getReactElementRef';
8
8
  import { Transition } from 'react-transition-group';
9
9
  import { useTheme } from "../zero-styled/index.js";
10
- import { getTransitionProps, reflow } from "../transitions/utils.js";
10
+ import { normalizedTransitionCallback, getTransitionProps, getTransitionChildStyle, reflow } from "../transitions/utils.js";
11
11
  import useForkRef from "../utils/useForkRef.js";
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  function getScale(value) {
@@ -21,14 +21,21 @@ const styles = {
21
21
  entered: {
22
22
  opacity: 1,
23
23
  transform: 'none'
24
+ },
25
+ exiting: {
26
+ opacity: 0,
27
+ transform: getScale(0.75)
28
+ },
29
+ exited: {
30
+ opacity: 0,
31
+ transform: getScale(0.75)
24
32
  }
25
33
  };
26
-
27
- /*
28
- TODO v6: remove
29
- Conditionally apply a workaround for the CSS transition bug in Safari 15.4 / WebKit browsers.
30
- */
31
- const isWebKit154 = typeof navigator !== 'undefined' && /^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent) && /(os |version\/)15(.|_)4/i.test(navigator.userAgent);
34
+ const hiddenStyles = {
35
+ opacity: 0,
36
+ transform: getScale(0.75),
37
+ visibility: 'hidden'
38
+ };
32
39
 
33
40
  /**
34
41
  * The Grow transition is used by the [Tooltip](/material-ui/react-tooltip/) and
@@ -50,8 +57,6 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
50
57
  onExiting,
51
58
  style,
52
59
  timeout = 'auto',
53
- // eslint-disable-next-line react/prop-types
54
- TransitionComponent = Transition,
55
60
  ...other
56
61
  } = props;
57
62
  const timer = useTimeout();
@@ -59,20 +64,8 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
59
64
  const theme = useTheme();
60
65
  const nodeRef = React.useRef(null);
61
66
  const handleRef = useForkRef(nodeRef, getReactElementRef(children), ref);
62
- const normalizedTransitionCallback = callback => maybeIsAppearing => {
63
- if (callback) {
64
- const node = nodeRef.current;
65
-
66
- // onEnterXxx and onExitXxx callbacks have a different arguments.length value.
67
- if (maybeIsAppearing === undefined) {
68
- callback(node);
69
- } else {
70
- callback(node, maybeIsAppearing);
71
- }
72
- }
73
- };
74
- const handleEntering = normalizedTransitionCallback(onEntering);
75
- const handleEnter = normalizedTransitionCallback((node, isAppearing) => {
67
+ const handleEntering = normalizedTransitionCallback(nodeRef, onEntering);
68
+ const handleEnter = normalizedTransitionCallback(nodeRef, (node, isAppearing) => {
76
69
  reflow(node); // So the animation always start from the start.
77
70
 
78
71
  const {
@@ -97,7 +90,7 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
97
90
  duration,
98
91
  delay
99
92
  }), theme.transitions.create('transform', {
100
- duration: isWebKit154 ? duration : duration * 0.666,
93
+ duration: duration * 0.666,
101
94
  delay,
102
95
  easing: transitionTimingFunction
103
96
  })].join(',');
@@ -105,9 +98,9 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
105
98
  onEnter(node, isAppearing);
106
99
  }
107
100
  });
108
- const handleEntered = normalizedTransitionCallback(onEntered);
109
- const handleExiting = normalizedTransitionCallback(onExiting);
110
- const handleExit = normalizedTransitionCallback(node => {
101
+ const handleEntered = normalizedTransitionCallback(nodeRef, onEntered);
102
+ const handleExiting = normalizedTransitionCallback(nodeRef, onExiting);
103
+ const handleExit = normalizedTransitionCallback(nodeRef, node => {
111
104
  const {
112
105
  duration: transitionDuration,
113
106
  delay,
@@ -130,8 +123,8 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
130
123
  duration,
131
124
  delay
132
125
  }), theme.transitions.create('transform', {
133
- duration: isWebKit154 ? duration : duration * 0.666,
134
- delay: isWebKit154 ? delay : delay || duration * 0.333,
126
+ duration: duration * 0.666,
127
+ delay: delay || duration * 0.333,
135
128
  easing: transitionTimingFunction
136
129
  })].join(',');
137
130
  node.style.opacity = 0;
@@ -140,7 +133,12 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
140
133
  onExit(node);
141
134
  }
142
135
  });
143
- const handleExited = normalizedTransitionCallback(onExited);
136
+ const handleExited = normalizedTransitionCallback(nodeRef, node => {
137
+ node.style.transition = '';
138
+ if (onExited) {
139
+ onExited(node);
140
+ }
141
+ });
144
142
  const handleAddEndListener = next => {
145
143
  if (timeout === 'auto') {
146
144
  timer.start(autoTimeout.current || 0, next);
@@ -150,7 +148,7 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
150
148
  addEndListener(nodeRef.current, next);
151
149
  }
152
150
  };
153
- return /*#__PURE__*/_jsx(TransitionComponent, {
151
+ return /*#__PURE__*/_jsx(Transition, {
154
152
  appear: appear,
155
153
  in: inProp,
156
154
  nodeRef: nodeRef,
@@ -167,15 +165,9 @@ const Grow = /*#__PURE__*/React.forwardRef(function Grow(props, ref) {
167
165
  ownerState,
168
166
  ...restChildProps
169
167
  }) => {
168
+ const childStyle = getTransitionChildStyle(state, inProp, styles, hiddenStyles, style, children.props.style);
170
169
  return /*#__PURE__*/React.cloneElement(children, {
171
- style: {
172
- opacity: 0,
173
- transform: getScale(0.75),
174
- visibility: state === 'exited' && !inProp ? 'hidden' : undefined,
175
- ...styles[state],
176
- ...style,
177
- ...children.props.style
178
- },
170
+ style: childStyle,
179
171
  ref: handleRef,
180
172
  ...restChildProps
181
173
  });
@@ -46,12 +46,12 @@ export interface IconTypeMap<AdditionalProps = {}, RootComponent extends React.E
46
46
  *
47
47
  * Demos:
48
48
  *
49
- * - [Icons](https://mui.com/material-ui/icons/)
50
- * - [Material Icons](https://mui.com/material-ui/material-icons/)
49
+ * - [Icons](https://v7.mui.com/material-ui/icons/)
50
+ * - [Material Icons](https://v7.mui.com/material-ui/material-icons/)
51
51
  *
52
52
  * API:
53
53
  *
54
- * - [Icon API](https://mui.com/material-ui/api/icon/)
54
+ * - [Icon API](https://v7.mui.com/material-ui/api/icon/)
55
55
  */
56
56
  declare const Icon: OverridableComponent<IconTypeMap> & {
57
57
  muiName: string;