@react-md/core 6.0.1 → 6.1.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 (821) hide show
  1. package/dist/CoreProviders.d.ts +1 -1
  2. package/dist/CoreProviders.js +1 -1
  3. package/dist/CoreProviders.js.map +1 -1
  4. package/dist/SsrProvider.d.ts +1 -1
  5. package/dist/SsrProvider.js +1 -1
  6. package/dist/SsrProvider.js.map +1 -1
  7. package/dist/_base.scss +6 -2
  8. package/dist/_border-radius.scss +92 -0
  9. package/dist/_core.scss +2 -0
  10. package/dist/_spacing.scss +86 -0
  11. package/dist/app-bar/_app-bar.scss +9 -7
  12. package/dist/app-bar/styles.js +1 -1
  13. package/dist/app-bar/styles.js.map +1 -1
  14. package/dist/autocomplete/Autocomplete.d.ts +2 -2
  15. package/dist/autocomplete/Autocomplete.js +1 -1
  16. package/dist/autocomplete/Autocomplete.js.map +1 -1
  17. package/dist/autocomplete/AutocompleteChip.d.ts +1 -1
  18. package/dist/autocomplete/AutocompleteChip.js +1 -1
  19. package/dist/autocomplete/AutocompleteChip.js.map +1 -1
  20. package/dist/autocomplete/AutocompleteCircularProgress.d.ts +1 -1
  21. package/dist/autocomplete/AutocompleteCircularProgress.js +1 -1
  22. package/dist/autocomplete/AutocompleteCircularProgress.js.map +1 -1
  23. package/dist/autocomplete/AutocompleteClearButton.d.ts +1 -1
  24. package/dist/autocomplete/AutocompleteClearButton.js +1 -1
  25. package/dist/autocomplete/AutocompleteClearButton.js.map +1 -1
  26. package/dist/autocomplete/AutocompleteDropdownButton.d.ts +1 -1
  27. package/dist/autocomplete/AutocompleteDropdownButton.js +1 -1
  28. package/dist/autocomplete/AutocompleteDropdownButton.js.map +1 -1
  29. package/dist/autocomplete/_autocomplete.scss +8 -5
  30. package/dist/autocomplete/useAutocomplete.d.ts +3 -3
  31. package/dist/autocomplete/useAutocomplete.js +2 -1
  32. package/dist/autocomplete/useAutocomplete.js.map +1 -1
  33. package/dist/avatar/Avatar.d.ts +1 -1
  34. package/dist/avatar/Avatar.js +1 -1
  35. package/dist/avatar/Avatar.js.map +1 -1
  36. package/dist/avatar/_avatar.scss +3 -3
  37. package/dist/badge/Badge.d.ts +1 -1
  38. package/dist/badge/Badge.js +1 -1
  39. package/dist/badge/Badge.js.map +1 -1
  40. package/dist/badge/_badge.scss +10 -2
  41. package/dist/box/Box.d.ts +1 -1
  42. package/dist/box/Box.js +1 -1
  43. package/dist/box/Box.js.map +1 -1
  44. package/dist/box/_box.scss +78 -11
  45. package/dist/button/AsyncButton.d.ts +1 -1
  46. package/dist/button/AsyncButton.js +1 -1
  47. package/dist/button/AsyncButton.js.map +1 -1
  48. package/dist/button/Button.d.ts +1 -1
  49. package/dist/button/Button.js +1 -1
  50. package/dist/button/Button.js.map +1 -1
  51. package/dist/button/ButtonUnstyled.d.ts +1 -1
  52. package/dist/button/ButtonUnstyled.js +1 -1
  53. package/dist/button/ButtonUnstyled.js.map +1 -1
  54. package/dist/button/TooltippedButton.d.ts +1 -1
  55. package/dist/button/TooltippedButton.js +1 -1
  56. package/dist/button/TooltippedButton.js.map +1 -1
  57. package/dist/button/_button.scss +21 -11
  58. package/dist/card/Card.d.ts +1 -1
  59. package/dist/card/Card.js +1 -1
  60. package/dist/card/Card.js.map +1 -1
  61. package/dist/card/CardContent.d.ts +1 -1
  62. package/dist/card/CardContent.js +1 -1
  63. package/dist/card/CardContent.js.map +1 -1
  64. package/dist/card/CardFooter.d.ts +1 -1
  65. package/dist/card/CardFooter.js +1 -1
  66. package/dist/card/CardFooter.js.map +1 -1
  67. package/dist/card/CardHeader.d.ts +1 -1
  68. package/dist/card/CardHeader.js +1 -1
  69. package/dist/card/CardHeader.js.map +1 -1
  70. package/dist/card/CardSubtitle.d.ts +1 -1
  71. package/dist/card/CardSubtitle.js +1 -1
  72. package/dist/card/CardSubtitle.js.map +1 -1
  73. package/dist/card/CardTitle.d.ts +1 -1
  74. package/dist/card/CardTitle.js +1 -1
  75. package/dist/card/CardTitle.js.map +1 -1
  76. package/dist/card/ClickableCard.d.ts +1 -1
  77. package/dist/card/ClickableCard.js +1 -1
  78. package/dist/card/ClickableCard.js.map +1 -1
  79. package/dist/card/_card.scss +9 -7
  80. package/dist/chip/Chip.d.ts +1 -1
  81. package/dist/chip/Chip.js +1 -1
  82. package/dist/chip/Chip.js.map +1 -1
  83. package/dist/chip/_chip.scss +9 -7
  84. package/dist/dialog/Dialog.d.ts +1 -1
  85. package/dist/dialog/Dialog.js +1 -1
  86. package/dist/dialog/Dialog.js.map +1 -1
  87. package/dist/dialog/DialogContent.d.ts +1 -1
  88. package/dist/dialog/DialogContent.js +1 -1
  89. package/dist/dialog/DialogContent.js.map +1 -1
  90. package/dist/dialog/DialogFooter.d.ts +1 -1
  91. package/dist/dialog/DialogFooter.js +1 -1
  92. package/dist/dialog/DialogFooter.js.map +1 -1
  93. package/dist/dialog/DialogHeader.d.ts +1 -1
  94. package/dist/dialog/DialogHeader.js +1 -1
  95. package/dist/dialog/DialogHeader.js.map +1 -1
  96. package/dist/dialog/DialogTitle.d.ts +1 -1
  97. package/dist/dialog/DialogTitle.js +1 -1
  98. package/dist/dialog/DialogTitle.js.map +1 -1
  99. package/dist/dialog/FixedDialog.d.ts +1 -1
  100. package/dist/dialog/FixedDialog.js +1 -1
  101. package/dist/dialog/FixedDialog.js.map +1 -1
  102. package/dist/dialog/_dialog.scss +7 -6
  103. package/dist/divider/Divider.d.ts +1 -1
  104. package/dist/divider/Divider.js +1 -1
  105. package/dist/divider/Divider.js.map +1 -1
  106. package/dist/divider/_divider.scss +3 -2
  107. package/dist/draggable/useDraggable.d.ts +1 -1
  108. package/dist/draggable/useDraggable.js +1 -1
  109. package/dist/draggable/useDraggable.js.map +1 -1
  110. package/dist/expansion-panel/ExpansionList.d.ts +1 -1
  111. package/dist/expansion-panel/ExpansionList.js +1 -1
  112. package/dist/expansion-panel/ExpansionList.js.map +1 -1
  113. package/dist/expansion-panel/ExpansionPanel.d.ts +1 -1
  114. package/dist/expansion-panel/ExpansionPanel.js +1 -1
  115. package/dist/expansion-panel/ExpansionPanel.js.map +1 -1
  116. package/dist/expansion-panel/ExpansionPanelHeader.d.ts +1 -1
  117. package/dist/expansion-panel/ExpansionPanelHeader.js +1 -1
  118. package/dist/expansion-panel/ExpansionPanelHeader.js.map +1 -1
  119. package/dist/expansion-panel/_expansion-panel.scss +4 -3
  120. package/dist/expansion-panel/useExpansionList.d.ts +1 -1
  121. package/dist/expansion-panel/useExpansionList.js +1 -1
  122. package/dist/expansion-panel/useExpansionList.js.map +1 -1
  123. package/dist/expansion-panel/useExpansionPanels.d.ts +1 -1
  124. package/dist/expansion-panel/useExpansionPanels.js +1 -1
  125. package/dist/expansion-panel/useExpansionPanels.js.map +1 -1
  126. package/dist/files/FileInput.d.ts +1 -1
  127. package/dist/files/FileInput.js +1 -1
  128. package/dist/files/FileInput.js.map +1 -1
  129. package/dist/files/useFileUpload.d.ts +2 -2
  130. package/dist/files/useFileUpload.js +2 -2
  131. package/dist/files/useFileUpload.js.map +1 -1
  132. package/dist/form/Checkbox.d.ts +1 -1
  133. package/dist/form/Checkbox.js +1 -1
  134. package/dist/form/Checkbox.js.map +1 -1
  135. package/dist/form/Fieldset.d.ts +1 -1
  136. package/dist/form/Fieldset.js +1 -1
  137. package/dist/form/Fieldset.js.map +1 -1
  138. package/dist/form/Form.d.ts +1 -1
  139. package/dist/form/Form.js +1 -1
  140. package/dist/form/Form.js.map +1 -1
  141. package/dist/form/FormMessage.d.ts +1 -1
  142. package/dist/form/FormMessage.js +1 -1
  143. package/dist/form/FormMessage.js.map +1 -1
  144. package/dist/form/FormMessageContainer.d.ts +1 -1
  145. package/dist/form/FormMessageContainer.js +1 -1
  146. package/dist/form/FormMessageContainer.js.map +1 -1
  147. package/dist/form/FormMessageCounter.d.ts +2 -2
  148. package/dist/form/FormMessageCounter.js +2 -2
  149. package/dist/form/FormMessageCounter.js.map +1 -1
  150. package/dist/form/InputToggle.d.ts +2 -2
  151. package/dist/form/InputToggle.js +2 -2
  152. package/dist/form/InputToggle.js.map +1 -1
  153. package/dist/form/Label.d.ts +3 -3
  154. package/dist/form/Label.js +3 -3
  155. package/dist/form/Label.js.map +1 -1
  156. package/dist/form/Legend.d.ts +1 -1
  157. package/dist/form/Legend.js +1 -1
  158. package/dist/form/Legend.js.map +1 -1
  159. package/dist/form/NativeSelect.d.ts +1 -1
  160. package/dist/form/NativeSelect.js +1 -1
  161. package/dist/form/NativeSelect.js.map +1 -1
  162. package/dist/form/OptGroup.d.ts +1 -1
  163. package/dist/form/OptGroup.js +1 -1
  164. package/dist/form/OptGroup.js.map +1 -1
  165. package/dist/form/Option.d.ts +1 -1
  166. package/dist/form/Option.js +1 -1
  167. package/dist/form/Option.js.map +1 -1
  168. package/dist/form/Password.d.ts +1 -1
  169. package/dist/form/Password.js +1 -1
  170. package/dist/form/Password.js.map +1 -1
  171. package/dist/form/Radio.d.ts +1 -1
  172. package/dist/form/Radio.js +1 -1
  173. package/dist/form/Radio.js.map +1 -1
  174. package/dist/form/Select.d.ts +1 -1
  175. package/dist/form/Select.js +1 -1
  176. package/dist/form/Select.js.map +1 -1
  177. package/dist/form/Slider.d.ts +1 -1
  178. package/dist/form/Slider.js.map +1 -1
  179. package/dist/form/Switch.d.ts +1 -1
  180. package/dist/form/Switch.js +1 -1
  181. package/dist/form/Switch.js.map +1 -1
  182. package/dist/form/TextArea.d.ts +1 -1
  183. package/dist/form/TextArea.js +2 -2
  184. package/dist/form/TextArea.js.map +1 -1
  185. package/dist/form/TextField.d.ts +1 -1
  186. package/dist/form/TextField.js +1 -1
  187. package/dist/form/TextField.js.map +1 -1
  188. package/dist/form/_form-message.scss +4 -3
  189. package/dist/form/_input-toggle.scss +2 -1
  190. package/dist/form/_label.scss +3 -2
  191. package/dist/form/_password.scss +2 -1
  192. package/dist/form/_select.scss +4 -4
  193. package/dist/form/_slider.scss +4 -3
  194. package/dist/form/_switch.scss +2 -1
  195. package/dist/form/_text-area.scss +3 -2
  196. package/dist/form/_text-field.scss +20 -16
  197. package/dist/form/useCheckboxGroup.d.ts +8 -8
  198. package/dist/form/useCheckboxGroup.js +2 -2
  199. package/dist/form/useCheckboxGroup.js.map +1 -1
  200. package/dist/form/useCombobox.js +1 -0
  201. package/dist/form/useCombobox.js.map +1 -1
  202. package/dist/form/useNumberField.d.ts +2 -2
  203. package/dist/form/useNumberField.js +2 -2
  204. package/dist/form/useNumberField.js.map +1 -1
  205. package/dist/form/useRadioGroup.d.ts +4 -4
  206. package/dist/form/useRadioGroup.js +2 -2
  207. package/dist/form/useRadioGroup.js.map +1 -1
  208. package/dist/form/useRangeSlider.d.ts +1 -1
  209. package/dist/form/useRangeSlider.js +1 -1
  210. package/dist/form/useRangeSlider.js.map +1 -1
  211. package/dist/form/useSlider.d.ts +1 -1
  212. package/dist/form/useSlider.js +1 -1
  213. package/dist/form/useSlider.js.map +1 -1
  214. package/dist/form/useTextField.d.ts +4 -4
  215. package/dist/form/useTextField.js +2 -2
  216. package/dist/form/useTextField.js.map +1 -1
  217. package/dist/form/utils.js +1 -0
  218. package/dist/form/utils.js.map +1 -1
  219. package/dist/icon/FontIcon.d.ts +1 -1
  220. package/dist/icon/FontIcon.js +1 -1
  221. package/dist/icon/FontIcon.js.map +1 -1
  222. package/dist/icon/IconRotator.d.ts +1 -1
  223. package/dist/icon/IconRotator.js +1 -1
  224. package/dist/icon/IconRotator.js.map +1 -1
  225. package/dist/icon/MaterialIcon.d.ts +2 -2
  226. package/dist/icon/MaterialIcon.js +2 -2
  227. package/dist/icon/MaterialIcon.js.map +1 -1
  228. package/dist/icon/MaterialSymbol.d.ts +2 -2
  229. package/dist/icon/MaterialSymbol.js +2 -2
  230. package/dist/icon/MaterialSymbol.js.map +1 -1
  231. package/dist/icon/SVGIcon.d.ts +1 -1
  232. package/dist/icon/SVGIcon.js +1 -1
  233. package/dist/icon/SVGIcon.js.map +1 -1
  234. package/dist/icon/TextIconSpacing.d.ts +1 -1
  235. package/dist/icon/TextIconSpacing.js +1 -1
  236. package/dist/icon/TextIconSpacing.js.map +1 -1
  237. package/dist/icon/_icon.scss +2 -1
  238. package/dist/interaction/useElementInteraction.js +1 -1
  239. package/dist/interaction/useElementInteraction.js.map +1 -1
  240. package/dist/layout/LayoutAppBar.d.ts +1 -1
  241. package/dist/layout/LayoutAppBar.js +1 -1
  242. package/dist/layout/LayoutAppBar.js.map +1 -1
  243. package/dist/layout/LayoutNav.d.ts +1 -1
  244. package/dist/layout/LayoutNav.js +2 -2
  245. package/dist/layout/LayoutNav.js.map +1 -1
  246. package/dist/layout/LayoutWindowSplitter.d.ts +1 -1
  247. package/dist/layout/LayoutWindowSplitter.js +1 -1
  248. package/dist/layout/LayoutWindowSplitter.js.map +1 -1
  249. package/dist/layout/Main.d.ts +1 -1
  250. package/dist/layout/Main.js +1 -1
  251. package/dist/layout/Main.js.map +1 -1
  252. package/dist/layout/useExpandableLayout.d.ts +1 -1
  253. package/dist/layout/useExpandableLayout.js +1 -1
  254. package/dist/layout/useExpandableLayout.js.map +1 -1
  255. package/dist/layout/useHorizontalLayoutTransition.d.ts +1 -1
  256. package/dist/layout/useHorizontalLayoutTransition.js +1 -1
  257. package/dist/layout/useHorizontalLayoutTransition.js.map +1 -1
  258. package/dist/layout/useLayoutAppBarHeight.d.ts +1 -1
  259. package/dist/layout/useLayoutAppBarHeight.js +1 -1
  260. package/dist/layout/useLayoutAppBarHeight.js.map +1 -1
  261. package/dist/layout/useLayoutTree.d.ts +3 -3
  262. package/dist/layout/useLayoutTree.js +3 -3
  263. package/dist/layout/useLayoutTree.js.map +1 -1
  264. package/dist/layout/useLayoutWindowSplitter.d.ts +1 -1
  265. package/dist/layout/useLayoutWindowSplitter.js +1 -1
  266. package/dist/layout/useLayoutWindowSplitter.js.map +1 -1
  267. package/dist/layout/useMainTabIndex.js +1 -0
  268. package/dist/layout/useMainTabIndex.js.map +1 -1
  269. package/dist/layout/useResizableLayout.d.ts +1 -1
  270. package/dist/layout/useResizableLayout.js +1 -1
  271. package/dist/layout/useResizableLayout.js.map +1 -1
  272. package/dist/layout/useTemporaryLayout.d.ts +1 -1
  273. package/dist/layout/useTemporaryLayout.js +1 -1
  274. package/dist/layout/useTemporaryLayout.js.map +1 -1
  275. package/dist/link/Link.d.ts +1 -1
  276. package/dist/link/Link.js +1 -1
  277. package/dist/link/Link.js.map +1 -1
  278. package/dist/link/SkipToMainContent.d.ts +1 -1
  279. package/dist/link/SkipToMainContent.js +1 -1
  280. package/dist/link/SkipToMainContent.js.map +1 -1
  281. package/dist/link/_link.scss +3 -2
  282. package/dist/list/List.d.ts +1 -1
  283. package/dist/list/List.js +1 -1
  284. package/dist/list/List.js.map +1 -1
  285. package/dist/list/ListItem.d.ts +1 -1
  286. package/dist/list/ListItem.js +1 -1
  287. package/dist/list/ListItem.js.map +1 -1
  288. package/dist/list/ListItemChildren.d.ts +1 -1
  289. package/dist/list/ListItemChildren.js +1 -1
  290. package/dist/list/ListItemChildren.js.map +1 -1
  291. package/dist/list/ListItemLink.d.ts +1 -1
  292. package/dist/list/ListItemLink.js +1 -1
  293. package/dist/list/ListItemLink.js.map +1 -1
  294. package/dist/list/ListSubheader.d.ts +1 -1
  295. package/dist/list/ListSubheader.js +1 -1
  296. package/dist/list/ListSubheader.js.map +1 -1
  297. package/dist/list/_list.scss +7 -6
  298. package/dist/media-queries/AppSizeProvider.d.ts +2 -2
  299. package/dist/media-queries/AppSizeProvider.js +2 -2
  300. package/dist/media-queries/AppSizeProvider.js.map +1 -1
  301. package/dist/media-queries/useMediaQuery.d.ts +2 -2
  302. package/dist/media-queries/useMediaQuery.js +2 -2
  303. package/dist/media-queries/useMediaQuery.js.map +1 -1
  304. package/dist/menu/DropdownMenu.d.ts +1 -1
  305. package/dist/menu/DropdownMenu.js +2 -1
  306. package/dist/menu/DropdownMenu.js.map +1 -1
  307. package/dist/menu/Menu.d.ts +1 -1
  308. package/dist/menu/Menu.js +1 -1
  309. package/dist/menu/Menu.js.map +1 -1
  310. package/dist/menu/MenuBar.d.ts +1 -1
  311. package/dist/menu/MenuBar.js +1 -1
  312. package/dist/menu/MenuBar.js.map +1 -1
  313. package/dist/menu/MenuButton.d.ts +1 -1
  314. package/dist/menu/MenuButton.js +1 -1
  315. package/dist/menu/MenuButton.js.map +1 -1
  316. package/dist/menu/MenuItem.d.ts +1 -1
  317. package/dist/menu/MenuItem.js +1 -1
  318. package/dist/menu/MenuItem.js.map +1 -1
  319. package/dist/menu/MenuItemCheckbox.d.ts +1 -1
  320. package/dist/menu/MenuItemCheckbox.js +1 -1
  321. package/dist/menu/MenuItemCheckbox.js.map +1 -1
  322. package/dist/menu/MenuItemFileInput.d.ts +1 -1
  323. package/dist/menu/MenuItemFileInput.js +1 -1
  324. package/dist/menu/MenuItemFileInput.js.map +1 -1
  325. package/dist/menu/MenuItemGroup.d.ts +1 -1
  326. package/dist/menu/MenuItemGroup.js +1 -1
  327. package/dist/menu/MenuItemGroup.js.map +1 -1
  328. package/dist/menu/MenuItemInputToggle.d.ts +1 -1
  329. package/dist/menu/MenuItemInputToggle.js +1 -1
  330. package/dist/menu/MenuItemInputToggle.js.map +1 -1
  331. package/dist/menu/MenuItemRadio.d.ts +1 -1
  332. package/dist/menu/MenuItemRadio.js +1 -1
  333. package/dist/menu/MenuItemRadio.js.map +1 -1
  334. package/dist/menu/MenuItemSeparator.d.ts +1 -1
  335. package/dist/menu/MenuItemSeparator.js +1 -1
  336. package/dist/menu/MenuItemSeparator.js.map +1 -1
  337. package/dist/menu/MenuItemSwitch.d.ts +1 -1
  338. package/dist/menu/MenuItemSwitch.js +1 -1
  339. package/dist/menu/MenuItemSwitch.js.map +1 -1
  340. package/dist/menu/MenuItemTextField.d.ts +1 -1
  341. package/dist/menu/MenuItemTextField.js +1 -1
  342. package/dist/menu/MenuItemTextField.js.map +1 -1
  343. package/dist/menu/_menu.scss +2 -1
  344. package/dist/menu/useContextMenu.d.ts +1 -1
  345. package/dist/menu/useContextMenu.js +1 -1
  346. package/dist/menu/useContextMenu.js.map +1 -1
  347. package/dist/navigation/CollapsibleNavGroup.d.ts +1 -1
  348. package/dist/navigation/CollapsibleNavGroup.js +1 -1
  349. package/dist/navigation/CollapsibleNavGroup.js.map +1 -1
  350. package/dist/navigation/DefaultNavigationRenderer.d.ts +1 -1
  351. package/dist/navigation/DefaultNavigationRenderer.js +1 -1
  352. package/dist/navigation/DefaultNavigationRenderer.js.map +1 -1
  353. package/dist/navigation/NavGroup.d.ts +1 -1
  354. package/dist/navigation/NavGroup.js +1 -1
  355. package/dist/navigation/NavGroup.js.map +1 -1
  356. package/dist/navigation/NavItem.d.ts +1 -1
  357. package/dist/navigation/NavItem.js +1 -1
  358. package/dist/navigation/NavItem.js.map +1 -1
  359. package/dist/navigation/NavItemButton.d.ts +1 -1
  360. package/dist/navigation/NavItemButton.js +1 -1
  361. package/dist/navigation/NavItemButton.js.map +1 -1
  362. package/dist/navigation/NavItemLink.d.ts +1 -1
  363. package/dist/navigation/NavItemLink.js +1 -1
  364. package/dist/navigation/NavItemLink.js.map +1 -1
  365. package/dist/navigation/NavSubheader.d.ts +1 -1
  366. package/dist/navigation/NavSubheader.js +1 -1
  367. package/dist/navigation/NavSubheader.js.map +1 -1
  368. package/dist/navigation/Navigation.d.ts +1 -1
  369. package/dist/navigation/Navigation.js +1 -1
  370. package/dist/navigation/Navigation.js.map +1 -1
  371. package/dist/navigation/_navigation.scss +5 -3
  372. package/dist/navigation/useActiveHeadingId.d.ts +1 -1
  373. package/dist/navigation/useActiveHeadingId.js +1 -1
  374. package/dist/navigation/useActiveHeadingId.js.map +1 -1
  375. package/dist/navigation/useNavigationExpansion.d.ts +2 -2
  376. package/dist/navigation/useNavigationExpansion.js +2 -2
  377. package/dist/navigation/useNavigationExpansion.js.map +1 -1
  378. package/dist/navigation/useTableOfContentsHeadings.d.ts +1 -1
  379. package/dist/navigation/useTableOfContentsHeadings.js +1 -1
  380. package/dist/navigation/useTableOfContentsHeadings.js.map +1 -1
  381. package/dist/overlay/Overlay.d.ts +1 -1
  382. package/dist/overlay/Overlay.js +1 -1
  383. package/dist/overlay/Overlay.js.map +1 -1
  384. package/dist/portal/Portal.d.ts +1 -1
  385. package/dist/portal/Portal.js +1 -1
  386. package/dist/portal/Portal.js.map +1 -1
  387. package/dist/portal/PortalContainerProvider.d.ts +1 -1
  388. package/dist/portal/PortalContainerProvider.js +1 -1
  389. package/dist/portal/PortalContainerProvider.js.map +1 -1
  390. package/dist/positioning/useFixedPositioning.d.ts +1 -1
  391. package/dist/positioning/useFixedPositioning.js +1 -1
  392. package/dist/positioning/useFixedPositioning.js.map +1 -1
  393. package/dist/progress/CircularProgress.d.ts +1 -1
  394. package/dist/progress/CircularProgress.js +1 -1
  395. package/dist/progress/CircularProgress.js.map +1 -1
  396. package/dist/progress/LinearProgress.d.ts +1 -1
  397. package/dist/progress/LinearProgress.js +1 -1
  398. package/dist/progress/LinearProgress.js.map +1 -1
  399. package/dist/responsive-item/ResponsiveItem.d.ts +1 -1
  400. package/dist/responsive-item/ResponsiveItem.js +1 -1
  401. package/dist/responsive-item/ResponsiveItem.js.map +1 -1
  402. package/dist/responsive-item/ResponsiveItemOverlay.d.ts +1 -1
  403. package/dist/responsive-item/ResponsiveItemOverlay.js +1 -1
  404. package/dist/responsive-item/ResponsiveItemOverlay.js.map +1 -1
  405. package/dist/responsive-item/_responsive-item.scss +2 -1
  406. package/dist/scroll/useScrollLock.d.ts +1 -1
  407. package/dist/scroll/useScrollLock.js +1 -1
  408. package/dist/scroll/useScrollLock.js.map +1 -1
  409. package/dist/segmented-button/SegmentedButton.d.ts +1 -1
  410. package/dist/segmented-button/SegmentedButton.js +1 -1
  411. package/dist/segmented-button/SegmentedButton.js.map +1 -1
  412. package/dist/segmented-button/SegmentedButtonContainer.d.ts +1 -1
  413. package/dist/segmented-button/SegmentedButtonContainer.js +1 -1
  414. package/dist/segmented-button/SegmentedButtonContainer.js.map +1 -1
  415. package/dist/segmented-button/_segmented-button.scss +20 -13
  416. package/dist/sheet/Sheet.d.ts +1 -1
  417. package/dist/sheet/Sheet.js +1 -1
  418. package/dist/sheet/Sheet.js.map +1 -1
  419. package/dist/sheet/_sheet.scss +2 -1
  420. package/dist/snackbar/DefaultToastRenderer.d.ts +1 -1
  421. package/dist/snackbar/DefaultToastRenderer.js +1 -1
  422. package/dist/snackbar/DefaultToastRenderer.js.map +1 -1
  423. package/dist/snackbar/Snackbar.d.ts +1 -1
  424. package/dist/snackbar/Snackbar.js +1 -1
  425. package/dist/snackbar/Snackbar.js.map +1 -1
  426. package/dist/snackbar/Toast.d.ts +1 -1
  427. package/dist/snackbar/Toast.js +1 -1
  428. package/dist/snackbar/Toast.js.map +1 -1
  429. package/dist/snackbar/ToastActionButton.d.ts +1 -1
  430. package/dist/snackbar/ToastActionButton.js +1 -1
  431. package/dist/snackbar/ToastActionButton.js.map +1 -1
  432. package/dist/snackbar/ToastCloseButton.d.ts +1 -1
  433. package/dist/snackbar/ToastCloseButton.js +1 -1
  434. package/dist/snackbar/ToastCloseButton.js.map +1 -1
  435. package/dist/snackbar/ToastContent.d.ts +1 -1
  436. package/dist/snackbar/ToastContent.js +1 -1
  437. package/dist/snackbar/ToastContent.js.map +1 -1
  438. package/dist/snackbar/ToastManager.d.ts +1 -1
  439. package/dist/snackbar/ToastManager.js +1 -1
  440. package/dist/snackbar/ToastManager.js.map +1 -1
  441. package/dist/snackbar/ToastManagerProvider.d.ts +1 -1
  442. package/dist/snackbar/ToastManagerProvider.js +1 -1
  443. package/dist/snackbar/ToastManagerProvider.js.map +1 -1
  444. package/dist/snackbar/_snackbar.scss +12 -10
  445. package/dist/snackbar/useCurrentToastActions.d.ts +1 -1
  446. package/dist/snackbar/useCurrentToastActions.js +1 -1
  447. package/dist/snackbar/useCurrentToastActions.js.map +1 -1
  448. package/dist/storage/useStorage.d.ts +1 -1
  449. package/dist/storage/useStorage.js +1 -1
  450. package/dist/storage/useStorage.js.map +1 -1
  451. package/dist/suspense/CircularProgressSuspense.d.ts +1 -1
  452. package/dist/suspense/CircularProgressSuspense.js +1 -1
  453. package/dist/suspense/CircularProgressSuspense.js.map +1 -1
  454. package/dist/suspense/NullSuspense.d.ts +1 -1
  455. package/dist/suspense/NullSuspense.js +1 -1
  456. package/dist/suspense/NullSuspense.js.map +1 -1
  457. package/dist/table/StickyTableSection.d.ts +2 -2
  458. package/dist/table/StickyTableSection.js +2 -2
  459. package/dist/table/StickyTableSection.js.map +1 -1
  460. package/dist/table/Table.d.ts +1 -1
  461. package/dist/table/Table.js +1 -1
  462. package/dist/table/Table.js.map +1 -1
  463. package/dist/table/TableBody.d.ts +1 -1
  464. package/dist/table/TableBody.js +1 -1
  465. package/dist/table/TableBody.js.map +1 -1
  466. package/dist/table/TableCell.d.ts +1 -1
  467. package/dist/table/TableCell.js +1 -1
  468. package/dist/table/TableCell.js.map +1 -1
  469. package/dist/table/TableCheckbox.d.ts +1 -1
  470. package/dist/table/TableCheckbox.js +1 -1
  471. package/dist/table/TableCheckbox.js.map +1 -1
  472. package/dist/table/TableContainer.d.ts +1 -1
  473. package/dist/table/TableContainer.js +1 -1
  474. package/dist/table/TableContainer.js.map +1 -1
  475. package/dist/table/TableFooter.d.ts +1 -1
  476. package/dist/table/TableFooter.js +1 -1
  477. package/dist/table/TableFooter.js.map +1 -1
  478. package/dist/table/TableHeader.d.ts +1 -1
  479. package/dist/table/TableHeader.js +1 -1
  480. package/dist/table/TableHeader.js.map +1 -1
  481. package/dist/table/TableRadio.d.ts +1 -1
  482. package/dist/table/TableRadio.js +1 -1
  483. package/dist/table/TableRadio.js.map +1 -1
  484. package/dist/table/TableRow.d.ts +1 -1
  485. package/dist/table/TableRow.js +1 -1
  486. package/dist/table/TableRow.js.map +1 -1
  487. package/dist/table/_table.scss +5 -4
  488. package/dist/tabs/SimpleTabPanel.d.ts +2 -2
  489. package/dist/tabs/SimpleTabPanel.js +2 -2
  490. package/dist/tabs/SimpleTabPanel.js.map +1 -1
  491. package/dist/tabs/SimpleTabPanels.d.ts +2 -2
  492. package/dist/tabs/SimpleTabPanels.js +2 -2
  493. package/dist/tabs/SimpleTabPanels.js.map +1 -1
  494. package/dist/tabs/Tab.d.ts +1 -1
  495. package/dist/tabs/Tab.js +1 -1
  496. package/dist/tabs/Tab.js.map +1 -1
  497. package/dist/tabs/TabList.d.ts +1 -1
  498. package/dist/tabs/TabList.js +1 -1
  499. package/dist/tabs/TabList.js.map +1 -1
  500. package/dist/tabs/_tabs.scss +7 -4
  501. package/dist/tabs/useTabs.d.ts +4 -4
  502. package/dist/tabs/useTabs.js +2 -1
  503. package/dist/tabs/useTabs.js.map +1 -1
  504. package/dist/theme/LocalStorageColorSchemeProvider.d.ts +2 -2
  505. package/dist/theme/LocalStorageColorSchemeProvider.js +2 -2
  506. package/dist/theme/LocalStorageColorSchemeProvider.js.map +1 -1
  507. package/dist/theme/ThemeProvider.d.ts +1 -1
  508. package/dist/theme/ThemeProvider.js +1 -1
  509. package/dist/theme/ThemeProvider.js.map +1 -1
  510. package/dist/theme/useColorSchemeProvider.js +1 -0
  511. package/dist/theme/useColorSchemeProvider.js.map +1 -1
  512. package/dist/theme/utils.js +2 -2
  513. package/dist/theme/utils.js.map +1 -1
  514. package/dist/tooltip/Tooltip.d.ts +1 -1
  515. package/dist/tooltip/Tooltip.js +1 -1
  516. package/dist/tooltip/Tooltip.js.map +1 -1
  517. package/dist/tooltip/TooltipHoverModeProvider.d.ts +1 -1
  518. package/dist/tooltip/TooltipHoverModeProvider.js +1 -1
  519. package/dist/tooltip/TooltipHoverModeProvider.js.map +1 -1
  520. package/dist/tooltip/_tooltip.scss +52 -25
  521. package/dist/tooltip/useTooltip.d.ts +1 -1
  522. package/dist/tooltip/useTooltip.js +1 -1
  523. package/dist/tooltip/useTooltip.js.map +1 -1
  524. package/dist/transition/CSSTransition.d.ts +1 -1
  525. package/dist/transition/CSSTransition.js +1 -1
  526. package/dist/transition/CSSTransition.js.map +1 -1
  527. package/dist/transition/Collapse.d.ts +1 -1
  528. package/dist/transition/Collapse.js +1 -1
  529. package/dist/transition/Collapse.js.map +1 -1
  530. package/dist/transition/CrossFade.d.ts +1 -1
  531. package/dist/transition/CrossFade.js +1 -1
  532. package/dist/transition/CrossFade.js.map +1 -1
  533. package/dist/transition/ScaleTransition.d.ts +1 -1
  534. package/dist/transition/ScaleTransition.js +1 -1
  535. package/dist/transition/ScaleTransition.js.map +1 -1
  536. package/dist/transition/SkeletonPlaceholder.d.ts +1 -1
  537. package/dist/transition/SkeletonPlaceholder.js +1 -1
  538. package/dist/transition/SkeletonPlaceholder.js.map +1 -1
  539. package/dist/transition/Slide.d.ts +1 -1
  540. package/dist/transition/Slide.js +1 -1
  541. package/dist/transition/Slide.js.map +1 -1
  542. package/dist/transition/SlideContainer.d.ts +1 -1
  543. package/dist/transition/SlideContainer.js +1 -1
  544. package/dist/transition/SlideContainer.js.map +1 -1
  545. package/dist/transition/_transition.scss +2 -1
  546. package/dist/transition/useCSSTransition.d.ts +2 -2
  547. package/dist/transition/useCSSTransition.js +2 -2
  548. package/dist/transition/useCSSTransition.js.map +1 -1
  549. package/dist/transition/useCarousel.d.ts +1 -1
  550. package/dist/transition/useCarousel.js +1 -1
  551. package/dist/transition/useCarousel.js.map +1 -1
  552. package/dist/transition/useCollapseTransition.d.ts +2 -2
  553. package/dist/transition/useCollapseTransition.js +2 -2
  554. package/dist/transition/useCollapseTransition.js.map +1 -1
  555. package/dist/transition/useCrossFadeTransition.d.ts +2 -2
  556. package/dist/transition/useCrossFadeTransition.js +2 -2
  557. package/dist/transition/useCrossFadeTransition.js.map +1 -1
  558. package/dist/transition/useScaleTransition.d.ts +2 -2
  559. package/dist/transition/useScaleTransition.js +2 -2
  560. package/dist/transition/useScaleTransition.js.map +1 -1
  561. package/dist/transition/useSkeletonPlaceholder.d.ts +2 -2
  562. package/dist/transition/useSkeletonPlaceholder.js +2 -2
  563. package/dist/transition/useSkeletonPlaceholder.js.map +1 -1
  564. package/dist/transition/useSlideTransition.d.ts +1 -1
  565. package/dist/transition/useSlideTransition.js +1 -1
  566. package/dist/transition/useSlideTransition.js.map +1 -1
  567. package/dist/transition/useTransition.d.ts +1 -1
  568. package/dist/transition/useTransition.js +1 -1
  569. package/dist/transition/useTransition.js.map +1 -1
  570. package/dist/tree/DefaultTreeItemRenderer.d.ts +1 -1
  571. package/dist/tree/DefaultTreeItemRenderer.js +1 -1
  572. package/dist/tree/DefaultTreeItemRenderer.js.map +1 -1
  573. package/dist/tree/Tree.d.ts +1 -1
  574. package/dist/tree/Tree.js +1 -1
  575. package/dist/tree/Tree.js.map +1 -1
  576. package/dist/tree/TreeItem.d.ts +1 -1
  577. package/dist/tree/TreeItem.js +1 -1
  578. package/dist/tree/TreeItem.js.map +1 -1
  579. package/dist/tree/_tree.scss +1 -1
  580. package/dist/tree/useTree.d.ts +1 -1
  581. package/dist/tree/useTree.js +1 -1
  582. package/dist/tree/useTree.js.map +1 -1
  583. package/dist/tree/useTreeExpansion.d.ts +1 -1
  584. package/dist/tree/useTreeExpansion.js +1 -1
  585. package/dist/tree/useTreeExpansion.js.map +1 -1
  586. package/dist/tree/useTreeItems.d.ts +1 -1
  587. package/dist/tree/useTreeItems.js +1 -1
  588. package/dist/tree/useTreeItems.js.map +1 -1
  589. package/dist/tree/useTreeSelection.d.ts +1 -1
  590. package/dist/tree/useTreeSelection.js +1 -1
  591. package/dist/tree/useTreeSelection.js.map +1 -1
  592. package/dist/typography/HighlightText.d.ts +1 -1
  593. package/dist/typography/HighlightText.js +1 -1
  594. package/dist/typography/HighlightText.js.map +1 -1
  595. package/dist/typography/Mark.d.ts +1 -1
  596. package/dist/typography/Mark.js +1 -1
  597. package/dist/typography/Mark.js.map +1 -1
  598. package/dist/typography/SrOnly.d.ts +1 -1
  599. package/dist/typography/SrOnly.js +1 -1
  600. package/dist/typography/SrOnly.js.map +1 -1
  601. package/dist/typography/TextContainer.d.ts +1 -1
  602. package/dist/typography/TextContainer.js +1 -1
  603. package/dist/typography/TextContainer.js.map +1 -1
  604. package/dist/typography/Typography.d.ts +1 -1
  605. package/dist/typography/Typography.js +1 -1
  606. package/dist/typography/Typography.js.map +1 -1
  607. package/dist/typography/WritingDirectionProvider.d.ts +1 -1
  608. package/dist/typography/WritingDirectionProvider.js +1 -1
  609. package/dist/typography/WritingDirectionProvider.js.map +1 -1
  610. package/dist/useEnsuredState.d.ts +1 -0
  611. package/dist/useEnsuredState.js +5 -3
  612. package/dist/useEnsuredState.js.map +1 -1
  613. package/dist/utils/RenderRecursively.d.ts +1 -1
  614. package/dist/utils/RenderRecursively.js +1 -1
  615. package/dist/utils/RenderRecursively.js.map +1 -1
  616. package/dist/utils/bem.js +1 -1
  617. package/dist/utils/bem.js.map +1 -1
  618. package/dist/utils/parseCssLengthUnit.js +3 -0
  619. package/dist/utils/parseCssLengthUnit.js.map +1 -1
  620. package/dist/window-splitter/WindowSplitter.d.ts +1 -1
  621. package/dist/window-splitter/WindowSplitter.js +1 -1
  622. package/dist/window-splitter/WindowSplitter.js.map +1 -1
  623. package/package.json +10 -10
  624. package/src/CoreProviders.tsx +1 -1
  625. package/src/SsrProvider.tsx +1 -1
  626. package/src/app-bar/styles.ts +1 -1
  627. package/src/autocomplete/Autocomplete.tsx +3 -3
  628. package/src/autocomplete/AutocompleteChip.tsx +1 -1
  629. package/src/autocomplete/AutocompleteCircularProgress.tsx +1 -1
  630. package/src/autocomplete/AutocompleteClearButton.tsx +1 -1
  631. package/src/autocomplete/AutocompleteDropdownButton.tsx +1 -1
  632. package/src/autocomplete/useAutocomplete.ts +5 -4
  633. package/src/avatar/Avatar.tsx +1 -1
  634. package/src/badge/Badge.tsx +1 -1
  635. package/src/box/Box.tsx +1 -1
  636. package/src/button/AsyncButton.tsx +1 -1
  637. package/src/button/Button.tsx +1 -1
  638. package/src/button/ButtonUnstyled.tsx +1 -1
  639. package/src/button/TooltippedButton.tsx +1 -1
  640. package/src/card/Card.tsx +1 -1
  641. package/src/card/CardContent.tsx +1 -1
  642. package/src/card/CardFooter.tsx +1 -1
  643. package/src/card/CardHeader.tsx +1 -1
  644. package/src/card/CardSubtitle.tsx +1 -1
  645. package/src/card/CardTitle.tsx +1 -1
  646. package/src/card/ClickableCard.tsx +1 -1
  647. package/src/chip/Chip.tsx +1 -1
  648. package/src/dialog/Dialog.tsx +1 -1
  649. package/src/dialog/DialogContent.tsx +1 -1
  650. package/src/dialog/DialogFooter.tsx +1 -1
  651. package/src/dialog/DialogHeader.tsx +1 -1
  652. package/src/dialog/DialogTitle.tsx +1 -1
  653. package/src/dialog/FixedDialog.tsx +1 -1
  654. package/src/divider/Divider.tsx +1 -1
  655. package/src/draggable/useDraggable.ts +1 -1
  656. package/src/expansion-panel/ExpansionList.tsx +1 -1
  657. package/src/expansion-panel/ExpansionPanel.tsx +1 -1
  658. package/src/expansion-panel/ExpansionPanelHeader.tsx +1 -1
  659. package/src/expansion-panel/useExpansionList.ts +1 -1
  660. package/src/expansion-panel/useExpansionPanels.ts +1 -1
  661. package/src/files/FileInput.tsx +1 -1
  662. package/src/files/useFileUpload.ts +2 -2
  663. package/src/form/Checkbox.tsx +1 -1
  664. package/src/form/Fieldset.tsx +1 -1
  665. package/src/form/Form.tsx +1 -1
  666. package/src/form/FormMessage.tsx +1 -1
  667. package/src/form/FormMessageContainer.tsx +1 -1
  668. package/src/form/FormMessageCounter.tsx +2 -2
  669. package/src/form/InputToggle.tsx +2 -2
  670. package/src/form/Label.tsx +3 -3
  671. package/src/form/Legend.tsx +1 -1
  672. package/src/form/NativeSelect.tsx +1 -1
  673. package/src/form/OptGroup.tsx +1 -1
  674. package/src/form/Option.tsx +1 -1
  675. package/src/form/Password.tsx +1 -1
  676. package/src/form/Radio.tsx +1 -1
  677. package/src/form/Select.tsx +1 -1
  678. package/src/form/Slider.tsx +1 -1
  679. package/src/form/Switch.tsx +1 -1
  680. package/src/form/TextArea.tsx +2 -2
  681. package/src/form/TextField.tsx +1 -1
  682. package/src/form/useCheckboxGroup.ts +10 -10
  683. package/src/form/useCombobox.ts +1 -0
  684. package/src/form/useNumberField.ts +4 -4
  685. package/src/form/useRadioGroup.ts +6 -6
  686. package/src/form/useRangeSlider.ts +1 -1
  687. package/src/form/useSlider.ts +1 -1
  688. package/src/form/useTextField.ts +6 -6
  689. package/src/form/utils.ts +1 -0
  690. package/src/icon/FontIcon.tsx +1 -1
  691. package/src/icon/IconRotator.tsx +1 -1
  692. package/src/icon/MaterialIcon.tsx +2 -2
  693. package/src/icon/MaterialSymbol.tsx +2 -2
  694. package/src/icon/SVGIcon.tsx +1 -1
  695. package/src/icon/TextIconSpacing.tsx +1 -1
  696. package/src/interaction/useElementInteraction.tsx +1 -1
  697. package/src/layout/LayoutAppBar.tsx +1 -1
  698. package/src/layout/LayoutNav.tsx +2 -2
  699. package/src/layout/LayoutWindowSplitter.tsx +1 -1
  700. package/src/layout/Main.tsx +1 -1
  701. package/src/layout/useExpandableLayout.ts +1 -1
  702. package/src/layout/useHorizontalLayoutTransition.ts +1 -1
  703. package/src/layout/useLayoutAppBarHeight.ts +1 -1
  704. package/src/layout/useLayoutTree.ts +3 -3
  705. package/src/layout/useLayoutWindowSplitter.ts +1 -1
  706. package/src/layout/useMainTabIndex.ts +1 -0
  707. package/src/layout/useResizableLayout.ts +1 -1
  708. package/src/layout/useTemporaryLayout.ts +1 -1
  709. package/src/link/Link.tsx +1 -1
  710. package/src/link/SkipToMainContent.tsx +1 -1
  711. package/src/list/List.tsx +1 -1
  712. package/src/list/ListItem.tsx +1 -1
  713. package/src/list/ListItemChildren.tsx +1 -1
  714. package/src/list/ListItemLink.tsx +1 -1
  715. package/src/list/ListSubheader.tsx +1 -1
  716. package/src/media-queries/AppSizeProvider.tsx +2 -2
  717. package/src/media-queries/useMediaQuery.ts +2 -2
  718. package/src/menu/DropdownMenu.tsx +2 -1
  719. package/src/menu/Menu.tsx +1 -1
  720. package/src/menu/MenuBar.tsx +1 -1
  721. package/src/menu/MenuButton.tsx +1 -1
  722. package/src/menu/MenuItem.tsx +1 -1
  723. package/src/menu/MenuItemCheckbox.tsx +1 -1
  724. package/src/menu/MenuItemFileInput.tsx +1 -1
  725. package/src/menu/MenuItemGroup.tsx +1 -1
  726. package/src/menu/MenuItemInputToggle.tsx +1 -1
  727. package/src/menu/MenuItemRadio.tsx +1 -1
  728. package/src/menu/MenuItemSeparator.tsx +1 -1
  729. package/src/menu/MenuItemSwitch.tsx +1 -1
  730. package/src/menu/MenuItemTextField.tsx +1 -1
  731. package/src/menu/useContextMenu.ts +1 -1
  732. package/src/navigation/CollapsibleNavGroup.tsx +1 -1
  733. package/src/navigation/DefaultNavigationRenderer.tsx +1 -1
  734. package/src/navigation/NavGroup.tsx +1 -1
  735. package/src/navigation/NavItem.tsx +1 -1
  736. package/src/navigation/NavItemButton.tsx +1 -1
  737. package/src/navigation/NavItemLink.tsx +1 -1
  738. package/src/navigation/NavSubheader.tsx +1 -1
  739. package/src/navigation/Navigation.tsx +1 -1
  740. package/src/navigation/useActiveHeadingId.ts +1 -1
  741. package/src/navigation/useNavigationExpansion.ts +2 -2
  742. package/src/navigation/useTableOfContentsHeadings.ts +1 -1
  743. package/src/overlay/Overlay.tsx +1 -1
  744. package/src/portal/Portal.tsx +1 -1
  745. package/src/portal/PortalContainerProvider.tsx +1 -1
  746. package/src/positioning/useFixedPositioning.ts +1 -1
  747. package/src/progress/CircularProgress.tsx +1 -1
  748. package/src/progress/LinearProgress.tsx +1 -1
  749. package/src/responsive-item/ResponsiveItem.tsx +1 -1
  750. package/src/responsive-item/ResponsiveItemOverlay.tsx +1 -1
  751. package/src/scroll/useScrollLock.ts +1 -1
  752. package/src/segmented-button/SegmentedButton.tsx +1 -1
  753. package/src/segmented-button/SegmentedButtonContainer.tsx +1 -1
  754. package/src/sheet/Sheet.tsx +1 -1
  755. package/src/snackbar/DefaultToastRenderer.tsx +1 -1
  756. package/src/snackbar/Snackbar.tsx +1 -1
  757. package/src/snackbar/Toast.tsx +1 -1
  758. package/src/snackbar/ToastActionButton.tsx +1 -1
  759. package/src/snackbar/ToastCloseButton.tsx +1 -1
  760. package/src/snackbar/ToastContent.tsx +1 -1
  761. package/src/snackbar/ToastManager.ts +1 -1
  762. package/src/snackbar/ToastManagerProvider.tsx +1 -1
  763. package/src/snackbar/useCurrentToastActions.ts +1 -1
  764. package/src/storage/useStorage.ts +1 -1
  765. package/src/suspense/CircularProgressSuspense.tsx +1 -1
  766. package/src/suspense/NullSuspense.tsx +1 -1
  767. package/src/table/StickyTableSection.tsx +2 -2
  768. package/src/table/Table.tsx +1 -1
  769. package/src/table/TableBody.tsx +1 -1
  770. package/src/table/TableCell.tsx +1 -1
  771. package/src/table/TableCheckbox.tsx +1 -1
  772. package/src/table/TableContainer.tsx +1 -1
  773. package/src/table/TableFooter.tsx +1 -1
  774. package/src/table/TableHeader.tsx +1 -1
  775. package/src/table/TableRadio.tsx +1 -1
  776. package/src/table/TableRow.tsx +1 -1
  777. package/src/tabs/SimpleTabPanel.tsx +2 -2
  778. package/src/tabs/SimpleTabPanels.tsx +2 -2
  779. package/src/tabs/Tab.tsx +1 -1
  780. package/src/tabs/TabList.tsx +1 -1
  781. package/src/tabs/useTabs.ts +6 -5
  782. package/src/theme/LocalStorageColorSchemeProvider.tsx +2 -2
  783. package/src/theme/ThemeProvider.tsx +1 -1
  784. package/src/theme/useColorSchemeProvider.ts +1 -0
  785. package/src/theme/utils.ts +2 -1
  786. package/src/tooltip/Tooltip.tsx +1 -1
  787. package/src/tooltip/TooltipHoverModeProvider.tsx +1 -1
  788. package/src/tooltip/useTooltip.ts +1 -1
  789. package/src/transition/CSSTransition.tsx +1 -1
  790. package/src/transition/Collapse.tsx +1 -1
  791. package/src/transition/CrossFade.tsx +1 -1
  792. package/src/transition/ScaleTransition.tsx +1 -1
  793. package/src/transition/SkeletonPlaceholder.tsx +1 -1
  794. package/src/transition/Slide.tsx +1 -1
  795. package/src/transition/SlideContainer.tsx +1 -1
  796. package/src/transition/useCSSTransition.ts +2 -2
  797. package/src/transition/useCarousel.ts +1 -1
  798. package/src/transition/useCollapseTransition.ts +2 -2
  799. package/src/transition/useCrossFadeTransition.ts +2 -2
  800. package/src/transition/useScaleTransition.ts +2 -2
  801. package/src/transition/useSkeletonPlaceholder.ts +2 -2
  802. package/src/transition/useSlideTransition.ts +1 -1
  803. package/src/transition/useTransition.ts +1 -1
  804. package/src/tree/DefaultTreeItemRenderer.tsx +1 -1
  805. package/src/tree/Tree.tsx +1 -1
  806. package/src/tree/TreeItem.tsx +1 -1
  807. package/src/tree/useTree.ts +1 -1
  808. package/src/tree/useTreeExpansion.ts +1 -1
  809. package/src/tree/useTreeItems.ts +1 -1
  810. package/src/tree/useTreeSelection.ts +1 -1
  811. package/src/typography/HighlightText.tsx +1 -1
  812. package/src/typography/Mark.tsx +1 -1
  813. package/src/typography/SrOnly.tsx +1 -1
  814. package/src/typography/TextContainer.tsx +1 -1
  815. package/src/typography/Typography.tsx +1 -1
  816. package/src/typography/WritingDirectionProvider.tsx +1 -1
  817. package/src/useEnsuredState.ts +6 -3
  818. package/src/utils/RenderRecursively.tsx +1 -1
  819. package/src/utils/bem.ts +1 -1
  820. package/src/utils/parseCssLengthUnit.ts +4 -0
  821. package/src/window-splitter/WindowSplitter.tsx +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/scroll/useScrollLock.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect } from \"react\";\n\nimport { getScrollbarWidth } from \"./getScrollbarWidth.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-scrollbar-size\"?: string;\n }\n}\n\nexport const SCROLLBAR_SIZE_VAR = \"--rmd-scrollbar-size\";\n\n// this is really just so that nested dialogs will work correctly. Only the\n// first created dialog should prevent scroll locking on the `document.body`\nlet isLocked = false;\n\n/**\n * Used to enable scroll locking on the entire page.\n *\n * @see {@link https://next.react-md.dev/hooks/use-scroll-lock | useScrollLock Demos}\n * @since 6.0.0 No longer support scroll locking elements other than\n * the `document.body` since it's more reliable to scroll lock with an overlay.\n * @since 6.0.0 Now applies `paddingRight` equal to the current OS's\n * scrollbar width if there is a full page scrollbar to prevent layout shifting.\n *\n * @param locked - The `document.body` will not be scrollable when this is\n * `true`.\n */\nexport function useScrollLock(locked: boolean): void {\n useEffect(() => {\n if (isLocked || !locked) {\n return;\n }\n\n isLocked = true;\n\n const size = `${getScrollbarWidth()}px`;\n const el = document.body;\n const { paddingRight } = el.style;\n const isScrollbarVisible = el.scrollHeight > el.offsetHeight;\n\n el.style.overflow = \"hidden\";\n if (isScrollbarVisible) {\n el.style.setProperty(SCROLLBAR_SIZE_VAR, size);\n el.style.paddingRight = `var(${SCROLLBAR_SIZE_VAR})`;\n }\n\n return () => {\n isLocked = false;\n\n el.style.removeProperty(SCROLLBAR_SIZE_VAR);\n el.style.overflow = \"\";\n if (isScrollbarVisible) {\n el.style.paddingRight = paddingRight;\n }\n };\n }, [locked]);\n}\n"],"names":["useEffect","getScrollbarWidth","SCROLLBAR_SIZE_VAR","isLocked","useScrollLock","locked","size","el","document","body","paddingRight","style","isScrollbarVisible","scrollHeight","offsetHeight","overflow","setProperty","removeProperty"],"mappings":"AAAA;AAEA,SAASA,SAAS,QAAQ,QAAQ;AAElC,SAASC,iBAAiB,QAAQ,yBAAyB;AAQ3D,OAAO,MAAMC,qBAAqB,uBAAuB;AAEzD,2EAA2E;AAC3E,4EAA4E;AAC5E,IAAIC,WAAW;AAEf;;;;;;;;;;;CAWC,GACD,OAAO,SAASC,cAAcC,MAAe;IAC3CL,UAAU;QACR,IAAIG,YAAY,CAACE,QAAQ;YACvB;QACF;QAEAF,WAAW;QAEX,MAAMG,OAAO,GAAGL,oBAAoB,EAAE,CAAC;QACvC,MAAMM,KAAKC,SAASC,IAAI;QACxB,MAAM,EAAEC,YAAY,EAAE,GAAGH,GAAGI,KAAK;QACjC,MAAMC,qBAAqBL,GAAGM,YAAY,GAAGN,GAAGO,YAAY;QAE5DP,GAAGI,KAAK,CAACI,QAAQ,GAAG;QACpB,IAAIH,oBAAoB;YACtBL,GAAGI,KAAK,CAACK,WAAW,CAACd,oBAAoBI;YACzCC,GAAGI,KAAK,CAACD,YAAY,GAAG,CAAC,IAAI,EAAER,mBAAmB,CAAC,CAAC;QACtD;QAEA,OAAO;YACLC,WAAW;YAEXI,GAAGI,KAAK,CAACM,cAAc,CAACf;YACxBK,GAAGI,KAAK,CAACI,QAAQ,GAAG;YACpB,IAAIH,oBAAoB;gBACtBL,GAAGI,KAAK,CAACD,YAAY,GAAGA;YAC1B;QACF;IACF,GAAG;QAACL;KAAO;AACb"}
