@primer/react-brand 0.75.0-rc.a3f7dbd6 → 0.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (940) hide show
  1. package/docs/components/SubdomainNavBar/index.md +215 -86
  2. package/docs/index.md +2 -2
  3. package/esm/Accordion/Accordion.d.ts +2 -2
  4. package/esm/Accordion/Accordion.d.ts.map +1 -1
  5. package/esm/Accordion/Accordion.js +2 -2
  6. package/esm/Accordion/Accordion.js.map +1 -1
  7. package/esm/Accordion/Accordion.module.js +6 -5
  8. package/esm/ActionMenu/ActionMenu.d.ts +2 -2
  9. package/esm/ActionMenu/ActionMenu.js +3 -2
  10. package/esm/ActionMenu/ActionMenu.js.map +1 -1
  11. package/esm/ActionMenu/ActionMenu.module.js +7 -6
  12. package/esm/AnchorNav/AnchorNav.d.ts +4 -4
  13. package/esm/AnchorNav/AnchorNav.d.ts.map +1 -1
  14. package/esm/AnchorNav/AnchorNav.js +9 -4
  15. package/esm/AnchorNav/AnchorNav.js.map +1 -1
  16. package/esm/AnchorNav/AnchorNav.module.js +5 -4
  17. package/esm/AnchorNav/useExpandedMenu.js.map +1 -1
  18. package/esm/Avatar/Avatar.js +1 -1
  19. package/esm/Avatar/Avatar.js.map +1 -1
  20. package/esm/Avatar/Avatar.module.js +5 -4
  21. package/esm/Bento/Bento.d.ts +4 -4
  22. package/esm/Bento/Bento.js +1 -1
  23. package/esm/Bento/Bento.js.map +1 -1
  24. package/esm/Bento/Bento.module.js +7 -6
  25. package/esm/Box/Box.d.ts +1 -1
  26. package/esm/Box/Box.d.ts.map +1 -1
  27. package/esm/Box/Box.js +1 -1
  28. package/esm/Box/Box.js.map +1 -1
  29. package/esm/Breadcrumbs/Breadcrumbs.js +1 -1
  30. package/esm/Breadcrumbs/Breadcrumbs.js.map +1 -1
  31. package/esm/Breadcrumbs/Breadcrumbs.module.js +7 -6
  32. package/esm/BreakoutBanner/BreakoutBanner.js +1 -1
  33. package/esm/BreakoutBanner/BreakoutBanner.js.map +1 -1
  34. package/esm/BreakoutBanner/BreakoutBanner.module.js +5 -4
  35. package/esm/Button/Button.js +1 -1
  36. package/esm/Button/Button.js.map +1 -1
  37. package/esm/Button/Button.module.js +5 -4
  38. package/esm/ButtonGroup/ButtonGroup.js +1 -1
  39. package/esm/ButtonGroup/ButtonGroup.js.map +1 -1
  40. package/esm/ButtonGroup/ButtonGroup.module.js +3 -2
  41. package/esm/CTABanner/CTABanner.d.ts +1 -1
  42. package/esm/CTABanner/CTABanner.js +2 -2
  43. package/esm/CTABanner/CTABanner.js.map +1 -1
  44. package/esm/CTABanner/CTABanner.module.js +4 -3
  45. package/esm/CTAForm/CTAForm.js +1 -1
  46. package/esm/CTAForm/CTAForm.js.map +1 -1
  47. package/esm/CTAForm/CTAForm.module.js +4 -3
  48. package/esm/Card/Card.d.ts +2 -2
  49. package/esm/Card/Card.d.ts.map +1 -1
  50. package/esm/Card/Card.js +3 -3
  51. package/esm/Card/Card.js.map +1 -1
  52. package/esm/Card/Card.module.js +18 -17
  53. package/esm/ComparisonTable/ComparisonTable.d.ts +3 -3
  54. package/esm/ComparisonTable/ComparisonTable.js +1 -1
  55. package/esm/ComparisonTable/ComparisonTable.js.map +1 -1
  56. package/esm/ComparisonTable/ComparisonTable.module.js +4 -3
  57. package/esm/ExpandableArrow/ExpandableArrow.d.ts +2 -1
  58. package/esm/ExpandableArrow/ExpandableArrow.d.ts.map +1 -1
  59. package/esm/ExpandableArrow/ExpandableArrow.js +1 -1
  60. package/esm/ExpandableArrow/ExpandableArrow.js.map +1 -1
  61. package/esm/ExpandableArrow/ExpandableArrow.module.js +4 -3
  62. package/esm/EyebrowBanner/EyebrowBanner.js +2 -2
  63. package/esm/EyebrowBanner/EyebrowBanner.js.map +1 -1
  64. package/esm/EyebrowBanner/EyebrowBanner.module.js +12 -11
  65. package/esm/EyebrowText/EyebrowText.js +1 -1
  66. package/esm/EyebrowText/EyebrowText.js.map +1 -1
  67. package/esm/EyebrowText/EyebrowText.module.js +4 -3
  68. package/esm/FAQ/FAQ.d.ts +2 -2
  69. package/esm/FAQ/FAQ.d.ts.map +1 -1
  70. package/esm/FAQ/FAQ.js +1 -1
  71. package/esm/FAQ/FAQ.js.map +1 -1
  72. package/esm/FAQ/FAQ.module.js +7 -6
  73. package/esm/FAQ/FAQGroup.d.ts +2 -2
  74. package/esm/FAQ/FAQGroup.d.ts.map +1 -1
  75. package/esm/FAQ/FAQGroup.js +7 -3
  76. package/esm/FAQ/FAQGroup.js.map +1 -1
  77. package/esm/FAQ/FAQGroup.module.js +8 -7
  78. package/esm/Footnotes/Footnotes.d.ts +2 -2
  79. package/esm/Footnotes/Footnotes.d.ts.map +1 -1
  80. package/esm/Footnotes/Footnotes.js +2 -2
  81. package/esm/Footnotes/Footnotes.js.map +1 -1
  82. package/esm/Footnotes/Footnotes.module.js +7 -6
  83. package/esm/FrostedGlassVFX/FrostedGlassVFX.d.ts +1 -1
  84. package/esm/FrostedGlassVFX/FrostedGlassVFX.d.ts.map +1 -1
  85. package/esm/FrostedGlassVFX/FrostedGlassVFX.js +1 -1
  86. package/esm/FrostedGlassVFX/FrostedGlassVFX.js.map +1 -1
  87. package/esm/FrostedGlassVFX/FrostedGlassVFX.module.js +4 -3
  88. package/esm/Grid/Grid.d.ts +2 -2
  89. package/esm/Grid/Grid.js +2 -2
  90. package/esm/Grid/Grid.js.map +1 -1
  91. package/esm/Grid/Grid.module.js +5 -4
  92. package/esm/Heading/Heading.js +1 -1
  93. package/esm/Heading/Heading.js.map +1 -1
  94. package/esm/Heading/Heading.module.js +4 -3
  95. package/esm/Hero/Hero.js +1 -1
  96. package/esm/Hero/Hero.js.map +1 -1
  97. package/esm/Hero/Hero.module.js +4 -3
  98. package/esm/Hero/HeroContext.js.map +1 -1
  99. package/esm/Hero/sub-components/HeroButtonGroup.js +1 -1
  100. package/esm/Hero/sub-components/HeroButtonGroup.js.map +1 -1
  101. package/esm/Hero/sub-components/HeroDescription.js +1 -1
  102. package/esm/Hero/sub-components/HeroDescription.js.map +1 -1
  103. package/esm/Hero/sub-components/HeroEyebrow.js +1 -1
  104. package/esm/Hero/sub-components/HeroEyebrow.js.map +1 -1
  105. package/esm/Hero/sub-components/HeroHeading.js +1 -1
  106. package/esm/Hero/sub-components/HeroHeading.js.map +1 -1
  107. package/esm/Hero/sub-components/HeroImage.js +1 -1
  108. package/esm/Hero/sub-components/HeroImage.js.map +1 -1
  109. package/esm/Hero/sub-components/HeroLabel.js +1 -1
  110. package/esm/Hero/sub-components/HeroLabel.js.map +1 -1
  111. package/esm/Hero/sub-components/HeroPrimaryAction.js.map +1 -1
  112. package/esm/Hero/sub-components/HeroSecondaryAction.js.map +1 -1
  113. package/esm/Hero/sub-components/HeroVideo.js +2 -2
  114. package/esm/Hero/sub-components/HeroVideo.js.map +1 -1
  115. package/esm/IDE/IDE.d.ts +1 -1
  116. package/esm/IDE/IDE.js +3 -2
  117. package/esm/IDE/IDE.js.map +1 -1
  118. package/esm/IDE/IDE.module.js +8 -7
  119. package/esm/Icon/Icon.d.ts +2 -2
  120. package/esm/Icon/Icon.d.ts.map +1 -1
  121. package/esm/Icon/Icon.js +2 -2
  122. package/esm/Icon/Icon.js.map +1 -1
  123. package/esm/Icon/Icon.module.js +4 -3
  124. package/esm/Image/Image.d.ts +1 -1
  125. package/esm/Image/Image.d.ts.map +1 -1
  126. package/esm/Image/Image.js +1 -1
  127. package/esm/Image/Image.js.map +1 -1
  128. package/esm/Image/Image.module.js +5 -4
  129. package/esm/InlineCode/InlineCode.js +1 -1
  130. package/esm/InlineCode/InlineCode.js.map +1 -1
  131. package/esm/InlineCode/InlineCode.module.js +5 -4
  132. package/esm/InlineLink/InlineLink.js +2 -2
  133. package/esm/InlineLink/InlineLink.js.map +1 -1
  134. package/esm/InlineLink/InlineLink.module.js +3 -2
  135. package/esm/Label/Label.js +1 -1
  136. package/esm/Label/Label.js.map +1 -1
  137. package/esm/Label/Label.module.js +6 -5
  138. package/esm/Link/Link.d.ts +1 -1
  139. package/esm/Link/Link.d.ts.map +1 -1
  140. package/esm/Link/Link.js +2 -2
  141. package/esm/Link/Link.js.map +1 -1
  142. package/esm/Link/Link.module.js +4 -3
  143. package/esm/LogoSuite/LogoSuite.d.ts +1 -1
  144. package/esm/LogoSuite/LogoSuite.js +4 -3
  145. package/esm/LogoSuite/LogoSuite.js.map +1 -1
  146. package/esm/LogoSuite/LogoSuite.module.js +11 -10
  147. package/esm/MediaPlaylist/MediaPlaylist.d.ts +4 -4
  148. package/esm/MediaPlaylist/MediaPlaylist.d.ts.map +1 -1
  149. package/esm/MediaPlaylist/MediaPlaylist.js +1 -1
  150. package/esm/MediaPlaylist/MediaPlaylist.js.map +1 -1
  151. package/esm/MediaPlaylist/MediaPlaylist.module.js +25 -24
  152. package/esm/MediaPlaylist/useMediaPlaylist.js.map +1 -1
  153. package/esm/MinimalFooter/MinimalFooter.d.ts +3 -3
  154. package/esm/MinimalFooter/MinimalFooter.d.ts.map +1 -1
  155. package/esm/MinimalFooter/MinimalFooter.js +4 -3
  156. package/esm/MinimalFooter/MinimalFooter.js.map +1 -1
  157. package/esm/MinimalFooter/MinimalFooter.module.js +15 -14
  158. package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js +2 -2
  159. package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js.map +1 -1
  160. package/esm/MinimalVideoPlayer/MinimalVideoPlayer.module.js +6 -5
  161. package/esm/MinimalVideoPlayer/useMinimalVideoPlayback.js.map +1 -1
  162. package/esm/NavList/NavList.js +2 -2
  163. package/esm/NavList/NavList.js.map +1 -1
  164. package/esm/NavList/NavList.module.js +18 -17
  165. package/esm/Pagination/Pagination.d.ts +1 -1
  166. package/esm/Pagination/Pagination.d.ts.map +1 -1
  167. package/esm/Pagination/Pagination.js +1 -1
  168. package/esm/Pagination/Pagination.js.map +1 -1
  169. package/esm/Pagination/Pagination.module.js +11 -10
  170. package/esm/Pagination/model.js.map +1 -1
  171. package/esm/Pillar/Pillar.d.ts +2 -2
  172. package/esm/Pillar/Pillar.d.ts.map +1 -1
  173. package/esm/Pillar/Pillar.js +1 -1
  174. package/esm/Pillar/Pillar.js.map +1 -1
  175. package/esm/Pillar/Pillar.module.js +9 -8
  176. package/esm/PricingOptions/PricingOptions.d.ts +1 -1
  177. package/esm/PricingOptions/PricingOptions.js +5 -3
  178. package/esm/PricingOptions/PricingOptions.js.map +1 -1
  179. package/esm/PricingOptions/PricingOptions.module.js +13 -12
  180. package/esm/Prose/Prose.js +1 -1
  181. package/esm/Prose/Prose.js.map +1 -1
  182. package/esm/Prose/Prose.module.js +4 -3
  183. package/esm/Section/Section.js +1 -1
  184. package/esm/Section/Section.js.map +1 -1
  185. package/esm/Section/Section.module.js +5 -4
  186. package/esm/SectionIntro/SectionIntro.js +1 -1
  187. package/esm/SectionIntro/SectionIntro.js.map +1 -1
  188. package/esm/SectionIntro/SectionIntro.module.js +4 -3
  189. package/esm/SectionIntroStacked/SectionIntroStacked.d.ts +3 -3
  190. package/esm/SectionIntroStacked/SectionIntroStacked.js +1 -1
  191. package/esm/SectionIntroStacked/SectionIntroStacked.js.map +1 -1
  192. package/esm/SectionIntroStacked/SectionIntroStacked.module.js +6 -5
  193. package/esm/Stack/Stack.js +1 -1
  194. package/esm/Stack/Stack.js.map +1 -1
  195. package/esm/Stack/Stack.module.js +4 -3
  196. package/esm/Statistic/Statistic.js +1 -1
  197. package/esm/Statistic/Statistic.js.map +1 -1
  198. package/esm/Statistic/Statistic.module.js +6 -5
  199. package/esm/SubNav/SubNav.d.ts +4 -4
  200. package/esm/SubNav/SubNav.d.ts.map +1 -1
  201. package/esm/SubNav/SubNav.js +6 -4
  202. package/esm/SubNav/SubNav.js.map +1 -1
  203. package/esm/SubNav/SubNav.module.js +9 -8
  204. package/esm/SubNav/useContainsFocus.js.map +1 -1
  205. package/esm/SubdomainNavBar/NavigationVisbilityObserver.d.ts +3 -1
  206. package/esm/SubdomainNavBar/NavigationVisbilityObserver.d.ts.map +1 -1
  207. package/esm/SubdomainNavBar/NavigationVisbilityObserver.js +117 -64
  208. package/esm/SubdomainNavBar/NavigationVisbilityObserver.js.map +1 -1
  209. package/esm/SubdomainNavBar/SubdomainNavBar.d.ts +157 -20
  210. package/esm/SubdomainNavBar/SubdomainNavBar.d.ts.map +1 -1
  211. package/esm/SubdomainNavBar/SubdomainNavBar.js +479 -299
  212. package/esm/SubdomainNavBar/SubdomainNavBar.js.map +1 -1
  213. package/esm/SubdomainNavBar/SubdomainNavBar.module-WIrpYyjV.css +1 -0
  214. package/esm/SubdomainNavBar/SubdomainNavBar.module.js +36 -11
  215. package/esm/SubdomainNavBar/SubdomainNavBar.module.js.map +1 -1
  216. package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts +9 -0
  217. package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts.map +1 -0
  218. package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.js +10 -0
  219. package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.js.map +1 -0
  220. package/esm/SubdomainNavBar/useSearchKeyboardShortcut.d.ts +8 -0
  221. package/esm/SubdomainNavBar/useSearchKeyboardShortcut.d.ts.map +1 -0
  222. package/esm/SubdomainNavBar/useSearchKeyboardShortcut.js +52 -0
  223. package/esm/SubdomainNavBar/useSearchKeyboardShortcut.js.map +1 -0
  224. package/esm/SubdomainNavBar/useSearchResults.d.ts +24 -0
  225. package/esm/SubdomainNavBar/useSearchResults.d.ts.map +1 -0
  226. package/esm/SubdomainNavBar/useSearchResults.js +57 -0
  227. package/esm/SubdomainNavBar/useSearchResults.js.map +1 -0
  228. package/esm/SubdomainNavBar/useVisibilityObserver.d.ts +1 -1
  229. package/esm/SubdomainNavBar/useVisibilityObserver.d.ts.map +1 -1
  230. package/esm/SubdomainNavBar/useVisibilityObserver.js +60 -23
  231. package/esm/SubdomainNavBar/useVisibilityObserver.js.map +1 -1
  232. package/esm/Tabs/Tabs.js +3 -2
  233. package/esm/Tabs/Tabs.js.map +1 -1
  234. package/esm/Tabs/Tabs.module.js +12 -11
  235. package/esm/Testimonial/Testimonial.d.ts +1 -1
  236. package/esm/Testimonial/Testimonial.d.ts.map +1 -1
  237. package/esm/Testimonial/Testimonial.js +1 -1
  238. package/esm/Testimonial/Testimonial.js.map +1 -1
  239. package/esm/Testimonial/Testimonial.module.js +8 -7
  240. package/esm/Text/Text.d.ts +1 -1
  241. package/esm/Text/Text.d.ts.map +1 -1
  242. package/esm/Text/Text.js +1 -1
  243. package/esm/Text/Text.js.map +1 -1
  244. package/esm/Text/Text.module.js +4 -3
  245. package/esm/TextCursorAnimation/TextCursorAnimation.d.ts +1 -1
  246. package/esm/TextCursorAnimation/TextCursorAnimation.d.ts.map +1 -1
  247. package/esm/TextCursorAnimation/TextCursorAnimation.js +1 -1
  248. package/esm/TextCursorAnimation/TextCursorAnimation.js.map +1 -1
  249. package/esm/TextCursorAnimation/TextCursorAnimation.module.js +10 -9
  250. package/esm/ThemeProvider/ThemeProvider.d.ts +1 -1
  251. package/esm/ThemeProvider/ThemeProvider.d.ts.map +1 -1
  252. package/esm/ThemeProvider/ThemeProvider.js +4 -4
  253. package/esm/ThemeProvider/ThemeProvider.js.map +1 -1
  254. package/esm/ThemeProvider/useTheme.js.map +1 -1
  255. package/esm/Tiles/Tiles.js +2 -2
  256. package/esm/Tiles/Tiles.js.map +1 -1
  257. package/esm/Tiles/Tiles.module.js +4 -3
  258. package/esm/Timeline/Timeline.d.ts +3 -3
  259. package/esm/Timeline/Timeline.d.ts.map +1 -1
  260. package/esm/Timeline/Timeline.js +2 -2
  261. package/esm/Timeline/Timeline.js.map +1 -1
  262. package/esm/Timeline/Timeline.module.js +5 -4
  263. package/esm/Token/Token.js +1 -1
  264. package/esm/Token/Token.js.map +1 -1
  265. package/esm/Token/Token.module.js +6 -5
  266. package/esm/Tooltip/Tooltip.js +2 -2
  267. package/esm/Tooltip/Tooltip.js.map +1 -1
  268. package/esm/Tooltip/Tooltip.module.js +4 -3
  269. package/esm/VideoPlayer/VideoPlayer.d.ts +2 -2
  270. package/esm/VideoPlayer/VideoPlayer.js +2 -2
  271. package/esm/VideoPlayer/VideoPlayer.js.map +1 -1
  272. package/esm/VideoPlayer/VideoPlayer.module.js +29 -28
  273. package/esm/VideoPlayer/components/CCButton/CCButton.d.ts +2 -2
  274. package/esm/VideoPlayer/components/CCButton/CCButton.d.ts.map +1 -1
  275. package/esm/VideoPlayer/components/CCButton/CCButton.js +1 -1
  276. package/esm/VideoPlayer/components/CCButton/CCButton.js.map +1 -1
  277. package/esm/VideoPlayer/components/Captions/Captions.d.ts +2 -2
  278. package/esm/VideoPlayer/components/Captions/Captions.d.ts.map +1 -1
  279. package/esm/VideoPlayer/components/Captions/Captions.js +1 -1
  280. package/esm/VideoPlayer/components/Captions/Captions.js.map +1 -1
  281. package/esm/VideoPlayer/components/Captions/Captions.module.js +5 -4
  282. package/esm/VideoPlayer/components/ControlsBar/ControlsBar.d.ts +2 -2
  283. package/esm/VideoPlayer/components/ControlsBar/ControlsBar.d.ts.map +1 -1
  284. package/esm/VideoPlayer/components/ControlsBar/ControlsBar.js +1 -1
  285. package/esm/VideoPlayer/components/ControlsBar/ControlsBar.js.map +1 -1
  286. package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts +2 -2
  287. package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts.map +1 -1
  288. package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.js +2 -1
  289. package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.js.map +1 -1
  290. package/esm/VideoPlayer/components/IconControl/IconControl.d.ts +2 -2
  291. package/esm/VideoPlayer/components/IconControl/IconControl.d.ts.map +1 -1
  292. package/esm/VideoPlayer/components/IconControl/IconControl.js +1 -1
  293. package/esm/VideoPlayer/components/IconControl/IconControl.js.map +1 -1
  294. package/esm/VideoPlayer/components/MuteButton/MuteButton.d.ts +2 -2
  295. package/esm/VideoPlayer/components/MuteButton/MuteButton.d.ts.map +1 -1
  296. package/esm/VideoPlayer/components/MuteButton/MuteButton.js +2 -1
  297. package/esm/VideoPlayer/components/MuteButton/MuteButton.js.map +1 -1
  298. package/esm/VideoPlayer/components/PauseIcon/PauseIcon.d.ts +2 -2
  299. package/esm/VideoPlayer/components/PauseIcon/PauseIcon.d.ts.map +1 -1
  300. package/esm/VideoPlayer/components/PauseIcon/PauseIcon.js.map +1 -1
  301. package/esm/VideoPlayer/components/PlayIcon/PlayIcon.d.ts +2 -2
  302. package/esm/VideoPlayer/components/PlayIcon/PlayIcon.d.ts.map +1 -1
  303. package/esm/VideoPlayer/components/PlayIcon/PlayIcon.js.map +1 -1
  304. package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts +2 -2
  305. package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts.map +1 -1
  306. package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.js.map +1 -1
  307. package/esm/VideoPlayer/components/Range/Range.d.ts +1 -1
  308. package/esm/VideoPlayer/components/Range/Range.d.ts.map +1 -1
  309. package/esm/VideoPlayer/components/Range/Range.js +1 -1
  310. package/esm/VideoPlayer/components/Range/Range.js.map +1 -1
  311. package/esm/VideoPlayer/components/SeekControl/SeekControl.d.ts +2 -2
  312. package/esm/VideoPlayer/components/SeekControl/SeekControl.d.ts.map +1 -1
  313. package/esm/VideoPlayer/components/SeekControl/SeekControl.js +1 -1
  314. package/esm/VideoPlayer/components/SeekControl/SeekControl.js.map +1 -1
  315. package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts +2 -2
  316. package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts.map +1 -1
  317. package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.js +3 -2
  318. package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.js.map +1 -1
  319. package/esm/VideoPlayer/components/VolumeControl/VolumeControl.d.ts +2 -1
  320. package/esm/VideoPlayer/components/VolumeControl/VolumeControl.d.ts.map +1 -1
  321. package/esm/VideoPlayer/components/VolumeControl/VolumeControl.js.map +1 -1
  322. package/esm/VideoPlayer/components/VolumeControl/VolumeControl.module.js +3 -2
  323. package/esm/VideoPlayer/hooks/useIsElementFullScreen.js.map +1 -1
  324. package/esm/VideoPlayer/hooks/useVideo.js.map +1 -1
  325. package/esm/VideoPlayer/hooks/useVideoResizeObserver.js.map +1 -1
  326. package/esm/animation/Animate/Animate.d.ts +1 -1
  327. package/esm/animation/Animate/Animate.d.ts.map +1 -1
  328. package/esm/animation/Animate/Animate.js +1 -1
  329. package/esm/animation/Animate/Animate.js.map +1 -1
  330. package/esm/animation/Animation.module.js +4 -3
  331. package/esm/animation/AnimationProvider/AnimationProvider.d.ts +1 -1
  332. package/esm/animation/AnimationProvider/AnimationProvider.d.ts.map +1 -1
  333. package/esm/animation/AnimationProvider/AnimationProvider.js.map +1 -1
  334. package/esm/animation/TextRevealAnimation/TextRevealAnimation.js +1 -1
  335. package/esm/animation/TextRevealAnimation/TextRevealAnimation.js.map +1 -1
  336. package/esm/animation/TextRevealAnimation/TextRevealAnimation.module.js +5 -4
  337. package/esm/animation/TextRevealAnimation/useTextRevealAnimationLines.js.map +1 -1
  338. package/esm/animation/useAnimation.js.map +1 -1
  339. package/esm/component-helpers/shared.module.js +3 -2
  340. package/esm/component-helpers.d.ts +2 -2
  341. package/esm/component-helpers.d.ts.map +1 -1
  342. package/esm/constants.js.map +1 -1
  343. package/esm/css/stylesheets.js +1 -1
  344. package/esm/findElementInChildren.js.map +1 -1
  345. package/esm/forms/Checkbox/Checkbox.js +2 -2
  346. package/esm/forms/Checkbox/Checkbox.js.map +1 -1
  347. package/esm/forms/Checkbox/Checkbox.module.js +4 -3
  348. package/esm/forms/ControlGroup/ControlGroup.js +3 -2
  349. package/esm/forms/ControlGroup/ControlGroup.js.map +1 -1
  350. package/esm/forms/ControlGroup/ControlGroup.module.js +7 -6
  351. package/esm/forms/FormControl/FormControl.d.ts +5 -5
  352. package/esm/forms/FormControl/FormControl.d.ts.map +1 -1
  353. package/esm/forms/FormControl/FormControl.js +4 -3
  354. package/esm/forms/FormControl/FormControl.js.map +1 -1
  355. package/esm/forms/FormControl/FormControl.module.js +5 -4
  356. package/esm/forms/Radio/Radio.js +1 -1
  357. package/esm/forms/Radio/Radio.js.map +1 -1
  358. package/esm/forms/Radio/Radio.module.js +4 -3
  359. package/esm/forms/Select/Select.d.ts +2 -2
  360. package/esm/forms/Select/Select.js +1 -1
  361. package/esm/forms/Select/Select.js.map +1 -1
  362. package/esm/forms/Select/Select.module.js +4 -3
  363. package/esm/forms/TextInput/TextInput.js +1 -1
  364. package/esm/forms/TextInput/TextInput.js.map +1 -1
  365. package/esm/forms/TextInput/TextInput.module.js +5 -4
  366. package/esm/forms/Textarea/Textarea.js +1 -1
  367. package/esm/forms/Textarea/Textarea.js.map +1 -1
  368. package/esm/forms/Textarea/Textarea.module.js +4 -3
  369. package/esm/hooks/useAnchoredPosition.js +7 -4
  370. package/esm/hooks/useAnchoredPosition.js.map +1 -1
  371. package/esm/hooks/useCursorAnimation.js +4 -2
  372. package/esm/hooks/useCursorAnimation.js.map +1 -1
  373. package/esm/hooks/useFocusTrap.js.map +1 -1
  374. package/esm/hooks/useId.js.map +1 -1
  375. package/esm/hooks/useKeyboardEscape.js.map +1 -1
  376. package/esm/hooks/useOnClickOutside.js.map +1 -1
  377. package/esm/hooks/useReducedMotion.js +1 -1
  378. package/esm/hooks/useReducedMotion.js.map +1 -1
  379. package/esm/hooks/useRef.js.map +1 -1
  380. package/esm/hooks/useResizeObserver.js.map +1 -1
  381. package/esm/hooks/useTabs.js +1 -1
  382. package/esm/hooks/useTabs.js.map +1 -1
  383. package/esm/hooks/useWindowSize.js +7 -7
  384. package/esm/hooks/useWindowSize.js.map +1 -1
  385. package/esm/list/ListItem/ListItem.js +4 -2
  386. package/esm/list/ListItem/ListItem.js.map +1 -1
  387. package/esm/list/ListItem/ListItem.module.js +5 -4
  388. package/esm/list/OrderedList/OrderedList.d.ts +2 -2
  389. package/esm/list/OrderedList/OrderedList.d.ts.map +1 -1
  390. package/esm/list/OrderedList/OrderedList.js +1 -1
  391. package/esm/list/OrderedList/OrderedList.js.map +1 -1
  392. package/esm/list/OrderedList/OrderedList.module.js +3 -2
  393. package/esm/list/UnorderedList/UnorderedList.d.ts +2 -2
  394. package/esm/list/UnorderedList/UnorderedList.d.ts.map +1 -1
  395. package/esm/list/UnorderedList/UnorderedList.js +1 -1
  396. package/esm/list/UnorderedList/UnorderedList.js.map +1 -1
  397. package/esm/list/list-shared.module.js +3 -2
  398. package/esm/list/listContext.js.map +1 -1
  399. package/esm/node_modules/@primer/octicons-react/dist/icons/AlertFillIcon.js +28 -0
  400. package/esm/node_modules/@primer/octicons-react/dist/icons/AlertFillIcon.js.map +1 -0
  401. package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpIcon.js +20 -0
  402. package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpIcon.js.map +1 -0
  403. package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpRightIcon.js +20 -0
  404. package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpRightIcon.js.map +1 -0
  405. package/esm/node_modules/@primer/octicons-react/dist/icons/CheckCircleFillIcon.js +28 -0
  406. package/esm/node_modules/@primer/octicons-react/dist/icons/CheckCircleFillIcon.js.map +1 -0
  407. package/esm/node_modules/@primer/octicons-react/dist/icons/CheckIcon.js +20 -0
  408. package/esm/node_modules/@primer/octicons-react/dist/icons/CheckIcon.js.map +1 -0
  409. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronDownIcon.js +28 -0
  410. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronDownIcon.js.map +1 -0
  411. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronLeftIcon.js +28 -0
  412. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronLeftIcon.js.map +1 -0
  413. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronRightIcon.js +28 -0
  414. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronRightIcon.js.map +1 -0
  415. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronUpIcon.js +28 -0
  416. package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronUpIcon.js.map +1 -0
  417. package/esm/node_modules/@primer/octicons-react/dist/icons/CopilotIcon.js +33 -0
  418. package/esm/node_modules/@primer/octicons-react/dist/icons/CopilotIcon.js.map +1 -0
  419. package/esm/node_modules/@primer/octicons-react/dist/icons/DashIcon.js +20 -0
  420. package/esm/node_modules/@primer/octicons-react/dist/icons/DashIcon.js.map +1 -0
  421. package/esm/node_modules/@primer/octicons-react/dist/icons/LinkExternalIcon.js +20 -0
  422. package/esm/node_modules/@primer/octicons-react/dist/icons/LinkExternalIcon.js.map +1 -0
  423. package/esm/node_modules/@primer/octicons-react/dist/icons/MarkGithubIcon.js +20 -0
  424. package/esm/node_modules/@primer/octicons-react/dist/icons/MarkGithubIcon.js.map +1 -0
  425. package/esm/node_modules/@primer/octicons-react/dist/icons/MuteIcon.js +20 -0
  426. package/esm/node_modules/@primer/octicons-react/dist/icons/MuteIcon.js.map +1 -0
  427. package/esm/node_modules/@primer/octicons-react/dist/icons/PaperAirplaneIcon.js +20 -0
  428. package/esm/node_modules/@primer/octicons-react/dist/icons/PaperAirplaneIcon.js.map +1 -0
  429. package/esm/node_modules/@primer/octicons-react/dist/icons/PauseIcon.js +20 -0
  430. package/esm/node_modules/@primer/octicons-react/dist/icons/PauseIcon.js.map +1 -0
  431. package/esm/node_modules/@primer/octicons-react/dist/icons/PlayIcon.js +20 -0
  432. package/esm/node_modules/@primer/octicons-react/dist/icons/PlayIcon.js.map +1 -0
  433. package/esm/node_modules/@primer/octicons-react/dist/icons/ReplyIcon.js +20 -0
  434. package/esm/node_modules/@primer/octicons-react/dist/icons/ReplyIcon.js.map +1 -0
  435. package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenFullIcon.js +20 -0
  436. package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenFullIcon.js.map +1 -0
  437. package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenNormalIcon.js +20 -0
  438. package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenNormalIcon.js.map +1 -0
  439. package/esm/node_modules/@primer/octicons-react/dist/icons/SearchIcon.js +20 -0
  440. package/esm/node_modules/@primer/octicons-react/dist/icons/SearchIcon.js.map +1 -0
  441. package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleDownIcon.js +20 -0
  442. package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleDownIcon.js.map +1 -0
  443. package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleUpIcon.js +20 -0
  444. package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleUpIcon.js.map +1 -0
  445. package/esm/node_modules/@primer/octicons-react/dist/icons/UnmuteIcon.js +20 -0
  446. package/esm/node_modules/@primer/octicons-react/dist/icons/UnmuteIcon.js.map +1 -0
  447. package/esm/node_modules/@primer/octicons-react/dist/icons/XIcon.js +28 -0
  448. package/esm/node_modules/@primer/octicons-react/dist/icons/XIcon.js.map +1 -0
  449. package/esm/node_modules/@primer/octicons-react/dist/renderOcticon-DuMQdmQC.js +132 -0
  450. package/esm/node_modules/@primer/octicons-react/dist/renderOcticon-DuMQdmQC.js.map +1 -0
  451. package/esm/node_modules/clsx/dist/clsx.js +1 -1
  452. package/esm/node_modules/clsx/dist/clsx.js.map +1 -1
  453. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-BGj0AiDW.css +1 -0
  454. package/esm/river/River/River.js +2 -2
  455. package/esm/river/River/River.js.map +1 -1
  456. package/esm/river/RiverAccordion/RiverAccordion.d.ts +4 -4
  457. package/esm/river/RiverAccordion/RiverAccordion.js +3 -2
  458. package/esm/river/RiverAccordion/RiverAccordion.js.map +1 -1
  459. package/esm/river/RiverAccordion/RiverAccordion.module.js +16 -15
  460. package/esm/river/RiverBreakout/RiverBreakout.d.ts +1 -1
  461. package/esm/river/RiverBreakout/RiverBreakout.js +1 -1
  462. package/esm/river/RiverBreakout/RiverBreakout.js.map +1 -1
  463. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.d.ts +5 -5
  464. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js +2 -2
  465. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js.map +1 -1
  466. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module.js +31 -30
  467. package/esm/river/RiverStoryScroll/RiverStoryScroll.d.ts +1 -1
  468. package/esm/river/RiverStoryScroll/RiverStoryScroll.d.ts.map +1 -1
  469. package/esm/river/RiverStoryScroll/RiverStoryScroll.js +5 -3
  470. package/esm/river/RiverStoryScroll/RiverStoryScroll.js.map +1 -1
  471. package/esm/river/RiverStoryScroll/RiverStoryScroll.module.js +8 -7
  472. package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts +2 -2
  473. package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts.map +1 -1
  474. package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.js.map +1 -1
  475. package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts +1 -1
  476. package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts.map +1 -1
  477. package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.js +1 -1
  478. package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.js.map +1 -1
  479. package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts +1 -1
  480. package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts.map +1 -1
  481. package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.js +1 -1
  482. package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.js.map +1 -1
  483. package/esm/river/river-shared.module.js +13 -12
  484. package/esm/utils/getTextContent.js.map +1 -1
  485. package/esm/utils/isFragmentElement.js.map +1 -1
  486. package/lib/Accordion/Accordion.d.ts +2 -2
  487. package/lib/ActionMenu/ActionMenu.d.ts +2 -2
  488. package/lib/AnchorNav/AnchorNav.d.ts +4 -4
  489. package/lib/Bento/Bento.d.ts +4 -4
  490. package/lib/Box/Box.d.ts +1 -1
  491. package/lib/CTABanner/CTABanner.d.ts +1 -1
  492. package/lib/Card/Card.d.ts +2 -2
  493. package/lib/ComparisonTable/ComparisonTable.d.ts +3 -3
  494. package/lib/ExpandableArrow/ExpandableArrow.d.ts +2 -1
  495. package/lib/FAQ/FAQ.d.ts +2 -2
  496. package/lib/FAQ/FAQGroup.d.ts +2 -2
  497. package/lib/Footnotes/Footnotes.d.ts +2 -2
  498. package/lib/FrostedGlassVFX/FrostedGlassVFX.d.ts +1 -1
  499. package/lib/Grid/Grid.d.ts +2 -2
  500. package/lib/IDE/IDE.d.ts +1 -1
  501. package/lib/Icon/Icon.d.ts +2 -2
  502. package/lib/Image/Image.d.ts +1 -1
  503. package/lib/Link/Link.d.ts +1 -1
  504. package/lib/LogoSuite/LogoSuite.d.ts +1 -1
  505. package/lib/MediaPlaylist/MediaPlaylist.d.ts +4 -4
  506. package/lib/MinimalFooter/MinimalFooter.d.ts +3 -3
  507. package/lib/Pagination/Pagination.d.ts +1 -1
  508. package/lib/Pillar/Pillar.d.ts +2 -2
  509. package/lib/PricingOptions/PricingOptions.d.ts +1 -1
  510. package/lib/SectionIntroStacked/SectionIntroStacked.d.ts +3 -3
  511. package/lib/SubNav/SubNav.d.ts +4 -4
  512. package/lib/SubdomainNavBar/NavigationVisbilityObserver.d.ts +3 -1
  513. package/lib/SubdomainNavBar/SubdomainNavBar.d.ts +157 -20
  514. package/lib/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts +8 -0
  515. package/lib/SubdomainNavBar/useSearchKeyboardShortcut.d.ts +7 -0
  516. package/lib/SubdomainNavBar/useSearchResults.d.ts +23 -0
  517. package/lib/SubdomainNavBar/useVisibilityObserver.d.ts +1 -1
  518. package/lib/Testimonial/Testimonial.d.ts +1 -1
  519. package/lib/Text/Text.d.ts +1 -1
  520. package/lib/TextCursorAnimation/TextCursorAnimation.d.ts +1 -1
  521. package/lib/ThemeProvider/ThemeProvider.d.ts +1 -1
  522. package/lib/Timeline/Timeline.d.ts +3 -3
  523. package/lib/VideoPlayer/VideoPlayer.d.ts +2 -2
  524. package/lib/VideoPlayer/components/CCButton/CCButton.d.ts +2 -2
  525. package/lib/VideoPlayer/components/Captions/Captions.d.ts +2 -2
  526. package/lib/VideoPlayer/components/ControlsBar/ControlsBar.d.ts +2 -2
  527. package/lib/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts +2 -2
  528. package/lib/VideoPlayer/components/IconControl/IconControl.d.ts +2 -2
  529. package/lib/VideoPlayer/components/MuteButton/MuteButton.d.ts +2 -2
  530. package/lib/VideoPlayer/components/PauseIcon/PauseIcon.d.ts +2 -2
  531. package/lib/VideoPlayer/components/PlayIcon/PlayIcon.d.ts +2 -2
  532. package/lib/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts +2 -2
  533. package/lib/VideoPlayer/components/Range/Range.d.ts +1 -1
  534. package/lib/VideoPlayer/components/SeekControl/SeekControl.d.ts +2 -2
  535. package/lib/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts +2 -2
  536. package/lib/VideoPlayer/components/VolumeControl/VolumeControl.d.ts +2 -1
  537. package/lib/animation/Animate/Animate.d.ts +1 -1
  538. package/lib/animation/AnimationProvider/AnimationProvider.d.ts +1 -1
  539. package/lib/component-helpers.d.ts +2 -2
  540. package/lib/css/main.css +1390 -1056
  541. package/lib/design-tokens/css/tokens/base/colors/color-scales-with-modes.css +1 -1
  542. package/lib/design-tokens/css/tokens/base/colors/light.css +1 -1
  543. package/lib/design-tokens/css/tokens/base/size/size.css +1 -1
  544. package/lib/design-tokens/css/tokens/base/typography/typography.css +1 -1
  545. package/lib/design-tokens/css/tokens/functional/animation/base.css +1 -1
  546. package/lib/design-tokens/css/tokens/functional/colors/global-with-modes.css +1 -1
  547. package/lib/design-tokens/css/tokens/functional/colors/global.css +1 -1
  548. package/lib/design-tokens/css/tokens/functional/components/accordion/colors-with-modes.css +1 -1
  549. package/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes.css +1 -1
  550. package/lib/design-tokens/css/tokens/functional/components/anchor-nav/colors-with-modes.css +1 -1
  551. package/lib/design-tokens/css/tokens/functional/components/bento/base.css +1 -1
  552. package/lib/design-tokens/css/tokens/functional/components/blinking-cursor/colors-with-modes.css +1 -1
  553. package/lib/design-tokens/css/tokens/functional/components/breadcrumbs/colors-with-modes.css +1 -1
  554. package/lib/design-tokens/css/tokens/functional/components/button/colors-with-modes.css +1 -1
  555. package/lib/design-tokens/css/tokens/functional/components/card/base.css +1 -1
  556. package/lib/design-tokens/css/tokens/functional/components/card/colors-with-modes.css +1 -1
  557. package/lib/design-tokens/css/tokens/functional/components/card/colors.css +1 -1
  558. package/lib/design-tokens/css/tokens/functional/components/comparison-table/colors-with-modes.css +1 -1
  559. package/lib/design-tokens/css/tokens/functional/components/comparison-table/comparison-table.css +1 -1
  560. package/lib/design-tokens/css/tokens/functional/components/control/colors-with-modes.css +1 -1
  561. package/lib/design-tokens/css/tokens/functional/components/cta-banner/colors-with-modes.css +1 -1
  562. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/colors-with-modes.css +1 -1
  563. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/eyebrow-banner.css +1 -1
  564. package/lib/design-tokens/css/tokens/functional/components/faq/base.css +1 -1
  565. package/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css +1 -1
  566. package/lib/design-tokens/css/tokens/functional/components/faq/colors.css +1 -1
  567. package/lib/design-tokens/css/tokens/functional/components/faq/faq.css +1 -1
  568. package/lib/design-tokens/css/tokens/functional/components/footer/base.css +1 -1
  569. package/lib/design-tokens/css/tokens/functional/components/footer/colors-with-modes.css +1 -1
  570. package/lib/design-tokens/css/tokens/functional/components/footer/colors.css +1 -1
  571. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css +1 -1
  572. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css +1 -1
  573. package/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css +1 -1
  574. package/lib/design-tokens/css/tokens/functional/components/grid/colors.css +1 -1
  575. package/lib/design-tokens/css/tokens/functional/components/grid/grid.css +1 -1
  576. package/lib/design-tokens/css/tokens/functional/components/hero/base.css +1 -1
  577. package/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css +1 -1
  578. package/lib/design-tokens/css/tokens/functional/components/icon/colors.css +1 -1
  579. package/lib/design-tokens/css/tokens/functional/components/ide/base.css +1 -1
  580. package/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css +1 -1
  581. package/lib/design-tokens/css/tokens/functional/components/image/base.css +1 -1
  582. package/lib/design-tokens/css/tokens/functional/components/inline-code/colors-with-modes.css +1 -1
  583. package/lib/design-tokens/css/tokens/functional/components/inline-code/colors.css +1 -1
  584. package/lib/design-tokens/css/tokens/functional/components/inline-link/base.css +1 -1
  585. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors-with-modes.css +1 -1
  586. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors.css +1 -1
  587. package/lib/design-tokens/css/tokens/functional/components/label/colors-with-modes.css +1 -1
  588. package/lib/design-tokens/css/tokens/functional/components/label/colors.css +1 -1
  589. package/lib/design-tokens/css/tokens/functional/components/link/colors-with-modes.css +1 -1
  590. package/lib/design-tokens/css/tokens/functional/components/link/colors.css +1 -1
  591. package/lib/design-tokens/css/tokens/functional/components/logosuite/base.css +1 -1
  592. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors-with-modes.css +1 -1
  593. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors.css +1 -1
  594. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors-with-modes.css +1 -1
  595. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors.css +1 -1
  596. package/lib/design-tokens/css/tokens/functional/components/nav-list/colors-with-modes.css +1 -1
  597. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css +1 -1
  598. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors.css +1 -1
  599. package/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css +1 -1
  600. package/lib/design-tokens/css/tokens/functional/components/prose/base.css +1 -1
  601. package/lib/design-tokens/css/tokens/functional/components/prose/colors-with-modes.css +1 -1
  602. package/lib/design-tokens/css/tokens/functional/components/river/base.css +1 -1
  603. package/lib/design-tokens/css/tokens/functional/components/river/river.css +1 -1
  604. package/lib/design-tokens/css/tokens/functional/components/river-story-scroll/colors-with-modes.css +1 -1
  605. package/lib/design-tokens/css/tokens/functional/components/section/section.css +1 -1
  606. package/lib/design-tokens/css/tokens/functional/components/statistic/base.css +1 -1
  607. package/lib/design-tokens/css/tokens/functional/components/sub-nav/base.css +1 -1
  608. package/lib/design-tokens/css/tokens/functional/components/sub-nav/colors-with-modes.css +1 -1
  609. package/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes.css +7 -1
  610. package/lib/design-tokens/css/tokens/functional/components/tabs/base.css +1 -1
  611. package/lib/design-tokens/css/tokens/functional/components/tabs/colors-with-modes.css +1 -1
  612. package/lib/design-tokens/css/tokens/functional/components/tabs/colors.css +1 -1
  613. package/lib/design-tokens/css/tokens/functional/components/testimonial/base.css +1 -1
  614. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors-with-modes.css +1 -1
  615. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors.css +1 -1
  616. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/base.css +1 -1
  617. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors-with-modes.css +1 -1
  618. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors.css +1 -1
  619. package/lib/design-tokens/css/tokens/functional/components/tiles/colors-with-modes.css +1 -1
  620. package/lib/design-tokens/css/tokens/functional/components/timeline/base.css +1 -1
  621. package/lib/design-tokens/css/tokens/functional/components/timeline/colors-with-modes.css +1 -1
  622. package/lib/design-tokens/css/tokens/functional/components/timeline/colors.css +1 -1
  623. package/lib/design-tokens/css/tokens/functional/components/token/colors-with-modes.css +1 -1
  624. package/lib/design-tokens/css/tokens/functional/components/token/colors.css +1 -1
  625. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css +1 -1
  626. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors.css +1 -1
  627. package/lib/design-tokens/css/tokens/functional/components/video-player/base.css +1 -1
  628. package/lib/design-tokens/css/tokens/functional/components/video-player/colors-with-modes.css +1 -1
  629. package/lib/design-tokens/css/tokens/functional/size/border.css +1 -1
  630. package/lib/design-tokens/css/tokens/functional/size/breakpoints.css +1 -1
  631. package/lib/design-tokens/css/tokens/functional/size/size-coarse.css +1 -1
  632. package/lib/design-tokens/css/tokens/functional/size/size-fine.css +1 -1
  633. package/lib/design-tokens/css/tokens/functional/size/size.css +1 -1
  634. package/lib/design-tokens/css/tokens/functional/size/viewport.css +1 -1
  635. package/lib/design-tokens/css/tokens/functional/typography/typography-responsive.css +1 -1
  636. package/lib/design-tokens/css/tokens/functional/typography/typography.css +1 -1
  637. package/lib/design-tokens/js/module/tokens/base/colors/light.js +1 -1
  638. package/lib/design-tokens/js/module/tokens/base/size/size.js +1 -1
  639. package/lib/design-tokens/js/module/tokens/base/typography/typography.js +1 -1
  640. package/lib/design-tokens/js/module/tokens/functional/animation/base.js +1 -1
  641. package/lib/design-tokens/js/module/tokens/functional/colors/global.js +1 -1
  642. package/lib/design-tokens/js/module/tokens/functional/components/bento/base.js +1 -1
  643. package/lib/design-tokens/js/module/tokens/functional/components/card/base.js +1 -1
  644. package/lib/design-tokens/js/module/tokens/functional/components/card/colors.js +1 -1
  645. package/lib/design-tokens/js/module/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  646. package/lib/design-tokens/js/module/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  647. package/lib/design-tokens/js/module/tokens/functional/components/faq/base.js +1 -1
  648. package/lib/design-tokens/js/module/tokens/functional/components/faq/colors.js +1 -1
  649. package/lib/design-tokens/js/module/tokens/functional/components/faq/faq.js +1 -1
  650. package/lib/design-tokens/js/module/tokens/functional/components/footer/base.js +1 -1
  651. package/lib/design-tokens/js/module/tokens/functional/components/footer/colors.js +1 -1
  652. package/lib/design-tokens/js/module/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  653. package/lib/design-tokens/js/module/tokens/functional/components/grid/colors.js +1 -1
  654. package/lib/design-tokens/js/module/tokens/functional/components/grid/grid.js +1 -1
  655. package/lib/design-tokens/js/module/tokens/functional/components/hero/base.js +1 -1
  656. package/lib/design-tokens/js/module/tokens/functional/components/icon/colors.js +1 -1
  657. package/lib/design-tokens/js/module/tokens/functional/components/ide/base.js +1 -1
  658. package/lib/design-tokens/js/module/tokens/functional/components/image/base.js +1 -1
  659. package/lib/design-tokens/js/module/tokens/functional/components/inline-code/colors.js +1 -1
  660. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/base.js +1 -1
  661. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/colors.js +1 -1
  662. package/lib/design-tokens/js/module/tokens/functional/components/label/colors.js +1 -1
  663. package/lib/design-tokens/js/module/tokens/functional/components/link/colors.js +1 -1
  664. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/base.js +1 -1
  665. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/colors.js +1 -1
  666. package/lib/design-tokens/js/module/tokens/functional/components/media-playlist/colors.js +1 -1
  667. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/colors.js +1 -1
  668. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  669. package/lib/design-tokens/js/module/tokens/functional/components/prose/base.js +1 -1
  670. package/lib/design-tokens/js/module/tokens/functional/components/river/base.js +1 -1
  671. package/lib/design-tokens/js/module/tokens/functional/components/river/river.js +1 -1
  672. package/lib/design-tokens/js/module/tokens/functional/components/section/section.js +1 -1
  673. package/lib/design-tokens/js/module/tokens/functional/components/statistic/base.js +1 -1
  674. package/lib/design-tokens/js/module/tokens/functional/components/sub-nav/base.js +1 -1
  675. package/lib/design-tokens/js/module/tokens/functional/components/tabs/base.js +1 -1
  676. package/lib/design-tokens/js/module/tokens/functional/components/tabs/colors.js +1 -1
  677. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/base.js +1 -1
  678. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/colors.js +1 -1
  679. package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/base.js +1 -1
  680. package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  681. package/lib/design-tokens/js/module/tokens/functional/components/timeline/base.js +1 -1
  682. package/lib/design-tokens/js/module/tokens/functional/components/timeline/colors.js +1 -1
  683. package/lib/design-tokens/js/module/tokens/functional/components/token/colors.js +1 -1
  684. package/lib/design-tokens/js/module/tokens/functional/components/tooltip/colors.js +1 -1
  685. package/lib/design-tokens/js/module/tokens/functional/components/video-player/base.js +1 -1
  686. package/lib/design-tokens/js/module/tokens/functional/size/border.js +1 -1
  687. package/lib/design-tokens/js/module/tokens/functional/size/breakpoints.js +1 -1
  688. package/lib/design-tokens/js/module/tokens/functional/size/size-coarse.js +1 -1
  689. package/lib/design-tokens/js/module/tokens/functional/size/size-fine.js +1 -1
  690. package/lib/design-tokens/js/module/tokens/functional/size/size.js +1 -1
  691. package/lib/design-tokens/js/module/tokens/functional/size/viewport.js +1 -1
  692. package/lib/design-tokens/js/module/tokens/functional/typography/typography-responsive.js +1 -1
  693. package/lib/design-tokens/js/module/tokens/functional/typography/typography.js +1 -1
  694. package/lib/design-tokens/js/tokens/base/colors/light.js +1 -1
  695. package/lib/design-tokens/js/tokens/base/size/size.js +1 -1
  696. package/lib/design-tokens/js/tokens/base/typography/typography.js +1 -1
  697. package/lib/design-tokens/js/tokens/functional/animation/base.js +1 -1
  698. package/lib/design-tokens/js/tokens/functional/colors/global.js +1 -1
  699. package/lib/design-tokens/js/tokens/functional/components/bento/base.js +1 -1
  700. package/lib/design-tokens/js/tokens/functional/components/card/base.js +1 -1
  701. package/lib/design-tokens/js/tokens/functional/components/card/colors.js +1 -1
  702. package/lib/design-tokens/js/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  703. package/lib/design-tokens/js/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  704. package/lib/design-tokens/js/tokens/functional/components/faq/base.js +1 -1
  705. package/lib/design-tokens/js/tokens/functional/components/faq/colors.js +1 -1
  706. package/lib/design-tokens/js/tokens/functional/components/faq/faq.js +1 -1
  707. package/lib/design-tokens/js/tokens/functional/components/footer/base.js +1 -1
  708. package/lib/design-tokens/js/tokens/functional/components/footer/colors.js +1 -1
  709. package/lib/design-tokens/js/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  710. package/lib/design-tokens/js/tokens/functional/components/grid/colors.js +1 -1
  711. package/lib/design-tokens/js/tokens/functional/components/grid/grid.js +1 -1
  712. package/lib/design-tokens/js/tokens/functional/components/hero/base.js +1 -1
  713. package/lib/design-tokens/js/tokens/functional/components/icon/colors.js +1 -1
  714. package/lib/design-tokens/js/tokens/functional/components/ide/base.js +1 -1
  715. package/lib/design-tokens/js/tokens/functional/components/image/base.js +1 -1
  716. package/lib/design-tokens/js/tokens/functional/components/inline-code/colors.js +1 -1
  717. package/lib/design-tokens/js/tokens/functional/components/inline-link/base.js +1 -1
  718. package/lib/design-tokens/js/tokens/functional/components/inline-link/colors.js +1 -1
  719. package/lib/design-tokens/js/tokens/functional/components/label/colors.js +1 -1
  720. package/lib/design-tokens/js/tokens/functional/components/link/colors.js +1 -1
  721. package/lib/design-tokens/js/tokens/functional/components/logosuite/base.js +1 -1
  722. package/lib/design-tokens/js/tokens/functional/components/logosuite/colors.js +1 -1
  723. package/lib/design-tokens/js/tokens/functional/components/media-playlist/colors.js +1 -1
  724. package/lib/design-tokens/js/tokens/functional/components/pricing-options/colors.js +1 -1
  725. package/lib/design-tokens/js/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  726. package/lib/design-tokens/js/tokens/functional/components/prose/base.js +1 -1
  727. package/lib/design-tokens/js/tokens/functional/components/river/base.js +1 -1
  728. package/lib/design-tokens/js/tokens/functional/components/river/river.js +1 -1
  729. package/lib/design-tokens/js/tokens/functional/components/section/section.js +1 -1
  730. package/lib/design-tokens/js/tokens/functional/components/statistic/base.js +1 -1
  731. package/lib/design-tokens/js/tokens/functional/components/sub-nav/base.js +1 -1
  732. package/lib/design-tokens/js/tokens/functional/components/tabs/base.js +1 -1
  733. package/lib/design-tokens/js/tokens/functional/components/tabs/colors.js +1 -1
  734. package/lib/design-tokens/js/tokens/functional/components/testimonial/base.js +1 -1
  735. package/lib/design-tokens/js/tokens/functional/components/testimonial/colors.js +1 -1
  736. package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/base.js +1 -1
  737. package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  738. package/lib/design-tokens/js/tokens/functional/components/timeline/base.js +1 -1
  739. package/lib/design-tokens/js/tokens/functional/components/timeline/colors.js +1 -1
  740. package/lib/design-tokens/js/tokens/functional/components/token/colors.js +1 -1
  741. package/lib/design-tokens/js/tokens/functional/components/tooltip/colors.js +1 -1
  742. package/lib/design-tokens/js/tokens/functional/components/video-player/base.js +1 -1
  743. package/lib/design-tokens/js/tokens/functional/size/border.js +1 -1
  744. package/lib/design-tokens/js/tokens/functional/size/breakpoints.js +1 -1
  745. package/lib/design-tokens/js/tokens/functional/size/size-coarse.js +1 -1
  746. package/lib/design-tokens/js/tokens/functional/size/size-fine.js +1 -1
  747. package/lib/design-tokens/js/tokens/functional/size/size.js +1 -1
  748. package/lib/design-tokens/js/tokens/functional/size/viewport.js +1 -1
  749. package/lib/design-tokens/js/tokens/functional/typography/typography-responsive.js +1 -1
  750. package/lib/design-tokens/js/tokens/functional/typography/typography.js +1 -1
  751. package/lib/design-tokens/json/colors.json +3 -0
  752. package/lib/design-tokens/scss/tokens/base/colors/light.scss +1 -1
  753. package/lib/design-tokens/scss/tokens/base/size/size.scss +1 -1
  754. package/lib/design-tokens/scss/tokens/base/typography/typography.scss +1 -1
  755. package/lib/design-tokens/scss/tokens/functional/animation/base.scss +1 -1
  756. package/lib/design-tokens/scss/tokens/functional/colors/global.scss +1 -1
  757. package/lib/design-tokens/scss/tokens/functional/components/bento/base.scss +1 -1
  758. package/lib/design-tokens/scss/tokens/functional/components/card/base.scss +1 -1
  759. package/lib/design-tokens/scss/tokens/functional/components/card/colors.scss +1 -1
  760. package/lib/design-tokens/scss/tokens/functional/components/comparison-table/comparison-table.scss +1 -1
  761. package/lib/design-tokens/scss/tokens/functional/components/eyebrow-banner/eyebrow-banner.scss +1 -1
  762. package/lib/design-tokens/scss/tokens/functional/components/faq/base.scss +1 -1
  763. package/lib/design-tokens/scss/tokens/functional/components/faq/colors.scss +1 -1
  764. package/lib/design-tokens/scss/tokens/functional/components/faq/faq.scss +1 -1
  765. package/lib/design-tokens/scss/tokens/functional/components/footer/base.scss +1 -1
  766. package/lib/design-tokens/scss/tokens/functional/components/footer/colors.scss +1 -1
  767. package/lib/design-tokens/scss/tokens/functional/components/frosted-glass-vfx/base.scss +1 -1
  768. package/lib/design-tokens/scss/tokens/functional/components/grid/colors.scss +1 -1
  769. package/lib/design-tokens/scss/tokens/functional/components/grid/grid.scss +1 -1
  770. package/lib/design-tokens/scss/tokens/functional/components/hero/base.scss +1 -1
  771. package/lib/design-tokens/scss/tokens/functional/components/icon/colors.scss +1 -1
  772. package/lib/design-tokens/scss/tokens/functional/components/ide/base.scss +1 -1
  773. package/lib/design-tokens/scss/tokens/functional/components/image/base.scss +1 -1
  774. package/lib/design-tokens/scss/tokens/functional/components/inline-code/colors.scss +1 -1
  775. package/lib/design-tokens/scss/tokens/functional/components/inline-link/base.scss +1 -1
  776. package/lib/design-tokens/scss/tokens/functional/components/inline-link/colors.scss +1 -1
  777. package/lib/design-tokens/scss/tokens/functional/components/label/colors.scss +1 -1
  778. package/lib/design-tokens/scss/tokens/functional/components/link/colors.scss +1 -1
  779. package/lib/design-tokens/scss/tokens/functional/components/logosuite/base.scss +1 -1
  780. package/lib/design-tokens/scss/tokens/functional/components/logosuite/colors.scss +1 -1
  781. package/lib/design-tokens/scss/tokens/functional/components/media-playlist/colors.scss +1 -1
  782. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/colors.scss +1 -1
  783. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/pricing-options.scss +1 -1
  784. package/lib/design-tokens/scss/tokens/functional/components/prose/base.scss +1 -1
  785. package/lib/design-tokens/scss/tokens/functional/components/river/base.scss +1 -1
  786. package/lib/design-tokens/scss/tokens/functional/components/river/river.scss +1 -1
  787. package/lib/design-tokens/scss/tokens/functional/components/section/section.scss +1 -1
  788. package/lib/design-tokens/scss/tokens/functional/components/statistic/base.scss +1 -1
  789. package/lib/design-tokens/scss/tokens/functional/components/sub-nav/base.scss +1 -1
  790. package/lib/design-tokens/scss/tokens/functional/components/tabs/base.scss +1 -1
  791. package/lib/design-tokens/scss/tokens/functional/components/tabs/colors.scss +1 -1
  792. package/lib/design-tokens/scss/tokens/functional/components/testimonial/base.scss +1 -1
  793. package/lib/design-tokens/scss/tokens/functional/components/testimonial/colors.scss +1 -1
  794. package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/base.scss +1 -1
  795. package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/colors.scss +1 -1
  796. package/lib/design-tokens/scss/tokens/functional/components/timeline/base.scss +1 -1
  797. package/lib/design-tokens/scss/tokens/functional/components/timeline/colors.scss +1 -1
  798. package/lib/design-tokens/scss/tokens/functional/components/token/colors.scss +1 -1
  799. package/lib/design-tokens/scss/tokens/functional/components/tooltip/colors.scss +1 -1
  800. package/lib/design-tokens/scss/tokens/functional/components/video-player/base.scss +1 -1
  801. package/lib/design-tokens/scss/tokens/functional/size/border.scss +1 -1
  802. package/lib/design-tokens/scss/tokens/functional/size/breakpoints.scss +1 -1
  803. package/lib/design-tokens/scss/tokens/functional/size/size-coarse.scss +1 -1
  804. package/lib/design-tokens/scss/tokens/functional/size/size-fine.scss +1 -1
  805. package/lib/design-tokens/scss/tokens/functional/size/size.scss +1 -1
  806. package/lib/design-tokens/scss/tokens/functional/size/viewport.scss +1 -1
  807. package/lib/design-tokens/scss/tokens/functional/typography/typography-responsive.scss +1 -1
  808. package/lib/design-tokens/scss/tokens/functional/typography/typography.scss +1 -1
  809. package/lib/design-tokens/ts/tokens/base/colors/light.d.ts +1 -1
  810. package/lib/design-tokens/ts/tokens/base/colors/light.js +1 -1
  811. package/lib/design-tokens/ts/tokens/base/size/size.d.ts +1 -1
  812. package/lib/design-tokens/ts/tokens/base/size/size.js +1 -1
  813. package/lib/design-tokens/ts/tokens/base/typography/typography.d.ts +1 -1
  814. package/lib/design-tokens/ts/tokens/base/typography/typography.js +1 -1
  815. package/lib/design-tokens/ts/tokens/functional/animation/base.d.ts +1 -1
  816. package/lib/design-tokens/ts/tokens/functional/animation/base.js +1 -1
  817. package/lib/design-tokens/ts/tokens/functional/colors/global.d.ts +1 -1
  818. package/lib/design-tokens/ts/tokens/functional/colors/global.js +1 -1
  819. package/lib/design-tokens/ts/tokens/functional/components/bento/base.d.ts +1 -1
  820. package/lib/design-tokens/ts/tokens/functional/components/bento/base.js +1 -1
  821. package/lib/design-tokens/ts/tokens/functional/components/card/base.d.ts +1 -1
  822. package/lib/design-tokens/ts/tokens/functional/components/card/base.js +1 -1
  823. package/lib/design-tokens/ts/tokens/functional/components/card/colors.d.ts +1 -1
  824. package/lib/design-tokens/ts/tokens/functional/components/card/colors.js +1 -1
  825. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.d.ts +1 -1
  826. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  827. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.d.ts +1 -1
  828. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  829. package/lib/design-tokens/ts/tokens/functional/components/faq/base.d.ts +1 -1
  830. package/lib/design-tokens/ts/tokens/functional/components/faq/base.js +1 -1
  831. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.d.ts +1 -1
  832. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.js +1 -1
  833. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.d.ts +1 -1
  834. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.js +1 -1
  835. package/lib/design-tokens/ts/tokens/functional/components/footer/base.d.ts +1 -1
  836. package/lib/design-tokens/ts/tokens/functional/components/footer/base.js +1 -1
  837. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.d.ts +1 -1
  838. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.js +1 -1
  839. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.d.ts +1 -1
  840. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  841. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.d.ts +1 -1
  842. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.js +1 -1
  843. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.d.ts +1 -1
  844. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.js +1 -1
  845. package/lib/design-tokens/ts/tokens/functional/components/hero/base.d.ts +1 -1
  846. package/lib/design-tokens/ts/tokens/functional/components/hero/base.js +1 -1
  847. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.d.ts +1 -1
  848. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.js +1 -1
  849. package/lib/design-tokens/ts/tokens/functional/components/ide/base.d.ts +1 -1
  850. package/lib/design-tokens/ts/tokens/functional/components/ide/base.js +1 -1
  851. package/lib/design-tokens/ts/tokens/functional/components/image/base.d.ts +1 -1
  852. package/lib/design-tokens/ts/tokens/functional/components/image/base.js +1 -1
  853. package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.d.ts +1 -1
  854. package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.js +1 -1
  855. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.d.ts +1 -1
  856. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.js +1 -1
  857. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.d.ts +1 -1
  858. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.js +1 -1
  859. package/lib/design-tokens/ts/tokens/functional/components/label/colors.d.ts +1 -1
  860. package/lib/design-tokens/ts/tokens/functional/components/label/colors.js +1 -1
  861. package/lib/design-tokens/ts/tokens/functional/components/link/colors.d.ts +1 -1
  862. package/lib/design-tokens/ts/tokens/functional/components/link/colors.js +1 -1
  863. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.d.ts +1 -1
  864. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.js +1 -1
  865. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.d.ts +1 -1
  866. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.js +1 -1
  867. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.d.ts +1 -1
  868. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.js +1 -1
  869. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.d.ts +1 -1
  870. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.js +1 -1
  871. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.d.ts +1 -1
  872. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  873. package/lib/design-tokens/ts/tokens/functional/components/prose/base.d.ts +1 -1
  874. package/lib/design-tokens/ts/tokens/functional/components/prose/base.js +1 -1
  875. package/lib/design-tokens/ts/tokens/functional/components/river/base.d.ts +1 -1
  876. package/lib/design-tokens/ts/tokens/functional/components/river/base.js +1 -1
  877. package/lib/design-tokens/ts/tokens/functional/components/river/river.d.ts +1 -1
  878. package/lib/design-tokens/ts/tokens/functional/components/river/river.js +1 -1
  879. package/lib/design-tokens/ts/tokens/functional/components/section/section.d.ts +1 -1
  880. package/lib/design-tokens/ts/tokens/functional/components/section/section.js +1 -1
  881. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.d.ts +1 -1
  882. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.js +1 -1
  883. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.d.ts +1 -1
  884. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.js +1 -1
  885. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.d.ts +1 -1
  886. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.js +1 -1
  887. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.d.ts +1 -1
  888. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.js +1 -1
  889. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.d.ts +1 -1
  890. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.js +1 -1
  891. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.d.ts +1 -1
  892. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.js +1 -1
  893. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.d.ts +1 -1
  894. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.js +1 -1
  895. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.d.ts +1 -1
  896. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  897. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.d.ts +1 -1
  898. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.js +1 -1
  899. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.d.ts +1 -1
  900. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.js +1 -1
  901. package/lib/design-tokens/ts/tokens/functional/components/token/colors.d.ts +1 -1
  902. package/lib/design-tokens/ts/tokens/functional/components/token/colors.js +1 -1
  903. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.d.ts +1 -1
  904. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.js +1 -1
  905. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.d.ts +1 -1
  906. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.js +1 -1
  907. package/lib/design-tokens/ts/tokens/functional/size/border.d.ts +1 -1
  908. package/lib/design-tokens/ts/tokens/functional/size/border.js +1 -1
  909. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.d.ts +1 -1
  910. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.js +1 -1
  911. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.d.ts +1 -1
  912. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.js +1 -1
  913. package/lib/design-tokens/ts/tokens/functional/size/size-fine.d.ts +1 -1
  914. package/lib/design-tokens/ts/tokens/functional/size/size-fine.js +1 -1
  915. package/lib/design-tokens/ts/tokens/functional/size/size.d.ts +1 -1
  916. package/lib/design-tokens/ts/tokens/functional/size/size.js +1 -1
  917. package/lib/design-tokens/ts/tokens/functional/size/viewport.d.ts +1 -1
  918. package/lib/design-tokens/ts/tokens/functional/size/viewport.js +1 -1
  919. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.d.ts +1 -1
  920. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.js +1 -1
  921. package/lib/design-tokens/ts/tokens/functional/typography/typography.d.ts +1 -1
  922. package/lib/design-tokens/ts/tokens/functional/typography/typography.js +1 -1
  923. package/lib/forms/FormControl/FormControl.d.ts +5 -5
  924. package/lib/forms/Select/Select.d.ts +2 -2
  925. package/lib/index.js +1 -1
  926. package/lib/list/OrderedList/OrderedList.d.ts +2 -2
  927. package/lib/list/UnorderedList/UnorderedList.d.ts +2 -2
  928. package/lib/river/RiverAccordion/RiverAccordion.d.ts +4 -4
  929. package/lib/river/RiverBreakout/RiverBreakout.d.ts +1 -1
  930. package/lib/river/RiverBreakoutTabs/RiverBreakoutTabs.d.ts +5 -5
  931. package/lib/river/RiverStoryScroll/RiverStoryScroll.d.ts +1 -1
  932. package/lib/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts +2 -2
  933. package/lib/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts +1 -1
  934. package/lib/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts +1 -1
  935. package/llms.txt +2 -2
  936. package/package.json +24 -24
  937. package/esm/SubdomainNavBar/SubdomainNavBar.module-Rf4qEDka.css +0 -1
  938. package/esm/node_modules/@primer/octicons-react/dist/index.esm.js +0 -434
  939. package/esm/node_modules/@primer/octicons-react/dist/index.esm.js.map +0 -1
  940. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-ehJCoExh.css +0 -1
