@react-md/core 6.5.1 → 7.0.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 (648) hide show
  1. package/dist/_utils.scss +3 -0
  2. package/dist/app-bar/AppBar.d.ts +3 -2
  3. package/dist/app-bar/AppBar.js +3 -4
  4. package/dist/app-bar/AppBar.js.map +1 -1
  5. package/dist/app-bar/AppBarTitle.d.ts +3 -1
  6. package/dist/app-bar/AppBarTitle.js +3 -4
  7. package/dist/app-bar/AppBarTitle.js.map +1 -1
  8. package/dist/autocomplete/AutocompleteChip.d.ts +2 -1
  9. package/dist/autocomplete/AutocompleteChip.js +3 -4
  10. package/dist/autocomplete/AutocompleteChip.js.map +1 -1
  11. package/dist/autocomplete/types.d.ts +1 -0
  12. package/dist/autocomplete/types.js.map +1 -1
  13. package/dist/autocomplete/utils.d.ts +4 -4
  14. package/dist/autocomplete/utils.js.map +1 -1
  15. package/dist/avatar/Avatar.d.ts +3 -2
  16. package/dist/avatar/Avatar.js +3 -4
  17. package/dist/avatar/Avatar.js.map +1 -1
  18. package/dist/badge/Badge.d.ts +3 -2
  19. package/dist/badge/Badge.js +3 -4
  20. package/dist/badge/Badge.js.map +1 -1
  21. package/dist/box/Box.d.ts +3 -2
  22. package/dist/box/Box.js +3 -4
  23. package/dist/box/Box.js.map +1 -1
  24. package/dist/button/AsyncButton.d.ts +3 -2
  25. package/dist/button/AsyncButton.js +3 -4
  26. package/dist/button/AsyncButton.js.map +1 -1
  27. package/dist/button/Button.d.ts +3 -2
  28. package/dist/button/Button.js +3 -4
  29. package/dist/button/Button.js.map +1 -1
  30. package/dist/button/ButtonUnstyled.d.ts +5 -3
  31. package/dist/button/ButtonUnstyled.js +3 -4
  32. package/dist/button/ButtonUnstyled.js.map +1 -1
  33. package/dist/button/FloatingActionButton.d.ts +3 -2
  34. package/dist/button/FloatingActionButton.js +3 -4
  35. package/dist/button/FloatingActionButton.js.map +1 -1
  36. package/dist/button/TooltippedButton.d.ts +3 -2
  37. package/dist/button/TooltippedButton.js +3 -4
  38. package/dist/button/TooltippedButton.js.map +1 -1
  39. package/dist/card/Card.d.ts +3 -2
  40. package/dist/card/Card.js +3 -4
  41. package/dist/card/Card.js.map +1 -1
  42. package/dist/card/CardContent.d.ts +3 -2
  43. package/dist/card/CardContent.js +3 -4
  44. package/dist/card/CardContent.js.map +1 -1
  45. package/dist/card/CardFooter.d.ts +3 -1
  46. package/dist/card/CardFooter.js +3 -4
  47. package/dist/card/CardFooter.js.map +1 -1
  48. package/dist/card/CardHeader.d.ts +3 -2
  49. package/dist/card/CardHeader.js +3 -4
  50. package/dist/card/CardHeader.js.map +1 -1
  51. package/dist/card/CardSubtitle.d.ts +3 -1
  52. package/dist/card/CardSubtitle.js +3 -4
  53. package/dist/card/CardSubtitle.js.map +1 -1
  54. package/dist/card/CardTitle.d.ts +3 -1
  55. package/dist/card/CardTitle.js +3 -4
  56. package/dist/card/CardTitle.js.map +1 -1
  57. package/dist/card/ClickableCard.d.ts +3 -2
  58. package/dist/card/ClickableCard.js +3 -4
  59. package/dist/card/ClickableCard.js.map +1 -1
  60. package/dist/chip/Chip.d.ts +4 -2
  61. package/dist/chip/Chip.js +4 -4
  62. package/dist/chip/Chip.js.map +1 -1
  63. package/dist/datetime/NativeDateField.d.ts +3 -1
  64. package/dist/datetime/NativeDateField.js +3 -4
  65. package/dist/datetime/NativeDateField.js.map +1 -1
  66. package/dist/datetime/NativeTimeField.d.ts +3 -1
  67. package/dist/datetime/NativeTimeField.js +3 -4
  68. package/dist/datetime/NativeTimeField.js.map +1 -1
  69. package/dist/dialog/Dialog.d.ts +3 -2
  70. package/dist/dialog/Dialog.js +4 -4
  71. package/dist/dialog/Dialog.js.map +1 -1
  72. package/dist/dialog/DialogContainer.d.ts +3 -2
  73. package/dist/dialog/DialogContainer.js +3 -4
  74. package/dist/dialog/DialogContainer.js.map +1 -1
  75. package/dist/dialog/DialogContent.d.ts +3 -2
  76. package/dist/dialog/DialogContent.js +3 -4
  77. package/dist/dialog/DialogContent.js.map +1 -1
  78. package/dist/dialog/DialogFooter.d.ts +3 -2
  79. package/dist/dialog/DialogFooter.js +3 -4
  80. package/dist/dialog/DialogFooter.js.map +1 -1
  81. package/dist/dialog/DialogHeader.d.ts +3 -1
  82. package/dist/dialog/DialogHeader.js +3 -4
  83. package/dist/dialog/DialogHeader.js.map +1 -1
  84. package/dist/dialog/DialogTitle.d.ts +3 -1
  85. package/dist/dialog/DialogTitle.js +3 -4
  86. package/dist/dialog/DialogTitle.js.map +1 -1
  87. package/dist/dialog/FixedDialog.d.ts +4 -3
  88. package/dist/dialog/FixedDialog.js +4 -4
  89. package/dist/dialog/FixedDialog.js.map +1 -1
  90. package/dist/divider/Divider.d.ts +3 -2
  91. package/dist/divider/Divider.js +3 -4
  92. package/dist/divider/Divider.js.map +1 -1
  93. package/dist/draggable/useDraggable.d.ts +3 -3
  94. package/dist/draggable/useDraggable.js.map +1 -1
  95. package/dist/draggable/utils.d.ts +1 -1
  96. package/dist/draggable/utils.js.map +1 -1
  97. package/dist/expansion-panel/ExpansionList.d.ts +3 -2
  98. package/dist/expansion-panel/ExpansionList.js +3 -4
  99. package/dist/expansion-panel/ExpansionList.js.map +1 -1
  100. package/dist/expansion-panel/ExpansionPanel.d.ts +3 -2
  101. package/dist/expansion-panel/ExpansionPanel.js +3 -4
  102. package/dist/expansion-panel/ExpansionPanel.js.map +1 -1
  103. package/dist/expansion-panel/ExpansionPanelHeader.d.ts +3 -2
  104. package/dist/expansion-panel/ExpansionPanelHeader.js +3 -4
  105. package/dist/expansion-panel/ExpansionPanelHeader.js.map +1 -1
  106. package/dist/files/FileInput.d.ts +3 -2
  107. package/dist/files/FileInput.js +3 -4
  108. package/dist/files/FileInput.js.map +1 -1
  109. package/dist/focus/useFocusContainer.d.ts +1 -1
  110. package/dist/focus/useFocusContainer.js.map +1 -1
  111. package/dist/form/Checkbox.d.ts +2 -1
  112. package/dist/form/Checkbox.js +4 -4
  113. package/dist/form/Checkbox.js.map +1 -1
  114. package/dist/form/Fieldset.d.ts +3 -2
  115. package/dist/form/Fieldset.js +3 -4
  116. package/dist/form/Fieldset.js.map +1 -1
  117. package/dist/form/Form.d.ts +3 -2
  118. package/dist/form/Form.js +3 -4
  119. package/dist/form/Form.js.map +1 -1
  120. package/dist/form/FormMessage.d.ts +8 -2
  121. package/dist/form/FormMessage.js +3 -4
  122. package/dist/form/FormMessage.js.map +1 -1
  123. package/dist/form/FormMessageContainer.d.ts +5 -4
  124. package/dist/form/FormMessageContainer.js +3 -4
  125. package/dist/form/FormMessageContainer.js.map +1 -1
  126. package/dist/form/FormMessageCounter.d.ts +3 -2
  127. package/dist/form/FormMessageCounter.js +3 -4
  128. package/dist/form/FormMessageCounter.js.map +1 -1
  129. package/dist/form/InputToggle.d.ts +3 -2
  130. package/dist/form/InputToggle.js +3 -4
  131. package/dist/form/InputToggle.js.map +1 -1
  132. package/dist/form/InputToggleIcon.d.ts +3 -2
  133. package/dist/form/InputToggleIcon.js +3 -4
  134. package/dist/form/InputToggleIcon.js.map +1 -1
  135. package/dist/form/Label.d.ts +2 -1
  136. package/dist/form/Label.js +3 -4
  137. package/dist/form/Label.js.map +1 -1
  138. package/dist/form/Legend.d.ts +3 -1
  139. package/dist/form/Legend.js +3 -4
  140. package/dist/form/Legend.js.map +1 -1
  141. package/dist/form/NativeSelect.d.ts +3 -2
  142. package/dist/form/NativeSelect.js +3 -4
  143. package/dist/form/NativeSelect.js.map +1 -1
  144. package/dist/form/OptGroup.d.ts +3 -2
  145. package/dist/form/OptGroup.js +3 -4
  146. package/dist/form/OptGroup.js.map +1 -1
  147. package/dist/form/Option.d.ts +3 -2
  148. package/dist/form/Option.js +4 -4
  149. package/dist/form/Option.js.map +1 -1
  150. package/dist/form/Password.d.ts +2 -2
  151. package/dist/form/Password.js +3 -4
  152. package/dist/form/Password.js.map +1 -1
  153. package/dist/form/Radio.d.ts +2 -1
  154. package/dist/form/Radio.js +4 -4
  155. package/dist/form/Radio.js.map +1 -1
  156. package/dist/form/ResizingTextAreaWrapper.d.ts +3 -2
  157. package/dist/form/ResizingTextAreaWrapper.js +3 -4
  158. package/dist/form/ResizingTextAreaWrapper.js.map +1 -1
  159. package/dist/form/SliderContainer.d.ts +3 -2
  160. package/dist/form/SliderContainer.js +3 -4
  161. package/dist/form/SliderContainer.js.map +1 -1
  162. package/dist/form/SliderThumb.d.ts +3 -2
  163. package/dist/form/SliderThumb.js +4 -4
  164. package/dist/form/SliderThumb.js.map +1 -1
  165. package/dist/form/SliderTrack.d.ts +3 -2
  166. package/dist/form/SliderTrack.js +3 -4
  167. package/dist/form/SliderTrack.js.map +1 -1
  168. package/dist/form/Switch.d.ts +3 -2
  169. package/dist/form/Switch.js +3 -4
  170. package/dist/form/Switch.js.map +1 -1
  171. package/dist/form/SwitchTrack.d.ts +3 -2
  172. package/dist/form/SwitchTrack.js +3 -4
  173. package/dist/form/SwitchTrack.js.map +1 -1
  174. package/dist/form/TextArea.d.ts +3 -2
  175. package/dist/form/TextArea.js +3 -4
  176. package/dist/form/TextArea.js.map +1 -1
  177. package/dist/form/TextField.d.ts +3 -2
  178. package/dist/form/TextField.js +3 -4
  179. package/dist/form/TextField.js.map +1 -1
  180. package/dist/form/TextFieldAddon.d.ts +2 -1
  181. package/dist/form/TextFieldAddon.js +3 -4
  182. package/dist/form/TextFieldAddon.js.map +1 -1
  183. package/dist/form/TextFieldContainer.d.ts +3 -2
  184. package/dist/form/TextFieldContainer.js +3 -4
  185. package/dist/form/TextFieldContainer.js.map +1 -1
  186. package/dist/form/sliderUtils.d.ts +1 -1
  187. package/dist/form/sliderUtils.js.map +1 -1
  188. package/dist/form/types.d.ts +11 -5
  189. package/dist/form/types.js.map +1 -1
  190. package/dist/form/useCombobox.d.ts +6 -6
  191. package/dist/form/useCombobox.js.map +1 -1
  192. package/dist/form/useFormReset.d.ts +1 -1
  193. package/dist/form/useFormReset.js.map +1 -1
  194. package/dist/form/useTextField.d.ts +4 -4
  195. package/dist/form/useTextField.js.map +1 -1
  196. package/dist/hoverMode/useHoverMode.js +1 -1
  197. package/dist/hoverMode/useHoverMode.js.map +1 -1
  198. package/dist/hoverMode/useHoverModeProvider.d.ts +5 -5
  199. package/dist/hoverMode/useHoverModeProvider.js +1 -1
  200. package/dist/hoverMode/useHoverModeProvider.js.map +1 -1
  201. package/dist/icon/FontIcon.d.ts +3 -2
  202. package/dist/icon/FontIcon.js +3 -4
  203. package/dist/icon/FontIcon.js.map +1 -1
  204. package/dist/icon/IconRotator.d.ts +3 -2
  205. package/dist/icon/IconRotator.js +4 -4
  206. package/dist/icon/IconRotator.js.map +1 -1
  207. package/dist/icon/MaterialIcon.d.ts +3 -2
  208. package/dist/icon/MaterialIcon.js +3 -4
  209. package/dist/icon/MaterialIcon.js.map +1 -1
  210. package/dist/icon/MaterialSymbol.d.ts +3 -2
  211. package/dist/icon/MaterialSymbol.js +3 -4
  212. package/dist/icon/MaterialSymbol.js.map +1 -1
  213. package/dist/icon/SVGIcon.d.ts +3 -2
  214. package/dist/icon/SVGIcon.js +3 -4
  215. package/dist/icon/SVGIcon.js.map +1 -1
  216. package/dist/layout/LayoutAppBar.d.ts +3 -1
  217. package/dist/layout/LayoutAppBar.js +3 -4
  218. package/dist/layout/LayoutAppBar.js.map +1 -1
  219. package/dist/layout/LayoutNav.d.ts +3 -2
  220. package/dist/layout/LayoutNav.js +3 -4
  221. package/dist/layout/LayoutNav.js.map +1 -1
  222. package/dist/layout/LayoutWindowSplitter.d.ts +4 -2
  223. package/dist/layout/LayoutWindowSplitter.js +4 -4
  224. package/dist/layout/LayoutWindowSplitter.js.map +1 -1
  225. package/dist/layout/Main.d.ts +4 -3
  226. package/dist/layout/Main.js +3 -4
  227. package/dist/layout/Main.js.map +1 -1
  228. package/dist/link/Link.d.ts +10 -2
  229. package/dist/link/Link.js +4 -4
  230. package/dist/link/Link.js.map +1 -1
  231. package/dist/link/SkipToMainContent.d.ts +3 -2
  232. package/dist/link/SkipToMainContent.js +4 -4
  233. package/dist/link/SkipToMainContent.js.map +1 -1
  234. package/dist/list/List.d.ts +3 -2
  235. package/dist/list/List.js +3 -4
  236. package/dist/list/List.js.map +1 -1
  237. package/dist/list/ListItem.d.ts +3 -2
  238. package/dist/list/ListItem.js +3 -4
  239. package/dist/list/ListItem.js.map +1 -1
  240. package/dist/list/ListItemLink.d.ts +3 -2
  241. package/dist/list/ListItemLink.js +3 -4
  242. package/dist/list/ListItemLink.js.map +1 -1
  243. package/dist/list/ListItemText.d.ts +3 -2
  244. package/dist/list/ListItemText.js +3 -4
  245. package/dist/list/ListItemText.js.map +1 -1
  246. package/dist/list/ListSubheader.d.ts +3 -2
  247. package/dist/list/ListSubheader.js +3 -4
  248. package/dist/list/ListSubheader.js.map +1 -1
  249. package/dist/menu/DropdownMenu.js.map +1 -1
  250. package/dist/menu/Menu.d.ts +4 -2
  251. package/dist/menu/Menu.js +5 -4
  252. package/dist/menu/Menu.js.map +1 -1
  253. package/dist/menu/MenuBar.d.ts +3 -1
  254. package/dist/menu/MenuBar.js +3 -4
  255. package/dist/menu/MenuBar.js.map +1 -1
  256. package/dist/menu/MenuButton.d.ts +2 -1
  257. package/dist/menu/MenuButton.js +3 -4
  258. package/dist/menu/MenuButton.js.map +1 -1
  259. package/dist/menu/MenuItem.d.ts +3 -1
  260. package/dist/menu/MenuItem.js +3 -4
  261. package/dist/menu/MenuItem.js.map +1 -1
  262. package/dist/menu/MenuItemButton.d.ts +2 -1
  263. package/dist/menu/MenuItemButton.js +4 -4
  264. package/dist/menu/MenuItemButton.js.map +1 -1
  265. package/dist/menu/MenuItemCheckbox.d.ts +2 -1
  266. package/dist/menu/MenuItemCheckbox.js +4 -4
  267. package/dist/menu/MenuItemCheckbox.js.map +1 -1
  268. package/dist/menu/MenuItemCircularProgress.d.ts +3 -2
  269. package/dist/menu/MenuItemCircularProgress.js +3 -4
  270. package/dist/menu/MenuItemCircularProgress.js.map +1 -1
  271. package/dist/menu/MenuItemFileInput.d.ts +2 -2
  272. package/dist/menu/MenuItemFileInput.js +3 -4
  273. package/dist/menu/MenuItemFileInput.js.map +1 -1
  274. package/dist/menu/MenuItemGroup.d.ts +3 -3
  275. package/dist/menu/MenuItemGroup.js +4 -4
  276. package/dist/menu/MenuItemGroup.js.map +1 -1
  277. package/dist/menu/MenuItemInputToggle.d.ts +3 -2
  278. package/dist/menu/MenuItemInputToggle.js +3 -4
  279. package/dist/menu/MenuItemInputToggle.js.map +1 -1
  280. package/dist/menu/MenuItemRadio.d.ts +3 -1
  281. package/dist/menu/MenuItemRadio.js +4 -4
  282. package/dist/menu/MenuItemRadio.js.map +1 -1
  283. package/dist/menu/MenuItemSeparator.d.ts +3 -2
  284. package/dist/menu/MenuItemSeparator.js +3 -4
  285. package/dist/menu/MenuItemSeparator.js.map +1 -1
  286. package/dist/menu/MenuItemSwitch.d.ts +2 -1
  287. package/dist/menu/MenuItemSwitch.js +4 -4
  288. package/dist/menu/MenuItemSwitch.js.map +1 -1
  289. package/dist/menu/MenuItemTextField.d.ts +2 -2
  290. package/dist/menu/MenuItemTextField.js +3 -4
  291. package/dist/menu/MenuItemTextField.js.map +1 -1
  292. package/dist/menu/MenuVisibilityProvider.d.ts +3 -3
  293. package/dist/menu/MenuVisibilityProvider.js.map +1 -1
  294. package/dist/menu/MenuWidget.d.ts +4 -4
  295. package/dist/menu/MenuWidget.js +4 -4
  296. package/dist/menu/MenuWidget.js.map +1 -1
  297. package/dist/menu/useContextMenu.d.ts +4 -4
  298. package/dist/menu/useContextMenu.js.map +1 -1
  299. package/dist/movement/types.d.ts +5 -5
  300. package/dist/movement/types.js.map +1 -1
  301. package/dist/navigation/CollapsibleNavGroup.d.ts +2 -2
  302. package/dist/navigation/CollapsibleNavGroup.js +3 -4
  303. package/dist/navigation/CollapsibleNavGroup.js.map +1 -1
  304. package/dist/navigation/NavGroup.d.ts +3 -2
  305. package/dist/navigation/NavGroup.js +3 -4
  306. package/dist/navigation/NavGroup.js.map +1 -1
  307. package/dist/navigation/NavItem.d.ts +3 -2
  308. package/dist/navigation/NavItem.js +3 -4
  309. package/dist/navigation/NavItem.js.map +1 -1
  310. package/dist/navigation/NavItemButton.d.ts +2 -2
  311. package/dist/navigation/NavItemButton.js +3 -4
  312. package/dist/navigation/NavItemButton.js.map +1 -1
  313. package/dist/navigation/NavItemLink.d.ts +3 -2
  314. package/dist/navigation/NavItemLink.js +4 -4
  315. package/dist/navigation/NavItemLink.js.map +1 -1
  316. package/dist/navigation/NavSubheader.d.ts +2 -1
  317. package/dist/navigation/NavSubheader.js +3 -4
  318. package/dist/navigation/NavSubheader.js.map +1 -1
  319. package/dist/navigation/Navigation.d.ts +1 -1
  320. package/dist/navigation/Navigation.js +1 -1
  321. package/dist/navigation/Navigation.js.map +1 -1
  322. package/dist/navigation/types.d.ts +5 -2
  323. package/dist/navigation/types.js.map +1 -1
  324. package/dist/navigation/useActiveHeadingId.js +1 -1
  325. package/dist/navigation/useActiveHeadingId.js.map +1 -1
  326. package/dist/overlay/Overlay.d.ts +3 -2
  327. package/dist/overlay/Overlay.js +3 -4
  328. package/dist/overlay/Overlay.js.map +1 -1
  329. package/dist/positioning/useFixedPositioning.d.ts +1 -1
  330. package/dist/positioning/useFixedPositioning.js.map +1 -1
  331. package/dist/progress/CircularProgress.d.ts +2 -2
  332. package/dist/progress/CircularProgress.js +4 -4
  333. package/dist/progress/CircularProgress.js.map +1 -1
  334. package/dist/progress/LinearProgress.d.ts +2 -2
  335. package/dist/progress/LinearProgress.js +4 -4
  336. package/dist/progress/LinearProgress.js.map +1 -1
  337. package/dist/progress/types.d.ts +2 -0
  338. package/dist/progress/types.js.map +1 -1
  339. package/dist/responsive-item/ResponsiveItem.d.ts +3 -2
  340. package/dist/responsive-item/ResponsiveItem.js +3 -4
  341. package/dist/responsive-item/ResponsiveItem.js.map +1 -1
  342. package/dist/responsive-item/ResponsiveItemOverlay.d.ts +3 -2
  343. package/dist/responsive-item/ResponsiveItemOverlay.js +3 -4
  344. package/dist/responsive-item/ResponsiveItemOverlay.js.map +1 -1
  345. package/dist/segmented-button/SegmentedButton.d.ts +3 -2
  346. package/dist/segmented-button/SegmentedButton.js +3 -4
  347. package/dist/segmented-button/SegmentedButton.js.map +1 -1
  348. package/dist/segmented-button/SegmentedButtonContainer.d.ts +4 -3
  349. package/dist/segmented-button/SegmentedButtonContainer.js +4 -5
  350. package/dist/segmented-button/SegmentedButtonContainer.js.map +1 -1
  351. package/dist/sheet/Sheet.d.ts +2 -1
  352. package/dist/sheet/Sheet.js +3 -4
  353. package/dist/sheet/Sheet.js.map +1 -1
  354. package/dist/snackbar/Snackbar.d.ts +3 -2
  355. package/dist/snackbar/Snackbar.js +3 -4
  356. package/dist/snackbar/Snackbar.js.map +1 -1
  357. package/dist/snackbar/Toast.d.ts +3 -2
  358. package/dist/snackbar/Toast.js +4 -4
  359. package/dist/snackbar/Toast.js.map +1 -1
  360. package/dist/snackbar/ToastActionButton.d.ts +2 -1
  361. package/dist/snackbar/ToastActionButton.js +3 -4
  362. package/dist/snackbar/ToastActionButton.js.map +1 -1
  363. package/dist/snackbar/ToastCloseButton.d.ts +2 -1
  364. package/dist/snackbar/ToastCloseButton.js +3 -4
  365. package/dist/snackbar/ToastCloseButton.js.map +1 -1
  366. package/dist/snackbar/ToastContent.d.ts +3 -2
  367. package/dist/snackbar/ToastContent.js +4 -4
  368. package/dist/snackbar/ToastContent.js.map +1 -1
  369. package/dist/spinbutton/SpinButton.d.ts +4 -3
  370. package/dist/spinbutton/SpinButton.js +3 -4
  371. package/dist/spinbutton/SpinButton.js.map +1 -1
  372. package/dist/spinbutton/types.d.ts +1 -1
  373. package/dist/spinbutton/types.js.map +1 -1
  374. package/dist/table/StickyTableSection.d.ts +3 -2
  375. package/dist/table/StickyTableSection.js +3 -4
  376. package/dist/table/StickyTableSection.js.map +1 -1
  377. package/dist/table/Table.d.ts +3 -2
  378. package/dist/table/Table.js +4 -4
  379. package/dist/table/Table.js.map +1 -1
  380. package/dist/table/TableBody.d.ts +3 -2
  381. package/dist/table/TableBody.js +4 -4
  382. package/dist/table/TableBody.js.map +1 -1
  383. package/dist/table/TableCell.d.ts +3 -2
  384. package/dist/table/TableCell.js +3 -4
  385. package/dist/table/TableCell.js.map +1 -1
  386. package/dist/table/TableCellContent.d.ts +3 -2
  387. package/dist/table/TableCellContent.js +3 -4
  388. package/dist/table/TableCellContent.js.map +1 -1
  389. package/dist/table/TableCheckbox.d.ts +3 -2
  390. package/dist/table/TableCheckbox.js +3 -4
  391. package/dist/table/TableCheckbox.js.map +1 -1
  392. package/dist/table/TableContainer.d.ts +5 -3
  393. package/dist/table/TableContainer.js +4 -4
  394. package/dist/table/TableContainer.js.map +1 -1
  395. package/dist/table/TableContainerProvider.d.ts +1 -1
  396. package/dist/table/TableContainerProvider.js.map +1 -1
  397. package/dist/table/TableFooter.d.ts +3 -2
  398. package/dist/table/TableFooter.js +4 -5
  399. package/dist/table/TableFooter.js.map +1 -1
  400. package/dist/table/TableHeader.d.ts +3 -2
  401. package/dist/table/TableHeader.js +4 -5
  402. package/dist/table/TableHeader.js.map +1 -1
  403. package/dist/table/TableRadio.d.ts +3 -2
  404. package/dist/table/TableRadio.js +3 -4
  405. package/dist/table/TableRadio.js.map +1 -1
  406. package/dist/table/TableRow.d.ts +3 -2
  407. package/dist/table/TableRow.js +3 -4
  408. package/dist/table/TableRow.js.map +1 -1
  409. package/dist/tabs/SimpleTabPanel.d.ts +3 -2
  410. package/dist/tabs/SimpleTabPanel.js +3 -4
  411. package/dist/tabs/SimpleTabPanel.js.map +1 -1
  412. package/dist/tabs/SimpleTabPanels.d.ts +3 -2
  413. package/dist/tabs/SimpleTabPanels.js +3 -4
  414. package/dist/tabs/SimpleTabPanels.js.map +1 -1
  415. package/dist/tabs/TabList.d.ts +3 -2
  416. package/dist/tabs/TabList.js +4 -4
  417. package/dist/tabs/TabList.js.map +1 -1
  418. package/dist/tabs/TabListScrollButton.d.ts +3 -2
  419. package/dist/tabs/TabListScrollButton.js +4 -4
  420. package/dist/tabs/TabListScrollButton.js.map +1 -1
  421. package/dist/tabs/useTabList.d.ts +2 -2
  422. package/dist/tabs/useTabList.js.map +1 -1
  423. package/dist/theme/useCSSVariables.d.ts +1 -1
  424. package/dist/theme/useCSSVariables.js.map +1 -1
  425. package/dist/tooltip/Tooltip.d.ts +3 -2
  426. package/dist/tooltip/Tooltip.js +3 -4
  427. package/dist/tooltip/Tooltip.js.map +1 -1
  428. package/dist/tooltip/useTooltip.d.ts +3 -3
  429. package/dist/tooltip/useTooltip.js.map +1 -1
  430. package/dist/transition/SkeletonPlaceholder.d.ts +3 -2
  431. package/dist/transition/SkeletonPlaceholder.js +3 -4
  432. package/dist/transition/SkeletonPlaceholder.js.map +1 -1
  433. package/dist/transition/Slide.d.ts +3 -2
  434. package/dist/transition/Slide.js +3 -4
  435. package/dist/transition/Slide.js.map +1 -1
  436. package/dist/transition/SlideContainer.d.ts +3 -2
  437. package/dist/transition/SlideContainer.js +3 -4
  438. package/dist/transition/SlideContainer.js.map +1 -1
  439. package/dist/tree/TreeGroup.d.ts +2 -2
  440. package/dist/tree/TreeGroup.js +3 -4
  441. package/dist/tree/TreeGroup.js.map +1 -1
  442. package/dist/tree/TreeProvider.d.ts +2 -3
  443. package/dist/tree/TreeProvider.js.map +1 -1
  444. package/dist/tree/useTreeMovement.d.ts +6 -7
  445. package/dist/tree/useTreeMovement.js.map +1 -1
  446. package/dist/types.d.ts +1 -15
  447. package/dist/types.js.map +1 -1
  448. package/dist/typography/Mark.d.ts +3 -2
  449. package/dist/typography/Mark.js +3 -4
  450. package/dist/typography/Mark.js.map +1 -1
  451. package/dist/typography/SrOnly.d.ts +3 -2
  452. package/dist/typography/SrOnly.js +3 -4
  453. package/dist/typography/SrOnly.js.map +1 -1
  454. package/dist/typography/TextContainer.d.ts +3 -2
  455. package/dist/typography/TextContainer.js +3 -4
  456. package/dist/typography/TextContainer.js.map +1 -1
  457. package/dist/typography/Typography.d.ts +3 -2
  458. package/dist/typography/Typography.js +3 -4
  459. package/dist/typography/Typography.js.map +1 -1
  460. package/dist/useAsyncFunction.d.ts +3 -2
  461. package/dist/useAsyncFunction.js.map +1 -1
  462. package/dist/useDebouncedFunction.js +1 -1
  463. package/dist/useDebouncedFunction.js.map +1 -1
  464. package/dist/useDropzone.js +1 -1
  465. package/dist/useDropzone.js.map +1 -1
  466. package/dist/useEnsuredRef.d.ts +3 -3
  467. package/dist/useEnsuredRef.js +1 -1
  468. package/dist/useEnsuredRef.js.map +1 -1
  469. package/dist/useThrottledFunction.js +3 -3
  470. package/dist/useThrottledFunction.js.map +1 -1
  471. package/dist/useUnmounted.d.ts +2 -2
  472. package/dist/useUnmounted.js.map +1 -1
  473. package/dist/utils/applyRef.d.ts +1 -1
  474. package/dist/utils/applyRef.js.map +1 -1
  475. package/dist/window-splitter/WindowSplitter.d.ts +3 -2
  476. package/dist/window-splitter/WindowSplitter.js +3 -4
  477. package/dist/window-splitter/WindowSplitter.js.map +1 -1
  478. package/package.json +9 -9
  479. package/src/app-bar/AppBar.tsx +54 -54
  480. package/src/app-bar/AppBarTitle.tsx +29 -27
  481. package/src/autocomplete/AutocompleteChip.tsx +4 -6
  482. package/src/autocomplete/types.ts +2 -0
  483. package/src/autocomplete/utils.ts +4 -4
  484. package/src/avatar/Avatar.tsx +47 -45
  485. package/src/badge/Badge.tsx +17 -11
  486. package/src/box/Box.tsx +51 -50
  487. package/src/button/AsyncButton.tsx +125 -119
  488. package/src/button/Button.tsx +74 -73
  489. package/src/button/ButtonUnstyled.tsx +9 -9
  490. package/src/button/FloatingActionButton.tsx +9 -7
  491. package/src/button/TooltippedButton.tsx +6 -6
  492. package/src/card/Card.tsx +36 -35
  493. package/src/card/CardContent.tsx +31 -28
  494. package/src/card/CardFooter.tsx +22 -16
  495. package/src/card/CardHeader.tsx +36 -30
  496. package/src/card/CardSubtitle.tsx +8 -6
  497. package/src/card/CardTitle.tsx +26 -25
  498. package/src/card/ClickableCard.tsx +57 -54
  499. package/src/chip/Chip.tsx +122 -120
  500. package/src/datetime/NativeDateField.tsx +7 -7
  501. package/src/datetime/NativeTimeField.tsx +7 -7
  502. package/src/dialog/Dialog.tsx +156 -150
  503. package/src/dialog/DialogContainer.tsx +35 -29
  504. package/src/dialog/DialogContent.tsx +26 -19
  505. package/src/dialog/DialogFooter.tsx +22 -19
  506. package/src/dialog/DialogHeader.tsx +24 -23
  507. package/src/dialog/DialogTitle.tsx +27 -26
  508. package/src/dialog/FixedDialog.tsx +70 -69
  509. package/src/divider/Divider.tsx +32 -26
  510. package/src/draggable/useDraggable.ts +3 -6
  511. package/src/draggable/utils.ts +1 -1
  512. package/src/expansion-panel/ExpansionList.tsx +24 -19
  513. package/src/expansion-panel/ExpansionPanel.tsx +11 -6
  514. package/src/expansion-panel/ExpansionPanelHeader.tsx +9 -6
  515. package/src/files/FileInput.tsx +79 -79
  516. package/src/focus/useFocusContainer.ts +1 -1
  517. package/src/form/Checkbox.tsx +6 -6
  518. package/src/form/Fieldset.tsx +33 -28
  519. package/src/form/Form.tsx +26 -25
  520. package/src/form/FormMessage.tsx +13 -7
  521. package/src/form/FormMessageContainer.tsx +12 -9
  522. package/src/form/FormMessageCounter.tsx +8 -7
  523. package/src/form/InputToggle.tsx +105 -107
  524. package/src/form/InputToggleIcon.tsx +12 -6
  525. package/src/form/Label.tsx +40 -41
  526. package/src/form/Legend.tsx +44 -43
  527. package/src/form/NativeSelect.tsx +116 -114
  528. package/src/form/OptGroup.tsx +15 -15
  529. package/src/form/Option.tsx +123 -122
  530. package/src/form/Password.tsx +66 -67
  531. package/src/form/Radio.tsx +6 -6
  532. package/src/form/ResizingTextAreaWrapper.tsx +7 -6
  533. package/src/form/SliderContainer.tsx +35 -29
  534. package/src/form/SliderThumb.tsx +8 -6
  535. package/src/form/SliderTrack.tsx +80 -80
  536. package/src/form/Switch.tsx +80 -79
  537. package/src/form/SwitchTrack.tsx +35 -34
  538. package/src/form/TextArea.tsx +167 -165
  539. package/src/form/TextField.tsx +106 -104
  540. package/src/form/TextFieldAddon.tsx +33 -32
  541. package/src/form/TextFieldContainer.tsx +8 -6
  542. package/src/form/sliderUtils.ts +1 -1
  543. package/src/form/types.ts +15 -5
  544. package/src/form/useCombobox.ts +6 -10
  545. package/src/form/useFormReset.ts +1 -1
  546. package/src/form/useTextField.ts +4 -4
  547. package/src/hoverMode/useHoverMode.ts +1 -1
  548. package/src/hoverMode/useHoverModeProvider.ts +13 -8
  549. package/src/icon/FontIcon.tsx +32 -30
  550. package/src/icon/IconRotator.tsx +30 -28
  551. package/src/icon/MaterialIcon.tsx +36 -30
  552. package/src/icon/MaterialSymbol.tsx +50 -44
  553. package/src/icon/SVGIcon.tsx +47 -41
  554. package/src/layout/LayoutAppBar.tsx +23 -28
  555. package/src/layout/LayoutNav.tsx +68 -62
  556. package/src/layout/LayoutWindowSplitter.tsx +9 -7
  557. package/src/layout/Main.tsx +30 -29
  558. package/src/link/Link.tsx +16 -11
  559. package/src/link/SkipToMainContent.tsx +6 -6
  560. package/src/list/List.tsx +31 -29
  561. package/src/list/ListItem.tsx +126 -125
  562. package/src/list/ListItemLink.tsx +128 -126
  563. package/src/list/ListItemText.tsx +42 -37
  564. package/src/list/ListSubheader.tsx +27 -26
  565. package/src/menu/DropdownMenu.tsx +2 -2
  566. package/src/menu/Menu.tsx +327 -326
  567. package/src/menu/MenuBar.tsx +51 -50
  568. package/src/menu/MenuButton.tsx +69 -70
  569. package/src/menu/MenuItem.tsx +37 -37
  570. package/src/menu/MenuItemButton.tsx +132 -133
  571. package/src/menu/MenuItemCheckbox.tsx +6 -7
  572. package/src/menu/MenuItemCircularProgress.tsx +13 -6
  573. package/src/menu/MenuItemFileInput.tsx +4 -6
  574. package/src/menu/MenuItemGroup.tsx +18 -18
  575. package/src/menu/MenuItemInputToggle.tsx +8 -6
  576. package/src/menu/MenuItemRadio.tsx +6 -6
  577. package/src/menu/MenuItemSeparator.tsx +7 -7
  578. package/src/menu/MenuItemSwitch.tsx +6 -6
  579. package/src/menu/MenuItemTextField.tsx +5 -7
  580. package/src/menu/MenuVisibilityProvider.tsx +3 -2
  581. package/src/menu/MenuWidget.tsx +123 -119
  582. package/src/menu/useContextMenu.ts +7 -4
  583. package/src/movement/types.ts +5 -9
  584. package/src/navigation/CollapsibleNavGroup.tsx +10 -6
  585. package/src/navigation/NavGroup.tsx +18 -19
  586. package/src/navigation/NavItem.tsx +16 -11
  587. package/src/navigation/NavItemButton.tsx +69 -66
  588. package/src/navigation/NavItemLink.tsx +102 -100
  589. package/src/navigation/NavSubheader.tsx +14 -16
  590. package/src/navigation/Navigation.tsx +1 -1
  591. package/src/navigation/types.ts +13 -4
  592. package/src/navigation/useActiveHeadingId.ts +1 -1
  593. package/src/overlay/Overlay.tsx +66 -65
  594. package/src/positioning/useFixedPositioning.ts +1 -1
  595. package/src/progress/CircularProgress.tsx +6 -6
  596. package/src/progress/LinearProgress.tsx +6 -6
  597. package/src/progress/types.ts +4 -0
  598. package/src/responsive-item/ResponsiveItem.tsx +29 -28
  599. package/src/responsive-item/ResponsiveItemOverlay.tsx +9 -8
  600. package/src/segmented-button/SegmentedButton.tsx +11 -6
  601. package/src/segmented-button/SegmentedButtonContainer.tsx +14 -8
  602. package/src/sheet/Sheet.tsx +42 -43
  603. package/src/snackbar/Snackbar.tsx +44 -38
  604. package/src/snackbar/Toast.tsx +110 -109
  605. package/src/snackbar/ToastActionButton.tsx +6 -6
  606. package/src/snackbar/ToastCloseButton.tsx +4 -6
  607. package/src/snackbar/ToastContent.tsx +56 -49
  608. package/src/spinbutton/SpinButton.tsx +9 -8
  609. package/src/spinbutton/types.ts +1 -1
  610. package/src/table/StickyTableSection.tsx +8 -6
  611. package/src/table/Table.tsx +47 -41
  612. package/src/table/TableBody.tsx +46 -42
  613. package/src/table/TableCell.tsx +83 -81
  614. package/src/table/TableCellContent.tsx +11 -6
  615. package/src/table/TableCheckbox.tsx +6 -6
  616. package/src/table/TableContainer.tsx +31 -26
  617. package/src/table/TableContainerProvider.ts +1 -1
  618. package/src/table/TableFooter.tsx +7 -12
  619. package/src/table/TableHeader.tsx +15 -9
  620. package/src/table/TableRadio.tsx +59 -58
  621. package/src/table/TableRow.tsx +34 -33
  622. package/src/tabs/SimpleTabPanel.tsx +18 -13
  623. package/src/tabs/SimpleTabPanels.tsx +11 -7
  624. package/src/tabs/TabList.tsx +106 -105
  625. package/src/tabs/TabListScrollButton.tsx +9 -6
  626. package/src/tabs/useTabList.ts +2 -2
  627. package/src/theme/useCSSVariables.ts +1 -1
  628. package/src/tooltip/Tooltip.tsx +61 -61
  629. package/src/tooltip/useTooltip.ts +2 -3
  630. package/src/transition/SkeletonPlaceholder.tsx +8 -6
  631. package/src/transition/Slide.tsx +54 -48
  632. package/src/transition/SlideContainer.tsx +16 -16
  633. package/src/tree/TreeGroup.tsx +54 -55
  634. package/src/tree/TreeProvider.tsx +2 -2
  635. package/src/tree/useTreeMovement.ts +6 -6
  636. package/src/types.ts +1 -16
  637. package/src/typography/Mark.tsx +16 -11
  638. package/src/typography/SrOnly.tsx +41 -35
  639. package/src/typography/TextContainer.tsx +12 -12
  640. package/src/typography/Typography.tsx +42 -41
  641. package/src/useAsyncFunction.ts +3 -3
  642. package/src/useDebouncedFunction.ts +1 -1
  643. package/src/useDropzone.ts +1 -1
  644. package/src/useEnsuredRef.ts +3 -3
  645. package/src/useThrottledFunction.ts +3 -3
  646. package/src/useUnmounted.ts +2 -4
  647. package/src/utils/applyRef.ts +2 -2
  648. package/src/window-splitter/WindowSplitter.tsx +6 -6
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { type HTMLAttributes, forwardRef } from "react";
3
+ import { type HTMLAttributes, type ReactElement, type Ref } from "react";
4
4
 
