@primer/components 31.2.1-rc.f73a0f8c → 32.0.0-next.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 (1191) hide show
  1. package/CHANGELOG.md +66 -4
  2. package/dist/browser.esm.js +289 -351
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +294 -356
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/ActionList2/Group.d.ts +28 -2
  7. package/lib/ActionList2/Group.js +55 -6
  8. package/lib/ActionList2/Group.jsx +33 -4
  9. package/lib/ActionList2/List.d.ts +1 -1
  10. package/lib/Autocomplete/Autocomplete.d.ts +3 -3
  11. package/lib/Autocomplete/AutocompleteInput.d.ts +3 -3
  12. package/lib/Breadcrumbs.d.ts +8 -7
  13. package/lib/Breadcrumbs.js +7 -12
  14. package/lib/Breadcrumbs.jsx +3 -6
  15. package/lib/Button/Button.d.ts +2 -3
  16. package/lib/Button/Button.js +2 -6
  17. package/lib/Button/Button.jsx +1 -21
  18. package/lib/Button/ButtonBase.d.ts +5 -8
  19. package/lib/Button/ButtonBase.js +1 -5
  20. package/lib/Button/ButtonBase.jsx +0 -3
  21. package/lib/Button/ButtonClose.d.ts +3 -46
  22. package/lib/Button/ButtonClose.js +1 -1
  23. package/lib/Button/ButtonClose.jsx +0 -2
  24. package/lib/Button/ButtonDanger.d.ts +2 -3
  25. package/lib/Button/ButtonDanger.js +2 -6
  26. package/lib/Button/ButtonDanger.jsx +1 -21
  27. package/lib/Button/ButtonInvisible.d.ts +2 -3
  28. package/lib/Button/ButtonInvisible.js +2 -6
  29. package/lib/Button/ButtonInvisible.jsx +1 -21
  30. package/lib/Button/ButtonOutline.d.ts +2 -3
  31. package/lib/Button/ButtonOutline.js +2 -6
  32. package/lib/Button/ButtonOutline.jsx +1 -21
  33. package/lib/Button/ButtonPrimary.d.ts +2 -3
  34. package/lib/Button/ButtonPrimary.js +2 -6
  35. package/lib/Button/ButtonPrimary.jsx +1 -21
  36. package/lib/Button/ButtonTableList.d.ts +1 -2
  37. package/lib/Button/ButtonTableList.js +1 -1
  38. package/lib/Button/ButtonTableList.jsx +0 -3
  39. package/lib/CircleBadge.d.ts +4 -5
  40. package/lib/CircleBadge.js +1 -1
  41. package/lib/CircleBadge.jsx +0 -1
  42. package/lib/CircleOcticon.d.ts +1 -1
  43. package/lib/CounterLabel.d.ts +1 -2
  44. package/lib/CounterLabel.js +1 -1
  45. package/lib/CounterLabel.jsx +0 -1
  46. package/lib/Dialog/Dialog.d.ts +5 -9
  47. package/lib/Dialog/Dialog.js +17 -11
  48. package/lib/Dialog/Dialog.jsx +13 -7
  49. package/lib/Dialog.d.ts +4 -5
  50. package/lib/Dialog.js +1 -1
  51. package/lib/Dialog.jsx +0 -2
  52. package/lib/Dropdown.d.ts +10 -99
  53. package/lib/Dropdown.js +3 -3
  54. package/lib/Dropdown.jsx +0 -3
  55. package/lib/DropdownMenu/DropdownButton.d.ts +3 -47
  56. package/lib/DropdownMenu/DropdownButton.js +3 -1
  57. package/lib/DropdownMenu/DropdownButton.jsx +1 -1
  58. package/lib/FilterList.d.ts +264 -303
  59. package/lib/FilterList.js +2 -6
  60. package/lib/FilterList.jsx +2 -6
  61. package/lib/FilteredSearch.d.ts +1 -2
  62. package/lib/FilteredSearch.js +1 -1
  63. package/lib/FilteredSearch.jsx +0 -1
  64. package/lib/Flash.d.ts +1 -2
  65. package/lib/Flash.js +1 -1
  66. package/lib/Flash.jsx +0 -1
  67. package/lib/FormGroup.d.ts +4 -5
  68. package/lib/FormGroup.js +2 -2
  69. package/lib/FormGroup.jsx +0 -3
  70. package/lib/Header.d.ts +6 -7
  71. package/lib/Header.js +4 -4
  72. package/lib/Header.jsx +0 -7
  73. package/lib/Label.d.ts +1 -2
  74. package/lib/Label.js +2 -3
  75. package/lib/Label.jsx +1 -3
  76. package/lib/LabelGroup.d.ts +1 -2
  77. package/lib/LabelGroup.js +1 -1
  78. package/lib/LabelGroup.jsx +0 -1
  79. package/lib/Link.d.ts +1 -2
  80. package/lib/Link.js +1 -1
  81. package/lib/Link.jsx +0 -2
  82. package/lib/NewButton/button.js +34 -42
  83. package/lib/NewButton/button.jsx +24 -23
  84. package/lib/Overlay.d.ts +11 -10
  85. package/lib/Overlay.js +3 -4
  86. package/lib/Overlay.jsx +1 -3
  87. package/lib/Pagehead.d.ts +1 -2
  88. package/lib/Pagehead.js +1 -1
  89. package/lib/Pagehead.jsx +0 -1
  90. package/lib/Pagination/Pagination.js +1 -1
  91. package/lib/Pagination/Pagination.jsx +0 -2
  92. package/lib/Popover.d.ts +4 -5
  93. package/lib/Popover.js +4 -5
  94. package/lib/Popover.jsx +1 -9
  95. package/lib/Position.d.ts +4 -4
  96. package/lib/SelectMenu/SelectMenu.d.ts +21 -189
  97. package/lib/SelectMenu/SelectMenu.js +1 -3
  98. package/lib/SelectMenu/SelectMenu.jsx +0 -2
  99. package/lib/SelectMenu/SelectMenuDivider.d.ts +1 -2
  100. package/lib/SelectMenu/SelectMenuDivider.js +1 -1
  101. package/lib/SelectMenu/SelectMenuDivider.jsx +0 -1
  102. package/lib/SelectMenu/SelectMenuFilter.js +1 -1
  103. package/lib/SelectMenu/SelectMenuFilter.jsx +0 -1
  104. package/lib/SelectMenu/SelectMenuFooter.d.ts +1 -2
  105. package/lib/SelectMenu/SelectMenuFooter.js +1 -1
  106. package/lib/SelectMenu/SelectMenuFooter.jsx +0 -1
  107. package/lib/SelectMenu/SelectMenuHeader.d.ts +1 -2
  108. package/lib/SelectMenu/SelectMenuHeader.js +1 -1
  109. package/lib/SelectMenu/SelectMenuHeader.jsx +0 -2
  110. package/lib/SelectMenu/SelectMenuItem.d.ts +2 -3
  111. package/lib/SelectMenu/SelectMenuItem.js +1 -1
  112. package/lib/SelectMenu/SelectMenuItem.jsx +0 -1
  113. package/lib/SelectMenu/SelectMenuList.d.ts +1 -2
  114. package/lib/SelectMenu/SelectMenuList.js +1 -1
  115. package/lib/SelectMenu/SelectMenuList.jsx +0 -1
  116. package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
  117. package/lib/SelectMenu/SelectMenuLoadingAnimation.js +3 -1
  118. package/lib/SelectMenu/SelectMenuLoadingAnimation.jsx +2 -1
  119. package/lib/SelectMenu/SelectMenuModal.d.ts +2 -3
  120. package/lib/SelectMenu/SelectMenuModal.js +1 -1
  121. package/lib/SelectMenu/SelectMenuModal.jsx +0 -1
  122. package/lib/SelectMenu/SelectMenuTab.d.ts +1 -2
  123. package/lib/SelectMenu/SelectMenuTab.js +1 -1
  124. package/lib/SelectMenu/SelectMenuTab.jsx +0 -1
  125. package/lib/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
  126. package/lib/SelectMenu/SelectMenuTabPanel.js +1 -1
  127. package/lib/SelectMenu/SelectMenuTabPanel.jsx +0 -1
  128. package/lib/SelectMenu/SelectMenuTabs.d.ts +1 -2
  129. package/lib/SelectMenu/SelectMenuTabs.js +1 -1
  130. package/lib/SelectMenu/SelectMenuTabs.jsx +0 -1
  131. package/lib/SideNav.d.ts +11 -8
  132. package/lib/SideNav.js +8 -15
  133. package/lib/SideNav.jsx +2 -6
  134. package/lib/StateLabel.d.ts +1 -2
  135. package/lib/StateLabel.js +6 -5
  136. package/lib/StateLabel.jsx +1 -2
  137. package/lib/StyledOcticon.d.ts +1 -2
  138. package/lib/StyledOcticon.js +1 -3
  139. package/lib/StyledOcticon.jsx +0 -2
  140. package/lib/SubNav.d.ts +5 -11
  141. package/lib/SubNav.js +7 -12
  142. package/lib/SubNav.jsx +4 -7
  143. package/lib/TabNav.d.ts +3 -4
  144. package/lib/TabNav.js +2 -2
  145. package/lib/TabNav.jsx +0 -2
  146. package/lib/TextInputWithTokens.d.ts +3 -3
  147. package/lib/Timeline.d.ts +19 -393
  148. package/lib/Timeline.js +16 -13
  149. package/lib/Timeline.jsx +9 -10
  150. package/lib/Token/Token.d.ts +1 -1
  151. package/lib/Tooltip.d.ts +1 -2
  152. package/lib/Tooltip.js +1 -1
  153. package/lib/Tooltip.jsx +1 -1
  154. package/lib/Truncate.d.ts +1 -2
  155. package/lib/Truncate.js +1 -3
  156. package/lib/Truncate.jsx +0 -3
  157. package/lib/UnderlineNav.d.ts +2 -3
  158. package/lib/UnderlineNav.js +2 -2
  159. package/lib/UnderlineNav.jsx +0 -2
  160. package/lib-esm/ActionList2/Group.d.ts +28 -2
  161. package/lib-esm/ActionList2/Group.js +52 -5
  162. package/lib-esm/ActionList2/List.d.ts +1 -1
  163. package/lib-esm/Autocomplete/Autocomplete.d.ts +3 -3
  164. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +3 -3
  165. package/lib-esm/Breadcrumbs.d.ts +8 -7
  166. package/lib-esm/Breadcrumbs.js +8 -13
  167. package/lib-esm/Button/Button.d.ts +2 -3
  168. package/lib-esm/Button/Button.js +2 -2
  169. package/lib-esm/Button/ButtonBase.d.ts +5 -8
  170. package/lib-esm/Button/ButtonBase.js +1 -3
  171. package/lib-esm/Button/ButtonClose.d.ts +3 -46
  172. package/lib-esm/Button/ButtonClose.js +2 -2
  173. package/lib-esm/Button/ButtonDanger.d.ts +2 -3
  174. package/lib-esm/Button/ButtonDanger.js +2 -2
  175. package/lib-esm/Button/ButtonInvisible.d.ts +2 -3
  176. package/lib-esm/Button/ButtonInvisible.js +2 -2
  177. package/lib-esm/Button/ButtonOutline.d.ts +2 -3
  178. package/lib-esm/Button/ButtonOutline.js +2 -2
  179. package/lib-esm/Button/ButtonPrimary.d.ts +2 -3
  180. package/lib-esm/Button/ButtonPrimary.js +2 -2
  181. package/lib-esm/Button/ButtonTableList.d.ts +1 -2
  182. package/lib-esm/Button/ButtonTableList.js +2 -2
  183. package/lib-esm/CircleBadge.d.ts +4 -5
  184. package/lib-esm/CircleBadge.js +2 -2
  185. package/lib-esm/CircleOcticon.d.ts +1 -1
  186. package/lib-esm/CounterLabel.d.ts +1 -2
  187. package/lib-esm/CounterLabel.js +2 -2
  188. package/lib-esm/Dialog/Dialog.d.ts +5 -9
  189. package/lib-esm/Dialog/Dialog.js +12 -12
  190. package/lib-esm/Dialog.d.ts +4 -5
  191. package/lib-esm/Dialog.js +2 -2
  192. package/lib-esm/Dropdown.d.ts +10 -99
  193. package/lib-esm/Dropdown.js +4 -4
  194. package/lib-esm/DropdownMenu/DropdownButton.d.ts +3 -47
  195. package/lib-esm/DropdownMenu/DropdownButton.js +3 -1
  196. package/lib-esm/FilterList.d.ts +264 -303
  197. package/lib-esm/FilterList.js +3 -7
  198. package/lib-esm/FilteredSearch.d.ts +1 -2
  199. package/lib-esm/FilteredSearch.js +2 -2
  200. package/lib-esm/Flash.d.ts +1 -2
  201. package/lib-esm/Flash.js +2 -2
  202. package/lib-esm/FormGroup.d.ts +4 -5
  203. package/lib-esm/FormGroup.js +3 -3
  204. package/lib-esm/Header.d.ts +6 -7
  205. package/lib-esm/Header.js +5 -5
  206. package/lib-esm/Label.d.ts +1 -2
  207. package/lib-esm/Label.js +3 -4
  208. package/lib-esm/LabelGroup.d.ts +1 -2
  209. package/lib-esm/LabelGroup.js +2 -2
  210. package/lib-esm/Link.d.ts +1 -2
  211. package/lib-esm/Link.js +2 -2
  212. package/lib-esm/NewButton/button.js +31 -42
  213. package/lib-esm/Overlay.d.ts +11 -10
  214. package/lib-esm/Overlay.js +2 -3
  215. package/lib-esm/Pagehead.d.ts +1 -2
  216. package/lib-esm/Pagehead.js +2 -2
  217. package/lib-esm/Pagination/Pagination.js +2 -2
  218. package/lib-esm/Popover.d.ts +4 -5
  219. package/lib-esm/Popover.js +4 -5
  220. package/lib-esm/Position.d.ts +4 -4
  221. package/lib-esm/SelectMenu/SelectMenu.d.ts +21 -189
  222. package/lib-esm/SelectMenu/SelectMenu.js +1 -2
  223. package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +1 -2
  224. package/lib-esm/SelectMenu/SelectMenuDivider.js +2 -2
  225. package/lib-esm/SelectMenu/SelectMenuFilter.js +2 -2
  226. package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +1 -2
  227. package/lib-esm/SelectMenu/SelectMenuFooter.js +2 -2
  228. package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +1 -2
  229. package/lib-esm/SelectMenu/SelectMenuHeader.js +2 -2
  230. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +2 -3
  231. package/lib-esm/SelectMenu/SelectMenuItem.js +2 -2
  232. package/lib-esm/SelectMenu/SelectMenuList.d.ts +1 -2
  233. package/lib-esm/SelectMenu/SelectMenuList.js +2 -2
  234. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
  235. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +3 -2
  236. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +2 -3
  237. package/lib-esm/SelectMenu/SelectMenuModal.js +2 -2
  238. package/lib-esm/SelectMenu/SelectMenuTab.d.ts +1 -2
  239. package/lib-esm/SelectMenu/SelectMenuTab.js +2 -2
  240. package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
  241. package/lib-esm/SelectMenu/SelectMenuTabPanel.js +2 -2
  242. package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +1 -2
  243. package/lib-esm/SelectMenu/SelectMenuTabs.js +2 -2
  244. package/lib-esm/SideNav.d.ts +11 -8
  245. package/lib-esm/SideNav.js +8 -16
  246. package/lib-esm/StateLabel.d.ts +1 -2
  247. package/lib-esm/StateLabel.js +7 -6
  248. package/lib-esm/StyledOcticon.d.ts +1 -2
  249. package/lib-esm/StyledOcticon.js +1 -2
  250. package/lib-esm/SubNav.d.ts +5 -11
  251. package/lib-esm/SubNav.js +8 -13
  252. package/lib-esm/TabNav.d.ts +3 -4
  253. package/lib-esm/TabNav.js +3 -3
  254. package/lib-esm/TextInputWithTokens.d.ts +3 -3
  255. package/lib-esm/Timeline.d.ts +19 -393
  256. package/lib-esm/Timeline.js +12 -13
  257. package/lib-esm/Token/Token.d.ts +1 -1
  258. package/lib-esm/Tooltip.d.ts +1 -2
  259. package/lib-esm/Tooltip.js +2 -2
  260. package/lib-esm/Truncate.d.ts +1 -2
  261. package/lib-esm/Truncate.js +1 -2
  262. package/lib-esm/UnderlineNav.d.ts +2 -3
  263. package/lib-esm/UnderlineNav.js +3 -3
  264. package/package.json +3 -3
  265. package/.changeset/README.md +0 -8
  266. package/.changeset/config.json +0 -10
  267. package/.devcontainer/devcontainer.json +0 -8
  268. package/.eslintrc.json +0 -137
  269. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  270. package/.github/ISSUE_TEMPLATE/new_component_proposal_template.md +0 -41
  271. package/.github/dependabot.yml +0 -18
  272. package/.github/pull_request_template.md +0 -18
  273. package/.github/workflows/check_for_changeset.yml +0 -25
  274. package/.github/workflows/ci.yml +0 -34
  275. package/.github/workflows/deploy_preview.yml +0 -47
  276. package/.github/workflows/deploy_production.yml +0 -70
  277. package/.github/workflows/release.yml +0 -36
  278. package/.github/workflows/release_canary.yml +0 -71
  279. package/.github/workflows/release_candidate.yml +0 -60
  280. package/.github/workflows/size.yml +0 -13
  281. package/.github/workflows/stale.yml +0 -26
  282. package/.gitignore +0 -10
  283. package/.npmrc +0 -4
  284. package/.nvmrc +0 -1
  285. package/.storybook/main.js +0 -9
  286. package/.storybook/preview.js +0 -117
  287. package/.vscode/launch.json +0 -21
  288. package/.vscode/settings.json +0 -13
  289. package/@types/@styled-system/index.d.ts +0 -0
  290. package/@types/@styled-system/prop-types/index.d.ts +0 -1
  291. package/@types/@styled-system/props/index.d.ts +0 -1
  292. package/@types/jest-styled-components/index.d.ts +0 -1
  293. package/CODEOWNERS +0 -2
  294. package/babel-defines.js +0 -13
  295. package/babel.config.js +0 -39
  296. package/contributor-docs/CODE_OF_CONDUCT.md +0 -76
  297. package/contributor-docs/CONTRIBUTING.md +0 -274
  298. package/contributor-docs/adrs/adr-001-typescript.md +0 -23
  299. package/contributor-docs/adrs/adr-002-behavior-isolation.md +0 -108
  300. package/contributor-docs/adrs/adr-003-prop-norms.md +0 -72
  301. package/contributor-docs/behaviors.md +0 -132
  302. package/contributor-docs/component-contents-api-patterns.md +0 -316
  303. package/contributor-docs/principles.md +0 -39
  304. package/docs/.eslintrc +0 -0
  305. package/docs/.gitignore +0 -91
  306. package/docs/components/PropsList.js +0 -5
  307. package/docs/components/State.js +0 -9
  308. package/docs/components/constants.js +0 -34
  309. package/docs/components/index.js +0 -2
  310. package/docs/content/ActionList.mdx +0 -99
  311. package/docs/content/ActionList2.mdx +0 -358
  312. package/docs/content/ActionMenu.mdx +0 -80
  313. package/docs/content/AnchoredOverlay.mdx +0 -37
  314. package/docs/content/Autocomplete.mdx +0 -657
  315. package/docs/content/Avatar.mdx +0 -33
  316. package/docs/content/AvatarStack.mdx +0 -37
  317. package/docs/content/BorderBox.md +0 -46
  318. package/docs/content/Box.mdx +0 -96
  319. package/docs/content/BranchName.md +0 -18
  320. package/docs/content/Breadcrumbs.md +0 -52
  321. package/docs/content/Buttons.md +0 -56
  322. package/docs/content/CircleBadge.md +0 -45
  323. package/docs/content/CircleOcticon.md +0 -18
  324. package/docs/content/CounterLabel.md +0 -32
  325. package/docs/content/Details.md +0 -105
  326. package/docs/content/Dialog.md +0 -108
  327. package/docs/content/Dialog2.mdx +0 -179
  328. package/docs/content/Dropdown.md +0 -72
  329. package/docs/content/DropdownMenu.mdx +0 -49
  330. package/docs/content/FilterList.md +0 -44
  331. package/docs/content/FilteredSearch.md +0 -39
  332. package/docs/content/Flash.md +0 -44
  333. package/docs/content/Flex.md +0 -58
  334. package/docs/content/FormGroup.md +0 -46
  335. package/docs/content/Grid.md +0 -59
  336. package/docs/content/Header.md +0 -79
  337. package/docs/content/Heading.md +0 -22
  338. package/docs/content/Label.md +0 -42
  339. package/docs/content/LabelGroup.md +0 -31
  340. package/docs/content/Link.md +0 -37
  341. package/docs/content/Overlay.mdx +0 -94
  342. package/docs/content/Pagehead.md +0 -27
  343. package/docs/content/Pagination.md +0 -187
  344. package/docs/content/PointerBox.md +0 -81
  345. package/docs/content/Popover.md +0 -137
  346. package/docs/content/Portal.mdx +0 -78
  347. package/docs/content/Position.md +0 -100
  348. package/docs/content/ProgressBar.mdx +0 -29
  349. package/docs/content/SelectMenu.md +0 -435
  350. package/docs/content/SelectPanel.mdx +0 -67
  351. package/docs/content/SideNav.md +0 -179
  352. package/docs/content/Spinner.mdx +0 -32
  353. package/docs/content/StateLabel.md +0 -36
  354. package/docs/content/StyledOcticon.md +0 -36
  355. package/docs/content/SubNav.md +0 -102
  356. package/docs/content/TabNav.md +0 -50
  357. package/docs/content/Text.md +0 -31
  358. package/docs/content/TextInput.md +0 -34
  359. package/docs/content/TextInputTokens.mdx +0 -89
  360. package/docs/content/TextInputWithTokens.mdx +0 -211
  361. package/docs/content/Timeline.md +0 -138
  362. package/docs/content/Token.mdx +0 -381
  363. package/docs/content/Tooltip.md +0 -41
  364. package/docs/content/Truncate.md +0 -64
  365. package/docs/content/UnderlineNav.md +0 -53
  366. package/docs/content/anchoredPosition.mdx +0 -163
  367. package/docs/content/core-concepts.md +0 -70
  368. package/docs/content/focusTrap.mdx +0 -103
  369. package/docs/content/focusZone.mdx +0 -145
  370. package/docs/content/getting-started.md +0 -138
  371. package/docs/content/index.md +0 -33
  372. package/docs/content/linting.md +0 -35
  373. package/docs/content/overriding-styles.mdx +0 -82
  374. package/docs/content/philosophy.md +0 -23
  375. package/docs/content/primer-theme.md +0 -89
  376. package/docs/content/ssr.mdx +0 -43
  377. package/docs/content/system-props.mdx +0 -37
  378. package/docs/content/theme-reference.md +0 -16
  379. package/docs/content/theming.md +0 -272
  380. package/docs/content/useOnEscapePress.mdx +0 -56
  381. package/docs/content/useOnOutsideClick.mdx +0 -57
  382. package/docs/content/useOpenAndCloseFocus.mdx +0 -49
  383. package/docs/content/useOverlay.mdx +0 -62
  384. package/docs/content/useSafeTimeout.mdx +0 -32
  385. package/docs/gatsby-config.js +0 -30
  386. package/docs/gatsby-node.js +0 -101
  387. package/docs/package-lock.json +0 -20756
  388. package/docs/package.json +0 -36
  389. package/docs/src/@primer/gatsby-theme-doctocat/components/hero.js +0 -21
  390. package/docs/src/@primer/gatsby-theme-doctocat/components/live-preview-wrapper.js +0 -41
  391. package/docs/src/@primer/gatsby-theme-doctocat/live-code-scope.js +0 -73
  392. package/docs/src/@primer/gatsby-theme-doctocat/nav.yml +0 -133
  393. package/docs/src/@primer/gatsby-theme-doctocat/primer-components-hero.svg +0 -1411
  394. package/docs/src/component-checklist.js +0 -81
  395. package/docs/src/props.js +0 -77
  396. package/jest.config.js +0 -13
  397. package/lib/__tests__/ActionList.test.d.ts +0 -1
  398. package/lib/__tests__/ActionList.test.js +0 -69
  399. package/lib/__tests__/ActionList.test.jsx +0 -49
  400. package/lib/__tests__/ActionList.types.test.d.ts +0 -6
  401. package/lib/__tests__/ActionList.types.test.js +0 -69
  402. package/lib/__tests__/ActionList.types.test.jsx +0 -45
  403. package/lib/__tests__/ActionList2.test.d.ts +0 -1
  404. package/lib/__tests__/ActionList2.test.js +0 -53
  405. package/lib/__tests__/ActionList2.test.jsx +0 -46
  406. package/lib/__tests__/ActionMenu.test.d.ts +0 -1
  407. package/lib/__tests__/ActionMenu.test.js +0 -151
  408. package/lib/__tests__/ActionMenu.test.jsx +0 -124
  409. package/lib/__tests__/AnchoredOverlay.test.d.ts +0 -1
  410. package/lib/__tests__/AnchoredOverlay.test.js +0 -162
  411. package/lib/__tests__/AnchoredOverlay.test.jsx +0 -121
  412. package/lib/__tests__/Autocomplete.test.d.ts +0 -1
  413. package/lib/__tests__/Autocomplete.test.js +0 -528
  414. package/lib/__tests__/Autocomplete.test.jsx +0 -299
  415. package/lib/__tests__/Avatar.test.d.ts +0 -1
  416. package/lib/__tests__/Avatar.test.js +0 -67
  417. package/lib/__tests__/Avatar.test.jsx +0 -42
  418. package/lib/__tests__/AvatarStack.test.d.ts +0 -1
  419. package/lib/__tests__/AvatarStack.test.js +0 -71
  420. package/lib/__tests__/AvatarStack.test.jsx +0 -43
  421. package/lib/__tests__/BorderBox.test.d.ts +0 -1
  422. package/lib/__tests__/BorderBox.test.js +0 -58
  423. package/lib/__tests__/BorderBox.test.jsx +0 -36
  424. package/lib/__tests__/Box.test.d.ts +0 -1
  425. package/lib/__tests__/Box.test.js +0 -78
  426. package/lib/__tests__/Box.test.jsx +0 -41
  427. package/lib/__tests__/BranchName.test.d.ts +0 -1
  428. package/lib/__tests__/BranchName.test.js +0 -36
  429. package/lib/__tests__/BranchName.test.jsx +0 -27
  430. package/lib/__tests__/Breadcrumbs.test.d.ts +0 -1
  431. package/lib/__tests__/Breadcrumbs.test.js +0 -37
  432. package/lib/__tests__/Breadcrumbs.test.jsx +0 -28
  433. package/lib/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  434. package/lib/__tests__/BreadcrumbsItem.test.js +0 -49
  435. package/lib/__tests__/BreadcrumbsItem.test.jsx +0 -31
  436. package/lib/__tests__/Button.test.d.ts +0 -1
  437. package/lib/__tests__/Button.test.js +0 -143
  438. package/lib/__tests__/Button.test.jsx +0 -100
  439. package/lib/__tests__/Caret.test.d.ts +0 -1
  440. package/lib/__tests__/Caret.test.js +0 -52
  441. package/lib/__tests__/Caret.test.jsx +0 -37
  442. package/lib/__tests__/CircleBadge.test.d.ts +0 -1
  443. package/lib/__tests__/CircleBadge.test.js +0 -83
  444. package/lib/__tests__/CircleBadge.test.jsx +0 -55
  445. package/lib/__tests__/CircleOcticon.test.d.ts +0 -1
  446. package/lib/__tests__/CircleOcticon.test.js +0 -71
  447. package/lib/__tests__/CircleOcticon.test.jsx +0 -45
  448. package/lib/__tests__/ConfirmationDialog.test.d.ts +0 -1
  449. package/lib/__tests__/ConfirmationDialog.test.js +0 -134
  450. package/lib/__tests__/ConfirmationDialog.test.jsx +0 -119
  451. package/lib/__tests__/CounterLabel.test.d.ts +0 -1
  452. package/lib/__tests__/CounterLabel.test.js +0 -58
  453. package/lib/__tests__/CounterLabel.test.jsx +0 -36
  454. package/lib/__tests__/Details.test.d.ts +0 -1
  455. package/lib/__tests__/Details.test.js +0 -117
  456. package/lib/__tests__/Details.test.jsx +0 -85
  457. package/lib/__tests__/Dialog.test.d.ts +0 -1
  458. package/lib/__tests__/Dialog.test.js +0 -184
  459. package/lib/__tests__/Dialog.test.jsx +0 -139
  460. package/lib/__tests__/Dropdown.test.d.ts +0 -1
  461. package/lib/__tests__/Dropdown.test.js +0 -63
  462. package/lib/__tests__/Dropdown.test.jsx +0 -49
  463. package/lib/__tests__/DropdownMenu.test.d.ts +0 -1
  464. package/lib/__tests__/DropdownMenu.test.js +0 -150
  465. package/lib/__tests__/DropdownMenu.test.jsx +0 -119
  466. package/lib/__tests__/FilterList.test.d.ts +0 -1
  467. package/lib/__tests__/FilterList.test.js +0 -36
  468. package/lib/__tests__/FilterList.test.jsx +0 -27
  469. package/lib/__tests__/FilterListItem.test.d.ts +0 -1
  470. package/lib/__tests__/FilterListItem.test.js +0 -46
  471. package/lib/__tests__/FilterListItem.test.jsx +0 -31
  472. package/lib/__tests__/FilteredSearch.test.d.ts +0 -1
  473. package/lib/__tests__/FilteredSearch.test.js +0 -36
  474. package/lib/__tests__/FilteredSearch.test.jsx +0 -27
  475. package/lib/__tests__/Flash.test.d.ts +0 -1
  476. package/lib/__tests__/Flash.test.js +0 -62
  477. package/lib/__tests__/Flash.test.jsx +0 -36
  478. package/lib/__tests__/Flex.test.d.ts +0 -1
  479. package/lib/__tests__/Flex.test.js +0 -74
  480. package/lib/__tests__/Flex.test.jsx +0 -51
  481. package/lib/__tests__/FormGroup.test.d.ts +0 -1
  482. package/lib/__tests__/FormGroup.test.js +0 -54
  483. package/lib/__tests__/FormGroup.test.jsx +0 -36
  484. package/lib/__tests__/Grid.test.d.ts +0 -1
  485. package/lib/__tests__/Grid.test.js +0 -104
  486. package/lib/__tests__/Grid.test.jsx +0 -69
  487. package/lib/__tests__/Header.test.d.ts +0 -1
  488. package/lib/__tests__/Header.test.js +0 -58
  489. package/lib/__tests__/Header.test.jsx +0 -45
  490. package/lib/__tests__/Heading.test.d.ts +0 -1
  491. package/lib/__tests__/Heading.test.js +0 -109
  492. package/lib/__tests__/Heading.test.jsx +0 -71
  493. package/lib/__tests__/KeyPaths.types.test.d.ts +0 -11
  494. package/lib/__tests__/KeyPaths.types.test.js +0 -7
  495. package/lib/__tests__/Label.test.d.ts +0 -1
  496. package/lib/__tests__/Label.test.js +0 -46
  497. package/lib/__tests__/Label.test.jsx +0 -33
  498. package/lib/__tests__/LabelGroup.test.d.ts +0 -1
  499. package/lib/__tests__/LabelGroup.test.js +0 -38
  500. package/lib/__tests__/LabelGroup.test.jsx +0 -29
  501. package/lib/__tests__/Link.test.d.ts +0 -1
  502. package/lib/__tests__/Link.test.js +0 -70
  503. package/lib/__tests__/Link.test.jsx +0 -43
  504. package/lib/__tests__/Merge.types.test.d.ts +0 -30
  505. package/lib/__tests__/Merge.types.test.js +0 -21
  506. package/lib/__tests__/NewButton.test.d.ts +0 -1
  507. package/lib/__tests__/NewButton.test.js +0 -95
  508. package/lib/__tests__/NewButton.test.jsx +0 -61
  509. package/lib/__tests__/Overlay.test.d.ts +0 -1
  510. package/lib/__tests__/Overlay.test.js +0 -145
  511. package/lib/__tests__/Overlay.test.jsx +0 -105
  512. package/lib/__tests__/Pagehead.test.d.ts +0 -1
  513. package/lib/__tests__/Pagehead.test.js +0 -37
  514. package/lib/__tests__/Pagehead.test.jsx +0 -25
  515. package/lib/__tests__/Pagination/Pagination.test.d.ts +0 -1
  516. package/lib/__tests__/Pagination/Pagination.test.js +0 -47
  517. package/lib/__tests__/Pagination/Pagination.test.jsx +0 -32
  518. package/lib/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  519. package/lib/__tests__/Pagination/PaginationModel.test.js +0 -186
  520. package/lib/__tests__/Pagination/PaginationModel.test.jsx +0 -118
  521. package/lib/__tests__/PointerBox.test.d.ts +0 -1
  522. package/lib/__tests__/PointerBox.test.js +0 -46
  523. package/lib/__tests__/PointerBox.test.jsx +0 -33
  524. package/lib/__tests__/Popover.test.d.ts +0 -1
  525. package/lib/__tests__/Popover.test.js +0 -66
  526. package/lib/__tests__/Popover.test.jsx +0 -58
  527. package/lib/__tests__/Portal.test.d.ts +0 -1
  528. package/lib/__tests__/Portal.test.js +0 -124
  529. package/lib/__tests__/Portal.test.jsx +0 -102
  530. package/lib/__tests__/Position.test.d.ts +0 -1
  531. package/lib/__tests__/Position.test.js +0 -143
  532. package/lib/__tests__/Position.test.jsx +0 -96
  533. package/lib/__tests__/ProgressBar.test.d.ts +0 -1
  534. package/lib/__tests__/ProgressBar.test.js +0 -68
  535. package/lib/__tests__/ProgressBar.test.jsx +0 -38
  536. package/lib/__tests__/SelectMenu.test.d.ts +0 -1
  537. package/lib/__tests__/SelectMenu.test.js +0 -155
  538. package/lib/__tests__/SelectMenu.test.jsx +0 -120
  539. package/lib/__tests__/SelectPanel.test.d.ts +0 -1
  540. package/lib/__tests__/SelectPanel.test.js +0 -80
  541. package/lib/__tests__/SelectPanel.test.jsx +0 -48
  542. package/lib/__tests__/SideNav.test.d.ts +0 -1
  543. package/lib/__tests__/SideNav.test.js +0 -71
  544. package/lib/__tests__/SideNav.test.jsx +0 -55
  545. package/lib/__tests__/Spinner.test.d.ts +0 -1
  546. package/lib/__tests__/Spinner.test.js +0 -53
  547. package/lib/__tests__/Spinner.test.jsx +0 -41
  548. package/lib/__tests__/StateLabel.test.d.ts +0 -1
  549. package/lib/__tests__/StateLabel.test.js +0 -71
  550. package/lib/__tests__/StateLabel.test.jsx +0 -46
  551. package/lib/__tests__/StyledOcticon.test.d.ts +0 -1
  552. package/lib/__tests__/StyledOcticon.test.js +0 -40
  553. package/lib/__tests__/StyledOcticon.test.jsx +0 -28
  554. package/lib/__tests__/SubNav.test.d.ts +0 -1
  555. package/lib/__tests__/SubNav.test.js +0 -62
  556. package/lib/__tests__/SubNav.test.jsx +0 -47
  557. package/lib/__tests__/SubNavLink.test.d.ts +0 -1
  558. package/lib/__tests__/SubNavLink.test.js +0 -49
  559. package/lib/__tests__/SubNavLink.test.jsx +0 -31
  560. package/lib/__tests__/TabNav.test.d.ts +0 -1
  561. package/lib/__tests__/TabNav.test.js +0 -49
  562. package/lib/__tests__/TabNav.test.jsx +0 -32
  563. package/lib/__tests__/Text.test.d.ts +0 -1
  564. package/lib/__tests__/Text.test.js +0 -105
  565. package/lib/__tests__/Text.test.jsx +0 -71
  566. package/lib/__tests__/TextInput.test.d.ts +0 -1
  567. package/lib/__tests__/TextInput.test.js +0 -78
  568. package/lib/__tests__/TextInput.test.jsx +0 -45
  569. package/lib/__tests__/TextInputWithTokens.test.d.ts +0 -1
  570. package/lib/__tests__/TextInputWithTokens.test.js +0 -572
  571. package/lib/__tests__/TextInputWithTokens.test.jsx +0 -302
  572. package/lib/__tests__/ThemeProvider.test.d.ts +0 -1
  573. package/lib/__tests__/ThemeProvider.test.js +0 -444
  574. package/lib/__tests__/ThemeProvider.test.jsx +0 -314
  575. package/lib/__tests__/Timeline.test.d.ts +0 -1
  576. package/lib/__tests__/Timeline.test.js +0 -75
  577. package/lib/__tests__/Timeline.test.jsx +0 -51
  578. package/lib/__tests__/Token.test.d.ts +0 -1
  579. package/lib/__tests__/Token.test.js +0 -180
  580. package/lib/__tests__/Token.test.jsx +0 -93
  581. package/lib/__tests__/Tooltip.test.d.ts +0 -1
  582. package/lib/__tests__/Tooltip.test.js +0 -69
  583. package/lib/__tests__/Tooltip.test.jsx +0 -46
  584. package/lib/__tests__/Truncate.test.d.ts +0 -1
  585. package/lib/__tests__/Truncate.test.js +0 -63
  586. package/lib/__tests__/Truncate.test.jsx +0 -41
  587. package/lib/__tests__/UnderlineNav.test.d.ts +0 -1
  588. package/lib/__tests__/UnderlineNav.test.js +0 -72
  589. package/lib/__tests__/UnderlineNav.test.jsx +0 -53
  590. package/lib/__tests__/UnderlineNavLink.test.d.ts +0 -1
  591. package/lib/__tests__/UnderlineNavLink.test.js +0 -51
  592. package/lib/__tests__/UnderlineNavLink.test.jsx +0 -31
  593. package/lib/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  594. package/lib/__tests__/behaviors/anchoredPosition.test.js +0 -243
  595. package/lib/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  596. package/lib/__tests__/behaviors/focusTrap.test.js +0 -234
  597. package/lib/__tests__/behaviors/focusTrap.test.jsx +0 -184
  598. package/lib/__tests__/behaviors/focusZone.test.d.ts +0 -1
  599. package/lib/__tests__/behaviors/focusZone.test.js +0 -570
  600. package/lib/__tests__/behaviors/focusZone.test.jsx +0 -406
  601. package/lib/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  602. package/lib/__tests__/behaviors/iterateFocusableElements.test.js +0 -55
  603. package/lib/__tests__/behaviors/iterateFocusableElements.test.jsx +0 -58
  604. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  605. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -155
  606. package/lib/__tests__/filterObject.test.d.ts +0 -1
  607. package/lib/__tests__/filterObject.test.js +0 -51
  608. package/lib/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  609. package/lib/__tests__/hooks/useAnchoredPosition.test.js +0 -54
  610. package/lib/__tests__/hooks/useAnchoredPosition.test.jsx +0 -29
  611. package/lib/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  612. package/lib/__tests__/hooks/useOnEscapePress.test.js +0 -32
  613. package/lib/__tests__/hooks/useOnEscapePress.test.jsx +0 -19
  614. package/lib/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  615. package/lib/__tests__/hooks/useOnOutsideClick.test.js +0 -87
  616. package/lib/__tests__/hooks/useOnOutsideClick.test.jsx +0 -63
  617. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  618. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -60
  619. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.jsx +0 -61
  620. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  621. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -45
  622. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.jsx +0 -56
  623. package/lib/__tests__/theme.test.d.ts +0 -1
  624. package/lib/__tests__/theme.test.js +0 -35
  625. package/lib/__tests__/themeGet.test.d.ts +0 -1
  626. package/lib/__tests__/themeGet.test.js +0 -14
  627. package/lib/__tests__/useSafeTimeout.test.d.ts +0 -1
  628. package/lib/__tests__/useSafeTimeout.test.js +0 -45
  629. package/lib/__tests__/useSafeTimeout.test.jsx +0 -36
  630. package/lib/__tests__/utils/createSlots.test.d.ts +0 -1
  631. package/lib/__tests__/utils/createSlots.test.js +0 -75
  632. package/lib/__tests__/utils/createSlots.test.jsx +0 -57
  633. package/lib/stories/ActionList.stories.js +0 -454
  634. package/lib/stories/ActionList2.stories.js +0 -908
  635. package/lib/stories/ActionMenu.stories.js +0 -350
  636. package/lib/stories/AnchoredOverlay.stories.js +0 -127
  637. package/lib/stories/Autocomplete.stories.js +0 -619
  638. package/lib/stories/AvatarStack.stories.js +0 -49
  639. package/lib/stories/Button.stories.js +0 -125
  640. package/lib/stories/ConfirmationDialog.stories.js +0 -111
  641. package/lib/stories/Dialog.stories.js +0 -265
  642. package/lib/stories/DropdownMenu.stories.js +0 -122
  643. package/lib/stories/IssueLabelToken.stories.js +0 -165
  644. package/lib/stories/NewButton.stories.js +0 -230
  645. package/lib/stories/Overlay.stories.js +0 -204
  646. package/lib/stories/Portal.stories.js +0 -104
  647. package/lib/stories/ProfileToken.stories.js +0 -162
  648. package/lib/stories/SelectPanel.stories.js +0 -399
  649. package/lib/stories/TextInput.stories.js +0 -144
  650. package/lib/stories/TextInputWithTokens.stories.js +0 -252
  651. package/lib/stories/ThemeProvider.stories.js +0 -102
  652. package/lib/stories/Token.stories.js +0 -176
  653. package/lib/stories/useAnchoredPosition.stories.js +0 -351
  654. package/lib/stories/useFocusTrap.stories.js +0 -356
  655. package/lib/stories/useFocusZone.stories.js +0 -599
  656. package/lib-esm/__tests__/ActionList.test.d.ts +0 -1
  657. package/lib-esm/__tests__/ActionList.test.js +0 -57
  658. package/lib-esm/__tests__/ActionList.types.test.d.ts +0 -6
  659. package/lib-esm/__tests__/ActionList.types.test.js +0 -45
  660. package/lib-esm/__tests__/ActionList2.test.d.ts +0 -1
  661. package/lib-esm/__tests__/ActionList2.test.js +0 -41
  662. package/lib-esm/__tests__/ActionMenu.test.d.ts +0 -1
  663. package/lib-esm/__tests__/ActionMenu.test.js +0 -139
  664. package/lib-esm/__tests__/AnchoredOverlay.test.d.ts +0 -1
  665. package/lib-esm/__tests__/AnchoredOverlay.test.js +0 -136
  666. package/lib-esm/__tests__/Autocomplete.test.d.ts +0 -1
  667. package/lib-esm/__tests__/Autocomplete.test.js +0 -494
  668. package/lib-esm/__tests__/Avatar.test.d.ts +0 -1
  669. package/lib-esm/__tests__/Avatar.test.js +0 -56
  670. package/lib-esm/__tests__/AvatarStack.test.d.ts +0 -1
  671. package/lib-esm/__tests__/AvatarStack.test.js +0 -58
  672. package/lib-esm/__tests__/BorderBox.test.d.ts +0 -1
  673. package/lib-esm/__tests__/BorderBox.test.js +0 -47
  674. package/lib-esm/__tests__/Box.test.d.ts +0 -1
  675. package/lib-esm/__tests__/Box.test.js +0 -67
  676. package/lib-esm/__tests__/BranchName.test.d.ts +0 -1
  677. package/lib-esm/__tests__/BranchName.test.js +0 -26
  678. package/lib-esm/__tests__/Breadcrumbs.test.d.ts +0 -1
  679. package/lib-esm/__tests__/Breadcrumbs.test.js +0 -27
  680. package/lib-esm/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  681. package/lib-esm/__tests__/BreadcrumbsItem.test.js +0 -39
  682. package/lib-esm/__tests__/Button.test.d.ts +0 -1
  683. package/lib-esm/__tests__/Button.test.js +0 -133
  684. package/lib-esm/__tests__/Caret.test.d.ts +0 -1
  685. package/lib-esm/__tests__/Caret.test.js +0 -42
  686. package/lib-esm/__tests__/CircleBadge.test.d.ts +0 -1
  687. package/lib-esm/__tests__/CircleBadge.test.js +0 -70
  688. package/lib-esm/__tests__/CircleOcticon.test.d.ts +0 -1
  689. package/lib-esm/__tests__/CircleOcticon.test.js +0 -59
  690. package/lib-esm/__tests__/ConfirmationDialog.test.d.ts +0 -1
  691. package/lib-esm/__tests__/ConfirmationDialog.test.js +0 -113
  692. package/lib-esm/__tests__/CounterLabel.test.d.ts +0 -1
  693. package/lib-esm/__tests__/CounterLabel.test.js +0 -47
  694. package/lib-esm/__tests__/Details.test.d.ts +0 -1
  695. package/lib-esm/__tests__/Details.test.js +0 -107
  696. package/lib-esm/__tests__/Dialog.test.d.ts +0 -1
  697. package/lib-esm/__tests__/Dialog.test.js +0 -171
  698. package/lib-esm/__tests__/Dropdown.test.d.ts +0 -1
  699. package/lib-esm/__tests__/Dropdown.test.js +0 -53
  700. package/lib-esm/__tests__/DropdownMenu.test.d.ts +0 -1
  701. package/lib-esm/__tests__/DropdownMenu.test.js +0 -137
  702. package/lib-esm/__tests__/FilterList.test.d.ts +0 -1
  703. package/lib-esm/__tests__/FilterList.test.js +0 -26
  704. package/lib-esm/__tests__/FilterListItem.test.d.ts +0 -1
  705. package/lib-esm/__tests__/FilterListItem.test.js +0 -36
  706. package/lib-esm/__tests__/FilteredSearch.test.d.ts +0 -1
  707. package/lib-esm/__tests__/FilteredSearch.test.js +0 -26
  708. package/lib-esm/__tests__/Flash.test.d.ts +0 -1
  709. package/lib-esm/__tests__/Flash.test.js +0 -51
  710. package/lib-esm/__tests__/Flex.test.d.ts +0 -1
  711. package/lib-esm/__tests__/Flex.test.js +0 -64
  712. package/lib-esm/__tests__/FormGroup.test.d.ts +0 -1
  713. package/lib-esm/__tests__/FormGroup.test.js +0 -44
  714. package/lib-esm/__tests__/Grid.test.d.ts +0 -1
  715. package/lib-esm/__tests__/Grid.test.js +0 -94
  716. package/lib-esm/__tests__/Header.test.d.ts +0 -1
  717. package/lib-esm/__tests__/Header.test.js +0 -48
  718. package/lib-esm/__tests__/Heading.test.d.ts +0 -1
  719. package/lib-esm/__tests__/Heading.test.js +0 -99
  720. package/lib-esm/__tests__/KeyPaths.types.test.d.ts +0 -11
  721. package/lib-esm/__tests__/KeyPaths.types.test.js +0 -3
  722. package/lib-esm/__tests__/Label.test.d.ts +0 -1
  723. package/lib-esm/__tests__/Label.test.js +0 -36
  724. package/lib-esm/__tests__/LabelGroup.test.d.ts +0 -1
  725. package/lib-esm/__tests__/LabelGroup.test.js +0 -26
  726. package/lib-esm/__tests__/Link.test.d.ts +0 -1
  727. package/lib-esm/__tests__/Link.test.js +0 -60
  728. package/lib-esm/__tests__/Merge.types.test.d.ts +0 -30
  729. package/lib-esm/__tests__/Merge.types.test.js +0 -14
  730. package/lib-esm/__tests__/NewButton.test.d.ts +0 -1
  731. package/lib-esm/__tests__/NewButton.test.js +0 -84
  732. package/lib-esm/__tests__/Overlay.test.d.ts +0 -1
  733. package/lib-esm/__tests__/Overlay.test.js +0 -123
  734. package/lib-esm/__tests__/Pagehead.test.d.ts +0 -1
  735. package/lib-esm/__tests__/Pagehead.test.js +0 -26
  736. package/lib-esm/__tests__/Pagination/Pagination.test.d.ts +0 -1
  737. package/lib-esm/__tests__/Pagination/Pagination.test.js +0 -35
  738. package/lib-esm/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  739. package/lib-esm/__tests__/Pagination/PaginationModel.test.js +0 -182
  740. package/lib-esm/__tests__/PointerBox.test.d.ts +0 -1
  741. package/lib-esm/__tests__/PointerBox.test.js +0 -36
  742. package/lib-esm/__tests__/Popover.test.d.ts +0 -1
  743. package/lib-esm/__tests__/Popover.test.js +0 -53
  744. package/lib-esm/__tests__/Portal.test.d.ts +0 -1
  745. package/lib-esm/__tests__/Portal.test.js +0 -104
  746. package/lib-esm/__tests__/Position.test.d.ts +0 -1
  747. package/lib-esm/__tests__/Position.test.js +0 -133
  748. package/lib-esm/__tests__/ProgressBar.test.d.ts +0 -1
  749. package/lib-esm/__tests__/ProgressBar.test.js +0 -58
  750. package/lib-esm/__tests__/SelectMenu.test.d.ts +0 -1
  751. package/lib-esm/__tests__/SelectMenu.test.js +0 -145
  752. package/lib-esm/__tests__/SelectPanel.test.d.ts +0 -1
  753. package/lib-esm/__tests__/SelectPanel.test.js +0 -65
  754. package/lib-esm/__tests__/SideNav.test.d.ts +0 -1
  755. package/lib-esm/__tests__/SideNav.test.js +0 -60
  756. package/lib-esm/__tests__/Spinner.test.d.ts +0 -1
  757. package/lib-esm/__tests__/Spinner.test.js +0 -43
  758. package/lib-esm/__tests__/StateLabel.test.d.ts +0 -1
  759. package/lib-esm/__tests__/StateLabel.test.js +0 -61
  760. package/lib-esm/__tests__/StyledOcticon.test.d.ts +0 -1
  761. package/lib-esm/__tests__/StyledOcticon.test.js +0 -29
  762. package/lib-esm/__tests__/SubNav.test.d.ts +0 -1
  763. package/lib-esm/__tests__/SubNav.test.js +0 -50
  764. package/lib-esm/__tests__/SubNavLink.test.d.ts +0 -1
  765. package/lib-esm/__tests__/SubNavLink.test.js +0 -39
  766. package/lib-esm/__tests__/TabNav.test.d.ts +0 -1
  767. package/lib-esm/__tests__/TabNav.test.js +0 -39
  768. package/lib-esm/__tests__/Text.test.d.ts +0 -1
  769. package/lib-esm/__tests__/Text.test.js +0 -93
  770. package/lib-esm/__tests__/TextInput.test.d.ts +0 -1
  771. package/lib-esm/__tests__/TextInput.test.js +0 -68
  772. package/lib-esm/__tests__/TextInputWithTokens.test.d.ts +0 -1
  773. package/lib-esm/__tests__/TextInputWithTokens.test.js +0 -511
  774. package/lib-esm/__tests__/ThemeProvider.test.d.ts +0 -1
  775. package/lib-esm/__tests__/ThemeProvider.test.js +0 -408
  776. package/lib-esm/__tests__/Timeline.test.d.ts +0 -1
  777. package/lib-esm/__tests__/Timeline.test.js +0 -65
  778. package/lib-esm/__tests__/Token.test.d.ts +0 -1
  779. package/lib-esm/__tests__/Token.test.js +0 -166
  780. package/lib-esm/__tests__/Tooltip.test.d.ts +0 -1
  781. package/lib-esm/__tests__/Tooltip.test.js +0 -59
  782. package/lib-esm/__tests__/Truncate.test.d.ts +0 -1
  783. package/lib-esm/__tests__/Truncate.test.js +0 -53
  784. package/lib-esm/__tests__/UnderlineNav.test.d.ts +0 -1
  785. package/lib-esm/__tests__/UnderlineNav.test.js +0 -60
  786. package/lib-esm/__tests__/UnderlineNavLink.test.d.ts +0 -1
  787. package/lib-esm/__tests__/UnderlineNavLink.test.js +0 -41
  788. package/lib-esm/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  789. package/lib-esm/__tests__/behaviors/anchoredPosition.test.js +0 -388
  790. package/lib-esm/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  791. package/lib-esm/__tests__/behaviors/focusTrap.test.js +0 -227
  792. package/lib-esm/__tests__/behaviors/focusZone.test.d.ts +0 -1
  793. package/lib-esm/__tests__/behaviors/focusZone.test.js +0 -487
  794. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  795. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.js +0 -48
  796. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  797. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -224
  798. package/lib-esm/__tests__/filterObject.test.d.ts +0 -1
  799. package/lib-esm/__tests__/filterObject.test.js +0 -27
  800. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  801. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.js +0 -46
  802. package/lib-esm/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  803. package/lib-esm/__tests__/hooks/useOnEscapePress.test.js +0 -23
  804. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  805. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.js +0 -68
  806. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  807. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -52
  808. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  809. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -36
  810. package/lib-esm/__tests__/theme.test.d.ts +0 -1
  811. package/lib-esm/__tests__/theme.test.js +0 -33
  812. package/lib-esm/__tests__/themeGet.test.d.ts +0 -1
  813. package/lib-esm/__tests__/themeGet.test.js +0 -22
  814. package/lib-esm/__tests__/useSafeTimeout.test.d.ts +0 -1
  815. package/lib-esm/__tests__/useSafeTimeout.test.js +0 -39
  816. package/lib-esm/__tests__/utils/createSlots.test.d.ts +0 -1
  817. package/lib-esm/__tests__/utils/createSlots.test.js +0 -67
  818. package/lib-esm/stories/ActionList.stories.js +0 -395
  819. package/lib-esm/stories/ActionList2.stories.js +0 -796
  820. package/lib-esm/stories/ActionMenu.stories.js +0 -305
  821. package/lib-esm/stories/AnchoredOverlay.stories.js +0 -101
  822. package/lib-esm/stories/Autocomplete.stories.js +0 -560
  823. package/lib-esm/stories/AvatarStack.stories.js +0 -32
  824. package/lib-esm/stories/Button.stories.js +0 -86
  825. package/lib-esm/stories/ConfirmationDialog.stories.js +0 -86
  826. package/lib-esm/stories/Dialog.stories.js +0 -240
  827. package/lib-esm/stories/DropdownMenu.stories.js +0 -94
  828. package/lib-esm/stories/IssueLabelToken.stories.js +0 -139
  829. package/lib-esm/stories/NewButton.stories.js +0 -178
  830. package/lib-esm/stories/Overlay.stories.js +0 -173
  831. package/lib-esm/stories/Portal.stories.js +0 -68
  832. package/lib-esm/stories/ProfileToken.stories.js +0 -136
  833. package/lib-esm/stories/SelectPanel.stories.js +0 -334
  834. package/lib-esm/stories/TextInput.stories.js +0 -117
  835. package/lib-esm/stories/TextInputWithTokens.stories.js +0 -210
  836. package/lib-esm/stories/ThemeProvider.stories.js +0 -83
  837. package/lib-esm/stories/Token.stories.js +0 -146
  838. package/lib-esm/stories/useAnchoredPosition.stories.js +0 -313
  839. package/lib-esm/stories/useFocusTrap.stories.js +0 -309
  840. package/lib-esm/stories/useFocusZone.stories.js +0 -554
  841. package/migrating.md +0 -250
  842. package/now.json +0 -17
  843. package/package-lock.json +0 -66509
  844. package/rollup.config.js +0 -36
  845. package/script/build +0 -21
  846. package/script/build-storybook +0 -10
  847. package/script/setup +0 -12
  848. package/src/ActionList/Divider.tsx +0 -25
  849. package/src/ActionList/Group.tsx +0 -45
  850. package/src/ActionList/Header.tsx +0 -74
  851. package/src/ActionList/Item.tsx +0 -480
  852. package/src/ActionList/List.tsx +0 -258
  853. package/src/ActionList/index.ts +0 -21
  854. package/src/ActionList2/Description.tsx +0 -52
  855. package/src/ActionList2/Divider.tsx +0 -24
  856. package/src/ActionList2/Group.tsx +0 -34
  857. package/src/ActionList2/Header.tsx +0 -58
  858. package/src/ActionList2/Item.tsx +0 -246
  859. package/src/ActionList2/LinkItem.tsx +0 -49
  860. package/src/ActionList2/List.tsx +0 -55
  861. package/src/ActionList2/Selection.tsx +0 -60
  862. package/src/ActionList2/Visuals.tsx +0 -76
  863. package/src/ActionList2/index.ts +0 -39
  864. package/src/ActionMenu.tsx +0 -106
  865. package/src/AnchoredOverlay/AnchoredOverlay.tsx +0 -191
  866. package/src/AnchoredOverlay/index.ts +0 -2
  867. package/src/Autocomplete/Autocomplete.tsx +0 -103
  868. package/src/Autocomplete/AutocompleteContext.tsx +0 -19
  869. package/src/Autocomplete/AutocompleteInput.tsx +0 -179
  870. package/src/Autocomplete/AutocompleteMenu.tsx +0 -341
  871. package/src/Autocomplete/AutocompleteOverlay.tsx +0 -68
  872. package/src/Autocomplete/index.ts +0 -2
  873. package/src/Avatar.tsx +0 -46
  874. package/src/AvatarPair.tsx +0 -35
  875. package/src/AvatarStack.tsx +0 -159
  876. package/src/BaseStyles.tsx +0 -53
  877. package/src/BorderBox.tsx +0 -18
  878. package/src/Box.tsx +0 -54
  879. package/src/BranchName.tsx +0 -19
  880. package/src/Breadcrumbs.tsx +0 -101
  881. package/src/Button/Button.tsx +0 -40
  882. package/src/Button/ButtonBase.tsx +0 -43
  883. package/src/Button/ButtonClose.tsx +0 -40
  884. package/src/Button/ButtonDanger.tsx +0 -43
  885. package/src/Button/ButtonGroup.tsx +0 -55
  886. package/src/Button/ButtonInvisible.tsx +0 -32
  887. package/src/Button/ButtonOutline.tsx +0 -43
  888. package/src/Button/ButtonPrimary.tsx +0 -41
  889. package/src/Button/ButtonStyles.tsx +0 -36
  890. package/src/Button/ButtonTableList.tsx +0 -58
  891. package/src/Button/index.ts +0 -16
  892. package/src/Caret.tsx +0 -133
  893. package/src/CircleBadge.tsx +0 -55
  894. package/src/CircleOcticon.tsx +0 -37
  895. package/src/CounterLabel.tsx +0 -52
  896. package/src/Details.tsx +0 -23
  897. package/src/Dialog/ConfirmationDialog.tsx +0 -184
  898. package/src/Dialog/Dialog.tsx +0 -433
  899. package/src/Dialog.tsx +0 -149
  900. package/src/Dropdown.tsx +0 -158
  901. package/src/DropdownMenu/DropdownButton.tsx +0 -15
  902. package/src/DropdownMenu/DropdownMenu.tsx +0 -115
  903. package/src/DropdownMenu/index.ts +0 -4
  904. package/src/DropdownStyles.ts +0 -128
  905. package/src/FilterList.tsx +0 -81
  906. package/src/FilteredActionList/FilteredActionList.tsx +0 -142
  907. package/src/FilteredActionList/index.ts +0 -2
  908. package/src/FilteredSearch.tsx +0 -28
  909. package/src/Flash.tsx +0 -77
  910. package/src/Flex.tsx +0 -15
  911. package/src/FormGroup.tsx +0 -27
  912. package/src/Grid.tsx +0 -15
  913. package/src/Header.tsx +0 -84
  914. package/src/Heading.tsx +0 -21
  915. package/src/Label.tsx +0 -75
  916. package/src/LabelGroup.tsx +0 -18
  917. package/src/Link.tsx +0 -46
  918. package/src/NewButton/button-counter.tsx +0 -15
  919. package/src/NewButton/button.tsx +0 -279
  920. package/src/NewButton/index.ts +0 -10
  921. package/src/NewButton/types.ts +0 -36
  922. package/src/Overlay.tsx +0 -198
  923. package/src/Pagehead.tsx +0 -17
  924. package/src/Pagination/Pagination.tsx +0 -214
  925. package/src/Pagination/index.ts +0 -4
  926. package/src/Pagination/model.tsx +0 -187
  927. package/src/PointerBox.tsx +0 -31
  928. package/src/Popover.tsx +0 -236
  929. package/src/Portal/Portal.tsx +0 -97
  930. package/src/Portal/index.ts +0 -5
  931. package/src/Position.tsx +0 -63
  932. package/src/ProgressBar.tsx +0 -52
  933. package/src/SelectMenu/SelectMenu.tsx +0 -125
  934. package/src/SelectMenu/SelectMenuContext.tsx +0 -9
  935. package/src/SelectMenu/SelectMenuDivider.tsx +0 -25
  936. package/src/SelectMenu/SelectMenuFilter.tsx +0 -51
  937. package/src/SelectMenu/SelectMenuFooter.tsx +0 -28
  938. package/src/SelectMenu/SelectMenuHeader.tsx +0 -50
  939. package/src/SelectMenu/SelectMenuItem.tsx +0 -137
  940. package/src/SelectMenu/SelectMenuList.tsx +0 -42
  941. package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +0 -24
  942. package/src/SelectMenu/SelectMenuModal.tsx +0 -121
  943. package/src/SelectMenu/SelectMenuTab.tsx +0 -88
  944. package/src/SelectMenu/SelectMenuTabPanel.tsx +0 -30
  945. package/src/SelectMenu/SelectMenuTabs.tsx +0 -44
  946. package/src/SelectMenu/hooks/useKeyboardNav.js +0 -90
  947. package/src/SelectMenu/index.ts +0 -15
  948. package/src/SelectPanel/SelectPanel.tsx +0 -173
  949. package/src/SelectPanel/index.ts +0 -2
  950. package/src/SideNav.tsx +0 -193
  951. package/src/Spinner.tsx +0 -59
  952. package/src/StateLabel.tsx +0 -114
  953. package/src/StyledOcticon.tsx +0 -24
  954. package/src/SubNav.tsx +0 -129
  955. package/src/TabNav.tsx +0 -77
  956. package/src/Text.tsx +0 -13
  957. package/src/TextInput.tsx +0 -68
  958. package/src/TextInputWithTokens.tsx +0 -351
  959. package/src/ThemeProvider.tsx +0 -176
  960. package/src/Timeline.tsx +0 -141
  961. package/src/Token/AvatarToken.tsx +0 -54
  962. package/src/Token/IssueLabelToken.tsx +0 -150
  963. package/src/Token/Token.tsx +0 -126
  964. package/src/Token/TokenBase.tsx +0 -129
  965. package/src/Token/_RemoveTokenButton.tsx +0 -111
  966. package/src/Token/_TokenTextContainer.tsx +0 -47
  967. package/src/Token/index.ts +0 -3
  968. package/src/Tooltip.tsx +0 -263
  969. package/src/Truncate.tsx +0 -36
  970. package/src/UnderlineNav.tsx +0 -110
  971. package/src/_TextInputWrapper.tsx +0 -113
  972. package/src/_UnstyledTextInput.tsx +0 -19
  973. package/src/__tests__/.eslintrc.json +0 -11
  974. package/src/__tests__/ActionList.test.tsx +0 -53
  975. package/src/__tests__/ActionList.types.test.tsx +0 -51
  976. package/src/__tests__/ActionList2.test.tsx +0 -47
  977. package/src/__tests__/ActionMenu.test.tsx +0 -136
  978. package/src/__tests__/AnchoredOverlay.test.tsx +0 -150
  979. package/src/__tests__/Autocomplete.test.tsx +0 -444
  980. package/src/__tests__/Avatar.test.tsx +0 -44
  981. package/src/__tests__/AvatarStack.test.tsx +0 -48
  982. package/src/__tests__/BorderBox.test.tsx +0 -43
  983. package/src/__tests__/Box.test.tsx +0 -42
  984. package/src/__tests__/BranchName.test.tsx +0 -26
  985. package/src/__tests__/Breadcrumbs.test.tsx +0 -27
  986. package/src/__tests__/BreadcrumbsItem.test.tsx +0 -31
  987. package/src/__tests__/Button.test.tsx +0 -128
  988. package/src/__tests__/Caret.test.tsx +0 -36
  989. package/src/__tests__/CircleBadge.test.tsx +0 -66
  990. package/src/__tests__/CircleOcticon.test.tsx +0 -50
  991. package/src/__tests__/ConfirmationDialog.test.tsx +0 -120
  992. package/src/__tests__/CounterLabel.test.tsx +0 -50
  993. package/src/__tests__/Details.test.tsx +0 -115
  994. package/src/__tests__/Dialog.test.tsx +0 -155
  995. package/src/__tests__/Dropdown.test.tsx +0 -53
  996. package/src/__tests__/DropdownMenu.test.tsx +0 -136
  997. package/src/__tests__/FilterList.test.tsx +0 -26
  998. package/src/__tests__/FilterListItem.test.tsx +0 -31
  999. package/src/__tests__/FilteredSearch.test.tsx +0 -26
  1000. package/src/__tests__/Flash.test.tsx +0 -45
  1001. package/src/__tests__/Flex.test.tsx +0 -58
  1002. package/src/__tests__/FormGroup.test.tsx +0 -38
  1003. package/src/__tests__/Grid.test.tsx +0 -82
  1004. package/src/__tests__/Header.test.tsx +0 -49
  1005. package/src/__tests__/Heading.test.tsx +0 -91
  1006. package/src/__tests__/KeyPaths.types.test.ts +0 -14
  1007. package/src/__tests__/Label.test.tsx +0 -34
  1008. package/src/__tests__/LabelGroup.test.tsx +0 -30
  1009. package/src/__tests__/Link.test.tsx +0 -47
  1010. package/src/__tests__/Merge.types.test.ts +0 -39
  1011. package/src/__tests__/NewButton.test.tsx +0 -70
  1012. package/src/__tests__/Overlay.test.tsx +0 -103
  1013. package/src/__tests__/Pagehead.test.tsx +0 -23
  1014. package/src/__tests__/Pagination/Pagination.test.tsx +0 -30
  1015. package/src/__tests__/Pagination/PaginationModel.test.tsx +0 -133
  1016. package/src/__tests__/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -184
  1017. package/src/__tests__/PointerBox.test.tsx +0 -34
  1018. package/src/__tests__/Popover.test.tsx +0 -68
  1019. package/src/__tests__/Portal.test.tsx +0 -103
  1020. package/src/__tests__/Position.test.tsx +0 -117
  1021. package/src/__tests__/ProgressBar.test.tsx +0 -40
  1022. package/src/__tests__/SelectMenu.test.tsx +0 -142
  1023. package/src/__tests__/SelectPanel.test.tsx +0 -63
  1024. package/src/__tests__/SideNav.test.tsx +0 -62
  1025. package/src/__tests__/Spinner.test.tsx +0 -42
  1026. package/src/__tests__/StateLabel.test.tsx +0 -48
  1027. package/src/__tests__/StyledOcticon.test.tsx +0 -26
  1028. package/src/__tests__/SubNav.test.tsx +0 -50
  1029. package/src/__tests__/SubNavLink.test.tsx +0 -31
  1030. package/src/__tests__/TabNav.test.tsx +0 -32
  1031. package/src/__tests__/Text.test.tsx +0 -78
  1032. package/src/__tests__/TextInput.test.tsx +0 -49
  1033. package/src/__tests__/TextInputWithTokens.test.tsx +0 -422
  1034. package/src/__tests__/ThemeProvider.test.tsx +0 -441
  1035. package/src/__tests__/Timeline.test.tsx +0 -58
  1036. package/src/__tests__/Token.test.tsx +0 -118
  1037. package/src/__tests__/Tooltip.test.tsx +0 -52
  1038. package/src/__tests__/Truncate.test.tsx +0 -43
  1039. package/src/__tests__/UnderlineNav.test.tsx +0 -58
  1040. package/src/__tests__/UnderlineNavLink.test.tsx +0 -31
  1041. package/src/__tests__/__snapshots__/ActionList.test.tsx.snap +0 -223
  1042. package/src/__tests__/__snapshots__/ActionList2.test.tsx.snap +0 -14
  1043. package/src/__tests__/__snapshots__/ActionMenu.test.tsx.snap +0 -80
  1044. package/src/__tests__/__snapshots__/AnchoredOverlay.test.tsx.snap +0 -232
  1045. package/src/__tests__/__snapshots__/Autocomplete.test.tsx.snap +0 -3888
  1046. package/src/__tests__/__snapshots__/Avatar.test.tsx.snap +0 -19
  1047. package/src/__tests__/__snapshots__/AvatarStack.test.tsx.snap +0 -377
  1048. package/src/__tests__/__snapshots__/BorderBox.test.tsx.snap +0 -14
  1049. package/src/__tests__/__snapshots__/Box.test.tsx.snap +0 -201
  1050. package/src/__tests__/__snapshots__/BranchName.test.tsx.snap +0 -17
  1051. package/src/__tests__/__snapshots__/Breadcrumbs.test.tsx.snap +0 -29
  1052. package/src/__tests__/__snapshots__/BreadcrumbsItem.test.tsx.snap +0 -79
  1053. package/src/__tests__/__snapshots__/Button.test.tsx.snap +0 -840
  1054. package/src/__tests__/__snapshots__/Caret.test.tsx.snap +0 -373
  1055. package/src/__tests__/__snapshots__/CircleBadge.test.tsx.snap +0 -142
  1056. package/src/__tests__/__snapshots__/CircleOcticon.test.tsx.snap +0 -65
  1057. package/src/__tests__/__snapshots__/ConfirmationDialog.test.tsx.snap +0 -89
  1058. package/src/__tests__/__snapshots__/CounterLabel.test.tsx.snap +0 -22
  1059. package/src/__tests__/__snapshots__/Details.test.tsx.snap +0 -15
  1060. package/src/__tests__/__snapshots__/Dialog.test.tsx.snap +0 -201
  1061. package/src/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -249
  1062. package/src/__tests__/__snapshots__/DropdownMenu.test.tsx.snap +0 -107
  1063. package/src/__tests__/__snapshots__/FilterList.test.tsx.snap +0 -13
  1064. package/src/__tests__/__snapshots__/FilterListItem.test.tsx.snap +0 -80
  1065. package/src/__tests__/__snapshots__/FilteredSearch.test.tsx.snap +0 -32
  1066. package/src/__tests__/__snapshots__/Flash.test.tsx.snap +0 -32
  1067. package/src/__tests__/__snapshots__/Flex.test.tsx.snap +0 -130
  1068. package/src/__tests__/__snapshots__/FormGroup.test.tsx.snap +0 -25
  1069. package/src/__tests__/__snapshots__/Grid.test.tsx.snap +0 -178
  1070. package/src/__tests__/__snapshots__/Header.test.tsx.snap +0 -79
  1071. package/src/__tests__/__snapshots__/Heading.test.tsx.snap +0 -13
  1072. package/src/__tests__/__snapshots__/Label.test.tsx.snap +0 -74
  1073. package/src/__tests__/__snapshots__/LabelGroup.test.tsx.snap +0 -15
  1074. package/src/__tests__/__snapshots__/Link.test.tsx.snap +0 -213
  1075. package/src/__tests__/__snapshots__/NewButton.test.tsx.snap +0 -300
  1076. package/src/__tests__/__snapshots__/Pagehead.test.tsx.snap +0 -15
  1077. package/src/__tests__/__snapshots__/PointerBox.test.tsx.snap +0 -174
  1078. package/src/__tests__/__snapshots__/Popover.test.tsx.snap +0 -4687
  1079. package/src/__tests__/__snapshots__/Position.test.tsx.snap +0 -44
  1080. package/src/__tests__/__snapshots__/ProgressBar.test.tsx.snap +0 -53
  1081. package/src/__tests__/__snapshots__/SelectMenu.test.tsx.snap +0 -473
  1082. package/src/__tests__/__snapshots__/SelectPanel.test.tsx.snap +0 -124
  1083. package/src/__tests__/__snapshots__/SideNav.test.tsx.snap +0 -143
  1084. package/src/__tests__/__snapshots__/Spinner.test.tsx.snap +0 -33
  1085. package/src/__tests__/__snapshots__/StateLabel.test.tsx.snap +0 -395
  1086. package/src/__tests__/__snapshots__/StyledOcticon.test.tsx.snap +0 -26
  1087. package/src/__tests__/__snapshots__/SubNav.test.tsx.snap +0 -44
  1088. package/src/__tests__/__snapshots__/SubNavLink.test.tsx.snap +0 -199
  1089. package/src/__tests__/__snapshots__/TabNav.test.tsx.snap +0 -58
  1090. package/src/__tests__/__snapshots__/Text.test.tsx.snap +0 -7
  1091. package/src/__tests__/__snapshots__/TextInput.test.tsx.snap +0 -446
  1092. package/src/__tests__/__snapshots__/TextInputWithTokens.test.tsx.snap +0 -6045
  1093. package/src/__tests__/__snapshots__/ThemeProvider.test.tsx.snap +0 -15
  1094. package/src/__tests__/__snapshots__/Timeline.test.tsx.snap +0 -159
  1095. package/src/__tests__/__snapshots__/Token.test.tsx.snap +0 -3811
  1096. package/src/__tests__/__snapshots__/Tooltip.test.tsx.snap +0 -227
  1097. package/src/__tests__/__snapshots__/Truncate.test.tsx.snap +0 -17
  1098. package/src/__tests__/__snapshots__/UnderlineNav.test.tsx.snap +0 -59
  1099. package/src/__tests__/__snapshots__/UnderlineNavLink.test.tsx.snap +0 -130
  1100. package/src/__tests__/behaviors/anchoredPosition.test.ts +0 -295
  1101. package/src/__tests__/behaviors/focusTrap.test.tsx +0 -236
  1102. package/src/__tests__/behaviors/focusZone.test.tsx +0 -549
  1103. package/src/__tests__/behaviors/iterateFocusableElements.test.tsx +0 -61
  1104. package/src/__tests__/behaviors/scrollIntoViewingArea.test.ts +0 -195
  1105. package/src/__tests__/filterObject.test.ts +0 -54
  1106. package/src/__tests__/hooks/useAnchoredPosition.test.tsx +0 -31
  1107. package/src/__tests__/hooks/useOnEscapePress.test.tsx +0 -16
  1108. package/src/__tests__/hooks/useOnOutsideClick.test.tsx +0 -48
  1109. package/src/__tests__/hooks/useOpenAndCloseFocus.test.tsx +0 -48
  1110. package/src/__tests__/hooks/useProvidedStateOrCreate.test.tsx +0 -39
  1111. package/src/__tests__/theme.test.ts +0 -41
  1112. package/src/__tests__/themeGet.test.ts +0 -15
  1113. package/src/__tests__/useSafeTimeout.test.tsx +0 -36
  1114. package/src/__tests__/utils/__snapshots__/createSlots.test.tsx.snap +0 -55
  1115. package/src/__tests__/utils/createSlots.test.tsx +0 -74
  1116. package/src/behaviors/anchoredPosition.ts +0 -442
  1117. package/src/behaviors/focusTrap.ts +0 -184
  1118. package/src/behaviors/focusZone.ts +0 -713
  1119. package/src/behaviors/scrollIntoViewingArea.ts +0 -27
  1120. package/src/constants.ts +0 -62
  1121. package/src/drafts.ts +0 -10
  1122. package/src/hooks/index.ts +0 -11
  1123. package/src/hooks/useAnchoredPosition.ts +0 -54
  1124. package/src/hooks/useCombinedRefs.ts +0 -40
  1125. package/src/hooks/useDetails.tsx +0 -54
  1126. package/src/hooks/useDialog.ts +0 -121
  1127. package/src/hooks/useFocusTrap.ts +0 -80
  1128. package/src/hooks/useFocusZone.ts +0 -64
  1129. package/src/hooks/useOnEscapePress.ts +0 -63
  1130. package/src/hooks/useOnOutsideClick.tsx +0 -82
  1131. package/src/hooks/useOpenAndCloseFocus.ts +0 -32
  1132. package/src/hooks/useOverlay.tsx +0 -34
  1133. package/src/hooks/useProvidedRefOrCreate.ts +0 -14
  1134. package/src/hooks/useProvidedStateOrCreate.ts +0 -27
  1135. package/src/hooks/useRenderForcingRef.ts +0 -22
  1136. package/src/hooks/useResizeObserver.ts +0 -11
  1137. package/src/hooks/useSafeTimeout.ts +0 -38
  1138. package/src/hooks/useScrollFlash.ts +0 -21
  1139. package/src/index.ts +0 -172
  1140. package/src/polyfills/eventListenerSignal.ts +0 -66
  1141. package/src/stories/ActionList.stories.tsx +0 -436
  1142. package/src/stories/ActionList2.stories.tsx +0 -1291
  1143. package/src/stories/ActionMenu.stories.tsx +0 -334
  1144. package/src/stories/AnchoredOverlay.stories.tsx +0 -117
  1145. package/src/stories/Autocomplete.stories.tsx +0 -655
  1146. package/src/stories/AvatarStack.stories.tsx +0 -37
  1147. package/src/stories/Button.stories.tsx +0 -92
  1148. package/src/stories/ConfirmationDialog.stories.tsx +0 -105
  1149. package/src/stories/Dialog.stories.tsx +0 -240
  1150. package/src/stories/DropdownMenu.stories.tsx +0 -84
  1151. package/src/stories/IssueLabelToken.stories.tsx +0 -138
  1152. package/src/stories/NewButton.stories.tsx +0 -201
  1153. package/src/stories/Overlay.stories.tsx +0 -213
  1154. package/src/stories/Portal.stories.tsx +0 -109
  1155. package/src/stories/ProfileToken.stories.tsx +0 -129
  1156. package/src/stories/SelectPanel.stories.tsx +0 -353
  1157. package/src/stories/TextInput.stories.tsx +0 -113
  1158. package/src/stories/TextInputWithTokens.stories.tsx +0 -155
  1159. package/src/stories/ThemeProvider.stories.tsx +0 -104
  1160. package/src/stories/Token.stories.tsx +0 -137
  1161. package/src/stories/useAnchoredPosition.stories.tsx +0 -332
  1162. package/src/stories/useFocusTrap.stories.tsx +0 -400
  1163. package/src/stories/useFocusZone.stories.tsx +0 -663
  1164. package/src/sx.ts +0 -24
  1165. package/src/theme-preval.js +0 -80
  1166. package/src/theme.ts +0 -89
  1167. package/src/utils/create-slots.tsx +0 -96
  1168. package/src/utils/deprecate.tsx +0 -73
  1169. package/src/utils/isNumeric.tsx +0 -4
  1170. package/src/utils/iterateFocusableElements.ts +0 -121
  1171. package/src/utils/ssr.tsx +0 -1
  1172. package/src/utils/test-deprecations.tsx +0 -19
  1173. package/src/utils/test-helpers.tsx +0 -7
  1174. package/src/utils/test-matchers.tsx +0 -109
  1175. package/src/utils/testing.tsx +0 -242
  1176. package/src/utils/theme.js +0 -64
  1177. package/src/utils/types/AriaRole.ts +0 -71
  1178. package/src/utils/types/ComponentProps.ts +0 -13
  1179. package/src/utils/types/Flatten.ts +0 -4
  1180. package/src/utils/types/KeyPaths.ts +0 -10
  1181. package/src/utils/types/MandateProps.ts +0 -19
  1182. package/src/utils/types/Merge.ts +0 -20
  1183. package/src/utils/types/index.ts +0 -5
  1184. package/src/utils/uniqueId.ts +0 -6
  1185. package/src/utils/use-force-update.ts +0 -7
  1186. package/src/utils/useIsomorphicLayoutEffect.ts +0 -10
  1187. package/src/utils/userAgent.ts +0 -7
  1188. package/stats.html +0 -3279
  1189. package/tsconfig.base.json +0 -20
  1190. package/tsconfig.build.json +0 -7
  1191. package/tsconfig.json +0 -7
