@mui/material 7.3.8 → 7.3.10

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 (481) hide show
  1. package/Accordion/Accordion.d.ts +14 -14
  2. package/AccordionActions/AccordionActions.d.ts +5 -5
  3. package/AccordionDetails/AccordionDetails.d.ts +4 -4
  4. package/AccordionSummary/AccordionSummary.d.ts +6 -6
  5. package/Alert/Alert.d.ts +18 -18
  6. package/AlertTitle/AlertTitle.d.ts +5 -5
  7. package/AppBar/AppBar.d.ts +11 -11
  8. package/Autocomplete/Autocomplete.d.ts +56 -40
  9. package/Autocomplete/Autocomplete.js +48 -25
  10. package/Avatar/Avatar.d.ts +13 -13
  11. package/AvatarGroup/AvatarGroup.d.ts +13 -13
  12. package/Backdrop/Backdrop.d.ts +13 -13
  13. package/Badge/Badge.d.ts +20 -20
  14. package/Badge/useBadge.types.d.ts +3 -3
  15. package/BottomNavigation/BottomNavigation.d.ts +7 -7
  16. package/BottomNavigationAction/BottomNavigationAction.d.ts +7 -7
  17. package/Box/Box.d.ts +4 -3
  18. package/Breadcrumbs/Breadcrumbs.d.ts +14 -14
  19. package/Button/Button.d.ts +20 -19
  20. package/ButtonBase/ButtonBase.d.ts +17 -17
  21. package/ButtonBase/ButtonBase.js +8 -2
  22. package/ButtonBase/TouchRipple.d.ts +4 -4
  23. package/ButtonGroup/ButtonGroup.d.ts +14 -14
  24. package/ButtonGroup/ButtonGroupContext.d.ts +9 -9
  25. package/CHANGELOG.md +86 -0
  26. package/Card/Card.d.ts +7 -7
  27. package/CardActionArea/CardActionArea.d.ts +7 -7
  28. package/CardActions/CardActions.d.ts +5 -5
  29. package/CardContent/CardContent.d.ts +5 -5
  30. package/CardHeader/CardHeader.d.ts +10 -10
  31. package/CardHeader/CardHeader.js +1 -0
  32. package/CardMedia/CardMedia.d.ts +7 -7
  33. package/Checkbox/Checkbox.d.ts +16 -16
  34. package/Chip/Chip.d.ts +17 -17
  35. package/CircularProgress/CircularProgress.d.ts +11 -11
  36. package/ClickAwayListener/ClickAwayListener.d.ts +6 -6
  37. package/ClickAwayListener/ClickAwayListener.js +3 -3
  38. package/Collapse/Collapse.d.ts +17 -17
  39. package/Collapse/Collapse.js +6 -18
  40. package/Container/Container.d.ts +8 -8
  41. package/CssBaseline/CssBaseline.d.ts +3 -3
  42. package/Dialog/Dialog.d.ts +31 -24
  43. package/Dialog/Dialog.js +9 -1
  44. package/Dialog/DialogContext.d.ts +1 -1
  45. package/DialogActions/DialogActions.d.ts +5 -5
  46. package/DialogContent/DialogContent.d.ts +5 -5
  47. package/DialogContentText/DialogContentText.d.ts +6 -6
  48. package/DialogTitle/DialogTitle.d.ts +7 -7
  49. package/Divider/Divider.d.ts +13 -12
  50. package/Drawer/Drawer.d.ts +14 -14
  51. package/Fab/Fab.d.ts +13 -13
  52. package/Fade/Fade.d.ts +8 -8
  53. package/Fade/Fade.js +28 -32
  54. package/FilledInput/FilledInput.d.ts +7 -7
  55. package/FilledInput/FilledInput.js +1 -1
  56. package/FormControl/FormControl.d.ts +21 -21
  57. package/FormControlLabel/FormControlLabel.d.ts +16 -16
  58. package/FormGroup/FormGroup.d.ts +6 -6
  59. package/FormHelperText/FormHelperText.d.ts +13 -13
  60. package/FormLabel/FormLabel.d.ts +15 -15
  61. package/GlobalStyles/GlobalStyles.d.ts +2 -2
  62. package/Grid/Grid.d.ts +13 -13
  63. package/Grid/Grid.js +2 -2
  64. package/GridLegacy/GridLegacy.d.ts +19 -19
  65. package/Grow/Grow.d.ts +10 -10
  66. package/Grow/Grow.js +30 -38
  67. package/Icon/Icon.d.ts +9 -9
  68. package/IconButton/IconButton.d.ts +14 -14
  69. package/ImageList/ImageList.d.ts +9 -9
  70. package/ImageListItem/ImageListItem.d.ts +7 -7
  71. package/ImageListItemBar/ImageListItemBar.d.ts +6 -6
  72. package/InitColorSchemeScript/InitColorSchemeScript.d.ts +9 -9
  73. package/InitColorSchemeScript/InitColorSchemeScript.js +2 -2
  74. package/Input/Input.d.ts +6 -6
  75. package/Input/Input.js +1 -1
  76. package/InputAdornment/InputAdornment.d.ts +8 -8
  77. package/InputBase/InputBase.d.ts +57 -57
  78. package/InputLabel/InputLabel.d.ts +17 -17
  79. package/LinearProgress/LinearProgress.d.ts +8 -8
  80. package/Link/Link.d.ts +11 -11
  81. package/List/List.d.ts +9 -8
  82. package/List/ListContext.d.ts +1 -1
  83. package/ListItem/ListItem.d.ts +23 -23
  84. package/ListItemAvatar/ListItemAvatar.d.ts +4 -4
  85. package/ListItemButton/ListItemButton.d.ts +14 -13
  86. package/ListItemIcon/ListItemIcon.d.ts +5 -4
  87. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +4 -4
  88. package/ListItemText/ListItemText.d.ts +14 -13
  89. package/ListItemText/ListItemText.js +1 -0
  90. package/ListSubheader/ListSubheader.d.ts +10 -9
  91. package/Menu/Menu.d.ts +15 -15
  92. package/MenuItem/MenuItem.d.ts +12 -12
  93. package/MenuItem/MenuItem.js +21 -1
  94. package/MenuList/MenuList.d.ts +10 -10
  95. package/MobileStepper/MobileStepper.d.ts +9 -9
  96. package/Modal/Modal.d.ts +38 -38
  97. package/Modal/ModalManager.d.ts +1 -1
  98. package/Modal/useModal.types.d.ts +13 -13
  99. package/NativeSelect/NativeSelect.d.ts +10 -10
  100. package/NativeSelect/NativeSelectInput.d.ts +5 -5
  101. package/NoSsr/NoSsr.d.ts +2 -2
  102. package/NoSsr/NoSsr.js +2 -2
  103. package/NoSsr/NoSsr.types.d.ts +1 -1
  104. package/OutlinedInput/NotchedOutline.d.ts +3 -3
  105. package/OutlinedInput/OutlinedInput.d.ts +9 -9
  106. package/OverridableComponent/index.d.ts +2 -2
  107. package/Pagination/Pagination.d.ts +10 -10
  108. package/PaginationItem/PaginationItem.d.ts +18 -18
  109. package/Paper/Paper.d.ts +10 -9
  110. package/PigmentContainer/PigmentContainer.d.ts +8 -8
  111. package/PigmentContainer/PigmentContainer.js +2 -2
  112. package/PigmentGrid/PigmentGrid.d.ts +10 -10
  113. package/PigmentGrid/PigmentGrid.js +2 -2
  114. package/PigmentStack/PigmentStack.d.ts +6 -6
  115. package/PigmentStack/PigmentStack.js +2 -2
  116. package/Popover/Popover.d.ts +22 -22
  117. package/Popover/Popover.js +6 -3
  118. package/Popper/BasePopper.js +6 -3
  119. package/Popper/BasePopper.types.d.ts +17 -17
  120. package/Popper/Popper.d.ts +9 -9
  121. package/Popper/Popper.js +4 -4
  122. package/Popper/index.d.ts +1 -0
  123. package/Popper/index.js +11 -2
  124. package/Portal/Portal.d.ts +2 -2
  125. package/Portal/Portal.js +2 -2
  126. package/Portal/Portal.types.d.ts +2 -2
  127. package/README.md +2 -2
  128. package/Radio/Radio.d.ts +8 -8
  129. package/RadioGroup/RadioGroup.d.ts +5 -5
  130. package/Rating/Rating.d.ts +18 -18
  131. package/ScopedCssBaseline/ScopedCssBaseline.d.ts +6 -6
  132. package/Select/Select.d.ts +26 -26
  133. package/Select/SelectInput.d.ts +24 -24
  134. package/Select/SelectInput.js +46 -47
  135. package/Select/index.d.ts +1 -0
  136. package/Select/index.js +12 -0
  137. package/Select/utils/SelectFocusSourceContext.d.ts +4 -0
  138. package/Select/utils/SelectFocusSourceContext.js +19 -0
  139. package/Select/utils/areEqualValues.d.ts +1 -0
  140. package/Select/utils/areEqualValues.js +14 -0
  141. package/Select/utils/getOpenInteractionType.d.ts +1 -0
  142. package/Select/utils/getOpenInteractionType.js +18 -0
  143. package/Select/utils/index.d.ts +4 -0
  144. package/Select/utils/index.js +40 -0
  145. package/Select/utils/isEmpty.d.ts +1 -0
  146. package/Select/utils/isEmpty.js +9 -0
  147. package/Skeleton/Skeleton.d.ts +9 -9
  148. package/Slide/Slide.d.ts +11 -11
  149. package/Slide/Slide.js +48 -44
  150. package/Slider/Slider.d.ts +72 -72
  151. package/Slider/SliderValueLabel.d.ts +1 -1
  152. package/Slider/SliderValueLabel.types.d.ts +5 -5
  153. package/Slider/useSlider.types.d.ts +26 -26
  154. package/Snackbar/Snackbar.d.ts +18 -18
  155. package/Snackbar/useSnackbar.types.d.ts +6 -6
  156. package/SnackbarContent/SnackbarContent.d.ts +6 -6
  157. package/SpeedDial/SpeedDial.d.ts +13 -13
  158. package/SpeedDialAction/SpeedDialAction.d.ts +14 -14
  159. package/SpeedDialIcon/SpeedDialIcon.d.ts +5 -5
  160. package/SpeedDialIcon/SpeedDialIcon.js +4 -10
  161. package/Stack/Stack.d.ts +7 -7
  162. package/Step/Step.d.ts +12 -12
  163. package/StepButton/StepButton.d.ts +6 -6
  164. package/StepConnector/StepConnector.d.ts +4 -4
  165. package/StepContent/StepContent.d.ts +9 -9
  166. package/StepIcon/StepIcon.d.ts +8 -8
  167. package/StepIcon/StepIcon.js +1 -4
  168. package/StepLabel/StepLabel.d.ts +9 -9
  169. package/StepLabel/StepLabel.js +1 -5
  170. package/Stepper/Stepper.d.ts +11 -11
  171. package/SvgIcon/SvgIcon.d.ts +13 -13
  172. package/SwipeableDrawer/SwipeableDrawer.d.ts +13 -13
  173. package/SwipeableDrawer/SwipeableDrawer.js +0 -3
  174. package/Switch/Switch.d.ts +9 -9
  175. package/Switch/Switch.js +4 -0
  176. package/Tab/Tab.d.ts +12 -12
  177. package/TabScrollButton/TabScrollButton.d.ts +11 -11
  178. package/Table/Table.d.ts +8 -8
  179. package/TableBody/TableBody.d.ts +5 -5
  180. package/TableCell/TableCell.d.ts +11 -11
  181. package/TableContainer/TableContainer.d.ts +5 -5
  182. package/TableFooter/TableFooter.d.ts +5 -5
  183. package/TableHead/TableHead.d.ts +5 -5
  184. package/TablePagination/TablePagination.d.ts +18 -18
  185. package/TablePaginationActions/TablePaginationActions.d.ts +25 -25
  186. package/TableRow/TableRow.d.ts +7 -7
  187. package/TableSortLabel/TableSortLabel.d.ts +12 -12
  188. package/Tabs/Tabs.d.ts +27 -27
  189. package/Tabs/Tabs.js +2 -1
  190. package/TextField/TextField.d.ts +45 -45
  191. package/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  192. package/TextareaAutosize/TextareaAutosize.js +2 -2
  193. package/TextareaAutosize/TextareaAutosize.types.d.ts +3 -3
  194. package/ToggleButton/ToggleButton.d.ts +14 -14
  195. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +11 -11
  196. package/ToggleButtonGroup/ToggleButtonGroupContext.d.ts +7 -7
  197. package/Toolbar/Toolbar.d.ts +7 -7
  198. package/Tooltip/Tooltip.d.ts +35 -35
  199. package/Tooltip/Tooltip.js +19 -2
  200. package/Typography/Typography.d.ts +14 -13
  201. package/Unstable_TrapFocus/FocusTrap.types.d.ts +7 -7
  202. package/Zoom/Zoom.d.ts +8 -8
  203. package/Zoom/Zoom.js +24 -30
  204. package/esm/Accordion/Accordion.d.ts +14 -14
  205. package/esm/AccordionActions/AccordionActions.d.ts +5 -5
  206. package/esm/AccordionDetails/AccordionDetails.d.ts +4 -4
  207. package/esm/AccordionSummary/AccordionSummary.d.ts +6 -6
  208. package/esm/Alert/Alert.d.ts +18 -18
  209. package/esm/AlertTitle/AlertTitle.d.ts +5 -5
  210. package/esm/AppBar/AppBar.d.ts +11 -11
  211. package/esm/Autocomplete/Autocomplete.d.ts +56 -40
  212. package/esm/Autocomplete/Autocomplete.js +48 -25
  213. package/esm/Avatar/Avatar.d.ts +13 -13
  214. package/esm/AvatarGroup/AvatarGroup.d.ts +13 -13
  215. package/esm/Backdrop/Backdrop.d.ts +13 -13
  216. package/esm/Badge/Badge.d.ts +20 -20
  217. package/esm/Badge/useBadge.types.d.ts +3 -3
  218. package/esm/BottomNavigation/BottomNavigation.d.ts +7 -7
  219. package/esm/BottomNavigationAction/BottomNavigationAction.d.ts +7 -7
  220. package/esm/Box/Box.d.ts +4 -3
  221. package/esm/Breadcrumbs/Breadcrumbs.d.ts +14 -14
  222. package/esm/Button/Button.d.ts +20 -19
  223. package/esm/ButtonBase/ButtonBase.d.ts +17 -17
  224. package/esm/ButtonBase/ButtonBase.js +8 -2
  225. package/esm/ButtonBase/TouchRipple.d.ts +4 -4
  226. package/esm/ButtonGroup/ButtonGroup.d.ts +14 -14
  227. package/esm/ButtonGroup/ButtonGroupContext.d.ts +9 -9
  228. package/esm/Card/Card.d.ts +7 -7
  229. package/esm/CardActionArea/CardActionArea.d.ts +7 -7
  230. package/esm/CardActions/CardActions.d.ts +5 -5
  231. package/esm/CardContent/CardContent.d.ts +5 -5
  232. package/esm/CardHeader/CardHeader.d.ts +10 -10
  233. package/esm/CardHeader/CardHeader.js +1 -0
  234. package/esm/CardMedia/CardMedia.d.ts +7 -7
  235. package/esm/Checkbox/Checkbox.d.ts +16 -16
  236. package/esm/Chip/Chip.d.ts +17 -17
  237. package/esm/CircularProgress/CircularProgress.d.ts +11 -11
  238. package/esm/ClickAwayListener/ClickAwayListener.d.ts +6 -6
  239. package/esm/ClickAwayListener/ClickAwayListener.js +3 -3
  240. package/esm/Collapse/Collapse.d.ts +17 -17
  241. package/esm/Collapse/Collapse.js +7 -19
  242. package/esm/Container/Container.d.ts +8 -8
  243. package/esm/CssBaseline/CssBaseline.d.ts +3 -3
  244. package/esm/Dialog/Dialog.d.ts +31 -24
  245. package/esm/Dialog/Dialog.js +9 -1
  246. package/esm/Dialog/DialogContext.d.ts +1 -1
  247. package/esm/DialogActions/DialogActions.d.ts +5 -5
  248. package/esm/DialogContent/DialogContent.d.ts +5 -5
  249. package/esm/DialogContentText/DialogContentText.d.ts +6 -6
  250. package/esm/DialogTitle/DialogTitle.d.ts +7 -7
  251. package/esm/Divider/Divider.d.ts +13 -12
  252. package/esm/Drawer/Drawer.d.ts +14 -14
  253. package/esm/Fab/Fab.d.ts +13 -13
  254. package/esm/Fade/Fade.d.ts +8 -8
  255. package/esm/Fade/Fade.js +29 -33
  256. package/esm/FilledInput/FilledInput.d.ts +7 -7
  257. package/esm/FilledInput/FilledInput.js +1 -1
  258. package/esm/FormControl/FormControl.d.ts +21 -21
  259. package/esm/FormControlLabel/FormControlLabel.d.ts +16 -16
  260. package/esm/FormGroup/FormGroup.d.ts +6 -6
  261. package/esm/FormHelperText/FormHelperText.d.ts +13 -13
  262. package/esm/FormLabel/FormLabel.d.ts +15 -15
  263. package/esm/GlobalStyles/GlobalStyles.d.ts +2 -2
  264. package/esm/Grid/Grid.d.ts +13 -13
  265. package/esm/Grid/Grid.js +2 -2
  266. package/esm/GridLegacy/GridLegacy.d.ts +19 -19
  267. package/esm/Grow/Grow.d.ts +10 -10
  268. package/esm/Grow/Grow.js +31 -39
  269. package/esm/Icon/Icon.d.ts +9 -9
  270. package/esm/IconButton/IconButton.d.ts +14 -14
  271. package/esm/ImageList/ImageList.d.ts +9 -9
  272. package/esm/ImageListItem/ImageListItem.d.ts +7 -7
  273. package/esm/ImageListItemBar/ImageListItemBar.d.ts +6 -6
  274. package/esm/InitColorSchemeScript/InitColorSchemeScript.d.ts +9 -9
  275. package/esm/InitColorSchemeScript/InitColorSchemeScript.js +2 -2
  276. package/esm/Input/Input.d.ts +6 -6
  277. package/esm/Input/Input.js +1 -1
  278. package/esm/InputAdornment/InputAdornment.d.ts +8 -8
  279. package/esm/InputBase/InputBase.d.ts +57 -57
  280. package/esm/InputLabel/InputLabel.d.ts +17 -17
  281. package/esm/LinearProgress/LinearProgress.d.ts +8 -8
  282. package/esm/Link/Link.d.ts +11 -11
  283. package/esm/List/List.d.ts +9 -8
  284. package/esm/List/ListContext.d.ts +1 -1
  285. package/esm/ListItem/ListItem.d.ts +23 -23
  286. package/esm/ListItemAvatar/ListItemAvatar.d.ts +4 -4
  287. package/esm/ListItemButton/ListItemButton.d.ts +14 -13
  288. package/esm/ListItemIcon/ListItemIcon.d.ts +5 -4
  289. package/esm/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +4 -4
  290. package/esm/ListItemText/ListItemText.d.ts +14 -13
  291. package/esm/ListItemText/ListItemText.js +1 -0
  292. package/esm/ListSubheader/ListSubheader.d.ts +10 -9
  293. package/esm/Menu/Menu.d.ts +15 -15
  294. package/esm/MenuItem/MenuItem.d.ts +12 -12
  295. package/esm/MenuItem/MenuItem.js +23 -1
  296. package/esm/MenuList/MenuList.d.ts +10 -10
  297. package/esm/MobileStepper/MobileStepper.d.ts +9 -9
  298. package/esm/Modal/Modal.d.ts +38 -38
  299. package/esm/Modal/ModalManager.d.ts +1 -1
  300. package/esm/Modal/useModal.types.d.ts +13 -13
  301. package/esm/NativeSelect/NativeSelect.d.ts +10 -10
  302. package/esm/NativeSelect/NativeSelectInput.d.ts +5 -5
  303. package/esm/NoSsr/NoSsr.d.ts +2 -2
  304. package/esm/NoSsr/NoSsr.js +2 -2
  305. package/esm/NoSsr/NoSsr.types.d.ts +1 -1
  306. package/esm/OutlinedInput/NotchedOutline.d.ts +3 -3
  307. package/esm/OutlinedInput/OutlinedInput.d.ts +9 -9
  308. package/esm/OverridableComponent/index.d.ts +2 -2
  309. package/esm/Pagination/Pagination.d.ts +10 -10
  310. package/esm/PaginationItem/PaginationItem.d.ts +18 -18
  311. package/esm/Paper/Paper.d.ts +10 -9
  312. package/esm/PigmentContainer/PigmentContainer.d.ts +8 -8
  313. package/esm/PigmentContainer/PigmentContainer.js +2 -2
  314. package/esm/PigmentGrid/PigmentGrid.d.ts +10 -10
  315. package/esm/PigmentGrid/PigmentGrid.js +2 -2
  316. package/esm/PigmentStack/PigmentStack.d.ts +6 -6
  317. package/esm/PigmentStack/PigmentStack.js +2 -2
  318. package/esm/Popover/Popover.d.ts +22 -22
  319. package/esm/Popover/Popover.js +6 -3
  320. package/esm/Popper/BasePopper.js +6 -3
  321. package/esm/Popper/BasePopper.types.d.ts +17 -17
  322. package/esm/Popper/Popper.d.ts +9 -9
  323. package/esm/Popper/Popper.js +4 -4
  324. package/esm/Popper/index.d.ts +1 -0
  325. package/esm/Popper/index.js +1 -0
  326. package/esm/Portal/Portal.d.ts +2 -2
  327. package/esm/Portal/Portal.js +2 -2
  328. package/esm/Portal/Portal.types.d.ts +2 -2
  329. package/esm/Radio/Radio.d.ts +8 -8
  330. package/esm/RadioGroup/RadioGroup.d.ts +5 -5
  331. package/esm/Rating/Rating.d.ts +18 -18
  332. package/esm/ScopedCssBaseline/ScopedCssBaseline.d.ts +6 -6
  333. package/esm/Select/Select.d.ts +26 -26
  334. package/esm/Select/SelectInput.d.ts +24 -24
  335. package/esm/Select/SelectInput.js +43 -44
  336. package/esm/Select/index.d.ts +1 -0
  337. package/esm/Select/index.js +1 -0
  338. package/esm/Select/utils/SelectFocusSourceContext.d.ts +4 -0
  339. package/esm/Select/utils/SelectFocusSourceContext.js +13 -0
  340. package/esm/Select/utils/areEqualValues.d.ts +1 -0
  341. package/esm/Select/utils/areEqualValues.js +8 -0
  342. package/esm/Select/utils/getOpenInteractionType.d.ts +1 -0
  343. package/esm/Select/utils/getOpenInteractionType.js +12 -0
  344. package/esm/Select/utils/index.d.ts +4 -0
  345. package/esm/Select/utils/index.js +4 -0
  346. package/esm/Select/utils/isEmpty.d.ts +1 -0
  347. package/esm/Select/utils/isEmpty.js +3 -0
  348. package/esm/Skeleton/Skeleton.d.ts +9 -9
  349. package/esm/Slide/Slide.d.ts +11 -11
  350. package/esm/Slide/Slide.js +49 -46
  351. package/esm/Slider/Slider.d.ts +72 -72
  352. package/esm/Slider/SliderValueLabel.d.ts +1 -1
  353. package/esm/Slider/SliderValueLabel.types.d.ts +5 -5
  354. package/esm/Slider/useSlider.types.d.ts +26 -26
  355. package/esm/Snackbar/Snackbar.d.ts +18 -18
  356. package/esm/Snackbar/useSnackbar.types.d.ts +6 -6
  357. package/esm/SnackbarContent/SnackbarContent.d.ts +6 -6
  358. package/esm/SpeedDial/SpeedDial.d.ts +13 -13
  359. package/esm/SpeedDialAction/SpeedDialAction.d.ts +14 -14
  360. package/esm/SpeedDialIcon/SpeedDialIcon.d.ts +5 -5
  361. package/esm/SpeedDialIcon/SpeedDialIcon.js +4 -10
  362. package/esm/Stack/Stack.d.ts +7 -7
  363. package/esm/Step/Step.d.ts +12 -12
  364. package/esm/StepButton/StepButton.d.ts +6 -6
  365. package/esm/StepConnector/StepConnector.d.ts +4 -4
  366. package/esm/StepContent/StepContent.d.ts +9 -9
  367. package/esm/StepIcon/StepIcon.d.ts +8 -8
  368. package/esm/StepIcon/StepIcon.js +1 -4
  369. package/esm/StepLabel/StepLabel.d.ts +9 -9
  370. package/esm/StepLabel/StepLabel.js +1 -5
  371. package/esm/Stepper/Stepper.d.ts +11 -11
  372. package/esm/SvgIcon/SvgIcon.d.ts +13 -13
  373. package/esm/SwipeableDrawer/SwipeableDrawer.d.ts +13 -13
  374. package/esm/SwipeableDrawer/SwipeableDrawer.js +0 -3
  375. package/esm/Switch/Switch.d.ts +9 -9
  376. package/esm/Switch/Switch.js +4 -0
  377. package/esm/Tab/Tab.d.ts +12 -12
  378. package/esm/TabScrollButton/TabScrollButton.d.ts +11 -11
  379. package/esm/Table/Table.d.ts +8 -8
  380. package/esm/TableBody/TableBody.d.ts +5 -5
  381. package/esm/TableCell/TableCell.d.ts +11 -11
  382. package/esm/TableContainer/TableContainer.d.ts +5 -5
  383. package/esm/TableFooter/TableFooter.d.ts +5 -5
  384. package/esm/TableHead/TableHead.d.ts +5 -5
  385. package/esm/TablePagination/TablePagination.d.ts +18 -18
  386. package/esm/TablePaginationActions/TablePaginationActions.d.ts +25 -25
  387. package/esm/TableRow/TableRow.d.ts +7 -7
  388. package/esm/TableSortLabel/TableSortLabel.d.ts +12 -12
  389. package/esm/Tabs/Tabs.d.ts +27 -27
  390. package/esm/Tabs/Tabs.js +2 -1
  391. package/esm/TextField/TextField.d.ts +45 -45
  392. package/esm/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  393. package/esm/TextareaAutosize/TextareaAutosize.js +2 -2
  394. package/esm/TextareaAutosize/TextareaAutosize.types.d.ts +3 -3
  395. package/esm/ToggleButton/ToggleButton.d.ts +14 -14
  396. package/esm/ToggleButtonGroup/ToggleButtonGroup.d.ts +11 -11
  397. package/esm/ToggleButtonGroup/ToggleButtonGroupContext.d.ts +7 -7
  398. package/esm/Toolbar/Toolbar.d.ts +7 -7
  399. package/esm/Tooltip/Tooltip.d.ts +35 -35
  400. package/esm/Tooltip/Tooltip.js +19 -2
  401. package/esm/Typography/Typography.d.ts +14 -13
  402. package/esm/Unstable_TrapFocus/FocusTrap.types.d.ts +7 -7
  403. package/esm/Zoom/Zoom.d.ts +8 -8
  404. package/esm/Zoom/Zoom.js +25 -31
  405. package/esm/index.js +1 -1
  406. package/esm/internal/SwitchBase.d.ts +17 -17
  407. package/esm/internal/index.d.ts +5 -5
  408. package/esm/locale/utils/LocaleTextApi.d.ts +7 -7
  409. package/esm/styles/ThemeProvider.d.ts +12 -12
  410. package/esm/styles/ThemeProviderWithVars.d.ts +13 -13
  411. package/esm/styles/adaptV4Theme.d.ts +14 -14
  412. package/esm/styles/components.d.ts +476 -476
  413. package/esm/styles/createColorScheme.d.ts +1 -1
  414. package/esm/styles/createGetSelector.d.ts +5 -5
  415. package/esm/styles/createMixins.d.ts +2 -2
  416. package/esm/styles/createPalette.d.ts +23 -23
  417. package/esm/styles/createTheme.d.ts +2 -2
  418. package/esm/styles/createThemeFoundation.d.ts +30 -30
  419. package/esm/styles/createThemeNoVars.d.ts +14 -14
  420. package/esm/styles/createThemeNoVars.js +1 -1
  421. package/esm/styles/createThemeWithVars.d.ts +9 -9
  422. package/esm/styles/createThemeWithVars.js +69 -69
  423. package/esm/styles/createTransitions.d.ts +5 -5
  424. package/esm/styles/createTypography.d.ts +1 -1
  425. package/esm/styles/cssUtils.d.ts +3 -3
  426. package/esm/styles/index.d.ts +6 -6
  427. package/esm/styles/overrides.d.ts +1 -1
  428. package/esm/styles/responsiveFontSizes.d.ts +4 -4
  429. package/esm/styles/useThemeProps.d.ts +1 -1
  430. package/esm/transitions/transition.d.ts +2 -2
  431. package/esm/transitions/utils.d.ts +11 -4
  432. package/esm/transitions/utils.js +25 -0
  433. package/esm/types/OverridableComponentAugmentation.d.ts +2 -2
  434. package/esm/useAutocomplete/useAutocomplete.d.ts +45 -45
  435. package/esm/useAutocomplete/useAutocomplete.js +58 -3
  436. package/esm/usePagination/usePagination.d.ts +12 -12
  437. package/esm/useScrollTrigger/useScrollTrigger.d.ts +3 -3
  438. package/esm/utils/isLayoutSupported.d.ts +1 -0
  439. package/esm/utils/isLayoutSupported.js +6 -0
  440. package/esm/utils/types.d.ts +4 -4
  441. package/esm/utils/useSlot.d.ts +12 -12
  442. package/esm/version/index.js +2 -2
  443. package/index.js +1 -1
  444. package/internal/SwitchBase.d.ts +17 -17
  445. package/internal/index.d.ts +5 -5
  446. package/locale/utils/LocaleTextApi.d.ts +7 -7
  447. package/package.json +6 -6
  448. package/styles/ThemeProvider.d.ts +12 -12
  449. package/styles/ThemeProviderWithVars.d.ts +13 -13
  450. package/styles/adaptV4Theme.d.ts +14 -14
  451. package/styles/components.d.ts +476 -476
  452. package/styles/createColorScheme.d.ts +1 -1
  453. package/styles/createGetSelector.d.ts +5 -5
  454. package/styles/createMixins.d.ts +2 -2
  455. package/styles/createPalette.d.ts +23 -23
  456. package/styles/createTheme.d.ts +2 -2
  457. package/styles/createThemeFoundation.d.ts +30 -30
  458. package/styles/createThemeNoVars.d.ts +14 -14
  459. package/styles/createThemeNoVars.js +1 -1
  460. package/styles/createThemeWithVars.d.ts +9 -9
  461. package/styles/createThemeWithVars.js +69 -69
  462. package/styles/createTransitions.d.ts +5 -5
  463. package/styles/createTypography.d.ts +1 -1
  464. package/styles/cssUtils.d.ts +3 -3
  465. package/styles/index.d.ts +6 -6
  466. package/styles/overrides.d.ts +1 -1
  467. package/styles/responsiveFontSizes.d.ts +4 -4
  468. package/styles/useThemeProps.d.ts +1 -1
  469. package/transitions/transition.d.ts +2 -2
  470. package/transitions/utils.d.ts +11 -4
  471. package/transitions/utils.js +27 -0
  472. package/types/OverridableComponentAugmentation.d.ts +2 -2
  473. package/useAutocomplete/useAutocomplete.d.ts +45 -45
  474. package/useAutocomplete/useAutocomplete.js +58 -3
  475. package/usePagination/usePagination.d.ts +12 -12
  476. package/useScrollTrigger/useScrollTrigger.d.ts +3 -3
  477. package/utils/isLayoutSupported.d.ts +1 -0
  478. package/utils/isLayoutSupported.js +12 -0
  479. package/utils/types.d.ts +4 -4
  480. package/utils/useSlot.d.ts +12 -12
  481. package/version/index.js +2 -2
