@react-md/core 6.0.1 → 6.0.2

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 (763) 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/autocomplete/Autocomplete.d.ts +2 -2
  8. package/dist/autocomplete/Autocomplete.js +1 -1
  9. package/dist/autocomplete/Autocomplete.js.map +1 -1
  10. package/dist/autocomplete/AutocompleteChip.d.ts +1 -1
  11. package/dist/autocomplete/AutocompleteChip.js +1 -1
  12. package/dist/autocomplete/AutocompleteChip.js.map +1 -1
  13. package/dist/autocomplete/AutocompleteCircularProgress.d.ts +1 -1
  14. package/dist/autocomplete/AutocompleteCircularProgress.js +1 -1
  15. package/dist/autocomplete/AutocompleteCircularProgress.js.map +1 -1
  16. package/dist/autocomplete/AutocompleteClearButton.d.ts +1 -1
  17. package/dist/autocomplete/AutocompleteClearButton.js +1 -1
  18. package/dist/autocomplete/AutocompleteClearButton.js.map +1 -1
  19. package/dist/autocomplete/AutocompleteDropdownButton.d.ts +1 -1
  20. package/dist/autocomplete/AutocompleteDropdownButton.js +1 -1
  21. package/dist/autocomplete/AutocompleteDropdownButton.js.map +1 -1
  22. package/dist/autocomplete/_autocomplete.scss +8 -5
  23. package/dist/autocomplete/useAutocomplete.d.ts +3 -3
  24. package/dist/autocomplete/useAutocomplete.js +2 -1
  25. package/dist/autocomplete/useAutocomplete.js.map +1 -1
  26. package/dist/avatar/Avatar.d.ts +1 -1
  27. package/dist/avatar/Avatar.js +1 -1
  28. package/dist/avatar/Avatar.js.map +1 -1
  29. package/dist/badge/Badge.d.ts +1 -1
  30. package/dist/badge/Badge.js +1 -1
  31. package/dist/badge/Badge.js.map +1 -1
  32. package/dist/box/Box.d.ts +1 -1
  33. package/dist/box/Box.js +1 -1
  34. package/dist/box/Box.js.map +1 -1
  35. package/dist/button/AsyncButton.d.ts +1 -1
  36. package/dist/button/AsyncButton.js +1 -1
  37. package/dist/button/AsyncButton.js.map +1 -1
  38. package/dist/button/Button.d.ts +1 -1
  39. package/dist/button/Button.js +1 -1
  40. package/dist/button/Button.js.map +1 -1
  41. package/dist/button/ButtonUnstyled.d.ts +1 -1
  42. package/dist/button/ButtonUnstyled.js +1 -1
  43. package/dist/button/ButtonUnstyled.js.map +1 -1
  44. package/dist/button/TooltippedButton.d.ts +1 -1
  45. package/dist/button/TooltippedButton.js +1 -1
  46. package/dist/button/TooltippedButton.js.map +1 -1
  47. package/dist/card/Card.d.ts +1 -1
  48. package/dist/card/Card.js +1 -1
  49. package/dist/card/Card.js.map +1 -1
  50. package/dist/card/CardContent.d.ts +1 -1
  51. package/dist/card/CardContent.js +1 -1
  52. package/dist/card/CardContent.js.map +1 -1
  53. package/dist/card/CardFooter.d.ts +1 -1
  54. package/dist/card/CardFooter.js +1 -1
  55. package/dist/card/CardFooter.js.map +1 -1
  56. package/dist/card/CardHeader.d.ts +1 -1
  57. package/dist/card/CardHeader.js +1 -1
  58. package/dist/card/CardHeader.js.map +1 -1
  59. package/dist/card/CardSubtitle.d.ts +1 -1
  60. package/dist/card/CardSubtitle.js +1 -1
  61. package/dist/card/CardSubtitle.js.map +1 -1
  62. package/dist/card/CardTitle.d.ts +1 -1
  63. package/dist/card/CardTitle.js +1 -1
  64. package/dist/card/CardTitle.js.map +1 -1
  65. package/dist/card/ClickableCard.d.ts +1 -1
  66. package/dist/card/ClickableCard.js +1 -1
  67. package/dist/card/ClickableCard.js.map +1 -1
  68. package/dist/chip/Chip.d.ts +1 -1
  69. package/dist/chip/Chip.js +1 -1
  70. package/dist/chip/Chip.js.map +1 -1
  71. package/dist/dialog/Dialog.d.ts +1 -1
  72. package/dist/dialog/Dialog.js +1 -1
  73. package/dist/dialog/Dialog.js.map +1 -1
  74. package/dist/dialog/DialogContent.d.ts +1 -1
  75. package/dist/dialog/DialogContent.js +1 -1
  76. package/dist/dialog/DialogContent.js.map +1 -1
  77. package/dist/dialog/DialogFooter.d.ts +1 -1
  78. package/dist/dialog/DialogFooter.js +1 -1
  79. package/dist/dialog/DialogFooter.js.map +1 -1
  80. package/dist/dialog/DialogHeader.d.ts +1 -1
  81. package/dist/dialog/DialogHeader.js +1 -1
  82. package/dist/dialog/DialogHeader.js.map +1 -1
  83. package/dist/dialog/DialogTitle.d.ts +1 -1
  84. package/dist/dialog/DialogTitle.js +1 -1
  85. package/dist/dialog/DialogTitle.js.map +1 -1
  86. package/dist/dialog/FixedDialog.d.ts +1 -1
  87. package/dist/dialog/FixedDialog.js +1 -1
  88. package/dist/dialog/FixedDialog.js.map +1 -1
  89. package/dist/divider/Divider.d.ts +1 -1
  90. package/dist/divider/Divider.js +1 -1
  91. package/dist/divider/Divider.js.map +1 -1
  92. package/dist/draggable/useDraggable.d.ts +1 -1
  93. package/dist/draggable/useDraggable.js +1 -1
  94. package/dist/draggable/useDraggable.js.map +1 -1
  95. package/dist/expansion-panel/ExpansionList.d.ts +1 -1
  96. package/dist/expansion-panel/ExpansionList.js +1 -1
  97. package/dist/expansion-panel/ExpansionList.js.map +1 -1
  98. package/dist/expansion-panel/ExpansionPanel.d.ts +1 -1
  99. package/dist/expansion-panel/ExpansionPanel.js +1 -1
  100. package/dist/expansion-panel/ExpansionPanel.js.map +1 -1
  101. package/dist/expansion-panel/ExpansionPanelHeader.d.ts +1 -1
  102. package/dist/expansion-panel/ExpansionPanelHeader.js +1 -1
  103. package/dist/expansion-panel/ExpansionPanelHeader.js.map +1 -1
  104. package/dist/expansion-panel/useExpansionList.d.ts +1 -1
  105. package/dist/expansion-panel/useExpansionList.js +1 -1
  106. package/dist/expansion-panel/useExpansionList.js.map +1 -1
  107. package/dist/expansion-panel/useExpansionPanels.d.ts +1 -1
  108. package/dist/expansion-panel/useExpansionPanels.js +1 -1
  109. package/dist/expansion-panel/useExpansionPanels.js.map +1 -1
  110. package/dist/files/FileInput.d.ts +1 -1
  111. package/dist/files/FileInput.js +1 -1
  112. package/dist/files/FileInput.js.map +1 -1
  113. package/dist/files/useFileUpload.d.ts +2 -2
  114. package/dist/files/useFileUpload.js +2 -2
  115. package/dist/files/useFileUpload.js.map +1 -1
  116. package/dist/form/Checkbox.d.ts +1 -1
  117. package/dist/form/Checkbox.js +1 -1
  118. package/dist/form/Checkbox.js.map +1 -1
  119. package/dist/form/Fieldset.d.ts +1 -1
  120. package/dist/form/Fieldset.js +1 -1
  121. package/dist/form/Fieldset.js.map +1 -1
  122. package/dist/form/Form.d.ts +1 -1
  123. package/dist/form/Form.js +1 -1
  124. package/dist/form/Form.js.map +1 -1
  125. package/dist/form/FormMessage.d.ts +1 -1
  126. package/dist/form/FormMessage.js +1 -1
  127. package/dist/form/FormMessage.js.map +1 -1
  128. package/dist/form/FormMessageContainer.d.ts +1 -1
  129. package/dist/form/FormMessageContainer.js +1 -1
  130. package/dist/form/FormMessageContainer.js.map +1 -1
  131. package/dist/form/FormMessageCounter.d.ts +2 -2
  132. package/dist/form/FormMessageCounter.js +2 -2
  133. package/dist/form/FormMessageCounter.js.map +1 -1
  134. package/dist/form/InputToggle.d.ts +2 -2
  135. package/dist/form/InputToggle.js +2 -2
  136. package/dist/form/InputToggle.js.map +1 -1
  137. package/dist/form/Label.d.ts +3 -3
  138. package/dist/form/Label.js +3 -3
  139. package/dist/form/Label.js.map +1 -1
  140. package/dist/form/Legend.d.ts +1 -1
  141. package/dist/form/Legend.js +1 -1
  142. package/dist/form/Legend.js.map +1 -1
  143. package/dist/form/NativeSelect.d.ts +1 -1
  144. package/dist/form/NativeSelect.js +1 -1
  145. package/dist/form/NativeSelect.js.map +1 -1
  146. package/dist/form/OptGroup.d.ts +1 -1
  147. package/dist/form/OptGroup.js +1 -1
  148. package/dist/form/OptGroup.js.map +1 -1
  149. package/dist/form/Option.d.ts +1 -1
  150. package/dist/form/Option.js +1 -1
  151. package/dist/form/Option.js.map +1 -1
  152. package/dist/form/Password.d.ts +1 -1
  153. package/dist/form/Password.js +1 -1
  154. package/dist/form/Password.js.map +1 -1
  155. package/dist/form/Radio.d.ts +1 -1
  156. package/dist/form/Radio.js +1 -1
  157. package/dist/form/Radio.js.map +1 -1
  158. package/dist/form/Select.d.ts +1 -1
  159. package/dist/form/Select.js +1 -1
  160. package/dist/form/Select.js.map +1 -1
  161. package/dist/form/Slider.d.ts +1 -1
  162. package/dist/form/Slider.js.map +1 -1
  163. package/dist/form/Switch.d.ts +1 -1
  164. package/dist/form/Switch.js +1 -1
  165. package/dist/form/Switch.js.map +1 -1
  166. package/dist/form/TextArea.d.ts +1 -1
  167. package/dist/form/TextArea.js +1 -1
  168. package/dist/form/TextArea.js.map +1 -1
  169. package/dist/form/TextField.d.ts +1 -1
  170. package/dist/form/TextField.js +1 -1
  171. package/dist/form/TextField.js.map +1 -1
  172. package/dist/form/useCheckboxGroup.d.ts +8 -8
  173. package/dist/form/useCheckboxGroup.js +2 -2
  174. package/dist/form/useCheckboxGroup.js.map +1 -1
  175. package/dist/form/useCombobox.js +1 -0
  176. package/dist/form/useCombobox.js.map +1 -1
  177. package/dist/form/useNumberField.d.ts +2 -2
  178. package/dist/form/useNumberField.js +2 -2
  179. package/dist/form/useNumberField.js.map +1 -1
  180. package/dist/form/useRadioGroup.d.ts +4 -4
  181. package/dist/form/useRadioGroup.js +2 -2
  182. package/dist/form/useRadioGroup.js.map +1 -1
  183. package/dist/form/useRangeSlider.d.ts +1 -1
  184. package/dist/form/useRangeSlider.js +1 -1
  185. package/dist/form/useRangeSlider.js.map +1 -1
  186. package/dist/form/useSlider.d.ts +1 -1
  187. package/dist/form/useSlider.js +1 -1
  188. package/dist/form/useSlider.js.map +1 -1
  189. package/dist/form/useTextField.d.ts +4 -4
  190. package/dist/form/useTextField.js +2 -2
  191. package/dist/form/useTextField.js.map +1 -1
  192. package/dist/icon/FontIcon.d.ts +1 -1
  193. package/dist/icon/FontIcon.js +1 -1
  194. package/dist/icon/FontIcon.js.map +1 -1
  195. package/dist/icon/IconRotator.d.ts +1 -1
  196. package/dist/icon/IconRotator.js +1 -1
  197. package/dist/icon/IconRotator.js.map +1 -1
  198. package/dist/icon/MaterialIcon.d.ts +2 -2
  199. package/dist/icon/MaterialIcon.js +2 -2
  200. package/dist/icon/MaterialIcon.js.map +1 -1
  201. package/dist/icon/MaterialSymbol.d.ts +2 -2
  202. package/dist/icon/MaterialSymbol.js +2 -2
  203. package/dist/icon/MaterialSymbol.js.map +1 -1
  204. package/dist/icon/SVGIcon.d.ts +1 -1
  205. package/dist/icon/SVGIcon.js +1 -1
  206. package/dist/icon/SVGIcon.js.map +1 -1
  207. package/dist/icon/TextIconSpacing.d.ts +1 -1
  208. package/dist/icon/TextIconSpacing.js +1 -1
  209. package/dist/icon/TextIconSpacing.js.map +1 -1
  210. package/dist/layout/LayoutAppBar.d.ts +1 -1
  211. package/dist/layout/LayoutAppBar.js +1 -1
  212. package/dist/layout/LayoutAppBar.js.map +1 -1
  213. package/dist/layout/LayoutNav.d.ts +1 -1
  214. package/dist/layout/LayoutNav.js +1 -1
  215. package/dist/layout/LayoutNav.js.map +1 -1
  216. package/dist/layout/LayoutWindowSplitter.d.ts +1 -1
  217. package/dist/layout/LayoutWindowSplitter.js +1 -1
  218. package/dist/layout/LayoutWindowSplitter.js.map +1 -1
  219. package/dist/layout/Main.d.ts +1 -1
  220. package/dist/layout/Main.js +1 -1
  221. package/dist/layout/Main.js.map +1 -1
  222. package/dist/layout/useExpandableLayout.d.ts +1 -1
  223. package/dist/layout/useExpandableLayout.js +1 -1
  224. package/dist/layout/useExpandableLayout.js.map +1 -1
  225. package/dist/layout/useHorizontalLayoutTransition.d.ts +1 -1
  226. package/dist/layout/useHorizontalLayoutTransition.js +1 -1
  227. package/dist/layout/useHorizontalLayoutTransition.js.map +1 -1
  228. package/dist/layout/useLayoutAppBarHeight.d.ts +1 -1
  229. package/dist/layout/useLayoutAppBarHeight.js +1 -1
  230. package/dist/layout/useLayoutAppBarHeight.js.map +1 -1
  231. package/dist/layout/useLayoutTree.d.ts +3 -3
  232. package/dist/layout/useLayoutTree.js +3 -3
  233. package/dist/layout/useLayoutTree.js.map +1 -1
  234. package/dist/layout/useLayoutWindowSplitter.d.ts +1 -1
  235. package/dist/layout/useLayoutWindowSplitter.js +1 -1
  236. package/dist/layout/useLayoutWindowSplitter.js.map +1 -1
  237. package/dist/layout/useResizableLayout.d.ts +1 -1
  238. package/dist/layout/useResizableLayout.js +1 -1
  239. package/dist/layout/useResizableLayout.js.map +1 -1
  240. package/dist/layout/useTemporaryLayout.d.ts +1 -1
  241. package/dist/layout/useTemporaryLayout.js +1 -1
  242. package/dist/layout/useTemporaryLayout.js.map +1 -1
  243. package/dist/link/Link.d.ts +1 -1
  244. package/dist/link/Link.js +1 -1
  245. package/dist/link/Link.js.map +1 -1
  246. package/dist/link/SkipToMainContent.d.ts +1 -1
  247. package/dist/link/SkipToMainContent.js +1 -1
  248. package/dist/link/SkipToMainContent.js.map +1 -1
  249. package/dist/list/List.d.ts +1 -1
  250. package/dist/list/List.js +1 -1
  251. package/dist/list/List.js.map +1 -1
  252. package/dist/list/ListItem.d.ts +1 -1
  253. package/dist/list/ListItem.js +1 -1
  254. package/dist/list/ListItem.js.map +1 -1
  255. package/dist/list/ListItemChildren.d.ts +1 -1
  256. package/dist/list/ListItemChildren.js +1 -1
  257. package/dist/list/ListItemChildren.js.map +1 -1
  258. package/dist/list/ListItemLink.d.ts +1 -1
  259. package/dist/list/ListItemLink.js +1 -1
  260. package/dist/list/ListItemLink.js.map +1 -1
  261. package/dist/list/ListSubheader.d.ts +1 -1
  262. package/dist/list/ListSubheader.js +1 -1
  263. package/dist/list/ListSubheader.js.map +1 -1
  264. package/dist/media-queries/AppSizeProvider.d.ts +2 -2
  265. package/dist/media-queries/AppSizeProvider.js +2 -2
  266. package/dist/media-queries/AppSizeProvider.js.map +1 -1
  267. package/dist/media-queries/useMediaQuery.d.ts +2 -2
  268. package/dist/media-queries/useMediaQuery.js +2 -2
  269. package/dist/media-queries/useMediaQuery.js.map +1 -1
  270. package/dist/menu/DropdownMenu.d.ts +1 -1
  271. package/dist/menu/DropdownMenu.js +2 -1
  272. package/dist/menu/DropdownMenu.js.map +1 -1
  273. package/dist/menu/Menu.d.ts +1 -1
  274. package/dist/menu/Menu.js +1 -1
  275. package/dist/menu/Menu.js.map +1 -1
  276. package/dist/menu/MenuBar.d.ts +1 -1
  277. package/dist/menu/MenuBar.js +1 -1
  278. package/dist/menu/MenuBar.js.map +1 -1
  279. package/dist/menu/MenuButton.d.ts +1 -1
  280. package/dist/menu/MenuButton.js +1 -1
  281. package/dist/menu/MenuButton.js.map +1 -1
  282. package/dist/menu/MenuItem.d.ts +1 -1
  283. package/dist/menu/MenuItem.js +1 -1
  284. package/dist/menu/MenuItem.js.map +1 -1
  285. package/dist/menu/MenuItemCheckbox.d.ts +1 -1
  286. package/dist/menu/MenuItemCheckbox.js +1 -1
  287. package/dist/menu/MenuItemCheckbox.js.map +1 -1
  288. package/dist/menu/MenuItemFileInput.d.ts +1 -1
  289. package/dist/menu/MenuItemFileInput.js +1 -1
  290. package/dist/menu/MenuItemFileInput.js.map +1 -1
  291. package/dist/menu/MenuItemGroup.d.ts +1 -1
  292. package/dist/menu/MenuItemGroup.js +1 -1
  293. package/dist/menu/MenuItemGroup.js.map +1 -1
  294. package/dist/menu/MenuItemInputToggle.d.ts +1 -1
  295. package/dist/menu/MenuItemInputToggle.js +1 -1
  296. package/dist/menu/MenuItemInputToggle.js.map +1 -1
  297. package/dist/menu/MenuItemRadio.d.ts +1 -1
  298. package/dist/menu/MenuItemRadio.js +1 -1
  299. package/dist/menu/MenuItemRadio.js.map +1 -1
  300. package/dist/menu/MenuItemSeparator.d.ts +1 -1
  301. package/dist/menu/MenuItemSeparator.js +1 -1
  302. package/dist/menu/MenuItemSeparator.js.map +1 -1
  303. package/dist/menu/MenuItemSwitch.d.ts +1 -1
  304. package/dist/menu/MenuItemSwitch.js +1 -1
  305. package/dist/menu/MenuItemSwitch.js.map +1 -1
  306. package/dist/menu/MenuItemTextField.d.ts +1 -1
  307. package/dist/menu/MenuItemTextField.js +1 -1
  308. package/dist/menu/MenuItemTextField.js.map +1 -1
  309. package/dist/menu/useContextMenu.d.ts +1 -1
  310. package/dist/menu/useContextMenu.js +1 -1
  311. package/dist/menu/useContextMenu.js.map +1 -1
  312. package/dist/navigation/CollapsibleNavGroup.d.ts +1 -1
  313. package/dist/navigation/CollapsibleNavGroup.js +1 -1
  314. package/dist/navigation/CollapsibleNavGroup.js.map +1 -1
  315. package/dist/navigation/DefaultNavigationRenderer.d.ts +1 -1
  316. package/dist/navigation/DefaultNavigationRenderer.js +1 -1
  317. package/dist/navigation/DefaultNavigationRenderer.js.map +1 -1
  318. package/dist/navigation/NavGroup.d.ts +1 -1
  319. package/dist/navigation/NavGroup.js +1 -1
  320. package/dist/navigation/NavGroup.js.map +1 -1
  321. package/dist/navigation/NavItem.d.ts +1 -1
  322. package/dist/navigation/NavItem.js +1 -1
  323. package/dist/navigation/NavItem.js.map +1 -1
  324. package/dist/navigation/NavItemButton.d.ts +1 -1
  325. package/dist/navigation/NavItemButton.js +1 -1
  326. package/dist/navigation/NavItemButton.js.map +1 -1
  327. package/dist/navigation/NavItemLink.d.ts +1 -1
  328. package/dist/navigation/NavItemLink.js +1 -1
  329. package/dist/navigation/NavItemLink.js.map +1 -1
  330. package/dist/navigation/NavSubheader.d.ts +1 -1
  331. package/dist/navigation/NavSubheader.js +1 -1
  332. package/dist/navigation/NavSubheader.js.map +1 -1
  333. package/dist/navigation/Navigation.d.ts +1 -1
  334. package/dist/navigation/Navigation.js +1 -1
  335. package/dist/navigation/Navigation.js.map +1 -1
  336. package/dist/navigation/useActiveHeadingId.d.ts +1 -1
  337. package/dist/navigation/useActiveHeadingId.js +1 -1
  338. package/dist/navigation/useActiveHeadingId.js.map +1 -1
  339. package/dist/navigation/useNavigationExpansion.d.ts +2 -2
  340. package/dist/navigation/useNavigationExpansion.js +2 -2
  341. package/dist/navigation/useNavigationExpansion.js.map +1 -1
  342. package/dist/navigation/useTableOfContentsHeadings.d.ts +1 -1
  343. package/dist/navigation/useTableOfContentsHeadings.js +1 -1
  344. package/dist/navigation/useTableOfContentsHeadings.js.map +1 -1
  345. package/dist/overlay/Overlay.d.ts +1 -1
  346. package/dist/overlay/Overlay.js +1 -1
  347. package/dist/overlay/Overlay.js.map +1 -1
  348. package/dist/portal/Portal.d.ts +1 -1
  349. package/dist/portal/Portal.js +1 -1
  350. package/dist/portal/Portal.js.map +1 -1
  351. package/dist/portal/PortalContainerProvider.d.ts +1 -1
  352. package/dist/portal/PortalContainerProvider.js +1 -1
  353. package/dist/portal/PortalContainerProvider.js.map +1 -1
  354. package/dist/positioning/useFixedPositioning.d.ts +1 -1
  355. package/dist/positioning/useFixedPositioning.js +1 -1
  356. package/dist/positioning/useFixedPositioning.js.map +1 -1
  357. package/dist/progress/CircularProgress.d.ts +1 -1
  358. package/dist/progress/CircularProgress.js +1 -1
  359. package/dist/progress/CircularProgress.js.map +1 -1
  360. package/dist/progress/LinearProgress.d.ts +1 -1
  361. package/dist/progress/LinearProgress.js +1 -1
  362. package/dist/progress/LinearProgress.js.map +1 -1
  363. package/dist/responsive-item/ResponsiveItem.d.ts +1 -1
  364. package/dist/responsive-item/ResponsiveItem.js +1 -1
  365. package/dist/responsive-item/ResponsiveItem.js.map +1 -1
  366. package/dist/responsive-item/ResponsiveItemOverlay.d.ts +1 -1
  367. package/dist/responsive-item/ResponsiveItemOverlay.js +1 -1
  368. package/dist/responsive-item/ResponsiveItemOverlay.js.map +1 -1
  369. package/dist/scroll/useScrollLock.d.ts +1 -1
  370. package/dist/scroll/useScrollLock.js +1 -1
  371. package/dist/scroll/useScrollLock.js.map +1 -1
  372. package/dist/segmented-button/SegmentedButton.d.ts +1 -1
  373. package/dist/segmented-button/SegmentedButton.js +1 -1
  374. package/dist/segmented-button/SegmentedButton.js.map +1 -1
  375. package/dist/segmented-button/SegmentedButtonContainer.d.ts +1 -1
  376. package/dist/segmented-button/SegmentedButtonContainer.js +1 -1
  377. package/dist/segmented-button/SegmentedButtonContainer.js.map +1 -1
  378. package/dist/sheet/Sheet.d.ts +1 -1
  379. package/dist/sheet/Sheet.js +1 -1
  380. package/dist/sheet/Sheet.js.map +1 -1
  381. package/dist/snackbar/DefaultToastRenderer.d.ts +1 -1
  382. package/dist/snackbar/DefaultToastRenderer.js +1 -1
  383. package/dist/snackbar/DefaultToastRenderer.js.map +1 -1
  384. package/dist/snackbar/Snackbar.d.ts +1 -1
  385. package/dist/snackbar/Snackbar.js +1 -1
  386. package/dist/snackbar/Snackbar.js.map +1 -1
  387. package/dist/snackbar/Toast.d.ts +1 -1
  388. package/dist/snackbar/Toast.js +1 -1
  389. package/dist/snackbar/Toast.js.map +1 -1
  390. package/dist/snackbar/ToastActionButton.d.ts +1 -1
  391. package/dist/snackbar/ToastActionButton.js +1 -1
  392. package/dist/snackbar/ToastActionButton.js.map +1 -1
  393. package/dist/snackbar/ToastCloseButton.d.ts +1 -1
  394. package/dist/snackbar/ToastCloseButton.js +1 -1
  395. package/dist/snackbar/ToastCloseButton.js.map +1 -1
  396. package/dist/snackbar/ToastContent.d.ts +1 -1
  397. package/dist/snackbar/ToastContent.js +1 -1
  398. package/dist/snackbar/ToastContent.js.map +1 -1
  399. package/dist/snackbar/ToastManager.d.ts +1 -1
  400. package/dist/snackbar/ToastManager.js +1 -1
  401. package/dist/snackbar/ToastManager.js.map +1 -1
  402. package/dist/snackbar/ToastManagerProvider.d.ts +1 -1
  403. package/dist/snackbar/ToastManagerProvider.js +1 -1
  404. package/dist/snackbar/ToastManagerProvider.js.map +1 -1
  405. package/dist/snackbar/useCurrentToastActions.d.ts +1 -1
  406. package/dist/snackbar/useCurrentToastActions.js +1 -1
  407. package/dist/snackbar/useCurrentToastActions.js.map +1 -1
  408. package/dist/storage/useStorage.d.ts +1 -1
  409. package/dist/storage/useStorage.js +1 -1
  410. package/dist/storage/useStorage.js.map +1 -1
  411. package/dist/suspense/CircularProgressSuspense.d.ts +1 -1
  412. package/dist/suspense/CircularProgressSuspense.js +1 -1
  413. package/dist/suspense/CircularProgressSuspense.js.map +1 -1
  414. package/dist/suspense/NullSuspense.d.ts +1 -1
  415. package/dist/suspense/NullSuspense.js +1 -1
  416. package/dist/suspense/NullSuspense.js.map +1 -1
  417. package/dist/table/StickyTableSection.d.ts +2 -2
  418. package/dist/table/StickyTableSection.js +2 -2
  419. package/dist/table/StickyTableSection.js.map +1 -1
  420. package/dist/table/Table.d.ts +1 -1
  421. package/dist/table/Table.js +1 -1
  422. package/dist/table/Table.js.map +1 -1
  423. package/dist/table/TableBody.d.ts +1 -1
  424. package/dist/table/TableBody.js +1 -1
  425. package/dist/table/TableBody.js.map +1 -1
  426. package/dist/table/TableCell.d.ts +1 -1
  427. package/dist/table/TableCell.js +1 -1
  428. package/dist/table/TableCell.js.map +1 -1
  429. package/dist/table/TableCheckbox.d.ts +1 -1
  430. package/dist/table/TableCheckbox.js +1 -1
  431. package/dist/table/TableCheckbox.js.map +1 -1
  432. package/dist/table/TableContainer.d.ts +1 -1
  433. package/dist/table/TableContainer.js +1 -1
  434. package/dist/table/TableContainer.js.map +1 -1
  435. package/dist/table/TableFooter.d.ts +1 -1
  436. package/dist/table/TableFooter.js +1 -1
  437. package/dist/table/TableFooter.js.map +1 -1
  438. package/dist/table/TableHeader.d.ts +1 -1
  439. package/dist/table/TableHeader.js +1 -1
  440. package/dist/table/TableHeader.js.map +1 -1
  441. package/dist/table/TableRadio.d.ts +1 -1
  442. package/dist/table/TableRadio.js +1 -1
  443. package/dist/table/TableRadio.js.map +1 -1
  444. package/dist/table/TableRow.d.ts +1 -1
  445. package/dist/table/TableRow.js +1 -1
  446. package/dist/table/TableRow.js.map +1 -1
  447. package/dist/tabs/SimpleTabPanel.d.ts +2 -2
  448. package/dist/tabs/SimpleTabPanel.js +2 -2
  449. package/dist/tabs/SimpleTabPanel.js.map +1 -1
  450. package/dist/tabs/SimpleTabPanels.d.ts +2 -2
  451. package/dist/tabs/SimpleTabPanels.js +2 -2
  452. package/dist/tabs/SimpleTabPanels.js.map +1 -1
  453. package/dist/tabs/Tab.d.ts +1 -1
  454. package/dist/tabs/Tab.js +1 -1
  455. package/dist/tabs/Tab.js.map +1 -1
  456. package/dist/tabs/TabList.d.ts +1 -1
  457. package/dist/tabs/TabList.js +1 -1
  458. package/dist/tabs/TabList.js.map +1 -1
  459. package/dist/tabs/useTabs.d.ts +4 -4
  460. package/dist/tabs/useTabs.js +2 -1
  461. package/dist/tabs/useTabs.js.map +1 -1
  462. package/dist/theme/LocalStorageColorSchemeProvider.d.ts +2 -2
  463. package/dist/theme/LocalStorageColorSchemeProvider.js +2 -2
  464. package/dist/theme/LocalStorageColorSchemeProvider.js.map +1 -1
  465. package/dist/theme/ThemeProvider.d.ts +1 -1
  466. package/dist/theme/ThemeProvider.js +1 -1
  467. package/dist/theme/ThemeProvider.js.map +1 -1
  468. package/dist/theme/useColorSchemeProvider.js +1 -0
  469. package/dist/theme/useColorSchemeProvider.js.map +1 -1
  470. package/dist/tooltip/Tooltip.d.ts +1 -1
  471. package/dist/tooltip/Tooltip.js +1 -1
  472. package/dist/tooltip/Tooltip.js.map +1 -1
  473. package/dist/tooltip/TooltipHoverModeProvider.d.ts +1 -1
  474. package/dist/tooltip/TooltipHoverModeProvider.js +1 -1
  475. package/dist/tooltip/TooltipHoverModeProvider.js.map +1 -1
  476. package/dist/tooltip/useTooltip.d.ts +1 -1
  477. package/dist/tooltip/useTooltip.js +1 -1
  478. package/dist/tooltip/useTooltip.js.map +1 -1
  479. package/dist/transition/CSSTransition.d.ts +1 -1
  480. package/dist/transition/CSSTransition.js +1 -1
  481. package/dist/transition/CSSTransition.js.map +1 -1
  482. package/dist/transition/Collapse.d.ts +1 -1
  483. package/dist/transition/Collapse.js +1 -1
  484. package/dist/transition/Collapse.js.map +1 -1
  485. package/dist/transition/CrossFade.d.ts +1 -1
  486. package/dist/transition/CrossFade.js +1 -1
  487. package/dist/transition/CrossFade.js.map +1 -1
  488. package/dist/transition/ScaleTransition.d.ts +1 -1
  489. package/dist/transition/ScaleTransition.js +1 -1
  490. package/dist/transition/ScaleTransition.js.map +1 -1
  491. package/dist/transition/SkeletonPlaceholder.d.ts +1 -1
  492. package/dist/transition/SkeletonPlaceholder.js +1 -1
  493. package/dist/transition/SkeletonPlaceholder.js.map +1 -1
  494. package/dist/transition/Slide.d.ts +1 -1
  495. package/dist/transition/Slide.js +1 -1
  496. package/dist/transition/Slide.js.map +1 -1
  497. package/dist/transition/SlideContainer.d.ts +1 -1
  498. package/dist/transition/SlideContainer.js +1 -1
  499. package/dist/transition/SlideContainer.js.map +1 -1
  500. package/dist/transition/useCSSTransition.d.ts +2 -2
  501. package/dist/transition/useCSSTransition.js +2 -2
  502. package/dist/transition/useCSSTransition.js.map +1 -1
  503. package/dist/transition/useCarousel.d.ts +1 -1
  504. package/dist/transition/useCarousel.js +1 -1
  505. package/dist/transition/useCarousel.js.map +1 -1
  506. package/dist/transition/useCollapseTransition.d.ts +2 -2
  507. package/dist/transition/useCollapseTransition.js +2 -2
  508. package/dist/transition/useCollapseTransition.js.map +1 -1
  509. package/dist/transition/useCrossFadeTransition.d.ts +2 -2
  510. package/dist/transition/useCrossFadeTransition.js +2 -2
  511. package/dist/transition/useCrossFadeTransition.js.map +1 -1
  512. package/dist/transition/useScaleTransition.d.ts +2 -2
  513. package/dist/transition/useScaleTransition.js +2 -2
  514. package/dist/transition/useScaleTransition.js.map +1 -1
  515. package/dist/transition/useSkeletonPlaceholder.d.ts +2 -2
  516. package/dist/transition/useSkeletonPlaceholder.js +2 -2
  517. package/dist/transition/useSkeletonPlaceholder.js.map +1 -1
  518. package/dist/transition/useSlideTransition.d.ts +1 -1
  519. package/dist/transition/useSlideTransition.js +1 -1
  520. package/dist/transition/useSlideTransition.js.map +1 -1
  521. package/dist/transition/useTransition.d.ts +1 -1
  522. package/dist/transition/useTransition.js +1 -1
  523. package/dist/transition/useTransition.js.map +1 -1
  524. package/dist/tree/DefaultTreeItemRenderer.d.ts +1 -1
  525. package/dist/tree/DefaultTreeItemRenderer.js +1 -1
  526. package/dist/tree/DefaultTreeItemRenderer.js.map +1 -1
  527. package/dist/tree/Tree.d.ts +1 -1
  528. package/dist/tree/Tree.js +1 -1
  529. package/dist/tree/Tree.js.map +1 -1
  530. package/dist/tree/TreeItem.d.ts +1 -1
  531. package/dist/tree/TreeItem.js +1 -1
  532. package/dist/tree/TreeItem.js.map +1 -1
  533. package/dist/tree/useTree.d.ts +1 -1
  534. package/dist/tree/useTree.js +1 -1
  535. package/dist/tree/useTree.js.map +1 -1
  536. package/dist/tree/useTreeExpansion.d.ts +1 -1
  537. package/dist/tree/useTreeExpansion.js +1 -1
  538. package/dist/tree/useTreeExpansion.js.map +1 -1
  539. package/dist/tree/useTreeItems.d.ts +1 -1
  540. package/dist/tree/useTreeItems.js +1 -1
  541. package/dist/tree/useTreeItems.js.map +1 -1
  542. package/dist/tree/useTreeSelection.d.ts +1 -1
  543. package/dist/tree/useTreeSelection.js +1 -1
  544. package/dist/tree/useTreeSelection.js.map +1 -1
  545. package/dist/typography/HighlightText.d.ts +1 -1
  546. package/dist/typography/HighlightText.js +1 -1
  547. package/dist/typography/HighlightText.js.map +1 -1
  548. package/dist/typography/Mark.d.ts +1 -1
  549. package/dist/typography/Mark.js +1 -1
  550. package/dist/typography/Mark.js.map +1 -1
  551. package/dist/typography/SrOnly.d.ts +1 -1
  552. package/dist/typography/SrOnly.js +1 -1
  553. package/dist/typography/SrOnly.js.map +1 -1
  554. package/dist/typography/TextContainer.d.ts +1 -1
  555. package/dist/typography/TextContainer.js +1 -1
  556. package/dist/typography/TextContainer.js.map +1 -1
  557. package/dist/typography/Typography.d.ts +1 -1
  558. package/dist/typography/Typography.js +1 -1
  559. package/dist/typography/Typography.js.map +1 -1
  560. package/dist/typography/WritingDirectionProvider.d.ts +1 -1
  561. package/dist/typography/WritingDirectionProvider.js +1 -1
  562. package/dist/typography/WritingDirectionProvider.js.map +1 -1
  563. package/dist/useEnsuredState.d.ts +1 -0
  564. package/dist/useEnsuredState.js +5 -3
  565. package/dist/useEnsuredState.js.map +1 -1
  566. package/dist/utils/RenderRecursively.d.ts +1 -1
  567. package/dist/utils/RenderRecursively.js +1 -1
  568. package/dist/utils/RenderRecursively.js.map +1 -1
  569. package/dist/window-splitter/WindowSplitter.d.ts +1 -1
  570. package/dist/window-splitter/WindowSplitter.js +1 -1
  571. package/dist/window-splitter/WindowSplitter.js.map +1 -1
  572. package/package.json +1 -1
  573. package/src/CoreProviders.tsx +1 -1
  574. package/src/SsrProvider.tsx +1 -1
  575. package/src/autocomplete/Autocomplete.tsx +3 -3
  576. package/src/autocomplete/AutocompleteChip.tsx +1 -1
  577. package/src/autocomplete/AutocompleteCircularProgress.tsx +1 -1
  578. package/src/autocomplete/AutocompleteClearButton.tsx +1 -1
  579. package/src/autocomplete/AutocompleteDropdownButton.tsx +1 -1
  580. package/src/autocomplete/useAutocomplete.ts +5 -4
  581. package/src/avatar/Avatar.tsx +1 -1
  582. package/src/badge/Badge.tsx +1 -1
  583. package/src/box/Box.tsx +1 -1
  584. package/src/button/AsyncButton.tsx +1 -1
  585. package/src/button/Button.tsx +1 -1
  586. package/src/button/ButtonUnstyled.tsx +1 -1
  587. package/src/button/TooltippedButton.tsx +1 -1
  588. package/src/card/Card.tsx +1 -1
  589. package/src/card/CardContent.tsx +1 -1
  590. package/src/card/CardFooter.tsx +1 -1
  591. package/src/card/CardHeader.tsx +1 -1
  592. package/src/card/CardSubtitle.tsx +1 -1
  593. package/src/card/CardTitle.tsx +1 -1
  594. package/src/card/ClickableCard.tsx +1 -1
  595. package/src/chip/Chip.tsx +1 -1
  596. package/src/dialog/Dialog.tsx +1 -1
  597. package/src/dialog/DialogContent.tsx +1 -1
  598. package/src/dialog/DialogFooter.tsx +1 -1
  599. package/src/dialog/DialogHeader.tsx +1 -1
  600. package/src/dialog/DialogTitle.tsx +1 -1
  601. package/src/dialog/FixedDialog.tsx +1 -1
  602. package/src/divider/Divider.tsx +1 -1
  603. package/src/draggable/useDraggable.ts +1 -1
  604. package/src/expansion-panel/ExpansionList.tsx +1 -1
  605. package/src/expansion-panel/ExpansionPanel.tsx +1 -1
  606. package/src/expansion-panel/ExpansionPanelHeader.tsx +1 -1
  607. package/src/expansion-panel/useExpansionList.ts +1 -1
  608. package/src/expansion-panel/useExpansionPanels.ts +1 -1
  609. package/src/files/FileInput.tsx +1 -1
  610. package/src/files/useFileUpload.ts +2 -2
  611. package/src/form/Checkbox.tsx +1 -1
  612. package/src/form/Fieldset.tsx +1 -1
  613. package/src/form/Form.tsx +1 -1
  614. package/src/form/FormMessage.tsx +1 -1
  615. package/src/form/FormMessageContainer.tsx +1 -1
  616. package/src/form/FormMessageCounter.tsx +2 -2
  617. package/src/form/InputToggle.tsx +2 -2
  618. package/src/form/Label.tsx +3 -3
  619. package/src/form/Legend.tsx +1 -1
  620. package/src/form/NativeSelect.tsx +1 -1
  621. package/src/form/OptGroup.tsx +1 -1
  622. package/src/form/Option.tsx +1 -1
  623. package/src/form/Password.tsx +1 -1
  624. package/src/form/Radio.tsx +1 -1
  625. package/src/form/Select.tsx +1 -1
  626. package/src/form/Slider.tsx +1 -1
  627. package/src/form/Switch.tsx +1 -1
  628. package/src/form/TextArea.tsx +1 -1
  629. package/src/form/TextField.tsx +1 -1
  630. package/src/form/useCheckboxGroup.ts +10 -10
  631. package/src/form/useCombobox.ts +1 -0
  632. package/src/form/useNumberField.ts +4 -4
  633. package/src/form/useRadioGroup.ts +6 -6
  634. package/src/form/useRangeSlider.ts +1 -1
  635. package/src/form/useSlider.ts +1 -1
  636. package/src/form/useTextField.ts +6 -6
  637. package/src/icon/FontIcon.tsx +1 -1
  638. package/src/icon/IconRotator.tsx +1 -1
  639. package/src/icon/MaterialIcon.tsx +2 -2
  640. package/src/icon/MaterialSymbol.tsx +2 -2
  641. package/src/icon/SVGIcon.tsx +1 -1
  642. package/src/icon/TextIconSpacing.tsx +1 -1
  643. package/src/layout/LayoutAppBar.tsx +1 -1
  644. package/src/layout/LayoutNav.tsx +1 -1
  645. package/src/layout/LayoutWindowSplitter.tsx +1 -1
  646. package/src/layout/Main.tsx +1 -1
  647. package/src/layout/useExpandableLayout.ts +1 -1
  648. package/src/layout/useHorizontalLayoutTransition.ts +1 -1
  649. package/src/layout/useLayoutAppBarHeight.ts +1 -1
  650. package/src/layout/useLayoutTree.ts +3 -3
  651. package/src/layout/useLayoutWindowSplitter.ts +1 -1
  652. package/src/layout/useResizableLayout.ts +1 -1
  653. package/src/layout/useTemporaryLayout.ts +1 -1
  654. package/src/link/Link.tsx +1 -1
  655. package/src/link/SkipToMainContent.tsx +1 -1
  656. package/src/list/List.tsx +1 -1
  657. package/src/list/ListItem.tsx +1 -1
  658. package/src/list/ListItemChildren.tsx +1 -1
  659. package/src/list/ListItemLink.tsx +1 -1
  660. package/src/list/ListSubheader.tsx +1 -1
  661. package/src/media-queries/AppSizeProvider.tsx +2 -2
  662. package/src/media-queries/useMediaQuery.ts +2 -2
  663. package/src/menu/DropdownMenu.tsx +2 -1
  664. package/src/menu/Menu.tsx +1 -1
  665. package/src/menu/MenuBar.tsx +1 -1
  666. package/src/menu/MenuButton.tsx +1 -1
  667. package/src/menu/MenuItem.tsx +1 -1
  668. package/src/menu/MenuItemCheckbox.tsx +1 -1
  669. package/src/menu/MenuItemFileInput.tsx +1 -1
  670. package/src/menu/MenuItemGroup.tsx +1 -1
  671. package/src/menu/MenuItemInputToggle.tsx +1 -1
  672. package/src/menu/MenuItemRadio.tsx +1 -1
  673. package/src/menu/MenuItemSeparator.tsx +1 -1
  674. package/src/menu/MenuItemSwitch.tsx +1 -1
  675. package/src/menu/MenuItemTextField.tsx +1 -1
  676. package/src/menu/useContextMenu.ts +1 -1
  677. package/src/navigation/CollapsibleNavGroup.tsx +1 -1
  678. package/src/navigation/DefaultNavigationRenderer.tsx +1 -1
  679. package/src/navigation/NavGroup.tsx +1 -1
  680. package/src/navigation/NavItem.tsx +1 -1
  681. package/src/navigation/NavItemButton.tsx +1 -1
  682. package/src/navigation/NavItemLink.tsx +1 -1
  683. package/src/navigation/NavSubheader.tsx +1 -1
  684. package/src/navigation/Navigation.tsx +1 -1
  685. package/src/navigation/useActiveHeadingId.ts +1 -1
  686. package/src/navigation/useNavigationExpansion.ts +2 -2
  687. package/src/navigation/useTableOfContentsHeadings.ts +1 -1
  688. package/src/overlay/Overlay.tsx +1 -1
  689. package/src/portal/Portal.tsx +1 -1
  690. package/src/portal/PortalContainerProvider.tsx +1 -1
  691. package/src/positioning/useFixedPositioning.ts +1 -1
  692. package/src/progress/CircularProgress.tsx +1 -1
  693. package/src/progress/LinearProgress.tsx +1 -1
  694. package/src/responsive-item/ResponsiveItem.tsx +1 -1
  695. package/src/responsive-item/ResponsiveItemOverlay.tsx +1 -1
  696. package/src/scroll/useScrollLock.ts +1 -1
  697. package/src/segmented-button/SegmentedButton.tsx +1 -1
  698. package/src/segmented-button/SegmentedButtonContainer.tsx +1 -1
  699. package/src/sheet/Sheet.tsx +1 -1
  700. package/src/snackbar/DefaultToastRenderer.tsx +1 -1
  701. package/src/snackbar/Snackbar.tsx +1 -1
  702. package/src/snackbar/Toast.tsx +1 -1
  703. package/src/snackbar/ToastActionButton.tsx +1 -1
  704. package/src/snackbar/ToastCloseButton.tsx +1 -1
  705. package/src/snackbar/ToastContent.tsx +1 -1
  706. package/src/snackbar/ToastManager.ts +1 -1
  707. package/src/snackbar/ToastManagerProvider.tsx +1 -1
  708. package/src/snackbar/useCurrentToastActions.ts +1 -1
  709. package/src/storage/useStorage.ts +1 -1
  710. package/src/suspense/CircularProgressSuspense.tsx +1 -1
  711. package/src/suspense/NullSuspense.tsx +1 -1
  712. package/src/table/StickyTableSection.tsx +2 -2
  713. package/src/table/Table.tsx +1 -1
  714. package/src/table/TableBody.tsx +1 -1
  715. package/src/table/TableCell.tsx +1 -1
  716. package/src/table/TableCheckbox.tsx +1 -1
  717. package/src/table/TableContainer.tsx +1 -1
  718. package/src/table/TableFooter.tsx +1 -1
  719. package/src/table/TableHeader.tsx +1 -1
  720. package/src/table/TableRadio.tsx +1 -1
  721. package/src/table/TableRow.tsx +1 -1
  722. package/src/tabs/SimpleTabPanel.tsx +2 -2
  723. package/src/tabs/SimpleTabPanels.tsx +2 -2
  724. package/src/tabs/Tab.tsx +1 -1
  725. package/src/tabs/TabList.tsx +1 -1
  726. package/src/tabs/useTabs.ts +6 -5
  727. package/src/theme/LocalStorageColorSchemeProvider.tsx +2 -2
  728. package/src/theme/ThemeProvider.tsx +1 -1
  729. package/src/theme/useColorSchemeProvider.ts +1 -0
  730. package/src/tooltip/Tooltip.tsx +1 -1
  731. package/src/tooltip/TooltipHoverModeProvider.tsx +1 -1
  732. package/src/tooltip/useTooltip.ts +1 -1
  733. package/src/transition/CSSTransition.tsx +1 -1
  734. package/src/transition/Collapse.tsx +1 -1
  735. package/src/transition/CrossFade.tsx +1 -1
  736. package/src/transition/ScaleTransition.tsx +1 -1
  737. package/src/transition/SkeletonPlaceholder.tsx +1 -1
  738. package/src/transition/Slide.tsx +1 -1
  739. package/src/transition/SlideContainer.tsx +1 -1
  740. package/src/transition/useCSSTransition.ts +2 -2
  741. package/src/transition/useCarousel.ts +1 -1
  742. package/src/transition/useCollapseTransition.ts +2 -2
  743. package/src/transition/useCrossFadeTransition.ts +2 -2
  744. package/src/transition/useScaleTransition.ts +2 -2
  745. package/src/transition/useSkeletonPlaceholder.ts +2 -2
  746. package/src/transition/useSlideTransition.ts +1 -1
  747. package/src/transition/useTransition.ts +1 -1
  748. package/src/tree/DefaultTreeItemRenderer.tsx +1 -1
  749. package/src/tree/Tree.tsx +1 -1
  750. package/src/tree/TreeItem.tsx +1 -1
  751. package/src/tree/useTree.ts +1 -1
  752. package/src/tree/useTreeExpansion.ts +1 -1
  753. package/src/tree/useTreeItems.ts +1 -1
  754. package/src/tree/useTreeSelection.ts +1 -1
  755. package/src/typography/HighlightText.tsx +1 -1
  756. package/src/typography/Mark.tsx +1 -1
  757. package/src/typography/SrOnly.tsx +1 -1
  758. package/src/typography/TextContainer.tsx +1 -1
  759. package/src/typography/Typography.tsx +1 -1
  760. package/src/typography/WritingDirectionProvider.tsx +1 -1
  761. package/src/useEnsuredState.ts +6 -3
  762. package/src/utils/RenderRecursively.tsx +1 -1
  763. package/src/window-splitter/WindowSplitter.tsx +1 -1