5
5
  import { useSsr } from "../SsrProvider.js";
6
6
  import { Portal } from "../portal/Portal.js";
@@ -28,6 +28,8 @@ export interface OverlayProps
28
28
  BaseOverlayClassNameOptions,
29
29
  CSSTransitionComponentProps,
30
30
  TransitionActions {
31
+ ref?: Ref<HTMLSpanElement>;
32
+
31
33
  /**
32
34
  * Set this to `true` if the overlay should be rendered with an `opacity: 0`
33
35
  * and disabling the animation. This is useful if you'd like a "close on
@@ -80,69 +82,68 @@ export interface OverlayProps
80
82
  * @since 6.0.0 Removed the `onRequestClose` prop in favor of using
81
83
  * the `onClick` prop instead.
82
84
  */
83
- export const Overlay = forwardRef<HTMLSpanElement, OverlayProps>(
84
- function Overlay(props, nodeRef) {
85
- const {
86
- children,
87
- className,
88
- visible,
89
- noOpacity = false,
90
- clickable = !noOpacity,
91
- temporary = true,
92
- timeout = DEFAULT_OVERLAY_TIMEOUT,
93
- classNames = DEFAULT_OVERLAY_CLASSNAMES,
94
- disableTransition = false,
95
- align = "center",
96
- justify = "center",
97
- appear,
98
- enter,
99
- exit,
100
- onEnter,
101
- onEntering,
102
- onEntered,
103
- onExit,
104
- onExiting,
105
- onExited,
106
- exitedHidden = true,
107
- disablePortal: propDisablePortal = false,
108
- ...remaining
109
- } = props;
85
+ export function Overlay(props: OverlayProps): ReactElement {
86
+ const {
87
+ ref: nodeRef,
88
+ children,
89
+ className,
90
+ visible,
91
+ noOpacity = false,
92
+ clickable = !noOpacity,
93
+ temporary = true,
94
+ timeout = DEFAULT_OVERLAY_TIMEOUT,
95
+ classNames = DEFAULT_OVERLAY_CLASSNAMES,
96
+ disableTransition = false,
97
+ align = "center",
98
+ justify = "center",
99
+ appear,
100
+ enter,
101
+ exit,
102
+ onEnter,
103
+ onEntering,
104
+ onEntered,
105
+ onExit,
106
+ onExiting,
107
+ onExited,
108
+ exitedHidden = true,
109
+ disablePortal: propDisablePortal = false,
110
+ ...remaining
111
+ } = props;
110
112
 
111
- const ssr = useSsr();
112
- const { elementProps, rendered, disablePortal } = useCSSTransition({
113
- nodeRef,
114
- transitionIn: visible,
115
- timeout: noOpacity ? 0 : timeout,
116
- classNames: noOpacity ? "" : classNames,
117
- className: overlay({
118
- visible,
119
- clickable,
120
- align,
121
- justify,
122
- className,
123
- }),
124
- appear: appear && !disableTransition && !ssr,
125
- enter: enter && !disableTransition,
126
- exit: exit && !disableTransition,
127
- onEnter,
128
- onEntering,
129
- onEntered,
130
- onExit,
131
- onExiting,
132
- onExited,
133
- temporary,
134
- exitedHidden,
135
- disablePortal: propDisablePortal,
136
- });
113
+ const ssr = useSsr();
114
+ const { elementProps, rendered, disablePortal } = useCSSTransition({
115
+ nodeRef,
116
+ transitionIn: visible,
117
+ timeout: noOpacity ? 0 : timeout,
118
+ classNames: noOpacity ? "" : classNames,
119
+ className: overlay({
120
+ visible,
121
+ clickable,
122
+ align,
123
+ justify,
124
+ className,
125
+ }),
126
+ appear: appear && !disableTransition && !ssr,
127
+ enter: enter && !disableTransition,
128
+ exit: exit && !disableTransition,
129
+ onEnter,
130
+ onEntering,
131
+ onEntered,
132
+ onExit,
133
+ onExiting,
134
+ onExited,
135
+ temporary,
136
+ exitedHidden,
137
+ disablePortal: propDisablePortal,
138
+ });
137
139
 
138
- return (
139
- <Portal disabled={disablePortal}>
140
- {rendered && (
141
- <span {...remaining} {...elementProps}>
142
- {children}
143
- </span>
144
- )}
145
- </Portal>
146
- );
147
- }
148
- );
140
+ return (
141
+ <Portal disabled={disablePortal}>
142
+ {rendered && (
143
+ <span {...remaining} {...elementProps}>
144
+ {children}
145
+ </span>
146
+ )}
147
+ </Portal>
148
+ );
149
+ }
@@ -111,7 +111,7 @@ export interface FixedPositioningOptions<
111
111
  * A ref pointing to an element that another element should be fixed to. This
112
112
  * **must** be provided for the positioning to work.
113
113
  */
114
- fixedTo: RefObject<FixedToElement>;
114
+ fixedTo: RefObject<FixedToElement | null>;
115
115
 
116
116
  /**
117
117
  * An optional function that can be used to override positioning options if
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  type CSSProperties,
3
3
  type HTMLAttributes,
4
- forwardRef,
4
+ type ReactElement,
5
5
  useMemo,
6
6
  } from "react";
7
7
 
@@ -128,11 +128,11 @@ export interface CircularProgressProps
128
128
  * @since 6.0.0 Updated the determinate circular progress to no longer
129
129
  * rotate while increasing the value and require a label for accessibility.
130
130
  */
131
- export const CircularProgress = forwardRef<
132
- HTMLSpanElement,
133
- LabelRequiredForA11y<CircularProgressProps>
134
- >(function CircularProgress(props, ref) {
131
+ export function CircularProgress(
132
+ props: LabelRequiredForA11y<CircularProgressProps>
133
+ ): ReactElement {
135
134
  const {
135
+ ref,
136
136
  id: propId,
137
137
  className,
138
138
  svgStyle,
@@ -212,4 +212,4 @@ export const CircularProgress = forwardRef<
212
212
  </svg>
213
213
  </span>
214
214
  );
215
- });
215
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  type CSSProperties,
3
3
  type HTMLAttributes,
4
- forwardRef,
4
+ type ReactElement,
5
5
  useMemo,
6
6
  } from "react";
7
7
 
@@ -91,11 +91,11 @@ export interface LinearProgressProps
91
91
  * @since 6.0.0 Supports rendering as any of the theme colors and
92
92
  * requires a label for accessibility.
93
93
  */
94
- export const LinearProgress = forwardRef<
95
- HTMLSpanElement,
96
- LabelRequiredForA11y<LinearProgressProps>
97
- >(function LinearProgress(props, ref) {
94
+ export function LinearProgress(
95
+ props: LabelRequiredForA11y<LinearProgressProps>
96
+ ): ReactElement {
98
97
  const {
98
+ ref,
99
99
  id: propId,
100
100
  style: propStyle,
101
101
  className,
@@ -172,4 +172,4 @@ export const LinearProgress = forwardRef<
172
172
  />
173
173
  </span>
174
174
  );
175
- });
175
+ }
@@ -1,3 +1,5 @@
1
+ import { type Ref } from "react";
2
+
1
3
  import { type ThemeColor } from "../cssUtils.js";
2
4
 
3
5
  /**
@@ -11,6 +13,8 @@ export type ProgressTheme = ThemeColor | "current-color";
11
13
  * @since 6.0.0 Added the `theme` prop.
12
14
  */
13
15
  export interface ProgressProps {
16
+ ref?: Ref<HTMLSpanElement>;
17
+
14
18
  /**
15
19
  * The id for the progress component. This is required for accessibility since
16
20
  * the progress will 99% of the time be describing the progress of something
@@ -1,4 +1,4 @@
1
- import { type HTMLAttributes, forwardRef } from "react";
1
+ import { type HTMLAttributes, type ReactElement, type Ref } from "react";
2
2
 
3
3
  import {
4
4
  type ResponsiveItemClassNameOptions,
@@ -15,7 +15,9 @@ import {
15
15
  * {@link ResponsiveItemProps.responsive} prop.
16
16
  */
17
17
  export interface ResponsiveItemProps
18
- extends HTMLAttributes<HTMLSpanElement>, ResponsiveItemClassNameOptions {}
18
+ extends HTMLAttributes<HTMLSpanElement>, ResponsiveItemClassNameOptions {
19
+ ref?: Ref<HTMLSpanElement>;
20
+ }
19
21
 
20
22
  /**
21
23
  * @example Image Example
@@ -68,30 +70,29 @@ export interface ResponsiveItemProps
68
70
  * @since 6.0.0 Renamed from `MediaContainer` to
69
71
  * `ResponsiveItem` and renders a `<span>` instead of a `<div>`.
70
72
  */
71
- export const ResponsiveItem = forwardRef<HTMLSpanElement, ResponsiveItemProps>(
72
- function ResponsiveItem(props, ref) {
73
- const {
74
- className,
75
- fullWidth = false,
76
- aspectRatio,
77
- responsive = "auto",
78
- children,
79
- ...remaining
80
- } = props;
73
+ export function ResponsiveItem(props: ResponsiveItemProps): ReactElement {
74
+ const {
75
+ ref,
76
+ className,
77
+ fullWidth = false,
78
+ aspectRatio,
79
+ responsive = "auto",
80
+ children,
81
+ ...remaining
82
+ } = props;
81
83
 
82
- return (
83
- <span
84
- {...remaining}
85
- ref={ref}
86
- className={responsiveItem({
87
- className,
88
- fullWidth,
89
- aspectRatio,
90
- responsive,
91
- })}
92
- >
93
- {children}
94
- </span>
95
- );
96
- }
97
- );
84
+ return (
85
+ <span
86
+ {...remaining}
87
+ ref={ref}
88
+ className={responsiveItem({
89
+ className,
90
+ fullWidth,
91
+ aspectRatio,
92
+ responsive,
93
+ })}
94
+ >
95
+ {children}
96
+ </span>
97
+ );
98
+ }
@@ -1,4 +1,4 @@
1
- import { type HTMLAttributes, forwardRef } from "react";
1
+ import { type HTMLAttributes, type ReactElement, type Ref } from "react";
2
2
 
3
3
  import {
4
4
  type ResponsiveItemOverlayClassNameOptions,
@@ -14,7 +14,9 @@ import {
14
14
  export interface ResponsiveItemOverlayProps
15
15
  extends
16
16
  HTMLAttributes<HTMLSpanElement>,
17
- ResponsiveItemOverlayClassNameOptions {}
17
+ ResponsiveItemOverlayClassNameOptions {
18
+ ref?: Ref<HTMLSpanElement>;
19
+ }
18
20
 
19
21
  /**
20
22
  * @example Simple Example
@@ -43,11 +45,10 @@ export interface ResponsiveItemOverlayProps
43
45
  * @since 6.0.0 Renamed from `MediaOverlay` to `ResponsiveItemOverlay`
44
46
  * and renders as a `<span>` instead of a `<div>`.
45
47
  */
46
- export const ResponsiveItemOverlay = forwardRef<
47
- HTMLSpanElement,
48
- ResponsiveItemOverlayProps
49
- >(function ResponsiveItemOverlay(props, ref) {
50
- const { className, children, position = "bottom", ...remaining } = props;
48
+ export function ResponsiveItemOverlay(
49
+ props: ResponsiveItemOverlayProps
50
+ ): ReactElement {
51
+ const { ref, className, children, position = "bottom", ...remaining } = props;
51
52
 
52
53
  return (
53
54
  <span
@@ -58,4 +59,4 @@ export const ResponsiveItemOverlay = forwardRef<
58
59
  {children}
59
60
  </span>
60
61
  );
61
- });
62
+ }
@@ -1,6 +1,11 @@
1
1
  "use client";
2
2
 
3
- import { type ButtonHTMLAttributes, type ReactNode, forwardRef } from "react";
3
+ import {
4
+ type ButtonHTMLAttributes,
5
+ type ReactElement,
6
+ type ReactNode,
7
+ type Ref,
8
+ } from "react";
4
9
 
5
10
  import { getIcon } from "../icon/config.js";
6
11
  import { type ComponentWithRippleProps } from "../interaction/types.js";
@@ -28,6 +33,8 @@ export interface SegmentedButtonProps
28
33
  BaseMaxWidthTransitionOptions,
29
34
  BaseSegmentedButtonClassNameOptions,
30
35
  ComponentWithRippleProps {
36
+ ref?: Ref<HTMLButtonElement>;
37
+
31
38
  /** @defaultValue `getIcon("selected")` */
32
39
  selectedIcon?: ReactNode;
33
40
 
@@ -102,11 +109,9 @@ export interface SegmentedButtonProps
102
109
  * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
103
110
  * @since 6.0.0
104
111
  */
105
- export const SegmentedButton = forwardRef<
106
- HTMLButtonElement,
107
- SegmentedButtonProps
108
- >(function SegmentedButton(props, ref) {
112
+ export function SegmentedButton(props: SegmentedButtonProps): ReactElement {
109
113
  const {
114
+ ref,
110
115
  className,
111
116
  type = "button",
112
117
  leftAddon,
@@ -179,4 +184,4 @@ export const SegmentedButton = forwardRef<
179
184
  {ripples}
180
185
  </button>
181
186
  );
182
- });
187
+ }
@@ -1,4 +1,9 @@
1
- import { type HTMLAttributes, type ReactNode, forwardRef } from "react";
1
+ import {
2
+ type HTMLAttributes,
3
+ type ReactElement,
4
+ type ReactNode,
5
+ type Ref,
6
+ } from "react";
2
7
 
3
8
  import {
4
9
  type SegmentedButtonContainerClassNameOptions,
@@ -12,6 +17,8 @@ export interface SegmentedButtonContainerProps
12
17
  extends
13
18
  HTMLAttributes<HTMLDivElement>,
14
19
  SegmentedButtonContainerClassNameOptions {
20
+ ref?: Ref<HTMLDivElement>;
21
+
15
22
  children: ReactNode;
16
23
  }
17
24
 
@@ -25,7 +32,7 @@ export interface SegmentedButtonContainerProps
25
32
  * import { segmentedButtonContainer } from "@react-md/core/segmented-button/SegmentedButtonContainer";
26
33
  * import type { ReactElement } from "react";
27
34
  *
28
- * import { CustomWrapperComponent } from "./CustomWrapperComponent.jsx";
35
+ * import { CustomWrapperComponent } from "./CustomWrapperComponent.js";
29
36
  *
30
37
  * function Example(): ReactElement {
31
38
  * return (
@@ -41,11 +48,10 @@ export interface SegmentedButtonContainerProps
41
48
  * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
42
49
  * @since 6.0.0
43
50
  */
44
- export const SegmentedButtonContainer = forwardRef<
45
- HTMLDivElement,
46
- SegmentedButtonContainerProps
47
- >(function SegmentedButtonContainer(props, ref) {
48
- const { className, disableFullWidth, children, ...remaining } = props;
51
+ export function SegmentedButtonContainer(
52
+ props: SegmentedButtonContainerProps
53
+ ): ReactElement {
54
+ const { ref, className, disableFullWidth, children, ...remaining } = props;
49
55
 
50
56
  return (
51
57
  <div
@@ -59,4 +65,4 @@ export const SegmentedButtonContainer = forwardRef<
59
65
  {children}
60
66
  </div>
61
67
  );
62
- });
68
+ }
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { forwardRef } from "react";
3
+ import { type ReactElement } from "react";
4
4
 
5
5
  import { type BaseDialogProps, Dialog } from "../dialog/Dialog.js";
6
6
  import { type LabelRequiredForA11y } from "../types.js";
@@ -66,46 +66,45 @@ export type SheetProps = LabelRequiredForA11y<BaseSheetProps>;
66
66
  *
67
67
  * @see {@link https://react-md.dev/components/sheet | Sheet Demos}
68
68
  */
69
- export const Sheet = forwardRef<HTMLDivElement, SheetProps>(
70
- function Sheet(props, ref) {
71
- const {
72
- role = "dialog",
73
- className,
74
- position = "left",
75
- horizontalSize = "media",
76
- verticalSize = "recommended",
77
- timeout = DEFAULT_SHEET_TIMEOUT,
78
- classNames = DEFAULT_SHEET_CLASSNAMES,
79
- visible,
80
- temporary = true,
81
- exitedHidden = true,
82
- raised,
83
- children,
84
- ...remaining
85
- } = props;
86
- const { disableOverlay } = props;
69
+ export function Sheet(props: SheetProps): ReactElement {
70
+ const {
71
+ ref,
72
+ role = "dialog",
73
+ className,
74
+ position = "left",
75
+ horizontalSize = "media",
76
+ verticalSize = "recommended",
77
+ timeout = DEFAULT_SHEET_TIMEOUT,
78
+ classNames = DEFAULT_SHEET_CLASSNAMES,
79
+ visible,
80
+ temporary = true,
81
+ exitedHidden = true,
82
+ raised,
83
+ children,
84
+ ...remaining
85
+ } = props;
86
+ const { disableOverlay } = props;
87
87
 
88
- return (
89
- <Dialog
90
- {...remaining}
91
- ref={ref}
92
- role={role}
93
- type="custom"
94
- timeout={timeout}
95
- classNames={classNames}
96
- visible={visible}
97
- temporary={temporary}
98
- exitedHidden={exitedHidden}
99
- className={sheet({
100
- raised: raised ?? !disableOverlay,
101
- position,
102
- horizontalSize,
103
- verticalSize,
104
- className,
105
- })}
106
- >
107
- {children}
108
- </Dialog>
109
- );
110
- }
111
- );
88
+ return (
89
+ <Dialog
90
+ {...remaining}
91
+ ref={ref}
92
+ role={role}
93
+ type="custom"
94
+ timeout={timeout}
95
+ classNames={classNames}
96
+ visible={visible}
97
+ temporary={temporary}
98
+ exitedHidden={exitedHidden}
99
+ className={sheet({
100
+ raised: raised ?? !disableOverlay,
101
+ position,
102
+ horizontalSize,
103
+ verticalSize,
104
+ className,
105
+ })}
106
+ >
107
+ {children}
108
+ </Dialog>
109
+ );
110
+ }
@@ -1,6 +1,11 @@
1
1
  "use client";
2
2
 
3
- import { type ComponentType, type HTMLAttributes, forwardRef } from "react";
3
+ import {
4
+ type ComponentType,
5
+ type HTMLAttributes,
6
+ type ReactElement,
7
+ type Ref,
8
+ } from "react";
4
9
 
5
10
  import { Portal } from "../portal/Portal.js";
6
11
  import { useEnsuredId } from "../useEnsuredId.js";
@@ -16,6 +21,8 @@ import { type SnackbarPosition, snackbar } from "./snackbarStyles.js";
16
21
  * @since 6.0.0 The `id` prop is optional
17
22
  */
18
23
  export interface SnackbarProps extends HTMLAttributes<HTMLDivElement> {
24
+ ref?: Ref<HTMLDivElement>;
25
+
19
26
  /** @defaultValue `"snackbar-" + useId()` */
20
27
  id?: string;
21
28
 
@@ -147,41 +154,40 @@ export interface SnackbarProps extends HTMLAttributes<HTMLDivElement> {
147
154
  * @since 6.0.0 Rewritten to use a new API that supports adding toasts
148
155
  * outside of React components and rendering multiple toasts at once.
149
156
  */
150
- export const Snackbar = forwardRef<HTMLDivElement, SnackbarProps>(
151
- function Snackbar(props, ref) {
152
- const {
153
- id: propId,
154
- className,
155
- limit = 1,
156
- absolute,
157
- position = "bottom",
158
- renderToast: RenderToast = DefaultToastRenderer,
159
- disablePortal,
160
- toastDefaults,
161
- ...remaining
162
- } = props;
163
- const id = useEnsuredId(propId, "snackbar");
164
- const queue = useToastQueue(limit);
157
+ export function Snackbar(props: SnackbarProps): ReactElement {
158
+ const {
159
+ ref,
160
+ id: propId,
161
+ className,
162
+ limit = 1,
163
+ absolute,
164
+ position = "bottom",
165
+ renderToast: RenderToast = DefaultToastRenderer,
166
+ disablePortal,
167
+ toastDefaults,
168
+ ...remaining
169
+ } = props;
170
+ const id = useEnsuredId(propId, "snackbar");
171
+ const queue = useToastQueue(limit);
165
172
 
166
- return (
167
- <Portal disabled={disablePortal}>
168
- {queue.length > 0 && (
169
- <div
170
- {...remaining}
171
- id={id}
172
- ref={ref}
173
- className={snackbar({ absolute, position, className })}
174
- >
175
- {queue.map((toast) => (
176
- <RenderToast
177
- {...toast}
178
- key={toast.toastId}
179
- toastDefaults={toastDefaults}
180
- />
181
- ))}
182
- </div>
183
- )}
184
- </Portal>
185
- );
186
- }
187
- );
173
+ return (
174
+ <Portal disabled={disablePortal}>
175
+ {queue.length > 0 && (
176
+ <div
177
+ {...remaining}
178
+ id={id}
179
+ ref={ref}
180
+ className={snackbar({ absolute, position, className })}
181
+ >
182
+ {queue.map((toast) => (
183
+ <RenderToast
184
+ {...toast}
185
+ key={toast.toastId}
186
+ toastDefaults={toastDefaults}
187
+ />
188
+ ))}
189
+ </div>
190
+ )}
191
+ </Portal>
192
+ );
193
+ }