@@ -23,35 +23,35 @@ export type SelectChangeEvent<Value = string> = Value extends (string & {}) | nu
23
23
  };
24
24
  });
25
25
  export interface SelectInputProps<Value = unknown> {
26
- autoFocus?: boolean;
26
+ autoFocus?: boolean | undefined;
27
27
  autoWidth: boolean;
28
- defaultOpen?: boolean;
29
- disabled?: boolean;
30
- error?: boolean;
31
- IconComponent?: React.ElementType;
32
- inputRef?: (ref: HTMLSelectElement | {
28
+ defaultOpen?: boolean | undefined;
29
+ disabled?: boolean | undefined;
30
+ error?: boolean | undefined;
31
+ IconComponent?: React.ElementType | undefined;
32
+ inputRef?: ((ref: HTMLSelectElement | {
33
33
  node: HTMLInputElement;
34
34
  value: SelectInputProps<Value>['value'];
35
- }) => void;
36
- MenuProps?: Partial<MenuProps>;
35
+ }) => void) | undefined;
36
+ MenuProps?: Partial<MenuProps> | undefined;
37
37
  multiple: boolean;
38
- name?: string;
38
+ name?: string | undefined;
39
39
  native: boolean;
40
- onBlur?: React.FocusEventHandler<any>;
41
- onChange?: (event: SelectChangeEvent<Value>, child: React.ReactNode) => void;
42
- onClose?: (event: React.SyntheticEvent) => void;
43
- onFocus?: React.FocusEventHandler<any>;
44
- onKeyDown?: React.KeyboardEventHandler;
45
- onMouseDown?: React.MouseEventHandler;
46
- onOpen?: (event: React.SyntheticEvent) => void;
47
- open?: boolean;
48
- readOnly?: boolean;
49
- renderValue?: (value: SelectInputProps<Value>['value']) => React.ReactNode;
50
- SelectDisplayProps?: React.HTMLAttributes<HTMLDivElement>;
51
- sx?: SxProps<Theme>;
52
- tabIndex?: number;
53
- value?: Value;
54
- variant?: 'standard' | 'outlined' | 'filled';
40
+ onBlur?: React.FocusEventHandler<any> | undefined;
41
+ onChange?: ((event: SelectChangeEvent<Value>, child: React.ReactNode) => void) | undefined;
42
+ onClose?: ((event: React.SyntheticEvent) => void) | undefined;
43
+ onFocus?: React.FocusEventHandler<any> | undefined;
44
+ onKeyDown?: React.KeyboardEventHandler | undefined;
45
+ onMouseDown?: React.MouseEventHandler | undefined;
46
+ onOpen?: ((event: React.SyntheticEvent) => void) | undefined;
47
+ open?: boolean | undefined;
48
+ readOnly?: boolean | undefined;
49
+ renderValue?: ((value: SelectInputProps<Value>['value']) => React.ReactNode) | undefined;
50
+ SelectDisplayProps?: React.HTMLAttributes<HTMLDivElement> | undefined;
51
+ sx?: SxProps<Theme> | undefined;
52
+ tabIndex?: number | undefined;
53
+ value?: Value | undefined;
54
+ variant?: 'standard' | 'outlined' | 'filled' | undefined;
55
55
  }