@@ -43,7 +43,7 @@ import { useElementSize } from "../useElementSize.js";
43
43
  * };
44
44
  * ```
45
45
  *
46
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
46
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
47
47
  * @since 6.0.0
48
48
  */ export function useLayoutAppBarHeight(ref) {
49
49
  const { height, elementRef, observedOnce } = useElementSize({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/layout/useLayoutAppBarHeight.ts"],"sourcesContent":["\"use client\";\n\nimport { type Ref, type RefCallback, useMemo } from \"react\";\n\nimport { type CSSVariable } from \"../theme/types.js\";\nimport { useElementSize } from \"../useElementSize.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-layout-size\"?: string;\n \"--rmd-layout-header-height\"?: string;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutAppBarHeightResult {\n height: number | undefined;\n variables: readonly CSSVariable[];\n appBarRef: RefCallback<HTMLDivElement>;\n}\n\n/**\n * @example Main Usage\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { useLayoutAppBarHeight } from \"@react-md/core/layout/useLayoutAppBarHeight\";\n * import { useCSSVariables } from \"@react-md/core/theme/useCSSVariables\";\n * import type { PropsWithChildren, ReactElement } from \"react\";\n *\n * export function LayoutHeader({ children }: PropsWithChildren): ReactElement {\n * const { appBarRef, variables } = useLayoutAppBarHeight();\n * useCSSVariables(variables);\n *\n * return (\n * <AppBar ref={appBarRef} {...customProps}>\n * <CustomChildren />\n * </AppBar>\n * );\n * };\n * ```\n *\n * @example Inline Variables\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { useLayoutAppBarHeight } from \"@react-md/core/layout/useLayoutAppBarHeight\";\n * import { useInlineCSSVariables } from \"@react-md/core/theme/useInlineCSSVariables\";\n * import type { PropsWithChildren, ReactElement } from \"react\";\n *\n * export function Layout({ children }: PropsWithChildren): ReactElement {\n * const { appBarRef, variables } = useLayoutAppBarHeight();\n * const inlineStyle = useCSSVariables(variables);\n *\n * return (\n * <div style={inlineStyle}>\n * <AppBar ref={appBarRef} {...customProps}>\n * <CustomChildren />\n * </AppBar>\n * {children}\n * </div>\n * );\n * };\n * ```\n *\n * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useLayoutAppBarHeight(\n ref?: Ref<HTMLDivElement>\n): LayoutAppBarHeightResult {\n const { height, elementRef, observedOnce } = useElementSize({\n ref,\n disableWidth: true,\n });\n const variables = useMemo<CSSVariable[]>(() => {\n if (Number.isNaN(height) || !observedOnce) {\n return [];\n }\n\n return [{ name: \"--rmd-layout-header-height\", value: `${height}px` }];\n }, [height, observedOnce]);\n\n return {\n height,\n variables,\n appBarRef: elementRef,\n };\n}\n"],"names":["useMemo","useElementSize","useLayoutAppBarHeight","ref","height","elementRef","observedOnce","disableWidth","variables","Number","isNaN","name","value","appBarRef"],"mappings":"AAAA;AAEA,SAAqCA,OAAO,QAAQ,QAAQ;AAG5D,SAASC,cAAc,QAAQ,uBAAuB;AAkBtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CC,GACD,OAAO,SAASC,sBACdC,GAAyB;IAEzB,MAAM,EAAEC,MAAM,EAAEC,UAAU,EAAEC,YAAY,EAAE,GAAGL,eAAe;QAC1DE;QACAI,cAAc;IAChB;IACA,MAAMC,YAAYR,QAAuB;QACvC,IAAIS,OAAOC,KAAK,CAACN,WAAW,CAACE,cAAc;YACzC,OAAO,EAAE;QACX;QAEA,OAAO;YAAC;gBAAEK,MAAM;gBAA8BC,OAAO,GAAGR,OAAO,EAAE,CAAC;YAAC;SAAE;IACvE,GAAG;QAACA;QAAQE;KAAa;IAEzB,OAAO;QACLF;QACAI;QACAK,WAAWR;IACb;AACF"}
