@primer/components 0.0.0-2021111171525 → 0.0.0-20211111716

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 (711) hide show
  1. package/CHANGELOG.md +940 -41
  2. package/README.md +16 -16
  3. package/codemods/__tests__/deprecateUtilityComponents.js +200 -0
  4. package/codemods/__tests__/removeSystemProps.js +225 -0
  5. package/codemods/deprecateUtilityComponents.js +111 -0
  6. package/codemods/lib/modifyProps.js +9 -7
  7. package/codemods/lib/prettify.js +1 -1
  8. package/codemods/lib/replaceImportSource.js +5 -5
  9. package/codemods/removeSystemProps.js +312 -0
  10. package/dist/browser.esm.js +1267 -853
  11. package/dist/browser.esm.js.map +1 -1
  12. package/dist/browser.umd.js +1304 -890
  13. package/dist/browser.umd.js.map +1 -1
  14. package/lib/ActionList/Divider.d.ts +9 -0
  15. package/lib/ActionList/Divider.js +40 -0
  16. package/lib/ActionList/Group.d.ts +28 -0
  17. package/lib/ActionList/Group.js +35 -0
  18. package/lib/ActionList/Header.d.ts +29 -0
  19. package/lib/ActionList/Header.js +51 -0
  20. package/lib/ActionList/Item.d.ts +98 -0
  21. package/lib/ActionList/Item.js +276 -0
  22. package/lib/ActionList/List.d.ts +88 -0
  23. package/lib/ActionList/List.js +199 -0
  24. package/lib/ActionList/index.d.ts +17 -0
  25. package/lib/ActionList/index.js +29 -0
  26. package/lib/ActionList2/Description.d.ts +12 -0
  27. package/lib/ActionList2/Description.js +57 -0
  28. package/lib/ActionList2/Divider.d.ts +5 -0
  29. package/lib/ActionList2/Divider.js +35 -0
  30. package/lib/ActionList2/Group.d.ts +37 -0
  31. package/lib/ActionList2/Group.js +106 -0
  32. package/lib/ActionList2/Item.d.ts +63 -0
  33. package/lib/ActionList2/Item.js +244 -0
  34. package/lib/ActionList2/LinkItem.d.ts +17 -0
  35. package/lib/ActionList2/LinkItem.js +57 -0
  36. package/lib/ActionList2/List.d.ts +26 -0
  37. package/lib/ActionList2/List.js +58 -0
  38. package/lib/ActionList2/Selection.d.ts +5 -0
  39. package/lib/ActionList2/Selection.js +86 -0
  40. package/lib/ActionList2/Visuals.d.ts +9 -0
  41. package/lib/ActionList2/Visuals.js +90 -0
  42. package/lib/ActionList2/index.d.ts +36 -0
  43. package/lib/ActionList2/index.js +47 -0
  44. package/lib/ActionMenu.d.ts +40 -0
  45. package/lib/ActionMenu.js +103 -0
  46. package/lib/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  47. package/lib/AnchoredOverlay/AnchoredOverlay.js +124 -0
  48. package/lib/AnchoredOverlay/index.d.ts +2 -0
  49. package/lib/AnchoredOverlay/index.js +13 -0
  50. package/lib/Autocomplete/Autocomplete.d.ts +305 -0
  51. package/lib/Autocomplete/Autocomplete.js +145 -0
  52. package/lib/Autocomplete/AutocompleteContext.d.ts +17 -0
  53. package/lib/Autocomplete/AutocompleteContext.js +11 -0
  54. package/lib/Autocomplete/AutocompleteInput.d.ts +293 -0
  55. package/lib/Autocomplete/AutocompleteInput.js +157 -0
  56. package/lib/Autocomplete/AutocompleteMenu.d.ts +72 -0
  57. package/lib/Autocomplete/AutocompleteMenu.js +224 -0
  58. package/lib/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  59. package/lib/Autocomplete/AutocompleteOverlay.js +80 -0
  60. package/lib/Autocomplete/index.d.ts +2 -0
  61. package/lib/Autocomplete/index.js +15 -0
  62. package/lib/Avatar.d.ts +14 -0
  63. package/lib/Avatar.js +1 -12
  64. package/lib/AvatarPair.d.ts +8 -0
  65. package/lib/AvatarPair.js +9 -16
  66. package/lib/AvatarStack.d.ts +8 -0
  67. package/lib/AvatarStack.js +12 -23
  68. package/lib/BaseStyles.d.ts +14 -0
  69. package/lib/BaseStyles.js +25 -31
  70. package/lib/BorderBox.d.ts +7 -0
  71. package/lib/BorderBox.js +5 -16
  72. package/lib/Box.d.ts +6 -0
  73. package/lib/Box.js +2 -15
  74. package/lib/BranchName.d.ts +5 -0
  75. package/lib/BranchName.js +1 -14
  76. package/lib/Breadcrumbs.d.ts +41 -0
  77. package/lib/Breadcrumbs.js +82 -0
  78. package/lib/Button/Button.d.ts +284 -0
  79. package/lib/Button/Button.js +3 -15
  80. package/lib/Button/ButtonBase.d.ts +9 -0
  81. package/lib/Button/ButtonBase.js +2 -25
  82. package/lib/Button/ButtonClose.d.ts +279 -0
  83. package/lib/Button/ButtonClose.js +9 -26
  84. package/lib/Button/ButtonDanger.d.ts +284 -0
  85. package/lib/Button/ButtonDanger.js +2 -14
  86. package/lib/Button/ButtonGroup.d.ts +4 -0
  87. package/lib/Button/ButtonGroup.js +2 -8
  88. package/lib/Button/ButtonInvisible.d.ts +284 -0
  89. package/lib/Button/ButtonInvisible.js +3 -15
  90. package/lib/Button/ButtonOutline.d.ts +284 -0
  91. package/lib/Button/ButtonOutline.js +2 -14
  92. package/lib/Button/ButtonPrimary.d.ts +284 -0
  93. package/lib/Button/ButtonPrimary.js +2 -14
  94. package/lib/Button/ButtonStyles.d.ts +2 -0
  95. package/lib/Button/ButtonTableList.d.ts +5 -0
  96. package/lib/Button/ButtonTableList.js +1 -15
  97. package/lib/Button/index.d.ts +16 -0
  98. package/lib/Button/index.js +9 -59
  99. package/lib/Caret.d.ts +21 -0
  100. package/lib/Caret.js +14 -17
  101. package/lib/Checkbox.d.ts +29 -0
  102. package/lib/Checkbox.js +64 -0
  103. package/lib/CircleBadge.d.ts +24 -0
  104. package/lib/CircleBadge.js +2 -20
  105. package/lib/CircleOcticon.d.ts +392 -0
  106. package/lib/CircleOcticon.js +9 -18
  107. package/lib/CounterLabel.d.ts +7 -0
  108. package/lib/CounterLabel.js +3 -17
  109. package/lib/Details.d.ts +5 -0
  110. package/lib/Details.js +1 -11
  111. package/lib/Dialog/ConfirmationDialog.d.ts +44 -0
  112. package/lib/Dialog/ConfirmationDialog.js +191 -0
  113. package/lib/Dialog/Dialog.d.ts +163 -0
  114. package/lib/Dialog/Dialog.js +311 -0
  115. package/lib/Dialog.d.ts +406 -0
  116. package/lib/Dialog.js +34 -49
  117. package/lib/Dropdown.d.ts +1113 -0
  118. package/lib/Dropdown.js +45 -60
  119. package/lib/DropdownMenu/DropdownButton.d.ts +280 -0
  120. package/lib/DropdownMenu/DropdownButton.js +33 -0
  121. package/lib/DropdownMenu/DropdownMenu.d.ts +43 -0
  122. package/lib/DropdownMenu/DropdownMenu.js +94 -0
  123. package/lib/DropdownMenu/index.d.ts +4 -0
  124. package/lib/DropdownMenu/index.js +21 -0
  125. package/lib/DropdownStyles.d.ts +3 -0
  126. package/lib/DropdownStyles.js +6 -6
  127. package/lib/FilterList.d.ts +283 -0
  128. package/lib/FilterList.js +2 -30
  129. package/lib/FilteredActionList/FilteredActionList.d.ts +16 -0
  130. package/lib/FilteredActionList/FilteredActionList.js +137 -0
  131. package/lib/FilteredActionList/index.d.ts +2 -0
  132. package/lib/FilteredActionList/index.js +13 -0
  133. package/lib/FilteredSearch.d.ts +5 -0
  134. package/lib/FilteredSearch.js +1 -12
  135. package/lib/Flash.d.ts +8 -0
  136. package/lib/Flash.js +35 -14
  137. package/lib/Flex.d.ts +7 -0
  138. package/lib/Flex.js +3 -5
  139. package/lib/FormGroup.d.ts +11 -0
  140. package/lib/FormGroup.js +2 -22
  141. package/lib/Grid.d.ts +7 -0
  142. package/lib/Grid.js +4 -9
  143. package/lib/Header.d.ts +23 -0
  144. package/lib/Header.js +7 -37
  145. package/lib/Heading.d.ts +5 -0
  146. package/lib/Heading.js +1 -13
  147. package/lib/Label.d.ts +10 -0
  148. package/lib/Label.js +5 -19
  149. package/lib/LabelGroup.d.ts +5 -0
  150. package/lib/LabelGroup.js +1 -9
  151. package/lib/Link.d.ts +9 -0
  152. package/lib/Link.js +2 -30
  153. package/lib/NewButton/button-counter.d.ts +6 -0
  154. package/lib/NewButton/button-counter.js +31 -0
  155. package/lib/NewButton/button.d.ts +13 -0
  156. package/lib/NewButton/button.js +308 -0
  157. package/lib/NewButton/index.d.ts +14 -0
  158. package/lib/NewButton/index.js +15 -0
  159. package/lib/NewButton/types.d.ts +32 -0
  160. package/lib/{utils → NewButton}/types.js +0 -0
  161. package/lib/Overlay.d.ts +66 -0
  162. package/lib/Overlay.js +184 -0
  163. package/lib/Pagehead.d.ts +5 -0
  164. package/lib/Pagehead.js +1 -13
  165. package/lib/Pagination/Pagination.d.ts +24 -0
  166. package/lib/Pagination/Pagination.js +14 -29
  167. package/lib/Pagination/index.d.ts +3 -0
  168. package/lib/Pagination/model.d.ts +26 -0
  169. package/lib/Pagination/model.js +1 -1
  170. package/lib/PointerBox.d.ts +11 -0
  171. package/lib/PointerBox.js +4 -13
  172. package/lib/Popover.d.ts +20 -0
  173. package/lib/Popover.js +5 -29
  174. package/lib/Portal/Portal.d.ts +25 -0
  175. package/lib/Portal/Portal.js +101 -0
  176. package/lib/Portal/index.d.ts +4 -0
  177. package/lib/Portal/index.js +17 -0
  178. package/lib/Position.d.ts +34 -0
  179. package/lib/Position.js +46 -46
  180. package/lib/ProgressBar.d.ts +26 -0
  181. package/lib/ProgressBar.js +8 -27
  182. package/lib/SelectMenu/SelectMenu.d.ts +1670 -0
  183. package/lib/SelectMenu/SelectMenu.js +32 -44
  184. package/lib/SelectMenu/SelectMenuContext.d.ts +8 -0
  185. package/lib/SelectMenu/SelectMenuContext.js +1 -1
  186. package/lib/SelectMenu/SelectMenuDivider.d.ts +5 -0
  187. package/lib/SelectMenu/SelectMenuDivider.js +6 -14
  188. package/lib/SelectMenu/SelectMenuFilter.d.ts +9 -0
  189. package/lib/SelectMenu/SelectMenuFilter.js +13 -21
  190. package/lib/SelectMenu/SelectMenuFooter.d.ts +5 -0
  191. package/lib/SelectMenu/SelectMenuFooter.js +6 -14
  192. package/lib/SelectMenu/SelectMenuHeader.d.ts +10 -0
  193. package/lib/SelectMenu/SelectMenuHeader.js +4 -17
  194. package/lib/SelectMenu/SelectMenuItem.d.ts +14 -0
  195. package/lib/SelectMenu/SelectMenuItem.js +13 -21
  196. package/lib/SelectMenu/SelectMenuList.d.ts +5 -0
  197. package/lib/SelectMenu/SelectMenuList.js +6 -14
  198. package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  199. package/lib/SelectMenu/SelectMenuLoadingAnimation.js +6 -17
  200. package/lib/SelectMenu/SelectMenuModal.d.ts +14 -0
  201. package/lib/SelectMenu/SelectMenuModal.js +11 -23
  202. package/lib/SelectMenu/SelectMenuTab.d.ts +13 -0
  203. package/lib/SelectMenu/SelectMenuTab.js +16 -26
  204. package/lib/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  205. package/lib/SelectMenu/SelectMenuTabPanel.js +14 -25
  206. package/lib/SelectMenu/SelectMenuTabs.d.ts +10 -0
  207. package/lib/SelectMenu/SelectMenuTabs.js +10 -17
  208. package/lib/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  209. package/lib/SelectMenu/hooks/useKeyboardNav.js +2 -0
  210. package/lib/SelectMenu/index.d.ts +2 -0
  211. package/lib/SelectMenu/index.js +7 -5
  212. package/lib/SelectPanel/SelectPanel.d.ts +25 -0
  213. package/lib/SelectPanel/SelectPanel.js +147 -0
  214. package/lib/SelectPanel/index.d.ts +2 -0
  215. package/lib/SelectPanel/index.js +13 -0
  216. package/lib/SideNav.d.ts +34 -0
  217. package/lib/SideNav.js +23 -41
  218. package/lib/Spinner.d.ts +16 -0
  219. package/lib/Spinner.js +58 -0
  220. package/lib/StateLabel.d.ts +15 -0
  221. package/lib/StateLabel.js +53 -23
  222. package/lib/StyledOcticon.d.ts +11 -0
  223. package/lib/StyledOcticon.js +1 -15
  224. package/lib/SubNav.d.ts +26 -0
  225. package/lib/SubNav.js +27 -49
  226. package/lib/TabNav.d.ts +19 -0
  227. package/lib/TabNav.js +15 -37
  228. package/lib/Text.d.ts +6 -0
  229. package/lib/Text.js +0 -12
  230. package/lib/TextInput.d.ts +14 -0
  231. package/lib/TextInput.js +25 -76
  232. package/lib/TextInputWithTokens.d.ts +328 -0
  233. package/lib/TextInputWithTokens.js +318 -0
  234. package/lib/ThemeProvider.d.ts +26 -0
  235. package/lib/ThemeProvider.js +193 -0
  236. package/lib/Timeline.d.ts +33 -0
  237. package/lib/Timeline.js +34 -87
  238. package/lib/Token/AvatarToken.d.ts +7 -0
  239. package/lib/Token/AvatarToken.js +64 -0
  240. package/lib/Token/IssueLabelToken.d.ts +14 -0
  241. package/lib/Token/IssueLabelToken.js +144 -0
  242. package/lib/Token/Token.d.ts +15 -0
  243. package/lib/Token/Token.js +105 -0
  244. package/lib/Token/TokenBase.d.ts +31 -0
  245. package/lib/Token/TokenBase.js +104 -0
  246. package/lib/Token/_RemoveTokenButton.d.ts +12 -0
  247. package/lib/Token/_RemoveTokenButton.js +90 -0
  248. package/lib/Token/_TokenTextContainer.d.ts +3 -0
  249. package/lib/Token/_TokenTextContainer.js +17 -0
  250. package/lib/Token/index.d.ts +3 -0
  251. package/lib/Token/index.js +31 -0
  252. package/lib/Tooltip.d.ts +17 -0
  253. package/lib/Tooltip.js +4 -21
  254. package/lib/Truncate.d.ts +10 -0
  255. package/lib/Truncate.js +2 -18
  256. package/lib/UnderlineNav.d.ts +24 -0
  257. package/lib/UnderlineNav.js +3 -29
  258. package/lib/_TextInputWrapper.d.ts +10 -0
  259. package/lib/_TextInputWrapper.js +51 -0
  260. package/lib/_UnstyledTextInput.d.ts +2 -0
  261. package/lib/_UnstyledTextInput.js +20 -0
  262. package/lib/behaviors/anchoredPosition.d.ts +89 -0
  263. package/lib/behaviors/anchoredPosition.js +316 -0
  264. package/lib/behaviors/focusTrap.d.ts +12 -0
  265. package/lib/behaviors/focusTrap.js +179 -0
  266. package/lib/behaviors/focusZone.d.ts +137 -0
  267. package/lib/behaviors/focusZone.js +578 -0
  268. package/lib/behaviors/scrollIntoViewingArea.d.ts +1 -0
  269. package/lib/behaviors/scrollIntoViewingArea.js +39 -0
  270. package/lib/constants.d.ts +20 -0
  271. package/lib/constants.js +11 -27
  272. package/lib/drafts.d.ts +8 -0
  273. package/lib/drafts.js +31 -0
  274. package/lib/hooks/index.d.ts +11 -0
  275. package/lib/hooks/index.js +61 -0
  276. package/lib/hooks/useAnchoredPosition.d.ts +20 -0
  277. package/lib/hooks/useAnchoredPosition.js +51 -0
  278. package/lib/hooks/useCombinedRefs.d.ts +10 -0
  279. package/lib/hooks/useCombinedRefs.js +47 -0
  280. package/lib/hooks/useDetails.d.ts +17 -0
  281. package/lib/hooks/useDialog.d.ts +16 -0
  282. package/lib/hooks/useDialog.js +21 -6
  283. package/lib/hooks/useFocusTrap.d.ts +32 -0
  284. package/lib/hooks/useFocusTrap.js +69 -0
  285. package/lib/hooks/useFocusZone.d.ts +23 -0
  286. package/lib/hooks/useFocusZone.js +53 -0
  287. package/lib/hooks/useOnEscapePress.d.ts +23 -0
  288. package/lib/hooks/useOnEscapePress.js +69 -0
  289. package/lib/hooks/useOnOutsideClick.d.ts +8 -0
  290. package/lib/hooks/useOnOutsideClick.js +90 -0
  291. package/lib/hooks/useOpenAndCloseFocus.d.ts +8 -0
  292. package/lib/hooks/useOpenAndCloseFocus.js +36 -0
  293. package/lib/hooks/useOverlay.d.ts +15 -0
  294. package/lib/hooks/useOverlay.js +43 -0
  295. package/lib/hooks/useProvidedRefOrCreate.d.ts +10 -0
  296. package/lib/hooks/useProvidedRefOrCreate.js +24 -0
  297. package/lib/hooks/useProvidedStateOrCreate.d.ts +10 -0
  298. package/lib/hooks/useProvidedStateOrCreate.js +27 -0
  299. package/lib/hooks/useRenderForcingRef.d.ts +8 -0
  300. package/lib/hooks/useRenderForcingRef.js +25 -0
  301. package/lib/hooks/useResizeObserver.d.ts +1 -0
  302. package/lib/hooks/useResizeObserver.js +20 -0
  303. package/lib/hooks/useSafeTimeout.d.ts +12 -0
  304. package/lib/hooks/useSafeTimeout.js +38 -0
  305. package/lib/hooks/useScrollFlash.d.ts +6 -0
  306. package/lib/hooks/useScrollFlash.js +29 -0
  307. package/lib/index.d.ts +120 -0
  308. package/lib/index.js +191 -7
  309. package/lib/polyfills/eventListenerSignal.d.ts +6 -0
  310. package/lib/polyfills/eventListenerSignal.js +64 -0
  311. package/lib/sx.d.ts +14 -0
  312. package/lib/sx.js +8 -5
  313. package/lib/theme-preval.d.ts +49 -0
  314. package/lib/theme-preval.js +3119 -357
  315. package/lib/theme.d.ts +80 -0
  316. package/lib/theme.js +5 -8
  317. package/lib/utils/create-slots.d.ts +17 -0
  318. package/lib/utils/create-slots.js +105 -0
  319. package/lib/utils/deprecate.d.ts +18 -0
  320. package/lib/utils/deprecate.js +6 -5
  321. package/lib/utils/isNumeric.d.ts +1 -0
  322. package/lib/utils/isNumeric.js +1 -0
  323. package/lib/utils/iterateFocusableElements.d.ts +42 -0
  324. package/lib/utils/iterateFocusableElements.js +113 -0
  325. package/lib/utils/ssr.d.ts +1 -0
  326. package/lib/utils/ssr.js +19 -0
  327. package/lib/utils/test-deprecations.d.ts +1 -0
  328. package/lib/utils/test-deprecations.js +2 -1
  329. package/lib/utils/test-helpers.d.ts +0 -0
  330. package/lib/utils/test-helpers.js +9 -0
  331. package/lib/utils/test-matchers.d.ts +1 -0
  332. package/lib/utils/test-matchers.js +6 -50
  333. package/lib/utils/testing.d.ts +545 -0
  334. package/lib/utils/testing.js +65 -49
  335. package/lib/utils/theme.d.ts +9 -0
  336. package/lib/utils/theme.js +68 -0
  337. package/lib/utils/types/AriaRole.d.ts +1 -0
  338. package/lib/utils/types/AriaRole.js +1 -0
  339. package/lib/utils/types/ComponentProps.d.ts +9 -0
  340. package/lib/utils/types/ComponentProps.js +1 -0
  341. package/lib/utils/types/Flatten.d.ts +4 -0
  342. package/lib/utils/types/Flatten.js +1 -0
  343. package/lib/utils/types/KeyPaths.d.ts +3 -0
  344. package/lib/utils/types/KeyPaths.js +1 -0
  345. package/lib/utils/types/MandateProps.d.ts +3 -0
  346. package/lib/utils/types/MandateProps.js +1 -0
  347. package/lib/utils/types/Merge.d.ts +19 -0
  348. package/lib/utils/types/Merge.js +1 -0
  349. package/lib/utils/types/index.d.ts +5 -0
  350. package/lib/utils/types/index.js +70 -0
  351. package/lib/utils/uniqueId.d.ts +1 -0
  352. package/lib/utils/uniqueId.js +12 -0
  353. package/lib/utils/use-force-update.d.ts +1 -0
  354. package/lib/utils/use-force-update.js +19 -0
  355. package/lib/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  356. package/lib/utils/useIsomorphicLayoutEffect.js +12 -0
  357. package/lib/utils/userAgent.d.ts +1 -0
  358. package/lib/utils/userAgent.js +15 -0
  359. package/lib-esm/ActionList/Divider.d.ts +9 -0
  360. package/lib-esm/ActionList/Divider.js +23 -0
  361. package/lib-esm/ActionList/Group.d.ts +28 -0
  362. package/lib-esm/ActionList/Group.js +24 -0
  363. package/lib-esm/ActionList/Header.d.ts +29 -0
  364. package/lib-esm/ActionList/Header.js +33 -0
  365. package/lib-esm/ActionList/Item.d.ts +98 -0
  366. package/lib-esm/ActionList/Item.js +241 -0
  367. package/lib-esm/ActionList/List.d.ts +88 -0
  368. package/lib-esm/ActionList/List.js +181 -0
  369. package/lib-esm/ActionList/index.d.ts +17 -0
  370. package/lib-esm/ActionList/index.js +18 -0
  371. package/lib-esm/ActionList2/Description.d.ts +12 -0
  372. package/lib-esm/ActionList2/Description.js +41 -0
  373. package/lib-esm/ActionList2/Divider.d.ts +5 -0
  374. package/lib-esm/ActionList2/Divider.js +23 -0
  375. package/lib-esm/ActionList2/Group.d.ts +37 -0
  376. package/lib-esm/ActionList2/Group.js +87 -0
  377. package/lib-esm/ActionList2/Item.d.ts +63 -0
  378. package/lib-esm/ActionList2/Item.js +210 -0
  379. package/lib-esm/ActionList2/LinkItem.d.ts +17 -0
  380. package/lib-esm/ActionList2/LinkItem.js +43 -0
  381. package/lib-esm/ActionList2/List.d.ts +26 -0
  382. package/lib-esm/ActionList2/List.js +36 -0
  383. package/lib-esm/ActionList2/Selection.d.ts +5 -0
  384. package/lib-esm/ActionList2/Selection.js +68 -0
  385. package/lib-esm/ActionList2/Visuals.d.ts +9 -0
  386. package/lib-esm/ActionList2/Visuals.js +68 -0
  387. package/lib-esm/ActionList2/index.d.ts +36 -0
  388. package/lib-esm/ActionList2/index.js +33 -0
  389. package/lib-esm/ActionMenu.d.ts +40 -0
  390. package/lib-esm/ActionMenu.js +82 -0
  391. package/lib-esm/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  392. package/lib-esm/AnchoredOverlay/AnchoredOverlay.js +104 -0
  393. package/lib-esm/AnchoredOverlay/index.d.ts +2 -0
  394. package/lib-esm/AnchoredOverlay/index.js +1 -0
  395. package/lib-esm/Autocomplete/Autocomplete.d.ts +305 -0
  396. package/lib-esm/Autocomplete/Autocomplete.js +123 -0
  397. package/lib-esm/Autocomplete/AutocompleteContext.d.ts +17 -0
  398. package/lib-esm/Autocomplete/AutocompleteContext.js +2 -0
  399. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +293 -0
  400. package/lib-esm/Autocomplete/AutocompleteInput.js +138 -0
  401. package/lib-esm/Autocomplete/AutocompleteMenu.d.ts +72 -0
  402. package/lib-esm/Autocomplete/AutocompleteMenu.js +205 -0
  403. package/lib-esm/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  404. package/lib-esm/Autocomplete/AutocompleteOverlay.js +62 -0
  405. package/lib-esm/Autocomplete/index.d.ts +2 -0
  406. package/lib-esm/Autocomplete/index.js +1 -0
  407. package/lib-esm/Avatar.d.ts +14 -0
  408. package/lib-esm/Avatar.js +2 -11
  409. package/lib-esm/AvatarPair.d.ts +8 -0
  410. package/lib-esm/AvatarPair.js +8 -14
  411. package/lib-esm/AvatarStack.d.ts +8 -0
  412. package/lib-esm/AvatarStack.js +12 -21
  413. package/lib-esm/BaseStyles.d.ts +14 -0
  414. package/lib-esm/BaseStyles.js +23 -26
  415. package/lib-esm/BorderBox.d.ts +7 -0
  416. package/lib-esm/BorderBox.js +6 -12
  417. package/lib-esm/Box.d.ts +6 -0
  418. package/lib-esm/Box.js +2 -13
  419. package/lib-esm/BranchName.d.ts +5 -0
  420. package/lib-esm/BranchName.js +2 -13
  421. package/lib-esm/Breadcrumbs.d.ts +41 -0
  422. package/lib-esm/Breadcrumbs.js +58 -0
  423. package/lib-esm/Button/Button.d.ts +284 -0
  424. package/lib-esm/Button/Button.js +3 -10
  425. package/lib-esm/Button/ButtonBase.d.ts +9 -0
  426. package/lib-esm/Button/ButtonBase.js +1 -19
  427. package/lib-esm/Button/ButtonClose.d.ts +279 -0
  428. package/lib-esm/Button/ButtonClose.js +5 -20
  429. package/lib-esm/Button/ButtonDanger.d.ts +284 -0
  430. package/lib-esm/Button/ButtonDanger.js +2 -9
  431. package/lib-esm/Button/ButtonGroup.d.ts +4 -0
  432. package/lib-esm/Button/ButtonGroup.js +2 -7
  433. package/lib-esm/Button/ButtonInvisible.d.ts +284 -0
  434. package/lib-esm/Button/ButtonInvisible.js +3 -10
  435. package/lib-esm/Button/ButtonOutline.d.ts +284 -0
  436. package/lib-esm/Button/ButtonOutline.js +2 -9
  437. package/lib-esm/Button/ButtonPrimary.d.ts +284 -0
  438. package/lib-esm/Button/ButtonPrimary.js +2 -9
  439. package/lib-esm/Button/ButtonStyles.d.ts +2 -0
  440. package/lib-esm/Button/ButtonTableList.d.ts +5 -0
  441. package/lib-esm/Button/ButtonTableList.js +2 -14
  442. package/lib-esm/Button/index.d.ts +16 -0
  443. package/lib-esm/Button/index.js +8 -8
  444. package/lib-esm/Caret.d.ts +21 -0
  445. package/lib-esm/Caret.js +13 -16
  446. package/lib-esm/Checkbox.d.ts +29 -0
  447. package/lib-esm/Checkbox.js +44 -0
  448. package/lib-esm/CircleBadge.d.ts +24 -0
  449. package/lib-esm/CircleBadge.js +3 -19
  450. package/lib-esm/CircleOcticon.d.ts +392 -0
  451. package/lib-esm/CircleOcticon.js +9 -15
  452. package/lib-esm/CounterLabel.d.ts +7 -0
  453. package/lib-esm/CounterLabel.js +4 -16
  454. package/lib-esm/Details.d.ts +5 -0
  455. package/lib-esm/Details.js +1 -9
  456. package/lib-esm/Dialog/ConfirmationDialog.d.ts +44 -0
  457. package/lib-esm/Dialog/ConfirmationDialog.js +169 -0
  458. package/lib-esm/Dialog/Dialog.d.ts +163 -0
  459. package/lib-esm/Dialog/Dialog.js +275 -0
  460. package/lib-esm/Dialog.d.ts +406 -0
  461. package/lib-esm/Dialog.js +31 -46
  462. package/lib-esm/Dropdown.d.ts +1113 -0
  463. package/lib-esm/Dropdown.js +38 -58
  464. package/lib-esm/DropdownMenu/DropdownButton.d.ts +280 -0
  465. package/lib-esm/DropdownMenu/DropdownButton.js +18 -0
  466. package/lib-esm/DropdownMenu/DropdownMenu.d.ts +43 -0
  467. package/lib-esm/DropdownMenu/DropdownMenu.js +77 -0
  468. package/lib-esm/DropdownMenu/index.d.ts +4 -0
  469. package/lib-esm/DropdownMenu/index.js +2 -0
  470. package/lib-esm/DropdownStyles.d.ts +3 -0
  471. package/lib-esm/DropdownStyles.js +6 -6
  472. package/lib-esm/FilterList.d.ts +283 -0
  473. package/lib-esm/FilterList.js +3 -29
  474. package/lib-esm/FilteredActionList/FilteredActionList.d.ts +16 -0
  475. package/lib-esm/FilteredActionList/FilteredActionList.js +109 -0
  476. package/lib-esm/FilteredActionList/index.d.ts +2 -0
  477. package/lib-esm/FilteredActionList/index.js +1 -0
  478. package/lib-esm/FilteredSearch.d.ts +5 -0
  479. package/lib-esm/FilteredSearch.js +2 -11
  480. package/lib-esm/Flash.d.ts +8 -0
  481. package/lib-esm/Flash.js +36 -13
  482. package/lib-esm/Flex.d.ts +7 -0
  483. package/lib-esm/Flex.js +4 -4
  484. package/lib-esm/FormGroup.d.ts +11 -0
  485. package/lib-esm/FormGroup.js +3 -20
  486. package/lib-esm/Grid.d.ts +7 -0
  487. package/lib-esm/Grid.js +5 -7
  488. package/lib-esm/Header.d.ts +23 -0
  489. package/lib-esm/Header.js +6 -34
  490. package/lib-esm/Heading.d.ts +5 -0
  491. package/lib-esm/Heading.js +2 -12
  492. package/lib-esm/Label.d.ts +10 -0
  493. package/lib-esm/Label.js +3 -15
  494. package/lib-esm/LabelGroup.d.ts +5 -0
  495. package/lib-esm/LabelGroup.js +2 -9
  496. package/lib-esm/Link.d.ts +9 -0
  497. package/lib-esm/Link.js +2 -28
  498. package/lib-esm/NewButton/button-counter.d.ts +6 -0
  499. package/lib-esm/NewButton/button-counter.js +18 -0
  500. package/lib-esm/NewButton/button.d.ts +13 -0
  501. package/lib-esm/NewButton/button.js +287 -0
  502. package/lib-esm/NewButton/index.d.ts +14 -0
  503. package/lib-esm/NewButton/index.js +5 -0
  504. package/lib-esm/NewButton/types.d.ts +32 -0
  505. package/lib-esm/NewButton/types.js +1 -0
  506. package/lib-esm/Overlay.d.ts +66 -0
  507. package/lib-esm/Overlay.js +160 -0
  508. package/lib-esm/Pagehead.d.ts +5 -0
  509. package/lib-esm/Pagehead.js +2 -12
  510. package/lib-esm/Pagination/Pagination.d.ts +24 -0
  511. package/lib-esm/Pagination/Pagination.js +15 -28
  512. package/lib-esm/Pagination/index.d.ts +3 -0
  513. package/lib-esm/Pagination/model.d.ts +26 -0
  514. package/lib-esm/Pagination/model.js +1 -1
  515. package/lib-esm/PointerBox.d.ts +11 -0
  516. package/lib-esm/PointerBox.js +4 -11
  517. package/lib-esm/Popover.d.ts +20 -0
  518. package/lib-esm/Popover.js +5 -27
  519. package/lib-esm/Portal/Portal.d.ts +25 -0
  520. package/lib-esm/Portal/Portal.js +83 -0
  521. package/lib-esm/Portal/index.d.ts +4 -0
  522. package/lib-esm/Portal/index.js +3 -0
  523. package/lib-esm/Position.d.ts +34 -0
  524. package/lib-esm/Position.js +42 -37
  525. package/lib-esm/ProgressBar.d.ts +26 -0
  526. package/lib-esm/ProgressBar.js +9 -25
  527. package/lib-esm/SelectMenu/SelectMenu.d.ts +1670 -0
  528. package/lib-esm/SelectMenu/SelectMenu.js +27 -38
  529. package/lib-esm/SelectMenu/SelectMenuContext.d.ts +8 -0
  530. package/lib-esm/SelectMenu/SelectMenuContext.js +1 -1
  531. package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +5 -0
  532. package/lib-esm/SelectMenu/SelectMenuDivider.js +4 -11
  533. package/lib-esm/SelectMenu/SelectMenuFilter.d.ts +9 -0
  534. package/lib-esm/SelectMenu/SelectMenuFilter.js +13 -19
  535. package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +5 -0
  536. package/lib-esm/SelectMenu/SelectMenuFooter.js +4 -11
  537. package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +10 -0
  538. package/lib-esm/SelectMenu/SelectMenuHeader.js +7 -18
  539. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +14 -0
  540. package/lib-esm/SelectMenu/SelectMenuItem.js +11 -17
  541. package/lib-esm/SelectMenu/SelectMenuList.d.ts +5 -0
  542. package/lib-esm/SelectMenu/SelectMenuList.js +4 -11
  543. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  544. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +7 -13
  545. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +14 -0
  546. package/lib-esm/SelectMenu/SelectMenuModal.js +10 -20
  547. package/lib-esm/SelectMenu/SelectMenuTab.d.ts +13 -0
  548. package/lib-esm/SelectMenu/SelectMenuTab.js +13 -21
  549. package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  550. package/lib-esm/SelectMenu/SelectMenuTabPanel.js +9 -19
  551. package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +10 -0
  552. package/lib-esm/SelectMenu/SelectMenuTabs.js +8 -15
  553. package/lib-esm/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  554. package/lib-esm/SelectMenu/hooks/useKeyboardNav.js +2 -0
  555. package/lib-esm/SelectMenu/index.d.ts +2 -0
  556. package/lib-esm/SelectMenu/index.js +1 -2
  557. package/lib-esm/SelectPanel/SelectPanel.d.ts +25 -0
  558. package/lib-esm/SelectPanel/SelectPanel.js +127 -0
  559. package/lib-esm/SelectPanel/index.d.ts +2 -0
  560. package/lib-esm/SelectPanel/index.js +1 -0
  561. package/lib-esm/SideNav.d.ts +34 -0
  562. package/lib-esm/SideNav.js +20 -36
  563. package/lib-esm/Spinner.d.ts +16 -0
  564. package/lib-esm/Spinner.js +45 -0
  565. package/lib-esm/StateLabel.d.ts +15 -0
  566. package/lib-esm/StateLabel.js +55 -23
  567. package/lib-esm/StyledOcticon.d.ts +11 -0
  568. package/lib-esm/StyledOcticon.js +1 -12
  569. package/lib-esm/SubNav.d.ts +26 -0
  570. package/lib-esm/SubNav.js +24 -48
  571. package/lib-esm/TabNav.d.ts +19 -0
  572. package/lib-esm/TabNav.js +13 -33
  573. package/lib-esm/Text.d.ts +6 -0
  574. package/lib-esm/Text.js +0 -10
  575. package/lib-esm/TextInput.d.ts +14 -0
  576. package/lib-esm/TextInput.js +24 -62
  577. package/lib-esm/TextInputWithTokens.d.ts +328 -0
  578. package/lib-esm/TextInputWithTokens.js +291 -0
  579. package/lib-esm/ThemeProvider.d.ts +26 -0
  580. package/lib-esm/ThemeProvider.js +161 -0
  581. package/lib-esm/Timeline.d.ts +33 -0
  582. package/lib-esm/Timeline.js +26 -81
  583. package/lib-esm/Token/AvatarToken.d.ts +7 -0
  584. package/lib-esm/Token/AvatarToken.js +43 -0
  585. package/lib-esm/Token/IssueLabelToken.d.ts +14 -0
  586. package/lib-esm/Token/IssueLabelToken.js +124 -0
  587. package/lib-esm/Token/Token.d.ts +15 -0
  588. package/lib-esm/Token/Token.js +84 -0
  589. package/lib-esm/Token/TokenBase.d.ts +31 -0
  590. package/lib-esm/Token/TokenBase.js +83 -0
  591. package/lib-esm/Token/_RemoveTokenButton.d.ts +12 -0
  592. package/lib-esm/Token/_RemoveTokenButton.js +69 -0
  593. package/lib-esm/Token/_TokenTextContainer.d.ts +3 -0
  594. package/lib-esm/Token/_TokenTextContainer.js +6 -0
  595. package/lib-esm/Token/index.d.ts +3 -0
  596. package/lib-esm/Token/index.js +3 -0
  597. package/lib-esm/Tooltip.d.ts +17 -0
  598. package/lib-esm/Tooltip.js +4 -19
  599. package/lib-esm/Truncate.d.ts +10 -0
  600. package/lib-esm/Truncate.js +2 -15
  601. package/lib-esm/UnderlineNav.d.ts +24 -0
  602. package/lib-esm/UnderlineNav.js +5 -28
  603. package/lib-esm/_TextInputWrapper.d.ts +10 -0
  604. package/lib-esm/_TextInputWrapper.js +31 -0
  605. package/lib-esm/_UnstyledTextInput.d.ts +2 -0
  606. package/lib-esm/_UnstyledTextInput.js +7 -0
  607. package/lib-esm/behaviors/anchoredPosition.d.ts +89 -0
  608. package/lib-esm/behaviors/anchoredPosition.js +309 -0
  609. package/lib-esm/behaviors/focusTrap.d.ts +12 -0
  610. package/lib-esm/behaviors/focusTrap.js +170 -0
  611. package/lib-esm/behaviors/focusZone.d.ts +137 -0
  612. package/lib-esm/behaviors/focusZone.js +560 -0
  613. package/lib-esm/behaviors/scrollIntoViewingArea.d.ts +1 -0
  614. package/lib-esm/behaviors/scrollIntoViewingArea.js +30 -0
  615. package/lib-esm/constants.d.ts +20 -0
  616. package/lib-esm/constants.js +9 -23
  617. package/lib-esm/drafts.d.ts +8 -0
  618. package/lib-esm/drafts.js +9 -0
  619. package/lib-esm/hooks/index.d.ts +11 -0
  620. package/lib-esm/hooks/index.js +7 -0
  621. package/lib-esm/hooks/useAnchoredPosition.d.ts +20 -0
  622. package/lib-esm/hooks/useAnchoredPosition.js +35 -0
  623. package/lib-esm/hooks/useCombinedRefs.d.ts +10 -0
  624. package/lib-esm/hooks/useCombinedRefs.js +37 -0
  625. package/lib-esm/hooks/useDetails.d.ts +17 -0
  626. package/lib-esm/hooks/useDialog.d.ts +16 -0
  627. package/lib-esm/hooks/useDialog.js +21 -6
  628. package/lib-esm/hooks/useFocusTrap.d.ts +32 -0
  629. package/lib-esm/hooks/useFocusTrap.js +54 -0
  630. package/lib-esm/hooks/useFocusZone.d.ts +23 -0
  631. package/lib-esm/hooks/useFocusZone.js +37 -0
  632. package/lib-esm/hooks/useOnEscapePress.d.ts +23 -0
  633. package/lib-esm/hooks/useOnEscapePress.js +59 -0
  634. package/lib-esm/hooks/useOnOutsideClick.d.ts +8 -0
  635. package/lib-esm/hooks/useOnOutsideClick.js +79 -0
  636. package/lib-esm/hooks/useOpenAndCloseFocus.d.ts +8 -0
  637. package/lib-esm/hooks/useOpenAndCloseFocus.js +27 -0
  638. package/lib-esm/hooks/useOverlay.d.ts +15 -0
  639. package/lib-esm/hooks/useOverlay.js +30 -0
  640. package/lib-esm/hooks/useProvidedRefOrCreate.d.ts +10 -0
  641. package/lib-esm/hooks/useProvidedRefOrCreate.js +14 -0
  642. package/lib-esm/hooks/useProvidedStateOrCreate.d.ts +10 -0
  643. package/lib-esm/hooks/useProvidedStateOrCreate.js +20 -0
  644. package/lib-esm/hooks/useRenderForcingRef.d.ts +8 -0
  645. package/lib-esm/hooks/useRenderForcingRef.js +18 -0
  646. package/lib-esm/hooks/useResizeObserver.d.ts +1 -0
  647. package/lib-esm/hooks/useResizeObserver.js +10 -0
  648. package/lib-esm/hooks/useSafeTimeout.d.ts +12 -0
  649. package/lib-esm/hooks/useSafeTimeout.js +31 -0
  650. package/lib-esm/hooks/useScrollFlash.d.ts +6 -0
  651. package/lib-esm/hooks/useScrollFlash.js +22 -0
  652. package/lib-esm/index.d.ts +120 -0
  653. package/lib-esm/index.js +29 -7
  654. package/lib-esm/polyfills/eventListenerSignal.d.ts +6 -0
  655. package/lib-esm/polyfills/eventListenerSignal.js +57 -0
  656. package/lib-esm/sx.d.ts +14 -0
  657. package/lib-esm/sx.js +3 -5
  658. package/lib-esm/theme-preval.d.ts +49 -0
  659. package/lib-esm/theme-preval.js +3119 -357
  660. package/lib-esm/theme.d.ts +80 -0
  661. package/lib-esm/theme.js +3 -8
  662. package/lib-esm/utils/create-slots.d.ts +17 -0
  663. package/lib-esm/utils/create-slots.js +84 -0
  664. package/lib-esm/utils/deprecate.d.ts +18 -0
  665. package/lib-esm/utils/deprecate.js +6 -5
  666. package/lib-esm/utils/isNumeric.d.ts +1 -0
  667. package/lib-esm/utils/isNumeric.js +1 -0
  668. package/lib-esm/utils/iterateFocusableElements.d.ts +42 -0
  669. package/lib-esm/utils/iterateFocusableElements.js +102 -0
  670. package/lib-esm/utils/ssr.d.ts +1 -0
  671. package/lib-esm/utils/ssr.js +1 -0
  672. package/lib-esm/utils/test-deprecations.d.ts +1 -0
  673. package/lib-esm/utils/test-deprecations.js +1 -1
  674. package/lib-esm/utils/{types.js → test-helpers.d.ts} +0 -0
  675. package/lib-esm/utils/test-helpers.js +7 -0
  676. package/lib-esm/utils/test-matchers.d.ts +1 -0
  677. package/lib-esm/utils/test-matchers.js +7 -49
  678. package/lib-esm/utils/testing.d.ts +545 -0
  679. package/lib-esm/utils/testing.js +60 -46
  680. package/lib-esm/utils/theme.d.ts +9 -0
  681. package/lib-esm/utils/theme.js +66 -0
  682. package/lib-esm/utils/types/AriaRole.d.ts +1 -0
  683. package/lib-esm/utils/types/AriaRole.js +1 -0
  684. package/lib-esm/utils/types/ComponentProps.d.ts +9 -0
  685. package/lib-esm/utils/types/ComponentProps.js +1 -0
  686. package/lib-esm/utils/types/Flatten.d.ts +4 -0
  687. package/lib-esm/utils/types/Flatten.js +1 -0
  688. package/lib-esm/utils/types/KeyPaths.d.ts +3 -0
  689. package/lib-esm/utils/types/KeyPaths.js +1 -0
  690. package/lib-esm/utils/types/MandateProps.d.ts +3 -0
  691. package/lib-esm/utils/types/MandateProps.js +1 -0
  692. package/lib-esm/utils/types/Merge.d.ts +19 -0
  693. package/lib-esm/utils/types/Merge.js +1 -0
  694. package/lib-esm/utils/types/index.d.ts +5 -0
  695. package/lib-esm/utils/types/index.js +5 -0
  696. package/lib-esm/utils/uniqueId.d.ts +1 -0
  697. package/lib-esm/utils/uniqueId.js +5 -0
  698. package/lib-esm/utils/use-force-update.d.ts +1 -0
  699. package/lib-esm/utils/use-force-update.js +6 -0
  700. package/lib-esm/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  701. package/lib-esm/utils/useIsomorphicLayoutEffect.js +3 -0
  702. package/lib-esm/utils/userAgent.d.ts +1 -0
  703. package/lib-esm/utils/userAgent.js +8 -0
  704. package/package.json +116 -93
  705. package/index.d.ts +0 -828
  706. package/lib/Breadcrumb.js +0 -96
  707. package/lib/hooks/useMouseIntent.js +0 -58
  708. package/lib/stories/Button.stories.js +0 -100
  709. package/lib-esm/Breadcrumb.js +0 -70
  710. package/lib-esm/hooks/useMouseIntent.js +0 -50
  711. package/lib-esm/stories/Button.stories.js +0 -65
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useOnEscapePress = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ const handlers = [];
11
+ /**
12
+ * Calls all handlers in reverse order
13
+ * @param event The KeyboardEvent generated by the Escape keydown.
14
+ */
15
+
16
+ function handleEscape(event) {
17
+ if (event.key === 'Escape' && !event.defaultPrevented) {
18
+ for (let i = handlers.length - 1; i >= 0; --i) {
19
+ handlers[i](event); // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
20
+
21
+ if (event.defaultPrevented) {
22
+ break;
23
+ }
24
+ }
25
+ }
26
+ }
27
+ /**
28
+ * Sets up a `keydown` listener on `window.document`. If
29
+ * 1) The pressed key is "Escape", and
30
+ * 2) The event has not had `.preventDefault()` called
31
+ * The given callback will be executed.
32
+ *
33
+ * Note: If multiple `useOnEscapePress` hooks are active simultaneously, the
34
+ * callbacks will occur in reverse order. In other words, if a parent component
35
+ * and a child component both call `useOnEscapePress`, when the user presses
36
+ * Escape, the child component's callback will execute, followed by the parent's
37
+ * callback. Each callback has the chance to call `.preventDefault()` on the
38
+ * event to prevent further callbacks.
39
+ *
40
+ * @param callback {(e: KeyboardEvent) => void} The callback that gets executed
41
+ * when the Escape key is pressed. The KeyboardEvent generated by the Escape
42
+ * keypress is passed as the only argument.
43
+ *
44
+ * @param callbackDependencies {React.DependencyList} The dependencies of the given
45
+ * `onEscape` callback for memoization. Omit this param if the callback is already
46
+ * memoized. See `React.useCallback` for more info on memoization.
47
+ */
48
+
49
+
50
+ const useOnEscapePress = (onEscape, callbackDependencies = [onEscape]) => {
51
+ // eslint-disable-next-line react-hooks/exhaustive-deps
52
+ const escapeCallback = (0, _react.useCallback)(onEscape, callbackDependencies);
53
+ (0, _react.useEffect)(() => {
54
+ if (handlers.length === 0) {
55
+ document.addEventListener('keydown', handleEscape);
56
+ }
57
+
58
+ handlers.push(escapeCallback);
59
+ return () => {
60
+ handlers.splice(handlers.findIndex(h => h === escapeCallback), 1);
61
+
62
+ if (handlers.length === 0) {
63
+ document.removeEventListener('keydown', handleEscape);
64
+ }
65
+ };
66
+ }, [escapeCallback]);
67
+ };
68
+
69
+ exports.useOnEscapePress = useOnEscapePress;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export declare type TouchOrMouseEvent = MouseEvent | TouchEvent;
3
+ export declare type UseOnOutsideClickSettings = {
4
+ containerRef: React.RefObject<HTMLDivElement>;
5
+ ignoreClickRefs?: React.RefObject<HTMLElement>[];
6
+ onClickOutside: (e: TouchOrMouseEvent) => void;
7
+ };
8
+ export declare const useOnOutsideClick: ({ containerRef, ignoreClickRefs, onClickOutside }: UseOnOutsideClickSettings) => void;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useOnOutsideClick = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ // Because events are handled at the document level, we provide a mechanism for early return.
11
+ const stopPropagation = true;
12
+ /**
13
+ * Calls all handlers in reverse order
14
+ * @param event The MouseEvent generated by the click event.
15
+ */
16
+
17
+ function handleClick(event) {
18
+ if (!event.defaultPrevented) {
19
+ for (const handler of Object.values(registry).reverse()) {
20
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
21
+ if (handler(event) === stopPropagation || event.defaultPrevented) {
22
+ break;
23
+ }
24
+ }
25
+ }
26
+ }
27
+
28
+ const registry = {};
29
+
30
+ function register(id, handler) {
31
+ registry[id] = handler;
32
+ }
33
+
34
+ function deregister(id) {
35
+ delete registry[id];
36
+ } // For auto-incrementing unique identifiers for registered handlers.
37
+
38
+
39
+ let handlerId = 0;
40
+
41
+ const useOnOutsideClick = ({
42
+ containerRef,
43
+ ignoreClickRefs,
44
+ onClickOutside
45
+ }) => {
46
+ const id = (0, _react.useMemo)(() => handlerId++, []);
47
+ const handler = (0, _react.useCallback)(event => {
48
+ var _containerRef$current;
49
+
50
+ // don't call click handler if the mouse event was triggered by an auxiliary button (right click/wheel button/etc)
51
+ if (event instanceof MouseEvent && event.button > 0) {
52
+ return stopPropagation;
53
+ } // don't call handler if the click happened inside of the container
54
+
55
+
56
+ if ((_containerRef$current = containerRef.current) !== null && _containerRef$current !== void 0 && _containerRef$current.contains(event.target)) {
57
+ return stopPropagation;
58
+ } // don't call handler if click happened on an ignored ref
59
+
60
+
61
+ if (ignoreClickRefs && ignoreClickRefs.some(({
62
+ current
63
+ }) => current === null || current === void 0 ? void 0 : current.contains(event.target))) {
64
+ return stopPropagation;
65
+ }
66
+
67
+ onClickOutside(event);
68
+ }, [containerRef, ignoreClickRefs, onClickOutside]);
69
+ (0, _react.useEffect)(() => {
70
+ if (Object.keys(registry).length === 0) {
71
+ // use capture to ensure we get all events
72
+ document.addEventListener('mousedown', handleClick, {
73
+ capture: true
74
+ });
75
+ }
76
+
77
+ register(id, handler);
78
+ return () => {
79
+ deregister(id);
80
+
81
+ if (Object.keys(registry).length === 0) {
82
+ document.removeEventListener('mousedown', handleClick, {
83
+ capture: true
84
+ });
85
+ }
86
+ };
87
+ }, [id, handler]);
88
+ };
89
+
90
+ exports.useOnOutsideClick = useOnOutsideClick;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export declare type UseOpenAndCloseFocusSettings = {
3
+ initialFocusRef?: React.RefObject<HTMLElement>;
4
+ containerRef: React.RefObject<HTMLElement>;
5
+ returnFocusRef: React.RefObject<HTMLElement>;
6
+ preventFocusOnOpen?: boolean;
7
+ };
8
+ export declare function useOpenAndCloseFocus({ initialFocusRef, returnFocusRef, containerRef, preventFocusOnOpen }: UseOpenAndCloseFocusSettings): void;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useOpenAndCloseFocus = useOpenAndCloseFocus;
7
+
8
+ var _react = require("react");
9
+
10
+ var _iterateFocusableElements = require("../utils/iterateFocusableElements");
11
+
12
+ function useOpenAndCloseFocus({
13
+ initialFocusRef,
14
+ returnFocusRef,
15
+ containerRef,
16
+ preventFocusOnOpen
17
+ }) {
18
+ (0, _react.useEffect)(() => {
19
+ if (preventFocusOnOpen) {
20
+ return;
21
+ }
22
+
23
+ const returnRef = returnFocusRef.current;
24
+
25
+ if (initialFocusRef && initialFocusRef.current) {
26
+ initialFocusRef.current.focus();
27
+ } else if (containerRef.current) {
28
+ const firstItem = (0, _iterateFocusableElements.iterateFocusableElements)(containerRef.current).next().value;
29
+ firstItem === null || firstItem === void 0 ? void 0 : firstItem.focus();
30
+ }
31
+
32
+ return function () {
33
+ returnRef === null || returnRef === void 0 ? void 0 : returnRef.focus();
34
+ };
35
+ }, [initialFocusRef, returnFocusRef, containerRef, preventFocusOnOpen]);
36
+ }
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import { TouchOrMouseEvent } from './useOnOutsideClick';
3
+ export declare type UseOverlaySettings = {
4
+ ignoreClickRefs?: React.RefObject<HTMLElement>[];
5
+ initialFocusRef?: React.RefObject<HTMLElement>;
6
+ returnFocusRef: React.RefObject<HTMLElement>;
7
+ onEscape: (e: KeyboardEvent) => void;
8
+ onClickOutside: (e: TouchOrMouseEvent) => void;
9
+ overlayRef?: React.RefObject<HTMLDivElement>;
10
+ preventFocusOnOpen?: boolean;
11
+ };
12
+ export declare type OverlayReturnProps = {
13
+ ref: React.RefObject<HTMLDivElement>;
14
+ };
15
+ export declare const useOverlay: ({ overlayRef: _overlayRef, returnFocusRef, initialFocusRef, onEscape, ignoreClickRefs, onClickOutside, preventFocusOnOpen }: UseOverlaySettings) => OverlayReturnProps;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useOverlay = void 0;
7
+
8
+ var _useOnOutsideClick = require("./useOnOutsideClick");
9
+
10
+ var _useOpenAndCloseFocus = require("./useOpenAndCloseFocus");
11
+
12
+ var _useOnEscapePress = require("./useOnEscapePress");
13
+
14
+ var _useProvidedRefOrCreate = require("./useProvidedRefOrCreate");
15
+
16
+ const useOverlay = ({
17
+ overlayRef: _overlayRef,
18
+ returnFocusRef,
19
+ initialFocusRef,
20
+ onEscape,
21
+ ignoreClickRefs,
22
+ onClickOutside,
23
+ preventFocusOnOpen
24
+ }) => {
25
+ const overlayRef = (0, _useProvidedRefOrCreate.useProvidedRefOrCreate)(_overlayRef);
26
+ (0, _useOpenAndCloseFocus.useOpenAndCloseFocus)({
27
+ containerRef: overlayRef,
28
+ returnFocusRef,
29
+ initialFocusRef,
30
+ preventFocusOnOpen
31
+ });
32
+ (0, _useOnOutsideClick.useOnOutsideClick)({
33
+ containerRef: overlayRef,
34
+ ignoreClickRefs,
35
+ onClickOutside
36
+ });
37
+ (0, _useOnEscapePress.useOnEscapePress)(onEscape);
38
+ return {
39
+ ref: overlayRef
40
+ };
41
+ };
42
+
43
+ exports.useOverlay = useOverlay;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ /**
3
+ * There are some situations where we only want to create a new ref if one is not provided to a component
4
+ * or hook as a prop. However, due to the `rules-of-hooks`, we cannot conditionally make a call to `React.useRef`
5
+ * only in the situations where the ref is not provided as a prop.
6
+ * This hook aims to encapsulate that logic, so the consumer doesn't need to be concerned with violating `rules-of-hooks`.
7
+ * @param providedRef The ref to use - if undefined, will use the ref from a call to React.useRef
8
+ * @type TRef The type of the RefObject which should be created.
9
+ */
10
+ export declare function useProvidedRefOrCreate<TRef>(providedRef?: React.RefObject<TRef>): React.RefObject<TRef>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useProvidedRefOrCreate = useProvidedRefOrCreate;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ /**
13
+ * There are some situations where we only want to create a new ref if one is not provided to a component
14
+ * or hook as a prop. However, due to the `rules-of-hooks`, we cannot conditionally make a call to `React.useRef`
15
+ * only in the situations where the ref is not provided as a prop.
16
+ * This hook aims to encapsulate that logic, so the consumer doesn't need to be concerned with violating `rules-of-hooks`.
17
+ * @param providedRef The ref to use - if undefined, will use the ref from a call to React.useRef
18
+ * @type TRef The type of the RefObject which should be created.
19
+ */
20
+ function useProvidedRefOrCreate(providedRef) {
21
+ const createdRef = _react.default.useRef(null);
22
+
23
+ return providedRef !== null && providedRef !== void 0 ? providedRef : createdRef;
24
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * There are some situations where we want to give users the option to control state externally with their own state handlers
3
+ * or default to using internal state handlers. Because of the 'rules-of-hooks', we cannot conditionally make a call to `React.useState`
4
+ * only in the situations where the state is not provided as a prop.
5
+ * This hook aims to encapsulate that logic, so the consumer doesn't need to be concerned with violating `rules-of-hooks`.
6
+ * @param externalState The state to use - if undefined, will use the state from a call to React.useState
7
+ * @param setExternalState The setState to use - if undefined, will use the setState from a call to React.useState
8
+ * @param defaultState The defaultState to use, if using internal state.
9
+ */
10
+ export declare function useProvidedStateOrCreate<T>(externalState: T | undefined, setExternalState: ((s: T) => void) | undefined, defaultState: T): readonly [T, (s: T) => void];
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useProvidedStateOrCreate = useProvidedStateOrCreate;
7
+
8
+ var _react = require("react");
9
+
10
+ /**
11
+ * There are some situations where we want to give users the option to control state externally with their own state handlers
12
+ * or default to using internal state handlers. Because of the 'rules-of-hooks', we cannot conditionally make a call to `React.useState`
13
+ * only in the situations where the state is not provided as a prop.
14
+ * This hook aims to encapsulate that logic, so the consumer doesn't need to be concerned with violating `rules-of-hooks`.
15
+ * @param externalState The state to use - if undefined, will use the state from a call to React.useState
16
+ * @param setExternalState The setState to use - if undefined, will use the setState from a call to React.useState
17
+ * @param defaultState The defaultState to use, if using internal state.
18
+ */
19
+ function useProvidedStateOrCreate(externalState, setExternalState, defaultState) {
20
+ const [internalState, setInternalState] = (0, _react.useState)(defaultState);
21
+ const state = externalState !== null && externalState !== void 0 ? externalState : internalState;
22
+ const setState = (0, _react.useCallback)(s => {
23
+ setInternalState(s);
24
+ if (setExternalState) setExternalState(s);
25
+ }, [setExternalState]);
26
+ return [state, setState];
27
+ }
@@ -0,0 +1,8 @@
1
+ import { RefObject } from 'react';
2
+ /**
3
+ * There are certain situations where a ref might be set after the current render cycle for a
4
+ * component has finished. e.g. a forward ref from a conditionally rendered child component.
5
+ * In these situations, we need to force a re-render, which is done here by the useState hook.
6
+ * @type TRef The type of the RefObject which should be created.
7
+ */
8
+ export declare function useRenderForcingRef<TRef>(): readonly [RefObject<TRef>, (newRef: TRef | null) => void];
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useRenderForcingRef = useRenderForcingRef;
7
+
8
+ var _react = require("react");
9
+
10
+ /**
11
+ * There are certain situations where a ref might be set after the current render cycle for a
12
+ * component has finished. e.g. a forward ref from a conditionally rendered child component.
13
+ * In these situations, we need to force a re-render, which is done here by the useState hook.
14
+ * @type TRef The type of the RefObject which should be created.
15
+ */
16
+ function useRenderForcingRef() {
17
+ const [refCurrent, setRefCurrent] = (0, _react.useState)(null);
18
+ const ref = (0, _react.useRef)(null);
19
+ ref.current = refCurrent;
20
+ const setRef = (0, _react.useCallback)(newRef => {
21
+ ref.current = newRef;
22
+ setRefCurrent(newRef);
23
+ }, [ref]);
24
+ return [ref, setRef];
25
+ }
@@ -0,0 +1 @@
1
+ export declare function useResizeObserver(callback: () => void): void;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useResizeObserver = useResizeObserver;
7
+
8
+ var _useIsomorphicLayoutEffect = _interopRequireDefault(require("../utils/useIsomorphicLayoutEffect"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function useResizeObserver(callback) {
13
+ (0, _useIsomorphicLayoutEffect.default)(() => {
14
+ const observer = new window.ResizeObserver(() => callback());
15
+ observer.observe(document.documentElement);
16
+ return () => {
17
+ observer.disconnect();
18
+ };
19
+ }, [callback]);
20
+ }
@@ -0,0 +1,12 @@
1
+ declare type SetTimeout = (handler: TimerHandler, timeout?: number, ...args: unknown[]) => number;
2
+ declare type ClearTimeout = (id: number) => void;
3
+ /**
4
+ * Safely call `setTimeout` and `clearTimeout` within a component.
5
+ *
6
+ * This hook ensures that all timeouts are cleared when the component unmounts.
7
+ */
8
+ export default function useSafeTimeout(): {
9
+ safeSetTimeout: SetTimeout;
10
+ safeClearTimeout: ClearTimeout;
11
+ };
12
+ export {};
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useSafeTimeout;
7
+
8
+ var _react = require("react");
9
+
10
+ /**
11
+ * Safely call `setTimeout` and `clearTimeout` within a component.
12
+ *
13
+ * This hook ensures that all timeouts are cleared when the component unmounts.
14
+ */
15
+ function useSafeTimeout() {
16
+ const timers = (0, _react.useRef)(new Set());
17
+ const safeSetTimeout = (0, _react.useCallback)((handler, timeout, ...args) => {
18
+ const id = window.setTimeout(handler, timeout, ...args);
19
+ timers.current.add(id);
20
+ return id;
21
+ }, []);
22
+ const safeClearTimeout = (0, _react.useCallback)(id => {
23
+ clearTimeout(id);
24
+ timers.current.delete(id);
25
+ }, []);
26
+ (0, _react.useEffect)(() => {
27
+ return () => {
28
+ // eslint-disable-next-line react-hooks/exhaustive-deps
29
+ for (const id of timers.current) {
30
+ clearTimeout(id);
31
+ }
32
+ };
33
+ }, []);
34
+ return {
35
+ safeSetTimeout,
36
+ safeClearTimeout
37
+ };
38
+ }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ /**
3
+ * This hook will flash the scrollbars for a ref of a container that has scrollable overflow
4
+ * @param scrollContainerRef The ref of the scrollable content
5
+ */
6
+ export default function useScrollFlash(scrollContainerRef: React.RefObject<HTMLElement>): void;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useScrollFlash;
7
+
8
+ var _react = require("react");
9
+
10
+ /**
11
+ * This hook will flash the scrollbars for a ref of a container that has scrollable overflow
12
+ * @param scrollContainerRef The ref of the scrollable content
13
+ */
14
+ function useScrollFlash(scrollContainerRef) {
15
+ // https://adxlv.computer/projects/flash-scrollers/
16
+ (0, _react.useEffect)(() => {
17
+ const scrollContainer = scrollContainerRef.current;
18
+
19
+ if (!scrollContainer) {
20
+ return;
21
+ }
22
+
23
+ const currentScroll = scrollContainer.scrollTop;
24
+ const maxScroll = scrollContainer.scrollHeight;
25
+ const altScroll = currentScroll < Math.min(1, maxScroll) ? currentScroll + 1 : currentScroll - 1;
26
+ scrollContainer.scrollTop = altScroll;
27
+ scrollContainer.scrollTop = currentScroll;
28
+ }, [scrollContainerRef]);
29
+ }
package/lib/index.d.ts ADDED
@@ -0,0 +1,120 @@
1
+ export { default as theme } from './theme';
2
+ export { get as themeGet } from './constants';
3
+ export { default as BaseStyles } from './BaseStyles';
4
+ export type { BaseStylesProps } from './BaseStyles';
5
+ export { default as ThemeProvider, useTheme, useColorSchemeVar } from './ThemeProvider';
6
+ export type { ThemeProviderProps } from './ThemeProvider';
7
+ export { default as BorderBox } from './BorderBox';
8
+ export type { BorderBoxProps } from './BorderBox';
9
+ export { default as Box } from './Box';
10
+ export type { BoxProps } from './Box';
11
+ export { default as Flex } from './Flex';
12
+ export type { FlexProps } from './Flex';
13
+ export { default as Grid } from './Grid';
14
+ export type { GridProps } from './Grid';
15
+ export { default as Position, Absolute, Fixed, Relative, Sticky } from './Position';
16
+ export type { PositionProps, AbsoluteProps, FixedProps, RelativeProps, StickyProps } from './Position';
17
+ export { default as useDetails } from './hooks/useDetails';
18
+ export { default as useSafeTimeout } from './hooks/useSafeTimeout';
19
+ export { useOnOutsideClick } from './hooks/useOnOutsideClick';
20
+ export { useOpenAndCloseFocus } from './hooks/useOpenAndCloseFocus';
21
+ export { useOnEscapePress } from './hooks/useOnEscapePress';
22
+ export { useOverlay } from './hooks/useOverlay';
23
+ export { useConfirm } from './Dialog/ConfirmationDialog';
24
+ export { ActionList } from './ActionList';
25
+ export { ActionMenu } from './ActionMenu';
26
+ export type { ActionMenuProps } from './ActionMenu';
27
+ export { default as Autocomplete } from './Autocomplete';
28
+ export type { AutocompleteMenuProps, AutocompleteInputProps, AutocompleteOverlayProps } from './Autocomplete';
29
+ export { default as Avatar } from './Avatar';
30
+ export type { AvatarProps } from './Avatar';
31
+ export { default as AvatarPair } from './AvatarPair';
32
+ export type { AvatarPairProps } from './AvatarPair';
33
+ export { default as AvatarStack } from './AvatarStack';
34
+ export type { AvatarStackProps } from './AvatarStack';
35
+ export { default as BranchName } from './BranchName';
36
+ export type { BranchNameProps } from './BranchName';
37
+ export { default as Breadcrumbs, Breadcrumb } from './Breadcrumbs';
38
+ export type { BreadcrumbsProps, BreadcrumbsItemProps, BreadcrumbProps, BreadcrumbItemProps } from './Breadcrumbs';
39
+ export { default as Button, ButtonDanger, ButtonOutline, ButtonPrimary, ButtonInvisible, ButtonTableList, ButtonClose, ButtonGroup } from './Button';
40
+ export { NewButton } from './NewButton';
41
+ export type { NewButtonProps } from './NewButton';
42
+ export type { ButtonProps, ButtonDangerProps, ButtonOutlineProps, ButtonPrimaryProps, ButtonInvisibleProps, ButtonTableListProps, ButtonCloseProps, ButtonGroupProps } from './Button';
43
+ export { default as Caret } from './Caret';
44
+ export type { CaretProps } from './Caret';
45
+ export { default as CircleBadge } from './CircleBadge';
46
+ export type { CircleBadgeProps, CircleBadgeIconProps } from './CircleBadge';
47
+ export { default as CircleOcticon } from './CircleOcticon';
48
+ export type { CircleOcticonProps } from './CircleOcticon';
49
+ export { default as CounterLabel } from './CounterLabel';
50
+ export type { CounterLabelProps } from './CounterLabel';
51
+ export { default as Details } from './Details';
52
+ export type { DetailsProps } from './Details';
53
+ export { default as Dialog } from './Dialog';
54
+ export type { DialogProps, DialogHeaderProps } from './Dialog';
55
+ export { ConfirmationDialog } from './Dialog/ConfirmationDialog';
56
+ export { default as Dropdown } from './Dropdown';
57
+ export type { DropdownProps, DropdownCaretProps, DropdownButtonProps, DropdownItemProps, DropdownMenuProps } from './Dropdown';
58
+ export { DropdownButton, DropdownMenu } from './DropdownMenu';
59
+ export { default as FilteredSearch } from './FilteredSearch';
60
+ export type { FilteredSearchProps } from './FilteredSearch';
61
+ export { default as FilterList } from './FilterList';
62
+ export type { FilterListProps, FilterListItemProps } from './FilterList';
63
+ export { default as Flash } from './Flash';
64
+ export type { FlashProps } from './Flash';
65
+ export { default as FormGroup } from './FormGroup';
66
+ export type { FormGroupProps, FormGroupLabelProps } from './FormGroup';
67
+ export { default as Header } from './Header';
68
+ export type { HeaderProps, HeaderItemProps, HeaderLinkProps } from './Header';
69
+ export { default as Heading } from './Heading';
70
+ export type { HeadingProps } from './Heading';
71
+ export { default as LabelGroup } from './LabelGroup';
72
+ export type { LabelGroupProps } from './LabelGroup';
73
+ export { default as Label } from './Label';
74
+ export type { LabelProps } from './Label';
75
+ export { default as Link } from './Link';
76
+ export type { LinkProps } from './Link';
77
+ export { default as Overlay } from './Overlay';
78
+ export type { OverlayProps } from './Overlay';
79
+ export { default as Pagehead } from './Pagehead';
80
+ export type { PageheadProps } from './Pagehead';
81
+ export { default as Pagination } from './Pagination';
82
+ export type { PaginationProps } from './Pagination';
83
+ export { default as PointerBox } from './PointerBox';
84
+ export type { PointerBoxProps } from './PointerBox';
85
+ export { default as Popover } from './Popover';
86
+ export type { PopoverProps, PopoverContentProps } from './Popover';
87
+ export { default as ProgressBar } from './ProgressBar';
88
+ export type { ProgressBarProps } from './ProgressBar';
89
+ export { default as SelectMenu } from './SelectMenu';
90
+ export type { SelectMenuProps, SelectMenuDividerProps, SelectMenuFilterProps, SelectMenuFooterProps, SelectMenuItemProps, SelectMenuListProps, SelectMenuModalProps, SelectMenuTabsProps, SelectMenuHeaderProps, SelectMenuTabProps, SelectMenuTabPanelProps, SelectMenuLoadingAnimationProps } from './SelectMenu';
91
+ export { default as SideNav } from './SideNav';
92
+ export type { SideNavProps, SideNavLinkProps } from './SideNav';
93
+ export { default as Spinner } from './Spinner';
94
+ export type { SpinnerProps } from './Spinner';
95
+ export { default as StateLabel } from './StateLabel';
96
+ export type { StateLabelProps } from './StateLabel';
97
+ export { default as StyledOcticon } from './StyledOcticon';
98
+ export type { StyledOcticonProps } from './StyledOcticon';
99
+ export { default as SubNav } from './SubNav';
100
+ export type { SubNavProps, SubNavLinkProps, SubNavLinksProps } from './SubNav';
101
+ export { default as TabNav } from './TabNav';
102
+ export type { TabNavProps, TabNavLinkProps } from './TabNav';
103
+ export { default as TextInput } from './TextInput';
104
+ export type { TextInputProps } from './TextInput';
105
+ export { default as TextInputWithTokens } from './TextInputWithTokens';
106
+ export type { TextInputWithTokensProps } from './TextInputWithTokens';
107
+ export { default as Text } from './Text';
108
+ export type { TextProps } from './Text';
109
+ export { default as Timeline } from './Timeline';
110
+ export type { TimelineProps, TimelineBadgeProps, TimelineBodyProps, TimelineBreakProps, TimelineItemsProps } from './Timeline';
111
+ export { default as Token, IssueLabelToken, AvatarToken } from './Token';
112
+ export { default as Tooltip } from './Tooltip';
113
+ export type { TooltipProps } from './Tooltip';
114
+ export { default as Truncate } from './Truncate';
115
+ export type { TruncateProps } from './Truncate';
116
+ export { default as UnderlineNav } from './UnderlineNav';
117
+ export type { UnderlineNavProps, UnderlineNavLinkProps } from './UnderlineNav';
118
+ export { default as Checkbox } from './Checkbox';
119
+ export type { CheckboxProps } from './Checkbox';
120
+ export { SSRProvider, useSSRSafeId } from './utils/ssr';