@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
@@ -11,7 +11,7 @@ import { navItemContent } from "./navItemStyles.js";
11
11
  /**
12
12
  * **Client Component**
13
13
  *
14
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
14
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
15
15
  * @since 6.0.0
16
16
  */ export const NavItemButton = /*#__PURE__*/ forwardRef(function NavItemButton(props, ref) {
17
17
  const { className, collapsed, icon, iconRotatorProps, disableIconRotator, children, beforeAddon, afterAddon, spanProps, onBlur, onContextMenu, onFocus, onMouseEnter, onMouseLeave, onTouchEnd, onTouchStart, tooltipOptions, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/NavItemButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { type MouseEventHandler, type ReactNode, forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { cssUtils } from \"../cssUtils.js\";\nimport { IconRotator, type IconRotatorBaseProps } from \"../icon/IconRotator.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { Tooltip } from \"../tooltip/Tooltip.js\";\nimport { useTooltip } from \"../tooltip/useTooltip.js\";\nimport { navItemContent } from \"./navItemStyles.js\";\nimport { type NavItemContentProps } from \"./types.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemButtonRotatorProps {\n /** @defaultValue `getIcon(\"dropdown\")` */\n icon?: ReactNode;\n iconRotatorProps?: Omit<IconRotatorBaseProps, \"rotated\">;\n disableIconRotator?: boolean;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemButtonProps\n extends Omit<ButtonProps, \"children\">,\n NavItemButtonRotatorProps,\n NavItemContentProps {\n onClick: MouseEventHandler<HTMLButtonElement>;\n collapsed: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavItemButton = forwardRef<HTMLButtonElement, NavItemButtonProps>(\n function NavItemButton(props, ref) {\n const {\n className,\n collapsed,\n icon,\n iconRotatorProps,\n disableIconRotator,\n children,\n beforeAddon,\n afterAddon,\n spanProps,\n onBlur,\n onContextMenu,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchEnd,\n onTouchStart,\n tooltipOptions,\n ...remaining\n } = props;\n\n const { elementProps, tooltipProps, overflowRef } = useTooltip({\n overflowOnly: true,\n defaultPosition: \"right\",\n ...tooltipOptions,\n onBlur,\n onContextMenu,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchEnd,\n onTouchStart,\n });\n\n return (\n <>\n <Button\n aria-expanded={!collapsed}\n {...remaining}\n {...elementProps}\n ref={ref}\n className={navItemContent({ className })}\n >\n {beforeAddon}\n <span\n {...spanProps}\n ref={overflowRef}\n className={cssUtils({\n className: spanProps?.className,\n textOverflow: \"ellipsis\",\n })}\n >\n {children}\n </span>\n {afterAddon}\n {!disableIconRotator && (\n <IconRotator {...iconRotatorProps} rotated={!collapsed}>\n {getIcon(\"dropdown\", icon)}\n </IconRotator>\n )}\n </Button>\n <Tooltip {...tooltipProps}>{children}</Tooltip>\n </>\n );\n }\n);\n"],"names":["forwardRef","Button","cssUtils","IconRotator","getIcon","Tooltip","useTooltip","navItemContent","NavItemButton","props","ref","className","collapsed","icon","iconRotatorProps","disableIconRotator","children","beforeAddon","afterAddon","spanProps","onBlur","onContextMenu","onFocus","onMouseEnter","onMouseLeave","onTouchEnd","onTouchStart","tooltipOptions","remaining","elementProps","tooltipProps","overflowRef","overflowOnly","defaultPosition","aria-expanded","span","textOverflow","rotated"],"mappings":"AAAA;;AAEA,SAAiDA,UAAU,QAAQ,QAAQ;AAE3E,SAASC,MAAM,QAA0B,sBAAsB;AAC/D,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,SAASC,WAAW,QAAmC,yBAAyB;AAChF,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,UAAU,QAAQ,2BAA2B;AACtD,SAASC,cAAc,QAAQ,qBAAqB;AAwBpD;;;;;CAKC,GACD,OAAO,MAAMC,8BAAgBR,WAC3B,SAASQ,cAAcC,KAAK,EAAEC,GAAG;IAC/B,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,gBAAgB,EAChBC,kBAAkB,EAClBC,QAAQ,EACRC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,aAAa,EACbC,OAAO,EACPC,YAAY,EACZC,YAAY,EACZC,UAAU,EACVC,YAAY,EACZC,cAAc,EACd,GAAGC,WACJ,GAAGnB;IAEJ,MAAM,EAAEoB,YAAY,EAAEC,YAAY,EAAEC,WAAW,EAAE,GAAGzB,WAAW;QAC7D0B,cAAc;QACdC,iBAAiB;QACjB,GAAGN,cAAc;QACjBP;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE;;0BACE,MAACzB;gBACCiC,iBAAe,CAACtB;gBACf,GAAGgB,SAAS;gBACZ,GAAGC,YAAY;gBAChBnB,KAAKA;gBACLC,WAAWJ,eAAe;oBAAEI;gBAAU;;oBAErCM;kCACD,KAACkB;wBACE,GAAGhB,SAAS;wBACbT,KAAKqB;wBACLpB,WAAWT,SAAS;4BAClBS,WAAWQ,WAAWR;4BACtByB,cAAc;wBAChB;kCAECpB;;oBAEFE;oBACA,CAACH,oCACA,KAACZ;wBAAa,GAAGW,gBAAgB;wBAAEuB,SAAS,CAACzB;kCAC1CR,QAAQ,YAAYS;;;;0BAI3B,KAACR;gBAAS,GAAGyB,YAAY;0BAAGd;;;;AAGlC,GACA"}
1
+ {"version":3,"sources":["../../src/navigation/NavItemButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { type MouseEventHandler, type ReactNode, forwardRef } from \"react\";\n\nimport { Button, type ButtonProps } from \"../button/Button.js\";\nimport { cssUtils } from \"../cssUtils.js\";\nimport { IconRotator, type IconRotatorBaseProps } from \"../icon/IconRotator.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { Tooltip } from \"../tooltip/Tooltip.js\";\nimport { useTooltip } from \"../tooltip/useTooltip.js\";\nimport { navItemContent } from \"./navItemStyles.js\";\nimport { type NavItemContentProps } from \"./types.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemButtonRotatorProps {\n /** @defaultValue `getIcon(\"dropdown\")` */\n icon?: ReactNode;\n iconRotatorProps?: Omit<IconRotatorBaseProps, \"rotated\">;\n disableIconRotator?: boolean;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemButtonProps\n extends Omit<ButtonProps, \"children\">,\n NavItemButtonRotatorProps,\n NavItemContentProps {\n onClick: MouseEventHandler<HTMLButtonElement>;\n collapsed: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavItemButton = forwardRef<HTMLButtonElement, NavItemButtonProps>(\n function NavItemButton(props, ref) {\n const {\n className,\n collapsed,\n icon,\n iconRotatorProps,\n disableIconRotator,\n children,\n beforeAddon,\n afterAddon,\n spanProps,\n onBlur,\n onContextMenu,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchEnd,\n onTouchStart,\n tooltipOptions,\n ...remaining\n } = props;\n\n const { elementProps, tooltipProps, overflowRef } = useTooltip({\n overflowOnly: true,\n defaultPosition: \"right\",\n ...tooltipOptions,\n onBlur,\n onContextMenu,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchEnd,\n onTouchStart,\n });\n\n return (\n <>\n <Button\n aria-expanded={!collapsed}\n {...remaining}\n {...elementProps}\n ref={ref}\n className={navItemContent({ className })}\n >\n {beforeAddon}\n <span\n {...spanProps}\n ref={overflowRef}\n className={cssUtils({\n className: spanProps?.className,\n textOverflow: \"ellipsis\",\n })}\n >\n {children}\n </span>\n {afterAddon}\n {!disableIconRotator && (\n <IconRotator {...iconRotatorProps} rotated={!collapsed}>\n {getIcon(\"dropdown\", icon)}\n </IconRotator>\n )}\n </Button>\n <Tooltip {...tooltipProps}>{children}</Tooltip>\n </>\n );\n }\n);\n"],"names":["forwardRef","Button","cssUtils","IconRotator","getIcon","Tooltip","useTooltip","navItemContent","NavItemButton","props","ref","className","collapsed","icon","iconRotatorProps","disableIconRotator","children","beforeAddon","afterAddon","spanProps","onBlur","onContextMenu","onFocus","onMouseEnter","onMouseLeave","onTouchEnd","onTouchStart","tooltipOptions","remaining","elementProps","tooltipProps","overflowRef","overflowOnly","defaultPosition","aria-expanded","span","textOverflow","rotated"],"mappings":"AAAA;;AAEA,SAAiDA,UAAU,QAAQ,QAAQ;AAE3E,SAASC,MAAM,QAA0B,sBAAsB;AAC/D,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,SAASC,WAAW,QAAmC,yBAAyB;AAChF,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,UAAU,QAAQ,2BAA2B;AACtD,SAASC,cAAc,QAAQ,qBAAqB;AAwBpD;;;;;CAKC,GACD,OAAO,MAAMC,8BAAgBR,WAC3B,SAASQ,cAAcC,KAAK,EAAEC,GAAG;IAC/B,MAAM,EACJC,SAAS,EACTC,SAAS,EACTC,IAAI,EACJC,gBAAgB,EAChBC,kBAAkB,EAClBC,QAAQ,EACRC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,aAAa,EACbC,OAAO,EACPC,YAAY,EACZC,YAAY,EACZC,UAAU,EACVC,YAAY,EACZC,cAAc,EACd,GAAGC,WACJ,GAAGnB;IAEJ,MAAM,EAAEoB,YAAY,EAAEC,YAAY,EAAEC,WAAW,EAAE,GAAGzB,WAAW;QAC7D0B,cAAc;QACdC,iBAAiB;QACjB,GAAGN,cAAc;QACjBP;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE;;0BACE,MAACzB;gBACCiC,iBAAe,CAACtB;gBACf,GAAGgB,SAAS;gBACZ,GAAGC,YAAY;gBAChBnB,KAAKA;gBACLC,WAAWJ,eAAe;oBAAEI;gBAAU;;oBAErCM;kCACD,KAACkB;wBACE,GAAGhB,SAAS;wBACbT,KAAKqB;wBACLpB,WAAWT,SAAS;4BAClBS,WAAWQ,WAAWR;4BACtByB,cAAc;wBAChB;kCAECpB;;oBAEFE;oBACA,CAACH,oCACA,KAACZ;wBAAa,GAAGW,gBAAgB;wBAAEuB,SAAS,CAACzB;kCAC1CR,QAAQ,YAAYS;;;;0BAI3B,KAACR;gBAAS,GAAGyB,YAAY;0BAAGd;;;;AAGlC,GACA"}
@@ -36,7 +36,7 @@ export interface NavItemLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorEl
36
36
  /**
37
37
  * **Client Component**
38
38
  *
39
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
39
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
40
40
  * @since 6.0.0
41
41
  */
42
42
  export declare const NavItemLink: import("react").ForwardRefExoticComponent<NavItemLinkProps & import("react").RefAttributes<HTMLAnchorElement>>;
@@ -11,7 +11,7 @@ import { navItemLink } from "./navItemStyles.js";
11
11
  /**
12
12
  * **Client Component**
13
13
  *
14
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
14
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
15
15
  * @since 6.0.0
16
16
  */ export const NavItemLink = /*#__PURE__*/ forwardRef(function NavItemLink(props, propRef) {
17
17
  const { as: Component = "a", href, active, activeClassName, beforeAddon, afterAddon, className, children, liProps, spanProps, disabled = !href, onClick, onBlur, onDragStart, onKeyDown, onKeyUp, onMouseDown, onMouseLeave, onMouseUp, onTouchMove, onTouchEnd, onTouchStart, tooltipOptions, disableRipple, disableScrollIntoView, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/NavItemLink.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type AnchorHTMLAttributes,\n type LiHTMLAttributes,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport { cssUtils } from \"../cssUtils.js\";\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { Tooltip } from \"../tooltip/Tooltip.js\";\nimport { useTooltip } from \"../tooltip/useTooltip.js\";\nimport { type PropsWithRef } from \"../types.js\";\nimport { useEnsuredRef } from \"../useEnsuredRef.js\";\nimport { NavItem } from \"./NavItem.js\";\nimport { navItemLink } from \"./navItemStyles.js\";\nimport {\n type NavItemContentProps,\n type NavigationLinkComponent,\n} from \"./types.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemLinkProps\n extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, \"children\">,\n NavItemContentProps,\n ComponentWithRippleProps {\n /** @defaultValue `\"a\"` */\n as?: NavigationLinkComponent;\n href: string;\n\n /**\n * Any additional props to provide the wrapping `<li>` element such as\n * `style`, `className`, and `ref`.\n */\n liProps?: PropsWithRef<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>;\n\n /**\n * Set this to `true` if the link matches the current `pathname`. This will\n * enable `aria-current=\"true\"` and apply active styling.\n */\n active: boolean;\n\n /** @defaultValue `cssUtils({ fontWeight: \"bold\" })` */\n activeClassName?: string;\n\n /** @defaultValue `!to && !href` */\n disabled?: boolean;\n\n /**\n * Set this to `true` to prevent this item from scrolling into view when it\n * becomes active. It is generally recommended to keep this `false` unless a\n * custom implementation has been added so that when the temporary navigation\n * will show the active route.\n *\n * @defaultValue `false`\n */\n disableScrollIntoView?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavItemLink = forwardRef<HTMLAnchorElement, NavItemLinkProps>(\n function NavItemLink(props, propRef) {\n const {\n as: Component = \"a\",\n href,\n active,\n activeClassName,\n beforeAddon,\n afterAddon,\n className,\n children,\n liProps,\n spanProps,\n disabled = !href,\n onClick,\n onBlur,\n onDragStart,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchMove,\n onTouchEnd,\n onTouchStart,\n tooltipOptions,\n disableRipple,\n disableScrollIntoView,\n ...remaining\n } = props;\n\n const [linkRef, linkRefCallback] = useEnsuredRef(propRef);\n const { handlers, ripples } = useElementInteraction({\n mode: disableRipple ? \"none\" : undefined,\n disabled,\n onClick,\n onBlur,\n onDragStart,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchMove,\n onTouchEnd,\n onTouchStart,\n });\n\n const { elementProps, tooltipProps, overflowRef } = useTooltip({\n overflowOnly: true,\n defaultPosition: \"right\",\n ...tooltipOptions,\n ...handlers,\n });\n useEffect(() => {\n const link = linkRef.current;\n if (\n !active ||\n !link ||\n disableScrollIntoView ||\n document.activeElement === link ||\n // do not scroll into view if the collapse transition is occurring since\n // it makes it animate weirdly\n link.closest(\".rmd-collapse--enter\")\n ) {\n return;\n }\n\n link.scrollIntoView({ block: \"center\" });\n }, [active, disableScrollIntoView, linkRef]);\n\n return (\n <NavItem {...liProps}>\n <Component\n aria-current={active ? \"page\" : undefined}\n {...remaining}\n {...handlers}\n {...elementProps}\n ref={linkRefCallback}\n href={href}\n className={navItemLink({\n active,\n activeClassName,\n className,\n })}\n >\n {beforeAddon}\n <span\n {...spanProps}\n ref={overflowRef}\n className={cssUtils({\n className: spanProps?.className,\n textOverflow: \"ellipsis\",\n })}\n >\n {children}\n </span>\n {afterAddon}\n {ripples}\n </Component>\n <Tooltip {...tooltipProps}>{children}</Tooltip>\n </NavItem>\n );\n }\n);\n"],"names":["forwardRef","useEffect","cssUtils","useElementInteraction","Tooltip","useTooltip","useEnsuredRef","NavItem","navItemLink","NavItemLink","props","propRef","as","Component","href","active","activeClassName","beforeAddon","afterAddon","className","children","liProps","spanProps","disabled","onClick","onBlur","onDragStart","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchMove","onTouchEnd","onTouchStart","tooltipOptions","disableRipple","disableScrollIntoView","remaining","linkRef","linkRefCallback","handlers","ripples","mode","undefined","elementProps","tooltipProps","overflowRef","overflowOnly","defaultPosition","link","current","document","activeElement","closest","scrollIntoView","block","aria-current","ref","span","textOverflow"],"mappings":"AAAA;;AAEA,SAGEA,UAAU,EACVC,SAAS,QACJ,QAAQ;AAEf,SAASC,QAAQ,QAAQ,iBAAiB;AAE1C,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,UAAU,QAAQ,2BAA2B;AAEtD,SAASC,aAAa,QAAQ,sBAAsB;AACpD,SAASC,OAAO,QAAQ,eAAe;AACvC,SAASC,WAAW,QAAQ,qBAAqB;AA8CjD;;;;;CAKC,GACD,OAAO,MAAMC,4BAAcT,WACzB,SAASS,YAAYC,KAAK,EAAEC,OAAO;IACjC,MAAM,EACJC,IAAIC,YAAY,GAAG,EACnBC,IAAI,EACJC,MAAM,EACNC,eAAe,EACfC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,QAAQ,EACRC,OAAO,EACPC,SAAS,EACTC,WAAW,CAACT,IAAI,EAChBU,OAAO,EACPC,MAAM,EACNC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,WAAW,EACXC,UAAU,EACVC,YAAY,EACZC,cAAc,EACdC,aAAa,EACbC,qBAAqB,EACrB,GAAGC,WACJ,GAAG5B;IAEJ,MAAM,CAAC6B,SAASC,gBAAgB,GAAGlC,cAAcK;IACjD,MAAM,EAAE8B,QAAQ,EAAEC,OAAO,EAAE,GAAGvC,sBAAsB;QAClDwC,MAAMP,gBAAgB,SAASQ;QAC/BrB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,MAAM,EAAEW,YAAY,EAAEC,YAAY,EAAEC,WAAW,EAAE,GAAG1C,WAAW;QAC7D2C,cAAc;QACdC,iBAAiB;QACjB,GAAGd,cAAc;QACjB,GAAGM,QAAQ;IACb;IACAxC,UAAU;QACR,MAAMiD,OAAOX,QAAQY,OAAO;QAC5B,IACE,CAACpC,UACD,CAACmC,QACDb,yBACAe,SAASC,aAAa,KAAKH,QAC3B,wEAAwE;QACxE,8BAA8B;QAC9BA,KAAKI,OAAO,CAAC,yBACb;YACA;QACF;QAEAJ,KAAKK,cAAc,CAAC;YAAEC,OAAO;QAAS;IACxC,GAAG;QAACzC;QAAQsB;QAAuBE;KAAQ;IAE3C,qBACE,MAAChC;QAAS,GAAGc,OAAO;;0BAClB,MAACR;gBACC4C,gBAAc1C,SAAS,SAAS6B;gBAC/B,GAAGN,SAAS;gBACZ,GAAGG,QAAQ;gBACX,GAAGI,YAAY;gBAChBa,KAAKlB;gBACL1B,MAAMA;gBACNK,WAAWX,YAAY;oBACrBO;oBACAC;oBACAG;gBACF;;oBAECF;kCACD,KAAC0C;wBACE,GAAGrC,SAAS;wBACboC,KAAKX;wBACL5B,WAAWjB,SAAS;4BAClBiB,WAAWG,WAAWH;4BACtByC,cAAc;wBAChB;kCAECxC;;oBAEFF;oBACAwB;;;0BAEH,KAACtC;gBAAS,GAAG0C,YAAY;0BAAG1B;;;;AAGlC,GACA"}
1
+ {"version":3,"sources":["../../src/navigation/NavItemLink.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type AnchorHTMLAttributes,\n type LiHTMLAttributes,\n forwardRef,\n useEffect,\n} from \"react\";\n\nimport { cssUtils } from \"../cssUtils.js\";\nimport { type ComponentWithRippleProps } from \"../interaction/types.js\";\nimport { useElementInteraction } from \"../interaction/useElementInteraction.js\";\nimport { Tooltip } from \"../tooltip/Tooltip.js\";\nimport { useTooltip } from \"../tooltip/useTooltip.js\";\nimport { type PropsWithRef } from \"../types.js\";\nimport { useEnsuredRef } from \"../useEnsuredRef.js\";\nimport { NavItem } from \"./NavItem.js\";\nimport { navItemLink } from \"./navItemStyles.js\";\nimport {\n type NavItemContentProps,\n type NavigationLinkComponent,\n} from \"./types.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavItemLinkProps\n extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, \"children\">,\n NavItemContentProps,\n ComponentWithRippleProps {\n /** @defaultValue `\"a\"` */\n as?: NavigationLinkComponent;\n href: string;\n\n /**\n * Any additional props to provide the wrapping `<li>` element such as\n * `style`, `className`, and `ref`.\n */\n liProps?: PropsWithRef<LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>;\n\n /**\n * Set this to `true` if the link matches the current `pathname`. This will\n * enable `aria-current=\"true\"` and apply active styling.\n */\n active: boolean;\n\n /** @defaultValue `cssUtils({ fontWeight: \"bold\" })` */\n activeClassName?: string;\n\n /** @defaultValue `!to && !href` */\n disabled?: boolean;\n\n /**\n * Set this to `true` to prevent this item from scrolling into view when it\n * becomes active. It is generally recommended to keep this `false` unless a\n * custom implementation has been added so that when the temporary navigation\n * will show the active route.\n *\n * @defaultValue `false`\n */\n disableScrollIntoView?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavItemLink = forwardRef<HTMLAnchorElement, NavItemLinkProps>(\n function NavItemLink(props, propRef) {\n const {\n as: Component = \"a\",\n href,\n active,\n activeClassName,\n beforeAddon,\n afterAddon,\n className,\n children,\n liProps,\n spanProps,\n disabled = !href,\n onClick,\n onBlur,\n onDragStart,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchMove,\n onTouchEnd,\n onTouchStart,\n tooltipOptions,\n disableRipple,\n disableScrollIntoView,\n ...remaining\n } = props;\n\n const [linkRef, linkRefCallback] = useEnsuredRef(propRef);\n const { handlers, ripples } = useElementInteraction({\n mode: disableRipple ? \"none\" : undefined,\n disabled,\n onClick,\n onBlur,\n onDragStart,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onMouseLeave,\n onMouseUp,\n onTouchMove,\n onTouchEnd,\n onTouchStart,\n });\n\n const { elementProps, tooltipProps, overflowRef } = useTooltip({\n overflowOnly: true,\n defaultPosition: \"right\",\n ...tooltipOptions,\n ...handlers,\n });\n useEffect(() => {\n const link = linkRef.current;\n if (\n !active ||\n !link ||\n disableScrollIntoView ||\n document.activeElement === link ||\n // do not scroll into view if the collapse transition is occurring since\n // it makes it animate weirdly\n link.closest(\".rmd-collapse--enter\")\n ) {\n return;\n }\n\n link.scrollIntoView({ block: \"center\" });\n }, [active, disableScrollIntoView, linkRef]);\n\n return (\n <NavItem {...liProps}>\n <Component\n aria-current={active ? \"page\" : undefined}\n {...remaining}\n {...handlers}\n {...elementProps}\n ref={linkRefCallback}\n href={href}\n className={navItemLink({\n active,\n activeClassName,\n className,\n })}\n >\n {beforeAddon}\n <span\n {...spanProps}\n ref={overflowRef}\n className={cssUtils({\n className: spanProps?.className,\n textOverflow: \"ellipsis\",\n })}\n >\n {children}\n </span>\n {afterAddon}\n {ripples}\n </Component>\n <Tooltip {...tooltipProps}>{children}</Tooltip>\n </NavItem>\n );\n }\n);\n"],"names":["forwardRef","useEffect","cssUtils","useElementInteraction","Tooltip","useTooltip","useEnsuredRef","NavItem","navItemLink","NavItemLink","props","propRef","as","Component","href","active","activeClassName","beforeAddon","afterAddon","className","children","liProps","spanProps","disabled","onClick","onBlur","onDragStart","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchMove","onTouchEnd","onTouchStart","tooltipOptions","disableRipple","disableScrollIntoView","remaining","linkRef","linkRefCallback","handlers","ripples","mode","undefined","elementProps","tooltipProps","overflowRef","overflowOnly","defaultPosition","link","current","document","activeElement","closest","scrollIntoView","block","aria-current","ref","span","textOverflow"],"mappings":"AAAA;;AAEA,SAGEA,UAAU,EACVC,SAAS,QACJ,QAAQ;AAEf,SAASC,QAAQ,QAAQ,iBAAiB;AAE1C,SAASC,qBAAqB,QAAQ,0CAA0C;AAChF,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,UAAU,QAAQ,2BAA2B;AAEtD,SAASC,aAAa,QAAQ,sBAAsB;AACpD,SAASC,OAAO,QAAQ,eAAe;AACvC,SAASC,WAAW,QAAQ,qBAAqB;AA8CjD;;;;;CAKC,GACD,OAAO,MAAMC,4BAAcT,WACzB,SAASS,YAAYC,KAAK,EAAEC,OAAO;IACjC,MAAM,EACJC,IAAIC,YAAY,GAAG,EACnBC,IAAI,EACJC,MAAM,EACNC,eAAe,EACfC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,QAAQ,EACRC,OAAO,EACPC,SAAS,EACTC,WAAW,CAACT,IAAI,EAChBU,OAAO,EACPC,MAAM,EACNC,WAAW,EACXC,SAAS,EACTC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,SAAS,EACTC,WAAW,EACXC,UAAU,EACVC,YAAY,EACZC,cAAc,EACdC,aAAa,EACbC,qBAAqB,EACrB,GAAGC,WACJ,GAAG5B;IAEJ,MAAM,CAAC6B,SAASC,gBAAgB,GAAGlC,cAAcK;IACjD,MAAM,EAAE8B,QAAQ,EAAEC,OAAO,EAAE,GAAGvC,sBAAsB;QAClDwC,MAAMP,gBAAgB,SAASQ;QAC/BrB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,MAAM,EAAEW,YAAY,EAAEC,YAAY,EAAEC,WAAW,EAAE,GAAG1C,WAAW;QAC7D2C,cAAc;QACdC,iBAAiB;QACjB,GAAGd,cAAc;QACjB,GAAGM,QAAQ;IACb;IACAxC,UAAU;QACR,MAAMiD,OAAOX,QAAQY,OAAO;QAC5B,IACE,CAACpC,UACD,CAACmC,QACDb,yBACAe,SAASC,aAAa,KAAKH,QAC3B,wEAAwE;QACxE,8BAA8B;QAC9BA,KAAKI,OAAO,CAAC,yBACb;YACA;QACF;QAEAJ,KAAKK,cAAc,CAAC;YAAEC,OAAO;QAAS;IACxC,GAAG;QAACzC;QAAQsB;QAAuBE;KAAQ;IAE3C,qBACE,MAAChC;QAAS,GAAGc,OAAO;;0BAClB,MAACR;gBACC4C,gBAAc1C,SAAS,SAAS6B;gBAC/B,GAAGN,SAAS;gBACZ,GAAGG,QAAQ;gBACX,GAAGI,YAAY;gBAChBa,KAAKlB;gBACL1B,MAAMA;gBACNK,WAAWX,YAAY;oBACrBO;oBACAC;oBACAG;gBACF;;oBAECF;kCACD,KAAC0C;wBACE,GAAGrC,SAAS;wBACboC,KAAKX;wBACL5B,WAAWjB,SAAS;4BAClBiB,WAAWG,WAAWH;4BACtByC,cAAc;wBAChB;kCAECxC;;oBAEFF;oBACAwB;;;0BAEH,KAACtC;gBAAS,GAAG0C,YAAY;0BAAG1B;;;;AAGlC,GACA"}
@@ -7,7 +7,7 @@ export type NavSubheaderProps = ListSubheaderProps;
7
7
  * A simple wrapper around the {@link ListSubheader} that updates the padding
8
8
  * based on the current navigation item depth to match the other items.
9
9
  *
10
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
10
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
11
11
  * @since 6.0.0
12
12
  */
13
13
  export declare const NavSubheader: import("react").ForwardRefExoticComponent<ListSubheaderProps & import("react").RefAttributes<HTMLLIElement>>;
@@ -6,7 +6,7 @@ import { navItem } from "./navItemStyles.js";
6
6
  * A simple wrapper around the {@link ListSubheader} that updates the padding
7
7
  * based on the current navigation item depth to match the other items.
8
8
  *
9
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
9
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
10
10
  * @since 6.0.0
11
11
  */ export const NavSubheader = /*#__PURE__*/ forwardRef(function NavSubheader(props, ref) {
12
12
  const { textProps, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/NavSubheader.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport {\n ListSubheader,\n type ListSubheaderProps,\n} from \"../list/ListSubheader.js\";\nimport { navItem } from \"./navItemStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport type NavSubheaderProps = ListSubheaderProps;\n\n/**\n * A simple wrapper around the {@link ListSubheader} that updates the padding\n * based on the current navigation item depth to match the other items.\n *\n * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavSubheader = forwardRef<HTMLLIElement, NavSubheaderProps>(\n function NavSubheader(props, ref) {\n const { textProps, ...remaining } = props;\n\n return (\n <ListSubheader\n {...remaining}\n ref={ref}\n textProps={{\n ...textProps,\n className: navItem({ className: textProps?.className }),\n }}\n />\n );\n }\n);\n"],"names":["forwardRef","ListSubheader","navItem","NavSubheader","props","ref","textProps","remaining","className"],"mappings":";AAAA,SAASA,UAAU,QAAQ,QAAQ;AAEnC,SACEC,aAAa,QAER,2BAA2B;AAClC,SAASC,OAAO,QAAQ,qBAAqB;AAO7C;;;;;;CAMC,GACD,OAAO,MAAMC,6BAAeH,WAC1B,SAASG,aAAaC,KAAK,EAAEC,GAAG;IAC9B,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAW,GAAGH;IAEpC,qBACE,KAACH;QACE,GAAGM,SAAS;QACbF,KAAKA;QACLC,WAAW;YACT,GAAGA,SAAS;YACZE,WAAWN,QAAQ;gBAAEM,WAAWF,WAAWE;YAAU;QACvD;;AAGN,GACA"}
1
+ {"version":3,"sources":["../../src/navigation/NavSubheader.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport {\n ListSubheader,\n type ListSubheaderProps,\n} from \"../list/ListSubheader.js\";\nimport { navItem } from \"./navItemStyles.js\";\n\n/**\n * @since 6.0.0\n */\nexport type NavSubheaderProps = ListSubheaderProps;\n\n/**\n * A simple wrapper around the {@link ListSubheader} that updates the padding\n * based on the current navigation item depth to match the other items.\n *\n * @see {@link https://react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport const NavSubheader = forwardRef<HTMLLIElement, NavSubheaderProps>(\n function NavSubheader(props, ref) {\n const { textProps, ...remaining } = props;\n\n return (\n <ListSubheader\n {...remaining}\n ref={ref}\n textProps={{\n ...textProps,\n className: navItem({ className: textProps?.className }),\n }}\n />\n );\n }\n);\n"],"names":["forwardRef","ListSubheader","navItem","NavSubheader","props","ref","textProps","remaining","className"],"mappings":";AAAA,SAASA,UAAU,QAAQ,QAAQ;AAEnC,SACEC,aAAa,QAER,2BAA2B;AAClC,SAASC,OAAO,QAAQ,qBAAqB;AAO7C;;;;;;CAMC,GACD,OAAO,MAAMC,6BAAeH,WAC1B,SAASG,aAAaC,KAAK,EAAEC,GAAG;IAC9B,MAAM,EAAEC,SAAS,EAAE,GAAGC,WAAW,GAAGH;IAEpC,qBACE,KAACH;QACE,GAAGM,SAAS;QACbF,KAAKA;QACLC,WAAW;YACT,GAAGA,SAAS;YACZE,WAAWN,QAAQ;gBAAEM,WAAWF,WAAWE;YAAU;QACvD;;AAGN,GACA"}
@@ -69,7 +69,7 @@ export interface NavigationProps<Item extends NavigationItem = NavigationItem, D
69
69
  * }
70
70
  * ```
71
71
  *
72
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
72
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
73
73
  * @since 6.0.0
74
74
  */
75
75
  export declare function Navigation<Item extends NavigationItem, Data extends NavigationRenderData>(props: NavigationProps<Item, Data>): ReactElement;
@@ -71,7 +71,7 @@ import { NavGroup } from "./NavGroup.js";
71
71
  * }
72
72
  * ```
73
73
  *
74
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
74
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
75
75
  * @since 6.0.0
76
76
  */ export function Navigation(props) {
77
77
  const { data, items, render = DefaultNavigationRenderer, getItemKey = getRecursiveNavItemKey, ...remaining } = props;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/Navigation.tsx"],"sourcesContent":["import { type ComponentType, type ReactElement } from \"react\";\n\nimport { type ListProps } from \"../list/List.js\";\nimport {\n type RecursiveItem,\n type RecursiveItemKeyOptions,\n type RenderRecursiveItemsProps,\n RenderRecursively,\n getRecursiveItemKey,\n} from \"../utils/RenderRecursively.js\";\nimport { DefaultNavigationRenderer } from \"./DefaultNavigationRenderer.js\";\nimport { NavGroup } from \"./NavGroup.js\";\nimport { type NavigationItem, type NavigationRenderData } from \"./types.js\";\n\n/**\n * The default implementation for the nav item keys. It will attempt to set the\n * key in the following order:\n * - `href` if it exists and has length\n * - `children` if it's a string and has length\n * - default {@link getRecursiveItemKey} behavior of `${depth}-${index}`\n *\n * @since 6.0.0\n */\nexport function getRecursiveNavItemKey<\n Item extends NavigationItem = NavigationItem,\n>(options: RecursiveItemKeyOptions<Item>): string {\n const { item } = options;\n // if it's a route, try setting the key to the href since they are generally\n // unique\n if (\"href\" in item && item.href) {\n return item.href;\n }\n\n // if children exist in the item (group, route, subheader), try to set that as\n // the key since they are usually unique\n if (\n \"children\" in item &&\n typeof item.children === \"string\" &&\n item.children\n ) {\n return item.children;\n }\n\n // use the default key behavior if all else fails\n return getRecursiveItemKey(options);\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationProps<\n Item extends NavigationItem = NavigationItem,\n Data extends NavigationRenderData = NavigationRenderData,\n> extends Omit<ListProps, \"children\"> {\n data: Data;\n items: readonly RecursiveItem<Item>[];\n\n /** @see {@link DefaultNavigationRenderer} */\n render?: ComponentType<RenderRecursiveItemsProps<Item, Data>>;\n\n /** @see {@link getRecursiveNavItemKey} */\n getItemKey?: (options: RecursiveItemKeyOptions<Item>) => string;\n}\n\n/**\n * **Client Component**\n *\n * The `Navigation` component can be used to create a list of links to\n * different pages within the app and generally used within a `Sheet` or\n * `LayoutNav`.\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Navigation } from \"@react-md/core/navigation/Navigation\";\n * import { type NavigationItem } from \"@react-md/core/navigation/types\";\n * import { useNavigationExpansion } from \"@react-md/core/navigation/useNavigationExpansion\";\n * import { usePathname } from \"next/navigation.js\";\n * import { type ReactElement } from \"react\";\n *\n * import { LinkUnstyled } from \"@/components/LinkUnstyled.jsx\";\n *\n * const items: readonly NavigationItem[] = [\n * {\n * type: \"route\",\n * href: \"/\",\n * children: \"Home\",\n * },\n * {\n * type: \"route\",\n * href: \"/page-1\",\n * children: \"Page 1\",\n * },\n * ];\n *\n * export function MainNavigation(): ReactElement {\n * const pathname = usePathname();\n * const { data } = useNavigationExpansion({\n * pathname,\n * linkComponent: LinkUnstyled,\n * });\n * return (\n * <nav aria-label=\"Navigation\">\n * <Navigation data={data} items={items} />\n * </nav>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport function Navigation<\n Item extends NavigationItem,\n Data extends NavigationRenderData,\n>(props: NavigationProps<Item, Data>): ReactElement {\n const {\n data,\n items,\n render = DefaultNavigationRenderer,\n getItemKey = getRecursiveNavItemKey,\n ...remaining\n } = props;\n\n return (\n <NavGroup depth={0} {...remaining}>\n <RenderRecursively\n data={data}\n items={items}\n render={render}\n getItemKey={getItemKey}\n />\n </NavGroup>\n );\n}\n"],"names":["RenderRecursively","getRecursiveItemKey","DefaultNavigationRenderer","NavGroup","getRecursiveNavItemKey","options","item","href","children","Navigation","props","data","items","render","getItemKey","remaining","depth"],"mappings":";AAGA,SAIEA,iBAAiB,EACjBC,mBAAmB,QACd,gCAAgC;AACvC,SAASC,yBAAyB,QAAQ,iCAAiC;AAC3E,SAASC,QAAQ,QAAQ,gBAAgB;AAGzC;;;;;;;;CAQC,GACD,OAAO,SAASC,uBAEdC,OAAsC;IACtC,MAAM,EAAEC,IAAI,EAAE,GAAGD;IACjB,4EAA4E;IAC5E,SAAS;IACT,IAAI,UAAUC,QAAQA,KAAKC,IAAI,EAAE;QAC/B,OAAOD,KAAKC,IAAI;IAClB;IAEA,8EAA8E;IAC9E,wCAAwC;IACxC,IACE,cAAcD,QACd,OAAOA,KAAKE,QAAQ,KAAK,YACzBF,KAAKE,QAAQ,EACb;QACA,OAAOF,KAAKE,QAAQ;IACtB;IAEA,iDAAiD;IACjD,OAAOP,oBAAoBI;AAC7B;AAmBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDC,GACD,OAAO,SAASI,WAGdC,KAAkC;IAClC,MAAM,EACJC,IAAI,EACJC,KAAK,EACLC,SAASX,yBAAyB,EAClCY,aAAaV,sBAAsB,EACnC,GAAGW,WACJ,GAAGL;IAEJ,qBACE,KAACP;QAASa,OAAO;QAAI,GAAGD,SAAS;kBAC/B,cAAA,KAACf;YACCW,MAAMA;YACNC,OAAOA;YACPC,QAAQA;YACRC,YAAYA;;;AAIpB"}
1
+ {"version":3,"sources":["../../src/navigation/Navigation.tsx"],"sourcesContent":["import { type ComponentType, type ReactElement } from \"react\";\n\nimport { type ListProps } from \"../list/List.js\";\nimport {\n type RecursiveItem,\n type RecursiveItemKeyOptions,\n type RenderRecursiveItemsProps,\n RenderRecursively,\n getRecursiveItemKey,\n} from \"../utils/RenderRecursively.js\";\nimport { DefaultNavigationRenderer } from \"./DefaultNavigationRenderer.js\";\nimport { NavGroup } from \"./NavGroup.js\";\nimport { type NavigationItem, type NavigationRenderData } from \"./types.js\";\n\n/**\n * The default implementation for the nav item keys. It will attempt to set the\n * key in the following order:\n * - `href` if it exists and has length\n * - `children` if it's a string and has length\n * - default {@link getRecursiveItemKey} behavior of `${depth}-${index}`\n *\n * @since 6.0.0\n */\nexport function getRecursiveNavItemKey<\n Item extends NavigationItem = NavigationItem,\n>(options: RecursiveItemKeyOptions<Item>): string {\n const { item } = options;\n // if it's a route, try setting the key to the href since they are generally\n // unique\n if (\"href\" in item && item.href) {\n return item.href;\n }\n\n // if children exist in the item (group, route, subheader), try to set that as\n // the key since they are usually unique\n if (\n \"children\" in item &&\n typeof item.children === \"string\" &&\n item.children\n ) {\n return item.children;\n }\n\n // use the default key behavior if all else fails\n return getRecursiveItemKey(options);\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationProps<\n Item extends NavigationItem = NavigationItem,\n Data extends NavigationRenderData = NavigationRenderData,\n> extends Omit<ListProps, \"children\"> {\n data: Data;\n items: readonly RecursiveItem<Item>[];\n\n /** @see {@link DefaultNavigationRenderer} */\n render?: ComponentType<RenderRecursiveItemsProps<Item, Data>>;\n\n /** @see {@link getRecursiveNavItemKey} */\n getItemKey?: (options: RecursiveItemKeyOptions<Item>) => string;\n}\n\n/**\n * **Client Component**\n *\n * The `Navigation` component can be used to create a list of links to\n * different pages within the app and generally used within a `Sheet` or\n * `LayoutNav`.\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Navigation } from \"@react-md/core/navigation/Navigation\";\n * import { type NavigationItem } from \"@react-md/core/navigation/types\";\n * import { useNavigationExpansion } from \"@react-md/core/navigation/useNavigationExpansion\";\n * import { usePathname } from \"next/navigation.js\";\n * import { type ReactElement } from \"react\";\n *\n * import { LinkUnstyled } from \"@/components/LinkUnstyled.jsx\";\n *\n * const items: readonly NavigationItem[] = [\n * {\n * type: \"route\",\n * href: \"/\",\n * children: \"Home\",\n * },\n * {\n * type: \"route\",\n * href: \"/page-1\",\n * children: \"Page 1\",\n * },\n * ];\n *\n * export function MainNavigation(): ReactElement {\n * const pathname = usePathname();\n * const { data } = useNavigationExpansion({\n * pathname,\n * linkComponent: LinkUnstyled,\n * });\n * return (\n * <nav aria-label=\"Navigation\">\n * <Navigation data={data} items={items} />\n * </nav>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport function Navigation<\n Item extends NavigationItem,\n Data extends NavigationRenderData,\n>(props: NavigationProps<Item, Data>): ReactElement {\n const {\n data,\n items,\n render = DefaultNavigationRenderer,\n getItemKey = getRecursiveNavItemKey,\n ...remaining\n } = props;\n\n return (\n <NavGroup depth={0} {...remaining}>\n <RenderRecursively\n data={data}\n items={items}\n render={render}\n getItemKey={getItemKey}\n />\n </NavGroup>\n );\n}\n"],"names":["RenderRecursively","getRecursiveItemKey","DefaultNavigationRenderer","NavGroup","getRecursiveNavItemKey","options","item","href","children","Navigation","props","data","items","render","getItemKey","remaining","depth"],"mappings":";AAGA,SAIEA,iBAAiB,EACjBC,mBAAmB,QACd,gCAAgC;AACvC,SAASC,yBAAyB,QAAQ,iCAAiC;AAC3E,SAASC,QAAQ,QAAQ,gBAAgB;AAGzC;;;;;;;;CAQC,GACD,OAAO,SAASC,uBAEdC,OAAsC;IACtC,MAAM,EAAEC,IAAI,EAAE,GAAGD;IACjB,4EAA4E;IAC5E,SAAS;IACT,IAAI,UAAUC,QAAQA,KAAKC,IAAI,EAAE;QAC/B,OAAOD,KAAKC,IAAI;IAClB;IAEA,8EAA8E;IAC9E,wCAAwC;IACxC,IACE,cAAcD,QACd,OAAOA,KAAKE,QAAQ,KAAK,YACzBF,KAAKE,QAAQ,EACb;QACA,OAAOF,KAAKE,QAAQ;IACtB;IAEA,iDAAiD;IACjD,OAAOP,oBAAoBI;AAC7B;AAmBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgDC,GACD,OAAO,SAASI,WAGdC,KAAkC;IAClC,MAAM,EACJC,IAAI,EACJC,KAAK,EACLC,SAASX,yBAAyB,EAClCY,aAAaV,sBAAsB,EACnC,GAAGW,WACJ,GAAGL;IAEJ,qBACE,KAACP;QAASa,OAAO;QAAI,GAAGD,SAAS;kBAC/B,cAAA,KAACf;YACCW,MAAMA;YACNC,OAAOA;YACPC,QAAQA;YACRC,YAAYA;;;AAIpB"}
@@ -38,7 +38,7 @@ export interface ActiveHeadingIdOptions {
38
38
  * This is heavily inspired by:
39
39
  * @see https://github.com/mdn/yari/blob/231d6aab8f1c8efe159d268c261446c5b7ae12d9/client/src/document/hooks.ts#L171
40
40
  *
41
- * @see {@link https://next.react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}
41
+ * @see {@link https://react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}
42
42
  * @since 6.0.0
43
43
  */
44
44
  export declare function useActiveHeadingId(options: ActiveHeadingIdOptions): string;
@@ -65,7 +65,7 @@ import { parseCssLengthUnit } from "../utils/parseCssLengthUnit.js";
65
65
  * This is heavily inspired by:
66
66
  * @see https://github.com/mdn/yari/blob/231d6aab8f1c8efe159d268c261446c5b7ae12d9/client/src/document/hooks.ts#L171
67
67
  *
68
- * @see {@link https://next.react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}
68
+ * @see {@link https://react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}
69
69
  * @since 6.0.0
70
70
  */ export function useActiveHeadingId(options) {
71
71
  const { headings, threshold = DEFAULT_ACTIVE_HEADING_THRESHOLD, getRootMargin = DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN, defaultActiveId = headings[0]?.id ?? "", scrollBottomThreshold = 0.8 } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/useActiveHeadingId.ts"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useRef, useState } from \"react\";\n\nimport { type UseStateInitializer } from \"../types.js\";\nimport {\n type IntersectionObserverRootMargin,\n type IntersectionObserverThreshold,\n useIntersectionObserver,\n} from \"../useIntersectionObserver.js\";\nimport { parseCssLengthUnit } from \"../utils/parseCssLengthUnit.js\";\nimport { type HeadingReferenceWithChildren } from \"./types.js\";\n\n/**\n * @defaultValue `[0.0, 1.0]`\n * @since 6.0.0\n */\nexport const DEFAULT_ACTIVE_HEADING_THRESHOLD: IntersectionObserverThreshold = [\n 0.0, 1.0,\n];\n\n/**\n * ```tsx\n * const headerHeightVar = window\n * .getComputedStyle(document.documentElement)\n * .getPropertyValue(\"--rmd-layout-header-height\");\n * const headerHeight = parseCssLengthUnit({\n * value: headerHeightVar || \"3.5rem\",\n * });\n\n * return `-${headerHeight}px 0px 0px 0px`;\n * ```\n * @since 6.0.0\n */\nexport const DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN = (): string => {\n const headerHeightVar = window\n .getComputedStyle(document.documentElement)\n .getPropertyValue(\"--rmd-layout-header-height\");\n const headerHeight = parseCssLengthUnit({\n value: headerHeightVar || \"3.5rem\",\n });\n\n return `-${headerHeight}px 0px 0px 0px`;\n};\n\n/**\n * @internal\n * @since 6.0.0\n */\nfunction getHeadingElements(\n items: readonly HeadingReferenceWithChildren[]\n): readonly HTMLElement[] {\n const headings: HTMLElement[] = [];\n items.forEach((item) => {\n const heading = document.getElementById(item.id);\n if (heading) {\n headings.push(heading);\n }\n\n if (item.items) {\n headings.push(...getHeadingElements(item.items));\n }\n });\n\n return headings;\n}\n\n/**\n * @internal\n * @since 6.0.0\n */\nfunction getLastHeadingId(\n items: readonly HeadingReferenceWithChildren[]\n): string {\n const last = items.at(-1);\n if (!last) {\n return \"\";\n }\n\n if (last.items) {\n return getLastHeadingId(last.items);\n }\n\n return last.id;\n}\n\n/**\n * @internal\n * @since 6.0.0\n */\nconst isScrolledNearPageBottom = (threshold: number): boolean =>\n window.scrollY >= document.documentElement.scrollHeight * threshold;\n\n/**\n * @since 6.0.0\n */\nexport interface ActiveHeadingIdOptions {\n headings: readonly HeadingReferenceWithChildren[];\n\n /** @see {@link DEFAULT_ACTIVE_HEADING_THRESHOLD} */\n threshold?: IntersectionObserverThreshold;\n\n /** @see {@link DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN} */\n getRootMargin?: () => IntersectionObserverRootMargin;\n\n /** @defaultValue `headings[0]?.id ?? \"\"` */\n defaultActiveId?: UseStateInitializer<string>;\n\n /** @defaultValue `0.8` */\n scrollBottomThreshold?: number;\n}\n\n/**\n * This is heavily inspired by:\n * @see https://github.com/mdn/yari/blob/231d6aab8f1c8efe159d268c261446c5b7ae12d9/client/src/document/hooks.ts#L171\n *\n * @see {@link https://next.react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}\n * @since 6.0.0\n */\nexport function useActiveHeadingId(options: ActiveHeadingIdOptions): string {\n const {\n headings,\n threshold = DEFAULT_ACTIVE_HEADING_THRESHOLD,\n getRootMargin = DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN,\n defaultActiveId = headings[0]?.id ?? \"\",\n scrollBottomThreshold = 0.8,\n } = options;\n const elements = useRef<Map<string, boolean>>();\n const isFirstRender = useRef(true);\n const [activeHeadingId, setActiveHeadingId] = useState(defaultActiveId);\n useIntersectionObserver({\n threshold,\n getRootMargin,\n getTargets: useCallback(() => {\n const headingElements = getHeadingElements(headings);\n const lookup = new Map<string, boolean>();\n headingElements.forEach((heading) => {\n lookup.set(heading.id, false);\n });\n elements.current = lookup;\n\n return headingElements;\n }, [headings]),\n onUpdate: useCallback(\n (entries) => {\n const lookup = elements.current;\n if (!lookup) {\n return;\n }\n\n entries.forEach((entry) => {\n lookup.set(entry.target.id, entry.isIntersecting);\n });\n\n // get the first visible/intersecting item and set it\n let foundId = [...lookup.entries()].find(\n ([_id, isIntersecting]) => isIntersecting\n )?.[0];\n if (\n !foundId &&\n isFirstRender.current &&\n isScrolledNearPageBottom(scrollBottomThreshold)\n ) {\n foundId = getLastHeadingId(headings);\n }\n\n isFirstRender.current = false;\n\n // if there isn't a found id, it might be a really large section where\n // another heading isn't visible, so maintain the previous one\n if (foundId) {\n setActiveHeadingId(foundId);\n }\n },\n [headings, scrollBottomThreshold]\n ),\n });\n\n return activeHeadingId;\n}\n"],"names":["useCallback","useRef","useState","useIntersectionObserver","parseCssLengthUnit","DEFAULT_ACTIVE_HEADING_THRESHOLD","DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN","headerHeightVar","window","getComputedStyle","document","documentElement","getPropertyValue","headerHeight","value","getHeadingElements","items","headings","forEach","item","heading","getElementById","id","push","getLastHeadingId","last","at","isScrolledNearPageBottom","threshold","scrollY","scrollHeight","useActiveHeadingId","options","getRootMargin","defaultActiveId","scrollBottomThreshold","elements","isFirstRender","activeHeadingId","setActiveHeadingId","getTargets","headingElements","lookup","Map","set","current","onUpdate","entries","entry","target","isIntersecting","foundId","find","_id"],"mappings":"AAAA;AAEA,SAASA,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AAGtD,SAGEC,uBAAuB,QAClB,gCAAgC;AACvC,SAASC,kBAAkB,QAAQ,iCAAiC;AAGpE;;;CAGC,GACD,OAAO,MAAMC,mCAAkE;IAC7E;IAAK;CACN,CAAC;AAEF;;;;;;;;;;;;CAYC,GACD,OAAO,MAAMC,yCAAyC;IACpD,MAAMC,kBAAkBC,OACrBC,gBAAgB,CAACC,SAASC,eAAe,EACzCC,gBAAgB,CAAC;IACpB,MAAMC,eAAeT,mBAAmB;QACtCU,OAAOP,mBAAmB;IAC5B;IAEA,OAAO,CAAC,CAAC,EAAEM,aAAa,cAAc,CAAC;AACzC,EAAE;AAEF;;;CAGC,GACD,SAASE,mBACPC,KAA8C;IAE9C,MAAMC,WAA0B,EAAE;IAClCD,MAAME,OAAO,CAAC,CAACC;QACb,MAAMC,UAAUV,SAASW,cAAc,CAACF,KAAKG,EAAE;QAC/C,IAAIF,SAAS;YACXH,SAASM,IAAI,CAACH;QAChB;QAEA,IAAID,KAAKH,KAAK,EAAE;YACdC,SAASM,IAAI,IAAIR,mBAAmBI,KAAKH,KAAK;QAChD;IACF;IAEA,OAAOC;AACT;AAEA;;;CAGC,GACD,SAASO,iBACPR,KAA8C;IAE9C,MAAMS,OAAOT,MAAMU,EAAE,CAAC,CAAC;IACvB,IAAI,CAACD,MAAM;QACT,OAAO;IACT;IAEA,IAAIA,KAAKT,KAAK,EAAE;QACd,OAAOQ,iBAAiBC,KAAKT,KAAK;IACpC;IAEA,OAAOS,KAAKH,EAAE;AAChB;AAEA;;;CAGC,GACD,MAAMK,2BAA2B,CAACC,YAChCpB,OAAOqB,OAAO,IAAInB,SAASC,eAAe,CAACmB,YAAY,GAAGF;AAqB5D;;;;;;CAMC,GACD,OAAO,SAASG,mBAAmBC,OAA+B;IAChE,MAAM,EACJf,QAAQ,EACRW,YAAYvB,gCAAgC,EAC5C4B,gBAAgB3B,sCAAsC,EACtD4B,kBAAkBjB,QAAQ,CAAC,EAAE,EAAEK,MAAM,EAAE,EACvCa,wBAAwB,GAAG,EAC5B,GAAGH;IACJ,MAAMI,WAAWnC;IACjB,MAAMoC,gBAAgBpC,OAAO;IAC7B,MAAM,CAACqC,iBAAiBC,mBAAmB,GAAGrC,SAASgC;IACvD/B,wBAAwB;QACtByB;QACAK;QACAO,YAAYxC,YAAY;YACtB,MAAMyC,kBAAkB1B,mBAAmBE;YAC3C,MAAMyB,SAAS,IAAIC;YACnBF,gBAAgBvB,OAAO,CAAC,CAACE;gBACvBsB,OAAOE,GAAG,CAACxB,QAAQE,EAAE,EAAE;YACzB;YACAc,SAASS,OAAO,GAAGH;YAEnB,OAAOD;QACT,GAAG;YAACxB;SAAS;QACb6B,UAAU9C,YACR,CAAC+C;YACC,MAAML,SAASN,SAASS,OAAO;YAC/B,IAAI,CAACH,QAAQ;gBACX;YACF;YAEAK,QAAQ7B,OAAO,CAAC,CAAC8B;gBACfN,OAAOE,GAAG,CAACI,MAAMC,MAAM,CAAC3B,EAAE,EAAE0B,MAAME,cAAc;YAClD;YAEA,qDAAqD;YACrD,IAAIC,UAAU;mBAAIT,OAAOK,OAAO;aAAG,CAACK,IAAI,CACtC,CAAC,CAACC,KAAKH,eAAe,GAAKA,iBAC1B,CAAC,EAAE;YACN,IACE,CAACC,WACDd,cAAcQ,OAAO,IACrBlB,yBAAyBQ,wBACzB;gBACAgB,UAAU3B,iBAAiBP;YAC7B;YAEAoB,cAAcQ,OAAO,GAAG;YAExB,sEAAsE;YACtE,8DAA8D;YAC9D,IAAIM,SAAS;gBACXZ,mBAAmBY;YACrB;QACF,GACA;YAAClC;YAAUkB;SAAsB;IAErC;IAEA,OAAOG;AACT"}
1
+ {"version":3,"sources":["../../src/navigation/useActiveHeadingId.ts"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useRef, useState } from \"react\";\n\nimport { type UseStateInitializer } from \"../types.js\";\nimport {\n type IntersectionObserverRootMargin,\n type IntersectionObserverThreshold,\n useIntersectionObserver,\n} from \"../useIntersectionObserver.js\";\nimport { parseCssLengthUnit } from \"../utils/parseCssLengthUnit.js\";\nimport { type HeadingReferenceWithChildren } from \"./types.js\";\n\n/**\n * @defaultValue `[0.0, 1.0]`\n * @since 6.0.0\n */\nexport const DEFAULT_ACTIVE_HEADING_THRESHOLD: IntersectionObserverThreshold = [\n 0.0, 1.0,\n];\n\n/**\n * ```tsx\n * const headerHeightVar = window\n * .getComputedStyle(document.documentElement)\n * .getPropertyValue(\"--rmd-layout-header-height\");\n * const headerHeight = parseCssLengthUnit({\n * value: headerHeightVar || \"3.5rem\",\n * });\n\n * return `-${headerHeight}px 0px 0px 0px`;\n * ```\n * @since 6.0.0\n */\nexport const DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN = (): string => {\n const headerHeightVar = window\n .getComputedStyle(document.documentElement)\n .getPropertyValue(\"--rmd-layout-header-height\");\n const headerHeight = parseCssLengthUnit({\n value: headerHeightVar || \"3.5rem\",\n });\n\n return `-${headerHeight}px 0px 0px 0px`;\n};\n\n/**\n * @internal\n * @since 6.0.0\n */\nfunction getHeadingElements(\n items: readonly HeadingReferenceWithChildren[]\n): readonly HTMLElement[] {\n const headings: HTMLElement[] = [];\n items.forEach((item) => {\n const heading = document.getElementById(item.id);\n if (heading) {\n headings.push(heading);\n }\n\n if (item.items) {\n headings.push(...getHeadingElements(item.items));\n }\n });\n\n return headings;\n}\n\n/**\n * @internal\n * @since 6.0.0\n */\nfunction getLastHeadingId(\n items: readonly HeadingReferenceWithChildren[]\n): string {\n const last = items.at(-1);\n if (!last) {\n return \"\";\n }\n\n if (last.items) {\n return getLastHeadingId(last.items);\n }\n\n return last.id;\n}\n\n/**\n * @internal\n * @since 6.0.0\n */\nconst isScrolledNearPageBottom = (threshold: number): boolean =>\n window.scrollY >= document.documentElement.scrollHeight * threshold;\n\n/**\n * @since 6.0.0\n */\nexport interface ActiveHeadingIdOptions {\n headings: readonly HeadingReferenceWithChildren[];\n\n /** @see {@link DEFAULT_ACTIVE_HEADING_THRESHOLD} */\n threshold?: IntersectionObserverThreshold;\n\n /** @see {@link DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN} */\n getRootMargin?: () => IntersectionObserverRootMargin;\n\n /** @defaultValue `headings[0]?.id ?? \"\"` */\n defaultActiveId?: UseStateInitializer<string>;\n\n /** @defaultValue `0.8` */\n scrollBottomThreshold?: number;\n}\n\n/**\n * This is heavily inspired by:\n * @see https://github.com/mdn/yari/blob/231d6aab8f1c8efe159d268c261446c5b7ae12d9/client/src/document/hooks.ts#L171\n *\n * @see {@link https://react-md.dev/hooks/use-active-heading-id | useActiveHeadingId Demos}\n * @since 6.0.0\n */\nexport function useActiveHeadingId(options: ActiveHeadingIdOptions): string {\n const {\n headings,\n threshold = DEFAULT_ACTIVE_HEADING_THRESHOLD,\n getRootMargin = DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN,\n defaultActiveId = headings[0]?.id ?? \"\",\n scrollBottomThreshold = 0.8,\n } = options;\n const elements = useRef<Map<string, boolean>>();\n const isFirstRender = useRef(true);\n const [activeHeadingId, setActiveHeadingId] = useState(defaultActiveId);\n useIntersectionObserver({\n threshold,\n getRootMargin,\n getTargets: useCallback(() => {\n const headingElements = getHeadingElements(headings);\n const lookup = new Map<string, boolean>();\n headingElements.forEach((heading) => {\n lookup.set(heading.id, false);\n });\n elements.current = lookup;\n\n return headingElements;\n }, [headings]),\n onUpdate: useCallback(\n (entries) => {\n const lookup = elements.current;\n if (!lookup) {\n return;\n }\n\n entries.forEach((entry) => {\n lookup.set(entry.target.id, entry.isIntersecting);\n });\n\n // get the first visible/intersecting item and set it\n let foundId = [...lookup.entries()].find(\n ([_id, isIntersecting]) => isIntersecting\n )?.[0];\n if (\n !foundId &&\n isFirstRender.current &&\n isScrolledNearPageBottom(scrollBottomThreshold)\n ) {\n foundId = getLastHeadingId(headings);\n }\n\n isFirstRender.current = false;\n\n // if there isn't a found id, it might be a really large section where\n // another heading isn't visible, so maintain the previous one\n if (foundId) {\n setActiveHeadingId(foundId);\n }\n },\n [headings, scrollBottomThreshold]\n ),\n });\n\n return activeHeadingId;\n}\n"],"names":["useCallback","useRef","useState","useIntersectionObserver","parseCssLengthUnit","DEFAULT_ACTIVE_HEADING_THRESHOLD","DEFAULT_ACTIVE_HEADING_GET_ROOT_MARGIN","headerHeightVar","window","getComputedStyle","document","documentElement","getPropertyValue","headerHeight","value","getHeadingElements","items","headings","forEach","item","heading","getElementById","id","push","getLastHeadingId","last","at","isScrolledNearPageBottom","threshold","scrollY","scrollHeight","useActiveHeadingId","options","getRootMargin","defaultActiveId","scrollBottomThreshold","elements","isFirstRender","activeHeadingId","setActiveHeadingId","getTargets","headingElements","lookup","Map","set","current","onUpdate","entries","entry","target","isIntersecting","foundId","find","_id"],"mappings":"AAAA;AAEA,SAASA,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAQ;AAGtD,SAGEC,uBAAuB,QAClB,gCAAgC;AACvC,SAASC,kBAAkB,QAAQ,iCAAiC;AAGpE;;;CAGC,GACD,OAAO,MAAMC,mCAAkE;IAC7E;IAAK;CACN,CAAC;AAEF;;;;;;;;;;;;CAYC,GACD,OAAO,MAAMC,yCAAyC;IACpD,MAAMC,kBAAkBC,OACrBC,gBAAgB,CAACC,SAASC,eAAe,EACzCC,gBAAgB,CAAC;IACpB,MAAMC,eAAeT,mBAAmB;QACtCU,OAAOP,mBAAmB;IAC5B;IAEA,OAAO,CAAC,CAAC,EAAEM,aAAa,cAAc,CAAC;AACzC,EAAE;AAEF;;;CAGC,GACD,SAASE,mBACPC,KAA8C;IAE9C,MAAMC,WAA0B,EAAE;IAClCD,MAAME,OAAO,CAAC,CAACC;QACb,MAAMC,UAAUV,SAASW,cAAc,CAACF,KAAKG,EAAE;QAC/C,IAAIF,SAAS;YACXH,SAASM,IAAI,CAACH;QAChB;QAEA,IAAID,KAAKH,KAAK,EAAE;YACdC,SAASM,IAAI,IAAIR,mBAAmBI,KAAKH,KAAK;QAChD;IACF;IAEA,OAAOC;AACT;AAEA;;;CAGC,GACD,SAASO,iBACPR,KAA8C;IAE9C,MAAMS,OAAOT,MAAMU,EAAE,CAAC,CAAC;IACvB,IAAI,CAACD,MAAM;QACT,OAAO;IACT;IAEA,IAAIA,KAAKT,KAAK,EAAE;QACd,OAAOQ,iBAAiBC,KAAKT,KAAK;IACpC;IAEA,OAAOS,KAAKH,EAAE;AAChB;AAEA;;;CAGC,GACD,MAAMK,2BAA2B,CAACC,YAChCpB,OAAOqB,OAAO,IAAInB,SAASC,eAAe,CAACmB,YAAY,GAAGF;AAqB5D;;;;;;CAMC,GACD,OAAO,SAASG,mBAAmBC,OAA+B;IAChE,MAAM,EACJf,QAAQ,EACRW,YAAYvB,gCAAgC,EAC5C4B,gBAAgB3B,sCAAsC,EACtD4B,kBAAkBjB,QAAQ,CAAC,EAAE,EAAEK,MAAM,EAAE,EACvCa,wBAAwB,GAAG,EAC5B,GAAGH;IACJ,MAAMI,WAAWnC;IACjB,MAAMoC,gBAAgBpC,OAAO;IAC7B,MAAM,CAACqC,iBAAiBC,mBAAmB,GAAGrC,SAASgC;IACvD/B,wBAAwB;QACtByB;QACAK;QACAO,YAAYxC,YAAY;YACtB,MAAMyC,kBAAkB1B,mBAAmBE;YAC3C,MAAMyB,SAAS,IAAIC;YACnBF,gBAAgBvB,OAAO,CAAC,CAACE;gBACvBsB,OAAOE,GAAG,CAACxB,QAAQE,EAAE,EAAE;YACzB;YACAc,SAASS,OAAO,GAAGH;YAEnB,OAAOD;QACT,GAAG;YAACxB;SAAS;QACb6B,UAAU9C,YACR,CAAC+C;YACC,MAAML,SAASN,SAASS,OAAO;YAC/B,IAAI,CAACH,QAAQ;gBACX;YACF;YAEAK,QAAQ7B,OAAO,CAAC,CAAC8B;gBACfN,OAAOE,GAAG,CAACI,MAAMC,MAAM,CAAC3B,EAAE,EAAE0B,MAAME,cAAc;YAClD;YAEA,qDAAqD;YACrD,IAAIC,UAAU;mBAAIT,OAAOK,OAAO;aAAG,CAACK,IAAI,CACtC,CAAC,CAACC,KAAKH,eAAe,GAAKA,iBAC1B,CAAC,EAAE;YACN,IACE,CAACC,WACDd,cAAcQ,OAAO,IACrBlB,yBAAyBQ,wBACzB;gBACAgB,UAAU3B,iBAAiBP;YAC7B;YAEAoB,cAAcQ,OAAO,GAAG;YAExB,sEAAsE;YACtE,8DAA8D;YAC9D,IAAIM,SAAS;gBACXZ,mBAAmBY;YACrB;QACF,GACA;YAAClC;YAAUkB;SAAsB;IAErC;IAEA,OAAOG;AACT"}
@@ -99,8 +99,8 @@ export interface NavigationExpansionImplementation extends NavigationExpansion {
99
99
  * }
100
100
  * ```
101
101
  *
102
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
103
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
102
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
103
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
104
104
  * @since 6.0.0
105
105
  */
106
106
  export declare function useNavigationExpansion(options: NavigationExpansionOptions): NavigationExpansionImplementation;
@@ -28,8 +28,8 @@ import { getPartsFromPathname } from "./utils.js";
28
28
  * }
29
29
  * ```
30
30
  *
31
- * @see {@link https://next.react-md.dev/getting-started/layout | Layout Demos}
32
- * @see {@link https://next.react-md.dev/components/navigation | Navigation Demos}
31
+ * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}
32
+ * @see {@link https://react-md.dev/components/navigation | Navigation Demos}
33
33
  * @since 6.0.0
34
34
  */ export function useNavigationExpansion(options) {
35
35
  const { pathname, linkComponent, defaultExpandedItems, disableFollowingPathname } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/useNavigationExpansion.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useRef } from \"react\";\n\nimport { type UseStateInitializer, type UseStateSetter } from \"../types.js\";\nimport { useReadonlySet } from \"../useReadonlySet.js\";\nimport {\n type NavigationExpansion,\n type NavigationLinkComponent,\n type NavigationRenderData,\n} from \"./types.js\";\nimport { getPartsFromPathname } from \"./utils.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationExpansionOptions {\n pathname: string;\n linkComponent: NavigationLinkComponent;\n\n /**\n * An optional list or set of items that should be expanded before the user\n * interacts with the navigation items.\n *\n * The default implementation works well with the `DefaultNavigationRenderer`\n * by allowing all \"folders\" (or groups) of items to be expanded by the\n * `pathname`.\n *\n * ```ts\n * const navItems: readonly NavigationItem[] = [\n * {\n * type: \"route\",\n * href: \"/\",\n * children: \"Home\",\n * },\n * {\n * type: \"group\",\n * href: \"/group-1\",\n * children: \"Group 1\",\n * items: [\n * {\n * type: \"group\",\n * href: \"/subgroup-1\",\n * children: \"Subgroup 1\",\n * items: [\n * {\n * type: \"route\",\n * href: \"/route\",\n * children: \"Group 1 > Subgroup 1 > Route\"\n * },\n * ],\n * },\n * {\n * type: \"route\",\n * href: \"/route\",\n * children: \"Group 1 > Route\",\n * },\n * ],\n * },\n * ];\n * ```\n *\n * - `pathname === \"/\"` - No groups expanded\n * - Resolves as `new Set([\"/\"])`\n * - `pathname === \"/group-1/subgroup-1/route\"` - \"Group 1\" and \"Subgroup 1\"\n * are expanded\n * - Resolves as `new Set([\"/\", \"/group-1\", \"/group-1/route\"])`\n */\n defaultExpandedItems?: UseStateInitializer<\n ReadonlySet<string> | readonly string[]\n >;\n\n /**\n * The default behavior is to update the `expandedItems` set as the `pathname`\n * updates to capture anytime the user might navigate to outer routes outside\n * of the `Navigation` component. i.e. Click a link within the page.\n *\n * Set this to `true` to disable this behavior.\n *\n * @defaultValue `false`\n */\n disableFollowingPathname?: boolean;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationExpansionImplementation extends NavigationExpansion {\n data: NavigationRenderData;\n setExpandedItems: UseStateSetter<ReadonlySet<string>>;\n}\n\n/**\n * Used to create the `data` prop for the `Navigation` component and handling\n * the expansion of items.\n *\n * @example Main Usage\n * ```tsx\n * \"use client\";\n * import { Navigation } from \"@react-md/core/navigation/Navigation\";\n * import { useNavigationExpansion } from \"@react-md/core/navigation/useNavigationExpansion\";\n * import Link from \"next/link\";\n * import { usePathname } from \"next/navigation.js\";\n * import { type ReactElement } from \"react\";\n *\n * import { navItems } from \"./navItems.js\";\n *\n * export function Example(): ReactElement {\n * const pathname = usePathname();\n * const { data } = useNavigationExpansion({\n * pathname,\n * linkComponent: Link,\n * });\n *\n * return <Navigation data={data} items={navItems} />;\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/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport function useNavigationExpansion(\n options: NavigationExpansionOptions\n): NavigationExpansionImplementation {\n const {\n pathname,\n linkComponent,\n defaultExpandedItems,\n disableFollowingPathname,\n } = options;\n const {\n value: expandedItems,\n setValue: setExpandedItems,\n toggleValue: toggleExpandedItem,\n } = useReadonlySet({\n defaultValue:\n defaultExpandedItems ?? (() => new Set(getPartsFromPathname(pathname))),\n });\n\n const prevPathname = useRef(pathname);\n useEffect(() => {\n if (disableFollowingPathname || pathname === prevPathname.current) {\n return;\n }\n\n prevPathname.current = pathname;\n setExpandedItems((prev) => {\n const next = new Set([...prev, ...getPartsFromPathname(pathname)]);\n if (next.size === prev.size) {\n return prev;\n }\n\n return next;\n });\n }, [disableFollowingPathname, pathname, setExpandedItems]);\n\n const data = useMemo<NavigationRenderData>(\n () => ({\n pathname,\n linkComponent,\n expandedItems,\n toggleExpandedItem,\n }),\n [expandedItems, linkComponent, pathname, toggleExpandedItem]\n );\n\n return {\n data,\n expandedItems,\n setExpandedItems,\n toggleExpandedItem,\n };\n}\n"],"names":["useEffect","useMemo","useRef","useReadonlySet","getPartsFromPathname","useNavigationExpansion","options","pathname","linkComponent","defaultExpandedItems","disableFollowingPathname","value","expandedItems","setValue","setExpandedItems","toggleValue","toggleExpandedItem","defaultValue","Set","prevPathname","current","prev","next","size","data"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,QAAQ;AAGnD,SAASC,cAAc,QAAQ,uBAAuB;AAMtD,SAASC,oBAAoB,QAAQ,aAAa;AAiFlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BC,GACD,OAAO,SAASC,uBACdC,OAAmC;IAEnC,MAAM,EACJC,QAAQ,EACRC,aAAa,EACbC,oBAAoB,EACpBC,wBAAwB,EACzB,GAAGJ;IACJ,MAAM,EACJK,OAAOC,aAAa,EACpBC,UAAUC,gBAAgB,EAC1BC,aAAaC,kBAAkB,EAChC,GAAGb,eAAe;QACjBc,cACER,wBAAyB,CAAA,IAAM,IAAIS,IAAId,qBAAqBG,UAAS;IACzE;IAEA,MAAMY,eAAejB,OAAOK;IAC5BP,UAAU;QACR,IAAIU,4BAA4BH,aAAaY,aAAaC,OAAO,EAAE;YACjE;QACF;QAEAD,aAAaC,OAAO,GAAGb;QACvBO,iBAAiB,CAACO;YAChB,MAAMC,OAAO,IAAIJ,IAAI;mBAAIG;mBAASjB,qBAAqBG;aAAU;YACjE,IAAIe,KAAKC,IAAI,KAAKF,KAAKE,IAAI,EAAE;gBAC3B,OAAOF;YACT;YAEA,OAAOC;QACT;IACF,GAAG;QAACZ;QAA0BH;QAAUO;KAAiB;IAEzD,MAAMU,OAAOvB,QACX,IAAO,CAAA;YACLM;YACAC;YACAI;YACAI;QACF,CAAA,GACA;QAACJ;QAAeJ;QAAeD;QAAUS;KAAmB;IAG9D,OAAO;QACLQ;QACAZ;QACAE;QACAE;IACF;AACF"}
1
+ {"version":3,"sources":["../../src/navigation/useNavigationExpansion.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useRef } from \"react\";\n\nimport { type UseStateInitializer, type UseStateSetter } from \"../types.js\";\nimport { useReadonlySet } from \"../useReadonlySet.js\";\nimport {\n type NavigationExpansion,\n type NavigationLinkComponent,\n type NavigationRenderData,\n} from \"./types.js\";\nimport { getPartsFromPathname } from \"./utils.js\";\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationExpansionOptions {\n pathname: string;\n linkComponent: NavigationLinkComponent;\n\n /**\n * An optional list or set of items that should be expanded before the user\n * interacts with the navigation items.\n *\n * The default implementation works well with the `DefaultNavigationRenderer`\n * by allowing all \"folders\" (or groups) of items to be expanded by the\n * `pathname`.\n *\n * ```ts\n * const navItems: readonly NavigationItem[] = [\n * {\n * type: \"route\",\n * href: \"/\",\n * children: \"Home\",\n * },\n * {\n * type: \"group\",\n * href: \"/group-1\",\n * children: \"Group 1\",\n * items: [\n * {\n * type: \"group\",\n * href: \"/subgroup-1\",\n * children: \"Subgroup 1\",\n * items: [\n * {\n * type: \"route\",\n * href: \"/route\",\n * children: \"Group 1 > Subgroup 1 > Route\"\n * },\n * ],\n * },\n * {\n * type: \"route\",\n * href: \"/route\",\n * children: \"Group 1 > Route\",\n * },\n * ],\n * },\n * ];\n * ```\n *\n * - `pathname === \"/\"` - No groups expanded\n * - Resolves as `new Set([\"/\"])`\n * - `pathname === \"/group-1/subgroup-1/route\"` - \"Group 1\" and \"Subgroup 1\"\n * are expanded\n * - Resolves as `new Set([\"/\", \"/group-1\", \"/group-1/route\"])`\n */\n defaultExpandedItems?: UseStateInitializer<\n ReadonlySet<string> | readonly string[]\n >;\n\n /**\n * The default behavior is to update the `expandedItems` set as the `pathname`\n * updates to capture anytime the user might navigate to outer routes outside\n * of the `Navigation` component. i.e. Click a link within the page.\n *\n * Set this to `true` to disable this behavior.\n *\n * @defaultValue `false`\n */\n disableFollowingPathname?: boolean;\n}\n\n/**\n * @since 6.0.0\n */\nexport interface NavigationExpansionImplementation extends NavigationExpansion {\n data: NavigationRenderData;\n setExpandedItems: UseStateSetter<ReadonlySet<string>>;\n}\n\n/**\n * Used to create the `data` prop for the `Navigation` component and handling\n * the expansion of items.\n *\n * @example Main Usage\n * ```tsx\n * \"use client\";\n * import { Navigation } from \"@react-md/core/navigation/Navigation\";\n * import { useNavigationExpansion } from \"@react-md/core/navigation/useNavigationExpansion\";\n * import Link from \"next/link\";\n * import { usePathname } from \"next/navigation.js\";\n * import { type ReactElement } from \"react\";\n *\n * import { navItems } from \"./navItems.js\";\n *\n * export function Example(): ReactElement {\n * const pathname = usePathname();\n * const { data } = useNavigationExpansion({\n * pathname,\n * linkComponent: Link,\n * });\n *\n * return <Navigation data={data} items={navItems} />;\n * }\n * ```\n *\n * @see {@link https://react-md.dev/getting-started/layout | Layout Demos}\n * @see {@link https://react-md.dev/components/navigation | Navigation Demos}\n * @since 6.0.0\n */\nexport function useNavigationExpansion(\n options: NavigationExpansionOptions\n): NavigationExpansionImplementation {\n const {\n pathname,\n linkComponent,\n defaultExpandedItems,\n disableFollowingPathname,\n } = options;\n const {\n value: expandedItems,\n setValue: setExpandedItems,\n toggleValue: toggleExpandedItem,\n } = useReadonlySet({\n defaultValue:\n defaultExpandedItems ?? (() => new Set(getPartsFromPathname(pathname))),\n });\n\n const prevPathname = useRef(pathname);\n useEffect(() => {\n if (disableFollowingPathname || pathname === prevPathname.current) {\n return;\n }\n\n prevPathname.current = pathname;\n setExpandedItems((prev) => {\n const next = new Set([...prev, ...getPartsFromPathname(pathname)]);\n if (next.size === prev.size) {\n return prev;\n }\n\n return next;\n });\n }, [disableFollowingPathname, pathname, setExpandedItems]);\n\n const data = useMemo<NavigationRenderData>(\n () => ({\n pathname,\n linkComponent,\n expandedItems,\n toggleExpandedItem,\n }),\n [expandedItems, linkComponent, pathname, toggleExpandedItem]\n );\n\n return {\n data,\n expandedItems,\n setExpandedItems,\n toggleExpandedItem,\n };\n}\n"],"names":["useEffect","useMemo","useRef","useReadonlySet","getPartsFromPathname","useNavigationExpansion","options","pathname","linkComponent","defaultExpandedItems","disableFollowingPathname","value","expandedItems","setValue","setExpandedItems","toggleValue","toggleExpandedItem","defaultValue","Set","prevPathname","current","prev","next","size","data"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,QAAQ;AAGnD,SAASC,cAAc,QAAQ,uBAAuB;AAMtD,SAASC,oBAAoB,QAAQ,aAAa;AAiFlD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BC,GACD,OAAO,SAASC,uBACdC,OAAmC;IAEnC,MAAM,EACJC,QAAQ,EACRC,aAAa,EACbC,oBAAoB,EACpBC,wBAAwB,EACzB,GAAGJ;IACJ,MAAM,EACJK,OAAOC,aAAa,EACpBC,UAAUC,gBAAgB,EAC1BC,aAAaC,kBAAkB,EAChC,GAAGb,eAAe;QACjBc,cACER,wBAAyB,CAAA,IAAM,IAAIS,IAAId,qBAAqBG,UAAS;IACzE;IAEA,MAAMY,eAAejB,OAAOK;IAC5BP,UAAU;QACR,IAAIU,4BAA4BH,aAAaY,aAAaC,OAAO,EAAE;YACjE;QACF;QAEAD,aAAaC,OAAO,GAAGb;QACvBO,iBAAiB,CAACO;YAChB,MAAMC,OAAO,IAAIJ,IAAI;mBAAIG;mBAASjB,qBAAqBG;aAAU;YACjE,IAAIe,KAAKC,IAAI,KAAKF,KAAKE,IAAI,EAAE;gBAC3B,OAAOF;YACT;YAEA,OAAOC;QACT;IACF,GAAG;QAACZ;QAA0BH;QAAUO;KAAiB;IAEzD,MAAMU,OAAOvB,QACX,IAAO,CAAA;YACLM;YACAC;YACAI;YACAI;QACF,CAAA,GACA;QAACJ;QAAeJ;QAAeD;QAAUS;KAAmB;IAG9D,OAAO;QACLQ;QACAZ;QACAE;QACAE;IACF;AACF"}
@@ -35,7 +35,7 @@ export declare const DEFAULT_GET_HEADING_TEXT: (element: Element) => string;
35
35
  * }
36
36
  * ```
37
37
  *
38
- * @see {@link https://next.react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}
38
+ * @see {@link https://react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}
39
39
  * @since 6.0.0
40
40
  */
41
41
  export declare function useTableOfContentsHeadings(options?: TableOfContentsHeadingsOptions): TableOfContentsHeadings;
@@ -38,7 +38,7 @@ import { getTableOfContentsHeadings } from "./getTableOfContentsHeadings.js";
38
38
  * }
39
39
  * ```
40
40
  *
41
- * @see {@link https://next.react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}
41
+ * @see {@link https://react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}
42
42
  * @since 6.0.0
43
43
  */ export function useTableOfContentsHeadings(options = {}) {
44
44
  const { selector = DEFAULT_HEADING_SELECTOR, getDepth = DEFAULT_GET_HEADING_DEPTH, getHeadingText = DEFAULT_GET_HEADING_TEXT } = options;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/navigation/useTableOfContentsHeadings.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState } from \"react\";\n\nimport { useSsr } from \"../SsrProvider.js\";\nimport { getTableOfContentsHeadings } from \"./getTableOfContentsHeadings.js\";\nimport {\n type TableOfContentsHeadings,\n type TableOfContentsHeadingsOptions,\n} from \"./types.js\";\n\n/**\n * This will find all headings that have an `id` that are not part of a `<nav>`\n * element since that should normally be a table of contents component.\n *\n * @since 6.0.0\n */\nexport const DEFAULT_HEADING_SELECTOR =\n \"main :where(:not(nav *)):where(h1[id],h2[id],h3[id],h4[id],h5[id],h6[id])\";\n\n/**\n * This only works for heading elements since it is pretty much:\n * `return parseInt(element.tagName.substring(1))`\n *\n * @since 6.0.0\n */\nexport const DEFAULT_GET_HEADING_DEPTH = (element: Element): number => {\n const depth = parseInt(element.tagName.substring(1));\n return Number.isNaN(depth) ? 0 : depth;\n};\n\n/**\n * @since 6.0.0\n */\nexport const DEFAULT_GET_HEADING_TEXT = (element: Element): string =>\n element.textContent || \"\";\n\n/**\n * The `useTableOfContentsHeadings` should normally be used with the\n * `useActiveHeadingId` hook to generate a table of contents for the current\n * page.\n *\n * @example Example Usage\n * ```tsx\n * import { useActiveHeadingId } from \"@react-md/core/navigation/useActiveHeadingId\";\n * import { useTableOfContentsHeadings } from \"@react-md/core/navigation/useTableOfContentsHeadings\";\n *\n * function Example() {\n * const headings = useTableOfContentsHeadings();\n * const activeHeadingId = useActiveHeadingId({ headings });\n *\n * return <TableOfContents headings={headings} activeHeadingId={activeHeadingId} />;\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}\n * @since 6.0.0\n */\nexport function useTableOfContentsHeadings(\n options: TableOfContentsHeadingsOptions = {}\n): TableOfContentsHeadings {\n const {\n selector = DEFAULT_HEADING_SELECTOR,\n getDepth = DEFAULT_GET_HEADING_DEPTH,\n getHeadingText = DEFAULT_GET_HEADING_TEXT,\n } = options;\n const ssr = useSsr();\n const [headings, setHeadings] = useState(() =>\n getTableOfContentsHeadings({\n ssr,\n selector,\n getDepth,\n getHeadingText,\n })\n );\n useEffect(() => {\n setHeadings(\n getTableOfContentsHeadings({ ssr, selector, getDepth, getHeadingText })\n );\n }, [getDepth, getHeadingText, selector, ssr]);\n\n return headings;\n}\n"],"names":["useEffect","useState","useSsr","getTableOfContentsHeadings","DEFAULT_HEADING_SELECTOR","DEFAULT_GET_HEADING_DEPTH","element","depth","parseInt","tagName","substring","Number","isNaN","DEFAULT_GET_HEADING_TEXT","textContent","useTableOfContentsHeadings","options","selector","getDepth","getHeadingText","ssr","headings","setHeadings"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,QAAQ;AAE5C,SAASC,MAAM,QAAQ,oBAAoB;AAC3C,SAASC,0BAA0B,QAAQ,kCAAkC;AAM7E;;;;;CAKC,GACD,OAAO,MAAMC,2BACX,4EAA4E;AAE9E;;;;;CAKC,GACD,OAAO,MAAMC,4BAA4B,CAACC;IACxC,MAAMC,QAAQC,SAASF,QAAQG,OAAO,CAACC,SAAS,CAAC;IACjD,OAAOC,OAAOC,KAAK,CAACL,SAAS,IAAIA;AACnC,EAAE;AAEF;;CAEC,GACD,OAAO,MAAMM,2BAA2B,CAACP,UACvCA,QAAQQ,WAAW,IAAI,GAAG;AAE5B;;;;;;;;;;;;;;;;;;;;CAoBC,GACD,OAAO,SAASC,2BACdC,UAA0C,CAAC,CAAC;IAE5C,MAAM,EACJC,WAAWb,wBAAwB,EACnCc,WAAWb,yBAAyB,EACpCc,iBAAiBN,wBAAwB,EAC1C,GAAGG;IACJ,MAAMI,MAAMlB;IACZ,MAAM,CAACmB,UAAUC,YAAY,GAAGrB,SAAS,IACvCE,2BAA2B;YACzBiB;YACAH;YACAC;YACAC;QACF;IAEFnB,UAAU;QACRsB,YACEnB,2BAA2B;YAAEiB;YAAKH;YAAUC;YAAUC;QAAe;IAEzE,GAAG;QAACD;QAAUC;QAAgBF;QAAUG;KAAI;IAE5C,OAAOC;AACT"}
1
+ {"version":3,"sources":["../../src/navigation/useTableOfContentsHeadings.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState } from \"react\";\n\nimport { useSsr } from \"../SsrProvider.js\";\nimport { getTableOfContentsHeadings } from \"./getTableOfContentsHeadings.js\";\nimport {\n type TableOfContentsHeadings,\n type TableOfContentsHeadingsOptions,\n} from \"./types.js\";\n\n/**\n * This will find all headings that have an `id` that are not part of a `<nav>`\n * element since that should normally be a table of contents component.\n *\n * @since 6.0.0\n */\nexport const DEFAULT_HEADING_SELECTOR =\n \"main :where(:not(nav *)):where(h1[id],h2[id],h3[id],h4[id],h5[id],h6[id])\";\n\n/**\n * This only works for heading elements since it is pretty much:\n * `return parseInt(element.tagName.substring(1))`\n *\n * @since 6.0.0\n */\nexport const DEFAULT_GET_HEADING_DEPTH = (element: Element): number => {\n const depth = parseInt(element.tagName.substring(1));\n return Number.isNaN(depth) ? 0 : depth;\n};\n\n/**\n * @since 6.0.0\n */\nexport const DEFAULT_GET_HEADING_TEXT = (element: Element): string =>\n element.textContent || \"\";\n\n/**\n * The `useTableOfContentsHeadings` should normally be used with the\n * `useActiveHeadingId` hook to generate a table of contents for the current\n * page.\n *\n * @example Example Usage\n * ```tsx\n * import { useActiveHeadingId } from \"@react-md/core/navigation/useActiveHeadingId\";\n * import { useTableOfContentsHeadings } from \"@react-md/core/navigation/useTableOfContentsHeadings\";\n *\n * function Example() {\n * const headings = useTableOfContentsHeadings();\n * const activeHeadingId = useActiveHeadingId({ headings });\n *\n * return <TableOfContents headings={headings} activeHeadingId={activeHeadingId} />;\n * }\n * ```\n *\n * @see {@link https://react-md.dev/hooks/use-table-of-contents-headings | useTableOfContentsHeadings Demos}\n * @since 6.0.0\n */\nexport function useTableOfContentsHeadings(\n options: TableOfContentsHeadingsOptions = {}\n): TableOfContentsHeadings {\n const {\n selector = DEFAULT_HEADING_SELECTOR,\n getDepth = DEFAULT_GET_HEADING_DEPTH,\n getHeadingText = DEFAULT_GET_HEADING_TEXT,\n } = options;\n const ssr = useSsr();\n const [headings, setHeadings] = useState(() =>\n getTableOfContentsHeadings({\n ssr,\n selector,\n getDepth,\n getHeadingText,\n })\n );\n useEffect(() => {\n setHeadings(\n getTableOfContentsHeadings({ ssr, selector, getDepth, getHeadingText })\n );\n }, [getDepth, getHeadingText, selector, ssr]);\n\n return headings;\n}\n"],"names":["useEffect","useState","useSsr","getTableOfContentsHeadings","DEFAULT_HEADING_SELECTOR","DEFAULT_GET_HEADING_DEPTH","element","depth","parseInt","tagName","substring","Number","isNaN","DEFAULT_GET_HEADING_TEXT","textContent","useTableOfContentsHeadings","options","selector","getDepth","getHeadingText","ssr","headings","setHeadings"],"mappings":"AAAA;AAEA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,QAAQ;AAE5C,SAASC,MAAM,QAAQ,oBAAoB;AAC3C,SAASC,0BAA0B,QAAQ,kCAAkC;AAM7E;;;;;CAKC,GACD,OAAO,MAAMC,2BACX,4EAA4E;AAE9E;;;;;CAKC,GACD,OAAO,MAAMC,4BAA4B,CAACC;IACxC,MAAMC,QAAQC,SAASF,QAAQG,OAAO,CAACC,SAAS,CAAC;IACjD,OAAOC,OAAOC,KAAK,CAACL,SAAS,IAAIA;AACnC,EAAE;AAEF;;CAEC,GACD,OAAO,MAAMM,2BAA2B,CAACP,UACvCA,QAAQQ,WAAW,IAAI,GAAG;AAE5B;;;;;;;;;;;;;;;;;;;;CAoBC,GACD,OAAO,SAASC,2BACdC,UAA0C,CAAC,CAAC;IAE5C,MAAM,EACJC,WAAWb,wBAAwB,EACnCc,WAAWb,yBAAyB,EACpCc,iBAAiBN,wBAAwB,EAC1C,GAAGG;IACJ,MAAMI,MAAMlB;IACZ,MAAM,CAACmB,UAAUC,YAAY,GAAGrB,SAAS,IACvCE,2BAA2B;YACzBiB;YACAH;YACAC;YACAC;QACF;IAEFnB,UAAU;QACRsB,YACEnB,2BAA2B;YAAEiB;YAAKH;YAAUC;YAAUC;QAAe;IAEzE,GAAG;QAACD;QAAUC;QAAgBF;QAAUG;KAAI;IAE5C,OAAOC;AACT"}
@@ -71,7 +71,7 @@ export interface OverlayProps extends HTMLAttributes<HTMLSpanElement>, CSSTransi
71
71
  * }
72
72
  * ```
73
73
  *
74
- * @see {@link https://next.react-md.dev/components/overlay | Overlay Demos}
74
+ * @see {@link https://react-md.dev/components/overlay | Overlay Demos}
75
75
  * @since 6.0.0 Removed the `onRequestClose` prop in favor of using
76
76
  * the `onClick` prop instead.
77
77
  */
@@ -27,7 +27,7 @@ import { DEFAULT_OVERLAY_CLASSNAMES, DEFAULT_OVERLAY_TIMEOUT, overlay } from "./
27
27
  * }
28
28
  * ```
29
29
  *
30
- * @see {@link https://next.react-md.dev/components/overlay | Overlay Demos}
30
+ * @see {@link https://react-md.dev/components/overlay | Overlay Demos}
31
31
  * @since 6.0.0 Removed the `onRequestClose` prop in favor of using
32
32
  * the `onClick` prop instead.
33
33
  */ export const Overlay = /*#__PURE__*/ forwardRef(function Overlay(props, nodeRef) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/overlay/Overlay.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { useSsr } from \"../SsrProvider.js\";\nimport { type BoxAlignItems, type BoxJustifyContent } from \"../box/styles.js\";\nimport { Portal } from \"../portal/Portal.js\";\nimport {\n type CSSTransitionComponentProps,\n type TransitionActions,\n} from \"../transition/types.js\";\nimport { useCSSTransition } from \"../transition/useCSSTransition.js\";\nimport {\n DEFAULT_OVERLAY_CLASSNAMES,\n DEFAULT_OVERLAY_TIMEOUT,\n overlay,\n} from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-overlay-background-color\"?: string;\n \"--rmd-overlay-z-index\"?: number;\n }\n}\n\n/**\n * @since 6.0.0 Added `align` and `justify` props.\n * @since 6.0.0 Renamed `hidden` to `noOpacity`.\n */\nexport interface OverlayProps\n extends HTMLAttributes<HTMLSpanElement>,\n CSSTransitionComponentProps,\n TransitionActions {\n /**\n * @defaultValue `\"center\"`\n * @since 6.0.0\n */\n align?: BoxAlignItems;\n\n /**\n * @defaultValue `\"center\"`\n * @since 6.0.0\n */\n justify?: BoxJustifyContent;\n\n /**\n * Set this to `true` for when the overlay should be visible. Toggling this\n * value will trigger the enter/exit animation.\n */\n visible: boolean;\n\n /**\n * Set this to `true` if the overlay should be rendered with an `opacity: 0`\n * and disabling the animation. This is useful if you'd like a \"close on\n * outside click\" behavior.\n *\n * @defaultValue `false`\n */\n noOpacity?: boolean;\n\n /**\n * @see {@link OverlayClassNameOptions.clickable}\n * @defaultValue `!noOpacity`\n */\n clickable?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disablePortal?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disableTransition?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @example Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Overlay } from \"@react-md/core/overlay/Overlay\";\n * import { useToggle } from \"@react-md/core/useToggle\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * const { toggle, disable, toggled: visible } = useToggle(false);\n *\n * return (\n * <>\n * <Button onClick={toggle}>Toggle</Button>\n * <Overlay visible={visible} onClick={disable} />\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/overlay | Overlay Demos}\n * @since 6.0.0 Removed the `onRequestClose` prop in favor of using\n * the `onClick` prop instead.\n */\nexport const Overlay = forwardRef<HTMLSpanElement, OverlayProps>(\n function Overlay(props, nodeRef) {\n const {\n children,\n className,\n visible,\n noOpacity = false,\n clickable = !noOpacity,\n temporary = true,\n timeout = DEFAULT_OVERLAY_TIMEOUT,\n classNames = DEFAULT_OVERLAY_CLASSNAMES,\n disableTransition = false,\n align = \"center\",\n justify = \"center\",\n appear,\n enter,\n exit,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n exitedHidden = true,\n disablePortal: propDisablePortal = false,\n ...remaining\n } = props;\n\n const ssr = useSsr();\n const { elementProps, rendered, disablePortal } = useCSSTransition({\n nodeRef,\n transitionIn: visible,\n timeout: noOpacity ? 0 : timeout,\n classNames: noOpacity ? \"\" : classNames,\n className: overlay({\n visible,\n clickable,\n align,\n justify,\n className,\n }),\n appear: appear && !disableTransition && !ssr,\n enter: enter && !disableTransition,\n exit: exit && !disableTransition,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n temporary,\n exitedHidden,\n disablePortal: propDisablePortal,\n });\n\n return (\n <Portal disabled={disablePortal}>\n {rendered && (\n <span {...remaining} {...elementProps}>\n {children}\n </span>\n )}\n </Portal>\n );\n }\n);\n"],"names":["forwardRef","useSsr","Portal","useCSSTransition","DEFAULT_OVERLAY_CLASSNAMES","DEFAULT_OVERLAY_TIMEOUT","overlay","Overlay","props","nodeRef","children","className","visible","noOpacity","clickable","temporary","timeout","classNames","disableTransition","align","justify","appear","enter","exit","onEnter","onEntering","onEntered","onExit","onExiting","onExited","exitedHidden","disablePortal","propDisablePortal","remaining","ssr","elementProps","rendered","transitionIn","disabled","span"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,QAAQ,QAAQ;AAExD,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,MAAM,QAAQ,sBAAsB;AAK7C,SAASC,gBAAgB,QAAQ,oCAAoC;AACrE,SACEC,0BAA0B,EAC1BC,uBAAuB,EACvBC,OAAO,QACF,cAAc;AA6DrB;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,wBAAUP,WACrB,SAASO,QAAQC,KAAK,EAAEC,OAAO;IAC7B,MAAM,EACJC,QAAQ,EACRC,SAAS,EACTC,OAAO,EACPC,YAAY,KAAK,EACjBC,YAAY,CAACD,SAAS,EACtBE,YAAY,IAAI,EAChBC,UAAUX,uBAAuB,EACjCY,aAAab,0BAA0B,EACvCc,oBAAoB,KAAK,EACzBC,QAAQ,QAAQ,EAChBC,UAAU,QAAQ,EAClBC,MAAM,EACNC,KAAK,EACLC,IAAI,EACJC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,eAAe,IAAI,EACnBC,eAAeC,oBAAoB,KAAK,EACxC,GAAGC,WACJ,GAAGzB;IAEJ,MAAM0B,MAAMjC;IACZ,MAAM,EAAEkC,YAAY,EAAEC,QAAQ,EAAEL,aAAa,EAAE,GAAG5B,iBAAiB;QACjEM;QACA4B,cAAczB;QACdI,SAASH,YAAY,IAAIG;QACzBC,YAAYJ,YAAY,KAAKI;QAC7BN,WAAWL,QAAQ;YACjBM;YACAE;YACAK;YACAC;YACAT;QACF;QACAU,QAAQA,UAAU,CAACH,qBAAqB,CAACgB;QACzCZ,OAAOA,SAAS,CAACJ;QACjBK,MAAMA,QAAQ,CAACL;QACfM;QACAC;QACAC;QACAC;QACAC;QACAC;QACAd;QACAe;QACAC,eAAeC;IACjB;IAEA,qBACE,KAAC9B;QAAOoC,UAAUP;kBACfK,0BACC,KAACG;YAAM,GAAGN,SAAS;YAAG,GAAGE,YAAY;sBAClCzB;;;AAKX,GACA"}
1
+ {"version":3,"sources":["../../src/overlay/Overlay.tsx"],"sourcesContent":["\"use client\";\n\nimport { type HTMLAttributes, forwardRef } from \"react\";\n\nimport { useSsr } from \"../SsrProvider.js\";\nimport { type BoxAlignItems, type BoxJustifyContent } from \"../box/styles.js\";\nimport { Portal } from \"../portal/Portal.js\";\nimport {\n type CSSTransitionComponentProps,\n type TransitionActions,\n} from \"../transition/types.js\";\nimport { useCSSTransition } from \"../transition/useCSSTransition.js\";\nimport {\n DEFAULT_OVERLAY_CLASSNAMES,\n DEFAULT_OVERLAY_TIMEOUT,\n overlay,\n} from \"./styles.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-overlay-background-color\"?: string;\n \"--rmd-overlay-z-index\"?: number;\n }\n}\n\n/**\n * @since 6.0.0 Added `align` and `justify` props.\n * @since 6.0.0 Renamed `hidden` to `noOpacity`.\n */\nexport interface OverlayProps\n extends HTMLAttributes<HTMLSpanElement>,\n CSSTransitionComponentProps,\n TransitionActions {\n /**\n * @defaultValue `\"center\"`\n * @since 6.0.0\n */\n align?: BoxAlignItems;\n\n /**\n * @defaultValue `\"center\"`\n * @since 6.0.0\n */\n justify?: BoxJustifyContent;\n\n /**\n * Set this to `true` for when the overlay should be visible. Toggling this\n * value will trigger the enter/exit animation.\n */\n visible: boolean;\n\n /**\n * Set this to `true` if the overlay should be rendered with an `opacity: 0`\n * and disabling the animation. This is useful if you'd like a \"close on\n * outside click\" behavior.\n *\n * @defaultValue `false`\n */\n noOpacity?: boolean;\n\n /**\n * @see {@link OverlayClassNameOptions.clickable}\n * @defaultValue `!noOpacity`\n */\n clickable?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disablePortal?: boolean;\n\n /**\n * @defaultValue `false`\n */\n disableTransition?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * @example Simple Example\n * ```tsx\n * import { Button } from \"@react-md/core/button/Button\";\n * import { Overlay } from \"@react-md/core/overlay/Overlay\";\n * import { useToggle } from \"@react-md/core/useToggle\";\n * import type { ReactElement } from \"react\";\n *\n * function Example(): ReactElement {\n * const { toggle, disable, toggled: visible } = useToggle(false);\n *\n * return (\n * <>\n * <Button onClick={toggle}>Toggle</Button>\n * <Overlay visible={visible} onClick={disable} />\n * </>\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/overlay | Overlay Demos}\n * @since 6.0.0 Removed the `onRequestClose` prop in favor of using\n * the `onClick` prop instead.\n */\nexport const Overlay = forwardRef<HTMLSpanElement, OverlayProps>(\n function Overlay(props, nodeRef) {\n const {\n children,\n className,\n visible,\n noOpacity = false,\n clickable = !noOpacity,\n temporary = true,\n timeout = DEFAULT_OVERLAY_TIMEOUT,\n classNames = DEFAULT_OVERLAY_CLASSNAMES,\n disableTransition = false,\n align = \"center\",\n justify = \"center\",\n appear,\n enter,\n exit,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n exitedHidden = true,\n disablePortal: propDisablePortal = false,\n ...remaining\n } = props;\n\n const ssr = useSsr();\n const { elementProps, rendered, disablePortal } = useCSSTransition({\n nodeRef,\n transitionIn: visible,\n timeout: noOpacity ? 0 : timeout,\n classNames: noOpacity ? \"\" : classNames,\n className: overlay({\n visible,\n clickable,\n align,\n justify,\n className,\n }),\n appear: appear && !disableTransition && !ssr,\n enter: enter && !disableTransition,\n exit: exit && !disableTransition,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n temporary,\n exitedHidden,\n disablePortal: propDisablePortal,\n });\n\n return (\n <Portal disabled={disablePortal}>\n {rendered && (\n <span {...remaining} {...elementProps}>\n {children}\n </span>\n )}\n </Portal>\n );\n }\n);\n"],"names":["forwardRef","useSsr","Portal","useCSSTransition","DEFAULT_OVERLAY_CLASSNAMES","DEFAULT_OVERLAY_TIMEOUT","overlay","Overlay","props","nodeRef","children","className","visible","noOpacity","clickable","temporary","timeout","classNames","disableTransition","align","justify","appear","enter","exit","onEnter","onEntering","onEntered","onExit","onExiting","onExited","exitedHidden","disablePortal","propDisablePortal","remaining","ssr","elementProps","rendered","transitionIn","disabled","span"],"mappings":"AAAA;;AAEA,SAA8BA,UAAU,QAAQ,QAAQ;AAExD,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,MAAM,QAAQ,sBAAsB;AAK7C,SAASC,gBAAgB,QAAQ,oCAAoC;AACrE,SACEC,0BAA0B,EAC1BC,uBAAuB,EACvBC,OAAO,QACF,cAAc;AA6DrB;;;;;;;;;;;;;;;;;;;;;;;;;CAyBC,GACD,OAAO,MAAMC,wBAAUP,WACrB,SAASO,QAAQC,KAAK,EAAEC,OAAO;IAC7B,MAAM,EACJC,QAAQ,EACRC,SAAS,EACTC,OAAO,EACPC,YAAY,KAAK,EACjBC,YAAY,CAACD,SAAS,EACtBE,YAAY,IAAI,EAChBC,UAAUX,uBAAuB,EACjCY,aAAab,0BAA0B,EACvCc,oBAAoB,KAAK,EACzBC,QAAQ,QAAQ,EAChBC,UAAU,QAAQ,EAClBC,MAAM,EACNC,KAAK,EACLC,IAAI,EACJC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,eAAe,IAAI,EACnBC,eAAeC,oBAAoB,KAAK,EACxC,GAAGC,WACJ,GAAGzB;IAEJ,MAAM0B,MAAMjC;IACZ,MAAM,EAAEkC,YAAY,EAAEC,QAAQ,EAAEL,aAAa,EAAE,GAAG5B,iBAAiB;QACjEM;QACA4B,cAAczB;QACdI,SAASH,YAAY,IAAIG;QACzBC,YAAYJ,YAAY,KAAKI;QAC7BN,WAAWL,QAAQ;YACjBM;YACAE;YACAK;YACAC;YACAT;QACF;QACAU,QAAQA,UAAU,CAACH,qBAAqB,CAACgB;QACzCZ,OAAOA,SAAS,CAACJ;QACjBK,MAAMA,QAAQ,CAACL;QACfM;QACAC;QACAC;QACAC;QACAC;QACAC;QACAd;QACAe;QACAC,eAAeC;IACjB;IAEA,qBACE,KAAC9B;QAAOoC,UAAUP;kBACfK,0BACC,KAACG;YAAM,GAAGN,SAAS;YAAG,GAAGE,YAAY;sBAClCzB;;;AAKX,GACA"}
@@ -29,7 +29,7 @@ export interface PortalProps {
29
29
  * }
30
30
  * ```
31
31
  *
32
- * @see {@link https://next.react-md.dev/components/portal | Portal Demos}
32
+ * @see {@link https://react-md.dev/components/portal | Portal Demos}
33
33
  * @see {@link PortalContainerProvider}
34
34
  * @see {@link usePortalContainer}
35
35
  */
@@ -18,7 +18,7 @@ import { usePortalContainer } from "./PortalContainerProvider.js";
18
18
  * }
19
19
  * ```
20
20
  *
21
- * @see {@link https://next.react-md.dev/components/portal | Portal Demos}
21
+ * @see {@link https://react-md.dev/components/portal | Portal Demos}
22
22
  * @see {@link PortalContainerProvider}
23
23
  * @see {@link usePortalContainer}
24
24
  */ export function Portal(props) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/portal/Portal.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, type ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { usePortalContainer } from \"./PortalContainerProvider.js\";\n\n/**\n * @since 6.0.0 Removed the `into` and `intoId` props. Use the\n * `PortalContainerProvider` instead.\n */\nexport interface PortalProps {\n children: ReactNode;\n\n /**\n * Setting this to `true` will disable the portal behavior and just render\n * the `children` in the normal DOM tree.\n *\n * @defaultValue `false`\n */\n disabled?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * Portals are a great way to render temporary elements like dialogs, tooltips,\n * and menus at a different port of the DOM. This implementation will render\n * the `children` in the current {@link PortalContainer} element.\n *\n * @example Simple Example\n * ```tsx\n * import { Portal } from \"@react-md/portal\";\n *\n * function Example() {\n * return <Portal><div>Some Content</div></Portal>;\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/portal | Portal Demos}\n * @see {@link PortalContainerProvider}\n * @see {@link usePortalContainer}\n */\nexport function Portal(props: PortalProps): ReactElement {\n const { children, disabled = false } = props;\n const container = usePortalContainer();\n if (!container || disabled) {\n return <>{disabled && children}</>;\n }\n\n return createPortal(children, container);\n}\n"],"names":["createPortal","usePortalContainer","Portal","props","children","disabled","container"],"mappings":"AAAA;;AAGA,SAASA,YAAY,QAAQ,YAAY;AAEzC,SAASC,kBAAkB,QAAQ,+BAA+B;AAkBlE;;;;;;;;;;;;;;;;;;;CAmBC,GACD,OAAO,SAASC,OAAOC,KAAkB;IACvC,MAAM,EAAEC,QAAQ,EAAEC,WAAW,KAAK,EAAE,GAAGF;IACvC,MAAMG,YAAYL;IAClB,IAAI,CAACK,aAAaD,UAAU;QAC1B,qBAAO;sBAAGA,YAAYD;;IACxB;IAEA,qBAAOJ,aAAaI,UAAUE;AAChC"}
1
+ {"version":3,"sources":["../../src/portal/Portal.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, type ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { usePortalContainer } from \"./PortalContainerProvider.js\";\n\n/**\n * @since 6.0.0 Removed the `into` and `intoId` props. Use the\n * `PortalContainerProvider` instead.\n */\nexport interface PortalProps {\n children: ReactNode;\n\n /**\n * Setting this to `true` will disable the portal behavior and just render\n * the `children` in the normal DOM tree.\n *\n * @defaultValue `false`\n */\n disabled?: boolean;\n}\n\n/**\n * **Client Component**\n *\n * Portals are a great way to render temporary elements like dialogs, tooltips,\n * and menus at a different port of the DOM. This implementation will render\n * the `children` in the current {@link PortalContainer} element.\n *\n * @example Simple Example\n * ```tsx\n * import { Portal } from \"@react-md/portal\";\n *\n * function Example() {\n * return <Portal><div>Some Content</div></Portal>;\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/portal | Portal Demos}\n * @see {@link PortalContainerProvider}\n * @see {@link usePortalContainer}\n */\nexport function Portal(props: PortalProps): ReactElement {\n const { children, disabled = false } = props;\n const container = usePortalContainer();\n if (!container || disabled) {\n return <>{disabled && children}</>;\n }\n\n return createPortal(children, container);\n}\n"],"names":["createPortal","usePortalContainer","Portal","props","children","disabled","container"],"mappings":"AAAA;;AAGA,SAASA,YAAY,QAAQ,YAAY;AAEzC,SAASC,kBAAkB,QAAQ,+BAA+B;AAkBlE;;;;;;;;;;;;;;;;;;;CAmBC,GACD,OAAO,SAASC,OAAOC,KAAkB;IACvC,MAAM,EAAEC,QAAQ,EAAEC,WAAW,KAAK,EAAE,GAAGF;IACvC,MAAMG,YAAYL;IAClB,IAAI,CAACK,aAAaD,UAAU;QAC1B,qBAAO;sBAAGA,YAAYD;;IACxB;IAEA,qBAAOJ,aAAaI,UAAUE;AAChC"}
@@ -33,7 +33,7 @@ export interface PortalContainerProviderProps {
33
33
  * `<div id="rmd-portal-container"></div>` will be added as the last child to
34
34
  * the `document.body` and be used as the container element.
35
35
  *
36
- * @see {@link https://next.react-md.dev/components/portal | Portal Demos}
36
+ * @see {@link https://react-md.dev/components/portal | Portal Demos}
37
37
  * @see {@link Portal}
38
38
  * @since 6.0.0
39
39
  */
@@ -21,7 +21,7 @@ const { Provider } = context;
21
21
  * `<div id="rmd-portal-container"></div>` will be added as the last child to
22
22
  * the `document.body` and be used as the container element.
23
23
  *
24
- * @see {@link https://next.react-md.dev/components/portal | Portal Demos}
24
+ * @see {@link https://react-md.dev/components/portal | Portal Demos}
25
25
  * @see {@link Portal}
26
26
  * @since 6.0.0
27
27
  */ export function PortalContainerProvider(props) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/portal/PortalContainerProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ReactElement,\n type ReactNode,\n type RefObject,\n createContext,\n useContext,\n useEffect,\n useState,\n} from \"react\";\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport type PortalContainerNode = Element | DocumentFragment | null;\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport type PortalContainer =\n | PortalContainerNode\n | RefObject<PortalContainerNode>;\n\nexport const PORTAL_CONTAINER_ID = \"rmd-portal-container\";\n\nlet portalContainer: PortalContainerNode = null;\n\nconst getPortalContainer = (): PortalContainerNode =>\n typeof window === \"undefined\" ? null : document.body;\n\nconst context = createContext<PortalContainerNode>(getPortalContainer());\ncontext.displayName = \"PortalContainer\";\nconst { Provider } = context;\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport function usePortalContainer(): PortalContainerNode {\n return useContext(context);\n}\n\n/** @since 6.0.0 */\nexport interface PortalContainerProviderProps {\n /**\n * An optional container element to use. When this is `undefined`, a\n * `<div id=\"rmd-portal-container\"></div>` will be added as the last child to\n * the `document.body` and be used as the container element.\n */\n container?: PortalContainer;\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This component allows for all child `Portal` components to render within the\n * same container element. If a custom `container` element is not provided, a\n * `<div id=\"rmd-portal-container\"></div>` will be added as the last child to\n * the `document.body` and be used as the container element.\n *\n * @see {@link https://next.react-md.dev/components/portal | Portal Demos}\n * @see {@link Portal}\n * @since 6.0.0\n */\nexport function PortalContainerProvider(\n props: PortalContainerProviderProps\n): ReactElement {\n const { container, children } = props;\n const [value, setValue] = useState<PortalContainerNode>(portalContainer);\n useEffect(() => {\n if (container && \"current\" in container) {\n setValue(container.current);\n return;\n }\n\n if (typeof container !== \"undefined\") {\n setValue(container);\n return;\n }\n\n if (!portalContainer) {\n portalContainer = document.createElement(\"div\");\n portalContainer.id = PORTAL_CONTAINER_ID;\n }\n if (!document.body.contains(portalContainer)) {\n document.body.appendChild(portalContainer);\n }\n\n setValue(portalContainer);\n\n return () => {\n if (portalContainer && document.body.contains(portalContainer)) {\n document.body.removeChild(portalContainer);\n }\n };\n }, [container]);\n\n const containerValue =\n (container && \"current\" in container) || !container ? value : container;\n return <Provider value={containerValue}>{children}</Provider>;\n}\n"],"names":["createContext","useContext","useEffect","useState","PORTAL_CONTAINER_ID","portalContainer","getPortalContainer","window","document","body","context","displayName","Provider","usePortalContainer","PortalContainerProvider","props","container","children","value","setValue","current","createElement","id","contains","appendChild","removeChild","containerValue"],"mappings":"AAAA;;AAEA,SAIEA,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,QAAQ;AAgBf,OAAO,MAAMC,sBAAsB,uBAAuB;AAE1D,IAAIC,kBAAuC;AAE3C,MAAMC,qBAAqB,IACzB,OAAOC,WAAW,cAAc,OAAOC,SAASC,IAAI;AAEtD,MAAMC,wBAAUV,cAAmCM;AACnDI,QAAQC,WAAW,GAAG;AACtB,MAAM,EAAEC,QAAQ,EAAE,GAAGF;AAErB;;;CAGC,GACD,OAAO,SAASG;IACd,OAAOZ,WAAWS;AACpB;AAaA;;;;;;;;;;;CAWC,GACD,OAAO,SAASI,wBACdC,KAAmC;IAEnC,MAAM,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGF;IAChC,MAAM,CAACG,OAAOC,SAAS,GAAGhB,SAA8BE;IACxDH,UAAU;QACR,IAAIc,aAAa,aAAaA,WAAW;YACvCG,SAASH,UAAUI,OAAO;YAC1B;QACF;QAEA,IAAI,OAAOJ,cAAc,aAAa;YACpCG,SAASH;YACT;QACF;QAEA,IAAI,CAACX,iBAAiB;YACpBA,kBAAkBG,SAASa,aAAa,CAAC;YACzChB,gBAAgBiB,EAAE,GAAGlB;QACvB;QACA,IAAI,CAACI,SAASC,IAAI,CAACc,QAAQ,CAAClB,kBAAkB;YAC5CG,SAASC,IAAI,CAACe,WAAW,CAACnB;QAC5B;QAEAc,SAASd;QAET,OAAO;YACL,IAAIA,mBAAmBG,SAASC,IAAI,CAACc,QAAQ,CAAClB,kBAAkB;gBAC9DG,SAASC,IAAI,CAACgB,WAAW,CAACpB;YAC5B;QACF;IACF,GAAG;QAACW;KAAU;IAEd,MAAMU,iBACJ,AAACV,aAAa,aAAaA,aAAc,CAACA,YAAYE,QAAQF;IAChE,qBAAO,KAACJ;QAASM,OAAOQ;kBAAiBT;;AAC3C"}
1
+ {"version":3,"sources":["../../src/portal/PortalContainerProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ReactElement,\n type ReactNode,\n type RefObject,\n createContext,\n useContext,\n useEffect,\n useState,\n} from \"react\";\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport type PortalContainerNode = Element | DocumentFragment | null;\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport type PortalContainer =\n | PortalContainerNode\n | RefObject<PortalContainerNode>;\n\nexport const PORTAL_CONTAINER_ID = \"rmd-portal-container\";\n\nlet portalContainer: PortalContainerNode = null;\n\nconst getPortalContainer = (): PortalContainerNode =>\n typeof window === \"undefined\" ? null : document.body;\n\nconst context = createContext<PortalContainerNode>(getPortalContainer());\ncontext.displayName = \"PortalContainer\";\nconst { Provider } = context;\n\n/**\n * @internal\n * @since 6.0.0\n */\nexport function usePortalContainer(): PortalContainerNode {\n return useContext(context);\n}\n\n/** @since 6.0.0 */\nexport interface PortalContainerProviderProps {\n /**\n * An optional container element to use. When this is `undefined`, a\n * `<div id=\"rmd-portal-container\"></div>` will be added as the last child to\n * the `document.body` and be used as the container element.\n */\n container?: PortalContainer;\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This component allows for all child `Portal` components to render within the\n * same container element. If a custom `container` element is not provided, a\n * `<div id=\"rmd-portal-container\"></div>` will be added as the last child to\n * the `document.body` and be used as the container element.\n *\n * @see {@link https://react-md.dev/components/portal | Portal Demos}\n * @see {@link Portal}\n * @since 6.0.0\n */\nexport function PortalContainerProvider(\n props: PortalContainerProviderProps\n): ReactElement {\n const { container, children } = props;\n const [value, setValue] = useState<PortalContainerNode>(portalContainer);\n useEffect(() => {\n if (container && \"current\" in container) {\n setValue(container.current);\n return;\n }\n\n if (typeof container !== \"undefined\") {\n setValue(container);\n return;\n }\n\n if (!portalContainer) {\n portalContainer = document.createElement(\"div\");\n portalContainer.id = PORTAL_CONTAINER_ID;\n }\n if (!document.body.contains(portalContainer)) {\n document.body.appendChild(portalContainer);\n }\n\n setValue(portalContainer);\n\n return () => {\n if (portalContainer && document.body.contains(portalContainer)) {\n document.body.removeChild(portalContainer);\n }\n };\n }, [container]);\n\n const containerValue =\n (container && \"current\" in container) || !container ? value : container;\n return <Provider value={containerValue}>{children}</Provider>;\n}\n"],"names":["createContext","useContext","useEffect","useState","PORTAL_CONTAINER_ID","portalContainer","getPortalContainer","window","document","body","context","displayName","Provider","usePortalContainer","PortalContainerProvider","props","container","children","value","setValue","current","createElement","id","contains","appendChild","removeChild","containerValue"],"mappings":"AAAA;;AAEA,SAIEA,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,QAAQ;AAgBf,OAAO,MAAMC,sBAAsB,uBAAuB;AAE1D,IAAIC,kBAAuC;AAE3C,MAAMC,qBAAqB,IACzB,OAAOC,WAAW,cAAc,OAAOC,SAASC,IAAI;AAEtD,MAAMC,wBAAUV,cAAmCM;AACnDI,QAAQC,WAAW,GAAG;AACtB,MAAM,EAAEC,QAAQ,EAAE,GAAGF;AAErB;;;CAGC,GACD,OAAO,SAASG;IACd,OAAOZ,WAAWS;AACpB;AAaA;;;;;;;;;;;CAWC,GACD,OAAO,SAASI,wBACdC,KAAmC;IAEnC,MAAM,EAAEC,SAAS,EAAEC,QAAQ,EAAE,GAAGF;IAChC,MAAM,CAACG,OAAOC,SAAS,GAAGhB,SAA8BE;IACxDH,UAAU;QACR,IAAIc,aAAa,aAAaA,WAAW;YACvCG,SAASH,UAAUI,OAAO;YAC1B;QACF;QAEA,IAAI,OAAOJ,cAAc,aAAa;YACpCG,SAASH;YACT;QACF;QAEA,IAAI,CAACX,iBAAiB;YACpBA,kBAAkBG,SAASa,aAAa,CAAC;YACzChB,gBAAgBiB,EAAE,GAAGlB;QACvB;QACA,IAAI,CAACI,SAASC,IAAI,CAACc,QAAQ,CAAClB,kBAAkB;YAC5CG,SAASC,IAAI,CAACe,WAAW,CAACnB;QAC5B;QAEAc,SAASd;QAET,OAAO;YACL,IAAIA,mBAAmBG,SAASC,IAAI,CAACc,QAAQ,CAAClB,kBAAkB;gBAC9DG,SAASC,IAAI,CAACgB,WAAW,CAACpB;YAC5B;QACF;IACF,GAAG;QAACW;KAAU;IAEd,MAAMU,iBACJ,AAACV,aAAa,aAAaA,aAAc,CAACA,YAAYE,QAAQF;IAChE,qBAAO,KAACJ;QAASM,OAAOQ;kBAAiBT;;AAC3C"}
@@ -171,7 +171,7 @@ export interface FixedPositioningImplementation<E extends HTMLElement> {
171
171
  * }
172
172
  * ```
173
173
  *
174
- * @see {@link https://next.react-md.dev/hooks/use-fixed-positioning | useFixedPositioning Demos}
174
+ * @see {@link https://react-md.dev/hooks/use-fixed-positioning | useFixedPositioning Demos}
175
175
  * @typeParam FixedToElement - An HTMLElement type for the static element.
176
176
  * @typeParam FixedElement - An HTMLElement type for the fixed element.
177
177
  * @since 4.0.0
@@ -59,7 +59,7 @@ const noop = ()=>undefined;
59
59
  * }
60
60
  * ```
61
61
  *
62
- * @see {@link https://next.react-md.dev/hooks/use-fixed-positioning | useFixedPositioning Demos}
62
+ * @see {@link https://react-md.dev/hooks/use-fixed-positioning | useFixedPositioning Demos}
63
63
  * @typeParam FixedToElement - An HTMLElement type for the static element.
64
64
  * @typeParam FixedElement - An HTMLElement type for the fixed element.
65
65
  * @since 4.0.0