@primer/components 32.0.1-rc.c4c2c50a → 32.1.0

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