@primer/components 0.0.0-2021111182448 → 0.0.0-2021111183529

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 (719) hide show
  1. package/CHANGELOG.md +942 -43
  2. package/README.md +16 -16
  3. package/codemods/__tests__/deprecateUtilityComponents.js +200 -0
  4. package/codemods/__tests__/removeSystemProps.js +225 -0
  5. package/codemods/deprecateUtilityComponents.js +111 -0
  6. package/codemods/lib/modifyProps.js +9 -7
  7. package/codemods/lib/prettify.js +1 -1
  8. package/codemods/lib/replaceImportSource.js +5 -5
  9. package/codemods/removeSystemProps.js +312 -0
  10. package/dist/browser.esm.js +1267 -853
  11. package/dist/browser.esm.js.map +1 -1
  12. package/dist/browser.umd.js +1304 -890
  13. package/dist/browser.umd.js.map +1 -1
  14. package/lib/ActionList/Divider.d.ts +9 -0
  15. package/lib/ActionList/Divider.js +40 -0
  16. package/lib/ActionList/Group.d.ts +28 -0
  17. package/lib/ActionList/Group.js +35 -0
  18. package/lib/ActionList/Header.d.ts +29 -0
  19. package/lib/ActionList/Header.js +51 -0
  20. package/lib/ActionList/Item.d.ts +98 -0
  21. package/lib/ActionList/Item.js +276 -0
  22. package/lib/ActionList/List.d.ts +88 -0
  23. package/lib/ActionList/List.js +199 -0
  24. package/lib/ActionList/index.d.ts +17 -0
  25. package/lib/ActionList/index.js +29 -0
  26. package/lib/ActionList2/Description.d.ts +12 -0
  27. package/lib/ActionList2/Description.js +57 -0
  28. package/lib/ActionList2/Divider.d.ts +6 -0
  29. package/lib/ActionList2/Divider.js +40 -0
  30. package/lib/ActionList2/Group.d.ts +37 -0
  31. package/lib/ActionList2/Group.js +106 -0
  32. package/lib/ActionList2/Item.d.ts +63 -0
  33. package/lib/ActionList2/Item.js +260 -0
  34. package/lib/ActionList2/LinkItem.d.ts +17 -0
  35. package/lib/ActionList2/LinkItem.js +57 -0
  36. package/lib/ActionList2/List.d.ts +26 -0
  37. package/lib/ActionList2/List.js +68 -0
  38. package/lib/ActionList2/MenuContext.d.ts +10 -0
  39. package/lib/ActionList2/MenuContext.js +15 -0
  40. package/lib/ActionList2/Selection.d.ts +5 -0
  41. package/lib/ActionList2/Selection.js +97 -0
  42. package/lib/ActionList2/Visuals.d.ts +9 -0
  43. package/lib/ActionList2/Visuals.js +90 -0
  44. package/lib/ActionList2/index.d.ts +35 -0
  45. package/lib/ActionList2/index.js +47 -0
  46. package/lib/ActionMenu.d.ts +40 -0
  47. package/lib/ActionMenu.js +103 -0
  48. package/lib/ActionMenu2.d.ts +310 -0
  49. package/lib/ActionMenu2.js +91 -0
  50. package/lib/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  51. package/lib/AnchoredOverlay/AnchoredOverlay.js +124 -0
  52. package/lib/AnchoredOverlay/index.d.ts +2 -0
  53. package/lib/AnchoredOverlay/index.js +13 -0
  54. package/lib/Autocomplete/Autocomplete.d.ts +305 -0
  55. package/lib/Autocomplete/Autocomplete.js +145 -0
  56. package/lib/Autocomplete/AutocompleteContext.d.ts +17 -0
  57. package/lib/Autocomplete/AutocompleteContext.js +11 -0
  58. package/lib/Autocomplete/AutocompleteInput.d.ts +293 -0
  59. package/lib/Autocomplete/AutocompleteInput.js +157 -0
  60. package/lib/Autocomplete/AutocompleteMenu.d.ts +72 -0
  61. package/lib/Autocomplete/AutocompleteMenu.js +224 -0
  62. package/lib/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  63. package/lib/Autocomplete/AutocompleteOverlay.js +80 -0
  64. package/lib/Autocomplete/index.d.ts +2 -0
  65. package/lib/Autocomplete/index.js +15 -0
  66. package/lib/Avatar.d.ts +14 -0
  67. package/lib/Avatar.js +1 -12
  68. package/lib/AvatarPair.d.ts +8 -0
  69. package/lib/AvatarPair.js +9 -16
  70. package/lib/AvatarStack.d.ts +8 -0
  71. package/lib/AvatarStack.js +12 -23
  72. package/lib/BaseStyles.d.ts +14 -0
  73. package/lib/BaseStyles.js +25 -31
  74. package/lib/BorderBox.d.ts +7 -0
  75. package/lib/BorderBox.js +5 -16
  76. package/lib/Box.d.ts +6 -0
  77. package/lib/Box.js +2 -15
  78. package/lib/BranchName.d.ts +5 -0
  79. package/lib/BranchName.js +1 -14
  80. package/lib/Breadcrumbs.d.ts +41 -0
  81. package/lib/Breadcrumbs.js +82 -0
  82. package/lib/Button/Button.d.ts +284 -0
  83. package/lib/Button/Button.js +3 -15
  84. package/lib/Button/ButtonBase.d.ts +9 -0
  85. package/lib/Button/ButtonBase.js +2 -25
  86. package/lib/Button/ButtonClose.d.ts +279 -0
  87. package/lib/Button/ButtonClose.js +9 -26
  88. package/lib/Button/ButtonDanger.d.ts +284 -0
  89. package/lib/Button/ButtonDanger.js +2 -14
  90. package/lib/Button/ButtonGroup.d.ts +4 -0
  91. package/lib/Button/ButtonGroup.js +2 -8
  92. package/lib/Button/ButtonInvisible.d.ts +284 -0
  93. package/lib/Button/ButtonInvisible.js +3 -15
  94. package/lib/Button/ButtonOutline.d.ts +284 -0
  95. package/lib/Button/ButtonOutline.js +2 -14
  96. package/lib/Button/ButtonPrimary.d.ts +284 -0
  97. package/lib/Button/ButtonPrimary.js +2 -14
  98. package/lib/Button/ButtonStyles.d.ts +2 -0
  99. package/lib/Button/ButtonTableList.d.ts +5 -0
  100. package/lib/Button/ButtonTableList.js +1 -15
  101. package/lib/Button/index.d.ts +16 -0
  102. package/lib/Button/index.js +9 -59
  103. package/lib/Caret.d.ts +21 -0
  104. package/lib/Caret.js +14 -17
  105. package/lib/Checkbox.d.ts +29 -0
  106. package/lib/Checkbox.js +64 -0
  107. package/lib/CircleBadge.d.ts +24 -0
  108. package/lib/CircleBadge.js +2 -20
  109. package/lib/CircleOcticon.d.ts +392 -0
  110. package/lib/CircleOcticon.js +9 -18
  111. package/lib/CounterLabel.d.ts +7 -0
  112. package/lib/CounterLabel.js +3 -17
  113. package/lib/Details.d.ts +5 -0
  114. package/lib/Details.js +1 -11
  115. package/lib/Dialog/ConfirmationDialog.d.ts +44 -0
  116. package/lib/Dialog/ConfirmationDialog.js +191 -0
  117. package/lib/Dialog/Dialog.d.ts +163 -0
  118. package/lib/Dialog/Dialog.js +311 -0
  119. package/lib/Dialog.d.ts +406 -0
  120. package/lib/Dialog.js +34 -49
  121. package/lib/Dropdown.d.ts +1113 -0
  122. package/lib/Dropdown.js +45 -60
  123. package/lib/DropdownMenu/DropdownButton.d.ts +280 -0
  124. package/lib/DropdownMenu/DropdownButton.js +33 -0
  125. package/lib/DropdownMenu/DropdownMenu.d.ts +43 -0
  126. package/lib/DropdownMenu/DropdownMenu.js +94 -0
  127. package/lib/DropdownMenu/index.d.ts +4 -0
  128. package/lib/DropdownMenu/index.js +21 -0
  129. package/lib/DropdownStyles.d.ts +3 -0
  130. package/lib/DropdownStyles.js +6 -6
  131. package/lib/FilterList.d.ts +283 -0
  132. package/lib/FilterList.js +2 -30
  133. package/lib/FilteredActionList/FilteredActionList.d.ts +16 -0
  134. package/lib/FilteredActionList/FilteredActionList.js +137 -0
  135. package/lib/FilteredActionList/index.d.ts +2 -0
  136. package/lib/FilteredActionList/index.js +13 -0
  137. package/lib/FilteredSearch.d.ts +5 -0
  138. package/lib/FilteredSearch.js +1 -12
  139. package/lib/Flash.d.ts +8 -0
  140. package/lib/Flash.js +35 -14
  141. package/lib/Flex.d.ts +7 -0
  142. package/lib/Flex.js +3 -5
  143. package/lib/FormGroup.d.ts +11 -0
  144. package/lib/FormGroup.js +2 -22
  145. package/lib/Grid.d.ts +7 -0
  146. package/lib/Grid.js +4 -9
  147. package/lib/Header.d.ts +23 -0
  148. package/lib/Header.js +7 -37
  149. package/lib/Heading.d.ts +5 -0
  150. package/lib/Heading.js +1 -13
  151. package/lib/Label.d.ts +10 -0
  152. package/lib/Label.js +5 -19
  153. package/lib/LabelGroup.d.ts +5 -0
  154. package/lib/LabelGroup.js +1 -9
  155. package/lib/Link.d.ts +9 -0
  156. package/lib/Link.js +2 -30
  157. package/lib/NewButton/button-counter.d.ts +6 -0
  158. package/lib/NewButton/button-counter.js +31 -0
  159. package/lib/NewButton/button.d.ts +13 -0
  160. package/lib/NewButton/button.js +308 -0
  161. package/lib/NewButton/index.d.ts +14 -0
  162. package/lib/NewButton/index.js +15 -0
  163. package/lib/NewButton/types.d.ts +32 -0
  164. package/lib/{utils → NewButton}/types.js +0 -0
  165. package/lib/Overlay.d.ts +66 -0
  166. package/lib/Overlay.js +184 -0
  167. package/lib/Pagehead.d.ts +5 -0
  168. package/lib/Pagehead.js +1 -13
  169. package/lib/Pagination/Pagination.d.ts +24 -0
  170. package/lib/Pagination/Pagination.js +14 -29
  171. package/lib/Pagination/index.d.ts +3 -0
  172. package/lib/Pagination/model.d.ts +26 -0
  173. package/lib/Pagination/model.js +1 -1
  174. package/lib/PointerBox.d.ts +11 -0
  175. package/lib/PointerBox.js +4 -13
  176. package/lib/Popover.d.ts +20 -0
  177. package/lib/Popover.js +5 -29
  178. package/lib/Portal/Portal.d.ts +25 -0
  179. package/lib/Portal/Portal.js +101 -0
  180. package/lib/Portal/index.d.ts +4 -0
  181. package/lib/Portal/index.js +17 -0
  182. package/lib/Position.d.ts +34 -0
  183. package/lib/Position.js +46 -46
  184. package/lib/ProgressBar.d.ts +26 -0
  185. package/lib/ProgressBar.js +8 -27
  186. package/lib/SelectMenu/SelectMenu.d.ts +1670 -0
  187. package/lib/SelectMenu/SelectMenu.js +32 -44
  188. package/lib/SelectMenu/SelectMenuContext.d.ts +8 -0
  189. package/lib/SelectMenu/SelectMenuContext.js +1 -1
  190. package/lib/SelectMenu/SelectMenuDivider.d.ts +5 -0
  191. package/lib/SelectMenu/SelectMenuDivider.js +6 -14
  192. package/lib/SelectMenu/SelectMenuFilter.d.ts +9 -0
  193. package/lib/SelectMenu/SelectMenuFilter.js +13 -21
  194. package/lib/SelectMenu/SelectMenuFooter.d.ts +5 -0
  195. package/lib/SelectMenu/SelectMenuFooter.js +6 -14
  196. package/lib/SelectMenu/SelectMenuHeader.d.ts +10 -0
  197. package/lib/SelectMenu/SelectMenuHeader.js +4 -17
  198. package/lib/SelectMenu/SelectMenuItem.d.ts +14 -0
  199. package/lib/SelectMenu/SelectMenuItem.js +13 -21
  200. package/lib/SelectMenu/SelectMenuList.d.ts +5 -0
  201. package/lib/SelectMenu/SelectMenuList.js +6 -14
  202. package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  203. package/lib/SelectMenu/SelectMenuLoadingAnimation.js +6 -17
  204. package/lib/SelectMenu/SelectMenuModal.d.ts +14 -0
  205. package/lib/SelectMenu/SelectMenuModal.js +11 -23
  206. package/lib/SelectMenu/SelectMenuTab.d.ts +13 -0
  207. package/lib/SelectMenu/SelectMenuTab.js +16 -26
  208. package/lib/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  209. package/lib/SelectMenu/SelectMenuTabPanel.js +14 -25
  210. package/lib/SelectMenu/SelectMenuTabs.d.ts +10 -0
  211. package/lib/SelectMenu/SelectMenuTabs.js +10 -17
  212. package/lib/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  213. package/lib/SelectMenu/hooks/useKeyboardNav.js +2 -0
  214. package/lib/SelectMenu/index.d.ts +2 -0
  215. package/lib/SelectMenu/index.js +7 -5
  216. package/lib/SelectPanel/SelectPanel.d.ts +25 -0
  217. package/lib/SelectPanel/SelectPanel.js +147 -0
  218. package/lib/SelectPanel/index.d.ts +2 -0
  219. package/lib/SelectPanel/index.js +13 -0
  220. package/lib/SideNav.d.ts +34 -0
  221. package/lib/SideNav.js +23 -41
  222. package/lib/Spinner.d.ts +16 -0
  223. package/lib/Spinner.js +58 -0
  224. package/lib/StateLabel.d.ts +15 -0
  225. package/lib/StateLabel.js +53 -23
  226. package/lib/StyledOcticon.d.ts +11 -0
  227. package/lib/StyledOcticon.js +1 -15
  228. package/lib/SubNav.d.ts +26 -0
  229. package/lib/SubNav.js +10 -41
  230. package/lib/TabNav.d.ts +19 -0
  231. package/lib/TabNav.js +15 -37
  232. package/lib/Text.d.ts +6 -0
  233. package/lib/Text.js +0 -12
  234. package/lib/TextInput.d.ts +14 -0
  235. package/lib/TextInput.js +25 -76
  236. package/lib/TextInputWithTokens.d.ts +328 -0
  237. package/lib/TextInputWithTokens.js +318 -0
  238. package/lib/ThemeProvider.d.ts +26 -0
  239. package/lib/ThemeProvider.js +193 -0
  240. package/lib/Timeline.d.ts +33 -0
  241. package/lib/Timeline.js +34 -87
  242. package/lib/Token/AvatarToken.d.ts +7 -0
  243. package/lib/Token/AvatarToken.js +64 -0
  244. package/lib/Token/IssueLabelToken.d.ts +14 -0
  245. package/lib/Token/IssueLabelToken.js +144 -0
  246. package/lib/Token/Token.d.ts +15 -0
  247. package/lib/Token/Token.js +105 -0
  248. package/lib/Token/TokenBase.d.ts +31 -0
  249. package/lib/Token/TokenBase.js +104 -0
  250. package/lib/Token/_RemoveTokenButton.d.ts +12 -0
  251. package/lib/Token/_RemoveTokenButton.js +90 -0
  252. package/lib/Token/_TokenTextContainer.d.ts +3 -0
  253. package/lib/Token/_TokenTextContainer.js +17 -0
  254. package/lib/Token/index.d.ts +3 -0
  255. package/lib/Token/index.js +31 -0
  256. package/lib/Tooltip.d.ts +17 -0
  257. package/lib/Tooltip.js +4 -21
  258. package/lib/Truncate.d.ts +10 -0
  259. package/lib/Truncate.js +2 -18
  260. package/lib/UnderlineNav.d.ts +24 -0
  261. package/lib/UnderlineNav.js +3 -29
  262. package/lib/_TextInputWrapper.d.ts +10 -0
  263. package/lib/_TextInputWrapper.js +51 -0
  264. package/lib/_UnstyledTextInput.d.ts +2 -0
  265. package/lib/_UnstyledTextInput.js +20 -0
  266. package/lib/behaviors/anchoredPosition.d.ts +89 -0
  267. package/lib/behaviors/anchoredPosition.js +316 -0
  268. package/lib/behaviors/focusTrap.d.ts +12 -0
  269. package/lib/behaviors/focusTrap.js +179 -0
  270. package/lib/behaviors/focusZone.d.ts +137 -0
  271. package/lib/behaviors/focusZone.js +578 -0
  272. package/lib/behaviors/scrollIntoViewingArea.d.ts +1 -0
  273. package/lib/behaviors/scrollIntoViewingArea.js +39 -0
  274. package/lib/constants.d.ts +20 -0
  275. package/lib/constants.js +11 -27
  276. package/lib/drafts.d.ts +9 -0
  277. package/lib/drafts.js +44 -0
  278. package/lib/hooks/index.d.ts +11 -0
  279. package/lib/hooks/index.js +61 -0
  280. package/lib/hooks/useAnchoredPosition.d.ts +20 -0
  281. package/lib/hooks/useAnchoredPosition.js +51 -0
  282. package/lib/hooks/useCombinedRefs.d.ts +10 -0
  283. package/lib/hooks/useCombinedRefs.js +47 -0
  284. package/lib/hooks/useDetails.d.ts +17 -0
  285. package/lib/hooks/useDialog.d.ts +16 -0
  286. package/lib/hooks/useDialog.js +21 -6
  287. package/lib/hooks/useFocusTrap.d.ts +32 -0
  288. package/lib/hooks/useFocusTrap.js +69 -0
  289. package/lib/hooks/useFocusZone.d.ts +23 -0
  290. package/lib/hooks/useFocusZone.js +53 -0
  291. package/lib/hooks/useOnEscapePress.d.ts +23 -0
  292. package/lib/hooks/useOnEscapePress.js +69 -0
  293. package/lib/hooks/useOnOutsideClick.d.ts +8 -0
  294. package/lib/hooks/useOnOutsideClick.js +90 -0
  295. package/lib/hooks/useOpenAndCloseFocus.d.ts +8 -0
  296. package/lib/hooks/useOpenAndCloseFocus.js +36 -0
  297. package/lib/hooks/useOverlay.d.ts +15 -0
  298. package/lib/hooks/useOverlay.js +43 -0
  299. package/lib/hooks/useProvidedRefOrCreate.d.ts +10 -0
  300. package/lib/hooks/useProvidedRefOrCreate.js +24 -0
  301. package/lib/hooks/useProvidedStateOrCreate.d.ts +10 -0
  302. package/lib/hooks/useProvidedStateOrCreate.js +27 -0
  303. package/lib/hooks/useRenderForcingRef.d.ts +8 -0
  304. package/lib/hooks/useRenderForcingRef.js +25 -0
  305. package/lib/hooks/useResizeObserver.d.ts +1 -0
  306. package/lib/hooks/useResizeObserver.js +20 -0
  307. package/lib/hooks/useSafeTimeout.d.ts +12 -0
  308. package/lib/hooks/useSafeTimeout.js +38 -0
  309. package/lib/hooks/useScrollFlash.d.ts +6 -0
  310. package/lib/hooks/useScrollFlash.js +29 -0
  311. package/lib/index.d.ts +120 -0
  312. package/lib/index.js +191 -7
  313. package/lib/polyfills/eventListenerSignal.d.ts +6 -0
  314. package/lib/polyfills/eventListenerSignal.js +64 -0
  315. package/lib/sx.d.ts +14 -0
  316. package/lib/sx.js +8 -5
  317. package/lib/theme-preval.d.ts +49 -0
  318. package/lib/theme-preval.js +3119 -357
  319. package/lib/theme.d.ts +80 -0
  320. package/lib/theme.js +5 -8
  321. package/lib/utils/create-slots.d.ts +17 -0
  322. package/lib/utils/create-slots.js +105 -0
  323. package/lib/utils/deprecate.d.ts +18 -0
  324. package/lib/utils/deprecate.js +6 -5
  325. package/lib/utils/isNumeric.d.ts +1 -0
  326. package/lib/utils/isNumeric.js +1 -0
  327. package/lib/utils/iterateFocusableElements.d.ts +42 -0
  328. package/lib/utils/iterateFocusableElements.js +113 -0
  329. package/lib/utils/ssr.d.ts +1 -0
  330. package/lib/utils/ssr.js +19 -0
  331. package/lib/utils/test-deprecations.d.ts +1 -0
  332. package/lib/utils/test-deprecations.js +2 -1
  333. package/lib/utils/test-helpers.d.ts +0 -0
  334. package/lib/utils/test-helpers.js +9 -0
  335. package/lib/utils/test-matchers.d.ts +1 -0
  336. package/lib/utils/test-matchers.js +6 -50
  337. package/lib/utils/testing.d.ts +545 -0
  338. package/lib/utils/testing.js +65 -49
  339. package/lib/utils/theme.d.ts +9 -0
  340. package/lib/utils/theme.js +68 -0
  341. package/lib/utils/types/AriaRole.d.ts +1 -0
  342. package/lib/utils/types/AriaRole.js +1 -0
  343. package/lib/utils/types/ComponentProps.d.ts +9 -0
  344. package/lib/utils/types/ComponentProps.js +1 -0
  345. package/lib/utils/types/Flatten.d.ts +4 -0
  346. package/lib/utils/types/Flatten.js +1 -0
  347. package/lib/utils/types/KeyPaths.d.ts +3 -0
  348. package/lib/utils/types/KeyPaths.js +1 -0
  349. package/lib/utils/types/MandateProps.d.ts +3 -0
  350. package/lib/utils/types/MandateProps.js +1 -0
  351. package/lib/utils/types/Merge.d.ts +19 -0
  352. package/lib/utils/types/Merge.js +1 -0
  353. package/lib/utils/types/index.d.ts +5 -0
  354. package/lib/utils/types/index.js +70 -0
  355. package/lib/utils/uniqueId.d.ts +1 -0
  356. package/lib/utils/uniqueId.js +12 -0
  357. package/lib/utils/use-force-update.d.ts +1 -0
  358. package/lib/utils/use-force-update.js +19 -0
  359. package/lib/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  360. package/lib/utils/useIsomorphicLayoutEffect.js +12 -0
  361. package/lib/utils/userAgent.d.ts +1 -0
  362. package/lib/utils/userAgent.js +15 -0
  363. package/lib-esm/ActionList/Divider.d.ts +9 -0
  364. package/lib-esm/ActionList/Divider.js +23 -0
  365. package/lib-esm/ActionList/Group.d.ts +28 -0
  366. package/lib-esm/ActionList/Group.js +24 -0
  367. package/lib-esm/ActionList/Header.d.ts +29 -0
  368. package/lib-esm/ActionList/Header.js +33 -0
  369. package/lib-esm/ActionList/Item.d.ts +98 -0
  370. package/lib-esm/ActionList/Item.js +241 -0
  371. package/lib-esm/ActionList/List.d.ts +88 -0
  372. package/lib-esm/ActionList/List.js +181 -0
  373. package/lib-esm/ActionList/index.d.ts +17 -0
  374. package/lib-esm/ActionList/index.js +18 -0
  375. package/lib-esm/ActionList2/Description.d.ts +12 -0
  376. package/lib-esm/ActionList2/Description.js +41 -0
  377. package/lib-esm/ActionList2/Divider.d.ts +6 -0
  378. package/lib-esm/ActionList2/Divider.js +26 -0
  379. package/lib-esm/ActionList2/Group.d.ts +37 -0
  380. package/lib-esm/ActionList2/Group.js +87 -0
  381. package/lib-esm/ActionList2/Item.d.ts +63 -0
  382. package/lib-esm/ActionList2/Item.js +224 -0
  383. package/lib-esm/ActionList2/LinkItem.d.ts +17 -0
  384. package/lib-esm/ActionList2/LinkItem.js +43 -0
  385. package/lib-esm/ActionList2/List.d.ts +26 -0
  386. package/lib-esm/ActionList2/List.js +44 -0
  387. package/lib-esm/ActionList2/MenuContext.d.ts +10 -0
  388. package/lib-esm/ActionList2/MenuContext.js +3 -0
  389. package/lib-esm/ActionList2/Selection.d.ts +5 -0
  390. package/lib-esm/ActionList2/Selection.js +77 -0
  391. package/lib-esm/ActionList2/Visuals.d.ts +9 -0
  392. package/lib-esm/ActionList2/Visuals.js +68 -0
  393. package/lib-esm/ActionList2/index.d.ts +35 -0
  394. package/lib-esm/ActionList2/index.js +33 -0
  395. package/lib-esm/ActionMenu.d.ts +40 -0
  396. package/lib-esm/ActionMenu.js +82 -0
  397. package/lib-esm/ActionMenu2.d.ts +310 -0
  398. package/lib-esm/ActionMenu2.js +67 -0
  399. package/lib-esm/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  400. package/lib-esm/AnchoredOverlay/AnchoredOverlay.js +104 -0
  401. package/lib-esm/AnchoredOverlay/index.d.ts +2 -0
  402. package/lib-esm/AnchoredOverlay/index.js +1 -0
  403. package/lib-esm/Autocomplete/Autocomplete.d.ts +305 -0
  404. package/lib-esm/Autocomplete/Autocomplete.js +123 -0
  405. package/lib-esm/Autocomplete/AutocompleteContext.d.ts +17 -0
  406. package/lib-esm/Autocomplete/AutocompleteContext.js +2 -0
  407. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +293 -0
  408. package/lib-esm/Autocomplete/AutocompleteInput.js +138 -0
  409. package/lib-esm/Autocomplete/AutocompleteMenu.d.ts +72 -0
  410. package/lib-esm/Autocomplete/AutocompleteMenu.js +205 -0
  411. package/lib-esm/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  412. package/lib-esm/Autocomplete/AutocompleteOverlay.js +62 -0
  413. package/lib-esm/Autocomplete/index.d.ts +2 -0
  414. package/lib-esm/Autocomplete/index.js +1 -0
  415. package/lib-esm/Avatar.d.ts +14 -0
  416. package/lib-esm/Avatar.js +2 -11
  417. package/lib-esm/AvatarPair.d.ts +8 -0
  418. package/lib-esm/AvatarPair.js +8 -14
  419. package/lib-esm/AvatarStack.d.ts +8 -0
  420. package/lib-esm/AvatarStack.js +12 -21
  421. package/lib-esm/BaseStyles.d.ts +14 -0
  422. package/lib-esm/BaseStyles.js +23 -26
  423. package/lib-esm/BorderBox.d.ts +7 -0
  424. package/lib-esm/BorderBox.js +6 -12
  425. package/lib-esm/Box.d.ts +6 -0
  426. package/lib-esm/Box.js +2 -13
  427. package/lib-esm/BranchName.d.ts +5 -0
  428. package/lib-esm/BranchName.js +2 -13
  429. package/lib-esm/Breadcrumbs.d.ts +41 -0
  430. package/lib-esm/Breadcrumbs.js +58 -0
  431. package/lib-esm/Button/Button.d.ts +284 -0
  432. package/lib-esm/Button/Button.js +3 -10
  433. package/lib-esm/Button/ButtonBase.d.ts +9 -0
  434. package/lib-esm/Button/ButtonBase.js +1 -19
  435. package/lib-esm/Button/ButtonClose.d.ts +279 -0
  436. package/lib-esm/Button/ButtonClose.js +5 -20
  437. package/lib-esm/Button/ButtonDanger.d.ts +284 -0
  438. package/lib-esm/Button/ButtonDanger.js +2 -9
  439. package/lib-esm/Button/ButtonGroup.d.ts +4 -0
  440. package/lib-esm/Button/ButtonGroup.js +2 -7
  441. package/lib-esm/Button/ButtonInvisible.d.ts +284 -0
  442. package/lib-esm/Button/ButtonInvisible.js +3 -10
  443. package/lib-esm/Button/ButtonOutline.d.ts +284 -0
  444. package/lib-esm/Button/ButtonOutline.js +2 -9
  445. package/lib-esm/Button/ButtonPrimary.d.ts +284 -0
  446. package/lib-esm/Button/ButtonPrimary.js +2 -9
  447. package/lib-esm/Button/ButtonStyles.d.ts +2 -0
  448. package/lib-esm/Button/ButtonTableList.d.ts +5 -0
  449. package/lib-esm/Button/ButtonTableList.js +2 -14
  450. package/lib-esm/Button/index.d.ts +16 -0
  451. package/lib-esm/Button/index.js +8 -8
  452. package/lib-esm/Caret.d.ts +21 -0
  453. package/lib-esm/Caret.js +13 -16
  454. package/lib-esm/Checkbox.d.ts +29 -0
  455. package/lib-esm/Checkbox.js +44 -0
  456. package/lib-esm/CircleBadge.d.ts +24 -0
  457. package/lib-esm/CircleBadge.js +3 -19
  458. package/lib-esm/CircleOcticon.d.ts +392 -0
  459. package/lib-esm/CircleOcticon.js +9 -15
  460. package/lib-esm/CounterLabel.d.ts +7 -0
  461. package/lib-esm/CounterLabel.js +4 -16
  462. package/lib-esm/Details.d.ts +5 -0
  463. package/lib-esm/Details.js +1 -9
  464. package/lib-esm/Dialog/ConfirmationDialog.d.ts +44 -0
  465. package/lib-esm/Dialog/ConfirmationDialog.js +169 -0
  466. package/lib-esm/Dialog/Dialog.d.ts +163 -0
  467. package/lib-esm/Dialog/Dialog.js +275 -0
  468. package/lib-esm/Dialog.d.ts +406 -0
  469. package/lib-esm/Dialog.js +31 -46
  470. package/lib-esm/Dropdown.d.ts +1113 -0
  471. package/lib-esm/Dropdown.js +38 -58
  472. package/lib-esm/DropdownMenu/DropdownButton.d.ts +280 -0
  473. package/lib-esm/DropdownMenu/DropdownButton.js +18 -0
  474. package/lib-esm/DropdownMenu/DropdownMenu.d.ts +43 -0
  475. package/lib-esm/DropdownMenu/DropdownMenu.js +77 -0
  476. package/lib-esm/DropdownMenu/index.d.ts +4 -0
  477. package/lib-esm/DropdownMenu/index.js +2 -0
  478. package/lib-esm/DropdownStyles.d.ts +3 -0
  479. package/lib-esm/DropdownStyles.js +6 -6
  480. package/lib-esm/FilterList.d.ts +283 -0
  481. package/lib-esm/FilterList.js +3 -29
  482. package/lib-esm/FilteredActionList/FilteredActionList.d.ts +16 -0
  483. package/lib-esm/FilteredActionList/FilteredActionList.js +109 -0
  484. package/lib-esm/FilteredActionList/index.d.ts +2 -0
  485. package/lib-esm/FilteredActionList/index.js +1 -0
  486. package/lib-esm/FilteredSearch.d.ts +5 -0
  487. package/lib-esm/FilteredSearch.js +2 -11
  488. package/lib-esm/Flash.d.ts +8 -0
  489. package/lib-esm/Flash.js +36 -13
  490. package/lib-esm/Flex.d.ts +7 -0
  491. package/lib-esm/Flex.js +4 -4
  492. package/lib-esm/FormGroup.d.ts +11 -0
  493. package/lib-esm/FormGroup.js +3 -20
  494. package/lib-esm/Grid.d.ts +7 -0
  495. package/lib-esm/Grid.js +5 -7
  496. package/lib-esm/Header.d.ts +23 -0
  497. package/lib-esm/Header.js +6 -34
  498. package/lib-esm/Heading.d.ts +5 -0
  499. package/lib-esm/Heading.js +2 -12
  500. package/lib-esm/Label.d.ts +10 -0
  501. package/lib-esm/Label.js +3 -15
  502. package/lib-esm/LabelGroup.d.ts +5 -0
  503. package/lib-esm/LabelGroup.js +2 -9
  504. package/lib-esm/Link.d.ts +9 -0
  505. package/lib-esm/Link.js +2 -28
  506. package/lib-esm/NewButton/button-counter.d.ts +6 -0
  507. package/lib-esm/NewButton/button-counter.js +18 -0
  508. package/lib-esm/NewButton/button.d.ts +13 -0
  509. package/lib-esm/NewButton/button.js +287 -0
  510. package/lib-esm/NewButton/index.d.ts +14 -0
  511. package/lib-esm/NewButton/index.js +5 -0
  512. package/lib-esm/NewButton/types.d.ts +32 -0
  513. package/lib-esm/NewButton/types.js +1 -0
  514. package/lib-esm/Overlay.d.ts +66 -0
  515. package/lib-esm/Overlay.js +160 -0
  516. package/lib-esm/Pagehead.d.ts +5 -0
  517. package/lib-esm/Pagehead.js +2 -12
  518. package/lib-esm/Pagination/Pagination.d.ts +24 -0
  519. package/lib-esm/Pagination/Pagination.js +15 -28
  520. package/lib-esm/Pagination/index.d.ts +3 -0
  521. package/lib-esm/Pagination/model.d.ts +26 -0
  522. package/lib-esm/Pagination/model.js +1 -1
  523. package/lib-esm/PointerBox.d.ts +11 -0
  524. package/lib-esm/PointerBox.js +4 -11
  525. package/lib-esm/Popover.d.ts +20 -0
  526. package/lib-esm/Popover.js +5 -27
  527. package/lib-esm/Portal/Portal.d.ts +25 -0
  528. package/lib-esm/Portal/Portal.js +83 -0
  529. package/lib-esm/Portal/index.d.ts +4 -0
  530. package/lib-esm/Portal/index.js +3 -0
  531. package/lib-esm/Position.d.ts +34 -0
  532. package/lib-esm/Position.js +42 -37
  533. package/lib-esm/ProgressBar.d.ts +26 -0
  534. package/lib-esm/ProgressBar.js +9 -25
  535. package/lib-esm/SelectMenu/SelectMenu.d.ts +1670 -0
  536. package/lib-esm/SelectMenu/SelectMenu.js +27 -38
  537. package/lib-esm/SelectMenu/SelectMenuContext.d.ts +8 -0
  538. package/lib-esm/SelectMenu/SelectMenuContext.js +1 -1
  539. package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +5 -0
  540. package/lib-esm/SelectMenu/SelectMenuDivider.js +4 -11
  541. package/lib-esm/SelectMenu/SelectMenuFilter.d.ts +9 -0
  542. package/lib-esm/SelectMenu/SelectMenuFilter.js +13 -19
  543. package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +5 -0
  544. package/lib-esm/SelectMenu/SelectMenuFooter.js +4 -11
  545. package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +10 -0
  546. package/lib-esm/SelectMenu/SelectMenuHeader.js +7 -18
  547. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +14 -0
  548. package/lib-esm/SelectMenu/SelectMenuItem.js +11 -17
  549. package/lib-esm/SelectMenu/SelectMenuList.d.ts +5 -0
  550. package/lib-esm/SelectMenu/SelectMenuList.js +4 -11
  551. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  552. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +7 -13
  553. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +14 -0
  554. package/lib-esm/SelectMenu/SelectMenuModal.js +10 -20
  555. package/lib-esm/SelectMenu/SelectMenuTab.d.ts +13 -0
  556. package/lib-esm/SelectMenu/SelectMenuTab.js +13 -21
  557. package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  558. package/lib-esm/SelectMenu/SelectMenuTabPanel.js +9 -19
  559. package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +10 -0
  560. package/lib-esm/SelectMenu/SelectMenuTabs.js +8 -15
  561. package/lib-esm/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  562. package/lib-esm/SelectMenu/hooks/useKeyboardNav.js +2 -0
  563. package/lib-esm/SelectMenu/index.d.ts +2 -0
  564. package/lib-esm/SelectMenu/index.js +1 -2
  565. package/lib-esm/SelectPanel/SelectPanel.d.ts +25 -0
  566. package/lib-esm/SelectPanel/SelectPanel.js +127 -0
  567. package/lib-esm/SelectPanel/index.d.ts +2 -0
  568. package/lib-esm/SelectPanel/index.js +1 -0
  569. package/lib-esm/SideNav.d.ts +34 -0
  570. package/lib-esm/SideNav.js +20 -36
  571. package/lib-esm/Spinner.d.ts +16 -0
  572. package/lib-esm/Spinner.js +45 -0
  573. package/lib-esm/StateLabel.d.ts +15 -0
  574. package/lib-esm/StateLabel.js +55 -23
  575. package/lib-esm/StyledOcticon.d.ts +11 -0
  576. package/lib-esm/StyledOcticon.js +1 -12
  577. package/lib-esm/SubNav.d.ts +26 -0
  578. package/lib-esm/SubNav.js +10 -38
  579. package/lib-esm/TabNav.d.ts +19 -0
  580. package/lib-esm/TabNav.js +13 -33
  581. package/lib-esm/Text.d.ts +6 -0
  582. package/lib-esm/Text.js +0 -10
  583. package/lib-esm/TextInput.d.ts +14 -0
  584. package/lib-esm/TextInput.js +24 -62
  585. package/lib-esm/TextInputWithTokens.d.ts +328 -0
  586. package/lib-esm/TextInputWithTokens.js +291 -0
  587. package/lib-esm/ThemeProvider.d.ts +26 -0
  588. package/lib-esm/ThemeProvider.js +161 -0
  589. package/lib-esm/Timeline.d.ts +33 -0
  590. package/lib-esm/Timeline.js +26 -81
  591. package/lib-esm/Token/AvatarToken.d.ts +7 -0
  592. package/lib-esm/Token/AvatarToken.js +43 -0
  593. package/lib-esm/Token/IssueLabelToken.d.ts +14 -0
  594. package/lib-esm/Token/IssueLabelToken.js +124 -0
  595. package/lib-esm/Token/Token.d.ts +15 -0
  596. package/lib-esm/Token/Token.js +84 -0
  597. package/lib-esm/Token/TokenBase.d.ts +31 -0
  598. package/lib-esm/Token/TokenBase.js +83 -0
  599. package/lib-esm/Token/_RemoveTokenButton.d.ts +12 -0
  600. package/lib-esm/Token/_RemoveTokenButton.js +69 -0
  601. package/lib-esm/Token/_TokenTextContainer.d.ts +3 -0
  602. package/lib-esm/Token/_TokenTextContainer.js +6 -0
  603. package/lib-esm/Token/index.d.ts +3 -0
  604. package/lib-esm/Token/index.js +3 -0
  605. package/lib-esm/Tooltip.d.ts +17 -0
  606. package/lib-esm/Tooltip.js +4 -19
  607. package/lib-esm/Truncate.d.ts +10 -0
  608. package/lib-esm/Truncate.js +2 -15
  609. package/lib-esm/UnderlineNav.d.ts +24 -0
  610. package/lib-esm/UnderlineNav.js +5 -28
  611. package/lib-esm/_TextInputWrapper.d.ts +10 -0
  612. package/lib-esm/_TextInputWrapper.js +31 -0
  613. package/lib-esm/_UnstyledTextInput.d.ts +2 -0
  614. package/lib-esm/_UnstyledTextInput.js +7 -0
  615. package/lib-esm/behaviors/anchoredPosition.d.ts +89 -0
  616. package/lib-esm/behaviors/anchoredPosition.js +309 -0
  617. package/lib-esm/behaviors/focusTrap.d.ts +12 -0
  618. package/lib-esm/behaviors/focusTrap.js +170 -0
  619. package/lib-esm/behaviors/focusZone.d.ts +137 -0
  620. package/lib-esm/behaviors/focusZone.js +560 -0
  621. package/lib-esm/behaviors/scrollIntoViewingArea.d.ts +1 -0
  622. package/lib-esm/behaviors/scrollIntoViewingArea.js +30 -0
  623. package/lib-esm/constants.d.ts +20 -0
  624. package/lib-esm/constants.js +9 -23
  625. package/lib-esm/drafts.d.ts +9 -0
  626. package/lib-esm/drafts.js +10 -0
  627. package/lib-esm/hooks/index.d.ts +11 -0
  628. package/lib-esm/hooks/index.js +7 -0
  629. package/lib-esm/hooks/useAnchoredPosition.d.ts +20 -0
  630. package/lib-esm/hooks/useAnchoredPosition.js +35 -0
  631. package/lib-esm/hooks/useCombinedRefs.d.ts +10 -0
  632. package/lib-esm/hooks/useCombinedRefs.js +37 -0
  633. package/lib-esm/hooks/useDetails.d.ts +17 -0
  634. package/lib-esm/hooks/useDialog.d.ts +16 -0
  635. package/lib-esm/hooks/useDialog.js +21 -6
  636. package/lib-esm/hooks/useFocusTrap.d.ts +32 -0
  637. package/lib-esm/hooks/useFocusTrap.js +54 -0
  638. package/lib-esm/hooks/useFocusZone.d.ts +23 -0
  639. package/lib-esm/hooks/useFocusZone.js +37 -0
  640. package/lib-esm/hooks/useOnEscapePress.d.ts +23 -0
  641. package/lib-esm/hooks/useOnEscapePress.js +59 -0
  642. package/lib-esm/hooks/useOnOutsideClick.d.ts +8 -0
  643. package/lib-esm/hooks/useOnOutsideClick.js +79 -0
  644. package/lib-esm/hooks/useOpenAndCloseFocus.d.ts +8 -0
  645. package/lib-esm/hooks/useOpenAndCloseFocus.js +27 -0
  646. package/lib-esm/hooks/useOverlay.d.ts +15 -0
  647. package/lib-esm/hooks/useOverlay.js +30 -0
  648. package/lib-esm/hooks/useProvidedRefOrCreate.d.ts +10 -0
  649. package/lib-esm/hooks/useProvidedRefOrCreate.js +14 -0
  650. package/lib-esm/hooks/useProvidedStateOrCreate.d.ts +10 -0
  651. package/lib-esm/hooks/useProvidedStateOrCreate.js +20 -0
  652. package/lib-esm/hooks/useRenderForcingRef.d.ts +8 -0
  653. package/lib-esm/hooks/useRenderForcingRef.js +18 -0
  654. package/lib-esm/hooks/useResizeObserver.d.ts +1 -0
  655. package/lib-esm/hooks/useResizeObserver.js +10 -0
  656. package/lib-esm/hooks/useSafeTimeout.d.ts +12 -0
  657. package/lib-esm/hooks/useSafeTimeout.js +31 -0
  658. package/lib-esm/hooks/useScrollFlash.d.ts +6 -0
  659. package/lib-esm/hooks/useScrollFlash.js +22 -0
  660. package/lib-esm/index.d.ts +120 -0
  661. package/lib-esm/index.js +29 -7
  662. package/lib-esm/polyfills/eventListenerSignal.d.ts +6 -0
  663. package/lib-esm/polyfills/eventListenerSignal.js +57 -0
  664. package/lib-esm/sx.d.ts +14 -0
  665. package/lib-esm/sx.js +3 -5
  666. package/lib-esm/theme-preval.d.ts +49 -0
  667. package/lib-esm/theme-preval.js +3119 -357
  668. package/lib-esm/theme.d.ts +80 -0
  669. package/lib-esm/theme.js +3 -8
  670. package/lib-esm/utils/create-slots.d.ts +17 -0
  671. package/lib-esm/utils/create-slots.js +84 -0
  672. package/lib-esm/utils/deprecate.d.ts +18 -0
  673. package/lib-esm/utils/deprecate.js +6 -5
  674. package/lib-esm/utils/isNumeric.d.ts +1 -0
  675. package/lib-esm/utils/isNumeric.js +1 -0
  676. package/lib-esm/utils/iterateFocusableElements.d.ts +42 -0
  677. package/lib-esm/utils/iterateFocusableElements.js +102 -0
  678. package/lib-esm/utils/ssr.d.ts +1 -0
  679. package/lib-esm/utils/ssr.js +1 -0
  680. package/lib-esm/utils/test-deprecations.d.ts +1 -0
  681. package/lib-esm/utils/test-deprecations.js +1 -1
  682. package/lib-esm/utils/{types.js → test-helpers.d.ts} +0 -0
  683. package/lib-esm/utils/test-helpers.js +7 -0
  684. package/lib-esm/utils/test-matchers.d.ts +1 -0
  685. package/lib-esm/utils/test-matchers.js +7 -49
  686. package/lib-esm/utils/testing.d.ts +545 -0
  687. package/lib-esm/utils/testing.js +60 -46
  688. package/lib-esm/utils/theme.d.ts +9 -0
  689. package/lib-esm/utils/theme.js +66 -0
  690. package/lib-esm/utils/types/AriaRole.d.ts +1 -0
  691. package/lib-esm/utils/types/AriaRole.js +1 -0
  692. package/lib-esm/utils/types/ComponentProps.d.ts +9 -0
  693. package/lib-esm/utils/types/ComponentProps.js +1 -0
  694. package/lib-esm/utils/types/Flatten.d.ts +4 -0
  695. package/lib-esm/utils/types/Flatten.js +1 -0
  696. package/lib-esm/utils/types/KeyPaths.d.ts +3 -0
  697. package/lib-esm/utils/types/KeyPaths.js +1 -0
  698. package/lib-esm/utils/types/MandateProps.d.ts +3 -0
  699. package/lib-esm/utils/types/MandateProps.js +1 -0
  700. package/lib-esm/utils/types/Merge.d.ts +19 -0
  701. package/lib-esm/utils/types/Merge.js +1 -0
  702. package/lib-esm/utils/types/index.d.ts +5 -0
  703. package/lib-esm/utils/types/index.js +5 -0
  704. package/lib-esm/utils/uniqueId.d.ts +1 -0
  705. package/lib-esm/utils/uniqueId.js +5 -0
  706. package/lib-esm/utils/use-force-update.d.ts +1 -0
  707. package/lib-esm/utils/use-force-update.js +6 -0
  708. package/lib-esm/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  709. package/lib-esm/utils/useIsomorphicLayoutEffect.js +3 -0
  710. package/lib-esm/utils/userAgent.d.ts +1 -0
  711. package/lib-esm/utils/userAgent.js +8 -0
  712. package/package.json +116 -93
  713. package/index.d.ts +0 -828
  714. package/lib/Breadcrumb.js +0 -96
  715. package/lib/hooks/useMouseIntent.js +0 -58
  716. package/lib/stories/Button.stories.js +0 -100
  717. package/lib-esm/Breadcrumb.js +0 -70
  718. package/lib-esm/hooks/useMouseIntent.js +0 -50
  719. package/lib-esm/stories/Button.stories.js +0 -65