1
+ {"version":3,"sources":["../../src/scroll/useScrollLock.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect } from \"react\";\n\nimport { getScrollbarWidth } from \"./getScrollbarWidth.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-scrollbar-size\"?: string;\n }\n}\n\nexport const SCROLLBAR_SIZE_VAR = \"--rmd-scrollbar-size\";\n\n// this is really just so that nested dialogs will work correctly. Only the\n// first created dialog should prevent scroll locking on the `document.body`\nlet isLocked = false;\n\n/**\n * Used to enable scroll locking on the entire page.\n *\n * @see {@link https://react-md.dev/hooks/use-scroll-lock | useScrollLock Demos}\n * @since 6.0.0 No longer support scroll locking elements other than\n * the `document.body` since it's more reliable to scroll lock with an overlay.\n * @since 6.0.0 Now applies `paddingRight` equal to the current OS's\n * scrollbar width if there is a full page scrollbar to prevent layout shifting.\n *\n * @param locked - The `document.body` will not be scrollable when this is\n * `true`.\n */\nexport function useScrollLock(locked: boolean): void {\n useEffect(() => {\n if (isLocked || !locked) {\n return;\n }\n\n isLocked = true;\n\n const size = `${getScrollbarWidth()}px`;\n const el = document.body;\n const { paddingRight } = el.style;\n const isScrollbarVisible = el.scrollHeight > el.offsetHeight;\n\n el.style.overflow = \"hidden\";\n if (isScrollbarVisible) {\n el.style.setProperty(SCROLLBAR_SIZE_VAR, size);\n el.style.paddingRight = `var(${SCROLLBAR_SIZE_VAR})`;\n }\n\n return () => {\n isLocked = false;\n\n el.style.removeProperty(SCROLLBAR_SIZE_VAR);\n el.style.overflow = \"\";\n if (isScrollbarVisible) {\n el.style.paddingRight = paddingRight;\n }\n };\n }, [locked]);\n}\n"],"names":["useEffect","getScrollbarWidth","SCROLLBAR_SIZE_VAR","isLocked","useScrollLock","locked","size","el","document","body","paddingRight","style","isScrollbarVisible","scrollHeight","offsetHeight","overflow","setProperty","removeProperty"],"mappings":"AAAA;AAEA,SAASA,SAAS,QAAQ,QAAQ;AAElC,SAASC,iBAAiB,QAAQ,yBAAyB;AAQ3D,OAAO,MAAMC,qBAAqB,uBAAuB;AAEzD,2EAA2E;AAC3E,4EAA4E;AAC5E,IAAIC,WAAW;AAEf;;;;;;;;;;;CAWC,GACD,OAAO,SAASC,cAAcC,MAAe;IAC3CL,UAAU;QACR,IAAIG,YAAY,CAACE,QAAQ;YACvB;QACF;QAEAF,WAAW;QAEX,MAAMG,OAAO,GAAGL,oBAAoB,EAAE,CAAC;QACvC,MAAMM,KAAKC,SAASC,IAAI;QACxB,MAAM,EAAEC,YAAY,EAAE,GAAGH,GAAGI,KAAK;QACjC,MAAMC,qBAAqBL,GAAGM,YAAY,GAAGN,GAAGO,YAAY;QAE5DP,GAAGI,KAAK,CAACI,QAAQ,GAAG;QACpB,IAAIH,oBAAoB;YACtBL,GAAGI,KAAK,CAACK,WAAW,CAACd,oBAAoBI;YACzCC,GAAGI,KAAK,CAACD,YAAY,GAAG,CAAC,IAAI,EAAER,mBAAmB,CAAC,CAAC;QACtD;QAEA,OAAO;YACLC,WAAW;YAEXI,GAAGI,KAAK,CAACM,cAAc,CAACf;YACxBK,GAAGI,KAAK,CAACI,QAAQ,GAAG;YACpB,IAAIH,oBAAoB;gBACtBL,GAAGI,KAAK,CAACD,YAAY,GAAGA;YAC1B;QACF;IACF,GAAG;QAACL;KAAO;AACb"}
@@ -81,7 +81,7 @@ export interface SegmentedButtonProps extends ButtonHTMLAttributes<HTMLButtonEle
81
81
  * }
