@primer/components 31.2.1-rc.a088bdc0 → 32.0.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 (1169) hide show
  1. package/CHANGELOG.md +61 -1
  2. package/dist/browser.esm.js +289 -351
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +294 -356
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/Breadcrumbs.d.ts +8 -7
  7. package/lib/Breadcrumbs.js +7 -12
  8. package/lib/Breadcrumbs.jsx +3 -6
  9. package/lib/Button/Button.d.ts +2 -3
  10. package/lib/Button/Button.js +2 -6
  11. package/lib/Button/Button.jsx +1 -21
  12. package/lib/Button/ButtonBase.d.ts +5 -8
  13. package/lib/Button/ButtonBase.js +1 -5
  14. package/lib/Button/ButtonBase.jsx +0 -3
  15. package/lib/Button/ButtonClose.d.ts +2 -45
  16. package/lib/Button/ButtonClose.js +1 -1
  17. package/lib/Button/ButtonClose.jsx +0 -2
  18. package/lib/Button/ButtonDanger.d.ts +2 -3
  19. package/lib/Button/ButtonDanger.js +2 -6
  20. package/lib/Button/ButtonDanger.jsx +1 -21
  21. package/lib/Button/ButtonInvisible.d.ts +2 -3
  22. package/lib/Button/ButtonInvisible.js +2 -6
  23. package/lib/Button/ButtonInvisible.jsx +1 -21
  24. package/lib/Button/ButtonOutline.d.ts +2 -3
  25. package/lib/Button/ButtonOutline.js +2 -6
  26. package/lib/Button/ButtonOutline.jsx +1 -21
  27. package/lib/Button/ButtonPrimary.d.ts +2 -3
  28. package/lib/Button/ButtonPrimary.js +2 -6
  29. package/lib/Button/ButtonPrimary.jsx +1 -21
  30. package/lib/Button/ButtonTableList.d.ts +1 -2
  31. package/lib/Button/ButtonTableList.js +1 -1
  32. package/lib/Button/ButtonTableList.jsx +0 -3
  33. package/lib/CircleBadge.d.ts +4 -5
  34. package/lib/CircleBadge.js +1 -1
  35. package/lib/CircleBadge.jsx +0 -1
  36. package/lib/CounterLabel.d.ts +1 -2
  37. package/lib/CounterLabel.js +1 -1
  38. package/lib/CounterLabel.jsx +0 -1
  39. package/lib/Dialog/Dialog.d.ts +5 -9
  40. package/lib/Dialog/Dialog.js +17 -11
  41. package/lib/Dialog/Dialog.jsx +13 -7
  42. package/lib/Dialog.d.ts +3 -4
  43. package/lib/Dialog.js +1 -1
  44. package/lib/Dialog.jsx +0 -2
  45. package/lib/Dropdown.d.ts +6 -95
  46. package/lib/Dropdown.js +3 -3
  47. package/lib/Dropdown.jsx +0 -3
  48. package/lib/DropdownMenu/DropdownButton.d.ts +2 -46
  49. package/lib/DropdownMenu/DropdownButton.js +3 -1
  50. package/lib/DropdownMenu/DropdownButton.jsx +1 -1
  51. package/lib/FilterList.d.ts +264 -303
  52. package/lib/FilterList.js +2 -6
  53. package/lib/FilterList.jsx +2 -6
  54. package/lib/FilteredSearch.d.ts +1 -2
  55. package/lib/FilteredSearch.js +1 -1
  56. package/lib/FilteredSearch.jsx +0 -1
  57. package/lib/Flash.d.ts +1 -2
  58. package/lib/Flash.js +1 -1
  59. package/lib/Flash.jsx +0 -1
  60. package/lib/FormGroup.d.ts +4 -5
  61. package/lib/FormGroup.js +2 -2
  62. package/lib/FormGroup.jsx +0 -3
  63. package/lib/Header.d.ts +6 -7
  64. package/lib/Header.js +4 -4
  65. package/lib/Header.jsx +0 -7
  66. package/lib/Label.d.ts +1 -2
  67. package/lib/Label.js +2 -3
  68. package/lib/Label.jsx +1 -3
  69. package/lib/LabelGroup.d.ts +1 -2
  70. package/lib/LabelGroup.js +1 -1
  71. package/lib/LabelGroup.jsx +0 -1
  72. package/lib/Link.d.ts +1 -2
  73. package/lib/Link.js +1 -1
  74. package/lib/Link.jsx +0 -2
  75. package/lib/Overlay.d.ts +11 -10
  76. package/lib/Overlay.js +3 -4
  77. package/lib/Overlay.jsx +1 -3
  78. package/lib/Pagehead.d.ts +1 -2
  79. package/lib/Pagehead.js +1 -1
  80. package/lib/Pagehead.jsx +0 -1
  81. package/lib/Pagination/Pagination.js +1 -1
  82. package/lib/Pagination/Pagination.jsx +0 -2
  83. package/lib/Popover.d.ts +4 -5
  84. package/lib/Popover.js +4 -5
  85. package/lib/Popover.jsx +1 -9
  86. package/lib/SelectMenu/SelectMenu.d.ts +14 -182
  87. package/lib/SelectMenu/SelectMenu.js +1 -3
  88. package/lib/SelectMenu/SelectMenu.jsx +0 -2
  89. package/lib/SelectMenu/SelectMenuDivider.d.ts +1 -2
  90. package/lib/SelectMenu/SelectMenuDivider.js +1 -1
  91. package/lib/SelectMenu/SelectMenuDivider.jsx +0 -1
  92. package/lib/SelectMenu/SelectMenuFilter.js +1 -1
  93. package/lib/SelectMenu/SelectMenuFilter.jsx +0 -1
  94. package/lib/SelectMenu/SelectMenuFooter.d.ts +1 -2
  95. package/lib/SelectMenu/SelectMenuFooter.js +1 -1
  96. package/lib/SelectMenu/SelectMenuFooter.jsx +0 -1
  97. package/lib/SelectMenu/SelectMenuHeader.d.ts +1 -2
  98. package/lib/SelectMenu/SelectMenuHeader.js +1 -1
  99. package/lib/SelectMenu/SelectMenuHeader.jsx +0 -2
  100. package/lib/SelectMenu/SelectMenuItem.d.ts +2 -3
  101. package/lib/SelectMenu/SelectMenuItem.js +1 -1
  102. package/lib/SelectMenu/SelectMenuItem.jsx +0 -1
  103. package/lib/SelectMenu/SelectMenuList.d.ts +1 -2
  104. package/lib/SelectMenu/SelectMenuList.js +1 -1
  105. package/lib/SelectMenu/SelectMenuList.jsx +0 -1
  106. package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
  107. package/lib/SelectMenu/SelectMenuLoadingAnimation.js +3 -1
  108. package/lib/SelectMenu/SelectMenuLoadingAnimation.jsx +2 -1
  109. package/lib/SelectMenu/SelectMenuModal.d.ts +2 -3
  110. package/lib/SelectMenu/SelectMenuModal.js +1 -1
  111. package/lib/SelectMenu/SelectMenuModal.jsx +0 -1
  112. package/lib/SelectMenu/SelectMenuTab.d.ts +1 -2
  113. package/lib/SelectMenu/SelectMenuTab.js +1 -1
  114. package/lib/SelectMenu/SelectMenuTab.jsx +0 -1
  115. package/lib/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
  116. package/lib/SelectMenu/SelectMenuTabPanel.js +1 -1
  117. package/lib/SelectMenu/SelectMenuTabPanel.jsx +0 -1
  118. package/lib/SelectMenu/SelectMenuTabs.d.ts +1 -2
  119. package/lib/SelectMenu/SelectMenuTabs.js +1 -1
  120. package/lib/SelectMenu/SelectMenuTabs.jsx +0 -1
  121. package/lib/SideNav.d.ts +11 -8
  122. package/lib/SideNav.js +8 -15
  123. package/lib/SideNav.jsx +2 -6
  124. package/lib/StateLabel.d.ts +1 -2
  125. package/lib/StateLabel.js +6 -5
  126. package/lib/StateLabel.jsx +1 -2
  127. package/lib/StyledOcticon.d.ts +1 -2
  128. package/lib/StyledOcticon.js +1 -3
  129. package/lib/StyledOcticon.jsx +0 -2
  130. package/lib/SubNav.d.ts +5 -11
  131. package/lib/SubNav.js +7 -12
  132. package/lib/SubNav.jsx +4 -7
  133. package/lib/TabNav.d.ts +3 -4
  134. package/lib/TabNav.js +2 -2
  135. package/lib/TabNav.jsx +0 -2
  136. package/lib/Timeline.d.ts +19 -393
  137. package/lib/Timeline.js +16 -13
  138. package/lib/Timeline.jsx +9 -10
  139. package/lib/Tooltip.d.ts +1 -2
  140. package/lib/Tooltip.js +1 -1
  141. package/lib/Tooltip.jsx +1 -1
  142. package/lib/Truncate.d.ts +1 -2
  143. package/lib/Truncate.js +1 -3
  144. package/lib/Truncate.jsx +0 -3
  145. package/lib/UnderlineNav.d.ts +2 -3
  146. package/lib/UnderlineNav.js +2 -2
  147. package/lib/UnderlineNav.jsx +0 -2
  148. package/lib-esm/Breadcrumbs.d.ts +8 -7
  149. package/lib-esm/Breadcrumbs.js +8 -13
  150. package/lib-esm/Button/Button.d.ts +2 -3
  151. package/lib-esm/Button/Button.js +2 -2
  152. package/lib-esm/Button/ButtonBase.d.ts +5 -8
  153. package/lib-esm/Button/ButtonBase.js +1 -3
  154. package/lib-esm/Button/ButtonClose.d.ts +2 -45
  155. package/lib-esm/Button/ButtonClose.js +2 -2
  156. package/lib-esm/Button/ButtonDanger.d.ts +2 -3
  157. package/lib-esm/Button/ButtonDanger.js +2 -2
  158. package/lib-esm/Button/ButtonInvisible.d.ts +2 -3
  159. package/lib-esm/Button/ButtonInvisible.js +2 -2
  160. package/lib-esm/Button/ButtonOutline.d.ts +2 -3
  161. package/lib-esm/Button/ButtonOutline.js +2 -2
  162. package/lib-esm/Button/ButtonPrimary.d.ts +2 -3
  163. package/lib-esm/Button/ButtonPrimary.js +2 -2
  164. package/lib-esm/Button/ButtonTableList.d.ts +1 -2
  165. package/lib-esm/Button/ButtonTableList.js +2 -2
  166. package/lib-esm/CircleBadge.d.ts +4 -5
  167. package/lib-esm/CircleBadge.js +2 -2
  168. package/lib-esm/CounterLabel.d.ts +1 -2
  169. package/lib-esm/CounterLabel.js +2 -2
  170. package/lib-esm/Dialog/Dialog.d.ts +5 -9
  171. package/lib-esm/Dialog/Dialog.js +12 -12
  172. package/lib-esm/Dialog.d.ts +3 -4
  173. package/lib-esm/Dialog.js +2 -2
  174. package/lib-esm/Dropdown.d.ts +6 -95
  175. package/lib-esm/Dropdown.js +4 -4
  176. package/lib-esm/DropdownMenu/DropdownButton.d.ts +2 -46
  177. package/lib-esm/DropdownMenu/DropdownButton.js +3 -1
  178. package/lib-esm/FilterList.d.ts +264 -303
  179. package/lib-esm/FilterList.js +3 -7
  180. package/lib-esm/FilteredSearch.d.ts +1 -2
  181. package/lib-esm/FilteredSearch.js +2 -2
  182. package/lib-esm/Flash.d.ts +1 -2
  183. package/lib-esm/Flash.js +2 -2
  184. package/lib-esm/FormGroup.d.ts +4 -5
  185. package/lib-esm/FormGroup.js +3 -3
  186. package/lib-esm/Header.d.ts +6 -7
  187. package/lib-esm/Header.js +5 -5
  188. package/lib-esm/Label.d.ts +1 -2
  189. package/lib-esm/Label.js +3 -4
  190. package/lib-esm/LabelGroup.d.ts +1 -2
  191. package/lib-esm/LabelGroup.js +2 -2
  192. package/lib-esm/Link.d.ts +1 -2
  193. package/lib-esm/Link.js +2 -2
  194. package/lib-esm/Overlay.d.ts +11 -10
  195. package/lib-esm/Overlay.js +2 -3
  196. package/lib-esm/Pagehead.d.ts +1 -2
  197. package/lib-esm/Pagehead.js +2 -2
  198. package/lib-esm/Pagination/Pagination.js +2 -2
  199. package/lib-esm/Popover.d.ts +4 -5
  200. package/lib-esm/Popover.js +4 -5
  201. package/lib-esm/SelectMenu/SelectMenu.d.ts +14 -182
  202. package/lib-esm/SelectMenu/SelectMenu.js +1 -2
  203. package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +1 -2
  204. package/lib-esm/SelectMenu/SelectMenuDivider.js +2 -2
  205. package/lib-esm/SelectMenu/SelectMenuFilter.js +2 -2
  206. package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +1 -2
  207. package/lib-esm/SelectMenu/SelectMenuFooter.js +2 -2
  208. package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +1 -2
  209. package/lib-esm/SelectMenu/SelectMenuHeader.js +2 -2
  210. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +2 -3
  211. package/lib-esm/SelectMenu/SelectMenuItem.js +2 -2
  212. package/lib-esm/SelectMenu/SelectMenuList.d.ts +1 -2
  213. package/lib-esm/SelectMenu/SelectMenuList.js +2 -2
  214. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
  215. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +3 -2
  216. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +2 -3
  217. package/lib-esm/SelectMenu/SelectMenuModal.js +2 -2
  218. package/lib-esm/SelectMenu/SelectMenuTab.d.ts +1 -2
  219. package/lib-esm/SelectMenu/SelectMenuTab.js +2 -2
  220. package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
  221. package/lib-esm/SelectMenu/SelectMenuTabPanel.js +2 -2
  222. package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +1 -2
  223. package/lib-esm/SelectMenu/SelectMenuTabs.js +2 -2
  224. package/lib-esm/SideNav.d.ts +11 -8
  225. package/lib-esm/SideNav.js +8 -16
  226. package/lib-esm/StateLabel.d.ts +1 -2
  227. package/lib-esm/StateLabel.js +7 -6
  228. package/lib-esm/StyledOcticon.d.ts +1 -2
  229. package/lib-esm/StyledOcticon.js +1 -2
  230. package/lib-esm/SubNav.d.ts +5 -11
  231. package/lib-esm/SubNav.js +8 -13
  232. package/lib-esm/TabNav.d.ts +3 -4
  233. package/lib-esm/TabNav.js +3 -3
  234. package/lib-esm/Timeline.d.ts +19 -393
  235. package/lib-esm/Timeline.js +12 -13
  236. package/lib-esm/Tooltip.d.ts +1 -2
  237. package/lib-esm/Tooltip.js +2 -2
  238. package/lib-esm/Truncate.d.ts +1 -2
  239. package/lib-esm/Truncate.js +1 -2
  240. package/lib-esm/UnderlineNav.d.ts +2 -3
  241. package/lib-esm/UnderlineNav.js +3 -3
  242. package/package.json +3 -3
  243. package/.changeset/README.md +0 -8
  244. package/.changeset/config.json +0 -10
  245. package/.devcontainer/devcontainer.json +0 -8
  246. package/.eslintrc.json +0 -137
  247. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  248. package/.github/ISSUE_TEMPLATE/new_component_proposal_template.md +0 -41
  249. package/.github/dependabot.yml +0 -18
  250. package/.github/pull_request_template.md +0 -18
  251. package/.github/workflows/check_for_changeset.yml +0 -25
  252. package/.github/workflows/ci.yml +0 -34
  253. package/.github/workflows/deploy_preview.yml +0 -47
  254. package/.github/workflows/deploy_production.yml +0 -70
  255. package/.github/workflows/release.yml +0 -36
  256. package/.github/workflows/release_canary.yml +0 -72
  257. package/.github/workflows/release_candidate.yml +0 -60
  258. package/.github/workflows/size.yml +0 -13
  259. package/.github/workflows/stale.yml +0 -26
  260. package/.gitignore +0 -10
  261. package/.npmrc +0 -4
  262. package/.nvmrc +0 -1
  263. package/.storybook/main.js +0 -9
  264. package/.storybook/preview.js +0 -117
  265. package/.vscode/launch.json +0 -21
  266. package/.vscode/settings.json +0 -13
  267. package/@types/@styled-system/index.d.ts +0 -0
  268. package/@types/@styled-system/prop-types/index.d.ts +0 -1
  269. package/@types/@styled-system/props/index.d.ts +0 -1
  270. package/@types/jest-styled-components/index.d.ts +0 -1
  271. package/CODEOWNERS +0 -2
  272. package/babel-defines.js +0 -13
  273. package/babel.config.js +0 -39
  274. package/contributor-docs/CODE_OF_CONDUCT.md +0 -76
  275. package/contributor-docs/CONTRIBUTING.md +0 -274
  276. package/contributor-docs/adrs/adr-001-typescript.md +0 -23
  277. package/contributor-docs/adrs/adr-002-behavior-isolation.md +0 -108
  278. package/contributor-docs/adrs/adr-003-prop-norms.md +0 -72
  279. package/contributor-docs/behaviors.md +0 -132
  280. package/contributor-docs/component-contents-api-patterns.md +0 -316
  281. package/contributor-docs/principles.md +0 -39
  282. package/docs/.eslintrc +0 -0
  283. package/docs/.gitignore +0 -91
  284. package/docs/components/PropsList.js +0 -5
  285. package/docs/components/State.js +0 -9
  286. package/docs/components/constants.js +0 -34
  287. package/docs/components/index.js +0 -2
  288. package/docs/content/ActionList.mdx +0 -99
  289. package/docs/content/ActionList2.mdx +0 -359
  290. package/docs/content/ActionMenu.mdx +0 -80
  291. package/docs/content/AnchoredOverlay.mdx +0 -37
  292. package/docs/content/Autocomplete.mdx +0 -657
  293. package/docs/content/Avatar.mdx +0 -33
  294. package/docs/content/AvatarStack.mdx +0 -37
  295. package/docs/content/BorderBox.md +0 -46
  296. package/docs/content/Box.mdx +0 -96
  297. package/docs/content/BranchName.md +0 -18
  298. package/docs/content/Breadcrumbs.md +0 -52
  299. package/docs/content/Buttons.md +0 -56
  300. package/docs/content/CircleBadge.md +0 -45
  301. package/docs/content/CircleOcticon.md +0 -18
  302. package/docs/content/CounterLabel.md +0 -32
  303. package/docs/content/Details.md +0 -105
  304. package/docs/content/Dialog.md +0 -108
  305. package/docs/content/Dialog2.mdx +0 -179
  306. package/docs/content/Dropdown.md +0 -72
  307. package/docs/content/DropdownMenu.mdx +0 -49
  308. package/docs/content/FilterList.md +0 -44
  309. package/docs/content/FilteredSearch.md +0 -39
  310. package/docs/content/Flash.md +0 -44
  311. package/docs/content/Flex.md +0 -58
  312. package/docs/content/FormGroup.md +0 -46
  313. package/docs/content/Grid.md +0 -59
  314. package/docs/content/Header.md +0 -79
  315. package/docs/content/Heading.md +0 -22
  316. package/docs/content/Label.md +0 -42
  317. package/docs/content/LabelGroup.md +0 -31
  318. package/docs/content/Link.md +0 -37
  319. package/docs/content/Overlay.mdx +0 -94
  320. package/docs/content/Pagehead.md +0 -27
  321. package/docs/content/Pagination.md +0 -187
  322. package/docs/content/PointerBox.md +0 -81
  323. package/docs/content/Popover.md +0 -137
  324. package/docs/content/Portal.mdx +0 -78
  325. package/docs/content/Position.md +0 -100
  326. package/docs/content/ProgressBar.mdx +0 -29
  327. package/docs/content/SelectMenu.md +0 -435
  328. package/docs/content/SelectPanel.mdx +0 -67
  329. package/docs/content/SideNav.md +0 -179
  330. package/docs/content/Spinner.mdx +0 -32
  331. package/docs/content/StateLabel.md +0 -36
  332. package/docs/content/StyledOcticon.md +0 -36
  333. package/docs/content/SubNav.md +0 -102
  334. package/docs/content/TabNav.md +0 -50
  335. package/docs/content/Text.md +0 -31
  336. package/docs/content/TextInput.md +0 -34
  337. package/docs/content/TextInputTokens.mdx +0 -89
  338. package/docs/content/TextInputWithTokens.mdx +0 -211
  339. package/docs/content/Timeline.md +0 -138
  340. package/docs/content/Token.mdx +0 -381
  341. package/docs/content/Tooltip.md +0 -41
  342. package/docs/content/Truncate.md +0 -64
  343. package/docs/content/UnderlineNav.md +0 -53
  344. package/docs/content/anchoredPosition.mdx +0 -163
  345. package/docs/content/core-concepts.md +0 -70
  346. package/docs/content/focusTrap.mdx +0 -103
  347. package/docs/content/focusZone.mdx +0 -145
  348. package/docs/content/getting-started.md +0 -138
  349. package/docs/content/index.md +0 -33
  350. package/docs/content/linting.md +0 -35
  351. package/docs/content/overriding-styles.mdx +0 -82
  352. package/docs/content/philosophy.md +0 -23
  353. package/docs/content/primer-theme.md +0 -89
  354. package/docs/content/ssr.mdx +0 -43
  355. package/docs/content/system-props.mdx +0 -37
  356. package/docs/content/theme-reference.md +0 -16
  357. package/docs/content/theming.md +0 -272
  358. package/docs/content/useOnEscapePress.mdx +0 -56
  359. package/docs/content/useOnOutsideClick.mdx +0 -57
  360. package/docs/content/useOpenAndCloseFocus.mdx +0 -49
  361. package/docs/content/useOverlay.mdx +0 -62
  362. package/docs/content/useSafeTimeout.mdx +0 -32
  363. package/docs/gatsby-config.js +0 -30
  364. package/docs/gatsby-node.js +0 -101
  365. package/docs/package-lock.json +0 -20756
  366. package/docs/package.json +0 -36
  367. package/docs/src/@primer/gatsby-theme-doctocat/components/hero.js +0 -21
  368. package/docs/src/@primer/gatsby-theme-doctocat/components/live-preview-wrapper.js +0 -41
  369. package/docs/src/@primer/gatsby-theme-doctocat/live-code-scope.js +0 -73
  370. package/docs/src/@primer/gatsby-theme-doctocat/nav.yml +0 -133
  371. package/docs/src/@primer/gatsby-theme-doctocat/primer-components-hero.svg +0 -1411
  372. package/docs/src/component-checklist.js +0 -81
  373. package/docs/src/props.js +0 -77
  374. package/jest.config.js +0 -13
  375. package/lib/__tests__/ActionList.test.d.ts +0 -1
  376. package/lib/__tests__/ActionList.test.js +0 -69
  377. package/lib/__tests__/ActionList.test.jsx +0 -49
  378. package/lib/__tests__/ActionList.types.test.d.ts +0 -6
  379. package/lib/__tests__/ActionList.types.test.js +0 -69
  380. package/lib/__tests__/ActionList.types.test.jsx +0 -45
  381. package/lib/__tests__/ActionList2.test.d.ts +0 -1
  382. package/lib/__tests__/ActionList2.test.js +0 -53
  383. package/lib/__tests__/ActionList2.test.jsx +0 -46
  384. package/lib/__tests__/ActionMenu.test.d.ts +0 -1
  385. package/lib/__tests__/ActionMenu.test.js +0 -151
  386. package/lib/__tests__/ActionMenu.test.jsx +0 -124
  387. package/lib/__tests__/AnchoredOverlay.test.d.ts +0 -1
  388. package/lib/__tests__/AnchoredOverlay.test.js +0 -162
  389. package/lib/__tests__/AnchoredOverlay.test.jsx +0 -121
  390. package/lib/__tests__/Autocomplete.test.d.ts +0 -1
  391. package/lib/__tests__/Autocomplete.test.js +0 -528
  392. package/lib/__tests__/Autocomplete.test.jsx +0 -299
  393. package/lib/__tests__/Avatar.test.d.ts +0 -1
  394. package/lib/__tests__/Avatar.test.js +0 -67
  395. package/lib/__tests__/Avatar.test.jsx +0 -42
  396. package/lib/__tests__/AvatarStack.test.d.ts +0 -1
  397. package/lib/__tests__/AvatarStack.test.js +0 -71
  398. package/lib/__tests__/AvatarStack.test.jsx +0 -43
  399. package/lib/__tests__/BorderBox.test.d.ts +0 -1
  400. package/lib/__tests__/BorderBox.test.js +0 -58
  401. package/lib/__tests__/BorderBox.test.jsx +0 -36
  402. package/lib/__tests__/Box.test.d.ts +0 -1
  403. package/lib/__tests__/Box.test.js +0 -78
  404. package/lib/__tests__/Box.test.jsx +0 -41
  405. package/lib/__tests__/BranchName.test.d.ts +0 -1
  406. package/lib/__tests__/BranchName.test.js +0 -36
  407. package/lib/__tests__/BranchName.test.jsx +0 -27
  408. package/lib/__tests__/Breadcrumbs.test.d.ts +0 -1
  409. package/lib/__tests__/Breadcrumbs.test.js +0 -37
  410. package/lib/__tests__/Breadcrumbs.test.jsx +0 -28
  411. package/lib/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  412. package/lib/__tests__/BreadcrumbsItem.test.js +0 -49
  413. package/lib/__tests__/BreadcrumbsItem.test.jsx +0 -31
  414. package/lib/__tests__/Button.test.d.ts +0 -1
  415. package/lib/__tests__/Button.test.js +0 -143
  416. package/lib/__tests__/Button.test.jsx +0 -100
  417. package/lib/__tests__/Caret.test.d.ts +0 -1
  418. package/lib/__tests__/Caret.test.js +0 -52
  419. package/lib/__tests__/Caret.test.jsx +0 -37
  420. package/lib/__tests__/CircleBadge.test.d.ts +0 -1
  421. package/lib/__tests__/CircleBadge.test.js +0 -83
  422. package/lib/__tests__/CircleBadge.test.jsx +0 -55
  423. package/lib/__tests__/CircleOcticon.test.d.ts +0 -1
  424. package/lib/__tests__/CircleOcticon.test.js +0 -71
  425. package/lib/__tests__/CircleOcticon.test.jsx +0 -45
  426. package/lib/__tests__/ConfirmationDialog.test.d.ts +0 -1
  427. package/lib/__tests__/ConfirmationDialog.test.js +0 -134
  428. package/lib/__tests__/ConfirmationDialog.test.jsx +0 -119
  429. package/lib/__tests__/CounterLabel.test.d.ts +0 -1
  430. package/lib/__tests__/CounterLabel.test.js +0 -58
  431. package/lib/__tests__/CounterLabel.test.jsx +0 -36
  432. package/lib/__tests__/Details.test.d.ts +0 -1
  433. package/lib/__tests__/Details.test.js +0 -117
  434. package/lib/__tests__/Details.test.jsx +0 -85
  435. package/lib/__tests__/Dialog.test.d.ts +0 -1
  436. package/lib/__tests__/Dialog.test.js +0 -184
  437. package/lib/__tests__/Dialog.test.jsx +0 -139
  438. package/lib/__tests__/Dropdown.test.d.ts +0 -1
  439. package/lib/__tests__/Dropdown.test.js +0 -63
  440. package/lib/__tests__/Dropdown.test.jsx +0 -49
  441. package/lib/__tests__/DropdownMenu.test.d.ts +0 -1
  442. package/lib/__tests__/DropdownMenu.test.js +0 -150
  443. package/lib/__tests__/DropdownMenu.test.jsx +0 -119
  444. package/lib/__tests__/FilterList.test.d.ts +0 -1
  445. package/lib/__tests__/FilterList.test.js +0 -36
  446. package/lib/__tests__/FilterList.test.jsx +0 -27
  447. package/lib/__tests__/FilterListItem.test.d.ts +0 -1
  448. package/lib/__tests__/FilterListItem.test.js +0 -46
  449. package/lib/__tests__/FilterListItem.test.jsx +0 -31
  450. package/lib/__tests__/FilteredSearch.test.d.ts +0 -1
  451. package/lib/__tests__/FilteredSearch.test.js +0 -36
  452. package/lib/__tests__/FilteredSearch.test.jsx +0 -27
  453. package/lib/__tests__/Flash.test.d.ts +0 -1
  454. package/lib/__tests__/Flash.test.js +0 -62
  455. package/lib/__tests__/Flash.test.jsx +0 -36
  456. package/lib/__tests__/Flex.test.d.ts +0 -1
  457. package/lib/__tests__/Flex.test.js +0 -74
  458. package/lib/__tests__/Flex.test.jsx +0 -51
  459. package/lib/__tests__/FormGroup.test.d.ts +0 -1
  460. package/lib/__tests__/FormGroup.test.js +0 -54
  461. package/lib/__tests__/FormGroup.test.jsx +0 -36
  462. package/lib/__tests__/Grid.test.d.ts +0 -1
  463. package/lib/__tests__/Grid.test.js +0 -104
  464. package/lib/__tests__/Grid.test.jsx +0 -69
  465. package/lib/__tests__/Header.test.d.ts +0 -1
  466. package/lib/__tests__/Header.test.js +0 -58
  467. package/lib/__tests__/Header.test.jsx +0 -45
  468. package/lib/__tests__/Heading.test.d.ts +0 -1
  469. package/lib/__tests__/Heading.test.js +0 -109
  470. package/lib/__tests__/Heading.test.jsx +0 -71
  471. package/lib/__tests__/KeyPaths.types.test.d.ts +0 -11
  472. package/lib/__tests__/KeyPaths.types.test.js +0 -7
  473. package/lib/__tests__/Label.test.d.ts +0 -1
  474. package/lib/__tests__/Label.test.js +0 -46
  475. package/lib/__tests__/Label.test.jsx +0 -33
  476. package/lib/__tests__/LabelGroup.test.d.ts +0 -1
  477. package/lib/__tests__/LabelGroup.test.js +0 -38
  478. package/lib/__tests__/LabelGroup.test.jsx +0 -29
  479. package/lib/__tests__/Link.test.d.ts +0 -1
  480. package/lib/__tests__/Link.test.js +0 -70
  481. package/lib/__tests__/Link.test.jsx +0 -43
  482. package/lib/__tests__/Merge.types.test.d.ts +0 -30
  483. package/lib/__tests__/Merge.types.test.js +0 -21
  484. package/lib/__tests__/NewButton.test.d.ts +0 -1
  485. package/lib/__tests__/NewButton.test.js +0 -95
  486. package/lib/__tests__/NewButton.test.jsx +0 -61
  487. package/lib/__tests__/Overlay.test.d.ts +0 -1
  488. package/lib/__tests__/Overlay.test.js +0 -145
  489. package/lib/__tests__/Overlay.test.jsx +0 -105
  490. package/lib/__tests__/Pagehead.test.d.ts +0 -1
  491. package/lib/__tests__/Pagehead.test.js +0 -37
  492. package/lib/__tests__/Pagehead.test.jsx +0 -25
  493. package/lib/__tests__/Pagination/Pagination.test.d.ts +0 -1
  494. package/lib/__tests__/Pagination/Pagination.test.js +0 -47
  495. package/lib/__tests__/Pagination/Pagination.test.jsx +0 -32
  496. package/lib/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  497. package/lib/__tests__/Pagination/PaginationModel.test.js +0 -186
  498. package/lib/__tests__/Pagination/PaginationModel.test.jsx +0 -118
  499. package/lib/__tests__/PointerBox.test.d.ts +0 -1
  500. package/lib/__tests__/PointerBox.test.js +0 -46
  501. package/lib/__tests__/PointerBox.test.jsx +0 -33
  502. package/lib/__tests__/Popover.test.d.ts +0 -1
  503. package/lib/__tests__/Popover.test.js +0 -66
  504. package/lib/__tests__/Popover.test.jsx +0 -58
  505. package/lib/__tests__/Portal.test.d.ts +0 -1
  506. package/lib/__tests__/Portal.test.js +0 -124
  507. package/lib/__tests__/Portal.test.jsx +0 -102
  508. package/lib/__tests__/Position.test.d.ts +0 -1
  509. package/lib/__tests__/Position.test.js +0 -143
  510. package/lib/__tests__/Position.test.jsx +0 -96
  511. package/lib/__tests__/ProgressBar.test.d.ts +0 -1
  512. package/lib/__tests__/ProgressBar.test.js +0 -68
  513. package/lib/__tests__/ProgressBar.test.jsx +0 -38
  514. package/lib/__tests__/SelectMenu.test.d.ts +0 -1
  515. package/lib/__tests__/SelectMenu.test.js +0 -155
  516. package/lib/__tests__/SelectMenu.test.jsx +0 -120
  517. package/lib/__tests__/SelectPanel.test.d.ts +0 -1
  518. package/lib/__tests__/SelectPanel.test.js +0 -80
  519. package/lib/__tests__/SelectPanel.test.jsx +0 -48
  520. package/lib/__tests__/SideNav.test.d.ts +0 -1
  521. package/lib/__tests__/SideNav.test.js +0 -71
  522. package/lib/__tests__/SideNav.test.jsx +0 -55
  523. package/lib/__tests__/Spinner.test.d.ts +0 -1
  524. package/lib/__tests__/Spinner.test.js +0 -53
  525. package/lib/__tests__/Spinner.test.jsx +0 -41
  526. package/lib/__tests__/StateLabel.test.d.ts +0 -1
  527. package/lib/__tests__/StateLabel.test.js +0 -71
  528. package/lib/__tests__/StateLabel.test.jsx +0 -46
  529. package/lib/__tests__/StyledOcticon.test.d.ts +0 -1
  530. package/lib/__tests__/StyledOcticon.test.js +0 -40
  531. package/lib/__tests__/StyledOcticon.test.jsx +0 -28
  532. package/lib/__tests__/SubNav.test.d.ts +0 -1
  533. package/lib/__tests__/SubNav.test.js +0 -62
  534. package/lib/__tests__/SubNav.test.jsx +0 -47
  535. package/lib/__tests__/SubNavLink.test.d.ts +0 -1
  536. package/lib/__tests__/SubNavLink.test.js +0 -49
  537. package/lib/__tests__/SubNavLink.test.jsx +0 -31
  538. package/lib/__tests__/TabNav.test.d.ts +0 -1
  539. package/lib/__tests__/TabNav.test.js +0 -49
  540. package/lib/__tests__/TabNav.test.jsx +0 -32
  541. package/lib/__tests__/Text.test.d.ts +0 -1
  542. package/lib/__tests__/Text.test.js +0 -105
  543. package/lib/__tests__/Text.test.jsx +0 -71
  544. package/lib/__tests__/TextInput.test.d.ts +0 -1
  545. package/lib/__tests__/TextInput.test.js +0 -78
  546. package/lib/__tests__/TextInput.test.jsx +0 -45
  547. package/lib/__tests__/TextInputWithTokens.test.d.ts +0 -1
  548. package/lib/__tests__/TextInputWithTokens.test.js +0 -572
  549. package/lib/__tests__/TextInputWithTokens.test.jsx +0 -302
  550. package/lib/__tests__/ThemeProvider.test.d.ts +0 -1
  551. package/lib/__tests__/ThemeProvider.test.js +0 -444
  552. package/lib/__tests__/ThemeProvider.test.jsx +0 -314
  553. package/lib/__tests__/Timeline.test.d.ts +0 -1
  554. package/lib/__tests__/Timeline.test.js +0 -75
  555. package/lib/__tests__/Timeline.test.jsx +0 -51
  556. package/lib/__tests__/Token.test.d.ts +0 -1
  557. package/lib/__tests__/Token.test.js +0 -180
  558. package/lib/__tests__/Token.test.jsx +0 -93
  559. package/lib/__tests__/Tooltip.test.d.ts +0 -1
  560. package/lib/__tests__/Tooltip.test.js +0 -69
  561. package/lib/__tests__/Tooltip.test.jsx +0 -46
  562. package/lib/__tests__/Truncate.test.d.ts +0 -1
  563. package/lib/__tests__/Truncate.test.js +0 -63
  564. package/lib/__tests__/Truncate.test.jsx +0 -41
  565. package/lib/__tests__/UnderlineNav.test.d.ts +0 -1
  566. package/lib/__tests__/UnderlineNav.test.js +0 -72
  567. package/lib/__tests__/UnderlineNav.test.jsx +0 -53
  568. package/lib/__tests__/UnderlineNavLink.test.d.ts +0 -1
  569. package/lib/__tests__/UnderlineNavLink.test.js +0 -51
  570. package/lib/__tests__/UnderlineNavLink.test.jsx +0 -31
  571. package/lib/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  572. package/lib/__tests__/behaviors/anchoredPosition.test.js +0 -243
  573. package/lib/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  574. package/lib/__tests__/behaviors/focusTrap.test.js +0 -234
  575. package/lib/__tests__/behaviors/focusTrap.test.jsx +0 -184
  576. package/lib/__tests__/behaviors/focusZone.test.d.ts +0 -1
  577. package/lib/__tests__/behaviors/focusZone.test.js +0 -570
  578. package/lib/__tests__/behaviors/focusZone.test.jsx +0 -406
  579. package/lib/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  580. package/lib/__tests__/behaviors/iterateFocusableElements.test.js +0 -55
  581. package/lib/__tests__/behaviors/iterateFocusableElements.test.jsx +0 -58
  582. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  583. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -155
  584. package/lib/__tests__/filterObject.test.d.ts +0 -1
  585. package/lib/__tests__/filterObject.test.js +0 -51
  586. package/lib/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  587. package/lib/__tests__/hooks/useAnchoredPosition.test.js +0 -54
  588. package/lib/__tests__/hooks/useAnchoredPosition.test.jsx +0 -29
  589. package/lib/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  590. package/lib/__tests__/hooks/useOnEscapePress.test.js +0 -32
  591. package/lib/__tests__/hooks/useOnEscapePress.test.jsx +0 -19
  592. package/lib/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  593. package/lib/__tests__/hooks/useOnOutsideClick.test.js +0 -87
  594. package/lib/__tests__/hooks/useOnOutsideClick.test.jsx +0 -63
  595. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  596. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -60
  597. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.jsx +0 -61
  598. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  599. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -45
  600. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.jsx +0 -56
  601. package/lib/__tests__/theme.test.d.ts +0 -1
  602. package/lib/__tests__/theme.test.js +0 -35
  603. package/lib/__tests__/themeGet.test.d.ts +0 -1
  604. package/lib/__tests__/themeGet.test.js +0 -14
  605. package/lib/__tests__/useSafeTimeout.test.d.ts +0 -1
  606. package/lib/__tests__/useSafeTimeout.test.js +0 -45
  607. package/lib/__tests__/useSafeTimeout.test.jsx +0 -36
  608. package/lib/__tests__/utils/createSlots.test.d.ts +0 -1
  609. package/lib/__tests__/utils/createSlots.test.js +0 -75
  610. package/lib/__tests__/utils/createSlots.test.jsx +0 -57
  611. package/lib/stories/ActionList.stories.js +0 -454
  612. package/lib/stories/ActionList2.stories.js +0 -909
  613. package/lib/stories/ActionMenu.stories.js +0 -350
  614. package/lib/stories/AnchoredOverlay.stories.js +0 -127
  615. package/lib/stories/Autocomplete.stories.js +0 -619
  616. package/lib/stories/AvatarStack.stories.js +0 -49
  617. package/lib/stories/Button.stories.js +0 -125
  618. package/lib/stories/ConfirmationDialog.stories.js +0 -111
  619. package/lib/stories/Dialog.stories.js +0 -265
  620. package/lib/stories/DropdownMenu.stories.js +0 -122
  621. package/lib/stories/IssueLabelToken.stories.js +0 -165
  622. package/lib/stories/NewButton.stories.js +0 -230
  623. package/lib/stories/Overlay.stories.js +0 -204
  624. package/lib/stories/Portal.stories.js +0 -104
  625. package/lib/stories/ProfileToken.stories.js +0 -162
  626. package/lib/stories/SelectPanel.stories.js +0 -399
  627. package/lib/stories/TextInput.stories.js +0 -144
  628. package/lib/stories/TextInputWithTokens.stories.js +0 -252
  629. package/lib/stories/ThemeProvider.stories.js +0 -102
  630. package/lib/stories/Token.stories.js +0 -176
  631. package/lib/stories/useAnchoredPosition.stories.js +0 -351
  632. package/lib/stories/useFocusTrap.stories.js +0 -356
  633. package/lib/stories/useFocusZone.stories.js +0 -599
  634. package/lib-esm/__tests__/ActionList.test.d.ts +0 -1
  635. package/lib-esm/__tests__/ActionList.test.js +0 -57
  636. package/lib-esm/__tests__/ActionList.types.test.d.ts +0 -6
  637. package/lib-esm/__tests__/ActionList.types.test.js +0 -45
  638. package/lib-esm/__tests__/ActionList2.test.d.ts +0 -1
  639. package/lib-esm/__tests__/ActionList2.test.js +0 -41
  640. package/lib-esm/__tests__/ActionMenu.test.d.ts +0 -1
  641. package/lib-esm/__tests__/ActionMenu.test.js +0 -139
  642. package/lib-esm/__tests__/AnchoredOverlay.test.d.ts +0 -1
  643. package/lib-esm/__tests__/AnchoredOverlay.test.js +0 -136
  644. package/lib-esm/__tests__/Autocomplete.test.d.ts +0 -1
  645. package/lib-esm/__tests__/Autocomplete.test.js +0 -494
  646. package/lib-esm/__tests__/Avatar.test.d.ts +0 -1
  647. package/lib-esm/__tests__/Avatar.test.js +0 -56
  648. package/lib-esm/__tests__/AvatarStack.test.d.ts +0 -1
  649. package/lib-esm/__tests__/AvatarStack.test.js +0 -58
  650. package/lib-esm/__tests__/BorderBox.test.d.ts +0 -1
  651. package/lib-esm/__tests__/BorderBox.test.js +0 -47
  652. package/lib-esm/__tests__/Box.test.d.ts +0 -1
  653. package/lib-esm/__tests__/Box.test.js +0 -67
  654. package/lib-esm/__tests__/BranchName.test.d.ts +0 -1
  655. package/lib-esm/__tests__/BranchName.test.js +0 -26
  656. package/lib-esm/__tests__/Breadcrumbs.test.d.ts +0 -1
  657. package/lib-esm/__tests__/Breadcrumbs.test.js +0 -27
  658. package/lib-esm/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  659. package/lib-esm/__tests__/BreadcrumbsItem.test.js +0 -39
  660. package/lib-esm/__tests__/Button.test.d.ts +0 -1
  661. package/lib-esm/__tests__/Button.test.js +0 -133
  662. package/lib-esm/__tests__/Caret.test.d.ts +0 -1
  663. package/lib-esm/__tests__/Caret.test.js +0 -42
  664. package/lib-esm/__tests__/CircleBadge.test.d.ts +0 -1
  665. package/lib-esm/__tests__/CircleBadge.test.js +0 -70
  666. package/lib-esm/__tests__/CircleOcticon.test.d.ts +0 -1
  667. package/lib-esm/__tests__/CircleOcticon.test.js +0 -59
  668. package/lib-esm/__tests__/ConfirmationDialog.test.d.ts +0 -1
  669. package/lib-esm/__tests__/ConfirmationDialog.test.js +0 -113
  670. package/lib-esm/__tests__/CounterLabel.test.d.ts +0 -1
  671. package/lib-esm/__tests__/CounterLabel.test.js +0 -47
  672. package/lib-esm/__tests__/Details.test.d.ts +0 -1
  673. package/lib-esm/__tests__/Details.test.js +0 -107
  674. package/lib-esm/__tests__/Dialog.test.d.ts +0 -1
  675. package/lib-esm/__tests__/Dialog.test.js +0 -171
  676. package/lib-esm/__tests__/Dropdown.test.d.ts +0 -1
  677. package/lib-esm/__tests__/Dropdown.test.js +0 -53
  678. package/lib-esm/__tests__/DropdownMenu.test.d.ts +0 -1
  679. package/lib-esm/__tests__/DropdownMenu.test.js +0 -137
  680. package/lib-esm/__tests__/FilterList.test.d.ts +0 -1
  681. package/lib-esm/__tests__/FilterList.test.js +0 -26
  682. package/lib-esm/__tests__/FilterListItem.test.d.ts +0 -1
  683. package/lib-esm/__tests__/FilterListItem.test.js +0 -36
  684. package/lib-esm/__tests__/FilteredSearch.test.d.ts +0 -1
  685. package/lib-esm/__tests__/FilteredSearch.test.js +0 -26
  686. package/lib-esm/__tests__/Flash.test.d.ts +0 -1
  687. package/lib-esm/__tests__/Flash.test.js +0 -51
  688. package/lib-esm/__tests__/Flex.test.d.ts +0 -1
  689. package/lib-esm/__tests__/Flex.test.js +0 -64
  690. package/lib-esm/__tests__/FormGroup.test.d.ts +0 -1
  691. package/lib-esm/__tests__/FormGroup.test.js +0 -44
  692. package/lib-esm/__tests__/Grid.test.d.ts +0 -1
  693. package/lib-esm/__tests__/Grid.test.js +0 -94
  694. package/lib-esm/__tests__/Header.test.d.ts +0 -1
  695. package/lib-esm/__tests__/Header.test.js +0 -48
  696. package/lib-esm/__tests__/Heading.test.d.ts +0 -1
  697. package/lib-esm/__tests__/Heading.test.js +0 -99
  698. package/lib-esm/__tests__/KeyPaths.types.test.d.ts +0 -11
  699. package/lib-esm/__tests__/KeyPaths.types.test.js +0 -3
  700. package/lib-esm/__tests__/Label.test.d.ts +0 -1
  701. package/lib-esm/__tests__/Label.test.js +0 -36
  702. package/lib-esm/__tests__/LabelGroup.test.d.ts +0 -1
  703. package/lib-esm/__tests__/LabelGroup.test.js +0 -26
  704. package/lib-esm/__tests__/Link.test.d.ts +0 -1
  705. package/lib-esm/__tests__/Link.test.js +0 -60
  706. package/lib-esm/__tests__/Merge.types.test.d.ts +0 -30
  707. package/lib-esm/__tests__/Merge.types.test.js +0 -14
  708. package/lib-esm/__tests__/NewButton.test.d.ts +0 -1
  709. package/lib-esm/__tests__/NewButton.test.js +0 -84
  710. package/lib-esm/__tests__/Overlay.test.d.ts +0 -1
  711. package/lib-esm/__tests__/Overlay.test.js +0 -123
  712. package/lib-esm/__tests__/Pagehead.test.d.ts +0 -1
  713. package/lib-esm/__tests__/Pagehead.test.js +0 -26
  714. package/lib-esm/__tests__/Pagination/Pagination.test.d.ts +0 -1
  715. package/lib-esm/__tests__/Pagination/Pagination.test.js +0 -35
  716. package/lib-esm/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  717. package/lib-esm/__tests__/Pagination/PaginationModel.test.js +0 -182
  718. package/lib-esm/__tests__/PointerBox.test.d.ts +0 -1
  719. package/lib-esm/__tests__/PointerBox.test.js +0 -36
  720. package/lib-esm/__tests__/Popover.test.d.ts +0 -1
  721. package/lib-esm/__tests__/Popover.test.js +0 -53
  722. package/lib-esm/__tests__/Portal.test.d.ts +0 -1
  723. package/lib-esm/__tests__/Portal.test.js +0 -104
  724. package/lib-esm/__tests__/Position.test.d.ts +0 -1
  725. package/lib-esm/__tests__/Position.test.js +0 -133
  726. package/lib-esm/__tests__/ProgressBar.test.d.ts +0 -1
  727. package/lib-esm/__tests__/ProgressBar.test.js +0 -58
  728. package/lib-esm/__tests__/SelectMenu.test.d.ts +0 -1
  729. package/lib-esm/__tests__/SelectMenu.test.js +0 -145
  730. package/lib-esm/__tests__/SelectPanel.test.d.ts +0 -1
  731. package/lib-esm/__tests__/SelectPanel.test.js +0 -65
  732. package/lib-esm/__tests__/SideNav.test.d.ts +0 -1
  733. package/lib-esm/__tests__/SideNav.test.js +0 -60
  734. package/lib-esm/__tests__/Spinner.test.d.ts +0 -1
  735. package/lib-esm/__tests__/Spinner.test.js +0 -43
  736. package/lib-esm/__tests__/StateLabel.test.d.ts +0 -1
  737. package/lib-esm/__tests__/StateLabel.test.js +0 -61
  738. package/lib-esm/__tests__/StyledOcticon.test.d.ts +0 -1
  739. package/lib-esm/__tests__/StyledOcticon.test.js +0 -29
  740. package/lib-esm/__tests__/SubNav.test.d.ts +0 -1
  741. package/lib-esm/__tests__/SubNav.test.js +0 -50
  742. package/lib-esm/__tests__/SubNavLink.test.d.ts +0 -1
  743. package/lib-esm/__tests__/SubNavLink.test.js +0 -39
  744. package/lib-esm/__tests__/TabNav.test.d.ts +0 -1
  745. package/lib-esm/__tests__/TabNav.test.js +0 -39
  746. package/lib-esm/__tests__/Text.test.d.ts +0 -1
  747. package/lib-esm/__tests__/Text.test.js +0 -93
  748. package/lib-esm/__tests__/TextInput.test.d.ts +0 -1
  749. package/lib-esm/__tests__/TextInput.test.js +0 -68
  750. package/lib-esm/__tests__/TextInputWithTokens.test.d.ts +0 -1
  751. package/lib-esm/__tests__/TextInputWithTokens.test.js +0 -511
  752. package/lib-esm/__tests__/ThemeProvider.test.d.ts +0 -1
  753. package/lib-esm/__tests__/ThemeProvider.test.js +0 -408
  754. package/lib-esm/__tests__/Timeline.test.d.ts +0 -1
  755. package/lib-esm/__tests__/Timeline.test.js +0 -65
  756. package/lib-esm/__tests__/Token.test.d.ts +0 -1
  757. package/lib-esm/__tests__/Token.test.js +0 -166
  758. package/lib-esm/__tests__/Tooltip.test.d.ts +0 -1
  759. package/lib-esm/__tests__/Tooltip.test.js +0 -59
  760. package/lib-esm/__tests__/Truncate.test.d.ts +0 -1
  761. package/lib-esm/__tests__/Truncate.test.js +0 -53
  762. package/lib-esm/__tests__/UnderlineNav.test.d.ts +0 -1
  763. package/lib-esm/__tests__/UnderlineNav.test.js +0 -60
  764. package/lib-esm/__tests__/UnderlineNavLink.test.d.ts +0 -1
  765. package/lib-esm/__tests__/UnderlineNavLink.test.js +0 -41
  766. package/lib-esm/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  767. package/lib-esm/__tests__/behaviors/anchoredPosition.test.js +0 -388
  768. package/lib-esm/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  769. package/lib-esm/__tests__/behaviors/focusTrap.test.js +0 -227
  770. package/lib-esm/__tests__/behaviors/focusZone.test.d.ts +0 -1
  771. package/lib-esm/__tests__/behaviors/focusZone.test.js +0 -487
  772. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  773. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.js +0 -48
  774. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  775. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -224
  776. package/lib-esm/__tests__/filterObject.test.d.ts +0 -1
  777. package/lib-esm/__tests__/filterObject.test.js +0 -27
  778. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  779. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.js +0 -46
  780. package/lib-esm/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  781. package/lib-esm/__tests__/hooks/useOnEscapePress.test.js +0 -23
  782. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  783. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.js +0 -68
  784. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  785. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -52
  786. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  787. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -36
  788. package/lib-esm/__tests__/theme.test.d.ts +0 -1
  789. package/lib-esm/__tests__/theme.test.js +0 -33
  790. package/lib-esm/__tests__/themeGet.test.d.ts +0 -1
  791. package/lib-esm/__tests__/themeGet.test.js +0 -22
  792. package/lib-esm/__tests__/useSafeTimeout.test.d.ts +0 -1
  793. package/lib-esm/__tests__/useSafeTimeout.test.js +0 -39
  794. package/lib-esm/__tests__/utils/createSlots.test.d.ts +0 -1
  795. package/lib-esm/__tests__/utils/createSlots.test.js +0 -67
  796. package/lib-esm/stories/ActionList.stories.js +0 -395
  797. package/lib-esm/stories/ActionList2.stories.js +0 -797
  798. package/lib-esm/stories/ActionMenu.stories.js +0 -305
  799. package/lib-esm/stories/AnchoredOverlay.stories.js +0 -101
  800. package/lib-esm/stories/Autocomplete.stories.js +0 -560
  801. package/lib-esm/stories/AvatarStack.stories.js +0 -32
  802. package/lib-esm/stories/Button.stories.js +0 -86
  803. package/lib-esm/stories/ConfirmationDialog.stories.js +0 -86
  804. package/lib-esm/stories/Dialog.stories.js +0 -240
  805. package/lib-esm/stories/DropdownMenu.stories.js +0 -94
  806. package/lib-esm/stories/IssueLabelToken.stories.js +0 -139
  807. package/lib-esm/stories/NewButton.stories.js +0 -178
  808. package/lib-esm/stories/Overlay.stories.js +0 -173
  809. package/lib-esm/stories/Portal.stories.js +0 -68
  810. package/lib-esm/stories/ProfileToken.stories.js +0 -136
  811. package/lib-esm/stories/SelectPanel.stories.js +0 -334
  812. package/lib-esm/stories/TextInput.stories.js +0 -117
  813. package/lib-esm/stories/TextInputWithTokens.stories.js +0 -210
  814. package/lib-esm/stories/ThemeProvider.stories.js +0 -83
  815. package/lib-esm/stories/Token.stories.js +0 -146
  816. package/lib-esm/stories/useAnchoredPosition.stories.js +0 -313
  817. package/lib-esm/stories/useFocusTrap.stories.js +0 -309
  818. package/lib-esm/stories/useFocusZone.stories.js +0 -554
  819. package/migrating.md +0 -250
  820. package/now.json +0 -17
  821. package/package-lock.json +0 -66509
  822. package/rollup.config.js +0 -36
  823. package/script/build +0 -21
  824. package/script/build-storybook +0 -10
  825. package/script/setup +0 -12
  826. package/src/ActionList/Divider.tsx +0 -25
  827. package/src/ActionList/Group.tsx +0 -45
  828. package/src/ActionList/Header.tsx +0 -74
  829. package/src/ActionList/Item.tsx +0 -480
  830. package/src/ActionList/List.tsx +0 -258
  831. package/src/ActionList/index.ts +0 -21
  832. package/src/ActionList2/Description.tsx +0 -52
  833. package/src/ActionList2/Divider.tsx +0 -24
  834. package/src/ActionList2/Group.tsx +0 -103
  835. package/src/ActionList2/Header.tsx +0 -58
  836. package/src/ActionList2/Item.tsx +0 -246
  837. package/src/ActionList2/LinkItem.tsx +0 -49
  838. package/src/ActionList2/List.tsx +0 -55
  839. package/src/ActionList2/Selection.tsx +0 -60
  840. package/src/ActionList2/Visuals.tsx +0 -76
  841. package/src/ActionList2/index.ts +0 -39
  842. package/src/ActionMenu.tsx +0 -106
  843. package/src/AnchoredOverlay/AnchoredOverlay.tsx +0 -191
  844. package/src/AnchoredOverlay/index.ts +0 -2
  845. package/src/Autocomplete/Autocomplete.tsx +0 -103
  846. package/src/Autocomplete/AutocompleteContext.tsx +0 -19
  847. package/src/Autocomplete/AutocompleteInput.tsx +0 -179
  848. package/src/Autocomplete/AutocompleteMenu.tsx +0 -341
  849. package/src/Autocomplete/AutocompleteOverlay.tsx +0 -68
  850. package/src/Autocomplete/index.ts +0 -2
  851. package/src/Avatar.tsx +0 -46
  852. package/src/AvatarPair.tsx +0 -35
  853. package/src/AvatarStack.tsx +0 -159
  854. package/src/BaseStyles.tsx +0 -53
  855. package/src/BorderBox.tsx +0 -18
  856. package/src/Box.tsx +0 -54
  857. package/src/BranchName.tsx +0 -19
  858. package/src/Breadcrumbs.tsx +0 -101
  859. package/src/Button/Button.tsx +0 -40
  860. package/src/Button/ButtonBase.tsx +0 -43
  861. package/src/Button/ButtonClose.tsx +0 -40
  862. package/src/Button/ButtonDanger.tsx +0 -43
  863. package/src/Button/ButtonGroup.tsx +0 -55
  864. package/src/Button/ButtonInvisible.tsx +0 -32
  865. package/src/Button/ButtonOutline.tsx +0 -43
  866. package/src/Button/ButtonPrimary.tsx +0 -41
  867. package/src/Button/ButtonStyles.tsx +0 -36
  868. package/src/Button/ButtonTableList.tsx +0 -58
  869. package/src/Button/index.ts +0 -16
  870. package/src/Caret.tsx +0 -133
  871. package/src/CircleBadge.tsx +0 -55
  872. package/src/CircleOcticon.tsx +0 -37
  873. package/src/CounterLabel.tsx +0 -52
  874. package/src/Details.tsx +0 -23
  875. package/src/Dialog/ConfirmationDialog.tsx +0 -184
  876. package/src/Dialog/Dialog.tsx +0 -433
  877. package/src/Dialog.tsx +0 -149
  878. package/src/Dropdown.tsx +0 -158
  879. package/src/DropdownMenu/DropdownButton.tsx +0 -15
  880. package/src/DropdownMenu/DropdownMenu.tsx +0 -115
  881. package/src/DropdownMenu/index.ts +0 -4
  882. package/src/DropdownStyles.ts +0 -128
  883. package/src/FilterList.tsx +0 -81
  884. package/src/FilteredActionList/FilteredActionList.tsx +0 -142
  885. package/src/FilteredActionList/index.ts +0 -2
  886. package/src/FilteredSearch.tsx +0 -28
  887. package/src/Flash.tsx +0 -77
  888. package/src/Flex.tsx +0 -15
  889. package/src/FormGroup.tsx +0 -27
  890. package/src/Grid.tsx +0 -15
  891. package/src/Header.tsx +0 -84
  892. package/src/Heading.tsx +0 -21
  893. package/src/Label.tsx +0 -75
  894. package/src/LabelGroup.tsx +0 -18
  895. package/src/Link.tsx +0 -46
  896. package/src/NewButton/button-counter.tsx +0 -15
  897. package/src/NewButton/button.tsx +0 -283
  898. package/src/NewButton/index.ts +0 -10
  899. package/src/NewButton/types.ts +0 -36
  900. package/src/Overlay.tsx +0 -198
  901. package/src/Pagehead.tsx +0 -17
  902. package/src/Pagination/Pagination.tsx +0 -214
  903. package/src/Pagination/index.ts +0 -4
  904. package/src/Pagination/model.tsx +0 -187
  905. package/src/PointerBox.tsx +0 -31
  906. package/src/Popover.tsx +0 -236
  907. package/src/Portal/Portal.tsx +0 -97
  908. package/src/Portal/index.ts +0 -5
  909. package/src/Position.tsx +0 -63
  910. package/src/ProgressBar.tsx +0 -52
  911. package/src/SelectMenu/SelectMenu.tsx +0 -125
  912. package/src/SelectMenu/SelectMenuContext.tsx +0 -9
  913. package/src/SelectMenu/SelectMenuDivider.tsx +0 -25
  914. package/src/SelectMenu/SelectMenuFilter.tsx +0 -51
  915. package/src/SelectMenu/SelectMenuFooter.tsx +0 -28
  916. package/src/SelectMenu/SelectMenuHeader.tsx +0 -50
  917. package/src/SelectMenu/SelectMenuItem.tsx +0 -137
  918. package/src/SelectMenu/SelectMenuList.tsx +0 -42
  919. package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +0 -24
  920. package/src/SelectMenu/SelectMenuModal.tsx +0 -121
  921. package/src/SelectMenu/SelectMenuTab.tsx +0 -88
  922. package/src/SelectMenu/SelectMenuTabPanel.tsx +0 -30
  923. package/src/SelectMenu/SelectMenuTabs.tsx +0 -44
  924. package/src/SelectMenu/hooks/useKeyboardNav.js +0 -90
  925. package/src/SelectMenu/index.ts +0 -15
  926. package/src/SelectPanel/SelectPanel.tsx +0 -173
  927. package/src/SelectPanel/index.ts +0 -2
  928. package/src/SideNav.tsx +0 -193
  929. package/src/Spinner.tsx +0 -59
  930. package/src/StateLabel.tsx +0 -114
  931. package/src/StyledOcticon.tsx +0 -24
  932. package/src/SubNav.tsx +0 -129
  933. package/src/TabNav.tsx +0 -77
  934. package/src/Text.tsx +0 -13
  935. package/src/TextInput.tsx +0 -68
  936. package/src/TextInputWithTokens.tsx +0 -351
  937. package/src/ThemeProvider.tsx +0 -176
  938. package/src/Timeline.tsx +0 -141
  939. package/src/Token/AvatarToken.tsx +0 -54
  940. package/src/Token/IssueLabelToken.tsx +0 -150
  941. package/src/Token/Token.tsx +0 -126
  942. package/src/Token/TokenBase.tsx +0 -129
  943. package/src/Token/_RemoveTokenButton.tsx +0 -111
  944. package/src/Token/_TokenTextContainer.tsx +0 -47
  945. package/src/Token/index.ts +0 -3
  946. package/src/Tooltip.tsx +0 -263
  947. package/src/Truncate.tsx +0 -36
  948. package/src/UnderlineNav.tsx +0 -110
  949. package/src/_TextInputWrapper.tsx +0 -113
  950. package/src/_UnstyledTextInput.tsx +0 -19
  951. package/src/__tests__/.eslintrc.json +0 -11
  952. package/src/__tests__/ActionList.test.tsx +0 -53
  953. package/src/__tests__/ActionList.types.test.tsx +0 -51
  954. package/src/__tests__/ActionList2.test.tsx +0 -47
  955. package/src/__tests__/ActionMenu.test.tsx +0 -136
  956. package/src/__tests__/AnchoredOverlay.test.tsx +0 -150
  957. package/src/__tests__/Autocomplete.test.tsx +0 -444
  958. package/src/__tests__/Avatar.test.tsx +0 -44
  959. package/src/__tests__/AvatarStack.test.tsx +0 -48
  960. package/src/__tests__/BorderBox.test.tsx +0 -43
  961. package/src/__tests__/Box.test.tsx +0 -42
  962. package/src/__tests__/BranchName.test.tsx +0 -26
  963. package/src/__tests__/Breadcrumbs.test.tsx +0 -27
  964. package/src/__tests__/BreadcrumbsItem.test.tsx +0 -31
  965. package/src/__tests__/Button.test.tsx +0 -128
  966. package/src/__tests__/Caret.test.tsx +0 -36
  967. package/src/__tests__/CircleBadge.test.tsx +0 -66
  968. package/src/__tests__/CircleOcticon.test.tsx +0 -50
  969. package/src/__tests__/ConfirmationDialog.test.tsx +0 -120
  970. package/src/__tests__/CounterLabel.test.tsx +0 -50
  971. package/src/__tests__/Details.test.tsx +0 -115
  972. package/src/__tests__/Dialog.test.tsx +0 -155
  973. package/src/__tests__/Dropdown.test.tsx +0 -53
  974. package/src/__tests__/DropdownMenu.test.tsx +0 -136
  975. package/src/__tests__/FilterList.test.tsx +0 -26
  976. package/src/__tests__/FilterListItem.test.tsx +0 -31
  977. package/src/__tests__/FilteredSearch.test.tsx +0 -26
  978. package/src/__tests__/Flash.test.tsx +0 -45
  979. package/src/__tests__/Flex.test.tsx +0 -58
  980. package/src/__tests__/FormGroup.test.tsx +0 -38
  981. package/src/__tests__/Grid.test.tsx +0 -82
  982. package/src/__tests__/Header.test.tsx +0 -49
  983. package/src/__tests__/Heading.test.tsx +0 -91
  984. package/src/__tests__/KeyPaths.types.test.ts +0 -14
  985. package/src/__tests__/Label.test.tsx +0 -34
  986. package/src/__tests__/LabelGroup.test.tsx +0 -30
  987. package/src/__tests__/Link.test.tsx +0 -47
  988. package/src/__tests__/Merge.types.test.ts +0 -39
  989. package/src/__tests__/NewButton.test.tsx +0 -70
  990. package/src/__tests__/Overlay.test.tsx +0 -103
  991. package/src/__tests__/Pagehead.test.tsx +0 -23
  992. package/src/__tests__/Pagination/Pagination.test.tsx +0 -30
  993. package/src/__tests__/Pagination/PaginationModel.test.tsx +0 -133
  994. package/src/__tests__/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -184
  995. package/src/__tests__/PointerBox.test.tsx +0 -34
  996. package/src/__tests__/Popover.test.tsx +0 -68
  997. package/src/__tests__/Portal.test.tsx +0 -103
  998. package/src/__tests__/Position.test.tsx +0 -117
  999. package/src/__tests__/ProgressBar.test.tsx +0 -40
  1000. package/src/__tests__/SelectMenu.test.tsx +0 -142
  1001. package/src/__tests__/SelectPanel.test.tsx +0 -63
  1002. package/src/__tests__/SideNav.test.tsx +0 -62
  1003. package/src/__tests__/Spinner.test.tsx +0 -42
  1004. package/src/__tests__/StateLabel.test.tsx +0 -48
  1005. package/src/__tests__/StyledOcticon.test.tsx +0 -26
  1006. package/src/__tests__/SubNav.test.tsx +0 -50
  1007. package/src/__tests__/SubNavLink.test.tsx +0 -31
  1008. package/src/__tests__/TabNav.test.tsx +0 -32
  1009. package/src/__tests__/Text.test.tsx +0 -78
  1010. package/src/__tests__/TextInput.test.tsx +0 -49
  1011. package/src/__tests__/TextInputWithTokens.test.tsx +0 -422
  1012. package/src/__tests__/ThemeProvider.test.tsx +0 -441
  1013. package/src/__tests__/Timeline.test.tsx +0 -58
  1014. package/src/__tests__/Token.test.tsx +0 -118
  1015. package/src/__tests__/Tooltip.test.tsx +0 -52
  1016. package/src/__tests__/Truncate.test.tsx +0 -43
  1017. package/src/__tests__/UnderlineNav.test.tsx +0 -58
  1018. package/src/__tests__/UnderlineNavLink.test.tsx +0 -31
  1019. package/src/__tests__/__snapshots__/ActionList.test.tsx.snap +0 -223
  1020. package/src/__tests__/__snapshots__/ActionList2.test.tsx.snap +0 -14
  1021. package/src/__tests__/__snapshots__/ActionMenu.test.tsx.snap +0 -80
  1022. package/src/__tests__/__snapshots__/AnchoredOverlay.test.tsx.snap +0 -232
  1023. package/src/__tests__/__snapshots__/Autocomplete.test.tsx.snap +0 -3888
  1024. package/src/__tests__/__snapshots__/Avatar.test.tsx.snap +0 -19
  1025. package/src/__tests__/__snapshots__/AvatarStack.test.tsx.snap +0 -377
  1026. package/src/__tests__/__snapshots__/BorderBox.test.tsx.snap +0 -14
  1027. package/src/__tests__/__snapshots__/Box.test.tsx.snap +0 -201
  1028. package/src/__tests__/__snapshots__/BranchName.test.tsx.snap +0 -17
  1029. package/src/__tests__/__snapshots__/Breadcrumbs.test.tsx.snap +0 -29
  1030. package/src/__tests__/__snapshots__/BreadcrumbsItem.test.tsx.snap +0 -79
  1031. package/src/__tests__/__snapshots__/Button.test.tsx.snap +0 -840
  1032. package/src/__tests__/__snapshots__/Caret.test.tsx.snap +0 -373
  1033. package/src/__tests__/__snapshots__/CircleBadge.test.tsx.snap +0 -142
  1034. package/src/__tests__/__snapshots__/CircleOcticon.test.tsx.snap +0 -65
  1035. package/src/__tests__/__snapshots__/ConfirmationDialog.test.tsx.snap +0 -89
  1036. package/src/__tests__/__snapshots__/CounterLabel.test.tsx.snap +0 -22
  1037. package/src/__tests__/__snapshots__/Details.test.tsx.snap +0 -15
  1038. package/src/__tests__/__snapshots__/Dialog.test.tsx.snap +0 -201
  1039. package/src/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -249
  1040. package/src/__tests__/__snapshots__/DropdownMenu.test.tsx.snap +0 -107
  1041. package/src/__tests__/__snapshots__/FilterList.test.tsx.snap +0 -13
  1042. package/src/__tests__/__snapshots__/FilterListItem.test.tsx.snap +0 -80
  1043. package/src/__tests__/__snapshots__/FilteredSearch.test.tsx.snap +0 -32
  1044. package/src/__tests__/__snapshots__/Flash.test.tsx.snap +0 -32
  1045. package/src/__tests__/__snapshots__/Flex.test.tsx.snap +0 -130
  1046. package/src/__tests__/__snapshots__/FormGroup.test.tsx.snap +0 -25
  1047. package/src/__tests__/__snapshots__/Grid.test.tsx.snap +0 -178
  1048. package/src/__tests__/__snapshots__/Header.test.tsx.snap +0 -79
  1049. package/src/__tests__/__snapshots__/Heading.test.tsx.snap +0 -13
  1050. package/src/__tests__/__snapshots__/Label.test.tsx.snap +0 -74
  1051. package/src/__tests__/__snapshots__/LabelGroup.test.tsx.snap +0 -15
  1052. package/src/__tests__/__snapshots__/Link.test.tsx.snap +0 -213
  1053. package/src/__tests__/__snapshots__/NewButton.test.tsx.snap +0 -305
  1054. package/src/__tests__/__snapshots__/Pagehead.test.tsx.snap +0 -15
  1055. package/src/__tests__/__snapshots__/PointerBox.test.tsx.snap +0 -174
  1056. package/src/__tests__/__snapshots__/Popover.test.tsx.snap +0 -4687
  1057. package/src/__tests__/__snapshots__/Position.test.tsx.snap +0 -44
  1058. package/src/__tests__/__snapshots__/ProgressBar.test.tsx.snap +0 -53
  1059. package/src/__tests__/__snapshots__/SelectMenu.test.tsx.snap +0 -473
  1060. package/src/__tests__/__snapshots__/SelectPanel.test.tsx.snap +0 -124
  1061. package/src/__tests__/__snapshots__/SideNav.test.tsx.snap +0 -143
  1062. package/src/__tests__/__snapshots__/Spinner.test.tsx.snap +0 -33
  1063. package/src/__tests__/__snapshots__/StateLabel.test.tsx.snap +0 -395
  1064. package/src/__tests__/__snapshots__/StyledOcticon.test.tsx.snap +0 -26
  1065. package/src/__tests__/__snapshots__/SubNav.test.tsx.snap +0 -44
  1066. package/src/__tests__/__snapshots__/SubNavLink.test.tsx.snap +0 -199
  1067. package/src/__tests__/__snapshots__/TabNav.test.tsx.snap +0 -58
  1068. package/src/__tests__/__snapshots__/Text.test.tsx.snap +0 -7
  1069. package/src/__tests__/__snapshots__/TextInput.test.tsx.snap +0 -446
  1070. package/src/__tests__/__snapshots__/TextInputWithTokens.test.tsx.snap +0 -6045
  1071. package/src/__tests__/__snapshots__/ThemeProvider.test.tsx.snap +0 -15
  1072. package/src/__tests__/__snapshots__/Timeline.test.tsx.snap +0 -159
  1073. package/src/__tests__/__snapshots__/Token.test.tsx.snap +0 -3811
  1074. package/src/__tests__/__snapshots__/Tooltip.test.tsx.snap +0 -227
  1075. package/src/__tests__/__snapshots__/Truncate.test.tsx.snap +0 -17
  1076. package/src/__tests__/__snapshots__/UnderlineNav.test.tsx.snap +0 -59
  1077. package/src/__tests__/__snapshots__/UnderlineNavLink.test.tsx.snap +0 -130
  1078. package/src/__tests__/behaviors/anchoredPosition.test.ts +0 -295
  1079. package/src/__tests__/behaviors/focusTrap.test.tsx +0 -236
  1080. package/src/__tests__/behaviors/focusZone.test.tsx +0 -549
  1081. package/src/__tests__/behaviors/iterateFocusableElements.test.tsx +0 -61
  1082. package/src/__tests__/behaviors/scrollIntoViewingArea.test.ts +0 -195
  1083. package/src/__tests__/filterObject.test.ts +0 -54
  1084. package/src/__tests__/hooks/useAnchoredPosition.test.tsx +0 -31
  1085. package/src/__tests__/hooks/useOnEscapePress.test.tsx +0 -16
  1086. package/src/__tests__/hooks/useOnOutsideClick.test.tsx +0 -48
  1087. package/src/__tests__/hooks/useOpenAndCloseFocus.test.tsx +0 -48
  1088. package/src/__tests__/hooks/useProvidedStateOrCreate.test.tsx +0 -39
  1089. package/src/__tests__/theme.test.ts +0 -41
  1090. package/src/__tests__/themeGet.test.ts +0 -15
  1091. package/src/__tests__/useSafeTimeout.test.tsx +0 -36
  1092. package/src/__tests__/utils/__snapshots__/createSlots.test.tsx.snap +0 -55
  1093. package/src/__tests__/utils/createSlots.test.tsx +0 -74
  1094. package/src/behaviors/anchoredPosition.ts +0 -442
  1095. package/src/behaviors/focusTrap.ts +0 -184
  1096. package/src/behaviors/focusZone.ts +0 -713
  1097. package/src/behaviors/scrollIntoViewingArea.ts +0 -27
  1098. package/src/constants.ts +0 -62
  1099. package/src/drafts.ts +0 -10
  1100. package/src/hooks/index.ts +0 -11
  1101. package/src/hooks/useAnchoredPosition.ts +0 -54
  1102. package/src/hooks/useCombinedRefs.ts +0 -40
  1103. package/src/hooks/useDetails.tsx +0 -54
  1104. package/src/hooks/useDialog.ts +0 -121
  1105. package/src/hooks/useFocusTrap.ts +0 -80
  1106. package/src/hooks/useFocusZone.ts +0 -64
  1107. package/src/hooks/useOnEscapePress.ts +0 -63
  1108. package/src/hooks/useOnOutsideClick.tsx +0 -82
  1109. package/src/hooks/useOpenAndCloseFocus.ts +0 -32
  1110. package/src/hooks/useOverlay.tsx +0 -34
  1111. package/src/hooks/useProvidedRefOrCreate.ts +0 -14
  1112. package/src/hooks/useProvidedStateOrCreate.ts +0 -27
  1113. package/src/hooks/useRenderForcingRef.ts +0 -22
  1114. package/src/hooks/useResizeObserver.ts +0 -11
  1115. package/src/hooks/useSafeTimeout.ts +0 -38
  1116. package/src/hooks/useScrollFlash.ts +0 -21
  1117. package/src/index.ts +0 -172
  1118. package/src/polyfills/eventListenerSignal.ts +0 -66
  1119. package/src/stories/ActionList.stories.tsx +0 -436
  1120. package/src/stories/ActionList2.stories.tsx +0 -1291
  1121. package/src/stories/ActionMenu.stories.tsx +0 -334
  1122. package/src/stories/AnchoredOverlay.stories.tsx +0 -117
  1123. package/src/stories/Autocomplete.stories.tsx +0 -655
  1124. package/src/stories/AvatarStack.stories.tsx +0 -37
  1125. package/src/stories/Button.stories.tsx +0 -92
  1126. package/src/stories/ConfirmationDialog.stories.tsx +0 -105
  1127. package/src/stories/Dialog.stories.tsx +0 -240
  1128. package/src/stories/DropdownMenu.stories.tsx +0 -84
  1129. package/src/stories/IssueLabelToken.stories.tsx +0 -138
  1130. package/src/stories/NewButton.stories.tsx +0 -201
  1131. package/src/stories/Overlay.stories.tsx +0 -213
  1132. package/src/stories/Portal.stories.tsx +0 -109
  1133. package/src/stories/ProfileToken.stories.tsx +0 -129
  1134. package/src/stories/SelectPanel.stories.tsx +0 -353
  1135. package/src/stories/TextInput.stories.tsx +0 -113
  1136. package/src/stories/TextInputWithTokens.stories.tsx +0 -155
  1137. package/src/stories/ThemeProvider.stories.tsx +0 -104
  1138. package/src/stories/Token.stories.tsx +0 -137
  1139. package/src/stories/useAnchoredPosition.stories.tsx +0 -332
  1140. package/src/stories/useFocusTrap.stories.tsx +0 -400
  1141. package/src/stories/useFocusZone.stories.tsx +0 -663
  1142. package/src/sx.ts +0 -24
  1143. package/src/theme-preval.js +0 -80
  1144. package/src/theme.ts +0 -89
  1145. package/src/utils/create-slots.tsx +0 -96
  1146. package/src/utils/deprecate.tsx +0 -73
  1147. package/src/utils/isNumeric.tsx +0 -4
  1148. package/src/utils/iterateFocusableElements.ts +0 -121
  1149. package/src/utils/ssr.tsx +0 -1
  1150. package/src/utils/test-deprecations.tsx +0 -19
  1151. package/src/utils/test-helpers.tsx +0 -7
  1152. package/src/utils/test-matchers.tsx +0 -109
  1153. package/src/utils/testing.tsx +0 -242
  1154. package/src/utils/theme.js +0 -64
  1155. package/src/utils/types/AriaRole.ts +0 -71
  1156. package/src/utils/types/ComponentProps.ts +0 -13
  1157. package/src/utils/types/Flatten.ts +0 -4
  1158. package/src/utils/types/KeyPaths.ts +0 -10
  1159. package/src/utils/types/MandateProps.ts +0 -19
  1160. package/src/utils/types/Merge.ts +0 -20
  1161. package/src/utils/types/index.ts +0 -5
  1162. package/src/utils/uniqueId.ts +0 -6
  1163. package/src/utils/use-force-update.ts +0 -7
  1164. package/src/utils/useIsomorphicLayoutEffect.ts +0 -10
  1165. package/src/utils/userAgent.ts +0 -7
  1166. package/stats.html +0 -3279
  1167. package/tsconfig.base.json +0 -20
  1168. package/tsconfig.build.json +0 -7
  1169. package/tsconfig.json +0 -7
