@mui/material 9.0.0-alpha.3 → 9.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/Accordion/Accordion.d.mts +0 -14
  2. package/Accordion/Accordion.d.ts +0 -14
  3. package/Accordion/Accordion.js +3 -25
  4. package/Accordion/Accordion.mjs +3 -25
  5. package/AccordionSummary/AccordionSummary.js +1 -1
  6. package/AccordionSummary/AccordionSummary.mjs +1 -1
  7. package/AccordionSummary/accordionSummaryClasses.d.mts +0 -5
  8. package/AccordionSummary/accordionSummaryClasses.d.ts +0 -5
  9. package/AccordionSummary/accordionSummaryClasses.js +1 -1
  10. package/AccordionSummary/accordionSummaryClasses.mjs +1 -1
  11. package/Alert/Alert.d.mts +0 -23
  12. package/Alert/Alert.d.ts +0 -23
  13. package/Alert/Alert.js +4 -36
  14. package/Alert/Alert.mjs +4 -36
  15. package/Alert/alertClasses.d.mts +0 -72
  16. package/Alert/alertClasses.d.ts +0 -72
  17. package/Alert/alertClasses.js +1 -1
  18. package/Alert/alertClasses.mjs +1 -1
  19. package/Autocomplete/Autocomplete.d.mts +10 -60
  20. package/Autocomplete/Autocomplete.d.ts +10 -60
  21. package/Autocomplete/Autocomplete.js +33 -99
  22. package/Autocomplete/Autocomplete.mjs +33 -99
  23. package/Avatar/Avatar.d.mts +0 -8
  24. package/Avatar/Avatar.d.ts +0 -8
  25. package/Avatar/Avatar.js +13 -35
  26. package/Avatar/Avatar.mjs +13 -35
  27. package/AvatarGroup/AvatarGroup.d.mts +0 -15
  28. package/AvatarGroup/AvatarGroup.d.ts +0 -15
  29. package/AvatarGroup/AvatarGroup.js +1 -18
  30. package/AvatarGroup/AvatarGroup.mjs +1 -18
  31. package/Backdrop/Backdrop.d.mts +1 -31
  32. package/Backdrop/Backdrop.d.ts +1 -31
  33. package/Backdrop/Backdrop.js +2 -42
  34. package/Backdrop/Backdrop.mjs +2 -42
  35. package/Badge/Badge.d.mts +0 -20
  36. package/Badge/Badge.d.ts +0 -20
  37. package/Badge/Badge.js +2 -35
  38. package/Badge/Badge.mjs +2 -35
  39. package/Button/Button.js +6 -6
  40. package/Button/Button.mjs +6 -6
  41. package/Button/buttonClasses.d.mts +0 -132
  42. package/Button/buttonClasses.d.ts +0 -132
  43. package/Button/buttonClasses.js +1 -1
  44. package/Button/buttonClasses.mjs +1 -1
  45. package/ButtonBase/ButtonBase.js +16 -2
  46. package/ButtonBase/ButtonBase.mjs +16 -2
  47. package/ButtonGroup/ButtonGroup.js +1 -9
  48. package/ButtonGroup/ButtonGroup.mjs +1 -9
  49. package/ButtonGroup/buttonGroupClasses.d.mts +0 -68
  50. package/ButtonGroup/buttonGroupClasses.d.ts +0 -68
  51. package/ButtonGroup/buttonGroupClasses.js +1 -1
  52. package/ButtonGroup/buttonGroupClasses.mjs +1 -1
  53. package/CHANGELOG.md +224 -3
  54. package/CardHeader/CardHeader.d.mts +13 -21
  55. package/CardHeader/CardHeader.d.ts +13 -21
  56. package/CardHeader/CardHeader.js +3 -21
  57. package/CardHeader/CardHeader.mjs +3 -21
  58. package/Checkbox/Checkbox.js +1 -7
  59. package/Checkbox/Checkbox.mjs +1 -7
  60. package/Chip/Chip.js +48 -54
  61. package/Chip/Chip.mjs +48 -54
  62. package/Chip/chipClasses.d.mts +0 -104
  63. package/Chip/chipClasses.d.ts +0 -104
  64. package/Chip/chipClasses.js +1 -1
  65. package/Chip/chipClasses.mjs +1 -1
  66. package/CircularProgress/CircularProgress.js +2 -2
  67. package/CircularProgress/CircularProgress.mjs +2 -2
  68. package/CircularProgress/circularProgressClasses.d.mts +0 -8
  69. package/CircularProgress/circularProgressClasses.d.ts +0 -8
  70. package/CircularProgress/circularProgressClasses.js +1 -1
  71. package/CircularProgress/circularProgressClasses.mjs +1 -1
  72. package/Dialog/Dialog.d.mts +0 -21
  73. package/Dialog/Dialog.d.ts +0 -21
  74. package/Dialog/Dialog.js +36 -73
  75. package/Dialog/Dialog.mjs +36 -73
  76. package/Dialog/dialogClasses.d.mts +0 -8
  77. package/Dialog/dialogClasses.d.ts +0 -8
  78. package/Dialog/dialogClasses.js +1 -1
  79. package/Dialog/dialogClasses.mjs +1 -1
  80. package/Divider/Divider.d.mts +0 -6
  81. package/Divider/Divider.d.ts +0 -6
  82. package/Divider/Divider.js +2 -18
  83. package/Divider/Divider.mjs +2 -18
  84. package/Divider/dividerClasses.d.mts +0 -8
  85. package/Divider/dividerClasses.d.ts +0 -8
  86. package/Divider/dividerClasses.js +1 -1
  87. package/Divider/dividerClasses.mjs +1 -1
  88. package/Drawer/Drawer.d.mts +0 -12
  89. package/Drawer/Drawer.d.ts +0 -12
  90. package/Drawer/Drawer.js +6 -40
  91. package/Drawer/Drawer.mjs +6 -40
  92. package/Drawer/drawerClasses.d.mts +0 -32
  93. package/Drawer/drawerClasses.d.ts +0 -32
  94. package/Drawer/drawerClasses.js +1 -1
  95. package/Drawer/drawerClasses.mjs +1 -1
  96. package/FilledInput/FilledInput.js +3 -32
  97. package/FilledInput/FilledInput.mjs +3 -32
  98. package/FormControlLabel/FormControlLabel.d.mts +1 -14
  99. package/FormControlLabel/FormControlLabel.d.ts +1 -14
  100. package/FormControlLabel/FormControlLabel.js +1 -13
  101. package/FormControlLabel/FormControlLabel.mjs +1 -13
  102. package/ImageListItemBar/ImageListItemBar.js +4 -17
  103. package/ImageListItemBar/ImageListItemBar.mjs +4 -17
  104. package/ImageListItemBar/imageListItemBarClasses.d.mts +0 -16
  105. package/ImageListItemBar/imageListItemBarClasses.d.ts +0 -16
  106. package/ImageListItemBar/imageListItemBarClasses.js +1 -1
  107. package/ImageListItemBar/imageListItemBarClasses.mjs +1 -1
  108. package/Input/Input.js +5 -33
  109. package/Input/Input.mjs +5 -33
  110. package/Input/inputClasses.d.mts +0 -16
  111. package/Input/inputClasses.d.ts +0 -16
  112. package/InputBase/InputBase.d.mts +0 -27
  113. package/InputBase/InputBase.d.ts +0 -27
  114. package/InputBase/InputBase.js +6 -35
  115. package/InputBase/InputBase.mjs +6 -35
  116. package/InputBase/inputBaseClasses.d.mts +0 -20
  117. package/InputBase/inputBaseClasses.d.ts +0 -20
  118. package/InputBase/inputBaseClasses.js +1 -1
  119. package/InputBase/inputBaseClasses.mjs +1 -1
  120. package/InputLabel/InputLabel.js +1 -1
  121. package/InputLabel/InputLabel.mjs +1 -1
  122. package/LinearProgress/LinearProgress.js +6 -18
  123. package/LinearProgress/LinearProgress.mjs +6 -18
  124. package/LinearProgress/linearProgressClasses.d.mts +0 -36
  125. package/LinearProgress/linearProgressClasses.d.ts +0 -36
  126. package/LinearProgress/linearProgressClasses.js +1 -1
  127. package/LinearProgress/linearProgressClasses.mjs +1 -1
  128. package/Link/Link.d.mts +1 -1
  129. package/Link/Link.d.ts +1 -1
  130. package/ListItem/ListItem.d.mts +2 -36
  131. package/ListItem/ListItem.d.ts +2 -36
  132. package/ListItem/ListItem.js +27 -152
  133. package/ListItem/ListItem.mjs +27 -152
  134. package/ListItem/listItemClasses.d.mts +2 -4
  135. package/ListItem/listItemClasses.d.ts +2 -4
  136. package/ListItem/listItemClasses.js +1 -1
  137. package/ListItem/listItemClasses.mjs +1 -1
  138. package/ListItemButton/ListItemButton.d.mts +1 -2
  139. package/ListItemButton/ListItemButton.d.ts +1 -2
  140. package/ListItemButton/ListItemButton.js +1 -2
  141. package/ListItemButton/ListItemButton.mjs +1 -2
  142. package/ListItemSecondaryAction/ListItemSecondaryAction.d.mts +10 -6
  143. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +10 -6
  144. package/ListItemSecondaryAction/ListItemSecondaryAction.js +7 -2
  145. package/ListItemSecondaryAction/ListItemSecondaryAction.mjs +7 -2
  146. package/ListItemText/ListItemText.d.mts +12 -20
  147. package/ListItemText/ListItemText.d.ts +12 -20
  148. package/ListItemText/ListItemText.js +2 -20
  149. package/ListItemText/ListItemText.mjs +2 -20
  150. package/Menu/Menu.d.mts +0 -13
  151. package/Menu/Menu.d.ts +0 -13
  152. package/Menu/Menu.js +5 -44
  153. package/Menu/Menu.mjs +5 -44
  154. package/MenuItem/MenuItem.js +21 -1
  155. package/MenuItem/MenuItem.mjs +23 -1
  156. package/MenuList/MenuList.js +2 -4
  157. package/MenuList/MenuList.mjs +2 -4
  158. package/MobileStepper/MobileStepper.d.mts +0 -5
  159. package/MobileStepper/MobileStepper.d.ts +0 -5
  160. package/MobileStepper/MobileStepper.js +1 -10
  161. package/MobileStepper/MobileStepper.mjs +1 -10
  162. package/Modal/Modal.d.mts +1 -41
  163. package/Modal/Modal.d.ts +1 -41
  164. package/Modal/Modal.js +5 -58
  165. package/Modal/Modal.mjs +5 -58
  166. package/OutlinedInput/OutlinedInput.js +2 -14
  167. package/OutlinedInput/OutlinedInput.mjs +2 -14
  168. package/OutlinedInput/outlinedInputClasses.d.mts +0 -16
  169. package/OutlinedInput/outlinedInputClasses.d.ts +0 -16
  170. package/PaginationItem/PaginationItem.d.mts +0 -15
  171. package/PaginationItem/PaginationItem.d.ts +0 -15
  172. package/PaginationItem/PaginationItem.js +3 -24
  173. package/PaginationItem/PaginationItem.mjs +3 -24
  174. package/PaginationItem/paginationItemClasses.d.mts +0 -16
  175. package/PaginationItem/paginationItemClasses.d.ts +0 -16
  176. package/PaginationItem/paginationItemClasses.js +1 -1
  177. package/PaginationItem/paginationItemClasses.mjs +1 -1
  178. package/Popover/Popover.d.mts +4 -48
  179. package/Popover/Popover.d.ts +4 -48
  180. package/Popover/Popover.js +4 -64
  181. package/Popover/Popover.mjs +4 -64
  182. package/Popper/Popper.d.mts +0 -17
  183. package/Popper/Popper.d.ts +0 -17
  184. package/Popper/Popper.js +2 -26
  185. package/Popper/Popper.mjs +2 -26
  186. package/Popper/index.d.mts +1 -0
  187. package/Popper/index.d.ts +1 -0
  188. package/Popper/index.js +11 -2
  189. package/Popper/index.mjs +1 -0
  190. package/Radio/Radio.js +1 -13
  191. package/Radio/Radio.mjs +1 -13
  192. package/Rating/Rating.d.mts +0 -9
  193. package/Rating/Rating.d.ts +0 -9
  194. package/Rating/Rating.js +1 -17
  195. package/Rating/Rating.mjs +1 -17
  196. package/Select/SelectInput.js +52 -58
  197. package/Select/SelectInput.mjs +49 -55
  198. package/Select/index.d.mts +1 -0
  199. package/Select/index.d.ts +1 -0
  200. package/Select/index.js +12 -0
  201. package/Select/index.mjs +1 -0
  202. package/Select/selectClasses.d.mts +0 -12
  203. package/Select/selectClasses.d.ts +0 -12
  204. package/Select/selectClasses.js +1 -1
  205. package/Select/selectClasses.mjs +1 -1
  206. package/Select/utils/SelectFocusSourceContext.d.mts +4 -0
  207. package/Select/utils/SelectFocusSourceContext.d.ts +4 -0
  208. package/Select/utils/SelectFocusSourceContext.js +19 -0
  209. package/Select/utils/SelectFocusSourceContext.mjs +13 -0
  210. package/Select/utils/areEqualValues.d.mts +1 -0
  211. package/Select/utils/areEqualValues.d.ts +1 -0
  212. package/Select/utils/areEqualValues.js +14 -0
  213. package/Select/utils/areEqualValues.mjs +8 -0
  214. package/Select/utils/getOpenInteractionType.d.mts +1 -0
  215. package/Select/utils/getOpenInteractionType.d.ts +1 -0
  216. package/Select/utils/getOpenInteractionType.js +18 -0
  217. package/Select/utils/getOpenInteractionType.mjs +12 -0
  218. package/Select/utils/index.d.mts +4 -0
  219. package/Select/utils/index.d.ts +4 -0
  220. package/Select/utils/index.js +40 -0
  221. package/Select/utils/index.mjs +4 -0
  222. package/Select/utils/isEmpty.d.mts +1 -0
  223. package/Select/utils/isEmpty.d.ts +1 -0
  224. package/Select/utils/isEmpty.js +9 -0
  225. package/Select/utils/isEmpty.mjs +3 -0
  226. package/Slider/Slider.d.mts +105 -78
  227. package/Slider/Slider.d.ts +105 -78
  228. package/Slider/Slider.js +44 -127
  229. package/Slider/Slider.mjs +44 -127
  230. package/Slider/sliderClasses.d.mts +0 -28
  231. package/Slider/sliderClasses.d.ts +0 -28
  232. package/Slider/sliderClasses.js +1 -1
  233. package/Slider/sliderClasses.mjs +1 -1
  234. package/Slider/useSlider.js +50 -14
  235. package/Slider/useSlider.mjs +50 -14
  236. package/Snackbar/Snackbar.d.mts +1 -27
  237. package/Snackbar/Snackbar.d.ts +1 -27
  238. package/Snackbar/Snackbar.js +5 -58
  239. package/Snackbar/Snackbar.mjs +5 -58
  240. package/SpeedDial/SpeedDial.d.mts +0 -13
  241. package/SpeedDial/SpeedDial.d.ts +0 -13
  242. package/SpeedDial/SpeedDial.js +15 -40
  243. package/SpeedDial/SpeedDial.mjs +15 -40
  244. package/SpeedDialAction/SpeedDialAction.d.mts +0 -28
  245. package/SpeedDialAction/SpeedDialAction.d.ts +0 -28
  246. package/SpeedDialAction/SpeedDialAction.js +5 -46
  247. package/SpeedDialAction/SpeedDialAction.mjs +5 -46
  248. package/Stack/Stack.d.mts +2 -2
  249. package/Stack/Stack.d.ts +2 -2
  250. package/StepConnector/StepConnector.js +2 -8
  251. package/StepConnector/StepConnector.mjs +2 -8
  252. package/StepConnector/stepConnectorClasses.d.mts +0 -8
  253. package/StepConnector/stepConnectorClasses.d.ts +0 -8
  254. package/StepConnector/stepConnectorClasses.js +1 -1
  255. package/StepConnector/stepConnectorClasses.mjs +1 -1
  256. package/StepContent/StepContent.d.mts +1 -16
  257. package/StepContent/StepContent.d.ts +1 -16
  258. package/StepContent/StepContent.js +3 -22
  259. package/StepContent/StepContent.mjs +3 -22
  260. package/StepLabel/StepLabel.d.mts +0 -22
  261. package/StepLabel/StepLabel.d.ts +0 -22
  262. package/StepLabel/StepLabel.js +2 -31
  263. package/StepLabel/StepLabel.mjs +2 -31
  264. package/SvgIcon/createSvgIcon.d.mts +2 -0
  265. package/SvgIcon/createSvgIcon.d.ts +2 -0
  266. package/SvgIcon/createSvgIcon.js +31 -0
  267. package/SvgIcon/createSvgIcon.mjs +26 -0
  268. package/SvgIcon/index.d.mts +1 -0
  269. package/SvgIcon/index.d.ts +1 -0
  270. package/SvgIcon/index.js +8 -0
  271. package/SvgIcon/index.mjs +1 -0
  272. package/SwipeableDrawer/SwipeableDrawer.d.mts +0 -5
  273. package/SwipeableDrawer/SwipeableDrawer.d.ts +0 -5
  274. package/SwipeableDrawer/SwipeableDrawer.js +6 -37
  275. package/SwipeableDrawer/SwipeableDrawer.mjs +6 -37
  276. package/Switch/Switch.js +0 -11
  277. package/Switch/Switch.mjs +0 -11
  278. package/Tab/Tab.js +1 -3
  279. package/Tab/Tab.mjs +1 -3
  280. package/Tab/tabClasses.d.mts +0 -4
  281. package/Tab/tabClasses.d.ts +0 -4
  282. package/Tab/tabClasses.js +1 -1
  283. package/Tab/tabClasses.mjs +1 -1
  284. package/TablePagination/TablePagination.d.mts +1 -25
  285. package/TablePagination/TablePagination.d.ts +1 -25
  286. package/TablePagination/TablePagination.js +5 -31
  287. package/TablePagination/TablePagination.mjs +5 -31
  288. package/TablePaginationActions/TablePaginationActions.d.mts +0 -10
  289. package/TablePaginationActions/TablePaginationActions.d.ts +0 -10
  290. package/TablePaginationActions/TablePaginationActions.js +2 -14
  291. package/TablePaginationActions/TablePaginationActions.mjs +2 -14
  292. package/TableSortLabel/TableSortLabel.js +2 -7
  293. package/TableSortLabel/TableSortLabel.mjs +2 -7
  294. package/TableSortLabel/tableSortLabelClasses.d.mts +0 -8
  295. package/TableSortLabel/tableSortLabelClasses.d.ts +0 -8
  296. package/TableSortLabel/tableSortLabelClasses.js +1 -1
  297. package/TableSortLabel/tableSortLabelClasses.mjs +1 -1
  298. package/Tabs/Tabs.d.mts +2 -33
  299. package/Tabs/Tabs.d.ts +2 -33
  300. package/Tabs/Tabs.js +11 -41
  301. package/Tabs/Tabs.mjs +11 -41
  302. package/Tabs/tabsClasses.d.mts +0 -6
  303. package/Tabs/tabsClasses.d.ts +0 -6
  304. package/Tabs/tabsClasses.js +1 -1
  305. package/Tabs/tabsClasses.mjs +1 -1
  306. package/TextField/TextField.d.mts +6 -49
  307. package/TextField/TextField.d.ts +6 -49
  308. package/TextField/TextField.js +18 -53
  309. package/TextField/TextField.mjs +18 -53
  310. package/ToggleButtonGroup/ToggleButtonGroup.js +1 -4
  311. package/ToggleButtonGroup/ToggleButtonGroup.mjs +1 -4
  312. package/ToggleButtonGroup/toggleButtonGroupClasses.d.mts +0 -8
  313. package/ToggleButtonGroup/toggleButtonGroupClasses.d.ts +0 -8
  314. package/ToggleButtonGroup/toggleButtonGroupClasses.js +1 -1
  315. package/ToggleButtonGroup/toggleButtonGroupClasses.mjs +1 -1
  316. package/Tooltip/Tooltip.d.mts +1 -55
  317. package/Tooltip/Tooltip.d.ts +1 -55
  318. package/Tooltip/Tooltip.js +9 -87
  319. package/Tooltip/Tooltip.mjs +9 -87
  320. package/Typography/Typography.d.mts +3 -9
  321. package/Typography/Typography.d.ts +3 -9
  322. package/Typography/Typography.js +5 -43
  323. package/Typography/Typography.mjs +6 -44
  324. package/Typography/typographyClasses.d.mts +0 -5
  325. package/Typography/typographyClasses.d.ts +0 -5
  326. package/Typography/typographyClasses.js +1 -1
  327. package/Typography/typographyClasses.mjs +1 -1
  328. package/index.d.mts +0 -2
  329. package/index.d.ts +0 -2
  330. package/index.js +1 -9
  331. package/index.mjs +1 -2
  332. package/internal/SwitchBase.d.mts +0 -10
  333. package/internal/SwitchBase.d.ts +0 -10
  334. package/internal/SwitchBase.js +1 -16
  335. package/internal/SwitchBase.mjs +1 -16
  336. package/locale/amET.js +4 -1
  337. package/locale/amET.mjs +3 -1
  338. package/locale/arEG.js +4 -1
  339. package/locale/arEG.mjs +3 -1
  340. package/locale/arSA.js +4 -1
  341. package/locale/arSA.mjs +3 -1
  342. package/locale/arSD.js +4 -1
  343. package/locale/arSD.mjs +3 -1
  344. package/locale/beBY.js +4 -1
  345. package/locale/beBY.mjs +3 -1
  346. package/locale/bnBD.js +4 -1
  347. package/locale/bnBD.mjs +3 -1
  348. package/locale/caES.js +4 -1
  349. package/locale/caES.mjs +3 -1
  350. package/locale/csCZ.js +4 -1
  351. package/locale/csCZ.mjs +3 -1
  352. package/locale/daDK.js +4 -1
  353. package/locale/daDK.mjs +3 -1
  354. package/locale/deDE.js +4 -1
  355. package/locale/deDE.mjs +3 -1
  356. package/locale/elGR.js +4 -1
  357. package/locale/elGR.mjs +3 -1
  358. package/locale/esES.js +4 -1
  359. package/locale/esES.mjs +3 -1
  360. package/locale/etEE.js +4 -1
  361. package/locale/etEE.mjs +3 -1
  362. package/locale/faIR.js +4 -1
  363. package/locale/faIR.mjs +3 -1
  364. package/locale/fiFI.js +4 -1
  365. package/locale/fiFI.mjs +3 -1
  366. package/locale/frFR.js +4 -1
  367. package/locale/frFR.mjs +3 -1
  368. package/locale/heIL.js +4 -1
  369. package/locale/heIL.mjs +3 -1
  370. package/locale/hiIN.js +4 -1
  371. package/locale/hiIN.mjs +3 -1
  372. package/locale/hrHR.js +5 -1
  373. package/locale/hrHR.mjs +4 -1
  374. package/locale/isIS.js +4 -1
  375. package/locale/isIS.mjs +3 -1
  376. package/locale/itIT.js +4 -1
  377. package/locale/itIT.mjs +3 -1
  378. package/locale/jaJP.js +4 -1
  379. package/locale/jaJP.mjs +3 -1
  380. package/locale/khKH.js +4 -1
  381. package/locale/khKH.mjs +3 -1
  382. package/locale/kkKZ.js +4 -1
  383. package/locale/kkKZ.mjs +3 -1
  384. package/locale/koKR.js +4 -1
  385. package/locale/koKR.mjs +3 -1
  386. package/locale/kuCKB.js +4 -1
  387. package/locale/kuCKB.mjs +3 -1
  388. package/locale/kuLatn.js +4 -1
  389. package/locale/kuLatn.mjs +3 -1
  390. package/locale/mkMK.js +5 -1
  391. package/locale/mkMK.mjs +4 -1
  392. package/locale/msMS.js +5 -1
  393. package/locale/msMS.mjs +4 -1
  394. package/locale/myMY.js +5 -1
  395. package/locale/myMY.mjs +4 -1
  396. package/locale/nbNO.js +4 -1
  397. package/locale/nbNO.mjs +3 -1
  398. package/locale/neNP.js +5 -1
  399. package/locale/neNP.mjs +4 -1
  400. package/locale/nlNL.js +4 -1
  401. package/locale/nlNL.mjs +3 -1
  402. package/locale/nnNO.js +4 -1
  403. package/locale/nnNO.mjs +3 -1
  404. package/locale/plPL.js +4 -1
  405. package/locale/plPL.mjs +3 -1
  406. package/locale/psAF.js +4 -1
  407. package/locale/psAF.mjs +3 -1
  408. package/locale/ptBR.js +4 -1
  409. package/locale/ptBR.mjs +3 -1
  410. package/locale/ptPT.js +4 -1
  411. package/locale/ptPT.mjs +3 -1
  412. package/locale/roRO.js +4 -1
  413. package/locale/roRO.mjs +3 -1
  414. package/locale/ruRU.js +4 -1
  415. package/locale/ruRU.mjs +3 -1
  416. package/locale/siLK.js +4 -1
  417. package/locale/siLK.mjs +3 -1
  418. package/locale/skSK.js +4 -1
  419. package/locale/skSK.mjs +3 -1
  420. package/locale/srRS.js +5 -1
  421. package/locale/srRS.mjs +4 -1
  422. package/locale/svSE.js +4 -1
  423. package/locale/svSE.mjs +3 -1
  424. package/locale/thTH.js +4 -1
  425. package/locale/thTH.mjs +3 -1
  426. package/locale/tlTL.js +5 -1
  427. package/locale/tlTL.mjs +4 -1
  428. package/locale/trTR.js +4 -1
  429. package/locale/trTR.mjs +3 -1
  430. package/locale/ukUA.js +4 -1
  431. package/locale/ukUA.mjs +3 -1
  432. package/locale/urPK.js +4 -1
  433. package/locale/urPK.mjs +3 -1
  434. package/locale/utils/buildFormatNumber.d.mts +2 -0
  435. package/locale/utils/buildFormatNumber.d.ts +2 -0
  436. package/locale/utils/buildFormatNumber.js +23 -0
  437. package/locale/utils/buildFormatNumber.mjs +17 -0
  438. package/locale/viVN.js +4 -1
  439. package/locale/viVN.mjs +3 -1
  440. package/locale/zhCN.js +4 -1
  441. package/locale/zhCN.mjs +3 -1
  442. package/locale/zhHK.js +4 -1
  443. package/locale/zhHK.mjs +3 -1
  444. package/locale/zhTW.js +4 -1
  445. package/locale/zhTW.mjs +3 -1
  446. package/package.json +7 -21
  447. package/styles/components.d.mts +0 -5
  448. package/styles/components.d.ts +0 -5
  449. package/styles/createThemeWithVars.js +1 -0
  450. package/styles/createThemeWithVars.mjs +1 -0
  451. package/styles/overrides.d.mts +0 -2
  452. package/styles/overrides.d.ts +0 -2
  453. package/styles/props.d.mts +0 -2
  454. package/styles/props.d.ts +0 -2
  455. package/styles/stringifyTheme.js +1 -1
  456. package/styles/stringifyTheme.mjs +1 -1
  457. package/useAutocomplete/useAutocomplete.d.mts +0 -12
  458. package/useAutocomplete/useAutocomplete.d.ts +0 -12
  459. package/useAutocomplete/useAutocomplete.js +29 -28
  460. package/useAutocomplete/useAutocomplete.mjs +29 -28
  461. package/utils/createSvgIcon.d.mts +4 -2
  462. package/utils/createSvgIcon.d.ts +4 -2
  463. package/utils/createSvgIcon.js +6 -24
  464. package/utils/createSvgIcon.mjs +2 -24
  465. package/version/index.js +2 -2
  466. package/version/index.mjs +2 -2
  467. package/GridLegacy/GridLegacy.d.mts +0 -160
  468. package/GridLegacy/GridLegacy.d.ts +0 -160
  469. package/GridLegacy/GridLegacy.js +0 -601
  470. package/GridLegacy/GridLegacy.mjs +0 -588
  471. package/GridLegacy/GridLegacyContext.js +0 -17
  472. package/GridLegacy/GridLegacyContext.mjs +0 -12
  473. package/GridLegacy/gridLegacyClasses.d.mts +0 -48
  474. package/GridLegacy/gridLegacyClasses.d.ts +0 -48
  475. package/GridLegacy/gridLegacyClasses.js +0 -27
  476. package/GridLegacy/gridLegacyClasses.mjs +0 -19
  477. package/GridLegacy/index.d.mts +0 -4
  478. package/GridLegacy/index.d.ts +0 -4
  479. package/GridLegacy/index.js +0 -35
  480. package/GridLegacy/index.mjs +0 -3