82
82
  * ```
83
83
  *
84
- * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}
84
+ * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
85
85
  * @since 6.0.0
86
86
  */
87
87
  export declare const SegmentedButton: import("react").ForwardRefExoticComponent<SegmentedButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -44,7 +44,7 @@ import { segmentedButton } from "./segmentedButtonStyles.js";
44
44
  * }
45
45
  * ```
46
46
  *
47
- * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}
47
+ * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
48
48
  * @since 6.0.0
49
49
  */ export const SegmentedButton = /*#__PURE__*/ forwardRef(function SegmentedButton(props, ref) {
50
50
  const { className, type = "button", leftAddon, rightAddon, children: propChildren, selected, selectedIcon: propSelectedIcon, selectedClassName, disableSelectedIcon, disableSelectedTransition, onBlur, onClick, onKeyDown, onKeyUp, onMouseDown, onMouseUp, onMouseLeave, onDragStart, onTouchStart, onTouchEnd, onTouchMove, disabled, disableRipple, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/segmented-button/SegmentedButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ButtonHTMLAttributes, type ReactNode, forwardRef } from \"react\";\n\nimport { getIcon } from \"../icon/config.js\";\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { useHigherContrastChildren } from \"../interaction/useHigherContrastChildren.js\";\nimport { useMaxWidthTransition } from \"../transition/useMaxWidthTransition.js\";\nimport { segmentedButton } from \"./segmentedButtonStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface SegmentedButtonProps\n extends ButtonHTMLAttributes<HTMLButtonElement>,\n ComponentWithRippleProps {\n /**\n * Set this to `true` to apply selected styles and an optional\n * {@link selectedIcon}\n *\n * @defaultValue `false`\n */\n selected?: boolean;\n\n /** @defaultValue `getIcon(\"selected\")` */\n selectedIcon?: ReactNode;\n\n /**\n * An optional className to apply when {@link selected} is `true`.\n */\n selectedClassName?: string;\n\n /**\n * Set this to `true` to not render the {@link selectedIcon} when\n * {@link selected} is `true`.\n *\n * @defaultValue `false`\n */\n disableSelectedIcon?: boolean;\n\n /**\n * Set this to `true` to disable the {@link selectedIcon} enter/exit\n * transition and instead just use `display: none`.\n *\n * @defaultValue `false`\n */\n disableSelectedTransition?: boolean;\n\n /**\n * An optional addon to render before the {@link children} and after the\n * {@link selectedIcon}. This is only useful when rendering text children so\n * it can appear above the interaction states.\n */\n leftAddon?: ReactNode;\n\n /**\n * An optional addon to render after the {@link children}. This is only useful\n * when rendering text children so it can appear above the interaction states.\n */\n rightAddon?: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * @example Simple Example\n * ```tsx\n * import { SegmentedButton } from \"@react-md/core/segmented-button/SegmentedButton\";\n * import { SegmentedButtonContainer } from \"@react-md/core/segmented-button/SegmentedButtonContainer\";\n * import type { ReactElement } from \"react\";\n * import { useState } from \"react\";\n *\n * function Example(): ReactElement {\n * const [value, setValue] = useState(\"a\");\n * return (\n * <SegmentedButtonContainer>\n * <SegmentedButton\n * onClick={() => setValue(\"a\")}\n * selected={value === \"a\"}\n * >\n * First\n * </SegmentedButton>\n * <SegmentedButton\n * onClick={() => setValue(\"b\")}\n * selected={value === \"b\"}\n * >\n * Second\n * </SegmentedButton>\n * <SegmentedButton\n * onClick={() => setValue(\"c\")}\n * selected={value === \"c\"}\n * disableSelectedIcon\n * >\n * Third\n * </SegmentedButton>\n * </SegmentedButtonContainer>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}\n * @since 6.0.0\n */\nexport const SegmentedButton = forwardRef<\n HTMLButtonElement,\n SegmentedButtonProps\n>(function SegmentedButton(props, ref) {\n const {\n className,\n type = \"button\",\n leftAddon,\n rightAddon,\n children: propChildren,\n selected,\n selectedIcon: propSelectedIcon,\n selectedClassName,\n disableSelectedIcon,\n disableSelectedTransition,\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n disabled,\n disableRipple,\n ...remaining\n } = props;\n\n const children = useHigherContrastChildren(propChildren);\n const selectedIconNode = getIcon(\"selected\", propSelectedIcon);\n const selectedIcon = useMaxWidthTransition({\n element: selectedIconNode,\n transitionIn: !!selected,\n disabled: disableSelectedIcon,\n disableTransition: disableSelectedTransition,\n });\n const { pressedClassName, handlers, ripples } = useElementInteraction({\n mode: disableRipple ? \"none\" : undefined,\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n disabled,\n });\n\n return (\n <button\n {...remaining}\n {...handlers}\n aria-pressed={selected}\n ref={ref}\n type={type}\n disabled={disabled}\n className={segmentedButton({\n className,\n selected,\n selectedClassName,\n pressedClassName,\n })}\n >\n {!disableSelectedIcon && selectedIcon}\n {leftAddon}\n {children}\n {rightAddon}\n {ripples}\n </button>\n );\n});\n"],"names":["forwardRef","getIcon","useElementInteraction","useHigherContrastChildren","useMaxWidthTransition","segmentedButton","SegmentedButton","props","ref","className","type","leftAddon","rightAddon","children","propChildren","selected","selectedIcon","propSelectedIcon","selectedClassName","disableSelectedIcon","disableSelectedTransition","onBlur","onClick","onKeyDown","onKeyUp","onMouseDown","onMouseUp","onMouseLeave","onDragStart","onTouchStart","onTouchEnd","onTouchMove","disabled","disableRipple","remaining","selectedIconNode","element","transitionIn","disableTransition","pressedClassName","handlers","ripples","mode","undefined","button","aria-pressed"],"mappings":"AAAA;;AAEA,SAAoDA,UAAU,QAAQ,QAAQ;AAE9E,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,qBAAqB,QAAQ,yCAAyC;AAC/E,SAASC,eAAe,QAAQ,6BAA6B;AAsD7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCC,GACD,OAAO,MAAMC,gCAAkBN,WAG7B,SAASM,gBAAgBC,KAAK,EAAEC,GAAG;IACnC,MAAM,EACJC,SAAS,EACTC,OAAO,QAAQ,EACfC,SAAS,EACTC,UAAU,EACVC,UAAUC,YAAY,EACtBC,QAAQ,EACRC,cAAcC,gBAAgB,EAC9BC,iBAAiB,EACjBC,mBAAmB,EACnBC,yBAAyB,EACzBC,MAAM,EACNC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,UAAU,EACVC,WAAW,EACXC,QAAQ,EACRC,aAAa,EACb,GAAGC,WACJ,GAAG3B;IAEJ,MAAMM,WAAWV,0BAA0BW;IAC3C,MAAMqB,mBAAmBlC,QAAQ,YAAYgB;IAC7C,MAAMD,eAAeZ,sBAAsB;QACzCgC,SAASD;QACTE,cAAc,CAAC,CAACtB;QAChBiB,UAAUb;QACVmB,mBAAmBlB;IACrB;IACA,MAAM,EAAEmB,gBAAgB,EAAEC,QAAQ,EAAEC,OAAO,EAAE,GAAGvC,sBAAsB;QACpEwC,MAAMT,gBAAgB,SAASU;QAC/BtB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE,MAACY;QACE,GAAGV,SAAS;QACZ,GAAGM,QAAQ;QACZK,gBAAc9B;QACdP,KAAKA;QACLE,MAAMA;QACNsB,UAAUA;QACVvB,WAAWJ,gBAAgB;YACzBI;YACAM;YACAG;YACAqB;QACF;;YAEC,CAACpB,uBAAuBH;YACxBL;YACAE;YACAD;YACA6B;;;AAGP,GAAG"}
