@primer/components 32.0.1-rc.c4c2c50a → 32.0.1

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 (1271) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/lib/ActionList/index.js +23 -12
  3. package/lib/ActionList2/index.js +41 -23
  4. package/lib/AnchoredOverlay/index.js +12 -4
  5. package/lib/Autocomplete/index.js +14 -7
  6. package/lib/Button/index.js +70 -21
  7. package/lib/DropdownMenu/index.js +20 -6
  8. package/lib/DropdownStyles.js +26 -18
  9. package/lib/FilteredActionList/index.js +12 -4
  10. package/lib/NewButton/index.js +12 -5
  11. package/lib/NewButton/types.js +1 -2
  12. package/lib/Pagination/index.js +12 -6
  13. package/lib/Portal/index.js +16 -5
  14. package/lib/SelectMenu/hooks/useKeyboardNav.js +96 -80
  15. package/lib/SelectMenu/index.js +14 -7
  16. package/lib/SelectPanel/index.js +12 -4
  17. package/lib/Token/index.js +30 -11
  18. package/lib/behaviors/anchoredPosition.js +234 -205
  19. package/lib/behaviors/focusTrap.js +157 -121
  20. package/lib/behaviors/focusZone.js +509 -434
  21. package/lib/behaviors/scrollIntoViewingArea.js +35 -18
  22. package/lib/constants.js +43 -39
  23. package/lib/drafts.js +30 -20
  24. package/lib/hooks/index.js +60 -16
  25. package/lib/hooks/useAnchoredPosition.js +40 -32
  26. package/lib/hooks/useCombinedRefs.js +36 -32
  27. package/lib/hooks/useDialog.js +96 -72
  28. package/lib/hooks/useFocusTrap.js +60 -43
  29. package/lib/hooks/useFocusZone.js +50 -54
  30. package/lib/hooks/useOnEscapePress.js +36 -25
  31. package/lib/hooks/useOpenAndCloseFocus.js +34 -22
  32. package/lib/hooks/useProvidedRefOrCreate.js +14 -10
  33. package/lib/hooks/useProvidedStateOrCreate.js +16 -13
  34. package/lib/hooks/useRenderForcingRef.js +17 -13
  35. package/lib/hooks/useResizeObserver.js +18 -15
  36. package/lib/hooks/useSafeTimeout.js +30 -22
  37. package/lib/hooks/useScrollFlash.js +23 -16
  38. package/lib/index.js +644 -163
  39. package/lib/polyfills/eventListenerSignal.js +45 -37
  40. package/lib/sx.js +22 -10
  41. package/lib/theme-preval.js +3169 -64
  42. package/lib/theme.js +12 -3
  43. package/lib/utils/iterateFocusableElements.js +85 -63
  44. package/lib/utils/theme.js +47 -33
  45. package/lib/utils/types/AriaRole.js +1 -2
  46. package/lib/utils/types/ComponentProps.js +1 -2
  47. package/lib/utils/types/Flatten.js +1 -2
  48. package/lib/utils/types/KeyPaths.js +1 -2
  49. package/lib/utils/types/MandateProps.js +1 -16
  50. package/lib/utils/types/Merge.js +1 -2
  51. package/lib/utils/types/index.js +69 -16
  52. package/lib/utils/uniqueId.js +8 -5
  53. package/lib/utils/use-force-update.js +14 -8
  54. package/lib/utils/useIsomorphicLayoutEffect.js +11 -8
  55. package/lib/utils/userAgent.js +12 -8
  56. package/package.json +2 -3
  57. package/.changeset/README.md +0 -8
  58. package/.changeset/config.json +0 -10
  59. package/.devcontainer/devcontainer.json +0 -8
  60. package/.eslintrc.json +0 -137
  61. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  62. package/.github/ISSUE_TEMPLATE/new_component_proposal_template.md +0 -41
  63. package/.github/dependabot.yml +0 -18
  64. package/.github/pull_request_template.md +0 -18
  65. package/.github/workflows/check_for_changeset.yml +0 -25
  66. package/.github/workflows/ci.yml +0 -34
  67. package/.github/workflows/deploy_preview.yml +0 -47
  68. package/.github/workflows/deploy_production.yml +0 -70
  69. package/.github/workflows/release.yml +0 -35
  70. package/.github/workflows/release_canary.yml +0 -70
  71. package/.github/workflows/release_candidate.yml +0 -60
  72. package/.github/workflows/size.yml +0 -13
  73. package/.github/workflows/stale.yml +0 -26
  74. package/.gitignore +0 -10
  75. package/.npmrc +0 -4
  76. package/.nvmrc +0 -1
  77. package/.storybook/main.js +0 -9
  78. package/.storybook/preview.js +0 -117
  79. package/.vscode/launch.json +0 -21
  80. package/.vscode/settings.json +0 -13
  81. package/@types/@styled-system/index.d.ts +0 -0
  82. package/@types/@styled-system/prop-types/index.d.ts +0 -1
  83. package/@types/@styled-system/props/index.d.ts +0 -1
  84. package/@types/jest-styled-components/index.d.ts +0 -1
  85. package/CODEOWNERS +0 -2
  86. package/babel-defines.js +0 -13
  87. package/babel.config.js +0 -39
  88. package/contributor-docs/CODE_OF_CONDUCT.md +0 -76
  89. package/contributor-docs/CONTRIBUTING.md +0 -274
  90. package/contributor-docs/adrs/adr-001-typescript.md +0 -23
  91. package/contributor-docs/adrs/adr-002-behavior-isolation.md +0 -108
  92. package/contributor-docs/adrs/adr-003-prop-norms.md +0 -72
  93. package/contributor-docs/behaviors.md +0 -132
  94. package/contributor-docs/component-contents-api-patterns.md +0 -316
  95. package/contributor-docs/principles.md +0 -39
  96. package/docs/.eslintrc +0 -0
  97. package/docs/.gitignore +0 -91
  98. package/docs/components/PropsList.js +0 -5
  99. package/docs/components/State.js +0 -9
  100. package/docs/components/constants.js +0 -34
  101. package/docs/components/index.js +0 -2
  102. package/docs/content/ActionList.mdx +0 -99
  103. package/docs/content/ActionList2.mdx +0 -359
  104. package/docs/content/ActionMenu.mdx +0 -80
  105. package/docs/content/AnchoredOverlay.mdx +0 -37
  106. package/docs/content/Autocomplete.mdx +0 -657
  107. package/docs/content/Avatar.mdx +0 -33
  108. package/docs/content/AvatarStack.mdx +0 -37
  109. package/docs/content/BorderBox.md +0 -46
  110. package/docs/content/Box.mdx +0 -96
  111. package/docs/content/BranchName.md +0 -18
  112. package/docs/content/Breadcrumbs.md +0 -47
  113. package/docs/content/Buttons.md +0 -46
  114. package/docs/content/CircleBadge.md +0 -35
  115. package/docs/content/CircleOcticon.md +0 -18
  116. package/docs/content/CounterLabel.md +0 -22
  117. package/docs/content/Details.md +0 -105
  118. package/docs/content/Dialog.md +0 -105
  119. package/docs/content/Dialog2.mdx +0 -180
  120. package/docs/content/Dropdown.md +0 -65
  121. package/docs/content/DropdownMenu.mdx +0 -49
  122. package/docs/content/FilterList.md +0 -37
  123. package/docs/content/FilteredSearch.md +0 -32
  124. package/docs/content/Flash.md +0 -35
  125. package/docs/content/Flex.md +0 -58
  126. package/docs/content/FormGroup.md +0 -38
  127. package/docs/content/Grid.md +0 -59
  128. package/docs/content/Header.md +0 -77
  129. package/docs/content/Heading.md +0 -22
  130. package/docs/content/Label.md +0 -49
  131. package/docs/content/LabelGroup.md +0 -21
  132. package/docs/content/Link.md +0 -28
  133. package/docs/content/Overlay.mdx +0 -85
  134. package/docs/content/Pagehead.md +0 -18
  135. package/docs/content/Pagination.md +0 -178
  136. package/docs/content/PointerBox.md +0 -81
  137. package/docs/content/Popover.md +0 -129
  138. package/docs/content/Portal.mdx +0 -78
  139. package/docs/content/Position.md +0 -100
  140. package/docs/content/ProgressBar.mdx +0 -29
  141. package/docs/content/SelectMenu.md +0 -371
  142. package/docs/content/SelectPanel.mdx +0 -67
  143. package/docs/content/SideNav.md +0 -171
  144. package/docs/content/Spinner.mdx +0 -32
  145. package/docs/content/StateLabel.md +0 -27
  146. package/docs/content/StyledOcticon.md +0 -27
  147. package/docs/content/SubNav.md +0 -100
  148. package/docs/content/TabNav.md +0 -42
  149. package/docs/content/Text.md +0 -31
  150. package/docs/content/TextInput.md +0 -34
  151. package/docs/content/TextInputTokens.mdx +0 -89
  152. package/docs/content/TextInputWithTokens.mdx +0 -211
  153. package/docs/content/Timeline.md +0 -148
  154. package/docs/content/Token.mdx +0 -381
  155. package/docs/content/Tooltip.md +0 -32
  156. package/docs/content/Truncate.md +0 -55
  157. package/docs/content/UnderlineNav.md +0 -45
  158. package/docs/content/anchoredPosition.mdx +0 -163
  159. package/docs/content/core-concepts.md +0 -70
  160. package/docs/content/focusTrap.mdx +0 -103
  161. package/docs/content/focusZone.mdx +0 -145
  162. package/docs/content/getting-started.md +0 -138
  163. package/docs/content/index.md +0 -33
  164. package/docs/content/linting.md +0 -35
  165. package/docs/content/overriding-styles.mdx +0 -82
  166. package/docs/content/philosophy.md +0 -23
  167. package/docs/content/primer-theme.md +0 -89
  168. package/docs/content/ssr.mdx +0 -43
  169. package/docs/content/system-props.mdx +0 -37
  170. package/docs/content/theme-reference.md +0 -16
  171. package/docs/content/theming.md +0 -272
  172. package/docs/content/useOnEscapePress.mdx +0 -56
  173. package/docs/content/useOnOutsideClick.mdx +0 -57
  174. package/docs/content/useOpenAndCloseFocus.mdx +0 -49
  175. package/docs/content/useOverlay.mdx +0 -62
  176. package/docs/content/useSafeTimeout.mdx +0 -32
  177. package/docs/gatsby-config.js +0 -30
  178. package/docs/gatsby-node.js +0 -101
  179. package/docs/package-lock.json +0 -20867
  180. package/docs/package.json +0 -36
  181. package/docs/src/@primer/gatsby-theme-doctocat/components/hero.js +0 -21
  182. package/docs/src/@primer/gatsby-theme-doctocat/components/live-preview-wrapper.js +0 -41
  183. package/docs/src/@primer/gatsby-theme-doctocat/live-code-scope.js +0 -73
  184. package/docs/src/@primer/gatsby-theme-doctocat/nav.yml +0 -133
  185. package/docs/src/@primer/gatsby-theme-doctocat/primer-components-hero.svg +0 -1411
  186. package/docs/src/component-checklist.js +0 -81
  187. package/docs/src/props.js +0 -77
  188. package/jest.config.js +0 -13
  189. package/lib/ActionList/Divider.jsx +0 -29
  190. package/lib/ActionList/Group.jsx +0 -23
  191. package/lib/ActionList/Header.jsx +0 -66
  192. package/lib/ActionList/Item.jsx +0 -288
  193. package/lib/ActionList/List.jsx +0 -138
  194. package/lib/ActionList2/Description.jsx +0 -29
  195. package/lib/ActionList2/Divider.jsx +0 -22
  196. package/lib/ActionList2/Group.jsx +0 -54
  197. package/lib/ActionList2/Header.jsx +0 -36
  198. package/lib/ActionList2/Item.jsx +0 -174
  199. package/lib/ActionList2/LinkItem.jsx +0 -28
  200. package/lib/ActionList2/List.jsx +0 -41
  201. package/lib/ActionList2/Selection.jsx +0 -50
  202. package/lib/ActionList2/Visuals.jsx +0 -48
  203. package/lib/ActionMenu.jsx +0 -73
  204. package/lib/AnchoredOverlay/AnchoredOverlay.jsx +0 -100
  205. package/lib/Autocomplete/Autocomplete.jsx +0 -100
  206. package/lib/Autocomplete/AutocompleteContext.jsx +0 -5
  207. package/lib/Autocomplete/AutocompleteInput.jsx +0 -113
  208. package/lib/Autocomplete/AutocompleteMenu.jsx +0 -190
  209. package/lib/Autocomplete/AutocompleteOverlay.jsx +0 -55
  210. package/lib/Avatar.jsx +0 -34
  211. package/lib/AvatarPair.jsx +0 -29
  212. package/lib/AvatarStack.jsx +0 -151
  213. package/lib/BaseStyles.jsx +0 -65
  214. package/lib/BorderBox.jsx +0 -18
  215. package/lib/Box.jsx +0 -10
  216. package/lib/BranchName.jsx +0 -20
  217. package/lib/Breadcrumbs.jsx +0 -71
  218. package/lib/Button/Button.jsx +0 -40
  219. package/lib/Button/ButtonBase.jsx +0 -33
  220. package/lib/Button/ButtonClose.jsx +0 -53
  221. package/lib/Button/ButtonDanger.jsx +0 -43
  222. package/lib/Button/ButtonGroup.jsx +0 -55
  223. package/lib/Button/ButtonInvisible.jsx +0 -32
  224. package/lib/Button/ButtonOutline.jsx +0 -43
  225. package/lib/Button/ButtonPrimary.jsx +0 -42
  226. package/lib/Button/ButtonStyles.jsx +0 -37
  227. package/lib/Button/ButtonTableList.jsx +0 -46
  228. package/lib/Caret.jsx +0 -93
  229. package/lib/CircleBadge.jsx +0 -42
  230. package/lib/CircleOcticon.jsx +0 -21
  231. package/lib/CounterLabel.jsx +0 -43
  232. package/lib/Details.jsx +0 -21
  233. package/lib/Dialog/ConfirmationDialog.jsx +0 -146
  234. package/lib/Dialog/Dialog.jsx +0 -279
  235. package/lib/Dialog.jsx +0 -129
  236. package/lib/Dropdown.jsx +0 -131
  237. package/lib/DropdownMenu/DropdownButton.jsx +0 -14
  238. package/lib/DropdownMenu/DropdownMenu.jsx +0 -70
  239. package/lib/FilterList.jsx +0 -59
  240. package/lib/FilteredActionList/FilteredActionList.jsx +0 -100
  241. package/lib/FilteredSearch.jsx +0 -28
  242. package/lib/Flash.jsx +0 -69
  243. package/lib/Flex.jsx +0 -15
  244. package/lib/FormGroup.jsx +0 -22
  245. package/lib/Grid.jsx +0 -15
  246. package/lib/Header.jsx +0 -83
  247. package/lib/Heading.jsx +0 -21
  248. package/lib/Label.jsx +0 -82
  249. package/lib/LabelGroup.jsx +0 -18
  250. package/lib/Link.jsx +0 -36
  251. package/lib/NewButton/button-counter.jsx +0 -14
  252. package/lib/NewButton/button.jsx +0 -279
  253. package/lib/Overlay.jsx +0 -154
  254. package/lib/Pagehead.jsx +0 -17
  255. package/lib/Pagination/Pagination.jsx +0 -161
  256. package/lib/Pagination/model.jsx +0 -174
  257. package/lib/PointerBox.jsx +0 -25
  258. package/lib/Popover.jsx +0 -202
  259. package/lib/Portal/Portal.jsx +0 -79
  260. package/lib/Position.jsx +0 -46
  261. package/lib/ProgressBar.jsx +0 -39
  262. package/lib/SelectMenu/SelectMenu.jsx +0 -112
  263. package/lib/SelectMenu/SelectMenuContext.jsx +0 -5
  264. package/lib/SelectMenu/SelectMenuDivider.jsx +0 -42
  265. package/lib/SelectMenu/SelectMenuFilter.jsx +0 -58
  266. package/lib/SelectMenu/SelectMenuFooter.jsx +0 -45
  267. package/lib/SelectMenu/SelectMenuHeader.jsx +0 -42
  268. package/lib/SelectMenu/SelectMenuItem.jsx +0 -142
  269. package/lib/SelectMenu/SelectMenuList.jsx +0 -59
  270. package/lib/SelectMenu/SelectMenuLoadingAnimation.jsx +0 -22
  271. package/lib/SelectMenu/SelectMenuModal.jsx +0 -118
  272. package/lib/SelectMenu/SelectMenuTab.jsx +0 -92
  273. package/lib/SelectMenu/SelectMenuTabPanel.jsx +0 -42
  274. package/lib/SelectMenu/SelectMenuTabs.jsx +0 -57
  275. package/lib/SelectPanel/SelectPanel.jsx +0 -105
  276. package/lib/SideNav.jsx +0 -173
  277. package/lib/Spinner.jsx +0 -35
  278. package/lib/StateLabel.jsx +0 -93
  279. package/lib/StyledOcticon.jsx +0 -18
  280. package/lib/SubNav.jsx +0 -101
  281. package/lib/TabNav.jsx +0 -58
  282. package/lib/Text.jsx +0 -14
  283. package/lib/TextInput.jsx +0 -23
  284. package/lib/TextInputWithTokens.jsx +0 -218
  285. package/lib/ThemeProvider.jsx +0 -130
  286. package/lib/Timeline.jsx +0 -123
  287. package/lib/Token/AvatarToken.jsx +0 -54
  288. package/lib/Token/IssueLabelToken.jsx +0 -125
  289. package/lib/Token/Token.jsx +0 -103
  290. package/lib/Token/TokenBase.jsx +0 -88
  291. package/lib/Token/_RemoveTokenButton.jsx +0 -108
  292. package/lib/Token/_TokenTextContainer.jsx +0 -49
  293. package/lib/Tooltip.jsx +0 -246
  294. package/lib/Truncate.jsx +0 -24
  295. package/lib/UnderlineNav.jsx +0 -88
  296. package/lib/_TextInputWrapper.jsx +0 -120
  297. package/lib/_UnstyledTextInput.jsx +0 -22
  298. package/lib/__tests__/ActionList.test.d.ts +0 -1
  299. package/lib/__tests__/ActionList.test.js +0 -69
  300. package/lib/__tests__/ActionList.test.jsx +0 -49
  301. package/lib/__tests__/ActionList.types.test.d.ts +0 -6
  302. package/lib/__tests__/ActionList.types.test.js +0 -69
  303. package/lib/__tests__/ActionList.types.test.jsx +0 -45
  304. package/lib/__tests__/ActionList2.test.d.ts +0 -1
  305. package/lib/__tests__/ActionList2.test.js +0 -53
  306. package/lib/__tests__/ActionList2.test.jsx +0 -46
  307. package/lib/__tests__/ActionMenu.test.d.ts +0 -1
  308. package/lib/__tests__/ActionMenu.test.js +0 -151
  309. package/lib/__tests__/ActionMenu.test.jsx +0 -124
  310. package/lib/__tests__/AnchoredOverlay.test.d.ts +0 -1
  311. package/lib/__tests__/AnchoredOverlay.test.js +0 -162
  312. package/lib/__tests__/AnchoredOverlay.test.jsx +0 -121
  313. package/lib/__tests__/Autocomplete.test.d.ts +0 -1
  314. package/lib/__tests__/Autocomplete.test.js +0 -528
  315. package/lib/__tests__/Autocomplete.test.jsx +0 -299
  316. package/lib/__tests__/Avatar.test.d.ts +0 -1
  317. package/lib/__tests__/Avatar.test.js +0 -67
  318. package/lib/__tests__/Avatar.test.jsx +0 -42
  319. package/lib/__tests__/AvatarStack.test.d.ts +0 -1
  320. package/lib/__tests__/AvatarStack.test.js +0 -71
  321. package/lib/__tests__/AvatarStack.test.jsx +0 -43
  322. package/lib/__tests__/BorderBox.test.d.ts +0 -1
  323. package/lib/__tests__/BorderBox.test.js +0 -58
  324. package/lib/__tests__/BorderBox.test.jsx +0 -36
  325. package/lib/__tests__/Box.test.d.ts +0 -1
  326. package/lib/__tests__/Box.test.js +0 -78
  327. package/lib/__tests__/Box.test.jsx +0 -41
  328. package/lib/__tests__/BranchName.test.d.ts +0 -1
  329. package/lib/__tests__/BranchName.test.js +0 -36
  330. package/lib/__tests__/BranchName.test.jsx +0 -27
  331. package/lib/__tests__/Breadcrumbs.test.d.ts +0 -1
  332. package/lib/__tests__/Breadcrumbs.test.js +0 -40
  333. package/lib/__tests__/Breadcrumbs.test.jsx +0 -28
  334. package/lib/__tests__/Breadcrumbs.types.test.d.ts +0 -3
  335. package/lib/__tests__/Breadcrumbs.types.test.js +0 -25
  336. package/lib/__tests__/Breadcrumbs.types.test.jsx +0 -24
  337. package/lib/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  338. package/lib/__tests__/BreadcrumbsItem.test.js +0 -49
  339. package/lib/__tests__/BreadcrumbsItem.test.jsx +0 -31
  340. package/lib/__tests__/Button.test.d.ts +0 -1
  341. package/lib/__tests__/Button.test.js +0 -147
  342. package/lib/__tests__/Button.test.jsx +0 -100
  343. package/lib/__tests__/Caret.test.d.ts +0 -1
  344. package/lib/__tests__/Caret.test.js +0 -52
  345. package/lib/__tests__/Caret.test.jsx +0 -37
  346. package/lib/__tests__/CircleBadge.test.d.ts +0 -1
  347. package/lib/__tests__/CircleBadge.test.js +0 -83
  348. package/lib/__tests__/CircleBadge.test.jsx +0 -55
  349. package/lib/__tests__/CircleBadge.types.test.d.ts +0 -3
  350. package/lib/__tests__/CircleBadge.types.test.js +0 -28
  351. package/lib/__tests__/CircleBadge.types.test.jsx +0 -17
  352. package/lib/__tests__/CircleOcticon.test.d.ts +0 -1
  353. package/lib/__tests__/CircleOcticon.test.js +0 -71
  354. package/lib/__tests__/CircleOcticon.test.jsx +0 -45
  355. package/lib/__tests__/ConfirmationDialog.test.d.ts +0 -1
  356. package/lib/__tests__/ConfirmationDialog.test.js +0 -134
  357. package/lib/__tests__/ConfirmationDialog.test.jsx +0 -119
  358. package/lib/__tests__/CounterLabel.test.d.ts +0 -1
  359. package/lib/__tests__/CounterLabel.test.js +0 -58
  360. package/lib/__tests__/CounterLabel.test.jsx +0 -36
  361. package/lib/__tests__/CounterLabel.types.test.d.ts +0 -3
  362. package/lib/__tests__/CounterLabel.types.test.js +0 -28
  363. package/lib/__tests__/CounterLabel.types.test.jsx +0 -17
  364. package/lib/__tests__/Details.test.d.ts +0 -1
  365. package/lib/__tests__/Details.test.js +0 -117
  366. package/lib/__tests__/Details.test.jsx +0 -85
  367. package/lib/__tests__/Dialog.test.d.ts +0 -1
  368. package/lib/__tests__/Dialog.test.js +0 -184
  369. package/lib/__tests__/Dialog.test.jsx +0 -139
  370. package/lib/__tests__/Dialog.types.test.d.ts +0 -3
  371. package/lib/__tests__/Dialog.types.test.js +0 -28
  372. package/lib/__tests__/Dialog.types.test.jsx +0 -17
  373. package/lib/__tests__/Dialog2.types.test.d.ts +0 -3
  374. package/lib/__tests__/Dialog2.types.test.js +0 -31
  375. package/lib/__tests__/Dialog2.types.test.jsx +0 -17
  376. package/lib/__tests__/Dropdown.test.d.ts +0 -1
  377. package/lib/__tests__/Dropdown.test.js +0 -63
  378. package/lib/__tests__/Dropdown.test.jsx +0 -49
  379. package/lib/__tests__/Dropdown.types.test.d.ts +0 -3
  380. package/lib/__tests__/Dropdown.types.test.js +0 -31
  381. package/lib/__tests__/Dropdown.types.test.jsx +0 -25
  382. package/lib/__tests__/DropdownMenu.test.d.ts +0 -1
  383. package/lib/__tests__/DropdownMenu.test.js +0 -150
  384. package/lib/__tests__/DropdownMenu.test.jsx +0 -119
  385. package/lib/__tests__/FilterList.test.d.ts +0 -1
  386. package/lib/__tests__/FilterList.test.js +0 -36
  387. package/lib/__tests__/FilterList.test.jsx +0 -27
  388. package/lib/__tests__/FilterList.types.test.d.ts +0 -3
  389. package/lib/__tests__/FilterList.types.test.js +0 -27
  390. package/lib/__tests__/FilterList.types.test.jsx +0 -21
  391. package/lib/__tests__/FilterListItem.test.d.ts +0 -1
  392. package/lib/__tests__/FilterListItem.test.js +0 -46
  393. package/lib/__tests__/FilterListItem.test.jsx +0 -31
  394. package/lib/__tests__/FilteredSearch.test.d.ts +0 -1
  395. package/lib/__tests__/FilteredSearch.test.js +0 -36
  396. package/lib/__tests__/FilteredSearch.test.jsx +0 -27
  397. package/lib/__tests__/FilteredSearch.types.test.d.ts +0 -3
  398. package/lib/__tests__/FilteredSearch.types.test.js +0 -28
  399. package/lib/__tests__/FilteredSearch.types.test.jsx +0 -17
  400. package/lib/__tests__/Flash.test.d.ts +0 -1
  401. package/lib/__tests__/Flash.test.js +0 -62
  402. package/lib/__tests__/Flash.test.jsx +0 -36
  403. package/lib/__tests__/Flash.types.test.d.ts +0 -3
  404. package/lib/__tests__/Flash.types.test.js +0 -28
  405. package/lib/__tests__/Flash.types.test.jsx +0 -17
  406. package/lib/__tests__/Flex.test.d.ts +0 -1
  407. package/lib/__tests__/Flex.test.js +0 -74
  408. package/lib/__tests__/Flex.test.jsx +0 -51
  409. package/lib/__tests__/FormGroup.test.d.ts +0 -1
  410. package/lib/__tests__/FormGroup.test.js +0 -54
  411. package/lib/__tests__/FormGroup.test.jsx +0 -36
  412. package/lib/__tests__/FormGroup.types.test.d.ts +0 -3
  413. package/lib/__tests__/FormGroup.types.test.js +0 -28
  414. package/lib/__tests__/FormGroup.types.test.jsx +0 -17
  415. package/lib/__tests__/Grid.test.d.ts +0 -1
  416. package/lib/__tests__/Grid.test.js +0 -104
  417. package/lib/__tests__/Grid.test.jsx +0 -69
  418. package/lib/__tests__/Header.test.d.ts +0 -1
  419. package/lib/__tests__/Header.test.js +0 -58
  420. package/lib/__tests__/Header.test.jsx +0 -45
  421. package/lib/__tests__/Header.types.test.d.ts +0 -3
  422. package/lib/__tests__/Header.types.test.js +0 -29
  423. package/lib/__tests__/Header.types.test.jsx +0 -23
  424. package/lib/__tests__/Heading.test.d.ts +0 -1
  425. package/lib/__tests__/Heading.test.js +0 -109
  426. package/lib/__tests__/Heading.test.jsx +0 -71
  427. package/lib/__tests__/KeyPaths.types.test.d.ts +0 -11
  428. package/lib/__tests__/KeyPaths.types.test.js +0 -7
  429. package/lib/__tests__/Label.test.d.ts +0 -1
  430. package/lib/__tests__/Label.test.js +0 -46
  431. package/lib/__tests__/Label.test.jsx +0 -33
  432. package/lib/__tests__/Label.types.test.d.ts +0 -3
  433. package/lib/__tests__/Label.types.test.js +0 -28
  434. package/lib/__tests__/Label.types.test.jsx +0 -17
  435. package/lib/__tests__/LabelGroup.test.d.ts +0 -1
  436. package/lib/__tests__/LabelGroup.test.js +0 -38
  437. package/lib/__tests__/LabelGroup.test.jsx +0 -29
  438. package/lib/__tests__/LabelGroup.types.test.d.ts +0 -3
  439. package/lib/__tests__/LabelGroup.types.test.js +0 -28
  440. package/lib/__tests__/LabelGroup.types.test.jsx +0 -17
  441. package/lib/__tests__/Link.test.d.ts +0 -1
  442. package/lib/__tests__/Link.test.js +0 -76
  443. package/lib/__tests__/Link.test.jsx +0 -43
  444. package/lib/__tests__/Link.types.test.d.ts +0 -3
  445. package/lib/__tests__/Link.types.test.js +0 -28
  446. package/lib/__tests__/Link.types.test.jsx +0 -17
  447. package/lib/__tests__/Merge.types.test.d.ts +0 -30
  448. package/lib/__tests__/Merge.types.test.js +0 -21
  449. package/lib/__tests__/NewButton.test.d.ts +0 -1
  450. package/lib/__tests__/NewButton.test.js +0 -95
  451. package/lib/__tests__/NewButton.test.jsx +0 -61
  452. package/lib/__tests__/Overlay.test.d.ts +0 -1
  453. package/lib/__tests__/Overlay.test.js +0 -145
  454. package/lib/__tests__/Overlay.test.jsx +0 -105
  455. package/lib/__tests__/Overlay.types.test.d.ts +0 -3
  456. package/lib/__tests__/Overlay.types.test.js +0 -35
  457. package/lib/__tests__/Overlay.types.test.jsx +0 -18
  458. package/lib/__tests__/Pagehead.test.d.ts +0 -1
  459. package/lib/__tests__/Pagehead.test.js +0 -37
  460. package/lib/__tests__/Pagehead.test.jsx +0 -25
  461. package/lib/__tests__/Pagehead.types.test.d.ts +0 -3
  462. package/lib/__tests__/Pagehead.types.test.js +0 -28
  463. package/lib/__tests__/Pagehead.types.test.jsx +0 -17
  464. package/lib/__tests__/Pagination/Pagination.test.d.ts +0 -1
  465. package/lib/__tests__/Pagination/Pagination.test.js +0 -47
  466. package/lib/__tests__/Pagination/Pagination.test.jsx +0 -32
  467. package/lib/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  468. package/lib/__tests__/Pagination/PaginationModel.test.js +0 -186
  469. package/lib/__tests__/Pagination/PaginationModel.test.jsx +0 -118
  470. package/lib/__tests__/Pagination.types.test.d.ts +0 -3
  471. package/lib/__tests__/Pagination.types.test.js +0 -33
  472. package/lib/__tests__/Pagination.types.test.jsx +0 -17
  473. package/lib/__tests__/PointerBox.test.d.ts +0 -1
  474. package/lib/__tests__/PointerBox.test.js +0 -46
  475. package/lib/__tests__/PointerBox.test.jsx +0 -33
  476. package/lib/__tests__/Popover.test.d.ts +0 -1
  477. package/lib/__tests__/Popover.test.js +0 -66
  478. package/lib/__tests__/Popover.test.jsx +0 -58
  479. package/lib/__tests__/Popover.types.test.d.ts +0 -3
  480. package/lib/__tests__/Popover.types.test.js +0 -27
  481. package/lib/__tests__/Popover.types.test.jsx +0 -21
  482. package/lib/__tests__/Portal.test.d.ts +0 -1
  483. package/lib/__tests__/Portal.test.js +0 -124
  484. package/lib/__tests__/Portal.test.jsx +0 -102
  485. package/lib/__tests__/Position.test.d.ts +0 -1
  486. package/lib/__tests__/Position.test.js +0 -143
  487. package/lib/__tests__/Position.test.jsx +0 -96
  488. package/lib/__tests__/ProgressBar.test.d.ts +0 -1
  489. package/lib/__tests__/ProgressBar.test.js +0 -68
  490. package/lib/__tests__/ProgressBar.test.jsx +0 -38
  491. package/lib/__tests__/SelectMenu.test.d.ts +0 -1
  492. package/lib/__tests__/SelectMenu.test.js +0 -155
  493. package/lib/__tests__/SelectMenu.test.jsx +0 -120
  494. package/lib/__tests__/SelectMenu.types.test.d.ts +0 -3
  495. package/lib/__tests__/SelectMenu.types.test.js +0 -47
  496. package/lib/__tests__/SelectMenu.types.test.jsx +0 -41
  497. package/lib/__tests__/SelectPanel.test.d.ts +0 -1
  498. package/lib/__tests__/SelectPanel.test.js +0 -80
  499. package/lib/__tests__/SelectPanel.test.jsx +0 -48
  500. package/lib/__tests__/SideNav.test.d.ts +0 -1
  501. package/lib/__tests__/SideNav.test.js +0 -71
  502. package/lib/__tests__/SideNav.test.jsx +0 -55
  503. package/lib/__tests__/SideNav.types.test.d.ts +0 -3
  504. package/lib/__tests__/SideNav.types.test.js +0 -28
  505. package/lib/__tests__/SideNav.types.test.jsx +0 -17
  506. package/lib/__tests__/Spinner.test.d.ts +0 -1
  507. package/lib/__tests__/Spinner.test.js +0 -53
  508. package/lib/__tests__/Spinner.test.jsx +0 -41
  509. package/lib/__tests__/StateLabel.test.d.ts +0 -1
  510. package/lib/__tests__/StateLabel.test.js +0 -71
  511. package/lib/__tests__/StateLabel.test.jsx +0 -46
  512. package/lib/__tests__/StateLabel.types.test.d.ts +0 -3
  513. package/lib/__tests__/StateLabel.types.test.js +0 -28
  514. package/lib/__tests__/StateLabel.types.test.jsx +0 -17
  515. package/lib/__tests__/StyledOcticon.test.d.ts +0 -1
  516. package/lib/__tests__/StyledOcticon.test.js +0 -40
  517. package/lib/__tests__/StyledOcticon.test.jsx +0 -28
  518. package/lib/__tests__/StyledOcticon.types.test.d.ts +0 -3
  519. package/lib/__tests__/StyledOcticon.types.test.js +0 -32
  520. package/lib/__tests__/StyledOcticon.types.test.jsx +0 -18
  521. package/lib/__tests__/SubNav.test.d.ts +0 -1
  522. package/lib/__tests__/SubNav.test.js +0 -62
  523. package/lib/__tests__/SubNav.test.jsx +0 -47
  524. package/lib/__tests__/SubNav.types.test.d.ts +0 -3
  525. package/lib/__tests__/SubNav.types.test.js +0 -27
  526. package/lib/__tests__/SubNav.types.test.jsx +0 -27
  527. package/lib/__tests__/SubNavLink.test.d.ts +0 -1
  528. package/lib/__tests__/SubNavLink.test.js +0 -49
  529. package/lib/__tests__/SubNavLink.test.jsx +0 -31
  530. package/lib/__tests__/TabNav.test.d.ts +0 -1
  531. package/lib/__tests__/TabNav.test.js +0 -49
  532. package/lib/__tests__/TabNav.test.jsx +0 -32
  533. package/lib/__tests__/TabNav.types.test.d.ts +0 -3
  534. package/lib/__tests__/TabNav.types.test.js +0 -25
  535. package/lib/__tests__/TabNav.types.test.jsx +0 -24
  536. package/lib/__tests__/Text.test.d.ts +0 -1
  537. package/lib/__tests__/Text.test.js +0 -105
  538. package/lib/__tests__/Text.test.jsx +0 -71
  539. package/lib/__tests__/TextInput.test.d.ts +0 -1
  540. package/lib/__tests__/TextInput.test.js +0 -78
  541. package/lib/__tests__/TextInput.test.jsx +0 -45
  542. package/lib/__tests__/TextInputWithTokens.test.d.ts +0 -1
  543. package/lib/__tests__/TextInputWithTokens.test.js +0 -572
  544. package/lib/__tests__/TextInputWithTokens.test.jsx +0 -302
  545. package/lib/__tests__/ThemeProvider.test.d.ts +0 -1
  546. package/lib/__tests__/ThemeProvider.test.js +0 -444
  547. package/lib/__tests__/ThemeProvider.test.jsx +0 -314
  548. package/lib/__tests__/Timeline.test.d.ts +0 -1
  549. package/lib/__tests__/Timeline.test.js +0 -75
  550. package/lib/__tests__/Timeline.test.jsx +0 -51
  551. package/lib/__tests__/Timeline.types.test.d.ts +0 -3
  552. package/lib/__tests__/Timeline.types.test.js +0 -31
  553. package/lib/__tests__/Timeline.types.test.jsx +0 -33
  554. package/lib/__tests__/Token.test.d.ts +0 -1
  555. package/lib/__tests__/Token.test.js +0 -180
  556. package/lib/__tests__/Token.test.jsx +0 -93
  557. package/lib/__tests__/Tooltip.test.d.ts +0 -1
  558. package/lib/__tests__/Tooltip.test.js +0 -69
  559. package/lib/__tests__/Tooltip.test.jsx +0 -46
  560. package/lib/__tests__/Tooltip.types.test.d.ts +0 -3
  561. package/lib/__tests__/Tooltip.types.test.js +0 -28
  562. package/lib/__tests__/Tooltip.types.test.jsx +0 -17
  563. package/lib/__tests__/Truncate.test.d.ts +0 -1
  564. package/lib/__tests__/Truncate.test.js +0 -63
  565. package/lib/__tests__/Truncate.test.jsx +0 -41
  566. package/lib/__tests__/Truncate.types.test.d.ts +0 -3
  567. package/lib/__tests__/Truncate.types.test.js +0 -31
  568. package/lib/__tests__/Truncate.types.test.jsx +0 -17
  569. package/lib/__tests__/UnderlineNav.test.d.ts +0 -1
  570. package/lib/__tests__/UnderlineNav.test.js +0 -72
  571. package/lib/__tests__/UnderlineNav.test.jsx +0 -53
  572. package/lib/__tests__/UnderlineNav.types.test.d.ts +0 -3
  573. package/lib/__tests__/UnderlineNav.types.test.js +0 -25
  574. package/lib/__tests__/UnderlineNav.types.test.jsx +0 -24
  575. package/lib/__tests__/UnderlineNavLink.test.d.ts +0 -1
  576. package/lib/__tests__/UnderlineNavLink.test.js +0 -51
  577. package/lib/__tests__/UnderlineNavLink.test.jsx +0 -31
  578. package/lib/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  579. package/lib/__tests__/behaviors/anchoredPosition.test.js +0 -243
  580. package/lib/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  581. package/lib/__tests__/behaviors/focusTrap.test.js +0 -234
  582. package/lib/__tests__/behaviors/focusTrap.test.jsx +0 -184
  583. package/lib/__tests__/behaviors/focusZone.test.d.ts +0 -1
  584. package/lib/__tests__/behaviors/focusZone.test.js +0 -570
  585. package/lib/__tests__/behaviors/focusZone.test.jsx +0 -406
  586. package/lib/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  587. package/lib/__tests__/behaviors/iterateFocusableElements.test.js +0 -55
  588. package/lib/__tests__/behaviors/iterateFocusableElements.test.jsx +0 -58
  589. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  590. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -155
  591. package/lib/__tests__/filterObject.test.d.ts +0 -1
  592. package/lib/__tests__/filterObject.test.js +0 -51
  593. package/lib/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  594. package/lib/__tests__/hooks/useAnchoredPosition.test.js +0 -54
  595. package/lib/__tests__/hooks/useAnchoredPosition.test.jsx +0 -29
  596. package/lib/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  597. package/lib/__tests__/hooks/useOnEscapePress.test.js +0 -32
  598. package/lib/__tests__/hooks/useOnEscapePress.test.jsx +0 -19
  599. package/lib/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  600. package/lib/__tests__/hooks/useOnOutsideClick.test.js +0 -87
  601. package/lib/__tests__/hooks/useOnOutsideClick.test.jsx +0 -63
  602. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  603. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -60
  604. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.jsx +0 -61
  605. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  606. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -45
  607. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.jsx +0 -56
  608. package/lib/__tests__/theme.test.d.ts +0 -1
  609. package/lib/__tests__/theme.test.js +0 -35
  610. package/lib/__tests__/themeGet.test.d.ts +0 -1
  611. package/lib/__tests__/themeGet.test.js +0 -14
  612. package/lib/__tests__/useSafeTimeout.test.d.ts +0 -1
  613. package/lib/__tests__/useSafeTimeout.test.js +0 -45
  614. package/lib/__tests__/useSafeTimeout.test.jsx +0 -36
  615. package/lib/__tests__/utils/createSlots.test.d.ts +0 -1
  616. package/lib/__tests__/utils/createSlots.test.js +0 -75
  617. package/lib/__tests__/utils/createSlots.test.jsx +0 -57
  618. package/lib/hooks/useDetails.jsx +0 -39
  619. package/lib/hooks/useOnOutsideClick.jsx +0 -61
  620. package/lib/hooks/useOverlay.jsx +0 -15
  621. package/lib/stories/ActionList.stories.js +0 -454
  622. package/lib/stories/ActionList2.stories.js +0 -909
  623. package/lib/stories/ActionMenu.stories.js +0 -348
  624. package/lib/stories/AnchoredOverlay.stories.js +0 -127
  625. package/lib/stories/Autocomplete.stories.js +0 -619
  626. package/lib/stories/AvatarStack.stories.js +0 -49
  627. package/lib/stories/Button.stories.js +0 -125
  628. package/lib/stories/ConfirmationDialog.stories.js +0 -119
  629. package/lib/stories/Dialog.stories.js +0 -269
  630. package/lib/stories/DropdownMenu.stories.js +0 -122
  631. package/lib/stories/IssueLabelToken.stories.js +0 -165
  632. package/lib/stories/NewButton.stories.js +0 -230
  633. package/lib/stories/Overlay.stories.js +0 -204
  634. package/lib/stories/Portal.stories.js +0 -104
  635. package/lib/stories/ProfileToken.stories.js +0 -162
  636. package/lib/stories/SelectPanel.stories.js +0 -399
  637. package/lib/stories/TextInput.stories.js +0 -144
  638. package/lib/stories/TextInputWithTokens.stories.js +0 -252
  639. package/lib/stories/ThemeProvider.stories.js +0 -102
  640. package/lib/stories/Token.stories.js +0 -176
  641. package/lib/stories/useAnchoredPosition.stories.js +0 -351
  642. package/lib/stories/useFocusTrap.stories.js +0 -360
  643. package/lib/stories/useFocusZone.stories.js +0 -607
  644. package/lib/utils/create-slots.jsx +0 -65
  645. package/lib/utils/deprecate.jsx +0 -59
  646. package/lib/utils/isNumeric.jsx +0 -7
  647. package/lib/utils/ssr.jsx +0 -6
  648. package/lib/utils/test-deprecations.jsx +0 -20
  649. package/lib/utils/test-helpers.jsx +0 -8
  650. package/lib/utils/test-matchers.jsx +0 -100
  651. package/lib/utils/testing.jsx +0 -206
  652. package/lib-esm/__tests__/ActionList.test.d.ts +0 -1
  653. package/lib-esm/__tests__/ActionList.test.js +0 -57
  654. package/lib-esm/__tests__/ActionList.types.test.d.ts +0 -6
  655. package/lib-esm/__tests__/ActionList.types.test.js +0 -45
  656. package/lib-esm/__tests__/ActionList2.test.d.ts +0 -1
  657. package/lib-esm/__tests__/ActionList2.test.js +0 -41
  658. package/lib-esm/__tests__/ActionMenu.test.d.ts +0 -1
  659. package/lib-esm/__tests__/ActionMenu.test.js +0 -139
  660. package/lib-esm/__tests__/AnchoredOverlay.test.d.ts +0 -1
  661. package/lib-esm/__tests__/AnchoredOverlay.test.js +0 -136
  662. package/lib-esm/__tests__/Autocomplete.test.d.ts +0 -1
  663. package/lib-esm/__tests__/Autocomplete.test.js +0 -494
  664. package/lib-esm/__tests__/Avatar.test.d.ts +0 -1
  665. package/lib-esm/__tests__/Avatar.test.js +0 -56
  666. package/lib-esm/__tests__/AvatarStack.test.d.ts +0 -1
  667. package/lib-esm/__tests__/AvatarStack.test.js +0 -58
  668. package/lib-esm/__tests__/BorderBox.test.d.ts +0 -1
  669. package/lib-esm/__tests__/BorderBox.test.js +0 -47
  670. package/lib-esm/__tests__/Box.test.d.ts +0 -1
  671. package/lib-esm/__tests__/Box.test.js +0 -67
  672. package/lib-esm/__tests__/BranchName.test.d.ts +0 -1
  673. package/lib-esm/__tests__/BranchName.test.js +0 -26
  674. package/lib-esm/__tests__/Breadcrumbs.test.d.ts +0 -1
  675. package/lib-esm/__tests__/Breadcrumbs.test.js +0 -30
  676. package/lib-esm/__tests__/Breadcrumbs.types.test.d.ts +0 -3
  677. package/lib-esm/__tests__/Breadcrumbs.types.test.js +0 -12
  678. package/lib-esm/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  679. package/lib-esm/__tests__/BreadcrumbsItem.test.js +0 -39
  680. package/lib-esm/__tests__/Button.test.d.ts +0 -1
  681. package/lib-esm/__tests__/Button.test.js +0 -137
  682. package/lib-esm/__tests__/Caret.test.d.ts +0 -1
  683. package/lib-esm/__tests__/Caret.test.js +0 -42
  684. package/lib-esm/__tests__/CircleBadge.test.d.ts +0 -1
  685. package/lib-esm/__tests__/CircleBadge.test.js +0 -70
  686. package/lib-esm/__tests__/CircleBadge.types.test.d.ts +0 -3
  687. package/lib-esm/__tests__/CircleBadge.types.test.js +0 -13
  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__/CounterLabel.types.test.d.ts +0 -3
  695. package/lib-esm/__tests__/CounterLabel.types.test.js +0 -13
  696. package/lib-esm/__tests__/Details.test.d.ts +0 -1
  697. package/lib-esm/__tests__/Details.test.js +0 -107
  698. package/lib-esm/__tests__/Dialog.test.d.ts +0 -1
  699. package/lib-esm/__tests__/Dialog.test.js +0 -171
  700. package/lib-esm/__tests__/Dialog.types.test.d.ts +0 -3
  701. package/lib-esm/__tests__/Dialog.types.test.js +0 -13
  702. package/lib-esm/__tests__/Dialog2.types.test.d.ts +0 -3
  703. package/lib-esm/__tests__/Dialog2.types.test.js +0 -16
  704. package/lib-esm/__tests__/Dropdown.test.d.ts +0 -1
  705. package/lib-esm/__tests__/Dropdown.test.js +0 -53
  706. package/lib-esm/__tests__/Dropdown.types.test.d.ts +0 -3
  707. package/lib-esm/__tests__/Dropdown.types.test.js +0 -17
  708. package/lib-esm/__tests__/DropdownMenu.test.d.ts +0 -1
  709. package/lib-esm/__tests__/DropdownMenu.test.js +0 -137
  710. package/lib-esm/__tests__/FilterList.test.d.ts +0 -1
  711. package/lib-esm/__tests__/FilterList.test.js +0 -26
  712. package/lib-esm/__tests__/FilterList.types.test.d.ts +0 -3
  713. package/lib-esm/__tests__/FilterList.types.test.js +0 -13
  714. package/lib-esm/__tests__/FilterListItem.test.d.ts +0 -1
  715. package/lib-esm/__tests__/FilterListItem.test.js +0 -36
  716. package/lib-esm/__tests__/FilteredSearch.test.d.ts +0 -1
  717. package/lib-esm/__tests__/FilteredSearch.test.js +0 -26
  718. package/lib-esm/__tests__/FilteredSearch.types.test.d.ts +0 -3
  719. package/lib-esm/__tests__/FilteredSearch.types.test.js +0 -13
  720. package/lib-esm/__tests__/Flash.test.d.ts +0 -1
  721. package/lib-esm/__tests__/Flash.test.js +0 -51
  722. package/lib-esm/__tests__/Flash.types.test.d.ts +0 -3
  723. package/lib-esm/__tests__/Flash.types.test.js +0 -13
  724. package/lib-esm/__tests__/Flex.test.d.ts +0 -1
  725. package/lib-esm/__tests__/Flex.test.js +0 -64
  726. package/lib-esm/__tests__/FormGroup.test.d.ts +0 -1
  727. package/lib-esm/__tests__/FormGroup.test.js +0 -44
  728. package/lib-esm/__tests__/FormGroup.types.test.d.ts +0 -3
  729. package/lib-esm/__tests__/FormGroup.types.test.js +0 -13
  730. package/lib-esm/__tests__/Grid.test.d.ts +0 -1
  731. package/lib-esm/__tests__/Grid.test.js +0 -94
  732. package/lib-esm/__tests__/Header.test.d.ts +0 -1
  733. package/lib-esm/__tests__/Header.test.js +0 -48
  734. package/lib-esm/__tests__/Header.types.test.d.ts +0 -3
  735. package/lib-esm/__tests__/Header.types.test.js +0 -15
  736. package/lib-esm/__tests__/Heading.test.d.ts +0 -1
  737. package/lib-esm/__tests__/Heading.test.js +0 -99
  738. package/lib-esm/__tests__/KeyPaths.types.test.d.ts +0 -11
  739. package/lib-esm/__tests__/KeyPaths.types.test.js +0 -3
  740. package/lib-esm/__tests__/Label.test.d.ts +0 -1
  741. package/lib-esm/__tests__/Label.test.js +0 -36
  742. package/lib-esm/__tests__/Label.types.test.d.ts +0 -3
  743. package/lib-esm/__tests__/Label.types.test.js +0 -13
  744. package/lib-esm/__tests__/LabelGroup.test.d.ts +0 -1
  745. package/lib-esm/__tests__/LabelGroup.test.js +0 -26
  746. package/lib-esm/__tests__/LabelGroup.types.test.d.ts +0 -3
  747. package/lib-esm/__tests__/LabelGroup.types.test.js +0 -13
  748. package/lib-esm/__tests__/Link.test.d.ts +0 -1
  749. package/lib-esm/__tests__/Link.test.js +0 -66
  750. package/lib-esm/__tests__/Link.types.test.d.ts +0 -3
  751. package/lib-esm/__tests__/Link.types.test.js +0 -13
  752. package/lib-esm/__tests__/Merge.types.test.d.ts +0 -30
  753. package/lib-esm/__tests__/Merge.types.test.js +0 -14
  754. package/lib-esm/__tests__/NewButton.test.d.ts +0 -1
  755. package/lib-esm/__tests__/NewButton.test.js +0 -84
  756. package/lib-esm/__tests__/Overlay.test.d.ts +0 -1
  757. package/lib-esm/__tests__/Overlay.test.js +0 -123
  758. package/lib-esm/__tests__/Overlay.types.test.d.ts +0 -3
  759. package/lib-esm/__tests__/Overlay.types.test.js +0 -20
  760. package/lib-esm/__tests__/Pagehead.test.d.ts +0 -1
  761. package/lib-esm/__tests__/Pagehead.test.js +0 -26
  762. package/lib-esm/__tests__/Pagehead.types.test.d.ts +0 -3
  763. package/lib-esm/__tests__/Pagehead.types.test.js +0 -13
  764. package/lib-esm/__tests__/Pagination/Pagination.test.d.ts +0 -1
  765. package/lib-esm/__tests__/Pagination/Pagination.test.js +0 -35
  766. package/lib-esm/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  767. package/lib-esm/__tests__/Pagination/PaginationModel.test.js +0 -182
  768. package/lib-esm/__tests__/Pagination.types.test.d.ts +0 -3
  769. package/lib-esm/__tests__/Pagination.types.test.js +0 -18
  770. package/lib-esm/__tests__/PointerBox.test.d.ts +0 -1
  771. package/lib-esm/__tests__/PointerBox.test.js +0 -36
  772. package/lib-esm/__tests__/Popover.test.d.ts +0 -1
  773. package/lib-esm/__tests__/Popover.test.js +0 -53
  774. package/lib-esm/__tests__/Popover.types.test.d.ts +0 -3
  775. package/lib-esm/__tests__/Popover.types.test.js +0 -13
  776. package/lib-esm/__tests__/Portal.test.d.ts +0 -1
  777. package/lib-esm/__tests__/Portal.test.js +0 -104
  778. package/lib-esm/__tests__/Position.test.d.ts +0 -1
  779. package/lib-esm/__tests__/Position.test.js +0 -133
  780. package/lib-esm/__tests__/ProgressBar.test.d.ts +0 -1
  781. package/lib-esm/__tests__/ProgressBar.test.js +0 -58
  782. package/lib-esm/__tests__/SelectMenu.test.d.ts +0 -1
  783. package/lib-esm/__tests__/SelectMenu.test.js +0 -145
  784. package/lib-esm/__tests__/SelectMenu.types.test.d.ts +0 -3
  785. package/lib-esm/__tests__/SelectMenu.types.test.js +0 -33
  786. package/lib-esm/__tests__/SelectPanel.test.d.ts +0 -1
  787. package/lib-esm/__tests__/SelectPanel.test.js +0 -65
  788. package/lib-esm/__tests__/SideNav.test.d.ts +0 -1
  789. package/lib-esm/__tests__/SideNav.test.js +0 -60
  790. package/lib-esm/__tests__/SideNav.types.test.d.ts +0 -3
  791. package/lib-esm/__tests__/SideNav.types.test.js +0 -13
  792. package/lib-esm/__tests__/Spinner.test.d.ts +0 -1
  793. package/lib-esm/__tests__/Spinner.test.js +0 -43
  794. package/lib-esm/__tests__/StateLabel.test.d.ts +0 -1
  795. package/lib-esm/__tests__/StateLabel.test.js +0 -61
  796. package/lib-esm/__tests__/StateLabel.types.test.d.ts +0 -3
  797. package/lib-esm/__tests__/StateLabel.types.test.js +0 -13
  798. package/lib-esm/__tests__/StyledOcticon.test.d.ts +0 -1
  799. package/lib-esm/__tests__/StyledOcticon.test.js +0 -29
  800. package/lib-esm/__tests__/StyledOcticon.types.test.d.ts +0 -3
  801. package/lib-esm/__tests__/StyledOcticon.types.test.js +0 -16
  802. package/lib-esm/__tests__/SubNav.test.d.ts +0 -1
  803. package/lib-esm/__tests__/SubNav.test.js +0 -50
  804. package/lib-esm/__tests__/SubNav.types.test.d.ts +0 -3
  805. package/lib-esm/__tests__/SubNav.types.test.js +0 -14
  806. package/lib-esm/__tests__/SubNavLink.test.d.ts +0 -1
  807. package/lib-esm/__tests__/SubNavLink.test.js +0 -39
  808. package/lib-esm/__tests__/TabNav.test.d.ts +0 -1
  809. package/lib-esm/__tests__/TabNav.test.js +0 -39
  810. package/lib-esm/__tests__/TabNav.types.test.d.ts +0 -3
  811. package/lib-esm/__tests__/TabNav.types.test.js +0 -12
  812. package/lib-esm/__tests__/Text.test.d.ts +0 -1
  813. package/lib-esm/__tests__/Text.test.js +0 -93
  814. package/lib-esm/__tests__/TextInput.test.d.ts +0 -1
  815. package/lib-esm/__tests__/TextInput.test.js +0 -68
  816. package/lib-esm/__tests__/TextInputWithTokens.test.d.ts +0 -1
  817. package/lib-esm/__tests__/TextInputWithTokens.test.js +0 -511
  818. package/lib-esm/__tests__/ThemeProvider.test.d.ts +0 -1
  819. package/lib-esm/__tests__/ThemeProvider.test.js +0 -408
  820. package/lib-esm/__tests__/Timeline.test.d.ts +0 -1
  821. package/lib-esm/__tests__/Timeline.test.js +0 -65
  822. package/lib-esm/__tests__/Timeline.types.test.d.ts +0 -3
  823. package/lib-esm/__tests__/Timeline.types.test.js +0 -18
  824. package/lib-esm/__tests__/Token.test.d.ts +0 -1
  825. package/lib-esm/__tests__/Token.test.js +0 -166
  826. package/lib-esm/__tests__/Tooltip.test.d.ts +0 -1
  827. package/lib-esm/__tests__/Tooltip.test.js +0 -59
  828. package/lib-esm/__tests__/Tooltip.types.test.d.ts +0 -3
  829. package/lib-esm/__tests__/Tooltip.types.test.js +0 -13
  830. package/lib-esm/__tests__/Truncate.test.d.ts +0 -1
  831. package/lib-esm/__tests__/Truncate.test.js +0 -53
  832. package/lib-esm/__tests__/Truncate.types.test.d.ts +0 -3
  833. package/lib-esm/__tests__/Truncate.types.test.js +0 -16
  834. package/lib-esm/__tests__/UnderlineNav.test.d.ts +0 -1
  835. package/lib-esm/__tests__/UnderlineNav.test.js +0 -60
  836. package/lib-esm/__tests__/UnderlineNav.types.test.d.ts +0 -3
  837. package/lib-esm/__tests__/UnderlineNav.types.test.js +0 -12
  838. package/lib-esm/__tests__/UnderlineNavLink.test.d.ts +0 -1
  839. package/lib-esm/__tests__/UnderlineNavLink.test.js +0 -41
  840. package/lib-esm/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  841. package/lib-esm/__tests__/behaviors/anchoredPosition.test.js +0 -388
  842. package/lib-esm/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  843. package/lib-esm/__tests__/behaviors/focusTrap.test.js +0 -227
  844. package/lib-esm/__tests__/behaviors/focusZone.test.d.ts +0 -1
  845. package/lib-esm/__tests__/behaviors/focusZone.test.js +0 -487
  846. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  847. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.js +0 -48
  848. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  849. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -224
  850. package/lib-esm/__tests__/filterObject.test.d.ts +0 -1
  851. package/lib-esm/__tests__/filterObject.test.js +0 -27
  852. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  853. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.js +0 -46
  854. package/lib-esm/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  855. package/lib-esm/__tests__/hooks/useOnEscapePress.test.js +0 -23
  856. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  857. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.js +0 -68
  858. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  859. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -52
  860. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  861. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -36
  862. package/lib-esm/__tests__/theme.test.d.ts +0 -1
  863. package/lib-esm/__tests__/theme.test.js +0 -33
  864. package/lib-esm/__tests__/themeGet.test.d.ts +0 -1
  865. package/lib-esm/__tests__/themeGet.test.js +0 -22
  866. package/lib-esm/__tests__/useSafeTimeout.test.d.ts +0 -1
  867. package/lib-esm/__tests__/useSafeTimeout.test.js +0 -39
  868. package/lib-esm/__tests__/utils/createSlots.test.d.ts +0 -1
  869. package/lib-esm/__tests__/utils/createSlots.test.js +0 -67
  870. package/lib-esm/stories/ActionList.stories.js +0 -395
  871. package/lib-esm/stories/ActionList2.stories.js +0 -797
  872. package/lib-esm/stories/ActionMenu.stories.js +0 -303
  873. package/lib-esm/stories/AnchoredOverlay.stories.js +0 -101
  874. package/lib-esm/stories/Autocomplete.stories.js +0 -560
  875. package/lib-esm/stories/AvatarStack.stories.js +0 -32
  876. package/lib-esm/stories/Button.stories.js +0 -86
  877. package/lib-esm/stories/ConfirmationDialog.stories.js +0 -94
  878. package/lib-esm/stories/Dialog.stories.js +0 -244
  879. package/lib-esm/stories/DropdownMenu.stories.js +0 -94
  880. package/lib-esm/stories/IssueLabelToken.stories.js +0 -139
  881. package/lib-esm/stories/NewButton.stories.js +0 -178
  882. package/lib-esm/stories/Overlay.stories.js +0 -173
  883. package/lib-esm/stories/Portal.stories.js +0 -68
  884. package/lib-esm/stories/ProfileToken.stories.js +0 -136
  885. package/lib-esm/stories/SelectPanel.stories.js +0 -334
  886. package/lib-esm/stories/TextInput.stories.js +0 -117
  887. package/lib-esm/stories/TextInputWithTokens.stories.js +0 -210
  888. package/lib-esm/stories/ThemeProvider.stories.js +0 -83
  889. package/lib-esm/stories/Token.stories.js +0 -146
  890. package/lib-esm/stories/useAnchoredPosition.stories.js +0 -313
  891. package/lib-esm/stories/useFocusTrap.stories.js +0 -313
  892. package/lib-esm/stories/useFocusZone.stories.js +0 -562
  893. package/migrating.md +0 -250
  894. package/now.json +0 -17
  895. package/package-lock.json +0 -66509
  896. package/rollup.config.js +0 -36
  897. package/script/build +0 -21
  898. package/script/build-storybook +0 -10
  899. package/script/setup +0 -12
  900. package/src/ActionList/Divider.tsx +0 -25
  901. package/src/ActionList/Group.tsx +0 -45
  902. package/src/ActionList/Header.tsx +0 -74
  903. package/src/ActionList/Item.tsx +0 -480
  904. package/src/ActionList/List.tsx +0 -258
  905. package/src/ActionList/index.ts +0 -21
  906. package/src/ActionList2/Description.tsx +0 -52
  907. package/src/ActionList2/Divider.tsx +0 -24
  908. package/src/ActionList2/Group.tsx +0 -103
  909. package/src/ActionList2/Header.tsx +0 -58
  910. package/src/ActionList2/Item.tsx +0 -246
  911. package/src/ActionList2/LinkItem.tsx +0 -49
  912. package/src/ActionList2/List.tsx +0 -55
  913. package/src/ActionList2/Selection.tsx +0 -60
  914. package/src/ActionList2/Visuals.tsx +0 -76
  915. package/src/ActionList2/index.ts +0 -39
  916. package/src/ActionMenu.tsx +0 -106
  917. package/src/AnchoredOverlay/AnchoredOverlay.tsx +0 -191
  918. package/src/AnchoredOverlay/index.ts +0 -2
  919. package/src/Autocomplete/Autocomplete.tsx +0 -103
  920. package/src/Autocomplete/AutocompleteContext.tsx +0 -19
  921. package/src/Autocomplete/AutocompleteInput.tsx +0 -179
  922. package/src/Autocomplete/AutocompleteMenu.tsx +0 -341
  923. package/src/Autocomplete/AutocompleteOverlay.tsx +0 -68
  924. package/src/Autocomplete/index.ts +0 -2
  925. package/src/Avatar.tsx +0 -46
  926. package/src/AvatarPair.tsx +0 -35
  927. package/src/AvatarStack.tsx +0 -159
  928. package/src/BaseStyles.tsx +0 -53
  929. package/src/BorderBox.tsx +0 -18
  930. package/src/Box.tsx +0 -54
  931. package/src/BranchName.tsx +0 -19
  932. package/src/Breadcrumbs.tsx +0 -101
  933. package/src/Button/Button.tsx +0 -39
  934. package/src/Button/ButtonBase.tsx +0 -39
  935. package/src/Button/ButtonClose.tsx +0 -36
  936. package/src/Button/ButtonDanger.tsx +0 -42
  937. package/src/Button/ButtonGroup.tsx +0 -55
  938. package/src/Button/ButtonInvisible.tsx +0 -31
  939. package/src/Button/ButtonOutline.tsx +0 -42
  940. package/src/Button/ButtonPrimary.tsx +0 -40
  941. package/src/Button/ButtonStyles.tsx +0 -36
  942. package/src/Button/ButtonTableList.tsx +0 -45
  943. package/src/Button/index.ts +0 -16
  944. package/src/Caret.tsx +0 -133
  945. package/src/CircleBadge.tsx +0 -53
  946. package/src/CircleOcticon.tsx +0 -37
  947. package/src/CounterLabel.tsx +0 -50
  948. package/src/Details.tsx +0 -23
  949. package/src/Dialog/ConfirmationDialog.tsx +0 -184
  950. package/src/Dialog/Dialog.tsx +0 -444
  951. package/src/Dialog.tsx +0 -145
  952. package/src/Dropdown.tsx +0 -154
  953. package/src/DropdownMenu/DropdownButton.tsx +0 -15
  954. package/src/DropdownMenu/DropdownMenu.tsx +0 -115
  955. package/src/DropdownMenu/index.ts +0 -4
  956. package/src/DropdownStyles.ts +0 -128
  957. package/src/FilterList.tsx +0 -75
  958. package/src/FilteredActionList/FilteredActionList.tsx +0 -142
  959. package/src/FilteredActionList/index.ts +0 -2
  960. package/src/FilteredSearch.tsx +0 -27
  961. package/src/Flash.tsx +0 -75
  962. package/src/Flex.tsx +0 -15
  963. package/src/FormGroup.tsx +0 -24
  964. package/src/Grid.tsx +0 -15
  965. package/src/Header.tsx +0 -74
  966. package/src/Heading.tsx +0 -21
  967. package/src/Label.tsx +0 -72
  968. package/src/LabelGroup.tsx +0 -17
  969. package/src/Link.tsx +0 -42
  970. package/src/NewButton/button-counter.tsx +0 -15
  971. package/src/NewButton/button.tsx +0 -283
  972. package/src/NewButton/index.ts +0 -10
  973. package/src/NewButton/types.ts +0 -36
  974. package/src/Overlay.tsx +0 -200
  975. package/src/Pagehead.tsx +0 -16
  976. package/src/Pagination/Pagination.tsx +0 -212
  977. package/src/Pagination/index.ts +0 -4
  978. package/src/Pagination/model.tsx +0 -187
  979. package/src/PointerBox.tsx +0 -31
  980. package/src/Popover.tsx +0 -225
  981. package/src/Portal/Portal.tsx +0 -97
  982. package/src/Portal/index.ts +0 -5
  983. package/src/Position.tsx +0 -63
  984. package/src/ProgressBar.tsx +0 -52
  985. package/src/SelectMenu/SelectMenu.tsx +0 -123
  986. package/src/SelectMenu/SelectMenuContext.tsx +0 -9
  987. package/src/SelectMenu/SelectMenuDivider.tsx +0 -24
  988. package/src/SelectMenu/SelectMenuFilter.tsx +0 -50
  989. package/src/SelectMenu/SelectMenuFooter.tsx +0 -27
  990. package/src/SelectMenu/SelectMenuHeader.tsx +0 -48
  991. package/src/SelectMenu/SelectMenuItem.tsx +0 -136
  992. package/src/SelectMenu/SelectMenuList.tsx +0 -41
  993. package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +0 -25
  994. package/src/SelectMenu/SelectMenuModal.tsx +0 -119
  995. package/src/SelectMenu/SelectMenuTab.tsx +0 -87
  996. package/src/SelectMenu/SelectMenuTabPanel.tsx +0 -29
  997. package/src/SelectMenu/SelectMenuTabs.tsx +0 -43
  998. package/src/SelectMenu/hooks/useKeyboardNav.js +0 -90
  999. package/src/SelectMenu/index.ts +0 -15
  1000. package/src/SelectPanel/SelectPanel.tsx +0 -173
  1001. package/src/SelectPanel/index.ts +0 -2
  1002. package/src/SideNav.tsx +0 -191
  1003. package/src/Spinner.tsx +0 -59
  1004. package/src/StateLabel.tsx +0 -112
  1005. package/src/StyledOcticon.tsx +0 -22
  1006. package/src/SubNav.tsx +0 -124
  1007. package/src/TabNav.tsx +0 -73
  1008. package/src/Text.tsx +0 -13
  1009. package/src/TextInput.tsx +0 -68
  1010. package/src/TextInputWithTokens.tsx +0 -351
  1011. package/src/ThemeProvider.tsx +0 -176
  1012. package/src/Timeline.tsx +0 -140
  1013. package/src/Token/AvatarToken.tsx +0 -54
  1014. package/src/Token/IssueLabelToken.tsx +0 -150
  1015. package/src/Token/Token.tsx +0 -126
  1016. package/src/Token/TokenBase.tsx +0 -129
  1017. package/src/Token/_RemoveTokenButton.tsx +0 -111
  1018. package/src/Token/_TokenTextContainer.tsx +0 -47
  1019. package/src/Token/index.ts +0 -3
  1020. package/src/Tooltip.tsx +0 -263
  1021. package/src/Truncate.tsx +0 -31
  1022. package/src/UnderlineNav.tsx +0 -107
  1023. package/src/_TextInputWrapper.tsx +0 -113
  1024. package/src/_UnstyledTextInput.tsx +0 -19
  1025. package/src/__tests__/.eslintrc.json +0 -11
  1026. package/src/__tests__/ActionList.test.tsx +0 -53
  1027. package/src/__tests__/ActionList.types.test.tsx +0 -51
  1028. package/src/__tests__/ActionList2.test.tsx +0 -47
  1029. package/src/__tests__/ActionMenu.test.tsx +0 -136
  1030. package/src/__tests__/AnchoredOverlay.test.tsx +0 -150
  1031. package/src/__tests__/Autocomplete.test.tsx +0 -444
  1032. package/src/__tests__/Avatar.test.tsx +0 -44
  1033. package/src/__tests__/AvatarStack.test.tsx +0 -48
  1034. package/src/__tests__/BorderBox.test.tsx +0 -43
  1035. package/src/__tests__/Box.test.tsx +0 -42
  1036. package/src/__tests__/BranchName.test.tsx +0 -26
  1037. package/src/__tests__/Breadcrumbs.test.tsx +0 -27
  1038. package/src/__tests__/Breadcrumbs.types.test.tsx +0 -22
  1039. package/src/__tests__/BreadcrumbsItem.test.tsx +0 -31
  1040. package/src/__tests__/Button.test.tsx +0 -128
  1041. package/src/__tests__/Caret.test.tsx +0 -36
  1042. package/src/__tests__/CircleBadge.test.tsx +0 -66
  1043. package/src/__tests__/CircleBadge.types.test.tsx +0 -11
  1044. package/src/__tests__/CircleOcticon.test.tsx +0 -50
  1045. package/src/__tests__/ConfirmationDialog.test.tsx +0 -120
  1046. package/src/__tests__/CounterLabel.test.tsx +0 -50
  1047. package/src/__tests__/CounterLabel.types.test.tsx +0 -11
  1048. package/src/__tests__/Details.test.tsx +0 -115
  1049. package/src/__tests__/Dialog.test.tsx +0 -155
  1050. package/src/__tests__/Dialog.types.test.tsx +0 -11
  1051. package/src/__tests__/Dialog2.types.test.tsx +0 -11
  1052. package/src/__tests__/Dropdown.test.tsx +0 -53
  1053. package/src/__tests__/Dropdown.types.test.tsx +0 -21
  1054. package/src/__tests__/DropdownMenu.test.tsx +0 -136
  1055. package/src/__tests__/FilterList.test.tsx +0 -26
  1056. package/src/__tests__/FilterList.types.test.tsx +0 -17
  1057. package/src/__tests__/FilterListItem.test.tsx +0 -31
  1058. package/src/__tests__/FilteredSearch.test.tsx +0 -26
  1059. package/src/__tests__/FilteredSearch.types.test.tsx +0 -11
  1060. package/src/__tests__/Flash.test.tsx +0 -45
  1061. package/src/__tests__/Flash.types.test.tsx +0 -11
  1062. package/src/__tests__/Flex.test.tsx +0 -58
  1063. package/src/__tests__/FormGroup.test.tsx +0 -38
  1064. package/src/__tests__/FormGroup.types.test.tsx +0 -11
  1065. package/src/__tests__/Grid.test.tsx +0 -82
  1066. package/src/__tests__/Header.test.tsx +0 -49
  1067. package/src/__tests__/Header.types.test.tsx +0 -19
  1068. package/src/__tests__/Heading.test.tsx +0 -91
  1069. package/src/__tests__/KeyPaths.types.test.ts +0 -14
  1070. package/src/__tests__/Label.test.tsx +0 -34
  1071. package/src/__tests__/Label.types.test.tsx +0 -11
  1072. package/src/__tests__/LabelGroup.test.tsx +0 -30
  1073. package/src/__tests__/LabelGroup.types.test.tsx +0 -11
  1074. package/src/__tests__/Link.test.tsx +0 -47
  1075. package/src/__tests__/Link.types.test.tsx +0 -11
  1076. package/src/__tests__/Merge.types.test.ts +0 -39
  1077. package/src/__tests__/NewButton.test.tsx +0 -70
  1078. package/src/__tests__/Overlay.test.tsx +0 -103
  1079. package/src/__tests__/Overlay.types.test.tsx +0 -18
  1080. package/src/__tests__/Pagehead.test.tsx +0 -23
  1081. package/src/__tests__/Pagehead.types.test.tsx +0 -11
  1082. package/src/__tests__/Pagination/Pagination.test.tsx +0 -30
  1083. package/src/__tests__/Pagination/PaginationModel.test.tsx +0 -133
  1084. package/src/__tests__/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -184
  1085. package/src/__tests__/Pagination.types.test.tsx +0 -11
  1086. package/src/__tests__/PointerBox.test.tsx +0 -34
  1087. package/src/__tests__/Popover.test.tsx +0 -68
  1088. package/src/__tests__/Popover.types.test.tsx +0 -17
  1089. package/src/__tests__/Portal.test.tsx +0 -103
  1090. package/src/__tests__/Position.test.tsx +0 -117
  1091. package/src/__tests__/ProgressBar.test.tsx +0 -40
  1092. package/src/__tests__/SelectMenu.test.tsx +0 -142
  1093. package/src/__tests__/SelectMenu.types.test.tsx +0 -37
  1094. package/src/__tests__/SelectPanel.test.tsx +0 -63
  1095. package/src/__tests__/SideNav.test.tsx +0 -62
  1096. package/src/__tests__/SideNav.types.test.tsx +0 -11
  1097. package/src/__tests__/Spinner.test.tsx +0 -42
  1098. package/src/__tests__/StateLabel.test.tsx +0 -48
  1099. package/src/__tests__/StateLabel.types.test.tsx +0 -11
  1100. package/src/__tests__/StyledOcticon.test.tsx +0 -26
  1101. package/src/__tests__/StyledOcticon.types.test.tsx +0 -12
  1102. package/src/__tests__/SubNav.test.tsx +0 -50
  1103. package/src/__tests__/SubNav.types.test.tsx +0 -25
  1104. package/src/__tests__/SubNavLink.test.tsx +0 -31
  1105. package/src/__tests__/TabNav.test.tsx +0 -32
  1106. package/src/__tests__/TabNav.types.test.tsx +0 -22
  1107. package/src/__tests__/Text.test.tsx +0 -78
  1108. package/src/__tests__/TextInput.test.tsx +0 -49
  1109. package/src/__tests__/TextInputWithTokens.test.tsx +0 -422
  1110. package/src/__tests__/ThemeProvider.test.tsx +0 -441
  1111. package/src/__tests__/Timeline.test.tsx +0 -58
  1112. package/src/__tests__/Timeline.types.test.tsx +0 -31
  1113. package/src/__tests__/Token.test.tsx +0 -118
  1114. package/src/__tests__/Tooltip.test.tsx +0 -52
  1115. package/src/__tests__/Tooltip.types.test.tsx +0 -11
  1116. package/src/__tests__/Truncate.test.tsx +0 -43
  1117. package/src/__tests__/Truncate.types.test.tsx +0 -11
  1118. package/src/__tests__/UnderlineNav.test.tsx +0 -58
  1119. package/src/__tests__/UnderlineNav.types.test.tsx +0 -22
  1120. package/src/__tests__/UnderlineNavLink.test.tsx +0 -31
  1121. package/src/__tests__/__snapshots__/ActionList.test.tsx.snap +0 -223
  1122. package/src/__tests__/__snapshots__/ActionList2.test.tsx.snap +0 -14
  1123. package/src/__tests__/__snapshots__/ActionMenu.test.tsx.snap +0 -80
  1124. package/src/__tests__/__snapshots__/AnchoredOverlay.test.tsx.snap +0 -232
  1125. package/src/__tests__/__snapshots__/Autocomplete.test.tsx.snap +0 -3888
  1126. package/src/__tests__/__snapshots__/Avatar.test.tsx.snap +0 -19
  1127. package/src/__tests__/__snapshots__/AvatarStack.test.tsx.snap +0 -377
  1128. package/src/__tests__/__snapshots__/BorderBox.test.tsx.snap +0 -14
  1129. package/src/__tests__/__snapshots__/Box.test.tsx.snap +0 -201
  1130. package/src/__tests__/__snapshots__/BranchName.test.tsx.snap +0 -17
  1131. package/src/__tests__/__snapshots__/Breadcrumbs.test.tsx.snap +0 -29
  1132. package/src/__tests__/__snapshots__/BreadcrumbsItem.test.tsx.snap +0 -79
  1133. package/src/__tests__/__snapshots__/Button.test.tsx.snap +0 -840
  1134. package/src/__tests__/__snapshots__/Caret.test.tsx.snap +0 -373
  1135. package/src/__tests__/__snapshots__/CircleBadge.test.tsx.snap +0 -142
  1136. package/src/__tests__/__snapshots__/CircleOcticon.test.tsx.snap +0 -65
  1137. package/src/__tests__/__snapshots__/ConfirmationDialog.test.tsx.snap +0 -89
  1138. package/src/__tests__/__snapshots__/CounterLabel.test.tsx.snap +0 -22
  1139. package/src/__tests__/__snapshots__/Details.test.tsx.snap +0 -15
  1140. package/src/__tests__/__snapshots__/Dialog.test.tsx.snap +0 -201
  1141. package/src/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -249
  1142. package/src/__tests__/__snapshots__/DropdownMenu.test.tsx.snap +0 -107
  1143. package/src/__tests__/__snapshots__/FilterList.test.tsx.snap +0 -13
  1144. package/src/__tests__/__snapshots__/FilterListItem.test.tsx.snap +0 -80
  1145. package/src/__tests__/__snapshots__/FilteredSearch.test.tsx.snap +0 -32
  1146. package/src/__tests__/__snapshots__/Flash.test.tsx.snap +0 -32
  1147. package/src/__tests__/__snapshots__/Flex.test.tsx.snap +0 -130
  1148. package/src/__tests__/__snapshots__/FormGroup.test.tsx.snap +0 -25
  1149. package/src/__tests__/__snapshots__/Grid.test.tsx.snap +0 -178
  1150. package/src/__tests__/__snapshots__/Header.test.tsx.snap +0 -79
  1151. package/src/__tests__/__snapshots__/Heading.test.tsx.snap +0 -13
  1152. package/src/__tests__/__snapshots__/Label.test.tsx.snap +0 -73
  1153. package/src/__tests__/__snapshots__/LabelGroup.test.tsx.snap +0 -15
  1154. package/src/__tests__/__snapshots__/Link.test.tsx.snap +0 -212
  1155. package/src/__tests__/__snapshots__/NewButton.test.tsx.snap +0 -305
  1156. package/src/__tests__/__snapshots__/Pagehead.test.tsx.snap +0 -15
  1157. package/src/__tests__/__snapshots__/PointerBox.test.tsx.snap +0 -174
  1158. package/src/__tests__/__snapshots__/Popover.test.tsx.snap +0 -4687
  1159. package/src/__tests__/__snapshots__/Position.test.tsx.snap +0 -44
  1160. package/src/__tests__/__snapshots__/ProgressBar.test.tsx.snap +0 -53
  1161. package/src/__tests__/__snapshots__/SelectMenu.test.tsx.snap +0 -473
  1162. package/src/__tests__/__snapshots__/SelectPanel.test.tsx.snap +0 -124
  1163. package/src/__tests__/__snapshots__/SideNav.test.tsx.snap +0 -143
  1164. package/src/__tests__/__snapshots__/Spinner.test.tsx.snap +0 -33
  1165. package/src/__tests__/__snapshots__/StateLabel.test.tsx.snap +0 -395
  1166. package/src/__tests__/__snapshots__/StyledOcticon.test.tsx.snap +0 -26
  1167. package/src/__tests__/__snapshots__/SubNav.test.tsx.snap +0 -44
  1168. package/src/__tests__/__snapshots__/SubNavLink.test.tsx.snap +0 -199
  1169. package/src/__tests__/__snapshots__/TabNav.test.tsx.snap +0 -58
  1170. package/src/__tests__/__snapshots__/Text.test.tsx.snap +0 -7
  1171. package/src/__tests__/__snapshots__/TextInput.test.tsx.snap +0 -446
  1172. package/src/__tests__/__snapshots__/TextInputWithTokens.test.tsx.snap +0 -6045
  1173. package/src/__tests__/__snapshots__/ThemeProvider.test.tsx.snap +0 -15
  1174. package/src/__tests__/__snapshots__/Timeline.test.tsx.snap +0 -159
  1175. package/src/__tests__/__snapshots__/Token.test.tsx.snap +0 -3811
  1176. package/src/__tests__/__snapshots__/Tooltip.test.tsx.snap +0 -227
  1177. package/src/__tests__/__snapshots__/Truncate.test.tsx.snap +0 -17
  1178. package/src/__tests__/__snapshots__/UnderlineNav.test.tsx.snap +0 -59
  1179. package/src/__tests__/__snapshots__/UnderlineNavLink.test.tsx.snap +0 -130
  1180. package/src/__tests__/behaviors/anchoredPosition.test.ts +0 -295
  1181. package/src/__tests__/behaviors/focusTrap.test.tsx +0 -236
  1182. package/src/__tests__/behaviors/focusZone.test.tsx +0 -549
  1183. package/src/__tests__/behaviors/iterateFocusableElements.test.tsx +0 -61
  1184. package/src/__tests__/behaviors/scrollIntoViewingArea.test.ts +0 -195
  1185. package/src/__tests__/filterObject.test.ts +0 -54
  1186. package/src/__tests__/hooks/useAnchoredPosition.test.tsx +0 -31
  1187. package/src/__tests__/hooks/useOnEscapePress.test.tsx +0 -16
  1188. package/src/__tests__/hooks/useOnOutsideClick.test.tsx +0 -48
  1189. package/src/__tests__/hooks/useOpenAndCloseFocus.test.tsx +0 -48
  1190. package/src/__tests__/hooks/useProvidedStateOrCreate.test.tsx +0 -39
  1191. package/src/__tests__/theme.test.ts +0 -41
  1192. package/src/__tests__/themeGet.test.ts +0 -15
  1193. package/src/__tests__/useSafeTimeout.test.tsx +0 -36
  1194. package/src/__tests__/utils/__snapshots__/createSlots.test.tsx.snap +0 -55
  1195. package/src/__tests__/utils/createSlots.test.tsx +0 -74
  1196. package/src/behaviors/anchoredPosition.ts +0 -442
  1197. package/src/behaviors/focusTrap.ts +0 -184
  1198. package/src/behaviors/focusZone.ts +0 -713
  1199. package/src/behaviors/scrollIntoViewingArea.ts +0 -27
  1200. package/src/constants.ts +0 -62
  1201. package/src/drafts.ts +0 -10
  1202. package/src/hooks/index.ts +0 -11
  1203. package/src/hooks/useAnchoredPosition.ts +0 -54
  1204. package/src/hooks/useCombinedRefs.ts +0 -40
  1205. package/src/hooks/useDetails.tsx +0 -54
  1206. package/src/hooks/useDialog.ts +0 -121
  1207. package/src/hooks/useFocusTrap.ts +0 -80
  1208. package/src/hooks/useFocusZone.ts +0 -64
  1209. package/src/hooks/useOnEscapePress.ts +0 -63
  1210. package/src/hooks/useOnOutsideClick.tsx +0 -82
  1211. package/src/hooks/useOpenAndCloseFocus.ts +0 -32
  1212. package/src/hooks/useOverlay.tsx +0 -34
  1213. package/src/hooks/useProvidedRefOrCreate.ts +0 -14
  1214. package/src/hooks/useProvidedStateOrCreate.ts +0 -27
  1215. package/src/hooks/useRenderForcingRef.ts +0 -22
  1216. package/src/hooks/useResizeObserver.ts +0 -11
  1217. package/src/hooks/useSafeTimeout.ts +0 -38
  1218. package/src/hooks/useScrollFlash.ts +0 -21
  1219. package/src/index.ts +0 -172
  1220. package/src/polyfills/eventListenerSignal.ts +0 -66
  1221. package/src/stories/ActionList.stories.tsx +0 -436
  1222. package/src/stories/ActionList2.stories.tsx +0 -1291
  1223. package/src/stories/ActionMenu.stories.tsx +0 -331
  1224. package/src/stories/AnchoredOverlay.stories.tsx +0 -117
  1225. package/src/stories/Autocomplete.stories.tsx +0 -655
  1226. package/src/stories/AvatarStack.stories.tsx +0 -37
  1227. package/src/stories/Button.stories.tsx +0 -92
  1228. package/src/stories/ConfirmationDialog.stories.tsx +0 -105
  1229. package/src/stories/Dialog.stories.tsx +0 -240
  1230. package/src/stories/DropdownMenu.stories.tsx +0 -84
  1231. package/src/stories/IssueLabelToken.stories.tsx +0 -138
  1232. package/src/stories/NewButton.stories.tsx +0 -201
  1233. package/src/stories/Overlay.stories.tsx +0 -213
  1234. package/src/stories/Portal.stories.tsx +0 -109
  1235. package/src/stories/ProfileToken.stories.tsx +0 -129
  1236. package/src/stories/SelectPanel.stories.tsx +0 -353
  1237. package/src/stories/TextInput.stories.tsx +0 -113
  1238. package/src/stories/TextInputWithTokens.stories.tsx +0 -155
  1239. package/src/stories/ThemeProvider.stories.tsx +0 -104
  1240. package/src/stories/Token.stories.tsx +0 -137
  1241. package/src/stories/useAnchoredPosition.stories.tsx +0 -332
  1242. package/src/stories/useFocusTrap.stories.tsx +0 -400
  1243. package/src/stories/useFocusZone.stories.tsx +0 -663
  1244. package/src/sx.ts +0 -24
  1245. package/src/theme-preval.js +0 -80
  1246. package/src/theme.ts +0 -89
  1247. package/src/utils/create-slots.tsx +0 -96
  1248. package/src/utils/deprecate.tsx +0 -73
  1249. package/src/utils/isNumeric.tsx +0 -4
  1250. package/src/utils/iterateFocusableElements.ts +0 -121
  1251. package/src/utils/ssr.tsx +0 -1
  1252. package/src/utils/test-deprecations.tsx +0 -19
  1253. package/src/utils/test-helpers.tsx +0 -7
  1254. package/src/utils/test-matchers.tsx +0 -109
  1255. package/src/utils/testing.tsx +0 -242
  1256. package/src/utils/theme.js +0 -64
  1257. package/src/utils/types/AriaRole.ts +0 -71
  1258. package/src/utils/types/ComponentProps.ts +0 -13
  1259. package/src/utils/types/Flatten.ts +0 -4
  1260. package/src/utils/types/KeyPaths.ts +0 -10
  1261. package/src/utils/types/MandateProps.ts +0 -19
  1262. package/src/utils/types/Merge.ts +0 -20
  1263. package/src/utils/types/index.ts +0 -5
  1264. package/src/utils/uniqueId.ts +0 -6
  1265. package/src/utils/use-force-update.ts +0 -7
  1266. package/src/utils/useIsomorphicLayoutEffect.ts +0 -10
  1267. package/src/utils/userAgent.ts +0 -7
  1268. package/stats.html +0 -3279
  1269. package/tsconfig.base.json +0 -20
  1270. package/tsconfig.build.json +0 -7
  1271. package/tsconfig.json +0 -7
