@primer/components 31.2.0-rc.c53cfd9e → 31.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1085) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/browser.esm.js +209 -209
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +195 -195
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/ActionList/Divider.jsx +29 -0
  7. package/lib/ActionList/Group.jsx +23 -0
  8. package/lib/ActionList/Header.jsx +66 -0
  9. package/lib/ActionList/Item.jsx +301 -0
  10. package/lib/ActionList/List.jsx +138 -0
  11. package/lib/ActionList/index.js +12 -23
  12. package/lib/ActionList2/Description.jsx +30 -0
  13. package/lib/ActionList2/Divider.jsx +22 -0
  14. package/lib/ActionList2/Group.jsx +25 -0
  15. package/lib/ActionList2/Header.jsx +36 -0
  16. package/lib/ActionList2/Item.js +27 -17
  17. package/lib/ActionList2/Item.jsx +174 -0
  18. package/lib/ActionList2/LinkItem.jsx +28 -0
  19. package/lib/ActionList2/List.jsx +41 -0
  20. package/lib/ActionList2/Selection.jsx +36 -0
  21. package/lib/ActionList2/Visuals.jsx +48 -0
  22. package/lib/ActionList2/index.js +23 -41
  23. package/lib/ActionMenu.jsx +73 -0
  24. package/lib/AnchoredOverlay/AnchoredOverlay.jsx +100 -0
  25. package/lib/AnchoredOverlay/index.js +4 -12
  26. package/lib/Autocomplete/Autocomplete.d.ts +28 -28
  27. package/lib/Autocomplete/Autocomplete.jsx +100 -0
  28. package/lib/Autocomplete/AutocompleteContext.jsx +5 -0
  29. package/lib/Autocomplete/AutocompleteInput.d.ts +28 -28
  30. package/lib/Autocomplete/AutocompleteInput.jsx +113 -0
  31. package/lib/Autocomplete/AutocompleteMenu.jsx +190 -0
  32. package/lib/Autocomplete/AutocompleteOverlay.jsx +55 -0
  33. package/lib/Autocomplete/index.js +7 -14
  34. package/lib/Avatar.jsx +34 -0
  35. package/lib/AvatarPair.jsx +29 -0
  36. package/{src/AvatarStack.tsx → lib/AvatarStack.jsx} +41 -49
  37. package/lib/BaseStyles.jsx +65 -0
  38. package/lib/BorderBox.jsx +18 -0
  39. package/lib/Box.jsx +10 -0
  40. package/lib/BranchName.jsx +20 -0
  41. package/lib/Breadcrumbs.jsx +74 -0
  42. package/lib/Button/Button.d.ts +25 -25
  43. package/lib/Button/Button.jsx +60 -0
  44. package/lib/Button/ButtonBase.jsx +36 -0
  45. package/lib/Button/ButtonClose.d.ts +45 -45
  46. package/lib/Button/ButtonClose.jsx +55 -0
  47. package/lib/Button/ButtonDanger.d.ts +25 -25
  48. package/lib/Button/ButtonDanger.jsx +63 -0
  49. package/lib/Button/ButtonGroup.jsx +55 -0
  50. package/lib/Button/ButtonInvisible.d.ts +25 -25
  51. package/lib/Button/ButtonInvisible.jsx +52 -0
  52. package/lib/Button/ButtonOutline.d.ts +25 -25
  53. package/lib/Button/ButtonOutline.jsx +63 -0
  54. package/lib/Button/ButtonPrimary.d.ts +25 -25
  55. package/lib/Button/ButtonPrimary.jsx +62 -0
  56. package/{src/Button/ButtonStyles.tsx → lib/Button/ButtonStyles.jsx} +8 -7
  57. package/lib/Button/ButtonTableList.jsx +49 -0
  58. package/lib/Button/index.js +21 -70
  59. package/lib/Caret.jsx +93 -0
  60. package/lib/CircleBadge.jsx +43 -0
  61. package/lib/CircleOcticon.d.ts +42 -42
  62. package/lib/CircleOcticon.jsx +21 -0
  63. package/lib/CounterLabel.jsx +44 -0
  64. package/lib/Details.jsx +21 -0
  65. package/lib/Dialog/ConfirmationDialog.jsx +146 -0
  66. package/lib/Dialog/Dialog.js +1 -0
  67. package/lib/Dialog/Dialog.jsx +273 -0
  68. package/lib/Dialog.d.ts +45 -45
  69. package/lib/Dialog.jsx +131 -0
  70. package/lib/Dropdown.d.ts +176 -176
  71. package/lib/Dropdown.jsx +134 -0
  72. package/lib/DropdownMenu/DropdownButton.d.ts +46 -46
  73. package/lib/DropdownMenu/DropdownButton.jsx +14 -0
  74. package/lib/DropdownMenu/DropdownMenu.jsx +70 -0
  75. package/lib/DropdownMenu/index.js +6 -20
  76. package/lib/DropdownStyles.js +18 -26
  77. package/lib/FilterList.d.ts +42 -42
  78. package/lib/FilterList.jsx +63 -0
  79. package/lib/FilteredActionList/FilteredActionList.jsx +100 -0
  80. package/lib/FilteredActionList/index.js +4 -12
  81. package/lib/FilteredSearch.jsx +29 -0
  82. package/lib/Flash.jsx +70 -0
  83. package/lib/Flex.jsx +15 -0
  84. package/lib/FormGroup.jsx +25 -0
  85. package/lib/Grid.jsx +15 -0
  86. package/lib/Header.jsx +90 -0
  87. package/lib/Heading.jsx +21 -0
  88. package/lib/Label.jsx +84 -0
  89. package/lib/LabelGroup.jsx +19 -0
  90. package/lib/Link.jsx +38 -0
  91. package/lib/NewButton/button-counter.d.ts +6 -0
  92. package/lib/NewButton/button-counter.js +31 -0
  93. package/lib/NewButton/button-counter.jsx +14 -0
  94. package/lib/NewButton/button.d.ts +13 -0
  95. package/lib/NewButton/button.js +316 -0
  96. package/lib/NewButton/button.jsx +278 -0
  97. package/lib/NewButton/index.d.ts +14 -0
  98. package/lib/NewButton/index.js +8 -0
  99. package/lib/NewButton/types.d.ts +32 -0
  100. package/lib/NewButton/types.js +2 -0
  101. package/lib/Overlay.jsx +156 -0
  102. package/lib/Pagehead.jsx +18 -0
  103. package/lib/Pagination/Pagination.jsx +163 -0
  104. package/lib/Pagination/index.js +6 -12
  105. package/lib/Pagination/model.jsx +174 -0
  106. package/lib/PointerBox.jsx +25 -0
  107. package/{src/Popover.tsx → lib/Popover.jsx} +54 -80
  108. package/lib/Portal/Portal.jsx +79 -0
  109. package/lib/Portal/index.js +5 -16
  110. package/lib/Position.d.ts +4 -4
  111. package/lib/Position.jsx +46 -0
  112. package/lib/ProgressBar.jsx +39 -0
  113. package/lib/SelectMenu/SelectMenu.d.ts +246 -246
  114. package/lib/SelectMenu/SelectMenu.jsx +114 -0
  115. package/lib/SelectMenu/SelectMenuContext.jsx +5 -0
  116. package/lib/SelectMenu/SelectMenuDivider.jsx +43 -0
  117. package/lib/SelectMenu/SelectMenuFilter.jsx +59 -0
  118. package/lib/SelectMenu/SelectMenuFooter.jsx +46 -0
  119. package/lib/SelectMenu/SelectMenuHeader.jsx +44 -0
  120. package/lib/SelectMenu/SelectMenuItem.d.ts +1 -1
  121. package/lib/SelectMenu/SelectMenuItem.jsx +143 -0
  122. package/lib/SelectMenu/SelectMenuList.jsx +60 -0
  123. package/lib/SelectMenu/SelectMenuLoadingAnimation.jsx +21 -0
  124. package/lib/SelectMenu/SelectMenuModal.d.ts +1 -1
  125. package/lib/SelectMenu/SelectMenuModal.jsx +119 -0
  126. package/lib/SelectMenu/SelectMenuTab.jsx +93 -0
  127. package/lib/SelectMenu/SelectMenuTabPanel.jsx +43 -0
  128. package/lib/SelectMenu/SelectMenuTabs.jsx +58 -0
  129. package/lib/SelectMenu/hooks/useKeyboardNav.js +80 -96
  130. package/lib/SelectMenu/index.js +7 -14
  131. package/lib/SelectPanel/SelectPanel.jsx +105 -0
  132. package/lib/SelectPanel/index.js +4 -12
  133. package/lib/SideNav.jsx +177 -0
  134. package/lib/Spinner.jsx +35 -0
  135. package/lib/StateLabel.d.ts +1 -1
  136. package/lib/StateLabel.js +6 -1
  137. package/lib/StateLabel.jsx +94 -0
  138. package/lib/StyledOcticon.jsx +20 -0
  139. package/lib/SubNav.jsx +104 -0
  140. package/lib/TabNav.jsx +60 -0
  141. package/lib/Text.jsx +14 -0
  142. package/lib/TextInput.jsx +23 -0
  143. package/lib/TextInputWithTokens.d.ts +28 -28
  144. package/lib/TextInputWithTokens.jsx +218 -0
  145. package/lib/ThemeProvider.jsx +130 -0
  146. package/lib/Timeline.d.ts +43 -43
  147. package/lib/Timeline.jsx +124 -0
  148. package/lib/Token/AvatarToken.d.ts +1 -1
  149. package/lib/Token/AvatarToken.jsx +54 -0
  150. package/lib/Token/IssueLabelToken.d.ts +1 -1
  151. package/lib/Token/IssueLabelToken.jsx +125 -0
  152. package/lib/Token/Token.d.ts +1 -1
  153. package/lib/Token/Token.jsx +103 -0
  154. package/lib/Token/TokenBase.jsx +88 -0
  155. package/lib/Token/_RemoveTokenButton.jsx +108 -0
  156. package/{src/Token/_TokenTextContainer.tsx → lib/Token/_TokenTextContainer.jsx} +9 -7
  157. package/lib/Token/index.js +11 -30
  158. package/{src/Tooltip.tsx → lib/Tooltip.jsx} +34 -51
  159. package/lib/Truncate.jsx +27 -0
  160. package/lib/UnderlineNav.jsx +90 -0
  161. package/lib/_TextInputWrapper.jsx +120 -0
  162. package/lib/_UnstyledTextInput.jsx +22 -0
  163. package/lib/behaviors/anchoredPosition.js +205 -234
  164. package/lib/behaviors/focusTrap.js +121 -157
  165. package/lib/behaviors/focusZone.js +434 -509
  166. package/lib/behaviors/scrollIntoViewingArea.js +18 -35
  167. package/lib/constants.js +39 -43
  168. package/lib/{unreleased.d.ts → drafts.d.ts} +2 -1
  169. package/lib/drafts.js +21 -0
  170. package/lib/hooks/index.js +16 -60
  171. package/lib/hooks/useAnchoredPosition.js +32 -40
  172. package/lib/hooks/useCombinedRefs.js +32 -36
  173. package/lib/hooks/useDetails.jsx +39 -0
  174. package/lib/hooks/useDialog.js +72 -96
  175. package/lib/hooks/useFocusTrap.js +43 -60
  176. package/lib/hooks/useFocusZone.js +54 -50
  177. package/lib/hooks/useOnEscapePress.js +25 -36
  178. package/lib/hooks/useOnOutsideClick.jsx +61 -0
  179. package/lib/hooks/useOpenAndCloseFocus.js +22 -34
  180. package/lib/hooks/useOverlay.jsx +15 -0
  181. package/lib/hooks/useProvidedRefOrCreate.js +10 -14
  182. package/lib/hooks/useProvidedStateOrCreate.js +13 -16
  183. package/lib/hooks/useRenderForcingRef.js +13 -17
  184. package/lib/hooks/useResizeObserver.js +15 -18
  185. package/lib/hooks/useSafeTimeout.js +22 -30
  186. package/lib/hooks/useScrollFlash.js +16 -23
  187. package/lib/index.d.ts +2 -0
  188. package/lib/index.js +163 -636
  189. package/lib/polyfills/eventListenerSignal.js +37 -45
  190. package/lib/sx.js +10 -22
  191. package/lib/theme-preval.js +64 -3023
  192. package/lib/theme.js +3 -12
  193. package/lib/utils/create-slots.jsx +65 -0
  194. package/lib/utils/deprecate.jsx +59 -0
  195. package/lib/utils/isNumeric.jsx +7 -0
  196. package/lib/utils/iterateFocusableElements.js +63 -85
  197. package/lib/utils/ssr.jsx +6 -0
  198. package/lib/utils/test-deprecations.jsx +20 -0
  199. package/{src/utils/test-helpers.tsx → lib/utils/test-helpers.jsx} +6 -5
  200. package/lib/utils/test-matchers.jsx +100 -0
  201. package/lib/utils/testing.jsx +206 -0
  202. package/lib/utils/theme.js +33 -47
  203. package/lib/utils/types/AriaRole.js +2 -1
  204. package/lib/utils/types/ComponentProps.js +2 -1
  205. package/lib/utils/types/Flatten.js +2 -1
  206. package/lib/utils/types/KeyPaths.js +2 -1
  207. package/lib/utils/types/MandateProps.js +16 -1
  208. package/lib/utils/types/Merge.js +2 -1
  209. package/lib/utils/types/index.js +16 -69
  210. package/lib/utils/uniqueId.js +5 -8
  211. package/lib/utils/use-force-update.js +8 -14
  212. package/lib/utils/useIsomorphicLayoutEffect.js +8 -11
  213. package/lib/utils/userAgent.js +8 -12
  214. package/lib-esm/ActionList2/Item.js +26 -17
  215. package/lib-esm/Autocomplete/Autocomplete.d.ts +28 -28
  216. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +28 -28
  217. package/lib-esm/Button/Button.d.ts +25 -25
  218. package/lib-esm/Button/ButtonClose.d.ts +45 -45
  219. package/lib-esm/Button/ButtonDanger.d.ts +25 -25
  220. package/lib-esm/Button/ButtonInvisible.d.ts +25 -25
  221. package/lib-esm/Button/ButtonOutline.d.ts +25 -25
  222. package/lib-esm/Button/ButtonPrimary.d.ts +25 -25
  223. package/lib-esm/CircleOcticon.d.ts +42 -42
  224. package/lib-esm/Dialog/Dialog.js +1 -0
  225. package/lib-esm/Dialog.d.ts +45 -45
  226. package/lib-esm/Dropdown.d.ts +176 -176
  227. package/lib-esm/DropdownMenu/DropdownButton.d.ts +46 -46
  228. package/lib-esm/FilterList.d.ts +42 -42
  229. package/lib-esm/NewButton/button-counter.d.ts +6 -0
  230. package/lib-esm/NewButton/button-counter.js +18 -0
  231. package/lib-esm/NewButton/button.d.ts +13 -0
  232. package/lib-esm/NewButton/button.js +298 -0
  233. package/lib-esm/NewButton/index.d.ts +14 -0
  234. package/lib-esm/NewButton/index.js +5 -0
  235. package/lib-esm/NewButton/types.d.ts +32 -0
  236. package/lib-esm/NewButton/types.js +1 -0
  237. package/lib-esm/Position.d.ts +4 -4
  238. package/lib-esm/SelectMenu/SelectMenu.d.ts +246 -246
  239. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +1 -1
  240. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +1 -1
  241. package/lib-esm/StateLabel.d.ts +1 -1
  242. package/lib-esm/StateLabel.js +7 -2
  243. package/lib-esm/TextInputWithTokens.d.ts +28 -28
  244. package/lib-esm/Timeline.d.ts +43 -43
  245. package/lib-esm/Token/AvatarToken.d.ts +1 -1
  246. package/lib-esm/Token/IssueLabelToken.d.ts +1 -1
  247. package/lib-esm/Token/Token.d.ts +1 -1
  248. package/lib-esm/{unreleased.d.ts → drafts.d.ts} +2 -1
  249. package/{src/unreleased.ts → lib-esm/drafts.js} +3 -3
  250. package/lib-esm/index.d.ts +2 -0
  251. package/lib-esm/index.js +1 -0
  252. package/package.json +4 -3
  253. package/.changeset/README.md +0 -8
  254. package/.changeset/config.json +0 -10
  255. package/.devcontainer/devcontainer.json +0 -8
  256. package/.eslintrc.json +0 -137
  257. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  258. package/.github/ISSUE_TEMPLATE/new_component_proposal_template.md +0 -41
  259. package/.github/dependabot.yml +0 -18
  260. package/.github/pull_request_template.md +0 -18
  261. package/.github/workflows/check_for_changeset.yml +0 -25
  262. package/.github/workflows/ci.yml +0 -31
  263. package/.github/workflows/deploy_preview.yml +0 -47
  264. package/.github/workflows/deploy_production.yml +0 -70
  265. package/.github/workflows/release.yml +0 -35
  266. package/.github/workflows/release_canary.yml +0 -70
  267. package/.github/workflows/release_candidate.yml +0 -60
  268. package/.github/workflows/size.yml +0 -13
  269. package/.github/workflows/stale.yml +0 -26
  270. package/.gitignore +0 -10
  271. package/.npmrc +0 -4
  272. package/.nvmrc +0 -1
  273. package/.storybook/main.js +0 -9
  274. package/.storybook/preview.js +0 -117
  275. package/.vscode/launch.json +0 -21
  276. package/.vscode/settings.json +0 -13
  277. package/@types/@styled-system/index.d.ts +0 -0
  278. package/@types/@styled-system/prop-types/index.d.ts +0 -1
  279. package/@types/@styled-system/props/index.d.ts +0 -1
  280. package/@types/jest-styled-components/index.d.ts +0 -1
  281. package/CODEOWNERS +0 -2
  282. package/babel-defines.js +0 -13
  283. package/babel.config.js +0 -39
  284. package/contributor-docs/CODE_OF_CONDUCT.md +0 -76
  285. package/contributor-docs/CONTRIBUTING.md +0 -274
  286. package/contributor-docs/adrs/adr-001-typescript.md +0 -23
  287. package/contributor-docs/adrs/adr-002-behavior-isolation.md +0 -108
  288. package/contributor-docs/adrs/adr-003-prop-norms.md +0 -72
  289. package/contributor-docs/behaviors.md +0 -132
  290. package/contributor-docs/component-contents-api-patterns.md +0 -316
  291. package/contributor-docs/principles.md +0 -39
  292. package/docs/.eslintrc +0 -0
  293. package/docs/.gitignore +0 -91
  294. package/docs/components/PropsList.js +0 -5
  295. package/docs/components/State.js +0 -9
  296. package/docs/components/constants.js +0 -34
  297. package/docs/components/index.js +0 -2
  298. package/docs/content/ActionList.mdx +0 -99
  299. package/docs/content/ActionList2.mdx +0 -354
  300. package/docs/content/ActionMenu.mdx +0 -80
  301. package/docs/content/AnchoredOverlay.mdx +0 -37
  302. package/docs/content/Autocomplete.mdx +0 -657
  303. package/docs/content/Avatar.mdx +0 -33
  304. package/docs/content/AvatarStack.mdx +0 -37
  305. package/docs/content/BorderBox.md +0 -46
  306. package/docs/content/Box.md +0 -74
  307. package/docs/content/BranchName.md +0 -18
  308. package/docs/content/Breadcrumbs.md +0 -52
  309. package/docs/content/Buttons.md +0 -56
  310. package/docs/content/CircleBadge.md +0 -45
  311. package/docs/content/CircleOcticon.md +0 -18
  312. package/docs/content/CounterLabel.md +0 -32
  313. package/docs/content/Details.md +0 -105
  314. package/docs/content/Dialog.md +0 -108
  315. package/docs/content/Dialog2.mdx +0 -179
  316. package/docs/content/Dropdown.md +0 -72
  317. package/docs/content/DropdownMenu.mdx +0 -49
  318. package/docs/content/FilterList.md +0 -44
  319. package/docs/content/FilteredSearch.md +0 -39
  320. package/docs/content/Flash.md +0 -44
  321. package/docs/content/Flex.md +0 -58
  322. package/docs/content/FormGroup.md +0 -46
  323. package/docs/content/Grid.md +0 -59
  324. package/docs/content/Header.md +0 -79
  325. package/docs/content/Heading.md +0 -22
  326. package/docs/content/Label.md +0 -42
  327. package/docs/content/LabelGroup.md +0 -31
  328. package/docs/content/Link.md +0 -37
  329. package/docs/content/Overlay.mdx +0 -94
  330. package/docs/content/Pagehead.md +0 -27
  331. package/docs/content/Pagination.md +0 -187
  332. package/docs/content/PointerBox.md +0 -81
  333. package/docs/content/Popover.md +0 -137
  334. package/docs/content/Portal.mdx +0 -78
  335. package/docs/content/Position.md +0 -100
  336. package/docs/content/ProgressBar.mdx +0 -29
  337. package/docs/content/SelectMenu.md +0 -435
  338. package/docs/content/SelectPanel.mdx +0 -67
  339. package/docs/content/SideNav.md +0 -179
  340. package/docs/content/Spinner.mdx +0 -32
  341. package/docs/content/StateLabel.md +0 -35
  342. package/docs/content/StyledOcticon.md +0 -36
  343. package/docs/content/SubNav.md +0 -102
  344. package/docs/content/TabNav.md +0 -50
  345. package/docs/content/Text.md +0 -31
  346. package/docs/content/TextInput.md +0 -34
  347. package/docs/content/TextInputTokens.mdx +0 -89
  348. package/docs/content/TextInputWithTokens.mdx +0 -211
  349. package/docs/content/Timeline.md +0 -138
  350. package/docs/content/Token.mdx +0 -381
  351. package/docs/content/Tooltip.md +0 -41
  352. package/docs/content/Truncate.md +0 -64
  353. package/docs/content/UnderlineNav.md +0 -53
  354. package/docs/content/anchoredPosition.mdx +0 -163
  355. package/docs/content/core-concepts.md +0 -70
  356. package/docs/content/focusTrap.mdx +0 -103
  357. package/docs/content/focusZone.mdx +0 -145
  358. package/docs/content/getting-started.md +0 -138
  359. package/docs/content/index.md +0 -33
  360. package/docs/content/linting.md +0 -35
  361. package/docs/content/overriding-styles.mdx +0 -82
  362. package/docs/content/philosophy.md +0 -23
  363. package/docs/content/primer-theme.md +0 -89
  364. package/docs/content/ssr.mdx +0 -43
  365. package/docs/content/system-props.mdx +0 -37
  366. package/docs/content/theme-reference.md +0 -16
  367. package/docs/content/theming.md +0 -272
  368. package/docs/content/useOnEscapePress.mdx +0 -56
  369. package/docs/content/useOnOutsideClick.mdx +0 -57
  370. package/docs/content/useOpenAndCloseFocus.mdx +0 -49
  371. package/docs/content/useOverlay.mdx +0 -62
  372. package/docs/content/useSafeTimeout.mdx +0 -32
  373. package/docs/gatsby-config.js +0 -30
  374. package/docs/gatsby-node.js +0 -101
  375. package/docs/package-lock.json +0 -20756
  376. package/docs/package.json +0 -36
  377. package/docs/src/@primer/gatsby-theme-doctocat/components/hero.js +0 -21
  378. package/docs/src/@primer/gatsby-theme-doctocat/components/live-preview-wrapper.js +0 -41
  379. package/docs/src/@primer/gatsby-theme-doctocat/live-code-scope.js +0 -73
  380. package/docs/src/@primer/gatsby-theme-doctocat/nav.yml +0 -133
  381. package/docs/src/@primer/gatsby-theme-doctocat/primer-components-hero.svg +0 -1411
  382. package/docs/src/props.js +0 -77
  383. package/jest.config.js +0 -13
  384. package/lib/__tests__/ActionList.test.d.ts +0 -1
  385. package/lib/__tests__/ActionList.test.js +0 -69
  386. package/lib/__tests__/ActionList.types.test.d.ts +0 -6
  387. package/lib/__tests__/ActionList.types.test.js +0 -69
  388. package/lib/__tests__/ActionList2.test.d.ts +0 -1
  389. package/lib/__tests__/ActionList2.test.js +0 -53
  390. package/lib/__tests__/ActionMenu.test.d.ts +0 -1
  391. package/lib/__tests__/ActionMenu.test.js +0 -151
  392. package/lib/__tests__/AnchoredOverlay.test.d.ts +0 -1
  393. package/lib/__tests__/AnchoredOverlay.test.js +0 -162
  394. package/lib/__tests__/Autocomplete.test.d.ts +0 -1
  395. package/lib/__tests__/Autocomplete.test.js +0 -528
  396. package/lib/__tests__/Avatar.test.d.ts +0 -1
  397. package/lib/__tests__/Avatar.test.js +0 -67
  398. package/lib/__tests__/AvatarStack.test.d.ts +0 -1
  399. package/lib/__tests__/AvatarStack.test.js +0 -71
  400. package/lib/__tests__/BorderBox.test.d.ts +0 -1
  401. package/lib/__tests__/BorderBox.test.js +0 -58
  402. package/lib/__tests__/Box.test.d.ts +0 -1
  403. package/lib/__tests__/Box.test.js +0 -78
  404. package/lib/__tests__/BranchName.test.d.ts +0 -1
  405. package/lib/__tests__/BranchName.test.js +0 -36
  406. package/lib/__tests__/Breadcrumbs.test.d.ts +0 -1
  407. package/lib/__tests__/Breadcrumbs.test.js +0 -37
  408. package/lib/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  409. package/lib/__tests__/BreadcrumbsItem.test.js +0 -49
  410. package/lib/__tests__/Button.test.d.ts +0 -1
  411. package/lib/__tests__/Button.test.js +0 -143
  412. package/lib/__tests__/Caret.test.d.ts +0 -1
  413. package/lib/__tests__/Caret.test.js +0 -52
  414. package/lib/__tests__/CircleBadge.test.d.ts +0 -1
  415. package/lib/__tests__/CircleBadge.test.js +0 -83
  416. package/lib/__tests__/CircleOcticon.test.d.ts +0 -1
  417. package/lib/__tests__/CircleOcticon.test.js +0 -71
  418. package/lib/__tests__/ConfirmationDialog.test.d.ts +0 -1
  419. package/lib/__tests__/ConfirmationDialog.test.js +0 -134
  420. package/lib/__tests__/CounterLabel.test.d.ts +0 -1
  421. package/lib/__tests__/CounterLabel.test.js +0 -58
  422. package/lib/__tests__/Details.test.d.ts +0 -1
  423. package/lib/__tests__/Details.test.js +0 -117
  424. package/lib/__tests__/Dialog.test.d.ts +0 -1
  425. package/lib/__tests__/Dialog.test.js +0 -184
  426. package/lib/__tests__/Dropdown.test.d.ts +0 -1
  427. package/lib/__tests__/Dropdown.test.js +0 -63
  428. package/lib/__tests__/DropdownMenu.test.d.ts +0 -1
  429. package/lib/__tests__/DropdownMenu.test.js +0 -150
  430. package/lib/__tests__/FilterList.test.d.ts +0 -1
  431. package/lib/__tests__/FilterList.test.js +0 -36
  432. package/lib/__tests__/FilterListItem.test.d.ts +0 -1
  433. package/lib/__tests__/FilterListItem.test.js +0 -46
  434. package/lib/__tests__/FilteredSearch.test.d.ts +0 -1
  435. package/lib/__tests__/FilteredSearch.test.js +0 -36
  436. package/lib/__tests__/Flash.test.d.ts +0 -1
  437. package/lib/__tests__/Flash.test.js +0 -62
  438. package/lib/__tests__/Flex.test.d.ts +0 -1
  439. package/lib/__tests__/Flex.test.js +0 -74
  440. package/lib/__tests__/FormGroup.test.d.ts +0 -1
  441. package/lib/__tests__/FormGroup.test.js +0 -54
  442. package/lib/__tests__/Grid.test.d.ts +0 -1
  443. package/lib/__tests__/Grid.test.js +0 -104
  444. package/lib/__tests__/Header.test.d.ts +0 -1
  445. package/lib/__tests__/Header.test.js +0 -58
  446. package/lib/__tests__/Heading.test.d.ts +0 -1
  447. package/lib/__tests__/Heading.test.js +0 -109
  448. package/lib/__tests__/KeyPaths.types.test.d.ts +0 -11
  449. package/lib/__tests__/KeyPaths.types.test.js +0 -10
  450. package/lib/__tests__/Label.test.d.ts +0 -1
  451. package/lib/__tests__/Label.test.js +0 -46
  452. package/lib/__tests__/LabelGroup.test.d.ts +0 -1
  453. package/lib/__tests__/LabelGroup.test.js +0 -38
  454. package/lib/__tests__/Link.test.d.ts +0 -1
  455. package/lib/__tests__/Link.test.js +0 -70
  456. package/lib/__tests__/Merge.types.test.d.ts +0 -30
  457. package/lib/__tests__/Merge.types.test.js +0 -27
  458. package/lib/__tests__/Overlay.test.d.ts +0 -1
  459. package/lib/__tests__/Overlay.test.js +0 -145
  460. package/lib/__tests__/Pagehead.test.d.ts +0 -1
  461. package/lib/__tests__/Pagehead.test.js +0 -37
  462. package/lib/__tests__/Pagination/Pagination.test.d.ts +0 -1
  463. package/lib/__tests__/Pagination/Pagination.test.js +0 -47
  464. package/lib/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  465. package/lib/__tests__/Pagination/PaginationModel.test.js +0 -186
  466. package/lib/__tests__/PointerBox.test.d.ts +0 -1
  467. package/lib/__tests__/PointerBox.test.js +0 -46
  468. package/lib/__tests__/Popover.test.d.ts +0 -1
  469. package/lib/__tests__/Popover.test.js +0 -66
  470. package/lib/__tests__/Portal.test.d.ts +0 -1
  471. package/lib/__tests__/Portal.test.js +0 -124
  472. package/lib/__tests__/Position.test.d.ts +0 -1
  473. package/lib/__tests__/Position.test.js +0 -143
  474. package/lib/__tests__/ProgressBar.test.d.ts +0 -1
  475. package/lib/__tests__/ProgressBar.test.js +0 -68
  476. package/lib/__tests__/SelectMenu.test.d.ts +0 -1
  477. package/lib/__tests__/SelectMenu.test.js +0 -155
  478. package/lib/__tests__/SelectPanel.test.d.ts +0 -1
  479. package/lib/__tests__/SelectPanel.test.js +0 -80
  480. package/lib/__tests__/SideNav.test.d.ts +0 -1
  481. package/lib/__tests__/SideNav.test.js +0 -71
  482. package/lib/__tests__/Spinner.test.d.ts +0 -1
  483. package/lib/__tests__/Spinner.test.js +0 -53
  484. package/lib/__tests__/StateLabel.test.d.ts +0 -1
  485. package/lib/__tests__/StateLabel.test.js +0 -71
  486. package/lib/__tests__/StyledOcticon.test.d.ts +0 -1
  487. package/lib/__tests__/StyledOcticon.test.js +0 -40
  488. package/lib/__tests__/SubNav.test.d.ts +0 -1
  489. package/lib/__tests__/SubNav.test.js +0 -62
  490. package/lib/__tests__/SubNavLink.test.d.ts +0 -1
  491. package/lib/__tests__/SubNavLink.test.js +0 -49
  492. package/lib/__tests__/TabNav.test.d.ts +0 -1
  493. package/lib/__tests__/TabNav.test.js +0 -49
  494. package/lib/__tests__/Text.test.d.ts +0 -1
  495. package/lib/__tests__/Text.test.js +0 -105
  496. package/lib/__tests__/TextInput.test.d.ts +0 -1
  497. package/lib/__tests__/TextInput.test.js +0 -78
  498. package/lib/__tests__/TextInputWithTokens.test.d.ts +0 -1
  499. package/lib/__tests__/TextInputWithTokens.test.js +0 -572
  500. package/lib/__tests__/ThemeProvider.test.d.ts +0 -1
  501. package/lib/__tests__/ThemeProvider.test.js +0 -444
  502. package/lib/__tests__/Timeline.test.d.ts +0 -1
  503. package/lib/__tests__/Timeline.test.js +0 -75
  504. package/lib/__tests__/Token.test.d.ts +0 -1
  505. package/lib/__tests__/Token.test.js +0 -180
  506. package/lib/__tests__/Tooltip.test.d.ts +0 -1
  507. package/lib/__tests__/Tooltip.test.js +0 -69
  508. package/lib/__tests__/Truncate.test.d.ts +0 -1
  509. package/lib/__tests__/Truncate.test.js +0 -63
  510. package/lib/__tests__/UnderlineNav.test.d.ts +0 -1
  511. package/lib/__tests__/UnderlineNav.test.js +0 -72
  512. package/lib/__tests__/UnderlineNavLink.test.d.ts +0 -1
  513. package/lib/__tests__/UnderlineNavLink.test.js +0 -51
  514. package/lib/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  515. package/lib/__tests__/behaviors/anchoredPosition.test.js +0 -390
  516. package/lib/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  517. package/lib/__tests__/behaviors/focusTrap.test.js +0 -234
  518. package/lib/__tests__/behaviors/focusZone.test.d.ts +0 -1
  519. package/lib/__tests__/behaviors/focusZone.test.js +0 -570
  520. package/lib/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  521. package/lib/__tests__/behaviors/iterateFocusableElements.test.js +0 -55
  522. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  523. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -226
  524. package/lib/__tests__/filterObject.test.d.ts +0 -1
  525. package/lib/__tests__/filterObject.test.js +0 -30
  526. package/lib/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  527. package/lib/__tests__/hooks/useAnchoredPosition.test.js +0 -54
  528. package/lib/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  529. package/lib/__tests__/hooks/useOnEscapePress.test.js +0 -32
  530. package/lib/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  531. package/lib/__tests__/hooks/useOnOutsideClick.test.js +0 -87
  532. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  533. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -60
  534. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  535. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -45
  536. package/lib/__tests__/theme.test.d.ts +0 -1
  537. package/lib/__tests__/theme.test.js +0 -36
  538. package/lib/__tests__/themeGet.test.d.ts +0 -1
  539. package/lib/__tests__/themeGet.test.js +0 -25
  540. package/lib/__tests__/useSafeTimeout.test.d.ts +0 -1
  541. package/lib/__tests__/useSafeTimeout.test.js +0 -45
  542. package/lib/__tests__/utils/createSlots.test.d.ts +0 -1
  543. package/lib/__tests__/utils/createSlots.test.js +0 -75
  544. package/lib/stories/ActionList.stories.js +0 -454
  545. package/lib/stories/ActionList2.stories.js +0 -875
  546. package/lib/stories/ActionMenu.stories.js +0 -350
  547. package/lib/stories/AnchoredOverlay.stories.js +0 -127
  548. package/lib/stories/Autocomplete.stories.js +0 -619
  549. package/lib/stories/AvatarStack.stories.js +0 -49
  550. package/lib/stories/Button.stories.js +0 -125
  551. package/lib/stories/ConfirmationDialog.stories.js +0 -111
  552. package/lib/stories/Dialog.stories.js +0 -265
  553. package/lib/stories/DropdownMenu.stories.js +0 -122
  554. package/lib/stories/IssueLabelToken.stories.js +0 -165
  555. package/lib/stories/Overlay.stories.js +0 -204
  556. package/lib/stories/Portal.stories.js +0 -104
  557. package/lib/stories/ProfileToken.stories.js +0 -162
  558. package/lib/stories/SelectPanel.stories.js +0 -399
  559. package/lib/stories/TextInput.stories.js +0 -144
  560. package/lib/stories/TextInputWithTokens.stories.js +0 -252
  561. package/lib/stories/ThemeProvider.stories.js +0 -102
  562. package/lib/stories/Token.stories.js +0 -176
  563. package/lib/stories/useAnchoredPosition.stories.js +0 -351
  564. package/lib/stories/useFocusTrap.stories.js +0 -356
  565. package/lib/stories/useFocusZone.stories.js +0 -599
  566. package/lib/unreleased.js +0 -18
  567. package/lib-esm/__tests__/ActionList.test.d.ts +0 -1
  568. package/lib-esm/__tests__/ActionList.test.js +0 -57
  569. package/lib-esm/__tests__/ActionList.types.test.d.ts +0 -6
  570. package/lib-esm/__tests__/ActionList.types.test.js +0 -45
  571. package/lib-esm/__tests__/ActionList2.test.d.ts +0 -1
  572. package/lib-esm/__tests__/ActionList2.test.js +0 -41
  573. package/lib-esm/__tests__/ActionMenu.test.d.ts +0 -1
  574. package/lib-esm/__tests__/ActionMenu.test.js +0 -139
  575. package/lib-esm/__tests__/AnchoredOverlay.test.d.ts +0 -1
  576. package/lib-esm/__tests__/AnchoredOverlay.test.js +0 -136
  577. package/lib-esm/__tests__/Autocomplete.test.d.ts +0 -1
  578. package/lib-esm/__tests__/Autocomplete.test.js +0 -494
  579. package/lib-esm/__tests__/Avatar.test.d.ts +0 -1
  580. package/lib-esm/__tests__/Avatar.test.js +0 -56
  581. package/lib-esm/__tests__/AvatarStack.test.d.ts +0 -1
  582. package/lib-esm/__tests__/AvatarStack.test.js +0 -58
  583. package/lib-esm/__tests__/BorderBox.test.d.ts +0 -1
  584. package/lib-esm/__tests__/BorderBox.test.js +0 -47
  585. package/lib-esm/__tests__/Box.test.d.ts +0 -1
  586. package/lib-esm/__tests__/Box.test.js +0 -67
  587. package/lib-esm/__tests__/BranchName.test.d.ts +0 -1
  588. package/lib-esm/__tests__/BranchName.test.js +0 -26
  589. package/lib-esm/__tests__/Breadcrumbs.test.d.ts +0 -1
  590. package/lib-esm/__tests__/Breadcrumbs.test.js +0 -27
  591. package/lib-esm/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  592. package/lib-esm/__tests__/BreadcrumbsItem.test.js +0 -39
  593. package/lib-esm/__tests__/Button.test.d.ts +0 -1
  594. package/lib-esm/__tests__/Button.test.js +0 -133
  595. package/lib-esm/__tests__/Caret.test.d.ts +0 -1
  596. package/lib-esm/__tests__/Caret.test.js +0 -42
  597. package/lib-esm/__tests__/CircleBadge.test.d.ts +0 -1
  598. package/lib-esm/__tests__/CircleBadge.test.js +0 -70
  599. package/lib-esm/__tests__/CircleOcticon.test.d.ts +0 -1
  600. package/lib-esm/__tests__/CircleOcticon.test.js +0 -59
  601. package/lib-esm/__tests__/ConfirmationDialog.test.d.ts +0 -1
  602. package/lib-esm/__tests__/ConfirmationDialog.test.js +0 -113
  603. package/lib-esm/__tests__/CounterLabel.test.d.ts +0 -1
  604. package/lib-esm/__tests__/CounterLabel.test.js +0 -47
  605. package/lib-esm/__tests__/Details.test.d.ts +0 -1
  606. package/lib-esm/__tests__/Details.test.js +0 -107
  607. package/lib-esm/__tests__/Dialog.test.d.ts +0 -1
  608. package/lib-esm/__tests__/Dialog.test.js +0 -171
  609. package/lib-esm/__tests__/Dropdown.test.d.ts +0 -1
  610. package/lib-esm/__tests__/Dropdown.test.js +0 -53
  611. package/lib-esm/__tests__/DropdownMenu.test.d.ts +0 -1
  612. package/lib-esm/__tests__/DropdownMenu.test.js +0 -137
  613. package/lib-esm/__tests__/FilterList.test.d.ts +0 -1
  614. package/lib-esm/__tests__/FilterList.test.js +0 -26
  615. package/lib-esm/__tests__/FilterListItem.test.d.ts +0 -1
  616. package/lib-esm/__tests__/FilterListItem.test.js +0 -36
  617. package/lib-esm/__tests__/FilteredSearch.test.d.ts +0 -1
  618. package/lib-esm/__tests__/FilteredSearch.test.js +0 -26
  619. package/lib-esm/__tests__/Flash.test.d.ts +0 -1
  620. package/lib-esm/__tests__/Flash.test.js +0 -51
  621. package/lib-esm/__tests__/Flex.test.d.ts +0 -1
  622. package/lib-esm/__tests__/Flex.test.js +0 -64
  623. package/lib-esm/__tests__/FormGroup.test.d.ts +0 -1
  624. package/lib-esm/__tests__/FormGroup.test.js +0 -44
  625. package/lib-esm/__tests__/Grid.test.d.ts +0 -1
  626. package/lib-esm/__tests__/Grid.test.js +0 -94
  627. package/lib-esm/__tests__/Header.test.d.ts +0 -1
  628. package/lib-esm/__tests__/Header.test.js +0 -48
  629. package/lib-esm/__tests__/Heading.test.d.ts +0 -1
  630. package/lib-esm/__tests__/Heading.test.js +0 -99
  631. package/lib-esm/__tests__/KeyPaths.types.test.d.ts +0 -11
  632. package/lib-esm/__tests__/KeyPaths.types.test.js +0 -3
  633. package/lib-esm/__tests__/Label.test.d.ts +0 -1
  634. package/lib-esm/__tests__/Label.test.js +0 -36
  635. package/lib-esm/__tests__/LabelGroup.test.d.ts +0 -1
  636. package/lib-esm/__tests__/LabelGroup.test.js +0 -26
  637. package/lib-esm/__tests__/Link.test.d.ts +0 -1
  638. package/lib-esm/__tests__/Link.test.js +0 -60
  639. package/lib-esm/__tests__/Merge.types.test.d.ts +0 -30
  640. package/lib-esm/__tests__/Merge.types.test.js +0 -14
  641. package/lib-esm/__tests__/Overlay.test.d.ts +0 -1
  642. package/lib-esm/__tests__/Overlay.test.js +0 -123
  643. package/lib-esm/__tests__/Pagehead.test.d.ts +0 -1
  644. package/lib-esm/__tests__/Pagehead.test.js +0 -26
  645. package/lib-esm/__tests__/Pagination/Pagination.test.d.ts +0 -1
  646. package/lib-esm/__tests__/Pagination/Pagination.test.js +0 -35
  647. package/lib-esm/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  648. package/lib-esm/__tests__/Pagination/PaginationModel.test.js +0 -182
  649. package/lib-esm/__tests__/PointerBox.test.d.ts +0 -1
  650. package/lib-esm/__tests__/PointerBox.test.js +0 -36
  651. package/lib-esm/__tests__/Popover.test.d.ts +0 -1
  652. package/lib-esm/__tests__/Popover.test.js +0 -53
  653. package/lib-esm/__tests__/Portal.test.d.ts +0 -1
  654. package/lib-esm/__tests__/Portal.test.js +0 -104
  655. package/lib-esm/__tests__/Position.test.d.ts +0 -1
  656. package/lib-esm/__tests__/Position.test.js +0 -133
  657. package/lib-esm/__tests__/ProgressBar.test.d.ts +0 -1
  658. package/lib-esm/__tests__/ProgressBar.test.js +0 -58
  659. package/lib-esm/__tests__/SelectMenu.test.d.ts +0 -1
  660. package/lib-esm/__tests__/SelectMenu.test.js +0 -145
  661. package/lib-esm/__tests__/SelectPanel.test.d.ts +0 -1
  662. package/lib-esm/__tests__/SelectPanel.test.js +0 -65
  663. package/lib-esm/__tests__/SideNav.test.d.ts +0 -1
  664. package/lib-esm/__tests__/SideNav.test.js +0 -60
  665. package/lib-esm/__tests__/Spinner.test.d.ts +0 -1
  666. package/lib-esm/__tests__/Spinner.test.js +0 -43
  667. package/lib-esm/__tests__/StateLabel.test.d.ts +0 -1
  668. package/lib-esm/__tests__/StateLabel.test.js +0 -61
  669. package/lib-esm/__tests__/StyledOcticon.test.d.ts +0 -1
  670. package/lib-esm/__tests__/StyledOcticon.test.js +0 -29
  671. package/lib-esm/__tests__/SubNav.test.d.ts +0 -1
  672. package/lib-esm/__tests__/SubNav.test.js +0 -50
  673. package/lib-esm/__tests__/SubNavLink.test.d.ts +0 -1
  674. package/lib-esm/__tests__/SubNavLink.test.js +0 -39
  675. package/lib-esm/__tests__/TabNav.test.d.ts +0 -1
  676. package/lib-esm/__tests__/TabNav.test.js +0 -39
  677. package/lib-esm/__tests__/Text.test.d.ts +0 -1
  678. package/lib-esm/__tests__/Text.test.js +0 -93
  679. package/lib-esm/__tests__/TextInput.test.d.ts +0 -1
  680. package/lib-esm/__tests__/TextInput.test.js +0 -68
  681. package/lib-esm/__tests__/TextInputWithTokens.test.d.ts +0 -1
  682. package/lib-esm/__tests__/TextInputWithTokens.test.js +0 -511
  683. package/lib-esm/__tests__/ThemeProvider.test.d.ts +0 -1
  684. package/lib-esm/__tests__/ThemeProvider.test.js +0 -408
  685. package/lib-esm/__tests__/Timeline.test.d.ts +0 -1
  686. package/lib-esm/__tests__/Timeline.test.js +0 -65
  687. package/lib-esm/__tests__/Token.test.d.ts +0 -1
  688. package/lib-esm/__tests__/Token.test.js +0 -166
  689. package/lib-esm/__tests__/Tooltip.test.d.ts +0 -1
  690. package/lib-esm/__tests__/Tooltip.test.js +0 -59
  691. package/lib-esm/__tests__/Truncate.test.d.ts +0 -1
  692. package/lib-esm/__tests__/Truncate.test.js +0 -53
  693. package/lib-esm/__tests__/UnderlineNav.test.d.ts +0 -1
  694. package/lib-esm/__tests__/UnderlineNav.test.js +0 -60
  695. package/lib-esm/__tests__/UnderlineNavLink.test.d.ts +0 -1
  696. package/lib-esm/__tests__/UnderlineNavLink.test.js +0 -41
  697. package/lib-esm/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  698. package/lib-esm/__tests__/behaviors/anchoredPosition.test.js +0 -388
  699. package/lib-esm/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  700. package/lib-esm/__tests__/behaviors/focusTrap.test.js +0 -227
  701. package/lib-esm/__tests__/behaviors/focusZone.test.d.ts +0 -1
  702. package/lib-esm/__tests__/behaviors/focusZone.test.js +0 -487
  703. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  704. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.js +0 -48
  705. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  706. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -224
  707. package/lib-esm/__tests__/filterObject.test.d.ts +0 -1
  708. package/lib-esm/__tests__/filterObject.test.js +0 -27
  709. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  710. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.js +0 -46
  711. package/lib-esm/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  712. package/lib-esm/__tests__/hooks/useOnEscapePress.test.js +0 -23
  713. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  714. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.js +0 -68
  715. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  716. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -52
  717. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  718. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -36
  719. package/lib-esm/__tests__/theme.test.d.ts +0 -1
  720. package/lib-esm/__tests__/theme.test.js +0 -33
  721. package/lib-esm/__tests__/themeGet.test.d.ts +0 -1
  722. package/lib-esm/__tests__/themeGet.test.js +0 -22
  723. package/lib-esm/__tests__/useSafeTimeout.test.d.ts +0 -1
  724. package/lib-esm/__tests__/useSafeTimeout.test.js +0 -39
  725. package/lib-esm/__tests__/utils/createSlots.test.d.ts +0 -1
  726. package/lib-esm/__tests__/utils/createSlots.test.js +0 -67
  727. package/lib-esm/stories/ActionList.stories.js +0 -395
  728. package/lib-esm/stories/ActionList2.stories.js +0 -764
  729. package/lib-esm/stories/ActionMenu.stories.js +0 -305
  730. package/lib-esm/stories/AnchoredOverlay.stories.js +0 -101
  731. package/lib-esm/stories/Autocomplete.stories.js +0 -560
  732. package/lib-esm/stories/AvatarStack.stories.js +0 -32
  733. package/lib-esm/stories/Button.stories.js +0 -86
  734. package/lib-esm/stories/ConfirmationDialog.stories.js +0 -86
  735. package/lib-esm/stories/Dialog.stories.js +0 -240
  736. package/lib-esm/stories/DropdownMenu.stories.js +0 -94
  737. package/lib-esm/stories/IssueLabelToken.stories.js +0 -139
  738. package/lib-esm/stories/Overlay.stories.js +0 -173
  739. package/lib-esm/stories/Portal.stories.js +0 -68
  740. package/lib-esm/stories/ProfileToken.stories.js +0 -136
  741. package/lib-esm/stories/SelectPanel.stories.js +0 -334
  742. package/lib-esm/stories/TextInput.stories.js +0 -117
  743. package/lib-esm/stories/TextInputWithTokens.stories.js +0 -210
  744. package/lib-esm/stories/ThemeProvider.stories.js +0 -83
  745. package/lib-esm/stories/Token.stories.js +0 -146
  746. package/lib-esm/stories/useAnchoredPosition.stories.js +0 -313
  747. package/lib-esm/stories/useFocusTrap.stories.js +0 -309
  748. package/lib-esm/stories/useFocusZone.stories.js +0 -554
  749. package/lib-esm/unreleased.js +0 -8
  750. package/migrating.md +0 -250
  751. package/now.json +0 -17
  752. package/package-lock.json +0 -66509
  753. package/rollup.config.js +0 -36
  754. package/script/build +0 -21
  755. package/script/build-storybook +0 -10
  756. package/script/setup +0 -12
  757. package/src/ActionList/Divider.tsx +0 -25
  758. package/src/ActionList/Group.tsx +0 -45
  759. package/src/ActionList/Header.tsx +0 -74
  760. package/src/ActionList/Item.tsx +0 -496
  761. package/src/ActionList/List.tsx +0 -258
  762. package/src/ActionList/index.ts +0 -21
  763. package/src/ActionList2/Description.tsx +0 -49
  764. package/src/ActionList2/Divider.tsx +0 -24
  765. package/src/ActionList2/Group.tsx +0 -34
  766. package/src/ActionList2/Header.tsx +0 -58
  767. package/src/ActionList2/Item.tsx +0 -228
  768. package/src/ActionList2/LinkItem.tsx +0 -49
  769. package/src/ActionList2/List.tsx +0 -55
  770. package/src/ActionList2/Selection.tsx +0 -40
  771. package/src/ActionList2/Visuals.tsx +0 -76
  772. package/src/ActionList2/index.ts +0 -39
  773. package/src/ActionMenu.tsx +0 -106
  774. package/src/AnchoredOverlay/AnchoredOverlay.tsx +0 -191
  775. package/src/AnchoredOverlay/index.ts +0 -2
  776. package/src/Autocomplete/Autocomplete.tsx +0 -103
  777. package/src/Autocomplete/AutocompleteContext.tsx +0 -19
  778. package/src/Autocomplete/AutocompleteInput.tsx +0 -179
  779. package/src/Autocomplete/AutocompleteMenu.tsx +0 -341
  780. package/src/Autocomplete/AutocompleteOverlay.tsx +0 -68
  781. package/src/Autocomplete/index.ts +0 -2
  782. package/src/Avatar.tsx +0 -46
  783. package/src/AvatarPair.tsx +0 -35
  784. package/src/BaseStyles.tsx +0 -53
  785. package/src/BorderBox.tsx +0 -18
  786. package/src/Box.tsx +0 -54
  787. package/src/BranchName.tsx +0 -19
  788. package/src/Breadcrumbs.tsx +0 -101
  789. package/src/Button/Button.tsx +0 -40
  790. package/src/Button/ButtonBase.tsx +0 -43
  791. package/src/Button/ButtonClose.tsx +0 -40
  792. package/src/Button/ButtonDanger.tsx +0 -43
  793. package/src/Button/ButtonGroup.tsx +0 -55
  794. package/src/Button/ButtonInvisible.tsx +0 -32
  795. package/src/Button/ButtonOutline.tsx +0 -43
  796. package/src/Button/ButtonPrimary.tsx +0 -41
  797. package/src/Button/ButtonTableList.tsx +0 -58
  798. package/src/Button/index.ts +0 -16
  799. package/src/Caret.tsx +0 -133
  800. package/src/CircleBadge.tsx +0 -55
  801. package/src/CircleOcticon.tsx +0 -37
  802. package/src/CounterLabel.tsx +0 -52
  803. package/src/Details.tsx +0 -23
  804. package/src/Dialog/ConfirmationDialog.tsx +0 -184
  805. package/src/Dialog/Dialog.tsx +0 -432
  806. package/src/Dialog.tsx +0 -149
  807. package/src/Dropdown.tsx +0 -158
  808. package/src/DropdownMenu/DropdownButton.tsx +0 -15
  809. package/src/DropdownMenu/DropdownMenu.tsx +0 -115
  810. package/src/DropdownMenu/index.ts +0 -4
  811. package/src/DropdownStyles.ts +0 -128
  812. package/src/FilterList.tsx +0 -81
  813. package/src/FilteredActionList/FilteredActionList.tsx +0 -142
  814. package/src/FilteredActionList/index.ts +0 -2
  815. package/src/FilteredSearch.tsx +0 -28
  816. package/src/Flash.tsx +0 -77
  817. package/src/Flex.tsx +0 -15
  818. package/src/FormGroup.tsx +0 -27
  819. package/src/Grid.tsx +0 -15
  820. package/src/Header.tsx +0 -84
  821. package/src/Heading.tsx +0 -21
  822. package/src/Label.tsx +0 -75
  823. package/src/LabelGroup.tsx +0 -18
  824. package/src/Link.tsx +0 -46
  825. package/src/Overlay.tsx +0 -198
  826. package/src/Pagehead.tsx +0 -17
  827. package/src/Pagination/Pagination.tsx +0 -214
  828. package/src/Pagination/index.ts +0 -4
  829. package/src/Pagination/model.tsx +0 -187
  830. package/src/PointerBox.tsx +0 -31
  831. package/src/Portal/Portal.tsx +0 -97
  832. package/src/Portal/index.ts +0 -5
  833. package/src/Position.tsx +0 -63
  834. package/src/ProgressBar.tsx +0 -52
  835. package/src/SelectMenu/SelectMenu.tsx +0 -125
  836. package/src/SelectMenu/SelectMenuContext.tsx +0 -9
  837. package/src/SelectMenu/SelectMenuDivider.tsx +0 -25
  838. package/src/SelectMenu/SelectMenuFilter.tsx +0 -51
  839. package/src/SelectMenu/SelectMenuFooter.tsx +0 -28
  840. package/src/SelectMenu/SelectMenuHeader.tsx +0 -50
  841. package/src/SelectMenu/SelectMenuItem.tsx +0 -137
  842. package/src/SelectMenu/SelectMenuList.tsx +0 -42
  843. package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +0 -24
  844. package/src/SelectMenu/SelectMenuModal.tsx +0 -121
  845. package/src/SelectMenu/SelectMenuTab.tsx +0 -88
  846. package/src/SelectMenu/SelectMenuTabPanel.tsx +0 -30
  847. package/src/SelectMenu/SelectMenuTabs.tsx +0 -44
  848. package/src/SelectMenu/hooks/useKeyboardNav.js +0 -90
  849. package/src/SelectMenu/index.ts +0 -15
  850. package/src/SelectPanel/SelectPanel.tsx +0 -173
  851. package/src/SelectPanel/index.ts +0 -2
  852. package/src/SideNav.tsx +0 -193
  853. package/src/Spinner.tsx +0 -59
  854. package/src/StateLabel.tsx +0 -102
  855. package/src/StyledOcticon.tsx +0 -24
  856. package/src/SubNav.tsx +0 -129
  857. package/src/TabNav.tsx +0 -77
  858. package/src/Text.tsx +0 -13
  859. package/src/TextInput.tsx +0 -68
  860. package/src/TextInputWithTokens.tsx +0 -351
  861. package/src/ThemeProvider.tsx +0 -176
  862. package/src/Timeline.tsx +0 -141
  863. package/src/Token/AvatarToken.tsx +0 -54
  864. package/src/Token/IssueLabelToken.tsx +0 -150
  865. package/src/Token/Token.tsx +0 -126
  866. package/src/Token/TokenBase.tsx +0 -129
  867. package/src/Token/_RemoveTokenButton.tsx +0 -111
  868. package/src/Token/index.ts +0 -3
  869. package/src/Truncate.tsx +0 -36
  870. package/src/UnderlineNav.tsx +0 -110
  871. package/src/_TextInputWrapper.tsx +0 -113
  872. package/src/_UnstyledTextInput.tsx +0 -19
  873. package/src/__tests__/.eslintrc.json +0 -11
  874. package/src/__tests__/ActionList.test.tsx +0 -53
  875. package/src/__tests__/ActionList.types.test.tsx +0 -51
  876. package/src/__tests__/ActionList2.test.tsx +0 -47
  877. package/src/__tests__/ActionMenu.test.tsx +0 -136
  878. package/src/__tests__/AnchoredOverlay.test.tsx +0 -150
  879. package/src/__tests__/Autocomplete.test.tsx +0 -444
  880. package/src/__tests__/Avatar.test.tsx +0 -44
  881. package/src/__tests__/AvatarStack.test.tsx +0 -48
  882. package/src/__tests__/BorderBox.test.tsx +0 -43
  883. package/src/__tests__/Box.test.tsx +0 -42
  884. package/src/__tests__/BranchName.test.tsx +0 -26
  885. package/src/__tests__/Breadcrumbs.test.tsx +0 -27
  886. package/src/__tests__/BreadcrumbsItem.test.tsx +0 -31
  887. package/src/__tests__/Button.test.tsx +0 -128
  888. package/src/__tests__/Caret.test.tsx +0 -36
  889. package/src/__tests__/CircleBadge.test.tsx +0 -66
  890. package/src/__tests__/CircleOcticon.test.tsx +0 -50
  891. package/src/__tests__/ConfirmationDialog.test.tsx +0 -120
  892. package/src/__tests__/CounterLabel.test.tsx +0 -50
  893. package/src/__tests__/Details.test.tsx +0 -115
  894. package/src/__tests__/Dialog.test.tsx +0 -155
  895. package/src/__tests__/Dropdown.test.tsx +0 -53
  896. package/src/__tests__/DropdownMenu.test.tsx +0 -136
  897. package/src/__tests__/FilterList.test.tsx +0 -26
  898. package/src/__tests__/FilterListItem.test.tsx +0 -31
  899. package/src/__tests__/FilteredSearch.test.tsx +0 -26
  900. package/src/__tests__/Flash.test.tsx +0 -45
  901. package/src/__tests__/Flex.test.tsx +0 -58
  902. package/src/__tests__/FormGroup.test.tsx +0 -38
  903. package/src/__tests__/Grid.test.tsx +0 -82
  904. package/src/__tests__/Header.test.tsx +0 -49
  905. package/src/__tests__/Heading.test.tsx +0 -91
  906. package/src/__tests__/KeyPaths.types.test.ts +0 -14
  907. package/src/__tests__/Label.test.tsx +0 -34
  908. package/src/__tests__/LabelGroup.test.tsx +0 -30
  909. package/src/__tests__/Link.test.tsx +0 -47
  910. package/src/__tests__/Merge.types.test.ts +0 -39
  911. package/src/__tests__/Overlay.test.tsx +0 -103
  912. package/src/__tests__/Pagehead.test.tsx +0 -23
  913. package/src/__tests__/Pagination/Pagination.test.tsx +0 -30
  914. package/src/__tests__/Pagination/PaginationModel.test.tsx +0 -133
  915. package/src/__tests__/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -184
  916. package/src/__tests__/PointerBox.test.tsx +0 -34
  917. package/src/__tests__/Popover.test.tsx +0 -68
  918. package/src/__tests__/Portal.test.tsx +0 -103
  919. package/src/__tests__/Position.test.tsx +0 -117
  920. package/src/__tests__/ProgressBar.test.tsx +0 -40
  921. package/src/__tests__/SelectMenu.test.tsx +0 -142
  922. package/src/__tests__/SelectPanel.test.tsx +0 -63
  923. package/src/__tests__/SideNav.test.tsx +0 -62
  924. package/src/__tests__/Spinner.test.tsx +0 -42
  925. package/src/__tests__/StateLabel.test.tsx +0 -48
  926. package/src/__tests__/StyledOcticon.test.tsx +0 -26
  927. package/src/__tests__/SubNav.test.tsx +0 -50
  928. package/src/__tests__/SubNavLink.test.tsx +0 -31
  929. package/src/__tests__/TabNav.test.tsx +0 -32
  930. package/src/__tests__/Text.test.tsx +0 -78
  931. package/src/__tests__/TextInput.test.tsx +0 -49
  932. package/src/__tests__/TextInputWithTokens.test.tsx +0 -422
  933. package/src/__tests__/ThemeProvider.test.tsx +0 -441
  934. package/src/__tests__/Timeline.test.tsx +0 -58
  935. package/src/__tests__/Token.test.tsx +0 -118
  936. package/src/__tests__/Tooltip.test.tsx +0 -52
  937. package/src/__tests__/Truncate.test.tsx +0 -43
  938. package/src/__tests__/UnderlineNav.test.tsx +0 -58
  939. package/src/__tests__/UnderlineNavLink.test.tsx +0 -31
  940. package/src/__tests__/__snapshots__/ActionList.test.tsx.snap +0 -223
  941. package/src/__tests__/__snapshots__/ActionList2.test.tsx.snap +0 -14
  942. package/src/__tests__/__snapshots__/ActionMenu.test.tsx.snap +0 -80
  943. package/src/__tests__/__snapshots__/AnchoredOverlay.test.tsx.snap +0 -232
  944. package/src/__tests__/__snapshots__/Autocomplete.test.tsx.snap +0 -3421
  945. package/src/__tests__/__snapshots__/Avatar.test.tsx.snap +0 -19
  946. package/src/__tests__/__snapshots__/AvatarStack.test.tsx.snap +0 -377
  947. package/src/__tests__/__snapshots__/BorderBox.test.tsx.snap +0 -14
  948. package/src/__tests__/__snapshots__/Box.test.tsx.snap +0 -201
  949. package/src/__tests__/__snapshots__/BranchName.test.tsx.snap +0 -17
  950. package/src/__tests__/__snapshots__/Breadcrumbs.test.tsx.snap +0 -29
  951. package/src/__tests__/__snapshots__/BreadcrumbsItem.test.tsx.snap +0 -79
  952. package/src/__tests__/__snapshots__/Button.test.tsx.snap +0 -840
  953. package/src/__tests__/__snapshots__/Caret.test.tsx.snap +0 -373
  954. package/src/__tests__/__snapshots__/CircleBadge.test.tsx.snap +0 -141
  955. package/src/__tests__/__snapshots__/CircleOcticon.test.tsx.snap +0 -64
  956. package/src/__tests__/__snapshots__/ConfirmationDialog.test.tsx.snap +0 -89
  957. package/src/__tests__/__snapshots__/CounterLabel.test.tsx.snap +0 -22
  958. package/src/__tests__/__snapshots__/Details.test.tsx.snap +0 -15
  959. package/src/__tests__/__snapshots__/Dialog.test.tsx.snap +0 -200
  960. package/src/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -249
  961. package/src/__tests__/__snapshots__/DropdownMenu.test.tsx.snap +0 -106
  962. package/src/__tests__/__snapshots__/FilterList.test.tsx.snap +0 -13
  963. package/src/__tests__/__snapshots__/FilterListItem.test.tsx.snap +0 -80
  964. package/src/__tests__/__snapshots__/FilteredSearch.test.tsx.snap +0 -32
  965. package/src/__tests__/__snapshots__/Flash.test.tsx.snap +0 -32
  966. package/src/__tests__/__snapshots__/Flex.test.tsx.snap +0 -130
  967. package/src/__tests__/__snapshots__/FormGroup.test.tsx.snap +0 -25
  968. package/src/__tests__/__snapshots__/Grid.test.tsx.snap +0 -178
  969. package/src/__tests__/__snapshots__/Header.test.tsx.snap +0 -79
  970. package/src/__tests__/__snapshots__/Heading.test.tsx.snap +0 -13
  971. package/src/__tests__/__snapshots__/Label.test.tsx.snap +0 -74
  972. package/src/__tests__/__snapshots__/LabelGroup.test.tsx.snap +0 -15
  973. package/src/__tests__/__snapshots__/Link.test.tsx.snap +0 -213
  974. package/src/__tests__/__snapshots__/Pagehead.test.tsx.snap +0 -15
  975. package/src/__tests__/__snapshots__/PointerBox.test.tsx.snap +0 -174
  976. package/src/__tests__/__snapshots__/Popover.test.tsx.snap +0 -4687
  977. package/src/__tests__/__snapshots__/Position.test.tsx.snap +0 -44
  978. package/src/__tests__/__snapshots__/ProgressBar.test.tsx.snap +0 -53
  979. package/src/__tests__/__snapshots__/SelectMenu.test.tsx.snap +0 -469
  980. package/src/__tests__/__snapshots__/SelectPanel.test.tsx.snap +0 -123
  981. package/src/__tests__/__snapshots__/SideNav.test.tsx.snap +0 -143
  982. package/src/__tests__/__snapshots__/Spinner.test.tsx.snap +0 -33
  983. package/src/__tests__/__snapshots__/StateLabel.test.tsx.snap +0 -388
  984. package/src/__tests__/__snapshots__/StyledOcticon.test.tsx.snap +0 -25
  985. package/src/__tests__/__snapshots__/SubNav.test.tsx.snap +0 -44
  986. package/src/__tests__/__snapshots__/SubNavLink.test.tsx.snap +0 -199
  987. package/src/__tests__/__snapshots__/TabNav.test.tsx.snap +0 -58
  988. package/src/__tests__/__snapshots__/Text.test.tsx.snap +0 -7
  989. package/src/__tests__/__snapshots__/TextInput.test.tsx.snap +0 -446
  990. package/src/__tests__/__snapshots__/TextInputWithTokens.test.tsx.snap +0 -5979
  991. package/src/__tests__/__snapshots__/ThemeProvider.test.tsx.snap +0 -15
  992. package/src/__tests__/__snapshots__/Timeline.test.tsx.snap +0 -159
  993. package/src/__tests__/__snapshots__/Token.test.tsx.snap +0 -3794
  994. package/src/__tests__/__snapshots__/Tooltip.test.tsx.snap +0 -227
  995. package/src/__tests__/__snapshots__/Truncate.test.tsx.snap +0 -17
  996. package/src/__tests__/__snapshots__/UnderlineNav.test.tsx.snap +0 -59
  997. package/src/__tests__/__snapshots__/UnderlineNavLink.test.tsx.snap +0 -130
  998. package/src/__tests__/behaviors/anchoredPosition.test.ts +0 -295
  999. package/src/__tests__/behaviors/focusTrap.test.tsx +0 -236
  1000. package/src/__tests__/behaviors/focusZone.test.tsx +0 -549
  1001. package/src/__tests__/behaviors/iterateFocusableElements.test.tsx +0 -61
  1002. package/src/__tests__/behaviors/scrollIntoViewingArea.test.ts +0 -195
  1003. package/src/__tests__/filterObject.test.ts +0 -54
  1004. package/src/__tests__/hooks/useAnchoredPosition.test.tsx +0 -31
  1005. package/src/__tests__/hooks/useOnEscapePress.test.tsx +0 -16
  1006. package/src/__tests__/hooks/useOnOutsideClick.test.tsx +0 -48
  1007. package/src/__tests__/hooks/useOpenAndCloseFocus.test.tsx +0 -48
  1008. package/src/__tests__/hooks/useProvidedStateOrCreate.test.tsx +0 -39
  1009. package/src/__tests__/theme.test.ts +0 -41
  1010. package/src/__tests__/themeGet.test.ts +0 -15
  1011. package/src/__tests__/useSafeTimeout.test.tsx +0 -36
  1012. package/src/__tests__/utils/__snapshots__/createSlots.test.tsx.snap +0 -55
  1013. package/src/__tests__/utils/createSlots.test.tsx +0 -74
  1014. package/src/behaviors/anchoredPosition.ts +0 -442
  1015. package/src/behaviors/focusTrap.ts +0 -184
  1016. package/src/behaviors/focusZone.ts +0 -713
  1017. package/src/behaviors/scrollIntoViewingArea.ts +0 -27
  1018. package/src/constants.ts +0 -62
  1019. package/src/hooks/index.ts +0 -11
  1020. package/src/hooks/useAnchoredPosition.ts +0 -54
  1021. package/src/hooks/useCombinedRefs.ts +0 -40
  1022. package/src/hooks/useDetails.tsx +0 -54
  1023. package/src/hooks/useDialog.ts +0 -121
  1024. package/src/hooks/useFocusTrap.ts +0 -80
  1025. package/src/hooks/useFocusZone.ts +0 -64
  1026. package/src/hooks/useOnEscapePress.ts +0 -63
  1027. package/src/hooks/useOnOutsideClick.tsx +0 -82
  1028. package/src/hooks/useOpenAndCloseFocus.ts +0 -32
  1029. package/src/hooks/useOverlay.tsx +0 -34
  1030. package/src/hooks/useProvidedRefOrCreate.ts +0 -14
  1031. package/src/hooks/useProvidedStateOrCreate.ts +0 -27
  1032. package/src/hooks/useRenderForcingRef.ts +0 -22
  1033. package/src/hooks/useResizeObserver.ts +0 -11
  1034. package/src/hooks/useSafeTimeout.ts +0 -38
  1035. package/src/hooks/useScrollFlash.ts +0 -21
  1036. package/src/index.ts +0 -170
  1037. package/src/polyfills/eventListenerSignal.ts +0 -66
  1038. package/src/stories/ActionList.stories.tsx +0 -436
  1039. package/src/stories/ActionList2.stories.tsx +0 -1279
  1040. package/src/stories/ActionMenu.stories.tsx +0 -334
  1041. package/src/stories/AnchoredOverlay.stories.tsx +0 -117
  1042. package/src/stories/Autocomplete.stories.tsx +0 -655
  1043. package/src/stories/AvatarStack.stories.tsx +0 -37
  1044. package/src/stories/Button.stories.tsx +0 -92
  1045. package/src/stories/ConfirmationDialog.stories.tsx +0 -105
  1046. package/src/stories/Dialog.stories.tsx +0 -240
  1047. package/src/stories/DropdownMenu.stories.tsx +0 -84
  1048. package/src/stories/IssueLabelToken.stories.tsx +0 -138
  1049. package/src/stories/Overlay.stories.tsx +0 -213
  1050. package/src/stories/Portal.stories.tsx +0 -109
  1051. package/src/stories/ProfileToken.stories.tsx +0 -129
  1052. package/src/stories/SelectPanel.stories.tsx +0 -353
  1053. package/src/stories/TextInput.stories.tsx +0 -113
  1054. package/src/stories/TextInputWithTokens.stories.tsx +0 -155
  1055. package/src/stories/ThemeProvider.stories.tsx +0 -104
  1056. package/src/stories/Token.stories.tsx +0 -137
  1057. package/src/stories/useAnchoredPosition.stories.tsx +0 -332
  1058. package/src/stories/useFocusTrap.stories.tsx +0 -400
  1059. package/src/stories/useFocusZone.stories.tsx +0 -663
  1060. package/src/sx.ts +0 -24
  1061. package/src/theme-preval.js +0 -80
  1062. package/src/theme.ts +0 -89
  1063. package/src/utils/create-slots.tsx +0 -96
  1064. package/src/utils/deprecate.tsx +0 -73
  1065. package/src/utils/isNumeric.tsx +0 -4
  1066. package/src/utils/iterateFocusableElements.ts +0 -121
  1067. package/src/utils/ssr.tsx +0 -1
  1068. package/src/utils/test-deprecations.tsx +0 -19
  1069. package/src/utils/test-matchers.tsx +0 -109
  1070. package/src/utils/testing.tsx +0 -242
  1071. package/src/utils/theme.js +0 -64
  1072. package/src/utils/types/AriaRole.ts +0 -71
  1073. package/src/utils/types/ComponentProps.ts +0 -13
  1074. package/src/utils/types/Flatten.ts +0 -4
  1075. package/src/utils/types/KeyPaths.ts +0 -10
  1076. package/src/utils/types/MandateProps.ts +0 -19
  1077. package/src/utils/types/Merge.ts +0 -20
  1078. package/src/utils/types/index.ts +0 -5
  1079. package/src/utils/uniqueId.ts +0 -6
  1080. package/src/utils/use-force-update.ts +0 -7
  1081. package/src/utils/useIsomorphicLayoutEffect.ts +0 -10
  1082. package/src/utils/userAgent.ts +0 -7
  1083. package/stats.html +0 -3279
  1084. package/tsconfig.build.json +0 -7
  1085. package/tsconfig.json +0 -20
