@primer/components 0.0.0-2021111235020 → 0.0.0-202111194229

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 (709) hide show
  1. package/CHANGELOG.md +933 -44
  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 +1314 -882
  11. package/dist/browser.esm.js.map +1 -1
  12. package/dist/browser.umd.js +1322 -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 +5 -0
  29. package/lib/ActionList2/Divider.js +35 -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 +244 -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 +58 -0
  38. package/lib/ActionList2/Selection.d.ts +5 -0
  39. package/lib/ActionList2/Selection.js +86 -0
  40. package/lib/ActionList2/Visuals.d.ts +9 -0
  41. package/lib/ActionList2/Visuals.js +90 -0
  42. package/lib/ActionList2/index.d.ts +36 -0
  43. package/lib/ActionList2/index.js +47 -0
  44. package/lib/ActionMenu.d.ts +40 -0
  45. package/lib/ActionMenu.js +103 -0
  46. package/lib/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  47. package/lib/AnchoredOverlay/AnchoredOverlay.js +124 -0
  48. package/lib/AnchoredOverlay/index.d.ts +2 -0
  49. package/lib/AnchoredOverlay/index.js +13 -0
  50. package/lib/Autocomplete/Autocomplete.d.ts +313 -0
  51. package/lib/Autocomplete/Autocomplete.js +145 -0
  52. package/lib/Autocomplete/AutocompleteContext.d.ts +17 -0
  53. package/lib/Autocomplete/AutocompleteContext.js +11 -0
  54. package/lib/Autocomplete/AutocompleteInput.d.ts +301 -0
  55. package/lib/Autocomplete/AutocompleteInput.js +157 -0
  56. package/lib/Autocomplete/AutocompleteMenu.d.ts +72 -0
  57. package/lib/Autocomplete/AutocompleteMenu.js +224 -0
  58. package/lib/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  59. package/lib/Autocomplete/AutocompleteOverlay.js +80 -0
  60. package/lib/Autocomplete/index.d.ts +2 -0
  61. package/lib/Autocomplete/index.js +15 -0
  62. package/lib/Avatar.d.ts +14 -0
  63. package/lib/Avatar.js +1 -12
  64. package/lib/AvatarPair.d.ts +8 -0
  65. package/lib/AvatarPair.js +9 -16
  66. package/lib/AvatarStack.d.ts +8 -0
  67. package/lib/AvatarStack.js +12 -23
  68. package/lib/BaseStyles.d.ts +14 -0
  69. package/lib/BaseStyles.js +25 -31
  70. package/lib/BorderBox.d.ts +7 -0
  71. package/lib/BorderBox.js +5 -16
  72. package/lib/Box.d.ts +6 -0
  73. package/lib/Box.js +2 -15
  74. package/lib/BranchName.d.ts +5 -0
  75. package/lib/BranchName.js +1 -14
  76. package/lib/Breadcrumbs.d.ts +41 -0
  77. package/lib/Breadcrumbs.js +82 -0
  78. package/lib/Button/Button.d.ts +284 -0
  79. package/lib/Button/Button.js +3 -15
  80. package/lib/Button/ButtonBase.d.ts +9 -0
  81. package/lib/Button/ButtonBase.js +2 -25
  82. package/lib/Button/ButtonClose.d.ts +279 -0
  83. package/lib/Button/ButtonClose.js +9 -24
  84. package/lib/Button/ButtonDanger.d.ts +284 -0
  85. package/lib/Button/ButtonDanger.js +2 -14
  86. package/lib/Button/ButtonGroup.d.ts +4 -0
  87. package/lib/Button/ButtonGroup.js +2 -8
  88. package/lib/Button/ButtonInvisible.d.ts +284 -0
  89. package/lib/Button/ButtonInvisible.js +3 -15
  90. package/lib/Button/ButtonOutline.d.ts +284 -0
  91. package/lib/Button/ButtonOutline.js +2 -14
  92. package/lib/Button/ButtonPrimary.d.ts +284 -0
  93. package/lib/Button/ButtonPrimary.js +2 -14
  94. package/lib/Button/ButtonStyles.d.ts +2 -0
  95. package/lib/Button/ButtonTableList.d.ts +5 -0
  96. package/lib/Button/ButtonTableList.js +1 -15
  97. package/lib/Button/index.d.ts +16 -0
  98. package/lib/Caret.d.ts +21 -0
  99. package/lib/Caret.js +14 -17
  100. package/lib/Checkbox.d.ts +29 -0
  101. package/lib/Checkbox.js +64 -0
  102. package/lib/CircleBadge.d.ts +24 -0
  103. package/lib/CircleBadge.js +2 -20
  104. package/lib/CircleOcticon.d.ts +392 -0
  105. package/lib/CircleOcticon.js +9 -18
  106. package/lib/CounterLabel.d.ts +7 -0
  107. package/lib/CounterLabel.js +3 -17
  108. package/lib/Details.d.ts +5 -0
  109. package/lib/Details.js +1 -11
  110. package/lib/Dialog/ConfirmationDialog.d.ts +44 -0
  111. package/lib/Dialog/ConfirmationDialog.js +191 -0
  112. package/lib/Dialog/Dialog.d.ts +163 -0
  113. package/lib/Dialog/Dialog.js +311 -0
  114. package/lib/Dialog.d.ts +406 -0
  115. package/lib/Dialog.js +34 -49
  116. package/lib/Dropdown.d.ts +1113 -0
  117. package/lib/Dropdown.js +45 -60
  118. package/lib/DropdownMenu/DropdownButton.d.ts +280 -0
  119. package/lib/DropdownMenu/DropdownButton.js +33 -0
  120. package/lib/DropdownMenu/DropdownMenu.d.ts +43 -0
  121. package/lib/DropdownMenu/DropdownMenu.js +94 -0
  122. package/lib/DropdownMenu/index.d.ts +4 -0
  123. package/lib/DropdownMenu/index.js +21 -0
  124. package/lib/DropdownStyles.d.ts +3 -0
  125. package/lib/DropdownStyles.js +6 -6
  126. package/lib/FilterList.d.ts +283 -0
  127. package/lib/FilterList.js +2 -30
  128. package/lib/FilteredActionList/FilteredActionList.d.ts +16 -0
  129. package/lib/FilteredActionList/FilteredActionList.js +137 -0
  130. package/lib/FilteredActionList/index.d.ts +2 -0
  131. package/lib/FilteredActionList/index.js +13 -0
  132. package/lib/FilteredSearch.d.ts +5 -0
  133. package/lib/FilteredSearch.js +1 -12
  134. package/lib/Flash.d.ts +8 -0
  135. package/lib/Flash.js +35 -14
  136. package/lib/Flex.d.ts +7 -0
  137. package/lib/Flex.js +3 -5
  138. package/lib/FormGroup.d.ts +11 -0
  139. package/lib/FormGroup.js +2 -22
  140. package/lib/Grid.d.ts +7 -0
  141. package/lib/Grid.js +4 -9
  142. package/lib/Header.d.ts +23 -0
  143. package/lib/Header.js +7 -37
  144. package/lib/Heading.d.ts +5 -0
  145. package/lib/Heading.js +1 -13
  146. package/lib/Label.d.ts +10 -0
  147. package/lib/Label.js +5 -19
  148. package/lib/LabelGroup.d.ts +5 -0
  149. package/lib/LabelGroup.js +1 -9
  150. package/lib/Link.d.ts +9 -0
  151. package/lib/Link.js +2 -30
  152. package/lib/NewButton/button-counter.d.ts +6 -0
  153. package/lib/NewButton/button-counter.js +31 -0
  154. package/lib/NewButton/button.d.ts +13 -0
  155. package/lib/NewButton/button.js +308 -0
  156. package/lib/NewButton/index.d.ts +14 -0
  157. package/lib/NewButton/index.js +15 -0
  158. package/lib/NewButton/types.d.ts +32 -0
  159. package/lib/{utils → NewButton}/types.js +0 -0
  160. package/lib/Overlay.d.ts +66 -0
  161. package/lib/Overlay.js +184 -0
  162. package/lib/Pagehead.d.ts +5 -0
  163. package/lib/Pagehead.js +1 -13
  164. package/lib/Pagination/Pagination.d.ts +24 -0
  165. package/lib/Pagination/Pagination.js +14 -29
  166. package/lib/Pagination/index.d.ts +3 -0
  167. package/lib/Pagination/model.d.ts +26 -0
  168. package/lib/Pagination/model.js +1 -1
  169. package/lib/PointerBox.d.ts +11 -0
  170. package/lib/PointerBox.js +4 -13
  171. package/lib/Popover.d.ts +20 -0
  172. package/lib/Popover.js +5 -29
  173. package/lib/Portal/Portal.d.ts +25 -0
  174. package/lib/Portal/Portal.js +101 -0
  175. package/lib/Portal/index.d.ts +4 -0
  176. package/lib/Portal/index.js +17 -0
  177. package/lib/Position.d.ts +34 -0
  178. package/lib/Position.js +46 -46
  179. package/lib/ProgressBar.d.ts +26 -0
  180. package/lib/ProgressBar.js +8 -27
  181. package/lib/SelectMenu/SelectMenu.d.ts +1678 -0
  182. package/lib/SelectMenu/SelectMenu.js +32 -44
  183. package/lib/SelectMenu/SelectMenuContext.d.ts +8 -0
  184. package/lib/SelectMenu/SelectMenuContext.js +1 -1
  185. package/lib/SelectMenu/SelectMenuDivider.d.ts +5 -0
  186. package/lib/SelectMenu/SelectMenuDivider.js +6 -14
  187. package/lib/SelectMenu/SelectMenuFilter.d.ts +9 -0
  188. package/lib/SelectMenu/SelectMenuFilter.js +13 -21
  189. package/lib/SelectMenu/SelectMenuFooter.d.ts +5 -0
  190. package/lib/SelectMenu/SelectMenuFooter.js +6 -14
  191. package/lib/SelectMenu/SelectMenuHeader.d.ts +10 -0
  192. package/lib/SelectMenu/SelectMenuHeader.js +4 -17
  193. package/lib/SelectMenu/SelectMenuItem.d.ts +14 -0
  194. package/lib/SelectMenu/SelectMenuItem.js +13 -21
  195. package/lib/SelectMenu/SelectMenuList.d.ts +5 -0
  196. package/lib/SelectMenu/SelectMenuList.js +6 -14
  197. package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  198. package/lib/SelectMenu/SelectMenuLoadingAnimation.js +6 -17
  199. package/lib/SelectMenu/SelectMenuModal.d.ts +14 -0
  200. package/lib/SelectMenu/SelectMenuModal.js +11 -23
  201. package/lib/SelectMenu/SelectMenuTab.d.ts +13 -0
  202. package/lib/SelectMenu/SelectMenuTab.js +16 -26
  203. package/lib/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  204. package/lib/SelectMenu/SelectMenuTabPanel.js +14 -25
  205. package/lib/SelectMenu/SelectMenuTabs.d.ts +10 -0
  206. package/lib/SelectMenu/SelectMenuTabs.js +10 -17
  207. package/lib/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  208. package/lib/SelectMenu/hooks/useKeyboardNav.js +2 -0
  209. package/lib/SelectMenu/index.d.ts +2 -0
  210. package/lib/SelectMenu/index.js +7 -5
  211. package/lib/SelectPanel/SelectPanel.d.ts +25 -0
  212. package/lib/SelectPanel/SelectPanel.js +147 -0
  213. package/lib/SelectPanel/index.d.ts +2 -0
  214. package/lib/SelectPanel/index.js +13 -0
  215. package/lib/SideNav.d.ts +34 -0
  216. package/lib/SideNav.js +23 -41
  217. package/lib/Spinner.d.ts +16 -0
  218. package/lib/Spinner.js +58 -0
  219. package/lib/StateLabel.d.ts +15 -0
  220. package/lib/StateLabel.js +53 -23
  221. package/lib/StyledOcticon.d.ts +11 -0
  222. package/lib/StyledOcticon.js +1 -15
  223. package/lib/SubNav.d.ts +26 -0
  224. package/lib/SubNav.js +10 -41
  225. package/lib/TabNav.d.ts +19 -0
  226. package/lib/TabNav.js +15 -37
  227. package/lib/Text.d.ts +6 -0
  228. package/lib/Text.js +0 -12
  229. package/lib/TextInput.d.ts +21 -0
  230. package/lib/TextInput.js +37 -77
  231. package/lib/TextInputWithTokens.d.ts +336 -0
  232. package/lib/TextInputWithTokens.js +318 -0
  233. package/lib/ThemeProvider.d.ts +26 -0
  234. package/lib/ThemeProvider.js +193 -0
  235. package/lib/Timeline.d.ts +33 -0
  236. package/lib/Timeline.js +34 -87
  237. package/lib/Token/AvatarToken.d.ts +7 -0
  238. package/lib/Token/AvatarToken.js +64 -0
  239. package/lib/Token/IssueLabelToken.d.ts +14 -0
  240. package/lib/Token/IssueLabelToken.js +144 -0
  241. package/lib/Token/Token.d.ts +15 -0
  242. package/lib/Token/Token.js +105 -0
  243. package/lib/Token/TokenBase.d.ts +31 -0
  244. package/lib/Token/TokenBase.js +104 -0
  245. package/lib/Token/_RemoveTokenButton.d.ts +12 -0
  246. package/lib/Token/_RemoveTokenButton.js +90 -0
  247. package/lib/Token/_TokenTextContainer.d.ts +3 -0
  248. package/lib/Token/_TokenTextContainer.js +17 -0
  249. package/lib/Token/index.d.ts +3 -0
  250. package/lib/Token/index.js +31 -0
  251. package/lib/Tooltip.d.ts +17 -0
  252. package/lib/Tooltip.js +4 -21
  253. package/lib/Truncate.d.ts +10 -0
  254. package/lib/Truncate.js +2 -18
  255. package/lib/UnderlineNav.d.ts +24 -0
  256. package/lib/UnderlineNav.js +3 -29
  257. package/lib/_TextInputWrapper.d.ts +13 -0
  258. package/lib/_TextInputWrapper.js +62 -0
  259. package/lib/_UnstyledTextInput.d.ts +2 -0
  260. package/lib/_UnstyledTextInput.js +20 -0
  261. package/lib/behaviors/anchoredPosition.d.ts +89 -0
  262. package/lib/behaviors/anchoredPosition.js +316 -0
  263. package/lib/behaviors/focusTrap.d.ts +12 -0
  264. package/lib/behaviors/focusTrap.js +179 -0
  265. package/lib/behaviors/focusZone.d.ts +137 -0
  266. package/lib/behaviors/focusZone.js +578 -0
  267. package/lib/behaviors/scrollIntoViewingArea.d.ts +1 -0
  268. package/lib/behaviors/scrollIntoViewingArea.js +39 -0
  269. package/lib/constants.d.ts +20 -0
  270. package/lib/constants.js +11 -27
  271. package/lib/drafts.d.ts +8 -0
  272. package/lib/drafts.js +31 -0
  273. package/lib/hooks/index.d.ts +11 -0
  274. package/lib/hooks/index.js +61 -0
  275. package/lib/hooks/useAnchoredPosition.d.ts +20 -0
  276. package/lib/hooks/useAnchoredPosition.js +51 -0
  277. package/lib/hooks/useCombinedRefs.d.ts +10 -0
  278. package/lib/hooks/useCombinedRefs.js +47 -0
  279. package/lib/hooks/useDetails.d.ts +17 -0
  280. package/lib/hooks/useDialog.d.ts +16 -0
  281. package/lib/hooks/useDialog.js +21 -6
  282. package/lib/hooks/useFocusTrap.d.ts +32 -0
  283. package/lib/hooks/useFocusTrap.js +69 -0
  284. package/lib/hooks/useFocusZone.d.ts +23 -0
  285. package/lib/hooks/useFocusZone.js +53 -0
  286. package/lib/hooks/useOnEscapePress.d.ts +23 -0
  287. package/lib/hooks/useOnEscapePress.js +69 -0
  288. package/lib/hooks/useOnOutsideClick.d.ts +8 -0
  289. package/lib/hooks/useOnOutsideClick.js +90 -0
  290. package/lib/hooks/useOpenAndCloseFocus.d.ts +8 -0
  291. package/lib/hooks/useOpenAndCloseFocus.js +36 -0
  292. package/lib/hooks/useOverlay.d.ts +15 -0
  293. package/lib/hooks/useOverlay.js +43 -0
  294. package/lib/hooks/useProvidedRefOrCreate.d.ts +10 -0
  295. package/lib/hooks/useProvidedRefOrCreate.js +24 -0
  296. package/lib/hooks/useProvidedStateOrCreate.d.ts +10 -0
  297. package/lib/hooks/useProvidedStateOrCreate.js +27 -0
  298. package/lib/hooks/useRenderForcingRef.d.ts +8 -0
  299. package/lib/hooks/useRenderForcingRef.js +25 -0
  300. package/lib/hooks/useResizeObserver.d.ts +1 -0
  301. package/lib/hooks/useResizeObserver.js +20 -0
  302. package/lib/hooks/useSafeTimeout.d.ts +12 -0
  303. package/lib/hooks/useSafeTimeout.js +4 -1
  304. package/lib/hooks/useScrollFlash.d.ts +6 -0
  305. package/lib/hooks/useScrollFlash.js +29 -0
  306. package/lib/index.d.ts +120 -0
  307. package/lib/index.js +186 -10
  308. package/lib/polyfills/eventListenerSignal.d.ts +6 -0
  309. package/lib/polyfills/eventListenerSignal.js +64 -0
  310. package/lib/sx.d.ts +14 -0
  311. package/lib/sx.js +8 -5
  312. package/lib/theme-preval.d.ts +49 -0
  313. package/lib/theme-preval.js +3119 -357
  314. package/lib/theme.d.ts +80 -0
  315. package/lib/theme.js +5 -8
  316. package/lib/utils/create-slots.d.ts +17 -0
  317. package/lib/utils/create-slots.js +105 -0
  318. package/lib/utils/deprecate.d.ts +18 -0
  319. package/lib/utils/deprecate.js +6 -5
  320. package/lib/utils/isNumeric.d.ts +1 -0
  321. package/lib/utils/isNumeric.js +1 -0
  322. package/lib/utils/iterateFocusableElements.d.ts +42 -0
  323. package/lib/utils/iterateFocusableElements.js +113 -0
  324. package/lib/utils/ssr.d.ts +1 -0
  325. package/lib/utils/ssr.js +19 -0
  326. package/lib/utils/test-deprecations.d.ts +1 -0
  327. package/lib/utils/test-deprecations.js +2 -1
  328. package/lib/utils/test-helpers.d.ts +0 -0
  329. package/lib/utils/test-helpers.js +9 -0
  330. package/lib/utils/test-matchers.d.ts +1 -0
  331. package/lib/utils/test-matchers.js +6 -50
  332. package/lib/utils/testing.d.ts +545 -0
  333. package/lib/utils/testing.js +38 -26
  334. package/lib/utils/theme.d.ts +9 -0
  335. package/lib/utils/theme.js +68 -0
  336. package/lib/utils/types/AriaRole.d.ts +1 -0
  337. package/lib/utils/types/AriaRole.js +1 -0
  338. package/lib/utils/types/ComponentProps.d.ts +9 -0
  339. package/lib/utils/types/ComponentProps.js +1 -0
  340. package/lib/utils/types/Flatten.d.ts +4 -0
  341. package/lib/utils/types/Flatten.js +1 -0
  342. package/lib/utils/types/KeyPaths.d.ts +3 -0
  343. package/lib/utils/types/KeyPaths.js +1 -0
  344. package/lib/utils/types/MandateProps.d.ts +3 -0
  345. package/lib/utils/types/MandateProps.js +1 -0
  346. package/lib/utils/types/Merge.d.ts +19 -0
  347. package/lib/utils/types/Merge.js +1 -0
  348. package/lib/utils/types/index.d.ts +5 -0
  349. package/lib/utils/types/index.js +70 -0
  350. package/lib/utils/uniqueId.d.ts +1 -0
  351. package/lib/utils/uniqueId.js +12 -0
  352. package/lib/utils/use-force-update.d.ts +1 -0
  353. package/lib/utils/use-force-update.js +19 -0
  354. package/lib/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  355. package/lib/utils/useIsomorphicLayoutEffect.js +12 -0
  356. package/lib/utils/userAgent.d.ts +1 -0
  357. package/lib/utils/userAgent.js +15 -0
  358. package/lib-esm/ActionList/Divider.d.ts +9 -0
  359. package/lib-esm/ActionList/Divider.js +23 -0
  360. package/lib-esm/ActionList/Group.d.ts +28 -0
  361. package/lib-esm/ActionList/Group.js +24 -0
  362. package/lib-esm/ActionList/Header.d.ts +29 -0
  363. package/lib-esm/ActionList/Header.js +33 -0
  364. package/lib-esm/ActionList/Item.d.ts +98 -0
  365. package/lib-esm/ActionList/Item.js +241 -0
  366. package/lib-esm/ActionList/List.d.ts +88 -0
  367. package/lib-esm/ActionList/List.js +181 -0
  368. package/lib-esm/ActionList/index.d.ts +17 -0
  369. package/lib-esm/ActionList/index.js +18 -0
  370. package/lib-esm/ActionList2/Description.d.ts +12 -0
  371. package/lib-esm/ActionList2/Description.js +41 -0
  372. package/lib-esm/ActionList2/Divider.d.ts +5 -0
  373. package/lib-esm/ActionList2/Divider.js +23 -0
  374. package/lib-esm/ActionList2/Group.d.ts +37 -0
  375. package/lib-esm/ActionList2/Group.js +87 -0
  376. package/lib-esm/ActionList2/Item.d.ts +63 -0
  377. package/lib-esm/ActionList2/Item.js +210 -0
  378. package/lib-esm/ActionList2/LinkItem.d.ts +17 -0
  379. package/lib-esm/ActionList2/LinkItem.js +43 -0
  380. package/lib-esm/ActionList2/List.d.ts +26 -0
  381. package/lib-esm/ActionList2/List.js +36 -0
  382. package/lib-esm/ActionList2/Selection.d.ts +5 -0
  383. package/lib-esm/ActionList2/Selection.js +68 -0
  384. package/lib-esm/ActionList2/Visuals.d.ts +9 -0
  385. package/lib-esm/ActionList2/Visuals.js +68 -0
  386. package/lib-esm/ActionList2/index.d.ts +36 -0
  387. package/lib-esm/ActionList2/index.js +33 -0
  388. package/lib-esm/ActionMenu.d.ts +40 -0
  389. package/lib-esm/ActionMenu.js +82 -0
  390. package/lib-esm/AnchoredOverlay/AnchoredOverlay.d.ts +62 -0
  391. package/lib-esm/AnchoredOverlay/AnchoredOverlay.js +104 -0
  392. package/lib-esm/AnchoredOverlay/index.d.ts +2 -0
  393. package/lib-esm/AnchoredOverlay/index.js +1 -0
  394. package/lib-esm/Autocomplete/Autocomplete.d.ts +313 -0
  395. package/lib-esm/Autocomplete/Autocomplete.js +123 -0
  396. package/lib-esm/Autocomplete/AutocompleteContext.d.ts +17 -0
  397. package/lib-esm/Autocomplete/AutocompleteContext.js +2 -0
  398. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +301 -0
  399. package/lib-esm/Autocomplete/AutocompleteInput.js +138 -0
  400. package/lib-esm/Autocomplete/AutocompleteMenu.d.ts +72 -0
  401. package/lib-esm/Autocomplete/AutocompleteMenu.js +205 -0
  402. package/lib-esm/Autocomplete/AutocompleteOverlay.d.ts +20 -0
  403. package/lib-esm/Autocomplete/AutocompleteOverlay.js +62 -0
  404. package/lib-esm/Autocomplete/index.d.ts +2 -0
  405. package/lib-esm/Autocomplete/index.js +1 -0
  406. package/lib-esm/Avatar.d.ts +14 -0
  407. package/lib-esm/Avatar.js +2 -11
  408. package/lib-esm/AvatarPair.d.ts +8 -0
  409. package/lib-esm/AvatarPair.js +8 -14
  410. package/lib-esm/AvatarStack.d.ts +8 -0
  411. package/lib-esm/AvatarStack.js +12 -21
  412. package/lib-esm/BaseStyles.d.ts +14 -0
  413. package/lib-esm/BaseStyles.js +23 -26
  414. package/lib-esm/BorderBox.d.ts +7 -0
  415. package/lib-esm/BorderBox.js +6 -12
  416. package/lib-esm/Box.d.ts +6 -0
  417. package/lib-esm/Box.js +2 -13
  418. package/lib-esm/BranchName.d.ts +5 -0
  419. package/lib-esm/BranchName.js +2 -13
  420. package/lib-esm/Breadcrumbs.d.ts +41 -0
  421. package/lib-esm/Breadcrumbs.js +58 -0
  422. package/lib-esm/Button/Button.d.ts +284 -0
  423. package/lib-esm/Button/Button.js +3 -10
  424. package/lib-esm/Button/ButtonBase.d.ts +9 -0
  425. package/lib-esm/Button/ButtonBase.js +1 -19
  426. package/lib-esm/Button/ButtonClose.d.ts +279 -0
  427. package/lib-esm/Button/ButtonClose.js +5 -18
  428. package/lib-esm/Button/ButtonDanger.d.ts +284 -0
  429. package/lib-esm/Button/ButtonDanger.js +2 -9
  430. package/lib-esm/Button/ButtonGroup.d.ts +4 -0
  431. package/lib-esm/Button/ButtonGroup.js +2 -7
  432. package/lib-esm/Button/ButtonInvisible.d.ts +284 -0
  433. package/lib-esm/Button/ButtonInvisible.js +3 -10
  434. package/lib-esm/Button/ButtonOutline.d.ts +284 -0
  435. package/lib-esm/Button/ButtonOutline.js +2 -9
  436. package/lib-esm/Button/ButtonPrimary.d.ts +284 -0
  437. package/lib-esm/Button/ButtonPrimary.js +2 -9
  438. package/lib-esm/Button/ButtonStyles.d.ts +2 -0
  439. package/lib-esm/Button/ButtonTableList.d.ts +5 -0
  440. package/lib-esm/Button/ButtonTableList.js +2 -14
  441. package/lib-esm/Button/index.d.ts +16 -0
  442. package/lib-esm/Caret.d.ts +21 -0
  443. package/lib-esm/Caret.js +13 -16
  444. package/lib-esm/Checkbox.d.ts +29 -0
  445. package/lib-esm/Checkbox.js +44 -0
  446. package/lib-esm/CircleBadge.d.ts +24 -0
  447. package/lib-esm/CircleBadge.js +3 -19
  448. package/lib-esm/CircleOcticon.d.ts +392 -0
  449. package/lib-esm/CircleOcticon.js +9 -15
  450. package/lib-esm/CounterLabel.d.ts +7 -0
  451. package/lib-esm/CounterLabel.js +4 -16
  452. package/lib-esm/Details.d.ts +5 -0
  453. package/lib-esm/Details.js +1 -9
  454. package/lib-esm/Dialog/ConfirmationDialog.d.ts +44 -0
  455. package/lib-esm/Dialog/ConfirmationDialog.js +169 -0
  456. package/lib-esm/Dialog/Dialog.d.ts +163 -0
  457. package/lib-esm/Dialog/Dialog.js +275 -0
  458. package/lib-esm/Dialog.d.ts +406 -0
  459. package/lib-esm/Dialog.js +31 -46
  460. package/lib-esm/Dropdown.d.ts +1113 -0
  461. package/lib-esm/Dropdown.js +38 -58
  462. package/lib-esm/DropdownMenu/DropdownButton.d.ts +280 -0
  463. package/lib-esm/DropdownMenu/DropdownButton.js +18 -0
  464. package/lib-esm/DropdownMenu/DropdownMenu.d.ts +43 -0
  465. package/lib-esm/DropdownMenu/DropdownMenu.js +77 -0
  466. package/lib-esm/DropdownMenu/index.d.ts +4 -0
  467. package/lib-esm/DropdownMenu/index.js +2 -0
  468. package/lib-esm/DropdownStyles.d.ts +3 -0
  469. package/lib-esm/DropdownStyles.js +6 -6
  470. package/lib-esm/FilterList.d.ts +283 -0
  471. package/lib-esm/FilterList.js +3 -29
  472. package/lib-esm/FilteredActionList/FilteredActionList.d.ts +16 -0
  473. package/lib-esm/FilteredActionList/FilteredActionList.js +109 -0
  474. package/lib-esm/FilteredActionList/index.d.ts +2 -0
  475. package/lib-esm/FilteredActionList/index.js +1 -0
  476. package/lib-esm/FilteredSearch.d.ts +5 -0
  477. package/lib-esm/FilteredSearch.js +2 -11
  478. package/lib-esm/Flash.d.ts +8 -0
  479. package/lib-esm/Flash.js +36 -13
  480. package/lib-esm/Flex.d.ts +7 -0
  481. package/lib-esm/Flex.js +4 -4
  482. package/lib-esm/FormGroup.d.ts +11 -0
  483. package/lib-esm/FormGroup.js +3 -20
  484. package/lib-esm/Grid.d.ts +7 -0
  485. package/lib-esm/Grid.js +5 -7
  486. package/lib-esm/Header.d.ts +23 -0
  487. package/lib-esm/Header.js +6 -34
  488. package/lib-esm/Heading.d.ts +5 -0
  489. package/lib-esm/Heading.js +2 -12
  490. package/lib-esm/Label.d.ts +10 -0
  491. package/lib-esm/Label.js +3 -15
  492. package/lib-esm/LabelGroup.d.ts +5 -0
  493. package/lib-esm/LabelGroup.js +2 -9
  494. package/lib-esm/Link.d.ts +9 -0
  495. package/lib-esm/Link.js +2 -28
  496. package/lib-esm/NewButton/button-counter.d.ts +6 -0
  497. package/lib-esm/NewButton/button-counter.js +18 -0
  498. package/lib-esm/NewButton/button.d.ts +13 -0
  499. package/lib-esm/NewButton/button.js +287 -0
  500. package/lib-esm/NewButton/index.d.ts +14 -0
  501. package/lib-esm/NewButton/index.js +5 -0
  502. package/lib-esm/NewButton/types.d.ts +32 -0
  503. package/lib-esm/NewButton/types.js +1 -0
  504. package/lib-esm/Overlay.d.ts +66 -0
  505. package/lib-esm/Overlay.js +160 -0
  506. package/lib-esm/Pagehead.d.ts +5 -0
  507. package/lib-esm/Pagehead.js +2 -12
  508. package/lib-esm/Pagination/Pagination.d.ts +24 -0
  509. package/lib-esm/Pagination/Pagination.js +15 -28
  510. package/lib-esm/Pagination/index.d.ts +3 -0
  511. package/lib-esm/Pagination/model.d.ts +26 -0
  512. package/lib-esm/Pagination/model.js +1 -1
  513. package/lib-esm/PointerBox.d.ts +11 -0
  514. package/lib-esm/PointerBox.js +4 -11
  515. package/lib-esm/Popover.d.ts +20 -0
  516. package/lib-esm/Popover.js +5 -27
  517. package/lib-esm/Portal/Portal.d.ts +25 -0
  518. package/lib-esm/Portal/Portal.js +83 -0
  519. package/lib-esm/Portal/index.d.ts +4 -0
  520. package/lib-esm/Portal/index.js +3 -0
  521. package/lib-esm/Position.d.ts +34 -0
  522. package/lib-esm/Position.js +42 -37
  523. package/lib-esm/ProgressBar.d.ts +26 -0
  524. package/lib-esm/ProgressBar.js +9 -25
  525. package/lib-esm/SelectMenu/SelectMenu.d.ts +1678 -0
  526. package/lib-esm/SelectMenu/SelectMenu.js +27 -38
  527. package/lib-esm/SelectMenu/SelectMenuContext.d.ts +8 -0
  528. package/lib-esm/SelectMenu/SelectMenuContext.js +1 -1
  529. package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +5 -0
  530. package/lib-esm/SelectMenu/SelectMenuDivider.js +4 -11
  531. package/lib-esm/SelectMenu/SelectMenuFilter.d.ts +9 -0
  532. package/lib-esm/SelectMenu/SelectMenuFilter.js +13 -19
  533. package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +5 -0
  534. package/lib-esm/SelectMenu/SelectMenuFooter.js +4 -11
  535. package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +10 -0
  536. package/lib-esm/SelectMenu/SelectMenuHeader.js +7 -18
  537. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +14 -0
  538. package/lib-esm/SelectMenu/SelectMenuItem.js +11 -17
  539. package/lib-esm/SelectMenu/SelectMenuList.d.ts +5 -0
  540. package/lib-esm/SelectMenu/SelectMenuList.js +4 -11
  541. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +7 -0
  542. package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +7 -13
  543. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +14 -0
  544. package/lib-esm/SelectMenu/SelectMenuModal.js +10 -20
  545. package/lib-esm/SelectMenu/SelectMenuTab.d.ts +13 -0
  546. package/lib-esm/SelectMenu/SelectMenuTab.js +13 -21
  547. package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +12 -0
  548. package/lib-esm/SelectMenu/SelectMenuTabPanel.js +9 -19
  549. package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +10 -0
  550. package/lib-esm/SelectMenu/SelectMenuTabs.js +8 -15
  551. package/lib-esm/SelectMenu/hooks/useKeyboardNav.d.ts +2 -0
  552. package/lib-esm/SelectMenu/hooks/useKeyboardNav.js +2 -0
  553. package/lib-esm/SelectMenu/index.d.ts +2 -0
  554. package/lib-esm/SelectMenu/index.js +1 -2
  555. package/lib-esm/SelectPanel/SelectPanel.d.ts +25 -0
  556. package/lib-esm/SelectPanel/SelectPanel.js +127 -0
  557. package/lib-esm/SelectPanel/index.d.ts +2 -0
  558. package/lib-esm/SelectPanel/index.js +1 -0
  559. package/lib-esm/SideNav.d.ts +34 -0
  560. package/lib-esm/SideNav.js +20 -36
  561. package/lib-esm/Spinner.d.ts +16 -0
  562. package/lib-esm/Spinner.js +45 -0
  563. package/lib-esm/StateLabel.d.ts +15 -0
  564. package/lib-esm/StateLabel.js +55 -23
  565. package/lib-esm/StyledOcticon.d.ts +11 -0
  566. package/lib-esm/StyledOcticon.js +1 -12
  567. package/lib-esm/SubNav.d.ts +26 -0
  568. package/lib-esm/SubNav.js +10 -38
  569. package/lib-esm/TabNav.d.ts +19 -0
  570. package/lib-esm/TabNav.js +13 -33
  571. package/lib-esm/Text.d.ts +6 -0
  572. package/lib-esm/Text.js +0 -10
  573. package/lib-esm/TextInput.d.ts +21 -0
  574. package/lib-esm/TextInput.js +37 -64
  575. package/lib-esm/TextInputWithTokens.d.ts +336 -0
  576. package/lib-esm/TextInputWithTokens.js +291 -0
  577. package/lib-esm/ThemeProvider.d.ts +26 -0
  578. package/lib-esm/ThemeProvider.js +161 -0
  579. package/lib-esm/Timeline.d.ts +33 -0
  580. package/lib-esm/Timeline.js +26 -81
  581. package/lib-esm/Token/AvatarToken.d.ts +7 -0
  582. package/lib-esm/Token/AvatarToken.js +43 -0
  583. package/lib-esm/Token/IssueLabelToken.d.ts +14 -0
  584. package/lib-esm/Token/IssueLabelToken.js +124 -0
  585. package/lib-esm/Token/Token.d.ts +15 -0
  586. package/lib-esm/Token/Token.js +84 -0
  587. package/lib-esm/Token/TokenBase.d.ts +31 -0
  588. package/lib-esm/Token/TokenBase.js +83 -0
  589. package/lib-esm/Token/_RemoveTokenButton.d.ts +12 -0
  590. package/lib-esm/Token/_RemoveTokenButton.js +69 -0
  591. package/lib-esm/Token/_TokenTextContainer.d.ts +3 -0
  592. package/lib-esm/Token/_TokenTextContainer.js +6 -0
  593. package/lib-esm/Token/index.d.ts +3 -0
  594. package/lib-esm/Token/index.js +3 -0
  595. package/lib-esm/Tooltip.d.ts +17 -0
  596. package/lib-esm/Tooltip.js +4 -19
  597. package/lib-esm/Truncate.d.ts +10 -0
  598. package/lib-esm/Truncate.js +2 -15
  599. package/lib-esm/UnderlineNav.d.ts +24 -0
  600. package/lib-esm/UnderlineNav.js +5 -28
  601. package/lib-esm/_TextInputWrapper.d.ts +13 -0
  602. package/lib-esm/_TextInputWrapper.js +42 -0
  603. package/lib-esm/_UnstyledTextInput.d.ts +2 -0
  604. package/lib-esm/_UnstyledTextInput.js +7 -0
  605. package/lib-esm/behaviors/anchoredPosition.d.ts +89 -0
  606. package/lib-esm/behaviors/anchoredPosition.js +309 -0
  607. package/lib-esm/behaviors/focusTrap.d.ts +12 -0
  608. package/lib-esm/behaviors/focusTrap.js +170 -0
  609. package/lib-esm/behaviors/focusZone.d.ts +137 -0
  610. package/lib-esm/behaviors/focusZone.js +560 -0
  611. package/lib-esm/behaviors/scrollIntoViewingArea.d.ts +1 -0
  612. package/lib-esm/behaviors/scrollIntoViewingArea.js +30 -0
  613. package/lib-esm/constants.d.ts +20 -0
  614. package/lib-esm/constants.js +9 -23
  615. package/lib-esm/drafts.d.ts +8 -0
  616. package/lib-esm/drafts.js +9 -0
  617. package/lib-esm/hooks/index.d.ts +11 -0
  618. package/lib-esm/hooks/index.js +7 -0
  619. package/lib-esm/hooks/useAnchoredPosition.d.ts +20 -0
  620. package/lib-esm/hooks/useAnchoredPosition.js +35 -0
  621. package/lib-esm/hooks/useCombinedRefs.d.ts +10 -0
  622. package/lib-esm/hooks/useCombinedRefs.js +37 -0
  623. package/lib-esm/hooks/useDetails.d.ts +17 -0
  624. package/lib-esm/hooks/useDialog.d.ts +16 -0
  625. package/lib-esm/hooks/useDialog.js +21 -6
  626. package/lib-esm/hooks/useFocusTrap.d.ts +32 -0
  627. package/lib-esm/hooks/useFocusTrap.js +54 -0
  628. package/lib-esm/hooks/useFocusZone.d.ts +23 -0
  629. package/lib-esm/hooks/useFocusZone.js +37 -0
  630. package/lib-esm/hooks/useOnEscapePress.d.ts +23 -0
  631. package/lib-esm/hooks/useOnEscapePress.js +59 -0
  632. package/lib-esm/hooks/useOnOutsideClick.d.ts +8 -0
  633. package/lib-esm/hooks/useOnOutsideClick.js +79 -0
  634. package/lib-esm/hooks/useOpenAndCloseFocus.d.ts +8 -0
  635. package/lib-esm/hooks/useOpenAndCloseFocus.js +27 -0
  636. package/lib-esm/hooks/useOverlay.d.ts +15 -0
  637. package/lib-esm/hooks/useOverlay.js +30 -0
  638. package/lib-esm/hooks/useProvidedRefOrCreate.d.ts +10 -0
  639. package/lib-esm/hooks/useProvidedRefOrCreate.js +14 -0
  640. package/lib-esm/hooks/useProvidedStateOrCreate.d.ts +10 -0
  641. package/lib-esm/hooks/useProvidedStateOrCreate.js +20 -0
  642. package/lib-esm/hooks/useRenderForcingRef.d.ts +8 -0
  643. package/lib-esm/hooks/useRenderForcingRef.js +18 -0
  644. package/lib-esm/hooks/useResizeObserver.d.ts +1 -0
  645. package/lib-esm/hooks/useResizeObserver.js +10 -0
  646. package/lib-esm/hooks/useSafeTimeout.d.ts +12 -0
  647. package/lib-esm/hooks/useSafeTimeout.js +4 -1
  648. package/lib-esm/hooks/useScrollFlash.d.ts +6 -0
  649. package/lib-esm/hooks/useScrollFlash.js +22 -0
  650. package/lib-esm/index.d.ts +120 -0
  651. package/lib-esm/index.js +29 -8
  652. package/lib-esm/polyfills/eventListenerSignal.d.ts +6 -0
  653. package/lib-esm/polyfills/eventListenerSignal.js +57 -0
  654. package/lib-esm/sx.d.ts +14 -0
  655. package/lib-esm/sx.js +3 -5
  656. package/lib-esm/theme-preval.d.ts +49 -0
  657. package/lib-esm/theme-preval.js +3119 -357
  658. package/lib-esm/theme.d.ts +80 -0
  659. package/lib-esm/theme.js +3 -8
  660. package/lib-esm/utils/create-slots.d.ts +17 -0
  661. package/lib-esm/utils/create-slots.js +84 -0
  662. package/lib-esm/utils/deprecate.d.ts +18 -0
  663. package/lib-esm/utils/deprecate.js +6 -5
  664. package/lib-esm/utils/isNumeric.d.ts +1 -0
  665. package/lib-esm/utils/isNumeric.js +1 -0
  666. package/lib-esm/utils/iterateFocusableElements.d.ts +42 -0
  667. package/lib-esm/utils/iterateFocusableElements.js +102 -0
  668. package/lib-esm/utils/ssr.d.ts +1 -0
  669. package/lib-esm/utils/ssr.js +1 -0
  670. package/lib-esm/utils/test-deprecations.d.ts +1 -0
  671. package/lib-esm/utils/test-deprecations.js +1 -1
  672. package/lib-esm/utils/{types.js → test-helpers.d.ts} +0 -0
  673. package/lib-esm/utils/test-helpers.js +7 -0
  674. package/lib-esm/utils/test-matchers.d.ts +1 -0
  675. package/lib-esm/utils/test-matchers.js +7 -49
  676. package/lib-esm/utils/testing.d.ts +545 -0
  677. package/lib-esm/utils/testing.js +35 -26
  678. package/lib-esm/utils/theme.d.ts +9 -0
  679. package/lib-esm/utils/theme.js +66 -0
  680. package/lib-esm/utils/types/AriaRole.d.ts +1 -0
  681. package/lib-esm/utils/types/AriaRole.js +1 -0
  682. package/lib-esm/utils/types/ComponentProps.d.ts +9 -0
  683. package/lib-esm/utils/types/ComponentProps.js +1 -0
  684. package/lib-esm/utils/types/Flatten.d.ts +4 -0
  685. package/lib-esm/utils/types/Flatten.js +1 -0
  686. package/lib-esm/utils/types/KeyPaths.d.ts +3 -0
  687. package/lib-esm/utils/types/KeyPaths.js +1 -0
  688. package/lib-esm/utils/types/MandateProps.d.ts +3 -0
  689. package/lib-esm/utils/types/MandateProps.js +1 -0
  690. package/lib-esm/utils/types/Merge.d.ts +19 -0
  691. package/lib-esm/utils/types/Merge.js +1 -0
  692. package/lib-esm/utils/types/index.d.ts +5 -0
  693. package/lib-esm/utils/types/index.js +5 -0
  694. package/lib-esm/utils/uniqueId.d.ts +1 -0
  695. package/lib-esm/utils/uniqueId.js +5 -0
  696. package/lib-esm/utils/use-force-update.d.ts +1 -0
  697. package/lib-esm/utils/use-force-update.js +6 -0
  698. package/lib-esm/utils/useIsomorphicLayoutEffect.d.ts +3 -0
  699. package/lib-esm/utils/useIsomorphicLayoutEffect.js +3 -0
  700. package/lib-esm/utils/userAgent.d.ts +1 -0
  701. package/lib-esm/utils/userAgent.js +8 -0
  702. package/package.json +114 -95
  703. package/index.d.ts +0 -838
  704. package/lib/Breadcrumb.js +0 -96
  705. package/lib/hooks/useMouseIntent.js +0 -58
  706. package/lib/stories/Button.stories.js +0 -100
  707. package/lib-esm/Breadcrumb.js +0 -70
  708. package/lib-esm/hooks/useMouseIntent.js +0 -50
  709. package/lib-esm/stories/Button.stories.js +0 -65