1
+ {"version":3,"sources":["../../src/layout/useLayoutAppBarHeight.ts"],"sourcesContent":["\"use client\";\n\nimport { type Ref, type RefCallback, useMemo } from \"react\";\n\nimport { type CSSVariable } from \"../theme/types.js\";\nimport { useElementSize } from \"../useElementSize.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-layout-size\"?: string;\n \"--rmd-layout-header-height\"?: string;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutAppBarHeightResult {\n height: number | undefined;\n variables: readonly CSSVariable[];\n appBarRef: RefCallback<HTMLDivElement>;\n}\n\n/**\n * @example Main Usage\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { useLayoutAppBarHeight } from \"@react-md/core/layout/useLayoutAppBarHeight\";\n * import { useCSSVariables } from \"@react-md/core/theme/useCSSVariables\";\n * import type { PropsWithChildren, ReactElement } from \"react\";\n *\n * export function LayoutHeader({ children }: PropsWithChildren): ReactElement {\n * const { appBarRef, variables } = useLayoutAppBarHeight();\n * useCSSVariables(variables);\n *\n * return (\n * <AppBar ref={appBarRef} {...customProps}>\n * <CustomChildren />\n * </AppBar>\n * );\n * };\n * ```\n *\n * @example Inline Variables\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { useLayoutAppBarHeight } from \"@react-md/core/layout/useLayoutAppBarHeight\";\n * import { useInlineCSSVariables } from \"@react-md/core/theme/useInlineCSSVariables\";\n * import type { PropsWithChildren, ReactElement } from \"react\";\n *\n * export function Layout({ children }: PropsWithChildren): ReactElement {\n * const { appBarRef, variables } = useLayoutAppBarHeight();\n * const inlineStyle = useCSSVariables(variables);\n *\n * return (\n * <div style={inlineStyle}>\n * <AppBar ref={appBarRef} {...customProps}>\n * <CustomChildren />\n * </AppBar>\n * {children}\n * </div>\n * );\n * };\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useLayoutAppBarHeight(\n ref?: Ref<HTMLDivElement>\n): LayoutAppBarHeightResult {\n const { height, elementRef, observedOnce } = useElementSize({\n ref,\n disableWidth: true,\n });\n const variables = useMemo<CSSVariable[]>(() => {\n if (Number.isNaN(height) || !observedOnce) {\n return [];\n }\n\n return [{ name: \"--rmd-layout-header-height\", value: `${height}px` }];\n }, [height, observedOnce]);\n\n return {\n height,\n variables,\n appBarRef: elementRef,\n };\n}\n"],"names":["useMemo","useElementSize","useLayoutAppBarHeight","ref","height","elementRef","observedOnce","disableWidth","variables","Number","isNaN","name","value","appBarRef"],"mappings":"AAAA;AAEA,SAAqCA,OAAO,QAAQ,QAAQ;AAG5D,SAASC,cAAc,QAAQ,uBAAuB;AAkBtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CC,GACD,OAAO,SAASC,sBACdC,GAAyB;IAEzB,MAAM,EAAEC,MAAM,EAAEC,UAAU,EAAEC,YAAY,EAAE,GAAGL,eAAe;QAC1DE;QACAI,cAAc;IAChB;IACA,MAAMC,YAAYR,QAAuB;QACvC,IAAIS,OAAOC,KAAK,CAACN,WAAW,CAACE,cAAc;YACzC,OAAO,EAAE;QACX;QAEA,OAAO;YAAC;gBAAEK,MAAM;gBAA8BC,OAAO,GAAGR,OAAO,EAAE,CAAC;YAAC;SAAE;IACvE,GAAG;QAACA;QAAQE;KAAa;IAEzB,OAAO;QACLF;QACAI;QACAK,WAAWR;IACb;AACF"}
@@ -135,9 +135,9 @@ export interface LayoutTreeImplementation<T extends TreeItemNode = DefaultTreeIt
135
135
  * }
136
136
  * ```
137
137
  *
138
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
139
- * @see {@link https://next.react-md.dev/components/tree | Tree Demos}
140
- * @see {@link https://next.react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}
138
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
139
+ * @see {@link https://react-md.dev/components/tree | Tree Demos}
140
+ * @see {@link https://react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}
141
141
  * @since 6.0.0 Renamed from `useLayoutNavigation`.
142
142
  */
143
143
  export declare function useLayoutTree(options: LayoutTreeOptions): LayoutTreeImplementation;
@@ -86,9 +86,9 @@ const noop = ()=>{
86
86
  * }
87
87
  * ```
88
88
  *