@@ -1,1291 +0,0 @@
1
- import {
2
- ServerIcon,
3
- PlusCircleIcon,
4
- TypographyIcon,
5
- VersionsIcon,
6
- SearchIcon,
7
- NoteIcon,
8
- ProjectIcon,
9
- FilterIcon,
10
- GearIcon,
11
- ArrowRightIcon,
12
- ArrowLeftIcon,
13
- LinkIcon,
14
- LawIcon,
15
- StarIcon,
16
- RepoForkedIcon,
17
- AlertIcon,
18
- TableIcon,
19
- PeopleIcon,
20
- CalendarIcon,
21
- IssueOpenedIcon,
22
- NumberIcon,
23
- XIcon,
24
- RepoIcon
25
- } from '@primer/octicons-react'
26
- import {Meta} from '@storybook/react'
27
- import React, {forwardRef} from 'react'
28
- import styled from 'styled-components'
29
- import {DndProvider, useDrag, useDrop} from 'react-dnd'
30
- import {HTML5Backend} from 'react-dnd-html5-backend'
31
- import {Label, ThemeProvider} from '..'
32
- import {ActionList as _ActionList, ItemProps} from '../ActionList2'
33
- import {Header} from '../ActionList/Header'
34
- import BaseStyles from '../BaseStyles'
35
- import Avatar from '../Avatar'
36
- import {ButtonInvisible} from '../Button'
37
- import TextInput from '../TextInput'
38
- import Spinner from '../Spinner'
39
- import Box from '../Box'
40
- import {AnchoredOverlay} from '../AnchoredOverlay'
41
-
42
- const ActionList = Object.assign(_ActionList, {
43
- Header
44
- })
45
-
46
- const meta: Meta = {
47
- title: 'Composite components/ActionList2',
48
- component: ActionList,
49
- decorators: [
50
- (Story: React.ComponentType): JSX.Element => (
51
- <ThemeProvider>
52
- <BaseStyles>
53
- <Story />
54
- </BaseStyles>
55
- </ThemeProvider>
56
- )
57
- ],
58
- parameters: {
59
- controls: {
60
- disable: true
61
- }
62
- }
63
- }
64
- export default meta
65
-
66
- const ErsatzOverlay = styled.div<{maxWidth?: string}>`
67
- border-radius: 12px;
68
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 8px 24px rgba(149, 157, 165, 0.2);
69
- overflow: hidden;
70
- max-width: ${({maxWidth}) => maxWidth || 'none'};
71
- `
72
- export function SimpleListStory(): JSX.Element {
73
- return (
74
- <>
75
- <h1>Simple List</h1>
76
-
77
- <ActionList>
78
- <ActionList.Item>Copy link</ActionList.Item>
79
- <ActionList.Item>Quote reply</ActionList.Item>
80
- <ActionList.Item>Edit comment</ActionList.Item>
81
- <ActionList.Divider />
82
- <ActionList.Item variant="danger">Delete file</ActionList.Item>
83
- </ActionList>
84
- </>
85
- )
86
- }
87
- SimpleListStory.storyName = 'Simple List'
88
-
89
- export function WithIcon(): JSX.Element {
90
- return (
91
- <>
92
- <h1>With Icon</h1>
93
-
94
- <ActionList>
95
- <ActionList.Item>
96
- <ActionList.LeadingVisual>
97
- <LinkIcon />
98
- </ActionList.LeadingVisual>
99
- github.com/primer
100
- </ActionList.Item>
101
- <ActionList.Item>
102
- <ActionList.LeadingVisual>
103
- <LawIcon />
104
- </ActionList.LeadingVisual>
105
- MIT License
106
- </ActionList.Item>
107
- <ActionList.Item>
108
- <ActionList.LeadingVisual>
109
- <StarIcon />
110
- </ActionList.LeadingVisual>
111
- 256 stars
112
- </ActionList.Item>
113
- <ActionList.Item>
114
- <ActionList.LeadingVisual>
115
- <RepoForkedIcon />
116
- </ActionList.LeadingVisual>
117
- 3 forks
118
- </ActionList.Item>
119
- <ActionList.Item variant="danger">
120
- <ActionList.LeadingVisual>
121
- <AlertIcon />
122
- </ActionList.LeadingVisual>
123
- 4 vulnerabilities
124
- </ActionList.Item>
125
- </ActionList>
126
- </>
127
- )
128
- }
129
- WithIcon.storyName = 'With Icon'
130
-
131
- const users = [
132
- {login: 'pksjce', name: 'Pavithra Kodmad'},
133
- {login: 'jfuchs', name: 'Jonathan Fuchs'},
134
- {login: 'colebemis', name: 'Cole Bemis'},
135
- {login: 'mperrotti', name: 'Mike Perrotti'},
136
- {login: 'dgreif', name: 'Dusty Greif'},
137
- {login: 'smockle', name: 'Clay Miller'},
138
- {login: 'siddharthkp', name: 'Siddharth Kshetrapal'}
139
- ]
140
-
141
- export function WithAvatar(): JSX.Element {
142
- return (
143
- <>
144
- <h1>With Avatar</h1>
145
- <ErsatzOverlay>
146
- <ActionList>
147
- {users.map(user => (
148
- <ActionList.Item key={user.login}>
149
- <ActionList.LeadingVisual>
150
- <Avatar src={`https://github.com/${user.login}.png`} />
151
- </ActionList.LeadingVisual>
152
- {user.login}
153
- </ActionList.Item>
154
- ))}
155
- </ActionList>
156
- </ErsatzOverlay>
157
- </>
158
- )
159
- }
160
- WithAvatar.storyName = 'With Avatar'
161
-
162
- const labels = [
163
- {name: 'blocked', color: '#86181d', description: 'Someone or something is preventing this from moving forward'},
164
- {name: 'dependencies', color: '#0366d6', description: 'Pull requests that update a dependency file'},
165
- {name: 'duplicate', color: '#cfd3d7', description: 'This issue or pull request already exists'},
166
- {name: 'good first issue', color: '#7057ff', description: 'Good for newcomers'}
167
- ]
168
-
169
- const LabelColor: React.FC<{color: string}> = ({color}) => (
170
- <Box sx={{backgroundColor: color, width: '14px', height: '14px', borderRadius: 3}} />
171
- )
172
-
173
- export function WithDescription(): JSX.Element {
174
- return (
175
- <>
176
- <h1>With Description & Dividers</h1>
177
- <ErsatzOverlay>
178
- <ActionList showDividers>
179
- {users.map(user => (
180
- <ActionList.Item key={user.login}>
181
- <ActionList.LeadingVisual>
182
- <Avatar src={`https://github.com/${user.login}.png`} />
183
- </ActionList.LeadingVisual>
184
- {user.login}
185
- <ActionList.Description>{user.name}</ActionList.Description>
186
- </ActionList.Item>
187
- ))}
188
- <ActionList.Divider />
189
- {labels.map((label, index) => (
190
- <ActionList.Item key={index}>
191
- <ActionList.LeadingVisual>
192
- <LabelColor color={label.color} />
193
- </ActionList.LeadingVisual>
194
- {label.name}
195
- <ActionList.Description variant="block">{label.description}</ActionList.Description>
196
- </ActionList.Item>
197
- ))}
198
- </ActionList>
199
- </ErsatzOverlay>
200
- </>
201
- )
202
- }
203
- WithDescription.storyName = 'With Description & Dividers'
204
-
205
- const projects = [
206
- {name: 'Primer Backlog', scope: 'GitHub'},
207
- {name: 'Accessibility', scope: 'GitHub'},
208
- {name: 'Octicons', scope: 'github/primer'},
209
- {name: 'Primer React', scope: 'github/primer'}
210
- ]
211
-
212
- export function SingleSelectListStory(): JSX.Element {
213
- const [selectedIndex, setSelectedIndex] = React.useState(1)
214
-
215
- return (
216
- <>
217
- <h1>Single Select List</h1>
218
- <ErsatzOverlay>
219
- <ActionList selectionVariant="single" showDividers role="listbox" aria-label="Select a project">
220
- {projects.map((project, index) => (
221
- <ActionList.Item
222
- key={index}
223
- role="option"
224
- selected={index === selectedIndex}
225
- onSelect={() => setSelectedIndex(index)}
226
- >
227
- <ActionList.LeadingVisual>
228
- <TableIcon />
229
- </ActionList.LeadingVisual>
230
- {project.name}
231
- <ActionList.Description variant="block">{project.scope}</ActionList.Description>
232
- </ActionList.Item>
233
- ))}
234
- </ActionList>
235
- </ErsatzOverlay>
236
- </>
237
- )
238
- }
239
- SingleSelectListStory.storyName = 'Single Select'
240
-
241
- export function MultiSelectListStory(): JSX.Element {
242
- const [assignees, setAssignees] = React.useState(users.slice(0, 2))
243
-
244
- const toggleAssignee = (assignee: typeof users[number]) => {
245
- const assigneeIndex = assignees.findIndex(a => a.login === assignee.login)
246
-
247
- if (assigneeIndex === -1) setAssignees([...assignees, assignee])
248
- else setAssignees(assignees.filter((_, index) => index !== assigneeIndex))
249
- }
250
-
251
- return (
252
- <>
253
- <h1>Multi Select List</h1>
254
- <ErsatzOverlay>
255
- <ActionList selectionVariant="multiple" showDividers role="listbox" aria-label="Select assignees">
256
- {users.map(user => (
257
- <ActionList.Item
258
- role="option"
259
- key={user.login}
260
- selected={Boolean(assignees.find(assignee => assignee.login === user.login))}
261
- onSelect={() => toggleAssignee(user)}
262
- >
263
- <ActionList.LeadingVisual>
264
- <Avatar src={`https://github.com/${user.login}.png`} />
265
- </ActionList.LeadingVisual>
266
- {user.login}
267
- <ActionList.Description>{user.name}</ActionList.Description>
268
- </ActionList.Item>
269
- ))}
270
- </ActionList>
271
- </ErsatzOverlay>
272
- </>
273
- )
274
- }
275
- MultiSelectListStory.storyName = 'Multi Select'
276
-
277
- export function DisabledStory(): JSX.Element {
278
- const [selectedIndex, setSelectedIndex] = React.useState(0)
279
-
280
- return (
281
- <>
282
- <h1>Disabled Items</h1>
283
- <ErsatzOverlay>
284
- <ActionList selectionVariant="single" showDividers role="listbox" aria-label="Select a project">
285
- {projects.map((project, index) => (
286
- <ActionList.Item
287
- key={index}
288
- role="option"
289
- selected={index === selectedIndex}
290
- onSelect={() => setSelectedIndex(index)}
291
- disabled={index === 1}
292
- >
293
- <ActionList.LeadingVisual>
294
- <TableIcon />
295
- </ActionList.LeadingVisual>
296
- {project.name}
297
- <ActionList.Description variant="block">{project.scope}</ActionList.Description>
298
- </ActionList.Item>
299
- ))}
300
- </ActionList>
301
- </ErsatzOverlay>
302
- </>
303
- )
304
- }
305
- DisabledStory.storyName = 'Disabled Items'
306
-
307
- export function GroupsStory(): JSX.Element {
308
- const [assignees, setAssignees] = React.useState(users.slice(0, 1))
309
-
310
- const toggleAssignee = (assignee: typeof users[number]) => {
311
- const assigneeIndex = assignees.findIndex(a => a.login === assignee.login)
312
-
313
- if (assigneeIndex === -1) setAssignees([...assignees, assignee])
314
- else setAssignees(assignees.filter((_, index) => index !== assigneeIndex))
315
- }
316
-
317
- return (
318
- <>
319
- <h1>Groups</h1>
320
- <ErsatzOverlay>
321
- <ActionList selectionVariant="multiple" showDividers aria-label="Select reviewers">
322
- <ActionList.Group title="Suggestions" variant="filled" role="listbox">
323
- {users.slice(0, 2).map(user => (
324
- <ActionList.Item
325
- key={user.login}
326
- role="option"
327
- selected={Boolean(assignees.find(assignee => assignee.login === user.login))}
328
- onSelect={() => toggleAssignee(user)}
329
- >
330
- <ActionList.LeadingVisual>
331
- <Avatar src={`https://github.com/${user.login}.png`} />
332
- </ActionList.LeadingVisual>
333
- {user.login}
334
- <ActionList.Description>{user.name}</ActionList.Description>
335
- <ActionList.Description variant="block">Recently edited these files</ActionList.Description>
336
- </ActionList.Item>
337
- ))}
338
- </ActionList.Group>
339
- <ActionList.Group title="Everyone" variant="filled" role="listbox">
340
- {users.slice(2).map(user => (
341
- <ActionList.Item
342
- role="option"
343
- key={user.login}
344
- selected={Boolean(assignees.find(assignee => assignee.login === user.login))}
345
- onSelect={() => toggleAssignee(user)}
346
- >
347
- <ActionList.LeadingVisual>
348
- <Avatar src={`https://github.com/${user.login}.png`} />
349
- </ActionList.LeadingVisual>
350
- {user.login}
351
- <ActionList.Description>{user.name}</ActionList.Description>
352
- </ActionList.Item>
353
- ))}
354
- </ActionList.Group>
355
- </ActionList>
356
- </ErsatzOverlay>
357
- </>
358
- )
359
- }
360
- GroupsStory.storyName = 'Groups'
361
-
362
- export function ActionsStory(): JSX.Element {
363
- return (
364
- <>
365
- <h1>Actions</h1>
366
- <ErsatzOverlay>
367
- <ActionList showDividers>
368
- <ActionList.Item>
369
- <ActionList.LeadingVisual>
370
- <ServerIcon />
371
- </ActionList.LeadingVisual>
372
- Open current Codespace
373
- <ActionList.Description variant="block">
374
- Your existing Codespace will be opened to its previous state, and you&apos;ll be asked to manually switch
375
- to new-branch.
376
- </ActionList.Description>
377
- </ActionList.Item>
378
- <ActionList.Item>
379
- <ActionList.LeadingVisual>
380
- <PlusCircleIcon />
381
- </ActionList.LeadingVisual>
382
- Create new Codespace
383
- <ActionList.Description variant="block">
384
- Create a brand new Codespace with a fresh image and checkout this branch.
385
- </ActionList.Description>
386
- </ActionList.Item>
387
- </ActionList>
388
- </ErsatzOverlay>
389
- </>
390
- )
391
- }
392
- ActionsStory.storyName = 'Actions'
393
-
394
- export function ComplexListInsetVariantStory(): JSX.Element {
395
- return (
396
- <>
397
- <h1>Complex List</h1>
398
- <h2>Inset Variant</h2>
399
- <ErsatzOverlay>
400
- <ActionList showDividers>
401
- <ActionList.Item>
402
- <ActionList.LeadingVisual>
403
- <TypographyIcon />
404
- </ActionList.LeadingVisual>
405
- Rename
406
- </ActionList.Item>
407
- <ActionList.Item>
408
- <ActionList.LeadingVisual>
409
- <VersionsIcon />
410
- </ActionList.LeadingVisual>
411
- Duplicate
412
- <ActionList.Description>Create a copy</ActionList.Description>
413
- </ActionList.Item>
414
-
415
- <ActionList.Group title="Live query" variant="filled">
416
- <ActionList.Item style={{color: 'rebeccapurple'}}>
417
- <ActionList.LeadingVisual>
418
- <SearchIcon />
419
- </ActionList.LeadingVisual>
420
- repo:github/memex,github/github
421
- </ActionList.Item>
422
- </ActionList.Group>
423
- <ActionList.Divider />
424
- <ActionList.Group title="Layout" variant="subtle">
425
- <ActionList.Item>
426
- <ActionList.LeadingVisual>
427
- <NoteIcon />
428
- </ActionList.LeadingVisual>
429
- Table
430
- <ActionList.Description variant="block">
431
- Information-dense table optimized for operations across teams
432
- </ActionList.Description>
433
- </ActionList.Item>
434
- <ActionList.Item role="listitem">
435
- <ActionList.LeadingVisual>
436
- <ProjectIcon />
437
- </ActionList.LeadingVisual>
438
- Board
439
- <ActionList.Description variant="block">
440
- Kanban-style board focused on visual states
441
- </ActionList.Description>
442
- </ActionList.Item>
443
- </ActionList.Group>
444
- <ActionList.Divider />
445
- <ActionList.Group>
446
- <ActionList.Item style={{fontWeight: 'bold'}}>
447
- <ActionList.LeadingVisual>
448
- <FilterIcon />
449
- </ActionList.LeadingVisual>
450
- Save sort and filters to current view
451
- </ActionList.Item>
452
- <ActionList.Item style={{fontWeight: 'bold'}}>
453
- <ActionList.LeadingVisual>
454
- <FilterIcon />
455
- </ActionList.LeadingVisual>
456
- Save sort and filters to new view
457
- </ActionList.Item>
458
- </ActionList.Group>
459
- <ActionList.Divider />
460
- <ActionList.Group sx={{backgroundColor: 'accent.emphasis'}}>
461
- <ActionList.Item sx={{color: 'white'}}>
462
- <ActionList.LeadingVisual sx={{color: 'white'}}>
463
- <GearIcon />
464
- </ActionList.LeadingVisual>
465
- View settings
466
- </ActionList.Item>
467
- </ActionList.Group>
468
- </ActionList>
469
- </ErsatzOverlay>
470
- </>
471
- )
472
- }
473
- ComplexListInsetVariantStory.storyName = 'Complex List — Inset Variant'
474
-
475
- export function ComplexListFullVariantStory(): JSX.Element {
476
- return (
477
- <>
478
- <h1>Complex List</h1>
479
- <h2>Full Variant</h2>
480
- <ErsatzOverlay>
481
- <ActionList variant="full">
482
- <ActionList.Item>
483
- <ActionList.LeadingVisual>
484
- <TypographyIcon />
485
- </ActionList.LeadingVisual>
486
- Rename
487
- </ActionList.Item>
488
- <ActionList.Item>
489
- <ActionList.LeadingVisual>
490
- <VersionsIcon />
491
- </ActionList.LeadingVisual>
492
- Duplicate
493
- <ActionList.Description>Create a copy</ActionList.Description>
494
- </ActionList.Item>
495
-
496
- <ActionList.Group title="Live query" variant="filled">
497
- <ActionList.Item style={{color: 'rebeccapurple'}}>
498
- <ActionList.LeadingVisual>
499
- <SearchIcon />
500
- </ActionList.LeadingVisual>
501
- repo:github/memex,github/github
502
- </ActionList.Item>
503
- </ActionList.Group>
504
- <ActionList.Divider />
505
- <ActionList.Group title="Layout" variant="subtle">
506
- <ActionList.Item>
507
- <ActionList.LeadingVisual>
508
- <NoteIcon />
509
- </ActionList.LeadingVisual>
510
- Table
511
- <ActionList.Description variant="block">
512
- Information-dense table optimized for operations across teams
513
- </ActionList.Description>
514
- </ActionList.Item>
515
- <ActionList.Item>
516
- <ActionList.LeadingVisual>
517
- <ProjectIcon />
518
- </ActionList.LeadingVisual>
519
- Board
520
- <ActionList.Description variant="block">
521
- Kanban-style board focused on visual states
522
- </ActionList.Description>
523
- </ActionList.Item>
524
- </ActionList.Group>
525
- <ActionList.Divider />
526
- <ActionList.Group>
527
- <ActionList.Item style={{fontWeight: 'bold'}}>
528
- <ActionList.LeadingVisual>
529
- <FilterIcon />
530
- </ActionList.LeadingVisual>
531
- Save sort and filters to current view
532
- </ActionList.Item>
533
- <ActionList.Item style={{fontWeight: 'bold'}}>
534
- <ActionList.LeadingVisual>
535
- <FilterIcon />
536
- </ActionList.LeadingVisual>
537
- Save sort and filters to new view
538
- </ActionList.Item>
539
- </ActionList.Group>
540
- <ActionList.Divider />
541
- <ActionList.Group sx={{backgroundColor: 'accent.emphasis'}}>
542
- <ActionList.Item sx={{color: 'white'}}>
543
- <ActionList.LeadingVisual sx={{color: 'white'}}>
544
- <GearIcon />
545
- </ActionList.LeadingVisual>
546
- View settings
547
- </ActionList.Item>
548
- </ActionList.Group>
549
- </ActionList>
550
- </ErsatzOverlay>
551
- </>
552
- )
553
- }
554
- ComplexListFullVariantStory.storyName = 'Complex List — Full Variant'
555
-
556
- type ReactRouterLikeLinkProps = {to: string; children: React.ReactNode}
557
- const ReactRouterLikeLink = forwardRef<HTMLAnchorElement, ReactRouterLikeLinkProps>(
558
- ({to, ...props}: {to: string; children: React.ReactNode}, ref) => {
559
- // eslint-disable-next-line jsx-a11y/anchor-has-content
560
- return <a ref={ref} href={to} {...props} />
561
- }
562
- )
563
-
564
- const NextJSLikeLink = forwardRef(
565
- ({href, children}: {href: string; children: React.ReactNode}, ref): React.ReactElement => {
566
- const child = React.Children.only(children)
567
- const childProps = {
568
- ref,
569
- href
570
- }
571
- return <>{React.isValidElement(child) ? React.cloneElement(child, childProps) : null}</>
572
- }
573
- )
574
-
575
- export function LinkItemStory(): JSX.Element {
576
- return (
577
- <>
578
- <h1>List with LinkItem</h1>
579
- <ErsatzOverlay>
580
- <ActionList showDividers>
581
- <ActionList.Item>
582
- <ActionList.LeadingVisual>
583
- <XIcon />
584
- </ActionList.LeadingVisual>
585
- not a link, just an Item for comparison
586
- </ActionList.Item>
587
- <ActionList.LinkItem href="https://github.com/primer">
588
- <ActionList.LeadingVisual>
589
- <LinkIcon />
590
- </ActionList.LeadingVisual>
591
- ActionList.LinkItem
592
- </ActionList.LinkItem>
593
- <ActionList.LinkItem href="https://github.com/primer" target="_blank" rel="noopener noreferrer">
594
- <ActionList.LeadingVisual>
595
- <LinkIcon />
596
- </ActionList.LeadingVisual>
597
- ActionList.LinkItem with anchor attributes
598
- </ActionList.LinkItem>
599
- <ActionList.LinkItem
600
- as={ReactRouterLikeLink}
601
- to="?path=/story/composite-components-actionlist2--simple-list-story"
602
- >
603
- <ActionList.LeadingVisual>
604
- <LinkIcon />
605
- </ActionList.LeadingVisual>
606
- as ReactRouterLink
607
- </ActionList.LinkItem>
608
- <NextJSLikeLink href="?path=/story/composite-components-actionlist2--simple-list-story">
609
- <ActionList.LinkItem>
610
- <ActionList.LeadingVisual>
611
- <LinkIcon />
612
- </ActionList.LeadingVisual>
613
- NextJS style Link
614
- </ActionList.LinkItem>
615
- </NextJSLikeLink>
616
- <ActionList.LinkItem href="?path=/story/composite-components-actionlist2--simple-list-story">
617
- <ActionList.LeadingVisual>
618
- <LinkIcon />
619
- </ActionList.LeadingVisual>
620
- ActionList.LinkItem with everything
621
- <ActionList.Description variant="inline">inline description</ActionList.Description>
622
- <ActionList.Description variant="block">Block description</ActionList.Description>
623
- <ActionList.TrailingVisual>⌘ + L</ActionList.TrailingVisual>
624
- </ActionList.LinkItem>
625
- </ActionList>
626
- </ErsatzOverlay>
627
- </>
628
- )
629
- }
630
- LinkItemStory.storyName = 'List with LinkItem'
631
-
632
- export function DOMPropsStory(): JSX.Element {
633
- return (
634
- <>
635
- <h1>Simple List</h1>
636
- <ErsatzOverlay>
637
- <ActionList>
638
- {/* eslint-disable-next-line @typescript-eslint/no-explicit-any */}
639
- <ActionList.Item id="something" onClick={(event: any) => alert(`Id is '${event.target.id}'`)}>
640
- Has an id
641
- </ActionList.Item>
642
- </ActionList>
643
- </ErsatzOverlay>
644
- </>
645
- )
646
- }
647
- DOMPropsStory.storyName = 'List an item input including DOM props'
648
-
649
- export function CustomItemChildren(): JSX.Element {
650
- return (
651
- <>
652
- <h1>Custom Item Children</h1>
653
- <ErsatzOverlay>
654
- <ActionList>
655
- <ActionList.Item>
656
- <ActionList.LeadingVisual>
657
- <ArrowRightIcon />
658
- </ActionList.LeadingVisual>
659
- <Label outline borderColor="success.emphasis">
660
- Choose this one
661
- </Label>
662
- <ActionList.TrailingVisual>
663
- <ArrowLeftIcon />
664
- </ActionList.TrailingVisual>
665
- </ActionList.Item>
666
- </ActionList>
667
- </ErsatzOverlay>
668
- </>
669
- )
670
- }
671
- CustomItemChildren.storyName = 'Custom Item Children'
672
-
673
- export function SizeStressTestingStory(): JSX.Element {
674
- return (
675
- <>
676
- <h1>Size Stress Testing</h1>
677
- <ErsatzOverlay maxWidth="300px">
678
- <ActionList showDividers>
679
- <ActionList.Item>
680
- <ActionList.LeadingVisual>
681
- <ArrowRightIcon />
682
- </ActionList.LeadingVisual>
683
- Block Description. Long text should wrap
684
- <ActionList.Description variant="block">
685
- This description is long, but it is block so it wraps
686
- </ActionList.Description>
687
- <ActionList.TrailingVisual>
688
- <ArrowLeftIcon />
689
- </ActionList.TrailingVisual>
690
- </ActionList.Item>
691
- <ActionList.Item>
692
- <ActionList.LeadingVisual>
693
- <ArrowRightIcon />
694
- </ActionList.LeadingVisual>
695
- Inline Description
696
- <ActionList.Description>This description gets truncated because it is inline</ActionList.Description>
697
- <ActionList.TrailingVisual>
698
- <ArrowLeftIcon />
699
- </ActionList.TrailingVisual>
700
- </ActionList.Item>
701
- <ActionList.Item>
702
- <ActionList.LeadingVisual>
703
- <ArrowRightIcon />
704
- </ActionList.LeadingVisual>
705
- Really long text without a description should wrap so it wraps
706
- <ActionList.TrailingVisual>
707
- <ArrowLeftIcon />
708
- </ActionList.TrailingVisual>
709
- </ActionList.Item>
710
- </ActionList>
711
- </ErsatzOverlay>
712
- </>
713
- )
714
- }
715
- SizeStressTestingStory.storyName = 'Size Stress Testing'
716
-
717
- export function AllCombinations(): JSX.Element {
718
- return (
719
- <>
720
- <h1>All Possible Combinations</h1>
721
- <code>
722
- dynamic features: L = Leading Visual, I = Inline Description, B = Block Description, T = Trailing Visual
723
- </code>
724
- <br />
725
- <code>16 possible combinations</code>
726
- <br />
727
- <br />
728
- <ErsatzOverlay maxWidth="300px">
729
- <ActionList showDividers>
730
- <ActionList.Item>
731
- <ActionList.LeadingVisual>
732
- <StarIcon />
733
- </ActionList.LeadingVisual>
734
- The everything bagel
735
- <ActionList.Description variant="inline">inline description</ActionList.Description>
736
- <ActionList.Description variant="block">Block description</ActionList.Description>
737
- <ActionList.TrailingVisual>
738
- <StarIcon />
739
- </ActionList.TrailingVisual>
740
- </ActionList.Item>
741
- <ActionList.Item>none of them, only text</ActionList.Item>
742
- <ActionList.Item>
743
- <ActionList.LeadingVisual>
744
- <StarIcon />
745
- </ActionList.LeadingVisual>
746
- only L
747
- </ActionList.Item>
748
- <ActionList.Item>
749
- only I<ActionList.Description variant="inline">inline description</ActionList.Description>
750
- </ActionList.Item>
751
- <ActionList.Item>
752
- only B<ActionList.Description variant="block">Block description</ActionList.Description>
753
- </ActionList.Item>
754
- <ActionList.Item>
755
- only T
756
- <ActionList.TrailingVisual>
757
- <StarIcon />
758
- </ActionList.TrailingVisual>
759
- </ActionList.Item>
760
- <ActionList.Item>
761
- <ActionList.LeadingVisual>
762
- <StarIcon />
763
- </ActionList.LeadingVisual>
764
- L + I<ActionList.Description variant="inline">inline description</ActionList.Description>
765
- </ActionList.Item>
766
- <ActionList.Item>
767
- <ActionList.LeadingVisual>
768
- <StarIcon />
769
- </ActionList.LeadingVisual>
770
- L + B<ActionList.Description variant="block">Block description</ActionList.Description>
771
- </ActionList.Item>
772
- <ActionList.Item>
773
- <ActionList.LeadingVisual>
774
- <StarIcon />
775
- </ActionList.LeadingVisual>
776
- L + T
777
- <ActionList.TrailingVisual>
778
- <StarIcon />
779
- </ActionList.TrailingVisual>
780
- </ActionList.Item>
781
- <ActionList.Item>
782
- I + B<ActionList.Description variant="inline">inline description</ActionList.Description>
783
- <ActionList.Description variant="block">Block description</ActionList.Description>
784
- </ActionList.Item>
785
- <ActionList.Item>
786
- I + T<ActionList.Description variant="inline">inline description</ActionList.Description>
787
- <ActionList.TrailingVisual>
788
- <StarIcon />
789
- </ActionList.TrailingVisual>
790
- </ActionList.Item>
791
- <ActionList.Item>
792
- B + T<ActionList.Description variant="block">Block description</ActionList.Description>
793
- <ActionList.TrailingVisual>
794
- <StarIcon />
795
- </ActionList.TrailingVisual>
796
- </ActionList.Item>
797
- <ActionList.Item>
798
- <ActionList.LeadingVisual>
799
- <StarIcon />
800
- </ActionList.LeadingVisual>
801
- L + I + B<ActionList.Description variant="inline">inline description</ActionList.Description>
802
- <ActionList.Description variant="block">Block description</ActionList.Description>
803
- </ActionList.Item>
804
- <ActionList.Item>
805
- <ActionList.LeadingVisual>
806
- <StarIcon />
807
- </ActionList.LeadingVisual>
808
- L + I + T<ActionList.Description variant="inline">inline description</ActionList.Description>
809
- <ActionList.TrailingVisual>
810
- <StarIcon />
811
- </ActionList.TrailingVisual>
812
- </ActionList.Item>
813
- <ActionList.Item>
814
- <ActionList.LeadingVisual>
815
- <StarIcon />
816
- </ActionList.LeadingVisual>
817
- L + B + T<ActionList.Description variant="block">Block description</ActionList.Description>
818
- <ActionList.TrailingVisual>
819
- <StarIcon />
820
- </ActionList.TrailingVisual>
821
- </ActionList.Item>
822
- <ActionList.Item>
823
- I + B + T<ActionList.Description variant="inline">inline description</ActionList.Description>
824
- <ActionList.Description variant="block">Block description</ActionList.Description>
825
- <ActionList.TrailingVisual>
826
- <StarIcon />
827
- </ActionList.TrailingVisual>
828
- </ActionList.Item>
829
- </ActionList>
830
- </ErsatzOverlay>
831
- </>
832
- )
833
- }
834
- AllCombinations.storyName = 'All Combinations'
835
-
836
- const teams = [
837
- {id: '5025661', type: 'team', slug: 'github/primer-reviewers', name: 'Primer Reviewers', members: 20},
838
- {id: '1929972', type: 'team', slug: 'github/design-infrastructure', name: 'Design Infrastructure', members: 20}
839
- ]
840
-
841
- export function ConditionalChildren(): JSX.Element {
842
- type reviewerType = {name: string; id?: string; type?: string; login?: string; slug?: string; members?: number}
843
- const potentialReviewers: reviewerType[] = [...teams, ...users]
844
- return (
845
- <>
846
- <h1>Conditional Children</h1>
847
- <ErsatzOverlay>
848
- <ActionList showDividers>
849
- {potentialReviewers.map((reviewer, index) => (
850
- <ActionList.Item key={index}>
851
- <ActionList.LeadingVisual>
852
- {reviewer.type === 'team' ? (
853
- <Avatar src={`https://avatars.githubusercontent.com/t/${reviewer.id}`} />
854
- ) : (
855
- <Avatar src={`https://avatars.githubusercontent.com/${reviewer.login}`} />
856
- )}
857
- </ActionList.LeadingVisual>
858
- {reviewer.login || reviewer.slug}
859
- {reviewer.type === 'team' ? (
860
- <ActionList.Description variant="block">{reviewer.name}</ActionList.Description>
861
- ) : (
862
- <ActionList.Description>{reviewer.name}</ActionList.Description>
863
- )}
864
- {reviewer.type === 'team' && (
865
- <ActionList.TrailingVisual>
866
- <PeopleIcon />
867
- {reviewer.members}
868
- </ActionList.TrailingVisual>
869
- )}
870
- </ActionList.Item>
871
- ))}
872
- </ActionList>
873
- </ErsatzOverlay>
874
- </>
875
- )
876
- }
877
- ConditionalChildren.storyName = 'Conditional Children'
878
-
879
- export function NestedChildren(): JSX.Element {
880
- return (
881
- <>
882
- <h1>Nested Children</h1>
883
- <ErsatzOverlay>
884
- <ActionList showDividers>
885
- <li>
886
- <ul id="i like extra lists" style={{paddingInlineStart: 0}}>
887
- {users.map(user => (
888
- <ActionList.Item key={user.login}>
889
- <ActionList.LeadingVisual>
890
- <Avatar src={`https://avatars.githubusercontent.com/${user.login}`} />
891
- </ActionList.LeadingVisual>
892
- {user.login}
893
- <ReviewerDescription user={user} />
894
- </ActionList.Item>
895
- ))}
896
- </ul>
897
- </li>
898
- </ActionList>
899
- </ErsatzOverlay>
900
- </>
901
- )
902
- }
903
- NestedChildren.storyName = 'Nested Children'
904
-
905
- const ReviewerDescription = ({user}: {user: typeof users[number]}) => {
906
- const usersRecentlyEditedFile = users.slice(0, 2)
907
-
908
- if (usersRecentlyEditedFile.find(u => u.login === user.login)) {
909
- return (
910
- <span>
911
- <ActionList.Description>{user.name}</ActionList.Description>
912
- <ActionList.Description variant="block">Recently edited this file</ActionList.Description>
913
- </span>
914
- )
915
- } else {
916
- return <ActionList.Description>{user.name}</ActionList.Description>
917
- }
918
- }
919
-
920
- export function ChildWithInternalState(): JSX.Element {
921
- return (
922
- <>
923
- <h1>Child with internal state - broken</h1>
924
- <ErsatzOverlay>
925
- <ActionList showDividers>
926
- {users.map(user => (
927
- <ActionList.Item key={user.login}>
928
- <ActionList.LeadingVisual>
929
- <Avatar src={`https://avatars.githubusercontent.com/${user.login}`} />
930
- </ActionList.LeadingVisual>
931
- {user.login}
932
- <StatefulChild>{user.name}</StatefulChild>
933
- </ActionList.Item>
934
- ))}
935
- </ActionList>
936
- </ErsatzOverlay>
937
- </>
938
- )
939
- }
940
- ChildWithInternalState.storyName = 'Child with internal state'
941
-
942
- const StatefulChild: React.FC = props => {
943
- const [nameVisible, setNameVisibility] = React.useState(false)
944
- const toggle = () => {
945
- setNameVisibility(!nameVisible)
946
- }
947
-
948
- /** once description is registered, it cannot be unregistered, only updated. */
949
-
950
- return (
951
- <>
952
- <ButtonInvisible onClick={toggle} sx={{fontSize: 0, paddingY: 0}}>
953
- {nameVisible ? 'Hide name' : 'Show name'}
954
- </ButtonInvisible>
955
- {nameVisible && <ActionList.Description>{props.children}</ActionList.Description>}
956
- </>
957
- )
958
- }
959
-
960
- export function ChildWithSideEffects(): JSX.Element {
961
- const user = users[0]
962
- const [selected, setSelected] = React.useState(true)
963
-
964
- return (
965
- <>
966
- <h1>Child with side effects</h1>
967
- <ErsatzOverlay>
968
- <ActionList selectionVariant="multiple" role="listbox" aria-label="Select assignees">
969
- <ActionList.Item selected={selected} onSelect={() => setSelected(!selected)} role="option">
970
- <ActionList.LeadingVisual>
971
- <Avatar src={`https://avatars.githubusercontent.com/${user.login}`} />
972
- </ActionList.LeadingVisual>
973
- {user.login}
974
- <SideEffectDescription />
975
- </ActionList.Item>
976
- </ActionList>
977
- </ErsatzOverlay>
978
- </>
979
- )
980
- }
981
- ChildWithSideEffects.storyName = 'Child with side effects'
982
-
983
- const SideEffectDescription = () => {
984
- const [seconds, setSeconds] = React.useState(0)
985
-
986
- React.useEffect(() => {
987
- const fn = () => setSeconds(s => s + 1)
988
- const interval = window.setInterval(fn, 1000)
989
- return () => window.clearInterval(interval)
990
- }, [])
991
-
992
- return <ActionList.Description>{seconds} seconds passed</ActionList.Description>
993
- }
994
-
995
- export function WithSx(): JSX.Element {
996
- return (
997
- <>
998
- <h1>With sx prop</h1>
999
- <ErsatzOverlay>
1000
- <ActionList sx={{paddingTop: 4}}>
1001
- <ActionList.Item sx={{backgroundColor: 'accent.subtle'}}>
1002
- <ActionList.LeadingVisual sx={{color: 'accent.emphasis'}}>
1003
- <LinkIcon />
1004
- </ActionList.LeadingVisual>
1005
- github.com/primer
1006
- <ActionList.Description sx={{paddingLeft: 4, color: 'accent.emphasis'}}>
1007
- all items support sx prop
1008
- </ActionList.Description>
1009
- </ActionList.Item>
1010
- <ActionList.Item>
1011
- <ActionList.LeadingVisual>
1012
- <LawIcon />
1013
- </ActionList.LeadingVisual>
1014
- MIT License
1015
- </ActionList.Item>
1016
- <ActionList.Item
1017
- variant="danger"
1018
- sx={{
1019
- borderLeft: '2px solid',
1020
- borderColor: 'danger.emphasis',
1021
- borderTopLeftRadius: 0,
1022
- borderBottomLeftRadius: 0
1023
- }}
1024
- >
1025
- <ActionList.LeadingVisual>
1026
- <AlertIcon />
1027
- </ActionList.LeadingVisual>
1028
- 4 vulnerabilities
1029
- </ActionList.Item>
1030
- </ActionList>
1031
- </ErsatzOverlay>
1032
- </>
1033
- )
1034
- }
1035
- WithSx.storyName = 'With sx'
1036
-
1037
- export function MemexGroupBy(): JSX.Element {
1038
- const [selectedIndex, setSelectedIndex] = React.useState<number | null>(1)
1039
-
1040
- const options = [
1041
- {text: 'Status', icon: <IssueOpenedIcon />},
1042
- {text: 'Stage', icon: <TableIcon />},
1043
- {text: 'Assignee', icon: <PeopleIcon />},
1044
- {text: 'Team', icon: <TypographyIcon />},
1045
- {text: 'Estimate', icon: <NumberIcon />},
1046
- {text: 'Due Date', icon: <CalendarIcon />}
1047
- ]
1048
-
1049
- return (
1050
- <>
1051
- <h1>Memex GroupBy List</h1>
1052
- <ErsatzOverlay>
1053
- <ActionList>
1054
- <ActionList.Group title="Group by" selectionVariant="single">
1055
- {options.map((option, index) => (
1056
- <ActionList.Item key={index} selected={index === selectedIndex} onSelect={() => setSelectedIndex(index)}>
1057
- <ActionList.LeadingVisual>{option.icon}</ActionList.LeadingVisual>
1058
- {option.text}
1059
- </ActionList.Item>
1060
- ))}
1061
- </ActionList.Group>
1062
- {typeof selectedIndex === 'number' && (
1063
- <>
1064
- <ActionList.Divider />
1065
- <ActionList.Item onSelect={() => setSelectedIndex(null)}>
1066
- <ActionList.LeadingVisual>
1067
- <XIcon />
1068
- </ActionList.LeadingVisual>
1069
- Clear Group by
1070
- </ActionList.Item>
1071
- </>
1072
- )}
1073
- </ActionList>
1074
- </ErsatzOverlay>
1075
- </>
1076
- )
1077
- }
1078
- MemexGroupBy.storyName = 'Memex GroupBy List'
1079
-
1080
- type Option = {text: string; icon: React.ReactNode; selected: boolean}
1081
- export function MemexSortable(): JSX.Element {
1082
- const [options, setOptions] = React.useState<Option[]>([
1083
- {text: 'Status', icon: <IssueOpenedIcon />, selected: true},
1084
- {text: 'Stage', icon: <TableIcon />, selected: true},
1085
- {text: 'Assignee', icon: <PeopleIcon />, selected: true},
1086
- {text: 'Team', icon: <TypographyIcon />, selected: true},
1087
- {text: 'Estimate', icon: <NumberIcon />, selected: false},
1088
- {text: 'Due Date', icon: <CalendarIcon />, selected: false}
1089
- ])
1090
-
1091
- const toggle = (text: string) => {
1092
- setOptions(
1093
- options.map(option => {
1094
- if (option.text === text) option.selected = !option.selected
1095
- return option
1096
- })
1097
- )
1098
- }
1099
-
1100
- const reorder = ({optionToMove, moveAfterOption}: {optionToMove: Option; moveAfterOption: Option}) => {
1101
- setOptions(currentOptions => {
1102
- const newOptions = [...currentOptions]
1103
- // remove option to move
1104
- const currentPosition = newOptions.findIndex(o => o.text === optionToMove.text)
1105
- newOptions.splice(currentPosition, 1)
1106
- // add it after the provided element
1107
- const newPosition = newOptions.findIndex(o => o.text === moveAfterOption.text) + 1
1108
- newOptions.splice(newPosition, 0, optionToMove)
1109
- return newOptions
1110
- })
1111
- }
1112
-
1113
- const visibleOptions = options.filter(option => option.selected)
1114
- const hiddenOptions = options.filter(option => !option.selected)
1115
-
1116
- return (
1117
- <>
1118
- <h1>Memex Sortable List</h1>
1119
- <ErsatzOverlay>
1120
- <DndProvider backend={HTML5Backend}>
1121
- <ActionList selectionVariant="multiple">
1122
- <ActionList.Group title="Visible fields (can be reordered)">
1123
- {visibleOptions.map(option => (
1124
- <SortableItem
1125
- key={option.text}
1126
- option={option}
1127
- onSelect={() => toggle(option.text)}
1128
- reorder={reorder}
1129
- />
1130
- ))}
1131
- </ActionList.Group>
1132
- <ActionList.Group
1133
- title="Hidden fields"
1134
- selectionVariant={
1135
- /** selectionVariant override on Group: disable selection if there are no options */
1136
- hiddenOptions.length ? 'multiple' : false
1137
- }
1138
- >
1139
- {hiddenOptions.map((option, index) => (
1140
- <ActionList.Item key={index} selected={option.selected} onSelect={() => toggle(option.text)}>
1141
- <ActionList.LeadingVisual>{option.icon}</ActionList.LeadingVisual>
1142
- {option.text}
1143
- </ActionList.Item>
1144
- ))}
1145
- {hiddenOptions.length === 0 && <ActionList.Item disabled>No hidden fields</ActionList.Item>}
1146
- </ActionList.Group>
1147
- </ActionList>
1148
- </DndProvider>
1149
- </ErsatzOverlay>
1150
- </>
1151
- )
1152
- }
1153
- MemexSortable.storyName = 'Memex Sortable List'
1154
-
1155
- type SortableItemProps = {
1156
- option: Option
1157
- onSelect: ItemProps['onSelect']
1158
- reorder: ({optionToMove, moveAfterOption}: {optionToMove: Option; moveAfterOption: Option}) => void
1159
- }
1160
- const SortableItem: React.FC<SortableItemProps> = ({option, onSelect, reorder}) => {
1161
- const [{isDragging}, dragRef] = useDrag(() => ({
1162
- type: 'ITEM',
1163
- item: option,
1164
- collect: monitor => {
1165
- return {isDragging: monitor.isDragging()}
1166
- }
1167
- }))
1168
-
1169
- const [{isOver}, dropRef] = useDrop(() => ({
1170
- accept: 'ITEM',
1171
- collect: monitor => {
1172
- return {isOver: monitor.isOver()}
1173
- },
1174
- drop: (optionDropped: Option) => {
1175
- reorder({optionToMove: optionDropped, moveAfterOption: option})
1176
- }
1177
- }))
1178
-
1179
- return (
1180
- <ActionList.Item
1181
- ref={element => dragRef(element) && dropRef(element)} // merge refs
1182
- selected={option.selected}
1183
- onSelect={onSelect}
1184
- sx={{
1185
- opacity: isDragging ? 0.5 : 1,
1186
- boxShadow: isOver ? theme => `0px 2px 0 0px ${theme.colors.accent.emphasis}` : undefined,
1187
- borderRadius: isOver ? 0 : 2
1188
- }}
1189
- >
1190
- <ActionList.LeadingVisual>{option.icon}</ActionList.LeadingVisual>
1191
- {option.text}
1192
- </ActionList.Item>
1193
- )
1194
- }
1195
-
1196
- const repos = [
1197
- 'primer/primer-markdown',
1198
- 'primer/octicons',
1199
- 'primer/css',
1200
- 'primer/primer-layout',
1201
- 'primer/primer-alerts',
1202
- 'primer/primer-avatars',
1203
- 'primer/react',
1204
- 'primer/primitives'
1205
- ]
1206
-
1207
- export function AsyncListStory(): JSX.Element {
1208
- const [results, setResults] = React.useState(repos.slice(0, 6))
1209
- const [loading, setLoading] = React.useState(false)
1210
-
1211
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1212
- const filter = async (event: any) => {
1213
- setLoading(true)
1214
- const filteredResults = await filterSlowly(event.target.value)
1215
- setResults(filteredResults)
1216
- setLoading(false)
1217
- }
1218
-
1219
- return (
1220
- <>
1221
- <h1>Async List Items</h1>
1222
- <ErsatzOverlay>
1223
- <TextInput
1224
- onChange={filter}
1225
- placeholder="Search repositories, showing 6 by default"
1226
- sx={{m: 2, mb: 0, width: 'calc(100% - 16px)'}}
1227
- />
1228
- <ActionList sx={{height: 208, overflow: 'auto'}}>
1229
- {loading ? (
1230
- <Box sx={{display: 'flex', justifyContent: 'center', pt: 2}}>
1231
- <Spinner />
1232
- </Box>
1233
- ) : (
1234
- results.map(name => (
1235
- <ActionList.Item key={name}>
1236
- <ActionList.LeadingVisual>
1237
- <RepoIcon />
1238
- </ActionList.LeadingVisual>
1239
- {name}
1240
- </ActionList.Item>
1241
- ))
1242
- )}
1243
- </ActionList>
1244
- </ErsatzOverlay>
1245
- </>
1246
- )
1247
- }
1248
- AsyncListStory.storyName = 'Async List Options'
1249
-
1250
- const filterSlowly = async (query: string) => {
1251
- // sleep for 1s before returning results
1252
- await new Promise(resolve => setTimeout(resolve, 1000))
1253
- return await repos.filter(name => name.includes(query))
1254
- }
1255
-
1256
- export function InsideOverlay(): JSX.Element {
1257
- const [open, setOpen] = React.useState(false)
1258
- const toggle = () => setOpen(!open)
1259
- return (
1260
- <>
1261
- <h1>Inside Overlay</h1>
1262
- <AnchoredOverlay
1263
- open={open}
1264
- onOpen={toggle}
1265
- onClose={toggle}
1266
- renderAnchor={props => <button {...props}>toggle overlay</button>}
1267
- >
1268
- <ActionList>
1269
- <ActionList.Item>
1270
- Use your arrow keys
1271
- <ActionList.TrailingVisual>↓</ActionList.TrailingVisual>
1272
- </ActionList.Item>
1273
- <ActionList.Item>
1274
- keep going
1275
- <ActionList.TrailingVisual>↓</ActionList.TrailingVisual>
1276
- </ActionList.Item>
1277
- <ActionList.Item>
1278
- more more
1279
- <ActionList.TrailingVisual>↓</ActionList.TrailingVisual>
1280
- </ActionList.Item>
1281
- <ActionList.Divider />
1282
- <ActionList.Item variant="danger">
1283
- now go up!
1284
- <ActionList.TrailingVisual>↑</ActionList.TrailingVisual>
1285
- </ActionList.Item>
1286
- </ActionList>
1287
- </AnchoredOverlay>
1288
- </>
1289
- )
1290
- }
1291
- InsideOverlay.storyName = 'Inside Overlay'