@@ -8,7 +8,6 @@ exports.render = render;
8
8
  exports.renderRoot = renderRoot;
9
9
  exports.renderClasses = renderClasses;
10
10
  exports.rendersClass = rendersClass;
11
- exports.renderWithTheme = renderWithTheme;
12
11
  exports.px = px;
13
12
  exports.percent = percent;
14
13
  exports.renderStyles = renderStyles;
@@ -20,6 +19,7 @@ exports.loadCSS = loadCSS;
20
19
  exports.unloadCSS = unloadCSS;
21
20
  exports.behavesAsComponent = behavesAsComponent;
22
21
  exports.checkExports = checkExports;
22
+ exports.checkStoriesForAxeViolations = checkStoriesForAxeViolations;
23
23
  exports.COMPONENT_DISPLAY_NAME_REGEX = void 0;
24
24
 
25
25
  var _react = _interopRequireDefault(require("react"));
@@ -32,12 +32,17 @@ var _enzyme = _interopRequireDefault(require("enzyme"));
32
32
 
33
33
  var _enzymeAdapterReact = _interopRequireDefault(require("@wojtekmaj/enzyme-adapter-react-17"));
34
34
 
35
- var _styledComponents = require("styled-components");
35
+ var _react2 = require("@testing-library/react");
36
+
37
+ var _jestAxe = require("jest-axe");
38
+
39
+ var _ = require("..");
36
40
 