89
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
90
- * @see {@link https://next.react-md.dev/components/tree | Tree Demos}
91
- * @see {@link https://next.react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}
89
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
90
+ * @see {@link https://react-md.dev/components/tree | Tree Demos}
91
+ * @see {@link https://react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}
92
92
  * @since 6.0.0 Renamed from `useLayoutNavigation`.
93
93
  */ export function useLayoutTree(options) {
94
94
  const { defaultExpandedIds, navItems, pathname } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/layout/useLayoutTree.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo } from \"react\";\n\nimport { type TreeProps } from \"../tree/Tree.js\";\nimport {\n type DefaultTreeItemNode,\n type TreeData,\n type TreeDefaultIds,\n type TreeItemNode,\n} from \"../tree/types.js\";\nimport { type TreeImplementation } from \"../tree/useTree.js\";\nimport { useTreeExpansion } from \"../tree/useTreeExpansion.js\";\nimport { getTreeItemsFrom } from \"../tree/utils.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @internal\n */\nconst getParentIds = (\n itemId: string,\n navItems: TreeData<TreeItemNode>\n): readonly string[] =>\n getTreeItemsFrom(navItems, itemId).map(({ itemId }) => itemId);\n\n/**\n * @since 6.0.0 Removed the `linkComponent` option.\n */\nexport interface LayoutTreeOptions<\n T extends TreeItemNode = DefaultTreeItemNode,\n> {\n /**\n * The current pathname which is used as the tree `itemId`.\n */\n pathname: string;\n\n /**\n * @example\n * ```tsx\n * const navItems = {\n * \"/\": {\n * itemId: \"/\",\n * parentId: null,\n * children: \"Home\",\n * leftAddon: <HomeIcon />,\n * to: \"/\",\n * },\n * \"/route-1\": {\n * itemId: \"/route-1\",\n * parentId: null,\n * children: \"Route 1\",\n * leftAddon: <TvIcon />,\n * to: \"/route-1\",\n * },\n * \"/route-2\": {\n * itemId: \"/route-2\",\n * parentId: null,\n * children: \"Route 2\",\n * leftAddon: <AppsIcon />,\n * to: \"/route-2\",\n * },\n * \"/route-3\": {\n * itemId: \"/route-3\",\n * parentId: null,\n * children: \"Route 3\",\n * leftAddon: <BookIcon />,\n * to: \"/route-3\",\n * },\n * } satisfies TreeData;\n * ```\n */\n navItems: TreeData<T>;\n\n /**\n * @defaultValue `getParentIds(pathname, navItems)`\n */\n defaultExpandedIds?: TreeDefaultIds;\n}\n\n/**\n * @since 6.0.0 Renamed from `LayoutNavigationState`, removed the\n * `linkComponent`, and remap `navItems` to `data` so it can be passed to the\n * `Tree` component.\n */\nexport interface LayoutTreeImplementation<\n T extends TreeItemNode = DefaultTreeItemNode,\n> extends Pick<TreeProps<T>, \"data\">,\n TreeImplementation {}\n\n/**\n * Before considering to use a `Tree` for site navigation, it is important to\n * understand:\n * - There is a lot of functionality required to implement the tree widget so\n * your bundle size will increase\n * - A pattern more suited for typical site navigation with expandable groups of\n * links is the disclosure pattern.\n * - @see https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n *\n * @see https://www.w3.org/WAI/ARIA/apg/patterns/treeview/examples/treeview-navigation/\n *\n * This is a pretty reasonable default implementation for having a navigation\n * tree within the Layout component. The way it'll work is that the current\n * route will be the only selected item within the tree. When the pathname\n * changes, the selectedIds will be updated to only be the current pathname once\n * again.\n *\n * This means that you can use whatever routing library or history provider that\n * ensures that your layout re-renders on a path change.\n *\n * @example\n * ```tsx\n * import { useLayoutTree } from \"@react-md/core/layout/useLayoutTree\"\n * import { Tree } from \"@react-md/core/tree/Tree\";\n * import { type TreeData } from \"@react-md/core/tree/types\";\n * import { type ReactElement } from \"react\";\n *\n * // choose your routing library...\n * import { Link, useLocation } from \"react-router\";\n *\n * const navItems = {\n * \"/\": {\n * itemId: \"/\",\n * parentId: null,\n * children: \"Home\",\n * leftAddon: <HomeIcon />,\n * to: \"/\",\n * },\n * \"/route-1\": {\n * itemId: \"/route-1\",\n * parentId: null,\n * children: \"Route 1\",\n * leftAddon: <TvIcon />,\n * to: \"/route-1\",\n * },\n * \"/route-2\": {\n * itemId: \"/route-2\",\n * parentId: null,\n * children: \"Route 2\",\n * leftAddon: <AppsIcon />,\n * to: \"/route-2\",\n * },\n * \"/route-3\": {\n * itemId: \"/route-3\",\n * parentId: null,\n * children: \"Route 3\",\n * leftAddon: <BookIcon />,\n * to: \"/route-3\",\n * },\n * } satisfies TreeData;\n *\n * function Example(): ReactElement {\n * const { pathname } = useLocation();\n * const tree = useLayoutTree({\n * navItems,\n * pathname,\n * });\n *\n * return (\n * <Tree\n * {...tree}\n * aria-label=\"Navigation\"\n * linkComponent={Link}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}\n * @see {@link https://next.react-md.dev/components/tree | Tree Demos}\n * @see {@link https://next.react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}\n * @since 6.0.0 Renamed from `useLayoutNavigation`.\n */\nexport function useLayoutTree(\n options: LayoutTreeOptions\n): LayoutTreeImplementation {\n const { defaultExpandedIds, navItems, pathname } = options;\n\n const selectedIds = useMemo(() => new Set([pathname]), [pathname]);\n const { expandedIds, expandMultipleTreeItems, toggleTreeItemExpansion } =\n useTreeExpansion(\n defaultExpandedIds ?? (() => getParentIds(pathname, navItems))\n );\n\n useEffect(() => {\n expandMultipleTreeItems((prevExpandedIds) => {\n const nextExpandedIds = new Set([\n ...prevExpandedIds,\n ...getParentIds(pathname, navItems),\n ]);\n\n return nextExpandedIds;\n });\n }, [expandMultipleTreeItems, pathname, navItems]);\n\n return {\n data: navItems,\n multiSelect: false,\n selectedIds,\n expandedIds,\n expandMultipleTreeItems,\n toggleTreeItemExpansion,\n toggleTreeItemSelection: noop,\n selectMultipleTreeItems: noop,\n };\n}\n"],"names":["useEffect","useMemo","useTreeExpansion","getTreeItemsFrom","noop","getParentIds","itemId","navItems","map","useLayoutTree","options","defaultExpandedIds","pathname","selectedIds","Set","expandedIds","expandMultipleTreeItems","toggleTreeItemExpansion","prevExpandedIds","nextExpandedIds","data","multiSelect","toggleTreeItemSelection","selectMultipleTreeItems"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,OAAO,QAAQ,QAAQ;AAU3C,SAASC,gBAAgB,QAAQ,8BAA8B;AAC/D,SAASC,gBAAgB,QAAQ,mBAAmB;AAEpD,MAAMC,OAAO;AACX,aAAa;AACf;AAEA;;CAEC,GACD,MAAMC,eAAe,CACnBC,QACAC,WAEAJ,iBAAiBI,UAAUD,QAAQE,GAAG,CAAC,CAAC,EAAEF,MAAM,EAAE,GAAKA;AAkEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFC,GACD,OAAO,SAASG,cACdC,OAA0B;IAE1B,MAAM,EAAEC,kBAAkB,EAAEJ,QAAQ,EAAEK,QAAQ,EAAE,GAAGF;IAEnD,MAAMG,cAAcZ,QAAQ,IAAM,IAAIa,IAAI;YAACF;SAAS,GAAG;QAACA;KAAS;IACjE,MAAM,EAAEG,WAAW,EAAEC,uBAAuB,EAAEC,uBAAuB,EAAE,GACrEf,iBACES,sBAAuB,CAAA,IAAMN,aAAaO,UAAUL,SAAQ;IAGhEP,UAAU;QACRgB,wBAAwB,CAACE;YACvB,MAAMC,kBAAkB,IAAIL,IAAI;mBAC3BI;mBACAb,aAAaO,UAAUL;aAC3B;YAED,OAAOY;QACT;IACF,GAAG;QAACH;QAAyBJ;QAAUL;KAAS;IAEhD,OAAO;QACLa,MAAMb;QACNc,aAAa;QACbR;QACAE;QACAC;QACAC;QACAK,yBAAyBlB;QACzBmB,yBAAyBnB;IAC3B;AACF"}
1
+ {"version":3,"sources":["../../src/layout/useLayoutTree.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo } from \"react\";\n\nimport { type TreeProps } from \"../tree/Tree.js\";\nimport {\n type DefaultTreeItemNode,\n type TreeData,\n type TreeDefaultIds,\n type TreeItemNode,\n} from \"../tree/types.js\";\nimport { type TreeImplementation } from \"../tree/useTree.js\";\nimport { useTreeExpansion } from \"../tree/useTreeExpansion.js\";\nimport { getTreeItemsFrom } from \"../tree/utils.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\n/**\n * @internal\n */\nconst getParentIds = (\n itemId: string,\n navItems: TreeData<TreeItemNode>\n): readonly string[] =>\n getTreeItemsFrom(navItems, itemId).map(({ itemId }) => itemId);\n\n/**\n * @since 6.0.0 Removed the `linkComponent` option.\n */\nexport interface LayoutTreeOptions<\n T extends TreeItemNode = DefaultTreeItemNode,\n> {\n /**\n * The current pathname which is used as the tree `itemId`.\n */\n pathname: string;\n\n /**\n * @example\n * ```tsx\n * const navItems = {\n * \"/\": {\n * itemId: \"/\",\n * parentId: null,\n * children: \"Home\",\n * leftAddon: <HomeIcon />,\n * to: \"/\",\n * },\n * \"/route-1\": {\n * itemId: \"/route-1\",\n * parentId: null,\n * children: \"Route 1\",\n * leftAddon: <TvIcon />,\n * to: \"/route-1\",\n * },\n * \"/route-2\": {\n * itemId: \"/route-2\",\n * parentId: null,\n * children: \"Route 2\",\n * leftAddon: <AppsIcon />,\n * to: \"/route-2\",\n * },\n * \"/route-3\": {\n * itemId: \"/route-3\",\n * parentId: null,\n * children: \"Route 3\",\n * leftAddon: <BookIcon />,\n * to: \"/route-3\",\n * },\n * } satisfies TreeData;\n * ```\n */\n navItems: TreeData<T>;\n\n /**\n * @defaultValue `getParentIds(pathname, navItems)`\n */\n defaultExpandedIds?: TreeDefaultIds;\n}\n\n/**\n * @since 6.0.0 Renamed from `LayoutNavigationState`, removed the\n * `linkComponent`, and remap `navItems` to `data` so it can be passed to the\n * `Tree` component.\n */\nexport interface LayoutTreeImplementation<\n T extends TreeItemNode = DefaultTreeItemNode,\n> extends Pick<TreeProps<T>, \"data\">,\n TreeImplementation {}\n\n/**\n * Before considering to use a `Tree` for site navigation, it is important to\n * understand:\n * - There is a lot of functionality required to implement the tree widget so\n * your bundle size will increase\n * - A pattern more suited for typical site navigation with expandable groups of\n * links is the disclosure pattern.\n * - @see https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/\n *\n * @see https://www.w3.org/WAI/ARIA/apg/patterns/treeview/examples/treeview-navigation/\n *\n * This is a pretty reasonable default implementation for having a navigation\n * tree within the Layout component. The way it'll work is that the current\n * route will be the only selected item within the tree. When the pathname\n * changes, the selectedIds will be updated to only be the current pathname once\n * again.\n *\n * This means that you can use whatever routing library or history provider that\n * ensures that your layout re-renders on a path change.\n *\n * @example\n * ```tsx\n * import { useLayoutTree } from \"@react-md/core/layout/useLayoutTree\"\n * import { Tree } from \"@react-md/core/tree/Tree\";\n * import { type TreeData } from \"@react-md/core/tree/types\";\n * import { type ReactElement } from \"react\";\n *\n * // choose your routing library...\n * import { Link, useLocation } from \"react-router\";\n *\n * const navItems = {\n * \"/\": {\n * itemId: \"/\",\n * parentId: null,\n * children: \"Home\",\n * leftAddon: <HomeIcon />,\n * to: \"/\",\n * },\n * \"/route-1\": {\n * itemId: \"/route-1\",\n * parentId: null,\n * children: \"Route 1\",\n * leftAddon: <TvIcon />,\n * to: \"/route-1\",\n * },\n * \"/route-2\": {\n * itemId: \"/route-2\",\n * parentId: null,\n * children: \"Route 2\",\n * leftAddon: <AppsIcon />,\n * to: \"/route-2\",\n * },\n * \"/route-3\": {\n * itemId: \"/route-3\",\n * parentId: null,\n * children: \"Route 3\",\n * leftAddon: <BookIcon />,\n * to: \"/route-3\",\n * },\n * } satisfies TreeData;\n *\n * function Example(): ReactElement {\n * const { pathname } = useLocation();\n * const tree = useLayoutTree({\n * navItems,\n * pathname,\n * });\n *\n * return (\n * <Tree\n * {...tree}\n * aria-label=\"Navigation\"\n * linkComponent={Link}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @see {@link https://react-md.dev/components/tree | Tree Demos}\n * @see {@link https://react-md.dev/hooks/use-layout-tree | useLayoutTree Demos}\n * @since 6.0.0 Renamed from `useLayoutNavigation`.\n */\nexport function useLayoutTree(\n options: LayoutTreeOptions\n): LayoutTreeImplementation {\n const { defaultExpandedIds, navItems, pathname } = options;\n\n const selectedIds = useMemo(() => new Set([pathname]), [pathname]);\n const { expandedIds, expandMultipleTreeItems, toggleTreeItemExpansion } =\n useTreeExpansion(\n defaultExpandedIds ?? (() => getParentIds(pathname, navItems))\n );\n\n useEffect(() => {\n expandMultipleTreeItems((prevExpandedIds) => {\n const nextExpandedIds = new Set([\n ...prevExpandedIds,\n ...getParentIds(pathname, navItems),\n ]);\n\n return nextExpandedIds;\n });\n }, [expandMultipleTreeItems, pathname, navItems]);\n\n return {\n data: navItems,\n multiSelect: false,\n selectedIds,\n expandedIds,\n expandMultipleTreeItems,\n toggleTreeItemExpansion,\n toggleTreeItemSelection: noop,\n selectMultipleTreeItems: noop,\n };\n}\n"],"names":["useEffect","useMemo","useTreeExpansion","getTreeItemsFrom","noop","getParentIds","itemId","navItems","map","useLayoutTree","options","defaultExpandedIds","pathname","selectedIds","Set","expandedIds","expandMultipleTreeItems","toggleTreeItemExpansion","prevExpandedIds","nextExpandedIds","data","multiSelect","toggleTreeItemSelection","selectMultipleTreeItems"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,OAAO,QAAQ,QAAQ;AAU3C,SAASC,gBAAgB,QAAQ,8BAA8B;AAC/D,SAASC,gBAAgB,QAAQ,mBAAmB;AAEpD,MAAMC,OAAO;AACX,aAAa;AACf;AAEA;;CAEC,GACD,MAAMC,eAAe,CACnBC,QACAC,WAEAJ,iBAAiBI,UAAUD,QAAQE,GAAG,CAAC,CAAC,EAAEF,MAAM,EAAE,GAAKA;AAkEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFC,GACD,OAAO,SAASG,cACdC,OAA0B;IAE1B,MAAM,EAAEC,kBAAkB,EAAEJ,QAAQ,EAAEK,QAAQ,EAAE,GAAGF;IAEnD,MAAMG,cAAcZ,QAAQ,IAAM,IAAIa,IAAI;YAACF;SAAS,GAAG;QAACA;KAAS;IACjE,MAAM,EAAEG,WAAW,EAAEC,uBAAuB,EAAEC,uBAAuB,EAAE,GACrEf,iBACES,sBAAuB,CAAA,IAAMN,aAAaO,UAAUL,SAAQ;IAGhEP,UAAU;QACRgB,wBAAwB,CAACE;YACvB,MAAMC,kBAAkB,IAAIL,IAAI;mBAC3BI;mBACAb,aAAaO,UAAUL;aAC3B;YAED,OAAOY;QACT;IACF,GAAG;QAACH;QAAyBJ;QAAUL;KAAS;IAEhD,OAAO;QACLa,MAAMb;QACNc,aAAa;QACbR;QACAE;QACAC;QACAC;QACAK,yBAAyBlB;QACzBmB,yBAAyBnB;IAC3B;AACF"}
@@ -86,7 +86,7 @@ export interface LayoutWindowSplitterImplementation extends WindowSplitterImplem
86
86
  * }
87
87
  * ```
88
88
  *
89
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
89
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
90
90
  * @see {@link useResizableLayout} For a pre-built solution.
91
91
  * @since 6.0.0
92
92
  */
@@ -41,7 +41,7 @@ import { useWindowSplitter } from "../window-splitter/useWindowSplitter.js";
41
41
  * }
42
42
  * ```
43
43
  *
44
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
44
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
45
45
  * @see {@link useResizableLayout} For a pre-built solution.
46
46
  * @since 6.0.0
47
47
  */ export function useLayoutWindowSplitter(options = {}) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/layout/useLayoutWindowSplitter.ts"],"sourcesContent":["\"use client\";\n\nimport { type UncontrolledDraggableOptions } from \"../draggable/useDraggable.js\";\nimport { type UseStateInitializer } from \"../types.js\";\nimport { useWindowSize } from \"../useWindowSize.js\";\nimport {\n type WindowSplitterImplementation,\n type WindowSplitterOptions,\n type WindowSplitterWidgetProps,\n useWindowSplitter,\n} from \"../window-splitter/useWindowSplitter.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutWindowSplitterOptions\n extends Omit<WindowSplitterOptions, \"min\" | \"max\"> {\n /**\n * @see {@link WindowSplitterOptions.min}\n * @defaultValue `96`\n */\n min?: number;\n\n /**\n * This is the minimum max value that can be allowed while resizing the\n * browser. I don't know the best way to describe it, but the `max` value is\n * determined by:\n *\n * ```ts\n * const { width } = useWindowSize({ disableHeight: true });\n * const max = Math.max(maxMinimum, width * windowPercentage);\n * ```\n *\n * @defaultValue `600`\n */\n maxMinimum?: number;\n\n /**\n * This will be multiplied by the current window's width to determine the\n * dynamic max value for the window splitter.\n *\n * @see {@link maxMinimum}\n * @defaultValue `0.45`\n */\n windowPercentage?: number;\n\n /** @defaultValue `256` */\n defaultValue?: UseStateInitializer<number>;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ProvidedLayoutWindowSplitterProps\n extends WindowSplitterWidgetProps<HTMLButtonElement> {\n /** @defaultValue {@link WindowSplitterImplementation.value} */\n navWidth: number;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutWindowSplitterImplementation\n extends WindowSplitterImplementation {\n splitterProps: ProvidedLayoutWindowSplitterProps;\n}\n\n/**\n * A custom window splitter implementation to be used with the\n * `LayoutWindowSplitter` that will dynamically configure the max width to be a\n * percentage of the current window's width.\n *\n * Note: This will automatically save the width in local storage as\n * `\"navWidth\"`. See the example below if you do not want to use local storage.\n *\n * @example Without this hook\n * ```tsx\n * import { type ProvidedLayoutWindowSplitterProps } from \"@react-md/core/layout/useLayoutWindowSplitter\";\n * import { useWindowSplitter } from \"@react-md/core/window-splitter/useWindowSplitter\";\n * import { useWindowSize } from \"@react-md/core/useWindowSize.js\";\n *\n * export function useMyLayoutWindowSplitter(): ProvidedLayoutWindowSplitterProps {\n * const { width } = useWindowSize({ disableHeight: true });\n * const { splitterProps, value } = useWindowSplitter({\n * min: 96,\n * max: Math.max(maxMinimum, width * 0.45),\n * maxMinimum: 600,\n * });\n *\n * return {\n * ...splitterProps,\n * navWidth: value,\n * };\n * }\n *\n * function MyLayout() {\n * const splitterProps = useMyLayoutWindowSplitter();\n *\n * return (\n * <LayoutWindowSplitter\n * {...splitterProps}\n * aria-controls=\"layout-nav-id\"\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}\n * @see {@link useResizableLayout} For a pre-built solution.\n * @since 6.0.0\n */\nexport function useLayoutWindowSplitter(\n options: LayoutWindowSplitterOptions = {}\n): LayoutWindowSplitterImplementation {\n const {\n min = 96,\n maxMinimum = 600,\n windowPercentage = 0.45,\n defaultValue = 256,\n ...remaining\n } = options;\n const { width } = useWindowSize({ disableHeight: true });\n const implementation = useWindowSplitter({\n min,\n max: Math.max(maxMinimum, width * windowPercentage),\n defaultValue,\n // type cast so it doesn't complain about defaultValue being provided with\n // value. That's mostly for public api usage\n ...(remaining as UncontrolledDraggableOptions),\n });\n\n return {\n ...implementation,\n splitterProps: {\n ...implementation.splitterProps,\n navWidth: implementation.value,\n },\n };\n}\n"],"names":["useWindowSize","useWindowSplitter","useLayoutWindowSplitter","options","min","maxMinimum","windowPercentage","defaultValue","remaining","width","disableHeight","implementation","max","Math","splitterProps","navWidth","value"],"mappings":"AAAA;AAIA,SAASA,aAAa,QAAQ,sBAAsB;AACpD,SAIEC,iBAAiB,QACZ,0CAA0C;AAyDjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CC,GACD,OAAO,SAASC,wBACdC,UAAuC,CAAC,CAAC;IAEzC,MAAM,EACJC,MAAM,EAAE,EACRC,aAAa,GAAG,EAChBC,mBAAmB,IAAI,EACvBC,eAAe,GAAG,EAClB,GAAGC,WACJ,GAAGL;IACJ,MAAM,EAAEM,KAAK,EAAE,GAAGT,cAAc;QAAEU,eAAe;IAAK;IACtD,MAAMC,iBAAiBV,kBAAkB;QACvCG;QACAQ,KAAKC,KAAKD,GAAG,CAACP,YAAYI,QAAQH;QAClCC;QACA,0EAA0E;QAC1E,4CAA4C;QAC5C,GAAIC,SAAS;IACf;IAEA,OAAO;QACL,GAAGG,cAAc;QACjBG,eAAe;YACb,GAAGH,eAAeG,aAAa;YAC/BC,UAAUJ,eAAeK,KAAK;QAChC;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/layout/useLayoutWindowSplitter.ts"],"sourcesContent":["\"use client\";\n\nimport { type UncontrolledDraggableOptions } from \"../draggable/useDraggable.js\";\nimport { type UseStateInitializer } from \"../types.js\";\nimport { useWindowSize } from \"../useWindowSize.js\";\nimport {\n type WindowSplitterImplementation,\n type WindowSplitterOptions,\n type WindowSplitterWidgetProps,\n useWindowSplitter,\n} from \"../window-splitter/useWindowSplitter.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutWindowSplitterOptions\n extends Omit<WindowSplitterOptions, \"min\" | \"max\"> {\n /**\n * @see {@link WindowSplitterOptions.min}\n * @defaultValue `96`\n */\n min?: number;\n\n /**\n * This is the minimum max value that can be allowed while resizing the\n * browser. I don't know the best way to describe it, but the `max` value is\n * determined by:\n *\n * ```ts\n * const { width } = useWindowSize({ disableHeight: true });\n * const max = Math.max(maxMinimum, width * windowPercentage);\n * ```\n *\n * @defaultValue `600`\n */\n maxMinimum?: number;\n\n /**\n * This will be multiplied by the current window's width to determine the\n * dynamic max value for the window splitter.\n *\n * @see {@link maxMinimum}\n * @defaultValue `0.45`\n */\n windowPercentage?: number;\n\n /** @defaultValue `256` */\n defaultValue?: UseStateInitializer<number>;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ProvidedLayoutWindowSplitterProps\n extends WindowSplitterWidgetProps<HTMLButtonElement> {\n /** @defaultValue {@link WindowSplitterImplementation.value} */\n navWidth: number;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface LayoutWindowSplitterImplementation\n extends WindowSplitterImplementation {\n splitterProps: ProvidedLayoutWindowSplitterProps;\n}\n\n/**\n * A custom window splitter implementation to be used with the\n * `LayoutWindowSplitter` that will dynamically configure the max width to be a\n * percentage of the current window's width.\n *\n * Note: This will automatically save the width in local storage as\n * `\"navWidth\"`. See the example below if you do not want to use local storage.\n *\n * @example Without this hook\n * ```tsx\n * import { type ProvidedLayoutWindowSplitterProps } from \"@react-md/core/layout/useLayoutWindowSplitter\";\n * import { useWindowSplitter } from \"@react-md/core/window-splitter/useWindowSplitter\";\n * import { useWindowSize } from \"@react-md/core/useWindowSize.js\";\n *\n * export function useMyLayoutWindowSplitter(): ProvidedLayoutWindowSplitterProps {\n * const { width } = useWindowSize({ disableHeight: true });\n * const { splitterProps, value } = useWindowSplitter({\n * min: 96,\n * max: Math.max(maxMinimum, width * 0.45),\n * maxMinimum: 600,\n * });\n *\n * return {\n * ...splitterProps,\n * navWidth: value,\n * };\n * }\n *\n * function MyLayout() {\n * const splitterProps = useMyLayoutWindowSplitter();\n *\n * return (\n * <LayoutWindowSplitter\n * {...splitterProps}\n * aria-controls=\"layout-nav-id\"\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @see {@link useResizableLayout} For a pre-built solution.\n * @since 6.0.0\n */\nexport function useLayoutWindowSplitter(\n options: LayoutWindowSplitterOptions = {}\n): LayoutWindowSplitterImplementation {\n const {\n min = 96,\n maxMinimum = 600,\n windowPercentage = 0.45,\n defaultValue = 256,\n ...remaining\n } = options;\n const { width } = useWindowSize({ disableHeight: true });\n const implementation = useWindowSplitter({\n min,\n max: Math.max(maxMinimum, width * windowPercentage),\n defaultValue,\n // type cast so it doesn't complain about defaultValue being provided with\n // value. That's mostly for public api usage\n ...(remaining as UncontrolledDraggableOptions),\n });\n\n return {\n ...implementation,\n splitterProps: {\n ...implementation.splitterProps,\n navWidth: implementation.value,\n },\n };\n}\n"],"names":["useWindowSize","useWindowSplitter","useLayoutWindowSplitter","options","min","maxMinimum","windowPercentage","defaultValue","remaining","width","disableHeight","implementation","max","Math","splitterProps","navWidth","value"],"mappings":"AAAA;AAIA,SAASA,aAAa,QAAQ,sBAAsB;AACpD,SAIEC,iBAAiB,QACZ,0CAA0C;AAyDjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CC,GACD,OAAO,SAASC,wBACdC,UAAuC,CAAC,CAAC;IAEzC,MAAM,EACJC,MAAM,EAAE,EACRC,aAAa,GAAG,EAChBC,mBAAmB,IAAI,EACvBC,eAAe,GAAG,EAClB,GAAGC,WACJ,GAAGL;IACJ,MAAM,EAAEM,KAAK,EAAE,GAAGT,cAAc;QAAEU,eAAe;IAAK;IACtD,MAAMC,iBAAiBV,kBAAkB;QACvCG;QACAQ,KAAKC,KAAKD,GAAG,CAACP,YAAYI,QAAQH;QAClCC;QACA,0EAA0E;QAC1E,4CAA4C;QAC5C,GAAIC,SAAS;IACf;IAEA,OAAO;QACL,GAAGG,cAAc;QACjBG,eAAe;YACb,GAAGH,eAAeG,aAAa;YAC/BC,UAAUJ,eAAeK,KAAK;QAChC;IACF;AACF"}
@@ -132,7 +132,7 @@ export interface ResizableLayoutImplementation extends ExpandableLayoutImplement
132
132
  * )
133
133
  * ```
134
134
  *
135
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
135
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
136
136
  * @since 6.0.0
137
137
  */
138
138
  export declare function useResizableLayout(options: ResizableLayoutOptions): ResizableLayoutImplementation;
@@ -108,7 +108,7 @@ import { useLayoutWindowSplitter } from "./useLayoutWindowSplitter.js";
108
108
  * )
109
109
  * ```
110
110
  *
111
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
111
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
112
112
  * @since 6.0.0
113
113
  */ export function useResizableLayout(options) {
114
114
  const { navId: propNavId, pathname, appBarPosition = "fixed", fullHeightNav = false, temporaryUntil, defaultVisible, defaultExpanded, ...splitterOptions } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/layout/useResizableLayout.ts"],"sourcesContent":["import { useEnsuredId } from \"../useEnsuredId.js\";\nimport { DISPLAY_NONE_CLASS } from \"../utils/isElementVisible.js\";\nimport { type LayoutWindowSplitterProps } from \"./LayoutWindowSplitter.js\";\nimport {\n type ExpandableLayoutImplementation,\n type ExpandableLayoutOptions,\n type ProvidedLayoutNavProps,\n} from \"./useExpandableLayout.js\";\nimport { useExpandableLayout } from \"./useExpandableLayout.js\";\nimport {\n type LayoutWindowSplitterOptions,\n useLayoutWindowSplitter,\n} from \"./useLayoutWindowSplitter.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface ResizableLayoutOptions\n extends ExpandableLayoutOptions,\n LayoutWindowSplitterOptions {\n /**\n * This id will be used as the `aria-controls` prop for the\n * `LayoutWindowSplitter` and should be applied to the `LayoutNav` as an `id`.\n *\n * @defaultValue `\"layout-nav\" + useId()`\n */\n navId?: string;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ProvidedResizableLayoutNavProps\n extends ProvidedLayoutNavProps {\n id: string;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ResizableLayoutImplementation\n extends ExpandableLayoutImplementation {\n expandableNavProps: ProvidedResizableLayoutNavProps;\n windowSplitterProps: LayoutWindowSplitterProps;\n}\n\n/**\n * @example Main Usage\n * ```tsx\n * import { AppBarTitle } from \"@react-md/core/app-bar/AppBarTitle\";\n * import { Button } from \"@react-md/core/button/Button\";\n * import { LayoutAppBar } from \"@react-md/core/layout/LayoutAppBar\";\n * import { LayoutNav } from \"@react-md/core/layout/LayoutNav\";\n * import { LayoutWindowSplitter } from \"@react-md/core/layout/LayoutWindowSplitter\";\n * import { Main } from \"@react-md/core/layout/Main\";\n * import { useResizableLayout } from \"@react-md/core/layout/useResizableLayout\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { type ReactElement, type ReactNode } from \"react\";\n *\n * import { CustomNavigation } from \"./CustomNavigation\";\n *\n * export interface LayoutProps {\n * children: ReactNode;\n * }\n *\n * export function Layout(props: LayoutProps): ReactElement {\n * const { children } = props;\n *\n * // choose whichever one for your app\n * // nextjs app dir\n * const pathname = usePathname();\n * // nextjs pages\n * const { pathname } = useRouter();\n * // react router\n * const { pathname } = useHistory();\n *\n * const {\n * temporary,\n * appBarProps,\n * expandableNavProps,\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * windowSplitterProps,\n * } = useResizableLayout({ pathname });\n *\n * return (\n * <>\n * <LayoutAppBar {...appBarProps}>\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </LayoutAppBar>\n * <LayoutNav {...expandableNavProps}>\n * <CustomNavigation />\n * </LayoutNav>\n * <LayoutWindowSplitter {...windowSplitterProps} />\n * {temporary && (\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * )}\n * <Main {...mainProps}>{children}</Main>\n * </>\n * );\n * }\n * ```\n *\n * If you have a large navigation panel, you can conditionally render the\n * `LayoutNav` with the `persistent` boolean returned by the hook which will\n * ensure that the DOM has rehydrated before unmounting to prevent SSR errors.\n *\n * @example Conditionally Rendering\n * ```diff\n * const {\n * temporary,\n * + persistent,\n * appBarProps,\n * expandableNavProps,\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * windowSplitterProps,\n * } = useResizableLayout({ pathname });\n *\n * return (\n * <>\n * <LayoutAppBar {...appBarProps}>\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </LayoutAppBar>\n * - <LayoutNav {...expandableNavProps}>\n * - <CustomNavigation />\n * - </LayoutNav>\n * - <LayoutWindowSplitter {...windowSplitterProps} />\n * + {persistent && (\n * + <>\n * + <LayoutNav {...expandableNavProps}>\n * + <CustomNavigation />\n * + </LayoutNav>\n * + <LayoutWindowSplitter {...windowSplitterProps} />\n * + </>\n * + )}\n * {temporary && (\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * )}\n * <Main {...mainProps}>{children}</Main>\n * </>\n * )\n * ```\n *\n * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useResizableLayout(\n options: ResizableLayoutOptions\n): ResizableLayoutImplementation {\n const {\n navId: propNavId,\n pathname,\n appBarPosition = \"fixed\",\n fullHeightNav = false,\n temporaryUntil,\n defaultVisible,\n defaultExpanded,\n ...splitterOptions\n } = options;\n const navId = useEnsuredId(propNavId, \"layout-nav\");\n const { splitterProps, ...windowSplitter } =\n useLayoutWindowSplitter(splitterOptions);\n const expandableLayout = useExpandableLayout({\n pathname,\n appBarPosition,\n temporaryUntil,\n fullHeightNav,\n defaultExpanded,\n defaultVisible,\n });\n const { expandableNavProps, expanded } = expandableLayout;\n\n return {\n ...expandableLayout,\n ...windowSplitter,\n expandableNavProps: {\n id: navId,\n ...expandableNavProps,\n },\n windowSplitterProps: {\n ...splitterProps,\n \"aria-controls\": navId,\n appBarOffset: !fullHeightNav,\n className: (!expanded && DISPLAY_NONE_CLASS) || undefined,\n },\n };\n}\n"],"names":["useEnsuredId","DISPLAY_NONE_CLASS","useExpandableLayout","useLayoutWindowSplitter","useResizableLayout","options","navId","propNavId","pathname","appBarPosition","fullHeightNav","temporaryUntil","defaultVisible","defaultExpanded","splitterOptions","splitterProps","windowSplitter","expandableLayout","expandableNavProps","expanded","id","windowSplitterProps","appBarOffset","className","undefined"],"mappings":"AAAA,SAASA,YAAY,QAAQ,qBAAqB;AAClD,SAASC,kBAAkB,QAAQ,+BAA+B;AAOlE,SAASC,mBAAmB,QAAQ,2BAA2B;AAC/D,SAEEC,uBAAuB,QAClB,+BAA+B;AAkCtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4GC,GACD,OAAO,SAASC,mBACdC,OAA+B;IAE/B,MAAM,EACJC,OAAOC,SAAS,EAChBC,QAAQ,EACRC,iBAAiB,OAAO,EACxBC,gBAAgB,KAAK,EACrBC,cAAc,EACdC,cAAc,EACdC,eAAe,EACf,GAAGC,iBACJ,GAAGT;IACJ,MAAMC,QAAQN,aAAaO,WAAW;IACtC,MAAM,EAAEQ,aAAa,EAAE,GAAGC,gBAAgB,GACxCb,wBAAwBW;IAC1B,MAAMG,mBAAmBf,oBAAoB;QAC3CM;QACAC;QACAE;QACAD;QACAG;QACAD;IACF;IACA,MAAM,EAAEM,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IAEzC,OAAO;QACL,GAAGA,gBAAgB;QACnB,GAAGD,cAAc;QACjBE,oBAAoB;YAClBE,IAAId;YACJ,GAAGY,kBAAkB;QACvB;QACAG,qBAAqB;YACnB,GAAGN,aAAa;YAChB,iBAAiBT;YACjBgB,cAAc,CAACZ;YACfa,WAAW,AAAC,CAACJ,YAAYlB,sBAAuBuB;QAClD;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/layout/useResizableLayout.ts"],"sourcesContent":["import { useEnsuredId } from \"../useEnsuredId.js\";\nimport { DISPLAY_NONE_CLASS } from \"../utils/isElementVisible.js\";\nimport { type LayoutWindowSplitterProps } from \"./LayoutWindowSplitter.js\";\nimport {\n type ExpandableLayoutImplementation,\n type ExpandableLayoutOptions,\n type ProvidedLayoutNavProps,\n} from \"./useExpandableLayout.js\";\nimport { useExpandableLayout } from \"./useExpandableLayout.js\";\nimport {\n type LayoutWindowSplitterOptions,\n useLayoutWindowSplitter,\n} from \"./useLayoutWindowSplitter.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface ResizableLayoutOptions\n extends ExpandableLayoutOptions,\n LayoutWindowSplitterOptions {\n /**\n * This id will be used as the `aria-controls` prop for the\n * `LayoutWindowSplitter` and should be applied to the `LayoutNav` as an `id`.\n *\n * @defaultValue `\"layout-nav\" + useId()`\n */\n navId?: string;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ProvidedResizableLayoutNavProps\n extends ProvidedLayoutNavProps {\n id: string;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface ResizableLayoutImplementation\n extends ExpandableLayoutImplementation {\n expandableNavProps: ProvidedResizableLayoutNavProps;\n windowSplitterProps: LayoutWindowSplitterProps;\n}\n\n/**\n * @example Main Usage\n * ```tsx\n * import { AppBarTitle } from \"@react-md/core/app-bar/AppBarTitle\";\n * import { Button } from \"@react-md/core/button/Button\";\n * import { LayoutAppBar } from \"@react-md/core/layout/LayoutAppBar\";\n * import { LayoutNav } from \"@react-md/core/layout/LayoutNav\";\n * import { LayoutWindowSplitter } from \"@react-md/core/layout/LayoutWindowSplitter\";\n * import { Main } from \"@react-md/core/layout/Main\";\n * import { useResizableLayout } from \"@react-md/core/layout/useResizableLayout\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { type ReactElement, type ReactNode } from \"react\";\n *\n * import { CustomNavigation } from \"./CustomNavigation\";\n *\n * export interface LayoutProps {\n * children: ReactNode;\n * }\n *\n * export function Layout(props: LayoutProps): ReactElement {\n * const { children } = props;\n *\n * // choose whichever one for your app\n * // nextjs app dir\n * const pathname = usePathname();\n * // nextjs pages\n * const { pathname } = useRouter();\n * // react router\n * const { pathname } = useHistory();\n *\n * const {\n * temporary,\n * appBarProps,\n * expandableNavProps,\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * windowSplitterProps,\n * } = useResizableLayout({ pathname });\n *\n * return (\n * <>\n * <LayoutAppBar {...appBarProps}>\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </LayoutAppBar>\n * <LayoutNav {...expandableNavProps}>\n * <CustomNavigation />\n * </LayoutNav>\n * <LayoutWindowSplitter {...windowSplitterProps} />\n * {temporary && (\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * )}\n * <Main {...mainProps}>{children}</Main>\n * </>\n * );\n * }\n * ```\n *\n * If you have a large navigation panel, you can conditionally render the\n * `LayoutNav` with the `persistent` boolean returned by the hook which will\n * ensure that the DOM has rehydrated before unmounting to prevent SSR errors.\n *\n * @example Conditionally Rendering\n * ```diff\n * const {\n * temporary,\n * + persistent,\n * appBarProps,\n * expandableNavProps,\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * windowSplitterProps,\n * } = useResizableLayout({ pathname });\n *\n * return (\n * <>\n * <LayoutAppBar {...appBarProps}>\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </LayoutAppBar>\n * - <LayoutNav {...expandableNavProps}>\n * - <CustomNavigation />\n * - </LayoutNav>\n * - <LayoutWindowSplitter {...windowSplitterProps} />\n * + {persistent && (\n * + <>\n * + <LayoutNav {...expandableNavProps}>\n * + <CustomNavigation />\n * + </LayoutNav>\n * + <LayoutWindowSplitter {...windowSplitterProps} />\n * + </>\n * + )}\n * {temporary && (\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * )}\n * <Main {...mainProps}>{children}</Main>\n * </>\n * )\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useResizableLayout(\n options: ResizableLayoutOptions\n): ResizableLayoutImplementation {\n const {\n navId: propNavId,\n pathname,\n appBarPosition = \"fixed\",\n fullHeightNav = false,\n temporaryUntil,\n defaultVisible,\n defaultExpanded,\n ...splitterOptions\n } = options;\n const navId = useEnsuredId(propNavId, \"layout-nav\");\n const { splitterProps, ...windowSplitter } =\n useLayoutWindowSplitter(splitterOptions);\n const expandableLayout = useExpandableLayout({\n pathname,\n appBarPosition,\n temporaryUntil,\n fullHeightNav,\n defaultExpanded,\n defaultVisible,\n });\n const { expandableNavProps, expanded } = expandableLayout;\n\n return {\n ...expandableLayout,\n ...windowSplitter,\n expandableNavProps: {\n id: navId,\n ...expandableNavProps,\n },\n windowSplitterProps: {\n ...splitterProps,\n \"aria-controls\": navId,\n appBarOffset: !fullHeightNav,\n className: (!expanded && DISPLAY_NONE_CLASS) || undefined,\n },\n };\n}\n"],"names":["useEnsuredId","DISPLAY_NONE_CLASS","useExpandableLayout","useLayoutWindowSplitter","useResizableLayout","options","navId","propNavId","pathname","appBarPosition","fullHeightNav","temporaryUntil","defaultVisible","defaultExpanded","splitterOptions","splitterProps","windowSplitter","expandableLayout","expandableNavProps","expanded","id","windowSplitterProps","appBarOffset","className","undefined"],"mappings":"AAAA,SAASA,YAAY,QAAQ,qBAAqB;AAClD,SAASC,kBAAkB,QAAQ,+BAA+B;AAOlE,SAASC,mBAAmB,QAAQ,2BAA2B;AAC/D,SAEEC,uBAAuB,QAClB,+BAA+B;AAkCtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4GC,GACD,OAAO,SAASC,mBACdC,OAA+B;IAE/B,MAAM,EACJC,OAAOC,SAAS,EAChBC,QAAQ,EACRC,iBAAiB,OAAO,EACxBC,gBAAgB,KAAK,EACrBC,cAAc,EACdC,cAAc,EACdC,eAAe,EACf,GAAGC,iBACJ,GAAGT;IACJ,MAAMC,QAAQN,aAAaO,WAAW;IACtC,MAAM,EAAEQ,aAAa,EAAE,GAAGC,gBAAgB,GACxCb,wBAAwBW;IAC1B,MAAMG,mBAAmBf,oBAAoB;QAC3CM;QACAC;QACAE;QACAD;QACAG;QACAD;IACF;IACA,MAAM,EAAEM,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IAEzC,OAAO;QACL,GAAGA,gBAAgB;QACnB,GAAGD,cAAc;QACjBE,oBAAoB;YAClBE,IAAId;YACJ,GAAGY,kBAAkB;QACvB;QACAG,qBAAqB;YACnB,GAAGN,aAAa;YAChB,iBAAiBT;YACjBgB,cAAc,CAACZ;YACfa,WAAW,AAAC,CAACJ,YAAYlB,sBAAuBuB;QAClD;IACF;AACF"}
