@primer/components 31.0.0-rc.ee65b7f1 → 31.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 (815) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/browser.esm.js +12 -7
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +12 -7
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/ActionList/Item.js +3 -3
  7. package/lib/Button/Button.js +1 -1
  8. package/lib/Button/ButtonInvisible.js +1 -1
  9. package/lib/Button/ButtonTableList.js +1 -1
  10. package/lib/Pagination/Pagination.js +1 -1
  11. package/lib/_TextInputWrapper.js +1 -1
  12. package/lib-esm/ActionList/Item.js +3 -3
  13. package/lib-esm/Button/Button.js +1 -1
  14. package/lib-esm/Button/ButtonInvisible.js +1 -1
  15. package/lib-esm/Button/ButtonTableList.js +1 -1
  16. package/lib-esm/Pagination/Pagination.js +1 -1
  17. package/lib-esm/_TextInputWrapper.js +1 -1
  18. package/package.json +1 -1
  19. package/.changeset/README.md +0 -8
  20. package/.changeset/config.json +0 -10
  21. package/.devcontainer/devcontainer.json +0 -8
  22. package/.eslintrc.json +0 -137
  23. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  24. package/.github/ISSUE_TEMPLATE/new_component_proposal_template.md +0 -41
  25. package/.github/dependabot.yml +0 -18
  26. package/.github/pull_request_template.md +0 -18
  27. package/.github/workflows/ci.yml +0 -31
  28. package/.github/workflows/deploy_preview.yml +0 -47
  29. package/.github/workflows/deploy_production.yml +0 -70
  30. package/.github/workflows/release.yml +0 -35
  31. package/.github/workflows/release_canary.yml +0 -70
  32. package/.github/workflows/release_candidate.yml +0 -60
  33. package/.github/workflows/size.yml +0 -13
  34. package/.github/workflows/stale.yml +0 -26
  35. package/.gitignore +0 -10
  36. package/.npmrc +0 -4
  37. package/.nvmrc +0 -1
  38. package/.storybook/main.js +0 -11
  39. package/.storybook/preview.js +0 -113
  40. package/.vscode/launch.json +0 -21
  41. package/.vscode/settings.json +0 -13
  42. package/@types/@styled-system/index.d.ts +0 -0
  43. package/@types/@styled-system/prop-types/index.d.ts +0 -1
  44. package/@types/@styled-system/props/index.d.ts +0 -1
  45. package/@types/jest-styled-components/index.d.ts +0 -1
  46. package/CODEOWNERS +0 -2
  47. package/babel-defines.js +0 -13
  48. package/babel.config.js +0 -39
  49. package/contributor-docs/CODE_OF_CONDUCT.md +0 -76
  50. package/contributor-docs/CONTRIBUTING.md +0 -274
  51. package/contributor-docs/adrs/adr-001-typescript.md +0 -23
  52. package/contributor-docs/adrs/adr-002-behavior-isolation.md +0 -108
  53. package/contributor-docs/behaviors.md +0 -132
  54. package/contributor-docs/component-contents-api-patterns.md +0 -316
  55. package/contributor-docs/principles.md +0 -39
  56. package/docs/.eslintrc +0 -0
  57. package/docs/.gitignore +0 -91
  58. package/docs/components/PropsList.js +0 -5
  59. package/docs/components/State.js +0 -9
  60. package/docs/components/constants.js +0 -34
  61. package/docs/components/index.js +0 -2
  62. package/docs/content/ActionList.mdx +0 -99
  63. package/docs/content/ActionMenu.mdx +0 -80
  64. package/docs/content/AnchoredOverlay.mdx +0 -37
  65. package/docs/content/Autocomplete.mdx +0 -627
  66. package/docs/content/Avatar.mdx +0 -33
  67. package/docs/content/AvatarStack.mdx +0 -37
  68. package/docs/content/BorderBox.md +0 -46
  69. package/docs/content/Box.md +0 -74
  70. package/docs/content/BranchName.md +0 -18
  71. package/docs/content/Breadcrumbs.md +0 -52
  72. package/docs/content/Buttons.md +0 -56
  73. package/docs/content/CircleBadge.md +0 -45
  74. package/docs/content/CircleOcticon.md +0 -18
  75. package/docs/content/CounterLabel.md +0 -32
  76. package/docs/content/Details.md +0 -105
  77. package/docs/content/Dialog.md +0 -108
  78. package/docs/content/Dialog2.mdx +0 -179
  79. package/docs/content/Dropdown.md +0 -72
  80. package/docs/content/DropdownMenu.mdx +0 -49
  81. package/docs/content/FilterList.md +0 -44
  82. package/docs/content/FilteredSearch.md +0 -39
  83. package/docs/content/Flash.md +0 -44
  84. package/docs/content/Flex.md +0 -58
  85. package/docs/content/FormGroup.md +0 -46
  86. package/docs/content/Grid.md +0 -59
  87. package/docs/content/Header.md +0 -79
  88. package/docs/content/Heading.md +0 -22
  89. package/docs/content/Label.md +0 -42
  90. package/docs/content/LabelGroup.md +0 -31
  91. package/docs/content/Link.md +0 -37
  92. package/docs/content/Overlay.mdx +0 -94
  93. package/docs/content/Pagehead.md +0 -27
  94. package/docs/content/Pagination.md +0 -187
  95. package/docs/content/PointerBox.md +0 -81
  96. package/docs/content/Popover.md +0 -137
  97. package/docs/content/Portal.mdx +0 -78
  98. package/docs/content/Position.md +0 -100
  99. package/docs/content/ProgressBar.mdx +0 -29
  100. package/docs/content/SelectMenu.md +0 -435
  101. package/docs/content/SelectPanel.mdx +0 -67
  102. package/docs/content/SideNav.md +0 -179
  103. package/docs/content/Spinner.mdx +0 -32
  104. package/docs/content/StateLabel.md +0 -35
  105. package/docs/content/StyledOcticon.md +0 -36
  106. package/docs/content/SubNav.md +0 -102
  107. package/docs/content/TabNav.md +0 -50
  108. package/docs/content/Text.md +0 -31
  109. package/docs/content/TextInput.md +0 -34
  110. package/docs/content/TextInputTokens.mdx +0 -89
  111. package/docs/content/TextInputWithTokens.mdx +0 -97
  112. package/docs/content/Timeline.md +0 -138
  113. package/docs/content/Token.mdx +0 -381
  114. package/docs/content/Tooltip.md +0 -41
  115. package/docs/content/Truncate.md +0 -64
  116. package/docs/content/UnderlineNav.md +0 -53
  117. package/docs/content/anchoredPosition.mdx +0 -163
  118. package/docs/content/core-concepts.md +0 -70
  119. package/docs/content/focusTrap.mdx +0 -103
  120. package/docs/content/focusZone.mdx +0 -145
  121. package/docs/content/getting-started.md +0 -138
  122. package/docs/content/index.md +0 -33
  123. package/docs/content/linting.md +0 -35
  124. package/docs/content/overriding-styles.mdx +0 -82
  125. package/docs/content/philosophy.md +0 -23
  126. package/docs/content/primer-theme.md +0 -89
  127. package/docs/content/ssr.mdx +0 -43
  128. package/docs/content/system-props.mdx +0 -37
  129. package/docs/content/theme-reference.md +0 -16
  130. package/docs/content/theming.md +0 -249
  131. package/docs/content/useOnEscapePress.mdx +0 -56
  132. package/docs/content/useOnOutsideClick.mdx +0 -57
  133. package/docs/content/useOpenAndCloseFocus.mdx +0 -49
  134. package/docs/content/useOverlay.mdx +0 -62
  135. package/docs/content/useSafeTimeout.mdx +0 -32
  136. package/docs/gatsby-config.js +0 -30
  137. package/docs/gatsby-node.js +0 -101
  138. package/docs/package-lock.json +0 -20756
  139. package/docs/package.json +0 -36
  140. package/docs/src/@primer/gatsby-theme-doctocat/components/hero.js +0 -23
  141. package/docs/src/@primer/gatsby-theme-doctocat/components/live-preview-wrapper.js +0 -41
  142. package/docs/src/@primer/gatsby-theme-doctocat/live-code-scope.js +0 -54
  143. package/docs/src/@primer/gatsby-theme-doctocat/nav.yml +0 -133
  144. package/docs/src/@primer/gatsby-theme-doctocat/primer-components-hero.svg +0 -1411
  145. package/docs/src/props.js +0 -77
  146. package/jest.config.js +0 -13
  147. package/lib/__tests__/ActionList.test.d.ts +0 -1
  148. package/lib/__tests__/ActionList.test.js +0 -69
  149. package/lib/__tests__/ActionList.types.test.d.ts +0 -6
  150. package/lib/__tests__/ActionList.types.test.js +0 -69
  151. package/lib/__tests__/ActionMenu.test.d.ts +0 -1
  152. package/lib/__tests__/ActionMenu.test.js +0 -151
  153. package/lib/__tests__/AnchoredOverlay.test.d.ts +0 -1
  154. package/lib/__tests__/AnchoredOverlay.test.js +0 -160
  155. package/lib/__tests__/Autocomplete.test.d.ts +0 -1
  156. package/lib/__tests__/Autocomplete.test.js +0 -528
  157. package/lib/__tests__/Avatar.test.d.ts +0 -1
  158. package/lib/__tests__/Avatar.test.js +0 -67
  159. package/lib/__tests__/AvatarStack.test.d.ts +0 -1
  160. package/lib/__tests__/AvatarStack.test.js +0 -71
  161. package/lib/__tests__/BorderBox.test.d.ts +0 -1
  162. package/lib/__tests__/BorderBox.test.js +0 -58
  163. package/lib/__tests__/Box.test.d.ts +0 -1
  164. package/lib/__tests__/Box.test.js +0 -78
  165. package/lib/__tests__/BranchName.test.d.ts +0 -1
  166. package/lib/__tests__/BranchName.test.js +0 -36
  167. package/lib/__tests__/Breadcrumbs.test.d.ts +0 -1
  168. package/lib/__tests__/Breadcrumbs.test.js +0 -37
  169. package/lib/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  170. package/lib/__tests__/BreadcrumbsItem.test.js +0 -49
  171. package/lib/__tests__/Button.test.d.ts +0 -1
  172. package/lib/__tests__/Button.test.js +0 -143
  173. package/lib/__tests__/Caret.test.d.ts +0 -1
  174. package/lib/__tests__/Caret.test.js +0 -52
  175. package/lib/__tests__/CircleBadge.test.d.ts +0 -1
  176. package/lib/__tests__/CircleBadge.test.js +0 -83
  177. package/lib/__tests__/CircleOcticon.test.d.ts +0 -1
  178. package/lib/__tests__/CircleOcticon.test.js +0 -71
  179. package/lib/__tests__/ConfirmationDialog.test.d.ts +0 -1
  180. package/lib/__tests__/ConfirmationDialog.test.js +0 -134
  181. package/lib/__tests__/CounterLabel.test.d.ts +0 -1
  182. package/lib/__tests__/CounterLabel.test.js +0 -58
  183. package/lib/__tests__/Details.test.d.ts +0 -1
  184. package/lib/__tests__/Details.test.js +0 -117
  185. package/lib/__tests__/Dialog.test.d.ts +0 -1
  186. package/lib/__tests__/Dialog.test.js +0 -184
  187. package/lib/__tests__/Dropdown.test.d.ts +0 -1
  188. package/lib/__tests__/Dropdown.test.js +0 -63
  189. package/lib/__tests__/DropdownMenu.test.d.ts +0 -1
  190. package/lib/__tests__/DropdownMenu.test.js +0 -150
  191. package/lib/__tests__/FilterList.test.d.ts +0 -1
  192. package/lib/__tests__/FilterList.test.js +0 -36
  193. package/lib/__tests__/FilterListItem.test.d.ts +0 -1
  194. package/lib/__tests__/FilterListItem.test.js +0 -46
  195. package/lib/__tests__/FilteredSearch.test.d.ts +0 -1
  196. package/lib/__tests__/FilteredSearch.test.js +0 -36
  197. package/lib/__tests__/Flash.test.d.ts +0 -1
  198. package/lib/__tests__/Flash.test.js +0 -62
  199. package/lib/__tests__/Flex.test.d.ts +0 -1
  200. package/lib/__tests__/Flex.test.js +0 -74
  201. package/lib/__tests__/FormGroup.test.d.ts +0 -1
  202. package/lib/__tests__/FormGroup.test.js +0 -54
  203. package/lib/__tests__/Grid.test.d.ts +0 -1
  204. package/lib/__tests__/Grid.test.js +0 -104
  205. package/lib/__tests__/Header.test.d.ts +0 -1
  206. package/lib/__tests__/Header.test.js +0 -58
  207. package/lib/__tests__/Heading.test.d.ts +0 -1
  208. package/lib/__tests__/Heading.test.js +0 -109
  209. package/lib/__tests__/Label.test.d.ts +0 -1
  210. package/lib/__tests__/Label.test.js +0 -46
  211. package/lib/__tests__/LabelGroup.test.d.ts +0 -1
  212. package/lib/__tests__/LabelGroup.test.js +0 -38
  213. package/lib/__tests__/Link.test.d.ts +0 -1
  214. package/lib/__tests__/Link.test.js +0 -70
  215. package/lib/__tests__/Merge.types.test.d.ts +0 -30
  216. package/lib/__tests__/Merge.types.test.js +0 -27
  217. package/lib/__tests__/Overlay.test.d.ts +0 -1
  218. package/lib/__tests__/Overlay.test.js +0 -145
  219. package/lib/__tests__/Pagehead.test.d.ts +0 -1
  220. package/lib/__tests__/Pagehead.test.js +0 -37
  221. package/lib/__tests__/Pagination/Pagination.test.d.ts +0 -1
  222. package/lib/__tests__/Pagination/Pagination.test.js +0 -47
  223. package/lib/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  224. package/lib/__tests__/Pagination/PaginationModel.test.js +0 -186
  225. package/lib/__tests__/PointerBox.test.d.ts +0 -1
  226. package/lib/__tests__/PointerBox.test.js +0 -46
  227. package/lib/__tests__/Popover.test.d.ts +0 -1
  228. package/lib/__tests__/Popover.test.js +0 -66
  229. package/lib/__tests__/Portal.test.d.ts +0 -1
  230. package/lib/__tests__/Portal.test.js +0 -124
  231. package/lib/__tests__/Position.test.d.ts +0 -1
  232. package/lib/__tests__/Position.test.js +0 -143
  233. package/lib/__tests__/ProgressBar.test.d.ts +0 -1
  234. package/lib/__tests__/ProgressBar.test.js +0 -68
  235. package/lib/__tests__/SelectMenu.test.d.ts +0 -1
  236. package/lib/__tests__/SelectMenu.test.js +0 -155
  237. package/lib/__tests__/SelectPanel.test.d.ts +0 -1
  238. package/lib/__tests__/SelectPanel.test.js +0 -80
  239. package/lib/__tests__/SideNav.test.d.ts +0 -1
  240. package/lib/__tests__/SideNav.test.js +0 -71
  241. package/lib/__tests__/Spinner.test.d.ts +0 -1
  242. package/lib/__tests__/Spinner.test.js +0 -53
  243. package/lib/__tests__/StateLabel.test.d.ts +0 -1
  244. package/lib/__tests__/StateLabel.test.js +0 -71
  245. package/lib/__tests__/StyledOcticon.test.d.ts +0 -1
  246. package/lib/__tests__/StyledOcticon.test.js +0 -40
  247. package/lib/__tests__/SubNav.test.d.ts +0 -1
  248. package/lib/__tests__/SubNav.test.js +0 -62
  249. package/lib/__tests__/SubNavLink.test.d.ts +0 -1
  250. package/lib/__tests__/SubNavLink.test.js +0 -49
  251. package/lib/__tests__/TabNav.test.d.ts +0 -1
  252. package/lib/__tests__/TabNav.test.js +0 -49
  253. package/lib/__tests__/Text.test.d.ts +0 -1
  254. package/lib/__tests__/Text.test.js +0 -105
  255. package/lib/__tests__/TextInput.test.d.ts +0 -1
  256. package/lib/__tests__/TextInput.test.js +0 -78
  257. package/lib/__tests__/TextInputWithTokens.test.d.ts +0 -1
  258. package/lib/__tests__/TextInputWithTokens.test.js +0 -389
  259. package/lib/__tests__/ThemeProvider.test.d.ts +0 -1
  260. package/lib/__tests__/ThemeProvider.test.js +0 -444
  261. package/lib/__tests__/Timeline.test.d.ts +0 -1
  262. package/lib/__tests__/Timeline.test.js +0 -75
  263. package/lib/__tests__/Token.test.d.ts +0 -1
  264. package/lib/__tests__/Token.test.js +0 -180
  265. package/lib/__tests__/Tooltip.test.d.ts +0 -1
  266. package/lib/__tests__/Tooltip.test.js +0 -69
  267. package/lib/__tests__/Truncate.test.d.ts +0 -1
  268. package/lib/__tests__/Truncate.test.js +0 -63
  269. package/lib/__tests__/UnderlineNav.test.d.ts +0 -1
  270. package/lib/__tests__/UnderlineNav.test.js +0 -72
  271. package/lib/__tests__/UnderlineNavLink.test.d.ts +0 -1
  272. package/lib/__tests__/UnderlineNavLink.test.js +0 -51
  273. package/lib/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  274. package/lib/__tests__/behaviors/anchoredPosition.test.js +0 -390
  275. package/lib/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  276. package/lib/__tests__/behaviors/focusTrap.test.js +0 -234
  277. package/lib/__tests__/behaviors/focusZone.test.d.ts +0 -1
  278. package/lib/__tests__/behaviors/focusZone.test.js +0 -570
  279. package/lib/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  280. package/lib/__tests__/behaviors/iterateFocusableElements.test.js +0 -55
  281. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  282. package/lib/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -226
  283. package/lib/__tests__/filterObject.test.d.ts +0 -1
  284. package/lib/__tests__/filterObject.test.js +0 -30
  285. package/lib/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  286. package/lib/__tests__/hooks/useAnchoredPosition.test.js +0 -54
  287. package/lib/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  288. package/lib/__tests__/hooks/useOnEscapePress.test.js +0 -32
  289. package/lib/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  290. package/lib/__tests__/hooks/useOnOutsideClick.test.js +0 -87
  291. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  292. package/lib/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -60
  293. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  294. package/lib/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -45
  295. package/lib/__tests__/theme.test.d.ts +0 -1
  296. package/lib/__tests__/theme.test.js +0 -36
  297. package/lib/__tests__/themeGet.test.d.ts +0 -1
  298. package/lib/__tests__/themeGet.test.js +0 -25
  299. package/lib/__tests__/useSafeTimeout.test.d.ts +0 -1
  300. package/lib/__tests__/useSafeTimeout.test.js +0 -45
  301. package/lib/stories/ActionList.stories.js +0 -453
  302. package/lib/stories/ActionMenu.stories.js +0 -338
  303. package/lib/stories/AnchoredOverlay.stories.js +0 -127
  304. package/lib/stories/Autocomplete.stories.js +0 -608
  305. package/lib/stories/AvatarStack.stories.js +0 -49
  306. package/lib/stories/Button.stories.js +0 -114
  307. package/lib/stories/ConfirmationDialog.stories.js +0 -111
  308. package/lib/stories/Dialog.stories.js +0 -265
  309. package/lib/stories/DropdownMenu.stories.js +0 -122
  310. package/lib/stories/IssueLabelToken.stories.js +0 -165
  311. package/lib/stories/Overlay.stories.js +0 -204
  312. package/lib/stories/Portal.stories.js +0 -104
  313. package/lib/stories/ProfileToken.stories.js +0 -162
  314. package/lib/stories/SelectPanel.stories.js +0 -399
  315. package/lib/stories/TextInputWithTokens.stories.js +0 -235
  316. package/lib/stories/ThemeProvider.stories.js +0 -102
  317. package/lib/stories/Token.stories.js +0 -159
  318. package/lib/stories/useAnchoredPosition.stories.js +0 -351
  319. package/lib/stories/useFocusTrap.stories.js +0 -356
  320. package/lib/stories/useFocusZone.stories.js +0 -599
  321. package/lib-esm/__tests__/ActionList.test.d.ts +0 -1
  322. package/lib-esm/__tests__/ActionList.test.js +0 -57
  323. package/lib-esm/__tests__/ActionList.types.test.d.ts +0 -6
  324. package/lib-esm/__tests__/ActionList.types.test.js +0 -45
  325. package/lib-esm/__tests__/ActionMenu.test.d.ts +0 -1
  326. package/lib-esm/__tests__/ActionMenu.test.js +0 -139
  327. package/lib-esm/__tests__/AnchoredOverlay.test.d.ts +0 -1
  328. package/lib-esm/__tests__/AnchoredOverlay.test.js +0 -134
  329. package/lib-esm/__tests__/Autocomplete.test.d.ts +0 -1
  330. package/lib-esm/__tests__/Autocomplete.test.js +0 -494
  331. package/lib-esm/__tests__/Avatar.test.d.ts +0 -1
  332. package/lib-esm/__tests__/Avatar.test.js +0 -56
  333. package/lib-esm/__tests__/AvatarStack.test.d.ts +0 -1
  334. package/lib-esm/__tests__/AvatarStack.test.js +0 -58
  335. package/lib-esm/__tests__/BorderBox.test.d.ts +0 -1
  336. package/lib-esm/__tests__/BorderBox.test.js +0 -47
  337. package/lib-esm/__tests__/Box.test.d.ts +0 -1
  338. package/lib-esm/__tests__/Box.test.js +0 -67
  339. package/lib-esm/__tests__/BranchName.test.d.ts +0 -1
  340. package/lib-esm/__tests__/BranchName.test.js +0 -26
  341. package/lib-esm/__tests__/Breadcrumbs.test.d.ts +0 -1
  342. package/lib-esm/__tests__/Breadcrumbs.test.js +0 -27
  343. package/lib-esm/__tests__/BreadcrumbsItem.test.d.ts +0 -1
  344. package/lib-esm/__tests__/BreadcrumbsItem.test.js +0 -39
  345. package/lib-esm/__tests__/Button.test.d.ts +0 -1
  346. package/lib-esm/__tests__/Button.test.js +0 -133
  347. package/lib-esm/__tests__/Caret.test.d.ts +0 -1
  348. package/lib-esm/__tests__/Caret.test.js +0 -42
  349. package/lib-esm/__tests__/CircleBadge.test.d.ts +0 -1
  350. package/lib-esm/__tests__/CircleBadge.test.js +0 -70
  351. package/lib-esm/__tests__/CircleOcticon.test.d.ts +0 -1
  352. package/lib-esm/__tests__/CircleOcticon.test.js +0 -59
  353. package/lib-esm/__tests__/ConfirmationDialog.test.d.ts +0 -1
  354. package/lib-esm/__tests__/ConfirmationDialog.test.js +0 -113
  355. package/lib-esm/__tests__/CounterLabel.test.d.ts +0 -1
  356. package/lib-esm/__tests__/CounterLabel.test.js +0 -47
  357. package/lib-esm/__tests__/Details.test.d.ts +0 -1
  358. package/lib-esm/__tests__/Details.test.js +0 -107
  359. package/lib-esm/__tests__/Dialog.test.d.ts +0 -1
  360. package/lib-esm/__tests__/Dialog.test.js +0 -171
  361. package/lib-esm/__tests__/Dropdown.test.d.ts +0 -1
  362. package/lib-esm/__tests__/Dropdown.test.js +0 -53
  363. package/lib-esm/__tests__/DropdownMenu.test.d.ts +0 -1
  364. package/lib-esm/__tests__/DropdownMenu.test.js +0 -137
  365. package/lib-esm/__tests__/FilterList.test.d.ts +0 -1
  366. package/lib-esm/__tests__/FilterList.test.js +0 -26
  367. package/lib-esm/__tests__/FilterListItem.test.d.ts +0 -1
  368. package/lib-esm/__tests__/FilterListItem.test.js +0 -36
  369. package/lib-esm/__tests__/FilteredSearch.test.d.ts +0 -1
  370. package/lib-esm/__tests__/FilteredSearch.test.js +0 -26
  371. package/lib-esm/__tests__/Flash.test.d.ts +0 -1
  372. package/lib-esm/__tests__/Flash.test.js +0 -51
  373. package/lib-esm/__tests__/Flex.test.d.ts +0 -1
  374. package/lib-esm/__tests__/Flex.test.js +0 -64
  375. package/lib-esm/__tests__/FormGroup.test.d.ts +0 -1
  376. package/lib-esm/__tests__/FormGroup.test.js +0 -44
  377. package/lib-esm/__tests__/Grid.test.d.ts +0 -1
  378. package/lib-esm/__tests__/Grid.test.js +0 -94
  379. package/lib-esm/__tests__/Header.test.d.ts +0 -1
  380. package/lib-esm/__tests__/Header.test.js +0 -48
  381. package/lib-esm/__tests__/Heading.test.d.ts +0 -1
  382. package/lib-esm/__tests__/Heading.test.js +0 -99
  383. package/lib-esm/__tests__/Label.test.d.ts +0 -1
  384. package/lib-esm/__tests__/Label.test.js +0 -36
  385. package/lib-esm/__tests__/LabelGroup.test.d.ts +0 -1
  386. package/lib-esm/__tests__/LabelGroup.test.js +0 -26
  387. package/lib-esm/__tests__/Link.test.d.ts +0 -1
  388. package/lib-esm/__tests__/Link.test.js +0 -60
  389. package/lib-esm/__tests__/Merge.types.test.d.ts +0 -30
  390. package/lib-esm/__tests__/Merge.types.test.js +0 -14
  391. package/lib-esm/__tests__/Overlay.test.d.ts +0 -1
  392. package/lib-esm/__tests__/Overlay.test.js +0 -123
  393. package/lib-esm/__tests__/Pagehead.test.d.ts +0 -1
  394. package/lib-esm/__tests__/Pagehead.test.js +0 -26
  395. package/lib-esm/__tests__/Pagination/Pagination.test.d.ts +0 -1
  396. package/lib-esm/__tests__/Pagination/Pagination.test.js +0 -35
  397. package/lib-esm/__tests__/Pagination/PaginationModel.test.d.ts +0 -1
  398. package/lib-esm/__tests__/Pagination/PaginationModel.test.js +0 -182
  399. package/lib-esm/__tests__/PointerBox.test.d.ts +0 -1
  400. package/lib-esm/__tests__/PointerBox.test.js +0 -36
  401. package/lib-esm/__tests__/Popover.test.d.ts +0 -1
  402. package/lib-esm/__tests__/Popover.test.js +0 -53
  403. package/lib-esm/__tests__/Portal.test.d.ts +0 -1
  404. package/lib-esm/__tests__/Portal.test.js +0 -104
  405. package/lib-esm/__tests__/Position.test.d.ts +0 -1
  406. package/lib-esm/__tests__/Position.test.js +0 -133
  407. package/lib-esm/__tests__/ProgressBar.test.d.ts +0 -1
  408. package/lib-esm/__tests__/ProgressBar.test.js +0 -58
  409. package/lib-esm/__tests__/SelectMenu.test.d.ts +0 -1
  410. package/lib-esm/__tests__/SelectMenu.test.js +0 -145
  411. package/lib-esm/__tests__/SelectPanel.test.d.ts +0 -1
  412. package/lib-esm/__tests__/SelectPanel.test.js +0 -65
  413. package/lib-esm/__tests__/SideNav.test.d.ts +0 -1
  414. package/lib-esm/__tests__/SideNav.test.js +0 -60
  415. package/lib-esm/__tests__/Spinner.test.d.ts +0 -1
  416. package/lib-esm/__tests__/Spinner.test.js +0 -43
  417. package/lib-esm/__tests__/StateLabel.test.d.ts +0 -1
  418. package/lib-esm/__tests__/StateLabel.test.js +0 -61
  419. package/lib-esm/__tests__/StyledOcticon.test.d.ts +0 -1
  420. package/lib-esm/__tests__/StyledOcticon.test.js +0 -29
  421. package/lib-esm/__tests__/SubNav.test.d.ts +0 -1
  422. package/lib-esm/__tests__/SubNav.test.js +0 -50
  423. package/lib-esm/__tests__/SubNavLink.test.d.ts +0 -1
  424. package/lib-esm/__tests__/SubNavLink.test.js +0 -39
  425. package/lib-esm/__tests__/TabNav.test.d.ts +0 -1
  426. package/lib-esm/__tests__/TabNav.test.js +0 -39
  427. package/lib-esm/__tests__/Text.test.d.ts +0 -1
  428. package/lib-esm/__tests__/Text.test.js +0 -93
  429. package/lib-esm/__tests__/TextInput.test.d.ts +0 -1
  430. package/lib-esm/__tests__/TextInput.test.js +0 -68
  431. package/lib-esm/__tests__/TextInputWithTokens.test.d.ts +0 -1
  432. package/lib-esm/__tests__/TextInputWithTokens.test.js +0 -341
  433. package/lib-esm/__tests__/ThemeProvider.test.d.ts +0 -1
  434. package/lib-esm/__tests__/ThemeProvider.test.js +0 -408
  435. package/lib-esm/__tests__/Timeline.test.d.ts +0 -1
  436. package/lib-esm/__tests__/Timeline.test.js +0 -65
  437. package/lib-esm/__tests__/Token.test.d.ts +0 -1
  438. package/lib-esm/__tests__/Token.test.js +0 -166
  439. package/lib-esm/__tests__/Tooltip.test.d.ts +0 -1
  440. package/lib-esm/__tests__/Tooltip.test.js +0 -59
  441. package/lib-esm/__tests__/Truncate.test.d.ts +0 -1
  442. package/lib-esm/__tests__/Truncate.test.js +0 -53
  443. package/lib-esm/__tests__/UnderlineNav.test.d.ts +0 -1
  444. package/lib-esm/__tests__/UnderlineNav.test.js +0 -60
  445. package/lib-esm/__tests__/UnderlineNavLink.test.d.ts +0 -1
  446. package/lib-esm/__tests__/UnderlineNavLink.test.js +0 -41
  447. package/lib-esm/__tests__/behaviors/anchoredPosition.test.d.ts +0 -1
  448. package/lib-esm/__tests__/behaviors/anchoredPosition.test.js +0 -388
  449. package/lib-esm/__tests__/behaviors/focusTrap.test.d.ts +0 -1
  450. package/lib-esm/__tests__/behaviors/focusTrap.test.js +0 -227
  451. package/lib-esm/__tests__/behaviors/focusZone.test.d.ts +0 -1
  452. package/lib-esm/__tests__/behaviors/focusZone.test.js +0 -487
  453. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.d.ts +0 -1
  454. package/lib-esm/__tests__/behaviors/iterateFocusableElements.test.js +0 -48
  455. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.d.ts +0 -1
  456. package/lib-esm/__tests__/behaviors/scrollIntoViewingArea.test.js +0 -224
  457. package/lib-esm/__tests__/filterObject.test.d.ts +0 -1
  458. package/lib-esm/__tests__/filterObject.test.js +0 -27
  459. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.d.ts +0 -1
  460. package/lib-esm/__tests__/hooks/useAnchoredPosition.test.js +0 -46
  461. package/lib-esm/__tests__/hooks/useOnEscapePress.test.d.ts +0 -1
  462. package/lib-esm/__tests__/hooks/useOnEscapePress.test.js +0 -23
  463. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.d.ts +0 -1
  464. package/lib-esm/__tests__/hooks/useOnOutsideClick.test.js +0 -68
  465. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.d.ts +0 -1
  466. package/lib-esm/__tests__/hooks/useOpenAndCloseFocus.test.js +0 -52
  467. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.d.ts +0 -1
  468. package/lib-esm/__tests__/hooks/useProvidedStateOrCreate.test.js +0 -36
  469. package/lib-esm/__tests__/theme.test.d.ts +0 -1
  470. package/lib-esm/__tests__/theme.test.js +0 -33
  471. package/lib-esm/__tests__/themeGet.test.d.ts +0 -1
  472. package/lib-esm/__tests__/themeGet.test.js +0 -22
  473. package/lib-esm/__tests__/useSafeTimeout.test.d.ts +0 -1
  474. package/lib-esm/__tests__/useSafeTimeout.test.js +0 -39
  475. package/lib-esm/stories/ActionList.stories.js +0 -394
  476. package/lib-esm/stories/ActionMenu.stories.js +0 -293
  477. package/lib-esm/stories/AnchoredOverlay.stories.js +0 -101
  478. package/lib-esm/stories/Autocomplete.stories.js +0 -549
  479. package/lib-esm/stories/AvatarStack.stories.js +0 -32
  480. package/lib-esm/stories/Button.stories.js +0 -78
  481. package/lib-esm/stories/ConfirmationDialog.stories.js +0 -86
  482. package/lib-esm/stories/Dialog.stories.js +0 -240
  483. package/lib-esm/stories/DropdownMenu.stories.js +0 -94
  484. package/lib-esm/stories/IssueLabelToken.stories.js +0 -139
  485. package/lib-esm/stories/Overlay.stories.js +0 -173
  486. package/lib-esm/stories/Portal.stories.js +0 -68
  487. package/lib-esm/stories/ProfileToken.stories.js +0 -136
  488. package/lib-esm/stories/SelectPanel.stories.js +0 -334
  489. package/lib-esm/stories/TextInputWithTokens.stories.js +0 -196
  490. package/lib-esm/stories/ThemeProvider.stories.js +0 -83
  491. package/lib-esm/stories/Token.stories.js +0 -133
  492. package/lib-esm/stories/useAnchoredPosition.stories.js +0 -313
  493. package/lib-esm/stories/useFocusTrap.stories.js +0 -309
  494. package/lib-esm/stories/useFocusZone.stories.js +0 -554
  495. package/migrating.md +0 -250
  496. package/now.json +0 -17
  497. package/package-lock.json +0 -29369
  498. package/rollup.config.js +0 -36
  499. package/script/build +0 -19
  500. package/script/build-storybook +0 -10
  501. package/script/setup +0 -12
  502. package/src/ActionList/Divider.tsx +0 -25
  503. package/src/ActionList/Group.tsx +0 -45
  504. package/src/ActionList/Header.tsx +0 -74
  505. package/src/ActionList/Item.tsx +0 -483
  506. package/src/ActionList/List.tsx +0 -258
  507. package/src/ActionList/index.ts +0 -21
  508. package/src/ActionMenu.tsx +0 -106
  509. package/src/AnchoredOverlay/AnchoredOverlay.tsx +0 -191
  510. package/src/AnchoredOverlay/index.ts +0 -2
  511. package/src/Autocomplete/Autocomplete.tsx +0 -103
  512. package/src/Autocomplete/AutocompleteContext.tsx +0 -19
  513. package/src/Autocomplete/AutocompleteInput.tsx +0 -179
  514. package/src/Autocomplete/AutocompleteMenu.tsx +0 -341
  515. package/src/Autocomplete/AutocompleteOverlay.tsx +0 -68
  516. package/src/Autocomplete/index.ts +0 -2
  517. package/src/Avatar.tsx +0 -46
  518. package/src/AvatarPair.tsx +0 -35
  519. package/src/AvatarStack.tsx +0 -159
  520. package/src/BaseStyles.tsx +0 -53
  521. package/src/BorderBox.tsx +0 -18
  522. package/src/Box.tsx +0 -54
  523. package/src/BranchName.tsx +0 -19
  524. package/src/Breadcrumbs.tsx +0 -101
  525. package/src/Button/Button.tsx +0 -40
  526. package/src/Button/ButtonBase.tsx +0 -43
  527. package/src/Button/ButtonClose.tsx +0 -40
  528. package/src/Button/ButtonDanger.tsx +0 -43
  529. package/src/Button/ButtonGroup.tsx +0 -55
  530. package/src/Button/ButtonInvisible.tsx +0 -27
  531. package/src/Button/ButtonOutline.tsx +0 -43
  532. package/src/Button/ButtonPrimary.tsx +0 -41
  533. package/src/Button/ButtonStyles.tsx +0 -36
  534. package/src/Button/ButtonTableList.tsx +0 -58
  535. package/src/Button/index.ts +0 -16
  536. package/src/Caret.tsx +0 -133
  537. package/src/CircleBadge.tsx +0 -55
  538. package/src/CircleOcticon.tsx +0 -37
  539. package/src/CounterLabel.tsx +0 -52
  540. package/src/Details.tsx +0 -23
  541. package/src/Dialog/ConfirmationDialog.tsx +0 -184
  542. package/src/Dialog/Dialog.tsx +0 -432
  543. package/src/Dialog.tsx +0 -149
  544. package/src/Dropdown.tsx +0 -158
  545. package/src/DropdownMenu/DropdownButton.tsx +0 -15
  546. package/src/DropdownMenu/DropdownMenu.tsx +0 -115
  547. package/src/DropdownMenu/index.ts +0 -4
  548. package/src/DropdownStyles.ts +0 -128
  549. package/src/FilterList.tsx +0 -81
  550. package/src/FilteredActionList/FilteredActionList.tsx +0 -142
  551. package/src/FilteredActionList/index.ts +0 -2
  552. package/src/FilteredSearch.tsx +0 -28
  553. package/src/Flash.tsx +0 -77
  554. package/src/Flex.tsx +0 -15
  555. package/src/FormGroup.tsx +0 -27
  556. package/src/Grid.tsx +0 -15
  557. package/src/Header.tsx +0 -84
  558. package/src/Heading.tsx +0 -21
  559. package/src/Label.tsx +0 -75
  560. package/src/LabelGroup.tsx +0 -18
  561. package/src/Link.tsx +0 -46
  562. package/src/Overlay.tsx +0 -197
  563. package/src/Pagehead.tsx +0 -17
  564. package/src/Pagination/Pagination.tsx +0 -214
  565. package/src/Pagination/index.ts +0 -4
  566. package/src/Pagination/model.tsx +0 -187
  567. package/src/PointerBox.tsx +0 -31
  568. package/src/Popover.tsx +0 -236
  569. package/src/Portal/Portal.tsx +0 -96
  570. package/src/Portal/index.ts +0 -5
  571. package/src/Position.tsx +0 -63
  572. package/src/ProgressBar.tsx +0 -52
  573. package/src/SelectMenu/SelectMenu.tsx +0 -125
  574. package/src/SelectMenu/SelectMenuContext.tsx +0 -9
  575. package/src/SelectMenu/SelectMenuDivider.tsx +0 -25
  576. package/src/SelectMenu/SelectMenuFilter.tsx +0 -51
  577. package/src/SelectMenu/SelectMenuFooter.tsx +0 -28
  578. package/src/SelectMenu/SelectMenuHeader.tsx +0 -50
  579. package/src/SelectMenu/SelectMenuItem.tsx +0 -137
  580. package/src/SelectMenu/SelectMenuList.tsx +0 -42
  581. package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +0 -24
  582. package/src/SelectMenu/SelectMenuModal.tsx +0 -121
  583. package/src/SelectMenu/SelectMenuTab.tsx +0 -88
  584. package/src/SelectMenu/SelectMenuTabPanel.tsx +0 -30
  585. package/src/SelectMenu/SelectMenuTabs.tsx +0 -44
  586. package/src/SelectMenu/hooks/useKeyboardNav.js +0 -90
  587. package/src/SelectMenu/index.ts +0 -15
  588. package/src/SelectPanel/SelectPanel.tsx +0 -173
  589. package/src/SelectPanel/index.ts +0 -2
  590. package/src/SideNav.tsx +0 -193
  591. package/src/Spinner.tsx +0 -59
  592. package/src/StateLabel.tsx +0 -102
  593. package/src/StyledOcticon.tsx +0 -24
  594. package/src/SubNav.tsx +0 -129
  595. package/src/TabNav.tsx +0 -77
  596. package/src/Text.tsx +0 -13
  597. package/src/TextInput.tsx +0 -68
  598. package/src/TextInputWithTokens.tsx +0 -271
  599. package/src/ThemeProvider.tsx +0 -176
  600. package/src/Timeline.tsx +0 -141
  601. package/src/Token/AvatarToken.tsx +0 -54
  602. package/src/Token/IssueLabelToken.tsx +0 -150
  603. package/src/Token/Token.tsx +0 -112
  604. package/src/Token/TokenBase.tsx +0 -134
  605. package/src/Token/_RemoveTokenButton.tsx +0 -98
  606. package/src/Token/_TokenTextContainer.tsx +0 -47
  607. package/src/Token/index.ts +0 -3
  608. package/src/Tooltip.tsx +0 -263
  609. package/src/Truncate.tsx +0 -36
  610. package/src/UnderlineNav.tsx +0 -110
  611. package/src/_TextInputWrapper.tsx +0 -105
  612. package/src/_UnstyledTextInput.tsx +0 -19
  613. package/src/__tests__/.eslintrc.json +0 -11
  614. package/src/__tests__/ActionList.test.tsx +0 -53
  615. package/src/__tests__/ActionList.types.test.tsx +0 -51
  616. package/src/__tests__/ActionMenu.test.tsx +0 -136
  617. package/src/__tests__/AnchoredOverlay.test.tsx +0 -150
  618. package/src/__tests__/Autocomplete.test.tsx +0 -444
  619. package/src/__tests__/Avatar.test.tsx +0 -44
  620. package/src/__tests__/AvatarStack.test.tsx +0 -48
  621. package/src/__tests__/BorderBox.test.tsx +0 -43
  622. package/src/__tests__/Box.test.tsx +0 -42
  623. package/src/__tests__/BranchName.test.tsx +0 -26
  624. package/src/__tests__/Breadcrumbs.test.tsx +0 -27
  625. package/src/__tests__/BreadcrumbsItem.test.tsx +0 -31
  626. package/src/__tests__/Button.test.tsx +0 -128
  627. package/src/__tests__/Caret.test.tsx +0 -36
  628. package/src/__tests__/CircleBadge.test.tsx +0 -66
  629. package/src/__tests__/CircleOcticon.test.tsx +0 -50
  630. package/src/__tests__/ConfirmationDialog.test.tsx +0 -120
  631. package/src/__tests__/CounterLabel.test.tsx +0 -50
  632. package/src/__tests__/Details.test.tsx +0 -115
  633. package/src/__tests__/Dialog.test.tsx +0 -155
  634. package/src/__tests__/Dropdown.test.tsx +0 -53
  635. package/src/__tests__/DropdownMenu.test.tsx +0 -136
  636. package/src/__tests__/FilterList.test.tsx +0 -26
  637. package/src/__tests__/FilterListItem.test.tsx +0 -31
  638. package/src/__tests__/FilteredSearch.test.tsx +0 -26
  639. package/src/__tests__/Flash.test.tsx +0 -45
  640. package/src/__tests__/Flex.test.tsx +0 -58
  641. package/src/__tests__/FormGroup.test.tsx +0 -38
  642. package/src/__tests__/Grid.test.tsx +0 -82
  643. package/src/__tests__/Header.test.tsx +0 -49
  644. package/src/__tests__/Heading.test.tsx +0 -91
  645. package/src/__tests__/Label.test.tsx +0 -34
  646. package/src/__tests__/LabelGroup.test.tsx +0 -30
  647. package/src/__tests__/Link.test.tsx +0 -47
  648. package/src/__tests__/Merge.types.test.ts +0 -39
  649. package/src/__tests__/Overlay.test.tsx +0 -103
  650. package/src/__tests__/Pagehead.test.tsx +0 -23
  651. package/src/__tests__/Pagination/Pagination.test.tsx +0 -30
  652. package/src/__tests__/Pagination/PaginationModel.test.tsx +0 -133
  653. package/src/__tests__/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -184
  654. package/src/__tests__/PointerBox.test.tsx +0 -34
  655. package/src/__tests__/Popover.test.tsx +0 -68
  656. package/src/__tests__/Portal.test.tsx +0 -103
  657. package/src/__tests__/Position.test.tsx +0 -117
  658. package/src/__tests__/ProgressBar.test.tsx +0 -40
  659. package/src/__tests__/SelectMenu.test.tsx +0 -142
  660. package/src/__tests__/SelectPanel.test.tsx +0 -63
  661. package/src/__tests__/SideNav.test.tsx +0 -62
  662. package/src/__tests__/Spinner.test.tsx +0 -42
  663. package/src/__tests__/StateLabel.test.tsx +0 -48
  664. package/src/__tests__/StyledOcticon.test.tsx +0 -26
  665. package/src/__tests__/SubNav.test.tsx +0 -50
  666. package/src/__tests__/SubNavLink.test.tsx +0 -31
  667. package/src/__tests__/TabNav.test.tsx +0 -32
  668. package/src/__tests__/Text.test.tsx +0 -78
  669. package/src/__tests__/TextInput.test.tsx +0 -49
  670. package/src/__tests__/TextInputWithTokens.test.tsx +0 -262
  671. package/src/__tests__/ThemeProvider.test.tsx +0 -441
  672. package/src/__tests__/Timeline.test.tsx +0 -58
  673. package/src/__tests__/Token.test.tsx +0 -118
  674. package/src/__tests__/Tooltip.test.tsx +0 -52
  675. package/src/__tests__/Truncate.test.tsx +0 -43
  676. package/src/__tests__/UnderlineNav.test.tsx +0 -58
  677. package/src/__tests__/UnderlineNavLink.test.tsx +0 -31
  678. package/src/__tests__/__snapshots__/ActionList.test.tsx.snap +0 -223
  679. package/src/__tests__/__snapshots__/ActionMenu.test.tsx.snap +0 -80
  680. package/src/__tests__/__snapshots__/AnchoredOverlay.test.tsx.snap +0 -332
  681. package/src/__tests__/__snapshots__/Autocomplete.test.tsx.snap +0 -3414
  682. package/src/__tests__/__snapshots__/Avatar.test.tsx.snap +0 -19
  683. package/src/__tests__/__snapshots__/AvatarStack.test.tsx.snap +0 -377
  684. package/src/__tests__/__snapshots__/BorderBox.test.tsx.snap +0 -14
  685. package/src/__tests__/__snapshots__/Box.test.tsx.snap +0 -201
  686. package/src/__tests__/__snapshots__/BranchName.test.tsx.snap +0 -17
  687. package/src/__tests__/__snapshots__/Breadcrumbs.test.tsx.snap +0 -29
  688. package/src/__tests__/__snapshots__/BreadcrumbsItem.test.tsx.snap +0 -79
  689. package/src/__tests__/__snapshots__/Button.test.tsx.snap +0 -832
  690. package/src/__tests__/__snapshots__/Caret.test.tsx.snap +0 -373
  691. package/src/__tests__/__snapshots__/CircleBadge.test.tsx.snap +0 -141
  692. package/src/__tests__/__snapshots__/CircleOcticon.test.tsx.snap +0 -64
  693. package/src/__tests__/__snapshots__/ConfirmationDialog.test.tsx.snap +0 -89
  694. package/src/__tests__/__snapshots__/CounterLabel.test.tsx.snap +0 -22
  695. package/src/__tests__/__snapshots__/Details.test.tsx.snap +0 -15
  696. package/src/__tests__/__snapshots__/Dialog.test.tsx.snap +0 -200
  697. package/src/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -249
  698. package/src/__tests__/__snapshots__/DropdownMenu.test.tsx.snap +0 -106
  699. package/src/__tests__/__snapshots__/FilterList.test.tsx.snap +0 -13
  700. package/src/__tests__/__snapshots__/FilterListItem.test.tsx.snap +0 -80
  701. package/src/__tests__/__snapshots__/FilteredSearch.test.tsx.snap +0 -32
  702. package/src/__tests__/__snapshots__/Flash.test.tsx.snap +0 -32
  703. package/src/__tests__/__snapshots__/Flex.test.tsx.snap +0 -130
  704. package/src/__tests__/__snapshots__/FormGroup.test.tsx.snap +0 -25
  705. package/src/__tests__/__snapshots__/Grid.test.tsx.snap +0 -178
  706. package/src/__tests__/__snapshots__/Header.test.tsx.snap +0 -79
  707. package/src/__tests__/__snapshots__/Heading.test.tsx.snap +0 -13
  708. package/src/__tests__/__snapshots__/Label.test.tsx.snap +0 -74
  709. package/src/__tests__/__snapshots__/LabelGroup.test.tsx.snap +0 -15
  710. package/src/__tests__/__snapshots__/Link.test.tsx.snap +0 -213
  711. package/src/__tests__/__snapshots__/Pagehead.test.tsx.snap +0 -15
  712. package/src/__tests__/__snapshots__/PointerBox.test.tsx.snap +0 -174
  713. package/src/__tests__/__snapshots__/Popover.test.tsx.snap +0 -4687
  714. package/src/__tests__/__snapshots__/Position.test.tsx.snap +0 -44
  715. package/src/__tests__/__snapshots__/ProgressBar.test.tsx.snap +0 -53
  716. package/src/__tests__/__snapshots__/SelectMenu.test.tsx.snap +0 -469
  717. package/src/__tests__/__snapshots__/SelectPanel.test.tsx.snap +0 -123
  718. package/src/__tests__/__snapshots__/SideNav.test.tsx.snap +0 -143
  719. package/src/__tests__/__snapshots__/Spinner.test.tsx.snap +0 -33
  720. package/src/__tests__/__snapshots__/StateLabel.test.tsx.snap +0 -388
  721. package/src/__tests__/__snapshots__/StyledOcticon.test.tsx.snap +0 -25
  722. package/src/__tests__/__snapshots__/SubNav.test.tsx.snap +0 -44
  723. package/src/__tests__/__snapshots__/SubNavLink.test.tsx.snap +0 -199
  724. package/src/__tests__/__snapshots__/TabNav.test.tsx.snap +0 -58
  725. package/src/__tests__/__snapshots__/Text.test.tsx.snap +0 -7
  726. package/src/__tests__/__snapshots__/TextInput.test.tsx.snap +0 -440
  727. package/src/__tests__/__snapshots__/TextInputWithTokens.test.tsx.snap +0 -5308
  728. package/src/__tests__/__snapshots__/ThemeProvider.test.tsx.snap +0 -15
  729. package/src/__tests__/__snapshots__/Timeline.test.tsx.snap +0 -159
  730. package/src/__tests__/__snapshots__/Token.test.tsx.snap +0 -3787
  731. package/src/__tests__/__snapshots__/Tooltip.test.tsx.snap +0 -227
  732. package/src/__tests__/__snapshots__/Truncate.test.tsx.snap +0 -17
  733. package/src/__tests__/__snapshots__/UnderlineNav.test.tsx.snap +0 -59
  734. package/src/__tests__/__snapshots__/UnderlineNavLink.test.tsx.snap +0 -130
  735. package/src/__tests__/behaviors/anchoredPosition.test.ts +0 -295
  736. package/src/__tests__/behaviors/focusTrap.test.tsx +0 -236
  737. package/src/__tests__/behaviors/focusZone.test.tsx +0 -549
  738. package/src/__tests__/behaviors/iterateFocusableElements.test.tsx +0 -61
  739. package/src/__tests__/behaviors/scrollIntoViewingArea.test.ts +0 -195
  740. package/src/__tests__/filterObject.test.ts +0 -54
  741. package/src/__tests__/hooks/useAnchoredPosition.test.tsx +0 -31
  742. package/src/__tests__/hooks/useOnEscapePress.test.tsx +0 -16
  743. package/src/__tests__/hooks/useOnOutsideClick.test.tsx +0 -48
  744. package/src/__tests__/hooks/useOpenAndCloseFocus.test.tsx +0 -48
  745. package/src/__tests__/hooks/useProvidedStateOrCreate.test.tsx +0 -39
  746. package/src/__tests__/theme.test.ts +0 -41
  747. package/src/__tests__/themeGet.test.ts +0 -15
  748. package/src/__tests__/useSafeTimeout.test.tsx +0 -36
  749. package/src/behaviors/anchoredPosition.ts +0 -442
  750. package/src/behaviors/focusTrap.ts +0 -184
  751. package/src/behaviors/focusZone.ts +0 -713
  752. package/src/behaviors/scrollIntoViewingArea.ts +0 -27
  753. package/src/constants.ts +0 -62
  754. package/src/hooks/index.ts +0 -11
  755. package/src/hooks/useAnchoredPosition.ts +0 -53
  756. package/src/hooks/useCombinedRefs.ts +0 -40
  757. package/src/hooks/useDetails.tsx +0 -54
  758. package/src/hooks/useDialog.ts +0 -121
  759. package/src/hooks/useFocusTrap.ts +0 -80
  760. package/src/hooks/useFocusZone.ts +0 -64
  761. package/src/hooks/useOnEscapePress.ts +0 -63
  762. package/src/hooks/useOnOutsideClick.tsx +0 -82
  763. package/src/hooks/useOpenAndCloseFocus.ts +0 -32
  764. package/src/hooks/useOverlay.tsx +0 -34
  765. package/src/hooks/useProvidedRefOrCreate.ts +0 -14
  766. package/src/hooks/useProvidedStateOrCreate.ts +0 -27
  767. package/src/hooks/useRenderForcingRef.ts +0 -22
  768. package/src/hooks/useResizeObserver.ts +0 -11
  769. package/src/hooks/useSafeTimeout.ts +0 -38
  770. package/src/hooks/useScrollFlash.ts +0 -21
  771. package/src/index.ts +0 -170
  772. package/src/polyfills/eventListenerSignal.ts +0 -66
  773. package/src/stories/ActionList.stories.tsx +0 -437
  774. package/src/stories/ActionMenu.stories.tsx +0 -322
  775. package/src/stories/AnchoredOverlay.stories.tsx +0 -117
  776. package/src/stories/Autocomplete.stories.tsx +0 -572
  777. package/src/stories/AvatarStack.stories.tsx +0 -37
  778. package/src/stories/Button.stories.tsx +0 -88
  779. package/src/stories/ConfirmationDialog.stories.tsx +0 -105
  780. package/src/stories/Dialog.stories.tsx +0 -240
  781. package/src/stories/DropdownMenu.stories.tsx +0 -84
  782. package/src/stories/IssueLabelToken.stories.tsx +0 -138
  783. package/src/stories/Overlay.stories.tsx +0 -213
  784. package/src/stories/Portal.stories.tsx +0 -109
  785. package/src/stories/ProfileToken.stories.tsx +0 -129
  786. package/src/stories/SelectPanel.stories.tsx +0 -353
  787. package/src/stories/TextInputWithTokens.stories.tsx +0 -146
  788. package/src/stories/ThemeProvider.stories.tsx +0 -104
  789. package/src/stories/Token.stories.tsx +0 -126
  790. package/src/stories/useAnchoredPosition.stories.tsx +0 -320
  791. package/src/stories/useFocusTrap.stories.tsx +0 -400
  792. package/src/stories/useFocusZone.stories.tsx +0 -663
  793. package/src/sx.ts +0 -9
  794. package/src/theme-preval.js +0 -79
  795. package/src/theme.ts +0 -3
  796. package/src/utils/deprecate.tsx +0 -73
  797. package/src/utils/isNumeric.tsx +0 -4
  798. package/src/utils/iterateFocusableElements.ts +0 -121
  799. package/src/utils/ssr.tsx +0 -1
  800. package/src/utils/test-deprecations.tsx +0 -19
  801. package/src/utils/test-helpers.tsx +0 -7
  802. package/src/utils/test-matchers.tsx +0 -109
  803. package/src/utils/testing.tsx +0 -242
  804. package/src/utils/theme.js +0 -64
  805. package/src/utils/types/AriaRole.ts +0 -71
  806. package/src/utils/types/ComponentProps.ts +0 -13
  807. package/src/utils/types/Flatten.ts +0 -4
  808. package/src/utils/types/MandateProps.ts +0 -19
  809. package/src/utils/types/Merge.ts +0 -20
  810. package/src/utils/types/index.ts +0 -5
  811. package/src/utils/uniqueId.ts +0 -6
  812. package/src/utils/userAgent.ts +0 -7
  813. package/stats.html +0 -3279
  814. package/tsconfig.build.json +0 -7
  815. package/tsconfig.json +0 -20