@@ -1,713 +0,0 @@
1
- import {iterateFocusableElements} from '../utils/iterateFocusableElements'
2
- import {polyfill as eventListenerSignalPolyfill} from '../polyfills/eventListenerSignal'
3
- import {isMacOS} from '../utils/userAgent'
4
- import {uniqueId} from '../utils/uniqueId'
5
-
6
- eventListenerSignalPolyfill()
7
-
8
- export type Direction = 'previous' | 'next' | 'start' | 'end'
9
-
10
- export type FocusMovementKeys =
11
- | 'ArrowLeft'
12
- | 'ArrowDown'
13
- | 'ArrowUp'
14
- | 'ArrowRight'
15
- | 'h'
16
- | 'j'
17
- | 'k'
18
- | 'l'
19
- | 'a'
20
- | 's'
21
- | 'w'
22
- | 'd'
23
- | 'Tab'
24
- | 'Home'
25
- | 'End'
26
- | 'PageUp'
27
- | 'PageDown'
28
-
29
- // eslint-disable-next-line no-shadow
30
- export enum FocusKeys {
31
- // Left and right arrow keys (previous and next, respectively)
32
- ArrowHorizontal = 0b000000001,
33
-
34
- // Up and down arrow keys (previous and next, respectively)
35
- ArrowVertical = 0b000000010,
36
-
37
- // The "J" and "K" keys (next and previous, respectively)
38
- JK = 0b000000100,
39
-
40
- // The "H" and "L" keys (previous and next, respectively)
41
- HL = 0b000001000,
42
-
43
- // The Home and End keys (previous and next, respectively, to end)
44
- HomeAndEnd = 0b000010000,
45
-
46
- // The PgUp and PgDn keys (previous and next, respectively, to end)
47
- PageUpDown = 0b100000000,
48
-
49
- // The "W" and "S" keys (previous and next, respectively)
50
- WS = 0b000100000,
51
-
52
- // The "A" and "D" keys (previous and next, respectively)
53
- AD = 0b001000000,
54
-
55
- // The Tab key (next)
56
- Tab = 0b010000000,
57
-
58
- ArrowAll = FocusKeys.ArrowHorizontal | FocusKeys.ArrowVertical,
59
- HJKL = FocusKeys.HL | FocusKeys.JK,
60
- WASD = FocusKeys.WS | FocusKeys.AD,
61
- All = FocusKeys.ArrowAll |
62
- FocusKeys.HJKL |
63
- FocusKeys.HomeAndEnd |
64
- FocusKeys.PageUpDown |
65
- FocusKeys.WASD |
66
- FocusKeys.Tab
67
- }
68
-
69
- const KEY_TO_BIT = {
70
- ArrowLeft: FocusKeys.ArrowHorizontal,
71
- ArrowDown: FocusKeys.ArrowVertical,
72
- ArrowUp: FocusKeys.ArrowVertical,
73
- ArrowRight: FocusKeys.ArrowHorizontal,
74
- h: FocusKeys.HL,
75
- j: FocusKeys.JK,
76
- k: FocusKeys.JK,
77
- l: FocusKeys.HL,
78
- a: FocusKeys.AD,
79
- s: FocusKeys.WS,
80
- w: FocusKeys.WS,
81
- d: FocusKeys.AD,
82
- Tab: FocusKeys.Tab,
83
- Home: FocusKeys.HomeAndEnd,
84
- End: FocusKeys.HomeAndEnd,
85
- PageUp: FocusKeys.PageUpDown,
86
- PageDown: FocusKeys.PageUpDown
87
- } as {[k in FocusMovementKeys]: FocusKeys}
88
-
89
- const KEY_TO_DIRECTION = {
90
- ArrowLeft: 'previous',
91
- ArrowDown: 'next',
92
- ArrowUp: 'previous',
93
- ArrowRight: 'next',
94
- h: 'previous',
95
- j: 'next',
96
- k: 'previous',
97
- l: 'next',
98
- a: 'previous',
99
- s: 'next',
100
- w: 'previous',
101
- d: 'next',
102
- Tab: 'next',
103
- Home: 'start',
104
- End: 'end',
105
- PageUp: 'start',
106
- PageDown: 'end'
107
- } as {[k in FocusMovementKeys]: Direction}
108
-
109
- /**
110
- * Options that control the behavior of the arrow focus behavior.
111
- */
112
- export interface FocusZoneSettings {
113
- /**
114
- * Choose the behavior applied in cases where focus is currently at either the first or
115
- * last element of the container.
116
- *
117
- * "stop" - do nothing and keep focus where it was
118
- * "wrap" - wrap focus around to the first element from the last, or the last element from the first
119
- *
120
- * Default: "stop"
121
- */
122
- focusOutBehavior?: 'stop' | 'wrap'
123
-
124
- /**
125
- * If set, this will be called to get the next focusable element. If this function
126
- * returns null, we will try to determine the next direction ourselves. Use the
127
- * `bindKeys` option to customize which keys are listened to.
128
- *
129
- * The function can accept a Direction, indicating the direction focus should move,
130
- * the HTMLElement that was previously focused, and lastly the `KeyboardEvent` object
131
- * created by the original `"keydown"` event.
132
- */
133
- getNextFocusable?: (direction: Direction, from: Element | undefined, event: KeyboardEvent) => HTMLElement | undefined
134
-
135
- /**
136
- * Called to decide if a focusable element is allowed to participate in the arrow
137
- * key focus behavior.
138
- *
139
- * By default, all focusable elements within the given container will participate
140
- * in the arrow key focus behavior. If you need to withhold some elements from
141
- * participation, implement this callback to return false for those elements.
142
- */
143
- focusableElementFilter?: (element: HTMLElement) => boolean
144
-
145
- /**
146
- * Bit flags that identify keys that will be bound to. Each available key either
147
- * moves focus to the "next" element or the "previous" element, so it is best
148
- * to only bind the keys that make sense to move focus in your UI. Use the `FocusKeys`
149
- * object to discover supported keys.
150
- *
151
- * Use the bitwise "OR" operator (`|`) to combine key types. For example,
152
- * `FocusKeys.WASD | FocusKeys.HJKL` represents all of W, A, S, D, H, J, K, and L.
153
- *
154
- * A note on FocusKeys.PageUpDown: This behavior does not support paging, so by default
155
- * using these keys will result in the same behavior as Home and End. To override this
156
- * behavior, implement `getNextFocusable`.
157
- *
158
- * The default for this setting is `FocusKeys.ArrowVertical | FocusKeys.HomeAndEnd`, unless
159
- * `getNextFocusable` is provided, in which case `FocusKeys.ArrowAll | FocusKeys.HomeAndEnd`
160
- * is used as the default.
161
- */
162
- bindKeys?: FocusKeys
163
-
164
- /**
165
- * If provided, this signal can be used to disable the behavior and remove any
166
- * event listeners.
167
- */
168
- abortSignal?: AbortSignal
169
-
170
- /**
171
- * If `activeDescendantControl` is supplied, do not move focus or alter `tabindex` on
172
- * any element. Instead, manage `aria-activedescendant` according to the ARIA best
173
- * practices guidelines.
174
- * @see https://www.w3.org/TR/wai-aria-practices-1.1/#kbd_focus_activedescendant
175
- *
176
- * The given `activeDescendantControl` will be given an `aria-controls` attribute that
177
- * references the ID of the `container`. Additionally, it will be given an
178
- * `aria-activedescendant` attribute that references the ID of the currently-active
179
- * descendant.
180
- *
181
- * This element will retain DOM focus as arrow keys are pressed.
182
- */
183
- activeDescendantControl?: HTMLElement
184
-
185
- /**
186
- * Called each time the active descendant changes. Note that either of the parameters
187
- * may be undefined, e.g. when an element in the container first becomes active, or
188
- * when the controlling element becomes unfocused.
189
- */
190
- onActiveDescendantChanged?: (
191
- newActiveDescendant: HTMLElement | undefined,
192
- previousActiveDescendant: HTMLElement | undefined,
193
- directlyActivated: boolean
194
- ) => void
195
-
196
- /**
197
- * This option allows customization of the behavior that determines which of the
198
- * focusable elements should be focused when focus enters the container via the Tab key.
199
- *
200
- * When set to "first", whenever focus enters the container via Tab, we will focus the
201
- * first focusable element. When set to "previous", the most recently focused element
202
- * will be focused (fallback to first if there was no previous).
203
- *
204
- * The "closest" strategy works like "first", except either the first or the last element
205
- * of the container will be focused, depending on the direction from which focus comes.
206
- *
207
- * If a function is provided, this function should return the HTMLElement intended
208
- * to receive focus. This is useful if you want to focus the currently "selected"
209
- * item or element.
210
- *
211
- * Default: "previous"
212
- *
213
- * For more information, @see https://www.w3.org/TR/wai-aria-practices-1.1/#kbd_general_within
214
- */
215
- focusInStrategy?: 'first' | 'closest' | 'previous' | ((previousFocusedElement: Element) => HTMLElement | undefined)
216
- }
217
-
218
- function getDirection(keyboardEvent: KeyboardEvent) {
219
- const direction = KEY_TO_DIRECTION[keyboardEvent.key as keyof typeof KEY_TO_DIRECTION]
220
- if (keyboardEvent.key === 'Tab' && keyboardEvent.shiftKey) {
221
- return 'previous'
222
- }
223
- const isMac = isMacOS()
224
- if ((isMac && keyboardEvent.metaKey) || (!isMac && keyboardEvent.ctrlKey)) {
225
- if (keyboardEvent.key === 'ArrowLeft' || keyboardEvent.key === 'ArrowUp') {
226
- return 'start'
227
- } else if (keyboardEvent.key === 'ArrowRight' || keyboardEvent.key === 'ArrowDown') {
228
- return 'end'
229
- }
230
- }
231
- return direction
232
- }
233
-
234
- /**
235
- * There are some situations where we do not want various keys to affect focus. This function
236
- * checks for those situations.
237
- * 1. Home and End should not move focus when a text input or textarea is active
238
- * 2. Keys that would normally type characters into an input or navigate a select element should be ignored
239
- * 3. The down arrow sometimes should not move focus when a select is active since that sometimes invokes the dropdown
240
- * 4. Page Up and Page Down within a textarea should not have any effect
241
- * 5. When in a text input or textarea, left should only move focus if the cursor is at the beginning of the input
242
- * 6. When in a text input or textarea, right should only move focus if the cursor is at the end of the input
243
- * 7. When in a textarea, up and down should only move focus if cursor is at the beginning or end, respectively.
244
- * @param keyboardEvent
245
- * @param activeElement
246
- */
247
- function shouldIgnoreFocusHandling(keyboardEvent: KeyboardEvent, activeElement: Element | null) {
248
- const key = keyboardEvent.key
249
-
250
- // Get the number of characters in `key`, accounting for double-wide UTF-16 chars. If keyLength
251
- // is 1, we can assume it's a "printable" character. Otherwise it's likely a control character.
252
- // One exception is the Tab key, which is technically printable, but browsers generally assign
253
- // its function to move focus rather than type a <TAB> character.
254
- const keyLength = [...key].length
255
-
256
- const isTextInput =
257
- (activeElement instanceof HTMLInputElement && activeElement.type === 'text') ||
258
- activeElement instanceof HTMLTextAreaElement
259
-
260
- // If we would normally type a character into an input, ignore
261
- // Also, Home and End keys should never affect focus when in a text input
262
- if (isTextInput && (keyLength === 1 || key === 'Home' || key === 'End')) {
263
- return true
264
- }
265
-
266
- // Some situations we want to ignore with <select> elements
267
- if (activeElement instanceof HTMLSelectElement) {
268
- // Regular typeable characters change the selection, so ignore those
269
- if (keyLength === 1) {
270
- return true
271
- }
272
- // On macOS, bare ArrowDown opens the select, so ignore that
273
- if (key === 'ArrowDown' && isMacOS() && !keyboardEvent.metaKey) {
274
- return true
275
- }
276
- // On other platforms, Alt+ArrowDown opens the select, so ignore that
277
- if (key === 'ArrowDown' && !isMacOS() && keyboardEvent.altKey) {
278
- return true
279
- }
280
- }
281
-
282
- // Ignore page up and page down for textareas
283
- if (activeElement instanceof HTMLTextAreaElement && (key === 'PageUp' || key === 'PageDown')) {
284
- return true
285
- }
286
-
287
- if (isTextInput) {
288
- const textInput = activeElement as HTMLInputElement | HTMLTextAreaElement
289
- const cursorAtStart = textInput.selectionStart === 0 && textInput.selectionEnd === 0
290
- const cursorAtEnd =
291
- textInput.selectionStart === textInput.value.length && textInput.selectionEnd === textInput.value.length
292
-
293
- // When in a text area or text input, only move focus left/right if at beginning/end of the field
294
- if (key === 'ArrowLeft' && !cursorAtStart) {
295
- return true
296
- }
297
- if (key === 'ArrowRight' && !cursorAtEnd) {
298
- return true
299
- }
300
-
301
- // When in a text area, only move focus up/down if at beginning/end of the field
302
- if (textInput instanceof HTMLTextAreaElement) {
303
- if (key === 'ArrowUp' && !cursorAtStart) {
304
- return true
305
- }
306
- if (key === 'ArrowDown' && !cursorAtEnd) {
307
- return true
308
- }
309
- }
310
- }
311
-
312
- return false
313
- }
314
-
315
- export const isActiveDescendantAttribute = 'data-is-active-descendant'
316
- /**
317
- * A value of activated-directly for data-is-active-descendant indicates the descendant was activated
318
- * by a manual user interaction with intent to move active descendant. This usually translates to the
319
- * user pressing one of the bound keys (up/down arrow, etc) to move through the focus zone. This is
320
- * intended to be roughly equivalent to the :focus-visible pseudo-class
321
- **/
322
- export const activeDescendantActivatedDirectly = 'activated-directly'
323
- /**
324
- * A value of activated-indirectly for data-is-active-descendant indicates the descendant was activated
325
- * implicitly, and not by a direct key press. This includes focus zone being created from scratch, focusable
326
- * elements being added/removed, and mouseover events. This is intended to be roughly equivalent
327
- * to :focus:not(:focus-visible)
328
- **/
329
- export const activeDescendantActivatedIndirectly = 'activated-indirectly'
330
- export const hasActiveDescendantAttribute = 'data-has-active-descendant'
331
-
332
- /**
333
- * Sets up the arrow key focus behavior for all focusable elements in the given `container`.
334
- * @param container
335
- * @param settings
336
- * @returns
337
- */
338
- export function focusZone(container: HTMLElement, settings?: FocusZoneSettings): AbortController {
339
- const focusableElements: HTMLElement[] = []
340
- const savedTabIndex = new WeakMap<HTMLElement, string | null>()
341
- const bindKeys =
342
- settings?.bindKeys ??
343
- (settings?.getNextFocusable ? FocusKeys.ArrowAll : FocusKeys.ArrowVertical) | FocusKeys.HomeAndEnd
344
- const focusOutBehavior = settings?.focusOutBehavior ?? 'stop'
345
- const focusInStrategy = settings?.focusInStrategy ?? 'previous'
346
- const activeDescendantControl = settings?.activeDescendantControl
347
- const activeDescendantCallback = settings?.onActiveDescendantChanged
348
- let currentFocusedElement: HTMLElement | undefined
349
-
350
- function getFirstFocusableElement() {
351
- return focusableElements[0] as HTMLElement | undefined
352
- }
353
-
354
- function isActiveDescendantInputFocused() {
355
- return document.activeElement === activeDescendantControl
356
- }
357
-
358
- function updateFocusedElement(to?: HTMLElement, directlyActivated = false) {
359
- const from = currentFocusedElement
360
- currentFocusedElement = to
361
-
362
- if (activeDescendantControl) {
363
- if (to && isActiveDescendantInputFocused()) {
364
- setActiveDescendant(from, to, directlyActivated)
365
- } else {
366
- clearActiveDescendant()
367
- }
368
-
369
- return
370
- }
371
-
372
- if (from && from !== to && savedTabIndex.has(from)) {
373
- from.setAttribute('tabindex', '-1')
374
- }
375
-
376
- to?.setAttribute('tabindex', '0')
377
- }
378
-
379
- function setActiveDescendant(from: HTMLElement | undefined, to: HTMLElement, directlyActivated = false) {
380
- if (!to.id) {
381
- to.setAttribute('id', uniqueId())
382
- }
383
-
384
- if (from && from !== to) {
385
- from.removeAttribute(isActiveDescendantAttribute)
386
- }
387
-
388
- if (
389
- !activeDescendantControl ||
390
- (!directlyActivated && activeDescendantControl.getAttribute('aria-activedescendant') === to.id)
391
- ) {
392
- // prevent active descendant callback from being called repeatedly if the same element is activated (e.g. via mousemove)
393
- return
394
- }
395
-
396
- activeDescendantControl.setAttribute('aria-activedescendant', to.id)
397
- container.setAttribute(hasActiveDescendantAttribute, to.id)
398
- to.setAttribute(
399
- isActiveDescendantAttribute,
400
- directlyActivated ? activeDescendantActivatedDirectly : activeDescendantActivatedIndirectly
401
- )
402
- activeDescendantCallback?.(to, from, directlyActivated)
403
- }
404
-
405
- function clearActiveDescendant(previouslyActiveElement = currentFocusedElement) {
406
- if (focusInStrategy === 'first') {
407
- currentFocusedElement = undefined
408
- }
409
-
410
- activeDescendantControl?.removeAttribute('aria-activedescendant')
411
- container.removeAttribute(hasActiveDescendantAttribute)
412
- previouslyActiveElement?.removeAttribute(isActiveDescendantAttribute)
413
- activeDescendantCallback?.(undefined, previouslyActiveElement, false)
414
- }
415
-
416
- function beginFocusManagement(...elements: HTMLElement[]) {
417
- const filteredElements = elements.filter(e => settings?.focusableElementFilter?.(e) ?? true)
418
- if (filteredElements.length === 0) {
419
- return
420
- }
421
- // Insert all elements atomically. Assume that all passed elements are well-ordered.
422
- const insertIndex = focusableElements.findIndex(
423
- e => (e.compareDocumentPosition(filteredElements[0]) & Node.DOCUMENT_POSITION_PRECEDING) > 0
424
- )
425
- focusableElements.splice(insertIndex === -1 ? focusableElements.length : insertIndex, 0, ...filteredElements)
426
- for (const element of filteredElements) {
427
- // Set tabindex="-1" on all tabbable elements, but save the original
428
- // value in case we need to disable the behavior
429
- if (!savedTabIndex.has(element)) {
430
- savedTabIndex.set(element, element.getAttribute('tabindex'))
431
- }
432
- element.setAttribute('tabindex', '-1')
433
- }
434
-
435
- if (!currentFocusedElement) {
436
- updateFocusedElement(getFirstFocusableElement())
437
- }
438
- }
439
-
440
- function endFocusManagement(...elements: HTMLElement[]) {
441
- for (const element of elements) {
442
- const focusableElementIndex = focusableElements.indexOf(element)
443
- if (focusableElementIndex >= 0) {
444
- focusableElements.splice(focusableElementIndex, 1)
445
- }
446
- const savedIndex = savedTabIndex.get(element)
447
- if (savedIndex !== undefined) {
448
- if (savedIndex === null) {
449
- element.removeAttribute('tabindex')
450
- } else {
451
- element.setAttribute('tabindex', savedIndex)
452
- }
453
- savedTabIndex.delete(element)
454
- }
455
-
456
- // If removing the last-focused element, move focus to the first element in the list.
457
- if (element === currentFocusedElement) {
458
- const nextElementToFocus = getFirstFocusableElement()
459
- updateFocusedElement(nextElementToFocus)
460
- }
461
- }
462
- }
463
-
464
- // Take all tabbable elements within container under management
465
- beginFocusManagement(...iterateFocusableElements(container))
466
-
467
- // Open the first tabbable element for tabbing
468
- updateFocusedElement(getFirstFocusableElement())
469
-
470
- // If the DOM structure of the container changes, make sure we keep our state up-to-date
471
- // with respect to the focusable elements cache and its order
472
- const observer = new MutationObserver(mutations => {
473
- // Perform all removals first, in case element order has simply changed
474
- for (const mutation of mutations) {
475
- for (const removedNode of mutation.removedNodes) {
476
- if (removedNode instanceof HTMLElement) {
477
- endFocusManagement(...iterateFocusableElements(removedNode))
478
- }
479
- }
480
- }
481
- for (const mutation of mutations) {
482
- for (const addedNode of mutation.addedNodes) {
483
- if (addedNode instanceof HTMLElement) {
484
- beginFocusManagement(...iterateFocusableElements(addedNode))
485
- }
486
- }
487
- }
488
- })
489
-
490
- observer.observe(container, {
491
- subtree: true,
492
- childList: true
493
- })
494
-
495
- const controller = new AbortController()
496
- const signal = settings?.abortSignal ?? controller.signal
497
-
498
- signal.addEventListener('abort', () => {
499
- // Clean up any modifications
500
- endFocusManagement(...focusableElements)
501
- })
502
-
503
- let elementIndexFocusedByClick: number | undefined = undefined
504
- container.addEventListener(
505
- 'mousedown',
506
- event => {
507
- // Since focusin is only called when focus changes, we need to make sure the clicked
508
- // element isn't already focused.
509
- if (event.target instanceof HTMLElement && event.target !== document.activeElement) {
510
- elementIndexFocusedByClick = focusableElements.indexOf(event.target)
511
- }
512
- },
513
- {signal}
514
- )
515
-
516
- if (activeDescendantControl) {
517
- container.addEventListener('focusin', event => {
518
- if (event.target instanceof HTMLElement && focusableElements.includes(event.target)) {
519
- // Move focus to the activeDescendantControl if one of the descendants is focused
520
- activeDescendantControl.focus()
521
- updateFocusedElement(event.target)
522
- }
523
- })
524
- container.addEventListener(
525
- 'mousemove',
526
- ({target}) => {
527
- if (!(target instanceof Node)) {
528
- return
529
- }
530
-
531
- const focusableElement = focusableElements.find(element => element.contains(target))
532
-
533
- if (focusableElement) {
534
- updateFocusedElement(focusableElement)
535
- }
536
- },
537
- {signal, capture: true}
538
- )
539
-
540
- // Listeners specifically on the controlling element
541
- activeDescendantControl.addEventListener('focusin', () => {
542
- // Focus moved into the active descendant input. Activate current or first descendant.
543
- if (!currentFocusedElement) {
544
- updateFocusedElement(getFirstFocusableElement())
545
- } else {
546
- setActiveDescendant(undefined, currentFocusedElement)
547
- }
548
- })
549
- activeDescendantControl.addEventListener('focusout', () => {
550
- clearActiveDescendant()
551
- })
552
- } else {
553
- // This is called whenever focus enters an element in the container
554
- container.addEventListener(
555
- 'focusin',
556
- event => {
557
- if (event.target instanceof HTMLElement) {
558
- // If a click initiated the focus movement, we always want to set our internal state
559
- // to reflect the clicked element as the currently focused one.
560
- if (elementIndexFocusedByClick !== undefined) {
561
- if (elementIndexFocusedByClick >= 0) {
562
- if (focusableElements[elementIndexFocusedByClick] !== currentFocusedElement) {
563
- updateFocusedElement(focusableElements[elementIndexFocusedByClick])
564
- }
565
- }
566
- elementIndexFocusedByClick = undefined
567
- } else {
568
- // Set tab indexes and internal state based on the focus handling strategy
569
- if (focusInStrategy === 'previous') {
570
- updateFocusedElement(event.target)
571
- } else if (focusInStrategy === 'closest' || focusInStrategy === 'first') {
572
- if (event.relatedTarget instanceof Element && !container.contains(event.relatedTarget)) {
573
- // Regardless of the previously focused element, if we're coming from outside the
574
- // container, put focus onto the first encountered element (from above, it's The
575
- // first element of the container; from below, it's the last). If the
576
- // focusInStrategy is set to "first", lastKeyboardFocusDirection will always
577
- // be undefined.
578
- const targetElementIndex = lastKeyboardFocusDirection === 'previous' ? focusableElements.length - 1 : 0
579
- const targetElement = focusableElements[targetElementIndex] as HTMLElement | undefined
580
- targetElement?.focus()
581
- return
582
- } else {
583
- updateFocusedElement(event.target)
584
- }
585
- } else if (typeof focusInStrategy === 'function') {
586
- if (event.relatedTarget instanceof Element && !container.contains(event.relatedTarget)) {
587
- const elementToFocus = focusInStrategy(event.relatedTarget)
588
- const requestedFocusElementIndex = elementToFocus ? focusableElements.indexOf(elementToFocus) : -1
589
- if (requestedFocusElementIndex >= 0 && elementToFocus instanceof HTMLElement) {
590
- // Since we are calling focus() this handler will run again synchronously. Therefore,
591
- // we don't want to let this invocation finish since it will clobber the value of
592
- // currentFocusedElement.
593
- elementToFocus.focus()
594
- return
595
- } else {
596
- // eslint-disable-next-line no-console
597
- console.warn('Element requested is not a known focusable element.')
598
- }
599
- } else {
600
- updateFocusedElement(event.target)
601
- }
602
- }
603
- }
604
- }
605
- lastKeyboardFocusDirection = undefined
606
- },
607
- {signal}
608
- )
609
- }
610
-
611
- const keyboardEventRecipient = activeDescendantControl ?? container
612
-
613
- // If the strategy is "closest", we need to capture the direction that the user
614
- // is trying to move focus before our focusin handler is executed.
615
- let lastKeyboardFocusDirection: Direction | undefined = undefined
616
- if (focusInStrategy === 'closest') {
617
- document.addEventListener(
618
- 'keydown',
619
- event => {
620
- if (event.key === 'Tab') {
621
- lastKeyboardFocusDirection = getDirection(event)
622
- }
623
- },
624
- {signal, capture: true}
625
- )
626
- }
627
-
628
- function getCurrentFocusedIndex() {
629
- if (!currentFocusedElement) {
630
- return 0
631
- }
632
-
633
- const focusedIndex = focusableElements.indexOf(currentFocusedElement)
634
- const fallbackIndex = currentFocusedElement === container ? -1 : 0
635
-
636
- return focusedIndex !== -1 ? focusedIndex : fallbackIndex
637
- }
638
-
639
- // "keydown" is the event that triggers DOM focus change, so that is what we use here
640
- keyboardEventRecipient.addEventListener(
641
- 'keydown',
642
- event => {
643
- if (event.key in KEY_TO_DIRECTION) {
644
- const keyBit = KEY_TO_BIT[event.key as keyof typeof KEY_TO_BIT]
645
- // Check if the pressed key (keyBit) is one that is being used for focus (bindKeys)
646
- if (
647
- !event.defaultPrevented &&
648
- (keyBit & bindKeys) > 0 &&
649
- !shouldIgnoreFocusHandling(event, document.activeElement)
650
- ) {
651
- // Moving forward or backward?
652
- const direction = getDirection(event)
653
-
654
- let nextElementToFocus: HTMLElement | undefined = undefined
655
-
656
- // If there is a custom function that retrieves the next focusable element, try calling that first.
657
- if (settings?.getNextFocusable) {
658
- nextElementToFocus = settings.getNextFocusable(direction, document.activeElement ?? undefined, event)
659
- }
660
- if (!nextElementToFocus) {
661
- const lastFocusedIndex = getCurrentFocusedIndex()
662
- let nextFocusedIndex = lastFocusedIndex
663
- if (direction === 'previous') {
664
- nextFocusedIndex -= 1
665
- } else if (direction === 'start') {
666
- nextFocusedIndex = 0
667
- } else if (direction === 'next') {
668
- nextFocusedIndex += 1
669
- } else {
670
- // end
671
- nextFocusedIndex = focusableElements.length - 1
672
- }
673
-
674
- if (nextFocusedIndex < 0) {
675
- // Tab should never cause focus to wrap. Use focusTrap for that behavior.
676
- if (focusOutBehavior === 'wrap' && event.key !== 'Tab') {
677
- nextFocusedIndex = focusableElements.length - 1
678
- } else {
679
- nextFocusedIndex = 0
680
- }
681
- }
682
- if (nextFocusedIndex >= focusableElements.length) {
683
- if (focusOutBehavior === 'wrap' && event.key !== 'Tab') {
684
- nextFocusedIndex = 0
685
- } else {
686
- nextFocusedIndex = focusableElements.length - 1
687
- }
688
- }
689
- if (lastFocusedIndex !== nextFocusedIndex) {
690
- nextElementToFocus = focusableElements[nextFocusedIndex]
691
- }
692
- }
693
-
694
- if (activeDescendantControl) {
695
- updateFocusedElement(nextElementToFocus || currentFocusedElement, true)
696
- } else if (nextElementToFocus) {
697
- lastKeyboardFocusDirection = direction
698
-
699
- // updateFocusedElement will be called implicitly when focus moves, as long as the event isn't prevented somehow
700
- nextElementToFocus.focus()
701
- }
702
- // Tab should always allow escaping from this container, so only
703
- // preventDefault if tab key press already resulted in a focus movement
704
- if (event.key !== 'Tab' || nextElementToFocus) {
705
- event.preventDefault()
706
- }
707
- }
708
- }
709
- },
710
- {signal}
711
- )
712
- return controller
713
- }