56
56
  declare const SelectInput: React.JSXElementConstructor<SelectInputProps>;
57
57
  export default SelectInput;
@@ -19,6 +19,8 @@ import slotShouldForwardProp from "../styles/slotShouldForwardProp.js";
19
19
  import useForkRef from "../utils/useForkRef.js";
20
20
  import useControlled from "../utils/useControlled.js";
21
21
  import selectClasses, { getSelectUtilityClasses } from "./selectClasses.js";
22
+ import { areEqualValues, isEmpty, getOpenInteractionType } from "./utils/index.js";
23
+ import { SelectFocusSourceProvider } from "./utils/SelectFocusSourceContext.js";
22
24
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
23
25
  const SelectSelect = styled(StyledSelectSelect, {
24
26
  name: 'MuiSelect',
@@ -74,17 +76,6 @@ const SelectNativeInput = styled('input', {
74
76
  width: '100%',
75
77
  boxSizing: 'border-box'
76
78
  });
77
- function areEqualValues(a, b) {
78
- if (typeof b === 'object' && b !== null) {
79
- return a === b;
80
- }
81
-
82
- // The value could be a number, the DOM will stringify it anyway.
83
- return String(a) === String(b);
84
- }
85
- function isEmpty(display) {
86
- return display == null || typeof display === 'string' && !display.trim();
87
- }
88
79
  const useUtilityClasses = ownerState => {
89
80
  const {
90
81
  classes,
@@ -162,6 +153,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
162
153
  current: isOpenControlled
163
154
  } = React.useRef(openProp != null);
164
155
  const [menuMinWidthState, setMenuMinWidthState] = React.useState();
156
+ const [openInteractionType, setOpenInteractionType] = React.useState(null);
165
157
  const handleRef = useForkRef(ref, inputRefProp);
166
158
  const handleDisplayRef = React.useCallback(node => {
167
159
  displayRef.current = node;
@@ -230,11 +222,15 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
230
222
  }, [labelId]);
231
223
  const update = (openParam, event) => {
232
224
  if (openParam) {
225
+ setOpenInteractionType(getOpenInteractionType(event));
233
226
  if (onOpen) {
234
227
  onOpen(event);
235
228
  }
236
- } else if (onClose) {
237
- onClose(event);
229
+ } else {
230
+ setOpenInteractionType(null);
231
+ if (onClose) {
232
+ onClose(event);
233
+ }
238
234
  }
239
235
  if (!isOpenControlled) {
240
236
  setMenuMinWidthState(autoWidth ? null : anchorElement.clientWidth);
@@ -510,39 +506,42 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
510
506
  as: IconComponent,
511
507
  className: classes.icon,
512
508
  ownerState: ownerState
513
- }), /*#__PURE__*/_jsx(Menu, {
514
- id: `menu-${name || ''}`,
515
- anchorEl: anchorElement,
516
- open: open,
517
- onClose: handleClose,
518
- anchorOrigin: {
519
- vertical: 'bottom',
520
- horizontal: 'center'
521
- },
522
- transformOrigin: {
523
- vertical: 'top',
524
- horizontal: 'center'
525
- },
526
- ...MenuProps,
527
- slotProps: {
528
- ...MenuProps.slotProps,
529
- list: {
530
- 'aria-labelledby': labelId,
531
- role: 'listbox',
532
- 'aria-multiselectable': multiple ? 'true' : undefined,
533
- disableListWrap: true,
534
- id: listboxId,
535
- ...listProps
509
+ }), /*#__PURE__*/_jsx(SelectFocusSourceProvider, {
510
+ value: openInteractionType,
511
+ children: /*#__PURE__*/_jsx(Menu, {
512
+ id: `menu-${name || ''}`,
513
+ anchorEl: anchorElement,
514
+ open: open,
515
+ onClose: handleClose,
516
+ anchorOrigin: {
517
+ vertical: 'bottom',
518
+ horizontal: 'center'
519
+ },
520
+ transformOrigin: {
521
+ vertical: 'top',
522
+ horizontal: 'center'
536
523
  },
537
- paper: {
538
- ...paperProps,
539
- style: {
540
- minWidth: menuMinWidth,
541
- ...(paperProps != null ? paperProps.style : null)
524
+ ...MenuProps,
525
+ slotProps: {
526
+ ...MenuProps.slotProps,
527
+ list: {
528
+ 'aria-labelledby': labelId,
529
+ role: 'listbox',
530
+ 'aria-multiselectable': multiple ? 'true' : undefined,
531
+ disableListWrap: true,
532
+ id: listboxId,
533
+ ...listProps
534
+ },
535
+ paper: {
536
+ ...paperProps,
537
+ style: {
538
+ minWidth: menuMinWidth,
539
+ ...(paperProps != null ? paperProps.style : null)
540
+ }
542
541
  }
543
- }
544
- },
545
- children: items
542
+ },
543
+ children: items
544
+ })
546
545
  })]
547
546
  });
548
547
  });