@@ -1,657 +0,0 @@
1
- ---
2
- title: Autocomplete
3
- status: Alpha
4
- ---
5
-
6
- import {Props} from '../src/props'
7
- import {Autocomplete} from '@primer/components'
8
-
9
- The `Autocomplete` components are used to render a text input that allows a user to quickly filter through a list of options to pick one or more values. It is comprised of an `Autocomplete.Input` component that a user types into, and a `Autocomplete.Menu` component that displays the list of selectable values.
10
-
11
- ## Basic Example
12
-
13
- ```jsx live
14
- <>
15
- <Text fontWeight="bold" fontSize={1} as="label" display="block" htmlFor="autocompleteInput" id="autocompleteLabel">
16
- Pick a branch
17
- </Text>
18
- <Autocomplete>
19
- <Autocomplete.Input id="autocompleteInput-basic" />
20
- <Autocomplete.Overlay>
21
- <Autocomplete.Menu
22
- items={[
23
- {text: 'main', id: 0},
24
- {text: 'autocomplete-tests', id: 1},
25
- {text: 'a11y-improvements', id: 2},
26
- {text: 'button-bug-fixes', id: 3},
27
- {text: 'radio-input-component', id: 4},
28
- {text: 'release-1.0.0', id: 5},
29
- {text: 'text-input-implementation', id: 6},
30
- {text: 'visual-design-tweaks', id: 7}
31
- ]}
32
- selectedItemIds={[]}
33
- aria-labelledby="autocompleteLabel-basic"
34
- />
35
- </Autocomplete.Overlay>
36
- </Autocomplete>
37
- </>
38
- ```
39
-
40
- ## Autocomplete.Input
41
-
42
- The text input is used to filter the options in the dropdown menu. It is also used to show the selected value (or values).
43
-
44
- The default input rendered is the `TextInput` component. A different text input component may be rendered by passing a different component to the `as` prop.
45
-
46
- The `Autocomplete.Input` should not be rendered without a `<label>` who's `htmlFor` prop matches the `Autocomplete.Input`'s `id` prop
47
-
48
- ### Component Props
49
-
50
- `Autocomplete.Input` accepts the same props as a native `<input />`. The other props of `Autocomplete.Input` depend on what component is passed to the `as` prop. The default value for `as` is [TextInput](/TextInput)
51
-
52
- ### Example: Passing a custom text input
53
-
54
- In this example, we're passing a [TextInputWithTokens](/TextInputWithTokens) component
55
-
56
- ```javascript live noinline
57
- const CustomTextInputExample = () => {
58
- const [tokens, setTokens] = React.useState([{text: 'zero', id: 0}])
59
- const selectedTokenIds = tokens.map(token => token.id)
60
- const [selectedItemIds, setSelectedItemIds] = React.useState(selectedTokenIds)
61
- const onTokenRemove = tokenId => {
62
- setTokens(tokens.filter(token => token.id !== tokenId))
63
- setSelectedItemIds(selectedItemIds.filter(id => id !== tokenId))
64
- }
65
- const onSelectedChange = newlySelectedItems => {
66
- if (!Array.isArray(newlySelectedItems)) {
67
- return
68
- }
69
-
70
- setSelectedItemIds(newlySelectedItems.map(item => item.id))
71
-
72
- if (newlySelectedItems.length < selectedItemIds.length) {
73
- const newlySelectedItemIds = newlySelectedItems.map(({id}) => id)
74
- const removedItemIds = selectedTokenIds.filter(id => !newlySelectedItemIds.includes(id))
75
-
76
- for (const removedItemId of removedItemIds) {
77
- onTokenRemove(removedItemId)
78
- }
79
-
80
- return
81
- }
82
-
83
- setTokens(newlySelectedItems.map(({id, text}) => ({id, text})))
84
- }
85
-
86
- return (
87
- <>
88
- <Text
89
- fontWeight="bold"
90
- fontSize={1}
91
- as="label"
92
- display="block"
93
- htmlFor="autocompleteInput-customInput"
94
- id="autocompleteLabel-customInput"
95
- >
96
- Pick options
97
- </Text>
98
- <Autocomplete>
99
- <Autocomplete.Input
100
- as={TextInputWithTokens}
101
- tokens={tokens}
102
- onTokenRemove={onTokenRemove}
103
- id="autocompleteInput-customInput"
104
- />
105
- <Autocomplete.Overlay>
106
- <Autocomplete.Menu
107
- items={[
108
- {text: 'zero', id: 0},
109
- {text: 'one', id: 1},
110
- {text: 'two', id: 2},
111
- {text: 'three', id: 3},
112
- {text: 'four', id: 4},
113
- {text: 'five', id: 5},
114
- {text: 'six', id: 6},
115
- {text: 'seven', id: 7}
116
- ]}
117
- selectedItemIds={selectedItemIds}
118
- onSelectedChange={onSelectedChange}
119
- selectionVariant="multiple"
120
- aria-labelledby="autocompleteLabel-customInput"
121
- />
122
- </Autocomplete.Overlay>
123
- </Autocomplete>
124
- </>
125
- )
126
- }
127
-
128
- render(<CustomTextInputExample />)
129
- ```
130
-
131
- ## Autocomplete.Overlay
132
-
133
- The `Autocomplete.Overlay` wraps the `Autocomplete.Menu` to display it in an [Overlay]() component.
134
- Most `Autocomplete` implementations will use the `Autocomplete.Overlay` component, but there could be special cases where the `Autocomplete.Menu` should be rendered directly after the `Autocomplete.Input` (for example: an `Autocomplete` that is already being rendered in an `Overlay`).
135
-
136
- ### Component Props
137
-
138
- <Props of={Autocomplete.Overlay} />
139
-
140
- ### Example: Without `Autocomplete.Overlay`
141
-
142
- ```jsx live
143
- <>
144
- <Text
145
- fontWeight="bold"
146
- fontSize={1}
147
- as="label"
148
- display="block"
149
- htmlFor="autocompleteInput-withoutOverlay"
150
- id="autocompleteLabel-withoutOverlay"
151
- >
152
- Pick a branch
153
- </Text>
154
- <Autocomplete>
155
- <Autocomplete.Input id="autocompleteInput-withoutOverlay" />
156
- <Autocomplete.Menu
157
- items={[
158
- {text: 'main', id: 0},
159
- {text: 'autocomplete-tests', id: 1},
160
- {text: 'a11y-improvements', id: 2},
161
- {text: 'button-bug-fixes', id: 3},
162
- {text: 'radio-input-component', id: 4},
163
- {text: 'release-1.0.0', id: 5},
164
- {text: 'text-input-implementation', id: 6},
165
- {text: 'visual-design-tweaks', id: 7}
166
- ]}
167
- selectedItemIds={[]}
168
- aria-labelledby="autocompleteLabel-withoutOverlay"
169
- />
170
- </Autocomplete>
171
- </>
172
- ```
173
-
174
- ## Autocomplete.Menu
175
-
176
- The `Autocomplete.Menu` component renders a list of selectable options in a non-modal dialog. The list is filtered and sorted to make it as easy as possible to find the option/s that a user is looking for.
177
-
178
- The `Autocomplete.Menu` component should be passed an `aria-labelledby` prop that matches the `id` prop of the `<label>` associated with the `Autocomplete.Input`
179
-
180
- ### Component Props
181
-
182
- <Props of={Autocomplete.Menu} />
183
-
184
- ### Customizing how menu items are rendered
185
-
186
- By default, menu items are just rendered as a single line of text. The list in the menu is rendered using the [Action List](/ActionList) component, so menu items can be rendered with all of the same options as Action List items.
187
- However, the `renderGroup`, `groupMetadata`, and `renderItem` props have not been implemented yet.
188
-
189
- #### Example: Render items using `ActionList.Item` props
190
-
191
- ```javascript live noinline
192
- function getColorCircle(color) {
193
- return function () {
194
- return (
195
- <Box
196
- bg={color}
197
- borderColor={color}
198
- width={14}
199
- height={14}
200
- borderRadius={10}
201
- margin="auto"
202
- borderWidth="1px"
203
- borderStyle="solid"
204
- />
205
- )
206
- }
207
- }
208
-
209
- const CustomRenderedItemExample = () => {
210
- const [tokens, setTokens] = React.useState([
211
- {text: 'enhancement', id: 1, fillColor: '#a2eeef'},
212
- {text: 'bug', id: 2, fillColor: '#d73a4a'},
213
- {text: 'good first issue', id: 3, fillColor: '#0cf478'}
214
- ])
215
- const selectedTokenIds = tokens.map(token => token.id)
216
- const [selectedItemIds, setSelectedItemIds] = React.useState(selectedTokenIds)
217
- const onTokenRemove = tokenId => {
218
- setTokens(tokens.filter(token => token.id !== tokenId))
219
- setSelectedItemIds(selectedItemIds.filter(id => id !== tokenId))
220
- }
221
- const onSelectedChange = newlySelectedItems => {
222
- if (!Array.isArray(newlySelectedItems)) {
223
- return
224
- }
225
-
226
- setSelectedItemIds(newlySelectedItems.map(item => item.id))
227
-
228
- if (newlySelectedItems.length < selectedItemIds.length) {
229
- const newlySelectedItemIds = newlySelectedItems.map(({id}) => id)
230
- const removedItemIds = selectedTokenIds.filter(id => !newlySelectedItemIds.includes(id))
231
-
232
- for (const removedItemId of removedItemIds) {
233
- onTokenRemove(removedItemId)
234
- }
235
-
236
- return
237
- }
238
-
239
- setTokens(newlySelectedItems.map(({id, text, metadata}) => ({id, text, fillColor: metadata.fillColor})))
240
- }
241
-
242
- return (
243
- <>
244
- <Text
245
- fontWeight="bold"
246
- fontSize={1}
247
- as="label"
248
- display="block"
249
- htmlFor="autocompleteInput-issueLabels"
250
- id="autocompleteLabel-issueLabels"
251
- >
252
- Pick labels
253
- </Text>
254
- <Autocomplete>
255
- <Autocomplete.Input
256
- as={TextInputWithTokens}
257
- tokens={tokens}
258
- tokenComponent={IssueLabelToken}
259
- onTokenRemove={onTokenRemove}
260
- id="autocompleteInput-issueLabels"
261
- />
262
- <Autocomplete.Overlay>
263
- <Autocomplete.Menu
264
- items={[
265
- {leadingVisual: getColorCircle('#a2eeef'), text: 'enhancement', id: 1, metadata: {fillColor: '#a2eeef'}},
266
- {leadingVisual: getColorCircle('#d73a4a'), text: 'bug', id: 2, metadata: {fillColor: '#d73a4a'}},
267
- {
268
- leadingVisual: getColorCircle('#0cf478'),
269
- text: 'good first issue',
270
- id: 3,
271
- metadata: {fillColor: '#0cf478'}
272
- },
273
- {leadingVisual: getColorCircle('#ffd78e'), text: 'design', id: 4, metadata: {fillColor: '#ffd78e'}},
274
- {leadingVisual: getColorCircle('#ff0000'), text: 'blocker', id: 5, metadata: {fillColor: '#ff0000'}},
275
- {leadingVisual: getColorCircle('#a4f287'), text: 'backend', id: 6, metadata: {fillColor: '#a4f287'}},
276
- {leadingVisual: getColorCircle('#8dc6fc'), text: 'frontend', id: 7, metadata: {fillColor: '#8dc6fc'}}
277
- ]}
278
- selectedItemIds={selectedItemIds}
279
- onSelectedChange={onSelectedChange}
280
- selectionVariant="multiple"
281
- aria-labelledby="autocompleteLabel-issueLabels"
282
- />
283
- </Autocomplete.Overlay>
284
- </Autocomplete>
285
- </>
286
- )
287
- }
288
-
289
- render(<CustomRenderedItemExample />)
290
- ```
291
-
292
- ### Sorting menu items
293
-
294
- Items can be displayed in any order that makes sense, but the `Autocomplete.Menu` component comes with a default sort behavior to make it easy to find selected items. The default behavior is to sort selected items to the top of the list after the menu has been closed.
295
-
296
- A function may be passed to the `sortOnCloseFn` prop if this default sorting logic is not helpful for your use case. The sort function will be only be called after the menu is closed so that items don't shift while users are trying to make a selection.
297
-
298
- #### Example: When the menu is re-opened, selected items get sorted to the end
299
-
300
- ```javascript live noinline
301
- const CustomSortAfterMenuClose = () => {
302
- const [selectedItemIds, setSelectedItemIds] = React.useState([])
303
- const isItemSelected = itemId => selectedItemIds.includes(itemId)
304
- const onSelectedChange = newlySelectedItems => {
305
- if (!Array.isArray(newlySelectedItems)) {
306
- return
307
- }
308
-
309
- setSelectedItemIds(newlySelectedItems.map(item => item.id))
310
- }
311
- const customSortFn = (itemIdA, itemIdB) =>
312
- isItemSelected(itemIdA) === isItemSelected(itemIdB) ? 0 : isItemSelected(itemIdA) ? 1 : -1
313
-
314
- return (
315
- <>
316
- <Text
317
- fontWeight="bold"
318
- fontSize={1}
319
- as="label"
320
- display="block"
321
- htmlFor="autocompleteInput-sortAfterClose"
322
- id="autocompleteLabel-sortAfterClose"
323
- >
324
- Pick branches
325
- </Text>
326
- <Autocomplete>
327
- <Autocomplete.Input id="autocompleteInput-sortAfterClose" />
328
- <Autocomplete.Overlay>
329
- <Autocomplete.Menu
330
- items={[
331
- {text: 'main', id: 0},
332
- {text: 'autocomplete-tests', id: 1},
333
- {text: 'a11y-improvements', id: 2},
334
- {text: 'button-bug-fixes', id: 3},
335
- {text: 'radio-input-component', id: 4},
336
- {text: 'release-1.0.0', id: 5},
337
- {text: 'text-input-implementation', id: 6},
338
- {text: 'visual-design-tweaks', id: 7}
339
- ]}
340
- selectedItemIds={selectedItemIds}
341
- aria-labelledby="autocompleteLabel-sortAfterClose"
342
- onSelectedChange={onSelectedChange}
343
- sortOnCloseFn={customSortFn}
344
- selectionVariant="multiple"
345
- />
346
- </Autocomplete.Overlay>
347
- </Autocomplete>
348
- </>
349
- )
350
- }
351
-
352
- render(<CustomSortAfterMenuClose />)
353
- ```
354
-
355
- ### Filtering items
356
-
357
- By default, menu items are filtered based on whether or not they match the value of the text input. The default filter is case-insensitive.
358
-
359
- A function may be passed to the `filterFn` prop if this default filtering behavior does not make sense for your use case.
360
-
361
- #### Example: Show any items that contain the input value
362
-
363
- ```javascript live noinline
364
- const CustomSearchFilter = () => {
365
- const [filterVal, setFilterVal] = React.useState('')
366
- const handleChange = event => {
367
- setFilterVal(event.currentTarget.value)
368
- }
369
- const customFilterFn = item => item.text.includes(filterVal)
370
-
371
- return (
372
- <>
373
- <Text
374
- fontWeight="bold"
375
- fontSize={1}
376
- as="label"
377
- display="block"
378
- htmlFor="autocompleteInput-customFilter"
379
- id="autocompleteLabel-customFilter"
380
- >
381
- Pick a branch
382
- </Text>
383
- <Autocomplete>
384
- <Autocomplete.Input id="autocompleteInput-customFilter" onChange={handleChange} />
385
- <Autocomplete.Overlay>
386
- <Autocomplete.Menu
387
- items={[
388
- {text: 'main', id: 0},
389
- {text: 'autocomplete-tests', id: 1},
390
- {text: 'a11y-improvements', id: 2},
391
- {text: 'button-bug-fixes', id: 3},
392
- {text: 'radio-input-component', id: 4},
393
- {text: 'release-1.0.0', id: 5},
394
- {text: 'text-input-implementation', id: 6},
395
- {text: 'visual-design-tweaks', id: 7}
396
- ]}
397
- selectedItemIds={[]}
398
- aria-labelledby="autocompleteLabel-customFilter"
399
- filterFn={customFilterFn}
400
- />
401
- </Autocomplete.Overlay>
402
- </Autocomplete>
403
- </>
404
- )
405
- }
406
-
407
- render(<CustomSearchFilter />)
408
- ```
409
-
410
- ### Rendering the menu without an `Autocomplete.Overlay`
411
-
412
- If a `Autocomplete.Menu` is rendered without an `Autocomplete.Overlay` inside of a scrollable container, the ref of the scrollable container must be passed to the `customScrollContainerRef` to ensure that highlighted items are always scrolled into view.
413
-
414
- #### Example: Rendered without `Autocomplete.Overlay` with a `customScrollContainerRef`
415
-
416
- ```javascript live noinline
417
- const InOverlayWithCustomScrollContainerRef = () => {
418
- const scrollContainerRef = React.useRef(null)
419
- const inputRef = React.useRef(null)
420
-
421
- const [isOpen, setIsOpen] = React.useState(false)
422
- const handleOpen = () => {
423
- setIsOpen(true)
424
- inputRef.current && inputRef.current.focus()
425
- }
426
-
427
- return (
428
- <AnchoredOverlay
429
- open={isOpen}
430
- onOpen={handleOpen}
431
- onClose={() => setIsOpen(false)}
432
- width="large"
433
- height="xsmall"
434
- focusTrapSettings={{initialFocusRef: inputRef}}
435
- side="inside-top"
436
- renderAnchor={props => <ButtonInvisible {...props}>Pick branches</ButtonInvisible>}
437
- >
438
- <Box
439
- as="label"
440
- display="block"
441
- htmlFor="autocompleteInput"
442
- id="autocompleteLabel"
443
- sx={{
444
- // visually hides this label for sighted users
445
- position: 'absolute',
446
- width: '1px',
447
- height: '1px',
448
- padding: '0',
449
- margin: '-1px',
450
- overflow: 'hidden',
451
- clip: 'rect(0, 0, 0, 0)',
452
- whiteSpace: 'nowrap',
453
- borderWidth: '0'
454
- }}
455
- >
456
- Pick branches
457
- </Box>
458
- <Autocomplete>
459
- <Box display="flex" flexDirection="column" height="100%">
460
- <Box
461
- paddingX="3"
462
- paddingY="1"
463
- borderWidth={0}
464
- borderBottomWidth={1}
465
- borderColor="border.default"
466
- borderStyle="solid"
467
- >
468
- <Autocomplete.Input
469
- block
470
- as={TextInput}
471
- ref={inputRef}
472
- id="autocompleteInput"
473
- sx={{
474
- display: 'flex',
475
- border: '0',
476
- padding: '0',
477
- boxShadow: 'none',
478
- ':focus-within': {
479
- border: '0',
480
- boxShadow: 'none'
481
- }
482
- }}
483
- />
484
- </Box>
485
- <Box overflow="auto" flexGrow={1} ref={scrollContainerRef}>
486
- <Autocomplete.Menu
487
- items={[
488
- {text: 'main', id: 0},
489
- {text: 'autocomplete-tests', id: 1},
490
- {text: 'a11y-improvements', id: 2},
491
- {text: 'button-bug-fixes', id: 3},
492
- {text: 'radio-input-component', id: 4},
493
- {text: 'release-1.0.0', id: 5},
494
- {text: 'text-input-implementation', id: 6},
495
- {text: 'visual-design-tweaks', id: 7}
496
- ]}
497
- selectedItemIds={[]}
498
- customScrollContainerRef={scrollContainerRef}
499
- aria-labelledby="autocompleteLabel"
500
- />
501
- </Box>
502
- </Box>
503
- </Autocomplete>
504
- </AnchoredOverlay>
505
- )
506
- }
507
-
508
- render(<InOverlayWithCustomScrollContainerRef />)
509
- ```
510
-
511
- ### More examples
512
-
513
- #### Select multiple values
514
-
515
- ```javascript live noinline
516
- const MultiSelect = () => {
517
- const items = [
518
- {text: 'main', id: 0},
519
- {text: 'autocomplete-tests', id: 1},
520
- {text: 'a11y-improvements', id: 22},
521
- {text: 'button-bug-fixes', id: 3},
522
- {text: 'radio-input-component', id: 4},
523
- {text: 'release-1.0.0', id: 5},
524
- {text: 'text-input-implementation', id: 6},
525
- {text: 'visual-design-tweaks', id: 7}
526
- ]
527
- const [selectedItemIds, setSelectedItemIds] = React.useState([])
528
- const onSelectedChange = newlySelectedItems => {
529
- if (!Array.isArray(newlySelectedItems)) {
530
- return
531
- }
532
-
533
- setSelectedItemIds(newlySelectedItems.map(item => item.id))
534
- }
535
-
536
- const getItemById = id => items.find(item => item.id === id)
537
-
538
- return (
539
- <Box display="flex" sx={{gap: '1em'}}>
540
- <div>
541
- <Box as="label" display="block" htmlFor="autocompleteInput" id="autocompleteLabel">
542
- Pick branches
543
- </Box>
544
- <Autocomplete>
545
- <Autocomplete.Input id="autocompleteInput" />
546
- <Autocomplete.Overlay>
547
- <Autocomplete.Menu
548
- items={items}
549
- selectedItemIds={selectedItemIds}
550
- aria-labelledby="autocompleteLabel"
551
- onSelectedChange={onSelectedChange}
552
- selectionVariant="multiple"
553
- />
554
- </Autocomplete.Overlay>
555
- </Autocomplete>
556
- </div>
557
- <div>
558
- <div>Selected items:</div>
559
- <Box as="ul" my={0}>
560
- {selectedItemIds.map(selectedItemId => (
561
- <li key={selectedItemId}>{getItemById(selectedItemId).text}</li>
562
- ))}
563
- </Box>
564
- </div>
565
- </Box>
566
- )
567
- }
568
-
569
- render(<MultiSelect />)
570
- ```
571
-
572
- #### Select multiple values - new values can be added
573
-
574
- ```javascript live noinline
575
- const MultiSelectAddNewItem = () => {
576
- const [selectedItemIds, setSelectedItemIds] = React.useState([])
577
- const onSelectedChange = newlySelectedItems => {
578
- if (!Array.isArray(newlySelectedItems)) {
579
- return
580
- }
581
-
582
- setSelectedItemIds(newlySelectedItems.map(item => item.id))
583
- }
584
-
585
- const [localItemsState, setLocalItemsState] = React.useState([
586
- {text: 'main', id: 0},
587
- {text: 'autocomplete-tests', id: 1},
588
- {text: 'a11y-improvements', id: 22},
589
- {text: 'button-bug-fixes', id: 3},
590
- {text: 'radio-input-component', id: 4},
591
- {text: 'release-1.0.0', id: 5},
592
- {text: 'text-input-implementation', id: 6},
593
- {text: 'visual-design-tweaks', id: 7}
594
- ])
595
- const getItemById = id => localItemsState.find(item => item.id === id)
596
- const [filterVal, setFilterVal] = React.useState('')
597
-
598
- const onItemSelect = item => {
599
- onSelectedChange([...selectedItemIds.map(id => localItemsState.find(selectedItem => selectedItem.id === id)), item])
600
-
601
- if (!localItemsState.some(localItem => localItem.id === item.id)) {
602
- setLocalItemsState([...localItemsState, item])
603
- }
604
- }
605
-
606
- const handleChange = event => {
607
- setFilterVal(event.currentTarget.value)
608
- }
609
-
610
- return (
611
- <Box display="flex" sx={{gap: '1em'}}>
612
- <div>
613
- <Box as="label" display="block" htmlFor="autocompleteInput" id="autocompleteLabel">
614
- Pick or add branches
615
- </Box>
616
- <Autocomplete>
617
- <Autocomplete.Input onChange={handleChange} id="autocompleteInput" />
618
- <Autocomplete.Overlay>
619
- <Autocomplete.Menu
620
- addNewItem={
621
- filterVal && !localItemsState.map(localItem => localItem.text).includes(filterVal)
622
- ? {
623
- text: `Add '${filterVal}'`,
624
- handleAddItem: item => {
625
- onItemSelect({
626
- ...item,
627
- text: filterVal,
628
- selected: true
629
- })
630
- setFilterVal('')
631
- }
632
- }
633
- : undefined
634
- }
635
- items={localItemsState}
636
- selectedItemIds={selectedItemIds}
637
- onSelectedChange={onSelectedChange}
638
- selectionVariant="multiple"
639
- aria-labelledby="autocompleteLabel"
640
- />
641
- </Autocomplete.Overlay>
642
- </Autocomplete>
643
- </div>
644
- <div>
645
- <div>Selected items:</div>
646
- <Box as="ul" my={0}>
647
- {selectedItemIds.map(selectedItemId => (
648
- <li key={selectedItemId}>{getItemById(selectedItemId).text}</li>
649
- ))}
650
- </Box>
651
- </div>
652
- </Box>
653
- )
654
- }
655
-
656
- render(<MultiSelectAddNewItem />)
657
- ```
@@ -1,33 +0,0 @@
1
- ---
2
- title: Avatar
3
- componentId: avatar
4
- source: https://github.com/primer/react/blob/main/src/Avatar.tsx
5
- ---
6
-
7
- import {Props} from '../src/props'
8
- import {Avatar} from '@primer/components'
9
-
10
- ```jsx live
11
- <Avatar src="https://avatars.githubusercontent.com/primer" />
12
- ```
13
-
14
- ## Props
15
-
16
- <Props of={Avatar} />
17
-
18
- ## Examples
19
-
20
- ### Square
21
-
22
- ```jsx live
23
- <Avatar square src="https://avatars.githubusercontent.com/primer" />
24
- ```
25
-
26
- ### AvatarPair
27
-
28
- ```jsx live
29
- <AvatarPair>
30
- <Avatar src="https://avatars.githubusercontent.com/github" />
31
- <Avatar src="https://avatars.githubusercontent.com/primer" />
32
- </AvatarPair>
33
- ```