37
41
  var _theme = _interopRequireDefault(require("../theme"));
38
42
 
39
43
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
40
44
 
45
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
41
46
  const readFile = (0, _util.promisify)(require('fs').readFile);
42
47
  const COMPONENT_DISPLAY_NAME_REGEX = /^[A-Z][A-Za-z]+(\.[A-Z][A-Za-z]+)*$/;
43
48
  exports.COMPONENT_DISPLAY_NAME_REGEX = COMPONENT_DISPLAY_NAME_REGEX;
@@ -49,6 +54,7 @@ _enzyme.default.configure({
49
54
  function mount(component) {
50
55
  return _enzyme.default.mount(component);
51
56
  }
57
+
52
58
  /**
53
59
  * Render the component (a React.createElement() or JSX expression)
54
60
  * into its intermediate object representation with 'type',
@@ -60,10 +66,10 @@ function mount(component) {
60
66
  * expect(render(<Foo />)).toEqual(render(<div foo='bar' />))
61
67
  * ```
62
68
  */
63
-
64
-
65
- function render(component) {
66
- return _reactTestRenderer.default.create(component).toJSON();
69
+ function render(component, theme = _theme.default) {
70
+ return _reactTestRenderer.default.create( /*#__PURE__*/_react.default.createElement(_.ThemeProvider, {
71
+ theme: theme
72
+ }, component)).toJSON();
67
73
  }
68
74
  /**
69
75
  * Render the component (a React.createElement() or JSX expression)
@@ -103,12 +109,6 @@ function rendersClass(node, klass) {
103
109
  return renderClasses(node).includes(klass);
104
110
  }
105
111
 
106
- function renderWithTheme(node, theme = _theme.default) {
107
- return render( /*#__PURE__*/_react.default.createElement(_styledComponents.ThemeProvider, {
108
- theme: theme
109
- }, node));
110
- }
111
-
112
112
  function px(value) {
113
113
  return typeof value === 'number' ? `${value}px` : value;
114
114
  }
@@ -132,11 +132,12 @@ function getComputedStyles(className) {
132
132
  const computed = {};
133
133
 
134
134
  for (const sheet of document.styleSheets) {
135
+ // CSSRulesLists assumes every rule is a CSSRule, not a CSSStyleRule
135
136
  for (const rule of sheet.cssRules) {
136
- if (rule.type === 1) {
137
- readRule(rule, computed);
138
- } else if (rule.type === 4) {
137
+ if (rule instanceof CSSMediaRule) {
139
138
  readMedia(rule);
139
+ } else if (rule instanceof CSSStyleRule) {
140
+ readRule(rule, computed);
140
141
  } else {// console.warn('rule.type =', rule.type)
141
142
  }
142
143
  }
@@ -144,6 +145,18 @@ function getComputedStyles(className) {
144
145
 
145
146
  return computed;
146
147
 
148
+ function matchesSafe(node, selector) {
149
+ if (!selector) {
150
+ return false;
151
+ }
152
+
153
+ try {
154
+ return node.matches(selector);
155
+ } catch (error) {
156
+ return false;
157
+ }
158
+ }
159
+
147
160
  function readRule(rule, dest) {
148
161
  if (matchesSafe(div, rule.selectorText)) {
149
162
  const {
@@ -164,7 +177,9 @@ function getComputedStyles(className) {
164
177
  const dest = {};
165
178
 
166
179
  for (const rule of mediaRule.cssRules) {
167
- readRule(rule, dest);
180
+ if (rule instanceof CSSStyleRule) {
181
+ readRule(rule, dest);
182
+ }
168
183
  } // Don't add media rule to computed styles
169
184
  // if no styles were actually applied
170
185
 
@@ -173,18 +188,6 @@ function getComputedStyles(className) {
173
188
  computed[key] = dest;
174
189
  }
175
190
  }
176
-
177
- function matchesSafe(node, selector) {
178
- if (!selector) {
179
- return false;
180
- }
181
-
182
- try {
183
- return node.matches(selector);
184
- } catch (error) {
185
- return false;
186
- }
187
- }
188
191
  }
189
192
  /**
190
193
  * This provides a layer of compatibility between the render() function from
@@ -226,26 +229,16 @@ function unloadCSS(path) {
226
229
  // returns an element ready to be rendered.
227
230
 
228
231
 
229
- function behavesAsComponent(Component, systemPropArray, toRender = null, options) {
230
- if (typeof toRender === 'object' && !options) {
231
- options = toRender;
232
- toRender = null;
233
- }
234
-
232
+ function behavesAsComponent({
233
+ Component,
234
+ toRender,
235
+ options
236
+ }) {
235
237
  options = options || {};
236
238
 
237
239
  const getElement = () => toRender ? toRender() : /*#__PURE__*/_react.default.createElement(Component, null);
238
240
 
239
- it('implements system props', () => {
240
- for (const systemProps of systemPropArray) {
241
- expect(Component).toImplementSystemProps(systemProps);
242
- }
243
- });
244
-
245
241
  if (!options.skipSx) {
246
- it('implements the sx prop', () => {
247
- expect(Component).toImplementSxProp();
248
- });
249
242
  it('implements sx prop behavior', () => {
250
243
  expect(getElement()).toImplementSxBehavior();
251
244
  });
@@ -253,12 +246,12 @@ function behavesAsComponent(Component, systemPropArray, toRender = null, options
253
246
 
254
247
  if (!options.skipAs) {
255
248
  it('respects the as prop', () => {
256
- const As = _react.default.forwardRef((_props, ref) => /*#__PURE__*/_react.default.createElement("div", {
249
+ const As = /*#__PURE__*/_react.default.forwardRef((_props, ref) => /*#__PURE__*/_react.default.createElement("div", {
257
250
  className: "as-component",
258
251
  ref: ref
259
252
  }));
260
253
 
261
- const elem = _react.default.cloneElement(getElement(), {
254
+ const elem = /*#__PURE__*/_react.default.cloneElement(getElement(), {
262
255
  as: As
263
256
  });
264
257
 
@@ -269,18 +262,41 @@ function behavesAsComponent(Component, systemPropArray, toRender = null, options
269
262
  it('sets a valid displayName', () => {
270
263
  expect(Component.displayName).toMatch(COMPONENT_DISPLAY_NAME_REGEX);
271
264
  });
272
- it('sets the default theme', () => {
273
- expect(getElement()).toSetDefaultTheme();
274
- });
275
265
  it('renders consistently', () => {
276
266
  expect(render(getElement())).toMatchSnapshot();
277
267
  });
278
- }
268
+ } // eslint-disable-next-line @typescript-eslint/no-explicit-any
269
+
279
270
 
280
271
  function checkExports(path, exports) {
281
272
  it('has declared exports', () => {
273
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
282
274
  const mod = require(`../${path}`);
283
275
 
284
276
  expect(mod).toSetExports(exports);
285
277
  });
278
+ }
279
+
280
+ expect.extend(_jestAxe.toHaveNoViolations);
281
+
282
+ function checkStoriesForAxeViolations(name) {
283
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
284
+ const stories = require(`../stories/${name}.stories`); // eslint-disable-next-line @typescript-eslint/no-unused-vars -- _meta
285
+
286
+
287
+ const {
288
+ default: _meta,
289
+ ...Stories
290
+ } = stories;
291
+ Object.values(Stories).map(Story => {
292
+ if (typeof Story !== 'function') return;
293
+ it(`story ${Story.storyName} should have no axe violations`, async () => {
294
+ const {
295
+ container
296
+ } = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(Story, null));
297
+ const results = await (0, _jestAxe.axe)(container);
298
+ expect(results).toHaveNoViolations();
299
+ (0, _react2.cleanup)();
300
+ });
301
+ });
286
302
  }
@@ -0,0 +1,9 @@
1
+ export function fontStack(fonts: any): any;
2
+ export function isShadowValue(value: any): boolean;
3
+ export function isColorValue(value: any): boolean;
4
+ export function filterObject(obj: any, predicate: any): {};
5
+ export function partitionColors(colors: any): {
6
+ colors: {};
7
+ shadows: {};
8
+ };
9
+ export function omitScale(obj: any): any;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ // Utility functions used in theme-preval.js
4
+ // This file needs to be a JavaScript file using CommonJS to be compatiable with preval
5
+ const isEmpty = require('lodash.isempty');
6
+
7
+ const isObject = require('lodash.isobject');
8
+
9
+ const chroma = require('chroma-js');
10
+
11
+ function fontStack(fonts) {
12
+ return fonts.map(font => font.includes(' ') ? `"${font}"` : font).join(', ');
13
+ } // The following functions are a temporary measure for splitting shadow values out from the colors object.
14
+ // Eventually, we will push these structural changes upstream to primer/primitives so this data manipulation
15
+ // will not be needed.
16
+
17
+
18
+ function isShadowValue(value) {
19
+ return typeof value === 'string' && /(inset\s|)([0-9.]+(\w*)\s){1,4}(rgb[a]?\(.*\)|\w+)/.test(value);
20
+ }
21
+
22
+ function isColorValue(value) {
23
+ return chroma.valid(value);
24
+ }
25
+
26
+ function filterObject(obj, predicate) {
27
+ if (Array.isArray(obj)) {
28
+ return obj.filter(predicate);
29
+ }
30
+
31
+ return Object.entries(obj).reduce((acc, [key, value]) => {
32
+ if (isObject(value)) {
33
+ const result = filterObject(value, predicate); // Don't include empty objects or arrays
34
+
35
+ if (!isEmpty(result)) {
36
+ acc[key] = result;
37
+ }
38
+ } else if (predicate(value)) {
39
+ acc[key] = value;
40
+ }
41
+
42
+ return acc;
43
+ }, {});
44
+ }
45
+
46
+ function partitionColors(colors) {
47
+ return {
48
+ colors: filterObject(colors, value => isColorValue(value)),
49
+ shadows: filterObject(colors, value => isShadowValue(value))
50
+ };
51
+ }
52
+
53
+ function omitScale(obj) {
54
+ const {
55
+ scale,
56
+ ...rest
57
+ } = obj;
58
+ return rest;
59
+ }
60
+
61
+ module.exports = {
62
+ fontStack,
63
+ isShadowValue,
64
+ isColorValue,
65
+ filterObject,
66
+ partitionColors,
67
+ omitScale
68
+ };
@@ -0,0 +1 @@
1
+ export declare type AriaRole = 'alert' | 'alertdialog' | 'application' | 'article' | 'banner' | 'button' | 'cell' | 'checkbox' | 'columnheader' | 'combobox' | 'complementary' | 'contentinfo' | 'definition' | 'dialog' | 'directory' | 'document' | 'feed' | 'figure' | 'form' | 'grid' | 'gridcell' | 'group' | 'heading' | 'img' | 'link' | 'list' | 'listbox' | 'listitem' | 'log' | 'main' | 'marquee' | 'math' | 'menu' | 'menubar' | 'menuitem' | 'menuitemcheckbox ' | 'menuitemradio' | 'navigation' | 'none' | 'note' | 'option' | 'presentation' | 'progressbar' | 'radio' | 'radiogroup' | 'region' | 'row' | 'rowgroup' | 'rowheader' | 'scrollbar' | 'search' | 'searchbox' | 'separator' | 'slider' | 'spinbutton' | 'status' | 'switch' | 'tab' | 'table' | 'tablist' | 'tabpanel' | 'term' | 'textbox' | 'timer' | 'toolbar' | 'tooltip' | 'tree' | 'treegrid' | 'treeitem';
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * Extract a component's props
4
+ *
5
+ * Source: https://react-typescript-cheatsheet.netlify.app/docs/advanced/patterns_by_usecase#wrappingmirroring-a-component
6
+ *
7
+ * @example ComponentProps<typeof MyComponent>
8
+ */
9
+ export declare type ComponentProps<T> = T extends React.ComponentType<infer Props> ? Props extends object ? Props : never : never;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Contruct a type describing the items in `T`, if `T` is an array.
3
+ */
4
+ export declare type Flatten<T extends unknown> = T extends (infer U)[] ? U : never;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,3 @@
1
+ export declare type KeyPaths<O extends Record<string, unknown>> = {
2
+ [K in keyof O]: K extends string ? O[K] extends string ? `${K}` : `${K}.${KeyPaths<O[K]>}` : never;
3
+ }[keyof O];
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,3 @@
1
+ export declare type MandateProps<T extends unknown, K extends keyof T> = Omit<T, K> & {
2
+ [MK in K]-?: NonNullable<T[MK]>;
3
+ };
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Given two object types A and B, return a type with all the properties of A that aren't also
3
+ * properties of B, and all the properties of B.
4
+ *
5
+ * Useful when we have a component that spreads a "rest" of its props on a subcomponent:
6
+ *
7
+ * ```ts
8
+ * interface OwnProps {
9
+ * foo: string
10
+ * }
11
+ *
12
+ * type MyComponentProps = Merge<SubcomponentProps, OwnProps>
13
+ * const MyComponent = ({foo, ...rest}: MyComponentProps) => {
14
+ * // ...
15
+ * return <SubComponent {...rest} />
16
+ * }
17
+ * ```
18
+ */
19
+ export declare type Merge<A = {}, B = {}> = Omit<A, keyof B> & B;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,5 @@
1
+ export * from './AriaRole';
2
+ export * from './ComponentProps';
3
+ export * from './Flatten';
4
+ export * from './Merge';
5
+ export * from './MandateProps';
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _AriaRole = require("./AriaRole");
8
+
9
+ Object.keys(_AriaRole).forEach(function (key) {
10
+ if (key === "default" || key === "__esModule") return;
11
+ if (key in exports && exports[key] === _AriaRole[key]) return;
12
+ Object.defineProperty(exports, key, {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _AriaRole[key];
16
+ }
17
+ });
18
+ });
19
+
20
+ var _ComponentProps = require("./ComponentProps");
21
+
22
+ Object.keys(_ComponentProps).forEach(function (key) {
23
+ if (key === "default" || key === "__esModule") return;
24
+ if (key in exports && exports[key] === _ComponentProps[key]) return;
25
+ Object.defineProperty(exports, key, {
26
+ enumerable: true,
27
+ get: function () {
28
+ return _ComponentProps[key];
29
+ }
30
+ });
31
+ });
32
+
33
+ var _Flatten = require("./Flatten");
34
+
35
+ Object.keys(_Flatten).forEach(function (key) {
36
+ if (key === "default" || key === "__esModule") return;
37
+ if (key in exports && exports[key] === _Flatten[key]) return;
38
+ Object.defineProperty(exports, key, {
39
+ enumerable: true,
40
+ get: function () {
41
+ return _Flatten[key];
42
+ }
43
+ });
44
+ });
45
+
46
+ var _Merge = require("./Merge");
47
+
48
+ Object.keys(_Merge).forEach(function (key) {
49
+ if (key === "default" || key === "__esModule") return;
50
+ if (key in exports && exports[key] === _Merge[key]) return;
51
+ Object.defineProperty(exports, key, {
52
+ enumerable: true,
53
+ get: function () {
54
+ return _Merge[key];
55
+ }
56
+ });
57
+ });
58
+
59
+ var _MandateProps = require("./MandateProps");
60
+
61
+ Object.keys(_MandateProps).forEach(function (key) {
62
+ if (key === "default" || key === "__esModule") return;
63
+ if (key in exports && exports[key] === _MandateProps[key]) return;
64
+ Object.defineProperty(exports, key, {
65
+ enumerable: true,
66
+ get: function () {
67
+ return _MandateProps[key];
68
+ }
69
+ });
70
+ });
@@ -0,0 +1 @@
1
+ export declare function uniqueId(): string;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.uniqueId = uniqueId;
7
+ // Note: uniqueId may be unsafe in SSR contexts if it is used create DOM IDs or otherwise cause a hydration warning. Use useSSRSafeId instead.
8
+ let idSeed = 10000;
9
+
10
+ function uniqueId() {
11
+ return `__primer_id_${idSeed++}`;
12
+ }
@@ -0,0 +1 @@
1
+ export declare const useForceUpdate: () => () => void;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useForceUpdate = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ // Inspired from reach-ui: https://github.com/reach/reach-ui/blob/develop/packages/utils/src/use-force-update.ts
13
+ const useForceUpdate = () => {
14
+ const [, rerender] = _react.default.useState({});
15
+
16
+ return _react.default.useCallback(() => rerender({}), []);
17
+ };
18
+
19
+ exports.useForceUpdate = useForceUpdate;
@@ -0,0 +1,3 @@
1
+ import { useEffect } from 'react';
2
+ declare const useIsomorphicLayoutEffect: typeof useEffect;
3
+ export default useIsomorphicLayoutEffect;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ const useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? _react.useLayoutEffect : _react.useEffect;
11
+ var _default = useIsomorphicLayoutEffect;
12
+ exports.default = _default;
@@ -0,0 +1 @@
1
+ export declare function isMacOS(): boolean;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isMacOS = isMacOS;
7
+ let isMac = undefined;
8
+
9
+ function isMacOS() {
10
+ if (isMac === undefined) {
11
+ isMac = /^mac/i.test(window.navigator.platform);
12
+ }
13
+
14
+ return isMac;
15
+ }
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledDivider: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ /**
4
+ * Visually separates `Item`s or `Group`s in an `ActionList`.
5
+ */
6
+ export declare function Divider(): JSX.Element;
7
+ export declare namespace Divider {
8
+ var renderItem: typeof Divider;
9
+ }
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import styled from 'styled-components';
3
+ import { get } from '../constants';
4
+ export const StyledDivider = styled.div.withConfig({
5
+ displayName: "Divider__StyledDivider",
6
+ componentId: "sc-42656i-0"
7
+ })(["height:1px;background:", ";margin-top:calc(", " - 1px);margin-bottom:", ";"], get('colors.border.muted'), get('space.2'), get('space.2'));
8
+ /**
9
+ * Visually separates `Item`s or `Group`s in an `ActionList`.
10
+ */
11
+
12
+ export function Divider() {
13
+ return /*#__PURE__*/React.createElement(StyledDivider, null);
14
+ }
15
+ Divider.displayName = "Divider";
16
+
17
+ /**
18
+ * `Divider` fulfills the `ItemPropsWithCustomRenderer` contract,
19
+ * so it can be used inline in an `ActionList`’s `items` prop.
20
+ * In other words, `items={[ActionList.Divider]}` is supported as a concise
21
+ * alternative to `items={[{renderItem: () => <ActionList.Divider />}]}`.
22
+ */
23
+ Divider.renderItem = Divider;
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { SxProp } from '../sx';
3
+ import { HeaderProps } from './Header';
4
+ /**
5
+ * Contract for props passed to the `Group` component.
6
+ */
7
+ export interface GroupProps extends React.ComponentPropsWithoutRef<'div'>, SxProp {
8
+ /**
9
+ * Props for a `Header` to render in the `Group`.
10
+ */
11
+ header?: HeaderProps;
12
+ /**
13
+ * The id of the group.
14
+ */
15
+ groupId?: string;
16
+ /**
17
+ * `Items` to render in the `Group`.
18
+ */
19
+ items?: JSX.Element[];
20
+ /**
21
+ * Whether to display a divider above each `Item` in this `Group` when it does not follow a `Header` or `Divider`.
22
+ */
23
+ showItemDividers?: boolean;
24
+ }
25
+ /**
26
+ * Collects related `Items` in an `ActionList`.
27
+ */
28
+ export declare function Group({ header, items, ...props }: GroupProps): JSX.Element;
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import styled from 'styled-components';
3
+ import sx from '../sx';
4
+ import { Header } from './Header';
5
+ /**
6
+ * Contract for props passed to the `Group` component.
7
+ */
8
+
9
+ const StyledGroup = styled.div.withConfig({
10
+ displayName: "Group__StyledGroup",
11
+ componentId: "sc-10w5bj9-0"
12
+ })(["", ""], sx);
13
+ /**
14
+ * Collects related `Items` in an `ActionList`.
15
+ */
16
+
17
+ export function Group({
18
+ header,
19
+ items,
20
+ ...props
21
+ }) {
22
+ return /*#__PURE__*/React.createElement(StyledGroup, props, header && /*#__PURE__*/React.createElement(Header, header), items);
23
+ }
24
+ Group.displayName = "Group";
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import { SxProp } from '../sx';
3
+ /**
4
+ * Contract for props passed to the `Header` component.
5
+ */
6
+ export interface HeaderProps extends React.ComponentPropsWithoutRef<'div'>, SxProp {
7
+ /**
8
+ * Style variations. Usage is discretionary.
9
+ *
10
+ * - `"filled"` - Superimposed on a background, offset from nearby content
11
+ * - `"subtle"` - Relatively less offset from nearby content
12
+ */
13
+ variant?: 'subtle' | 'filled';
14
+ /**
15
+ * Primary text which names a `Group`.
16
+ */
17
+ title: string;
18
+ /**
19
+ * Secondary text which provides additional information about a `Group`.
20
+ */
21
+ auxiliaryText?: string;
22
+ }
23
+ export declare const StyledHeader: import("styled-components").StyledComponent<"div", any, {
24
+ variant: HeaderProps['variant'];
25
+ } & SxProp, never>;
26
+ /**
27
+ * Displays the name and description of a `Group`.
28
+ */
29
+ export declare function Header({ variant, title, auxiliaryText, children: _children, ...props }: HeaderProps): JSX.Element;