@krelborn/stylesui 0.0.0-stage → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (526) hide show
  1. package/LICENSE +74 -0
  2. package/README.md +129 -2
  3. package/dist/accessibility/RequiredAccessibleName.d.ts +26 -0
  4. package/dist/accessibility/idSegment.d.ts +7 -0
  5. package/dist/accessibility/idSegment.js +5 -0
  6. package/dist/accessibility/index.d.ts +2 -0
  7. package/dist/collections/index.d.ts +7 -0
  8. package/dist/collections/optionId.d.ts +8 -0
  9. package/dist/collections/optionId.js +6 -0
  10. package/dist/collections/renderedOptions.d.ts +37 -0
  11. package/dist/collections/renderedOptions.js +17 -0
  12. package/dist/collections/targetIndexForKey.d.ts +45 -0
  13. package/dist/collections/targetIndexForKey.js +16 -0
  14. package/dist/collections/typeAhead.d.ts +43 -0
  15. package/dist/collections/typeAhead.js +18 -0
  16. package/dist/components/Accordion/Accordion.css +1 -0
  17. package/dist/components/Accordion/Accordion.d.ts +90 -0
  18. package/dist/components/Accordion/Accordion.js +47 -0
  19. package/dist/components/Accordion/Accordion.module.js +19 -0
  20. package/dist/components/Accordion/AccordionContext.d.ts +40 -0
  21. package/dist/components/Accordion/AccordionContext.js +4 -0
  22. package/dist/components/Accordion/AccordionItem.d.ts +51 -0
  23. package/dist/components/Accordion/AccordionItem.js +69 -0
  24. package/dist/components/Accordion/AccordionToggleContent.d.ts +30 -0
  25. package/dist/components/Accordion/AccordionToggleContent.js +44 -0
  26. package/dist/components/Accordion/accordionIds.d.ts +24 -0
  27. package/dist/components/Accordion/accordionIds.js +12 -0
  28. package/dist/components/Accordion/index.d.ts +4 -0
  29. package/dist/components/Accordion/useAccordionContext.d.ts +9 -0
  30. package/dist/components/Accordion/useAccordionContext.js +10 -0
  31. package/dist/components/Accordion/useFindablePanel.d.ts +25 -0
  32. package/dist/components/Accordion/useFindablePanel.js +36 -0
  33. package/dist/components/Accordion/useFragmentTargetReveal.d.ts +27 -0
  34. package/dist/components/Accordion/useFragmentTargetReveal.js +36 -0
  35. package/dist/components/Accordion/useHasOpened.d.ts +7 -0
  36. package/dist/components/Accordion/useHasOpened.js +7 -0
  37. package/dist/components/Alert/Alert.css +1 -0
  38. package/dist/components/Alert/Alert.d.ts +47 -0
  39. package/dist/components/Alert/Alert.js +27 -0
  40. package/dist/components/Alert/Alert.module.js +8 -0
  41. package/dist/components/Alert/AlertIcon.d.ts +14 -0
  42. package/dist/components/Alert/AlertIcon.js +42 -0
  43. package/dist/components/Alert/index.d.ts +2 -0
  44. package/dist/components/Avatar/Avatar.css +1 -0
  45. package/dist/components/Avatar/Avatar.d.ts +33 -0
  46. package/dist/components/Avatar/Avatar.js +26 -0
  47. package/dist/components/Avatar/Avatar.module.js +6 -0
  48. package/dist/components/Avatar/index.d.ts +2 -0
  49. package/dist/components/Avatar/initialsOf.d.ts +9 -0
  50. package/dist/components/Avatar/initialsOf.js +9 -0
  51. package/dist/components/AvatarGroup/AvatarGroup.css +1 -0
  52. package/dist/components/AvatarGroup/AvatarGroup.d.ts +30 -0
  53. package/dist/components/AvatarGroup/AvatarGroup.js +33 -0
  54. package/dist/components/AvatarGroup/AvatarGroup.module.js +6 -0
  55. package/dist/components/AvatarGroup/index.d.ts +2 -0
  56. package/dist/components/Badge/Badge.css +1 -0
  57. package/dist/components/Badge/Badge.d.ts +36 -0
  58. package/dist/components/Badge/Badge.js +15 -0
  59. package/dist/components/Badge/Badge.module.js +3 -0
  60. package/dist/components/Badge/index.d.ts +2 -0
  61. package/dist/components/Box/Box.css +1 -0
  62. package/dist/components/Box/Box.d.ts +31 -0
  63. package/dist/components/Box/Box.js +17 -0
  64. package/dist/components/Box/Box.module.js +3 -0
  65. package/dist/components/Box/index.d.ts +2 -0
  66. package/dist/components/Button/Button.css +1 -0
  67. package/dist/components/Button/Button.d.ts +42 -0
  68. package/dist/components/Button/Button.js +24 -0
  69. package/dist/components/Button/Button.module.js +6 -0
  70. package/dist/components/Button/index.d.ts +2 -0
  71. package/dist/components/Card/Card.css +1 -0
  72. package/dist/components/Card/Card.d.ts +24 -0
  73. package/dist/components/Card/Card.js +14 -0
  74. package/dist/components/Card/Card.module.js +3 -0
  75. package/dist/components/Card/index.d.ts +2 -0
  76. package/dist/components/Center/Center.css +1 -0
  77. package/dist/components/Center/Center.d.ts +34 -0
  78. package/dist/components/Center/Center.js +19 -0
  79. package/dist/components/Center/Center.module.js +3 -0
  80. package/dist/components/Center/index.d.ts +2 -0
  81. package/dist/components/Checkbox/Checkbox.d.ts +23 -0
  82. package/dist/components/Checkbox/Checkbox.js +12 -0
  83. package/dist/components/Checkbox/index.d.ts +2 -0
  84. package/dist/components/ChoiceControl/ChoiceControl.css +1 -0
  85. package/dist/components/ChoiceControl/ChoiceControl.d.ts +21 -0
  86. package/dist/components/ChoiceControl/ChoiceControl.js +39 -0
  87. package/dist/components/ChoiceControl/ChoiceControl.module.js +8 -0
  88. package/dist/components/ChoiceControl/index.d.ts +1 -0
  89. package/dist/components/Cluster/Cluster.d.ts +29 -0
  90. package/dist/components/Cluster/Cluster.js +13 -0
  91. package/dist/components/Cluster/index.d.ts +2 -0
  92. package/dist/components/Code/Code.css +1 -0
  93. package/dist/components/Code/Code.d.ts +13 -0
  94. package/dist/components/Code/Code.js +19 -0
  95. package/dist/components/Code/Code.module.js +3 -0
  96. package/dist/components/Code/index.d.ts +2 -0
  97. package/dist/components/Combobox/Autocomplete.d.ts +83 -0
  98. package/dist/components/Combobox/Autocomplete.js +102 -0
  99. package/dist/components/Combobox/Combobox.css +1 -0
  100. package/dist/components/Combobox/Combobox.d.ts +59 -0
  101. package/dist/components/Combobox/Combobox.js +82 -0
  102. package/dist/components/Combobox/Combobox.module.js +17 -0
  103. package/dist/components/Combobox/ComboboxContext.d.ts +88 -0
  104. package/dist/components/Combobox/ComboboxContext.js +4 -0
  105. package/dist/components/Combobox/ComboboxFieldValue.d.ts +17 -0
  106. package/dist/components/Combobox/ComboboxFieldValue.js +33 -0
  107. package/dist/components/Combobox/ComboboxOption.d.ts +51 -0
  108. package/dist/components/Combobox/ComboboxOption.js +74 -0
  109. package/dist/components/Combobox/ComboboxOptionContent.d.ts +32 -0
  110. package/dist/components/Combobox/ComboboxOptionContent.js +51 -0
  111. package/dist/components/Combobox/ComboboxPopup.d.ts +50 -0
  112. package/dist/components/Combobox/ComboboxPopup.js +59 -0
  113. package/dist/components/Combobox/autocompleteKeys.d.ts +31 -0
  114. package/dist/components/Combobox/autocompleteKeys.js +25 -0
  115. package/dist/components/Combobox/comboboxKeys.d.ts +10 -0
  116. package/dist/components/Combobox/comboboxKeys.js +22 -0
  117. package/dist/components/Combobox/containsText.d.ts +9 -0
  118. package/dist/components/Combobox/containsText.js +8 -0
  119. package/dist/components/Combobox/index.d.ts +6 -0
  120. package/dist/components/Combobox/isAltArrow.d.ts +9 -0
  121. package/dist/components/Combobox/isAltArrow.js +5 -0
  122. package/dist/components/Combobox/isOptionShown.d.ts +10 -0
  123. package/dist/components/Combobox/isOptionShown.js +5 -0
  124. package/dist/components/Combobox/useAutocompleteText.d.ts +56 -0
  125. package/dist/components/Combobox/useAutocompleteText.js +27 -0
  126. package/dist/components/Combobox/useComboboxContext.d.ts +9 -0
  127. package/dist/components/Combobox/useComboboxContext.js +10 -0
  128. package/dist/components/Combobox/useComboboxList.d.ts +129 -0
  129. package/dist/components/Combobox/useComboboxList.js +138 -0
  130. package/dist/components/Combobox/useComboboxOption.d.ts +35 -0
  131. package/dist/components/Combobox/useComboboxOption.js +46 -0
  132. package/dist/components/Combobox/useComboboxSelection.d.ts +45 -0
  133. package/dist/components/Combobox/useComboboxSelection.js +17 -0
  134. package/dist/components/Combobox/useResultsAnnouncement.d.ts +23 -0
  135. package/dist/components/Combobox/useResultsAnnouncement.js +24 -0
  136. package/dist/components/ContextMenu/index.d.ts +2 -0
  137. package/dist/components/ContextMenu/useContextMenu.d.ts +112 -0
  138. package/dist/components/ContextMenu/useContextMenu.js +202 -0
  139. package/dist/components/ContextMenu/watchLongPress.d.ts +35 -0
  140. package/dist/components/ContextMenu/watchLongPress.js +38 -0
  141. package/dist/components/Counter/Counter.css +1 -0
  142. package/dist/components/Counter/Counter.d.ts +39 -0
  143. package/dist/components/Counter/Counter.js +18 -0
  144. package/dist/components/Counter/Counter.module.js +3 -0
  145. package/dist/components/Counter/index.d.ts +2 -0
  146. package/dist/components/Cover/Cover.css +1 -0
  147. package/dist/components/Cover/Cover.d.ts +40 -0
  148. package/dist/components/Cover/Cover.js +29 -0
  149. package/dist/components/Cover/Cover.module.js +6 -0
  150. package/dist/components/Cover/index.d.ts +2 -0
  151. package/dist/components/Divider/Divider.css +1 -0
  152. package/dist/components/Divider/Divider.d.ts +25 -0
  153. package/dist/components/Divider/Divider.js +15 -0
  154. package/dist/components/Divider/Divider.module.js +3 -0
  155. package/dist/components/Divider/index.d.ts +2 -0
  156. package/dist/components/Field/Field.css +1 -0
  157. package/dist/components/Field/Field.d.ts +49 -0
  158. package/dist/components/Field/Field.js +49 -0
  159. package/dist/components/Field/Field.module.js +8 -0
  160. package/dist/components/Field/index.d.ts +2 -0
  161. package/dist/components/Fieldset/Fieldset.css +1 -0
  162. package/dist/components/Fieldset/Fieldset.d.ts +35 -0
  163. package/dist/components/Fieldset/Fieldset.js +64 -0
  164. package/dist/components/Fieldset/Fieldset.module.js +8 -0
  165. package/dist/components/Fieldset/index.d.ts +2 -0
  166. package/dist/components/Frame/Frame.css +1 -0
  167. package/dist/components/Frame/Frame.d.ts +23 -0
  168. package/dist/components/Frame/Frame.js +16 -0
  169. package/dist/components/Frame/Frame.module.js +3 -0
  170. package/dist/components/Frame/index.d.ts +2 -0
  171. package/dist/components/Grid/Grid.css +1 -0
  172. package/dist/components/Grid/Grid.d.ts +25 -0
  173. package/dist/components/Grid/Grid.js +22 -0
  174. package/dist/components/Grid/Grid.module.js +3 -0
  175. package/dist/components/Grid/index.d.ts +2 -0
  176. package/dist/components/Heading/Heading.css +1 -0
  177. package/dist/components/Heading/Heading.d.ts +39 -0
  178. package/dist/components/Heading/Heading.js +23 -0
  179. package/dist/components/Heading/Heading.module.js +3 -0
  180. package/dist/components/Heading/index.d.ts +2 -0
  181. package/dist/components/HorizontalFlow/HorizontalFlow.css +1 -0
  182. package/dist/components/HorizontalFlow/HorizontalFlow.d.ts +30 -0
  183. package/dist/components/HorizontalFlow/HorizontalFlow.js +30 -0
  184. package/dist/components/HorizontalFlow/HorizontalFlow.module.js +3 -0
  185. package/dist/components/HorizontalFlow/index.d.ts +2 -0
  186. package/dist/components/Icon/AddIcon.d.ts +11 -0
  187. package/dist/components/Icon/AddIcon.js +21 -0
  188. package/dist/components/Icon/CheckIcon.d.ts +11 -0
  189. package/dist/components/Icon/CheckIcon.js +18 -0
  190. package/dist/components/Icon/ChevronDownIcon.d.ts +11 -0
  191. package/dist/components/Icon/ChevronDownIcon.js +18 -0
  192. package/dist/components/Icon/ChevronRightIcon.d.ts +11 -0
  193. package/dist/components/Icon/ChevronRightIcon.js +19 -0
  194. package/dist/components/Icon/CloseIcon.d.ts +12 -0
  195. package/dist/components/Icon/CloseIcon.js +21 -0
  196. package/dist/components/Icon/ColorModeIcon.d.ts +12 -0
  197. package/dist/components/Icon/ColorModeIcon.js +36 -0
  198. package/dist/components/Icon/DeleteIcon.d.ts +11 -0
  199. package/dist/components/Icon/DeleteIcon.js +36 -0
  200. package/dist/components/Icon/Icon.css +1 -0
  201. package/dist/components/Icon/Icon.d.ts +40 -0
  202. package/dist/components/Icon/Icon.js +27 -0
  203. package/dist/components/Icon/Icon.module.js +6 -0
  204. package/dist/components/Icon/InfoIcon.d.ts +11 -0
  205. package/dist/components/Icon/InfoIcon.js +30 -0
  206. package/dist/components/Icon/MenuIcon.d.ts +12 -0
  207. package/dist/components/Icon/MenuIcon.js +28 -0
  208. package/dist/components/Icon/MoreHorizontalIcon.d.ts +11 -0
  209. package/dist/components/Icon/MoreHorizontalIcon.js +34 -0
  210. package/dist/components/Icon/MoreVerticalIcon.d.ts +11 -0
  211. package/dist/components/Icon/MoreVerticalIcon.js +34 -0
  212. package/dist/components/Icon/PaletteIcon.d.ts +12 -0
  213. package/dist/components/Icon/PaletteIcon.js +48 -0
  214. package/dist/components/Icon/RefreshIcon.d.ts +13 -0
  215. package/dist/components/Icon/RefreshIcon.js +32 -0
  216. package/dist/components/Icon/RemoveIcon.d.ts +11 -0
  217. package/dist/components/Icon/RemoveIcon.js +18 -0
  218. package/dist/components/Icon/SendIcon.d.ts +11 -0
  219. package/dist/components/Icon/SendIcon.js +22 -0
  220. package/dist/components/Icon/index.d.ts +16 -0
  221. package/dist/components/IconButton/IconButton.css +1 -0
  222. package/dist/components/IconButton/IconButton.d.ts +45 -0
  223. package/dist/components/IconButton/IconButton.js +40 -0
  224. package/dist/components/IconButton/IconButton.module.js +7 -0
  225. package/dist/components/IconButton/index.d.ts +2 -0
  226. package/dist/components/Kbd/Kbd.css +1 -0
  227. package/dist/components/Kbd/Kbd.d.ts +13 -0
  228. package/dist/components/Kbd/Kbd.js +19 -0
  229. package/dist/components/Kbd/Kbd.module.js +3 -0
  230. package/dist/components/Kbd/index.d.ts +2 -0
  231. package/dist/components/Link/Link.css +1 -0
  232. package/dist/components/Link/Link.d.ts +52 -0
  233. package/dist/components/Link/Link.js +26 -0
  234. package/dist/components/Link/Link.module.js +3 -0
  235. package/dist/components/Link/index.d.ts +2 -0
  236. package/dist/components/Listbox/Listbox.css +1 -0
  237. package/dist/components/Listbox/Listbox.d.ts +46 -0
  238. package/dist/components/Listbox/Listbox.js +55 -0
  239. package/dist/components/Listbox/Listbox.module.js +6 -0
  240. package/dist/components/Listbox/ListboxContext.d.ts +38 -0
  241. package/dist/components/Listbox/ListboxContext.js +4 -0
  242. package/dist/components/Listbox/ListboxOption.d.ts +31 -0
  243. package/dist/components/Listbox/ListboxOption.js +42 -0
  244. package/dist/components/Listbox/index.d.ts +4 -0
  245. package/dist/components/Listbox/useListbox.d.ts +54 -0
  246. package/dist/components/Listbox/useListbox.js +103 -0
  247. package/dist/components/Listbox/useListboxContext.d.ts +9 -0
  248. package/dist/components/Listbox/useListboxContext.js +10 -0
  249. package/dist/components/Menu/Menu.d.ts +70 -0
  250. package/dist/components/Menu/Menu.js +76 -0
  251. package/dist/components/Menu/MenuContext.d.ts +29 -0
  252. package/dist/components/Menu/MenuContext.js +4 -0
  253. package/dist/components/Menu/MenuGroup.d.ts +22 -0
  254. package/dist/components/Menu/MenuGroup.js +32 -0
  255. package/dist/components/Menu/MenuItem.d.ts +77 -0
  256. package/dist/components/Menu/MenuItem.js +54 -0
  257. package/dist/components/Menu/MenuItemCheckbox.d.ts +61 -0
  258. package/dist/components/Menu/MenuItemCheckbox.js +37 -0
  259. package/dist/components/Menu/MenuItemRadio.d.ts +47 -0
  260. package/dist/components/Menu/MenuItemRadio.js +39 -0
  261. package/dist/components/Menu/MenuRadioGroup.d.ts +34 -0
  262. package/dist/components/Menu/MenuRadioGroup.js +27 -0
  263. package/dist/components/Menu/MenuRadioGroupContext.d.ts +17 -0
  264. package/dist/components/Menu/MenuRadioGroupContext.js +4 -0
  265. package/dist/components/Menu/MenuSeparator.d.ts +16 -0
  266. package/dist/components/Menu/MenuSeparator.js +20 -0
  267. package/dist/components/Menu/Submenu.d.ts +36 -0
  268. package/dist/components/Menu/Submenu.js +122 -0
  269. package/dist/components/Menu/index.d.ts +18 -0
  270. package/dist/components/Menu/useMenu.d.ts +18 -0
  271. package/dist/components/Menu/useMenu.js +20 -0
  272. package/dist/components/Menu/useMenuButton.d.ts +124 -0
  273. package/dist/components/Menu/useMenuButton.js +92 -0
  274. package/dist/components/Menu/useMenuContext.d.ts +9 -0
  275. package/dist/components/Menu/useMenuContext.js +10 -0
  276. package/dist/components/Menu/useMenuItemContent.d.ts +55 -0
  277. package/dist/components/Menu/useMenuItemContent.js +66 -0
  278. package/dist/components/Menu/useMenuPointer.d.ts +27 -0
  279. package/dist/components/Menu/useMenuPointer.js +56 -0
  280. package/dist/components/Menu/useMenuRadioGroupContext.d.ts +9 -0
  281. package/dist/components/Menu/useMenuRadioGroupContext.js +10 -0
  282. package/dist/components/MenuSurface/MenuSurface.css +1 -0
  283. package/dist/components/MenuSurface/MenuSurface.module.js +16 -0
  284. package/dist/components/Menubar/Menubar.css +1 -0
  285. package/dist/components/Menubar/Menubar.d.ts +23 -0
  286. package/dist/components/Menubar/Menubar.js +67 -0
  287. package/dist/components/Menubar/Menubar.module.js +7 -0
  288. package/dist/components/Menubar/MenubarContext.d.ts +29 -0
  289. package/dist/components/Menubar/MenubarContext.js +4 -0
  290. package/dist/components/Menubar/MenubarMenu.d.ts +26 -0
  291. package/dist/components/Menubar/MenubarMenu.js +88 -0
  292. package/dist/components/Menubar/findOpenMenubarItem.d.ts +7 -0
  293. package/dist/components/Menubar/findOpenMenubarItem.js +6 -0
  294. package/dist/components/Menubar/index.d.ts +4 -0
  295. package/dist/components/Menubar/menubarItems.d.ts +7 -0
  296. package/dist/components/Menubar/menubarItems.js +5 -0
  297. package/dist/components/Menubar/useMenubarContext.d.ts +9 -0
  298. package/dist/components/Menubar/useMenubarContext.js +10 -0
  299. package/dist/components/NavBar/NavBar.css +1 -0
  300. package/dist/components/NavBar/NavBar.d.ts +53 -0
  301. package/dist/components/NavBar/NavBar.js +97 -0
  302. package/dist/components/NavBar/NavBar.module.js +22 -0
  303. package/dist/components/NavBar/NavBarContext.d.ts +21 -0
  304. package/dist/components/NavBar/NavBarContext.js +4 -0
  305. package/dist/components/NavBar/NavBarItem.d.ts +32 -0
  306. package/dist/components/NavBar/NavBarItem.js +18 -0
  307. package/dist/components/NavBar/NavBarMenu.d.ts +32 -0
  308. package/dist/components/NavBar/NavBarMenu.js +84 -0
  309. package/dist/components/NavBar/NavBarMenuGroup.d.ts +25 -0
  310. package/dist/components/NavBar/NavBarMenuGroup.js +40 -0
  311. package/dist/components/NavBar/NavBarMenuItem.d.ts +36 -0
  312. package/dist/components/NavBar/NavBarMenuItem.js +49 -0
  313. package/dist/components/NavBar/index.d.ts +10 -0
  314. package/dist/components/NavBar/isNavBarCollapsed.d.ts +8 -0
  315. package/dist/components/NavBar/isNavBarCollapsed.js +5 -0
  316. package/dist/components/NavBar/leavesPageInPlace.d.ts +12 -0
  317. package/dist/components/NavBar/leavesPageInPlace.js +29 -0
  318. package/dist/components/NavBar/renderNavBarLink.d.ts +12 -0
  319. package/dist/components/NavBar/renderNavBarLink.js +16 -0
  320. package/dist/components/NavBar/useLayoutSwitch.d.ts +26 -0
  321. package/dist/components/NavBar/useLayoutSwitch.js +25 -0
  322. package/dist/components/NavBar/useNavBarContext.d.ts +9 -0
  323. package/dist/components/NavBar/useNavBarContext.js +10 -0
  324. package/dist/components/NavList/NavList.css +1 -0
  325. package/dist/components/NavList/NavList.d.ts +20 -0
  326. package/dist/components/NavList/NavList.js +27 -0
  327. package/dist/components/NavList/NavList.module.js +11 -0
  328. package/dist/components/NavList/NavListGroup.d.ts +25 -0
  329. package/dist/components/NavList/NavListGroup.js +39 -0
  330. package/dist/components/NavList/NavListItem.d.ts +49 -0
  331. package/dist/components/NavList/NavListItem.js +56 -0
  332. package/dist/components/NavList/index.d.ts +6 -0
  333. package/dist/components/Overlay/Overlay.css +1 -0
  334. package/dist/components/Overlay/Overlay.d.ts +33 -0
  335. package/dist/components/Overlay/Overlay.js +35 -0
  336. package/dist/components/Overlay/Overlay.module.js +3 -0
  337. package/dist/components/Overlay/index.d.ts +1 -0
  338. package/dist/components/PageLayout/PageLayout.css +1 -0
  339. package/dist/components/PageLayout/PageLayout.d.ts +26 -0
  340. package/dist/components/PageLayout/PageLayout.js +17 -0
  341. package/dist/components/PageLayout/PageLayout.module.js +3 -0
  342. package/dist/components/PageLayout/index.d.ts +2 -0
  343. package/dist/components/Popover/Popover.css +1 -0
  344. package/dist/components/Popover/Popover.d.ts +52 -0
  345. package/dist/components/Popover/Popover.js +20 -0
  346. package/dist/components/Popover/Popover.module.js +3 -0
  347. package/dist/components/Popover/index.d.ts +4 -0
  348. package/dist/components/Popover/usePopover.d.ts +96 -0
  349. package/dist/components/Popover/usePopover.js +71 -0
  350. package/dist/components/Prose/Prose.css +1 -0
  351. package/dist/components/Prose/Prose.d.ts +50 -0
  352. package/dist/components/Prose/Prose.js +15 -0
  353. package/dist/components/Prose/Prose.module.js +3 -0
  354. package/dist/components/Prose/index.d.ts +2 -0
  355. package/dist/components/Radio/Radio.d.ts +29 -0
  356. package/dist/components/Radio/Radio.js +23 -0
  357. package/dist/components/Radio/index.d.ts +2 -0
  358. package/dist/components/RadioGroup/RadioGroup.css +1 -0
  359. package/dist/components/RadioGroup/RadioGroup.d.ts +58 -0
  360. package/dist/components/RadioGroup/RadioGroup.js +36 -0
  361. package/dist/components/RadioGroup/RadioGroup.module.js +3 -0
  362. package/dist/components/RadioGroup/index.d.ts +2 -0
  363. package/dist/components/RequiredIndicator/RequiredIndicator.css +1 -0
  364. package/dist/components/RequiredIndicator/RequiredIndicator.d.ts +6 -0
  365. package/dist/components/RequiredIndicator/RequiredIndicator.js +15 -0
  366. package/dist/components/RequiredIndicator/RequiredIndicator.module.js +3 -0
  367. package/dist/components/RequiredIndicator/index.d.ts +1 -0
  368. package/dist/components/Row/Row.d.ts +29 -0
  369. package/dist/components/Row/Row.js +13 -0
  370. package/dist/components/Row/index.d.ts +2 -0
  371. package/dist/components/SegmentedControl/Segment.d.ts +24 -0
  372. package/dist/components/SegmentedControl/Segment.js +41 -0
  373. package/dist/components/SegmentedControl/SegmentedControl.css +1 -0
  374. package/dist/components/SegmentedControl/SegmentedControl.d.ts +25 -0
  375. package/dist/components/SegmentedControl/SegmentedControl.js +19 -0
  376. package/dist/components/SegmentedControl/SegmentedControl.module.js +9 -0
  377. package/dist/components/SegmentedControl/index.d.ts +4 -0
  378. package/dist/components/Select/Select.d.ts +27 -0
  379. package/dist/components/Select/Select.js +11 -0
  380. package/dist/components/Select/index.d.ts +2 -0
  381. package/dist/components/Sidebar/Sidebar.css +1 -0
  382. package/dist/components/Sidebar/Sidebar.d.ts +42 -0
  383. package/dist/components/Sidebar/Sidebar.js +23 -0
  384. package/dist/components/Sidebar/Sidebar.module.js +3 -0
  385. package/dist/components/Sidebar/index.d.ts +2 -0
  386. package/dist/components/SkipLink/SkipLink.css +1 -0
  387. package/dist/components/SkipLink/SkipLink.d.ts +20 -0
  388. package/dist/components/SkipLink/SkipLink.js +20 -0
  389. package/dist/components/SkipLink/SkipLink.module.js +3 -0
  390. package/dist/components/SkipLink/index.d.ts +2 -0
  391. package/dist/components/Spinner/Spinner.css +1 -0
  392. package/dist/components/Spinner/Spinner.d.ts +13 -0
  393. package/dist/components/Spinner/Spinner.js +32 -0
  394. package/dist/components/Spinner/Spinner.module.js +7 -0
  395. package/dist/components/Spinner/index.d.ts +1 -0
  396. package/dist/components/Stack/Stack.css +1 -0
  397. package/dist/components/Stack/Stack.d.ts +25 -0
  398. package/dist/components/Stack/Stack.js +20 -0
  399. package/dist/components/Stack/Stack.module.js +3 -0
  400. package/dist/components/Stack/index.d.ts +2 -0
  401. package/dist/components/StatusDot/StatusDot.css +1 -0
  402. package/dist/components/StatusDot/StatusDot.d.ts +57 -0
  403. package/dist/components/StatusDot/StatusDot.js +20 -0
  404. package/dist/components/StatusDot/StatusDot.module.js +3 -0
  405. package/dist/components/StatusDot/index.d.ts +2 -0
  406. package/dist/components/Switch/Switch.d.ts +24 -0
  407. package/dist/components/Switch/Switch.js +12 -0
  408. package/dist/components/Switch/index.d.ts +2 -0
  409. package/dist/components/Switcher/Switcher.css +1 -0
  410. package/dist/components/Switcher/Switcher.d.ts +27 -0
  411. package/dist/components/Switcher/Switcher.js +22 -0
  412. package/dist/components/Switcher/Switcher.module.js +3 -0
  413. package/dist/components/Switcher/index.d.ts +2 -0
  414. package/dist/components/Tabs/Tab.d.ts +26 -0
  415. package/dist/components/Tabs/Tab.js +60 -0
  416. package/dist/components/Tabs/TabList.d.ts +16 -0
  417. package/dist/components/Tabs/TabList.js +22 -0
  418. package/dist/components/Tabs/TabPanel.d.ts +24 -0
  419. package/dist/components/Tabs/TabPanel.js +21 -0
  420. package/dist/components/Tabs/Tabs.css +1 -0
  421. package/dist/components/Tabs/Tabs.d.ts +81 -0
  422. package/dist/components/Tabs/Tabs.js +30 -0
  423. package/dist/components/Tabs/Tabs.module.js +8 -0
  424. package/dist/components/Tabs/TabsContext.d.ts +39 -0
  425. package/dist/components/Tabs/TabsContext.js +4 -0
  426. package/dist/components/Tabs/index.d.ts +8 -0
  427. package/dist/components/Tabs/tabIds.d.ts +16 -0
  428. package/dist/components/Tabs/tabIds.js +9 -0
  429. package/dist/components/Tabs/useTabsContext.d.ts +9 -0
  430. package/dist/components/Tabs/useTabsContext.js +10 -0
  431. package/dist/components/Text/Text.css +1 -0
  432. package/dist/components/Text/Text.d.ts +40 -0
  433. package/dist/components/Text/Text.js +16 -0
  434. package/dist/components/Text/Text.module.js +3 -0
  435. package/dist/components/Text/index.d.ts +2 -0
  436. package/dist/components/TextControl/TextControl.css +1 -0
  437. package/dist/components/TextControl/TextControl.d.ts +22 -0
  438. package/dist/components/TextControl/TextControl.js +27 -0
  439. package/dist/components/TextControl/TextControl.module.js +3 -0
  440. package/dist/components/TextControl/index.d.ts +1 -0
  441. package/dist/components/TextInput/TextInput.d.ts +31 -0
  442. package/dist/components/TextInput/TextInput.js +12 -0
  443. package/dist/components/TextInput/index.d.ts +2 -0
  444. package/dist/components/Textarea/Textarea.d.ts +24 -0
  445. package/dist/components/Textarea/Textarea.js +11 -0
  446. package/dist/components/Textarea/index.d.ts +2 -0
  447. package/dist/components/Theme/Theme.d.ts +46 -0
  448. package/dist/components/Theme/Theme.js +17 -0
  449. package/dist/components/Theme/index.d.ts +2 -0
  450. package/dist/components/Tooltip/Tooltip.css +1 -0
  451. package/dist/components/Tooltip/Tooltip.d.ts +49 -0
  452. package/dist/components/Tooltip/Tooltip.js +21 -0
  453. package/dist/components/Tooltip/Tooltip.module.js +3 -0
  454. package/dist/components/Tooltip/index.d.ts +4 -0
  455. package/dist/components/Tooltip/tooltipCoordinator.d.ts +14 -0
  456. package/dist/components/Tooltip/tooltipCoordinator.js +16 -0
  457. package/dist/components/Tooltip/useTooltip.d.ts +119 -0
  458. package/dist/components/Tooltip/useTooltip.js +73 -0
  459. package/dist/components/VisuallyHidden/VisuallyHidden.css +1 -0
  460. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +14 -0
  461. package/dist/components/VisuallyHidden/VisuallyHidden.js +19 -0
  462. package/dist/components/VisuallyHidden/VisuallyHidden.module.js +3 -0
  463. package/dist/components/VisuallyHidden/index.d.ts +2 -0
  464. package/dist/errors/MissingContextError.d.ts +11 -0
  465. package/dist/errors/MissingContextError.js +8 -0
  466. package/dist/errors/PopoverRefusedError.d.ts +12 -0
  467. package/dist/errors/PopoverRefusedError.js +8 -0
  468. package/dist/errors/index.d.ts +2 -0
  469. package/dist/forms/ControlSize.d.ts +4 -0
  470. package/dist/forms/FieldContext.d.ts +34 -0
  471. package/dist/forms/FieldContext.js +4 -0
  472. package/dist/forms/RadioGroupContext.d.ts +34 -0
  473. package/dist/forms/RadioGroupContext.js +4 -0
  474. package/dist/forms/hasContent.d.ts +10 -0
  475. package/dist/forms/hasContent.js +6 -0
  476. package/dist/forms/index.d.ts +8 -0
  477. package/dist/forms/useFieldControl.d.ts +36 -0
  478. package/dist/forms/useFieldControl.js +28 -0
  479. package/dist/forms/useRadioGroupItem.d.ts +50 -0
  480. package/dist/forms/useRadioGroupItem.js +26 -0
  481. package/dist/index.d.ts +107 -0
  482. package/dist/index.js +92 -0
  483. package/dist/layout/Space.d.ts +4 -0
  484. package/dist/layout/alignment.d.ts +8 -0
  485. package/dist/layout/index.d.ts +5 -0
  486. package/dist/layout/listRole.d.ts +11 -0
  487. package/dist/layout/listRole.js +5 -0
  488. package/dist/layout/spaceValue.d.ts +8 -0
  489. package/dist/layout/spaceValue.js +5 -0
  490. package/dist/layout/withCustomProperties.d.ts +9 -0
  491. package/dist/layout/withCustomProperties.js +8 -0
  492. package/dist/links/LinkOrButtonProps.d.ts +17 -0
  493. package/dist/links/index.d.ts +1 -0
  494. package/dist/menus/closeWhenFocusLeaves.d.ts +9 -0
  495. package/dist/menus/closeWhenFocusLeaves.js +11 -0
  496. package/dist/menus/focusItem.d.ts +6 -0
  497. package/dist/menus/focusItem.js +9 -0
  498. package/dist/menus/focusOnOpening.d.ts +11 -0
  499. package/dist/menus/focusOnOpening.js +11 -0
  500. package/dist/menus/hasModifier.d.ts +7 -0
  501. package/dist/menus/hasModifier.js +5 -0
  502. package/dist/menus/index.d.ts +11 -0
  503. package/dist/menus/itemText.d.ts +8 -0
  504. package/dist/menus/itemText.js +6 -0
  505. package/dist/menus/leaveMenuOnTab.d.ts +9 -0
  506. package/dist/menus/leaveMenuOnTab.js +6 -0
  507. package/dist/menus/pointerIntent.d.ts +36 -0
  508. package/dist/menus/pointerIntent.js +68 -0
  509. package/dist/menus/renderedItems.d.ts +8 -0
  510. package/dist/menus/renderedItems.js +4 -0
  511. package/dist/menus/watchRemovals.d.ts +8 -0
  512. package/dist/menus/watchRemovals.js +23 -0
  513. package/dist/overlays/OverlayDelay.d.ts +13 -0
  514. package/dist/overlays/OverlayPlacement.d.ts +6 -0
  515. package/dist/overlays/anchorNameFor.d.ts +7 -0
  516. package/dist/overlays/anchorNameFor.js +5 -0
  517. package/dist/overlays/index.d.ts +6 -0
  518. package/dist/overlays/mergeProps.d.ts +13 -0
  519. package/dist/overlays/mergeProps.js +29 -0
  520. package/dist/overlays/syncPopover.d.ts +11 -0
  521. package/dist/overlays/syncPopover.js +24 -0
  522. package/dist/overlays/useOverlay.d.ts +71 -0
  523. package/dist/overlays/useOverlay.js +49 -0
  524. package/dist/styles.css +1 -0
  525. package/fonts/playful.css +3 -0
  526. package/package.json +103 -3