@@ -99,7 +99,7 @@ export interface TemporaryLayoutImplementation {
99
99
  * }
100
100
  * ```
101
101
  *
102
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
102
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
103
103
  * @since 6.0.0
104
104
  */
105
105
  export declare function useTemporaryLayout(options: TemporaryLayoutOptions): TemporaryLayoutImplementation;
@@ -55,7 +55,7 @@ import { useToggle } from "../useToggle.js";
55
55
  * }
56
56
  * ```
57
57
  *
58
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
58
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
59
59
  * @since 6.0.0
60
60
  */ export function useTemporaryLayout(options) {
61
61
  const { pathname, defaultVisible = false, appBarPosition = "fixed" } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/layout/useTemporaryLayout.ts"],"sourcesContent":["\"use client\";\n\nimport { type PropsWithChildren, useEffect } from \"react\";\n\nimport { type AppBarProps } from \"../app-bar/AppBar.js\";\nimport { type ButtonProps } from \"../button/Button.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { type SheetProps } from \"../sheet/Sheet.js\";\nimport { type CssPosition, type UseStateInitializer } from \"../types.js\";\nimport { useToggle } from \"../useToggle.js\";\nimport { type MainProps } from \"./Main.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface TemporaryLayoutOptions {\n /**\n * This is used to automatically hide the temporary navigation whenever the\n * route changes. Set this to `null` if you want to handle closing yourself.\n */\n pathname: string | null;\n\n /** @defaultValue `\"fixed\"` */\n appBarPosition?: CssPosition;\n\n /** @defaultValue `false` */\n defaultVisible?: UseStateInitializer<boolean>;\n}\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedLayoutNavToggleProps = PropsWithChildren<\n Pick<Required<ButtonProps>, \"aria-label\" | \"buttonType\" | \"onClick\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutNavProps = Pick<\n Required<SheetProps>,\n \"aria-label\" | \"visible\" | \"onRequestClose\"\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutMainProps = Required<\n Pick<MainProps, \"appBarOffset\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutAppBarProps = Required<\n Pick<AppBarProps, \"position\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport interface TemporaryLayoutImplementation {\n visible: boolean;\n showTemporaryNav: () => void;\n hideTemporaryNav: () => void;\n appBarProps: ProvidedTemporaryLayoutAppBarProps;\n mainProps: ProvidedTemporaryLayoutMainProps;\n navToggleProps: ProvidedLayoutNavToggleProps;\n temporaryNavProps: ProvidedTemporaryLayoutNavProps;\n}\n\n/**\n * The `useTemporaryLayout` hook is used to create a layout where the main\n * navigation is hidden in a `Sheet` until a user clicks a button to show the\n * navigation.\n *\n * @example\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { AppBarTitle } from \"@react-md/core/app-bar/AppBarTitle\";\n * import { Button } from \"@react-md/core/button/Button\";\n * import { useTemporaryLayout } from \"@react-md/core/layout/useTemporaryLayout\";\n * import { Main } from \"@react-md/core/layout/Main\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { type ReactElement, type ReactNode } from \"react\";\n *\n * import { CustomNavigation } from \"./CustomNavigation.jsx\";\n *\n * export interface LayoutProps {\n * children: ReactNode;\n * }\n *\n * export function Layout(props: LayoutProps): ReactElement {\n * const { children } = props;\n *\n * // choose whichever one for your app\n * // nextjs app dir\n * const pathname = usePathname();\n * // nextjs pages\n * const { pathname } = useRouter();\n * // react router\n * const { pathname } = useHistory();\n *\n * const {\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * } = useTemporaryLayout({ pathname });\n *\n * return (\n * <>\n * <AppBar position=\"fixed\">\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </AppBar>\n * <Main {...mainProps}>{children}</Main>\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useTemporaryLayout(\n options: TemporaryLayoutOptions\n): TemporaryLayoutImplementation {\n const {\n pathname,\n defaultVisible = false,\n appBarPosition = \"fixed\",\n } = options;\n\n const menuIcon = getIcon(\"menu\");\n const {\n toggled: visible,\n enable: showTemporaryNav,\n disable: hideTemporaryNav,\n } = useToggle(defaultVisible);\n\n // hide the temporary nav whenever the route changes\n useEffect(() => {\n if (pathname !== null) {\n hideTemporaryNav();\n }\n }, [hideTemporaryNav, pathname]);\n\n return {\n visible,\n showTemporaryNav,\n hideTemporaryNav,\n appBarProps: {\n position: appBarPosition,\n },\n mainProps: {\n appBarOffset: appBarPosition !== \"static\",\n },\n temporaryNavProps: {\n \"aria-label\": \"Navigation\",\n visible,\n onRequestClose: hideTemporaryNav,\n },\n navToggleProps: {\n \"aria-label\": \"Navigation\",\n buttonType: \"icon\",\n children: menuIcon,\n onClick() {\n showTemporaryNav();\n },\n },\n };\n}\n"],"names":["useEffect","getIcon","useToggle","useTemporaryLayout","options","pathname","defaultVisible","appBarPosition","menuIcon","toggled","visible","enable","showTemporaryNav","disable","hideTemporaryNav","appBarProps","position","mainProps","appBarOffset","temporaryNavProps","onRequestClose","navToggleProps","buttonType","children","onClick"],"mappings":"AAAA;AAEA,SAAiCA,SAAS,QAAQ,QAAQ;AAI1D,SAASC,OAAO,QAAQ,oBAAoB;AAG5C,SAASC,SAAS,QAAQ,kBAAkB;AA8D5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDC,GACD,OAAO,SAASC,mBACdC,OAA+B;IAE/B,MAAM,EACJC,QAAQ,EACRC,iBAAiB,KAAK,EACtBC,iBAAiB,OAAO,EACzB,GAAGH;IAEJ,MAAMI,WAAWP,QAAQ;IACzB,MAAM,EACJQ,SAASC,OAAO,EAChBC,QAAQC,gBAAgB,EACxBC,SAASC,gBAAgB,EAC1B,GAAGZ,UAAUI;IAEd,oDAAoD;IACpDN,UAAU;QACR,IAAIK,aAAa,MAAM;YACrBS;QACF;IACF,GAAG;QAACA;QAAkBT;KAAS;IAE/B,OAAO;QACLK;QACAE;QACAE;QACAC,aAAa;YACXC,UAAUT;QACZ;QACAU,WAAW;YACTC,cAAcX,mBAAmB;QACnC;QACAY,mBAAmB;YACjB,cAAc;YACdT;YACAU,gBAAgBN;QAClB;QACAO,gBAAgB;YACd,cAAc;YACdC,YAAY;YACZC,UAAUf;YACVgB;gBACEZ;YACF;QACF;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/layout/useTemporaryLayout.ts"],"sourcesContent":["\"use client\";\n\nimport { type PropsWithChildren, useEffect } from \"react\";\n\nimport { type AppBarProps } from \"../app-bar/AppBar.js\";\nimport { type ButtonProps } from \"../button/Button.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { type SheetProps } from \"../sheet/Sheet.js\";\nimport { type CssPosition, type UseStateInitializer } from \"../types.js\";\nimport { useToggle } from \"../useToggle.js\";\nimport { type MainProps } from \"./Main.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface TemporaryLayoutOptions {\n /**\n * This is used to automatically hide the temporary navigation whenever the\n * route changes. Set this to `null` if you want to handle closing yourself.\n */\n pathname: string | null;\n\n /** @defaultValue `\"fixed\"` */\n appBarPosition?: CssPosition;\n\n /** @defaultValue `false` */\n defaultVisible?: UseStateInitializer<boolean>;\n}\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedLayoutNavToggleProps = PropsWithChildren<\n Pick<Required<ButtonProps>, \"aria-label\" | \"buttonType\" | \"onClick\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutNavProps = Pick<\n Required<SheetProps>,\n \"aria-label\" | \"visible\" | \"onRequestClose\"\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutMainProps = Required<\n Pick<MainProps, \"appBarOffset\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport type ProvidedTemporaryLayoutAppBarProps = Required<\n Pick<AppBarProps, \"position\">\n>;\n\n/**\n * @since 6.0.0\n */\nexport interface TemporaryLayoutImplementation {\n visible: boolean;\n showTemporaryNav: () => void;\n hideTemporaryNav: () => void;\n appBarProps: ProvidedTemporaryLayoutAppBarProps;\n mainProps: ProvidedTemporaryLayoutMainProps;\n navToggleProps: ProvidedLayoutNavToggleProps;\n temporaryNavProps: ProvidedTemporaryLayoutNavProps;\n}\n\n/**\n * The `useTemporaryLayout` hook is used to create a layout where the main\n * navigation is hidden in a `Sheet` until a user clicks a button to show the\n * navigation.\n *\n * @example\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { AppBarTitle } from \"@react-md/core/app-bar/AppBarTitle\";\n * import { Button } from \"@react-md/core/button/Button\";\n * import { useTemporaryLayout } from \"@react-md/core/layout/useTemporaryLayout\";\n * import { Main } from \"@react-md/core/layout/Main\";\n * import { Sheet } from \"@react-md/core/sheet/Sheet\";\n * import { type ReactElement, type ReactNode } from \"react\";\n *\n * import { CustomNavigation } from \"./CustomNavigation.jsx\";\n *\n * export interface LayoutProps {\n * children: ReactNode;\n * }\n *\n * export function Layout(props: LayoutProps): ReactElement {\n * const { children } = props;\n *\n * // choose whichever one for your app\n * // nextjs app dir\n * const pathname = usePathname();\n * // nextjs pages\n * const { pathname } = useRouter();\n * // react router\n * const { pathname } = useHistory();\n *\n * const {\n * mainProps,\n * navToggleProps,\n * temporaryNavProps,\n * } = useTemporaryLayout({ pathname });\n *\n * return (\n * <>\n * <AppBar position=\"fixed\">\n * <Button {...navToggleProps} />\n * <AppBarTitle>Hello, world!</AppBarTitle>\n * </AppBar>\n * <Main {...mainProps}>{children}</Main>\n * <Sheet {...temporaryNavProps}>\n * <CustomNavigation />\n * </Sheet>\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @since 6.0.0\n */\nexport function useTemporaryLayout(\n options: TemporaryLayoutOptions\n): TemporaryLayoutImplementation {\n const {\n pathname,\n defaultVisible = false,\n appBarPosition = \"fixed\",\n } = options;\n\n const menuIcon = getIcon(\"menu\");\n const {\n toggled: visible,\n enable: showTemporaryNav,\n disable: hideTemporaryNav,\n } = useToggle(defaultVisible);\n\n // hide the temporary nav whenever the route changes\n useEffect(() => {\n if (pathname !== null) {\n hideTemporaryNav();\n }\n }, [hideTemporaryNav, pathname]);\n\n return {\n visible,\n showTemporaryNav,\n hideTemporaryNav,\n appBarProps: {\n position: appBarPosition,\n },\n mainProps: {\n appBarOffset: appBarPosition !== \"static\",\n },\n temporaryNavProps: {\n \"aria-label\": \"Navigation\",\n visible,\n onRequestClose: hideTemporaryNav,\n },\n navToggleProps: {\n \"aria-label\": \"Navigation\",\n buttonType: \"icon\",\n children: menuIcon,\n onClick() {\n showTemporaryNav();\n },\n },\n };\n}\n"],"names":["useEffect","getIcon","useToggle","useTemporaryLayout","options","pathname","defaultVisible","appBarPosition","menuIcon","toggled","visible","enable","showTemporaryNav","disable","hideTemporaryNav","appBarProps","position","mainProps","appBarOffset","temporaryNavProps","onRequestClose","navToggleProps","buttonType","children","onClick"],"mappings":"AAAA;AAEA,SAAiCA,SAAS,QAAQ,QAAQ;AAI1D,SAASC,OAAO,QAAQ,oBAAoB;AAG5C,SAASC,SAAS,QAAQ,kBAAkB;AA8D5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuDC,GACD,OAAO,SAASC,mBACdC,OAA+B;IAE/B,MAAM,EACJC,QAAQ,EACRC,iBAAiB,KAAK,EACtBC,iBAAiB,OAAO,EACzB,GAAGH;IAEJ,MAAMI,WAAWP,QAAQ;IACzB,MAAM,EACJQ,SAASC,OAAO,EAChBC,QAAQC,gBAAgB,EACxBC,SAASC,gBAAgB,EAC1B,GAAGZ,UAAUI;IAEd,oDAAoD;IACpDN,UAAU;QACR,IAAIK,aAAa,MAAM;YACrBS;QACF;IACF,GAAG;QAACA;QAAkBT;KAAS;IAE/B,OAAO;QACLK;QACAE;QACAE;QACAC,aAAa;YACXC,UAAUT;QACZ;QACAU,WAAW;YACTC,cAAcX,mBAAmB;QACnC;QACAY,mBAAmB;YACjB,cAAc;YACdT;YACAU,gBAAgBN;QAClB;QACAO,gBAAgB;YACd,cAAc;YACdC,YAAY;YACZC,UAAUf;YACVgB;gBACEZ;YACF;QACF;IACF;AACF"}