@@ -1,96 +0,0 @@
1
- import React from 'react'
2
- import {createPortal} from 'react-dom'
3
-
4
- const PRIMER_PORTAL_ROOT_ID = '__primerPortalRoot__'
5
- const DEFAULT_PORTAL_CONTAINER_NAME = '__default__'
6
-
7
- const portalRootRegistry: Partial<Record<string, Element>> = {}
8
-
9
- /**
10
- * Register a container to serve as a portal root.
11
- * @param root The element that will be the root for portals created in this container
12
- * @param name The name of the container, to be used with the `containerName` prop on the Portal Component.
13
- * If name is not specified, registers the default portal root.
14
- */
15
- export function registerPortalRoot(root: Element, name = DEFAULT_PORTAL_CONTAINER_NAME): void {
16
- portalRootRegistry[name] = root
17
- }
18
-
19
- // Ensures that a default portal root exists and is registered. If a DOM element exists
20
- // with id __primerPortalRoot__, allow that element to serve as the default portal root.
21
- // Otherwise, create that element and attach it to the end of document.body.
22
- function ensureDefaultPortal() {
23
- const existingDefaultPortalContainer = portalRootRegistry[DEFAULT_PORTAL_CONTAINER_NAME]
24
- if (!existingDefaultPortalContainer || !document.body.contains(existingDefaultPortalContainer)) {
25
- let defaultPortalContainer = document.getElementById(PRIMER_PORTAL_ROOT_ID)
26
- if (!(defaultPortalContainer instanceof Element)) {
27
- defaultPortalContainer = document.createElement('div')
28
- defaultPortalContainer.setAttribute('id', PRIMER_PORTAL_ROOT_ID)
29
- defaultPortalContainer.style.position = 'absolute'
30
- defaultPortalContainer.style.top = '0'
31
- defaultPortalContainer.style.left = '0'
32
- const suitablePortalRoot = document.querySelector('[data-portal-root]')
33
- if (suitablePortalRoot) {
34
- suitablePortalRoot.appendChild(defaultPortalContainer)
35
- } else {
36
- document.body.appendChild(defaultPortalContainer)
37
- }
38
- }
39
-
40
- registerPortalRoot(defaultPortalContainer)
41
- }
42
- }
43
-
44
- export interface PortalProps {
45
- /**
46
- * Called when this portal is added to the DOM
47
- */
48
- onMount?: () => void
49
-
50
- /**
51
- * Optional. Mount this portal at the container specified
52
- * by this name. The container must be previously registered
53
- * with `registerPortal`.
54
- */
55
- containerName?: string
56
- }
57
-
58
- /**
59
- * Creates a React Portal, placing all children in a separate physical DOM root node.
60
- * @see https://reactjs.org/docs/portals.html
61
- */
62
- export const Portal: React.FC<PortalProps> = ({children, onMount, containerName: _containerName}) => {
63
- const hostElement = document.createElement('div')
64
-
65
- // Portaled content should get their own stacking context so they don't interfere
66
- // with each other in unexpected ways. One should never find themselves tempted
67
- // to change the zIndex to a value other than "1".
68
- hostElement.style.position = 'relative'
69
- hostElement.style.zIndex = '1'
70
- const elementRef = React.useRef(hostElement)
71
-
72
- React.useLayoutEffect(() => {
73
- let containerName = _containerName
74
- if (containerName === undefined) {
75
- containerName = DEFAULT_PORTAL_CONTAINER_NAME
76
- ensureDefaultPortal()
77
- }
78
- const parentElement = portalRootRegistry[containerName]
79
-
80
- if (!parentElement) {
81
- throw new Error(
82
- `Portal container '${_containerName}' is not yet registered. Container must be registered with registerPortal before use.`
83
- )
84
- }
85
- const element = elementRef.current
86
- parentElement.appendChild(element)
87
- onMount?.()
88
-
89
- return () => {
90
- parentElement.removeChild(element)
91
- }
92
- // eslint-disable-next-line react-hooks/exhaustive-deps
93
- }, [elementRef])
94
-
95
- return createPortal(children, elementRef.current)
96
- }
@@ -1,5 +0,0 @@
1
- import {Portal, PortalProps, registerPortalRoot} from './Portal'
2
-
3
- export default Portal
4
- export {registerPortalRoot}
5
- export type {PortalProps}
package/src/Position.tsx DELETED
@@ -1,63 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
- import Box from './Box'
4
- import {ComponentProps} from './utils/types'
5
-
6
- type StyledPositionProps = {as?: React.ElementType}
7
-
8
- /**
9
- * @deprecated Use the Box component instead (i.e. <Position> → <Box>)
10
- */
11
- const Position = styled(Box)<StyledPositionProps>``
12
-
13
- export type PositionProps = ComponentProps<typeof Position>
14
-
15
- /**
16
- * @deprecated Use the Box component instead (i.e. <Absolute> → <Box position="absolute">)
17
- */
18
- export default Position
19
-
20
- // Absolute
21
- export type AbsoluteProps = Omit<PositionProps, 'position'>
22
-
23
- /**
24
- * @deprecated Use the Box component instead (i.e. <Absolute> → <Box position="absolute">)
25
- */
26
- export const Absolute = React.forwardRef((props: AbsoluteProps, ref) => {
27
- return <Position {...props} position="absolute" ref={ref} />
28
- })
29
- Absolute.displayName = 'Absolute'
30
-
31
- // Fixed
32
- export type FixedProps = Omit<PositionProps, 'position'>
33
-
34
- /**
35
- * @deprecated Use the Box component instead (i.e. <Fixed> → <Box position="fixed">)
36
- */
37
- export const Fixed = React.forwardRef((props: AbsoluteProps, ref) => {
38
- return <Position {...props} position="fixed" ref={ref} />
39
- })
40
- Fixed.displayName = 'Fixed'
41
-
42
- // Relative
43
- export type RelativeProps = Omit<PositionProps, 'position'>
44
-
45
- /**
46
- * @deprecated Use the Box component instead (i.e. <Relative> → <Box position="relative">)
47
- */
48
- export const Relative = React.forwardRef((props: RelativeProps, ref) => {
49
- return <Position {...props} position="relative" ref={ref} />
50
- })
51
- Relative.displayName = 'Relative'
52
-
53
- // Sticky
54
- export type StickyProps = Omit<PositionProps, 'position'>
55
-
56
- /**
57
- * @deprecated Use the Box component instead (i.e. <Sticky> → <Box position="sticky">)
58
- */
59
- export const Sticky = React.forwardRef((props: StickyProps, ref) => {
60
- return <Position {...props} position="sticky" ref={ref} />
61
- })
62
- Sticky.defaultProps = {top: 0, zIndex: 1}
63
- Sticky.displayName = 'Sticky'
@@ -1,52 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
- import {width, WidthProps} from 'styled-system'
4
- import {COMMON, get, SystemCommonProps} from './constants'
5
- import sx, {SxProp} from './sx'
6
- import {ComponentProps} from './utils/types'
7
-
8
- const Bar = styled.span<{progress?: string | number} & SystemCommonProps>`
9
- width: ${props => (props.progress ? `${props.progress}%` : 0)};
10
- ${COMMON}
11
- `
12
-
13
- const sizeMap = {
14
- small: '5px',
15
- large: '10px',
16
- default: '8px'
17
- }
18
-
19
- type StyledProgressContainerProps = {
20
- inline?: boolean
21
- barSize?: keyof typeof sizeMap
22
- } & WidthProps &
23
- SystemCommonProps &
24
- SxProp
25
-
26
- const ProgressContainer = styled.span<StyledProgressContainerProps>`
27
- display: ${props => (props.inline ? 'inline-flex' : 'flex')};
28
- overflow: hidden;
29
- background-color: ${get('colors.border.default')};
30
- border-radius: ${get('radii.1')};
31
- height: ${props => sizeMap[props.barSize || 'default']};
32
- ${COMMON}
33
- ${width}
34
- ${sx};
35
- `
36
-
37
- export type ProgressBarProps = ComponentProps<typeof ProgressContainer> & ComponentProps<typeof Bar>
38
-
39
- function ProgressBar({progress, bg, theme, ...rest}: ProgressBarProps) {
40
- return (
41
- <ProgressContainer theme={theme} {...rest}>
42
- <Bar progress={progress} bg={bg} theme={theme} />
43
- </ProgressContainer>
44
- )
45
- }
46
-
47
- ProgressBar.defaultProps = {
48
- bg: 'success.emphasis',
49
- barSize: 'default'
50
- }
51
-
52
- export default ProgressBar
@@ -1,125 +0,0 @@
1
- import React, {useCallback, useEffect, useRef, useState} from 'react'
2
- import styled from 'styled-components'
3
- import {COMMON, SystemCommonProps} from '../constants'
4
- import sx, {SxProp} from '../sx'
5
- import {ComponentProps} from '../utils/types'
6
- import useKeyboardNav from './hooks/useKeyboardNav'
7
- import {MenuContext} from './SelectMenuContext'
8
- import SelectMenuDivider from './SelectMenuDivider'
9
- import SelectMenuFilter from './SelectMenuFilter'
10
- import SelectMenuFooter from './SelectMenuFooter'
11
- import SelectMenuHeader from './SelectMenuHeader'
12
- import SelectMenuItem from './SelectMenuItem'
13
- import SelectMenuList from './SelectMenuList'
14
- import SelectMenuLoadingAnimation from './SelectMenuLoadingAnimation'
15
- import SelectMenuModal from './SelectMenuModal'
16
- import SelectMenuTab from './SelectMenuTab'
17
- import SelectMenuTabPanel from './SelectMenuTabPanel'
18
- import SelectMenuTabs from './SelectMenuTabs'
19
-
20
- const wrapperStyles = `
21
- // Remove marker added by the display: list-item browser default
22
- > summary {
23
- list-style: none;
24
- }
25
- // Remove marker added by details polyfill
26
- > summary::before {
27
- display: none;
28
- }
29
- // Remove marker added by Chrome
30
- > summary::-webkit-details-marker {
31
- display: none;
32
- }
33
- `
34
-
35
- const StyledSelectMenu = styled.details<SystemCommonProps & SxProp>`
36
- ${wrapperStyles}
37
- ${COMMON}
38
- ${sx};
39
- `
40
-
41
- type SelectMenuInternalProps = {
42
- initialTab?: string
43
- as?: React.ReactElement
44
- } & ComponentProps<typeof StyledSelectMenu>
45
-
46
- // 'as' is spread out because we don't want users to be able to change the tag.
47
- const SelectMenu = React.forwardRef<HTMLElement, SelectMenuInternalProps>(
48
- ({children, initialTab = '', as: _ignoredAs, ...rest}, forwardedRef) => {
49
- const backupRef = useRef<HTMLElement>(null)
50
- const ref = forwardedRef ?? backupRef
51
- const [selectedTab, setSelectedTab] = useState(initialTab)
52
- const [open, setOpen] = useState(false)
53
- const menuProviderValues = {
54
- selectedTab,
55
- setSelectedTab,
56
- setOpen,
57
- open,
58
- initialTab
59
- }
60
-
61
- const onClickOutside = useCallback(
62
- event => {
63
- if ('current' in ref && ref.current && !ref.current.contains(event.target)) {
64
- if (!event.defaultPrevented) {
65
- setOpen(false)
66
- }
67
- }
68
- },
69
- [ref, setOpen]
70
- )
71
-
72
- // handles the overlay behavior - closing the menu when clicking outside of it
73
- useEffect(() => {
74
- if (open) {
75
- document.addEventListener('click', onClickOutside)
76
- return () => {
77
- document.removeEventListener('click', onClickOutside)
78
- }
79
- }
80
- }, [open, onClickOutside])
81
-
82
- function toggle(event: React.SyntheticEvent<HTMLDetailsElement, Event>) {
83
- setOpen((event.target as HTMLDetailsElement).open)
84
- }
85
-
86
- useKeyboardNav(ref, open, setOpen)
87
-
88
- return (
89
- <MenuContext.Provider value={menuProviderValues}>
90
- <StyledSelectMenu ref={ref} {...rest} open={open} onToggle={toggle}>
91
- {children}
92
- </StyledSelectMenu>
93
- </MenuContext.Provider>
94
- )
95
- }
96
- )
97
-
98
- SelectMenu.displayName = 'SelectMenu'
99
-
100
- export type SelectMenuProps = ComponentProps<typeof SelectMenu>
101
- export type {SelectMenuDividerProps} from './SelectMenuDivider'
102
- export type {SelectMenuFilterProps} from './SelectMenuFilter'
103
- export type {SelectMenuFooterProps} from './SelectMenuFooter'
104
- export type {SelectMenuHeaderProps} from './SelectMenuHeader'
105
- export type {SelectMenuItemProps} from './SelectMenuItem'
106
- export type {SelectMenuListProps} from './SelectMenuList'
107
- export type {SelectMenuLoadingAnimationProps} from './SelectMenuLoadingAnimation'
108
- export type {SelectMenuModalProps} from './SelectMenuModal'
109
- export type {SelectMenuTabProps} from './SelectMenuTab'
110
- export type {SelectMenuTabPanelProps} from './SelectMenuTabPanel'
111
- export type {SelectMenuTabsProps} from './SelectMenuTabs'
112
- export default Object.assign(SelectMenu, {
113
- MenuContext,
114
- List: SelectMenuList,
115
- Divider: SelectMenuDivider,
116
- Filter: SelectMenuFilter,
117
- Footer: SelectMenuFooter,
118
- Item: SelectMenuItem,
119
- Modal: SelectMenuModal,
120
- Tabs: SelectMenuTabs,
121
- Tab: SelectMenuTab,
122
- TabPanel: SelectMenuTabPanel,
123
- Header: SelectMenuHeader,
124
- LoadingAnimation: SelectMenuLoadingAnimation
125
- })
@@ -1,9 +0,0 @@
1
- import {createContext} from 'react'
2
-
3
- export const MenuContext = createContext<{
4
- selectedTab?: string
5
- setSelectedTab?: React.Dispatch<React.SetStateAction<string>>
6
- setOpen?: React.Dispatch<React.SetStateAction<boolean>>
7
- open?: boolean
8
- initialTab?: string
9
- }>({})
@@ -1,25 +0,0 @@
1
- import styled, {css} from 'styled-components'
2
- import {COMMON, get, SystemCommonProps} from '../constants'
3
- import sx, {SxProp} from '../sx'
4
- import {ComponentProps} from '../utils/types'
5
-
6
- const dividerStyles = css`
7
- padding: ${get('space.1')} ${get('space.3')};
8
- margin: 0;
9
- font-size: ${get('fontSizes.0')};
10
- font-weight: ${get('fontWeights.bold')};
11
- color: ${get('colors.fg.muted')};
12
- background-color: ${get('colors.canvas.subtle')};
13
- border-bottom: ${get('borderWidths.1')} solid ${get('colors.border.muted')};
14
- `
15
-
16
- const SelectMenuDivider = styled.div<SystemCommonProps & SxProp>`
17
- ${dividerStyles}
18
- ${COMMON}
19
- ${sx};
20
- `
21
-
22
- SelectMenuDivider.displayName = 'SelectMenu.Divider'
23
-
24
- export type SelectMenuDividerProps = ComponentProps<typeof SelectMenuDivider>
25
- export default SelectMenuDivider
@@ -1,51 +0,0 @@
1
- import React, {forwardRef, useContext, useEffect, useRef} from 'react'
2
- import styled from 'styled-components'
3
- import {COMMON, get, SystemCommonProps} from '../constants'
4
- import sx, {SxProp} from '../sx'
5
- import TextInput, {TextInputProps} from '../TextInput'
6
- import {ComponentProps} from '../utils/types'
7
- import {MenuContext} from './SelectMenuContext'
8
-
9
- const StyledForm = styled.form<SystemCommonProps & SxProp>`
10
- padding: ${get('space.3')};
11
- margin: 0;
12
- border-bottom: ${get('borderWidths.1')} solid ${get('colors.border.muted')};
13
- background-color: ${get('colors.canvas.overlay')};
14
- ${COMMON};
15
-
16
- @media (min-width: ${get('breakpoints.0')}) {
17
- padding: ${get('space.2')};
18
- }
19
-
20
- ${sx};
21
- `
22
-
23
- type SelectMenuFilterInternalProps = {
24
- value?: string
25
- } & TextInputProps
26
-
27
- const SelectMenuFilter = forwardRef<HTMLInputElement, SelectMenuFilterInternalProps>(
28
- ({theme, value, sx: sxProp, ...rest}, forwardedRef) => {
29
- const inputRef = useRef<HTMLInputElement>(null)
30
- const ref = forwardedRef ?? inputRef
31
- const {open} = useContext(MenuContext)
32
-
33
- // puts focus on the filter input when the menu is opened
34
- useEffect(() => {
35
- if (open) {
36
- inputRef.current?.focus()
37
- }
38
- }, [open])
39
-
40
- return (
41
- <StyledForm theme={theme} sx={sxProp}>
42
- <TextInput theme={theme} ref={ref} width="100%" block value={value} contrast {...rest} />
43
- </StyledForm>
44
- )
45
- }
46
- )
47
-
48
- SelectMenuFilter.displayName = 'SelectMenu.Filter'
49
-
50
- export type SelectMenuFilterProps = ComponentProps<typeof SelectMenuFilter>
51
- export default SelectMenuFilter
@@ -1,28 +0,0 @@
1
- import styled, {css} from 'styled-components'
2
- import {COMMON, get, SystemCommonProps} from '../constants'
3
- import sx, {SxProp} from '../sx'
4
- import {ComponentProps} from '../utils/types'
5
-
6
- const footerStyles = css`
7
- margin-top: -1px;
8
- padding: ${get('space.2')} ${get('space.3')};
9
- font-size: ${get('fontSizes.0')};
10
- color: ${get('colors.fg.muted')};
11
- text-align: center;
12
- border-top: ${get('borderWidths.1')} solid ${get('colors.border.muted')};
13
-
14
- @media (min-width: ${get('breakpoints.0')}) {
15
- padding: ${get('space.1')} ${get('space.2')};
16
- }
17
- `
18
-
19
- const SelectMenuFooter = styled.footer<SystemCommonProps & SxProp>`
20
- ${footerStyles}
21
- ${COMMON}
22
- ${sx};
23
- `
24
-
25
- SelectMenuFooter.displayName = 'SelectMenu.Footer'
26
-
27
- export type SelectMenuFooterProps = ComponentProps<typeof SelectMenuFooter>
28
- export default SelectMenuFooter
@@ -1,50 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
- import {COMMON, get, SystemCommonProps, SystemTypographyProps, TYPOGRAPHY} from '../constants'
4
- import sx, {SxProp} from '../sx'
5
- import {ComponentProps} from '../utils/types'
6
-
7
- // SelectMenu.Header is intentionally not exported, it's an internal component used in
8
- // SelectMenu.Modal
9
-
10
- const SelectMenuTitle = styled.h3`
11
- color: ${get('colors.fg.default')};
12
- flex: auto;
13
- font-size: ${get('fontSizes.1')};
14
- font-weight: ${get('fontWeights.bold')};
15
- margin: 0;
16
-
17
- @media (min-width: ${get('breakpoints.0')}) {
18
- font-size: inherit;
19
- }
20
- `
21
-
22
- const StyledHeader = styled.header<SystemTypographyProps & SystemCommonProps & SxProp>`
23
- display: flex;
24
- flex: none; // fixes header from getting squeezed in Safari iOS
25
- padding: ${get('space.3')};
26
- border-bottom: ${get('borderWidths')} solid ${get('colors.border.muted')};
27
- ${COMMON}
28
- ${TYPOGRAPHY}
29
-
30
- @media (min-width: ${get('breakpoints.0')}) {
31
- padding-top: ${get('space.2')};
32
- padding-bottom: ${get('space.2')};
33
- }
34
-
35
- ${sx};
36
- `
37
-
38
- export type SelectMenuHeaderProps = ComponentProps<typeof StyledHeader>
39
-
40
- const SelectMenuHeader = ({children, theme, ...rest}: SelectMenuHeaderProps) => {
41
- return (
42
- <StyledHeader theme={theme} {...rest}>
43
- <SelectMenuTitle theme={theme}>{children}</SelectMenuTitle>
44
- </StyledHeader>
45
- )
46
- }
47
-
48
- SelectMenuHeader.displayName = 'SelectMenu.Header'
49
-
50
- export default SelectMenuHeader
@@ -1,137 +0,0 @@
1
- import {CheckIcon} from '@primer/octicons-react'
2
- import React, {forwardRef, useContext, useRef} from 'react'
3
- import styled, {css} from 'styled-components'
4
- import {COMMON, get, SystemCommonProps} from '../constants'
5
- import StyledOcticon from '../StyledOcticon'
6
- import sx, {SxProp} from '../sx'
7
- import {ComponentProps} from '../utils/types'
8
- import {MenuContext} from './SelectMenuContext'
9
-
10
- export const listItemStyles = css`
11
- display: flex;
12
- align-items: center;
13
- padding: ${get('space.3')};
14
- overflow: hidden;
15
- text-align: left;
16
- cursor: pointer;
17
- background-color: ${get('colors.canvas.overlay')};
18
- border: 0;
19
- border-bottom: ${get('borderWidths.1')} solid ${get('colors.border.muted')};
20
- color: ${get('colors.fg.muted')};
21
- text-decoration: none;
22
- font-size: ${get('fontSizes.0')};
23
- font-family: inherit; // needed if user uses a "button" tag
24
- width: 100%;
25
-
26
- &:hover {
27
- text-decoration: none;
28
- }
29
- &:focus {
30
- outline: none;
31
- }
32
-
33
- &[hidden] {
34
- display: none !important;
35
- }
36
-
37
- @media (min-width: ${get('breakpoints.0')}) {
38
- padding-top: ${get('space.2')};
39
- padding-bottom: ${get('space.2')};
40
- }
41
-
42
- .SelectMenu-icon {
43
- width: ${get('space.3')};
44
- margin-right: ${get('space.2')};
45
- flex-shrink: 0;
46
- }
47
-
48
- .SelectMenu-selected-icon {
49
- visibility: hidden;
50
- transition: transform 0.12s cubic-bezier(0.5, 0.1, 1, 0.5), visibility 0s 0.12s linear;
51
- transform: scale(0);
52
- }
53
-
54
- // selected items
55
- &[aria-checked='true'] {
56
- font-weight: 500;
57
- color: ${get('colors.fg.default')};
58
-
59
- .SelectMenu-selected-icon {
60
- visibility: visible;
61
- transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), visibility 0s linear;
62
- transform: scale(1);
63
- }
64
- }
65
-
66
- // can hover states
67
- @media (hover: hover) {
68
- &:hover,
69
- &:active,
70
- &:focus {
71
- background-color: ${get('colors.neutral.subtle')};
72
- }
73
- }
74
-
75
- // Can not hover states
76
- //
77
- // For touch input
78
-
79
- @media (hover: none) {
80
- // Android
81
- &:focus,
82
- &:active {
83
- background-color: ${get('colors.canvas.subtle')};
84
- }
85
-
86
- // iOS Safari
87
- // :active would work if ontouchstart is added to the button
88
- // Instead this tweaks the "native" highlight color
89
- -webkit-tap-highlight-color: ${get('colors.selectMenu.tapHighlight')};
90
- }
91
- `
92
-
93
- const StyledItem = styled.a.attrs(() => ({
94
- role: 'menuitemcheckbox'
95
- }))<SystemCommonProps & SxProp>`
96
- ${listItemStyles}
97
- ${COMMON}
98
- ${sx};
99
- `
100
-
101
- type SelectMenuItemInteralProps = {
102
- as?: React.ElementType
103
- selected?: boolean
104
- } & ComponentProps<typeof StyledItem>
105
-
106
- const SelectMenuItem = forwardRef<HTMLAnchorElement, SelectMenuItemInteralProps>(
107
- ({children, selected, theme, onClick, ...rest}, forwardedRef) => {
108
- const menuContext = useContext(MenuContext)
109
- const backupRef = useRef<HTMLAnchorElement>(null)
110
- const itemRef = forwardedRef ?? backupRef
111
-
112
- // close the menu when an item is clicked
113
- // this can be overriden if the user provides a `onClick` prop and prevents default in it
114
- const handleClick = (e: React.MouseEvent<HTMLAnchorElement, MouseEvent>) => {
115
- onClick && onClick(e)
116
-
117
- if (!e.defaultPrevented) {
118
- menuContext.setOpen?.(false)
119
- }
120
- }
121
- return (
122
- <StyledItem ref={itemRef} {...rest} theme={theme} onClick={handleClick} aria-checked={selected}>
123
- <StyledOcticon theme={theme} className="SelectMenu-icon SelectMenu-selected-icon" icon={CheckIcon} />
124
- {children}
125
- </StyledItem>
126
- )
127
- }
128
- )
129
-
130
- SelectMenuItem.defaultProps = {
131
- selected: false
132
- }
133
-
134
- SelectMenuItem.displayName = 'SelectMenu.Item'
135
-
136
- export type SelectMenuItemProps = ComponentProps<typeof SelectMenuItem>
137
- export default SelectMenuItem
@@ -1,42 +0,0 @@
1
- import styled, {css} from 'styled-components'
2
- import {COMMON, get, SystemCommonProps} from '../constants'
3
- import sx, {SxProp} from '../sx'
4
- import {ComponentProps} from '../utils/types'
5
-
6
- const listStyles = css`
7
- position: relative;
8
- padding: 0;
9
- margin: 0;
10
- flex: auto;
11
- overflow-x: hidden;
12
- overflow-y: auto;
13
- background-color: ${get('colors.canvas.overlay')};
14
- -webkit-overflow-scrolling: touch; // Adds momentum + bouncy scrolling
15
-
16
- @media (hover: hover) {
17
- .SelectMenuTab:focus {
18
- background-color: ${get('colors.selectMenu.tapFocusBg')};
19
- }
20
-
21
- .SelectMenuTab:not([aria-checked='true']):hover {
22
- color: ${get('colors.fg.default')};
23
- background-color: ${get('colors.canvas.subtle')};
24
- }
25
-
26
- .SelectMenuTab:not([aria-checked='true']):active {
27
- color: ${get('colors.fg.default')};
28
- background-color: ${get('colors.canvas.subtle')};
29
- }
30
- }
31
- `
32
-
33
- const SelectMenuList = styled.div<SystemCommonProps & SxProp>`
34
- ${listStyles}
35
- ${COMMON}
36
- ${sx};
37
- `
38
-
39
- SelectMenuList.displayName = 'SelectMenu.List'
40
-
41
- export type SelectMenuListProps = ComponentProps<typeof SelectMenuList>
42
- export default SelectMenuList