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