@@ -55,7 +55,7 @@ export interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement>, Link
55
55
  * ```
56
56
  *
57
57
  *
58
- * @see {@link https://next.react-md.dev/components/link | Link Demos}
58
+ * @see {@link https://react-md.dev/components/link | Link Demos}
59
59
  * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers
60
60
  * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.
61
61
  * @since 6.0.0 Removed the `component` prop since all you need for link
package/dist/link/Link.js CHANGED
@@ -19,7 +19,7 @@ import { link } from "./styles.js";
19
19
  * ```
20
20
  *
21
21
  *
22
- * @see {@link https://next.react-md.dev/components/link | Link Demos}
22
+ * @see {@link https://react-md.dev/components/link | Link Demos}
23
23
  * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers
24
24
  * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.
25
25
  * @since 6.0.0 Removed the `component` prop since all you need for link
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/link/Link.tsx"],"sourcesContent":["import {\n type AnchorHTMLAttributes,\n type ForwardRefExoticComponent,\n forwardRef,\n} from \"react\";\n\nimport { type LinkClassNameOptions, link } from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-link-color\"?: string;\n \"--rmd-link-visited-color\"?: string;\n \"--rmd-link-hover-color\"?: string;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport type CustomLinkComponent =\n | ForwardRefExoticComponent<{ href: string }>\n | ForwardRefExoticComponent<{ to: string }>\n | \"a\";\n\n/**\n * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers\n * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.\n * @since 6.0.0 Removed the `component` prop since all you need for link\n * behavior is `className=\"rmd-link\"`.\n * @since 6.0.0 The `href` prop is required.\n * @since 6.0.0 Renamed `flexCentered` to `flex`.\n */\nexport interface LinkProps\n extends AnchorHTMLAttributes<HTMLAnchorElement>,\n LinkClassNameOptions {\n /**\n * All links **must** have a valid href.\n */\n href: string;\n\n /**\n * Set this to `true` if your link contains icons that should be centered and\n * spaced with additional text. This is not used by default so that links can\n * correctly line wrap while rendered within paragraphs of text.\n *\n * @defaultValue `false`\n */\n flex?: boolean;\n}\n\n/**\n * @example Simple Example\n * ```tsx\n * import { Link } from \"@react-md/core/link/Link\";\n * import { Typography } from \"@react-md/core/typography/Typography\";\n * import type { ReactElement } from \"react\";\n *\n * function Element(): ReactElement {\n * return (\n * <Typography>\n * Here is a paragraph of text with a {\" \"}\n * <Link href=\"/some-url\">link to some content</Link>.\n * </Typography>\n * );\n * }\n * ```\n *\n *\n * @see {@link https://next.react-md.dev/components/link | Link Demos}\n * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers\n * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.\n * @since 6.0.0 Removed the `component` prop since all you need for link\n * behavior is `className=\"rmd-link\"`.\n * @since 6.0.0 The `href` prop is required.\n * @since 6.0.0 Renamed `flexCentered` to `flex`.\n */\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>(\n function Link(props, ref) {\n const { className, flex, children, ...remaining } = props;\n\n return (\n <a {...remaining} ref={ref} className={link({ flex, className })}>\n {children}\n </a>\n );\n }\n);\n"],"names":["forwardRef","link","Link","props","ref","className","flex","children","remaining","a"],"mappings":";AAAA,SAGEA,UAAU,QACL,QAAQ;AAEf,SAAoCC,IAAI,QAAQ,cAAc;AA4C9D;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,qBAAOF,WAClB,SAASE,KAAKC,KAAK,EAAEC,GAAG;IACtB,MAAM,EAAEC,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAE,GAAGC,WAAW,GAAGL;IAEpD,qBACE,KAACM;QAAG,GAAGD,SAAS;QAAEJ,KAAKA;QAAKC,WAAWJ,KAAK;YAAEK;YAAMD;QAAU;kBAC3DE;;AAGP,GACA"}
1
+ {"version":3,"sources":["../../src/link/Link.tsx"],"sourcesContent":["import {\n type AnchorHTMLAttributes,\n type ForwardRefExoticComponent,\n forwardRef,\n} from \"react\";\n\nimport { type LinkClassNameOptions, link } from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-link-color\"?: string;\n \"--rmd-link-visited-color\"?: string;\n \"--rmd-link-hover-color\"?: string;\n }\n}\n\n/**\n * @since 6.0.0\n */\nexport type CustomLinkComponent =\n | ForwardRefExoticComponent<{ href: string }>\n | ForwardRefExoticComponent<{ to: string }>\n | \"a\";\n\n/**\n * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers\n * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.\n * @since 6.0.0 Removed the `component` prop since all you need for link\n * behavior is `className=\"rmd-link\"`.\n * @since 6.0.0 The `href` prop is required.\n * @since 6.0.0 Renamed `flexCentered` to `flex`.\n */\nexport interface LinkProps\n extends AnchorHTMLAttributes<HTMLAnchorElement>,\n LinkClassNameOptions {\n /**\n * All links **must** have a valid href.\n */\n href: string;\n\n /**\n * Set this to `true` if your link contains icons that should be centered and\n * spaced with additional text. This is not used by default so that links can\n * correctly line wrap while rendered within paragraphs of text.\n *\n * @defaultValue `false`\n */\n flex?: boolean;\n}\n\n/**\n * @example Simple Example\n * ```tsx\n * import { Link } from \"@react-md/core/link/Link\";\n * import { Typography } from \"@react-md/core/typography/Typography\";\n * import type { ReactElement } from \"react\";\n *\n * function Element(): ReactElement {\n * return (\n * <Typography>\n * Here is a paragraph of text with a {\" \"}\n * <Link href=\"/some-url\">link to some content</Link>.\n * </Typography>\n * );\n * }\n * ```\n *\n *\n * @see {@link https://react-md.dev/components/link | Link Demos}\n * @since 6.0.0 Removed the `preventMaliciousTarget` prop since browsers\n * default to `rel=noopener` after updating the {@link https://github.com/whatwg/html/issues/4078|spec}.\n * @since 6.0.0 Removed the `component` prop since all you need for link\n * behavior is `className=\"rmd-link\"`.\n * @since 6.0.0 The `href` prop is required.\n * @since 6.0.0 Renamed `flexCentered` to `flex`.\n */\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>(\n function Link(props, ref) {\n const { className, flex, children, ...remaining } = props;\n\n return (\n <a {...remaining} ref={ref} className={link({ flex, className })}>\n {children}\n </a>\n );\n }\n);\n"],"names":["forwardRef","link","Link","props","ref","className","flex","children","remaining","a"],"mappings":";AAAA,SAGEA,UAAU,QACL,QAAQ;AAEf,SAAoCC,IAAI,QAAQ,cAAc;AA4C9D;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,qBAAOF,WAClB,SAASE,KAAKC,KAAK,EAAEC,GAAG;IACtB,MAAM,EAAEC,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAE,GAAGC,WAAW,GAAGL;IAEpD,qBACE,KAACM;QAAG,GAAGD,SAAS;QAAEJ,KAAKA;QAAKC,WAAWJ,KAAK;YAAEK;YAAMD;QAAU;kBAC3DE;;AAGP,GACA"}
@@ -48,7 +48,7 @@ export interface SkipToMainContentProps extends Omit<LinkProps, "href">, SkipToM
48
48
  * }
49
49
  * ```
50
50
  *
51
- * @see {@link https://next.react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}
51
+ * @see {@link https://react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}
52
52
  * @since 6.0.0 Changed the default `id` from `"skip-to-main-content"` to
53
53
  * `"skip-to-main"`.
54
54
  * @since 6.0.0 The `mainId` prop is optional
@@ -31,7 +31,7 @@ const getMainElement = (mainId)=>mainId ? document.getElementById(mainId) : docu
31
31
  * }
32
32
  * ```
33
33
  *
34
- * @see {@link https://next.react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}
34
+ * @see {@link https://react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}
35
35
  * @since 6.0.0 Changed the default `id` from `"skip-to-main-content"` to
36
36
  * `"skip-to-main"`.
37
37
  * @since 6.0.0 The `mainId` prop is optional
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/link/SkipToMainContent.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactNode, forwardRef, useEffect, useRef } from \"react\";\n\nimport { Link, type LinkProps } from \"./Link.js\";\nimport {\n type SkipToMainContentClassNameOptions,\n skipToMainContent,\n} from \"./styles.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\nconst getMainElement = (mainId: string): HTMLElement | null =>\n mainId\n ? document.getElementById(mainId)\n : document.querySelector<HTMLElement>('main,[role=\"main\"]');\n\n/**\n * @since 6.0.0 The `mainId` is optional\n */\nexport interface SkipToMainContentProps\n extends Omit<LinkProps, \"href\">,\n SkipToMainContentClassNameOptions {\n /**\n * @since 6.0.0 Changed default value from `\"skip-to-main-content\"`\n * @defaultValue `\"skip-to-main\"`\n */\n id?: string;\n\n /**\n * An optional id for the main element. When this is not provided, the main\n * element will be found by:\n *\n * ```ts\n * document.querySelector('main,[role=\"main\"]');\n * ```\n */\n mainId?: string;\n\n /**\n * @defaultValue `\"Skip to main content\"`\n */\n children?: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This component is used to allow keyboard users a quick way to skip directly\n * to the main content instead of needing to tab through all navigation items.\n *\n * This component should not be used if using the LayoutAppBar component since\n * it is already built-in.\n *\n * @example Simple Example\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { SkipToMainContent } from \"@react-md/core/link/SkipToMainContent\";\n * import { type ReactElement } from \"react\";\n *\n * export default function SimpleSkipToMainContentExample(): ReactElement {\n * return (\n * <AppBar style={{ position: \"relative\" }}>\n * <SkipToMainContent />\n * </AppBar>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}\n * @since 6.0.0 Changed the default `id` from `\"skip-to-main-content\"` to\n * `\"skip-to-main\"`.\n * @since 6.0.0 The `mainId` prop is optional\n * @since 6.0.0 Throws an error after rendering if no main element can be found\n * with the provided `mainId` in development mode. The previous behavior would\n * only log an error after being clicked.\n */\nexport const SkipToMainContent = forwardRef<\n HTMLAnchorElement,\n SkipToMainContentProps\n>(function SkipToMainContent(props, ref) {\n const {\n id = \"skip-to-main\",\n className,\n children = \"Skip to main content\",\n mainId = \"\",\n onClick = noop,\n unstyled,\n ...remaining\n } = props;\n\n const mainNodeRef = useRef<HTMLElement | null>(null);\n // want to warn the developer about missing main element in development\n // immediately to help prevent errors, but in production this can be lazy\n // initialized only once a keyboard user focuses and clicks this element\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n mainNodeRef.current = getMainElement(mainId);\n\n if (!mainNodeRef.current) {\n const foundMainId = document.querySelector('main,[role=\"main\"]')?.id;\n let message = `Unable to find a main element to focus`;\n if (mainId) {\n message += ` with an id of \"${mainId}\"`;\n\n if (foundMainId) {\n message += ` but a main element was found with an id of \"${foundMainId}\".`;\n }\n }\n if (!foundMainId) {\n message +=\n '. There should be at least one <main> element or an element with role=\"main\" on the page for accessibility.';\n }\n\n throw new Error(message);\n }\n }, [mainId]);\n }\n\n return (\n <Link\n {...remaining}\n id={id}\n ref={ref}\n href={`#${mainId}`}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n // see comment above useEffect\n mainNodeRef.current ||= getMainElement(mainId);\n mainNodeRef.current?.focus();\n }}\n className={skipToMainContent({\n unstyled,\n className,\n })}\n >\n {children}\n </Link>\n );\n});\n"],"names":["forwardRef","useEffect","useRef","Link","skipToMainContent","noop","getMainElement","mainId","document","getElementById","querySelector","SkipToMainContent","props","ref","id","className","children","onClick","unstyled","remaining","mainNodeRef","process","env","NODE_ENV","current","foundMainId","message","Error","href","event","isPropagationStopped","preventDefault","stopPropagation","focus"],"mappings":"AAAA;;AAEA,SAAyBA,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,QAAQ;AAEtE,SAASC,IAAI,QAAwB,YAAY;AACjD,SAEEC,iBAAiB,QACZ,cAAc;AAErB,MAAMC,OAAO;AACX,aAAa;AACf;AAEA,MAAMC,iBAAiB,CAACC,SACtBA,SACIC,SAASC,cAAc,CAACF,UACxBC,SAASE,aAAa,CAAc;AA8B1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BC,GACD,OAAO,MAAMC,kCAAoBX,WAG/B,SAASW,kBAAkBC,KAAK,EAAEC,GAAG;IACrC,MAAM,EACJC,KAAK,cAAc,EACnBC,SAAS,EACTC,WAAW,sBAAsB,EACjCT,SAAS,EAAE,EACXU,UAAUZ,IAAI,EACda,QAAQ,EACR,GAAGC,WACJ,GAAGP;IAEJ,MAAMQ,cAAclB,OAA2B;IAC/C,uEAAuE;IACvE,yEAAyE;IACzE,wEAAwE;IACxE,IAAImB,QAAQC,GAAG,CAACC,QAAQ,KAAK,cAAc;QACzC,sDAAsD;QACtDtB,UAAU;YACRmB,YAAYI,OAAO,GAAGlB,eAAeC;YAErC,IAAI,CAACa,YAAYI,OAAO,EAAE;gBACxB,MAAMC,cAAcjB,SAASE,aAAa,CAAC,uBAAuBI;gBAClE,IAAIY,UAAU,CAAC,sCAAsC,CAAC;gBACtD,IAAInB,QAAQ;oBACVmB,WAAW,CAAC,gBAAgB,EAAEnB,OAAO,CAAC,CAAC;oBAEvC,IAAIkB,aAAa;wBACfC,WAAW,CAAC,6CAA6C,EAAED,YAAY,EAAE,CAAC;oBAC5E;gBACF;gBACA,IAAI,CAACA,aAAa;oBAChBC,WACE;gBACJ;gBAEA,MAAM,IAAIC,MAAMD;YAClB;QACF,GAAG;YAACnB;SAAO;IACb;IAEA,qBACE,KAACJ;QACE,GAAGgB,SAAS;QACbL,IAAIA;QACJD,KAAKA;QACLe,MAAM,CAAC,CAAC,EAAErB,QAAQ;QAClBU,SAAS,CAACY;YACRZ,QAAQY;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAD,MAAME,cAAc;YACpBF,MAAMG,eAAe;YAErB,8BAA8B;YAC9BZ,YAAYI,OAAO,KAAKlB,eAAeC;YACvCa,YAAYI,OAAO,EAAES;QACvB;QACAlB,WAAWX,kBAAkB;YAC3Bc;YACAH;QACF;kBAECC;;AAGP,GAAG"}
1
+ {"version":3,"sources":["../../src/link/SkipToMainContent.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactNode, forwardRef, useEffect, useRef } from \"react\";\n\nimport { Link, type LinkProps } from \"./Link.js\";\nimport {\n type SkipToMainContentClassNameOptions,\n skipToMainContent,\n} from \"./styles.js\";\n\nconst noop = (): void => {\n // do nothing\n};\n\nconst getMainElement = (mainId: string): HTMLElement | null =>\n mainId\n ? document.getElementById(mainId)\n : document.querySelector<HTMLElement>('main,[role=\"main\"]');\n\n/**\n * @since 6.0.0 The `mainId` is optional\n */\nexport interface SkipToMainContentProps\n extends Omit<LinkProps, \"href\">,\n SkipToMainContentClassNameOptions {\n /**\n * @since 6.0.0 Changed default value from `\"skip-to-main-content\"`\n * @defaultValue `\"skip-to-main\"`\n */\n id?: string;\n\n /**\n * An optional id for the main element. When this is not provided, the main\n * element will be found by:\n *\n * ```ts\n * document.querySelector('main,[role=\"main\"]');\n * ```\n */\n mainId?: string;\n\n /**\n * @defaultValue `\"Skip to main content\"`\n */\n children?: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This component is used to allow keyboard users a quick way to skip directly\n * to the main content instead of needing to tab through all navigation items.\n *\n * This component should not be used if using the LayoutAppBar component since\n * it is already built-in.\n *\n * @example Simple Example\n * ```tsx\n * import { AppBar } from \"@react-md/core/app-bar/AppBar\";\n * import { SkipToMainContent } from \"@react-md/core/link/SkipToMainContent\";\n * import { type ReactElement } from \"react\";\n *\n * export default function SimpleSkipToMainContentExample(): ReactElement {\n * return (\n * <AppBar style={{ position: \"relative\" }}>\n * <SkipToMainContent />\n * </AppBar>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/skip-to-main-content | SkipToMainContent Demos}\n * @since 6.0.0 Changed the default `id` from `\"skip-to-main-content\"` to\n * `\"skip-to-main\"`.\n * @since 6.0.0 The `mainId` prop is optional\n * @since 6.0.0 Throws an error after rendering if no main element can be found\n * with the provided `mainId` in development mode. The previous behavior would\n * only log an error after being clicked.\n */\nexport const SkipToMainContent = forwardRef<\n HTMLAnchorElement,\n SkipToMainContentProps\n>(function SkipToMainContent(props, ref) {\n const {\n id = \"skip-to-main\",\n className,\n children = \"Skip to main content\",\n mainId = \"\",\n onClick = noop,\n unstyled,\n ...remaining\n } = props;\n\n const mainNodeRef = useRef<HTMLElement | null>(null);\n // want to warn the developer about missing main element in development\n // immediately to help prevent errors, but in production this can be lazy\n // initialized only once a keyboard user focuses and clicks this element\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n mainNodeRef.current = getMainElement(mainId);\n\n if (!mainNodeRef.current) {\n const foundMainId = document.querySelector('main,[role=\"main\"]')?.id;\n let message = `Unable to find a main element to focus`;\n if (mainId) {\n message += ` with an id of \"${mainId}\"`;\n\n if (foundMainId) {\n message += ` but a main element was found with an id of \"${foundMainId}\".`;\n }\n }\n if (!foundMainId) {\n message +=\n '. There should be at least one <main> element or an element with role=\"main\" on the page for accessibility.';\n }\n\n throw new Error(message);\n }\n }, [mainId]);\n }\n\n return (\n <Link\n {...remaining}\n id={id}\n ref={ref}\n href={`#${mainId}`}\n onClick={(event) => {\n onClick(event);\n if (event.isPropagationStopped()) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n // see comment above useEffect\n mainNodeRef.current ||= getMainElement(mainId);\n mainNodeRef.current?.focus();\n }}\n className={skipToMainContent({\n unstyled,\n className,\n })}\n >\n {children}\n </Link>\n );\n});\n"],"names":["forwardRef","useEffect","useRef","Link","skipToMainContent","noop","getMainElement","mainId","document","getElementById","querySelector","SkipToMainContent","props","ref","id","className","children","onClick","unstyled","remaining","mainNodeRef","process","env","NODE_ENV","current","foundMainId","message","Error","href","event","isPropagationStopped","preventDefault","stopPropagation","focus"],"mappings":"AAAA;;AAEA,SAAyBA,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,QAAQ;AAEtE,SAASC,IAAI,QAAwB,YAAY;AACjD,SAEEC,iBAAiB,QACZ,cAAc;AAErB,MAAMC,OAAO;AACX,aAAa;AACf;AAEA,MAAMC,iBAAiB,CAACC,SACtBA,SACIC,SAASC,cAAc,CAACF,UACxBC,SAASE,aAAa,CAAc;AA8B1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BC,GACD,OAAO,MAAMC,kCAAoBX,WAG/B,SAASW,kBAAkBC,KAAK,EAAEC,GAAG;IACrC,MAAM,EACJC,KAAK,cAAc,EACnBC,SAAS,EACTC,WAAW,sBAAsB,EACjCT,SAAS,EAAE,EACXU,UAAUZ,IAAI,EACda,QAAQ,EACR,GAAGC,WACJ,GAAGP;IAEJ,MAAMQ,cAAclB,OAA2B;IAC/C,uEAAuE;IACvE,yEAAyE;IACzE,wEAAwE;IACxE,IAAImB,QAAQC,GAAG,CAACC,QAAQ,KAAK,cAAc;QACzC,sDAAsD;QACtDtB,UAAU;YACRmB,YAAYI,OAAO,GAAGlB,eAAeC;YAErC,IAAI,CAACa,YAAYI,OAAO,EAAE;gBACxB,MAAMC,cAAcjB,SAASE,aAAa,CAAC,uBAAuBI;gBAClE,IAAIY,UAAU,CAAC,sCAAsC,CAAC;gBACtD,IAAInB,QAAQ;oBACVmB,WAAW,CAAC,gBAAgB,EAAEnB,OAAO,CAAC,CAAC;oBAEvC,IAAIkB,aAAa;wBACfC,WAAW,CAAC,6CAA6C,EAAED,YAAY,EAAE,CAAC;oBAC5E;gBACF;gBACA,IAAI,CAACA,aAAa;oBAChBC,WACE;gBACJ;gBAEA,MAAM,IAAIC,MAAMD;YAClB;QACF,GAAG;YAACnB;SAAO;IACb;IAEA,qBACE,KAACJ;QACE,GAAGgB,SAAS;QACbL,IAAIA;QACJD,KAAKA;QACLe,MAAM,CAAC,CAAC,EAAErB,QAAQ;QAClBU,SAAS,CAACY;YACRZ,QAAQY;YACR,IAAIA,MAAMC,oBAAoB,IAAI;gBAChC;YACF;YAEAD,MAAME,cAAc;YACpBF,MAAMG,eAAe;YAErB,8BAA8B;YAC9BZ,YAAYI,OAAO,KAAKlB,eAAeC;YACvCa,YAAYI,OAAO,EAAES;QACvB;QACAlB,WAAWX,kBAAkB;YAC3Bc;YACAH;QACF;kBAECC;;AAGP,GAAG"}
@@ -73,6 +73,6 @@ export interface ListProps extends HTMLAttributes<ListElement> {
73
73
  * }
