@mui/material 9.0.0-beta.1 → 9.0.1

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 (419) hide show
  1. package/Accordion/Accordion.d.mts +3 -3
  2. package/Accordion/Accordion.d.ts +3 -3
  3. package/AccordionActions/AccordionActions.d.mts +2 -2
  4. package/AccordionActions/AccordionActions.d.ts +2 -2
  5. package/AccordionDetails/AccordionDetails.d.mts +2 -2
  6. package/AccordionDetails/AccordionDetails.d.ts +2 -2
  7. package/AccordionSummary/AccordionSummary.d.mts +3 -3
  8. package/AccordionSummary/AccordionSummary.d.ts +3 -3
  9. package/Alert/Alert.d.mts +3 -3
  10. package/Alert/Alert.d.ts +3 -3
  11. package/AlertTitle/AlertTitle.d.mts +3 -3
  12. package/AlertTitle/AlertTitle.d.ts +3 -3
  13. package/AppBar/AppBar.d.mts +3 -3
  14. package/AppBar/AppBar.d.ts +3 -3
  15. package/Autocomplete/Autocomplete.d.mts +2 -2
  16. package/Autocomplete/Autocomplete.d.ts +2 -2
  17. package/Autocomplete/Autocomplete.js +65 -11
  18. package/Autocomplete/Autocomplete.mjs +65 -11
  19. package/Avatar/Avatar.d.mts +2 -2
  20. package/Avatar/Avatar.d.ts +2 -2
  21. package/Avatar/Avatar.js +4 -0
  22. package/Avatar/Avatar.mjs +4 -0
  23. package/AvatarGroup/AvatarGroup.d.mts +2 -2
  24. package/AvatarGroup/AvatarGroup.d.ts +2 -2
  25. package/Backdrop/Backdrop.d.mts +3 -3
  26. package/Backdrop/Backdrop.d.ts +3 -3
  27. package/Badge/Badge.d.mts +3 -3
  28. package/Badge/Badge.d.ts +3 -3
  29. package/Badge/Badge.js +3 -0
  30. package/Badge/Badge.mjs +3 -0
  31. package/BottomNavigation/BottomNavigation.d.mts +2 -2
  32. package/BottomNavigation/BottomNavigation.d.ts +2 -2
  33. package/BottomNavigationAction/BottomNavigationAction.d.mts +3 -3
  34. package/BottomNavigationAction/BottomNavigationAction.d.ts +3 -3
  35. package/Box/Box.d.mts +3 -3
  36. package/Box/Box.d.ts +3 -3
  37. package/Breadcrumbs/Breadcrumbs.d.mts +3 -3
  38. package/Breadcrumbs/Breadcrumbs.d.ts +3 -3
  39. package/Button/Button.d.mts +6 -6
  40. package/Button/Button.d.ts +6 -6
  41. package/Button/Button.js +19 -2
  42. package/Button/Button.mjs +19 -2
  43. package/ButtonBase/ButtonBase.d.mts +9 -2
  44. package/ButtonBase/ButtonBase.d.ts +9 -2
  45. package/ButtonBase/ButtonBase.js +5 -2
  46. package/ButtonBase/ButtonBase.mjs +5 -2
  47. package/ButtonGroup/ButtonGroup.d.mts +2 -2
  48. package/ButtonGroup/ButtonGroup.d.ts +2 -2
  49. package/CHANGELOG.md +160 -1245
  50. package/Card/Card.d.mts +3 -3
  51. package/Card/Card.d.ts +3 -3
  52. package/CardActionArea/CardActionArea.d.mts +3 -3
  53. package/CardActionArea/CardActionArea.d.ts +3 -3
  54. package/CardActions/CardActions.d.mts +2 -2
  55. package/CardActions/CardActions.d.ts +2 -2
  56. package/CardContent/CardContent.d.mts +2 -2
  57. package/CardContent/CardContent.d.ts +2 -2
  58. package/CardHeader/CardHeader.d.mts +2 -2
  59. package/CardHeader/CardHeader.d.ts +2 -2
  60. package/CardMedia/CardMedia.d.mts +2 -2
  61. package/CardMedia/CardMedia.d.ts +2 -2
  62. package/Checkbox/Checkbox.d.mts +4 -4
  63. package/Checkbox/Checkbox.d.ts +4 -4
  64. package/Checkbox/Checkbox.js +2 -1
  65. package/Checkbox/Checkbox.mjs +2 -1
  66. package/Chip/Chip.d.mts +2 -2
  67. package/Chip/Chip.d.ts +2 -2
  68. package/CircularProgress/CircularProgress.d.mts +14 -4
  69. package/CircularProgress/CircularProgress.d.ts +14 -4
  70. package/CircularProgress/CircularProgress.js +33 -6
  71. package/CircularProgress/CircularProgress.mjs +33 -6
  72. package/ClickAwayListener/ClickAwayListener.d.mts +3 -3
  73. package/ClickAwayListener/ClickAwayListener.d.ts +3 -3
  74. package/ClickAwayListener/ClickAwayListener.js +6 -9
  75. package/ClickAwayListener/ClickAwayListener.mjs +6 -9
  76. package/Collapse/Collapse.d.mts +5 -5
  77. package/Collapse/Collapse.d.ts +5 -5
  78. package/Collapse/Collapse.js +6 -18
  79. package/Collapse/Collapse.mjs +7 -19
  80. package/Container/Container.d.mts +2 -2
  81. package/Container/Container.d.ts +2 -2
  82. package/CssBaseline/CssBaseline.d.mts +2 -2
  83. package/CssBaseline/CssBaseline.d.ts +2 -2
  84. package/Dialog/Dialog.d.mts +3 -3
  85. package/Dialog/Dialog.d.ts +3 -3
  86. package/Dialog/Dialog.js +11 -6
  87. package/Dialog/Dialog.mjs +11 -6
  88. package/DialogActions/DialogActions.d.mts +2 -2
  89. package/DialogActions/DialogActions.d.ts +2 -2
  90. package/DialogContent/DialogContent.d.mts +2 -2
  91. package/DialogContent/DialogContent.d.ts +2 -2
  92. package/DialogContentText/DialogContentText.d.mts +3 -3
  93. package/DialogContentText/DialogContentText.d.ts +3 -3
  94. package/DialogTitle/DialogTitle.d.mts +3 -3
  95. package/DialogTitle/DialogTitle.d.ts +3 -3
  96. package/Divider/Divider.d.mts +4 -4
  97. package/Divider/Divider.d.ts +4 -4
  98. package/Drawer/Drawer.d.mts +3 -3
  99. package/Drawer/Drawer.d.ts +3 -3
  100. package/Drawer/Drawer.js +19 -8
  101. package/Drawer/Drawer.mjs +19 -8
  102. package/Fab/Fab.d.mts +3 -3
  103. package/Fab/Fab.d.ts +3 -3
  104. package/Fab/Fab.js +7 -1
  105. package/Fab/Fab.mjs +7 -1
  106. package/Fade/Fade.d.mts +3 -3
  107. package/Fade/Fade.d.ts +3 -3
  108. package/Fade/Fade.js +28 -32
  109. package/Fade/Fade.mjs +29 -33
  110. package/FilledInput/FilledInput.d.mts +7 -3
  111. package/FilledInput/FilledInput.d.ts +7 -3
  112. package/FilledInput/FilledInput.js +18 -20
  113. package/FilledInput/FilledInput.mjs +18 -20
  114. package/FormControl/FormControl.d.mts +7 -7
  115. package/FormControl/FormControl.d.ts +7 -7
  116. package/FormControl/useFormControl.d.mts +12 -2
  117. package/FormControl/useFormControl.d.ts +12 -2
  118. package/FormControl/useFormControl.js +13 -0
  119. package/FormControl/useFormControl.mjs +12 -0
  120. package/FormControlLabel/FormControlLabel.d.mts +4 -4
  121. package/FormControlLabel/FormControlLabel.d.ts +4 -4
  122. package/FormControlLabel/FormControlLabel.js +5 -8
  123. package/FormControlLabel/FormControlLabel.mjs +5 -8
  124. package/FormGroup/FormGroup.d.mts +3 -3
  125. package/FormGroup/FormGroup.d.ts +3 -3
  126. package/FormGroup/FormGroup.js +2 -5
  127. package/FormGroup/FormGroup.mjs +2 -5
  128. package/FormHelperText/FormHelperText.d.mts +3 -3
  129. package/FormHelperText/FormHelperText.d.ts +3 -3
  130. package/FormHelperText/FormHelperText.js +2 -5
  131. package/FormHelperText/FormHelperText.mjs +2 -5
  132. package/FormLabel/FormLabel.d.mts +5 -5
  133. package/FormLabel/FormLabel.d.ts +5 -5
  134. package/FormLabel/FormLabel.js +2 -5
  135. package/FormLabel/FormLabel.mjs +2 -5
  136. package/GlobalStyles/GlobalStyles.d.mts +2 -2
  137. package/GlobalStyles/GlobalStyles.d.ts +2 -2
  138. package/Grid/Grid.d.mts +2 -2
  139. package/Grid/Grid.d.ts +2 -2
  140. package/Grid/Grid.js +2 -2
  141. package/Grid/Grid.mjs +2 -2
  142. package/Grow/Grow.d.mts +5 -5
  143. package/Grow/Grow.d.ts +5 -5
  144. package/Grow/Grow.js +30 -38
  145. package/Grow/Grow.mjs +31 -39
  146. package/Icon/Icon.d.mts +3 -3
  147. package/Icon/Icon.d.ts +3 -3
  148. package/IconButton/IconButton.d.mts +5 -5
  149. package/IconButton/IconButton.d.ts +5 -5
  150. package/IconButton/IconButton.js +1 -8
  151. package/IconButton/IconButton.mjs +1 -8
  152. package/ImageList/ImageList.d.mts +2 -2
  153. package/ImageList/ImageList.d.ts +2 -2
  154. package/ImageListItem/ImageListItem.d.mts +2 -2
  155. package/ImageListItem/ImageListItem.d.ts +2 -2
  156. package/ImageListItemBar/ImageListItemBar.d.mts +2 -2
  157. package/ImageListItemBar/ImageListItemBar.d.ts +2 -2
  158. package/InitColorSchemeScript/InitColorSchemeScript.d.mts +2 -2
  159. package/InitColorSchemeScript/InitColorSchemeScript.d.ts +2 -2
  160. package/InitColorSchemeScript/InitColorSchemeScript.js +2 -2
  161. package/InitColorSchemeScript/InitColorSchemeScript.mjs +2 -2
  162. package/Input/Input.d.mts +7 -3
  163. package/Input/Input.d.ts +7 -3
  164. package/Input/Input.js +6 -0
  165. package/Input/Input.mjs +6 -0
  166. package/InputAdornment/InputAdornment.d.mts +2 -2
  167. package/InputAdornment/InputAdornment.d.ts +2 -2
  168. package/InputBase/InputBase.d.mts +4 -3
  169. package/InputBase/InputBase.d.ts +4 -3
  170. package/InputBase/InputBase.js +50 -15
  171. package/InputBase/InputBase.mjs +50 -15
  172. package/InputLabel/InputLabel.d.mts +4 -4
  173. package/InputLabel/InputLabel.d.ts +4 -4
  174. package/InputLabel/InputLabel.js +5 -8
  175. package/InputLabel/InputLabel.mjs +5 -8
  176. package/LinearProgress/LinearProgress.d.mts +14 -4
  177. package/LinearProgress/LinearProgress.d.ts +14 -4
  178. package/LinearProgress/LinearProgress.js +42 -10
  179. package/LinearProgress/LinearProgress.mjs +42 -10
  180. package/Link/Link.d.mts +4 -4
  181. package/Link/Link.d.ts +4 -4
  182. package/List/List.d.mts +4 -4
  183. package/List/List.d.ts +4 -4
  184. package/List/List.js +2 -1
  185. package/List/List.mjs +2 -1
  186. package/ListItem/ListItem.d.mts +3 -3
  187. package/ListItem/ListItem.d.ts +3 -3
  188. package/ListItem/ListItem.js +1 -2
  189. package/ListItem/ListItem.mjs +1 -2
  190. package/ListItemAvatar/ListItemAvatar.d.mts +2 -2
  191. package/ListItemAvatar/ListItemAvatar.d.ts +2 -2
  192. package/ListItemButton/ListItemButton.d.mts +4 -4
  193. package/ListItemButton/ListItemButton.d.ts +4 -4
  194. package/ListItemButton/ListItemButton.js +7 -1
  195. package/ListItemButton/ListItemButton.mjs +7 -1
  196. package/ListItemIcon/ListItemIcon.d.mts +3 -3
  197. package/ListItemIcon/ListItemIcon.d.ts +3 -3
  198. package/ListItemSecondaryAction/ListItemSecondaryAction.d.mts +2 -2
  199. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +2 -2
  200. package/ListItemText/ListItemText.d.mts +3 -3
  201. package/ListItemText/ListItemText.d.ts +3 -3
  202. package/ListSubheader/ListSubheader.d.mts +3 -3
  203. package/ListSubheader/ListSubheader.d.ts +3 -3
  204. package/Menu/Menu.d.mts +4 -4
  205. package/Menu/Menu.d.ts +4 -4
  206. package/MenuItem/MenuItem.d.mts +3 -3
  207. package/MenuItem/MenuItem.d.ts +3 -3
  208. package/MenuItem/MenuItem.js +7 -1
  209. package/MenuItem/MenuItem.mjs +7 -1
  210. package/MenuList/MenuList.d.mts +4 -4
  211. package/MenuList/MenuList.d.ts +4 -4
  212. package/MenuList/MenuList.js +2 -1
  213. package/MenuList/MenuList.mjs +2 -1
  214. package/MobileStepper/MobileStepper.d.mts +3 -3
  215. package/MobileStepper/MobileStepper.d.ts +3 -3
  216. package/Modal/Modal.d.mts +7 -7
  217. package/Modal/Modal.d.ts +7 -7
  218. package/NativeSelect/NativeSelect.d.mts +3 -3
  219. package/NativeSelect/NativeSelect.d.ts +3 -3
  220. package/NativeSelect/NativeSelect.js +2 -5
  221. package/NativeSelect/NativeSelect.mjs +2 -5
  222. package/NoSsr/NoSsr.d.mts +2 -2
  223. package/NoSsr/NoSsr.d.ts +2 -2
  224. package/NoSsr/NoSsr.js +2 -2
  225. package/NoSsr/NoSsr.mjs +2 -2
  226. package/OutlinedInput/OutlinedInput.d.mts +4 -4
  227. package/OutlinedInput/OutlinedInput.d.ts +4 -4
  228. package/OutlinedInput/OutlinedInput.js +13 -23
  229. package/OutlinedInput/OutlinedInput.mjs +13 -23
  230. package/Pagination/Pagination.d.mts +2 -2
  231. package/Pagination/Pagination.d.ts +2 -2
  232. package/PaginationItem/PaginationItem.d.mts +3 -3
  233. package/PaginationItem/PaginationItem.d.ts +3 -3
  234. package/Paper/Paper.d.mts +4 -4
  235. package/Paper/Paper.d.ts +4 -4
  236. package/PigmentContainer/PigmentContainer.d.mts +2 -2
  237. package/PigmentContainer/PigmentContainer.d.ts +2 -2
  238. package/PigmentContainer/PigmentContainer.js +2 -3
  239. package/PigmentContainer/PigmentContainer.mjs +2 -3
  240. package/PigmentGrid/PigmentGrid.d.mts +2 -2
  241. package/PigmentGrid/PigmentGrid.d.ts +2 -2
  242. package/PigmentGrid/PigmentGrid.js +2 -2
  243. package/PigmentGrid/PigmentGrid.mjs +2 -2
  244. package/PigmentStack/PigmentStack.d.mts +2 -2
  245. package/PigmentStack/PigmentStack.d.ts +2 -2
  246. package/PigmentStack/PigmentStack.js +2 -2
  247. package/PigmentStack/PigmentStack.mjs +2 -2
  248. package/Popover/Popover.d.mts +4 -4
  249. package/Popover/Popover.d.ts +4 -4
  250. package/Popper/BasePopper.js +23 -1
  251. package/Popper/BasePopper.mjs +23 -1
  252. package/Popper/Popper.d.mts +4 -4
  253. package/Popper/Popper.d.ts +4 -4
  254. package/Popper/Popper.js +4 -4
  255. package/Popper/Popper.mjs +4 -4
  256. package/Portal/Portal.d.mts +2 -2
  257. package/Portal/Portal.d.ts +2 -2
  258. package/Portal/Portal.js +2 -2
  259. package/Portal/Portal.mjs +2 -2
  260. package/README.md +3 -3
  261. package/Radio/Radio.d.mts +3 -3
  262. package/Radio/Radio.d.ts +3 -3
  263. package/RadioGroup/RadioGroup.d.mts +3 -3
  264. package/RadioGroup/RadioGroup.d.ts +3 -3
  265. package/Rating/Rating.d.mts +2 -2
  266. package/Rating/Rating.d.ts +2 -2
  267. package/ScopedCssBaseline/ScopedCssBaseline.d.mts +2 -2
  268. package/ScopedCssBaseline/ScopedCssBaseline.d.ts +2 -2
  269. package/Select/Select.d.mts +3 -3
  270. package/Select/Select.d.ts +3 -3
  271. package/Select/Select.js +2 -5
  272. package/Select/Select.mjs +2 -5
  273. package/Select/SelectInput.js +164 -2
  274. package/Select/SelectInput.mjs +164 -2
  275. package/Skeleton/Skeleton.d.mts +2 -2
  276. package/Skeleton/Skeleton.d.ts +2 -2
  277. package/Slide/Slide.d.mts +4 -4
  278. package/Slide/Slide.d.ts +4 -4
  279. package/Slide/Slide.js +73 -50
  280. package/Slide/Slide.mjs +74 -52
  281. package/Slider/Slider.d.mts +4 -4
  282. package/Slider/Slider.d.ts +4 -4
  283. package/Slider/Slider.js +11 -2
  284. package/Slider/Slider.mjs +11 -2
  285. package/Slider/useSlider.d.mts +1 -1
  286. package/Slider/useSlider.d.ts +1 -1
  287. package/Slider/useSlider.js +236 -209
  288. package/Slider/useSlider.mjs +236 -209
  289. package/Slider/useSlider.types.d.mts +2 -2
  290. package/Slider/useSlider.types.d.ts +2 -2
  291. package/Snackbar/Snackbar.d.mts +2 -2
  292. package/Snackbar/Snackbar.d.ts +2 -2
  293. package/SnackbarContent/SnackbarContent.d.mts +3 -3
  294. package/SnackbarContent/SnackbarContent.d.ts +3 -3
  295. package/SpeedDial/SpeedDial.d.mts +2 -2
  296. package/SpeedDial/SpeedDial.d.ts +2 -2
  297. package/SpeedDialAction/SpeedDialAction.d.mts +3 -3
  298. package/SpeedDialAction/SpeedDialAction.d.ts +3 -3
  299. package/SpeedDialIcon/SpeedDialIcon.d.mts +2 -2
  300. package/SpeedDialIcon/SpeedDialIcon.d.ts +2 -2
  301. package/Stack/Stack.d.mts +2 -2
  302. package/Stack/Stack.d.ts +2 -2
  303. package/Step/Step.d.mts +2 -2
  304. package/Step/Step.d.ts +2 -2
  305. package/StepButton/StepButton.d.mts +3 -3
  306. package/StepButton/StepButton.d.ts +3 -3
  307. package/StepConnector/StepConnector.d.mts +2 -2
  308. package/StepConnector/StepConnector.d.ts +2 -2
  309. package/StepConnector/StepConnector.js +1 -2
  310. package/StepConnector/StepConnector.mjs +1 -2
  311. package/StepContent/StepContent.d.mts +2 -2
  312. package/StepContent/StepContent.d.ts +2 -2
  313. package/StepIcon/StepIcon.d.mts +3 -3
  314. package/StepIcon/StepIcon.d.ts +3 -3
  315. package/StepLabel/StepLabel.d.mts +2 -2
  316. package/StepLabel/StepLabel.d.ts +2 -2
  317. package/Stepper/Stepper.d.mts +2 -2
  318. package/Stepper/Stepper.d.ts +2 -2
  319. package/SvgIcon/SvgIcon.d.mts +3 -3
  320. package/SvgIcon/SvgIcon.d.ts +3 -3
  321. package/SwipeableDrawer/SwipeableDrawer.d.mts +3 -3
  322. package/SwipeableDrawer/SwipeableDrawer.d.ts +3 -3
  323. package/SwipeableDrawer/SwipeableDrawer.js +7 -6
  324. package/SwipeableDrawer/SwipeableDrawer.mjs +7 -6
  325. package/Switch/Switch.d.mts +4 -4
  326. package/Switch/Switch.d.ts +4 -4
  327. package/Switch/Switch.js +9 -4
  328. package/Switch/Switch.mjs +9 -4
  329. package/Tab/Tab.d.mts +3 -3
  330. package/Tab/Tab.d.ts +3 -3
  331. package/TabScrollButton/TabScrollButton.d.mts +2 -2
  332. package/TabScrollButton/TabScrollButton.d.ts +2 -2
  333. package/Table/Table.d.mts +2 -2
  334. package/Table/Table.d.ts +2 -2
  335. package/TableBody/TableBody.d.mts +2 -2
  336. package/TableBody/TableBody.d.ts +2 -2
  337. package/TableCell/TableCell.d.mts +2 -2
  338. package/TableCell/TableCell.d.ts +2 -2
  339. package/TableContainer/TableContainer.d.mts +2 -2
  340. package/TableContainer/TableContainer.d.ts +2 -2
  341. package/TableFooter/TableFooter.d.mts +2 -2
  342. package/TableFooter/TableFooter.d.ts +2 -2
  343. package/TableHead/TableHead.d.mts +2 -2
  344. package/TableHead/TableHead.d.ts +2 -2
  345. package/TablePagination/TablePagination.d.mts +4 -4
  346. package/TablePagination/TablePagination.d.ts +4 -4
  347. package/TablePaginationActions/TablePaginationActions.d.mts +2 -2
  348. package/TablePaginationActions/TablePaginationActions.d.ts +2 -2
  349. package/TableRow/TableRow.d.mts +2 -2
  350. package/TableRow/TableRow.d.ts +2 -2
  351. package/TableSortLabel/TableSortLabel.d.mts +3 -3
  352. package/TableSortLabel/TableSortLabel.d.ts +3 -3
  353. package/TableSortLabel/TableSortLabel.js +1 -2
  354. package/TableSortLabel/TableSortLabel.mjs +1 -2
  355. package/Tabs/ScrollbarSize.js +2 -1
  356. package/Tabs/ScrollbarSize.mjs +2 -1
  357. package/Tabs/Tabs.d.mts +2 -2
  358. package/Tabs/Tabs.d.ts +2 -2
  359. package/Tabs/Tabs.js +2 -1
  360. package/Tabs/Tabs.mjs +2 -1
  361. package/TextField/TextField.d.mts +10 -10
  362. package/TextField/TextField.d.ts +10 -10
  363. package/TextareaAutosize/TextareaAutosize.d.mts +2 -2
  364. package/TextareaAutosize/TextareaAutosize.d.ts +2 -2
  365. package/TextareaAutosize/TextareaAutosize.js +2 -2
  366. package/TextareaAutosize/TextareaAutosize.mjs +2 -2
  367. package/ToggleButton/ToggleButton.d.mts +3 -3
  368. package/ToggleButton/ToggleButton.d.ts +3 -3
  369. package/ToggleButtonGroup/ToggleButtonGroup.d.mts +2 -2
  370. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +2 -2
  371. package/Toolbar/Toolbar.d.mts +2 -2
  372. package/Toolbar/Toolbar.d.ts +2 -2
  373. package/Tooltip/Tooltip.d.mts +2 -2
  374. package/Tooltip/Tooltip.d.ts +2 -2
  375. package/Tooltip/Tooltip.js +26 -108
  376. package/Tooltip/Tooltip.mjs +26 -108
  377. package/Typography/Typography.d.mts +4 -4
  378. package/Typography/Typography.d.ts +4 -4
  379. package/Unstable_TrapFocus/FocusTrap.js +18 -14
  380. package/Unstable_TrapFocus/FocusTrap.mjs +18 -14
  381. package/Zoom/Zoom.d.mts +3 -3
  382. package/Zoom/Zoom.d.ts +3 -3
  383. package/Zoom/Zoom.js +24 -30
  384. package/Zoom/Zoom.mjs +25 -31
  385. package/index.js +1 -1
  386. package/index.mjs +1 -1
  387. package/package.json +7 -7
  388. package/styles/createThemeNoVars.js +1 -1
  389. package/styles/createThemeNoVars.mjs +1 -1
  390. package/styles/responsiveFontSizes.js +19 -8
  391. package/styles/responsiveFontSizes.mjs +19 -8
  392. package/styles/useThemeProps.d.mts +3 -3
  393. package/styles/useThemeProps.d.ts +3 -3
  394. package/transitions/utils.d.mts +24 -0
  395. package/transitions/utils.d.ts +24 -0
  396. package/transitions/utils.js +91 -0
  397. package/transitions/utils.mjs +88 -0
  398. package/useAutocomplete/useAutocomplete.d.mts +4 -5
  399. package/useAutocomplete/useAutocomplete.d.ts +4 -5
  400. package/useAutocomplete/useAutocomplete.js +166 -53
  401. package/useAutocomplete/useAutocomplete.mjs +166 -53
  402. package/utils/contains.d.mts +2 -0
  403. package/utils/contains.d.ts +2 -0
  404. package/utils/contains.js +9 -0
  405. package/utils/contains.mjs +2 -0
  406. package/utils/focusable.d.mts +7 -0
  407. package/utils/focusable.d.ts +7 -0
  408. package/utils/focusable.js +20 -0
  409. package/utils/focusable.mjs +13 -0
  410. package/utils/getEventTarget.d.mts +2 -0
  411. package/utils/getEventTarget.d.ts +2 -0
  412. package/utils/getEventTarget.js +9 -0
  413. package/utils/getEventTarget.mjs +2 -0
  414. package/utils/mergeSlotProps.js +2 -8
  415. package/utils/mergeSlotProps.mjs +1 -8
  416. package/version/index.js +3 -3
  417. package/version/index.mjs +3 -3
  418. package/FormControl/formControlState.js +0 -21
  419. package/FormControl/formControlState.mjs +0 -15