1
+ {"version":3,"sources":["../../src/segmented-button/SegmentedButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ButtonHTMLAttributes, type ReactNode, forwardRef } from \"react\";\n\nimport { getIcon } from \"../icon/config.js\";\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { useHigherContrastChildren } from \"../interaction/useHigherContrastChildren.js\";\nimport { useMaxWidthTransition } from \"../transition/useMaxWidthTransition.js\";\nimport { segmentedButton } from \"./segmentedButtonStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface SegmentedButtonProps\n extends ButtonHTMLAttributes<HTMLButtonElement>,\n ComponentWithRippleProps {\n /**\n * Set this to `true` to apply selected styles and an optional\n * {@link selectedIcon}\n *\n * @defaultValue `false`\n */\n selected?: boolean;\n\n /** @defaultValue `getIcon(\"selected\")` */\n selectedIcon?: ReactNode;\n\n /**\n * An optional className to apply when {@link selected} is `true`.\n */\n selectedClassName?: string;\n\n /**\n * Set this to `true` to not render the {@link selectedIcon} when\n * {@link selected} is `true`.\n *\n * @defaultValue `false`\n */\n disableSelectedIcon?: boolean;\n\n /**\n * Set this to `true` to disable the {@link selectedIcon} enter/exit\n * transition and instead just use `display: none`.\n *\n * @defaultValue `false`\n */\n disableSelectedTransition?: boolean;\n\n /**\n * An optional addon to render before the {@link children} and after the\n * {@link selectedIcon}. This is only useful when rendering text children so\n * it can appear above the interaction states.\n */\n leftAddon?: ReactNode;\n\n /**\n * An optional addon to render after the {@link children}. This is only useful\n * when rendering text children so it can appear above the interaction states.\n */\n rightAddon?: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * @example Simple Example\n * ```tsx\n * import { SegmentedButton } from \"@react-md/core/segmented-button/SegmentedButton\";\n * import { SegmentedButtonContainer } from \"@react-md/core/segmented-button/SegmentedButtonContainer\";\n * import type { ReactElement } from \"react\";\n * import { useState } from \"react\";\n *\n * function Example(): ReactElement {\n * const [value, setValue] = useState(\"a\");\n * return (\n * <SegmentedButtonContainer>\n * <SegmentedButton\n * onClick={() => setValue(\"a\")}\n * selected={value === \"a\"}\n * >\n * First\n * </SegmentedButton>\n * <SegmentedButton\n * onClick={() => setValue(\"b\")}\n * selected={value === \"b\"}\n * >\n * Second\n * </SegmentedButton>\n * <SegmentedButton\n * onClick={() => setValue(\"c\")}\n * selected={value === \"c\"}\n * disableSelectedIcon\n * >\n * Third\n * </SegmentedButton>\n * </SegmentedButtonContainer>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}\n * @since 6.0.0\n */\nexport const SegmentedButton = forwardRef<\n HTMLButtonElement,\n SegmentedButtonProps\n>(function SegmentedButton(props, ref) {\n const {\n className,\n type = \"button\",\n leftAddon,\n rightAddon,\n children: propChildren,\n selected,\n selectedIcon: propSelectedIcon,\n selectedClassName,\n disableSelectedIcon,\n disableSelectedTransition,\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n disabled,\n disableRipple,\n ...remaining\n } = props;\n\n const children = useHigherContrastChildren(propChildren);\n const selectedIconNode = getIcon(\"selected\", propSelectedIcon);\n const selectedIcon = useMaxWidthTransition({\n element: selectedIconNode,\n transitionIn: !!selected,\n disabled: disableSelectedIcon,\n disableTransition: disableSelectedTransition,\n });\n const { pressedClassName, handlers, ripples } = useElementInteraction({\n mode: disableRipple ? \"none\" : undefined,\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n disabled,\n });\n\n return (\n <button\n {...remaining}\n {...handlers}\n aria-pressed={selected}\n ref={ref}\n type={type}\n disabled={disabled}\n className={segmentedButton({\n className,\n selected,\n selectedClassName,\n pressedClassName,\n })}\n >\n {!disableSelectedIcon && selectedIcon}\n {leftAddon}\n {children}\n {rightAddon}\n {ripples}\n </button>\n );\n});\n"],"names":["forwardRef","getIcon","useElementInteraction","useHigherContrastChildren","useMaxWidthTransition","segmentedButton","SegmentedButton","props","ref","className","type","leftAddon","rightAddon","children","propChildren","selected","selectedIcon","propSelectedIcon","selectedClassName","disableSelectedIcon","disableSelectedTransition","onBlur","onClick","onKeyDown","onKeyUp","onMouseDown","onMouseUp","onMouseLeave","onDragStart","onTouchStart","onTouchEnd","onTouchMove","disabled","disableRipple","remaining","selectedIconNode","element","transitionIn","disableTransition","pressedClassName","handlers","ripples","mode","undefined","button","aria-pressed"],"mappings":"AAAA;;AAEA,SAAoDA,UAAU,QAAQ,QAAQ;AAE9E,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,qBAAqB,QAAQ,yCAAyC;AAC/E,SAASC,eAAe,QAAQ,6BAA6B;AAsD7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCC,GACD,OAAO,MAAMC,gCAAkBN,WAG7B,SAASM,gBAAgBC,KAAK,EAAEC,GAAG;IACnC,MAAM,EACJC,SAAS,EACTC,OAAO,QAAQ,EACfC,SAAS,EACTC,UAAU,EACVC,UAAUC,YAAY,EACtBC,QAAQ,EACRC,cAAcC,gBAAgB,EAC9BC,iBAAiB,EACjBC,mBAAmB,EACnBC,yBAAyB,EACzBC,MAAM,EACNC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,UAAU,EACVC,WAAW,EACXC,QAAQ,EACRC,aAAa,EACb,GAAGC,WACJ,GAAG3B;IAEJ,MAAMM,WAAWV,0BAA0BW;IAC3C,MAAMqB,mBAAmBlC,QAAQ,YAAYgB;IAC7C,MAAMD,eAAeZ,sBAAsB;QACzCgC,SAASD;QACTE,cAAc,CAAC,CAACtB;QAChBiB,UAAUb;QACVmB,mBAAmBlB;IACrB;IACA,MAAM,EAAEmB,gBAAgB,EAAEC,QAAQ,EAAEC,OAAO,EAAE,GAAGvC,sBAAsB;QACpEwC,MAAMT,gBAAgB,SAASU;QAC/BtB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE,MAACY;QACE,GAAGV,SAAS;QACZ,GAAGM,QAAQ;QACZK,gBAAc9B;QACdP,KAAKA;QACLE,MAAMA;QACNsB,UAAUA;QACVvB,WAAWJ,gBAAgB;YACzBI;YACAM;YACAG;YACAqB;QACF;;YAEC,CAACpB,uBAAuBH;YACxBL;YACAE;YACAD;YACA6B;;;AAGP,GAAG"}
@@ -29,7 +29,7 @@ export interface SegmentedButtonContainerProps extends HTMLAttributes<HTMLDivEle
29
29
  * }
30
30
  * ```
31
31
  *
32
- * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}
32
+ * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
33
33
  * @since 6.0.0
34
34
  */
35
35
  export declare const SegmentedButtonContainer: import("react").ForwardRefExoticComponent<SegmentedButtonContainerProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -24,7 +24,7 @@ import { segmentedButtonContainer } from "./segmentedButtonContainerStyles.js";
24
24
  * }
25
25
  * ```
26
26
  *
27
- * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}
27
+ * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}
28
28
  * @since 6.0.0