74
74
  * ```
75
75
  *
76
- * @see {@link https://next.react-md.dev/components/list | List Demos}
76
+ * @see {@link https://react-md.dev/components/list | List Demos}
77
77
  */
78
78
  export declare const List: import("react").ForwardRefExoticComponent<ListProps & import("react").RefAttributes<ListElement>>;
package/dist/list/List.js CHANGED
@@ -42,7 +42,7 @@ import { list } from "./listStyles.js";
42
42
  * }
43
43
  * ```
44
44
  *
45
- * @see {@link https://next.react-md.dev/components/list | List Demos}
45
+ * @see {@link https://react-md.dev/components/list | List Demos}
46
46
  */ export const List = /*#__PURE__*/ forwardRef(function List(props, ref) {
47
47
  const { className, children, role = "none", dense = false, ordered = false, horizontal = false, ...remaining } = props;
48
48
  const Component = ordered ? "ol" : "ul";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/list/List.tsx"],"sourcesContent":["import { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { list } from \"./listStyles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-list-padding-h\"?: string | number;\n \"--rmd-list-padding-v\"?: string | number;\n }\n}\n\nexport type ListElement = HTMLUListElement | HTMLOListElement;\n\nexport interface ListProps extends HTMLAttributes<ListElement> {\n /**\n * @defaultValue `\"none\"`\n */\n role?: HTMLAttributes<ListElement>[\"role\"];\n\n /**\n * Set to `true` to decrease the amount of padding and font size within the\n * list.\n *\n * @defaultValue `false`\n */\n dense?: boolean;\n\n /**\n * Set this to `true` to render as `<ol>` instead of `<ul>` when the children\n * are in a specific order. For example: steps within a recipe.\n *\n * @defaultValue `false`\n */\n ordered?: boolean;\n\n /**\n * Set this to `true` to render horizontally instead of vertically.\n *\n * @defaultValue `false`\n */\n horizontal?: boolean;\n}\n\n/**\n * The `List` component is used to render a collection of clickable actions\n * vertically or horizontally and does not include the default `ol`/`ul` styles.\n *\n * @example Simple Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import { ListItemLink } from \"@react-md/core/list/ListItemLink\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 1\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 2\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 3\n * </ListItem>\n * <ListItemLink href=\"/some-route\">Link Example</ListItemLink>\n * </List>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/list | List Demos}\n */\nexport const List = forwardRef<ListElement, ListProps>(\n function List(props, ref) {\n const {\n className,\n children,\n role = \"none\",\n dense = false,\n ordered = false,\n horizontal = false,\n ...remaining\n } = props;\n const Component = (ordered ? \"ol\" : \"ul\") as \"ul\";\n return (\n <Component\n {...remaining}\n ref={ref}\n role={role}\n className={list({\n dense,\n horizontal,\n className,\n })}\n >\n {children}\n </Component>\n );\n }\n);\n"],"names":["forwardRef","list","List","props","ref","className","children","role","dense","ordered","horizontal","remaining","Component"],"mappings":";AAAA,SAA8BA,UAAU,QAAQ,QAAQ;AAExD,SAASC,IAAI,QAAQ,kBAAkB;AAyCvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CC,GACD,OAAO,MAAMC,qBAAOF,WAClB,SAASE,KAAKC,KAAK,EAAEC,GAAG;IACtB,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,OAAO,MAAM,EACbC,QAAQ,KAAK,EACbC,UAAU,KAAK,EACfC,aAAa,KAAK,EAClB,GAAGC,WACJ,GAAGR;IACJ,MAAMS,YAAaH,UAAU,OAAO;IACpC,qBACE,KAACG;QACE,GAAGD,SAAS;QACbP,KAAKA;QACLG,MAAMA;QACNF,WAAWJ,KAAK;YACdO;YACAE;YACAL;QACF;kBAECC;;AAGP,GACA"}
1
+ {"version":3,"sources":["../../src/list/List.tsx"],"sourcesContent":["import { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { list } from \"./listStyles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-list-padding-h\"?: string | number;\n \"--rmd-list-padding-v\"?: string | number;\n }\n}\n\nexport type ListElement = HTMLUListElement | HTMLOListElement;\n\nexport interface ListProps extends HTMLAttributes<ListElement> {\n /**\n * @defaultValue `\"none\"`\n */\n role?: HTMLAttributes<ListElement>[\"role\"];\n\n /**\n * Set to `true` to decrease the amount of padding and font size within the\n * list.\n *\n * @defaultValue `false`\n */\n dense?: boolean;\n\n /**\n * Set this to `true` to render as `<ol>` instead of `<ul>` when the children\n * are in a specific order. For example: steps within a recipe.\n *\n * @defaultValue `false`\n */\n ordered?: boolean;\n\n /**\n * Set this to `true` to render horizontally instead of vertically.\n *\n * @defaultValue `false`\n */\n horizontal?: boolean;\n}\n\n/**\n * The `List` component is used to render a collection of clickable actions\n * vertically or horizontally and does not include the default `ol`/`ul` styles.\n *\n * @example Simple Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import { ListItemLink } from \"@react-md/core/list/ListItemLink\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 1\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 2\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 3\n * </ListItem>\n * <ListItemLink href=\"/some-route\">Link Example</ListItemLink>\n * </List>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/list | List Demos}\n */\nexport const List = forwardRef<ListElement, ListProps>(\n function List(props, ref) {\n const {\n className,\n children,\n role = \"none\",\n dense = false,\n ordered = false,\n horizontal = false,\n ...remaining\n } = props;\n const Component = (ordered ? \"ol\" : \"ul\") as \"ul\";\n return (\n <Component\n {...remaining}\n ref={ref}\n role={role}\n className={list({\n dense,\n horizontal,\n className,\n })}\n >\n {children}\n </Component>\n );\n }\n);\n"],"names":["forwardRef","list","List","props","ref","className","children","role","dense","ordered","horizontal","remaining","Component"],"mappings":";AAAA,SAA8BA,UAAU,QAAQ,QAAQ;AAExD,SAASC,IAAI,QAAQ,kBAAkB;AAyCvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CC,GACD,OAAO,MAAMC,qBAAOF,WAClB,SAASE,KAAKC,KAAK,EAAEC,GAAG;IACtB,MAAM,EACJC,SAAS,EACTC,QAAQ,EACRC,OAAO,MAAM,EACbC,QAAQ,KAAK,EACbC,UAAU,KAAK,EACfC,aAAa,KAAK,EAClB,GAAGC,WACJ,GAAGR;IACJ,MAAMS,YAAaH,UAAU,OAAO;IACpC,qBACE,KAACG;QACE,GAAGD,SAAS;QACbP,KAAKA;QACLG,MAAMA;QACNF,WAAWJ,KAAK;YACdO;YACAE;YACAL;QACF;kBAECC;;AAGP,GACA"}
@@ -124,6 +124,6 @@ export interface ListItemProps extends HTMLAttributes<HTMLLIElement>, ListItemCh
124
124
  * }
125
125
  * ```
126
126
  *
127
- * @see {@link https://next.react-md.dev/components/list | List Demos}
127
+ * @see {@link https://react-md.dev/components/list | List Demos}
128
128
  */
129
129
  export declare const ListItem: import("react").ForwardRefExoticComponent<ListItemProps & import("react").RefAttributes<HTMLLIElement>>;
@@ -71,7 +71,7 @@ import { listItem } from "./listItemStyles.js";
71
71
  * }
72
72
  * ```
73
73
  *
74
- * @see {@link https://next.react-md.dev/components/list | List Demos}
74
+ * @see {@link https://react-md.dev/components/list | List Demos}
75
75
  */ export const ListItem = /*#__PURE__*/ forwardRef(function ListItem(props, ref) {
76
76
  const { className, textProps, textClassName, secondaryTextClassName, primaryText, secondaryText, secondaryTextProps, disableTextChildren = false, height: propHeight, leftAddon, leftAddonType, leftAddonPosition, leftAddonClassName, leftAddonForceWrap, rightAddon, rightAddonType, rightAddonPosition, rightAddonClassName, rightAddonForceWrap, disableLeftAddonSpacing, disableLeftAddonCenteredMedia, disableRightAddonCenteredMedia, multiline = false, disabled = false, disableRipple, disabledOpacity = false, role = "button", onBlur, onClick, onKeyDown, onKeyUp, onMouseDown, onMouseUp, onMouseLeave, onDragStart, onTouchStart, onTouchEnd, onTouchMove, tabIndex: propTabIndex, children: propChildren, presentational = role === "presentation", ...remaining } = props;
77
77
  let tabIndex = propTabIndex;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/list/ListItem.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { useHigherContrastChildren } from \"../interaction/useHigherContrastChildren.js\";\nimport { ListItemChildren } from \"./ListItemChildren.js\";\nimport { getListItemHeight } from \"./getListItemHeight.js\";\nimport { listItem } from \"./listItemStyles.js\";\nimport { type ListItemChildrenProps, type ListItemHeight } from \"./types.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-list-item-keyline\"?: string | number;\n \"--rmd-list-item-padding-h\"?: string | number;\n \"--rmd-list-item-padding-v\"?: string | number;\n \"--rmd-list-item-height\"?: string | number;\n \"--rmd-list-item-medium-height\"?: string | number;\n \"--rmd-list-item-large-height\"?: string | number;\n \"--rmd-list-item-extra-large-height\"?: string | number;\n \"--rmd-list-item-multiline-clamp\"?: string | number;\n \"--rmd-list-item-multiline-height\"?: string | number;\n \"--rmd-list-item-media-size\"?: string | number;\n \"--rmd-list-item-media-spacing\"?: string | number;\n \"--rmd-list-item-text-multiline-height\"?: string | number;\n }\n}\n\n/**\n * @since 6.0.0 Renamed `threeLines` to `multiline` since it can\n * support more than three lines of text.\n */\nexport interface ListItemProps\n extends HTMLAttributes<HTMLLIElement>,\n ListItemChildrenProps,\n ComponentWithRippleProps {\n /**\n * @defaultValue `\"button\"`\n */\n role?: HTMLAttributes<HTMLLIElement>[\"role\"];\n\n /**\n * @defaultValue `disabled ? -1 : 0`\n */\n tabIndex?: number;\n\n /**\n * @see {@link ListItemHeight}\n * @defaultValue `\"auto\"`\n */\n height?: ListItemHeight;\n\n /**\n * @defaultValue `false`\n */\n multiline?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disabled?: boolean;\n\n /**\n * Note: This does nothing if the `disabled` prop is not enabled.\n *\n * @defaultValue `false`\n * @since 2.4.3\n */\n disabledOpacity?: boolean;\n\n /**\n * Set this to `false` if the list item should not gain the interaction\n * states: hover, focus, press, etc. This is kind of like being disabled\n * without the disabled styles being applied.\n *\n * @defaultValue `role === \"presentation\"`\n */\n presentational?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * The `ListItem` is used to create a clickable/focusable button within a\n * `List` and removes the normal `<li>` styles.\n *\n * @example Simple Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 1\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * secondaryText={<span>Some <strong>additional</strong> content.</span>}\n * >\n * Item 2\n * </ListItem>\n * </List>\n * );\n * );\n * }\n * ```\n *\n * @example Applying Addons Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import FavoriteIcon from \"@react-md/material-icons/FavoriteIcon\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem leftAddon={<FavoriteIcon />}>\n * Item 1\n * </ListItem>\n * <ListItem rightAddon={<FavoriteIcon />}>\n * Item 2\n * </ListItem>\n * <ListItem\n * leftAddon={<FavoriteIcon />}\n * rightAddon={<img alt=\"\" src=\"/some-image.png\" />}\n * rightAddonType=\"media\"\n * >\n * Item 3\n * </ListItem>\n * </List>\n * );\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/list | List Demos}\n */\nexport const ListItem = forwardRef<HTMLLIElement, ListItemProps>(\n function ListItem(props, ref) {\n const {\n className,\n textProps,\n textClassName,\n secondaryTextClassName,\n primaryText,\n secondaryText,\n secondaryTextProps,\n disableTextChildren = false,\n height: propHeight,\n leftAddon,\n leftAddonType,\n leftAddonPosition,\n leftAddonClassName,\n leftAddonForceWrap,\n rightAddon,\n rightAddonType,\n rightAddonPosition,\n rightAddonClassName,\n rightAddonForceWrap,\n disableLeftAddonSpacing,\n disableLeftAddonCenteredMedia,\n disableRightAddonCenteredMedia,\n multiline = false,\n disabled = false,\n disableRipple,\n disabledOpacity = false,\n role = \"button\",\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n tabIndex: propTabIndex,\n children: propChildren,\n presentational = role === \"presentation\",\n ...remaining\n } = props;\n\n let tabIndex = propTabIndex;\n if (!presentational && typeof tabIndex === \"undefined\") {\n tabIndex = disabled ? -1 : 0;\n }\n\n const { pressedClassName, ripples, handlers } = 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: disabled || presentational,\n });\n const children = useHigherContrastChildren(\n propChildren,\n !disableTextChildren\n );\n\n const height = getListItemHeight({\n height: propHeight,\n leftAddon,\n leftAddonType,\n rightAddon,\n rightAddonType,\n secondaryText,\n });\n\n return (\n <li\n {...remaining}\n {...handlers}\n aria-disabled={disabled || undefined}\n ref={ref}\n role={role}\n tabIndex={tabIndex}\n className={listItem({\n className,\n height,\n disabled,\n disabledOpacity,\n multiline,\n clickable: !presentational,\n pressedClassName,\n })}\n >\n <ListItemChildren\n multiline={multiline}\n textClassName={textClassName}\n secondaryTextClassName={secondaryTextClassName}\n disableTextChildren={disableTextChildren}\n primaryText={primaryText}\n textProps={textProps}\n secondaryText={secondaryText}\n secondaryTextProps={secondaryTextProps}\n leftAddon={leftAddon}\n leftAddonType={leftAddonType}\n leftAddonPosition={leftAddonPosition}\n leftAddonClassName={leftAddonClassName}\n leftAddonForceWrap={leftAddonForceWrap}\n rightAddon={rightAddon}\n rightAddonType={rightAddonType}\n rightAddonPosition={rightAddonPosition}\n rightAddonClassName={rightAddonClassName}\n rightAddonForceWrap={rightAddonForceWrap}\n disableLeftAddonSpacing={disableLeftAddonSpacing}\n disableLeftAddonCenteredMedia={disableLeftAddonCenteredMedia}\n disableRightAddonCenteredMedia={disableRightAddonCenteredMedia}\n >\n {children}\n </ListItemChildren>\n {ripples}\n </li>\n );\n }\n);\n"],"names":["forwardRef","useElementInteraction","useHigherContrastChildren","ListItemChildren","getListItemHeight","listItem","ListItem","props","ref","className","textProps","textClassName","secondaryTextClassName","primaryText","secondaryText","secondaryTextProps","disableTextChildren","height","propHeight","leftAddon","leftAddonType","leftAddonPosition","leftAddonClassName","leftAddonForceWrap","rightAddon","rightAddonType","rightAddonPosition","rightAddonClassName","rightAddonForceWrap","disableLeftAddonSpacing","disableLeftAddonCenteredMedia","disableRightAddonCenteredMedia","multiline","disabled","disableRipple","disabledOpacity","role","onBlur","onClick","onKeyDown","onKeyUp","onMouseDown","onMouseUp","onMouseLeave","onDragStart","onTouchStart","onTouchEnd","onTouchMove","tabIndex","propTabIndex","children","propChildren","presentational","remaining","pressedClassName","ripples","handlers","mode","undefined","li","aria-disabled","clickable"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,QAAQ,QAAQ;AAGxD,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,QAAQ,QAAQ,sBAAsB;AAwE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEC,GACD,OAAO,MAAMC,yBAAWN,WACtB,SAASM,SAASC,KAAK,EAAEC,GAAG;IAC1B,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,aAAa,EACbC,sBAAsB,EACtBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,sBAAsB,KAAK,EAC3BC,QAAQC,UAAU,EAClBC,SAAS,EACTC,aAAa,EACbC,iBAAiB,EACjBC,kBAAkB,EAClBC,kBAAkB,EAClBC,UAAU,EACVC,cAAc,EACdC,kBAAkB,EAClBC,mBAAmB,EACnBC,mBAAmB,EACnBC,uBAAuB,EACvBC,6BAA6B,EAC7BC,8BAA8B,EAC9BC,YAAY,KAAK,EACjBC,WAAW,KAAK,EAChBC,aAAa,EACbC,kBAAkB,KAAK,EACvBC,OAAO,QAAQ,EACfC,MAAM,EACNC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,UAAU,EACVC,WAAW,EACXC,UAAUC,YAAY,EACtBC,UAAUC,YAAY,EACtBC,iBAAiBhB,SAAS,cAAc,EACxC,GAAGiB,WACJ,GAAG9C;IAEJ,IAAIyC,WAAWC;IACf,IAAI,CAACG,kBAAkB,OAAOJ,aAAa,aAAa;QACtDA,WAAWf,WAAW,CAAC,IAAI;IAC7B;IAEA,MAAM,EAAEqB,gBAAgB,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGvD,sBAAsB;QACpEwD,MAAMvB,gBAAgB,SAASwB;QAC/BrB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAd,UAAUA,YAAYmB;IACxB;IACA,MAAMF,WAAWhD,0BACfiD,cACA,CAACnC;IAGH,MAAMC,SAASb,kBAAkB;QAC/Ba,QAAQC;QACRC;QACAC;QACAI;QACAC;QACAX;IACF;IAEA,qBACE,MAAC6C;QACE,GAAGN,SAAS;QACZ,GAAGG,QAAQ;QACZI,iBAAe3B,YAAYyB;QAC3BlD,KAAKA;QACL4B,MAAMA;QACNY,UAAUA;QACVvC,WAAWJ,SAAS;YAClBI;YACAQ;YACAgB;YACAE;YACAH;YACA6B,WAAW,CAACT;YACZE;QACF;;0BAEA,KAACnD;gBACC6B,WAAWA;gBACXrB,eAAeA;gBACfC,wBAAwBA;gBACxBI,qBAAqBA;gBACrBH,aAAaA;gBACbH,WAAWA;gBACXI,eAAeA;gBACfC,oBAAoBA;gBACpBI,WAAWA;gBACXC,eAAeA;gBACfC,mBAAmBA;gBACnBC,oBAAoBA;gBACpBC,oBAAoBA;gBACpBC,YAAYA;gBACZC,gBAAgBA;gBAChBC,oBAAoBA;gBACpBC,qBAAqBA;gBACrBC,qBAAqBA;gBACrBC,yBAAyBA;gBACzBC,+BAA+BA;gBAC/BC,gCAAgCA;0BAE/BmB;;YAEFK;;;AAGP,GACA"}
1
+ {"version":3,"sources":["../../src/list/ListItem.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { useHigherContrastChildren } from \"../interaction/useHigherContrastChildren.js\";\nimport { ListItemChildren } from \"./ListItemChildren.js\";\nimport { getListItemHeight } from \"./getListItemHeight.js\";\nimport { listItem } from \"./listItemStyles.js\";\nimport { type ListItemChildrenProps, type ListItemHeight } from \"./types.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-list-item-keyline\"?: string | number;\n \"--rmd-list-item-padding-h\"?: string | number;\n \"--rmd-list-item-padding-v\"?: string | number;\n \"--rmd-list-item-height\"?: string | number;\n \"--rmd-list-item-medium-height\"?: string | number;\n \"--rmd-list-item-large-height\"?: string | number;\n \"--rmd-list-item-extra-large-height\"?: string | number;\n \"--rmd-list-item-multiline-clamp\"?: string | number;\n \"--rmd-list-item-multiline-height\"?: string | number;\n \"--rmd-list-item-media-size\"?: string | number;\n \"--rmd-list-item-media-spacing\"?: string | number;\n \"--rmd-list-item-text-multiline-height\"?: string | number;\n }\n}\n\n/**\n * @since 6.0.0 Renamed `threeLines` to `multiline` since it can\n * support more than three lines of text.\n */\nexport interface ListItemProps\n extends HTMLAttributes<HTMLLIElement>,\n ListItemChildrenProps,\n ComponentWithRippleProps {\n /**\n * @defaultValue `\"button\"`\n */\n role?: HTMLAttributes<HTMLLIElement>[\"role\"];\n\n /**\n * @defaultValue `disabled ? -1 : 0`\n */\n tabIndex?: number;\n\n /**\n * @see {@link ListItemHeight}\n * @defaultValue `\"auto\"`\n */\n height?: ListItemHeight;\n\n /**\n * @defaultValue `false`\n */\n multiline?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disabled?: boolean;\n\n /**\n * Note: This does nothing if the `disabled` prop is not enabled.\n *\n * @defaultValue `false`\n * @since 2.4.3\n */\n disabledOpacity?: boolean;\n\n /**\n * Set this to `false` if the list item should not gain the interaction\n * states: hover, focus, press, etc. This is kind of like being disabled\n * without the disabled styles being applied.\n *\n * @defaultValue `role === \"presentation\"`\n */\n presentational?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * The `ListItem` is used to create a clickable/focusable button within a\n * `List` and removes the normal `<li>` styles.\n *\n * @example Simple Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * >\n * Item 1\n * </ListItem>\n * <ListItem\n * onClick={() => {\n * // do something\n * }}\n * secondaryText={<span>Some <strong>additional</strong> content.</span>}\n * >\n * Item 2\n * </ListItem>\n * </List>\n * );\n * );\n * }\n * ```\n *\n * @example Applying Addons Example\n * ```tsx\n * import { List } from \"@react-md/core/list/List\";\n * import { ListItem } from \"@react-md/core/list/ListItem\";\n * import FavoriteIcon from \"@react-md/material-icons/FavoriteIcon\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <List>\n * <ListItem leftAddon={<FavoriteIcon />}>\n * Item 1\n * </ListItem>\n * <ListItem rightAddon={<FavoriteIcon />}>\n * Item 2\n * </ListItem>\n * <ListItem\n * leftAddon={<FavoriteIcon />}\n * rightAddon={<img alt=\"\" src=\"/some-image.png\" />}\n * rightAddonType=\"media\"\n * >\n * Item 3\n * </ListItem>\n * </List>\n * );\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/list | List Demos}\n */\nexport const ListItem = forwardRef<HTMLLIElement, ListItemProps>(\n function ListItem(props, ref) {\n const {\n className,\n textProps,\n textClassName,\n secondaryTextClassName,\n primaryText,\n secondaryText,\n secondaryTextProps,\n disableTextChildren = false,\n height: propHeight,\n leftAddon,\n leftAddonType,\n leftAddonPosition,\n leftAddonClassName,\n leftAddonForceWrap,\n rightAddon,\n rightAddonType,\n rightAddonPosition,\n rightAddonClassName,\n rightAddonForceWrap,\n disableLeftAddonSpacing,\n disableLeftAddonCenteredMedia,\n disableRightAddonCenteredMedia,\n multiline = false,\n disabled = false,\n disableRipple,\n disabledOpacity = false,\n role = \"button\",\n onBlur,\n onClick,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseUp,\n onMouseLeave,\n onDragStart,\n onTouchStart,\n onTouchEnd,\n onTouchMove,\n tabIndex: propTabIndex,\n children: propChildren,\n presentational = role === \"presentation\",\n ...remaining\n } = props;\n\n let tabIndex = propTabIndex;\n if (!presentational && typeof tabIndex === \"undefined\") {\n tabIndex = disabled ? -1 : 0;\n }\n\n const { pressedClassName, ripples, handlers } = 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: disabled || presentational,\n });\n const children = useHigherContrastChildren(\n propChildren,\n !disableTextChildren\n );\n\n const height = getListItemHeight({\n height: propHeight,\n leftAddon,\n leftAddonType,\n rightAddon,\n rightAddonType,\n secondaryText,\n });\n\n return (\n <li\n {...remaining}\n {...handlers}\n aria-disabled={disabled || undefined}\n ref={ref}\n role={role}\n tabIndex={tabIndex}\n className={listItem({\n className,\n height,\n disabled,\n disabledOpacity,\n multiline,\n clickable: !presentational,\n pressedClassName,\n })}\n >\n <ListItemChildren\n multiline={multiline}\n textClassName={textClassName}\n secondaryTextClassName={secondaryTextClassName}\n disableTextChildren={disableTextChildren}\n primaryText={primaryText}\n textProps={textProps}\n secondaryText={secondaryText}\n secondaryTextProps={secondaryTextProps}\n leftAddon={leftAddon}\n leftAddonType={leftAddonType}\n leftAddonPosition={leftAddonPosition}\n leftAddonClassName={leftAddonClassName}\n leftAddonForceWrap={leftAddonForceWrap}\n rightAddon={rightAddon}\n rightAddonType={rightAddonType}\n rightAddonPosition={rightAddonPosition}\n rightAddonClassName={rightAddonClassName}\n rightAddonForceWrap={rightAddonForceWrap}\n disableLeftAddonSpacing={disableLeftAddonSpacing}\n disableLeftAddonCenteredMedia={disableLeftAddonCenteredMedia}\n disableRightAddonCenteredMedia={disableRightAddonCenteredMedia}\n >\n {children}\n </ListItemChildren>\n {ripples}\n </li>\n );\n }\n);\n"],"names":["forwardRef","useElementInteraction","useHigherContrastChildren","ListItemChildren","getListItemHeight","listItem","ListItem","props","ref","className","textProps","textClassName","secondaryTextClassName","primaryText","secondaryText","secondaryTextProps","disableTextChildren","height","propHeight","leftAddon","leftAddonType","leftAddonPosition","leftAddonClassName","leftAddonForceWrap","rightAddon","rightAddonType","rightAddonPosition","rightAddonClassName","rightAddonForceWrap","disableLeftAddonSpacing","disableLeftAddonCenteredMedia","disableRightAddonCenteredMedia","multiline","disabled","disableRipple","disabledOpacity","role","onBlur","onClick","onKeyDown","onKeyUp","onMouseDown","onMouseUp","onMouseLeave","onDragStart","onTouchStart","onTouchEnd","onTouchMove","tabIndex","propTabIndex","children","propChildren","presentational","remaining","pressedClassName","ripples","handlers","mode","undefined","li","aria-disabled","clickable"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,QAAQ,QAAQ;AAGxD,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,yBAAyB,QAAQ,8CAA8C;AACxF,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,QAAQ,QAAQ,sBAAsB;AAwE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEC,GACD,OAAO,MAAMC,yBAAWN,WACtB,SAASM,SAASC,KAAK,EAAEC,GAAG;IAC1B,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,aAAa,EACbC,sBAAsB,EACtBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,sBAAsB,KAAK,EAC3BC,QAAQC,UAAU,EAClBC,SAAS,EACTC,aAAa,EACbC,iBAAiB,EACjBC,kBAAkB,EAClBC,kBAAkB,EAClBC,UAAU,EACVC,cAAc,EACdC,kBAAkB,EAClBC,mBAAmB,EACnBC,mBAAmB,EACnBC,uBAAuB,EACvBC,6BAA6B,EAC7BC,8BAA8B,EAC9BC,YAAY,KAAK,EACjBC,WAAW,KAAK,EAChBC,aAAa,EACbC,kBAAkB,KAAK,EACvBC,OAAO,QAAQ,EACfC,MAAM,EACNC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,UAAU,EACVC,WAAW,EACXC,UAAUC,YAAY,EACtBC,UAAUC,YAAY,EACtBC,iBAAiBhB,SAAS,cAAc,EACxC,GAAGiB,WACJ,GAAG9C;IAEJ,IAAIyC,WAAWC;IACf,IAAI,CAACG,kBAAkB,OAAOJ,aAAa,aAAa;QACtDA,WAAWf,WAAW,CAAC,IAAI;IAC7B;IAEA,MAAM,EAAEqB,gBAAgB,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGvD,sBAAsB;QACpEwD,MAAMvB,gBAAgB,SAASwB;QAC/BrB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAd,UAAUA,YAAYmB;IACxB;IACA,MAAMF,WAAWhD,0BACfiD,cACA,CAACnC;IAGH,MAAMC,SAASb,kBAAkB;QAC/Ba,QAAQC;QACRC;QACAC;QACAI;QACAC;QACAX;IACF;IAEA,qBACE,MAAC6C;QACE,GAAGN,SAAS;QACZ,GAAGG,QAAQ;QACZI,iBAAe3B,YAAYyB;QAC3BlD,KAAKA;QACL4B,MAAMA;QACNY,UAAUA;QACVvC,WAAWJ,SAAS;YAClBI;YACAQ;YACAgB;YACAE;YACAH;YACA6B,WAAW,CAACT;YACZE;QACF;;0BAEA,KAACnD;gBACC6B,WAAWA;gBACXrB,eAAeA;gBACfC,wBAAwBA;gBACxBI,qBAAqBA;gBACrBH,aAAaA;gBACbH,WAAWA;gBACXI,eAAeA;gBACfC,oBAAoBA;gBACpBI,WAAWA;gBACXC,eAAeA;gBACfC,mBAAmBA;gBACnBC,oBAAoBA;gBACpBC,oBAAoBA;gBACpBC,YAAYA;gBACZC,gBAAgBA;gBAChBC,oBAAoBA;gBACpBC,qBAAqBA;gBACrBC,qBAAqBA;gBACrBC,yBAAyBA;gBACzBC,+BAA+BA;gBAC/BC,gCAAgCA;0BAE/BmB;;YAEFK;;;AAGP,GACA"}
@@ -33,6 +33,6 @@ import { type ListItemChildrenProps } from "./types.js";
33
33
  * }
34
34
  * ```
35
35
  *
36
- * @see {@link https://next.react-md.dev/components/list | List Demos}
36
+ * @see {@link https://react-md.dev/components/list | List Demos}
37
37
  */
38
38
  export declare function ListItemChildren(props: ListItemChildrenProps): ReactElement;
@@ -34,7 +34,7 @@ import { ListItemText } from "./ListItemText.js";
34
34
  * }
35
35
  * ```
36
36
  *
37
- * @see {@link https://next.react-md.dev/components/list | List Demos}
37
+ * @see {@link https://react-md.dev/components/list | List Demos}
38
38
  */ export function ListItemChildren(props) {
39
39
  const { multiline, textProps, textClassName, secondaryTextClassName, disableTextChildren, primaryText, secondaryText, secondaryTextProps, leftAddon, leftAddonType = "icon", leftAddonPosition = "middle", leftAddonClassName, leftAddonForceWrap, disableLeftAddonSpacing, disableLeftAddonCenteredMedia, rightAddon, rightAddonType = "icon", rightAddonPosition = "middle", rightAddonClassName, rightAddonForceWrap, disableRightAddonCenteredMedia, children: propChildren } = props;
40
40
  const stringifiedChildren = typeof propChildren === "number" ? `${propChildren}` : propChildren;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/list/ListItemChildren.tsx"],"sourcesContent":["import { type ReactElement } from \"react\";\n\nimport { ListItemAddon } from \"./ListItemAddon.js\";\nimport { ListItemText } from \"./ListItemText.js\";\nimport { type ListItemChildrenProps } from \"./types.js\";\n\n/**\n * The `ListItemChildren` component is used to create a styled list item that\n * can have optional addons to the left or right of the children in the form of\n * icons, avatars, or media. The `children` can be replaced by the `primaryText`\n * and `secondaryText` props to create stacked text spanning two or more lines\n * with the default behavior of using `line-clamp` at three lines.\n *\n * Note: This will return a `React.Fragment` of the children and does not wrap\n * in a DOM node for styling. The parent component should normally have\n * `display: flex` for the styling to work.\n *\n * @example Custom Component Usage\n * ```tsx\n * import { ListItemChildren } from \"@react-md/core/list/ListItemChildren\";\n * import FavoriteIcon from \"@react-md/material-icons/FavoriteIcon\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <div style={{ display: \"flex\" }}>\n * <ListItemChildren\n * leftAddon={<FavoriteIcon />}\n * rightAddon={<img alt=\"\" src=\"/some-image.png\" />}\n * rightAddonType=\"media\"\n * secondaryText={<span>Some <strong>additional</strong> content.</span>}\n * >\n * Content\n * </ListItemChildren>\n * </div>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/list | List Demos}\n */\nexport function ListItemChildren(props: ListItemChildrenProps): ReactElement {\n const {\n multiline,\n textProps,\n textClassName,\n secondaryTextClassName,\n disableTextChildren,\n primaryText,\n secondaryText,\n secondaryTextProps,\n leftAddon,\n leftAddonType = \"icon\",\n leftAddonPosition = \"middle\",\n leftAddonClassName,\n leftAddonForceWrap,\n disableLeftAddonSpacing,\n disableLeftAddonCenteredMedia,\n rightAddon,\n rightAddonType = \"icon\",\n rightAddonPosition = \"middle\",\n rightAddonClassName,\n rightAddonForceWrap,\n disableRightAddonCenteredMedia,\n children: propChildren,\n } = props;\n\n const stringifiedChildren =\n typeof propChildren === \"number\" ? `${propChildren}` : propChildren;\n\n let children = stringifiedChildren;\n if (primaryText || secondaryText || !disableTextChildren) {\n children = (\n <ListItemText\n {...textProps}\n className={textClassName}\n secondaryText={secondaryText}\n secondaryTextProps={secondaryTextProps}\n secondaryTextClamped={multiline}\n secondaryTextClassName={secondaryTextClassName}\n >\n {(!disableTextChildren && children) || primaryText}\n </ListItemText>\n );\n }\n\n children = (\n <ListItemAddon\n addon={leftAddon}\n type={leftAddonType}\n position={leftAddonPosition}\n className={leftAddonClassName}\n forceAddonWrap={leftAddonForceWrap}\n disableBeforeSpacing={disableLeftAddonSpacing}\n disableCenteredMedia={disableLeftAddonCenteredMedia}\n >\n {children}\n </ListItemAddon>\n );\n children = (\n <ListItemAddon\n addon={rightAddon}\n addonAfter\n type={rightAddonType}\n position={rightAddonPosition}\n className={rightAddonClassName}\n forceAddonWrap={rightAddonForceWrap}\n disableCenteredMedia={disableRightAddonCenteredMedia}\n >\n {children}\n </ListItemAddon>\n );\n\n return (\n <>\n {children}\n {(primaryText && stringifiedChildren) || null}\n </>\n );\n}\n"],"names":["ListItemAddon","ListItemText","ListItemChildren","props","multiline","textProps","textClassName","secondaryTextClassName","disableTextChildren","primaryText","secondaryText","secondaryTextProps","leftAddon","leftAddonType","leftAddonPosition","leftAddonClassName","leftAddonForceWrap","disableLeftAddonSpacing","disableLeftAddonCenteredMedia","rightAddon","rightAddonType","rightAddonPosition","rightAddonClassName","rightAddonForceWrap","disableRightAddonCenteredMedia","children","propChildren","stringifiedChildren","className","secondaryTextClamped","addon","type","position","forceAddonWrap","disableBeforeSpacing","disableCenteredMedia","addonAfter"],"mappings":";AAEA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,YAAY,QAAQ,oBAAoB;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCC,GACD,OAAO,SAASC,iBAAiBC,KAA4B;IAC3D,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,aAAa,EACbC,sBAAsB,EACtBC,mBAAmB,EACnBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,SAAS,EACTC,gBAAgB,MAAM,EACtBC,oBAAoB,QAAQ,EAC5BC,kBAAkB,EAClBC,kBAAkB,EAClBC,uBAAuB,EACvBC,6BAA6B,EAC7BC,UAAU,EACVC,iBAAiB,MAAM,EACvBC,qBAAqB,QAAQ,EAC7BC,mBAAmB,EACnBC,mBAAmB,EACnBC,8BAA8B,EAC9BC,UAAUC,YAAY,EACvB,GAAGvB;IAEJ,MAAMwB,sBACJ,OAAOD,iBAAiB,WAAW,GAAGA,cAAc,GAAGA;IAEzD,IAAID,WAAWE;IACf,IAAIlB,eAAeC,iBAAiB,CAACF,qBAAqB;QACxDiB,yBACE,KAACxB;YACE,GAAGI,SAAS;YACbuB,WAAWtB;YACXI,eAAeA;YACfC,oBAAoBA;YACpBkB,sBAAsBzB;YACtBG,wBAAwBA;sBAEvB,AAAC,CAACC,uBAAuBiB,YAAahB;;IAG7C;IAEAgB,yBACE,KAACzB;QACC8B,OAAOlB;QACPmB,MAAMlB;QACNmB,UAAUlB;QACVc,WAAWb;QACXkB,gBAAgBjB;QAChBkB,sBAAsBjB;QACtBkB,sBAAsBjB;kBAErBO;;IAGLA,yBACE,KAACzB;QACC8B,OAAOX;QACPiB,UAAU;QACVL,MAAMX;QACNY,UAAUX;QACVO,WAAWN;QACXW,gBAAgBV;QAChBY,sBAAsBX;kBAErBC;;IAIL,qBACE;;YACGA;YACChB,eAAekB,uBAAwB;;;AAG/C"}
1
+ {"version":3,"sources":["../../src/list/ListItemChildren.tsx"],"sourcesContent":["import { type ReactElement } from \"react\";\n\nimport { ListItemAddon } from \"./ListItemAddon.js\";\nimport { ListItemText } from \"./ListItemText.js\";\nimport { type ListItemChildrenProps } from \"./types.js\";\n\n/**\n * The `ListItemChildren` component is used to create a styled list item that\n * can have optional addons to the left or right of the children in the form of\n * icons, avatars, or media. The `children` can be replaced by the `primaryText`\n * and `secondaryText` props to create stacked text spanning two or more lines\n * with the default behavior of using `line-clamp` at three lines.\n *\n * Note: This will return a `React.Fragment` of the children and does not wrap\n * in a DOM node for styling. The parent component should normally have\n * `display: flex` for the styling to work.\n *\n * @example Custom Component Usage\n * ```tsx\n * import { ListItemChildren } from \"@react-md/core/list/ListItemChildren\";\n * import FavoriteIcon from \"@react-md/material-icons/FavoriteIcon\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * return (\n * <div style={{ display: \"flex\" }}>\n * <ListItemChildren\n * leftAddon={<FavoriteIcon />}\n * rightAddon={<img alt=\"\" src=\"/some-image.png\" />}\n * rightAddonType=\"media\"\n * secondaryText={<span>Some <strong>additional</strong> content.</span>}\n * >\n * Content\n * </ListItemChildren>\n * </div>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/list | List Demos}\n */\nexport function ListItemChildren(props: ListItemChildrenProps): ReactElement {\n const {\n multiline,\n textProps,\n textClassName,\n secondaryTextClassName,\n disableTextChildren,\n primaryText,\n secondaryText,\n secondaryTextProps,\n leftAddon,\n leftAddonType = \"icon\",\n leftAddonPosition = \"middle\",\n leftAddonClassName,\n leftAddonForceWrap,\n disableLeftAddonSpacing,\n disableLeftAddonCenteredMedia,\n rightAddon,\n rightAddonType = \"icon\",\n rightAddonPosition = \"middle\",\n rightAddonClassName,\n rightAddonForceWrap,\n disableRightAddonCenteredMedia,\n children: propChildren,\n } = props;\n\n const stringifiedChildren =\n typeof propChildren === \"number\" ? `${propChildren}` : propChildren;\n\n let children = stringifiedChildren;\n if (primaryText || secondaryText || !disableTextChildren) {\n children = (\n <ListItemText\n {...textProps}\n className={textClassName}\n secondaryText={secondaryText}\n secondaryTextProps={secondaryTextProps}\n secondaryTextClamped={multiline}\n secondaryTextClassName={secondaryTextClassName}\n >\n {(!disableTextChildren && children) || primaryText}\n </ListItemText>\n );\n }\n\n children = (\n <ListItemAddon\n addon={leftAddon}\n type={leftAddonType}\n position={leftAddonPosition}\n className={leftAddonClassName}\n forceAddonWrap={leftAddonForceWrap}\n disableBeforeSpacing={disableLeftAddonSpacing}\n disableCenteredMedia={disableLeftAddonCenteredMedia}\n >\n {children}\n </ListItemAddon>\n );\n children = (\n <ListItemAddon\n addon={rightAddon}\n addonAfter\n type={rightAddonType}\n position={rightAddonPosition}\n className={rightAddonClassName}\n forceAddonWrap={rightAddonForceWrap}\n disableCenteredMedia={disableRightAddonCenteredMedia}\n >\n {children}\n </ListItemAddon>\n );\n\n return (\n <>\n {children}\n {(primaryText && stringifiedChildren) || null}\n </>\n );\n}\n"],"names":["ListItemAddon","ListItemText","ListItemChildren","props","multiline","textProps","textClassName","secondaryTextClassName","disableTextChildren","primaryText","secondaryText","secondaryTextProps","leftAddon","leftAddonType","leftAddonPosition","leftAddonClassName","leftAddonForceWrap","disableLeftAddonSpacing","disableLeftAddonCenteredMedia","rightAddon","rightAddonType","rightAddonPosition","rightAddonClassName","rightAddonForceWrap","disableRightAddonCenteredMedia","children","propChildren","stringifiedChildren","className","secondaryTextClamped","addon","type","position","forceAddonWrap","disableBeforeSpacing","disableCenteredMedia","addonAfter"],"mappings":";AAEA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,YAAY,QAAQ,oBAAoB;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCC,GACD,OAAO,SAASC,iBAAiBC,KAA4B;IAC3D,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,aAAa,EACbC,sBAAsB,EACtBC,mBAAmB,EACnBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,SAAS,EACTC,gBAAgB,MAAM,EACtBC,oBAAoB,QAAQ,EAC5BC,kBAAkB,EAClBC,kBAAkB,EAClBC,uBAAuB,EACvBC,6BAA6B,EAC7BC,UAAU,EACVC,iBAAiB,MAAM,EACvBC,qBAAqB,QAAQ,EAC7BC,mBAAmB,EACnBC,mBAAmB,EACnBC,8BAA8B,EAC9BC,UAAUC,YAAY,EACvB,GAAGvB;IAEJ,MAAMwB,sBACJ,OAAOD,iBAAiB,WAAW,GAAGA,cAAc,GAAGA;IAEzD,IAAID,WAAWE;IACf,IAAIlB,eAAeC,iBAAiB,CAACF,qBAAqB;QACxDiB,yBACE,KAACxB;YACE,GAAGI,SAAS;YACbuB,WAAWtB;YACXI,eAAeA;YACfC,oBAAoBA;YACpBkB,sBAAsBzB;YACtBG,wBAAwBA;sBAEvB,AAAC,CAACC,uBAAuBiB,YAAahB;;IAG7C;IAEAgB,yBACE,KAACzB;QACC8B,OAAOlB;QACPmB,MAAMlB;QACNmB,UAAUlB;QACVc,WAAWb;QACXkB,gBAAgBjB;QAChBkB,sBAAsBjB;QACtBkB,sBAAsBjB;kBAErBO;;IAGLA,yBACE,KAACzB;QACC8B,OAAOX;QACPiB,UAAU;QACVL,MAAMX;QACNY,UAAUX;QACVO,WAAWN;QACXW,gBAAgBV;QAChBY,sBAAsBX;kBAErBC;;IAIL,qBACE;;YACGA;YACChB,eAAekB,uBAAwB;;;AAG/C"}
@@ -60,6 +60,6 @@ export interface ListItemLinkProps extends AnchorHTMLAttributes<HTMLAnchorElemen
60
60
  * }
61
61
  * ```
62
62
  *
63
- * @see {@link https://next.react-md.dev/components/list | List Demos}
63
+ * @see {@link https://react-md.dev/components/list | List Demos}
64
64
  */
65
65
  export declare const ListItemLink: import("react").ForwardRefExoticComponent<ListItemLinkProps & import("react").RefAttributes<HTMLAnchorElement>>;
@@ -40,7 +40,7 @@ import { listItem } from "./listItemStyles.js";
40
40
  * }
41
41
  * ```
42
42
  *
43
- * @see {@link https://next.react-md.dev/components/list | List Demos}
43
+ * @see {@link https://react-md.dev/components/list | List Demos}
44
44
  */ export const ListItemLink = /*#__PURE__*/ forwardRef(function ListItemLink(props, ref) {
45
45
  const { as: Link = "a", to, href, className, liProps, textProps, textClassName, secondaryTextClassName, primaryText, secondaryText, secondaryTextProps, disableTextChildren = false, height: propHeight, leftAddon, leftAddonType = "icon", leftAddonPosition = "middle", leftAddonClassName, leftAddonForceWrap, rightAddon, rightAddonType = "icon", rightAddonPosition = "middle", rightAddonClassName, rightAddonForceWrap, disableLeftAddonCenteredMedia = false, disableRightAddonCenteredMedia = false, multiline = false, disabled = false, disabledOpacity = false, onBlur, onClick, onKeyDown, onKeyUp, onMouseDown, onMouseUp, onMouseLeave, onDragStart, onTouchStart, onTouchEnd, onTouchMove, role, tabIndex = disabled || role === "menuitem" ? -1 : undefined, children: propChildren, disableRipple, ...remaining } = props;
46
46
  const { pressedClassName, ripples, handlers } = useElementInteraction({