@@ -1,16 +1,17 @@
1
- import './FAQ.module-BFCs33mw.css';var e = {
2
- FAQ: "Primer_Brand__FAQ-module__FAQ___fhKat",
1
+ import './FAQ.module-BFCs33mw.css';//#region src/FAQ/FAQ.module.css
2
+ var e = "Primer_Brand__FAQ-module__FAQ___fhKat", t = "Primer_Brand__FAQ-module__FAQ__heading___8eTS4", n = "Primer_Brand__FAQ-module__FAQ__subheading___AVw7m", r = "Primer_Brand__FAQ-module__details__summary___1sVQ4", i = {
3
+ FAQ: e,
3
4
  "FAQ--variant-gridline": "Primer_Brand__FAQ-module__FAQ--variant-gridline___oIn0f",
4
5
  "FAQ__content-wrapper--gridline": "Primer_Brand__FAQ-module__FAQ__content-wrapper--gridline___AWSUU",
5
6
  "FAQ__heading-wrapper--gridline": "Primer_Brand__FAQ-module__FAQ__heading-wrapper--gridline___c4m3j",
6
- FAQ__heading: "Primer_Brand__FAQ-module__FAQ__heading___8eTS4",
7
- FAQ__subheading: "Primer_Brand__FAQ-module__FAQ__subheading___AVw7m",
7
+ FAQ__heading: t,
8
+ FAQ__subheading: n,
8
9
  "FAQ__heading--start": "Primer_Brand__FAQ-module__FAQ__heading--start___frhvf",
9
10
  "FAQ__heading--center": "Primer_Brand__FAQ-module__FAQ__heading--center___dED8A",
10
11
  "FAQ__heading--large": "Primer_Brand__FAQ-module__FAQ__heading--large___v8f53",
11
- details__summary: "Primer_Brand__FAQ-module__details__summary___1sVQ4"
12
+ details__summary: r
12
13
  };
13
14
  //#endregion
14
- export { e as default };
15
+ export { e as FAQ, t as FAQ__heading, n as FAQ__subheading, i as default, r as details__summary };
15
16
 
16
17
  //# sourceMappingURL=FAQ.module.js.map
@@ -6,14 +6,14 @@ import { FAQSubheadingProps } from './';
6
6
  import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/base.css';
7
7
  import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css';
8
8
  import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/faq.css';
9
- declare function HeadingBase({ children, className, as, ...rest }: FAQSubheadingProps): import("react/jsx-runtime").JSX.Element;
9
+ declare function HeadingBase({ children, className, as, ...rest }: FAQSubheadingProps): React.JSX.Element;
10
10
  export type FAQGroupProps = React.PropsWithChildren<{
11
11
  id?: string;
12
12
  variant?: 'default' | 'gridline';
13
13
  defaultSelectedIndex?: number;
14
14
  tabAttributes?: (children: React.ReactNode, index: number) => Record<string, unknown>;
15
15
  }>;
16
- declare function FAQGroupBase({ children, id, variant, defaultSelectedIndex, tabAttributes, ...rest }: FAQGroupProps): import("react/jsx-runtime").JSX.Element;
16
+ declare function FAQGroupBase({ children, id, variant, defaultSelectedIndex, tabAttributes, ...rest }: FAQGroupProps): React.JSX.Element;
17
17
  /**
18
18
  * FAQGroup component:
19
19
  * {@link https://primer.style/brand/components/FAQ#grouped-faqs See usage examples}.
@@ -1 +1 @@
1
- {"version":3,"file":"FAQGroup.d.ts","sourceRoot":"","sources":["../../src/FAQ/FAQGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAC,kBAAkB,EAAoB,MAAM,IAAI,CAAA;AAGxD;;GAEG;AACH,OAAO,0FAA0F,CAAA;AACjG,OAAO,uGAAuG,CAAA;AAC9G,OAAO,yFAAyF,CAAA;AAOhG,iBAAS,WAAW,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAS,EAAE,GAAG,IAAI,EAAC,EAAE,kBAAkB,2CAMjF;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAClD,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtF,CAAC,CAAA;AAEF,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,EAAE,EACF,OAAmB,EACnB,oBAAwB,EACxB,aAAa,EACb,GAAG,IAAI,EACR,EAAE,aAAa,2CA8Mf;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ;;CAEnB,CAAA"}
1
+ {"version":3,"file":"FAQGroup.d.ts","sourceRoot":"","sources":["../../src/FAQ/FAQGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAC,kBAAkB,EAAoB,MAAM,IAAI,CAAA;AAGxD;;GAEG;AACH,OAAO,0FAA0F,CAAA;AACjG,OAAO,uGAAuG,CAAA;AAC9G,OAAO,yFAAyF,CAAA;AAOhG,iBAAS,WAAW,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAS,EAAE,GAAG,IAAI,EAAC,EAAE,kBAAkB,qBAMjF;AAED,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAClD,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtF,CAAC,CAAA;AAEF,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,EAAE,EACF,OAAmB,EACnB,oBAAwB,EACxB,aAAa,EACb,GAAG,IAAI,EACR,EAAE,aAAa,qBA8Mf;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ;;CAEnB,CAAA"}
@@ -1,4 +1,4 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
2
  import { useId as t } from "../hooks/useId.js";
3
3
  import { Grid as n } from "../Grid/Grid.js";
4
4
  import { Stack as r } from "../Stack/Stack.js";
@@ -26,11 +26,15 @@ function p({ children: a, id: p, variant: m = "default", defaultSelectedIndex: g
26
26
  b(e), x || S(!0);
27
27
  }, E = (e) => (t) => {
28
28
  if (t.key === "ArrowUp") {
29
- t.preventDefault(), b((e - 1 + D.length) % D.length), x || S(!0);
29
+ t.preventDefault();
30
+ let n = (e - 1 + D.length) % D.length;
31
+ b(n), x || S(!0);
30
32
  return;
31
33
  }
32
34
  if (t.key === "ArrowDown") {
33
- t.preventDefault(), b((e + 1) % D.length), x || S(!0);
35
+ t.preventDefault();
36
+ let n = (e + 1) % D.length;
37
+ b(n), x || S(!0);
34
38
  return;
35
39
  }
36
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FAQGroup.js","names":[],"sources":["../../src/FAQ/FAQGroup.tsx"],"sourcesContent":["import React from 'react'\nimport {useId} from '../hooks/useId'\nimport {clsx} from 'clsx'\n\nimport {FAQSubheadingProps, FAQRootProps, FAQ} from './'\nimport {Accordion, Grid, Heading, Stack, Box} from '../'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/faq.css'\n\n/**\n * Main stylesheet (as a CSS Module)\n */\nimport styles from './FAQGroup.module.css'\n\nfunction HeadingBase({children, className, as = 'h3', ...rest}: FAQSubheadingProps) {\n return (\n <Heading as={as} className={clsx(styles['FAQGroup__heading'], className)} {...rest}>\n {children}\n </Heading>\n )\n}\n\nexport type FAQGroupProps = React.PropsWithChildren<{\n id?: string\n variant?: 'default' | 'gridline'\n defaultSelectedIndex?: number\n tabAttributes?: (children: React.ReactNode, index: number) => Record<string, unknown>\n}>\n\nfunction FAQGroupBase({\n children,\n id,\n variant = 'default',\n defaultSelectedIndex = 0,\n tabAttributes,\n ...rest\n}: FAQGroupProps) {\n const [selectedIndex, setSelectedIndex] = React.useState(defaultSelectedIndex)\n const [hasInteracted, setHasInteracted] = React.useState(false)\n const instanceId = useId(id)\n const selectedTabRef = React.useRef<HTMLButtonElement>(null)\n\n const handleTabClick = (index: number) => (_event: React.MouseEvent<HTMLButtonElement>) => {\n setSelectedIndex(index)\n if (!hasInteracted) setHasInteracted(true)\n }\n\n const handleKeyDown = (index: number) => (_event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (_event.key === 'ArrowUp') {\n _event.preventDefault()\n const prevIndex = (index - 1 + faqChildren.length) % faqChildren.length\n setSelectedIndex(prevIndex)\n if (!hasInteracted) setHasInteracted(true)\n return\n }\n\n if (_event.key === 'ArrowDown') {\n _event.preventDefault()\n const nextIndex = (index + 1) % faqChildren.length\n setSelectedIndex(nextIndex)\n if (!hasInteracted) setHasInteracted(true)\n return\n }\n }\n\n React.useEffect(() => {\n if (hasInteracted) selectedTabRef.current?.focus()\n }, [hasInteracted, selectedIndex])\n\n const faqChildren = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<FAQRootProps> =>\n React.isValidElement<FAQRootProps>(child) && child.type === FAQ,\n )\n\n const Tabs = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const GroupHeadingChild = React.Children.toArray(faqChild.props.children).find(\n (child): child is React.ReactElement<React.ComponentProps<typeof FAQ.Heading>> =>\n React.isValidElement(child) && child.type === FAQ.Heading,\n )\n\n const tabContents = GroupHeadingChild?.props.children\n\n const providedTabAttributes =\n GroupHeadingChild && tabAttributes ? tabAttributes(tabContents ?? null, index) : undefined\n const tabAttributeProps = providedTabAttributes ?? {}\n const {ref: providedTabRef, ...tabAttributeRest} = tabAttributeProps as {\n ref?: React.Ref<HTMLButtonElement>\n }\n\n const handleTabRef = (node: HTMLButtonElement | null) => {\n if (selectedIndex === index) {\n selectedTabRef.current = node\n } else if (selectedTabRef.current === node) {\n selectedTabRef.current = null\n }\n\n assignRef(providedTabRef, node)\n }\n\n return (\n <button\n type=\"button\"\n role=\"tab\"\n className={styles['FAQGroup__tablist-button']}\n id={`${instanceId}-tab-${index}`}\n aria-controls={`${instanceId}-panel-${index}`}\n aria-selected={selectedIndex === index}\n onClick={handleTabClick(index)}\n onKeyDown={handleKeyDown(index)}\n key={index}\n data-testid={`FAQGroup-tab-${index + 1}`}\n tabIndex={selectedIndex !== index ? -1 : undefined}\n ref={handleTabRef}\n {...tabAttributeRest}\n >\n {tabContents}\n </button>\n )\n }\n return null\n })\n\n const TabPanels = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const FAQItemChild = React.Children.map(faqChild.props.children, child =>\n React.isValidElement(child) && child.type !== FAQ.Heading ? child : null,\n )\n\n const FAQItemHeadingText = React.Children.map(faqChild.props.children, child =>\n React.isValidElement<{children?: React.ReactNode}>(child) && child.type === FAQ.Heading\n ? child.props.children\n : null,\n )\n\n return (\n <div\n role=\"tabpanel\"\n id={`${instanceId}-panel-${index}`}\n aria-labelledby={`${instanceId}-tab-${index}`}\n hidden={selectedIndex !== index}\n key={index}\n data-testid={`FAQGroup-tab-panel-${index + 1}`}\n >\n {FAQItemHeadingText && (\n <FAQ.Subheading\n data-testid={`FAQGroup-tab-panel-heading-${index + 1}`}\n className={clsx(styles['FAQGroup__panel-subHeading'])}\n >\n {FAQItemHeadingText}\n </FAQ.Subheading>\n )}\n {FAQItemChild}\n </div>\n )\n }\n })\n\n const SectionedAccordions = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const GroupHeadingChild = React.Children.toArray(faqChild.props.children).find(\n (child): child is React.ReactElement<React.ComponentProps<typeof FAQ.Heading>> =>\n React.isValidElement(child) && child.type === FAQ.Heading,\n )\n const FAQItemChild = React.Children.map(faqChild.props.children, child =>\n React.isValidElement<{className?: string}>(child) && child.type !== FAQ.Heading\n ? React.cloneElement(child, {\n className: clsx(styles['FAQGroup__nested-accordion-item'], child.props.className),\n })\n : null,\n )\n\n if (!GroupHeadingChild || !FAQItemChild) return null\n\n return (\n <Accordion\n key={index}\n variant=\"emphasis\"\n className={clsx(variant === 'gridline' && styles['FAQGroup__accordion--gridline'])}\n >\n <Accordion.Heading {...GroupHeadingChild.props} />\n <Accordion.Content>{FAQItemChild}</Accordion.Content>\n </Accordion>\n )\n }\n })\n\n const GroupHeading = React.Children.toArray(children).find(\n (child): child is React.ReactElement<FAQSubheadingProps> =>\n React.isValidElement(child) && child.type === HeadingBase,\n )\n\n const Tag = variant === 'gridline' ? Box : React.Fragment\n const tagProps = variant === 'gridline' ? {className: clsx(styles['FAQGroup__gridline-wrapper'])} : {}\n\n return (\n <Tag {...tagProps}>\n <div className={clsx(styles[`FAQGroup__heading-wrapper`], styles[`FAQGroup__heading-wrapper--${variant}`])}>\n <Grid enableGutters={false} {...rest}>\n <Grid.Column>\n {GroupHeading && (\n <Grid>\n <Grid.Column>{GroupHeading}</Grid.Column>\n </Grid>\n )}\n </Grid.Column>\n </Grid>\n </div>\n <Grid enableGutters={false} {...rest}>\n <Grid.Column span={12}>\n <div className={clsx(styles.FAQGroup__accordion)}>{SectionedAccordions}</div>\n <Grid className={clsx(styles.FAQGroup)}>\n <Grid.Column\n span={{medium: 5, large: 4}}\n className={clsx(\n styles.FAQGroup__tablist,\n variant === 'gridline' && styles['FAQGroup__tablist--gridline'],\n )}\n >\n <Stack\n direction=\"vertical\"\n aria-orientation=\"vertical\"\n padding=\"none\"\n role=\"tablist\"\n gap=\"none\"\n alignItems=\"flex-start\"\n >\n {Tabs}\n </Stack>\n </Grid.Column>\n <Grid.Column\n start={6}\n span={7}\n className={clsx(variant === 'gridline' && styles['FAQGroup__content--gridline'])}\n >\n {TabPanels}\n </Grid.Column>\n </Grid>\n </Grid.Column>\n </Grid>\n </Tag>\n )\n}\n\n/**\n * FAQGroup component:\n * {@link https://primer.style/brand/components/FAQ#grouped-faqs See usage examples}.\n */\nexport const FAQGroup = Object.assign(FAQGroupBase, {\n Heading: HeadingBase,\n})\n\nfunction assignRef<T>(ref: React.Ref<T> | undefined, value: T | null) {\n if (!ref) return\n if (typeof ref === 'function') {\n ref(value)\n return\n }\n\n ;(ref as React.MutableRefObject<T | null>).current = value\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FAQGroup.js","names":[],"sources":["../../src/FAQ/FAQGroup.tsx"],"sourcesContent":["import React from 'react'\nimport {useId} from '../hooks/useId'\nimport {clsx} from 'clsx'\n\nimport {FAQSubheadingProps, FAQRootProps, FAQ} from './'\nimport {Accordion, Grid, Heading, Stack, Box} from '../'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/faq/faq.css'\n\n/**\n * Main stylesheet (as a CSS Module)\n */\nimport styles from './FAQGroup.module.css'\n\nfunction HeadingBase({children, className, as = 'h3', ...rest}: FAQSubheadingProps) {\n return (\n <Heading as={as} className={clsx(styles['FAQGroup__heading'], className)} {...rest}>\n {children}\n </Heading>\n )\n}\n\nexport type FAQGroupProps = React.PropsWithChildren<{\n id?: string\n variant?: 'default' | 'gridline'\n defaultSelectedIndex?: number\n tabAttributes?: (children: React.ReactNode, index: number) => Record<string, unknown>\n}>\n\nfunction FAQGroupBase({\n children,\n id,\n variant = 'default',\n defaultSelectedIndex = 0,\n tabAttributes,\n ...rest\n}: FAQGroupProps) {\n const [selectedIndex, setSelectedIndex] = React.useState(defaultSelectedIndex)\n const [hasInteracted, setHasInteracted] = React.useState(false)\n const instanceId = useId(id)\n const selectedTabRef = React.useRef<HTMLButtonElement>(null)\n\n const handleTabClick = (index: number) => (_event: React.MouseEvent<HTMLButtonElement>) => {\n setSelectedIndex(index)\n if (!hasInteracted) setHasInteracted(true)\n }\n\n const handleKeyDown = (index: number) => (_event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (_event.key === 'ArrowUp') {\n _event.preventDefault()\n const prevIndex = (index - 1 + faqChildren.length) % faqChildren.length\n setSelectedIndex(prevIndex)\n if (!hasInteracted) setHasInteracted(true)\n return\n }\n\n if (_event.key === 'ArrowDown') {\n _event.preventDefault()\n const nextIndex = (index + 1) % faqChildren.length\n setSelectedIndex(nextIndex)\n if (!hasInteracted) setHasInteracted(true)\n return\n }\n }\n\n React.useEffect(() => {\n if (hasInteracted) selectedTabRef.current?.focus()\n }, [hasInteracted, selectedIndex])\n\n const faqChildren = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<FAQRootProps> =>\n React.isValidElement<FAQRootProps>(child) && child.type === FAQ,\n )\n\n const Tabs = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const GroupHeadingChild = React.Children.toArray(faqChild.props.children).find(\n (child): child is React.ReactElement<React.ComponentProps<typeof FAQ.Heading>> =>\n React.isValidElement(child) && child.type === FAQ.Heading,\n )\n\n const tabContents = GroupHeadingChild?.props.children\n\n const providedTabAttributes =\n GroupHeadingChild && tabAttributes ? tabAttributes(tabContents ?? null, index) : undefined\n const tabAttributeProps = providedTabAttributes ?? {}\n const {ref: providedTabRef, ...tabAttributeRest} = tabAttributeProps as {\n ref?: React.Ref<HTMLButtonElement>\n }\n\n const handleTabRef = (node: HTMLButtonElement | null) => {\n if (selectedIndex === index) {\n selectedTabRef.current = node\n } else if (selectedTabRef.current === node) {\n selectedTabRef.current = null\n }\n\n assignRef(providedTabRef, node)\n }\n\n return (\n <button\n type=\"button\"\n role=\"tab\"\n className={styles['FAQGroup__tablist-button']}\n id={`${instanceId}-tab-${index}`}\n aria-controls={`${instanceId}-panel-${index}`}\n aria-selected={selectedIndex === index}\n onClick={handleTabClick(index)}\n onKeyDown={handleKeyDown(index)}\n key={index}\n data-testid={`FAQGroup-tab-${index + 1}`}\n tabIndex={selectedIndex !== index ? -1 : undefined}\n ref={handleTabRef}\n {...tabAttributeRest}\n >\n {tabContents}\n </button>\n )\n }\n return null\n })\n\n const TabPanels = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const FAQItemChild = React.Children.map(faqChild.props.children, child =>\n React.isValidElement(child) && child.type !== FAQ.Heading ? child : null,\n )\n\n const FAQItemHeadingText = React.Children.map(faqChild.props.children, child =>\n React.isValidElement<{children?: React.ReactNode}>(child) && child.type === FAQ.Heading\n ? child.props.children\n : null,\n )\n\n return (\n <div\n role=\"tabpanel\"\n id={`${instanceId}-panel-${index}`}\n aria-labelledby={`${instanceId}-tab-${index}`}\n hidden={selectedIndex !== index}\n key={index}\n data-testid={`FAQGroup-tab-panel-${index + 1}`}\n >\n {FAQItemHeadingText && (\n <FAQ.Subheading\n data-testid={`FAQGroup-tab-panel-heading-${index + 1}`}\n className={clsx(styles['FAQGroup__panel-subHeading'])}\n >\n {FAQItemHeadingText}\n </FAQ.Subheading>\n )}\n {FAQItemChild}\n </div>\n )\n }\n })\n\n const SectionedAccordions = React.Children.map(faqChildren, (faqChild, index) => {\n if (faqChild.props.children) {\n const GroupHeadingChild = React.Children.toArray(faqChild.props.children).find(\n (child): child is React.ReactElement<React.ComponentProps<typeof FAQ.Heading>> =>\n React.isValidElement(child) && child.type === FAQ.Heading,\n )\n const FAQItemChild = React.Children.map(faqChild.props.children, child =>\n React.isValidElement<{className?: string}>(child) && child.type !== FAQ.Heading\n ? React.cloneElement(child, {\n className: clsx(styles['FAQGroup__nested-accordion-item'], child.props.className),\n })\n : null,\n )\n\n if (!GroupHeadingChild || !FAQItemChild) return null\n\n return (\n <Accordion\n key={index}\n variant=\"emphasis\"\n className={clsx(variant === 'gridline' && styles['FAQGroup__accordion--gridline'])}\n >\n <Accordion.Heading {...GroupHeadingChild.props} />\n <Accordion.Content>{FAQItemChild}</Accordion.Content>\n </Accordion>\n )\n }\n })\n\n const GroupHeading = React.Children.toArray(children).find(\n (child): child is React.ReactElement<FAQSubheadingProps> =>\n React.isValidElement(child) && child.type === HeadingBase,\n )\n\n const Tag = variant === 'gridline' ? Box : React.Fragment\n const tagProps = variant === 'gridline' ? {className: clsx(styles['FAQGroup__gridline-wrapper'])} : {}\n\n return (\n <Tag {...tagProps}>\n <div className={clsx(styles[`FAQGroup__heading-wrapper`], styles[`FAQGroup__heading-wrapper--${variant}`])}>\n <Grid enableGutters={false} {...rest}>\n <Grid.Column>\n {GroupHeading && (\n <Grid>\n <Grid.Column>{GroupHeading}</Grid.Column>\n </Grid>\n )}\n </Grid.Column>\n </Grid>\n </div>\n <Grid enableGutters={false} {...rest}>\n <Grid.Column span={12}>\n <div className={clsx(styles.FAQGroup__accordion)}>{SectionedAccordions}</div>\n <Grid className={clsx(styles.FAQGroup)}>\n <Grid.Column\n span={{medium: 5, large: 4}}\n className={clsx(\n styles.FAQGroup__tablist,\n variant === 'gridline' && styles['FAQGroup__tablist--gridline'],\n )}\n >\n <Stack\n direction=\"vertical\"\n aria-orientation=\"vertical\"\n padding=\"none\"\n role=\"tablist\"\n gap=\"none\"\n alignItems=\"flex-start\"\n >\n {Tabs}\n </Stack>\n </Grid.Column>\n <Grid.Column\n start={6}\n span={7}\n className={clsx(variant === 'gridline' && styles['FAQGroup__content--gridline'])}\n >\n {TabPanels}\n </Grid.Column>\n </Grid>\n </Grid.Column>\n </Grid>\n </Tag>\n )\n}\n\n/**\n * FAQGroup component:\n * {@link https://primer.style/brand/components/FAQ#grouped-faqs See usage examples}.\n */\nexport const FAQGroup = Object.assign(FAQGroupBase, {\n Heading: HeadingBase,\n})\n\nfunction assignRef<T>(ref: React.Ref<T> | undefined, value: T | null) {\n if (!ref) return\n if (typeof ref === 'function') {\n ref(value)\n return\n }\n\n ;(ref as React.MutableRefObject<T | null>).current = value\n}\n"],"mappings":"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"}
@@ -1,20 +1,21 @@
1
- import './FAQGroup.module-qm5jP0zF.css';var e = {
2
- FAQGroup: "Primer_Brand__FAQGroup-module__FAQGroup___YEL8U",
3
- FAQGroup__accordion: "Primer_Brand__FAQGroup-module__FAQGroup__accordion___UP5VM",
1
+ import './FAQGroup.module-qm5jP0zF.css';//#region src/FAQ/FAQGroup.module.css
2
+ var e = "Primer_Brand__FAQGroup-module__FAQGroup___YEL8U", t = "Primer_Brand__FAQGroup-module__FAQGroup__accordion___UP5VM", n = "Primer_Brand__FAQGroup-module__FAQGroup__tablist___iBu9X", r = "Primer_Brand__FAQGroup-module__FAQ__heading___HjZwb", i = "Primer_Brand__FAQGroup-module__FAQGroup__heading___RypDB", a = {
3
+ FAQGroup: e,
4
+ FAQGroup__accordion: t,
4
5
  "FAQGroup__panel-subHeading": "Primer_Brand__FAQGroup-module__FAQGroup__panel-subHeading___hpXCw",
5
- FAQGroup__tablist: "Primer_Brand__FAQGroup-module__FAQGroup__tablist___iBu9X",
6
- FAQ__heading: "Primer_Brand__FAQGroup-module__FAQ__heading___HjZwb",
6
+ FAQGroup__tablist: n,
7
+ FAQ__heading: r,
7
8
  "FAQGroup__tablist-button": "Primer_Brand__FAQGroup-module__FAQGroup__tablist-button___VAe_R",
8
9
  "FAQGroup__nested-accordion-item": "Primer_Brand__FAQGroup-module__FAQGroup__nested-accordion-item___Bh12D",
9
10
  "FAQGroup__tablist--gridline": "Primer_Brand__FAQGroup-module__FAQGroup__tablist--gridline___9dsD5",
10
11
  "FAQGroup__content--gridline": "Primer_Brand__FAQGroup-module__FAQGroup__content--gridline___Xu44n",
11
- FAQGroup__heading: "Primer_Brand__FAQGroup-module__FAQGroup__heading___RypDB",
12
+ FAQGroup__heading: i,
12
13
  "FAQGroup__gridline-wrapper": "Primer_Brand__FAQGroup-module__FAQGroup__gridline-wrapper___7IC44",
13
14
  "FAQGroup__heading-wrapper": "Primer_Brand__FAQGroup-module__FAQGroup__heading-wrapper___pYwfs",
14
15
  "FAQGroup__heading-wrapper--gridline": "Primer_Brand__FAQGroup-module__FAQGroup__heading-wrapper--gridline___nZYpp",
15
16
  "FAQGroup__accordion--gridline": "Primer_Brand__FAQGroup-module__FAQGroup__accordion--gridline___6GLEm"
16
17
  };
17
18
  //#endregion
18
- export { e as default };
19
+ export { e as FAQGroup, t as FAQGroup__accordion, i as FAQGroup__heading, n as FAQGroup__tablist, r as FAQ__heading, a as default };
19
20
 
20
21
  //# sourceMappingURL=FAQGroup.module.js.map
@@ -10,7 +10,7 @@ type FootnotesProps = {
10
10
  as?: (typeof FootnotesTags)[number];
11
11
  visuallyHiddenHeading?: string;
12
12
  } & FootnotesRestrictedPolymorphism;
13
- declare function Root({ as, className, children, visuallyHiddenHeading, ...rest }: FootnotesProps): import("react/jsx-runtime").JSX.Element;
13
+ declare function Root({ as, className, children, visuallyHiddenHeading, ...rest }: FootnotesProps): React.JSX.Element;
14
14
  export declare const FootnotesItemTags: readonly ["a", "p"];
15
15
  type DefaultFootnotesItemProps = {
16
16
  _variant?: 'disclaimer';
@@ -20,7 +20,7 @@ type CitationFootnotesItemProps = {
20
20
  href?: string;
21
21
  };
22
22
  type FootnotesItemProps = (DefaultFootnotesItemProps | CitationFootnotesItemProps) & React.HTMLAttributes<HTMLParagraphElement> & BaseProps<HTMLParagraphElement>;
23
- declare function Item({ className, children, _variant, ...rest }: FootnotesItemProps): import("react/jsx-runtime").JSX.Element;
23
+ declare function Item({ className, children, _variant, ...rest }: FootnotesItemProps): React.JSX.Element;
24
24
  /**
25
25
  * Footnotes component
26
26
  * {@link https://primer.style/brand/components/Footnotes/ See usage examples}.
@@ -1 +1 @@
1
- {"version":3,"file":"Footnotes.d.ts","sourceRoot":"","sources":["../../src/Footnotes/Footnotes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAMnD,eAAO,MAAM,aAAa,wBAAyB,CAAA;AAEnD,KAAK,+BAA+B,GAChC,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG;IAAC,EAAE,CAAC,EAAE,KAAK,CAAA;CAAC,CAAC,GACjF,CAAC,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG;IAAC,EAAE,CAAC,EAAE,IAAI,CAAA;CAAC,CAAC,CAAA;AAE5F,KAAK,cAAc,GAAG;IACpB,EAAE,CAAC,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B,GAAG,+BAA+B,CAAA;AAEnC,iBAAS,IAAI,CAAC,EAAC,EAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,qBAAmC,EAAE,GAAG,IAAI,EAAC,EAAE,cAAc,2CAyC3G;AAED,eAAO,MAAM,iBAAiB,qBAAsB,CAAA;AAEpD,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB,CAAA;AAED,KAAK,0BAA0B,GAAG;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,kBAAkB,GAAG,CAAC,yBAAyB,GAAG,0BAA0B,CAAC,GAChF,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAC1C,SAAS,CAAC,oBAAoB,CAAC,CAAA;AAEjC,iBAAS,IAAI,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAE,QAAqB,EAAE,GAAG,IAAI,EAAC,EAAE,kBAAkB,2CAsBtF;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS;;CAA8B,CAAA"}
1
+ {"version":3,"file":"Footnotes.d.ts","sourceRoot":"","sources":["../../src/Footnotes/Footnotes.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAMnD,eAAO,MAAM,aAAa,wBAAyB,CAAA;AAEnD,KAAK,+BAA+B,GAChC,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG;IAAC,EAAE,CAAC,EAAE,KAAK,CAAA;CAAC,CAAC,GACjF,CAAC,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC,gBAAgB,CAAC,GAAG;IAAC,EAAE,CAAC,EAAE,IAAI,CAAA;CAAC,CAAC,CAAA;AAE5F,KAAK,cAAc,GAAG;IACpB,EAAE,CAAC,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;IACnC,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B,GAAG,+BAA+B,CAAA;AAEnC,iBAAS,IAAI,CAAC,EAAC,EAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,qBAAmC,EAAE,GAAG,IAAI,EAAC,EAAE,cAAc,qBAyC3G;AAED,eAAO,MAAM,iBAAiB,qBAAsB,CAAA;AAEpD,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB,CAAA;AAED,KAAK,0BAA0B,GAAG;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,KAAK,kBAAkB,GAAG,CAAC,yBAAyB,GAAG,0BAA0B,CAAC,GAChF,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAC1C,SAAS,CAAC,oBAAoB,CAAC,CAAA;AAEjC,iBAAS,IAAI,CAAC,EAAC,SAAS,EAAE,QAAQ,EAAE,QAAqB,EAAE,GAAG,IAAI,EAAC,EAAE,kBAAkB,qBAsBtF;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS;;CAA8B,CAAA"}
@@ -1,7 +1,7 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
2
  import { Text as t } from "../Text/Text.js";
3
3
  import { Heading as n } from "../Heading/Heading.js";
4
- import { ReplyIcon as r } from "../node_modules/@primer/octicons-react/dist/index.esm.js";
4
+ import { ReplyIcon as r } from "../node_modules/@primer/octicons-react/dist/icons/ReplyIcon.js";
5
5
  import { InlineLink as i } from "../InlineLink/InlineLink.js";
6
6
  import a from "./Footnotes.module.js";
7
7
  import { getTextContent as o } from "../utils/getTextContent.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Footnotes.js","names":[],"sources":["../../src/Footnotes/Footnotes.tsx"],"sourcesContent":["import React from 'react'\nimport {ReplyIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\n\nimport {Heading, InlineLink, Text} from '../'\nimport type {BaseProps} from '../component-helpers'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Footnotes.module.css'\nimport {getTextContent} from '../utils/getTextContent'\n\nexport const FootnotesTags = ['div', 'ol'] as const\n\ntype FootnotesRestrictedPolymorphism =\n | (React.HTMLAttributes<HTMLDivElement> & BaseProps<HTMLDivElement> & {as?: 'div'})\n | (React.HTMLAttributes<HTMLParagraphElement> & BaseProps<HTMLOListElement> & {as?: 'ol'})\n\ntype FootnotesProps = {\n as?: (typeof FootnotesTags)[number]\n visuallyHiddenHeading?: string\n} & FootnotesRestrictedPolymorphism\n\nfunction Root({as = 'ol', className, children, visuallyHiddenHeading = 'Footnotes', ...rest}: FootnotesProps) {\n const memoizedChildren = React.useMemo(() => React.Children.toArray(children), [children])\n\n if (as === 'div') {\n const filteredChildren = memoizedChildren.map(child => {\n if (React.isValidElement<FootnotesItemProps>(child) && child.type === Item) {\n return React.cloneElement(child, {\n _variant: 'disclaimer',\n ...child.props,\n })\n }\n return null\n })\n return (\n <>\n <Heading className=\"visually-hidden\" as=\"h2\" id=\"footnote-label\">\n {visuallyHiddenHeading}\n </Heading>\n <div\n className={clsx(styles.Footnotes, styles['Footnotes--variant-disclaimer'], className)}\n {...(rest as BaseProps<HTMLDivElement>)}\n >\n {filteredChildren}\n </div>\n </>\n )\n }\n\n return (\n <>\n <Heading className=\"visually-hidden\" as=\"h2\" id=\"footnote-label\">\n {visuallyHiddenHeading}\n </Heading>\n <ol\n className={clsx(styles.Footnotes, styles['Footnotes--variant-citations'], className)}\n {...(rest as BaseProps<HTMLOListElement>)}\n >\n {children}\n </ol>\n </>\n )\n}\n\nexport const FootnotesItemTags = ['a', 'p'] as const\n\ntype DefaultFootnotesItemProps = {\n _variant?: 'disclaimer'\n}\n\ntype CitationFootnotesItemProps = {\n _variant?: 'citation'\n href?: string\n}\n\ntype FootnotesItemProps = (DefaultFootnotesItemProps | CitationFootnotesItemProps) &\n React.HTMLAttributes<HTMLParagraphElement> &\n BaseProps<HTMLParagraphElement>\n\nfunction Item({className, children, _variant = 'citation', ...rest}: FootnotesItemProps) {\n if (_variant === 'disclaimer') {\n return (\n <Text as=\"p\" variant=\"muted\" size=\"100\" className={clsx(styles.FootnotesItem, className)}>\n {children}\n </Text>\n )\n }\n\n const {href, ...restSansHref} = rest as CitationFootnotesItemProps\n return (\n <li className={clsx(styles.FootnotesItem, className)} {...(restSansHref as CitationFootnotesItemProps)}>\n <Text as=\"p\" variant=\"muted\" size=\"100\" className={clsx(styles.FootnotesItem__citationText)}>\n {children}\n {href && (\n <InlineLink href={href} aria-label={`Back to content ${getTextContent(children)}`}>\n <ReplyIcon className={styles.FootnotesItem__citationIcon} />\n </InlineLink>\n )}\n </Text>\n </li>\n )\n}\n\n/**\n * Footnotes component\n * {@link https://primer.style/brand/components/Footnotes/ See usage examples}.\n */\nexport const Footnotes = Object.assign(Root, {Item})\n"],"mappings":";;;;;;;;;;AAWA,IAAa,IAAgB,CAAC,OAAO,KAAK;AAW1C,SAAS,EAAK,EAAC,QAAK,MAAM,cAAW,aAAU,2BAAwB,aAAa,GAAG,KAAuB;CAC5G,IAAM,IAAmB,EAAM,cAAc,EAAM,SAAS,QAAQ,EAAS,EAAE,CAAC,EAAS,CAAC;AAE1F,KAAI,MAAO,OAAO;EAChB,IAAM,IAAmB,EAAiB,KAAI,MACxC,EAAM,eAAmC,EAAM,IAAI,EAAM,SAAS,IAC7D,EAAM,aAAa,GAAO;GAC/B,UAAU;GACV,GAAG,EAAM;GACV,CAAC,GAEG,KACP;AACF,SACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;GAAS,WAAU;GAAkB,IAAG;GAAK,IAAG;aAC7C;GACO,CAAA,EACV,kBAAC,OAAD;GACE,WAAW,EAAK,EAAO,WAAW,EAAO,kCAAkC,EAAU;GACrF,GAAK;aAEJ;GACG,CAAA,CACL,EAAA,CAAA;;AAIP,QACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;EAAS,WAAU;EAAkB,IAAG;EAAK,IAAG;YAC7C;EACO,CAAA,EACV,kBAAC,MAAD;EACE,WAAW,EAAK,EAAO,WAAW,EAAO,iCAAiC,EAAU;EACpF,GAAK;EAEJ;EACE,CAAA,CACJ,EAAA,CAAA;;AAIP,IAAa,IAAoB,CAAC,KAAK,IAAI;AAe3C,SAAS,EAAK,EAAC,cAAW,aAAU,cAAW,YAAY,GAAG,KAA2B;AACvF,KAAI,MAAa,aACf,QACE,kBAAC,GAAD;EAAM,IAAG;EAAI,SAAQ;EAAQ,MAAK;EAAM,WAAW,EAAK,EAAO,eAAe,EAAU;EACrF;EACI,CAAA;CAIX,IAAM,EAAC,SAAM,GAAG,MAAgB;AAChC,QACE,kBAAC,MAAD;EAAI,WAAW,EAAK,EAAO,eAAe,EAAU;EAAE,GAAK;YACzD,kBAAC,GAAD;GAAM,IAAG;GAAI,SAAQ;GAAQ,MAAK;GAAM,WAAW,EAAK,EAAO,4BAA4B;aAA3F,CACG,GACA,KACC,kBAAC,GAAD;IAAkB;IAAM,cAAY,mBAAmB,EAAe,EAAS;cAC7E,kBAAC,GAAD,EAAW,WAAW,EAAO,6BAA+B,CAAA;IACjD,CAAA,CAEV;;EACJ,CAAA;;AAQT,IAAa,IAAY,OAAO,OAAO,GAAM,EAAC,SAAK,CAAC"}
1
+ {"version":3,"file":"Footnotes.js","names":[],"sources":["../../src/Footnotes/Footnotes.tsx"],"sourcesContent":["import React from 'react'\nimport {ReplyIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\n\nimport {Heading, InlineLink, Text} from '../'\nimport type {BaseProps} from '../component-helpers'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Footnotes.module.css'\nimport {getTextContent} from '../utils/getTextContent'\n\nexport const FootnotesTags = ['div', 'ol'] as const\n\ntype FootnotesRestrictedPolymorphism =\n | (React.HTMLAttributes<HTMLDivElement> & BaseProps<HTMLDivElement> & {as?: 'div'})\n | (React.HTMLAttributes<HTMLParagraphElement> & BaseProps<HTMLOListElement> & {as?: 'ol'})\n\ntype FootnotesProps = {\n as?: (typeof FootnotesTags)[number]\n visuallyHiddenHeading?: string\n} & FootnotesRestrictedPolymorphism\n\nfunction Root({as = 'ol', className, children, visuallyHiddenHeading = 'Footnotes', ...rest}: FootnotesProps) {\n const memoizedChildren = React.useMemo(() => React.Children.toArray(children), [children])\n\n if (as === 'div') {\n const filteredChildren = memoizedChildren.map(child => {\n if (React.isValidElement<FootnotesItemProps>(child) && child.type === Item) {\n return React.cloneElement(child, {\n _variant: 'disclaimer',\n ...child.props,\n })\n }\n return null\n })\n return (\n <>\n <Heading className=\"visually-hidden\" as=\"h2\" id=\"footnote-label\">\n {visuallyHiddenHeading}\n </Heading>\n <div\n className={clsx(styles.Footnotes, styles['Footnotes--variant-disclaimer'], className)}\n {...(rest as BaseProps<HTMLDivElement>)}\n >\n {filteredChildren}\n </div>\n </>\n )\n }\n\n return (\n <>\n <Heading className=\"visually-hidden\" as=\"h2\" id=\"footnote-label\">\n {visuallyHiddenHeading}\n </Heading>\n <ol\n className={clsx(styles.Footnotes, styles['Footnotes--variant-citations'], className)}\n {...(rest as BaseProps<HTMLOListElement>)}\n >\n {children}\n </ol>\n </>\n )\n}\n\nexport const FootnotesItemTags = ['a', 'p'] as const\n\ntype DefaultFootnotesItemProps = {\n _variant?: 'disclaimer'\n}\n\ntype CitationFootnotesItemProps = {\n _variant?: 'citation'\n href?: string\n}\n\ntype FootnotesItemProps = (DefaultFootnotesItemProps | CitationFootnotesItemProps) &\n React.HTMLAttributes<HTMLParagraphElement> &\n BaseProps<HTMLParagraphElement>\n\nfunction Item({className, children, _variant = 'citation', ...rest}: FootnotesItemProps) {\n if (_variant === 'disclaimer') {\n return (\n <Text as=\"p\" variant=\"muted\" size=\"100\" className={clsx(styles.FootnotesItem, className)}>\n {children}\n </Text>\n )\n }\n\n const {href, ...restSansHref} = rest as CitationFootnotesItemProps\n return (\n <li className={clsx(styles.FootnotesItem, className)} {...(restSansHref as CitationFootnotesItemProps)}>\n <Text as=\"p\" variant=\"muted\" size=\"100\" className={clsx(styles.FootnotesItem__citationText)}>\n {children}\n {href && (\n <InlineLink href={href} aria-label={`Back to content ${getTextContent(children)}`}>\n <ReplyIcon className={styles.FootnotesItem__citationIcon} />\n </InlineLink>\n )}\n </Text>\n </li>\n )\n}\n\n/**\n * Footnotes component\n * {@link https://primer.style/brand/components/Footnotes/ See usage examples}.\n */\nexport const Footnotes = Object.assign(Root, {Item})\n"],"mappings":";;;;;;;;;;AAWA,IAAa,IAAgB,CAAC,OAAO,IAAI;AAWzC,SAAS,EAAK,EAAC,QAAK,MAAM,cAAW,aAAU,2BAAwB,aAAa,GAAG,KAAuB;CAC5G,IAAM,IAAmB,EAAM,cAAc,EAAM,SAAS,QAAQ,CAAQ,GAAG,CAAC,CAAQ,CAAC;CAEzF,IAAI,MAAO,OAAO;EAChB,IAAM,IAAmB,EAAiB,KAAI,MACxC,EAAM,eAAmC,CAAK,KAAK,EAAM,SAAS,IAC7D,EAAM,aAAa,GAAO;GAC/B,UAAU;GACV,GAAG,EAAM;EACX,CAAC,IAEI,IACR;EACD,OACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;GAAS,WAAU;GAAkB,IAAG;GAAK,IAAG;aAC7C;EACM,CAAA,GACT,kBAAC,OAAD;GACE,WAAW,EAAK,EAAO,WAAW,EAAO,kCAAkC,CAAS;GACpF,GAAK;aAEJ;EACE,CAAA,CACL,EAAA,CAAA;CAEN;CAEA,OACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;EAAS,WAAU;EAAkB,IAAG;EAAK,IAAG;YAC7C;CACM,CAAA,GACT,kBAAC,MAAD;EACE,WAAW,EAAK,EAAO,WAAW,EAAO,iCAAiC,CAAS;EACnF,GAAK;EAEJ;CACC,CAAA,CACJ,EAAA,CAAA;AAEN;AAEA,IAAa,IAAoB,CAAC,KAAK,GAAG;AAe1C,SAAS,EAAK,EAAC,cAAW,aAAU,cAAW,YAAY,GAAG,KAA2B;CACvF,IAAI,MAAa,cACf,OACE,kBAAC,GAAD;EAAM,IAAG;EAAI,SAAQ;EAAQ,MAAK;EAAM,WAAW,EAAK,EAAO,eAAe,CAAS;EACpF;CACG,CAAA;CAIV,IAAM,EAAC,SAAM,GAAG,MAAgB;CAChC,OACE,kBAAC,MAAD;EAAI,WAAW,EAAK,EAAO,eAAe,CAAS;EAAG,GAAK;YACzD,kBAAC,GAAD;GAAM,IAAG;GAAI,SAAQ;GAAQ,MAAK;GAAM,WAAW,EAAK,EAAO,2BAA2B;aAA1F,CACG,GACA,KACC,kBAAC,GAAD;IAAkB;IAAM,cAAY,mBAAmB,EAAe,CAAQ;cAC5E,kBAAC,GAAD,EAAW,WAAW,EAAO,4BAA8B,CAAA;GACjD,CAAA,CAEV;;CACJ,CAAA;AAER;AAMA,IAAa,IAAY,OAAO,OAAO,GAAM,EAAC,QAAI,CAAC"}
@@ -1,11 +1,12 @@
1
- import './Footnotes.module-DG9Vx76y.css';var e = {
2
- Footnotes: "Primer_Brand__Footnotes-module__Footnotes___Nejyn",
1
+ import './Footnotes.module-DG9Vx76y.css';//#region src/Footnotes/Footnotes.module.css
2
+ var e = "Primer_Brand__Footnotes-module__Footnotes___Nejyn", t = "Primer_Brand__Footnotes-module__FootnotesItem___IfXmq", n = "Primer_Brand__Footnotes-module__FootnotesItem__citationIcon___gBAZT", r = "Primer_Brand__Footnotes-module__FootnotesItem__citationText___4Rjij", i = {
3
+ Footnotes: e,
3
4
  "Footnotes--variant-citations": "Primer_Brand__Footnotes-module__Footnotes--variant-citations___CDvXV",
4
- FootnotesItem: "Primer_Brand__Footnotes-module__FootnotesItem___IfXmq",
5
- FootnotesItem__citationIcon: "Primer_Brand__Footnotes-module__FootnotesItem__citationIcon___gBAZT",
6
- FootnotesItem__citationText: "Primer_Brand__Footnotes-module__FootnotesItem__citationText___4Rjij"
5
+ FootnotesItem: t,
6
+ FootnotesItem__citationIcon: n,
7
+ FootnotesItem__citationText: r
7
8
  };
8
9
  //#endregion
9
- export { e as default };
10
+ export { e as Footnotes, t as FootnotesItem, n as FootnotesItem__citationIcon, r as FootnotesItem__citationText, i as default };
10
11
 
11
12
  //# sourceMappingURL=Footnotes.module.js.map
@@ -22,5 +22,5 @@ export type FrostedGlassVFXProps = BaseProps<HTMLDivElement> & React.HTMLAttribu
22
22
  * FrostedGlassVFX component
23
23
  * {@link https://primer.style/brand/components/FrostedGlassVFX/ See usage examples}.
24
24
  */
25
- export declare function FrostedGlassVFX({ hasBorderRadius, children, className, intensity, ...rest }: FrostedGlassVFXProps): import("react/jsx-runtime").JSX.Element;
25
+ export declare function FrostedGlassVFX({ hasBorderRadius, children, className, intensity, ...rest }: FrostedGlassVFXProps): React.JSX.Element;
26
26
  //# sourceMappingURL=FrostedGlassVFX.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrostedGlassVFX.d.ts","sourceRoot":"","sources":["../../src/FrostedGlassVFX/FrostedGlassVFX.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAEnD;;GAEG;AACH,OAAO,wGAAwG,CAAA;AAC/G,OAAO,qHAAqH,CAAA;AAK5H,eAAO,MAAM,wBAAwB,oCAAqC,CAAA;AAC1E,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA;AAChF,eAAO,MAAM,+BAA+B,EAAE,wBAAmC,CAAA;AAEjF,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,cAAc,CAAC,GAC1D,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IACrC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,wBAAwB,CAAA;CACrC,CAAA;AAEH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,eAAsB,EACtB,QAAQ,EACR,SAAS,EACT,SAA2C,EAC3C,GAAG,IAAI,EACR,EAAE,oBAAoB,2CActB"}
1
+ {"version":3,"file":"FrostedGlassVFX.d.ts","sourceRoot":"","sources":["../../src/FrostedGlassVFX/FrostedGlassVFX.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAEnD;;GAEG;AACH,OAAO,wGAAwG,CAAA;AAC/G,OAAO,qHAAqH,CAAA;AAK5H,eAAO,MAAM,wBAAwB,oCAAqC,CAAA;AAC1E,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA;AAChF,eAAO,MAAM,+BAA+B,EAAE,wBAAmC,CAAA;AAEjF,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,cAAc,CAAC,GAC1D,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IACrC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,wBAAwB,CAAA;CACrC,CAAA;AAEH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,eAAsB,EACtB,QAAQ,EACR,SAAS,EACT,SAA2C,EAC3C,GAAG,IAAI,EACR,EAAE,oBAAoB,qBActB"}
@@ -1,4 +1,4 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
2
  import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes-CMw13Yda.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base-BlFewKzM.css';/* empty css */
3
3
  /* empty css */
4
4
  import t from "./FrostedGlassVFX.module.js";
@@ -1 +1 @@
1
- {"version":3,"file":"FrostedGlassVFX.js","names":[],"sources":["../../src/FrostedGlassVFX/FrostedGlassVFX.tsx"],"sourcesContent":["import React from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../component-helpers'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './FrostedGlassVFX.module.css'\n\nexport const FrostedGlassVFXIntensity = ['low', 'medium', 'high'] as const\nexport type FrostedGlassVFXIntensity = (typeof FrostedGlassVFXIntensity)[number]\nexport const defaultFrostedGlassVFXIntensity: FrostedGlassVFXIntensity = 'medium'\n\nexport type FrostedGlassVFXProps = BaseProps<HTMLDivElement> &\n React.HTMLAttributes<HTMLDivElement> & {\n /**\n * Applies rounded corners\n */\n hasBorderRadius?: boolean\n /**\n * Controls the blur amount\n */\n intensity?: FrostedGlassVFXIntensity\n }\n\n/**\n * FrostedGlassVFX component\n * {@link https://primer.style/brand/components/FrostedGlassVFX/ See usage examples}.\n */\nexport function FrostedGlassVFX({\n hasBorderRadius = true,\n children,\n className,\n intensity = defaultFrostedGlassVFXIntensity,\n ...rest\n}: FrostedGlassVFXProps) {\n return (\n <div\n className={clsx(\n styles.FrostedGlassVFX,\n hasBorderRadius && styles['FrostedGlassVFX--rounded-corners'],\n styles[`FrostedGlassVFX--intensity-${intensity}`],\n className,\n )}\n {...rest}\n >\n {children}\n </div>\n )\n}\n"],"mappings":";;;;;;;AAaA,IAAa,IAA2B;CAAC;CAAO;CAAU;CAAO,EAEpD,IAA4D;AAkBzE,SAAgB,EAAgB,EAC9B,qBAAkB,IAClB,aACA,cACA,eAAY,GACZ,GAAG,KACoB;AACvB,QACE,kBAAC,OAAD;EACE,WAAW,EACT,EAAO,iBACP,KAAmB,EAAO,qCAC1B,EAAO,8BAA8B,MACrC,EACD;EACD,GAAI;EAEH;EACG,CAAA"}
1
+ {"version":3,"file":"FrostedGlassVFX.js","names":[],"sources":["../../src/FrostedGlassVFX/FrostedGlassVFX.tsx"],"sourcesContent":["import React from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../component-helpers'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './FrostedGlassVFX.module.css'\n\nexport const FrostedGlassVFXIntensity = ['low', 'medium', 'high'] as const\nexport type FrostedGlassVFXIntensity = (typeof FrostedGlassVFXIntensity)[number]\nexport const defaultFrostedGlassVFXIntensity: FrostedGlassVFXIntensity = 'medium'\n\nexport type FrostedGlassVFXProps = BaseProps<HTMLDivElement> &\n React.HTMLAttributes<HTMLDivElement> & {\n /**\n * Applies rounded corners\n */\n hasBorderRadius?: boolean\n /**\n * Controls the blur amount\n */\n intensity?: FrostedGlassVFXIntensity\n }\n\n/**\n * FrostedGlassVFX component\n * {@link https://primer.style/brand/components/FrostedGlassVFX/ See usage examples}.\n */\nexport function FrostedGlassVFX({\n hasBorderRadius = true,\n children,\n className,\n intensity = defaultFrostedGlassVFXIntensity,\n ...rest\n}: FrostedGlassVFXProps) {\n return (\n <div\n className={clsx(\n styles.FrostedGlassVFX,\n hasBorderRadius && styles['FrostedGlassVFX--rounded-corners'],\n styles[`FrostedGlassVFX--intensity-${intensity}`],\n className,\n )}\n {...rest}\n >\n {children}\n </div>\n )\n}\n"],"mappings":";;;;;;;AAaA,IAAa,IAA2B;CAAC;CAAO;CAAU;AAAM,GAEnD,IAA4D;AAkBzE,SAAgB,EAAgB,EAC9B,qBAAkB,IAClB,aACA,cACA,eAAY,GACZ,GAAG,KACoB;CACvB,OACE,kBAAC,OAAD;EACE,WAAW,EACT,EAAO,iBACP,KAAmB,EAAO,qCAC1B,EAAO,8BAA8B,MACrC,CACF;EACA,GAAI;EAEH;CACE,CAAA;AAET"}
@@ -1,11 +1,12 @@
1
- import './FrostedGlassVFX.module-CBwswPOI.css';var e = {
2
- FrostedGlassVFX: "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX___n7bAR",
1
+ import './FrostedGlassVFX.module-CBwswPOI.css';//#region src/FrostedGlassVFX/FrostedGlassVFX.module.css
2
+ var e = "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX___n7bAR", t = {
3
+ FrostedGlassVFX: e,
3
4
  "FrostedGlassVFX--rounded-corners": "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX--rounded-corners___4Ve0_",
4
5
  "FrostedGlassVFX--intensity-low": "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX--intensity-low___sfdan",
5
6
  "FrostedGlassVFX--intensity-medium": "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX--intensity-medium___Tnplu",
6
7
  "FrostedGlassVFX--intensity-high": "Primer_Brand__FrostedGlassVFX-module__FrostedGlassVFX--intensity-high___pdX39"
7
8
  };
8
9
  //#endregion
9
- export { e as default };
10
+ export { e as FrostedGlassVFX, t as default };
10
11
 
11
12
  //# sourceMappingURL=FrostedGlassVFX.module.js.map
@@ -92,9 +92,9 @@ export declare const Grid: React.NamedExoticComponent<React.HTMLAttributes<"div"
92
92
  } & BaseProps<HTMLDivElement> & {
93
93
  children?: React.ReactNode | undefined;
94
94
  }> & {
95
- readonly type: ({ className, children, as, fullWidth, enableOverlay, enableGutters, columnGap, rowGap, ["data-testid"]: testId, ...rest }: PropsWithChildren<GridProps>) => import("react/jsx-runtime").JSX.Element;
95
+ readonly type: ({ className, children, as, fullWidth, enableOverlay, enableGutters, columnGap, rowGap, ["data-testid"]: testId, ...rest }: PropsWithChildren<GridProps>) => JSX.Element;
96
96
  } & {
97
- Column: React.MemoExoticComponent<({ children, as, span, start, className, ...rest }: PropsWithChildren<GridColumnProps>) => import("react/jsx-runtime").JSX.Element>;
97
+ Column: React.MemoExoticComponent<({ children, as, span, start, className, ...rest }: PropsWithChildren<GridColumnProps>) => JSX.Element>;
98
98
  testIds: {
99
99
  root: string;
100
100
  };
package/esm/Grid/Grid.js CHANGED
@@ -1,5 +1,5 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
2
- import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/grid-Cjk6fsH8.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes-6QocK2fy.css';/* empty css */
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
+ import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes-6QocK2fy.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/grid/grid-Cjk6fsH8.css';/* empty css */
3
3
  /* empty css */
4
4
  import t from "./Grid.module.js";
5
5
  import { useId as n } from "../hooks/useId.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.js","names":[],"sources":["../../src/Grid/Grid.tsx"],"sourcesContent":["import React, {HTMLAttributes, PropsWithChildren, memo} from 'react'\nimport type {JSX} from 'react'\n\nimport {clsx} from 'clsx'\n\nimport type {BaseProps} from '../component-helpers'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/grid/grid.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Grid.module.css'\nimport {useId} from '../hooks/useId'\n\nconst testIds = {\n root: 'Grid',\n}\n\ntype ResponsiveMap = {\n xsmall?: GridColumnIndex\n small?: GridColumnIndex\n medium?: GridColumnIndex\n large?: GridColumnIndex\n xlarge?: GridColumnIndex\n xxlarge?: GridColumnIndex\n}\n\nexport type GridColumnIndex = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12\n\nexport type GridProps<T extends keyof JSX.IntrinsicElements = 'div'> = React.HTMLAttributes<T> & {\n /**\n * The HTML element used to render the grid.\n */\n as?: T | 'div' | 'span' | 'section'\n /**\n * Visual aid to help with alignment.\n */\n enableOverlay?: boolean\n /**\n * Enable/disable default gutters\n */\n enableGutters?: boolean\n /**\n * Sets the gap between columns.\n */\n columnGap?: 'none' | 'default'\n /**\n * Sets the gap between rows.\n */\n rowGap?: 'none' | 'default'\n /**\n * Fills the width of the parent container and removes the max-width.\n */\n fullWidth?: boolean\n /**\n * Test id for the root element.\n */\n ['data-testid']?: string\n} & (T extends 'span'\n ? BaseProps<HTMLSpanElement>\n : T extends 'section'\n ? BaseProps<HTMLElement>\n : BaseProps<HTMLDivElement>)\n\nconst _GridRoot = memo(\n ({\n className,\n children,\n as = 'div',\n fullWidth = false,\n enableOverlay = false,\n enableGutters = true,\n columnGap = 'default',\n rowGap = 'default',\n ['data-testid']: testId,\n ...rest\n }: PropsWithChildren<GridProps>) => {\n const gridClass = clsx(\n styles.Grid,\n styles[`Grid--columnGap-${columnGap}`],\n styles[`Grid--rowGap-${rowGap}`],\n enableOverlay && styles['Grid--has-overlay'],\n fullWidth && styles['Grid--full-width'],\n enableGutters && styles['Grid--has-gutters'],\n className,\n )\n\n const testIdUID = useId(testId)\n\n const validElements = ['div', 'span', 'section']\n const Component = validElements.includes(as) ? as : 'div'\n\n return (\n <Component\n className={gridClass}\n data-testid={testId || `${testIds.root}-${testIdUID}`}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n {children}\n </Component>\n )\n },\n)\n\ntype GridColumnProps<T extends keyof JSX.IntrinsicElements = 'div'> = {\n as?: T | 'div' | 'span' | 'section'\n span?: GridColumnIndex | ResponsiveMap\n start?: GridColumnIndex | ResponsiveMap\n} & (T extends 'span'\n ? BaseProps<HTMLSpanElement> & React.HTMLAttributes<HTMLSpanElement>\n : T extends 'section'\n ? BaseProps<HTMLElement> & React.HTMLAttributes<HTMLElement>\n : BaseProps<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement>)\n\nconst Column = memo(\n ({children, as = 'div', span = 12, start, className, ...rest}: PropsWithChildren<GridColumnProps>) => {\n const validElements = ['div', 'span', 'section']\n const Component = validElements.includes(as) ? as : 'div'\n\n const columnClassArray = [styles['Grid__column']]\n\n if (typeof span === 'number') {\n columnClassArray.push(styles[`Grid__column--span-${span}`])\n } else if (typeof span === 'object') {\n for (const [key, value] of Object.entries(span)) {\n if (key === 'xsmall') {\n columnClassArray.push(styles[`Grid__column--xsmall-span-${value}`])\n } else {\n columnClassArray.push(styles[`Grid__column--${key}-span-${value}`])\n }\n }\n }\n\n if (typeof start === 'number') {\n columnClassArray.push(styles[`Grid__column--start-${start}`])\n } else if (typeof start === 'object') {\n for (const [key, value] of Object.entries(start)) {\n if (key === 'xsmall') {\n columnClassArray.push(styles[`Grid__column--xsmall-start-${value}`])\n } else {\n columnClassArray.push(styles[`Grid__column--${key}-start-${value}`])\n }\n }\n }\n\n const classes = clsx(columnClassArray, className)\n return (\n <Component className={classes} {...rest}>\n {children}\n </Component>\n )\n },\n)\n\n/**\n * Use Grid to create flexible and responsive grid-based layouts\n * @see https://primer.style/brand/components/Grid\n * @example\n * <Grid>\n * <Grid.Column span=\"6\">\n * ...\n * </Grid.Column>\n * </Grid>\n */\nexport const Grid = Object.assign(_GridRoot, {\n Column,\n testIds,\n})\n"],"mappings":";;;;;;;;AAiBA,IAAM,IAAU,EACd,MAAM,QACP,EAgDK,IAAY,GACf,EACC,cACA,aACA,QAAK,OACL,eAAY,IACZ,mBAAgB,IAChB,mBAAgB,IAChB,eAAY,WACZ,YAAS,WACR,eAAgB,GACjB,GAAG,QAC+B;CAClC,IAAM,IAAY,EAChB,EAAO,MACP,EAAO,mBAAmB,MAC1B,EAAO,gBAAgB,MACvB,KAAiB,EAAO,sBACxB,KAAa,EAAO,qBACpB,KAAiB,EAAO,sBACxB,EACD,EAEK,IAAY,EAAM,EAAO;AAK/B,QACE,kBAHgB;EADK;EAAO;EAAQ;EACpB,CAAc,SAAS,EAAG,GAAG,IAAK,OAGlD;EACE,WAAW;EACX,eAAa,KAAU,GAAG,EAAQ,KAAK,GAAG;EAC1C,GAAK;EAEJ;EACS,CAAA;EAGjB,EAYK,IAAS,GACZ,EAAC,aAAU,QAAK,OAAO,UAAO,IAAI,UAAO,cAAW,GAAG,QAA8C;CAEpG,IAAM,IAAY;EADK;EAAO;EAAQ;EACpB,CAAc,SAAS,EAAG,GAAG,IAAK,OAE9C,IAAmB,CAAC,EAAO,aAAgB;AAEjD,KAAI,OAAO,KAAS,SAClB,GAAiB,KAAK,EAAO,sBAAsB,KAAQ;UAClD,OAAO,KAAS,SACzB,MAAK,IAAM,CAAC,GAAK,MAAU,OAAO,QAAQ,EAAK,CAC7C,CAAI,MAAQ,WACV,EAAiB,KAAK,EAAO,6BAA6B,KAAS,GAEnE,EAAiB,KAAK,EAAO,iBAAiB,EAAI,QAAQ,KAAS;AAKzE,KAAI,OAAO,KAAU,SACnB,GAAiB,KAAK,EAAO,uBAAuB,KAAS;UACpD,OAAO,KAAU,SAC1B,MAAK,IAAM,CAAC,GAAK,MAAU,OAAO,QAAQ,EAAM,CAC9C,CAAI,MAAQ,WACV,EAAiB,KAAK,EAAO,8BAA8B,KAAS,GAEpE,EAAiB,KAAK,EAAO,iBAAiB,EAAI,SAAS,KAAS;AAM1E,QACE,kBAAC,GAAD;EAAW,WAFG,EAAK,GAAkB,EAEf;EAAS,GAAI;EAChC;EACS,CAAA;EAGjB,EAYY,IAAO,OAAO,OAAO,GAAW;CAC3C;CACA;CACD,CAAC"}
1
+ {"version":3,"file":"Grid.js","names":[],"sources":["../../src/Grid/Grid.tsx"],"sourcesContent":["import React, {HTMLAttributes, PropsWithChildren, memo} from 'react'\nimport type {JSX} from 'react'\n\nimport {clsx} from 'clsx'\n\nimport type {BaseProps} from '../component-helpers'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/grid/grid.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Grid.module.css'\nimport {useId} from '../hooks/useId'\n\nconst testIds = {\n root: 'Grid',\n}\n\ntype ResponsiveMap = {\n xsmall?: GridColumnIndex\n small?: GridColumnIndex\n medium?: GridColumnIndex\n large?: GridColumnIndex\n xlarge?: GridColumnIndex\n xxlarge?: GridColumnIndex\n}\n\nexport type GridColumnIndex = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12\n\nexport type GridProps<T extends keyof JSX.IntrinsicElements = 'div'> = React.HTMLAttributes<T> & {\n /**\n * The HTML element used to render the grid.\n */\n as?: T | 'div' | 'span' | 'section'\n /**\n * Visual aid to help with alignment.\n */\n enableOverlay?: boolean\n /**\n * Enable/disable default gutters\n */\n enableGutters?: boolean\n /**\n * Sets the gap between columns.\n */\n columnGap?: 'none' | 'default'\n /**\n * Sets the gap between rows.\n */\n rowGap?: 'none' | 'default'\n /**\n * Fills the width of the parent container and removes the max-width.\n */\n fullWidth?: boolean\n /**\n * Test id for the root element.\n */\n ['data-testid']?: string\n} & (T extends 'span'\n ? BaseProps<HTMLSpanElement>\n : T extends 'section'\n ? BaseProps<HTMLElement>\n : BaseProps<HTMLDivElement>)\n\nconst _GridRoot = memo(\n ({\n className,\n children,\n as = 'div',\n fullWidth = false,\n enableOverlay = false,\n enableGutters = true,\n columnGap = 'default',\n rowGap = 'default',\n ['data-testid']: testId,\n ...rest\n }: PropsWithChildren<GridProps>) => {\n const gridClass = clsx(\n styles.Grid,\n styles[`Grid--columnGap-${columnGap}`],\n styles[`Grid--rowGap-${rowGap}`],\n enableOverlay && styles['Grid--has-overlay'],\n fullWidth && styles['Grid--full-width'],\n enableGutters && styles['Grid--has-gutters'],\n className,\n )\n\n const testIdUID = useId(testId)\n\n const validElements = ['div', 'span', 'section']\n const Component = validElements.includes(as) ? as : 'div'\n\n return (\n <Component\n className={gridClass}\n data-testid={testId || `${testIds.root}-${testIdUID}`}\n {...(rest as HTMLAttributes<HTMLElement>)}\n >\n {children}\n </Component>\n )\n },\n)\n\ntype GridColumnProps<T extends keyof JSX.IntrinsicElements = 'div'> = {\n as?: T | 'div' | 'span' | 'section'\n span?: GridColumnIndex | ResponsiveMap\n start?: GridColumnIndex | ResponsiveMap\n} & (T extends 'span'\n ? BaseProps<HTMLSpanElement> & React.HTMLAttributes<HTMLSpanElement>\n : T extends 'section'\n ? BaseProps<HTMLElement> & React.HTMLAttributes<HTMLElement>\n : BaseProps<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement>)\n\nconst Column = memo(\n ({children, as = 'div', span = 12, start, className, ...rest}: PropsWithChildren<GridColumnProps>) => {\n const validElements = ['div', 'span', 'section']\n const Component = validElements.includes(as) ? as : 'div'\n\n const columnClassArray = [styles['Grid__column']]\n\n if (typeof span === 'number') {\n columnClassArray.push(styles[`Grid__column--span-${span}`])\n } else if (typeof span === 'object') {\n for (const [key, value] of Object.entries(span)) {\n if (key === 'xsmall') {\n columnClassArray.push(styles[`Grid__column--xsmall-span-${value}`])\n } else {\n columnClassArray.push(styles[`Grid__column--${key}-span-${value}`])\n }\n }\n }\n\n if (typeof start === 'number') {\n columnClassArray.push(styles[`Grid__column--start-${start}`])\n } else if (typeof start === 'object') {\n for (const [key, value] of Object.entries(start)) {\n if (key === 'xsmall') {\n columnClassArray.push(styles[`Grid__column--xsmall-start-${value}`])\n } else {\n columnClassArray.push(styles[`Grid__column--${key}-start-${value}`])\n }\n }\n }\n\n const classes = clsx(columnClassArray, className)\n return (\n <Component className={classes} {...rest}>\n {children}\n </Component>\n )\n },\n)\n\n/**\n * Use Grid to create flexible and responsive grid-based layouts\n * @see https://primer.style/brand/components/Grid\n * @example\n * <Grid>\n * <Grid.Column span=\"6\">\n * ...\n * </Grid.Column>\n * </Grid>\n */\nexport const Grid = Object.assign(_GridRoot, {\n Column,\n testIds,\n})\n"],"mappings":";;;;;;;;AAiBA,IAAM,IAAU,EACd,MAAM,OACR,GAgDM,IAAY,GACf,EACC,cACA,aACA,QAAK,OACL,eAAY,IACZ,mBAAgB,IAChB,mBAAgB,IAChB,eAAY,WACZ,YAAS,WACR,eAAgB,GACjB,GAAG,QAC+B;CAClC,IAAM,IAAY,EAChB,EAAO,MACP,EAAO,mBAAmB,MAC1B,EAAO,gBAAgB,MACvB,KAAiB,EAAO,sBACxB,KAAa,EAAO,qBACpB,KAAiB,EAAO,sBACxB,CACF,GAEM,IAAY,EAAM,CAAM;CAK9B,OACE,kBAHgB;EADK;EAAO;EAAQ;CACpB,CAAA,CAAc,SAAS,CAAE,IAAI,IAAK,OAGlD;EACE,WAAW;EACX,eAAa,KAAU,GAAG,EAAQ,KAAK,GAAG;EAC1C,GAAK;EAEJ;CACQ,CAAA;AAEf,CACF,GAYM,IAAS,GACZ,EAAC,aAAU,QAAK,OAAO,UAAO,IAAI,UAAO,cAAW,GAAG,QAA8C;CAEpG,IAAM,IAAY;EADK;EAAO;EAAQ;CACpB,CAAA,CAAc,SAAS,CAAE,IAAI,IAAK,OAE9C,IAAmB,CAAC,EAAO,YAAe;CAEhD,IAAI,OAAO,KAAS,UAClB,EAAiB,KAAK,EAAO,sBAAsB,IAAO;MACrD,IAAI,OAAO,KAAS,UACzB,KAAK,IAAM,CAAC,GAAK,MAAU,OAAO,QAAQ,CAAI,GAC5C,AAAI,MAAQ,WACV,EAAiB,KAAK,EAAO,6BAA6B,IAAQ,IAElE,EAAiB,KAAK,EAAO,iBAAiB,EAAI,QAAQ,IAAQ;CAKxE,IAAI,OAAO,KAAU,UACnB,EAAiB,KAAK,EAAO,uBAAuB,IAAQ;MACvD,IAAI,OAAO,KAAU,UAC1B,KAAK,IAAM,CAAC,GAAK,MAAU,OAAO,QAAQ,CAAK,GAC7C,AAAI,MAAQ,WACV,EAAiB,KAAK,EAAO,8BAA8B,IAAQ,IAEnE,EAAiB,KAAK,EAAO,iBAAiB,EAAI,SAAS,IAAQ;CAMzE,OACE,kBAAC,GAAD;EAAW,WAFG,EAAK,GAAkB,CAEf;EAAS,GAAI;EAChC;CACQ,CAAA;AAEf,CACF,GAYa,IAAO,OAAO,OAAO,GAAW;CAC3C;CACA;AACF,CAAC"}
@@ -1,11 +1,12 @@
1
- import './Grid.module-wbqYcimR.css';var e = {
2
- Grid: "Primer_Brand__Grid-module__Grid___H4Yx1",
1
+ import './Grid.module-wbqYcimR.css';//#region src/Grid/Grid.module.css
2
+ var e = "Primer_Brand__Grid-module__Grid___H4Yx1", t = "Primer_Brand__Grid-module__Grid__column___bCs9w", n = {
3
+ Grid: e,
3
4
  "Grid--columnGap-default": "Primer_Brand__Grid-module__Grid--columnGap-default___8j2YD",
4
5
  "Grid--columnGap-none": "Primer_Brand__Grid-module__Grid--columnGap-none___65Ui8",
5
6
  "Grid--rowGap-default": "Primer_Brand__Grid-module__Grid--rowGap-default___N2Nw3",
6
7
  "Grid--rowGap-none": "Primer_Brand__Grid-module__Grid--rowGap-none___z0LWC",
7
8
  "Grid--full-width": "Primer_Brand__Grid-module__Grid--full-width___G_Ie6",
8
- Grid__column: "Primer_Brand__Grid-module__Grid__column___bCs9w",
9
+ Grid__column: t,
9
10
  "Grid--has-overlay": "Primer_Brand__Grid-module__Grid--has-overlay___gHvxU",
10
11
  "Grid--has-gutters": "Primer_Brand__Grid-module__Grid--has-gutters___VMoP7",
11
12
  "Grid__column--span-1": "Primer_Brand__Grid-module__Grid__column--span-1___xENuz",
@@ -178,6 +179,6 @@ import './Grid.module-wbqYcimR.css';var e = {
178
179
  "Grid__column--xxlarge-start-12": "Primer_Brand__Grid-module__Grid__column--xxlarge-start-12___UkQLu"
179
180
  };
180
181
  //#endregion
181
- export { e as default };
182
+ export { e as Grid, t as Grid__column, n as default };
182
183
 
183
184
  //# sourceMappingURL=Grid.module.js.map
@@ -1,4 +1,4 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
2
  import { useAnimation as t } from "../animation/useAnimation.js";
3
3
  import n from "./Heading.module.js";
4
4
  import { forwardRef as r, useMemo as i } from "react";
@@ -1 +1 @@
1
- {"version":3,"file":"Heading.js","names":[],"sources":["../../src/Heading/Heading.tsx"],"sourcesContent":["import React, {PropsWithChildren, forwardRef, useMemo} from 'react'\nimport {clsx} from 'clsx'\nimport styles from './Heading.module.css'\nimport type {BaseProps} from '../component-helpers'\nimport {useAnimation} from '../animation'\n\nexport const HeadingSizes = ['display', '1', '2', '3', '4', '5', '6', 'subhead-large', 'subhead-medium'] as const\nexport const HeadingTags = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] as const\n\nexport const HeadingWeights = [\n 'heavy',\n 'extrabold',\n 'bold',\n 'semibold',\n 'medium',\n 'normal',\n 'light',\n 'extralight',\n] as const\nexport const HeadingStretch = ['condensed', 'normal', 'expanded'] as const\nexport const HeadingLetterSpacing = ['condensed', 'normal', 'none'] as const\nexport const HeadingFontVariants = ['mona-sans', 'hubot-sans', 'monospace'] as const\n\nexport const defaultHeadingTag = HeadingTags[1]\nexport const defaultHeadingFont = HeadingFontVariants[0]\n\ntype HeadingWeightVariants = (typeof HeadingWeights)[number]\ntype HeadingStretchVariants = (typeof HeadingStretch)[number]\ntype HeadingLetterSpacingVariants = (typeof HeadingLetterSpacing)[number]\ntype HeadingFontVariants = (typeof HeadingFontVariants)[number]\ntype HeadingTextWrapVariants = 'wrap' | 'balance'\n\ntype ResponsiveStretchMap = {\n narrow?: HeadingStretchVariants\n regular?: HeadingStretchVariants\n wide?: HeadingStretchVariants\n}\n\ntype ResponsiveLetterSpacingMap = {\n narrow?: HeadingLetterSpacingVariants\n regular?: HeadingLetterSpacingVariants\n wide?: HeadingLetterSpacingVariants\n}\n\ntype ResponsiveWeightMap = {\n narrow?: HeadingWeightVariants\n regular?: HeadingWeightVariants\n wide?: HeadingWeightVariants\n}\n\nexport const classMap = {\n h1: HeadingSizes[1],\n h2: HeadingSizes[2],\n h3: HeadingSizes[3],\n h4: HeadingSizes[4],\n h5: HeadingSizes[5],\n h6: HeadingSizes[6],\n}\n\nexport type HeadingProps = {\n /** Semantic heading level (`h1`–`h6`) only. Use `size` to apply the correct visual size. */\n as?: (typeof HeadingTags)[number]\n /**\n * Controls the visual size, independent of `as`. Should be used whenever as prop is used, as the defaults may not be ideal for all use-cases.\n *\n * @example\n * <Heading as=\"h2\" size=\"4\">This h2 will appear visually identical to an h4</Heading>\n */\n size?: (typeof HeadingSizes)[number]\n weight?: HeadingWeightVariants | ResponsiveWeightMap\n stretch?: HeadingStretchVariants | ResponsiveStretchMap\n letterSpacing?: HeadingLetterSpacingVariants | ResponsiveLetterSpacingMap\n font?: HeadingFontVariants\n textWrap?: HeadingTextWrapVariants\n} & React.HTMLAttributes<HTMLHeadingElement> &\n BaseProps<HTMLHeadingElement>\n\n/**\n * Use the heading component to render titles or subtitle text.\n */\nexport const Heading = forwardRef<HTMLHeadingElement, PropsWithChildren<HeadingProps>>(\n (\n {\n animate,\n className,\n children,\n as: HeadingComponent = defaultHeadingTag,\n size,\n letterSpacing,\n weight,\n stretch,\n style,\n font = 'mona-sans',\n textWrap = 'balance',\n ...rest\n },\n ref,\n ) => {\n const {classes: animationClasses, styles: animationInlineStyles} = useAnimation(animate)\n\n const buildClass = (type: string, value) => {\n if (!value) return null\n return typeof value === 'string'\n ? styles[`Heading--${type}-${value}`]\n : Object.keys(value)\n .map(viewport => {\n return styles[`Heading-${viewport}--${type}-${value[viewport]}`]\n })\n .join(' ')\n }\n\n const weightClass = useMemo(() => buildClass('weight', weight), [weight])\n const stretchClass = useMemo(() => buildClass('stretch', stretch), [stretch])\n const letterSpacingClass = useMemo(() => buildClass('letter-spacing', letterSpacing), [letterSpacing])\n\n const headingClassNames = clsx(\n animationClasses,\n styles.Heading,\n styles[`Heading-font--${font}`],\n !size && styles[`Heading--${classMap[HeadingComponent]}`],\n size && styles[`Heading--${size}`],\n styles[`Heading--textWrap-${textWrap}`],\n weight && weightClass,\n stretch && stretchClass,\n letterSpacingClass && letterSpacingClass,\n className,\n )\n\n if (!HeadingTags.includes(HeadingComponent)) {\n // eslint-disable-next-line no-console\n console.error(`Heading: 'as' prop must be one of ${HeadingTags.join(', ')}`)\n return null\n }\n\n return (\n <HeadingComponent ref={ref} className={headingClassNames} style={{...animationInlineStyles, ...style}} {...rest}>\n {children}\n </HeadingComponent>\n )\n },\n)\n"],"mappings":";;;;;;AAMA,IAAa,IAAe;CAAC;CAAW;CAAK;CAAK;CAAK;CAAK;CAAK;CAAK;CAAiB;CAAiB,EAC3F,IAAc;CAAC;CAAM;CAAM;CAAM;CAAM;CAAM;CAAK,EAElD,IAAiB;CAC5B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,EACY,IAAiB;CAAC;CAAa;CAAU;CAAW,EACpD,IAAuB;CAAC;CAAa;CAAU;CAAO,EACtD,IAAsB;CAAC;CAAa;CAAc;CAAY,EAE9D,IAAoB,EAAY,IAChC,IAAqB,EAAoB,IA0BzC,IAAW;CACtB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CAClB,EAuBY,IAAU,GAEnB,EACE,YACA,cACA,aACA,IAAI,IAAmB,GACvB,SACA,kBACA,WACA,YACA,UACA,UAAO,aACP,cAAW,WACX,GAAG,KAEL,MACG;CACH,IAAM,EAAC,SAAS,GAAkB,QAAQ,MAAyB,EAAa,EAAQ,EAElF,KAAc,GAAc,MAC3B,IACE,OAAO,KAAU,WACpB,EAAO,YAAY,EAAK,GAAG,OAC3B,OAAO,KAAK,EAAM,CACf,KAAI,MACI,EAAO,WAAW,EAAS,IAAI,EAAK,GAAG,EAAM,MACpD,CACD,KAAK,IAAI,GAPG,MAUf,IAAc,QAAc,EAAW,UAAU,EAAO,EAAE,CAAC,EAAO,CAAC,EACnE,IAAe,QAAc,EAAW,WAAW,EAAQ,EAAE,CAAC,EAAQ,CAAC,EACvE,IAAqB,QAAc,EAAW,kBAAkB,EAAc,EAAE,CAAC,EAAc,CAAC,EAEhG,IAAoB,EACxB,GACA,EAAO,SACP,EAAO,iBAAiB,MACxB,CAAC,KAAQ,EAAO,YAAY,EAAS,OACrC,KAAQ,EAAO,YAAY,MAC3B,EAAO,qBAAqB,MAC5B,KAAU,GACV,KAAW,GACX,KAAsB,GACtB,EACD;AAQD,QANK,EAAY,SAAS,EAAiB,GAOzC,kBAAC,GAAD;EAAuB;EAAK,WAAW;EAAmB,OAAO;GAAC,GAAG;GAAuB,GAAG;GAAM;EAAE,GAAI;EACxG;EACgB,CAAA,IAPnB,QAAQ,MAAM,qCAAqC,EAAY,KAAK,KAAK,GAAG,EACrE;EASZ"}
1
+ {"version":3,"file":"Heading.js","names":[],"sources":["../../src/Heading/Heading.tsx"],"sourcesContent":["import React, {PropsWithChildren, forwardRef, useMemo} from 'react'\nimport {clsx} from 'clsx'\nimport styles from './Heading.module.css'\nimport type {BaseProps} from '../component-helpers'\nimport {useAnimation} from '../animation'\n\nexport const HeadingSizes = ['display', '1', '2', '3', '4', '5', '6', 'subhead-large', 'subhead-medium'] as const\nexport const HeadingTags = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] as const\n\nexport const HeadingWeights = [\n 'heavy',\n 'extrabold',\n 'bold',\n 'semibold',\n 'medium',\n 'normal',\n 'light',\n 'extralight',\n] as const\nexport const HeadingStretch = ['condensed', 'normal', 'expanded'] as const\nexport const HeadingLetterSpacing = ['condensed', 'normal', 'none'] as const\nexport const HeadingFontVariants = ['mona-sans', 'hubot-sans', 'monospace'] as const\n\nexport const defaultHeadingTag = HeadingTags[1]\nexport const defaultHeadingFont = HeadingFontVariants[0]\n\ntype HeadingWeightVariants = (typeof HeadingWeights)[number]\ntype HeadingStretchVariants = (typeof HeadingStretch)[number]\ntype HeadingLetterSpacingVariants = (typeof HeadingLetterSpacing)[number]\ntype HeadingFontVariants = (typeof HeadingFontVariants)[number]\ntype HeadingTextWrapVariants = 'wrap' | 'balance'\n\ntype ResponsiveStretchMap = {\n narrow?: HeadingStretchVariants\n regular?: HeadingStretchVariants\n wide?: HeadingStretchVariants\n}\n\ntype ResponsiveLetterSpacingMap = {\n narrow?: HeadingLetterSpacingVariants\n regular?: HeadingLetterSpacingVariants\n wide?: HeadingLetterSpacingVariants\n}\n\ntype ResponsiveWeightMap = {\n narrow?: HeadingWeightVariants\n regular?: HeadingWeightVariants\n wide?: HeadingWeightVariants\n}\n\nexport const classMap = {\n h1: HeadingSizes[1],\n h2: HeadingSizes[2],\n h3: HeadingSizes[3],\n h4: HeadingSizes[4],\n h5: HeadingSizes[5],\n h6: HeadingSizes[6],\n}\n\nexport type HeadingProps = {\n /** Semantic heading level (`h1`–`h6`) only. Use `size` to apply the correct visual size. */\n as?: (typeof HeadingTags)[number]\n /**\n * Controls the visual size, independent of `as`. Should be used whenever as prop is used, as the defaults may not be ideal for all use-cases.\n *\n * @example\n * <Heading as=\"h2\" size=\"4\">This h2 will appear visually identical to an h4</Heading>\n */\n size?: (typeof HeadingSizes)[number]\n weight?: HeadingWeightVariants | ResponsiveWeightMap\n stretch?: HeadingStretchVariants | ResponsiveStretchMap\n letterSpacing?: HeadingLetterSpacingVariants | ResponsiveLetterSpacingMap\n font?: HeadingFontVariants\n textWrap?: HeadingTextWrapVariants\n} & React.HTMLAttributes<HTMLHeadingElement> &\n BaseProps<HTMLHeadingElement>\n\n/**\n * Use the heading component to render titles or subtitle text.\n */\nexport const Heading = forwardRef<HTMLHeadingElement, PropsWithChildren<HeadingProps>>(\n (\n {\n animate,\n className,\n children,\n as: HeadingComponent = defaultHeadingTag,\n size,\n letterSpacing,\n weight,\n stretch,\n style,\n font = 'mona-sans',\n textWrap = 'balance',\n ...rest\n },\n ref,\n ) => {\n const {classes: animationClasses, styles: animationInlineStyles} = useAnimation(animate)\n\n const buildClass = (type: string, value) => {\n if (!value) return null\n return typeof value === 'string'\n ? styles[`Heading--${type}-${value}`]\n : Object.keys(value)\n .map(viewport => {\n return styles[`Heading-${viewport}--${type}-${value[viewport]}`]\n })\n .join(' ')\n }\n\n const weightClass = useMemo(() => buildClass('weight', weight), [weight])\n const stretchClass = useMemo(() => buildClass('stretch', stretch), [stretch])\n const letterSpacingClass = useMemo(() => buildClass('letter-spacing', letterSpacing), [letterSpacing])\n\n const headingClassNames = clsx(\n animationClasses,\n styles.Heading,\n styles[`Heading-font--${font}`],\n !size && styles[`Heading--${classMap[HeadingComponent]}`],\n size && styles[`Heading--${size}`],\n styles[`Heading--textWrap-${textWrap}`],\n weight && weightClass,\n stretch && stretchClass,\n letterSpacingClass && letterSpacingClass,\n className,\n )\n\n if (!HeadingTags.includes(HeadingComponent)) {\n // eslint-disable-next-line no-console\n console.error(`Heading: 'as' prop must be one of ${HeadingTags.join(', ')}`)\n return null\n }\n\n return (\n <HeadingComponent ref={ref} className={headingClassNames} style={{...animationInlineStyles, ...style}} {...rest}>\n {children}\n </HeadingComponent>\n )\n },\n)\n"],"mappings":";;;;;;AAMA,IAAa,IAAe;CAAC;CAAW;CAAK;CAAK;CAAK;CAAK;CAAK;CAAK;CAAiB;AAAgB,GAC1F,IAAc;CAAC;CAAM;CAAM;CAAM;CAAM;CAAM;AAAI,GAEjD,IAAiB;CAC5B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,GACa,IAAiB;CAAC;CAAa;CAAU;AAAU,GACnD,IAAuB;CAAC;CAAa;CAAU;AAAM,GACrD,IAAsB;CAAC;CAAa;CAAc;AAAW,GAE7D,IAAoB,EAAY,IAChC,IAAqB,EAAoB,IA0BzC,IAAW;CACtB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;CACjB,IAAI,EAAa;AACnB,GAuBa,IAAU,GAEnB,EACE,YACA,cACA,aACA,IAAI,IAAmB,GACvB,SACA,kBACA,WACA,YACA,UACA,UAAO,aACP,cAAW,WACX,GAAG,KAEL,MACG;CACH,IAAM,EAAC,SAAS,GAAkB,QAAQ,MAAyB,EAAa,CAAO,GAEjF,KAAc,GAAc,MAC3B,IACE,OAAO,KAAU,WACpB,EAAO,YAAY,EAAK,GAAG,OAC3B,OAAO,KAAK,CAAK,CAAC,CACf,KAAI,MACI,EAAO,WAAW,EAAS,IAAI,EAAK,GAAG,EAAM,KACrD,CAAC,CACD,KAAK,GAAG,IAPI,MAUf,IAAc,QAAc,EAAW,UAAU,CAAM,GAAG,CAAC,CAAM,CAAC,GAClE,IAAe,QAAc,EAAW,WAAW,CAAO,GAAG,CAAC,CAAO,CAAC,GACtE,IAAqB,QAAc,EAAW,kBAAkB,CAAa,GAAG,CAAC,CAAa,CAAC,GAE/F,IAAoB,EACxB,GACA,EAAO,SACP,EAAO,iBAAiB,MACxB,CAAC,KAAQ,EAAO,YAAY,EAAS,OACrC,KAAQ,EAAO,YAAY,MAC3B,EAAO,qBAAqB,MAC5B,KAAU,GACV,KAAW,GACX,KAAsB,GACtB,CACF;CAQA,OANK,EAAY,SAAS,CAAgB,IAOxC,kBAAC,GAAD;EAAuB;EAAK,WAAW;EAAmB,OAAO;GAAC,GAAG;GAAuB,GAAG;EAAK;EAAG,GAAI;EACxG;CACe,CAAA,KAPlB,QAAQ,MAAM,qCAAqC,EAAY,KAAK,IAAI,GAAG,GACpE;AAQX,CACF"}
@@ -1,5 +1,6 @@
1
- import './Heading.module-YfiTxQkR.css';var e = {
2
- Heading: "Primer_Brand__Heading-module__Heading___fudyh",
1
+ import './Heading.module-YfiTxQkR.css';//#region src/Heading/Heading.module.css
2
+ var e = "Primer_Brand__Heading-module__Heading___fudyh", t = {
3
+ Heading: e,
3
4
  "Heading--textWrap-balance": "Primer_Brand__Heading-module__Heading--textWrap-balance___XJ9OD",
4
5
  "Heading--textWrap-wrap": "Primer_Brand__Heading-module__Heading--textWrap-wrap___OlXJ0",
5
6
  "Heading-font--hubot-sans": "Primer_Brand__Heading-module__Heading-font--hubot-sans___wXzzm",
@@ -73,6 +74,6 @@ import './Heading.module-YfiTxQkR.css';var e = {
73
74
  "Heading-wide--letter-spacing-none": "Primer_Brand__Heading-module__Heading-wide--letter-spacing-none___Mtq_D"
74
75
  };
75
76
  //#endregion
76
- export { e as default };
77
+ export { e as Heading, t as default };
77
78
 
78
79
  //# sourceMappingURL=Heading.module.js.map
package/esm/Hero/Hero.js CHANGED
@@ -1,4 +1,4 @@
1
- import e from "../node_modules/clsx/dist/clsx.js";
1
+ import { clsx as e } from "../node_modules/clsx/dist/clsx.js";
2
2
  import { Grid as t } from "../Grid/Grid.js";
3
3
  import { AnimationProvider as n } from "../animation/AnimationProvider/AnimationProvider.js";
4
4
  import { Stack as r } from "../Stack/Stack.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Hero.js","names":[],"sources":["../../src/Hero/Hero.tsx"],"sourcesContent":["import React, {forwardRef, Fragment, PropsWithChildren, useMemo} from 'react'\nimport {clsx} from 'clsx'\nimport {Grid} from '../Grid'\nimport {Stack} from '../Stack'\nimport {Box} from '../Box'\nimport type {BaseProps} from '../component-helpers'\nimport {AnimationProvider} from '../animation'\n\nimport {HeroContext, HeroMediaInlinePositionOptions} from './HeroContext'\nimport type {HeroMediaInlinePosition, HeroAlign, HeroVariant} from './HeroContext'\nimport {\n HeroLabel,\n HeroHeading,\n HeroDescription,\n HeroButtonGroup,\n HeroImage,\n HeroVideo,\n HeroEyebrow,\n HeroPrimaryAction,\n HeroSecondaryAction,\n} from './sub-components'\nimport type {HeroImageProps, HeroVideoProps} from './sub-components'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/hero/base.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Hero.module.css'\n\nconst testIds = {\n root: 'Hero',\n get video() {\n return `${this.root}-video`\n },\n get grid() {\n return `${this.root}-grid`\n },\n get imageWrapper() {\n return `${this.root}-imageWrapper`\n },\n}\n\nexport type HeroProps = BaseProps<HTMLElement> & {\n align?: HeroAlign\n imageContainerClassName?: string\n imageContainerStyle?: React.CSSProperties\n imageContainerRef?: React.RefObject<HTMLDivElement | null>\n imageBackgroundColor?: 'default' | 'subtle'\n variant?: HeroVariant\n enableAnimation?: boolean\n /**\n * Escape-hatch for inserting custom React components.\n * Warning:\n * This prop isn't advertised in our docs but remains part of the public API for edge-cases.\n * Need to use this prop? Please check in with #primer-brand first to confirm correct usage.\n */\n trailingComponent?: React.FunctionComponent\n 'data-testid'?: string\n}\n\nconst Root = forwardRef<HTMLElement, PropsWithChildren<HeroProps>>(\n (\n {\n className,\n align: alignProp = 'start',\n children,\n imageContainerClassName,\n imageContainerStyle,\n imageContainerRef,\n imageBackgroundColor,\n variant = 'default',\n trailingComponent: TrailingComponent,\n enableAnimation = false,\n 'data-testid': testId,\n ...rest\n },\n ref,\n ) => {\n const {\n HeroActions,\n HeroButtonGroupChild,\n HeroChildren,\n HeroImageChild,\n HeroVideoChild,\n HeroHeaderChildren,\n HeroDescriptionChild,\n } = useMemo(() => {\n const result = React.Children.toArray(children).reduce<{\n HeroActions: React.ReactElement[]\n HeroButtonGroupChild?: React.ReactElement\n HeroImageChild?: React.ReactElement<HeroImageProps>\n HeroVideoChild?: React.ReactElement<HeroVideoProps>\n HeroChildren: React.ReactElement[]\n HeroHeaderChildren: React.ReactElement[]\n HeroDescriptionChild?: React.ReactElement\n }>(\n (acc, child) => {\n if (React.isValidElement(child)) {\n if (child.type === HeroPrimaryAction || child.type === HeroSecondaryAction) {\n acc.HeroActions.push(child)\n } else if (child.type === HeroButtonGroup) {\n acc.HeroButtonGroupChild = child\n } else if (child.type === HeroImage) {\n acc.HeroImageChild = child as React.ReactElement<HeroImageProps>\n } else if (child.type === HeroVideo) {\n acc.HeroVideoChild = child as React.ReactElement<HeroVideoProps>\n } else {\n acc.HeroChildren.push(child)\n if (child.type === HeroLabel || child.type === HeroEyebrow || child.type === HeroHeading) {\n acc.HeroHeaderChildren.push(child)\n } else if (child.type === HeroDescription) {\n acc.HeroDescriptionChild = child\n }\n }\n }\n return acc\n },\n {\n HeroActions: [],\n HeroButtonGroupChild: undefined,\n HeroChildren: [],\n HeroImageChild: undefined,\n HeroVideoChild: undefined,\n HeroHeaderChildren: [],\n HeroDescriptionChild: undefined,\n },\n )\n\n // Prefer Hero.Image - don't show both\n if (result.HeroImageChild && result.HeroVideoChild) {\n result.HeroVideoChild = undefined\n }\n\n return result\n }, [children])\n\n const mediaPositionProp = HeroImageChild?.props.position || HeroVideoChild?.props.position\n\n const mediaPosition = (() => {\n if (variant === 'gridline-expressive' && mediaPositionProp?.startsWith('inline-')) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(\n `Hero: \"gridline-expressive\" variant does not support \"${mediaPositionProp}\" position. Defaulting to \"block-end\".`,\n )\n }\n return 'block-end'\n }\n return mediaPositionProp || 'block-end'\n })()\n const mediaWrapperHasBorder = HeroImageChild?.props.enableBorder ?? HeroVideoChild?.props.enableBorder ?? true\n const mediaPadding = HeroImageChild?.props.padding ?? HeroVideoChild?.props.padding ?? 'default'\n const hasInlineMedia = HeroMediaInlinePositionOptions.includes(mediaPosition as HeroMediaInlinePosition)\n const mediaChild = HeroImageChild || HeroVideoChild\n const isGridline = variant === 'gridline'\n const isGridlineExpressive = variant === 'gridline-expressive'\n const isBlockEndPosition = mediaPosition === 'block-end'\n\n if (\n variant === 'default' &&\n mediaPadding !== 'default' &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n `Hero: media padding is only supported by the \"gridline\" and \"gridline-expressive\" variants; ignoring padding=\"${mediaPadding}\".`,\n )\n }\n\n const isInvalidGridlineAlignment = isGridlineExpressive && alignProp === 'center'\n const align: HeroAlign = isInvalidGridlineAlignment ? 'start' : alignProp\n\n if (isInvalidGridlineAlignment && (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')) {\n // eslint-disable-next-line no-console\n console.warn('Hero: the \"gridline-expressive\" variant does not support align=\"center\"; using \"start\" instead.')\n }\n\n const Tag = (isGridline || isGridlineExpressive) && enableAnimation ? AnimationProvider : Fragment\n const tagProps =\n (isGridline || isGridlineExpressive) && enableAnimation\n ? {\n autoStaggerChildren: false,\n animationTrigger: 'immediate' as const,\n }\n : {}\n\n const useContainedLayout = (isGridline || isGridlineExpressive) && isBlockEndPosition\n const useInlineGridline = isGridline && hasInlineMedia\n\n const heroLayoutClass = HeroImageChild ? styles['Hero--layout-image'] : styles['Hero--layout-default']\n const isInlineStart = mediaPosition === 'inline-start'\n\n const renderTrailingComponent = (shouldAnimate: boolean) =>\n TrailingComponent && (\n <Box animate={shouldAnimate ? {variant: 'slide-in-up' as const, delay: 1000, duration: 1000} : undefined}>\n <div className={styles['Hero-trailing']}>\n <TrailingComponent />\n </div>\n </Box>\n )\n\n const renderActions = () => (\n <>\n {HeroButtonGroupChild}\n {HeroActions.length > 0 && <div className={styles['Hero-actions']}>{HeroActions}</div>}\n </>\n )\n\n return (\n <Tag {...tagProps}>\n <HeroContext.Provider value={{imagePosition: mediaPosition, variant, align, hasInlineMedia, enableAnimation}}>\n <section\n className={clsx(\n styles.Hero,\n styles[`Hero--variant-${variant}`],\n !hasInlineMedia && styles[`Hero--align-${align}`],\n heroLayoutClass,\n (HeroImageChild || HeroVideoChild) && styles[`Hero--image-pos-${mediaPosition}`],\n (HeroImageChild || HeroVideoChild) && hasInlineMedia && styles['Hero--image-pos-inline'],\n useInlineGridline && styles['Hero--variant-inline-gridline'],\n className,\n )}\n ref={ref}\n aria-labelledby=\"hero-section-brand-heading\"\n data-testid={testId || testIds.root}\n {...rest}\n >\n <Grid\n fullWidth={!useContainedLayout && !useInlineGridline}\n data-testid={testIds.grid}\n className={clsx(\n styles['Hero-grid'],\n styles[`Hero-grid--${mediaPosition}`],\n useContainedLayout && !isGridlineExpressive && styles['Hero-grid--contained'],\n useInlineGridline && styles['Hero-grid--bordered-inline'],\n isGridlineExpressive && styles['Hero-grid--expressive'],\n )}\n >\n {isGridlineExpressive ? (\n <>\n {/* Expressive variant: header column (left) */}\n <Grid.Column\n span={{medium: 12, large: HeroDescriptionChild ? 7 : 6}}\n className={styles['Hero-expressive-header-column']}\n >\n <Stack direction=\"vertical\" gap=\"none\" padding=\"none\" alignItems=\"flex-start\">\n {HeroHeaderChildren}\n </Stack>\n </Grid.Column>\n {/* Expressive variant: body column (right) */}\n <Grid.Column\n span={{medium: 12, large: HeroDescriptionChild ? 5 : 6}}\n className={styles['Hero-expressive-body-column']}\n >\n <Stack direction=\"vertical\" gap=\"none\" padding=\"none\" alignItems=\"flex-start\">\n {HeroDescriptionChild}\n {renderActions()}\n {renderTrailingComponent(enableAnimation)}\n </Stack>\n </Grid.Column>\n </>\n ) : (\n <>\n {/* Standard GridLine variant: text column */}\n {isInlineStart && mediaChild && !useContainedLayout && (\n <Grid.Column\n ref={imageContainerRef}\n span={{large: 6}}\n className={clsx(\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageContainer--bg-${imageBackgroundColor}`],\n useInlineGridline &&\n mediaPadding === 'all' &&\n styles['Hero-imageContainer--inline-padding-all'],\n useInlineGridline &&\n mediaPadding === 'none' &&\n styles['Hero-imageContainer--inline-padding-none'],\n useInlineGridline && styles['Hero-imageContainer--inline-bordered'],\n )}\n >\n <div\n className={clsx(styles['Hero-mediaContainer'], imageContainerClassName)}\n style={imageContainerStyle}\n >\n {mediaChild}\n </div>\n </Grid.Column>\n )}\n <Grid.Column span={{large: mediaChild && hasInlineMedia ? 6 : 12}}>\n <Stack\n className={clsx(\n useInlineGridline && styles['Hero-text-column--inline-gridline'],\n useInlineGridline && styles['Hero-contentColumn--bordered-inline'],\n )}\n direction=\"vertical\"\n gap=\"none\"\n padding=\"none\"\n alignItems={hasInlineMedia ? 'flex-start' : align === 'start' ? 'flex-start' : 'center'}\n justifyContent={hasInlineMedia ? undefined : align === 'start' ? 'flex-start' : 'center'}\n >\n {HeroChildren}\n {renderActions()}\n {renderTrailingComponent(isGridline && enableAnimation)}\n </Stack>\n </Grid.Column>\n {!isInlineStart && mediaChild && !useContainedLayout && (\n <Grid.Column\n ref={imageContainerRef}\n span={{large: hasInlineMedia ? 6 : 12}}\n className={clsx(\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageContainer--bg-${imageBackgroundColor}`],\n useInlineGridline &&\n mediaPadding === 'all' &&\n styles['Hero-imageContainer--inline-padding-all'],\n useInlineGridline &&\n mediaPadding === 'none' &&\n styles['Hero-imageContainer--inline-padding-none'],\n useInlineGridline && styles['Hero-imageContainer--inline-bordered'],\n )}\n >\n <div\n className={clsx(styles['Hero-mediaContainer'], imageContainerClassName)}\n style={imageContainerStyle}\n >\n {mediaChild}\n </div>\n </Grid.Column>\n )}\n </>\n )}\n </Grid>\n {mediaChild && useContainedLayout && (\n <div\n ref={imageContainerRef}\n data-testid={testIds.imageWrapper}\n className={clsx(\n styles['Hero-imageWrapper'],\n imageContainerClassName,\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageWrapper--bg-${imageBackgroundColor}`],\n mediaPadding === 'none' && styles['Hero-imageWrapper--padding-none'],\n )}\n style={imageContainerStyle}\n >\n <div\n className={clsx(\n styles['Hero-imageWrapper-inner'],\n mediaPadding === 'all' && styles['Hero-imageWrapper-inner--padding-all'],\n mediaPadding === 'none' && styles['Hero-imageWrapper-inner--padding-none'],\n mediaWrapperHasBorder && styles['Hero-imageWrapper-inner--with-gridline'],\n )}\n >\n {mediaChild}\n </div>\n </div>\n )}\n </section>\n </HeroContext.Provider>\n </Tag>\n )\n },\n)\n\nexport const Hero = Object.assign(Root, {\n Heading: HeroHeading,\n Description: HeroDescription,\n ButtonGroup: HeroButtonGroup,\n /**\n * @deprecated Use `Hero.ButtonGroup` with `Button` or `ActionMenu` children instead.\n * This component will be removed in a future release.\n */\n PrimaryAction: HeroPrimaryAction,\n /**\n * @deprecated Use `Hero.ButtonGroup` with `Button` or `ActionMenu` children instead.\n * This component will be removed in a future release.\n */\n SecondaryAction: HeroSecondaryAction,\n Image: HeroImage,\n Video: HeroVideo,\n Label: HeroLabel,\n Eyebrow: HeroEyebrow,\n testIds,\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"Hero.js","names":[],"sources":["../../src/Hero/Hero.tsx"],"sourcesContent":["import React, {forwardRef, Fragment, PropsWithChildren, useMemo} from 'react'\nimport {clsx} from 'clsx'\nimport {Grid} from '../Grid'\nimport {Stack} from '../Stack'\nimport {Box} from '../Box'\nimport type {BaseProps} from '../component-helpers'\nimport {AnimationProvider} from '../animation'\n\nimport {HeroContext, HeroMediaInlinePositionOptions} from './HeroContext'\nimport type {HeroMediaInlinePosition, HeroAlign, HeroVariant} from './HeroContext'\nimport {\n HeroLabel,\n HeroHeading,\n HeroDescription,\n HeroButtonGroup,\n HeroImage,\n HeroVideo,\n HeroEyebrow,\n HeroPrimaryAction,\n HeroSecondaryAction,\n} from './sub-components'\nimport type {HeroImageProps, HeroVideoProps} from './sub-components'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/hero/base.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Hero.module.css'\n\nconst testIds = {\n root: 'Hero',\n get video() {\n return `${this.root}-video`\n },\n get grid() {\n return `${this.root}-grid`\n },\n get imageWrapper() {\n return `${this.root}-imageWrapper`\n },\n}\n\nexport type HeroProps = BaseProps<HTMLElement> & {\n align?: HeroAlign\n imageContainerClassName?: string\n imageContainerStyle?: React.CSSProperties\n imageContainerRef?: React.RefObject<HTMLDivElement | null>\n imageBackgroundColor?: 'default' | 'subtle'\n variant?: HeroVariant\n enableAnimation?: boolean\n /**\n * Escape-hatch for inserting custom React components.\n * Warning:\n * This prop isn't advertised in our docs but remains part of the public API for edge-cases.\n * Need to use this prop? Please check in with #primer-brand first to confirm correct usage.\n */\n trailingComponent?: React.FunctionComponent\n 'data-testid'?: string\n}\n\nconst Root = forwardRef<HTMLElement, PropsWithChildren<HeroProps>>(\n (\n {\n className,\n align: alignProp = 'start',\n children,\n imageContainerClassName,\n imageContainerStyle,\n imageContainerRef,\n imageBackgroundColor,\n variant = 'default',\n trailingComponent: TrailingComponent,\n enableAnimation = false,\n 'data-testid': testId,\n ...rest\n },\n ref,\n ) => {\n const {\n HeroActions,\n HeroButtonGroupChild,\n HeroChildren,\n HeroImageChild,\n HeroVideoChild,\n HeroHeaderChildren,\n HeroDescriptionChild,\n } = useMemo(() => {\n const result = React.Children.toArray(children).reduce<{\n HeroActions: React.ReactElement[]\n HeroButtonGroupChild?: React.ReactElement\n HeroImageChild?: React.ReactElement<HeroImageProps>\n HeroVideoChild?: React.ReactElement<HeroVideoProps>\n HeroChildren: React.ReactElement[]\n HeroHeaderChildren: React.ReactElement[]\n HeroDescriptionChild?: React.ReactElement\n }>(\n (acc, child) => {\n if (React.isValidElement(child)) {\n if (child.type === HeroPrimaryAction || child.type === HeroSecondaryAction) {\n acc.HeroActions.push(child)\n } else if (child.type === HeroButtonGroup) {\n acc.HeroButtonGroupChild = child\n } else if (child.type === HeroImage) {\n acc.HeroImageChild = child as React.ReactElement<HeroImageProps>\n } else if (child.type === HeroVideo) {\n acc.HeroVideoChild = child as React.ReactElement<HeroVideoProps>\n } else {\n acc.HeroChildren.push(child)\n if (child.type === HeroLabel || child.type === HeroEyebrow || child.type === HeroHeading) {\n acc.HeroHeaderChildren.push(child)\n } else if (child.type === HeroDescription) {\n acc.HeroDescriptionChild = child\n }\n }\n }\n return acc\n },\n {\n HeroActions: [],\n HeroButtonGroupChild: undefined,\n HeroChildren: [],\n HeroImageChild: undefined,\n HeroVideoChild: undefined,\n HeroHeaderChildren: [],\n HeroDescriptionChild: undefined,\n },\n )\n\n // Prefer Hero.Image - don't show both\n if (result.HeroImageChild && result.HeroVideoChild) {\n result.HeroVideoChild = undefined\n }\n\n return result\n }, [children])\n\n const mediaPositionProp = HeroImageChild?.props.position || HeroVideoChild?.props.position\n\n const mediaPosition = (() => {\n if (variant === 'gridline-expressive' && mediaPositionProp?.startsWith('inline-')) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(\n `Hero: \"gridline-expressive\" variant does not support \"${mediaPositionProp}\" position. Defaulting to \"block-end\".`,\n )\n }\n return 'block-end'\n }\n return mediaPositionProp || 'block-end'\n })()\n const mediaWrapperHasBorder = HeroImageChild?.props.enableBorder ?? HeroVideoChild?.props.enableBorder ?? true\n const mediaPadding = HeroImageChild?.props.padding ?? HeroVideoChild?.props.padding ?? 'default'\n const hasInlineMedia = HeroMediaInlinePositionOptions.includes(mediaPosition as HeroMediaInlinePosition)\n const mediaChild = HeroImageChild || HeroVideoChild\n const isGridline = variant === 'gridline'\n const isGridlineExpressive = variant === 'gridline-expressive'\n const isBlockEndPosition = mediaPosition === 'block-end'\n\n if (\n variant === 'default' &&\n mediaPadding !== 'default' &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n `Hero: media padding is only supported by the \"gridline\" and \"gridline-expressive\" variants; ignoring padding=\"${mediaPadding}\".`,\n )\n }\n\n const isInvalidGridlineAlignment = isGridlineExpressive && alignProp === 'center'\n const align: HeroAlign = isInvalidGridlineAlignment ? 'start' : alignProp\n\n if (isInvalidGridlineAlignment && (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')) {\n // eslint-disable-next-line no-console\n console.warn('Hero: the \"gridline-expressive\" variant does not support align=\"center\"; using \"start\" instead.')\n }\n\n const Tag = (isGridline || isGridlineExpressive) && enableAnimation ? AnimationProvider : Fragment\n const tagProps =\n (isGridline || isGridlineExpressive) && enableAnimation\n ? {\n autoStaggerChildren: false,\n animationTrigger: 'immediate' as const,\n }\n : {}\n\n const useContainedLayout = (isGridline || isGridlineExpressive) && isBlockEndPosition\n const useInlineGridline = isGridline && hasInlineMedia\n\n const heroLayoutClass = HeroImageChild ? styles['Hero--layout-image'] : styles['Hero--layout-default']\n const isInlineStart = mediaPosition === 'inline-start'\n\n const renderTrailingComponent = (shouldAnimate: boolean) =>\n TrailingComponent && (\n <Box animate={shouldAnimate ? {variant: 'slide-in-up' as const, delay: 1000, duration: 1000} : undefined}>\n <div className={styles['Hero-trailing']}>\n <TrailingComponent />\n </div>\n </Box>\n )\n\n const renderActions = () => (\n <>\n {HeroButtonGroupChild}\n {HeroActions.length > 0 && <div className={styles['Hero-actions']}>{HeroActions}</div>}\n </>\n )\n\n return (\n <Tag {...tagProps}>\n <HeroContext.Provider value={{imagePosition: mediaPosition, variant, align, hasInlineMedia, enableAnimation}}>\n <section\n className={clsx(\n styles.Hero,\n styles[`Hero--variant-${variant}`],\n !hasInlineMedia && styles[`Hero--align-${align}`],\n heroLayoutClass,\n (HeroImageChild || HeroVideoChild) && styles[`Hero--image-pos-${mediaPosition}`],\n (HeroImageChild || HeroVideoChild) && hasInlineMedia && styles['Hero--image-pos-inline'],\n useInlineGridline && styles['Hero--variant-inline-gridline'],\n className,\n )}\n ref={ref}\n aria-labelledby=\"hero-section-brand-heading\"\n data-testid={testId || testIds.root}\n {...rest}\n >\n <Grid\n fullWidth={!useContainedLayout && !useInlineGridline}\n data-testid={testIds.grid}\n className={clsx(\n styles['Hero-grid'],\n styles[`Hero-grid--${mediaPosition}`],\n useContainedLayout && !isGridlineExpressive && styles['Hero-grid--contained'],\n useInlineGridline && styles['Hero-grid--bordered-inline'],\n isGridlineExpressive && styles['Hero-grid--expressive'],\n )}\n >\n {isGridlineExpressive ? (\n <>\n {/* Expressive variant: header column (left) */}\n <Grid.Column\n span={{medium: 12, large: HeroDescriptionChild ? 7 : 6}}\n className={styles['Hero-expressive-header-column']}\n >\n <Stack direction=\"vertical\" gap=\"none\" padding=\"none\" alignItems=\"flex-start\">\n {HeroHeaderChildren}\n </Stack>\n </Grid.Column>\n {/* Expressive variant: body column (right) */}\n <Grid.Column\n span={{medium: 12, large: HeroDescriptionChild ? 5 : 6}}\n className={styles['Hero-expressive-body-column']}\n >\n <Stack direction=\"vertical\" gap=\"none\" padding=\"none\" alignItems=\"flex-start\">\n {HeroDescriptionChild}\n {renderActions()}\n {renderTrailingComponent(enableAnimation)}\n </Stack>\n </Grid.Column>\n </>\n ) : (\n <>\n {/* Standard GridLine variant: text column */}\n {isInlineStart && mediaChild && !useContainedLayout && (\n <Grid.Column\n ref={imageContainerRef}\n span={{large: 6}}\n className={clsx(\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageContainer--bg-${imageBackgroundColor}`],\n useInlineGridline &&\n mediaPadding === 'all' &&\n styles['Hero-imageContainer--inline-padding-all'],\n useInlineGridline &&\n mediaPadding === 'none' &&\n styles['Hero-imageContainer--inline-padding-none'],\n useInlineGridline && styles['Hero-imageContainer--inline-bordered'],\n )}\n >\n <div\n className={clsx(styles['Hero-mediaContainer'], imageContainerClassName)}\n style={imageContainerStyle}\n >\n {mediaChild}\n </div>\n </Grid.Column>\n )}\n <Grid.Column span={{large: mediaChild && hasInlineMedia ? 6 : 12}}>\n <Stack\n className={clsx(\n useInlineGridline && styles['Hero-text-column--inline-gridline'],\n useInlineGridline && styles['Hero-contentColumn--bordered-inline'],\n )}\n direction=\"vertical\"\n gap=\"none\"\n padding=\"none\"\n alignItems={hasInlineMedia ? 'flex-start' : align === 'start' ? 'flex-start' : 'center'}\n justifyContent={hasInlineMedia ? undefined : align === 'start' ? 'flex-start' : 'center'}\n >\n {HeroChildren}\n {renderActions()}\n {renderTrailingComponent(isGridline && enableAnimation)}\n </Stack>\n </Grid.Column>\n {!isInlineStart && mediaChild && !useContainedLayout && (\n <Grid.Column\n ref={imageContainerRef}\n span={{large: hasInlineMedia ? 6 : 12}}\n className={clsx(\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageContainer--bg-${imageBackgroundColor}`],\n useInlineGridline &&\n mediaPadding === 'all' &&\n styles['Hero-imageContainer--inline-padding-all'],\n useInlineGridline &&\n mediaPadding === 'none' &&\n styles['Hero-imageContainer--inline-padding-none'],\n useInlineGridline && styles['Hero-imageContainer--inline-bordered'],\n )}\n >\n <div\n className={clsx(styles['Hero-mediaContainer'], imageContainerClassName)}\n style={imageContainerStyle}\n >\n {mediaChild}\n </div>\n </Grid.Column>\n )}\n </>\n )}\n </Grid>\n {mediaChild && useContainedLayout && (\n <div\n ref={imageContainerRef}\n data-testid={testIds.imageWrapper}\n className={clsx(\n styles['Hero-imageWrapper'],\n imageContainerClassName,\n imageBackgroundColor &&\n mediaPadding !== 'none' &&\n styles[`Hero-imageWrapper--bg-${imageBackgroundColor}`],\n mediaPadding === 'none' && styles['Hero-imageWrapper--padding-none'],\n )}\n style={imageContainerStyle}\n >\n <div\n className={clsx(\n styles['Hero-imageWrapper-inner'],\n mediaPadding === 'all' && styles['Hero-imageWrapper-inner--padding-all'],\n mediaPadding === 'none' && styles['Hero-imageWrapper-inner--padding-none'],\n mediaWrapperHasBorder && styles['Hero-imageWrapper-inner--with-gridline'],\n )}\n >\n {mediaChild}\n </div>\n </div>\n )}\n </section>\n </HeroContext.Provider>\n </Tag>\n )\n },\n)\n\nexport const Hero = Object.assign(Root, {\n Heading: HeroHeading,\n Description: HeroDescription,\n ButtonGroup: HeroButtonGroup,\n /**\n * @deprecated Use `Hero.ButtonGroup` with `Button` or `ActionMenu` children instead.\n * This component will be removed in a future release.\n */\n PrimaryAction: HeroPrimaryAction,\n /**\n * @deprecated Use `Hero.ButtonGroup` with `Button` or `ActionMenu` children instead.\n * This component will be removed in a future release.\n */\n SecondaryAction: HeroSecondaryAction,\n Image: HeroImage,\n Video: HeroVideo,\n Label: HeroLabel,\n Eyebrow: HeroEyebrow,\n testIds,\n})\n"],"mappings":"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"}