29
29
  */ export const SegmentedButtonContainer = /*#__PURE__*/ forwardRef(function SegmentedButtonContainer(props, ref) {
30
30
  const { className, disableFullWidth, children, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/segmented-button/SegmentedButtonContainer.tsx"],"sourcesContent":["import { type HTMLAttributes, type ReactNode, forwardRef } from \"react\";\n\nimport {\n type SegmentedButtonContainerClassNameOptions,\n segmentedButtonContainer,\n} from \"./segmentedButtonContainerStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface SegmentedButtonContainerProps\n extends HTMLAttributes<HTMLDivElement>,\n SegmentedButtonContainerClassNameOptions {\n children: ReactNode;\n}\n\n/**\n * Simple wrapper `div` to apply the segmented button container styles. You can\n * just use the {@link segmentedButtonContainer} util function instead.\n *\n * @example Without This Component\n * ```tsx\n * import { SegmentedButton } from \"@react-md/core/segmented-button/SegmentedButton\";\n * import { segmentedButtonContainer } from \"@react-md/core/segmented-button/SegmentedButtonContainer\";\n * import type { ReactElement } from \"react\";\n *\n * import { CustomWrapperComponent } from \"./CustomWrapperComponent.jsx\";\n *\n * function Example(): ReactElement {\n * return (\n * <CustomWrapperComponent className={segmentedButtonContainer()}>\n * <SegmentedButton>One</SegmentedButton>\n * <SegmentedButton>Two</SegmentedButton>\n * <SegmentedButton>Three</SegmentedButton>\n * </CustomWrapperComponent>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/segmented-button | SegmentedButton Demos}\n * @since 6.0.0\n */\nexport const SegmentedButtonContainer = forwardRef<\n HTMLDivElement,\n SegmentedButtonContainerProps\n>(function SegmentedButtonContainer(props, ref) {\n const { className, disableFullWidth, children, ...remaining } = props;\n\n return (\n <div\n {...remaining}\n ref={ref}\n className={segmentedButtonContainer({\n className,\n disableFullWidth,\n })}\n >\n {children}\n </div>\n );\n});\n"],"names":["forwardRef","segmentedButtonContainer","SegmentedButtonContainer","props","ref","className","disableFullWidth","children","remaining","div"],"mappings":";AAAA,SAA8CA,UAAU,QAAQ,QAAQ;AAExE,SAEEC,wBAAwB,QACnB,sCAAsC;AAW7C;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,yCAA2BF,WAGtC,SAASE,yBAAyBC,KAAK,EAAEC,GAAG;IAC5C,MAAM,EAAEC,SAAS,EAAEC,gBAAgB,EAAEC,QAAQ,EAAE,GAAGC,WAAW,GAAGL;IAEhE,qBACE,KAACM;QACE,GAAGD,SAAS;QACbJ,KAAKA;QACLC,WAAWJ,yBAAyB;YAClCI;YACAC;QACF;kBAECC;;AAGP,GAAG"}
1
+ {"version":3,"sources":["../../src/segmented-button/SegmentedButtonContainer.tsx"],"sourcesContent":["import { type HTMLAttributes, type ReactNode, forwardRef } from \"react\";\n\nimport {\n type SegmentedButtonContainerClassNameOptions,\n segmentedButtonContainer,\n} from \"./segmentedButtonContainerStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface SegmentedButtonContainerProps\n extends HTMLAttributes<HTMLDivElement>,\n SegmentedButtonContainerClassNameOptions {\n children: ReactNode;\n}\n\n/**\n * Simple wrapper `div` to apply the segmented button container styles. You can\n * just use the {@link segmentedButtonContainer} util function instead.\n *\n * @example Without This Component\n * ```tsx\n * import { SegmentedButton } from \"@react-md/core/segmented-button/SegmentedButton\";\n * import { segmentedButtonContainer } from \"@react-md/core/segmented-button/SegmentedButtonContainer\";\n * import type { ReactElement } from \"react\";\n *\n * import { CustomWrapperComponent } from \"./CustomWrapperComponent.jsx\";\n *\n * function Example(): ReactElement {\n * return (\n * <CustomWrapperComponent className={segmentedButtonContainer()}>\n * <SegmentedButton>One</SegmentedButton>\n * <SegmentedButton>Two</SegmentedButton>\n * <SegmentedButton>Three</SegmentedButton>\n * </CustomWrapperComponent>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/segmented-button | SegmentedButton Demos}\n * @since 6.0.0\n */\nexport const SegmentedButtonContainer = forwardRef<\n HTMLDivElement,\n SegmentedButtonContainerProps\n>(function SegmentedButtonContainer(props, ref) {\n const { className, disableFullWidth, children, ...remaining } = props;\n\n return (\n <div\n {...remaining}\n ref={ref}\n className={segmentedButtonContainer({\n className,\n disableFullWidth,\n })}\n >\n {children}\n </div>\n );\n});\n"],"names":["forwardRef","segmentedButtonContainer","SegmentedButtonContainer","props","ref","className","disableFullWidth","children","remaining","div"],"mappings":";AAAA,SAA8CA,UAAU,QAAQ,QAAQ;AAExE,SAEEC,wBAAwB,QACnB,sCAAsC;AAW7C;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,yCAA2BF,WAGtC,SAASE,yBAAyBC,KAAK,EAAEC,GAAG;IAC5C,MAAM,EAAEC,SAAS,EAAEC,gBAAgB,EAAEC,QAAQ,EAAE,GAAGC,WAAW,GAAGL;IAEhE,qBACE,KAACM;QACE,GAAGD,SAAS;QACbJ,KAAKA;QACLC,WAAWJ,yBAAyB;YAClCI;YACAC;QACF;kBAECC;;AAGP,GAAG"}
@@ -5,6 +5,7 @@
5
5
  @use "sass:map";
6
6
  @use "sass:color";
7
7
  @use "../utils";
8
+ @use "../spacing";
8
9
  @use "../icon/icon";
9
10
  @use "../interaction/interaction";
10
11
  @use "../typography/typography";
@@ -69,7 +70,7 @@ $dark-theme-selected-color: a11y.contrast-color(
69
70
 
70
71
  /// The default gap to apply between the elements in the `SegmentedButton`.
71
72
  /// @type Number
72
- $gap: icon.$spacing !default;
73
+ $gap: spacing.get-var(sm) !default;
73
74
 
74
75
  /// The default border-radius to apply `SegmentedButton` that appear at the
75
76
  /// edges.
@@ -86,11 +87,11 @@ $min-width: 3rem !default;
86
87
 
87
88
  /// The default horizontal padding for a `SegmentedButton`.
88
89
  /// @type Number
89
- $horizontal-padding: 0.75rem !default;
90
+ $horizontal-padding: calc(spacing.get-var(sm) * 1.5) !default;
90
91
 
91
92
  /// The default vertical padding for a `SegmentedButton`.
92
93
  /// @type Number
93
- $vertical-padding: 0 !default;
94
+ $vertical-padding: spacing.get-var(none) !default;
94
95
 
95
96
  /// The default outline width for a `SegmentedButton`.
96
97
  /// @type Number
@@ -129,6 +130,9 @@ $typography-styles: typography.$button-styles !default;
129
130
  /// `get-var`, `set-var`, and `use-var` utils.
130
131
  /// @type List
131
132
  $variables: (
133
+ border-radius,
134
+ min-height,
135
+ min-width,
132
136
  outline-width,
133
137
  outline-color,
134
138
  color,
@@ -212,6 +216,7 @@ $variables: (
212
216
  /// Conditionally applies the css variables based on feature flags
213
217
  @mixin variables {
214
218
  @if not $disable-everything {
219
+ @include set-var(border-radius, $border-radius);
215
220
  @include set-var(outline-width, $outline-width);
216
221
  @include set-var(outline-color, $outline-color);
217
222
  @include set-var(color, currentcolor);
@@ -242,6 +247,8 @@ $variables: (
242
247
  @include icon.set-var(color, currentcolor);
243
248
  @include icon.set-var(size, 1.125rem);
244
249
  @include utils.map-to-styles($typography-styles);
250
+ @include use-var(min-height, $fallback: $min-height);
251
+ @include use-var(min-width, $fallback: $min-width);
245
252
 
246
253
  align-items: center;
247
254
  background-color: transparent;
@@ -250,30 +257,30 @@ $variables: (
250
257
  display: inline-flex;
251
258
  gap: $gap;
252
259
  justify-content: center;
253
- min-height: $min-height;
254
- min-width: $min-width;
255
260
  padding: $vertical-padding $horizontal-padding;
256
261
 
257
262
  &:first-child {
258
- border-bottom-left-radius: $border-radius;
259
- border-top-left-radius: $border-radius;
263
+ @include use-var(border-bottom-left-radius, border-radius);
264
+ @include use-var(border-top-left-radius, border-radius);
260
265
 
261
266
  @include utils.rtl {
267
+ @include use-var(border-bottom-right-radius, border-radius);
268
+ @include use-var(border-top-right-radius, border-radius);
269
+
262
270
  border-bottom-left-radius: 0;
263
- border-bottom-right-radius: $border-radius;
264
271
  border-top-left-radius: 0;
265
- border-top-right-radius: $border-radius;
266
272
  }
267
273
  }
268
274
 
269
275
  &:last-child {
270
- border-bottom-right-radius: $border-radius;
271
- border-top-right-radius: $border-radius;
276
+ @include use-var(border-bottom-right-radius, border-radius);
277
+ @include use-var(border-top-right-radius, border-radius);
272
278
 
273
279
  @include utils.rtl {
274
- border-bottom-left-radius: $border-radius;
280
+ @include use-var(border-bottom-left-radius, border-radius);
281
+ @include use-var(border-top-left-radius, border-radius);
282
+
275
283
  border-bottom-right-radius: 0;
276
- border-top-left-radius: $border-radius;
277
284
  border-top-right-radius: 0;
278
285
  }
279
286
  }
@@ -61,6 +61,6 @@ export type SheetProps = LabelRequiredForA11y<BaseSheetProps>;
61
61
  * }
62
62
  * ```
63
63
  *
64
- * @see {@link https://next.react-md.dev/components/sheet | Sheet Demos}
64
+ * @see {@link https://react-md.dev/components/sheet | Sheet Demos}
65
65
  */
66
66
  export declare const Sheet: import("react").ForwardRefExoticComponent<SheetProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -30,7 +30,7 @@ import { DEFAULT_SHEET_CLASSNAMES, DEFAULT_SHEET_TIMEOUT, sheet } from "./styles
30
30
  * }
31
31
  * ```
32
32
  *
33
- * @see {@link https://next.react-md.dev/components/sheet | Sheet Demos}
33
+ * @see {@link https://react-md.dev/components/sheet | Sheet Demos}
34
34
  */ export const Sheet = /*#__PURE__*/ forwardRef(function Sheet(props, ref) {
35
35
  const { role = "dialog", className, position = "left", horizontalSize = "media", verticalSize = "recommended", timeout = DEFAULT_SHEET_TIMEOUT, classNames = DEFAULT_SHEET_CLASSNAMES, visible, temporary = true, exitedHidden = true, raised, children, ...remaining } = props;
36
36
  const { disableOverlay } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef } from \"react\";\n\nimport { type BaseDialogProps, Dialog } from \"../dialog/Dialog.js\";\nimport { type LabelRequiredForA11y } from \"../types.js\";\nimport {\n type BaseSheetClassNameOptions,\n DEFAULT_SHEET_CLASSNAMES,\n DEFAULT_SHEET_TIMEOUT,\n sheet,\n} from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-sheet-height\"?: string | number;\n \"--rmd-sheet-width\"?: string | number;\n \"--rmd-sheet-max-height\"?: string | number;\n \"--rmd-sheet-touch-width\"?: string | number;\n \"--rmd-sheet-touch-max-height\"?: string | number;\n \"--rmd-sheet-static-width\"?: string | number;\n \"--rmd-sheet-transform-offscreen\"?: string | number;\n \"--rmd-sheet-z-index\"?: number;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport type SheetDialogProps = Omit<BaseDialogProps, \"role\" | \"type\" | \"modal\">;\n\n/**\n * @since 6.0.0 extends the `SheetDialogProps` instead of `AllowedDialogProps`\n * and exports the `SheetDialogProps`.\n */\nexport interface BaseSheetProps\n extends SheetDialogProps,\n BaseSheetClassNameOptions {\n /**\n * @defaultValue `\"dialog\"`\n */\n role?: \"dialog\" | \"menu\" | \"none\";\n\n /**\n * @defaultValue `true`\n * @see {@link SheetDialogProps.exitedHidden}\n * @since 6.0.0\n */\n exitedHidden?: boolean;\n}\n\nexport type SheetProps = LabelRequiredForA11y<BaseSheetProps>;\n\n/**\n * **Client Component**\n *\n * The `Sheet` component is a {@link Dialog} that is fixed to the top, right,\n * bottom, or left of the viewport.\n *\n * @example Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { useToggle } from \"@react-md/core/useToggle\";\n * import { type ReactElement } from \"react\";\n *\n * export function Example(): ReactElement {\n * const { toggled, disable, enable } = useToggle();\n *\n * return (\n * <>\n * <Button onClick={enable}>Show</Button>\n * <Sheet aria-label=\"Customization\" visible={toggled} onRequestClose={disable}>\n * Whatever Content\n * </Sheet>\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/sheet | Sheet Demos}\n */\nexport const Sheet = forwardRef<HTMLDivElement, SheetProps>(\n function Sheet(props, ref) {\n const {\n role = \"dialog\",\n className,\n position = \"left\",\n horizontalSize = \"media\",\n verticalSize = \"recommended\",\n timeout = DEFAULT_SHEET_TIMEOUT,\n classNames = DEFAULT_SHEET_CLASSNAMES,\n visible,\n temporary = true,\n exitedHidden = true,\n raised,\n children,\n ...remaining\n } = props;\n const { disableOverlay } = props;\n\n return (\n <Dialog\n {...remaining}\n ref={ref}\n role={role}\n type=\"custom\"\n timeout={timeout}\n classNames={classNames}\n visible={visible}\n temporary={temporary}\n exitedHidden={exitedHidden}\n className={sheet({\n raised: raised ?? !disableOverlay,\n position,\n horizontalSize,\n verticalSize,\n className,\n })}\n >\n {children}\n </Dialog>\n );\n }\n);\n"],"names":["forwardRef","Dialog","DEFAULT_SHEET_CLASSNAMES","DEFAULT_SHEET_TIMEOUT","sheet","Sheet","props","ref","role","className","position","horizontalSize","verticalSize","timeout","classNames","visible","temporary","exitedHidden","raised","children","remaining","disableOverlay","type"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,QAAQ;AAEnC,SAA+BC,MAAM,QAAQ,sBAAsB;AAEnE,SAEEC,wBAAwB,EACxBC,qBAAqB,EACrBC,KAAK,QACA,cAAc;AA0CrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BC,GACD,OAAO,MAAMC,sBAAQL,WACnB,SAASK,MAAMC,KAAK,EAAEC,GAAG;IACvB,MAAM,EACJC,OAAO,QAAQ,EACfC,SAAS,EACTC,WAAW,MAAM,EACjBC,iBAAiB,OAAO,EACxBC,eAAe,aAAa,EAC5BC,UAAUV,qBAAqB,EAC/BW,aAAaZ,wBAAwB,EACrCa,OAAO,EACPC,YAAY,IAAI,EAChBC,eAAe,IAAI,EACnBC,MAAM,EACNC,QAAQ,EACR,GAAGC,WACJ,GAAGd;IACJ,MAAM,EAAEe,cAAc,EAAE,GAAGf;IAE3B,qBACE,KAACL;QACE,GAAGmB,SAAS;QACbb,KAAKA;QACLC,MAAMA;QACNc,MAAK;QACLT,SAASA;QACTC,YAAYA;QACZC,SAASA;QACTC,WAAWA;QACXC,cAAcA;QACdR,WAAWL,MAAM;YACfc,QAAQA,UAAU,CAACG;YACnBX;YACAC;YACAC;YACAH;QACF;kBAECU;;AAGP,GACA"}
1
+ {"version":3,"sources":["../../src/sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef } from \"react\";\n\nimport { type BaseDialogProps, Dialog } from \"../dialog/Dialog.js\";\nimport { type LabelRequiredForA11y } from \"../types.js\";\nimport {\n type BaseSheetClassNameOptions,\n DEFAULT_SHEET_CLASSNAMES,\n DEFAULT_SHEET_TIMEOUT,\n sheet,\n} from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-sheet-height\"?: string | number;\n \"--rmd-sheet-width\"?: string | number;\n \"--rmd-sheet-max-height\"?: string | number;\n \"--rmd-sheet-touch-width\"?: string | number;\n \"--rmd-sheet-touch-max-height\"?: string | number;\n \"--rmd-sheet-static-width\"?: string | number;\n \"--rmd-sheet-transform-offscreen\"?: string | number;\n \"--rmd-sheet-z-index\"?: number;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport type SheetDialogProps = Omit<BaseDialogProps, \"role\" | \"type\" | \"modal\">;\n\n/**\n * @since 6.0.0 extends the `SheetDialogProps` instead of `AllowedDialogProps`\n * and exports the `SheetDialogProps`.\n */\nexport interface BaseSheetProps\n extends SheetDialogProps,\n BaseSheetClassNameOptions {\n /**\n * @defaultValue `\"dialog\"`\n */\n role?: \"dialog\" | \"menu\" | \"none\";\n\n /**\n * @defaultValue `true`\n * @see {@link SheetDialogProps.exitedHidden}\n * @since 6.0.0\n */\n exitedHidden?: boolean;\n}\n\nexport type SheetProps = LabelRequiredForA11y<BaseSheetProps>;\n\n/**\n * **Client Component**\n *\n * The `Sheet` component is a {@link Dialog} that is fixed to the top, right,\n * bottom, or left of the viewport.\n *\n * @example Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { useToggle } from \"@react-md/core/useToggle\";\n * import { type ReactElement } from \"react\";\n *\n * export function Example(): ReactElement {\n * const { toggled, disable, enable } = useToggle();\n *\n * return (\n * <>\n * <Button onClick={enable}>Show</Button>\n * <Sheet aria-label=\"Customization\" visible={toggled} onRequestClose={disable}>\n * Whatever Content\n * </Sheet>\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/sheet | Sheet Demos}\n */\nexport const Sheet = forwardRef<HTMLDivElement, SheetProps>(\n function Sheet(props, ref) {\n const {\n role = \"dialog\",\n className,\n position = \"left\",\n horizontalSize = \"media\",\n verticalSize = \"recommended\",\n timeout = DEFAULT_SHEET_TIMEOUT,\n classNames = DEFAULT_SHEET_CLASSNAMES,\n visible,\n temporary = true,\n exitedHidden = true,\n raised,\n children,\n ...remaining\n } = props;\n const { disableOverlay } = props;\n\n return (\n <Dialog\n {...remaining}\n ref={ref}\n role={role}\n type=\"custom\"\n timeout={timeout}\n classNames={classNames}\n visible={visible}\n temporary={temporary}\n exitedHidden={exitedHidden}\n className={sheet({\n raised: raised ?? !disableOverlay,\n position,\n horizontalSize,\n verticalSize,\n className,\n })}\n >\n {children}\n </Dialog>\n );\n }\n);\n"],"names":["forwardRef","Dialog","DEFAULT_SHEET_CLASSNAMES","DEFAULT_SHEET_TIMEOUT","sheet","Sheet","props","ref","role","className","position","horizontalSize","verticalSize","timeout","classNames","visible","temporary","exitedHidden","raised","children","remaining","disableOverlay","type"],"mappings":"AAAA;;AAEA,SAASA,UAAU,QAAQ,QAAQ;AAEnC,SAA+BC,MAAM,QAAQ,sBAAsB;AAEnE,SAEEC,wBAAwB,EACxBC,qBAAqB,EACrBC,KAAK,QACA,cAAc;AA0CrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BC,GACD,OAAO,MAAMC,sBAAQL,WACnB,SAASK,MAAMC,KAAK,EAAEC,GAAG;IACvB,MAAM,EACJC,OAAO,QAAQ,EACfC,SAAS,EACTC,WAAW,MAAM,EACjBC,iBAAiB,OAAO,EACxBC,eAAe,aAAa,EAC5BC,UAAUV,qBAAqB,EAC/BW,aAAaZ,wBAAwB,EACrCa,OAAO,EACPC,YAAY,IAAI,EAChBC,eAAe,IAAI,EACnBC,MAAM,EACNC,QAAQ,EACR,GAAGC,WACJ,GAAGd;IACJ,MAAM,EAAEe,cAAc,EAAE,GAAGf;IAE3B,qBACE,KAACL;QACE,GAAGmB,SAAS;QACbb,KAAKA;QACLC,MAAMA;QACNc,MAAK;QACLT,SAASA;QACTC,YAAYA;QACZC,SAASA;QACTC,WAAWA;QACXC,cAAcA;QACdR,WAAWL,MAAM;YACfc,QAAQA,UAAU,CAACG;YACnBX;YACAC;YACAC;YACAH;QACF;kBAECU;;AAGP,GACA"}
@@ -4,6 +4,7 @@
4
4
 
5
5
  @use "sass:map";
6
6
  @use "../utils";
7
+ @use "../spacing";
7
8
  @use "../box-shadows";
8
9
  @use "../media-queries/media-queries";
9
10
  @use "../transition/transition";
@@ -72,7 +73,7 @@ $static-width: 16rem !default;
72
73
  /// @see $touch-width
73
74
  /// @see $touch-max-height
74
75
  /// @type Number
75
- $touch-margin: 3.5rem !default;
76
+ $touch-margin: calc(spacing.get-var(md) * 3.5) !default;
76
77
 
77
78
  /// The default width for a `Sheet` on touch/phone devices.
78
79
  /// @type Number
@@ -29,7 +29,7 @@ export interface ToastRendererProps extends ConfigurableToastProps, ToastMeta {
29
29
  * - always renders the {@link ToastRendererProps.toastDefaults}'s `children`
30
30
  * 'after the optional toast's `children`
31
31
  *
32
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
32
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
33
33
  * @since 6.0.0
34
34
  */
35
35
  export declare function DefaultToastRenderer(props: ToastRendererProps): ReactElement;
@@ -25,7 +25,7 @@ const noop = ()=>{
25
25
  * - always renders the {@link ToastRendererProps.toastDefaults}'s `children`
26
26
  * 'after the optional toast's `children`
27
27
  *
28
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
28
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
29
29
  * @since 6.0.0
30
30
  */ export function DefaultToastRenderer(props) {
31
31
  const { toastId, paused, visible, priority: _priority, duplicates: _duplicates, visibleTime, onExited = noop, onEntered = noop, onMouseEnter = noop, onMouseLeave = noop, toastDefaults = {}, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/DefaultToastRenderer.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, useEffect, useMemo } from \"react\";\n\nimport { usePageInactive } from \"../usePageInactive.js\";\nimport { type ConfigurableToastProps, Toast } from \"./Toast.js\";\nimport { type ToastMeta } from \"./ToastManager.js\";\nimport { useToastManager } from \"./ToastManagerProvider.js\";\nimport {\n type CurrentToastActions,\n CurrentToastActionsProvider,\n} from \"./useCurrentToastActions.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastRendererProps extends ConfigurableToastProps, ToastMeta {\n /**\n * Optional props that should be passed to each `Toast` from the `Snackbar`.\n * This is a great way to enforce each toast having a close button, a custom\n * class name, theme, etc.\n */\n toastDefaults?: ConfigurableToastProps;\n}\n\n/**\n * **Client Component**\n *\n * This is the default implementation for rendering toasts that will:\n *\n * - controls the visibility of the toast with the {@link useToast} hook\n * - add a `closeButton` if the {@link ToastRendererProps.toastDefaults} has\n * `closeButton === true` or the `closeButtonProps` exists.\n * - add a `closeButton` if the `visibleTime` is `null` and the current toast\n * does not have an `action` or `actionButton`\n * - ensures both the toast's `onEntered` and the {@link ToastRendererProps.toastDefaults}'s\n * `onEntered` are called\n * - ensures both the toast's `onExited` and the {@link ToastRendererProps.toastDefaults}'s\n * `onExited` are called\n * - always renders the {@link ToastRendererProps.toastDefaults}'s `children`\n * 'after the optional toast's `children`\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport function DefaultToastRenderer(props: ToastRendererProps): ReactElement {\n const {\n toastId,\n paused,\n visible,\n priority: _priority,\n duplicates: _duplicates,\n visibleTime,\n onExited = noop,\n onEntered = noop,\n onMouseEnter = noop,\n onMouseLeave = noop,\n toastDefaults = {},\n ...remaining\n } = props;\n const {\n closeButtonProps,\n closeButton = !!closeButtonProps || !!remaining.closeButtonProps,\n onEntered: defaultEntered = noop,\n onExited: defaultExited = noop,\n onMouseEnter: defaultMouseEnter = noop,\n onMouseLeave: defaultMouseLeave = noop,\n ...defaults\n } = toastDefaults;\n\n const toastManager = useToastManager();\n const currentToastActions = useMemo<CurrentToastActions>(\n () => ({\n clearTimer() {\n toastManager.clearTimer(toastId);\n },\n removeToast(transition) {\n toastManager.removeToast(toastId, transition);\n },\n startRemoveTimeout() {\n toastManager.startRemoveTimeout(toastId);\n },\n pauseRemoveTimeout() {\n toastManager.pauseRemoveTimeout(toastId);\n },\n resumeRemoveTimeout() {\n toastManager.resumeRemoveTimeout(toastId);\n },\n }),\n [toastId, toastManager]\n );\n useEffect(() => {\n return () => {\n currentToastActions.clearTimer();\n };\n }, [currentToastActions]);\n usePageInactive({\n disabled: !visible,\n onChange(active) {\n if (active) {\n currentToastActions.resumeRemoveTimeout();\n } else {\n currentToastActions.pauseRemoveTimeout();\n }\n },\n });\n\n return (\n <CurrentToastActionsProvider value={currentToastActions}>\n <Toast\n closeButton={\n closeButton ||\n (!visibleTime && !remaining.action && !remaining.actionButton)\n }\n closeButtonProps={closeButtonProps}\n {...defaults}\n {...remaining}\n paused={paused}\n visible={visible}\n onEntered={(appearing) => {\n defaultEntered(appearing);\n onEntered(appearing);\n currentToastActions.startRemoveTimeout();\n }}\n onExited={() => {\n defaultExited();\n onExited();\n currentToastActions.removeToast(false);\n }}\n onMouseEnter={(event) => {\n defaultMouseEnter(event);\n onMouseEnter(event);\n currentToastActions.pauseRemoveTimeout();\n }}\n onMouseLeave={(event) => {\n defaultMouseLeave(event);\n onMouseLeave(event);\n currentToastActions.resumeRemoveTimeout();\n }}\n >\n {defaults.children}\n {remaining.children}\n </Toast>\n </CurrentToastActionsProvider>\n );\n}\n"],"names":["useEffect","useMemo","usePageInactive","Toast","useToastManager","CurrentToastActionsProvider","noop","DefaultToastRenderer","props","toastId","paused","visible","priority","_priority","duplicates","_duplicates","visibleTime","onExited","onEntered","onMouseEnter","onMouseLeave","toastDefaults","remaining","closeButtonProps","closeButton","defaultEntered","defaultExited","defaultMouseEnter","defaultMouseLeave","defaults","toastManager","currentToastActions","clearTimer","removeToast","transition","startRemoveTimeout","pauseRemoveTimeout","resumeRemoveTimeout","disabled","onChange","active","value","action","actionButton","appearing","event","children"],"mappings":"AAAA;;AAEA,SAA4BA,SAAS,EAAEC,OAAO,QAAQ,QAAQ;AAE9D,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SAAsCC,KAAK,QAAQ,aAAa;AAEhE,SAASC,eAAe,QAAQ,4BAA4B;AAC5D,SAEEC,2BAA2B,QACtB,8BAA8B;AAErC,MAAMC,OAAO;AACX,aAAa;AACf;AAcA;;;;;;;;;;;;;;;;;;;CAmBC,GACD,OAAO,SAASC,qBAAqBC,KAAyB;IAC5D,MAAM,EACJC,OAAO,EACPC,MAAM,EACNC,OAAO,EACPC,UAAUC,SAAS,EACnBC,YAAYC,WAAW,EACvBC,WAAW,EACXC,WAAWX,IAAI,EACfY,YAAYZ,IAAI,EAChBa,eAAeb,IAAI,EACnBc,eAAed,IAAI,EACnBe,gBAAgB,CAAC,CAAC,EAClB,GAAGC,WACJ,GAAGd;IACJ,MAAM,EACJe,gBAAgB,EAChBC,cAAc,CAAC,CAACD,oBAAoB,CAAC,CAACD,UAAUC,gBAAgB,EAChEL,WAAWO,iBAAiBnB,IAAI,EAChCW,UAAUS,gBAAgBpB,IAAI,EAC9Ba,cAAcQ,oBAAoBrB,IAAI,EACtCc,cAAcQ,oBAAoBtB,IAAI,EACtC,GAAGuB,UACJ,GAAGR;IAEJ,MAAMS,eAAe1B;IACrB,MAAM2B,sBAAsB9B,QAC1B,IAAO,CAAA;YACL+B;gBACEF,aAAaE,UAAU,CAACvB;YAC1B;YACAwB,aAAYC,UAAU;gBACpBJ,aAAaG,WAAW,CAACxB,SAASyB;YACpC;YACAC;gBACEL,aAAaK,kBAAkB,CAAC1B;YAClC;YACA2B;gBACEN,aAAaM,kBAAkB,CAAC3B;YAClC;YACA4B;gBACEP,aAAaO,mBAAmB,CAAC5B;YACnC;QACF,CAAA,GACA;QAACA;QAASqB;KAAa;IAEzB9B,UAAU;QACR,OAAO;YACL+B,oBAAoBC,UAAU;QAChC;IACF,GAAG;QAACD;KAAoB;IACxB7B,gBAAgB;QACdoC,UAAU,CAAC3B;QACX4B,UAASC,MAAM;YACb,IAAIA,QAAQ;gBACVT,oBAAoBM,mBAAmB;YACzC,OAAO;gBACLN,oBAAoBK,kBAAkB;YACxC;QACF;IACF;IAEA,qBACE,KAAC/B;QAA4BoC,OAAOV;kBAClC,cAAA,MAAC5B;YACCqB,aACEA,eACC,CAACR,eAAe,CAACM,UAAUoB,MAAM,IAAI,CAACpB,UAAUqB,YAAY;YAE/DpB,kBAAkBA;YACjB,GAAGM,QAAQ;YACX,GAAGP,SAAS;YACbZ,QAAQA;YACRC,SAASA;YACTO,WAAW,CAAC0B;gBACVnB,eAAemB;gBACf1B,UAAU0B;gBACVb,oBAAoBI,kBAAkB;YACxC;YACAlB,UAAU;gBACRS;gBACAT;gBACAc,oBAAoBE,WAAW,CAAC;YAClC;YACAd,cAAc,CAAC0B;gBACblB,kBAAkBkB;gBAClB1B,aAAa0B;gBACbd,oBAAoBK,kBAAkB;YACxC;YACAhB,cAAc,CAACyB;gBACbjB,kBAAkBiB;gBAClBzB,aAAayB;gBACbd,oBAAoBM,mBAAmB;YACzC;;gBAECR,SAASiB,QAAQ;gBACjBxB,UAAUwB,QAAQ;;;;AAI3B"}
1
+ {"version":3,"sources":["../../src/snackbar/DefaultToastRenderer.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, useEffect, useMemo } from \"react\";\n\nimport { usePageInactive } from \"../usePageInactive.js\";\nimport { type ConfigurableToastProps, Toast } from \"./Toast.js\";\nimport { type ToastMeta } from \"./ToastManager.js\";\nimport { useToastManager } from \"./ToastManagerProvider.js\";\nimport {\n type CurrentToastActions,\n CurrentToastActionsProvider,\n} from \"./useCurrentToastActions.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastRendererProps extends ConfigurableToastProps, ToastMeta {\n /**\n * Optional props that should be passed to each `Toast` from the `Snackbar`.\n * This is a great way to enforce each toast having a close button, a custom\n * class name, theme, etc.\n */\n toastDefaults?: ConfigurableToastProps;\n}\n\n/**\n * **Client Component**\n *\n * This is the default implementation for rendering toasts that will:\n *\n * - controls the visibility of the toast with the {@link useToast} hook\n * - add a `closeButton` if the {@link ToastRendererProps.toastDefaults} has\n * `closeButton === true` or the `closeButtonProps` exists.\n * - add a `closeButton` if the `visibleTime` is `null` and the current toast\n * does not have an `action` or `actionButton`\n * - ensures both the toast's `onEntered` and the {@link ToastRendererProps.toastDefaults}'s\n * `onEntered` are called\n * - ensures both the toast's `onExited` and the {@link ToastRendererProps.toastDefaults}'s\n * `onExited` are called\n * - always renders the {@link ToastRendererProps.toastDefaults}'s `children`\n * 'after the optional toast's `children`\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport function DefaultToastRenderer(props: ToastRendererProps): ReactElement {\n const {\n toastId,\n paused,\n visible,\n priority: _priority,\n duplicates: _duplicates,\n visibleTime,\n onExited = noop,\n onEntered = noop,\n onMouseEnter = noop,\n onMouseLeave = noop,\n toastDefaults = {},\n ...remaining\n } = props;\n const {\n closeButtonProps,\n closeButton = !!closeButtonProps || !!remaining.closeButtonProps,\n onEntered: defaultEntered = noop,\n onExited: defaultExited = noop,\n onMouseEnter: defaultMouseEnter = noop,\n onMouseLeave: defaultMouseLeave = noop,\n ...defaults\n } = toastDefaults;\n\n const toastManager = useToastManager();\n const currentToastActions = useMemo<CurrentToastActions>(\n () => ({\n clearTimer() {\n toastManager.clearTimer(toastId);\n },\n removeToast(transition) {\n toastManager.removeToast(toastId, transition);\n },\n startRemoveTimeout() {\n toastManager.startRemoveTimeout(toastId);\n },\n pauseRemoveTimeout() {\n toastManager.pauseRemoveTimeout(toastId);\n },\n resumeRemoveTimeout() {\n toastManager.resumeRemoveTimeout(toastId);\n },\n }),\n [toastId, toastManager]\n );\n useEffect(() => {\n return () => {\n currentToastActions.clearTimer();\n };\n }, [currentToastActions]);\n usePageInactive({\n disabled: !visible,\n onChange(active) {\n if (active) {\n currentToastActions.resumeRemoveTimeout();\n } else {\n currentToastActions.pauseRemoveTimeout();\n }\n },\n });\n\n return (\n <CurrentToastActionsProvider value={currentToastActions}>\n <Toast\n closeButton={\n closeButton ||\n (!visibleTime && !remaining.action && !remaining.actionButton)\n }\n closeButtonProps={closeButtonProps}\n {...defaults}\n {...remaining}\n paused={paused}\n visible={visible}\n onEntered={(appearing) => {\n defaultEntered(appearing);\n onEntered(appearing);\n currentToastActions.startRemoveTimeout();\n }}\n onExited={() => {\n defaultExited();\n onExited();\n currentToastActions.removeToast(false);\n }}\n onMouseEnter={(event) => {\n defaultMouseEnter(event);\n onMouseEnter(event);\n currentToastActions.pauseRemoveTimeout();\n }}\n onMouseLeave={(event) => {\n defaultMouseLeave(event);\n onMouseLeave(event);\n currentToastActions.resumeRemoveTimeout();\n }}\n >\n {defaults.children}\n {remaining.children}\n </Toast>\n </CurrentToastActionsProvider>\n );\n}\n"],"names":["useEffect","useMemo","usePageInactive","Toast","useToastManager","CurrentToastActionsProvider","noop","DefaultToastRenderer","props","toastId","paused","visible","priority","_priority","duplicates","_duplicates","visibleTime","onExited","onEntered","onMouseEnter","onMouseLeave","toastDefaults","remaining","closeButtonProps","closeButton","defaultEntered","defaultExited","defaultMouseEnter","defaultMouseLeave","defaults","toastManager","currentToastActions","clearTimer","removeToast","transition","startRemoveTimeout","pauseRemoveTimeout","resumeRemoveTimeout","disabled","onChange","active","value","action","actionButton","appearing","event","children"],"mappings":"AAAA;;AAEA,SAA4BA,SAAS,EAAEC,OAAO,QAAQ,QAAQ;AAE9D,SAASC,eAAe,QAAQ,wBAAwB;AACxD,SAAsCC,KAAK,QAAQ,aAAa;AAEhE,SAASC,eAAe,QAAQ,4BAA4B;AAC5D,SAEEC,2BAA2B,QACtB,8BAA8B;AAErC,MAAMC,OAAO;AACX,aAAa;AACf;AAcA;;;;;;;;;;;;;;;;;;;CAmBC,GACD,OAAO,SAASC,qBAAqBC,KAAyB;IAC5D,MAAM,EACJC,OAAO,EACPC,MAAM,EACNC,OAAO,EACPC,UAAUC,SAAS,EACnBC,YAAYC,WAAW,EACvBC,WAAW,EACXC,WAAWX,IAAI,EACfY,YAAYZ,IAAI,EAChBa,eAAeb,IAAI,EACnBc,eAAed,IAAI,EACnBe,gBAAgB,CAAC,CAAC,EAClB,GAAGC,WACJ,GAAGd;IACJ,MAAM,EACJe,gBAAgB,EAChBC,cAAc,CAAC,CAACD,oBAAoB,CAAC,CAACD,UAAUC,gBAAgB,EAChEL,WAAWO,iBAAiBnB,IAAI,EAChCW,UAAUS,gBAAgBpB,IAAI,EAC9Ba,cAAcQ,oBAAoBrB,IAAI,EACtCc,cAAcQ,oBAAoBtB,IAAI,EACtC,GAAGuB,UACJ,GAAGR;IAEJ,MAAMS,eAAe1B;IACrB,MAAM2B,sBAAsB9B,QAC1B,IAAO,CAAA;YACL+B;gBACEF,aAAaE,UAAU,CAACvB;YAC1B;YACAwB,aAAYC,UAAU;gBACpBJ,aAAaG,WAAW,CAACxB,SAASyB;YACpC;YACAC;gBACEL,aAAaK,kBAAkB,CAAC1B;YAClC;YACA2B;gBACEN,aAAaM,kBAAkB,CAAC3B;YAClC;YACA4B;gBACEP,aAAaO,mBAAmB,CAAC5B;YACnC;QACF,CAAA,GACA;QAACA;QAASqB;KAAa;IAEzB9B,UAAU;QACR,OAAO;YACL+B,oBAAoBC,UAAU;QAChC;IACF,GAAG;QAACD;KAAoB;IACxB7B,gBAAgB;QACdoC,UAAU,CAAC3B;QACX4B,UAASC,MAAM;YACb,IAAIA,QAAQ;gBACVT,oBAAoBM,mBAAmB;YACzC,OAAO;gBACLN,oBAAoBK,kBAAkB;YACxC;QACF;IACF;IAEA,qBACE,KAAC/B;QAA4BoC,OAAOV;kBAClC,cAAA,MAAC5B;YACCqB,aACEA,eACC,CAACR,eAAe,CAACM,UAAUoB,MAAM,IAAI,CAACpB,UAAUqB,YAAY;YAE/DpB,kBAAkBA;YACjB,GAAGM,QAAQ;YACX,GAAGP,SAAS;YACbZ,QAAQA;YACRC,SAASA;YACTO,WAAW,CAAC0B;gBACVnB,eAAemB;gBACf1B,UAAU0B;gBACVb,oBAAoBI,kBAAkB;YACxC;YACAlB,UAAU;gBACRS;gBACAT;gBACAc,oBAAoBE,WAAW,CAAC;YAClC;YACAd,cAAc,CAAC0B;gBACblB,kBAAkBkB;gBAClB1B,aAAa0B;gBACbd,oBAAoBK,kBAAkB;YACxC;YACAhB,cAAc,CAACyB;gBACbjB,kBAAkBiB;gBAClBzB,aAAayB;gBACbd,oBAAoBM,mBAAmB;YACzC;;gBAECR,SAASiB,QAAQ;gBACjBxB,UAAUwB,QAAQ;;;;AAI3B"}
@@ -124,7 +124,7 @@ export interface SnackbarProps extends HTMLAttributes<HTMLDivElement> {
124
124
  * }
125
125
  * ```
126
126
  *
127
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
127
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
128
128
  * @see {@link SnackbarProps.renderToast} for creating a custom toast
129
129
  * implementation.
130
130
  * @since 6.0.0 Rewritten to use a new API that supports adding toasts
@@ -33,7 +33,7 @@ import { snackbar } from "./snackbarStyles.js";
33
33
  * }
34
34
  * ```
35
35
  *
36
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
36
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
37
37
  * @see {@link SnackbarProps.renderToast} for creating a custom toast
38
38
  * implementation.
39
39
  * @since 6.0.0 Rewritten to use a new API that supports adding toasts
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/Snackbar.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ComponentType, type HTMLAttributes, forwardRef } from \"react\";\n\nimport { Portal } from \"../portal/Portal.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport {\n DefaultToastRenderer,\n type ToastRendererProps,\n} from \"./DefaultToastRenderer.js\";\nimport { type ConfigurableToastProps } from \"./Toast.js\";\nimport { useToastQueue } from \"./ToastManagerProvider.js\";\nimport { type SnackbarPosition, snackbar } from \"./snackbarStyles.js\";\n\n/**\n * @since 6.0.0 The `id` prop is optional\n */\nexport interface SnackbarProps extends HTMLAttributes<HTMLDivElement> {\n /** @defaultValue `\"snackbar-\" + useId()` */\n id?: string;\n\n /**\n * Set this to the number of toasts that can be visible within the snackbar at\n * the same time. Any toasts added after this value will be added into the\n * queue to be shown.\n *\n * @defaultValue `1`\n */\n limit?: number;\n\n /**\n * Set this to `true` if the snackbar should use absolute positioning so it\n * can be fixed within a `position: relative` container instead of the entire\n * viewport.\n *\n * @defaultValue `false`\n */\n absolute?: boolean;\n\n /** @defaultValue `\"bottom\"` */\n position?: SnackbarPosition;\n\n /** @defaultValue `false` */\n disablePortal?: boolean;\n\n /**\n * This can be used to create a custom toast implementation.\n *\n * @example\n * ```ts\n * import { Snackbar } from \"@react-md/core/snackbar/Snackbar\";\n * import { Toast } from \"@react-md/core/snackbar/Toast\";\n * import { ToastContent } from \"@react-md/core/snackbar/ToastContent\";\n * import { type ToastRendererProps } from \"@react-md/core/snackbar/DefaultToastRenderer\";\n * import { useToastManager } from \"@react-md/core/snackbar/ToastManagerProvider\";\n * import { type ReactElement } from \"react\";\n *\n * function CustomToast(props: CustomToastRendererProps): ReactElement {\n * // Pretend like we don't need anything else from the toast since the\n * // custom behavior is related to the `toastId`\n * const { toastId, visible, duplicates, visibleTime } = props;\n *\n * const toastManager = useToastManager();\n *\n * // Note: If you want to rely on the `action` and `closeButton` behavior,\n * // you must also wrap the `Toast` with:\n * // <RemoveToastProvider value={() => toastManager.removeToast(toastId, true)}>\n *\n * return (\n * <Toast\n * theme={isError(toastId) ? \"error\" : \"surface\"}\n * visible={visible}\n * onEntered={() => {\n * toastManager.startRemoveTimeout(toastId);\n * }}\n * onExited={() => {\n * toastManager.removeToast(toastId, false)\n * }}\n * disableContentWrapper\n * >\n * <ToastContent>\n * <TranslateMessage id={toastId} />\n * </ToastContent>\n * {isActionable(toastId) && (\n * <Button\n * onClick={async () => {\n * await someApiCall();\n * toastManager.removeToast(toastId, true);\n * }}\n * >\n * Dismiss\n * </Button>\n * )}\n * </Toast>\n * );\n * }\n *\n * function Example(): ReactElement {\n * return <Snackbar renderToast={CustomToast} />\n * }\n * ```\n *\n * @see {@link DefaultToastRenderer}\n * @defaultValue `DefaultToastRenderer`\n */\n renderToast?: ComponentType<ToastRendererProps>;\n\n /**\n * Optional props that should be passed to each `Toast` from the `Snackbar`.\n * This is a great way to enforce each toast having a close button, a custom\n * class name, theme, etc.\n *\n * @see {@link DefaultToastRenderer}\n */\n toastDefaults?: ConfigurableToastProps;\n}\n\n/**\n * **Client Component**\n *\n * @example Super Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Snackbar } from \"@react-md/core/snackbar/Snackbar\";\n * import { addToast } from \"@react-md/core/snackbar/ToastManager\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <>\n * <Button\n * onClick={() => {\n * addToast({ children: \"A new toast!\" });\n * }}\n * >\n * Toast!\n * </Button>\n * <Snackbar />\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @see {@link SnackbarProps.renderToast} for creating a custom toast\n * implementation.\n * @since 6.0.0 Rewritten to use a new API that supports adding toasts\n * outside of React components and rendering multiple toasts at once.\n */\nexport const Snackbar = forwardRef<HTMLDivElement, SnackbarProps>(\n function Snackbar(props, ref) {\n const {\n id: propId,\n className,\n limit = 1,\n absolute,\n position = \"bottom\",\n renderToast: RenderToast = DefaultToastRenderer,\n disablePortal,\n toastDefaults,\n ...remaining\n } = props;\n const id = useEnsuredId(propId, \"snackbar\");\n const queue = useToastQueue(limit);\n\n return (\n <Portal disabled={disablePortal}>\n {queue.length > 0 && (\n <div\n {...remaining}\n id={id}\n ref={ref}\n className={snackbar({ absolute, position, className })}\n >\n {queue.map((toast) => (\n <RenderToast\n {...toast}\n key={toast.toastId}\n toastDefaults={toastDefaults}\n />\n ))}\n </div>\n )}\n </Portal>\n );\n }\n);\n"],"names":["forwardRef","Portal","useEnsuredId","DefaultToastRenderer","useToastQueue","snackbar","Snackbar","props","ref","id","propId","className","limit","absolute","position","renderToast","RenderToast","disablePortal","toastDefaults","remaining","queue","disabled","length","div","map","toast","key","toastId"],"mappings":"AAAA;;;AAEA,SAAkDA,UAAU,QAAQ,QAAQ;AAE5E,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SACEC,oBAAoB,QAEf,4BAA4B;AAEnC,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAAgCC,QAAQ,QAAQ,sBAAsB;AAyGtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BC,GACD,OAAO,MAAMC,yBAAWN,WACtB,SAASM,SAASC,KAAK,EAAEC,GAAG;IAC1B,MAAM,EACJC,IAAIC,MAAM,EACVC,SAAS,EACTC,QAAQ,CAAC,EACTC,QAAQ,EACRC,WAAW,QAAQ,EACnBC,aAAaC,cAAcb,oBAAoB,EAC/Cc,aAAa,EACbC,aAAa,EACb,GAAGC,WACJ,GAAGZ;IACJ,MAAME,KAAKP,aAAaQ,QAAQ;IAChC,MAAMU,QAAQhB,cAAcQ;IAE5B,qBACE,KAACX;QAAOoB,UAAUJ;kBACfG,MAAME,MAAM,GAAG,mBACd,KAACC;YACE,GAAGJ,SAAS;YACbV,IAAIA;YACJD,KAAKA;YACLG,WAAWN,SAAS;gBAAEQ;gBAAUC;gBAAUH;YAAU;sBAEnDS,MAAMI,GAAG,CAAC,CAACC,sBACV,eAACT;oBACE,GAAGS,KAAK;oBACTC,KAAKD,MAAME,OAAO;oBAClBT,eAAeA;;;;AAO7B,GACA"}
1
+ {"version":3,"sources":["../../src/snackbar/Snackbar.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ComponentType, type HTMLAttributes, forwardRef } from \"react\";\n\nimport { Portal } from \"../portal/Portal.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport {\n DefaultToastRenderer,\n type ToastRendererProps,\n} from \"./DefaultToastRenderer.js\";\nimport { type ConfigurableToastProps } from \"./Toast.js\";\nimport { useToastQueue } from \"./ToastManagerProvider.js\";\nimport { type SnackbarPosition, snackbar } from \"./snackbarStyles.js\";\n\n/**\n * @since 6.0.0 The `id` prop is optional\n */\nexport interface SnackbarProps extends HTMLAttributes<HTMLDivElement> {\n /** @defaultValue `\"snackbar-\" + useId()` */\n id?: string;\n\n /**\n * Set this to the number of toasts that can be visible within the snackbar at\n * the same time. Any toasts added after this value will be added into the\n * queue to be shown.\n *\n * @defaultValue `1`\n */\n limit?: number;\n\n /**\n * Set this to `true` if the snackbar should use absolute positioning so it\n * can be fixed within a `position: relative` container instead of the entire\n * viewport.\n *\n * @defaultValue `false`\n */\n absolute?: boolean;\n\n /** @defaultValue `\"bottom\"` */\n position?: SnackbarPosition;\n\n /** @defaultValue `false` */\n disablePortal?: boolean;\n\n /**\n * This can be used to create a custom toast implementation.\n *\n * @example\n * ```ts\n * import { Snackbar } from \"@react-md/core/snackbar/Snackbar\";\n * import { Toast } from \"@react-md/core/snackbar/Toast\";\n * import { ToastContent } from \"@react-md/core/snackbar/ToastContent\";\n * import { type ToastRendererProps } from \"@react-md/core/snackbar/DefaultToastRenderer\";\n * import { useToastManager } from \"@react-md/core/snackbar/ToastManagerProvider\";\n * import { type ReactElement } from \"react\";\n *\n * function CustomToast(props: CustomToastRendererProps): ReactElement {\n * // Pretend like we don't need anything else from the toast since the\n * // custom behavior is related to the `toastId`\n * const { toastId, visible, duplicates, visibleTime } = props;\n *\n * const toastManager = useToastManager();\n *\n * // Note: If you want to rely on the `action` and `closeButton` behavior,\n * // you must also wrap the `Toast` with:\n * // <RemoveToastProvider value={() => toastManager.removeToast(toastId, true)}>\n *\n * return (\n * <Toast\n * theme={isError(toastId) ? \"error\" : \"surface\"}\n * visible={visible}\n * onEntered={() => {\n * toastManager.startRemoveTimeout(toastId);\n * }}\n * onExited={() => {\n * toastManager.removeToast(toastId, false)\n * }}\n * disableContentWrapper\n * >\n * <ToastContent>\n * <TranslateMessage id={toastId} />\n * </ToastContent>\n * {isActionable(toastId) && (\n * <Button\n * onClick={async () => {\n * await someApiCall();\n * toastManager.removeToast(toastId, true);\n * }}\n * >\n * Dismiss\n * </Button>\n * )}\n * </Toast>\n * );\n * }\n *\n * function Example(): ReactElement {\n * return <Snackbar renderToast={CustomToast} />\n * }\n * ```\n *\n * @see {@link DefaultToastRenderer}\n * @defaultValue `DefaultToastRenderer`\n */\n renderToast?: ComponentType<ToastRendererProps>;\n\n /**\n * Optional props that should be passed to each `Toast` from the `Snackbar`.\n * This is a great way to enforce each toast having a close button, a custom\n * class name, theme, etc.\n *\n * @see {@link DefaultToastRenderer}\n */\n toastDefaults?: ConfigurableToastProps;\n}\n\n/**\n * **Client Component**\n *\n * @example Super Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Snackbar } from \"@react-md/core/snackbar/Snackbar\";\n * import { addToast } from \"@react-md/core/snackbar/ToastManager\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <>\n * <Button\n * onClick={() => {\n * addToast({ children: \"A new toast!\" });\n * }}\n * >\n * Toast!\n * </Button>\n * <Snackbar />\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @see {@link SnackbarProps.renderToast} for creating a custom toast\n * implementation.\n * @since 6.0.0 Rewritten to use a new API that supports adding toasts\n * outside of React components and rendering multiple toasts at once.\n */\nexport const Snackbar = forwardRef<HTMLDivElement, SnackbarProps>(\n function Snackbar(props, ref) {\n const {\n id: propId,\n className,\n limit = 1,\n absolute,\n position = \"bottom\",\n renderToast: RenderToast = DefaultToastRenderer,\n disablePortal,\n toastDefaults,\n ...remaining\n } = props;\n const id = useEnsuredId(propId, \"snackbar\");\n const queue = useToastQueue(limit);\n\n return (\n <Portal disabled={disablePortal}>\n {queue.length > 0 && (\n <div\n {...remaining}\n id={id}\n ref={ref}\n className={snackbar({ absolute, position, className })}\n >\n {queue.map((toast) => (\n <RenderToast\n {...toast}\n key={toast.toastId}\n toastDefaults={toastDefaults}\n />\n ))}\n </div>\n )}\n </Portal>\n );\n }\n);\n"],"names":["forwardRef","Portal","useEnsuredId","DefaultToastRenderer","useToastQueue","snackbar","Snackbar","props","ref","id","propId","className","limit","absolute","position","renderToast","RenderToast","disablePortal","toastDefaults","remaining","queue","disabled","length","div","map","toast","key","toastId"],"mappings":"AAAA;;;AAEA,SAAkDA,UAAU,QAAQ,QAAQ;AAE5E,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SACEC,oBAAoB,QAEf,4BAA4B;AAEnC,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAAgCC,QAAQ,QAAQ,sBAAsB;AAyGtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BC,GACD,OAAO,MAAMC,yBAAWN,WACtB,SAASM,SAASC,KAAK,EAAEC,GAAG;IAC1B,MAAM,EACJC,IAAIC,MAAM,EACVC,SAAS,EACTC,QAAQ,CAAC,EACTC,QAAQ,EACRC,WAAW,QAAQ,EACnBC,aAAaC,cAAcb,oBAAoB,EAC/Cc,aAAa,EACbC,aAAa,EACb,GAAGC,WACJ,GAAGZ;IACJ,MAAME,KAAKP,aAAaQ,QAAQ;IAChC,MAAMU,QAAQhB,cAAcQ;IAE5B,qBACE,KAACX;QAAOoB,UAAUJ;kBACfG,MAAME,MAAM,GAAG,mBACd,KAACC;YACE,GAAGJ,SAAS;YACbV,IAAIA;YACJD,KAAKA;YACLG,WAAWN,SAAS;gBAAEQ;gBAAUC;gBAAUH;YAAU;sBAEnDS,MAAMI,GAAG,CAAC,CAACC,sBACV,eAACT;oBACE,GAAGS,KAAK;oBACTC,KAAKD,MAAME,OAAO;oBAClBT,eAAeA;;;;AAO7B,GACA"}
@@ -107,7 +107,7 @@ export interface ToastProps extends ConfigurableToastProps {
107
107
  * This component is just used for toast styling and does not implement any of
108
108
  * the visibility behavior.
109
109
  *
110
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
110
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
111
111
  * @since 6.0.0
112
112
  */
113
113
  export declare const Toast: import("react").ForwardRefExoticComponent<ToastProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -13,7 +13,7 @@ import { toast } from "./toastStyles.js";
13
13
  * This component is just used for toast styling and does not implement any of
14
14
  * the visibility behavior.
15
15
  *
16
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
16
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
17
17
  * @since 6.0.0
18
18
  */ export const Toast = /*#__PURE__*/ forwardRef(function Toast(props, ref) {
19
19
  const { id: propId, className, timeout, classNames, theme = "surface", action: propAction, actionButton: propActionButton, paused, visible, closeIcon: propCloseIcon, closeButtonProps, closeButton = !!closeButtonProps, contentProps, disableToastContent, stacked, multiline, onEnter, onEntering, onEntered, onExit, onExiting, onExited, children, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/Toast.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type AriaRole,\n type HTMLAttributes,\n type ReactElement,\n type ReactNode,\n forwardRef,\n isValidElement,\n} from \"react\";\n\nimport { type ButtonProps } from \"../button/Button.js\";\nimport { type BackgroundColor } from \"../cssUtils.js\";\nimport {\n type CSSTransitionClassNames,\n type TransitionCallbacks,\n type TransitionTimeout,\n} from \"../transition/types.js\";\nimport { useScaleTransition } from \"../transition/useScaleTransition.js\";\nimport { type PropsWithRef } from \"../types.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport { ToastActionButton } from \"./ToastActionButton.js\";\nimport { ToastCloseButton } from \"./ToastCloseButton.js\";\nimport { ToastContent, type ToastContentProps } from \"./ToastContent.js\";\nimport { toast } from \"./toastStyles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-toast-color\"?: string;\n \"--rmd-toast-background-color\"?: string;\n \"--rmd-toast-offset\"?: string | number;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ConfigurableToastProps\n extends HTMLAttributes<HTMLDivElement>,\n TransitionCallbacks {\n /**\n * Note: this default value will only be generated in the `Toast` component.\n *\n * @defaultValue `\"toast-\" + useId()`\n */\n id?: string;\n\n /**\n * Note: This is set while creating the toast.\n *\n * @defaultValue `visibleTime === null ? \"alert\" : \"status\"`\n */\n role?: AriaRole;\n\n /**\n * @defaultValue `\"surface\"`\n */\n theme?: BackgroundColor;\n\n /**\n * Set this to `true` to stack the content above the {@link action}. It is not\n * recommended to enable this prop if the {@link closeButton} is enabled.\n *\n * @defaultValue `false`\n */\n stacked?: boolean;\n\n /**\n * If this is not provided, a `ResizeObserver` will be used to determine if\n * there are multiple lines of content.\n */\n multiline?: boolean;\n\n /**\n * When this is a string or React element, it will be rendered as the\n * `children` within a `Button`\n */\n action?: ButtonProps | ReactElement | string;\n\n /**\n * This can be used to replace the custom action button behavior.\n */\n actionButton?: ReactNode;\n\n /**\n * @defaultValue `getIcon(\"close\")`\n */\n closeIcon?: ReactNode;\n\n /**\n * Set this to `true` if a close button should be rendered to the right of the\n * `children`.\n *\n * @defaultValue `!!closeButtonProps`\n */\n closeButton?: boolean;\n\n /**\n * Use this prop to override most of the close button behavior. The\n */\n closeButtonProps?: ButtonProps;\n\n /**\n * Any additional props that should be provided to the `<div>` that surrounds\n * the toast `children`.\n */\n contentProps?: PropsWithRef<ToastContentProps, HTMLDivElement>;\n\n /**\n * Set this to `true` if the `children` for the toast should no longer be\n * wrapped in an additional `<div>` that applies some toast layout styles.\n * This should normally only be used for custom `Toast` implementations.\n *\n * @see the `Snackbar`'s `renderToast` prop for an example.\n */\n disableToastContent?: boolean;\n\n /**\n * The toast's transition timeout for entering and exiting. This is **not**\n * how long the toast should remain visible.\n *\n * @defaultValue `SCALE_TIMEOUT`\n */\n timeout?: TransitionTimeout;\n\n /**\n * The toast's transition class names for entering and exiting.\n *\n * @defaultValue `SCALE_CLASSNAMES`\n */\n classNames?: CSSTransitionClassNames;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ToastProps extends ConfigurableToastProps {\n paused?: boolean;\n visible: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This component is just used for toast styling and does not implement any of\n * the visibility behavior.\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const Toast = forwardRef<HTMLDivElement, ToastProps>(\n function Toast(props, ref) {\n const {\n id: propId,\n className,\n timeout,\n classNames,\n theme = \"surface\",\n action: propAction,\n actionButton: propActionButton,\n paused,\n visible,\n closeIcon: propCloseIcon,\n closeButtonProps,\n closeButton = !!closeButtonProps,\n contentProps,\n disableToastContent,\n stacked,\n multiline,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n children,\n ...remaining\n } = props;\n const id = useEnsuredId(propId, \"toast\");\n\n let actionButton = propActionButton;\n if (propAction) {\n let overrides: ButtonProps = {};\n let buttonChildren: ReactNode;\n // have to use `any` to correctly filter out all react elements\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (isValidElement<any>(propAction) || typeof propAction !== \"object\") {\n buttonChildren = propAction;\n } else {\n ({ children: buttonChildren, ...overrides } = propAction);\n }\n\n actionButton = (\n <ToastActionButton\n theme={theme === \"surface\" ? \"secondary\" : \"clear\"}\n reordered={stacked && closeButton}\n {...overrides}\n >\n {buttonChildren}\n </ToastActionButton>\n );\n }\n\n let closeIcon = propCloseIcon;\n if (typeof closeButtonProps?.children !== \"undefined\") {\n closeIcon = closeButtonProps.children;\n }\n\n const action = !!actionButton;\n const reordered = stacked && action && closeButton;\n const { elementProps, rendered } = useScaleTransition({\n appear: true,\n nodeRef: ref,\n className: toast({\n className,\n theme,\n action,\n paused,\n stacked,\n reordered,\n closeButton,\n }),\n timeout,\n classNames,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n temporary: true,\n transitionIn: visible,\n exitedHidden: true,\n });\n\n // this might get rid of the weird popping-back-in for a split second\n // that sometimes happens on mobile firefox\n if (!rendered) {\n return null;\n }\n\n return (\n <div {...remaining} {...elementProps} id={id}>\n <ToastContent\n action={action}\n stacked={stacked}\n multiline={multiline}\n closeButton={closeButton}\n disableWrapper={disableToastContent}\n {...contentProps}\n >\n {children}\n </ToastContent>\n {actionButton}\n {closeButton && (\n <ToastCloseButton reordered={reordered} {...closeButtonProps}>\n {closeIcon}\n </ToastCloseButton>\n )}\n </div>\n );\n }\n);\n"],"names":["forwardRef","isValidElement","useScaleTransition","useEnsuredId","ToastActionButton","ToastCloseButton","ToastContent","toast","Toast","props","ref","id","propId","className","timeout","classNames","theme","action","propAction","actionButton","propActionButton","paused","visible","closeIcon","propCloseIcon","closeButtonProps","closeButton","contentProps","disableToastContent","stacked","multiline","onEnter","onEntering","onEntered","onExit","onExiting","onExited","children","remaining","overrides","buttonChildren","reordered","elementProps","rendered","appear","nodeRef","temporary","transitionIn","exitedHidden","div","disableWrapper"],"mappings":"AAAA;;AAEA,SAKEA,UAAU,EACVC,cAAc,QACT,QAAQ;AASf,SAASC,kBAAkB,QAAQ,sCAAsC;AAEzE,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,YAAY,QAAgC,oBAAoB;AACzE,SAASC,KAAK,QAAQ,mBAAmB;AAqHzC;;;;;;;;CAQC,GACD,OAAO,MAAMC,sBAAQR,WACnB,SAASQ,MAAMC,KAAK,EAAEC,GAAG;IACvB,MAAM,EACJC,IAAIC,MAAM,EACVC,SAAS,EACTC,OAAO,EACPC,UAAU,EACVC,QAAQ,SAAS,EACjBC,QAAQC,UAAU,EAClBC,cAAcC,gBAAgB,EAC9BC,MAAM,EACNC,OAAO,EACPC,WAAWC,aAAa,EACxBC,gBAAgB,EAChBC,cAAc,CAAC,CAACD,gBAAgB,EAChCE,YAAY,EACZC,mBAAmB,EACnBC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACR,GAAGC,WACJ,GAAG7B;IACJ,MAAME,KAAKR,aAAaS,QAAQ;IAEhC,IAAIO,eAAeC;IACnB,IAAIF,YAAY;QACd,IAAIqB,YAAyB,CAAC;QAC9B,IAAIC;QACJ,+DAA+D;QAC/D,8DAA8D;QAC9D,kBAAIvC,eAAoBiB,eAAe,OAAOA,eAAe,UAAU;YACrEsB,iBAAiBtB;QACnB,OAAO;YACJ,CAAA,EAAEmB,UAAUG,cAAc,EAAE,GAAGD,WAAW,GAAGrB,UAAS;QACzD;QAEAC,6BACE,KAACf;YACCY,OAAOA,UAAU,YAAY,cAAc;YAC3CyB,WAAWZ,WAAWH;YACrB,GAAGa,SAAS;sBAEZC;;IAGP;IAEA,IAAIjB,YAAYC;IAChB,IAAI,OAAOC,kBAAkBY,aAAa,aAAa;QACrDd,YAAYE,iBAAiBY,QAAQ;IACvC;IAEA,MAAMpB,SAAS,CAAC,CAACE;IACjB,MAAMsB,YAAYZ,WAAWZ,UAAUS;IACvC,MAAM,EAAEgB,YAAY,EAAEC,QAAQ,EAAE,GAAGzC,mBAAmB;QACpD0C,QAAQ;QACRC,SAASnC;QACTG,WAAWN,MAAM;YACfM;YACAG;YACAC;YACAI;YACAQ;YACAY;YACAf;QACF;QACAZ;QACAC;QACAgB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAU,WAAW;QACXC,cAAczB;QACd0B,cAAc;IAChB;IAEA,qEAAqE;IACrE,2CAA2C;IAC3C,IAAI,CAACL,UAAU;QACb,OAAO;IACT;IAEA,qBACE,MAACM;QAAK,GAAGX,SAAS;QAAG,GAAGI,YAAY;QAAE/B,IAAIA;;0BACxC,KAACL;gBACCW,QAAQA;gBACRY,SAASA;gBACTC,WAAWA;gBACXJ,aAAaA;gBACbwB,gBAAgBtB;gBACf,GAAGD,YAAY;0BAEfU;;YAEFlB;YACAO,6BACC,KAACrB;gBAAiBoC,WAAWA;gBAAY,GAAGhB,gBAAgB;0BACzDF;;;;AAKX,GACA"}
1
+ {"version":3,"sources":["../../src/snackbar/Toast.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type AriaRole,\n type HTMLAttributes,\n type ReactElement,\n type ReactNode,\n forwardRef,\n isValidElement,\n} from \"react\";\n\nimport { type ButtonProps } from \"../button/Button.js\";\nimport { type BackgroundColor } from \"../cssUtils.js\";\nimport {\n type CSSTransitionClassNames,\n type TransitionCallbacks,\n type TransitionTimeout,\n} from \"../transition/types.js\";\nimport { useScaleTransition } from \"../transition/useScaleTransition.js\";\nimport { type PropsWithRef } from \"../types.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport { ToastActionButton } from \"./ToastActionButton.js\";\nimport { ToastCloseButton } from \"./ToastCloseButton.js\";\nimport { ToastContent, type ToastContentProps } from \"./ToastContent.js\";\nimport { toast } from \"./toastStyles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-toast-color\"?: string;\n \"--rmd-toast-background-color\"?: string;\n \"--rmd-toast-offset\"?: string | number;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ConfigurableToastProps\n extends HTMLAttributes<HTMLDivElement>,\n TransitionCallbacks {\n /**\n * Note: this default value will only be generated in the `Toast` component.\n *\n * @defaultValue `\"toast-\" + useId()`\n */\n id?: string;\n\n /**\n * Note: This is set while creating the toast.\n *\n * @defaultValue `visibleTime === null ? \"alert\" : \"status\"`\n */\n role?: AriaRole;\n\n /**\n * @defaultValue `\"surface\"`\n */\n theme?: BackgroundColor;\n\n /**\n * Set this to `true` to stack the content above the {@link action}. It is not\n * recommended to enable this prop if the {@link closeButton} is enabled.\n *\n * @defaultValue `false`\n */\n stacked?: boolean;\n\n /**\n * If this is not provided, a `ResizeObserver` will be used to determine if\n * there are multiple lines of content.\n */\n multiline?: boolean;\n\n /**\n * When this is a string or React element, it will be rendered as the\n * `children` within a `Button`\n */\n action?: ButtonProps | ReactElement | string;\n\n /**\n * This can be used to replace the custom action button behavior.\n */\n actionButton?: ReactNode;\n\n /**\n * @defaultValue `getIcon(\"close\")`\n */\n closeIcon?: ReactNode;\n\n /**\n * Set this to `true` if a close button should be rendered to the right of the\n * `children`.\n *\n * @defaultValue `!!closeButtonProps`\n */\n closeButton?: boolean;\n\n /**\n * Use this prop to override most of the close button behavior. The\n */\n closeButtonProps?: ButtonProps;\n\n /**\n * Any additional props that should be provided to the `<div>` that surrounds\n * the toast `children`.\n */\n contentProps?: PropsWithRef<ToastContentProps, HTMLDivElement>;\n\n /**\n * Set this to `true` if the `children` for the toast should no longer be\n * wrapped in an additional `<div>` that applies some toast layout styles.\n * This should normally only be used for custom `Toast` implementations.\n *\n * @see the `Snackbar`'s `renderToast` prop for an example.\n */\n disableToastContent?: boolean;\n\n /**\n * The toast's transition timeout for entering and exiting. This is **not**\n * how long the toast should remain visible.\n *\n * @defaultValue `SCALE_TIMEOUT`\n */\n timeout?: TransitionTimeout;\n\n /**\n * The toast's transition class names for entering and exiting.\n *\n * @defaultValue `SCALE_CLASSNAMES`\n */\n classNames?: CSSTransitionClassNames;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ToastProps extends ConfigurableToastProps {\n paused?: boolean;\n visible: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This component is just used for toast styling and does not implement any of\n * the visibility behavior.\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const Toast = forwardRef<HTMLDivElement, ToastProps>(\n function Toast(props, ref) {\n const {\n id: propId,\n className,\n timeout,\n classNames,\n theme = \"surface\",\n action: propAction,\n actionButton: propActionButton,\n paused,\n visible,\n closeIcon: propCloseIcon,\n closeButtonProps,\n closeButton = !!closeButtonProps,\n contentProps,\n disableToastContent,\n stacked,\n multiline,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n children,\n ...remaining\n } = props;\n const id = useEnsuredId(propId, \"toast\");\n\n let actionButton = propActionButton;\n if (propAction) {\n let overrides: ButtonProps = {};\n let buttonChildren: ReactNode;\n // have to use `any` to correctly filter out all react elements\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (isValidElement<any>(propAction) || typeof propAction !== \"object\") {\n buttonChildren = propAction;\n } else {\n ({ children: buttonChildren, ...overrides } = propAction);\n }\n\n actionButton = (\n <ToastActionButton\n theme={theme === \"surface\" ? \"secondary\" : \"clear\"}\n reordered={stacked && closeButton}\n {...overrides}\n >\n {buttonChildren}\n </ToastActionButton>\n );\n }\n\n let closeIcon = propCloseIcon;\n if (typeof closeButtonProps?.children !== \"undefined\") {\n closeIcon = closeButtonProps.children;\n }\n\n const action = !!actionButton;\n const reordered = stacked && action && closeButton;\n const { elementProps, rendered } = useScaleTransition({\n appear: true,\n nodeRef: ref,\n className: toast({\n className,\n theme,\n action,\n paused,\n stacked,\n reordered,\n closeButton,\n }),\n timeout,\n classNames,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n temporary: true,\n transitionIn: visible,\n exitedHidden: true,\n });\n\n // this might get rid of the weird popping-back-in for a split second\n // that sometimes happens on mobile firefox\n if (!rendered) {\n return null;\n }\n\n return (\n <div {...remaining} {...elementProps} id={id}>\n <ToastContent\n action={action}\n stacked={stacked}\n multiline={multiline}\n closeButton={closeButton}\n disableWrapper={disableToastContent}\n {...contentProps}\n >\n {children}\n </ToastContent>\n {actionButton}\n {closeButton && (\n <ToastCloseButton reordered={reordered} {...closeButtonProps}>\n {closeIcon}\n </ToastCloseButton>\n )}\n </div>\n );\n }\n);\n"],"names":["forwardRef","isValidElement","useScaleTransition","useEnsuredId","ToastActionButton","ToastCloseButton","ToastContent","toast","Toast","props","ref","id","propId","className","timeout","classNames","theme","action","propAction","actionButton","propActionButton","paused","visible","closeIcon","propCloseIcon","closeButtonProps","closeButton","contentProps","disableToastContent","stacked","multiline","onEnter","onEntering","onEntered","onExit","onExiting","onExited","children","remaining","overrides","buttonChildren","reordered","elementProps","rendered","appear","nodeRef","temporary","transitionIn","exitedHidden","div","disableWrapper"],"mappings":"AAAA;;AAEA,SAKEA,UAAU,EACVC,cAAc,QACT,QAAQ;AASf,SAASC,kBAAkB,QAAQ,sCAAsC;AAEzE,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,YAAY,QAAgC,oBAAoB;AACzE,SAASC,KAAK,QAAQ,mBAAmB;AAqHzC;;;;;;;;CAQC,GACD,OAAO,MAAMC,sBAAQR,WACnB,SAASQ,MAAMC,KAAK,EAAEC,GAAG;IACvB,MAAM,EACJC,IAAIC,MAAM,EACVC,SAAS,EACTC,OAAO,EACPC,UAAU,EACVC,QAAQ,SAAS,EACjBC,QAAQC,UAAU,EAClBC,cAAcC,gBAAgB,EAC9BC,MAAM,EACNC,OAAO,EACPC,WAAWC,aAAa,EACxBC,gBAAgB,EAChBC,cAAc,CAAC,CAACD,gBAAgB,EAChCE,YAAY,EACZC,mBAAmB,EACnBC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACR,GAAGC,WACJ,GAAG7B;IACJ,MAAME,KAAKR,aAAaS,QAAQ;IAEhC,IAAIO,eAAeC;IACnB,IAAIF,YAAY;QACd,IAAIqB,YAAyB,CAAC;QAC9B,IAAIC;QACJ,+DAA+D;QAC/D,8DAA8D;QAC9D,kBAAIvC,eAAoBiB,eAAe,OAAOA,eAAe,UAAU;YACrEsB,iBAAiBtB;QACnB,OAAO;YACJ,CAAA,EAAEmB,UAAUG,cAAc,EAAE,GAAGD,WAAW,GAAGrB,UAAS;QACzD;QAEAC,6BACE,KAACf;YACCY,OAAOA,UAAU,YAAY,cAAc;YAC3CyB,WAAWZ,WAAWH;YACrB,GAAGa,SAAS;sBAEZC;;IAGP;IAEA,IAAIjB,YAAYC;IAChB,IAAI,OAAOC,kBAAkBY,aAAa,aAAa;QACrDd,YAAYE,iBAAiBY,QAAQ;IACvC;IAEA,MAAMpB,SAAS,CAAC,CAACE;IACjB,MAAMsB,YAAYZ,WAAWZ,UAAUS;IACvC,MAAM,EAAEgB,YAAY,EAAEC,QAAQ,EAAE,GAAGzC,mBAAmB;QACpD0C,QAAQ;QACRC,SAASnC;QACTG,WAAWN,MAAM;YACfM;YACAG;YACAC;YACAI;YACAQ;YACAY;YACAf;QACF;QACAZ;QACAC;QACAgB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAU,WAAW;QACXC,cAAczB;QACd0B,cAAc;IAChB;IAEA,qEAAqE;IACrE,2CAA2C;IAC3C,IAAI,CAACL,UAAU;QACb,OAAO;IACT;IAEA,qBACE,MAACM;QAAK,GAAGX,SAAS;QAAG,GAAGI,YAAY;QAAE/B,IAAIA;;0BACxC,KAACL;gBACCW,QAAQA;gBACRY,SAASA;gBACTC,WAAWA;gBACXJ,aAAaA;gBACbwB,gBAAgBtB;gBACf,GAAGD,YAAY;0BAEfU;;YAEFlB;YACAO,6BACC,KAACrB;gBAAiBoC,WAAWA;gBAAY,GAAGhB,gBAAgB;0BACzDF;;;;AAKX,GACA"}
@@ -21,7 +21,7 @@ export interface ToastActionButtonProps extends ButtonProps {
21
21
  * This button will automatically close the toast when clicked unless
22
22
  * `event.stopPropagation()` is called from the `onClick` prop.
23
23
  *
24
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
24
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
25
25
  * @since 6.0.0
26
26
  */
27
27
  export declare const ToastActionButton: import("react").ForwardRefExoticComponent<ToastActionButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -15,7 +15,7 @@ const noop = ()=>{
15
15
  * This button will automatically close the toast when clicked unless
16
16
  * `event.stopPropagation()` is called from the `onClick` prop.
17
17
  *
18
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
18
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
19
19
  * @since 6.0.0
20
20
  */ export const ToastActionButton = /*#__PURE__*/ forwardRef(function ToastActionButton(props, ref) {
21
21
  const { className, children, theme = "secondary", onClick = noop, reordered, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/ToastActionButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { cnb } from \"cnbuilder\";\nimport { forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { type ButtonTheme } from \"../button/styles.js\";\nimport { bem } from \"../utils/bem.js\";\nimport { useCurrentToastActions } from \"./useCurrentToastActions.js\";\n\nconst styles = bem(\"rmd-toast-action\");\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastActionButtonProps extends ButtonProps {\n /** @defaultValue `\"secondary\"` */\n theme?: ButtonTheme;\n\n /**\n * Set this to `true` when there is a close button visible and the content is\n * stacked. This will update the styles so the button renders in the bottom\n * right below the content and close button.\n *\n * @defaultValue `false`\n */\n reordered?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This button will automatically close the toast when clicked unless\n * `event.stopPropagation()` is called from the `onClick` prop.\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastActionButton = forwardRef<\n HTMLButtonElement,\n ToastActionButtonProps\n>(function ToastActionButton(props, ref) {\n const {\n className,\n children,\n theme = \"secondary\",\n onClick = noop,\n reordered,\n ...remaining\n } = props;\n const { removeToast } = useCurrentToastActions();\n\n return (\n <Button\n {...remaining}\n ref={ref}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n removeToast(true);\n }}\n theme={theme}\n className={cnb(styles({ reordered }), className)}\n >\n {children}\n </Button>\n );\n});\n"],"names":["cnb","forwardRef","Button","bem","useCurrentToastActions","styles","noop","ToastActionButton","props","ref","className","children","theme","onClick","reordered","remaining","removeToast","event","isPropagationStopped"],"mappings":"AAAA;;AAEA,SAASA,GAAG,QAAQ,YAAY;AAChC,SAASC,UAAU,QAAQ,QAAQ;AAEnC,SAASC,MAAM,QAA0B,sBAAsB;AAE/D,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,MAAMC,SAASF,IAAI;AACnB,MAAMG,OAAO;AACX,aAAa;AACf;AAmBA;;;;;;;;CAQC,GACD,OAAO,MAAMC,kCAAoBN,WAG/B,SAASM,kBAAkBC,KAAK,EAAEC,GAAG;IACrC,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,QAAQ,WAAW,EACnBC,UAAUP,IAAI,EACdQ,SAAS,EACT,GAAGC,WACJ,GAAGP;IACJ,MAAM,EAAEQ,WAAW,EAAE,GAAGZ;IAExB,qBACE,KAACF;QACE,GAAGa,SAAS;QACbN,KAAKA;QACLI,SAAS,CAACI;YACRJ,QAAQI;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAF,YAAY;QACd;QACAJ,OAAOA;QACPF,WAAWV,IAAIK,OAAO;YAAES;QAAU,IAAIJ;kBAErCC;;AAGP,GAAG"}
1
+ {"version":3,"sources":["../../src/snackbar/ToastActionButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { cnb } from \"cnbuilder\";\nimport { forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { type ButtonTheme } from \"../button/styles.js\";\nimport { bem } from \"../utils/bem.js\";\nimport { useCurrentToastActions } from \"./useCurrentToastActions.js\";\n\nconst styles = bem(\"rmd-toast-action\");\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastActionButtonProps extends ButtonProps {\n /** @defaultValue `\"secondary\"` */\n theme?: ButtonTheme;\n\n /**\n * Set this to `true` when there is a close button visible and the content is\n * stacked. This will update the styles so the button renders in the bottom\n * right below the content and close button.\n *\n * @defaultValue `false`\n */\n reordered?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This button will automatically close the toast when clicked unless\n * `event.stopPropagation()` is called from the `onClick` prop.\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastActionButton = forwardRef<\n HTMLButtonElement,\n ToastActionButtonProps\n>(function ToastActionButton(props, ref) {\n const {\n className,\n children,\n theme = \"secondary\",\n onClick = noop,\n reordered,\n ...remaining\n } = props;\n const { removeToast } = useCurrentToastActions();\n\n return (\n <Button\n {...remaining}\n ref={ref}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n removeToast(true);\n }}\n theme={theme}\n className={cnb(styles({ reordered }), className)}\n >\n {children}\n </Button>\n );\n});\n"],"names":["cnb","forwardRef","Button","bem","useCurrentToastActions","styles","noop","ToastActionButton","props","ref","className","children","theme","onClick","reordered","remaining","removeToast","event","isPropagationStopped"],"mappings":"AAAA;;AAEA,SAASA,GAAG,QAAQ,YAAY;AAChC,SAASC,UAAU,QAAQ,QAAQ;AAEnC,SAASC,MAAM,QAA0B,sBAAsB;AAE/D,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,MAAMC,SAASF,IAAI;AACnB,MAAMG,OAAO;AACX,aAAa;AACf;AAmBA;;;;;;;;CAQC,GACD,OAAO,MAAMC,kCAAoBN,WAG/B,SAASM,kBAAkBC,KAAK,EAAEC,GAAG;IACrC,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,QAAQ,WAAW,EACnBC,UAAUP,IAAI,EACdQ,SAAS,EACT,GAAGC,WACJ,GAAGP;IACJ,MAAM,EAAEQ,WAAW,EAAE,GAAGZ;IAExB,qBACE,KAACF;QACE,GAAGa,SAAS;QACbN,KAAKA;QACLI,SAAS,CAACI;YACRJ,QAAQI;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAF,YAAY;QACd;QACAJ,OAAOA;QACPF,WAAWV,IAAIK,OAAO;YAAES;QAAU,IAAIJ;kBAErCC;;AAGP,GAAG"}
@@ -28,7 +28,7 @@ export interface ToastCloseButtonProps extends ButtonProps {
28
28
  * This button will automatically close the toast when clicked unless
29
29
  * `event.stopPropagation()` is called from the `onClick` prop.
30
30
  *
31
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
31
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
32
32
  * @since 6.0.0
33
33
  */
34
34
  export declare const ToastCloseButton: import("react").ForwardRefExoticComponent<ToastCloseButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -16,7 +16,7 @@ const noop = ()=>{
16
16
  * This button will automatically close the toast when clicked unless
17
17
  * `event.stopPropagation()` is called from the `onClick` prop.
18
18
  *
19
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
19
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
20
20
  * @since 6.0.0
21
21
  */ export const ToastCloseButton = /*#__PURE__*/ forwardRef(function ToastCloseButton(props, ref) {
22
22
  const { buttonType = "icon-square", "aria-labelledby": ariaLabelledBy, "aria-label": ariaLabel = buttonType !== "text" && !ariaLabelledBy ? "Close" : undefined, children: propChildren, className, onClick = noop, reordered, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/ToastCloseButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { cnb } from \"cnbuilder\";\nimport { forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { type ButtonType } from \"../button/styles.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { bem } from \"../utils/bem.js\";\nimport { useCurrentToastActions } from \"./useCurrentToastActions.js\";\n\nconst styles = bem(\"rmd-toast-x\");\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastCloseButtonProps extends ButtonProps {\n /**\n * Note: This default value will only be used if the {@link buttonType} is not\n * `\"text\"` and an `aria-labelledby` is not provided.\n *\n * @defaultValue `\"Close\"`\n */\n \"aria-label\"?: string;\n\n /** @defaultValue `\"icon-square\"` */\n buttonType?: ButtonType;\n\n /**\n * Set this to `true` when there is a close button visible and the content is\n * stacked. This will update the styles so the button renders next to the\n * content and above the action button.\n *\n * @defaultValue `false`\n */\n reordered?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This button will automatically close the toast when clicked unless\n * `event.stopPropagation()` is called from the `onClick` prop.\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastCloseButton = forwardRef<\n HTMLButtonElement,\n ToastCloseButtonProps\n>(function ToastCloseButton(props, ref) {\n const {\n buttonType = \"icon-square\",\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-label\": ariaLabel = buttonType !== \"text\" && !ariaLabelledBy\n ? \"Close\"\n : undefined,\n children: propChildren,\n className,\n onClick = noop,\n reordered,\n ...remaining\n } = props;\n\n const children = getIcon(\"close\", propChildren);\n const { removeToast } = useCurrentToastActions();\n\n return (\n <Button\n {...remaining}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n ref={ref}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n removeToast(true);\n }}\n className={cnb(styles({ reordered }), className)}\n buttonType={buttonType}\n >\n {children}\n </Button>\n );\n});\n"],"names":["cnb","forwardRef","Button","getIcon","bem","useCurrentToastActions","styles","noop","ToastCloseButton","props","ref","buttonType","ariaLabelledBy","ariaLabel","undefined","children","propChildren","className","onClick","reordered","remaining","removeToast","aria-label","aria-labelledby","event","isPropagationStopped"],"mappings":"AAAA;;AAEA,SAASA,GAAG,QAAQ,YAAY;AAChC,SAASC,UAAU,QAAQ,QAAQ;AAEnC,SAASC,MAAM,QAA0B,sBAAsB;AAE/D,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,MAAMC,SAASF,IAAI;AACnB,MAAMG,OAAO;AACX,aAAa;AACf;AA2BA;;;;;;;;CAQC,GACD,OAAO,MAAMC,iCAAmBP,WAG9B,SAASO,iBAAiBC,KAAK,EAAEC,GAAG;IACpC,MAAM,EACJC,aAAa,aAAa,EAC1B,mBAAmBC,cAAc,EACjC,cAAcC,YAAYF,eAAe,UAAU,CAACC,iBAChD,UACAE,SAAS,EACbC,UAAUC,YAAY,EACtBC,SAAS,EACTC,UAAUX,IAAI,EACdY,SAAS,EACT,GAAGC,WACJ,GAAGX;IAEJ,MAAMM,WAAWZ,QAAQ,SAASa;IAClC,MAAM,EAAEK,WAAW,EAAE,GAAGhB;IAExB,qBACE,KAACH;QACE,GAAGkB,SAAS;QACbE,cAAYT;QACZU,mBAAiBX;QACjBF,KAAKA;QACLQ,SAAS,CAACM;YACRN,QAAQM;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAJ,YAAY;QACd;QACAJ,WAAWjB,IAAIM,OAAO;YAAEa;QAAU,IAAIF;QACtCN,YAAYA;kBAEXI;;AAGP,GAAG"}
1
+ {"version":3,"sources":["../../src/snackbar/ToastCloseButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { cnb } from \"cnbuilder\";\nimport { forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { type ButtonType } from \"../button/styles.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { bem } from \"../utils/bem.js\";\nimport { useCurrentToastActions } from \"./useCurrentToastActions.js\";\n\nconst styles = bem(\"rmd-toast-x\");\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @since 6.0.0\n */\nexport interface ToastCloseButtonProps extends ButtonProps {\n /**\n * Note: This default value will only be used if the {@link buttonType} is not\n * `\"text\"` and an `aria-labelledby` is not provided.\n *\n * @defaultValue `\"Close\"`\n */\n \"aria-label\"?: string;\n\n /** @defaultValue `\"icon-square\"` */\n buttonType?: ButtonType;\n\n /**\n * Set this to `true` when there is a close button visible and the content is\n * stacked. This will update the styles so the button renders next to the\n * content and above the action button.\n *\n * @defaultValue `false`\n */\n reordered?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * This button will automatically close the toast when clicked unless\n * `event.stopPropagation()` is called from the `onClick` prop.\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastCloseButton = forwardRef<\n HTMLButtonElement,\n ToastCloseButtonProps\n>(function ToastCloseButton(props, ref) {\n const {\n buttonType = \"icon-square\",\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-label\": ariaLabel = buttonType !== \"text\" && !ariaLabelledBy\n ? \"Close\"\n : undefined,\n children: propChildren,\n className,\n onClick = noop,\n reordered,\n ...remaining\n } = props;\n\n const children = getIcon(\"close\", propChildren);\n const { removeToast } = useCurrentToastActions();\n\n return (\n <Button\n {...remaining}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n ref={ref}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n removeToast(true);\n }}\n className={cnb(styles({ reordered }), className)}\n buttonType={buttonType}\n >\n {children}\n </Button>\n );\n});\n"],"names":["cnb","forwardRef","Button","getIcon","bem","useCurrentToastActions","styles","noop","ToastCloseButton","props","ref","buttonType","ariaLabelledBy","ariaLabel","undefined","children","propChildren","className","onClick","reordered","remaining","removeToast","aria-label","aria-labelledby","event","isPropagationStopped"],"mappings":"AAAA;;AAEA,SAASA,GAAG,QAAQ,YAAY;AAChC,SAASC,UAAU,QAAQ,QAAQ;AAEnC,SAASC,MAAM,QAA0B,sBAAsB;AAE/D,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,MAAMC,SAASF,IAAI;AACnB,MAAMG,OAAO;AACX,aAAa;AACf;AA2BA;;;;;;;;CAQC,GACD,OAAO,MAAMC,iCAAmBP,WAG9B,SAASO,iBAAiBC,KAAK,EAAEC,GAAG;IACpC,MAAM,EACJC,aAAa,aAAa,EAC1B,mBAAmBC,cAAc,EACjC,cAAcC,YAAYF,eAAe,UAAU,CAACC,iBAChD,UACAE,SAAS,EACbC,UAAUC,YAAY,EACtBC,SAAS,EACTC,UAAUX,IAAI,EACdY,SAAS,EACT,GAAGC,WACJ,GAAGX;IAEJ,MAAMM,WAAWZ,QAAQ,SAASa;IAClC,MAAM,EAAEK,WAAW,EAAE,GAAGhB;IAExB,qBACE,KAACH;QACE,GAAGkB,SAAS;QACbE,cAAYT;QACZU,mBAAiBX;QACjBF,KAAKA;QACLQ,SAAS,CAACM;YACRN,QAAQM;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAJ,YAAY;QACd;QACAJ,WAAWjB,IAAIM,OAAO;YAAEa;QAAU,IAAIF;QACtCN,YAAYA;kBAEXI;;AAGP,GAAG"}
@@ -28,7 +28,7 @@ export interface ToastContentProps extends HTMLAttributes<HTMLDivElement> {
28
28
  /**
29
29
  * **Client Component**
30
30
  *
31
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
31
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
32
32
  * @since 6.0.0
33
33
  */
34
34
  export declare const ToastContent: import("react").ForwardRefExoticComponent<ToastContentProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -6,7 +6,7 @@ import { toastContent } from "./toastContentStyles.js";
6
6
  /**
7
7
  * **Client Component**
8
8
  *
9
- * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}
9
+ * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}
10
10
  * @since 6.0.0
11
11
  */ export const ToastContent = /*#__PURE__*/ forwardRef(function ToastContent(props, ref) {
12
12
  const { className, children, action, stacked, multiline: propMultiline, closeButton, disableWrapper, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/snackbar/ToastContent.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef, useCallback, useState } from \"react\";\n\nimport { useResizeObserver } from \"../useResizeObserver.js\";\nimport { toastContent } from \"./toastContentStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface ToastContentProps extends HTMLAttributes<HTMLDivElement> {\n /** @defaultValue `false` */\n action?: boolean;\n\n /** @defaultValue `false` */\n stacked?: boolean;\n\n /**\n * Set this to `true` if you know that the {@link children} span multiple\n * lines. When this is omitted, a `ResizeObserver` will be used to\n * automatically detect multiline content.\n */\n multiline?: boolean;\n\n /** @defaultValue `false` */\n closeButton?: boolean;\n\n /**\n * Set this to `true` if you do not want to wrap the `children` in a `<div>`\n * that applies some toast layout styles. This should really only be used for\n * custom `Toast` implementations.\n *\n * @internal\n * @defaultValue `false`\n */\n disableWrapper?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://next.react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(\n function ToastContent(props, ref) {\n const {\n className,\n children,\n action,\n stacked,\n multiline: propMultiline,\n closeButton,\n disableWrapper,\n ...remaining\n } = props;\n\n const [isMultiline, setMultiline] = useState(false);\n const nodeRef = useResizeObserver({\n ref,\n disabled: disableWrapper || typeof propMultiline === \"boolean\",\n disableWidth: true,\n onUpdate: useCallback((entry) => {\n const element = entry.target;\n const style = window.getComputedStyle(element);\n const lineHeight = parseFloat(style.lineHeight);\n if (Number.isNaN(lineHeight)) {\n return;\n }\n\n setMultiline(element.scrollHeight > lineHeight);\n }, []),\n });\n const multiline = propMultiline ?? isMultiline;\n\n if (disableWrapper) {\n return <>{children}</>;\n }\n\n return (\n <div\n {...remaining}\n ref={nodeRef}\n className={toastContent({\n action,\n stacked,\n multiline,\n closeButton,\n className,\n })}\n >\n {children}\n </div>\n );\n }\n);\n"],"names":["forwardRef","useCallback","useState","useResizeObserver","toastContent","ToastContent","props","ref","className","children","action","stacked","multiline","propMultiline","closeButton","disableWrapper","remaining","isMultiline","setMultiline","nodeRef","disabled","disableWidth","onUpdate","entry","element","target","style","window","getComputedStyle","lineHeight","parseFloat","Number","isNaN","scrollHeight","div"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AAE/E,SAASC,iBAAiB,QAAQ,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,0BAA0B;AAiCvD;;;;;CAKC,GACD,OAAO,MAAMC,6BAAeL,WAC1B,SAASK,aAAaC,KAAK,EAAEC,GAAG;IAC9B,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,MAAM,EACNC,OAAO,EACPC,WAAWC,aAAa,EACxBC,WAAW,EACXC,cAAc,EACd,GAAGC,WACJ,GAAGV;IAEJ,MAAM,CAACW,aAAaC,aAAa,GAAGhB,SAAS;IAC7C,MAAMiB,UAAUhB,kBAAkB;QAChCI;QACAa,UAAUL,kBAAkB,OAAOF,kBAAkB;QACrDQ,cAAc;QACdC,UAAUrB,YAAY,CAACsB;YACrB,MAAMC,UAAUD,MAAME,MAAM;YAC5B,MAAMC,QAAQC,OAAOC,gBAAgB,CAACJ;YACtC,MAAMK,aAAaC,WAAWJ,MAAMG,UAAU;YAC9C,IAAIE,OAAOC,KAAK,CAACH,aAAa;gBAC5B;YACF;YAEAX,aAAaM,QAAQS,YAAY,GAAGJ;QACtC,GAAG,EAAE;IACP;IACA,MAAMjB,YAAYC,iBAAiBI;IAEnC,IAAIF,gBAAgB;QAClB,qBAAO;sBAAGN;;IACZ;IAEA,qBACE,KAACyB;QACE,GAAGlB,SAAS;QACbT,KAAKY;QACLX,WAAWJ,aAAa;YACtBM;YACAC;YACAC;YACAE;YACAN;QACF;kBAECC;;AAGP,GACA"}
1
+ {"version":3,"sources":["../../src/snackbar/ToastContent.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef, useCallback, useState } from \"react\";\n\nimport { useResizeObserver } from \"../useResizeObserver.js\";\nimport { toastContent } from \"./toastContentStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface ToastContentProps extends HTMLAttributes<HTMLDivElement> {\n /** @defaultValue `false` */\n action?: boolean;\n\n /** @defaultValue `false` */\n stacked?: boolean;\n\n /**\n * Set this to `true` if you know that the {@link children} span multiple\n * lines. When this is omitted, a `ResizeObserver` will be used to\n * automatically detect multiline content.\n */\n multiline?: boolean;\n\n /** @defaultValue `false` */\n closeButton?: boolean;\n\n /**\n * Set this to `true` if you do not want to wrap the `children` in a `<div>`\n * that applies some toast layout styles. This should really only be used for\n * custom `Toast` implementations.\n *\n * @internal\n * @defaultValue `false`\n */\n disableWrapper?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://react-md.dev/components/snackbar | Snackbar Demos}\n * @since 6.0.0\n */\nexport const ToastContent = forwardRef<HTMLDivElement, ToastContentProps>(\n function ToastContent(props, ref) {\n const {\n className,\n children,\n action,\n stacked,\n multiline: propMultiline,\n closeButton,\n disableWrapper,\n ...remaining\n } = props;\n\n const [isMultiline, setMultiline] = useState(false);\n const nodeRef = useResizeObserver({\n ref,\n disabled: disableWrapper || typeof propMultiline === \"boolean\",\n disableWidth: true,\n onUpdate: useCallback((entry) => {\n const element = entry.target;\n const style = window.getComputedStyle(element);\n const lineHeight = parseFloat(style.lineHeight);\n if (Number.isNaN(lineHeight)) {\n return;\n }\n\n setMultiline(element.scrollHeight > lineHeight);\n }, []),\n });\n const multiline = propMultiline ?? isMultiline;\n\n if (disableWrapper) {\n return <>{children}</>;\n }\n\n return (\n <div\n {...remaining}\n ref={nodeRef}\n className={toastContent({\n action,\n stacked,\n multiline,\n closeButton,\n className,\n })}\n >\n {children}\n </div>\n );\n }\n);\n"],"names":["forwardRef","useCallback","useState","useResizeObserver","toastContent","ToastContent","props","ref","className","children","action","stacked","multiline","propMultiline","closeButton","disableWrapper","remaining","isMultiline","setMultiline","nodeRef","disabled","disableWidth","onUpdate","entry","element","target","style","window","getComputedStyle","lineHeight","parseFloat","Number","isNaN","scrollHeight","div"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,QAAQ;AAE/E,SAASC,iBAAiB,QAAQ,0BAA0B;AAC5D,SAASC,YAAY,QAAQ,0BAA0B;AAiCvD;;;;;CAKC,GACD,OAAO,MAAMC,6BAAeL,WAC1B,SAASK,aAAaC,KAAK,EAAEC,GAAG;IAC9B,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,MAAM,EACNC,OAAO,EACPC,WAAWC,aAAa,EACxBC,WAAW,EACXC,cAAc,EACd,GAAGC,WACJ,GAAGV;IAEJ,MAAM,CAACW,aAAaC,aAAa,GAAGhB,SAAS;IAC7C,MAAMiB,UAAUhB,kBAAkB;QAChCI;QACAa,UAAUL,kBAAkB,OAAOF,kBAAkB;QACrDQ,cAAc;QACdC,UAAUrB,YAAY,CAACsB;YACrB,MAAMC,UAAUD,MAAME,MAAM;YAC5B,MAAMC,QAAQC,OAAOC,gBAAgB,CAACJ;YACtC,MAAMK,aAAaC,WAAWJ,MAAMG,UAAU;YAC9C,IAAIE,OAAOC,KAAK,CAACH,aAAa;gBAC5B;YACF;YAEAX,aAAaM,QAAQS,YAAY,GAAGJ;QACtC,GAAG,EAAE;IACP;IACA,MAAMjB,YAAYC,iBAAiBI;IAEnC,IAAIF,gBAAgB;QAClB,qBAAO;sBAAGN;;IACZ;IAEA,qBACE,KAACyB;QACE,GAAGlB,SAAS;QACbT,KAAKY;QACLX,WAAWJ,aAAa;YACtBM;YACAC;YACAC;YACAE;YACAN;QACF;kBAECC;;AAGP,GACA"}