@@ -46,11 +46,11 @@ export interface InputAdornmentTypeMap<AdditionalProps = {}, RootComponent exten
46
46
  *
47
47
  * Demos:
48
48
  *
49
- * - [Text Field](https://next.mui.com/material-ui/react-text-field/)
49
+ * - [Text Field](https://mui.com/material-ui/react-text-field/)
50
50
  *
51
51
  * API:
52
52
  *
53
- * - [InputAdornment API](https://next.mui.com/material-ui/api/input-adornment/)
53
+ * - [InputAdornment API](https://mui.com/material-ui/api/input-adornment/)
54
54
  */
55
55
  declare const InputAdornment: OverridableComponent<InputAdornmentTypeMap>;
56
56
  export type InputAdornmentProps<RootComponent extends React.ElementType = InputAdornmentTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<InputAdornmentTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
@@ -13,8 +13,9 @@ export interface InputBaseProps extends StandardProps<React.HTMLAttributes<HTMLD
13
13
  * which by default is an input or textarea. Since these handlers differ from the
14
14
  * ones inherited by `React.HTMLAttributes<HTMLDivElement>` we need to omit them.
15
15
  */
16
- 'children' | 'defaultValue' | 'onBlur' | 'onChange' | 'onFocus' | 'onInvalid' | 'onKeyDown' | 'onKeyUp'> {
16
+ 'children' | 'defaultValue' | 'onBlur' | 'onChange' | 'onFocus' | 'onInvalid' | 'onKeyDown' | 'onKeyUp' | 'aria-label'> {
17
17
  'aria-describedby'?: string | undefined;
18
+ 'aria-label'?: string | undefined;
18
19
  /**
19
20
  * This prop helps users to fill forms faster, especially on mobile devices.
20
21
  * The name can be confusing, as it's more like an autofill.
@@ -211,10 +212,10 @@ export interface InputBaseComponentProps extends React.HTMLAttributes<HTMLInputE
211
212
  *
212
213
  * Demos:
213
214
  *
214
- * - [Text Field](https://next.mui.com/material-ui/react-text-field/)
215
+ * - [Text Field](https://mui.com/material-ui/react-text-field/)
215
216
  *
216
217
  * API:
217
218
  *
218
- * - [InputBase API](https://next.mui.com/material-ui/api/input-base/)
219
+ * - [InputBase API](https://mui.com/material-ui/api/input-base/)
219
220
  */
220
221
  export default function InputBase(props: InputBaseProps): React.JSX.Element;
@@ -13,8 +13,9 @@ export interface InputBaseProps extends StandardProps<React.HTMLAttributes<HTMLD
13
13
  * which by default is an input or textarea. Since these handlers differ from the
14
14
  * ones inherited by `React.HTMLAttributes<HTMLDivElement>` we need to omit them.
15
15
  */
16
- 'children' | 'defaultValue' | 'onBlur' | 'onChange' | 'onFocus' | 'onInvalid' | 'onKeyDown' | 'onKeyUp'> {
16
+ 'children' | 'defaultValue' | 'onBlur' | 'onChange' | 'onFocus' | 'onInvalid' | 'onKeyDown' | 'onKeyUp' | 'aria-label'> {
17
17
  'aria-describedby'?: string | undefined;
18
+ 'aria-label'?: string | undefined;
18
19
  /**
19
20
  * This prop helps users to fill forms faster, especially on mobile devices.
20
21
  * The name can be confusing, as it's more like an autofill.
@@ -211,10 +212,10 @@ export interface InputBaseComponentProps extends React.HTMLAttributes<HTMLInputE
211
212
  *
212
213
  * Demos:
213
214
  *
214
- * - [Text Field](https://next.mui.com/material-ui/react-text-field/)
215
+ * - [Text Field](https://mui.com/material-ui/react-text-field/)
215
216
  *
216
217
  * API:
217
218
  *
218
- * - [InputBase API](https://next.mui.com/material-ui/api/input-base/)
219
+ * - [InputBase API](https://mui.com/material-ui/api/input-base/)
219
220
  */
220
221
  export default function InputBase(props: InputBaseProps): React.JSX.Element;
@@ -16,19 +16,22 @@ var _refType = _interopRequireDefault(require("@mui/utils/refType"));
16
16
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
17
17
  var _isHostComponent = _interopRequireDefault(require("@mui/utils/isHostComponent"));
18
18
  var _TextareaAutosize = _interopRequireDefault(require("../TextareaAutosize"));
19
- var _formControlState = _interopRequireDefault(require("../FormControl/formControlState"));
20
19
  var _FormControlContext = _interopRequireDefault(require("../FormControl/FormControlContext"));
21
- var _useFormControl = _interopRequireDefault(require("../FormControl/useFormControl"));
20
+ var _useFormControl = require("../FormControl/useFormControl");
22
21
  var _zeroStyled = require("../zero-styled");
23
22
  var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
24
23
  var _DefaultPropsProvider = require("../DefaultPropsProvider");
25
24
  var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
26
25
  var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
27
26
  var _useEnhancedEffect = _interopRequireDefault(require("../utils/useEnhancedEffect"));
27
+ var _ownerDocument = _interopRequireDefault(require("../utils/ownerDocument"));
28
+ var _getActiveElement = _interopRequireDefault(require("../utils/getActiveElement"));
28
29
  var _utils = require("./utils");
29
30
  var _inputBaseClasses = _interopRequireWildcard(require("./inputBaseClasses"));
30
31
  var _jsxRuntime = require("react/jsx-runtime");
31
32
  var _InputGlobalStyles;
33
+ const MUI_AUTO_FILL = 'mui-auto-fill';
34
+ const MUI_AUTO_FILL_CANCEL = 'mui-auto-fill-cancel';
32
35
  const rootOverridesResolver = (props, styles) => {
33
36
  const {
34
37
  ownerState
@@ -193,11 +196,11 @@ const InputBaseInput = exports.InputBaseInput = (0, _zeroStyled.styled)('input',
193
196
  ownerState
194
197
  }) => !ownerState.disableInjectingGlobalStyles,
195
198
  style: {
196
- animationName: 'mui-auto-fill-cancel',
199
+ animationName: MUI_AUTO_FILL_CANCEL,
197
200
  animationDuration: '10ms',
198
201
  '&:-webkit-autofill': {
199
202
  animationDuration: '5000s',
200
- animationName: 'mui-auto-fill'
203
+ animationName: MUI_AUTO_FILL
201
204
  }
202
205
  }
203
206
  }, {
@@ -228,14 +231,16 @@ const InputBaseInput = exports.InputBaseInput = (0, _zeroStyled.styled)('input',
228
231
  };
229
232
  }));
230
233
  const InputGlobalStyles = (0, _zeroStyled.globalCss)({
231
- '@keyframes mui-auto-fill': {
234
+ // Keep keyframes non-empty for Emotion production builds. Animation properties are ignored
235
+ // inside keyframes, avoiding the visible display animation triggered by Chrome 117+.
236
+ [`@keyframes ${MUI_AUTO_FILL}`]: {
232
237
  from: {
233
- display: 'block'
238
+ animationName: MUI_AUTO_FILL
234
239
  }
235
240
  },
236
- '@keyframes mui-auto-fill-cancel': {
241
+ [`@keyframes ${MUI_AUTO_FILL_CANCEL}`]: {
237
242
  from: {
238
- display: 'block'
243
+ animationName: MUI_AUTO_FILL_CANCEL
239
244
  }
240
245
  }
241
246
  });
@@ -252,6 +257,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
252
257
  });
253
258
  const {
254
259
  'aria-describedby': ariaDescribedby,
260
+ 'aria-label': ariaLabel,
255
261
  autoComplete,
256
262
  autoFocus,
257
263
  className,
@@ -303,7 +309,10 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
303
309
  }, []);
304
310
  const handleInputRef = (0, _useForkRef.default)(inputRef, inputRefProp, inputPropsProp.ref, handleInputRefWarning);
305
311
  const [focused, setFocused] = React.useState(false);
306
- const muiFormControl = (0, _useFormControl.default)();
312
+ const [fcs, muiFormControl] = (0, _useFormControl.useFormControlState)({
313
+ props,
314
+ states: ['color', 'disabled', 'error', 'hiddenLabel', 'size', 'required', 'filled']
315
+ });
307
316
  if (process.env.NODE_ENV !== 'production') {
308
317
  // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler
309
318
  // eslint-disable-next-line react-hooks/rules-of-hooks
@@ -314,11 +323,6 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
314
323
  return undefined;
315
324
  }, [muiFormControl]);
316
325
  }
317
- const fcs = (0, _formControlState.default)({
318
- props,
319
- muiFormControl,
320
- states: ['color', 'disabled', 'error', 'hiddenLabel', 'size', 'required', 'filled']
321
- });
322
326
  fcs.focused = muiFormControl ? muiFormControl.focused : focused;
323
327
 
324
328
  // The blur won't fire when the disabled state is set on a focused input.
@@ -349,6 +353,32 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
349
353
  });
350
354
  }