@@ -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;
@@ -0,0 +1,33 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import React from 'react';
4
+ import styled, { css } from 'styled-components';
5
+ import { get } from '../constants';
6
+ import sx from '../sx';
7
+ /**
8
+ * Contract for props passed to the `Header` component.
9
+ */
10
+
11
+ export const StyledHeader = styled.div.withConfig({
12
+ displayName: "Header__StyledHeader",
13
+ componentId: "qmofje-0"
14
+ })(["{}padding:6px ", ";font-size:", ";font-weight:", ";color:", ";", " ", ""], get('space.3'), get('fontSizes.0'), get('fontWeights.bold'), get('colors.fg.muted'), ({
15
+ variant
16
+ }) => variant === 'filled' && css(["background:", ";margin:", " 0;border-top:1px solid ", ";border-bottom:1px solid ", ";&:first-child{margin-top:0;}"], get('colors.canvas.subtle'), get('space.2'), get('colors.neutral.muted'), get('colors.neutral.muted')), sx);
17
+ /**
18
+ * Displays the name and description of a `Group`.
19
+ */
20
+
21
+ export function Header({
22
+ variant = 'subtle',
23
+ title,
24
+ auxiliaryText,
25
+ children: _children,
26
+ ...props
27
+ }) {
28
+ return /*#__PURE__*/React.createElement(StyledHeader, _extends({
29
+ role: "heading",
30
+ variant: variant
31
+ }, props), title, auxiliaryText && /*#__PURE__*/React.createElement("span", null, auxiliaryText));
32
+ }
33
+ Header.displayName = "Header";
@@ -0,0 +1,98 @@
1
+ import { IconProps } from '@primer/octicons-react';
2
+ import React from 'react';
3
+ import { SxProp } from '../sx';
4
+ import { ItemInput } from './List';
5
+ import { ForwardRefComponent as PolymorphicForwardRefComponent } from '@radix-ui/react-polymorphic';
6
+ import { AriaRole } from '../utils/types';
7
+ /**
8
+ * Contract for props passed to the `Item` component.
9
+ */
10
+ export interface ItemProps extends SxProp {
11
+ /**
12
+ * Primary text which names an `Item`.
13
+ */
14
+ text?: string;
15
+ /**
16
+ * Secondary text which provides additional information about an `Item`.
17
+ */
18
+ description?: string;
19
+ /**
20
+ * Secondary text style variations. Usage is discretionary.
21
+ *
22
+ * - `"inline"` - Secondary text is positioned beside primary text.
23
+ * - `"block"` - Secondary text is positioned below primary text.
24
+ */
25
+ descriptionVariant?: 'inline' | 'block';
26
+ /**
27
+ * Icon (or similar) positioned before `Item` text.
28
+ */
29
+ leadingVisual?: React.FunctionComponent<IconProps>;
30
+ /**
31
+ * @deprecated Use `trailingVisual` instead
32
+ * Icon (or similar) positioned after `Item` text.
33
+ */
34
+ trailingIcon?: React.FunctionComponent<IconProps>;
35
+ /**
36
+ * @deprecated Use `trailingVisual` instead
37
+ * Text positioned after `Item` text and optional trailing icon.
38
+ */
39
+ trailingText?: string;
40
+ /**
41
+ * Icon or text positioned after `Item` text.
42
+ */
43
+ trailingVisual?: React.ReactNode;
44
+ /**
45
+ * Style variations associated with various `Item` types.
46
+ *
47
+ * - `"default"` - An action `Item`.
48
+ * - `"danger"` - A destructive action `Item`.
49
+ */
50
+ variant?: 'default' | 'danger';
51
+ /**
52
+ * Whether to display a divider above the `Item` when it does not follow a `Header` or `Divider`.
53
+ */
54
+ showDivider?: boolean;
55
+ /**
56
+ * For `Item`s which can be selected, whether the `Item` is currently selected.
57
+ */
58
+ selected?: boolean;
59
+ /**
60
+ * For `Item`s which can be selected, whether `multiple` `Item`s or a `single` `Item` can be selected
61
+ */
62
+ selectionVariant?: 'single' | 'multiple';
63
+ /**
64
+ * Designates the group that an item belongs to.
65
+ */
66
+ groupId?: string;
67
+ /**
68
+ * Items that are disabled can not be clicked, selected, or navigated through.
69
+ */
70
+ disabled?: boolean;
71
+ /**
72
+ * Callback that will trigger both on click selection and keyboard selection.
73
+ */
74
+ onAction?: (item: ItemProps, event: React.MouseEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>) => void;
75
+ /**
76
+ * An id associated with this item. Should be unique between items
77
+ */
78
+ id?: number | string;
79
+ /**
80
+ * Node to be included inside the item before the text.
81
+ */
82
+ children?: React.ReactNode;
83
+ /**
84
+ * The ARIA role describing the function of `List` component. `option` is a common value.
85
+ */
86
+ role?: AriaRole;
87
+ /**
88
+ * An item to pass back in the `onAction` callback, meant as
89
+ */
90
+ item?: ItemInput;
91
+ }
92
+ export declare const TextContainer: import("styled-components").StyledComponent<"span", any, {
93
+ dangerouslySetInnerHtml?: React.DOMAttributes<HTMLDivElement>['dangerouslySetInnerHTML'];
94
+ }, never>;
95
+ /**
96
+ * An actionable or selectable `Item` with an optional icon and description.
97
+ */
98
+ export declare const Item: PolymorphicForwardRefComponent<"div", ItemProps>;