@@ -1,27 +0,0 @@
1
- export const scrollIntoViewingArea = (
2
- child: HTMLElement,
3
- viewingArea: HTMLElement,
4
- direction: 'horizontal' | 'vertical' = 'vertical',
5
- startMargin = 8,
6
- endMargin = 0,
7
- behavior: ScrollBehavior = 'smooth'
8
- ) => {
9
- const startSide = direction === 'vertical' ? 'top' : 'left'
10
- const endSide = direction === 'vertical' ? 'bottom' : 'right'
11
- const scrollSide = direction === 'vertical' ? 'scrollTop' : 'scrollLeft'
12
- const {[startSide]: childStart, [endSide]: childEnd} = child.getBoundingClientRect()
13
- const {[startSide]: viewingAreaStart, [endSide]: viewingAreaEnd} = viewingArea.getBoundingClientRect()
14
-
15
- const isChildStartAboveViewingArea = childStart < viewingAreaStart + endMargin
16
- const isChildBottomBelowViewingArea = childEnd > viewingAreaEnd - startMargin
17
-
18
- if (isChildStartAboveViewingArea) {
19
- const scrollHeightToChildStart = childStart - viewingAreaStart + viewingArea[scrollSide]
20
- viewingArea.scrollTo({behavior, [startSide]: scrollHeightToChildStart - endMargin})
21
- } else if (isChildBottomBelowViewingArea) {
22
- const scrollHeightToChildBottom = childEnd - viewingAreaEnd + viewingArea[scrollSide]
23
- viewingArea.scrollTo({behavior, [startSide]: scrollHeightToChildBottom + startMargin})
24
- }
25
-
26
- // either completely in view or outside viewing area on both ends, don't scroll
27
- }
package/src/constants.ts DELETED
@@ -1,62 +0,0 @@
1
- import {themeGet} from '@styled-system/theme-get'
2
- // eslint-disable-next-line import/no-namespace
3
- import * as styledSystem from 'styled-system'
4
- import theme from './theme'
5
-
6
- const {get: getKey, compose, system} = styledSystem
7
-
8
- export const get = (key: string) => themeGet(key, getKey(theme, key))
9
-
10
- // Common props
11
-
12
- export const COMMON = compose(styledSystem.space, styledSystem.color, styledSystem.display)
13
-
14
- export interface SystemCommonProps
15
- extends styledSystem.ColorProps,
16
- styledSystem.SpaceProps,
17
- styledSystem.DisplayProps {}
18
-
19
- // Typography props
20
-
21
- const whiteSpace = system({
22
- whiteSpace: {
23
- property: 'whiteSpace'
24
- // cssProperty: 'whiteSpace',
25
- }
26
- })
27
-
28
- export const TYPOGRAPHY = compose(styledSystem.typography, whiteSpace)
29
-
30
- export interface SystemTypographyProps extends styledSystem.TypographyProps {
31
- whiteSpace?: 'normal' | 'nowrap' | 'pre' | 'pre-wrap' | 'pre-line'
32
- }
33
-
34
- // Border props
35
-
36
- export const BORDER = compose(styledSystem.border, styledSystem.shadow)
37
-
38
- export interface SystemBorderProps extends styledSystem.BorderProps, styledSystem.ShadowProps {}
39
-
40
- // Layout props
41
-
42
- export const LAYOUT = styledSystem.layout
43
-
44
- export type SystemLayoutProps = styledSystem.LayoutProps
45
-
46
- // Position props
47
-
48
- export const POSITION = styledSystem.position
49
-
50
- export type SystemPositionProps = styledSystem.PositionProps
51
-
52
- // Flex props
53
-
54
- export const FLEX = styledSystem.flexbox
55
-
56
- export type SystemFlexProps = styledSystem.FlexboxProps
57
-
58
- // Grid props
59
-
60
- export const GRID = styledSystem.grid
61
-
62
- export type SystemGridProps = styledSystem.GridProps
package/src/drafts.ts DELETED
@@ -1,10 +0,0 @@
1
- /** This is the place where we keep components that are not part of the public
2
- * api yet (not in main bundle). We don't recommend using it in production.
3
- *
4
- * But, they are published on npm and you can import them for experimentation/feedback.
5
- * example: import {ActionList} from '@primer/components/drafts
6
- */
7
-
8
- // Components
9
- export * from './ActionList2'
10
- export * from './NewButton'
@@ -1,11 +0,0 @@
1
- export {useOnOutsideClick} from './useOnOutsideClick'
2
- export type {UseOnOutsideClickSettings, TouchOrMouseEvent} from './useOnOutsideClick'
3
- export {useProvidedRefOrCreate} from './useProvidedRefOrCreate'
4
- export {useOnEscapePress} from './useOnEscapePress'
5
- export {useOpenAndCloseFocus} from './useOpenAndCloseFocus'
6
- export type {UseOpenAndCloseFocusSettings} from './useOpenAndCloseFocus'
7
- export type {AnchoredPositionHookSettings} from './useAnchoredPosition'
8
- export {useAnchoredPosition} from './useAnchoredPosition'
9
- export {useOverlay} from './useOverlay'
10
- export type {UseOverlaySettings} from './useOverlay'
11
- export {useRenderForcingRef} from './useRenderForcingRef'
@@ -1,54 +0,0 @@
1
- import React from 'react'
2
- import {PositionSettings, getAnchoredPosition, AnchorPosition} from '../behaviors/anchoredPosition'
3
- import {useProvidedRefOrCreate} from './useProvidedRefOrCreate'
4
- import {useResizeObserver} from './useResizeObserver'
5
- import useLayoutEffect from '../utils/useIsomorphicLayoutEffect'
6
-
7
- export interface AnchoredPositionHookSettings extends Partial<PositionSettings> {
8
- floatingElementRef?: React.RefObject<Element>
9
- anchorElementRef?: React.RefObject<Element>
10
- }
11
-
12
- /**
13
- * Calculates the top and left values for an absolutely-positioned floating element
14
- * to be anchored to some anchor element. Returns refs for the floating element
15
- * and the anchor element, along with the position.
16
- * @param settings Settings for calculating the anchored position.
17
- * @param dependencies Dependencies to determine when to re-calculate the position.
18
- * @returns An object of {top: number, left: number} to absolutely-position the
19
- * floating element.
20
- */
21
- export function useAnchoredPosition(
22
- settings?: AnchoredPositionHookSettings,
23
- dependencies: React.DependencyList = []
24
- ): {
25
- floatingElementRef: React.RefObject<Element>
26
- anchorElementRef: React.RefObject<Element>
27
- position: AnchorPosition | undefined
28
- } {
29
- const floatingElementRef = useProvidedRefOrCreate(settings?.floatingElementRef)
30
- const anchorElementRef = useProvidedRefOrCreate(settings?.anchorElementRef)
31
- const [position, setPosition] = React.useState<AnchorPosition | undefined>(undefined)
32
-
33
- const updatePosition = React.useCallback(
34
- () => {
35
- if (floatingElementRef.current instanceof Element && anchorElementRef.current instanceof Element) {
36
- setPosition(getAnchoredPosition(floatingElementRef.current, anchorElementRef.current, settings))
37
- } else {
38
- setPosition(undefined)
39
- }
40
- },
41
- // eslint-disable-next-line react-hooks/exhaustive-deps
42
- [floatingElementRef, anchorElementRef, ...dependencies]
43
- )
44
-
45
- useLayoutEffect(updatePosition, [updatePosition])
46
-
47
- useResizeObserver(updatePosition)
48
-
49
- return {
50
- floatingElementRef,
51
- anchorElementRef,
52
- position
53
- }
54
- }
@@ -1,40 +0,0 @@
1
- import {ForwardedRef, useRef} from 'react'
2
- import useLayoutEffect from '../utils/useIsomorphicLayoutEffect'
3
-
4
- /**
5
- * Creates a ref by combining multiple constituent refs. The ref returned by this hook
6
- * should be passed as the ref for the element that needs to be shared. This is
7
- * particularly useful when you are using `React.forwardRef` in your component but you
8
- * also want to be able to access the local element. This is a small anti-pattern,
9
- * though, as it breaks encapsulation.
10
- * @param refs
11
- */
12
- export function useCombinedRefs<T>(...refs: (ForwardedRef<T> | null | undefined)[]) {
13
- const combinedRef = useRef<T | null>(null)
14
-
15
- useLayoutEffect(() => {
16
- function setRefs(current: T | null = null) {
17
- for (const ref of refs) {
18
- if (!ref) {
19
- return
20
- }
21
- if (typeof ref === 'function') {
22
- ref(current)
23
- } else {
24
- ref.current = current
25
- }
26
- }
27
- }
28
-
29
- setRefs(combinedRef.current)
30
-
31
- return () => {
32
- // ensure the refs get updated on unmount
33
- // eslint-disable-next-line react-hooks/exhaustive-deps
34
- setRefs(combinedRef.current)
35
- }
36
- // eslint-disable-next-line react-hooks/exhaustive-deps
37
- }, [...refs, combinedRef.current])
38
-
39
- return combinedRef
40
- }
@@ -1,54 +0,0 @@
1
- import {useCallback, useEffect, useState, useRef} from 'react'
2
-
3
- type UseDetailsParameters = {
4
- ref?: React.RefObject<HTMLElement>
5
- closeOnOutsideClick?: boolean
6
- defaultOpen?: boolean
7
- onClickOutside?: (event: MouseEvent) => void
8
- }
9
-
10
- function useDetails({ref, closeOnOutsideClick, defaultOpen, onClickOutside}: UseDetailsParameters) {
11
- const [open, setOpen] = useState(defaultOpen)
12
- const backupRef = useRef(null)
13
- const customRef = ref ?? backupRef
14
-
15
- const onClickOutsideInternal = useCallback(
16
- (event: MouseEvent) => {
17
- const {current} = customRef
18
- const eventTarget = event.target as HTMLElement
19
- const closest = eventTarget.closest('details') as HTMLDetailsElement
20
- if (closest !== current) {
21
- onClickOutside && onClickOutside(event)
22
- if (!event.defaultPrevented) {
23
- setOpen(false)
24
- }
25
- }
26
- },
27
- [customRef, setOpen, onClickOutside]
28
- )
29
-
30
- // handles the overlay behavior - closing the menu when clicking outside of it
31
- useEffect(() => {
32
- if (open && closeOnOutsideClick) {
33
- document.addEventListener('click', onClickOutsideInternal)
34
- return () => {
35
- document.removeEventListener('click', onClickOutsideInternal)
36
- }
37
- }
38
- }, [open, closeOnOutsideClick, onClickOutsideInternal])
39
-
40
- const handleToggle = (e: React.SyntheticEvent<HTMLElement, Event>) => {
41
- if (!e.defaultPrevented) {
42
- const eventTarget = e.target as HTMLDetailsElement
43
- setOpen(eventTarget.open)
44
- }
45
- }
46
-
47
- const getDetailsProps = () => {
48
- return {onToggle: handleToggle, open, ref: customRef}
49
- }
50
-
51
- return {open, setOpen, getDetailsProps}
52
- }
53
-
54
- export default useDetails
@@ -1,121 +0,0 @@
1
- import {useCallback, useEffect} from 'react'
2
-
3
- const noop = () => null
4
-
5
- function visible(el: HTMLInputElement) {
6
- return !el.hidden && (!el.type || el.type !== 'hidden') && (el.offsetWidth > 0 || el.offsetHeight > 0)
7
- }
8
-
9
- function focusable(el: Element) {
10
- const inputEl = el as HTMLInputElement
11
- return inputEl.tabIndex >= 0 && !inputEl.disabled && visible(inputEl)
12
- }
13
-
14
- type UseDialogParameters = {
15
- modalRef: React.RefObject<HTMLElement>
16
- overlayRef: React.RefObject<HTMLElement>
17
- isOpen?: boolean
18
- onDismiss?: () => void
19
- initialFocusRef?: React.RefObject<HTMLElement>
20
- closeButtonRef?: React.RefObject<HTMLElement>
21
- returnFocusRef?: React.RefObject<HTMLElement>
22
- }
23
-
24
- function useDialog({
25
- modalRef,
26
- overlayRef,
27
- isOpen,
28
- onDismiss = noop,
29
- initialFocusRef,
30
- closeButtonRef
31
- }: UseDialogParameters) {
32
- const onClickOutside = useCallback(
33
- e => {
34
- if (
35
- modalRef.current &&
36
- overlayRef.current &&
37
- !modalRef.current.contains(e.target) &&
38
- overlayRef.current.contains(e.target)
39
- ) {
40
- onDismiss()
41
- }
42
- },
43
- [onDismiss, modalRef, overlayRef]
44
- )
45
-
46
- useEffect(() => {
47
- if (isOpen) {
48
- document.addEventListener('click', onClickOutside)
49
- return () => {
50
- document.removeEventListener('click', onClickOutside)
51
- }
52
- }
53
- }, [isOpen, onClickOutside])
54
-
55
- useEffect(() => {
56
- if (isOpen) {
57
- if (initialFocusRef && initialFocusRef.current) {
58
- initialFocusRef.current.focus()
59
- } else if (closeButtonRef && closeButtonRef.current) {
60
- closeButtonRef.current.focus()
61
- }
62
- }
63
- }, [isOpen, initialFocusRef, closeButtonRef])
64
-
65
- const getFocusableItem = useCallback(
66
- (e: Event, movement: number) => {
67
- if (modalRef.current) {
68
- const items = Array.from(modalRef.current.querySelectorAll('*')).filter(focusable)
69
- if (items.length === 0) return
70
- e.preventDefault()
71
- const focusedElement = document.activeElement
72
- if (!focusedElement) {
73
- return
74
- }
75
-
76
- const index = items.indexOf(focusedElement)
77
- const offsetIndex = index + movement
78
- const fallbackIndex = movement === 1 ? 0 : items.length - 1
79
- const focusableItem = items[offsetIndex] || items[fallbackIndex]
80
- return focusableItem as HTMLElement
81
- }
82
- },
83
- [modalRef]
84
- )
85
-
86
- const handleTab = useCallback(
87
- e => {
88
- const movement = e.shiftKey ? -1 : 1
89
- const focusableItem = getFocusableItem(e, movement)
90
- if (!focusableItem) {
91
- return
92
- }
93
-
94
- focusableItem.focus()
95
- },
96
- [getFocusableItem]
97
- )
98
-
99
- const onKeyDown = useCallback(
100
- event => {
101
- switch (event.key) {
102
- case 'Tab':
103
- handleTab(event)
104
- break
105
- case 'Escape':
106
- onDismiss()
107
- event.stopPropagation()
108
- break
109
- }
110
- },
111
- [handleTab, onDismiss]
112
- )
113
-
114
- const getDialogProps = () => {
115
- return {onKeyDown}
116
- }
117
-
118
- return {getDialogProps}
119
- }
120
-
121
- export default useDialog
@@ -1,80 +0,0 @@
1
- import React from 'react'
2
- import {focusTrap} from '../behaviors/focusTrap'
3
- import {useProvidedRefOrCreate} from './useProvidedRefOrCreate'
4
-
5
- export interface FocusTrapHookSettings {
6
- /**
7
- * Ref that will be used for the trapping container. If not provided, one will
8
- * be created by this hook and returned.
9
- */
10
- containerRef?: React.RefObject<HTMLElement>
11
-
12
- /**
13
- * Ref for the element that should receive focus when the focus trap is first enabled. If
14
- * not provided, one will be created by this hook and returned. Its use is optional.
15
- */
16
- initialFocusRef?: React.RefObject<HTMLElement>
17
-
18
- /**
19
- * Set to true to disable the focus trap and clean up listeners. Can be re-enabled at
20
- * any time.
21
- */
22
- disabled?: boolean
23
-
24
- /**
25
- * If true, when this focus trap is cleaned up, restore focus to the element that had
26
- * focus immediately before the focus trap was enabled. (Default: false)
27
- */
28
- restoreFocusOnCleanUp?: boolean
29
- }
30
-
31
- /**
32
- * Hook used to trap focus inside a container. Returns a ref that can be added to the container
33
- * that should trap focus.
34
- * @param settings {FocusTrapHookSettings}
35
- */
36
- export function useFocusTrap(
37
- settings?: FocusTrapHookSettings,
38
- dependencies: React.DependencyList = []
39
- ): {containerRef: React.RefObject<HTMLElement>; initialFocusRef: React.RefObject<HTMLElement>} {
40
- const containerRef = useProvidedRefOrCreate(settings?.containerRef)
41
- const initialFocusRef = useProvidedRefOrCreate(settings?.initialFocusRef)
42
- const disabled = settings?.disabled
43
- const abortController = React.useRef<AbortController>()
44
- const previousFocusedElement = React.useRef<Element | null>(null)
45
-
46
- // If we are enabling a focus trap and haven't already stored the previously focused element
47
- // go ahead an do that so we can restore later when the trap is disabled.
48
- if (!previousFocusedElement.current && !settings?.disabled) {
49
- previousFocusedElement.current = document.activeElement
50
- }
51
-
52
- // This function removes the event listeners that enable the focus trap and restores focus
53
- // to the previously-focused element (if necessary).
54
- function disableTrap() {
55
- abortController.current?.abort()
56
- if (settings?.restoreFocusOnCleanUp && previousFocusedElement.current instanceof HTMLElement) {
57
- previousFocusedElement.current.focus()
58
- previousFocusedElement.current = null
59
- }
60
- }
61
-
62
- React.useEffect(
63
- () => {
64
- if (containerRef.current instanceof HTMLElement) {
65
- if (!disabled) {
66
- abortController.current = focusTrap(containerRef.current, initialFocusRef.current ?? undefined)
67
- return () => {
68
- disableTrap()
69
- }
70
- } else {
71
- disableTrap()
72
- }
73
- }
74
- },
75
- // eslint-disable-next-line react-hooks/exhaustive-deps
76
- [containerRef, initialFocusRef, disabled, ...dependencies]
77
- )
78
-
79
- return {containerRef, initialFocusRef}
80
- }
@@ -1,64 +0,0 @@
1
- import React, {useEffect} from 'react'
2
- import {focusZone, FocusZoneSettings} from '../behaviors/focusZone'
3
- import {useProvidedRefOrCreate} from './useProvidedRefOrCreate'
4
-
5
- export interface FocusZoneHookSettings extends Omit<FocusZoneSettings, 'activeDescendantControl'> {
6
- /**
7
- * Optional ref for the container that holds all elements participating in arrow key focus.
8
- * If one is not passed, we will create one for you and return it from the hook.
9
- */
10
- containerRef?: React.RefObject<HTMLElement>
11
-
12
- /**
13
- * If using the "active descendant" focus pattern, pass `true` or a ref to the controlling
14
- * element. If a ref object is not passed, we will create one for you.
15
- */
16
- activeDescendantFocus?: boolean | React.RefObject<HTMLElement>
17
-
18
- /**
19
- * Set to true to disable the focus zone and clean up listeners. Can be re-enabled at
20
- * any time.
21
- */
22
- disabled?: boolean
23
- }
24
-
25
- export function useFocusZone(
26
- settings: FocusZoneHookSettings = {},
27
- dependencies: React.DependencyList = []
28
- ): {containerRef: React.RefObject<HTMLElement>; activeDescendantControlRef: React.RefObject<HTMLElement>} {
29
- const containerRef = useProvidedRefOrCreate(settings.containerRef)
30
- const useActiveDescendant = !!settings.activeDescendantFocus
31
- const passedActiveDescendantRef =
32
- typeof settings.activeDescendantFocus === 'boolean' || !settings.activeDescendantFocus
33
- ? undefined
34
- : settings.activeDescendantFocus
35
- const activeDescendantControlRef = useProvidedRefOrCreate(passedActiveDescendantRef)
36
- const disabled = settings.disabled
37
- const abortController = React.useRef<AbortController>()
38
-
39
- useEffect(
40
- () => {
41
- if (
42
- containerRef.current instanceof HTMLElement &&
43
- (!useActiveDescendant || activeDescendantControlRef.current instanceof HTMLElement)
44
- ) {
45
- if (!disabled) {
46
- const vanillaSettings: FocusZoneSettings = {
47
- ...settings,
48
- activeDescendantControl: activeDescendantControlRef.current ?? undefined
49
- }
50
- abortController.current = focusZone(containerRef.current, vanillaSettings)
51
- return () => {
52
- abortController.current?.abort()
53
- }
54
- } else {
55
- abortController.current?.abort()
56
- }
57
- }
58
- },
59
- // eslint-disable-next-line react-hooks/exhaustive-deps
60
- [disabled, ...dependencies]
61
- )
62
-
63
- return {containerRef, activeDescendantControlRef}
64
- }
@@ -1,63 +0,0 @@
1
- import {useEffect, useCallback} from 'react'
2
-
3
- const handlers: ((e: KeyboardEvent) => void)[] = []
4
-
5
- /**
6
- * Calls all handlers in reverse order
7
- * @param event The KeyboardEvent generated by the Escape keydown.
8
- */
9
- function handleEscape(event: KeyboardEvent) {
10
- if (event.key === 'Escape' && !event.defaultPrevented) {
11
- for (let i = handlers.length - 1; i >= 0; --i) {
12
- handlers[i](event)
13
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
14
- if (event.defaultPrevented) {
15
- break
16
- }
17
- }
18
- }
19
- }
20
-
21
- /**
22
- * Sets up a `keydown` listener on `window.document`. If
23
- * 1) The pressed key is "Escape", and
24
- * 2) The event has not had `.preventDefault()` called
25
- * The given callback will be executed.
26
- *
27
- * Note: If multiple `useOnEscapePress` hooks are active simultaneously, the
28
- * callbacks will occur in reverse order. In other words, if a parent component
29
- * and a child component both call `useOnEscapePress`, when the user presses
30
- * Escape, the child component's callback will execute, followed by the parent's
31
- * callback. Each callback has the chance to call `.preventDefault()` on the
32
- * event to prevent further callbacks.
33
- *
34
- * @param callback {(e: KeyboardEvent) => void} The callback that gets executed
35
- * when the Escape key is pressed. The KeyboardEvent generated by the Escape
36
- * keypress is passed as the only argument.
37
- *
38
- * @param callbackDependencies {React.DependencyList} The dependencies of the given
39
- * `onEscape` callback for memoization. Omit this param if the callback is already
40
- * memoized. See `React.useCallback` for more info on memoization.
41
- */
42
- export const useOnEscapePress = (
43
- onEscape: (e: KeyboardEvent) => void,
44
- callbackDependencies: React.DependencyList = [onEscape]
45
- ): void => {
46
- // eslint-disable-next-line react-hooks/exhaustive-deps
47
- const escapeCallback = useCallback(onEscape, callbackDependencies)
48
- useEffect(() => {
49
- if (handlers.length === 0) {
50
- document.addEventListener('keydown', handleEscape)
51
- }
52
- handlers.push(escapeCallback)
53
- return () => {
54
- handlers.splice(
55
- handlers.findIndex(h => h === escapeCallback),
56
- 1
57
- )
58
- if (handlers.length === 0) {
59
- document.removeEventListener('keydown', handleEscape)
60
- }
61
- }
62
- }, [escapeCallback])
63
- }
@@ -1,82 +0,0 @@
1
- import React, {useEffect, useCallback, useMemo} from 'react'
2
-
3
- export type TouchOrMouseEvent = MouseEvent | TouchEvent
4
- type TouchOrMouseEventCallback = (event: TouchOrMouseEvent) => boolean | undefined
5
-
6
- export type UseOnOutsideClickSettings = {
7
- containerRef: React.RefObject<HTMLDivElement>
8
- ignoreClickRefs?: React.RefObject<HTMLElement>[]
9
- onClickOutside: (e: TouchOrMouseEvent) => void
10
- }
11
-
12
- // Because events are handled at the document level, we provide a mechanism for early return.
13
- const stopPropagation = true
14
-
15
- /**
16
- * Calls all handlers in reverse order
17
- * @param event The MouseEvent generated by the click event.
18
- */
19
- function handleClick(event: MouseEvent) {
20
- if (!event.defaultPrevented) {
21
- for (const handler of Object.values(registry).reverse()) {
22
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
23
- if (handler(event) === stopPropagation || event.defaultPrevented) {
24
- break
25
- }
26
- }
27
- }
28
- }
29
-
30
- const registry: {[id: number]: TouchOrMouseEventCallback} = {}
31
-
32
- function register(id: number, handler: TouchOrMouseEventCallback): void {
33
- registry[id] = handler
34
- }
35
-
36
- function deregister(id: number) {
37
- delete registry[id]
38
- }
39
-
40
- // For auto-incrementing unique identifiers for registered handlers.
41
- let handlerId = 0
42
-
43
- export const useOnOutsideClick = ({containerRef, ignoreClickRefs, onClickOutside}: UseOnOutsideClickSettings) => {
44
- const id = useMemo(() => handlerId++, [])
45
-
46
- const handler = useCallback<TouchOrMouseEventCallback>(
47
- event => {
48
- // don't call click handler if the mouse event was triggered by an auxiliary button (right click/wheel button/etc)
49
- if (event instanceof MouseEvent && event.button > 0) {
50
- return stopPropagation
51
- }
52
-
53
- // don't call handler if the click happened inside of the container
54
- if (containerRef.current?.contains(event.target as Node)) {
55
- return stopPropagation
56
- }
57
-
58
- // don't call handler if click happened on an ignored ref
59
- if (ignoreClickRefs && ignoreClickRefs.some(({current}) => current?.contains(event.target as Node))) {
60
- return stopPropagation
61
- }
62
-
63
- onClickOutside(event)
64
- },
65
- [containerRef, ignoreClickRefs, onClickOutside]
66
- )
67
-
68
- useEffect(() => {
69
- if (Object.keys(registry).length === 0) {
70
- // use capture to ensure we get all events
71
- document.addEventListener('mousedown', handleClick, {capture: true})
72
- }
73
- register(id, handler)
74
-
75
- return () => {
76
- deregister(id)
77
- if (Object.keys(registry).length === 0) {
78
- document.removeEventListener('mousedown', handleClick, {capture: true})
79
- }
80
- }
81
- }, [id, handler])
82
- }