@@ -0,0 +1,12 @@
1
+ import type { JSX, ReactNode } from "react";
2
+ import type { LinkElement } from "../Link";
3
+ /**
4
+ * Renders the link a `NavBar` entry's `as` names
5
+ *
6
+ * @param as the anchor or component to render, or undefined for an anchor
7
+ * @param className the entry's class names
8
+ * @param content what the link holds
9
+ * @param props every other prop the entry was given for its link
10
+ * @returns the link
11
+ */
12
+ export declare function renderNavBarLink(as: LinkElement | undefined, className: string, content: ReactNode, props: object): JSX.Element;
@@ -0,0 +1,16 @@
1
+ import { Box as e } from "../Box/Box.js";
2
+ import { jsx as t } from "react/jsx-runtime";
3
+ // src/components/NavBar/renderNavBarLink.tsx
4
+ function n(n, r, i, a) {
5
+ return n === void 0 || n === "a" ? /* @__PURE__ */ t(e, {
6
+ ...a,
7
+ as: "a",
8
+ className: r,
9
+ children: i
10
+ }) : /* @__PURE__ */ t(n, {
11
+ ...a,
12
+ className: r,
13
+ children: i
14
+ });
15
+ }
16
+ export { n as renderNavBarLink };
@@ -0,0 +1,26 @@
1
+ import type { RefObject } from "react";
2
+ interface UseLayoutSwitchOptions {
3
+ /**
4
+ * The bar's collapse width, a change of which can switch the layout with no resize
5
+ */
6
+ collapse: string;
7
+ /**
8
+ * The bar's layout, whose resizes are watched
9
+ */
10
+ layoutRef: RefObject<HTMLElement | null>;
11
+ /**
12
+ * The bar's navigation, whose layout is read
13
+ */
14
+ navigationRef: RefObject<HTMLElement | null>;
15
+ /**
16
+ * Called each time the bar switches between its wide and collapsed layouts
17
+ */
18
+ onSwitch: () => void;
19
+ }
20
+ /**
21
+ * Reports a `NavBar` switching between its wide and collapsed layouts, from a resize or a new collapse width
22
+ *
23
+ * @param options the bar's collapse width, its layout and navigation, and what to call on a switch
24
+ */
25
+ export declare function useLayoutSwitch({ collapse, layoutRef, navigationRef, onSwitch }: UseLayoutSwitchOptions): void;
26
+ export {};
@@ -0,0 +1,25 @@
1
+ import { isNavBarCollapsed as e } from "./isNavBarCollapsed.js";
2
+ import { useEffect as t, useEffectEvent as n, useRef as r } from "react";
3
+ import { c as i } from "react/compiler-runtime";
4
+ // src/components/NavBar/useLayoutSwitch.ts
5
+ function a(a) {
6
+ let o = i(8), { collapse: s, layoutRef: c, navigationRef: l, onSwitch: u } = a, d = r(null), f = n(u), p;
7
+ o[0] !== c || o[1] !== l || o[2] !== f ? (p = () => {
8
+ let t = c.current, n = l.current;
9
+ if (t === null || n === null) return;
10
+ let r = () => {
11
+ let t = e(n);
12
+ d.current !== null && d.current !== t && f(), d.current = t;
13
+ };
14
+ if (r(), typeof ResizeObserver > "u") return;
15
+ let i = new ResizeObserver(r);
16
+ return i.observe(t), () => i.disconnect();
17
+ }, o[0] = c, o[1] = l, o[2] = f, o[3] = p) : p = o[3];
18
+ let m;
19
+ o[4] !== s || o[5] !== c || o[6] !== l ? (m = [
20
+ s,
21
+ c,
22
+ l
23
+ ], o[4] = s, o[5] = c, o[6] = l, o[7] = m) : m = o[7], t(p, m);
24
+ }
25
+ export { a as useLayoutSwitch };
@@ -0,0 +1,9 @@
1
+ import type { NavBarContextValue } from "./NavBarContext";
2
+ /**
3
+ * Reads the state of the surrounding `NavBar`
4
+ *
5
+ * @param part the name of the part reading it, for the error message
6
+ * @returns the surrounding `NavBar`'s state
7
+ * @throws MissingContextError when the part is not inside a `NavBar`
8
+ */
9
+ export declare function useNavBarContext(part: string): NavBarContextValue;
@@ -0,0 +1,10 @@
1
+ import { MissingContextError as e } from "../../errors/MissingContextError.js";
2
+ import { NavBarContext as t } from "./NavBarContext.js";
3
+ import { useContext as n } from "react";
4
+ // src/components/NavBar/useNavBarContext.ts
5
+ function r(r) {
6
+ let i = n(t);
7
+ if (i === null) throw new e(r, "NavBar");
8
+ return i;
9
+ }
10
+ export { r as useNavBarContext };
@@ -0,0 +1 @@
1
+ .sui-navList-MII8M{font-family:var(--sui-font-body,system-ui, sans-serif);line-height:var(--sui-line-height-tight,1.25)}.sui-list-oNLze{gap:var(--sui-space-1,.25rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sui-navList-MII8M>.sui-list-oNLze{padding:var(--sui-space-2,.5rem)}.sui-group-18cks+.sui-group-18cks{margin-block-start:var(--sui-space-3,.75rem)}.sui-groupTitle-Ftg7C{padding:var(--sui-space-1,.25rem) var(--sui-space-2,.5rem)}.sui-item-2Rc1V{box-sizing:border-box;align-items:center;gap:var(--sui-space-2,.5rem);min-block-size:1.75rem;inline-size:100%;padding:var(--sui-space-1,.25rem) var(--sui-space-2,.5rem);border-radius:var(--sui-radius-md,4px);color:var(--sui-color-text,#111827);font:inherit;text-align:start;cursor:pointer;scroll-margin-block:var(--sui-space-2,.5rem);background-color:#0000;border:0;text-decoration:none;transition:background-color .12s,color .12s;display:flex;position:relative}.sui-item-2Rc1V:hover{background-color:var(--sui-color-secondary-subtle,#f3f4f6)}.sui-item-2Rc1V[aria-current]:not([aria-current=false]){background-color:var(--sui-color-primary-subtle,#edf5ff);color:var(--sui-color-primary,#2563eb);font-weight:var(--sui-font-weight-bold,700)}.sui-item-2Rc1V:before{inset-block:var(--sui-space-1,.25rem);inline-size:calc(var(--sui-border-width,1px) * 2);border-radius:var(--sui-radius-full,9999px);background-color:var(--sui-color-primary,#2563eb);content:"";transition:transform .12s ease-out;position:absolute;inset-inline-start:0;transform:scaleY(0)}.sui-item-2Rc1V[aria-current]:not([aria-current=false]):before{transition:transform var(--sui-motion-spring,.12s ease-out);transform:scaleY(1)}.sui-item-2Rc1V:focus-visible{outline:var(--sui-focus-ring-width,2px) solid var(--sui-color-focus-ring,#3b82f6);outline-offset:2px}.sui-label-WQWVq{overflow-wrap:anywhere;flex:1;min-inline-size:0}.sui-trailing-g7A1F{flex:none}.sui-trailing-g7A1F:empty{display:none}@media (prefers-reduced-motion:reduce){.sui-item-2Rc1V:before,.sui-item-2Rc1V[aria-current]:not([aria-current=false]):before{transition:none}}@media (forced-colors:active){.sui-item-2Rc1V[aria-current]:not([aria-current=false]):before{forced-color-adjust:none;background-color:highlight}}
@@ -0,0 +1,20 @@
1
+ import type { JSX } from "react";
2
+ import type { RequiredAccessibleName } from "../../accessibility";
3
+ import type { BoxProps } from "../Box";
4
+ /**
5
+ * Props for `NavList`: a required `aria-label` or `aria-labelledby` and every other `nav` prop except
6
+ * `dangerouslySetInnerHTML`
7
+ */
8
+ export type NavListProps = RequiredAccessibleName & Omit<BoxProps<"nav">, "aria-label" | "aria-labelledby" | "as" | "dangerouslySetInnerHTML">;
9
+ /**
10
+ * A navigation landmark holding a list of `NavListItem`s, optionally in `NavListGroup`s, such as an app's sidebar.
11
+ * Name it with `aria-label` or `aria-labelledby`.
12
+ *
13
+ * @example
14
+ * <NavList aria-label="Lists">
15
+ * <NavListGroup headingLevel={2} title="For review">
16
+ * <NavListItem href="/needs-you" aria-current="page">Needs you</NavListItem>
17
+ * </NavListGroup>
18
+ * </NavList>
19
+ */
20
+ export declare function NavList({ children, className, ...rest }: NavListProps): JSX.Element;
@@ -0,0 +1,27 @@
1
+ import { Box as e } from "../Box/Box.js";
2
+ import t from "./NavList.module.js";
3
+ import { clsx as n } from "clsx";
4
+ import { c as r } from "react/compiler-runtime";
5
+ import { jsx as i } from "react/jsx-runtime";
6
+ // src/components/NavList/NavList.tsx
7
+ function a(a) {
8
+ let o = r(12), s, c, l;
9
+ o[0] === a ? (s = o[1], c = o[2], l = o[3]) : ({children: s, className: c, ...l} = a, o[0] = a, o[1] = s, o[2] = c, o[3] = l);
10
+ let u;
11
+ o[4] === c ? u = o[5] : (u = n(t.navList, c), o[4] = c, o[5] = u);
12
+ let d;
13
+ o[6] === s ? d = o[7] : (d = /* @__PURE__ */ i(e, {
14
+ as: "ul",
15
+ className: t.list,
16
+ role: "list",
17
+ children: s
18
+ }), o[6] = s, o[7] = d);
19
+ let f;
20
+ return o[8] !== l || o[9] !== u || o[10] !== d ? (f = /* @__PURE__ */ i(e, {
21
+ ...l,
22
+ as: "nav",
23
+ className: u,
24
+ children: d
25
+ }), o[8] = l, o[9] = u, o[10] = d, o[11] = f) : f = o[11], f;
26
+ }
27
+ export { a as NavList };
@@ -0,0 +1,11 @@
1
+ import './NavList.css';// src/components/NavList/NavList.module.css
2
+ var e = "sui-navList-MII8M", t = "sui-list-oNLze", n = "sui-group-18cks", r = "sui-groupTitle-Ftg7C", i = "sui-item-2Rc1V", a = "sui-label-WQWVq", o = "sui-trailing-g7A1F", s = {
3
+ navList: e,
4
+ list: t,
5
+ group: n,
6
+ groupTitle: r,
7
+ item: i,
8
+ label: a,
9
+ trailing: o
10
+ };
11
+ export { s as default, n as group, r as groupTitle, i as item, a as label, t as list, e as navList, o as trailing };
@@ -0,0 +1,25 @@
1
+ import type { JSX, ReactNode } from "react";
2
+ import type { BoxProps } from "../Box";
3
+ import type { HeadingLevel } from "../Heading";
4
+ /**
5
+ * Props for `NavListGroup`: its own props plus every `li` prop except `dangerouslySetInnerHTML` and `title`
6
+ */
7
+ export interface NavListGroupProps extends Omit<BoxProps<"li">, "as" | "dangerouslySetInnerHTML" | "title"> {
8
+ /**
9
+ * The group's heading level, which the page outline decides: in a sidebar beside the page's `h1`, usually 2
10
+ */
11
+ headingLevel: HeadingLevel;
12
+ /**
13
+ * The group's heading, which also names its list
14
+ */
15
+ title: ReactNode;
16
+ }
17
+ /**
18
+ * A titled group of `NavListItem`s inside a `NavList`
19
+ *
20
+ * @example
21
+ * <NavListGroup headingLevel={2} title="For review">
22
+ * <NavListItem href="/needs-you">Needs you</NavListItem>
23
+ * </NavListGroup>
24
+ */
25
+ export declare function NavListGroup({ children, className, headingLevel, title, ...rest }: NavListGroupProps): JSX.Element;
@@ -0,0 +1,39 @@
1
+ import { Box as e } from "../Box/Box.js";
2
+ import { Heading as t } from "../Heading/Heading.js";
3
+ import n from "./NavList.module.js";
4
+ import { clsx as r } from "clsx";
5
+ import { useId as i } from "react";
6
+ import { c as a } from "react/compiler-runtime";
7
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
+ // src/components/NavList/NavListGroup.tsx
9
+ function c(c) {
10
+ let l = a(20), u, d, f, p, m;
11
+ l[0] === c ? (u = l[1], d = l[2], f = l[3], p = l[4], m = l[5]) : ({children: u, className: d, headingLevel: f, title: m, ...p} = c, l[0] = c, l[1] = u, l[2] = d, l[3] = f, l[4] = p, l[5] = m);
12
+ let h = i(), g;
13
+ l[6] === d ? g = l[7] : (g = r(n.group, d), l[6] = d, l[7] = g);
14
+ let _;
15
+ l[8] !== h || l[9] !== f || l[10] !== m ? (_ = /* @__PURE__ */ o(t, {
16
+ className: n.groupTitle,
17
+ id: h,
18
+ level: f,
19
+ size: "xs",
20
+ tone: "muted",
21
+ children: m
22
+ }), l[8] = h, l[9] = f, l[10] = m, l[11] = _) : _ = l[11];
23
+ let v;
24
+ l[12] !== u || l[13] !== h ? (v = /* @__PURE__ */ o(e, {
25
+ as: "ul",
26
+ className: n.list,
27
+ role: "list",
28
+ "aria-labelledby": h,
29
+ children: u
30
+ }), l[12] = u, l[13] = h, l[14] = v) : v = l[14];
31
+ let y;
32
+ return l[15] !== p || l[16] !== g || l[17] !== _ || l[18] !== v ? (y = /* @__PURE__ */ s(e, {
33
+ ...p,
34
+ as: "li",
35
+ className: g,
36
+ children: [_, v]
37
+ }), l[15] = p, l[16] = g, l[17] = _, l[18] = v, l[19] = y) : y = l[19], y;
38
+ }
39
+ export { c as NavListGroup };
@@ -0,0 +1,49 @@
1
+ import type { JSX, ReactNode } from "react";
2
+ import type { LinkOrButtonElement, LinkOrButtonProps } from "../../links";
3
+ /**
4
+ * What a `NavListItem` can render: a link, a button for switching views, or a component that renders an anchor, such
5
+ * as a router's link
6
+ */
7
+ export type NavListItemElement = LinkOrButtonElement;
8
+ interface NavListItemOwnProps {
9
+ /**
10
+ * The label. It is never a render function, even when the component given in `as` takes one, because the item
11
+ * renders it inside a `span`.
12
+ */
13
+ children?: ReactNode;
14
+ /**
15
+ * Shown after the label, such as a `Counter`. A space separates it from the label, so it is read after it.
16
+ */
17
+ trailing?: ReactNode;
18
+ }
19
+ interface NavListItemElementOwnProps<E extends NavListItemElement> {
20
+ /**
21
+ * What to render: `a`, `button`, or a component that renders an anchor. Defaults to `a`.
22
+ */
23
+ as?: E;
24
+ /**
25
+ * Class names merged with the item's base class
26
+ */
27
+ className?: string;
28
+ }
29
+ /**
30
+ * Props for `NavListItem`: `children` and `trailing` plus every other prop of the link, button or component given in
31
+ * `as`, except `dangerouslySetInnerHTML`. When `as` may be either a link or a button, only props both accept are
32
+ * allowed.
33
+ */
34
+ export type NavListItemProps<E extends NavListItemElement = "a"> = E extends NavListItemElement ? NavListItemPropsFor<E> : never;
35
+ type NavListItemPropsFor<E extends NavListItemElement> = NavListItemOwnProps & NavListItemElementOwnProps<E> & LinkOrButtonProps<E, "dangerouslySetInnerHTML" | keyof NavListItemOwnProps | keyof NavListItemElementOwnProps<E>>;
36
+ /**
37
+ * One item in a `NavList`. Every prop but `children` and `trailing` goes to the link, button or component given in
38
+ * `as`, not the list item around it. A component given in `as` must pass the `className` it is given on to its anchor,
39
+ * or the item is unstyled. Mark the current item with `aria-current` (`"page"` for a link, `"true"` for a view
40
+ * switched by a button).
41
+ *
42
+ * @example
43
+ * <NavListItem href="/needs-you" trailing={<Counter count={3} />} aria-current="page">Needs you</NavListItem>
44
+ *
45
+ * @example
46
+ * <NavListItem as="button" onClick={() => setView("mine")} aria-current={view === "mine"}>Mine</NavListItem>
47
+ */
48
+ export declare function NavListItem<E extends NavListItemElement = "a">({ as, children, className, trailing, ...rest }: NavListItemProps<E>): JSX.Element;
49
+ export {};
@@ -0,0 +1,56 @@
1
+ import { hasContent as e } from "../../forms/hasContent.js";
2
+ import { Box as t } from "../Box/Box.js";
3
+ import n from "./NavList.module.js";
4
+ import { clsx as r } from "clsx";
5
+ import { c as i } from "react/compiler-runtime";
6
+ import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
7
+ // src/components/NavList/NavListItem.tsx
8
+ function c(c) {
9
+ let u = i(15), d, f, p;
10
+ if (u[0] !== c) {
11
+ let { as: i, children: m, className: h, trailing: g, ..._ } = c, v = r(n.item, h), y;
12
+ u[4] === m ? y = u[5] : (y = /* @__PURE__ */ o(t, {
13
+ as: "span",
14
+ className: n.label,
15
+ children: m
16
+ }), u[4] = m, u[5] = y);
17
+ let b;
18
+ u[6] === g ? b = u[7] : (b = e(g) && /* @__PURE__ */ s(a, { children: [" ", /* @__PURE__ */ o(t, {
19
+ as: "span",
20
+ className: n.trailing,
21
+ children: g
22
+ })] }), u[6] = g, u[7] = b);
23
+ let x;
24
+ u[8] !== y || u[9] !== b ? (x = /* @__PURE__ */ s(a, { children: [y, b] }), u[8] = y, u[9] = b, u[10] = x) : x = u[10];
25
+ let S = x;
26
+ d = t, f = "li", p = l(i, v, S, _), u[0] = c, u[1] = d, u[2] = f, u[3] = p;
27
+ } else d = u[1], f = u[2], p = u[3];
28
+ let m;
29
+ return u[11] !== d || u[12] !== f || u[13] !== p ? (m = /* @__PURE__ */ o(d, {
30
+ as: f,
31
+ children: p
32
+ }), u[11] = d, u[12] = f, u[13] = p, u[14] = m) : m = u[14], m;
33
+ }
34
+ function l(e, n, r, i) {
35
+ if (e === "button") {
36
+ let { type: e = "button", ...a } = i;
37
+ return /* @__PURE__ */ o(t, {
38
+ ...a,
39
+ as: "button",
40
+ className: n,
41
+ type: e,
42
+ children: r
43
+ });
44
+ }
45
+ return e === void 0 || e === "a" ? /* @__PURE__ */ o(t, {
46
+ ...i,
47
+ as: "a",
48
+ className: n,
49
+ children: r
50
+ }) : /* @__PURE__ */ o(e, {
51
+ ...i,
52
+ className: n,
53
+ children: r
54
+ });
55
+ }
56
+ export { c as NavListItem };
@@ -0,0 +1,6 @@
1
+ export { NavList } from "./NavList";
2
+ export type { NavListProps } from "./NavList";
3
+ export { NavListGroup } from "./NavListGroup";
4
+ export type { NavListGroupProps } from "./NavListGroup";
5
+ export { NavListItem } from "./NavListItem";
6
+ export type { NavListItemElement, NavListItemProps } from "./NavListItem";
@@ -0,0 +1 @@
1
+ :where(.sui-overlay-EkbfA){margin:var(--sui-space-2,.5rem);color:inherit;background:0 0;border:0;padding:0;inset:auto;overflow:visible}.sui-overlay-EkbfA[data-placement=top]{justify-self:anchor-center;position-area:top;position-try-fallbacks:flip-block}.sui-overlay-EkbfA[data-placement=bottom]{justify-self:anchor-center;position-area:bottom;position-try-fallbacks:flip-block}.sui-overlay-EkbfA[data-placement=start]{align-self:anchor-center;position-area:self-inline-start;position-try-fallbacks:flip-inline}.sui-overlay-EkbfA[data-placement=end]{align-self:anchor-center;position-area:self-inline-end;position-try-fallbacks:flip-inline}.sui-overlay-EkbfA[data-placement$=-start]{margin-inline-start:0}.sui-overlay-EkbfA[data-placement$=-end]{margin-inline-end:0}.sui-overlay-EkbfA:is([data-placement$=-start],[data-placement$=-end]){position-try-fallbacks:flip-block, flip-inline, flip-block flip-inline}.sui-overlay-EkbfA[data-placement=top-start]{position-area:self-block-start span-self-inline-end}.sui-overlay-EkbfA[data-placement=top-end]{position-area:self-block-start span-self-inline-start}.sui-overlay-EkbfA[data-placement=bottom-start]{position-area:self-block-end span-self-inline-end}.sui-overlay-EkbfA[data-placement=bottom-end]{position-area:self-block-end span-self-inline-start}
@@ -0,0 +1,33 @@
1
+ import type { JSX } from "react";
2
+ import type { OverlayPlacement } from "../../overlays";
3
+ import type { BoxProps } from "../Box";
4
+ interface OverlayOwnProps {
5
+ /**
6
+ * `anchor-name` of the trigger the overlay is positioned against
7
+ */
8
+ anchorName: string;
9
+ /**
10
+ * Element to render: a `span` for text-only content that may sit inside a paragraph, or a `div`
11
+ */
12
+ as: "div" | "span";
13
+ /**
14
+ * Whether the overlay is shown
15
+ */
16
+ open: boolean;
17
+ /**
18
+ * Side of the trigger the overlay opens on. It flips to the opposite side when there is no room.
19
+ */
20
+ placement: OverlayPlacement;
21
+ /**
22
+ * How the overlay closes: `auto` also closes on Escape, on a click outside and when another `auto` overlay opens;
23
+ * `manual` only when `open` turns false
24
+ */
25
+ popover: "auto" | "manual";
26
+ }
27
+ type OverlayProps = OverlayOwnProps & Omit<BoxProps<"span">, "as" | "popover" | "ref" | keyof OverlayOwnProps>;
28
+ /**
29
+ * Floating surface shared by the overlay components. It shows in the top layer beside its trigger but stays in place
30
+ * in the DOM, so it inherits the theme and mode around it.
31
+ */
32
+ export declare function Overlay({ anchorName, as, className, open, placement, popover, style, ...rest }: OverlayProps): JSX.Element;
33
+ export {};
@@ -0,0 +1,35 @@
1
+ import { syncPopover as e } from "../../overlays/syncPopover.js";
2
+ import { Box as t } from "../Box/Box.js";
3
+ import n from "./Overlay.module.js";
4
+ import { clsx as r } from "clsx";
5
+ import { useEffect as i, useRef as a } from "react";
6
+ import { c as o } from "react/compiler-runtime";
7
+ import { jsx as s } from "react/jsx-runtime";
8
+ // src/components/Overlay/Overlay.tsx
9
+ function c(c) {
10
+ let l = o(24), u, d, f, p, m, h, g, _;
11
+ l[0] === c ? (u = l[1], d = l[2], f = l[3], p = l[4], m = l[5], h = l[6], g = l[7], _ = l[8]) : ({anchorName: u, as: d, className: f, open: p, placement: m, popover: h, style: _, ...g} = c, l[0] = c, l[1] = u, l[2] = d, l[3] = f, l[4] = p, l[5] = m, l[6] = h, l[7] = g, l[8] = _);
12
+ let v = a(null), y, b;
13
+ l[9] === p ? (y = l[10], b = l[11]) : (y = () => {
14
+ let t = v.current;
15
+ if (t !== null && "showPopover" in t) return e(t, p);
16
+ }, b = [p], l[9] = p, l[10] = y, l[11] = b), i(y, b);
17
+ let x = d, S;
18
+ l[12] === f ? S = l[13] : (S = r(n.overlay, f), l[12] = f, l[13] = S);
19
+ let C;
20
+ l[14] !== u || l[15] !== _ ? (C = {
21
+ ..._,
22
+ positionAnchor: u
23
+ }, l[14] = u, l[15] = _, l[16] = C) : C = l[16];
24
+ let w;
25
+ return l[17] !== m || l[18] !== h || l[19] !== g || l[20] !== x || l[21] !== S || l[22] !== C ? (w = /* @__PURE__ */ s(t, {
26
+ ...g,
27
+ as: x,
28
+ className: S,
29
+ popover: h,
30
+ ref: v,
31
+ style: C,
32
+ "data-placement": m
33
+ }), l[17] = m, l[18] = h, l[19] = g, l[20] = x, l[21] = S, l[22] = C, l[23] = w) : w = l[23], w;
34
+ }
35
+ export { c as Overlay };
@@ -0,0 +1,3 @@
1
+ import './Overlay.css';// src/components/Overlay/Overlay.module.css
2
+ var e = "sui-overlay-EkbfA", t = { overlay: e };
3
+ export { t as default, e as overlay };
@@ -0,0 +1 @@
1
+ export { Overlay } from "./Overlay";
@@ -0,0 +1 @@
1
+ .sui-pageLayout-5SkLH{gap:var(--sui-page-layout-gap);flex-direction:column;min-block-size:100dvh;display:flex}.sui-pageLayout-5SkLH>main{flex-grow:1}
@@ -0,0 +1,26 @@
1
+ import type { JSX } from "react";
2
+ import type { Space } from "../../layout";
3
+ import type { BoxElement, BoxProps } from "../Box";
4
+ interface PageLayoutOwnProps {
5
+ /**
6
+ * Space between the page regions. Defaults to `0`.
7
+ */
8
+ gap?: Space;
9
+ }
10
+ /**
11
+ * Props for `PageLayout`: its own props plus every prop supported by the element given in `as`
12
+ */
13
+ export type PageLayoutProps<E extends BoxElement = "div"> = PageLayoutOwnProps & Omit<BoxProps<E>, keyof PageLayoutOwnProps>;
14
+ /**
15
+ * Full-height page shell that keeps the footer at the bottom of short pages. Pass the page
16
+ * regions as direct children; a direct `main` child grows to fill the free space.
17
+ *
18
+ * @example
19
+ * <PageLayout>
20
+ * <header>...</header>
21
+ * <main>...</main>
22
+ * <footer>...</footer>
23
+ * </PageLayout>
24
+ */
25
+ export declare function PageLayout<E extends BoxElement = "div">({ as, className, gap, ...rest }: PageLayoutProps<E>): JSX.Element;
26
+ export {};
@@ -0,0 +1,17 @@
1
+ import { spaceValue as e } from "../../layout/spaceValue.js";
2
+ import { withCustomProperties as t } from "../../layout/withCustomProperties.js";
3
+ import { Box as n } from "../Box/Box.js";
4
+ import r from "./PageLayout.module.js";
5
+ import { clsx as i } from "clsx";
6
+ import { jsx as a } from "react/jsx-runtime";
7
+ // src/components/PageLayout/PageLayout.tsx
8
+ function o({ as: o, className: s, gap: c = 0, ...l }) {
9
+ let { style: u, ...d } = l;
10
+ return /* @__PURE__ */ a(n, {
11
+ ...d,
12
+ as: o,
13
+ className: i(r.pageLayout, s),
14
+ style: t({ "--sui-page-layout-gap": e(c) }, u)
15
+ });
16
+ }
17
+ export { o as PageLayout };
@@ -0,0 +1,3 @@
1
+ import './PageLayout.css';// src/components/PageLayout/PageLayout.module.css
2
+ var e = "sui-pageLayout-5SkLH", t = { pageLayout: e };
3
+ export { t as default, e as pageLayout };
@@ -0,0 +1,2 @@
1
+ export { PageLayout } from "./PageLayout";
2
+ export type { PageLayoutProps } from "./PageLayout";
@@ -0,0 +1 @@
1
+ .sui-popover-E9K9X{max-inline-size:var(--sui-popover-max-width,20rem);padding:var(--sui-space-3,.75rem);border:var(--sui-border-width,1px) solid var(--sui-color-border,#d1d5db);border-radius:var(--sui-radius-lg,8px);background-color:var(--sui-color-overlay,#fff);box-shadow:var(--sui-shadow-sm,0 1px 3px #0000001f);color:var(--sui-color-text,#111827);font-family:var(--sui-font-body,system-ui, sans-serif);font-size:var(--sui-font-size-sm,.875rem);line-height:var(--sui-line-height-normal,1.5);transition:opacity .12s ease-out, translate var(--sui-motion-spring,.12s ease-out)}@starting-style{.sui-popover-E9K9X{opacity:0}.sui-popover-E9K9X[data-placement^=top]{translate:0 var(--sui-popover-offset,4px)}.sui-popover-E9K9X[data-placement^=bottom]{translate:0 calc(var(--sui-popover-offset,4px) * -1)}.sui-popover-E9K9X[data-placement=start]{translate:var(--sui-popover-offset,4px) 0}.sui-popover-E9K9X[data-placement=end],.sui-popover-E9K9X[data-placement=start]:dir(rtl){translate:calc(var(--sui-popover-offset,4px) * -1) 0}.sui-popover-E9K9X[data-placement=end]:dir(rtl){translate:var(--sui-popover-offset,4px) 0}}@media (prefers-reduced-motion:reduce){.sui-popover-E9K9X{transition:opacity .12s ease-out}}
@@ -0,0 +1,52 @@
1
+ import type { JSX, ToggleEventHandler } from "react";
2
+ import type { OverlayPlacement } from "../../overlays";
3
+ import type { BoxProps } from "../Box";
4
+ /**
5
+ * Props `getOverlayProps` from `usePopover` returns, which every `Popover` takes
6
+ */
7
+ export interface PopoverOverlayProps {
8
+ /**
9
+ * `anchor-name` of the trigger the popover is positioned against. From `getOverlayProps`.
10
+ */
11
+ anchorName: string;
12
+ /**
13
+ * The popover's id, which the trigger's `popoverTarget` and `aria-controls` point at. From `getOverlayProps`.
14
+ */
15
+ id: string;
16
+ /**
17
+ * Cancels an opening the parent of a controlled popover has not asked for. From `getOverlayProps`.
18
+ */
19
+ onBeforeToggle: ToggleEventHandler<HTMLElement>;
20
+ /**
21
+ * Keeps the hook's state in step with the browser. From `getOverlayProps`.
22
+ */
23
+ onToggle: ToggleEventHandler<HTMLElement>;
24
+ /**
25
+ * Whether the popover is shown. From `getOverlayProps`.
26
+ */
27
+ open: boolean;
28
+ /**
29
+ * Side of the trigger the popover opens on. From `getOverlayProps`.
30
+ */
31
+ placement: OverlayPlacement;
32
+ }
33
+ /**
34
+ * Props for `Popover`: the props `getOverlayProps` returns plus every `div` prop except `popover` and `ref`
35
+ */
36
+ export interface PopoverProps extends PopoverOverlayProps, Omit<BoxProps<"div">, "as" | "popover" | "ref" | keyof PopoverOverlayProps> {
37
+ }
38
+ /**
39
+ * A surface that opens beside a button and holds more content than a tooltip can, such as a short list or a few
40
+ * actions. `usePopover` connects the two: spread `getTriggerProps()` on a `Button` or `IconButton` and
41
+ * `getOverlayProps()` on the popover, inside the same `Theme`. It closes on Escape and on a click outside. Closing it
42
+ * with focus inside gives focus back to what had it before it opened, usually the button, or to the button when the
43
+ * browser leaves it on the page, and `usePopover`'s `initialFocus` moves focus in as it opens. It has no role of its
44
+ * own: give it `role="dialog"` and a name when it holds a form or asks for confirmation.
45
+ *
46
+ * @example
47
+ * const popover = usePopover({ placement: "top" });
48
+ *
49
+ * <Button {...popover.getTriggerProps()} variant="ghost">2 problems</Button>
50
+ * <Popover {...popover.getOverlayProps()}>…</Popover>
51
+ */
52
+ export declare function Popover({ className, ...rest }: PopoverProps): JSX.Element;
@@ -0,0 +1,20 @@
1
+ import { Overlay as e } from "../Overlay/Overlay.js";
2
+ import t from "./Popover.module.js";
3
+ import { clsx as n } from "clsx";
4
+ import { c as r } from "react/compiler-runtime";
5
+ import { jsx as i } from "react/jsx-runtime";
6
+ // src/components/Popover/Popover.tsx
7
+ function a(a) {
8
+ let o = r(8), s, c;
9
+ o[0] === a ? (s = o[1], c = o[2]) : ({className: s, ...c} = a, o[0] = a, o[1] = s, o[2] = c);
10
+ let l;
11
+ o[3] === s ? l = o[4] : (l = n(t.popover, s), o[3] = s, o[4] = l);
12
+ let u;
13
+ return o[5] !== c || o[6] !== l ? (u = /* @__PURE__ */ i(e, {
14
+ ...c,
15
+ as: "div",
16
+ className: l,
17
+ popover: "auto"
18
+ }), o[5] = c, o[6] = l, o[7] = u) : u = o[7], u;
19
+ }
20
+ export { a as Popover };
@@ -0,0 +1,3 @@
1
+ import './Popover.css';// src/components/Popover/Popover.module.css
2
+ var e = "sui-popover-E9K9X", t = { popover: e };
3
+ export { t as default, e as popover };
@@ -0,0 +1,4 @@
1
+ export { Popover } from "./Popover";
2
+ export type { PopoverProps } from "./Popover";
3
+ export { usePopover } from "./usePopover";
4
+ export type { UsePopoverOptions, UsePopoverResult } from "./usePopover";