package/Radio/Radio.js CHANGED
@@ -10,7 +10,6 @@ exports.default = void 0;
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _clsx = _interopRequireDefault(require("clsx"));
13
- var _refType = _interopRequireDefault(require("@mui/utils/refType"));
14
13
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
15
14
  var _SwitchBase = _interopRequireDefault(require("../internal/SwitchBase"));
16
15
  var _RadioButtonIcon = _interopRequireDefault(require("./RadioButtonIcon"));
@@ -134,7 +133,6 @@ const Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {
134
133
  disableRipple = false,
135
134
  slots = {},
136
135
  slotProps = {},
137
- inputProps,
138
136
  ...other
139
137
  } = props;
140
138
  const muiFormControl = (0, _useFormControl.default)();
@@ -165,7 +163,7 @@ const Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {
165
163
  name = radioGroup.name;
166
164
  }
167
165
  }
168
- const externalInputProps = slotProps.input ?? inputProps;
166
+ const externalInputProps = slotProps.input;
169
167
  const [RootSlot, rootSlotProps] = (0, _useSlot.default)('root', {
170
168
  ref,
171
169
  elementType: RadioRoot,
@@ -254,16 +252,6 @@ process.env.NODE_ENV !== "production" ? Radio.propTypes /* remove-proptypes */ =
254
252
  * The id of the `input` element.
255
253
  */
256
254
  id: _propTypes.default.string,
257
- /**
258
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
259
- * @deprecated Use `slotProps.input` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
260
- */
261
- inputProps: _propTypes.default.object,
262
- /**
263
- * Pass a ref to the `input` element.
264
- * @deprecated Use `slotProps.input.ref` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
265
- */
266
- inputRef: _refType.default,
267
255
  /**
268
256
  * Name attribute of the `input` element.
269
257
  */
package/Radio/Radio.mjs CHANGED
@@ -3,7 +3,6 @@
3
3
  import * as React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import clsx from 'clsx';
6
- import refType from '@mui/utils/refType';
7
6
  import composeClasses from '@mui/utils/composeClasses';
8
7
  import SwitchBase from "../internal/SwitchBase.mjs";
9
8
  import RadioButtonIcon from "./RadioButtonIcon.mjs";
@@ -127,7 +126,6 @@ const Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {
127
126
  disableRipple = false,
128
127
  slots = {},
129
128
  slotProps = {},
130
- inputProps,
131
129
  ...other
132
130
  } = props;
133
131
  const muiFormControl = useFormControl();
@@ -158,7 +156,7 @@ const Radio = /*#__PURE__*/React.forwardRef(function Radio(inProps, ref) {
158
156
  name = radioGroup.name;
159
157
  }
160
158
  }
161
- const externalInputProps = slotProps.input ?? inputProps;
159
+ const externalInputProps = slotProps.input;
162
160
  const [RootSlot, rootSlotProps] = useSlot('root', {
163
161
  ref,
164
162
  elementType: RadioRoot,
@@ -247,16 +245,6 @@ process.env.NODE_ENV !== "production" ? Radio.propTypes /* remove-proptypes */ =
247
245
  * The id of the `input` element.
248
246
  */
249
247
  id: PropTypes.string,
250
- /**
251
- * [Attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input#attributes) applied to the `input` element.
252
- * @deprecated Use `slotProps.input` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
253
- */
254
- inputProps: PropTypes.object,
255
- /**
256
- * Pass a ref to the `input` element.
257
- * @deprecated Use `slotProps.input.ref` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
258
- */
259
- inputRef: refType,
260
248
  /**
261
249
  * Name attribute of the `input` element.
262
250
  */
@@ -104,15 +104,6 @@ export interface RatingOwnProps extends RatingSlotsAndSlotProps {
104
104
  * @default <Star fontSize="inherit" />
105
105
  */
106
106
  icon?: React.ReactNode;
107
- /**
108
- * The component containing the icon.
109
- * @deprecated Use `slotProps.icon.component` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
110
- * @default function IconContainer(props) {
111
- * const { value, ...other } = props;
112
- * return <span {...other} />;
113
- * }
114
- */
115
- IconContainerComponent?: React.ElementType<IconContainerProps> | undefined;
116
107
  /**
117
108
  * Maximum rating.
118
109
  * @default 5
@@ -104,15 +104,6 @@ export interface RatingOwnProps extends RatingSlotsAndSlotProps {
104
104
  * @default <Star fontSize="inherit" />
105
105
  */
106
106
  icon?: React.ReactNode;
107
- /**
108
- * The component containing the icon.
109
- * @deprecated Use `slotProps.icon.component` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
110
- * @default function IconContainer(props) {
111
- * const { value, ...other } = props;
112
- * return <span {...other} />;
113
- * }
114
- */
115
- IconContainerComponent?: React.ElementType<IconContainerProps> | undefined;
116
107
  /**
117
108
  * Maximum rating.
118
109
  * @default 5
package/Rating/Rating.js CHANGED
@@ -217,7 +217,6 @@ function RatingItem(props) {
217
217
  highlightSelectedOnly,
218
218
  hover,
219
219
  icon,
220
- IconContainerComponent,
221
220
  isActive,
222
221
  itemValue,
223
222
  labelProps,
@@ -263,9 +262,7 @@ function RatingItem(props) {
263
262
  value: itemValue
264
263
  },
265
264
  internalForwardedProps: {
266
- // TODO: remove this in v7 because `IconContainerComponent` is deprecated
267
- // only forward if `slots.icon` is NOT provided
268
- as: IconContainerComponent
265
+ as: IconContainer
269
266
  }
270
267
  });
271
268
  const [LabelSlot, labelSlotProps] = (0, _useSlot.default)('label', {
@@ -321,7 +318,6 @@ process.env.NODE_ENV !== "production" ? RatingItem.propTypes = {
321
318
  highlightSelectedOnly: _propTypes.default.bool.isRequired,
322
319
  hover: _propTypes.default.number.isRequired,
323
320
  icon: _propTypes.default.node,
324
- IconContainerComponent: _propTypes.default.elementType.isRequired,
325
321
  isActive: _propTypes.default.bool.isRequired,
326
322
  itemValue: _propTypes.default.number.isRequired,
327
323
  labelProps: _propTypes.default.object,
@@ -361,7 +357,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
361
357
  getLabelText = defaultLabelText,
362
358
  highlightSelectedOnly = false,
363
359
  icon = defaultIcon,
364
- IconContainerComponent = IconContainer,
365
360
  max = 5,
366
361
  name: nameProp,
367
362
  onChange,
@@ -504,7 +499,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
504
499
  focusVisible,
505
500
  getLabelText,
506
501
  icon,
507
- IconContainerComponent,
508
502
  max,
509
503
  precision,
510
504
  readOnly,
@@ -566,7 +560,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
566
560
  highlightSelectedOnly,
567
561
  hover,
568
562
  icon,
569
- IconContainerComponent,
570
563
  name,
571
564
  onBlur: handleBlur,
572
565
  onChange: handleChange,
@@ -692,15 +685,6 @@ process.env.NODE_ENV !== "production" ? Rating.propTypes /* remove-proptypes */
692
685
  * @default <Star fontSize="inherit" />
693
686
  */
694
687
  icon: _propTypes.default.node,
695
- /**
696
- * The component containing the icon.
697
- * @deprecated Use `slotProps.icon.component` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
698
- * @default function IconContainer(props) {
699
- * const { value, ...other } = props;
700
- * return <span {...other} />;
701
- * }
702
- */
703
- IconContainerComponent: _propTypes.default.elementType,
704
688
  /**
705
689
  * Maximum rating.
706
690
  * @default 5
package/Rating/Rating.mjs CHANGED
@@ -210,7 +210,6 @@ function RatingItem(props) {
210
210
  highlightSelectedOnly,
211
211
  hover,
212
212
  icon,
213
- IconContainerComponent,
214
213
  isActive,
215
214
  itemValue,
216
215
  labelProps,
@@ -256,9 +255,7 @@ function RatingItem(props) {
256
255
  value: itemValue
257
256
  },
258
257
  internalForwardedProps: {
259
- // TODO: remove this in v7 because `IconContainerComponent` is deprecated
260
- // only forward if `slots.icon` is NOT provided
261
- as: IconContainerComponent
258
+ as: IconContainer
262
259
  }
263
260
  });
264
261
  const [LabelSlot, labelSlotProps] = useSlot('label', {
@@ -314,7 +311,6 @@ process.env.NODE_ENV !== "production" ? RatingItem.propTypes = {
314
311
  highlightSelectedOnly: PropTypes.bool.isRequired,
315
312
  hover: PropTypes.number.isRequired,
316
313
  icon: PropTypes.node,
317
- IconContainerComponent: PropTypes.elementType.isRequired,
318
314
  isActive: PropTypes.bool.isRequired,
319
315
  itemValue: PropTypes.number.isRequired,
320
316
  labelProps: PropTypes.object,
@@ -354,7 +350,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
354
350
  getLabelText = defaultLabelText,
355
351
  highlightSelectedOnly = false,
356
352
  icon = defaultIcon,
357
- IconContainerComponent = IconContainer,
358
353
  max = 5,
359
354
  name: nameProp,
360
355
  onChange,
@@ -497,7 +492,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
497
492
  focusVisible,
498
493
  getLabelText,
499
494
  icon,
500
- IconContainerComponent,
501
495
  max,
502
496
  precision,
503
497
  readOnly,
@@ -559,7 +553,6 @@ const Rating = /*#__PURE__*/React.forwardRef(function Rating(inProps, ref) {
559
553
  highlightSelectedOnly,
560
554
  hover,
561
555
  icon,
562
- IconContainerComponent,
563
556
  name,
564
557
  onBlur: handleBlur,
565
558
  onChange: handleChange,
@@ -685,15 +678,6 @@ process.env.NODE_ENV !== "production" ? Rating.propTypes /* remove-proptypes */
685
678
  * @default <Star fontSize="inherit" />
686
679
  */
687
680
  icon: PropTypes.node,
688
- /**
689
- * The component containing the icon.
690
- * @deprecated Use `slotProps.icon.component` instead. This prop will be removed in a future major release. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
691
- * @default function IconContainer(props) {
692
- * const { value, ...other } = props;
693
- * return <span {...other} />;
694
- * }
695
- */
696
- IconContainerComponent: PropTypes.elementType,
697
681
  /**
698
682
  * Maximum rating.
699
683
  * @default 5
@@ -16,7 +16,6 @@ var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"
16
16
  var _useId = _interopRequireDefault(require("@mui/utils/useId"));
17
17
  var _refType = _interopRequireDefault(require("@mui/utils/refType"));
18
18
  var _ownerDocument = _interopRequireDefault(require("../utils/ownerDocument"));
19
- var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
20
19
  var _Menu = _interopRequireDefault(require("../Menu/Menu"));
21
20
  var _NativeSelectInput = require("../NativeSelect/NativeSelectInput");
22
21
  var _utils = require("../InputBase/utils");
@@ -25,6 +24,8 @@ var _slotShouldForwardProp = _interopRequireDefault(require("../styles/slotShoul
25
24
  var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
26
25
  var _useControlled = _interopRequireDefault(require("../utils/useControlled"));
27
26
  var _selectClasses = _interopRequireWildcard(require("./selectClasses"));
27
+ var _utils2 = require("./utils");
28
+ var _SelectFocusSourceContext = require("./utils/SelectFocusSourceContext");
28
29
  var _jsxRuntime = require("react/jsx-runtime");
29
30
  var _span;
30
31
  const SelectSelect = (0, _zeroStyled.styled)(_NativeSelectInput.StyledSelectSelect, {
@@ -65,7 +66,7 @@ const SelectIcon = (0, _zeroStyled.styled)(_NativeSelectInput.StyledSelectIcon,
65
66
  const {
66
67
  ownerState
67
68
  } = props;
68
- return [styles.icon, ownerState.variant && styles[`icon${(0, _capitalize.default)(ownerState.variant)}`], ownerState.open && styles.iconOpen];
69
+ return [styles.icon, ownerState.open && styles.iconOpen];
69
70
  }
70
71
  })({});
71
72
  const SelectNativeInput = (0, _zeroStyled.styled)('input', {
@@ -81,17 +82,6 @@ const SelectNativeInput = (0, _zeroStyled.styled)('input', {
81
82
  width: '100%',
82
83
  boxSizing: 'border-box'
83
84
  });
84
- function areEqualValues(a, b) {
85
- if (typeof b === 'object' && b !== null) {
86
- return a === b;
87
- }
88
-
89
- // The value could be a number, the DOM will stringify it anyway.
90
- return String(a) === String(b);
91
- }
92
- function isEmpty(display) {
93
- return display == null || typeof display === 'string' && !display.trim();
94
- }
95
85
  const useUtilityClasses = ownerState => {
96
86
  const {
97
87
  classes,
@@ -103,7 +93,7 @@ const useUtilityClasses = ownerState => {
103
93
  } = ownerState;
104
94
  const slots = {
105
95
  select: ['select', variant, disabled && 'disabled', multiple && 'multiple', error && 'error'],
106
- icon: ['icon', `icon${(0, _capitalize.default)(variant)}`, open && 'iconOpen', disabled && 'disabled'],
96
+ icon: ['icon', open && 'iconOpen', disabled && 'disabled'],
107
97
  nativeInput: ['nativeInput']
108
98
  };
109
99
  return (0, _composeClasses.default)(slots, _selectClasses.getSelectUtilityClasses, classes);
@@ -169,6 +159,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
169
159
  current: isOpenControlled
170
160
  } = React.useRef(openProp != null);
171
161
  const [menuMinWidthState, setMenuMinWidthState] = React.useState();
162
+ const [openInteractionType, setOpenInteractionType] = React.useState(null);
172
163
  const handleRef = (0, _useForkRef.default)(ref, inputRefProp);
173
164
  const handleDisplayRef = React.useCallback(node => {
174
165
  displayRef.current = node;
@@ -237,11 +228,15 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
237
228
  }, [labelId]);
238
229
  const update = (openParam, event) => {
239
230
  if (openParam) {
231
+ setOpenInteractionType((0, _utils2.getOpenInteractionType)(event));
240
232
  if (onOpen) {
241
233
  onOpen(event);
242
234
  }
243
- } else if (onClose) {
244
- onClose(event);
235
+ } else {
236
+ setOpenInteractionType(null);
237
+ if (onClose) {
238
+ onClose(event);
239
+ }
245
240
  }
246
241
  if (!isOpenControlled) {
247
242
  setMenuMinWidthState(autoWidth ? null : anchorElement.clientWidth);
@@ -377,12 +372,12 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
377
372
  if (!Array.isArray(value)) {
378
373
  throw new Error(process.env.NODE_ENV !== "production" ? 'MUI: The `value` prop must be an array ' + 'when using the `Select` component with `multiple`.' : (0, _formatMuiErrorMessage.default)(2));
379
374
  }
380
- selected = value.some(v => areEqualValues(v, child.props.value));
375
+ selected = value.some(v => (0, _utils2.areEqualValues)(v, child.props.value));
381
376
  if (selected && computeDisplay) {
382
377
  displayMultiple.push(child.props.children);
383
378
  }
384
379
  } else {
385
- selected = areEqualValues(value, child.props.value);
380
+ selected = (0, _utils2.areEqualValues)(value, child.props.value);
386
381
  if (selected && computeDisplay) {
387
382
  displaySingle = child.props.children;
388
383
  }
@@ -459,15 +454,10 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
459
454
  error
460
455
  };
461
456
  const classes = useUtilityClasses(ownerState);
462
- const paperProps = {
463
- ...MenuProps.PaperProps,
464
- ...(typeof MenuProps.slotProps?.paper === 'function' ? MenuProps.slotProps.paper(ownerState) : MenuProps.slotProps?.paper)
465
- };
466
- const listProps = {
467
- ...MenuProps.MenuListProps,
468
- ...(typeof MenuProps.slotProps?.list === 'function' ? MenuProps.slotProps.list(ownerState) : MenuProps.slotProps?.list)
469
- };
457
+ const menuPaperSlotProps = typeof MenuProps.slotProps?.paper === 'function' ? MenuProps.slotProps.paper(ownerState) : MenuProps.slotProps?.paper;
458
+ const menuListSlotProps = typeof MenuProps.slotProps?.list === 'function' ? MenuProps.slotProps.list(ownerState) : MenuProps.slotProps?.list;
470
459
  const listboxId = (0, _useId.default)();
460
+ const nativeInputId = (0, _useId.default)();
471
461
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
472
462
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SelectSelect, {
473
463
  as: "div",
@@ -493,7 +483,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
493
483
  // The id is required for proper a11y
494
484
  ,
495
485
  id: buttonId,
496
- children: isEmpty(display) ? // notranslate needed while Google Translate will not fix zero-width space issue
486
+ children: (0, _utils2.isEmpty)(display) ? // notranslate needed while Google Translate will not fix zero-width space issue
497
487
  _span || (_span = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
498
488
  className: "notranslate",
499
489
  "aria-hidden": true,
@@ -512,44 +502,48 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
512
502
  autoFocus: autoFocus,
513
503
  required: required,
514
504
  ...other,
505
+ id: other.id ?? nativeInputId,
515
506
  ownerState: ownerState
516
507
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(SelectIcon, {
517
508
  as: IconComponent,
518
509
  className: classes.icon,
519
510
  ownerState: ownerState
520
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {
521
- id: `menu-${name || ''}`,
522
- anchorEl: anchorElement,
523
- open: open,
524
- onClose: handleClose,
525
- anchorOrigin: {
526
- vertical: 'bottom',
527
- horizontal: 'center'
528
- },
529
- transformOrigin: {
530
- vertical: 'top',
531
- horizontal: 'center'
532
- },
533
- ...MenuProps,
534
- slotProps: {
535
- ...MenuProps.slotProps,
536
- list: {
537
- 'aria-labelledby': labelId,
538
- role: 'listbox',
539
- 'aria-multiselectable': multiple ? 'true' : undefined,
540
- disableListWrap: true,
541
- id: listboxId,
542
- ...listProps
511
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SelectFocusSourceContext.SelectFocusSourceProvider, {
512
+ value: openInteractionType,
513
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {
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'
543
525
  },
544
- paper: {
545
- ...paperProps,
546
- style: {
547
- minWidth: menuMinWidth,
548
- ...(paperProps != null ? paperProps.style : null)
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
+ ...menuListSlotProps
536
+ },
537
+ paper: {
538
+ ...menuPaperSlotProps,
539
+ style: {
540
+ minWidth: menuMinWidth,
541
+ ...menuPaperSlotProps?.style
542
+ }
549
543
  }
550
- }
551
- },
552
- children: items
544
+ },
545
+ children: items
546
+ })
553
547
  })]
554
548
  });
555
549
  });
@@ -10,7 +10,6 @@ import composeClasses from '@mui/utils/composeClasses';
10
10
  import useId from '@mui/utils/useId';
11
11
  import refType from '@mui/utils/refType';
12
12
  import ownerDocument from "../utils/ownerDocument.mjs";
13
- import capitalize from "../utils/capitalize.mjs";
14
13
  import Menu from "../Menu/Menu.mjs";
15
14
  import { StyledSelectSelect, StyledSelectIcon } from "../NativeSelect/NativeSelectInput.mjs";
16
15
  import { isFilled } from "../InputBase/utils.mjs";
@@ -19,6 +18,8 @@ import slotShouldForwardProp from "../styles/slotShouldForwardProp.mjs";
19
18
  import useForkRef from "../utils/useForkRef.mjs";
20
19
  import useControlled from "../utils/useControlled.mjs";
21
20
  import selectClasses, { getSelectUtilityClasses } from "./selectClasses.mjs";
21
+ import { areEqualValues, isEmpty, getOpenInteractionType } from "./utils/index.mjs";
22
+ import { SelectFocusSourceProvider } from "./utils/SelectFocusSourceContext.mjs";
22
23
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
23
24
  const SelectSelect = styled(StyledSelectSelect, {
24
25
  name: 'MuiSelect',
@@ -58,7 +59,7 @@ const SelectIcon = styled(StyledSelectIcon, {
58
59
  const {
59
60
  ownerState
60
61
  } = props;
61
- return [styles.icon, ownerState.variant && styles[`icon${capitalize(ownerState.variant)}`], ownerState.open && styles.iconOpen];
62
+ return [styles.icon, ownerState.open && styles.iconOpen];
62
63
  }
63
64
  })({});
64
65
  const SelectNativeInput = styled('input', {
@@ -74,17 +75,6 @@ const SelectNativeInput = styled('input', {
74
75
  width: '100%',
75
76
  boxSizing: 'border-box'
76
77
  });
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
78
  const useUtilityClasses = ownerState => {
89
79
  const {
90
80
  classes,
@@ -96,7 +86,7 @@ const useUtilityClasses = ownerState => {
96
86
  } = ownerState;
97
87
  const slots = {
98
88
  select: ['select', variant, disabled && 'disabled', multiple && 'multiple', error && 'error'],
99
- icon: ['icon', `icon${capitalize(variant)}`, open && 'iconOpen', disabled && 'disabled'],
89
+ icon: ['icon', open && 'iconOpen', disabled && 'disabled'],
100
90
  nativeInput: ['nativeInput']
101
91
  };
102
92
  return composeClasses(slots, getSelectUtilityClasses, classes);
@@ -162,6 +152,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
162
152
  current: isOpenControlled
163
153
  } = React.useRef(openProp != null);
164
154
  const [menuMinWidthState, setMenuMinWidthState] = React.useState();
155
+ const [openInteractionType, setOpenInteractionType] = React.useState(null);
165
156
  const handleRef = useForkRef(ref, inputRefProp);
166
157
  const handleDisplayRef = React.useCallback(node => {
167
158
  displayRef.current = node;
@@ -230,11 +221,15 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
230
221
  }, [labelId]);
231
222
  const update = (openParam, event) => {
232
223
  if (openParam) {
224
+ setOpenInteractionType(getOpenInteractionType(event));
233
225
  if (onOpen) {
234
226
  onOpen(event);
235
227
  }
236
- } else if (onClose) {
237
- onClose(event);
228
+ } else {
229
+ setOpenInteractionType(null);
230
+ if (onClose) {
231
+ onClose(event);
232
+ }
238
233
  }
239
234
  if (!isOpenControlled) {
240
235
  setMenuMinWidthState(autoWidth ? null : anchorElement.clientWidth);
@@ -452,15 +447,10 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
452
447
  error
453
448
  };
454
449
  const classes = useUtilityClasses(ownerState);
455
- const paperProps = {
456
- ...MenuProps.PaperProps,
457
- ...(typeof MenuProps.slotProps?.paper === 'function' ? MenuProps.slotProps.paper(ownerState) : MenuProps.slotProps?.paper)
458
- };
459
- const listProps = {
460
- ...MenuProps.MenuListProps,
461
- ...(typeof MenuProps.slotProps?.list === 'function' ? MenuProps.slotProps.list(ownerState) : MenuProps.slotProps?.list)
462
- };
450
+ const menuPaperSlotProps = typeof MenuProps.slotProps?.paper === 'function' ? MenuProps.slotProps.paper(ownerState) : MenuProps.slotProps?.paper;
451
+ const menuListSlotProps = typeof MenuProps.slotProps?.list === 'function' ? MenuProps.slotProps.list(ownerState) : MenuProps.slotProps?.list;
463
452
  const listboxId = useId();
453
+ const nativeInputId = useId();
464
454
  return /*#__PURE__*/_jsxs(React.Fragment, {
465
455
  children: [/*#__PURE__*/_jsx(SelectSelect, {
466
456
  as: "div",
@@ -505,44 +495,48 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
505
495
  autoFocus: autoFocus,
506
496
  required: required,
507
497
  ...other,
498
+ id: other.id ?? nativeInputId,
508
499
  ownerState: ownerState
509
500
  }), /*#__PURE__*/_jsx(SelectIcon, {
510
501
  as: IconComponent,
511
502
  className: classes.icon,
512
503
  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
504
+ }), /*#__PURE__*/_jsx(SelectFocusSourceProvider, {
505
+ value: openInteractionType,
506
+ children: /*#__PURE__*/_jsx(Menu, {
507
+ id: `menu-${name || ''}`,
508
+ anchorEl: anchorElement,
509
+ open: open,
510
+ onClose: handleClose,
511
+ anchorOrigin: {
512
+ vertical: 'bottom',
513
+ horizontal: 'center'
514
+ },
515
+ transformOrigin: {
516
+ vertical: 'top',
517
+ horizontal: 'center'
536
518
  },
537
- paper: {
538
- ...paperProps,
539
- style: {
540
- minWidth: menuMinWidth,
541
- ...(paperProps != null ? paperProps.style : null)
519
+ ...MenuProps,
520
+ slotProps: {
521
+ ...MenuProps.slotProps,
522
+ list: {
523
+ 'aria-labelledby': labelId,
524
+ role: 'listbox',
525
+ 'aria-multiselectable': multiple ? 'true' : undefined,
526
+ disableListWrap: true,
527
+ id: listboxId,
528
+ ...menuListSlotProps
529
+ },
530
+ paper: {
531
+ ...menuPaperSlotProps,
532
+ style: {
533
+ minWidth: menuMinWidth,
534
+ ...menuPaperSlotProps?.style
535
+ }
542
536
  }
543
- }
544
- },
545
- children: items
537
+ },
538
+ children: items
539
+ })
546
540
  })]
547
541
  });
548
542
  });
@@ -1,4 +1,5 @@
1
1
  export { default } from "./Select.mjs";
2
2
  export * from "./Select.mjs";
3
+ export * from "./utils/index.mjs";
3
4
  export { default as selectClasses } from "./selectClasses.mjs";
4
5
  export * from "./selectClasses.mjs";
package/Select/index.d.ts CHANGED
@@ -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";
package/Select/index.js CHANGED
@@ -21,6 +21,18 @@ Object.defineProperty(exports, "selectClasses", {
21
21
  }
22
22
  });
23
23
  var _Select = _interopRequireDefault(require("./Select"));
24
+ var _utils = require("./utils");
25
+ Object.keys(_utils).forEach(function (key) {
26
+ if (key === "default" || key === "__esModule") return;
27
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
28
+ if (key in exports && exports[key] === _utils[key]) return;
29
+ Object.defineProperty(exports, key, {
30
+ enumerable: true,
31
+ get: function () {
32
+ return _utils[key];
33
+ }
34
+ });
35
+ });
24
36
  var _selectClasses = _interopRequireWildcard(require("./selectClasses"));
25
37
  Object.keys(_selectClasses).forEach(function (key) {
26
38
  if (key === "default" || key === "__esModule") return;
package/Select/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
1
  export { default } from "./Select.mjs";
2
+ export * from "./utils/index.mjs";
2
3
  export { default as selectClasses } from "./selectClasses.mjs";
3
4
  export * from "./selectClasses.mjs";