@@ -1,4 +1,5 @@
1
1
  export { default } from "./Select.js";
2
2
  export * from "./Select.js";
3
+ export * from "./utils/index.js";
3
4
  export { default as selectClasses } from "./selectClasses.js";
4
5
  export * from "./selectClasses.js";
@@ -1,3 +1,4 @@
1
1
  export { default } from "./Select.js";
2
+ export * from "./utils/index.js";
2
3
  export { default as selectClasses } from "./selectClasses.js";
3
4
  export * from "./selectClasses.js";
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ declare function useSelectFocusSource(): "touch" | "mouse" | "keyboard" | null;
3
+ declare const SelectFocusSourceProvider: React.Provider<"touch" | "mouse" | "keyboard" | null>;
4
+ export { useSelectFocusSource, SelectFocusSourceProvider };
@@ -0,0 +1,13 @@
1
+ 'use client';
2
+
3
+ import * as React from 'react';
4
+ const SelectFocusSourceContext = /*#__PURE__*/React.createContext(null);
5
+ if (process.env.NODE_ENV !== 'production') {
6
+ SelectFocusSourceContext.displayName = 'SelectFocusSourceContext';
7
+ }
8
+ function useSelectFocusSource() {
9
+ const context = React.useContext(SelectFocusSourceContext);
10
+ return context;
11
+ }
12
+ const SelectFocusSourceProvider = SelectFocusSourceContext.Provider;
13
+ export { useSelectFocusSource, SelectFocusSourceProvider };
@@ -0,0 +1 @@
1
+ export default function areEqualValues(a: unknown, b: unknown): boolean;
@@ -0,0 +1,8 @@
1
+ export default function areEqualValues(a, b) {
2
+ if (typeof b === 'object' && b !== null) {
3
+ return a === b;
4
+ }
5
+
6
+ // The value could be a number, the DOM will stringify it anyway.
7
+ return String(a) === String(b);
8
+ }
@@ -0,0 +1 @@
1
+ export default function getOpenInteractionType(event: MouseEvent | KeyboardEvent | TouchEvent | PointerEvent | null): 'keyboard' | 'pointer' | null;
@@ -0,0 +1,12 @@
1
+ export default function getOpenInteractionType(event) {
2
+ if (!event) {
3
+ return null;
4
+ }
5
+ if (event.type === 'mousedown' || event.type === 'pointerdown' || event.type === 'touchstart') {
6
+ return 'pointer';
7
+ }
8
+ if (event.type === 'keydown' || event.type === 'click' && event.detail === 0) {
9
+ return 'keyboard';
10
+ }
11
+ return null;
12
+ }
@@ -0,0 +1,4 @@
1
+ export { default as getOpenInteractionType } from "./getOpenInteractionType.js";
2
+ export { default as isEmpty } from "./isEmpty.js";
3
+ export { default as areEqualValues } from "./areEqualValues.js";
4
+ export { useSelectFocusSource, SelectFocusSourceProvider } from "./SelectFocusSourceContext.js";
@@ -0,0 +1,4 @@
1
+ export { default as getOpenInteractionType } from "./getOpenInteractionType.js";
2
+ export { default as isEmpty } from "./isEmpty.js";
3
+ export { default as areEqualValues } from "./areEqualValues.js";
4
+ export { useSelectFocusSource, SelectFocusSourceProvider } from "./SelectFocusSourceContext.js";
@@ -0,0 +1 @@
1
+ export default function isEmpty(display: unknown): boolean;
@@ -0,0 +1,3 @@
1
+ export default function isEmpty(display) {
2
+ return display == null || typeof display === 'string' && !display.trim();
3
+ }
@@ -11,7 +11,7 @@ export interface SkeletonOwnProps {
11
11
  * If `false` the animation effect is disabled.
12
12
  * @default 'pulse'
13
13
  */
14
- animation?: 'pulse' | 'wave' | false;
14
+ animation?: 'pulse' | 'wave' | false | undefined;
15
15
  /**
16
16
  * Optional children to infer width and height from.
17
17
  */
@@ -19,26 +19,26 @@ export interface SkeletonOwnProps {
19
19
  /**
20
20
  * Override or extend the styles applied to the component.
21
21
  */
22
- classes?: Partial<SkeletonClasses>;
22
+ classes?: Partial<SkeletonClasses> | undefined;
23
23
  /**
24
24
  * Height of the skeleton.
25
25
  * Useful when you don't want to adapt the skeleton to a text element but for instance a card.
26
26
  */
27
- height?: number | string;
27
+ height?: number | string | undefined;
28
28
  /**
29
29
  * The system prop that allows defining system overrides as well as additional CSS styles.
30
30
  */
31
- sx?: SxProps<Theme>;
31
+ sx?: SxProps<Theme> | undefined;
32
32
  /**
33
33
  * The type of content that will be rendered.
34
34
  * @default 'text'
35
35
  */
36
- variant?: OverridableStringUnion<'text' | 'rectangular' | 'rounded' | 'circular', SkeletonPropsVariantOverrides>;
36
+ variant?: OverridableStringUnion<'text' | 'rectangular' | 'rounded' | 'circular', SkeletonPropsVariantOverrides> | undefined;
37
37
  /**
38
38
  * Width of the skeleton.
39
39
  * Useful when the skeleton is inside an inline element with no width of its own.
40
40
  */
41
- width?: number | string;
41
+ width?: number | string | undefined;
42
42
  }
43
43
  export interface SkeletonTypeMap<AdditionalProps = {}, RootComponent extends React.ElementType = 'span'> {
44
44
  props: AdditionalProps & SkeletonOwnProps;
@@ -49,14 +49,14 @@ export interface SkeletonTypeMap<AdditionalProps = {}, RootComponent extends Rea
49
49
  *
50
50
  * Demos:
51
51
  *
52
- * - [Skeleton](https://mui.com/material-ui/react-skeleton/)
52
+ * - [Skeleton](https://v7.mui.com/material-ui/react-skeleton/)
53
53
  *
54
54
  * API:
55
55
  *
56
- * - [Skeleton API](https://mui.com/material-ui/api/skeleton/)
56
+ * - [Skeleton API](https://v7.mui.com/material-ui/api/skeleton/)
57
57
  */
58
58
  declare const Skeleton: OverridableComponent<SkeletonTypeMap>;
59
59
  export type SkeletonProps<RootComponent extends React.ElementType = SkeletonTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<SkeletonTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
60
- component?: React.ElementType;
60
+ component?: React.ElementType | undefined;
61
61
  };
62
62
  export default Skeleton;
@@ -6,7 +6,7 @@ export interface SlideProps extends TransitionProps {
6
6
  * Set this to `false` to disable this behavior.
7
7
  * @default true
8
8
  */
9
- appear?: boolean;
9
+ appear?: boolean | undefined;
10
10
  /**
11
11
  * A single child content element.
12
12
  */
@@ -15,12 +15,12 @@ export interface SlideProps extends TransitionProps {
15
15
  * An HTML element, or a function that returns one.
16
16
  * It's used to set the container the Slide is transitioning from.
17
17
  */
18
- container?: null | Element | ((element: Element) => Element);
18
+ container?: null | Element | ((element: Element) => Element) | undefined;
19
19
  /**
20
20
  * Direction the child node will enter from.
21
21
  * @default 'down'
22
22
  */
23
- direction?: 'left' | 'right' | 'up' | 'down';
23
+ direction?: 'left' | 'right' | 'up' | 'down' | undefined;
24
24
  /**
25
25
  * The transition timing function.
26
26
  * You may specify a single easing or a object containing enter and exit values.
@@ -29,12 +29,12 @@ export interface SlideProps extends TransitionProps {
29
29
  * exit: theme.transitions.easing.sharp,
30
30
  * }
31
31
  */
32
- easing?: TransitionProps['easing'];
32
+ easing?: TransitionProps['easing'] | undefined;
33
33
  /**
34
34
  * If `true`, the component will transition in.
35
35
  */
36
- in?: TransitionProps['in'];
37
- ref?: React.Ref<unknown>;
36
+ in?: TransitionProps['in'] | undefined;
37
+ ref?: React.Ref<unknown> | undefined;
38
38
  /**
39
39
  * The duration for the transition, in milliseconds.
40
40
  * You may specify a single timeout for all transitions, or individually with an object.
@@ -43,21 +43,21 @@ export interface SlideProps extends TransitionProps {
43
43
  * exit: theme.transitions.duration.leavingScreen,
44
44
  * }
45
45
  */
46
- timeout?: TransitionProps['timeout'];
46
+ timeout?: TransitionProps['timeout'] | undefined;
47
47
  }
48
48
 
49
49
  /**
50
- * The Slide transition is used by the [Drawer](https://mui.com/material-ui/react-drawer/) component.
50
+ * The Slide transition is used by the [Drawer](https://v7.mui.com/material-ui/react-drawer/) component.
51
51
  * It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
52
52
  *
53
53
  * Demos:
54
54
  *
55
- * - [Dialog](https://mui.com/material-ui/react-dialog/)
56
- * - [Transitions](https://mui.com/material-ui/transitions/)
55
+ * - [Dialog](https://v7.mui.com/material-ui/react-dialog/)
56
+ * - [Transitions](https://v7.mui.com/material-ui/transitions/)
57
57
  *
58
58
  * API:
59
59
  *
60
- * - [Slide API](https://mui.com/material-ui/api/slide/)
60
+ * - [Slide API](https://v7.mui.com/material-ui/api/slide/)
61
61
  * - inherits [Transition API](https://reactcommunity.org/react-transition-group/transition/#Transition-props)
62
62
  */
63
63
  export default function Slide(props: SlideProps): React.JSX.Element;
@@ -7,26 +7,37 @@ import chainPropTypes from '@mui/utils/chainPropTypes';
7
7
  import HTMLElementType from '@mui/utils/HTMLElementType';
8
8
  import elementAcceptingRef from '@mui/utils/elementAcceptingRef';
9
9
  import getReactElementRef from '@mui/utils/getReactElementRef';
10
+ import isLayoutSupported from "../utils/isLayoutSupported.js";
10
11
  import debounce from "../utils/debounce.js";
11
12
  import useForkRef from "../utils/useForkRef.js";
12
13
  import { useTheme } from "../zero-styled/index.js";
13
- import { reflow, getTransitionProps } from "../transitions/utils.js";
14
+ import { normalizedTransitionCallback, reflow, getTransitionProps } from "../transitions/utils.js";
14
15
  import { ownerWindow } from "../utils/index.js";
16
+ import { jsx as _jsx } from "react/jsx-runtime";
17
+ const hiddenStyles = {
18
+ visibility: 'hidden'
19
+ };
15
20
 
16
21
  // Translate the node so it can't be seen on the screen.
17
22
  // Later, we're going to translate the node back to its original location with `none`.
18
- import { jsx as _jsx } from "react/jsx-runtime";
19
23
  function getTranslateValue(direction, node, resolvedContainer) {
20
- const rect = node.getBoundingClientRect();
21
24
  const containerRect = resolvedContainer && resolvedContainer.getBoundingClientRect();
22
25
  const containerWindow = ownerWindow(node);
23
- let transform;
24
- if (node.fakeTransform) {
25
- transform = node.fakeTransform;
26
- } else {
27
- const computedStyle = containerWindow.getComputedStyle(node);
28
- transform = computedStyle.getPropertyValue('-webkit-transform') || computedStyle.getPropertyValue('transform');
29
- }
26
+
27
+ // Clear the inline transform and transition before reading layout and computed
28
+ // style so we compute from the element's natural position, not its previous
29
+ // off-screen translation. The transition must also be cleared, otherwise the
30
+ // browser may report an animated intermediate value from a still-running
31
+ // enter transition when reading getComputedStyle during exit.
32
+ const previousTransform = node.style.transform;
33
+ const previousTransition = node.style.transition;
34
+ node.style.transition = '';
35
+ node.style.transform = '';
36
+ const rect = node.getBoundingClientRect();
37
+ const computedStyle = containerWindow.getComputedStyle(node);
38
+ const transform = computedStyle.getPropertyValue('transform');
39
+ node.style.transform = previousTransform;
40
+ node.style.transition = previousTransition;
30
41
  let offsetX = 0;
31
42
  let offsetY = 0;
32
43
  if (transform && transform !== 'none' && typeof transform === 'string') {
@@ -66,7 +77,6 @@ export function setTranslateValue(direction, node, containerProp) {
66
77
  const resolvedContainer = resolveContainer(containerProp);
67
78
  const transform = getTranslateValue(direction, node, resolvedContainer);
68
79
  if (transform) {
69
- node.style.webkitTransform = transform;
70
80
  node.style.transform = transform;
71
81
  }
72
82
  }
@@ -101,30 +111,18 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
101
111
  onExiting,
102
112
  style,
103
113
  timeout = defaultTimeout,
104
- // eslint-disable-next-line react/prop-types
105
- TransitionComponent = Transition,
106
114
  ...other
107
115
  } = props;
108
116
  const childrenRef = React.useRef(null);
109
117
  const handleRef = useForkRef(getReactElementRef(children), childrenRef, ref);
110
- const normalizedTransitionCallback = callback => isAppearing => {
111
- if (callback) {
112
- // onEnterXxx and onExitXxx callbacks have a different arguments.length value.
113
- if (isAppearing === undefined) {
114
- callback(childrenRef.current);
115
- } else {
116
- callback(childrenRef.current, isAppearing);
117
- }
118
- }
119
- };
120
- const handleEnter = normalizedTransitionCallback((node, isAppearing) => {
118
+ const handleEnter = normalizedTransitionCallback(childrenRef, (node, isAppearing) => {
121
119
  setTranslateValue(direction, node, containerProp);
122
120
  reflow(node);
123
121
  if (onEnter) {
124
122
  onEnter(node, isAppearing);
125
123
  }
126
124
  });
127
- const handleEntering = normalizedTransitionCallback((node, isAppearing) => {
125
+ const handleEntering = normalizedTransitionCallback(childrenRef, (node, isAppearing) => {
128
126
  const transitionProps = getTransitionProps({
129
127
  timeout,
130
128
  style,
@@ -132,21 +130,15 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
132
130
  }, {
133
131
  mode: 'enter'
134
132
  });
135
- node.style.webkitTransition = theme.transitions.create('-webkit-transform', {
136
- ...transitionProps
137
- });
138
- node.style.transition = theme.transitions.create('transform', {
139
- ...transitionProps
140
- });
141
- node.style.webkitTransform = 'none';
133
+ node.style.transition = theme.transitions.create('transform', transitionProps);
142
134
  node.style.transform = 'none';
143
135
  if (onEntering) {
144
136
  onEntering(node, isAppearing);
145
137
  }
146
138
  });
147
- const handleEntered = normalizedTransitionCallback(onEntered);
148
- const handleExiting = normalizedTransitionCallback(onExiting);
149
- const handleExit = normalizedTransitionCallback(node => {
139
+ const handleEntered = normalizedTransitionCallback(childrenRef, onEntered);
140
+ const handleExiting = normalizedTransitionCallback(childrenRef, onExiting);
141
+ const handleExit = normalizedTransitionCallback(childrenRef, node => {
150
142
  const transitionProps = getTransitionProps({
151
143
  timeout,
152
144
  style,
@@ -154,16 +146,14 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
154
146
  }, {
155
147
  mode: 'exit'
156
148
  });
157
- node.style.webkitTransition = theme.transitions.create('-webkit-transform', transitionProps);
158
149
  node.style.transition = theme.transitions.create('transform', transitionProps);
159
150
  setTranslateValue(direction, node, containerProp);
160
151
  if (onExit) {
161
152
  onExit(node);
162
153
  }
163
154
  });
164
- const handleExited = normalizedTransitionCallback(node => {
155
+ const handleExited = normalizedTransitionCallback(childrenRef, node => {
165
156
  // No need for transitions when the component is hidden
166
- node.style.webkitTransition = '';
167
157
  node.style.transition = '';
168
158
  if (onExited) {
169
159
  onExited(node);
@@ -204,7 +194,7 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
204
194
  updatePosition();
205
195
  }
206
196
  }, [inProp, updatePosition]);
207
- return /*#__PURE__*/_jsx(TransitionComponent, {
197
+ return /*#__PURE__*/_jsx(Transition, {
208
198
  nodeRef: childrenRef,
209
199
  onEnter: handleEnter,
210
200
  onEntered: handleEntered,
@@ -221,13 +211,24 @@ const Slide = /*#__PURE__*/React.forwardRef(function Slide(props, ref) {
221
211
  ownerState,
222
212
  ...restChildProps
223
213
  }) => {
224
- return /*#__PURE__*/React.cloneElement(children, {
225
- ref: handleRef,
226
- style: {
227
- visibility: state === 'exited' && !inProp ? 'hidden' : undefined,
214
+ let childStyle;
215
+ if (state === 'exited' && !inProp) {
216
+ childStyle = style || children.props.style ? {
217
+ visibility: 'hidden',
218
+ ...style,
219
+ ...children.props.style
220
+ } : hiddenStyles;
221
+ } else if (style && children.props.style) {
222
+ childStyle = {
228
223
  ...style,
229
224
  ...children.props.style
230
- },
225
+ };
226
+ } else {
227
+ childStyle = style || children.props.style;
228
+ }
229
+ return /*#__PURE__*/React.cloneElement(children, {
230
+ ref: handleRef,
231
+ style: childStyle,
231
232
  ...restChildProps
232
233
  });
233
234
  }
@@ -263,8 +264,10 @@ process.env.NODE_ENV !== "production" ? Slide.propTypes /* remove-proptypes */ =
263
264
  const resolvedContainer = resolveContainer(props.container);
264
265
  if (resolvedContainer && resolvedContainer.nodeType === 1) {
265
266
  const box = resolvedContainer.getBoundingClientRect();
266
- if (process.env.NODE_ENV !== 'production' && !globalThis.MUI_TEST_ENV && box.top === 0 && box.left === 0 && box.right === 0 && box.bottom === 0) {
267
- return new Error(['MUI: The `container` prop provided to the component is invalid.', 'The anchor element should be part of the document layout.', "Make sure the element is present in the document or that it's not display none."].join('\n'));
267
+ if (process.env.NODE_ENV !== 'production') {
268
+ if (isLayoutSupported() && box.top === 0 && box.left === 0 && box.right === 0 && box.bottom === 0) {
269
+ return new Error(['MUI: The `container` prop provided to the component is invalid.', 'The anchor element should be part of the document layout.', "Make sure the element is present in the document or that it's not display none."].join('\n'));
270
+ }
268
271
  }
269
272
  } else if (!resolvedContainer || typeof resolvedContainer.getBoundingClientRect !== 'function' || resolvedContainer.contextElement != null && resolvedContainer.contextElement.nodeType !== 1) {
270
273
  return new Error(['MUI: The `container` prop provided to the component is invalid.', 'It should be an HTML element instance.'].join('\n'));