351
355
  }, [value, checkDirty, isControlled]);
356
+
357
+ // Sync focused state when autoFocus is used in SSR.
358
+ // If the browser focused the element before hydration, the onFocus handler never
359
+ // fires. If it did not, React hydration does not call focus() for autoFocus.
360
+ (0, _useEnhancedEffect.default)(() => {
361
+ if (!autoFocus) {
362
+ return;
363
+ }
364
+ const input = inputRef.current;
365
+ if (!input) {
366
+ return;
367
+ }
368
+ const doc = (0, _ownerDocument.default)(input);
369
+ const activeElement = (0, _getActiveElement.default)(doc);
370
+ const noElementFocused = activeElement == null || activeElement === doc.body || activeElement === doc.documentElement;
371
+ if (input === activeElement) {
372
+ if (muiFormControl && muiFormControl.onFocus) {
373
+ muiFormControl.onFocus();
374
+ } else {
375
+ setFocused(true);
376
+ }
377
+ } else if (noElementFocused) {
378
+ input.focus();
379
+ }
380
+ // eslint-disable-next-line react-hooks/exhaustive-deps
381
+ }, [autoFocus]);
352
382
  const handleFocus = event => {
353
383
  if (onFocus) {
354
384
  onFocus(event);
@@ -437,7 +467,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
437
467
  }
438
468
  const handleAutoFill = event => {
439
469
  // Provide a fake value as Chrome might not let you access it for security reasons.
440
- checkDirty(event.animationName === 'mui-auto-fill-cancel' ? inputRef.current : {
470
+ checkDirty(event.animationName === MUI_AUTO_FILL_CANCEL ? inputRef.current : {
441
471
  value: 'x'
442
472
  });
443
473
  };
@@ -489,6 +519,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
489
519
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Input, {
490
520
  "aria-invalid": fcs.error,
491
521
  "aria-describedby": ariaDescribedby,
522
+ "aria-label": ariaLabel,
492
523
  autoComplete: autoComplete,
493
524
  autoFocus: autoFocus,
494
525
  defaultValue: defaultValue,
@@ -534,6 +565,10 @@ process.env.NODE_ENV !== "production" ? InputBase.propTypes /* remove-proptypes
534
565
  * @ignore
535
566
  */
536
567
  'aria-describedby': _propTypes.default.string,
568
+ /**
569
+ * @ignore
570
+ */
571
+ 'aria-label': _propTypes.default.string,
537
572
  /**
538
573
  * This prop helps users to fill forms faster, especially on mobile devices.
539
574
  * The name can be confusing, as it's more like an autofill.
@@ -10,18 +10,21 @@ import refType from '@mui/utils/refType';
10
10
  import composeClasses from '@mui/utils/composeClasses';
11
11
  import isHostComponent from '@mui/utils/isHostComponent';
12
12
  import TextareaAutosize from "../TextareaAutosize/index.mjs";
13
- import formControlState from "../FormControl/formControlState.mjs";
14
13
  import FormControlContext from "../FormControl/FormControlContext.mjs";
15
- import useFormControl from "../FormControl/useFormControl.mjs";
14
+ import { useFormControlState } from "../FormControl/useFormControl.mjs";
16
15
  import { styled, globalCss } from "../zero-styled/index.mjs";
17
16
  import memoTheme from "../utils/memoTheme.mjs";
18
17
  import { useDefaultProps } from "../DefaultPropsProvider/index.mjs";
19
18
  import capitalize from "../utils/capitalize.mjs";
20
19
  import useForkRef from "../utils/useForkRef.mjs";
21
20
  import useEnhancedEffect from "../utils/useEnhancedEffect.mjs";
21
+ import ownerDocument from "../utils/ownerDocument.mjs";
22
+ import getActiveElement from "../utils/getActiveElement.mjs";
22
23
  import { isFilled } from "./utils.mjs";
23
24
  import inputBaseClasses, { getInputBaseUtilityClass } from "./inputBaseClasses.mjs";
24
25
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
26
+ const MUI_AUTO_FILL = 'mui-auto-fill';
27
+ const MUI_AUTO_FILL_CANCEL = 'mui-auto-fill-cancel';
25
28
  export const rootOverridesResolver = (props, styles) => {
26
29
  const {
27
30
  ownerState
@@ -184,11 +187,11 @@ export const InputBaseInput = styled('input', {
184
187
  ownerState
185
188
  }) => !ownerState.disableInjectingGlobalStyles,
186
189
  style: {
187
- animationName: 'mui-auto-fill-cancel',
190
+ animationName: MUI_AUTO_FILL_CANCEL,
188
191
  animationDuration: '10ms',
189
192
  '&:-webkit-autofill': {
190
193
  animationDuration: '5000s',
191
- animationName: 'mui-auto-fill'
194
+ animationName: MUI_AUTO_FILL
192
195
  }
193
196
  }
194
197
  }, {
@@ -219,14 +222,16 @@ export const InputBaseInput = styled('input', {
219
222
  };
220
223
  }));
221
224
  const InputGlobalStyles = globalCss({
222
- '@keyframes mui-auto-fill': {
225
+ // Keep keyframes non-empty for Emotion production builds. Animation properties are ignored
226
+ // inside keyframes, avoiding the visible display animation triggered by Chrome 117+.
227
+ [`@keyframes ${MUI_AUTO_FILL}`]: {
223
228
  from: {
224
- display: 'block'
229
+ animationName: MUI_AUTO_FILL
225
230
  }
226
231
  },
227
- '@keyframes mui-auto-fill-cancel': {
232
+ [`@keyframes ${MUI_AUTO_FILL_CANCEL}`]: {
228
233
  from: {
229
- display: 'block'
234
+ animationName: MUI_AUTO_FILL_CANCEL
230
235
  }
231
236
  }
232
237
  });
@@ -243,6 +248,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
243
248
  });
244
249
  const {
245
250
  'aria-describedby': ariaDescribedby,
251
+ 'aria-label': ariaLabel,
246
252
  autoComplete,
247
253
  autoFocus,
248
254
  className,
@@ -294,7 +300,10 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
294
300
  }, []);
295
301
  const handleInputRef = useForkRef(inputRef, inputRefProp, inputPropsProp.ref, handleInputRefWarning);
296
302
  const [focused, setFocused] = React.useState(false);
297
- const muiFormControl = useFormControl();
303
+ const [fcs, muiFormControl] = useFormControlState({
304
+ props,
305
+ states: ['color', 'disabled', 'error', 'hiddenLabel', 'size', 'required', 'filled']
306
+ });
298
307
  if (process.env.NODE_ENV !== 'production') {
299
308
  // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler
300
309
  // eslint-disable-next-line react-hooks/rules-of-hooks
@@ -305,11 +314,6 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
305
314
  return undefined;
306
315
  }, [muiFormControl]);
307
316
  }
308
- const fcs = formControlState({
309
- props,
310
- muiFormControl,
311
- states: ['color', 'disabled', 'error', 'hiddenLabel', 'size', 'required', 'filled']
312
- });
313
317
  fcs.focused = muiFormControl ? muiFormControl.focused : focused;
314
318
 
315
319
  // The blur won't fire when the disabled state is set on a focused input.
@@ -340,6 +344,32 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
340
344
  });
341
345
  }
342
346
  }, [value, checkDirty, isControlled]);
347
+
348
+ // Sync focused state when autoFocus is used in SSR.
349
+ // If the browser focused the element before hydration, the onFocus handler never
350
+ // fires. If it did not, React hydration does not call focus() for autoFocus.
351
+ useEnhancedEffect(() => {
352
+ if (!autoFocus) {
353
+ return;
354
+ }
355
+ const input = inputRef.current;
356
+ if (!input) {
357
+ return;
358
+ }
359
+ const doc = ownerDocument(input);
360
+ const activeElement = getActiveElement(doc);
361
+ const noElementFocused = activeElement == null || activeElement === doc.body || activeElement === doc.documentElement;
362
+ if (input === activeElement) {
363
+ if (muiFormControl && muiFormControl.onFocus) {
364
+ muiFormControl.onFocus();
365
+ } else {
366
+ setFocused(true);
367
+ }
368
+ } else if (noElementFocused) {
369
+ input.focus();
370
+ }
371
+ // eslint-disable-next-line react-hooks/exhaustive-deps
372
+ }, [autoFocus]);
343
373
  const handleFocus = event => {
344
374
  if (onFocus) {
345
375
  onFocus(event);
@@ -428,7 +458,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
428
458
  }
429
459
  const handleAutoFill = event => {
430
460
  // Provide a fake value as Chrome might not let you access it for security reasons.
431
- checkDirty(event.animationName === 'mui-auto-fill-cancel' ? inputRef.current : {
461
+ checkDirty(event.animationName === MUI_AUTO_FILL_CANCEL ? inputRef.current : {
432
462
  value: 'x'
433
463
  });
434
464
  };
@@ -480,6 +510,7 @@ const InputBase = /*#__PURE__*/React.forwardRef(function InputBase(inProps, ref)
480
510
  children: /*#__PURE__*/_jsx(Input, {
481
511
  "aria-invalid": fcs.error,
482
512
  "aria-describedby": ariaDescribedby,
513
+ "aria-label": ariaLabel,
483
514
  autoComplete: autoComplete,
484
515
  autoFocus: autoFocus,
485
516
  defaultValue: defaultValue,
@@ -525,6 +556,10 @@ process.env.NODE_ENV !== "production" ? InputBase.propTypes /* remove-proptypes
525
556
  * @ignore
526
557
  */
527
558
  'aria-describedby': PropTypes.string,
559
+ /**
560
+ * @ignore
561
+ */
562
+ 'aria-label': PropTypes.string,
528
563
  /**
529
564
  * This prop helps users to fill forms faster, especially on mobile devices.
530
565
  * The name can be confusing, as it's more like an autofill.
@@ -65,13 +65,13 @@ export type InputLabelTypeMap<AdditionalProps = {}, RootComponent extends React.
65
65
  *
66
66
  * Demos:
67
67
  *
68
- * - [Number Field](https://next.mui.com/material-ui/react-number-field/)
69
- * - [Text Field](https://next.mui.com/material-ui/react-text-field/)
68
+ * - [Number Field](https://mui.com/material-ui/react-number-field/)
69
+ * - [Text Field](https://mui.com/material-ui/react-text-field/)
70
70
  *
71
71
  * API:
72
72
  *
73
- * - [InputLabel API](https://next.mui.com/material-ui/api/input-label/)
74
- * - inherits [FormLabel API](https://next.mui.com/material-ui/api/form-label/)
73
+ * - [InputLabel API](https://mui.com/material-ui/api/input-label/)
74
+ * - inherits [FormLabel API](https://mui.com/material-ui/api/form-label/)
75
75
  */
76
76
  declare const InputLabel: OverridableComponent<InputLabelTypeMap>;
77
77
  export type InputLabelProps<RootComponent extends React.ElementType = InputLabelTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<InputLabelTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
@@ -65,13 +65,13 @@ export type InputLabelTypeMap<AdditionalProps = {}, RootComponent extends React.
65
65
  *
66
66
  * Demos:
67
67
  *
68
- * - [Number Field](https://next.mui.com/material-ui/react-number-field/)
69
- * - [Text Field](https://next.mui.com/material-ui/react-text-field/)
68
+ * - [Number Field](https://mui.com/material-ui/react-number-field/)
69
+ * - [Text Field](https://mui.com/material-ui/react-text-field/)
70
70
  *
71
71
  * API:
72
72
  *
73
- * - [InputLabel API](https://next.mui.com/material-ui/api/input-label/)
74
- * - inherits [FormLabel API](https://next.mui.com/material-ui/api/form-label/)
73
+ * - [InputLabel API](https://mui.com/material-ui/api/input-label/)
74
+ * - inherits [FormLabel API](https://mui.com/material-ui/api/form-label/)
75
75
  */
76
76
  declare const InputLabel: OverridableComponent<InputLabelTypeMap>;
77
77
  export type InputLabelProps<RootComponent extends React.ElementType = InputLabelTypeMap['defaultComponent'], AdditionalProps = {}> = OverrideProps<InputLabelTypeMap<AdditionalProps, RootComponent>, RootComponent> & {
@@ -11,8 +11,7 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
13
13
  var _clsx = _interopRequireDefault(require("clsx"));
14
- var _formControlState = _interopRequireDefault(require("../FormControl/formControlState"));
15
- var _useFormControl = _interopRequireDefault(require("../FormControl/useFormControl"));
14
+ var _useFormControl = require("../FormControl/useFormControl");
16
15
  var _FormLabel = _interopRequireWildcard(require("../FormLabel"));
17
16
  var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
18
17
  var _rootShouldForwardProp = _interopRequireDefault(require("../styles/rootShouldForwardProp"));
@@ -190,16 +189,14 @@ const InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, re
190
189
  className,
191
190
  ...other
192
191
  } = props;
193
- const muiFormControl = (0, _useFormControl.default)();
192
+ const [fcs, muiFormControl] = (0, _useFormControl.useFormControlState)({
193
+ props,
194
+ states: ['size', 'variant', 'required', 'focused']
195
+ });
194
196
  let shrink = shrinkProp;
195
197
  if (typeof shrink === 'undefined' && muiFormControl) {
196
198
  shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;
197
199
  }
198
- const fcs = (0, _formControlState.default)({
199
- props,
200
- muiFormControl,
201
- states: ['size', 'variant', 'required', 'focused']
202
- });
203
200
  const ownerState = {
204
201
  ...props,
205
202
  disableAnimation,
@@ -4,8 +4,7 @@ import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import composeClasses from '@mui/utils/composeClasses';
6
6
  import clsx from 'clsx';
7
- import formControlState from "../FormControl/formControlState.mjs";
8
- import useFormControl from "../FormControl/useFormControl.mjs";
7
+ import { useFormControlState } from "../FormControl/useFormControl.mjs";
9
8
  import FormLabel, { formLabelClasses } from "../FormLabel/index.mjs";
10
9
  import capitalize from "../utils/capitalize.mjs";
11
10
  import rootShouldForwardProp from "../styles/rootShouldForwardProp.mjs";
@@ -183,16 +182,14 @@ const InputLabel = /*#__PURE__*/React.forwardRef(function InputLabel(inProps, re
183
182
  className,
184
183
  ...other
185
184
  } = props;
186
- const muiFormControl = useFormControl();
185
+ const [fcs, muiFormControl] = useFormControlState({
186
+ props,
187
+ states: ['size', 'variant', 'required', 'focused']
188
+ });
187
189
  let shrink = shrinkProp;
188
190
  if (typeof shrink === 'undefined' && muiFormControl) {
189
191
  shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;
190
192
  }
191
- const fcs = formControlState({
192
- props,
193
- muiFormControl,
194
- states: ['size', 'variant', 'required', 'focused']
195
- });
196
193
  const ownerState = {
197
194
  ...props,
198
195
  disableAnimation,
@@ -18,18 +18,28 @@ export interface LinearProgressProps extends StandardProps<React.HTMLAttributes<
18
18
  * @default 'primary'
19
19
  */
20
20
  color?: OverridableStringUnion<'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | 'inherit', LinearProgressPropsColorOverrides> | undefined;
21
+ /**
22
+ * The maximum value for the progress indicator for the determinate and buffer variants.
23
+ * @default 100
24
+ */
25
+ max?: number | undefined;
26
+ /**
27
+ * The minimum value for the progress indicator for the determinate and buffer variants.
28
+ * @default 0
29
+ */
30
+ min?: number | undefined;
21
31
  /**
22
32
  * The system prop that allows defining system overrides as well as additional CSS styles.
23
33
  */
24
34
  sx?: SxProps<Theme> | undefined;
25
35
  /**
26
36
  * The value of the progress indicator for the determinate and buffer variants.
27
- * Value between 0 and 100.
37
+ * Value between `min` and `max`.
28
38
  */
29
39
  value?: number | undefined;
30
40
  /**
31
41
  * The value for the buffer variant.
32
- * Value between 0 and 100.
42
+ * Value between `min` and `max`.
33
43
  */
34
44
  valueBuffer?: number | undefined;
35
45
  /**
@@ -49,10 +59,10 @@ export interface LinearProgressProps extends StandardProps<React.HTMLAttributes<
49
59
  *
50
60
  * Demos:
51
61
  *
52
- * - [Progress](https://next.mui.com/material-ui/react-progress/)
62
+ * - [Progress](https://mui.com/material-ui/react-progress/)
53
63
  *
54
64
  * API:
55
65
  *
56
- * - [LinearProgress API](https://next.mui.com/material-ui/api/linear-progress/)
66
+ * - [LinearProgress API](https://mui.com/material-ui/api/linear-progress/)
57
67
  */
58
68
  export default function LinearProgress(props: LinearProgressProps): React.JSX.Element;
@@ -18,18 +18,28 @@ export interface LinearProgressProps extends StandardProps<React.HTMLAttributes<
18
18
  * @default 'primary'
19
19
  */
20
20
  color?: OverridableStringUnion<'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | 'inherit', LinearProgressPropsColorOverrides> | undefined;
21
+ /**
22
+ * The maximum value for the progress indicator for the determinate and buffer variants.
23
+ * @default 100
24
+ */
25
+ max?: number | undefined;
26
+ /**
27
+ * The minimum value for the progress indicator for the determinate and buffer variants.
28
+ * @default 0
29
+ */
30
+ min?: number | undefined;
21
31
  /**
22
32
  * The system prop that allows defining system overrides as well as additional CSS styles.
23
33
  */
24
34
  sx?: SxProps<Theme> | undefined;
25
35
  /**
26
36
  * The value of the progress indicator for the determinate and buffer variants.
27
- * Value between 0 and 100.
37
+ * Value between `min` and `max`.
28
38
  */
29
39
  value?: number | undefined;
30
40
  /**
31
41
  * The value for the buffer variant.
32
- * Value between 0 and 100.
42
+ * Value between `min` and `max`.
33
43
  */
34
44
  valueBuffer?: number | undefined;
35
45
  /**
@@ -49,10 +59,10 @@ export interface LinearProgressProps extends StandardProps<React.HTMLAttributes<
49
59
  *
50
60
  * Demos:
51
61
  *
52
- * - [Progress](https://next.mui.com/material-ui/react-progress/)
62
+ * - [Progress](https://mui.com/material-ui/react-progress/)
53
63
  *
54
64
  * API:
55
65
  *
56
- * - [LinearProgress API](https://next.mui.com/material-ui/api/linear-progress/)
66
+ * - [LinearProgress API](https://mui.com/material-ui/api/linear-progress/)
57
67
  */
58
68
  export default function LinearProgress(props: LinearProgressProps): React.JSX.Element;
@@ -342,6 +342,8 @@ const LinearProgress = /*#__PURE__*/React.forwardRef(function LinearProgress(inP
342
342
  const {
343
343
  className,
344
344
  color = 'primary',
345
+ max: maxProp,
346
+ min: minProp,
345
347
  value,
346
348
  valueBuffer,
347
349
  variant = 'indeterminate',
@@ -352,6 +354,13 @@ const LinearProgress = /*#__PURE__*/React.forwardRef(function LinearProgress(inP
352
354
  color,
353
355
  variant
354
356
  };
357
+ if (process.env.NODE_ENV !== 'production') {
358
+ if (['indeterminate', 'query'].includes(variant) && (minProp !== undefined || maxProp !== undefined)) {
359
+ console.warn(`MUI: You have provided the \`min\` or \`max\` props with an 'indeterminate' or 'query' variant. These props will have no effect.`);
360
+ }
361
+ }
362
+ const min = minProp ?? 0;
363
+ const max = maxProp ?? 100;
355
364
  const classes = useUtilityClasses(ownerState);
356
365
  const isRtl = (0, _RtlProvider.useRtl)();
357
366
  const rootProps = {};
@@ -361,25 +370,38 @@ const LinearProgress = /*#__PURE__*/React.forwardRef(function LinearProgress(inP
361
370
  };
362
371
  if (variant === 'determinate' || variant === 'buffer') {
363
372
  if (value !== undefined) {
364
- rootProps['aria-valuenow'] = Math.round(value);
365
- rootProps['aria-valuemin'] = 0;
366
- rootProps['aria-valuemax'] = 100;
367
- let transform = value - 100;
373
+ if (process.env.NODE_ENV !== 'production') {
374
+ if (value < min || value > max || min >= max) {
375
+ console.error(`MUI: The min, max, and value props in LinearProgress should be numbers where min < max and min <= value <= max. Received min=${min}, max=${max}, value=${value}.`);
376
+ }
377
+ }
378
+ const range = max - min;
379
+ let transform = (value - min) / range * 100 - 100;
368
380
  if (isRtl) {
369
381
  transform = -transform;
370
382
  }
371
- inlineStyles.bar1.transform = `translateX(${transform}%)`;
383
+ inlineStyles.bar1.transform = range > 0 ? `translateX(${transform}%)` : 'translateX(-100%)'; // empty-state fallback when range is invalid
384
+
385
+ rootProps['aria-valuenow'] = value;
386
+ rootProps['aria-valuemin'] = min;
387
+ rootProps['aria-valuemax'] = max;
372
388
  } else if (process.env.NODE_ENV !== 'production') {
373
- console.error('MUI: You need to provide a value prop ' + 'when using the determinate or buffer variant of LinearProgress .');
389
+ console.error('MUI: You need to provide a value prop ' + 'when using the determinate or buffer variant of LinearProgress.');
374
390
  }
375
391
  }
376
392
  if (variant === 'buffer') {
377
393
  if (valueBuffer !== undefined) {
378
- let transform = (valueBuffer || 0) - 100;
394
+ if (process.env.NODE_ENV !== 'production') {
395
+ if (valueBuffer < min || valueBuffer > max || valueBuffer < value || min >= max) {
396
+ console.error(`MUI: The min, max, value, and valueBuffer props in LinearProgress should be numbers where min < max and min <= value <= valueBuffer <= max. Received min=${min}, max=${max}, value=${value}, valueBuffer=${valueBuffer}.`);
397
+ }
398
+ }
399
+ const range = max - min;
400
+ let transform = (valueBuffer - min) / range * 100 - 100;
379
401
  if (isRtl) {
380
402
  transform = -transform;
381
403
  }
382
- inlineStyles.bar2.transform = `translateX(${transform}%)`;
404
+ inlineStyles.bar2.transform = range > 0 ? `translateX(${transform}%)` : 'translateX(-100%)'; // empty-state fallback when range is invalid
383
405
  } else if (process.env.NODE_ENV !== 'production') {
384
406
  console.error('MUI: You need to provide a valueBuffer prop ' + 'when using the buffer variant of LinearProgress.');
385
407
  }
@@ -425,18 +447,28 @@ process.env.NODE_ENV !== "production" ? LinearProgress.propTypes /* remove-propt
425
447
  * @default 'primary'
426
448
  */
427
449
  color: _propTypes.default /* @typescript-to-proptypes-ignore */.oneOfType([_propTypes.default.oneOf(['inherit', 'primary', 'secondary']), _propTypes.default.string]),
450
+ /**
451
+ * The maximum value for the progress indicator for the determinate and buffer variants.
452
+ * @default 100
453
+ */
454
+ max: _propTypes.default.number,
455
+ /**
456
+ * The minimum value for the progress indicator for the determinate and buffer variants.
457
+ * @default 0
458
+ */
459
+ min: _propTypes.default.number,
428
460
  /**
429
461
  * The system prop that allows defining system overrides as well as additional CSS styles.
430
462
  */
431
463
  sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
432
464
  /**
433
465
  * The value of the progress indicator for the determinate and buffer variants.
434
- * Value between 0 and 100.
466
+ * Value between `min` and `max`.
435
467
  */
436
468
  value: _propTypes.default.number,
437
469
  /**
438
470
  * The value for the buffer variant.
439
- * Value between 0 and 100.
471
+ * Value between `min` and `max`.
440
472
  */
441
473
  valueBuffer: _propTypes.default.number,
442
474
  /**