@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.
- package/docs/components/SubdomainNavBar/index.md +215 -86
- package/docs/index.md +2 -2
- package/esm/Accordion/Accordion.d.ts +2 -2
- package/esm/Accordion/Accordion.d.ts.map +1 -1
- package/esm/Accordion/Accordion.js +2 -2
- package/esm/Accordion/Accordion.js.map +1 -1
- package/esm/Accordion/Accordion.module.js +6 -5
- package/esm/ActionMenu/ActionMenu.d.ts +2 -2
- package/esm/ActionMenu/ActionMenu.js +3 -2
- package/esm/ActionMenu/ActionMenu.js.map +1 -1
- package/esm/ActionMenu/ActionMenu.module.js +7 -6
- package/esm/AnchorNav/AnchorNav.d.ts +4 -4
- package/esm/AnchorNav/AnchorNav.d.ts.map +1 -1
- package/esm/AnchorNav/AnchorNav.js +9 -4
- package/esm/AnchorNav/AnchorNav.js.map +1 -1
- package/esm/AnchorNav/AnchorNav.module.js +5 -4
- package/esm/AnchorNav/useExpandedMenu.js.map +1 -1
- package/esm/Avatar/Avatar.js +1 -1
- package/esm/Avatar/Avatar.js.map +1 -1
- package/esm/Avatar/Avatar.module.js +5 -4
- package/esm/Bento/Bento.d.ts +4 -4
- package/esm/Bento/Bento.js +1 -1
- package/esm/Bento/Bento.js.map +1 -1
- package/esm/Bento/Bento.module.js +7 -6
- package/esm/Box/Box.d.ts +1 -1
- package/esm/Box/Box.d.ts.map +1 -1
- package/esm/Box/Box.js +1 -1
- package/esm/Box/Box.js.map +1 -1
- package/esm/Breadcrumbs/Breadcrumbs.js +1 -1
- package/esm/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/esm/Breadcrumbs/Breadcrumbs.module.js +7 -6
- package/esm/BreakoutBanner/BreakoutBanner.js +1 -1
- package/esm/BreakoutBanner/BreakoutBanner.js.map +1 -1
- package/esm/BreakoutBanner/BreakoutBanner.module.js +5 -4
- package/esm/Button/Button.js +1 -1
- package/esm/Button/Button.js.map +1 -1
- package/esm/Button/Button.module.js +5 -4
- package/esm/ButtonGroup/ButtonGroup.js +1 -1
- package/esm/ButtonGroup/ButtonGroup.js.map +1 -1
- package/esm/ButtonGroup/ButtonGroup.module.js +3 -2
- package/esm/CTABanner/CTABanner.d.ts +1 -1
- package/esm/CTABanner/CTABanner.js +2 -2
- package/esm/CTABanner/CTABanner.js.map +1 -1
- package/esm/CTABanner/CTABanner.module.js +4 -3
- package/esm/CTAForm/CTAForm.js +1 -1
- package/esm/CTAForm/CTAForm.js.map +1 -1
- package/esm/CTAForm/CTAForm.module.js +4 -3
- package/esm/Card/Card.d.ts +2 -2
- package/esm/Card/Card.d.ts.map +1 -1
- package/esm/Card/Card.js +3 -3
- package/esm/Card/Card.js.map +1 -1
- package/esm/Card/Card.module.js +18 -17
- package/esm/ComparisonTable/ComparisonTable.d.ts +3 -3
- package/esm/ComparisonTable/ComparisonTable.js +1 -1
- package/esm/ComparisonTable/ComparisonTable.js.map +1 -1
- package/esm/ComparisonTable/ComparisonTable.module.js +4 -3
- package/esm/ExpandableArrow/ExpandableArrow.d.ts +2 -1
- package/esm/ExpandableArrow/ExpandableArrow.d.ts.map +1 -1
- package/esm/ExpandableArrow/ExpandableArrow.js +1 -1
- package/esm/ExpandableArrow/ExpandableArrow.js.map +1 -1
- package/esm/ExpandableArrow/ExpandableArrow.module.js +4 -3
- package/esm/EyebrowBanner/EyebrowBanner.js +2 -2
- package/esm/EyebrowBanner/EyebrowBanner.js.map +1 -1
- package/esm/EyebrowBanner/EyebrowBanner.module.js +12 -11
- package/esm/EyebrowText/EyebrowText.js +1 -1
- package/esm/EyebrowText/EyebrowText.js.map +1 -1
- package/esm/EyebrowText/EyebrowText.module.js +4 -3
- package/esm/FAQ/FAQ.d.ts +2 -2
- package/esm/FAQ/FAQ.d.ts.map +1 -1
- package/esm/FAQ/FAQ.js +1 -1
- package/esm/FAQ/FAQ.js.map +1 -1
- package/esm/FAQ/FAQ.module.js +7 -6
- package/esm/FAQ/FAQGroup.d.ts +2 -2
- package/esm/FAQ/FAQGroup.d.ts.map +1 -1
- package/esm/FAQ/FAQGroup.js +7 -3
- package/esm/FAQ/FAQGroup.js.map +1 -1
- package/esm/FAQ/FAQGroup.module.js +8 -7
- package/esm/Footnotes/Footnotes.d.ts +2 -2
- package/esm/Footnotes/Footnotes.d.ts.map +1 -1
- package/esm/Footnotes/Footnotes.js +2 -2
- package/esm/Footnotes/Footnotes.js.map +1 -1
- package/esm/Footnotes/Footnotes.module.js +7 -6
- package/esm/FrostedGlassVFX/FrostedGlassVFX.d.ts +1 -1
- package/esm/FrostedGlassVFX/FrostedGlassVFX.d.ts.map +1 -1
- package/esm/FrostedGlassVFX/FrostedGlassVFX.js +1 -1
- package/esm/FrostedGlassVFX/FrostedGlassVFX.js.map +1 -1
- package/esm/FrostedGlassVFX/FrostedGlassVFX.module.js +4 -3
- package/esm/Grid/Grid.d.ts +2 -2
- package/esm/Grid/Grid.js +2 -2
- package/esm/Grid/Grid.js.map +1 -1
- package/esm/Grid/Grid.module.js +5 -4
- package/esm/Heading/Heading.js +1 -1
- package/esm/Heading/Heading.js.map +1 -1
- package/esm/Heading/Heading.module.js +4 -3
- package/esm/Hero/Hero.js +1 -1
- package/esm/Hero/Hero.js.map +1 -1
- package/esm/Hero/Hero.module.js +4 -3
- package/esm/Hero/HeroContext.js.map +1 -1
- package/esm/Hero/sub-components/HeroButtonGroup.js +1 -1
- package/esm/Hero/sub-components/HeroButtonGroup.js.map +1 -1
- package/esm/Hero/sub-components/HeroDescription.js +1 -1
- package/esm/Hero/sub-components/HeroDescription.js.map +1 -1
- package/esm/Hero/sub-components/HeroEyebrow.js +1 -1
- package/esm/Hero/sub-components/HeroEyebrow.js.map +1 -1
- package/esm/Hero/sub-components/HeroHeading.js +1 -1
- package/esm/Hero/sub-components/HeroHeading.js.map +1 -1
- package/esm/Hero/sub-components/HeroImage.js +1 -1
- package/esm/Hero/sub-components/HeroImage.js.map +1 -1
- package/esm/Hero/sub-components/HeroLabel.js +1 -1
- package/esm/Hero/sub-components/HeroLabel.js.map +1 -1
- package/esm/Hero/sub-components/HeroPrimaryAction.js.map +1 -1
- package/esm/Hero/sub-components/HeroSecondaryAction.js.map +1 -1
- package/esm/Hero/sub-components/HeroVideo.js +2 -2
- package/esm/Hero/sub-components/HeroVideo.js.map +1 -1
- package/esm/IDE/IDE.d.ts +1 -1
- package/esm/IDE/IDE.js +3 -2
- package/esm/IDE/IDE.js.map +1 -1
- package/esm/IDE/IDE.module.js +8 -7
- package/esm/Icon/Icon.d.ts +2 -2
- package/esm/Icon/Icon.d.ts.map +1 -1
- package/esm/Icon/Icon.js +2 -2
- package/esm/Icon/Icon.js.map +1 -1
- package/esm/Icon/Icon.module.js +4 -3
- package/esm/Image/Image.d.ts +1 -1
- package/esm/Image/Image.d.ts.map +1 -1
- package/esm/Image/Image.js +1 -1
- package/esm/Image/Image.js.map +1 -1
- package/esm/Image/Image.module.js +5 -4
- package/esm/InlineCode/InlineCode.js +1 -1
- package/esm/InlineCode/InlineCode.js.map +1 -1
- package/esm/InlineCode/InlineCode.module.js +5 -4
- package/esm/InlineLink/InlineLink.js +2 -2
- package/esm/InlineLink/InlineLink.js.map +1 -1
- package/esm/InlineLink/InlineLink.module.js +3 -2
- package/esm/Label/Label.js +1 -1
- package/esm/Label/Label.js.map +1 -1
- package/esm/Label/Label.module.js +6 -5
- package/esm/Link/Link.d.ts +1 -1
- package/esm/Link/Link.d.ts.map +1 -1
- package/esm/Link/Link.js +2 -2
- package/esm/Link/Link.js.map +1 -1
- package/esm/Link/Link.module.js +4 -3
- package/esm/LogoSuite/LogoSuite.d.ts +1 -1
- package/esm/LogoSuite/LogoSuite.js +4 -3
- package/esm/LogoSuite/LogoSuite.js.map +1 -1
- package/esm/LogoSuite/LogoSuite.module.js +11 -10
- package/esm/MediaPlaylist/MediaPlaylist.d.ts +4 -4
- package/esm/MediaPlaylist/MediaPlaylist.d.ts.map +1 -1
- package/esm/MediaPlaylist/MediaPlaylist.js +1 -1
- package/esm/MediaPlaylist/MediaPlaylist.js.map +1 -1
- package/esm/MediaPlaylist/MediaPlaylist.module.js +25 -24
- package/esm/MediaPlaylist/useMediaPlaylist.js.map +1 -1
- package/esm/MinimalFooter/MinimalFooter.d.ts +3 -3
- package/esm/MinimalFooter/MinimalFooter.d.ts.map +1 -1
- package/esm/MinimalFooter/MinimalFooter.js +4 -3
- package/esm/MinimalFooter/MinimalFooter.js.map +1 -1
- package/esm/MinimalFooter/MinimalFooter.module.js +15 -14
- package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js +2 -2
- package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js.map +1 -1
- package/esm/MinimalVideoPlayer/MinimalVideoPlayer.module.js +6 -5
- package/esm/MinimalVideoPlayer/useMinimalVideoPlayback.js.map +1 -1
- package/esm/NavList/NavList.js +2 -2
- package/esm/NavList/NavList.js.map +1 -1
- package/esm/NavList/NavList.module.js +18 -17
- package/esm/Pagination/Pagination.d.ts +1 -1
- package/esm/Pagination/Pagination.d.ts.map +1 -1
- package/esm/Pagination/Pagination.js +1 -1
- package/esm/Pagination/Pagination.js.map +1 -1
- package/esm/Pagination/Pagination.module.js +11 -10
- package/esm/Pagination/model.js.map +1 -1
- package/esm/Pillar/Pillar.d.ts +2 -2
- package/esm/Pillar/Pillar.d.ts.map +1 -1
- package/esm/Pillar/Pillar.js +1 -1
- package/esm/Pillar/Pillar.js.map +1 -1
- package/esm/Pillar/Pillar.module.js +9 -8
- package/esm/PricingOptions/PricingOptions.d.ts +1 -1
- package/esm/PricingOptions/PricingOptions.js +5 -3
- package/esm/PricingOptions/PricingOptions.js.map +1 -1
- package/esm/PricingOptions/PricingOptions.module.js +13 -12
- package/esm/Prose/Prose.js +1 -1
- package/esm/Prose/Prose.js.map +1 -1
- package/esm/Prose/Prose.module.js +4 -3
- package/esm/Section/Section.js +1 -1
- package/esm/Section/Section.js.map +1 -1
- package/esm/Section/Section.module.js +5 -4
- package/esm/SectionIntro/SectionIntro.js +1 -1
- package/esm/SectionIntro/SectionIntro.js.map +1 -1
- package/esm/SectionIntro/SectionIntro.module.js +4 -3
- package/esm/SectionIntroStacked/SectionIntroStacked.d.ts +3 -3
- package/esm/SectionIntroStacked/SectionIntroStacked.js +1 -1
- package/esm/SectionIntroStacked/SectionIntroStacked.js.map +1 -1
- package/esm/SectionIntroStacked/SectionIntroStacked.module.js +6 -5
- package/esm/Stack/Stack.js +1 -1
- package/esm/Stack/Stack.js.map +1 -1
- package/esm/Stack/Stack.module.js +4 -3
- package/esm/Statistic/Statistic.js +1 -1
- package/esm/Statistic/Statistic.js.map +1 -1
- package/esm/Statistic/Statistic.module.js +6 -5
- package/esm/SubNav/SubNav.d.ts +4 -4
- package/esm/SubNav/SubNav.d.ts.map +1 -1
- package/esm/SubNav/SubNav.js +6 -4
- package/esm/SubNav/SubNav.js.map +1 -1
- package/esm/SubNav/SubNav.module.js +9 -8
- package/esm/SubNav/useContainsFocus.js.map +1 -1
- package/esm/SubdomainNavBar/NavigationVisbilityObserver.d.ts +3 -1
- package/esm/SubdomainNavBar/NavigationVisbilityObserver.d.ts.map +1 -1
- package/esm/SubdomainNavBar/NavigationVisbilityObserver.js +117 -64
- package/esm/SubdomainNavBar/NavigationVisbilityObserver.js.map +1 -1
- package/esm/SubdomainNavBar/SubdomainNavBar.d.ts +157 -20
- package/esm/SubdomainNavBar/SubdomainNavBar.d.ts.map +1 -1
- package/esm/SubdomainNavBar/SubdomainNavBar.js +479 -299
- package/esm/SubdomainNavBar/SubdomainNavBar.js.map +1 -1
- package/esm/SubdomainNavBar/SubdomainNavBar.module-WIrpYyjV.css +1 -0
- package/esm/SubdomainNavBar/SubdomainNavBar.module.js +36 -11
- package/esm/SubdomainNavBar/SubdomainNavBar.module.js.map +1 -1
- package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts +9 -0
- package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts.map +1 -0
- package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.js +10 -0
- package/esm/SubdomainNavBar/SubdomainNavBarLinkContext.js.map +1 -0
- package/esm/SubdomainNavBar/useSearchKeyboardShortcut.d.ts +8 -0
- package/esm/SubdomainNavBar/useSearchKeyboardShortcut.d.ts.map +1 -0
- package/esm/SubdomainNavBar/useSearchKeyboardShortcut.js +52 -0
- package/esm/SubdomainNavBar/useSearchKeyboardShortcut.js.map +1 -0
- package/esm/SubdomainNavBar/useSearchResults.d.ts +24 -0
- package/esm/SubdomainNavBar/useSearchResults.d.ts.map +1 -0
- package/esm/SubdomainNavBar/useSearchResults.js +57 -0
- package/esm/SubdomainNavBar/useSearchResults.js.map +1 -0
- package/esm/SubdomainNavBar/useVisibilityObserver.d.ts +1 -1
- package/esm/SubdomainNavBar/useVisibilityObserver.d.ts.map +1 -1
- package/esm/SubdomainNavBar/useVisibilityObserver.js +60 -23
- package/esm/SubdomainNavBar/useVisibilityObserver.js.map +1 -1
- package/esm/Tabs/Tabs.js +3 -2
- package/esm/Tabs/Tabs.js.map +1 -1
- package/esm/Tabs/Tabs.module.js +12 -11
- package/esm/Testimonial/Testimonial.d.ts +1 -1
- package/esm/Testimonial/Testimonial.d.ts.map +1 -1
- package/esm/Testimonial/Testimonial.js +1 -1
- package/esm/Testimonial/Testimonial.js.map +1 -1
- package/esm/Testimonial/Testimonial.module.js +8 -7
- package/esm/Text/Text.d.ts +1 -1
- package/esm/Text/Text.d.ts.map +1 -1
- package/esm/Text/Text.js +1 -1
- package/esm/Text/Text.js.map +1 -1
- package/esm/Text/Text.module.js +4 -3
- package/esm/TextCursorAnimation/TextCursorAnimation.d.ts +1 -1
- package/esm/TextCursorAnimation/TextCursorAnimation.d.ts.map +1 -1
- package/esm/TextCursorAnimation/TextCursorAnimation.js +1 -1
- package/esm/TextCursorAnimation/TextCursorAnimation.js.map +1 -1
- package/esm/TextCursorAnimation/TextCursorAnimation.module.js +10 -9
- package/esm/ThemeProvider/ThemeProvider.d.ts +1 -1
- package/esm/ThemeProvider/ThemeProvider.d.ts.map +1 -1
- package/esm/ThemeProvider/ThemeProvider.js +4 -4
- package/esm/ThemeProvider/ThemeProvider.js.map +1 -1
- package/esm/ThemeProvider/useTheme.js.map +1 -1
- package/esm/Tiles/Tiles.js +2 -2
- package/esm/Tiles/Tiles.js.map +1 -1
- package/esm/Tiles/Tiles.module.js +4 -3
- package/esm/Timeline/Timeline.d.ts +3 -3
- package/esm/Timeline/Timeline.d.ts.map +1 -1
- package/esm/Timeline/Timeline.js +2 -2
- package/esm/Timeline/Timeline.js.map +1 -1
- package/esm/Timeline/Timeline.module.js +5 -4
- package/esm/Token/Token.js +1 -1
- package/esm/Token/Token.js.map +1 -1
- package/esm/Token/Token.module.js +6 -5
- package/esm/Tooltip/Tooltip.js +2 -2
- package/esm/Tooltip/Tooltip.js.map +1 -1
- package/esm/Tooltip/Tooltip.module.js +4 -3
- package/esm/VideoPlayer/VideoPlayer.d.ts +2 -2
- package/esm/VideoPlayer/VideoPlayer.js +2 -2
- package/esm/VideoPlayer/VideoPlayer.js.map +1 -1
- package/esm/VideoPlayer/VideoPlayer.module.js +29 -28
- package/esm/VideoPlayer/components/CCButton/CCButton.d.ts +2 -2
- package/esm/VideoPlayer/components/CCButton/CCButton.d.ts.map +1 -1
- package/esm/VideoPlayer/components/CCButton/CCButton.js +1 -1
- package/esm/VideoPlayer/components/CCButton/CCButton.js.map +1 -1
- package/esm/VideoPlayer/components/Captions/Captions.d.ts +2 -2
- package/esm/VideoPlayer/components/Captions/Captions.d.ts.map +1 -1
- package/esm/VideoPlayer/components/Captions/Captions.js +1 -1
- package/esm/VideoPlayer/components/Captions/Captions.js.map +1 -1
- package/esm/VideoPlayer/components/Captions/Captions.module.js +5 -4
- package/esm/VideoPlayer/components/ControlsBar/ControlsBar.d.ts +2 -2
- package/esm/VideoPlayer/components/ControlsBar/ControlsBar.d.ts.map +1 -1
- package/esm/VideoPlayer/components/ControlsBar/ControlsBar.js +1 -1
- package/esm/VideoPlayer/components/ControlsBar/ControlsBar.js.map +1 -1
- package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts +2 -2
- package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts.map +1 -1
- package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.js +2 -1
- package/esm/VideoPlayer/components/FullScreenButton/FullScreenButton.js.map +1 -1
- package/esm/VideoPlayer/components/IconControl/IconControl.d.ts +2 -2
- package/esm/VideoPlayer/components/IconControl/IconControl.d.ts.map +1 -1
- package/esm/VideoPlayer/components/IconControl/IconControl.js +1 -1
- package/esm/VideoPlayer/components/IconControl/IconControl.js.map +1 -1
- package/esm/VideoPlayer/components/MuteButton/MuteButton.d.ts +2 -2
- package/esm/VideoPlayer/components/MuteButton/MuteButton.d.ts.map +1 -1
- package/esm/VideoPlayer/components/MuteButton/MuteButton.js +2 -1
- package/esm/VideoPlayer/components/MuteButton/MuteButton.js.map +1 -1
- package/esm/VideoPlayer/components/PauseIcon/PauseIcon.d.ts +2 -2
- package/esm/VideoPlayer/components/PauseIcon/PauseIcon.d.ts.map +1 -1
- package/esm/VideoPlayer/components/PauseIcon/PauseIcon.js.map +1 -1
- package/esm/VideoPlayer/components/PlayIcon/PlayIcon.d.ts +2 -2
- package/esm/VideoPlayer/components/PlayIcon/PlayIcon.d.ts.map +1 -1
- package/esm/VideoPlayer/components/PlayIcon/PlayIcon.js.map +1 -1
- package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts +2 -2
- package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts.map +1 -1
- package/esm/VideoPlayer/components/PlayPauseButton/PlayPauseButton.js.map +1 -1
- package/esm/VideoPlayer/components/Range/Range.d.ts +1 -1
- package/esm/VideoPlayer/components/Range/Range.d.ts.map +1 -1
- package/esm/VideoPlayer/components/Range/Range.js +1 -1
- package/esm/VideoPlayer/components/Range/Range.js.map +1 -1
- package/esm/VideoPlayer/components/SeekControl/SeekControl.d.ts +2 -2
- package/esm/VideoPlayer/components/SeekControl/SeekControl.d.ts.map +1 -1
- package/esm/VideoPlayer/components/SeekControl/SeekControl.js +1 -1
- package/esm/VideoPlayer/components/SeekControl/SeekControl.js.map +1 -1
- package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts +2 -2
- package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts.map +1 -1
- package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.js +3 -2
- package/esm/VideoPlayer/components/VideoTooltip/VideoTooltip.js.map +1 -1
- package/esm/VideoPlayer/components/VolumeControl/VolumeControl.d.ts +2 -1
- package/esm/VideoPlayer/components/VolumeControl/VolumeControl.d.ts.map +1 -1
- package/esm/VideoPlayer/components/VolumeControl/VolumeControl.js.map +1 -1
- package/esm/VideoPlayer/components/VolumeControl/VolumeControl.module.js +3 -2
- package/esm/VideoPlayer/hooks/useIsElementFullScreen.js.map +1 -1
- package/esm/VideoPlayer/hooks/useVideo.js.map +1 -1
- package/esm/VideoPlayer/hooks/useVideoResizeObserver.js.map +1 -1
- package/esm/animation/Animate/Animate.d.ts +1 -1
- package/esm/animation/Animate/Animate.d.ts.map +1 -1
- package/esm/animation/Animate/Animate.js +1 -1
- package/esm/animation/Animate/Animate.js.map +1 -1
- package/esm/animation/Animation.module.js +4 -3
- package/esm/animation/AnimationProvider/AnimationProvider.d.ts +1 -1
- package/esm/animation/AnimationProvider/AnimationProvider.d.ts.map +1 -1
- package/esm/animation/AnimationProvider/AnimationProvider.js.map +1 -1
- package/esm/animation/TextRevealAnimation/TextRevealAnimation.js +1 -1
- package/esm/animation/TextRevealAnimation/TextRevealAnimation.js.map +1 -1
- package/esm/animation/TextRevealAnimation/TextRevealAnimation.module.js +5 -4
- package/esm/animation/TextRevealAnimation/useTextRevealAnimationLines.js.map +1 -1
- package/esm/animation/useAnimation.js.map +1 -1
- package/esm/component-helpers/shared.module.js +3 -2
- package/esm/component-helpers.d.ts +2 -2
- package/esm/component-helpers.d.ts.map +1 -1
- package/esm/constants.js.map +1 -1
- package/esm/css/stylesheets.js +1 -1
- package/esm/findElementInChildren.js.map +1 -1
- package/esm/forms/Checkbox/Checkbox.js +2 -2
- package/esm/forms/Checkbox/Checkbox.js.map +1 -1
- package/esm/forms/Checkbox/Checkbox.module.js +4 -3
- package/esm/forms/ControlGroup/ControlGroup.js +3 -2
- package/esm/forms/ControlGroup/ControlGroup.js.map +1 -1
- package/esm/forms/ControlGroup/ControlGroup.module.js +7 -6
- package/esm/forms/FormControl/FormControl.d.ts +5 -5
- package/esm/forms/FormControl/FormControl.d.ts.map +1 -1
- package/esm/forms/FormControl/FormControl.js +4 -3
- package/esm/forms/FormControl/FormControl.js.map +1 -1
- package/esm/forms/FormControl/FormControl.module.js +5 -4
- package/esm/forms/Radio/Radio.js +1 -1
- package/esm/forms/Radio/Radio.js.map +1 -1
- package/esm/forms/Radio/Radio.module.js +4 -3
- package/esm/forms/Select/Select.d.ts +2 -2
- package/esm/forms/Select/Select.js +1 -1
- package/esm/forms/Select/Select.js.map +1 -1
- package/esm/forms/Select/Select.module.js +4 -3
- package/esm/forms/TextInput/TextInput.js +1 -1
- package/esm/forms/TextInput/TextInput.js.map +1 -1
- package/esm/forms/TextInput/TextInput.module.js +5 -4
- package/esm/forms/Textarea/Textarea.js +1 -1
- package/esm/forms/Textarea/Textarea.js.map +1 -1
- package/esm/forms/Textarea/Textarea.module.js +4 -3
- package/esm/hooks/useAnchoredPosition.js +7 -4
- package/esm/hooks/useAnchoredPosition.js.map +1 -1
- package/esm/hooks/useCursorAnimation.js +4 -2
- package/esm/hooks/useCursorAnimation.js.map +1 -1
- package/esm/hooks/useFocusTrap.js.map +1 -1
- package/esm/hooks/useId.js.map +1 -1
- package/esm/hooks/useKeyboardEscape.js.map +1 -1
- package/esm/hooks/useOnClickOutside.js.map +1 -1
- package/esm/hooks/useReducedMotion.js +1 -1
- package/esm/hooks/useReducedMotion.js.map +1 -1
- package/esm/hooks/useRef.js.map +1 -1
- package/esm/hooks/useResizeObserver.js.map +1 -1
- package/esm/hooks/useTabs.js +1 -1
- package/esm/hooks/useTabs.js.map +1 -1
- package/esm/hooks/useWindowSize.js +7 -7
- package/esm/hooks/useWindowSize.js.map +1 -1
- package/esm/list/ListItem/ListItem.js +4 -2
- package/esm/list/ListItem/ListItem.js.map +1 -1
- package/esm/list/ListItem/ListItem.module.js +5 -4
- package/esm/list/OrderedList/OrderedList.d.ts +2 -2
- package/esm/list/OrderedList/OrderedList.d.ts.map +1 -1
- package/esm/list/OrderedList/OrderedList.js +1 -1
- package/esm/list/OrderedList/OrderedList.js.map +1 -1
- package/esm/list/OrderedList/OrderedList.module.js +3 -2
- package/esm/list/UnorderedList/UnorderedList.d.ts +2 -2
- package/esm/list/UnorderedList/UnorderedList.d.ts.map +1 -1
- package/esm/list/UnorderedList/UnorderedList.js +1 -1
- package/esm/list/UnorderedList/UnorderedList.js.map +1 -1
- package/esm/list/list-shared.module.js +3 -2
- package/esm/list/listContext.js.map +1 -1
- package/esm/node_modules/@primer/octicons-react/dist/icons/AlertFillIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/AlertFillIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpRightIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ArrowUpRightIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CheckCircleFillIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CheckCircleFillIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CheckIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CheckIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronDownIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronDownIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronLeftIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronLeftIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronRightIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronRightIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronUpIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ChevronUpIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CopilotIcon.js +33 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/CopilotIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/DashIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/DashIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/LinkExternalIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/LinkExternalIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/MarkGithubIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/MarkGithubIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/MuteIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/MuteIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PaperAirplaneIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PaperAirplaneIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PauseIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PauseIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PlayIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/PlayIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ReplyIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ReplyIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenFullIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenFullIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenNormalIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/ScreenNormalIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/SearchIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/SearchIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleDownIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleDownIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleUpIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/TriangleUpIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/UnmuteIcon.js +20 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/UnmuteIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/XIcon.js +28 -0
- package/esm/node_modules/@primer/octicons-react/dist/icons/XIcon.js.map +1 -0
- package/esm/node_modules/@primer/octicons-react/dist/renderOcticon-DuMQdmQC.js +132 -0
- package/esm/node_modules/@primer/octicons-react/dist/renderOcticon-DuMQdmQC.js.map +1 -0
- package/esm/node_modules/clsx/dist/clsx.js +1 -1
- package/esm/node_modules/clsx/dist/clsx.js.map +1 -1
- package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-BGj0AiDW.css +1 -0
- package/esm/river/River/River.js +2 -2
- package/esm/river/River/River.js.map +1 -1
- package/esm/river/RiverAccordion/RiverAccordion.d.ts +4 -4
- package/esm/river/RiverAccordion/RiverAccordion.js +3 -2
- package/esm/river/RiverAccordion/RiverAccordion.js.map +1 -1
- package/esm/river/RiverAccordion/RiverAccordion.module.js +16 -15
- package/esm/river/RiverBreakout/RiverBreakout.d.ts +1 -1
- package/esm/river/RiverBreakout/RiverBreakout.js +1 -1
- package/esm/river/RiverBreakout/RiverBreakout.js.map +1 -1
- package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.d.ts +5 -5
- package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js +2 -2
- package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js.map +1 -1
- package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module.js +31 -30
- package/esm/river/RiverStoryScroll/RiverStoryScroll.d.ts +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScroll.d.ts.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScroll.js +5 -3
- package/esm/river/RiverStoryScroll/RiverStoryScroll.js.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScroll.module.js +8 -7
- package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts +2 -2
- package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollProvider.js.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.js +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollResponder.js.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts.map +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.js +1 -1
- package/esm/river/RiverStoryScroll/RiverStoryScrollTracker.js.map +1 -1
- package/esm/river/river-shared.module.js +13 -12
- package/esm/utils/getTextContent.js.map +1 -1
- package/esm/utils/isFragmentElement.js.map +1 -1
- package/lib/Accordion/Accordion.d.ts +2 -2
- package/lib/ActionMenu/ActionMenu.d.ts +2 -2
- package/lib/AnchorNav/AnchorNav.d.ts +4 -4
- package/lib/Bento/Bento.d.ts +4 -4
- package/lib/Box/Box.d.ts +1 -1
- package/lib/CTABanner/CTABanner.d.ts +1 -1
- package/lib/Card/Card.d.ts +2 -2
- package/lib/ComparisonTable/ComparisonTable.d.ts +3 -3
- package/lib/ExpandableArrow/ExpandableArrow.d.ts +2 -1
- package/lib/FAQ/FAQ.d.ts +2 -2
- package/lib/FAQ/FAQGroup.d.ts +2 -2
- package/lib/Footnotes/Footnotes.d.ts +2 -2
- package/lib/FrostedGlassVFX/FrostedGlassVFX.d.ts +1 -1
- package/lib/Grid/Grid.d.ts +2 -2
- package/lib/IDE/IDE.d.ts +1 -1
- package/lib/Icon/Icon.d.ts +2 -2
- package/lib/Image/Image.d.ts +1 -1
- package/lib/Link/Link.d.ts +1 -1
- package/lib/LogoSuite/LogoSuite.d.ts +1 -1
- package/lib/MediaPlaylist/MediaPlaylist.d.ts +4 -4
- package/lib/MinimalFooter/MinimalFooter.d.ts +3 -3
- package/lib/Pagination/Pagination.d.ts +1 -1
- package/lib/Pillar/Pillar.d.ts +2 -2
- package/lib/PricingOptions/PricingOptions.d.ts +1 -1
- package/lib/SectionIntroStacked/SectionIntroStacked.d.ts +3 -3
- package/lib/SubNav/SubNav.d.ts +4 -4
- package/lib/SubdomainNavBar/NavigationVisbilityObserver.d.ts +3 -1
- package/lib/SubdomainNavBar/SubdomainNavBar.d.ts +157 -20
- package/lib/SubdomainNavBar/SubdomainNavBarLinkContext.d.ts +8 -0
- package/lib/SubdomainNavBar/useSearchKeyboardShortcut.d.ts +7 -0
- package/lib/SubdomainNavBar/useSearchResults.d.ts +23 -0
- package/lib/SubdomainNavBar/useVisibilityObserver.d.ts +1 -1
- package/lib/Testimonial/Testimonial.d.ts +1 -1
- package/lib/Text/Text.d.ts +1 -1
- package/lib/TextCursorAnimation/TextCursorAnimation.d.ts +1 -1
- package/lib/ThemeProvider/ThemeProvider.d.ts +1 -1
- package/lib/Timeline/Timeline.d.ts +3 -3
- package/lib/VideoPlayer/VideoPlayer.d.ts +2 -2
- package/lib/VideoPlayer/components/CCButton/CCButton.d.ts +2 -2
- package/lib/VideoPlayer/components/Captions/Captions.d.ts +2 -2
- package/lib/VideoPlayer/components/ControlsBar/ControlsBar.d.ts +2 -2
- package/lib/VideoPlayer/components/FullScreenButton/FullScreenButton.d.ts +2 -2
- package/lib/VideoPlayer/components/IconControl/IconControl.d.ts +2 -2
- package/lib/VideoPlayer/components/MuteButton/MuteButton.d.ts +2 -2
- package/lib/VideoPlayer/components/PauseIcon/PauseIcon.d.ts +2 -2
- package/lib/VideoPlayer/components/PlayIcon/PlayIcon.d.ts +2 -2
- package/lib/VideoPlayer/components/PlayPauseButton/PlayPauseButton.d.ts +2 -2
- package/lib/VideoPlayer/components/Range/Range.d.ts +1 -1
- package/lib/VideoPlayer/components/SeekControl/SeekControl.d.ts +2 -2
- package/lib/VideoPlayer/components/VideoTooltip/VideoTooltip.d.ts +2 -2
- package/lib/VideoPlayer/components/VolumeControl/VolumeControl.d.ts +2 -1
- package/lib/animation/Animate/Animate.d.ts +1 -1
- package/lib/animation/AnimationProvider/AnimationProvider.d.ts +1 -1
- package/lib/component-helpers.d.ts +2 -2
- package/lib/css/main.css +1390 -1056
- package/lib/design-tokens/css/tokens/base/colors/color-scales-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/base/colors/light.css +1 -1
- package/lib/design-tokens/css/tokens/base/size/size.css +1 -1
- package/lib/design-tokens/css/tokens/base/typography/typography.css +1 -1
- package/lib/design-tokens/css/tokens/functional/animation/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/colors/global-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/colors/global.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/accordion/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/anchor-nav/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/bento/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/blinking-cursor/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/breadcrumbs/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/button/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/card/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/card/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/card/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/comparison-table/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/comparison-table/comparison-table.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/control/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/cta-banner/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/eyebrow-banner.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/faq/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/faq/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/faq/faq.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/footer/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/footer/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/footer/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/grid/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/grid/grid.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/hero/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/icon/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/ide/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/image/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/inline-code/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/inline-code/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/inline-link/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/inline-link/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/inline-link/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/label/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/label/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/link/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/link/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/logosuite/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/logosuite/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/logosuite/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/nav-list/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/prose/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/prose/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/river/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/river/river.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/river-story-scroll/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/section/section.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/statistic/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/sub-nav/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/sub-nav/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes.css +7 -1
- package/lib/design-tokens/css/tokens/functional/components/tabs/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/tabs/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/tabs/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/testimonial/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/testimonial/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/testimonial/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/tiles/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/timeline/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/timeline/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/timeline/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/token/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/token/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/tooltip/colors.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/video-player/base.css +1 -1
- package/lib/design-tokens/css/tokens/functional/components/video-player/colors-with-modes.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/border.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/breakpoints.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/size-coarse.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/size-fine.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/size.css +1 -1
- package/lib/design-tokens/css/tokens/functional/size/viewport.css +1 -1
- package/lib/design-tokens/css/tokens/functional/typography/typography-responsive.css +1 -1
- package/lib/design-tokens/css/tokens/functional/typography/typography.css +1 -1
- package/lib/design-tokens/js/module/tokens/base/colors/light.js +1 -1
- package/lib/design-tokens/js/module/tokens/base/size/size.js +1 -1
- package/lib/design-tokens/js/module/tokens/base/typography/typography.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/animation/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/colors/global.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/bento/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/card/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/card/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/comparison-table/comparison-table.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/faq/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/faq/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/faq/faq.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/footer/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/footer/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/grid/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/grid/grid.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/hero/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/icon/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/ide/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/image/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/inline-code/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/inline-link/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/inline-link/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/label/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/link/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/logosuite/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/logosuite/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/media-playlist/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/pricing-options.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/prose/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/river/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/river/river.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/section/section.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/statistic/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/sub-nav/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/tabs/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/tabs/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/testimonial/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/testimonial/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/timeline/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/timeline/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/token/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/tooltip/colors.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/components/video-player/base.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/border.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/breakpoints.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/size-coarse.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/size-fine.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/size.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/size/viewport.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/typography/typography-responsive.js +1 -1
- package/lib/design-tokens/js/module/tokens/functional/typography/typography.js +1 -1
- package/lib/design-tokens/js/tokens/base/colors/light.js +1 -1
- package/lib/design-tokens/js/tokens/base/size/size.js +1 -1
- package/lib/design-tokens/js/tokens/base/typography/typography.js +1 -1
- package/lib/design-tokens/js/tokens/functional/animation/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/colors/global.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/bento/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/card/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/card/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/comparison-table/comparison-table.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/faq/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/faq/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/faq/faq.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/footer/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/footer/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/grid/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/grid/grid.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/hero/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/icon/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/ide/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/image/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/inline-code/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/inline-link/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/inline-link/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/label/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/link/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/logosuite/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/logosuite/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/media-playlist/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/pricing-options/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/pricing-options/pricing-options.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/prose/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/river/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/river/river.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/section/section.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/statistic/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/sub-nav/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/tabs/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/tabs/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/testimonial/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/testimonial/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/timeline/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/timeline/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/token/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/tooltip/colors.js +1 -1
- package/lib/design-tokens/js/tokens/functional/components/video-player/base.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/border.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/breakpoints.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/size-coarse.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/size-fine.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/size.js +1 -1
- package/lib/design-tokens/js/tokens/functional/size/viewport.js +1 -1
- package/lib/design-tokens/js/tokens/functional/typography/typography-responsive.js +1 -1
- package/lib/design-tokens/js/tokens/functional/typography/typography.js +1 -1
- package/lib/design-tokens/json/colors.json +3 -0
- package/lib/design-tokens/scss/tokens/base/colors/light.scss +1 -1
- package/lib/design-tokens/scss/tokens/base/size/size.scss +1 -1
- package/lib/design-tokens/scss/tokens/base/typography/typography.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/animation/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/colors/global.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/bento/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/card/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/card/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/comparison-table/comparison-table.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/eyebrow-banner/eyebrow-banner.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/faq/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/faq/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/faq/faq.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/footer/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/footer/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/frosted-glass-vfx/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/grid/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/grid/grid.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/hero/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/icon/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/ide/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/image/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/inline-code/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/inline-link/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/inline-link/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/label/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/link/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/logosuite/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/logosuite/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/media-playlist/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/pricing-options/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/pricing-options/pricing-options.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/prose/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/river/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/river/river.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/section/section.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/statistic/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/sub-nav/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/tabs/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/tabs/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/testimonial/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/testimonial/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/timeline/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/timeline/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/token/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/tooltip/colors.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/components/video-player/base.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/border.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/breakpoints.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/size-coarse.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/size-fine.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/size.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/size/viewport.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/typography/typography-responsive.scss +1 -1
- package/lib/design-tokens/scss/tokens/functional/typography/typography.scss +1 -1
- package/lib/design-tokens/ts/tokens/base/colors/light.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/base/colors/light.js +1 -1
- package/lib/design-tokens/ts/tokens/base/size/size.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/base/size/size.js +1 -1
- package/lib/design-tokens/ts/tokens/base/typography/typography.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/base/typography/typography.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/animation/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/animation/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/colors/global.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/colors/global.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/bento/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/bento/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/card/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/card/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/card/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/card/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/faq.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/faq/faq.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/footer/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/footer/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/footer/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/footer/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/grid/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/grid/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/grid/grid.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/grid/grid.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/hero/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/hero/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/icon/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/icon/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/ide/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/ide/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/image/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/image/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/label/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/label/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/link/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/link/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/prose/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/prose/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/river/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/river/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/river/river.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/river/river.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/section/section.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/section/section.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/statistic/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/statistic/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tabs/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tabs/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/timeline/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/timeline/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/token/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/token/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/video-player/base.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/components/video-player/base.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/border.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/border.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/breakpoints.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/breakpoints.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size-coarse.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size-coarse.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size-fine.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size-fine.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/size.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/viewport.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/size/viewport.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.js +1 -1
- package/lib/design-tokens/ts/tokens/functional/typography/typography.d.ts +1 -1
- package/lib/design-tokens/ts/tokens/functional/typography/typography.js +1 -1
- package/lib/forms/FormControl/FormControl.d.ts +5 -5
- package/lib/forms/Select/Select.d.ts +2 -2
- package/lib/index.js +1 -1
- package/lib/list/OrderedList/OrderedList.d.ts +2 -2
- package/lib/list/UnorderedList/UnorderedList.d.ts +2 -2
- package/lib/river/RiverAccordion/RiverAccordion.d.ts +4 -4
- package/lib/river/RiverBreakout/RiverBreakout.d.ts +1 -1
- package/lib/river/RiverBreakoutTabs/RiverBreakoutTabs.d.ts +5 -5
- package/lib/river/RiverStoryScroll/RiverStoryScroll.d.ts +1 -1
- package/lib/river/RiverStoryScroll/RiverStoryScrollProvider.d.ts +2 -2
- package/lib/river/RiverStoryScroll/RiverStoryScrollResponder.d.ts +1 -1
- package/lib/river/RiverStoryScroll/RiverStoryScrollTracker.d.ts +1 -1
- package/llms.txt +2 -2
- package/package.json +24 -24
- package/esm/SubdomainNavBar/SubdomainNavBar.module-Rf4qEDka.css +0 -1
- package/esm/node_modules/@primer/octicons-react/dist/index.esm.js +0 -434
- package/esm/node_modules/@primer/octicons-react/dist/index.esm.js.map +0 -1
- package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-ehJCoExh.css +0 -1
package/esm/Hero/Hero.module.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import './Hero.module-BfrAFYlo.css'
|
|
2
|
-
|
|
1
|
+
import './Hero.module-BfrAFYlo.css';//#region src/Hero/Hero.module.css
|
|
2
|
+
var e = "Primer_Brand__Hero-module__Hero___It6gj", t = {
|
|
3
|
+
Hero: e,
|
|
3
4
|
"Hero--variant-default": "Primer_Brand__Hero-module__Hero--variant-default___lNgHw",
|
|
4
5
|
"Hero--align-start": "Primer_Brand__Hero-module__Hero--align-start___ouSp3",
|
|
5
6
|
"Hero--align-center": "Primer_Brand__Hero-module__Hero--align-center___6FMoH",
|
|
@@ -55,6 +56,6 @@ import './Hero.module-BfrAFYlo.css';var e = {
|
|
|
55
56
|
"Hero-expressive-body-column": "Primer_Brand__Hero-module__Hero-expressive-body-column___Beyq_"
|
|
56
57
|
};
|
|
57
58
|
//#endregion
|
|
58
|
-
export { e as default };
|
|
59
|
+
export { e as Hero, t as default };
|
|
59
60
|
|
|
60
61
|
//# sourceMappingURL=Hero.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroContext.js","names":[],"sources":["../../src/Hero/HeroContext.ts"],"sourcesContent":["import React from 'react'\n\nexport const HeroAlignOptions = ['start', 'center'] as const\nexport type HeroAlign = (typeof HeroAlignOptions)[number]\n\nexport const HeroVariantOptions = ['default', 'gridline', 'gridline-expressive'] as const\nexport type HeroVariant = (typeof HeroVariantOptions)[number]\n\nexport const HeroMediaPaddingOptions = ['default', 'none', 'all'] as const\nexport type HeroMediaPadding = (typeof HeroMediaPaddingOptions)[number]\n\nexport const HeroMediaPositionOptions = ['block-end', 'inline-start', 'inline-end'] as const\nexport const HeroMediaInlinePositionOptions = ['inline-start', 'inline-end'] as const\nexport type HeroMediaPosition = (typeof HeroMediaPositionOptions)[number]\nexport type HeroMediaInlinePosition = (typeof HeroMediaInlinePositionOptions)[number]\n\ntype HeroContextType = {\n /**\n * The active variant of the Hero component\n */\n variant: HeroVariant\n /**\n * The alignment of the Hero content\n */\n align: HeroAlign\n /**\n * Image position within the Hero\n */\n imagePosition: HeroMediaPosition\n /**\n * Hero.Image is an inline media position\n */\n hasInlineMedia: boolean\n /**\n * Whether animation is enabled for the Hero\n */\n enableAnimation: boolean\n}\n\nexport const HeroContext = React.createContext<HeroContextType | undefined>(undefined)\n\nexport const useHeroContext = (): HeroContextType => {\n const context = React.useContext(HeroContext)\n if (!context) {\n throw new Error('useHeroContext must be used within a HeroProvider')\n }\n\n return context\n}\n"],"mappings":";;AAYA,IAAa,IAAiC,CAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"HeroContext.js","names":[],"sources":["../../src/Hero/HeroContext.ts"],"sourcesContent":["import React from 'react'\n\nexport const HeroAlignOptions = ['start', 'center'] as const\nexport type HeroAlign = (typeof HeroAlignOptions)[number]\n\nexport const HeroVariantOptions = ['default', 'gridline', 'gridline-expressive'] as const\nexport type HeroVariant = (typeof HeroVariantOptions)[number]\n\nexport const HeroMediaPaddingOptions = ['default', 'none', 'all'] as const\nexport type HeroMediaPadding = (typeof HeroMediaPaddingOptions)[number]\n\nexport const HeroMediaPositionOptions = ['block-end', 'inline-start', 'inline-end'] as const\nexport const HeroMediaInlinePositionOptions = ['inline-start', 'inline-end'] as const\nexport type HeroMediaPosition = (typeof HeroMediaPositionOptions)[number]\nexport type HeroMediaInlinePosition = (typeof HeroMediaInlinePositionOptions)[number]\n\ntype HeroContextType = {\n /**\n * The active variant of the Hero component\n */\n variant: HeroVariant\n /**\n * The alignment of the Hero content\n */\n align: HeroAlign\n /**\n * Image position within the Hero\n */\n imagePosition: HeroMediaPosition\n /**\n * Hero.Image is an inline media position\n */\n hasInlineMedia: boolean\n /**\n * Whether animation is enabled for the Hero\n */\n enableAnimation: boolean\n}\n\nexport const HeroContext = React.createContext<HeroContextType | undefined>(undefined)\n\nexport const useHeroContext = (): HeroContextType => {\n const context = React.useContext(HeroContext)\n if (!context) {\n throw new Error('useHeroContext must be used within a HeroProvider')\n }\n\n return context\n}\n"],"mappings":";;AAYA,IAAa,IAAiC,CAAC,gBAAgB,YAAY,GA2B9D,IAAc,EAAM,cAA2C,KAAA,CAAS,GAExE,UAAwC;CACnD,IAAM,IAAU,EAAM,WAAW,CAAW;CAC5C,IAAI,CAAC,GACH,MAAU,MAAM,mDAAmD;CAGrE,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroButtonGroup.js","names":[],"sources":["../../../src/Hero/sub-components/HeroButtonGroup.tsx"],"sourcesContent":["import React, {forwardRef} from 'react'\nimport {clsx} from 'clsx'\nimport {Box} from '../../Box'\nimport {ButtonGroup} from '../../ButtonGroup'\nimport {useHeroContext} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroButtonGroupProps = React.ComponentProps<typeof ButtonGroup>\n\nexport const HeroButtonGroup = forwardRef<HTMLDivElement, HeroButtonGroupProps>(\n ({className, children, ...props}, ref) => {\n const {variant, enableAnimation} = useHeroContext()\n const isGridline = variant === 'gridline' || variant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n\n return (\n <Tag {...tagProps}>\n <ButtonGroup ref={ref} className={clsx(styles['Hero-actions'], className)} {...props}>\n {children}\n </ButtonGroup>\n </Tag>\n )\n },\n)\n"],"mappings":";;;;;;;;AAUA,IAAa,IAAkB,GAC5B,EAAC,cAAW,aAAU,GAAG,KAAQ,MAAQ;CACxC,IAAM,EAAC,YAAS,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroButtonGroup.js","names":[],"sources":["../../../src/Hero/sub-components/HeroButtonGroup.tsx"],"sourcesContent":["import React, {forwardRef} from 'react'\nimport {clsx} from 'clsx'\nimport {Box} from '../../Box'\nimport {ButtonGroup} from '../../ButtonGroup'\nimport {useHeroContext} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroButtonGroupProps = React.ComponentProps<typeof ButtonGroup>\n\nexport const HeroButtonGroup = forwardRef<HTMLDivElement, HeroButtonGroupProps>(\n ({className, children, ...props}, ref) => {\n const {variant, enableAnimation} = useHeroContext()\n const isGridline = variant === 'gridline' || variant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n\n return (\n <Tag {...tagProps}>\n <ButtonGroup ref={ref} className={clsx(styles['Hero-actions'], className)} {...props}>\n {children}\n </ButtonGroup>\n </Tag>\n )\n },\n)\n"],"mappings":";;;;;;;;AAUA,IAAa,IAAkB,GAC5B,EAAC,cAAW,aAAU,GAAG,KAAQ,MAAQ;CACxC,IAAM,EAAC,YAAS,uBAAmB,EAAe,GAC5C,IAAa,MAAY,cAAc,MAAY;CAczD,OACE,kBAdU,IAAa,IAAM,EAAM,UAcnC;EAAK,GAbU,IACb,EACE,SAAS,IACL;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA,EACN,IACA,CAAC;YAID,kBAAC,GAAD;GAAkB;GAAK,WAAW,EAAK,EAAO,iBAAiB,CAAS;GAAG,GAAI;GAC5E;EACU,CAAA;CACV,CAAA;AAET,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroDescription.js","names":[],"sources":["../../../src/Hero/sub-components/HeroDescription.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {Text, TextSizes, TextWeightVariants, ResponsiveWeightMap, TextProps} from '../../Text'\nimport type {BaseProps} from '../../component-helpers'\n\nimport styles from '../Hero.module.css'\nimport {useHeroContext} from '../HeroContext'\n\nexport type HeroDescriptionProps = {\n size?: (typeof TextSizes)[number]\n weight?: TextWeightVariants | ResponsiveWeightMap\n} & BaseProps<HTMLParagraphElement> &\n TextProps\n\nexport const HeroDescription = forwardRef<HTMLParagraphElement, PropsWithChildren<HeroDescriptionProps>>(\n (\n {size = '200', weight = 'normal', children, variant = 'muted', className}: PropsWithChildren<HeroDescriptionProps>,\n ref,\n ) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n return (\n <Text\n animate={\n isGridlineVariant && enableAnimation\n ? {\n variant: 'slide-in-up',\n delay: 500,\n duration: 1000,\n }\n : undefined\n }\n ref={ref}\n className={clsx(styles['Hero-description'], className)}\n as=\"p\"\n size={size}\n weight={weight}\n variant={variant}\n >\n {children}\n </Text>\n )\n },\n)\n"],"mappings":";;;;;;;AAcA,IAAa,IAAkB,GAE3B,EAAC,UAAO,OAAO,YAAS,UAAU,aAAU,aAAU,SAAS,gBAC/D,MACG;CACH,IAAM,EAAC,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroDescription.js","names":[],"sources":["../../../src/Hero/sub-components/HeroDescription.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {Text, TextSizes, TextWeightVariants, ResponsiveWeightMap, TextProps} from '../../Text'\nimport type {BaseProps} from '../../component-helpers'\n\nimport styles from '../Hero.module.css'\nimport {useHeroContext} from '../HeroContext'\n\nexport type HeroDescriptionProps = {\n size?: (typeof TextSizes)[number]\n weight?: TextWeightVariants | ResponsiveWeightMap\n} & BaseProps<HTMLParagraphElement> &\n TextProps\n\nexport const HeroDescription = forwardRef<HTMLParagraphElement, PropsWithChildren<HeroDescriptionProps>>(\n (\n {size = '200', weight = 'normal', children, variant = 'muted', className}: PropsWithChildren<HeroDescriptionProps>,\n ref,\n ) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n return (\n <Text\n animate={\n isGridlineVariant && enableAnimation\n ? {\n variant: 'slide-in-up',\n delay: 500,\n duration: 1000,\n }\n : undefined\n }\n ref={ref}\n className={clsx(styles['Hero-description'], className)}\n as=\"p\"\n size={size}\n weight={weight}\n variant={variant}\n >\n {children}\n </Text>\n )\n },\n)\n"],"mappings":";;;;;;;AAcA,IAAa,IAAkB,GAE3B,EAAC,UAAO,OAAO,YAAS,UAAU,aAAU,aAAU,SAAS,gBAC/D,MACG;CACH,IAAM,EAAC,SAAS,GAAa,uBAAmB,EAAe;CAG/D,OACE,kBAAC,GAAD;EACE,UAJsB,MAAgB,cAAc,MAAgB,0BAK7C,IACjB;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA;EAED;EACL,WAAW,EAAK,EAAO,qBAAqB,CAAS;EACrD,IAAG;EACG;EACE;EACC;EAER;CACG,CAAA;AAEV,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroEyebrow.js","names":[],"sources":["../../../src/Hero/sub-components/HeroEyebrow.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../../component-helpers'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroEyebrowProps = PropsWithChildren<BaseProps<HTMLDivElement>>\n\nexport const HeroEyebrow = forwardRef<HTMLDivElement, HeroEyebrowProps>(\n ({children, className, ...rest}: PropsWithChildren<HeroEyebrowProps>, ref) => {\n return (\n <div ref={ref} className={clsx(styles['Hero-eyebrow'], className)} {...rest}>\n {children}\n </div>\n )\n },\n)\n"],"mappings":";;;;;AAQA,IAAa,IAAc,GACxB,EAAC,aAAU,cAAW,GAAG,KAA4C,MAElE,kBAAC,OAAD;CAAU;CAAK,WAAW,EAAK,EAAO,iBAAiB,
|
|
1
|
+
{"version":3,"file":"HeroEyebrow.js","names":[],"sources":["../../../src/Hero/sub-components/HeroEyebrow.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../../component-helpers'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroEyebrowProps = PropsWithChildren<BaseProps<HTMLDivElement>>\n\nexport const HeroEyebrow = forwardRef<HTMLDivElement, HeroEyebrowProps>(\n ({children, className, ...rest}: PropsWithChildren<HeroEyebrowProps>, ref) => {\n return (\n <div ref={ref} className={clsx(styles['Hero-eyebrow'], className)} {...rest}>\n {children}\n </div>\n )\n },\n)\n"],"mappings":";;;;;AAQA,IAAa,IAAc,GACxB,EAAC,aAAU,cAAW,GAAG,KAA4C,MAElE,kBAAC,OAAD;CAAU;CAAK,WAAW,EAAK,EAAO,iBAAiB,CAAS;CAAG,GAAI;CACpE;AACE,CAAA,CAGX"}
|
|
@@ -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 { useHeroContext as t } from "../HeroContext.js";
|
|
3
3
|
import n from "../Hero.module.js";
|
|
4
4
|
import { Heading as r } from "../../Heading/Heading.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroHeading.js","names":[],"sources":["../../../src/Hero/sub-components/HeroHeading.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {Heading, HeadingProps} from '../../Heading'\nimport {useHeroContext} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroHeadingProps = Omit<HeadingProps, 'as'> & {\n fullWidth?: boolean\n}\n\nexport const HeroHeading = forwardRef<HTMLHeadingElement, HeroHeadingProps>(\n ({children, fullWidth = false, size = '1', ...rest}: PropsWithChildren<HeroHeadingProps>, ref) => {\n const {hasInlineMedia, variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n return (\n <Heading\n animate={\n isGridlineVariant && enableAnimation\n ? {\n variant: 'reveal-in-up',\n delay: 0,\n duration: 1000,\n }\n : undefined\n }\n id=\"hero-section-brand-heading\"\n className={clsx(styles['Hero-heading'], fullWidth && styles['Hero-heading--fullWidth'])}\n as=\"h1\"\n size={hasInlineMedia ? '2' : size}\n ref={ref}\n {...rest}\n >\n {children}\n </Heading>\n )\n },\n)\n"],"mappings":";;;;;;;AAWA,IAAa,IAAc,GACxB,EAAC,aAAU,eAAY,IAAO,UAAO,KAAK,GAAG,KAA4C,MAAQ;CAChG,IAAM,EAAC,mBAAgB,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroHeading.js","names":[],"sources":["../../../src/Hero/sub-components/HeroHeading.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {Heading, HeadingProps} from '../../Heading'\nimport {useHeroContext} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroHeadingProps = Omit<HeadingProps, 'as'> & {\n fullWidth?: boolean\n}\n\nexport const HeroHeading = forwardRef<HTMLHeadingElement, HeroHeadingProps>(\n ({children, fullWidth = false, size = '1', ...rest}: PropsWithChildren<HeroHeadingProps>, ref) => {\n const {hasInlineMedia, variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n return (\n <Heading\n animate={\n isGridlineVariant && enableAnimation\n ? {\n variant: 'reveal-in-up',\n delay: 0,\n duration: 1000,\n }\n : undefined\n }\n id=\"hero-section-brand-heading\"\n className={clsx(styles['Hero-heading'], fullWidth && styles['Hero-heading--fullWidth'])}\n as=\"h1\"\n size={hasInlineMedia ? '2' : size}\n ref={ref}\n {...rest}\n >\n {children}\n </Heading>\n )\n },\n)\n"],"mappings":";;;;;;;AAWA,IAAa,IAAc,GACxB,EAAC,aAAU,eAAY,IAAO,UAAO,KAAK,GAAG,KAA4C,MAAQ;CAChG,IAAM,EAAC,mBAAgB,SAAS,GAAa,uBAAmB,EAAe;CAG/E,OACE,kBAAC,GAAD;EACE,UAJsB,MAAgB,cAAc,MAAgB,0BAK7C,IACjB;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA;EAEN,IAAG;EACH,WAAW,EAAK,EAAO,iBAAiB,KAAa,EAAO,0BAA0B;EACtF,IAAG;EACH,MAAM,IAAiB,MAAM;EACxB;EACL,GAAI;EAEH;CACM,CAAA;AAEb,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroImage.js","names":[],"sources":["../../../src/Hero/sub-components/HeroImage.tsx"],"sourcesContent":["import {forwardRef} from 'react'\nimport {clsx} from 'clsx'\nimport {Image, ImageProps} from '../../Image'\nimport type {BaseProps} from '../../component-helpers'\nimport {useHeroContext, type HeroMediaPadding, type HeroMediaPosition} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroImageProps = {\n position?: HeroMediaPosition\n padding?: HeroMediaPadding\n enableBorder?: boolean\n} & ImageProps &\n BaseProps<HTMLImageElement>\n\nexport const HeroImage = forwardRef<HTMLImageElement, HeroImageProps>(\n ({position = 'block-end', padding = 'default', className, enableBorder, ...rest}: HeroImageProps, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isInlinePosition = position.startsWith('inline')\n return (\n <Image\n animate={\n heroVariant === 'gridline' && enableAnimation\n ? {\n variant: 'slide-in-up',\n delay: 0,\n duration: 1000,\n }\n : undefined\n }\n ref={ref}\n className={clsx(\n styles['Hero-image'],\n styles['Hero-media'],\n styles[`Hero-media--pos-${position}`],\n isInlinePosition && styles['Hero-media--pos-inline'],\n padding === 'all' && styles['Hero-media--padding-all'],\n padding === 'none' && styles['Hero-media--padding-none'],\n className,\n )}\n {...rest}\n />\n )\n },\n)\n"],"mappings":";;;;;;;AAeA,IAAa,IAAY,GACtB,EAAC,cAAW,aAAa,aAAU,WAAW,cAAW,iBAAc,GAAG,KAAuB,MAAQ;CACxG,IAAM,EAAC,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroImage.js","names":[],"sources":["../../../src/Hero/sub-components/HeroImage.tsx"],"sourcesContent":["import {forwardRef} from 'react'\nimport {clsx} from 'clsx'\nimport {Image, ImageProps} from '../../Image'\nimport type {BaseProps} from '../../component-helpers'\nimport {useHeroContext, type HeroMediaPadding, type HeroMediaPosition} from '../HeroContext'\n\nimport styles from '../Hero.module.css'\n\nexport type HeroImageProps = {\n position?: HeroMediaPosition\n padding?: HeroMediaPadding\n enableBorder?: boolean\n} & ImageProps &\n BaseProps<HTMLImageElement>\n\nexport const HeroImage = forwardRef<HTMLImageElement, HeroImageProps>(\n ({position = 'block-end', padding = 'default', className, enableBorder, ...rest}: HeroImageProps, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isInlinePosition = position.startsWith('inline')\n return (\n <Image\n animate={\n heroVariant === 'gridline' && enableAnimation\n ? {\n variant: 'slide-in-up',\n delay: 0,\n duration: 1000,\n }\n : undefined\n }\n ref={ref}\n className={clsx(\n styles['Hero-image'],\n styles['Hero-media'],\n styles[`Hero-media--pos-${position}`],\n isInlinePosition && styles['Hero-media--pos-inline'],\n padding === 'all' && styles['Hero-media--padding-all'],\n padding === 'none' && styles['Hero-media--padding-none'],\n className,\n )}\n {...rest}\n />\n )\n },\n)\n"],"mappings":";;;;;;;AAeA,IAAa,IAAY,GACtB,EAAC,cAAW,aAAa,aAAU,WAAW,cAAW,iBAAc,GAAG,KAAuB,MAAQ;CACxG,IAAM,EAAC,SAAS,GAAa,uBAAmB,EAAe,GACzD,IAAmB,EAAS,WAAW,QAAQ;CACrD,OACE,kBAAC,GAAD;EACE,SACE,MAAgB,cAAc,IAC1B;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA;EAED;EACL,WAAW,EACT,EAAO,eACP,EAAO,eACP,EAAO,mBAAmB,MAC1B,KAAoB,EAAO,2BAC3B,MAAY,SAAS,EAAO,4BAC5B,MAAY,UAAU,EAAO,6BAC7B,CACF;EACA,GAAI;CACL,CAAA;AAEL,CACF"}
|
|
@@ -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 { useHeroContext as t } from "../HeroContext.js";
|
|
3
3
|
import { TextCursorAnimation as n } from "../../TextCursorAnimation/TextCursorAnimation.js";
|
|
4
4
|
import r from "../Hero.module.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroLabel.js","names":[],"sources":["../../../src/Hero/sub-components/HeroLabel.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {TextProps} from '../../Text'\nimport type {BaseProps} from '../../component-helpers'\nimport {TextCursorAnimation} from '../../TextCursorAnimation'\n\nimport styles from '../Hero.module.css'\nimport {useHeroContext} from '../HeroContext'\n\nexport type HeroLabelProps = Omit<TextProps, 'as' | 'ref' | 'animate'> &\n Omit<BaseProps<HTMLSpanElement>, 'animate'> & {\n animate?: boolean\n animationDelay?: number\n initialText?: string\n }\n\nexport const HeroLabel = forwardRef<HTMLSpanElement, HeroLabelProps>(\n (\n {\n children,\n className,\n variant = 'muted',\n animate = false,\n animationDelay = 1000,\n initialText,\n ...rest\n }: PropsWithChildren<HeroLabelProps>,\n ref,\n ) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n const shouldAnimate = enableAnimation || animate\n const shouldHaveDelay = (isGridlineVariant && enableAnimation) || animate\n\n return (\n <span ref={ref} className={clsx(styles['Hero-label'], className)} {...rest}>\n <TextCursorAnimation\n variant={variant}\n animate={shouldAnimate}\n delay={shouldHaveDelay ? animationDelay : 0}\n initialText={initialText}\n >\n {children}\n </TextCursorAnimation>\n </span>\n )\n },\n)\n"],"mappings":";;;;;;;AAgBA,IAAa,IAAY,GAErB,EACE,aACA,cACA,aAAU,SACV,aAAU,IACV,oBAAiB,KACjB,gBACA,GAAG,KAEL,MACG;CACH,IAAM,EAAC,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroLabel.js","names":[],"sources":["../../../src/Hero/sub-components/HeroLabel.tsx"],"sourcesContent":["import {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport {TextProps} from '../../Text'\nimport type {BaseProps} from '../../component-helpers'\nimport {TextCursorAnimation} from '../../TextCursorAnimation'\n\nimport styles from '../Hero.module.css'\nimport {useHeroContext} from '../HeroContext'\n\nexport type HeroLabelProps = Omit<TextProps, 'as' | 'ref' | 'animate'> &\n Omit<BaseProps<HTMLSpanElement>, 'animate'> & {\n animate?: boolean\n animationDelay?: number\n initialText?: string\n }\n\nexport const HeroLabel = forwardRef<HTMLSpanElement, HeroLabelProps>(\n (\n {\n children,\n className,\n variant = 'muted',\n animate = false,\n animationDelay = 1000,\n initialText,\n ...rest\n }: PropsWithChildren<HeroLabelProps>,\n ref,\n ) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridlineVariant = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n\n const shouldAnimate = enableAnimation || animate\n const shouldHaveDelay = (isGridlineVariant && enableAnimation) || animate\n\n return (\n <span ref={ref} className={clsx(styles['Hero-label'], className)} {...rest}>\n <TextCursorAnimation\n variant={variant}\n animate={shouldAnimate}\n delay={shouldHaveDelay ? animationDelay : 0}\n initialText={initialText}\n >\n {children}\n </TextCursorAnimation>\n </span>\n )\n },\n)\n"],"mappings":";;;;;;;AAgBA,IAAa,IAAY,GAErB,EACE,aACA,cACA,aAAU,SACV,aAAU,IACV,oBAAiB,KACjB,gBACA,GAAG,KAEL,MACG;CACH,IAAM,EAAC,SAAS,GAAa,uBAAmB,EAAe,GACzD,IAAoB,MAAgB,cAAc,MAAgB,uBAElE,IAAgB,KAAmB,GACnC,IAAmB,KAAqB,KAAoB;CAElE,OACE,kBAAC,QAAD;EAAW;EAAK,WAAW,EAAK,EAAO,eAAe,CAAS;EAAG,GAAI;YACpE,kBAAC,GAAD;GACW;GACT,SAAS;GACT,OAAO,IAAkB,IAAiB;GAC7B;GAEZ;EACkB,CAAA;CACjB,CAAA;AAEV,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroPrimaryAction.js","names":[],"sources":["../../../src/Hero/sub-components/HeroPrimaryAction.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {Button, ButtonBaseProps} from '../../Button'\nimport type {BaseProps} from '../../component-helpers'\nimport {useHeroContext} from '../HeroContext'\nimport {Box} from '../../Box'\n\ntype RestrictedPolymorphism =\n | (BaseProps<HTMLAnchorElement> & {as?: 'a'})\n | (BaseProps<HTMLButtonElement> & {as?: 'button'})\n\nexport type HeroPrimaryActionProps = {\n as?: 'a' | 'button'\n href: string\n} & ButtonBaseProps &\n RestrictedPolymorphism\n\nexport const HeroPrimaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<HeroPrimaryActionProps>\n>(({href, as = 'a', children, ...rest}, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridline = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n\n return (\n <Tag {...tagProps}>\n <Button ref={ref as React.Ref<HTMLButtonElement>} as={as} variant=\"primary\" size=\"medium\" href={href} {...rest}>\n {children}\n </Button>\n </Tag>\n )\n})\n"],"mappings":";;;;;;AAgBA,IAAa,IAAoB,GAG9B,EAAC,SAAM,QAAK,KAAK,aAAU,GAAG,KAAO,MAAQ;CAC9C,IAAM,EAAC,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroPrimaryAction.js","names":[],"sources":["../../../src/Hero/sub-components/HeroPrimaryAction.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {Button, ButtonBaseProps} from '../../Button'\nimport type {BaseProps} from '../../component-helpers'\nimport {useHeroContext} from '../HeroContext'\nimport {Box} from '../../Box'\n\ntype RestrictedPolymorphism =\n | (BaseProps<HTMLAnchorElement> & {as?: 'a'})\n | (BaseProps<HTMLButtonElement> & {as?: 'button'})\n\nexport type HeroPrimaryActionProps = {\n as?: 'a' | 'button'\n href: string\n} & ButtonBaseProps &\n RestrictedPolymorphism\n\nexport const HeroPrimaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<HeroPrimaryActionProps>\n>(({href, as = 'a', children, ...rest}, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridline = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n\n return (\n <Tag {...tagProps}>\n <Button ref={ref as React.Ref<HTMLButtonElement>} as={as} variant=\"primary\" size=\"medium\" href={href} {...rest}>\n {children}\n </Button>\n </Tag>\n )\n})\n"],"mappings":";;;;;;AAgBA,IAAa,IAAoB,GAG9B,EAAC,SAAM,QAAK,KAAK,aAAU,GAAG,KAAO,MAAQ;CAC9C,IAAM,EAAC,SAAS,GAAa,uBAAmB,EAAe,GACzD,IAAa,MAAgB,cAAc,MAAgB;CAcjE,OACE,kBAdU,IAAa,IAAM,EAAM,UAcnC;EAAK,GAbU,IACb,EACE,SAAS,IACL;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA,EACN,IACA,CAAC;YAID,kBAAC,GAAD;GAAa;GAAyC;GAAI,SAAQ;GAAU,MAAK;GAAe;GAAM,GAAI;GACvG;EACK,CAAA;CACL,CAAA;AAET,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroSecondaryAction.js","names":[],"sources":["../../../src/Hero/sub-components/HeroSecondaryAction.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {Button, ButtonBaseProps} from '../../Button'\nimport type {BaseProps} from '../../component-helpers'\nimport {Box} from '../..'\nimport {useHeroContext} from '../HeroContext'\n\ntype RestrictedPolymorphism =\n | (BaseProps<HTMLAnchorElement> & {as?: 'a'})\n | (BaseProps<HTMLButtonElement> & {as?: 'button'})\n\nexport type HeroSecondaryActionProps = {\n as?: 'a' | 'button'\n href: string\n} & ButtonBaseProps &\n RestrictedPolymorphism\n\nexport const HeroSecondaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<HeroSecondaryActionProps>\n>(({href, as = 'a', children, ...rest}, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridline = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n return (\n <Tag {...tagProps}>\n <Button ref={ref as React.Ref<HTMLButtonElement>} as={as} variant=\"secondary\" size=\"medium\" href={href} {...rest}>\n {children}\n </Button>\n </Tag>\n )\n})\n"],"mappings":";;;;;;AAgBA,IAAa,IAAsB,GAGhC,EAAC,SAAM,QAAK,KAAK,aAAU,GAAG,KAAO,MAAQ;CAC9C,IAAM,EAAC,SAAS,GAAa,uBAAmB,
|
|
1
|
+
{"version":3,"file":"HeroSecondaryAction.js","names":[],"sources":["../../../src/Hero/sub-components/HeroSecondaryAction.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {Button, ButtonBaseProps} from '../../Button'\nimport type {BaseProps} from '../../component-helpers'\nimport {Box} from '../..'\nimport {useHeroContext} from '../HeroContext'\n\ntype RestrictedPolymorphism =\n | (BaseProps<HTMLAnchorElement> & {as?: 'a'})\n | (BaseProps<HTMLButtonElement> & {as?: 'button'})\n\nexport type HeroSecondaryActionProps = {\n as?: 'a' | 'button'\n href: string\n} & ButtonBaseProps &\n RestrictedPolymorphism\n\nexport const HeroSecondaryAction = forwardRef<\n HTMLAnchorElement | HTMLButtonElement,\n PropsWithChildren<HeroSecondaryActionProps>\n>(({href, as = 'a', children, ...rest}, ref) => {\n const {variant: heroVariant, enableAnimation} = useHeroContext()\n const isGridline = heroVariant === 'gridline' || heroVariant === 'gridline-expressive'\n const Tag = isGridline ? Box : React.Fragment\n const tagProps = isGridline\n ? {\n animate: enableAnimation\n ? {\n variant: 'slide-in-up' as const,\n delay: 750,\n duration: 1000,\n }\n : undefined,\n }\n : {}\n return (\n <Tag {...tagProps}>\n <Button ref={ref as React.Ref<HTMLButtonElement>} as={as} variant=\"secondary\" size=\"medium\" href={href} {...rest}>\n {children}\n </Button>\n </Tag>\n )\n})\n"],"mappings":";;;;;;AAgBA,IAAa,IAAsB,GAGhC,EAAC,SAAM,QAAK,KAAK,aAAU,GAAG,KAAO,MAAQ;CAC9C,IAAM,EAAC,SAAS,GAAa,uBAAmB,EAAe,GACzD,IAAa,MAAgB,cAAc,MAAgB;CAajE,OACE,kBAbU,IAAa,IAAM,EAAM,UAanC;EAAK,GAZU,IACb,EACE,SAAS,IACL;GACE,SAAS;GACT,OAAO;GACP,UAAU;EACZ,IACA,KAAA,EACN,IACA,CAAC;YAGD,kBAAC,GAAD;GAAa;GAAyC;GAAI,SAAQ;GAAY,MAAK;GAAe;GAAM,GAAI;GACzG;EACK,CAAA;CACL,CAAA;AAET,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
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 { useProvidedRefOrCreate as t } from "../../hooks/useRef.js";
|
|
3
3
|
import { Box as n } from "../../Box/Box.js";
|
|
4
4
|
import { Text as r } from "../../Text/Text.js";
|
|
5
5
|
import i from "../Hero.module.js";
|
|
6
|
-
import { MarkGithubIcon as a } from "../../node_modules/@primer/octicons-react/dist/
|
|
6
|
+
import { MarkGithubIcon as a } from "../../node_modules/@primer/octicons-react/dist/icons/MarkGithubIcon.js";
|
|
7
7
|
import { Image as o } from "../../Image/Image.js";
|
|
8
8
|
import { PlayIcon as s } from "../../VideoPlayer/components/PlayIcon/PlayIcon.js";
|
|
9
9
|
import c, { forwardRef as l } from "react";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroVideo.js","names":[],"sources":["../../../src/Hero/sub-components/HeroVideo.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../../component-helpers'\nimport type {HeroMediaPadding, HeroMediaPosition} from '../HeroContext'\nimport {useProvidedRefOrCreate} from '../../hooks/useRef'\n\nimport styles from '../Hero.module.css'\nimport {Box, Image, Text} from '../..'\nimport {PlayIcon} from '../../VideoPlayer/components/PlayIcon'\nimport {MarkGithubIcon} from '@primer/octicons-react'\n\ntype HeroVideoBaseProps = {\n position?: HeroMediaPosition\n /**\n * Controls the padding around media in gridline layouts. `default` preserves the padding recommended for the position.\n */\n padding?: HeroMediaPadding\n enableBorder?: boolean\n 'data-testid'?: string\n} & PropsWithChildren<BaseProps<HTMLDivElement>>\n\n// discriminated union to ensure that if one poster* prop is set, all are required\ntype PosterProps =\n | {poster?: never; posterAltText?: never; posterTitle?: never}\n | {poster: string; posterAltText: string; posterTitle: string}\n\nexport type HeroVideoProps = HeroVideoBaseProps & PosterProps\n\nexport const HeroVideo = forwardRef<HTMLDivElement, HeroVideoProps>(\n (\n {\n className,\n children,\n position = 'block-end',\n padding = 'default',\n poster,\n posterTitle,\n posterAltText,\n enableBorder,\n 'data-testid': testId,\n ...rest\n }: HeroVideoProps,\n ref,\n ) => {\n const [showVideo, setShowVideo] = React.useState(poster ? false : true)\n const containerRef = useProvidedRefOrCreate(ref as React.RefObject<HTMLDivElement>)\n const isInlinePosition = position.startsWith('inline')\n\n const mediaClasses = clsx(\n styles['Hero-video'],\n styles['Hero-media'],\n styles[`Hero-media--pos-${position}`],\n isInlinePosition && styles['Hero-media--pos-inline'],\n padding === 'all' && styles['Hero-media--padding-all'],\n padding === 'none' && styles['Hero-media--padding-none'],\n className,\n )\n\n const handlePosterClick = () => setShowVideo(true)\n\n const videoContent = (\n <div className={mediaClasses} ref={containerRef} data-testid={testId || 'Hero-video'} {...rest}>\n {children}\n </div>\n )\n\n if (showVideo) {\n return videoContent\n }\n\n return (\n <PosterImage\n posterSrc={poster!}\n posterAlt={posterAltText!}\n posterTitle={posterTitle!}\n onClick={handlePosterClick}\n className={mediaClasses}\n />\n )\n },\n)\n\ntype PosterImageProps = {\n posterSrc: string\n posterAlt: string\n posterTitle: string\n onClick: () => void\n className?: string\n}\n\nfunction PosterImage({posterSrc, posterAlt, posterTitle, onClick, className}: PosterImageProps) {\n return (\n <Box className={className}>\n <button aria-label=\"Play video\" onClick={onClick} className={styles['Hero-video-poster-button']}>\n <Image src={posterSrc} alt={posterAlt} className={styles['Hero-video-poster-image']} />\n <PlayIcon className={styles['Hero-video-poster-icon']} />\n <span className={styles['Hero-video-poster-header']}>\n <MarkGithubIcon size={48} className={styles['Hero-video-header-poster-icon']} />\n <Text size=\"350\" className={styles['Hero-video-poster-text']}>\n {posterTitle}\n </Text>\n </span>\n </button>\n </Box>\n )\n}\n"],"mappings":";;;;;;;;;;;AA4BA,IAAa,IAAY,GAErB,EACE,cACA,aACA,cAAW,aACX,aAAU,WACV,WACA,gBACA,kBACA,iBACA,eAAe,GACf,GAAG,KAEL,MACG;CACH,IAAM,CAAC,GAAW,KAAgB,EAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"HeroVideo.js","names":[],"sources":["../../../src/Hero/sub-components/HeroVideo.tsx"],"sourcesContent":["import React, {forwardRef, PropsWithChildren} from 'react'\nimport {clsx} from 'clsx'\nimport type {BaseProps} from '../../component-helpers'\nimport type {HeroMediaPadding, HeroMediaPosition} from '../HeroContext'\nimport {useProvidedRefOrCreate} from '../../hooks/useRef'\n\nimport styles from '../Hero.module.css'\nimport {Box, Image, Text} from '../..'\nimport {PlayIcon} from '../../VideoPlayer/components/PlayIcon'\nimport {MarkGithubIcon} from '@primer/octicons-react'\n\ntype HeroVideoBaseProps = {\n position?: HeroMediaPosition\n /**\n * Controls the padding around media in gridline layouts. `default` preserves the padding recommended for the position.\n */\n padding?: HeroMediaPadding\n enableBorder?: boolean\n 'data-testid'?: string\n} & PropsWithChildren<BaseProps<HTMLDivElement>>\n\n// discriminated union to ensure that if one poster* prop is set, all are required\ntype PosterProps =\n | {poster?: never; posterAltText?: never; posterTitle?: never}\n | {poster: string; posterAltText: string; posterTitle: string}\n\nexport type HeroVideoProps = HeroVideoBaseProps & PosterProps\n\nexport const HeroVideo = forwardRef<HTMLDivElement, HeroVideoProps>(\n (\n {\n className,\n children,\n position = 'block-end',\n padding = 'default',\n poster,\n posterTitle,\n posterAltText,\n enableBorder,\n 'data-testid': testId,\n ...rest\n }: HeroVideoProps,\n ref,\n ) => {\n const [showVideo, setShowVideo] = React.useState(poster ? false : true)\n const containerRef = useProvidedRefOrCreate(ref as React.RefObject<HTMLDivElement>)\n const isInlinePosition = position.startsWith('inline')\n\n const mediaClasses = clsx(\n styles['Hero-video'],\n styles['Hero-media'],\n styles[`Hero-media--pos-${position}`],\n isInlinePosition && styles['Hero-media--pos-inline'],\n padding === 'all' && styles['Hero-media--padding-all'],\n padding === 'none' && styles['Hero-media--padding-none'],\n className,\n )\n\n const handlePosterClick = () => setShowVideo(true)\n\n const videoContent = (\n <div className={mediaClasses} ref={containerRef} data-testid={testId || 'Hero-video'} {...rest}>\n {children}\n </div>\n )\n\n if (showVideo) {\n return videoContent\n }\n\n return (\n <PosterImage\n posterSrc={poster!}\n posterAlt={posterAltText!}\n posterTitle={posterTitle!}\n onClick={handlePosterClick}\n className={mediaClasses}\n />\n )\n },\n)\n\ntype PosterImageProps = {\n posterSrc: string\n posterAlt: string\n posterTitle: string\n onClick: () => void\n className?: string\n}\n\nfunction PosterImage({posterSrc, posterAlt, posterTitle, onClick, className}: PosterImageProps) {\n return (\n <Box className={className}>\n <button aria-label=\"Play video\" onClick={onClick} className={styles['Hero-video-poster-button']}>\n <Image src={posterSrc} alt={posterAlt} className={styles['Hero-video-poster-image']} />\n <PlayIcon className={styles['Hero-video-poster-icon']} />\n <span className={styles['Hero-video-poster-header']}>\n <MarkGithubIcon size={48} className={styles['Hero-video-header-poster-icon']} />\n <Text size=\"350\" className={styles['Hero-video-poster-text']}>\n {posterTitle}\n </Text>\n </span>\n </button>\n </Box>\n )\n}\n"],"mappings":";;;;;;;;;;;AA4BA,IAAa,IAAY,GAErB,EACE,cACA,aACA,cAAW,aACX,aAAU,WACV,WACA,gBACA,kBACA,iBACA,eAAe,GACf,GAAG,KAEL,MACG;CACH,IAAM,CAAC,GAAW,KAAgB,EAAM,SAAS,EAAqB,GAChE,IAAe,EAAuB,CAAsC,GAC5E,IAAmB,EAAS,WAAW,QAAQ,GAE/C,IAAe,EACnB,EAAO,eACP,EAAO,eACP,EAAO,mBAAmB,MAC1B,KAAoB,EAAO,2BAC3B,MAAY,SAAS,EAAO,4BAC5B,MAAY,UAAU,EAAO,6BAC7B,CACF,GAEM,UAA0B,EAAa,EAAI,GAE3C,IACJ,kBAAC,OAAD;EAAK,WAAW;EAAc,KAAK;EAAc,eAAa,KAAU;EAAc,GAAI;EACvF;CACE,CAAA;CAOP,OAJI,IACK,IAIP,kBAAC,GAAD;EACE,WAAW;EACX,WAAW;EACE;EACb,SAAS;EACT,WAAW;CACZ,CAAA;AAEL,CACF;AAUA,SAAS,EAAY,EAAC,cAAW,cAAW,gBAAa,YAAS,gBAA8B;CAC9F,OACE,kBAAC,GAAD;EAAgB;YACd,kBAAC,UAAD;GAAQ,cAAW;GAAsB;GAAS,WAAW,EAAO;aAApE;IACE,kBAAC,GAAD;KAAO,KAAK;KAAW,KAAK;KAAW,WAAW,EAAO;IAA6B,CAAA;IACtF,kBAAC,GAAD,EAAU,WAAW,EAAO,0BAA4B,CAAA;IACxD,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAxB,CACE,kBAAC,GAAD;MAAgB,MAAM;MAAI,WAAW,EAAO;KAAmC,CAAA,GAC/E,kBAAC,GAAD;MAAM,MAAK;MAAM,WAAW,EAAO;gBAChC;KACG,CAAA,CACF;;GACA;;CACL,CAAA;AAET"}
|
package/esm/IDE/IDE.d.ts
CHANGED
|
@@ -148,7 +148,7 @@ export declare const IDE: React.NamedExoticComponent<{
|
|
|
148
148
|
} & BaseProps<HTMLDivElement> & {
|
|
149
149
|
children?: React.ReactNode | undefined;
|
|
150
150
|
}> & {
|
|
151
|
-
readonly type: ({ children, className, "data-testid": testId, height, variant, ...rest }: PropsWithChildren<IDEProps>) =>
|
|
151
|
+
readonly type: ({ children, className, "data-testid": testId, height, variant, ...rest }: PropsWithChildren<IDEProps>) => React.JSX.Element;
|
|
152
152
|
} & {
|
|
153
153
|
testIds: {
|
|
154
154
|
root: string;
|
package/esm/IDE/IDE.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
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 t from "../animation/Animation.module.js";
|
|
3
3
|
import { useProvidedRefOrCreate as n } from "../hooks/useRef.js";
|
|
4
4
|
import { Text as r } from "../Text/Text.js";
|
|
5
|
-
import { CopilotIcon as i
|
|
5
|
+
import { CopilotIcon as i } from "../node_modules/@primer/octicons-react/dist/icons/CopilotIcon.js";
|
|
6
|
+
import { PaperAirplaneIcon as a } from "../node_modules/@primer/octicons-react/dist/icons/PaperAirplaneIcon.js";
|
|
6
7
|
import { useTabs as o } from "../hooks/useTabs.js";
|
|
7
8
|
import { TextInput as s } from "../forms/TextInput/TextInput.js";
|
|
8
9
|
import { Avatar as c } from "../Avatar/Avatar.js";
|
package/esm/IDE/IDE.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDE.js","names":[],"sources":["../../src/IDE/IDE.tsx"],"sourcesContent":["import {CopilotIcon, PaperAirplaneIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\nimport React, {\n Children,\n forwardRef,\n isValidElement,\n memo,\n type PropsWithChildren,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport {Avatar, Text, TextInput} from '..'\nimport type {BaseProps} from '../component-helpers'\nimport {useTabs} from '../hooks/useTabs'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/ide/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport animationStyles from '../animation/Animation.module.css'\nimport styles from './IDE.module.css'\nimport {useProvidedRefOrCreate} from '../hooks/useRef'\n\nconst testIds = {\n root: 'IDE',\n get chat() {\n return `${this.root}-chat`\n },\n get editor() {\n return `${this.root}-editor`\n },\n get editorContent() {\n return `${this.editor}-content`\n },\n get editorTabs() {\n return `${this.editor}-tab`\n },\n}\n\n/**\n * @deprecated IDEProps is deprecated and will be removed in a future release.\n */\nexport type IDEProps = {\n /**\n * Test id for the IDE\n */\n 'data-testid'?: string\n /**\n * The optionally configurable height of the IDE\n */\n height?: number\n /**\n * Alternative presentation of the IDE\n */\n variant?: 'default' | 'glass'\n} & BaseProps<HTMLDivElement>\n\nconst _IDERoot = memo(\n ({children, className, 'data-testid': testId, height, variant = 'default', ...rest}: PropsWithChildren<IDEProps>) => {\n const [animationIsPaused, setAnimationIsPaused] = useState(false)\n const [chatAnimationIsDone, setChatAnimationIsDone] = useState(false)\n const [editorAnimationIsDone, setEditorAnimationIsDone] = useState(false)\n const chatRef = useRef<IDEChatHandle>(null)\n const editorRef = useRef<IDEEditorHandle>(null)\n\n useEffect(() => {\n if (chatAnimationIsDone && editorAnimationIsDone) {\n setAnimationIsPaused(false)\n }\n }, [chatAnimationIsDone, editorAnimationIsDone])\n\n const childrenArray = useMemo(() => Children.toArray(children), [children])\n\n const ChatChild = childrenArray.find(\n (child): child is React.ReactElement<React.ComponentProps<typeof IDE.Chat>> =>\n isValidElement(child) && child.type === IDE.Chat,\n )\n const hasChatChild = !!ChatChild\n const ClonedChatChild = hasChatChild\n ? React.cloneElement(ChatChild, {\n ref: chatRef,\n 'data-testid': testId || testIds.chat,\n animationIsPaused,\n setAnimationIsDone: setChatAnimationIsDone,\n })\n : null\n\n const EditorChild = childrenArray.find(\n (child): child is React.ReactElement<React.ComponentProps<typeof IDE.Editor>> =>\n isValidElement(child) && child.type === IDE.Editor,\n )\n const hasEditorChild = !!EditorChild\n const ClonedEditorChild = hasEditorChild\n ? React.cloneElement(EditorChild, {\n ref: editorRef,\n 'data-testid': testId || testIds.editor,\n animationIsPaused,\n setAnimationIsDone: setEditorAnimationIsDone,\n })\n : null\n\n // If a child exists, we need to account for its animation state\n const allAnimationsAreDone = (!hasChatChild || chatAnimationIsDone) && (!hasEditorChild || editorAnimationIsDone)\n\n const onPlayPause = useCallback(\n isPlaying => {\n if (allAnimationsAreDone) {\n setChatAnimationIsDone(false)\n setEditorAnimationIsDone(false)\n chatRef.current?.resetAnimation()\n editorRef.current?.resetAnimation()\n } else {\n setAnimationIsPaused(!isPlaying)\n }\n },\n [allAnimationsAreDone],\n )\n\n return (\n <section\n data-testid={testId || testIds.root}\n className={clsx(\n styles[`IDE--${variant}`],\n hasChatChild && hasEditorChild && styles['IDE--full-exp'],\n hasChatChild && !hasEditorChild && styles['IDE--chat-only'],\n className,\n )}\n >\n <div {...rest}>\n <div\n className={styles['IDE__inner']}\n style={{['--brand-IDE-height' as string]: height ? `${height}px` : undefined}}\n >\n <div className={styles.IDE__main}>\n {ClonedChatChild}\n {ClonedEditorChild}\n </div>\n <PlayPauseButton isPlaying={!animationIsPaused && !allAnimationsAreDone} onPlayPause={onPlayPause} />\n </div>\n </div>\n </section>\n )\n },\n)\n\ntype IDEChatProps = {\n /**\n * The chat script\n */\n script: IDEChatMessage[]\n /**\n * Alternative description of the chat script for users of assistive technologies.\n */\n alternativeText: string\n /**\n * The delay between messages\n */\n animationDelay?: number\n /**\n * Test id for the IDE\n */\n 'data-testid'?: string\n /**\n * Internal prop used for controlling the animation state\n */\n animationIsPaused?: boolean\n /**\n * Internal prop used for controlling the animation state\n */\n setAnimationIsDone?: (isDone: boolean) => void\n} & BaseProps<HTMLElement>\n\ntype IDEChatMessageUser = {\n role: 'user'\n avatar: string\n}\n\ntype IDEChatMessageAssistant = {\n role: 'assistant'\n}\n\n/**\n * @deprecated IDEChatMessage is deprecated and will be removed in a future release.\n */\nexport type IDEChatMessage = {handle: string; message: string; codeSnippet?: string; highlighter?: 'hljs'} & (\n | IDEChatMessageUser\n | IDEChatMessageAssistant\n)\n\ntype IDEChatHandle = HTMLElement & {\n resetAnimation: () => void\n}\n\nconst _Chat = memo(\n forwardRef<IDEChatHandle, IDEChatProps>(\n (\n {\n 'data-testid': testId,\n script,\n animationDelay = 3000,\n alternativeText,\n animationIsPaused,\n setAnimationIsDone,\n ...rest\n },\n forwardedRef,\n ) => {\n const ref = useProvidedRefOrCreate(forwardedRef)\n const delay = animationDelay\n const messagesRef = useRef<HTMLDivElement>(null)\n const [scheduledAnimations, setScheduledAnimations] = useState<IDEChatAnimation[]>([])\n const isPausedRef = useRef(animationIsPaused)\n isPausedRef.current = animationIsPaused\n\n const scrollIntoParentView = useCallback((element: Element | null) => {\n if (!element || !messagesRef.current) return\n const container = messagesRef.current\n const elementRect = element.getBoundingClientRect()\n const containerRect = container.getBoundingClientRect()\n\n if (elementRect.top < containerRect.top || elementRect.bottom > containerRect.bottom) {\n container.scrollTop += elementRect.top - containerRect.top\n }\n }, [])\n\n const scheduleAnimations = useCallback(() => {\n if (!script.length) return\n\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n const defaultMessages = Array.from(allMessages).slice(0, 1)\n const newerMessages = Array.from(allMessages).slice(1)\n\n const animations: IDEChatAnimation[] = []\n\n if (defaultMessages[0]) {\n animations.push({\n delay: 0,\n action: 'show',\n element: defaultMessages[0] as HTMLElement,\n })\n }\n\n animations.push({\n delay: delay / 4,\n action: 'delay',\n })\n\n for (const [index, message] of newerMessages.entries()) {\n animations.push({\n delay,\n action: 'show',\n element: message as HTMLElement,\n shouldScroll: index % 2 === 0,\n shouldFadePrevious: true,\n messageIndex: index,\n isLast: index === newerMessages.length - 1,\n })\n }\n\n animations.push({\n delay: 100,\n isDone: true,\n })\n\n setScheduledAnimations(animations)\n }, [script, delay])\n\n const resetAnimation = useCallback(() => {\n setAnimationIsDone?.(false)\n\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n for (const message of allMessages) {\n message.classList.remove(styles['IDE__Chat-message--visible'], styles['IDE__Chat-message--faded'])\n }\n\n if (messagesRef.current) {\n messagesRef.current.scrollTop = 0\n }\n\n scheduleAnimations()\n }, [scheduleAnimations, setAnimationIsDone])\n\n useImperativeHandle(ref, () => {\n if (!ref.current) {\n return {\n resetAnimation,\n } as IDEChatHandle\n }\n\n return {\n ...ref.current,\n resetAnimation,\n }\n })\n\n useEffect(() => {\n scheduleAnimations()\n }, [scheduleAnimations])\n\n useEffect(() => {\n let prevTimestamp = -1\n let animationId: number\n let currentIndex = 0\n\n const animate: FrameRequestCallback = timestamp => {\n if (currentIndex >= scheduledAnimations.length || isPausedRef.current) {\n if (isPausedRef.current) {\n // Reset timestamp when paused so we don't accumulate time\n prevTimestamp = -1\n }\n animationId = requestAnimationFrame(animate)\n return\n }\n\n const diff = prevTimestamp === -1 ? 0 : timestamp - prevTimestamp\n prevTimestamp = timestamp\n\n const nextAnimation = scheduledAnimations[currentIndex]\n\n if (nextAnimation.isDone) {\n setAnimationIsDone?.(true)\n return\n }\n\n nextAnimation.delay -= diff\n\n if (nextAnimation.delay <= 0) {\n if (nextAnimation.action === 'delay') {\n // Just a delay, no visual action needed\n currentIndex++\n } else {\n const animation = nextAnimation as IDEChatAnimationWithElement\n\n if (animation.shouldScroll) {\n scrollIntoParentView(animation.element)\n }\n\n if (animation.shouldFadePrevious) {\n // Fade previous messages\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n const defaultMessages = Array.from(allMessages).slice(0, 1)\n const newerMessages = Array.from(allMessages).slice(1)\n\n for (const defaultMessage of defaultMessages) {\n defaultMessage.classList.add(styles['IDE__Chat-message--faded'])\n }\n\n const filteredNewerMessage = newerMessages.filter((_, i) => i < (animation.messageIndex ?? 0))\n for (const filteredMessage of filteredNewerMessage) {\n filteredMessage.classList.add(styles['IDE__Chat-message--faded'])\n }\n\n // Remove faded class from all messages at the end\n if (animation.isLast) {\n setTimeout(() => {\n for (const defaultMessage of defaultMessages) {\n defaultMessage.classList.remove(styles['IDE__Chat-message--faded'])\n }\n for (const newerMessage of newerMessages) {\n newerMessage.classList.remove(styles['IDE__Chat-message--faded'])\n }\n }, 100)\n }\n }\n\n animation.element.classList.add(styles['IDE__Chat-message--visible'])\n currentIndex++\n }\n }\n\n animationId = requestAnimationFrame(animate)\n }\n\n animationId = requestAnimationFrame(animate)\n\n return () => {\n if (animationId) {\n cancelAnimationFrame(animationId)\n }\n }\n }, [scheduledAnimations, scrollIntoParentView, setAnimationIsDone])\n\n return (\n <section ref={ref} className={styles.IDE__Chat} data-testid={testId || testIds.chat} {...rest}>\n <span className=\"visually-hidden\">{alternativeText}</span>\n <div className={styles['IDE__Chat-wrapper']} aria-hidden>\n <div ref={messagesRef} className={styles['IDE__Chat-messages']}>\n {script.length &&\n script.map((message, index) => (\n <div\n id={`IDE__Chat-message-${index}`}\n key={index}\n className={clsx(\n styles['IDE__Chat-message'],\n message.role === 'user' && styles['IDE__Chat-message--user'],\n )}\n >\n <div className={styles['IDE__Chat-message-user']}>\n {message.role === 'user' ? (\n <Avatar src={message.avatar} alt={message.handle} />\n ) : (\n <CopilotIcon size={24} />\n )}\n <Text as=\"p\" size=\"100\" weight=\"medium\" className={styles['IDE__Chat-message-handle']}>\n {message.handle}\n </Text>\n </div>\n <div className={styles['IDE__Chat-message-content']}>\n <div className={styles['IDE__Chat-message-text']}>{message.message}</div>\n\n {message.highlighter && message.codeSnippet && (\n <pre\n className={styles['IDE__Chat-message-snippet']}\n dangerouslySetInnerHTML={{__html: message.codeSnippet}}\n />\n )}\n\n {!message.highlighter && message.codeSnippet && (\n <pre className={styles['IDE__Chat-message-snippet']}>{message.codeSnippet}</pre>\n )}\n </div>\n </div>\n ))}\n </div>\n <div className={styles['IDE__Chat-input-area']}>\n <TextInput\n disabled\n className={styles['IDE__Chat-input']}\n fullWidth\n placeholder=\"Ask a question or type '/' for commands.\"\n trailingVisual={<PaperAirplaneIcon className={styles['IDE__Chat-input-icon']} />}\n />\n </div>\n </div>\n </section>\n )\n },\n ),\n)\n\ntype IDEEditorProps = {\n /**\n * The index of the active tab.\n */\n activeTab?: number\n\n /**\n * An array of IDE editor files.\n */\n files: IDEEditorFile[]\n\n /**\n * Determines whether line numbers should be shown in the editor.\n */\n showLineNumbers?: boolean\n\n /**\n * Controls the size of the editor text.\n */\n size?: 'small' | 'medium' | 'large'\n\n /**\n * Used for triggering animation externally.\n */\n triggerAnimation?: boolean\n\n /**\n * Test id for the IDE.\n */\n 'data-testid'?: string\n /**\n * Enable user customisation of the icons used in file tabs.\n */\n tabIcons?: IDEEditorTabIcon\n /**\n * Internal prop used for controlling the animation state\n */\n animationIsPaused?: boolean\n /**\n * Internal prop used for controlling the animation state\n */\n setAnimationIsDone?: (isDone: boolean) => void\n} & BaseProps<HTMLDivElement>\n\n/**\n * @deprecated IDEEditorFile is deprecated and will be removed in a future release.\n */\nexport type IDEEditorFile = {\n name: string\n /**\n * Alternative description of the code for users of assistive technologies.\n */\n alternativeText: string\n /**\n * Controls line at which the Copilot suggestion begins\n */\n suggestedLineStart?: number\n code: string | string[]\n highlighter?: 'hljs' // add additional highlighters as needed\n}\n\ntype IDEEditorTabIcon = Record<string, string>\n\nconst iconBaseUrl = 'https://github.com/primer/brand/assets'\n\nexport const IDEDefaultIconMap: IDEEditorTabIcon = {\n py: `${iconBaseUrl}/13340707/7ca66487-d958-4c30-acbc-397f7a6169b7`,\n ts: `${iconBaseUrl}/13340707/2a7b87cf-b522-4ab5-a127-5a2c69bd0a89`,\n js: `${iconBaseUrl}/13340707/5a7bfffa-af38-4e32-ab39-a9e7efbcc7c6`,\n jsx: `${iconBaseUrl}/13340707/d975a978-dbc7-4626-b995-c00cac9bc132`,\n hs: `${iconBaseUrl}/13340707/826843ce-424b-4693-84d3-a43e4b7f1280`,\n html: `${iconBaseUrl}/13340707/f5b03413-b8f4-4cd5-9d91-6b574ada14ed`,\n css: `${iconBaseUrl}/13340707/3df2f0ba-daff-4b76-8492-f5773c515369`,\n scss: `${iconBaseUrl}/13340707/a1d21f2e-c813-4211-8d9a-2869c1968e9a`,\n json: `${iconBaseUrl}/13340707/ca21068e-8c27-4b84-9a1d-b965b49b3568`,\n md: `${iconBaseUrl}/13340707/39e7ff2b-9d0a-47e9-9686-bed51800084c`,\n yml: `${iconBaseUrl}/13340707/afb28101-1352-444f-8a8e-419b6883132f`,\n yaml: `${iconBaseUrl}/13340707/afb28101-1352-444f-8a8e-419b6883132f`,\n txt: `${iconBaseUrl}/13340707/7c52da20-1fe2-496c-b4bb-6ea61d0fe3dd`,\n sh: `${iconBaseUrl}/13340707/549ce181-4541-4811-8712-a9c5abd8eeae`,\n sql: `${iconBaseUrl}/13340707/b2b73a2e-e4e1-47c8-aabc-c204836244b8`,\n // Add additional default icons as needed\n // Note: These can also be customised and extended by end user using the tabIcons prop\n}\n\nexport const IDEFileExtensions = Object.keys(IDEDefaultIconMap)\n\ntype IDEAnimation = {\n delay: number\n isDone?: boolean\n tab: string | null\n} & ({elements: HTMLElement[]} | {isDone: true})\n\ntype IDEChatAnimation = {\n delay: number\n isDone?: boolean\n} & (\n | {\n action: 'show'\n element: HTMLElement\n shouldScroll?: boolean\n shouldFadePrevious?: boolean\n messageIndex?: number\n isLast?: boolean\n }\n | {action: 'delay'}\n | {isDone: true}\n)\n\ntype IDEChatAnimationWithElement = {\n delay: number\n action: 'show'\n element: HTMLElement\n shouldScroll?: boolean\n shouldFadePrevious?: boolean\n messageIndex?: number\n isLast?: boolean\n}\n\ntype IDEEditorHandle = HTMLElement & {\n resetAnimation: () => void\n}\n\nconst _Editor = memo(\n forwardRef<IDEEditorHandle, IDEEditorProps>(\n (\n {\n activeTab = 0,\n 'data-testid': testId,\n files,\n triggerAnimation = false,\n showLineNumbers = true,\n size = 'medium',\n tabIcons = IDEDefaultIconMap,\n animationIsPaused,\n setAnimationIsDone,\n ...rest\n },\n forwardedRef,\n ) => {\n const ref = useProvidedRefOrCreate(forwardedRef)\n const presRef = useRef<HTMLDivElement>(null)\n const [scheduledAnimations, setScheduledAnimations] = useState<IDEAnimation[]>([])\n const isPausedRef = useRef(animationIsPaused)\n isPausedRef.current = animationIsPaused\n\n const tabs = useTabs({\n defaultTab: activeTab.toString(),\n autoActivate: true,\n onTabActivate: (_, activeTabRef) => {\n activeTabRef?.scrollIntoView({behavior: 'smooth', block: 'nearest', inline: 'start'})\n resetAnimation()\n },\n })\n\n const scheduleAnimations = useCallback(() => {\n if (!presRef.current) return\n\n const pres = presRef.current.querySelectorAll<HTMLPreElement>('pre:not([data-has-suggestion=\"true\"])')\n const copilotSuggestions = presRef.current.querySelectorAll<HTMLPreElement>('pre[data-has-suggestion=\"true\"]')\n\n const animations: IDEAnimation[] = []\n\n for (const pre of pres) {\n animations.push({\n delay: 200,\n elements: [pre],\n tab: tabs.activeTab,\n })\n }\n\n animations.push({\n delay: 1000,\n elements: Array.from(copilotSuggestions),\n tab: tabs.activeTab,\n })\n\n animations.push({\n delay: 200,\n isDone: true,\n tab: tabs.activeTab,\n })\n\n setScheduledAnimations(animations)\n }, [tabs.activeTab])\n\n const resetAnimation = useCallback(() => {\n setScheduledAnimations([])\n setAnimationIsDone?.(false)\n\n const pres = presRef.current?.querySelectorAll('pre')\n if (pres) {\n for (const pre of pres) {\n pre.classList.remove(animationStyles['Animation--active'])\n }\n }\n\n scheduleAnimations()\n }, [scheduleAnimations, setAnimationIsDone])\n\n useImperativeHandle(ref, () => {\n if (!ref.current) {\n return {\n resetAnimation,\n } as IDEEditorHandle\n }\n\n return {\n ...ref.current,\n resetAnimation,\n }\n })\n\n useEffect(() => {\n scheduleAnimations()\n }, [scheduleAnimations, triggerAnimation])\n\n useEffect(() => {\n let prevTimestamp = -1\n let animationId: number\n let currentIndex = 0\n\n const animate: FrameRequestCallback = timestamp => {\n if (currentIndex >= scheduledAnimations.length || tabs.activeTab === null) {\n return\n }\n\n if (isPausedRef.current) {\n // Reset timestamp when paused so we don't accumulate time\n prevTimestamp = -1\n animationId = requestAnimationFrame(animate)\n return\n }\n\n const diff = prevTimestamp === -1 ? 0 : timestamp - prevTimestamp\n prevTimestamp = timestamp\n\n const nextAnimation = scheduledAnimations[currentIndex]\n\n if (nextAnimation.isDone) {\n setAnimationIsDone?.(true)\n return\n }\n\n if (nextAnimation.tab !== tabs.activeTab) {\n return\n }\n\n nextAnimation.delay -= diff\n\n if (nextAnimation.delay <= 0) {\n for (const element of nextAnimation.elements) {\n element.classList.add(animationStyles['Animation--active'])\n }\n currentIndex++\n }\n\n animationId = requestAnimationFrame(animate)\n }\n\n animationId = requestAnimationFrame(animate)\n\n return () => {\n if (animationId) {\n cancelAnimationFrame(animationId)\n }\n }\n }, [scheduledAnimations, setAnimationIsDone, tabs.activeTab])\n\n return (\n <div\n className={clsx(styles.IDE__Editor, styles[`IDE__Editor--${size}`])}\n data-testid={testId || testIds.editor}\n {...rest}\n >\n <div\n className={styles['IDE__Editor-tabs']}\n data-testid={testIds.editorTabs}\n {...tabs.getTabListProps({label: 'files'})}\n >\n {files.map((file, index) => {\n const language = file.name.split('.').pop()\n const isActiveTab = tabs.activeTab === index.toString()\n\n return (\n <button\n {...tabs.getTabProps(index.toString())}\n key={file.name}\n className={clsx(styles['IDE__Editor-tab'], isActiveTab && styles['IDE__Editor-tab--active'])}\n >\n {language && (\n <img\n className={styles['IDE__Editor-tab-icon']}\n alt=\"\"\n width={16}\n height={16}\n src={tabIcons[language]}\n />\n )}\n {file.name}\n </button>\n )\n })}\n </div>\n <div className={styles['IDE__Editor-content']}>\n {files.map((file, fileIndex) => (\n <div {...tabs.getTabPanelProps(fileIndex.toString())} key={file.name}>\n <span className=\"visually-hidden\">{file.alternativeText}</span>\n <div className={styles['IDE__Editor-content-wrapper']} aria-hidden=\"true\">\n {showLineNumbers && (\n <div className={styles['IDE__Editor-lineNumbers']}>\n {(Array.isArray(file.code) ? file.code : file.code.split('\\n')).map((_, index) => (\n <div key={index} className={styles['IDE__Editor-lineNumber']}>\n {index + 1}\n </div>\n ))}\n </div>\n )}\n <div\n ref={tabs.activeTab === fileIndex.toString() ? presRef : null}\n data-testid={testIds.editorContent}\n className={styles['IDE__Editor-content-inner']}\n >\n {Array.isArray(file.code) ? (\n (file.code as string[]).map((line, index) => {\n const isSuggestion = index + 1 >= (file.suggestedLineStart ?? Infinity)\n return (\n <React.Fragment key={line + index}>\n <pre\n key={index}\n className={clsx(\n styles['IDE__Editor-pane'],\n index + 1 < (file.suggestedLineStart ?? Infinity) &&\n animationStyles['Animation--slide-in-right'],\n isSuggestion && animationStyles['Animation--slide-in-down'],\n isSuggestion && styles['IDE__Editor-pane--suggested'],\n )}\n dangerouslySetInnerHTML={{__html: line === '' ? ' ' : line}}\n data-has-suggestion={isSuggestion}\n />\n {isSuggestion && index === file.code.length - 1 && (\n <pre\n className={clsx(\n animationStyles['Animation--slide-in-down'],\n styles['IDE__Chat-copilot-indicator'],\n )}\n data-has-suggestion={isSuggestion}\n >\n <CopilotIcon size={24} className={styles['IDE__Chat-copilot-indicator-label']} />\n <Text as=\"span\" className={styles['IDE__Chat-copilot-indicator-label']}>\n Copilot\n </Text>\n </pre>\n )}\n </React.Fragment>\n )\n })\n ) : (\n <pre\n className={clsx(styles['IDE__Editor-pane'], animationStyles['Animation--slide-in-right'])}\n dangerouslySetInnerHTML={{__html: file.code}}\n />\n )}\n </div>\n </div>\n </div>\n ))}\n </div>\n </div>\n )\n },\n ),\n)\n\nconst PauseIcon = () => (\n <svg fill=\"none\" role=\"presentation\" aria-hidden=\"true\" viewBox=\"3.17 2.28 13.7 15.42\">\n <path\n d=\"M4.66148 2.3125C3.83593 2.3125 3.16669 2.98174 3.16669 3.80729V16.1927C3.16669 17.0183 3.83593 17.6875 4.66148 17.6875H7.65106C8.47662 17.6875 9.14586 17.0183 9.14586 16.1927V3.80729C9.14586 2.98174 8.47662 2.3125 7.65106 2.3125H4.66148ZM4.44794 3.80729C4.44794 3.68936 4.54355 3.59375 4.66148 3.59375H7.65106C7.769 3.59375 7.86461 3.68936 7.86461 3.80729V16.1927C7.86461 16.3106 7.769 16.4062 7.65106 16.4062H4.66148C4.54355 16.4062 4.44794 16.3106 4.44794 16.1927V3.80729ZM12.349 2.3125C11.5235 2.3125 10.8542 2.98174 10.8542 3.80729V16.1927C10.8542 17.0183 11.5235 17.6875 12.349 17.6875H15.3386C16.1642 17.6875 16.8334 17.0183 16.8334 16.1927V3.80729C16.8334 2.98174 16.1642 2.3125 15.3386 2.3125H12.349ZM12.1355 3.80729C12.1355 3.68936 12.2311 3.59375 12.349 3.59375H15.3386C15.4565 3.59375 15.5521 3.68936 15.5521 3.80729V16.1927C15.5521 16.3106 15.4565 16.4062 15.3386 16.4062H12.349C12.2311 16.4062 12.1355 16.3106 12.1355 16.1927V3.80729Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n)\nconst PlayIcon = () => (\n <svg fill=\"none\" role=\"presentation\" aria-hidden=\"true\" viewBox=\"4.02 2.3 14.43 15.4\">\n <path\n d=\"M6.24905 3.69194C5.82218 3.45967 5.30225 3.76868 5.30225 4.25466V15.7452C5.30225 16.2312 5.82218 16.5402 6.24906 16.3079L16.8079 10.5626C17.2538 10.32 17.2538 9.67983 16.8079 9.4372L6.24905 3.69194ZM4.021 4.25466C4.021 2.79672 5.58078 1.86969 6.86142 2.56651L17.4203 8.31176C18.758 9.03966 18.758 10.9602 17.4203 11.6881L6.86143 17.4333C5.58079 18.1301 4.021 17.2031 4.021 15.7452V4.25466Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n)\n\ntype PlayPauseButtonProps = {\n isPlaying?: boolean\n onPlayPause?: (isPlaying: boolean) => void\n}\n\nconst PlayPauseButton = ({isPlaying = true, onPlayPause}: PlayPauseButtonProps) => {\n const onClick = useCallback(() => {\n onPlayPause?.(!isPlaying)\n }, [onPlayPause, isPlaying])\n\n /**\n * aria-pressed is intentionally not used here to prevent potentially confusing screen reader announcements\n * eg \"Play animation on\" or \"Pause animation off\"\n */\n return (\n <button\n className={styles['IDE__play-pause-button']}\n type=\"button\"\n onClick={onClick}\n aria-label={isPlaying ? 'Pause animation' : 'Play animation'}\n >\n {isPlaying ? <PauseIcon /> : <PlayIcon />}\n </button>\n )\n}\n\n/**\n * Use IDE to display a decorative editor component\n * @deprecated IDE is deprecated and will be removed in a future release.\n * @see https://primer.style/brand/components/IDE\n */\nexport const IDE = Object.assign(_IDERoot, {\n testIds,\n Chat: _Chat,\n Editor: _Editor,\n})\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IDE.js","names":[],"sources":["../../src/IDE/IDE.tsx"],"sourcesContent":["import {CopilotIcon, PaperAirplaneIcon} from '@primer/octicons-react'\nimport {clsx} from 'clsx'\nimport React, {\n Children,\n forwardRef,\n isValidElement,\n memo,\n type PropsWithChildren,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport {Avatar, Text, TextInput} from '..'\nimport type {BaseProps} from '../component-helpers'\nimport {useTabs} from '../hooks/useTabs'\n\n/**\n * Design tokens\n */\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/ide/base.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport animationStyles from '../animation/Animation.module.css'\nimport styles from './IDE.module.css'\nimport {useProvidedRefOrCreate} from '../hooks/useRef'\n\nconst testIds = {\n root: 'IDE',\n get chat() {\n return `${this.root}-chat`\n },\n get editor() {\n return `${this.root}-editor`\n },\n get editorContent() {\n return `${this.editor}-content`\n },\n get editorTabs() {\n return `${this.editor}-tab`\n },\n}\n\n/**\n * @deprecated IDEProps is deprecated and will be removed in a future release.\n */\nexport type IDEProps = {\n /**\n * Test id for the IDE\n */\n 'data-testid'?: string\n /**\n * The optionally configurable height of the IDE\n */\n height?: number\n /**\n * Alternative presentation of the IDE\n */\n variant?: 'default' | 'glass'\n} & BaseProps<HTMLDivElement>\n\nconst _IDERoot = memo(\n ({children, className, 'data-testid': testId, height, variant = 'default', ...rest}: PropsWithChildren<IDEProps>) => {\n const [animationIsPaused, setAnimationIsPaused] = useState(false)\n const [chatAnimationIsDone, setChatAnimationIsDone] = useState(false)\n const [editorAnimationIsDone, setEditorAnimationIsDone] = useState(false)\n const chatRef = useRef<IDEChatHandle>(null)\n const editorRef = useRef<IDEEditorHandle>(null)\n\n useEffect(() => {\n if (chatAnimationIsDone && editorAnimationIsDone) {\n setAnimationIsPaused(false)\n }\n }, [chatAnimationIsDone, editorAnimationIsDone])\n\n const childrenArray = useMemo(() => Children.toArray(children), [children])\n\n const ChatChild = childrenArray.find(\n (child): child is React.ReactElement<React.ComponentProps<typeof IDE.Chat>> =>\n isValidElement(child) && child.type === IDE.Chat,\n )\n const hasChatChild = !!ChatChild\n const ClonedChatChild = hasChatChild\n ? React.cloneElement(ChatChild, {\n ref: chatRef,\n 'data-testid': testId || testIds.chat,\n animationIsPaused,\n setAnimationIsDone: setChatAnimationIsDone,\n })\n : null\n\n const EditorChild = childrenArray.find(\n (child): child is React.ReactElement<React.ComponentProps<typeof IDE.Editor>> =>\n isValidElement(child) && child.type === IDE.Editor,\n )\n const hasEditorChild = !!EditorChild\n const ClonedEditorChild = hasEditorChild\n ? React.cloneElement(EditorChild, {\n ref: editorRef,\n 'data-testid': testId || testIds.editor,\n animationIsPaused,\n setAnimationIsDone: setEditorAnimationIsDone,\n })\n : null\n\n // If a child exists, we need to account for its animation state\n const allAnimationsAreDone = (!hasChatChild || chatAnimationIsDone) && (!hasEditorChild || editorAnimationIsDone)\n\n const onPlayPause = useCallback(\n isPlaying => {\n if (allAnimationsAreDone) {\n setChatAnimationIsDone(false)\n setEditorAnimationIsDone(false)\n chatRef.current?.resetAnimation()\n editorRef.current?.resetAnimation()\n } else {\n setAnimationIsPaused(!isPlaying)\n }\n },\n [allAnimationsAreDone],\n )\n\n return (\n <section\n data-testid={testId || testIds.root}\n className={clsx(\n styles[`IDE--${variant}`],\n hasChatChild && hasEditorChild && styles['IDE--full-exp'],\n hasChatChild && !hasEditorChild && styles['IDE--chat-only'],\n className,\n )}\n >\n <div {...rest}>\n <div\n className={styles['IDE__inner']}\n style={{['--brand-IDE-height' as string]: height ? `${height}px` : undefined}}\n >\n <div className={styles.IDE__main}>\n {ClonedChatChild}\n {ClonedEditorChild}\n </div>\n <PlayPauseButton isPlaying={!animationIsPaused && !allAnimationsAreDone} onPlayPause={onPlayPause} />\n </div>\n </div>\n </section>\n )\n },\n)\n\ntype IDEChatProps = {\n /**\n * The chat script\n */\n script: IDEChatMessage[]\n /**\n * Alternative description of the chat script for users of assistive technologies.\n */\n alternativeText: string\n /**\n * The delay between messages\n */\n animationDelay?: number\n /**\n * Test id for the IDE\n */\n 'data-testid'?: string\n /**\n * Internal prop used for controlling the animation state\n */\n animationIsPaused?: boolean\n /**\n * Internal prop used for controlling the animation state\n */\n setAnimationIsDone?: (isDone: boolean) => void\n} & BaseProps<HTMLElement>\n\ntype IDEChatMessageUser = {\n role: 'user'\n avatar: string\n}\n\ntype IDEChatMessageAssistant = {\n role: 'assistant'\n}\n\n/**\n * @deprecated IDEChatMessage is deprecated and will be removed in a future release.\n */\nexport type IDEChatMessage = {handle: string; message: string; codeSnippet?: string; highlighter?: 'hljs'} & (\n | IDEChatMessageUser\n | IDEChatMessageAssistant\n)\n\ntype IDEChatHandle = HTMLElement & {\n resetAnimation: () => void\n}\n\nconst _Chat = memo(\n forwardRef<IDEChatHandle, IDEChatProps>(\n (\n {\n 'data-testid': testId,\n script,\n animationDelay = 3000,\n alternativeText,\n animationIsPaused,\n setAnimationIsDone,\n ...rest\n },\n forwardedRef,\n ) => {\n const ref = useProvidedRefOrCreate(forwardedRef)\n const delay = animationDelay\n const messagesRef = useRef<HTMLDivElement>(null)\n const [scheduledAnimations, setScheduledAnimations] = useState<IDEChatAnimation[]>([])\n const isPausedRef = useRef(animationIsPaused)\n isPausedRef.current = animationIsPaused\n\n const scrollIntoParentView = useCallback((element: Element | null) => {\n if (!element || !messagesRef.current) return\n const container = messagesRef.current\n const elementRect = element.getBoundingClientRect()\n const containerRect = container.getBoundingClientRect()\n\n if (elementRect.top < containerRect.top || elementRect.bottom > containerRect.bottom) {\n container.scrollTop += elementRect.top - containerRect.top\n }\n }, [])\n\n const scheduleAnimations = useCallback(() => {\n if (!script.length) return\n\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n const defaultMessages = Array.from(allMessages).slice(0, 1)\n const newerMessages = Array.from(allMessages).slice(1)\n\n const animations: IDEChatAnimation[] = []\n\n if (defaultMessages[0]) {\n animations.push({\n delay: 0,\n action: 'show',\n element: defaultMessages[0] as HTMLElement,\n })\n }\n\n animations.push({\n delay: delay / 4,\n action: 'delay',\n })\n\n for (const [index, message] of newerMessages.entries()) {\n animations.push({\n delay,\n action: 'show',\n element: message as HTMLElement,\n shouldScroll: index % 2 === 0,\n shouldFadePrevious: true,\n messageIndex: index,\n isLast: index === newerMessages.length - 1,\n })\n }\n\n animations.push({\n delay: 100,\n isDone: true,\n })\n\n setScheduledAnimations(animations)\n }, [script, delay])\n\n const resetAnimation = useCallback(() => {\n setAnimationIsDone?.(false)\n\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n for (const message of allMessages) {\n message.classList.remove(styles['IDE__Chat-message--visible'], styles['IDE__Chat-message--faded'])\n }\n\n if (messagesRef.current) {\n messagesRef.current.scrollTop = 0\n }\n\n scheduleAnimations()\n }, [scheduleAnimations, setAnimationIsDone])\n\n useImperativeHandle(ref, () => {\n if (!ref.current) {\n return {\n resetAnimation,\n } as IDEChatHandle\n }\n\n return {\n ...ref.current,\n resetAnimation,\n }\n })\n\n useEffect(() => {\n scheduleAnimations()\n }, [scheduleAnimations])\n\n useEffect(() => {\n let prevTimestamp = -1\n let animationId: number\n let currentIndex = 0\n\n const animate: FrameRequestCallback = timestamp => {\n if (currentIndex >= scheduledAnimations.length || isPausedRef.current) {\n if (isPausedRef.current) {\n // Reset timestamp when paused so we don't accumulate time\n prevTimestamp = -1\n }\n animationId = requestAnimationFrame(animate)\n return\n }\n\n const diff = prevTimestamp === -1 ? 0 : timestamp - prevTimestamp\n prevTimestamp = timestamp\n\n const nextAnimation = scheduledAnimations[currentIndex]\n\n if (nextAnimation.isDone) {\n setAnimationIsDone?.(true)\n return\n }\n\n nextAnimation.delay -= diff\n\n if (nextAnimation.delay <= 0) {\n if (nextAnimation.action === 'delay') {\n // Just a delay, no visual action needed\n currentIndex++\n } else {\n const animation = nextAnimation as IDEChatAnimationWithElement\n\n if (animation.shouldScroll) {\n scrollIntoParentView(animation.element)\n }\n\n if (animation.shouldFadePrevious) {\n // Fade previous messages\n const allMessages = document.querySelectorAll(`.${styles['IDE__Chat-message']}`)\n const defaultMessages = Array.from(allMessages).slice(0, 1)\n const newerMessages = Array.from(allMessages).slice(1)\n\n for (const defaultMessage of defaultMessages) {\n defaultMessage.classList.add(styles['IDE__Chat-message--faded'])\n }\n\n const filteredNewerMessage = newerMessages.filter((_, i) => i < (animation.messageIndex ?? 0))\n for (const filteredMessage of filteredNewerMessage) {\n filteredMessage.classList.add(styles['IDE__Chat-message--faded'])\n }\n\n // Remove faded class from all messages at the end\n if (animation.isLast) {\n setTimeout(() => {\n for (const defaultMessage of defaultMessages) {\n defaultMessage.classList.remove(styles['IDE__Chat-message--faded'])\n }\n for (const newerMessage of newerMessages) {\n newerMessage.classList.remove(styles['IDE__Chat-message--faded'])\n }\n }, 100)\n }\n }\n\n animation.element.classList.add(styles['IDE__Chat-message--visible'])\n currentIndex++\n }\n }\n\n animationId = requestAnimationFrame(animate)\n }\n\n animationId = requestAnimationFrame(animate)\n\n return () => {\n if (animationId) {\n cancelAnimationFrame(animationId)\n }\n }\n }, [scheduledAnimations, scrollIntoParentView, setAnimationIsDone])\n\n return (\n <section ref={ref} className={styles.IDE__Chat} data-testid={testId || testIds.chat} {...rest}>\n <span className=\"visually-hidden\">{alternativeText}</span>\n <div className={styles['IDE__Chat-wrapper']} aria-hidden>\n <div ref={messagesRef} className={styles['IDE__Chat-messages']}>\n {script.length &&\n script.map((message, index) => (\n <div\n id={`IDE__Chat-message-${index}`}\n key={index}\n className={clsx(\n styles['IDE__Chat-message'],\n message.role === 'user' && styles['IDE__Chat-message--user'],\n )}\n >\n <div className={styles['IDE__Chat-message-user']}>\n {message.role === 'user' ? (\n <Avatar src={message.avatar} alt={message.handle} />\n ) : (\n <CopilotIcon size={24} />\n )}\n <Text as=\"p\" size=\"100\" weight=\"medium\" className={styles['IDE__Chat-message-handle']}>\n {message.handle}\n </Text>\n </div>\n <div className={styles['IDE__Chat-message-content']}>\n <div className={styles['IDE__Chat-message-text']}>{message.message}</div>\n\n {message.highlighter && message.codeSnippet && (\n <pre\n className={styles['IDE__Chat-message-snippet']}\n dangerouslySetInnerHTML={{__html: message.codeSnippet}}\n />\n )}\n\n {!message.highlighter && message.codeSnippet && (\n <pre className={styles['IDE__Chat-message-snippet']}>{message.codeSnippet}</pre>\n )}\n </div>\n </div>\n ))}\n </div>\n <div className={styles['IDE__Chat-input-area']}>\n <TextInput\n disabled\n className={styles['IDE__Chat-input']}\n fullWidth\n placeholder=\"Ask a question or type '/' for commands.\"\n trailingVisual={<PaperAirplaneIcon className={styles['IDE__Chat-input-icon']} />}\n />\n </div>\n </div>\n </section>\n )\n },\n ),\n)\n\ntype IDEEditorProps = {\n /**\n * The index of the active tab.\n */\n activeTab?: number\n\n /**\n * An array of IDE editor files.\n */\n files: IDEEditorFile[]\n\n /**\n * Determines whether line numbers should be shown in the editor.\n */\n showLineNumbers?: boolean\n\n /**\n * Controls the size of the editor text.\n */\n size?: 'small' | 'medium' | 'large'\n\n /**\n * Used for triggering animation externally.\n */\n triggerAnimation?: boolean\n\n /**\n * Test id for the IDE.\n */\n 'data-testid'?: string\n /**\n * Enable user customisation of the icons used in file tabs.\n */\n tabIcons?: IDEEditorTabIcon\n /**\n * Internal prop used for controlling the animation state\n */\n animationIsPaused?: boolean\n /**\n * Internal prop used for controlling the animation state\n */\n setAnimationIsDone?: (isDone: boolean) => void\n} & BaseProps<HTMLDivElement>\n\n/**\n * @deprecated IDEEditorFile is deprecated and will be removed in a future release.\n */\nexport type IDEEditorFile = {\n name: string\n /**\n * Alternative description of the code for users of assistive technologies.\n */\n alternativeText: string\n /**\n * Controls line at which the Copilot suggestion begins\n */\n suggestedLineStart?: number\n code: string | string[]\n highlighter?: 'hljs' // add additional highlighters as needed\n}\n\ntype IDEEditorTabIcon = Record<string, string>\n\nconst iconBaseUrl = 'https://github.com/primer/brand/assets'\n\nexport const IDEDefaultIconMap: IDEEditorTabIcon = {\n py: `${iconBaseUrl}/13340707/7ca66487-d958-4c30-acbc-397f7a6169b7`,\n ts: `${iconBaseUrl}/13340707/2a7b87cf-b522-4ab5-a127-5a2c69bd0a89`,\n js: `${iconBaseUrl}/13340707/5a7bfffa-af38-4e32-ab39-a9e7efbcc7c6`,\n jsx: `${iconBaseUrl}/13340707/d975a978-dbc7-4626-b995-c00cac9bc132`,\n hs: `${iconBaseUrl}/13340707/826843ce-424b-4693-84d3-a43e4b7f1280`,\n html: `${iconBaseUrl}/13340707/f5b03413-b8f4-4cd5-9d91-6b574ada14ed`,\n css: `${iconBaseUrl}/13340707/3df2f0ba-daff-4b76-8492-f5773c515369`,\n scss: `${iconBaseUrl}/13340707/a1d21f2e-c813-4211-8d9a-2869c1968e9a`,\n json: `${iconBaseUrl}/13340707/ca21068e-8c27-4b84-9a1d-b965b49b3568`,\n md: `${iconBaseUrl}/13340707/39e7ff2b-9d0a-47e9-9686-bed51800084c`,\n yml: `${iconBaseUrl}/13340707/afb28101-1352-444f-8a8e-419b6883132f`,\n yaml: `${iconBaseUrl}/13340707/afb28101-1352-444f-8a8e-419b6883132f`,\n txt: `${iconBaseUrl}/13340707/7c52da20-1fe2-496c-b4bb-6ea61d0fe3dd`,\n sh: `${iconBaseUrl}/13340707/549ce181-4541-4811-8712-a9c5abd8eeae`,\n sql: `${iconBaseUrl}/13340707/b2b73a2e-e4e1-47c8-aabc-c204836244b8`,\n // Add additional default icons as needed\n // Note: These can also be customised and extended by end user using the tabIcons prop\n}\n\nexport const IDEFileExtensions = Object.keys(IDEDefaultIconMap)\n\ntype IDEAnimation = {\n delay: number\n isDone?: boolean\n tab: string | null\n} & ({elements: HTMLElement[]} | {isDone: true})\n\ntype IDEChatAnimation = {\n delay: number\n isDone?: boolean\n} & (\n | {\n action: 'show'\n element: HTMLElement\n shouldScroll?: boolean\n shouldFadePrevious?: boolean\n messageIndex?: number\n isLast?: boolean\n }\n | {action: 'delay'}\n | {isDone: true}\n)\n\ntype IDEChatAnimationWithElement = {\n delay: number\n action: 'show'\n element: HTMLElement\n shouldScroll?: boolean\n shouldFadePrevious?: boolean\n messageIndex?: number\n isLast?: boolean\n}\n\ntype IDEEditorHandle = HTMLElement & {\n resetAnimation: () => void\n}\n\nconst _Editor = memo(\n forwardRef<IDEEditorHandle, IDEEditorProps>(\n (\n {\n activeTab = 0,\n 'data-testid': testId,\n files,\n triggerAnimation = false,\n showLineNumbers = true,\n size = 'medium',\n tabIcons = IDEDefaultIconMap,\n animationIsPaused,\n setAnimationIsDone,\n ...rest\n },\n forwardedRef,\n ) => {\n const ref = useProvidedRefOrCreate(forwardedRef)\n const presRef = useRef<HTMLDivElement>(null)\n const [scheduledAnimations, setScheduledAnimations] = useState<IDEAnimation[]>([])\n const isPausedRef = useRef(animationIsPaused)\n isPausedRef.current = animationIsPaused\n\n const tabs = useTabs({\n defaultTab: activeTab.toString(),\n autoActivate: true,\n onTabActivate: (_, activeTabRef) => {\n activeTabRef?.scrollIntoView({behavior: 'smooth', block: 'nearest', inline: 'start'})\n resetAnimation()\n },\n })\n\n const scheduleAnimations = useCallback(() => {\n if (!presRef.current) return\n\n const pres = presRef.current.querySelectorAll<HTMLPreElement>('pre:not([data-has-suggestion=\"true\"])')\n const copilotSuggestions = presRef.current.querySelectorAll<HTMLPreElement>('pre[data-has-suggestion=\"true\"]')\n\n const animations: IDEAnimation[] = []\n\n for (const pre of pres) {\n animations.push({\n delay: 200,\n elements: [pre],\n tab: tabs.activeTab,\n })\n }\n\n animations.push({\n delay: 1000,\n elements: Array.from(copilotSuggestions),\n tab: tabs.activeTab,\n })\n\n animations.push({\n delay: 200,\n isDone: true,\n tab: tabs.activeTab,\n })\n\n setScheduledAnimations(animations)\n }, [tabs.activeTab])\n\n const resetAnimation = useCallback(() => {\n setScheduledAnimations([])\n setAnimationIsDone?.(false)\n\n const pres = presRef.current?.querySelectorAll('pre')\n if (pres) {\n for (const pre of pres) {\n pre.classList.remove(animationStyles['Animation--active'])\n }\n }\n\n scheduleAnimations()\n }, [scheduleAnimations, setAnimationIsDone])\n\n useImperativeHandle(ref, () => {\n if (!ref.current) {\n return {\n resetAnimation,\n } as IDEEditorHandle\n }\n\n return {\n ...ref.current,\n resetAnimation,\n }\n })\n\n useEffect(() => {\n scheduleAnimations()\n }, [scheduleAnimations, triggerAnimation])\n\n useEffect(() => {\n let prevTimestamp = -1\n let animationId: number\n let currentIndex = 0\n\n const animate: FrameRequestCallback = timestamp => {\n if (currentIndex >= scheduledAnimations.length || tabs.activeTab === null) {\n return\n }\n\n if (isPausedRef.current) {\n // Reset timestamp when paused so we don't accumulate time\n prevTimestamp = -1\n animationId = requestAnimationFrame(animate)\n return\n }\n\n const diff = prevTimestamp === -1 ? 0 : timestamp - prevTimestamp\n prevTimestamp = timestamp\n\n const nextAnimation = scheduledAnimations[currentIndex]\n\n if (nextAnimation.isDone) {\n setAnimationIsDone?.(true)\n return\n }\n\n if (nextAnimation.tab !== tabs.activeTab) {\n return\n }\n\n nextAnimation.delay -= diff\n\n if (nextAnimation.delay <= 0) {\n for (const element of nextAnimation.elements) {\n element.classList.add(animationStyles['Animation--active'])\n }\n currentIndex++\n }\n\n animationId = requestAnimationFrame(animate)\n }\n\n animationId = requestAnimationFrame(animate)\n\n return () => {\n if (animationId) {\n cancelAnimationFrame(animationId)\n }\n }\n }, [scheduledAnimations, setAnimationIsDone, tabs.activeTab])\n\n return (\n <div\n className={clsx(styles.IDE__Editor, styles[`IDE__Editor--${size}`])}\n data-testid={testId || testIds.editor}\n {...rest}\n >\n <div\n className={styles['IDE__Editor-tabs']}\n data-testid={testIds.editorTabs}\n {...tabs.getTabListProps({label: 'files'})}\n >\n {files.map((file, index) => {\n const language = file.name.split('.').pop()\n const isActiveTab = tabs.activeTab === index.toString()\n\n return (\n <button\n {...tabs.getTabProps(index.toString())}\n key={file.name}\n className={clsx(styles['IDE__Editor-tab'], isActiveTab && styles['IDE__Editor-tab--active'])}\n >\n {language && (\n <img\n className={styles['IDE__Editor-tab-icon']}\n alt=\"\"\n width={16}\n height={16}\n src={tabIcons[language]}\n />\n )}\n {file.name}\n </button>\n )\n })}\n </div>\n <div className={styles['IDE__Editor-content']}>\n {files.map((file, fileIndex) => (\n <div {...tabs.getTabPanelProps(fileIndex.toString())} key={file.name}>\n <span className=\"visually-hidden\">{file.alternativeText}</span>\n <div className={styles['IDE__Editor-content-wrapper']} aria-hidden=\"true\">\n {showLineNumbers && (\n <div className={styles['IDE__Editor-lineNumbers']}>\n {(Array.isArray(file.code) ? file.code : file.code.split('\\n')).map((_, index) => (\n <div key={index} className={styles['IDE__Editor-lineNumber']}>\n {index + 1}\n </div>\n ))}\n </div>\n )}\n <div\n ref={tabs.activeTab === fileIndex.toString() ? presRef : null}\n data-testid={testIds.editorContent}\n className={styles['IDE__Editor-content-inner']}\n >\n {Array.isArray(file.code) ? (\n (file.code as string[]).map((line, index) => {\n const isSuggestion = index + 1 >= (file.suggestedLineStart ?? Infinity)\n return (\n <React.Fragment key={line + index}>\n <pre\n key={index}\n className={clsx(\n styles['IDE__Editor-pane'],\n index + 1 < (file.suggestedLineStart ?? Infinity) &&\n animationStyles['Animation--slide-in-right'],\n isSuggestion && animationStyles['Animation--slide-in-down'],\n isSuggestion && styles['IDE__Editor-pane--suggested'],\n )}\n dangerouslySetInnerHTML={{__html: line === '' ? ' ' : line}}\n data-has-suggestion={isSuggestion}\n />\n {isSuggestion && index === file.code.length - 1 && (\n <pre\n className={clsx(\n animationStyles['Animation--slide-in-down'],\n styles['IDE__Chat-copilot-indicator'],\n )}\n data-has-suggestion={isSuggestion}\n >\n <CopilotIcon size={24} className={styles['IDE__Chat-copilot-indicator-label']} />\n <Text as=\"span\" className={styles['IDE__Chat-copilot-indicator-label']}>\n Copilot\n </Text>\n </pre>\n )}\n </React.Fragment>\n )\n })\n ) : (\n <pre\n className={clsx(styles['IDE__Editor-pane'], animationStyles['Animation--slide-in-right'])}\n dangerouslySetInnerHTML={{__html: file.code}}\n />\n )}\n </div>\n </div>\n </div>\n ))}\n </div>\n </div>\n )\n },\n ),\n)\n\nconst PauseIcon = () => (\n <svg fill=\"none\" role=\"presentation\" aria-hidden=\"true\" viewBox=\"3.17 2.28 13.7 15.42\">\n <path\n d=\"M4.66148 2.3125C3.83593 2.3125 3.16669 2.98174 3.16669 3.80729V16.1927C3.16669 17.0183 3.83593 17.6875 4.66148 17.6875H7.65106C8.47662 17.6875 9.14586 17.0183 9.14586 16.1927V3.80729C9.14586 2.98174 8.47662 2.3125 7.65106 2.3125H4.66148ZM4.44794 3.80729C4.44794 3.68936 4.54355 3.59375 4.66148 3.59375H7.65106C7.769 3.59375 7.86461 3.68936 7.86461 3.80729V16.1927C7.86461 16.3106 7.769 16.4062 7.65106 16.4062H4.66148C4.54355 16.4062 4.44794 16.3106 4.44794 16.1927V3.80729ZM12.349 2.3125C11.5235 2.3125 10.8542 2.98174 10.8542 3.80729V16.1927C10.8542 17.0183 11.5235 17.6875 12.349 17.6875H15.3386C16.1642 17.6875 16.8334 17.0183 16.8334 16.1927V3.80729C16.8334 2.98174 16.1642 2.3125 15.3386 2.3125H12.349ZM12.1355 3.80729C12.1355 3.68936 12.2311 3.59375 12.349 3.59375H15.3386C15.4565 3.59375 15.5521 3.68936 15.5521 3.80729V16.1927C15.5521 16.3106 15.4565 16.4062 15.3386 16.4062H12.349C12.2311 16.4062 12.1355 16.3106 12.1355 16.1927V3.80729Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n)\nconst PlayIcon = () => (\n <svg fill=\"none\" role=\"presentation\" aria-hidden=\"true\" viewBox=\"4.02 2.3 14.43 15.4\">\n <path\n d=\"M6.24905 3.69194C5.82218 3.45967 5.30225 3.76868 5.30225 4.25466V15.7452C5.30225 16.2312 5.82218 16.5402 6.24906 16.3079L16.8079 10.5626C17.2538 10.32 17.2538 9.67983 16.8079 9.4372L6.24905 3.69194ZM4.021 4.25466C4.021 2.79672 5.58078 1.86969 6.86142 2.56651L17.4203 8.31176C18.758 9.03966 18.758 10.9602 17.4203 11.6881L6.86143 17.4333C5.58079 18.1301 4.021 17.2031 4.021 15.7452V4.25466Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n)\n\ntype PlayPauseButtonProps = {\n isPlaying?: boolean\n onPlayPause?: (isPlaying: boolean) => void\n}\n\nconst PlayPauseButton = ({isPlaying = true, onPlayPause}: PlayPauseButtonProps) => {\n const onClick = useCallback(() => {\n onPlayPause?.(!isPlaying)\n }, [onPlayPause, isPlaying])\n\n /**\n * aria-pressed is intentionally not used here to prevent potentially confusing screen reader announcements\n * eg \"Play animation on\" or \"Pause animation off\"\n */\n return (\n <button\n className={styles['IDE__play-pause-button']}\n type=\"button\"\n onClick={onClick}\n aria-label={isPlaying ? 'Pause animation' : 'Play animation'}\n >\n {isPlaying ? <PauseIcon /> : <PlayIcon />}\n </button>\n )\n}\n\n/**\n * Use IDE to display a decorative editor component\n * @deprecated IDE is deprecated and will be removed in a future release.\n * @see https://primer.style/brand/components/IDE\n */\nexport const IDE = Object.assign(_IDERoot, {\n testIds,\n Chat: _Chat,\n Editor: _Editor,\n})\n"],"mappings":"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"}
|
package/esm/IDE/IDE.module.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import './IDE.module-CFxIRObF.css'
|
|
2
|
-
|
|
1
|
+
import './IDE.module-CFxIRObF.css';//#region src/IDE/IDE.module.css
|
|
2
|
+
var e = "Primer_Brand__IDE-module__IDE__inner___NnTQJ", t = "Primer_Brand__IDE-module__IDE__main___U46Bi", n = "Primer_Brand__IDE-module__IDE__Chat___FjTgp", r = "Primer_Brand__IDE-module__IDE__Editor___Shd_o", i = "Primer_Brand__IDE-module__IDE___d_Ai4", a = {
|
|
3
|
+
IDE__inner: e,
|
|
3
4
|
"IDE--glass": "Primer_Brand__IDE-module__IDE--glass___kIHmW",
|
|
4
|
-
IDE__main:
|
|
5
|
+
IDE__main: t,
|
|
5
6
|
"IDE--default": "Primer_Brand__IDE-module__IDE--default___1AD3a",
|
|
6
|
-
IDE__Chat:
|
|
7
|
+
IDE__Chat: n,
|
|
7
8
|
"IDE--full-exp": "Primer_Brand__IDE-module__IDE--full-exp___eJnjX",
|
|
8
9
|
"IDE__Chat-wrapper": "Primer_Brand__IDE-module__IDE__Chat-wrapper___OBbrc",
|
|
9
10
|
"IDE__Chat-message-user": "Primer_Brand__IDE-module__IDE__Chat-message-user___tz2Ml",
|
|
@@ -15,7 +16,7 @@ import './IDE.module-CFxIRObF.css';var e = {
|
|
|
15
16
|
"IDE__Chat-message": "Primer_Brand__IDE-module__IDE__Chat-message___mpKSJ",
|
|
16
17
|
"IDE__Chat-message--visible": "Primer_Brand__IDE-module__IDE__Chat-message--visible___t7sQR",
|
|
17
18
|
"IDE__Chat-message--faded": "Primer_Brand__IDE-module__IDE__Chat-message--faded___Zj1bF",
|
|
18
|
-
IDE__Editor:
|
|
19
|
+
IDE__Editor: r,
|
|
19
20
|
"IDE__Editor-tabs": "Primer_Brand__IDE-module__IDE__Editor-tabs___iGJJ2",
|
|
20
21
|
"IDE__Editor-tab": "Primer_Brand__IDE-module__IDE__Editor-tab___dJvu_",
|
|
21
22
|
"IDE__Editor-tab--active": "Primer_Brand__IDE-module__IDE__Editor-tab--active___gdbpw",
|
|
@@ -36,9 +37,9 @@ import './IDE.module-CFxIRObF.css';var e = {
|
|
|
36
37
|
"IDE__Chat-copilot-indicator-label": "Primer_Brand__IDE-module__IDE__Chat-copilot-indicator-label___Ly0_c",
|
|
37
38
|
"IDE__play-pause-button": "Primer_Brand__IDE-module__IDE__play-pause-button___z27k0",
|
|
38
39
|
"IDE--chat-only": "Primer_Brand__IDE-module__IDE--chat-only____CFK8",
|
|
39
|
-
IDE:
|
|
40
|
+
IDE: i
|
|
40
41
|
};
|
|
41
42
|
//#endregion
|
|
42
|
-
export { e as default };
|
|
43
|
+
export { i as IDE, n as IDE__Chat, r as IDE__Editor, e as IDE__inner, t as IDE__main, a as default };
|
|
43
44
|
|
|
44
45
|
//# sourceMappingURL=IDE.module.js.map
|
package/esm/Icon/Icon.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ReactElement, type SVGAttributes } from 'react';
|
|
1
|
+
import React, { type ReactElement, type SVGAttributes } from 'react';
|
|
2
2
|
import { type Icon as OcticonProps } from '@primer/octicons-react';
|
|
3
3
|
import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors.css';
|
|
4
4
|
import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css';
|
|
@@ -19,5 +19,5 @@ export type IconProps = SVGAttributes<SVGElement> & {
|
|
|
19
19
|
hasBackground?: boolean;
|
|
20
20
|
size?: IconSize;
|
|
21
21
|
};
|
|
22
|
-
export declare const Icon: ({ icon: Octicon, className, color, hasBackground, size, ...rest }: IconProps) =>
|
|
22
|
+
export declare const Icon: ({ icon: Octicon, className, color, hasBackground, size, ...rest }: IconProps) => React.JSX.Element;
|
|
23
23
|
//# sourceMappingURL=Icon.d.ts.map
|
package/esm/Icon/Icon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,KAAK,YAAY,EAAE,KAAK,aAAa,EAAC,MAAM,OAAO,CAAA;AAGlE,OAAO,EAAC,KAAK,IAAI,IAAI,YAAY,EAAC,MAAM,wBAAwB,CAAA;AAGhE,OAAO,6FAA6F,CAAA;AACpG,OAAO,wGAAwG,CAAA;AAE/G,eAAO,MAAM,cAAc,uCAAwC,CAAA;AACnE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3D,eAAO,MAAM,gBAAgB,uCAAwC,CAAA;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAG/D,eAAO,MAAM,SAAS,mEAAoD,CAAA;AAC1E,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD,eAAO,MAAM,eAAe,SAAe,CAAA;AAC3C,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,eAAe,CAI9D,CAAA;AAUD,eAAO,MAAM,UAAU,wIAAS,CAAA;AAChC,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AACnD,eAAO,MAAM,gBAAgB,WAAgB,CAAA;AAE7C,MAAM,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG;IAClD,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC,CAAA;IAC/C,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,IAAI,GAAI,mEAOlB,SAAS,sBA8BX,CAAA"}
|
package/esm/Icon/Icon.js
CHANGED
|
@@ -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 { Colors as t } from "../constants.js";
|
|
3
3
|
import n from "./Icon.module.js";
|
|
4
|
-
import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/icon/colors-
|
|
4
|
+
import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes-Bjhpbkke.css';import '../packages/design-tokens/lib/design-tokens/css/tokens/functional/components/icon/colors-CctMSz17.css';/* empty css */
|
|
5
5
|
/* empty css */
|
|
6
6
|
import r from "react";
|
|
7
7
|
import { jsx as i } from "react/jsx-runtime";
|
package/esm/Icon/Icon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.js","names":[],"sources":["../../src/Icon/Icon.tsx"],"sourcesContent":["import React, {type ReactElement, type SVGAttributes} from 'react'\nimport styles from './Icon.module.css'\nimport {clsx} from 'clsx'\nimport {type Icon as OcticonProps} from '@primer/octicons-react'\nimport {Colors} from '../constants'\n\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css'\n\nexport const namedIconSizes = ['small', 'medium', 'large'] as const\nexport type NamedIconSize = (typeof namedIconSizes)[number]\n\nexport const numericIconSizes = [20, 24, 28, 32, 36, 40, 44] as const\nexport type NumericIconSize = (typeof numericIconSizes)[number]\nconst isNumericIconSize = (size: IconSize): size is NumericIconSize => typeof size === 'number'\n\nexport const iconSizes = [...namedIconSizes, ...numericIconSizes] as const\nexport type IconSize = (typeof iconSizes)[number]\n\nexport const defaultIconSize = iconSizes[0]\nexport const iconSizeMap: Record<NamedIconSize, NumericIconSize> = {\n small: 20,\n medium: 32,\n large: 44,\n}\n\nconst getIconSize = (size: IconSize): NumericIconSize => {\n if (isNumericIconSize(size)) {\n return size\n }\n\n return iconSizeMap[size]\n}\n\nexport const iconColors = Colors\nexport type IconColor = (typeof iconColors)[number]\nexport const defaultIconColor = iconColors[0]\n\nexport type IconProps = SVGAttributes<SVGElement> & {\n icon: OcticonProps | ReactElement<OcticonProps>\n color?: IconColor\n hasBackground?: boolean\n size?: IconSize\n}\n\nexport const Icon = ({\n icon: Octicon,\n className,\n color = defaultIconColor,\n hasBackground = false,\n size = defaultIconSize,\n ...rest\n}: IconProps) => {\n const iconSize = getIconSize(size)\n\n const iconProps = {\n size: iconSize,\n ...rest,\n }\n\n const iconComponent = React.isValidElement(Octicon) ? (\n React.cloneElement(Octicon as ReactElement<OcticonProps>, {\n ...Octicon.props,\n ...iconProps,\n })\n ) : (\n <Octicon {...iconProps} />\n )\n\n return (\n <div\n className={clsx(\n styles['Icon'],\n styles[`Icon--size-${iconSize}`],\n styles[`Icon--color-${color}`],\n hasBackground && [styles['Icon--background'], styles[`Icon--background-color-${color}`]],\n className,\n )}\n >\n {iconComponent}\n </div>\n )\n}\n"],"mappings":";;;;;;;;AASA,IAAa,IAAiB;CAAC;CAAS;CAAU;
|
|
1
|
+
{"version":3,"file":"Icon.js","names":[],"sources":["../../src/Icon/Icon.tsx"],"sourcesContent":["import React, {type ReactElement, type SVGAttributes} from 'react'\nimport styles from './Icon.module.css'\nimport {clsx} from 'clsx'\nimport {type Icon as OcticonProps} from '@primer/octicons-react'\nimport {Colors} from '../constants'\n\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css'\n\nexport const namedIconSizes = ['small', 'medium', 'large'] as const\nexport type NamedIconSize = (typeof namedIconSizes)[number]\n\nexport const numericIconSizes = [20, 24, 28, 32, 36, 40, 44] as const\nexport type NumericIconSize = (typeof numericIconSizes)[number]\nconst isNumericIconSize = (size: IconSize): size is NumericIconSize => typeof size === 'number'\n\nexport const iconSizes = [...namedIconSizes, ...numericIconSizes] as const\nexport type IconSize = (typeof iconSizes)[number]\n\nexport const defaultIconSize = iconSizes[0]\nexport const iconSizeMap: Record<NamedIconSize, NumericIconSize> = {\n small: 20,\n medium: 32,\n large: 44,\n}\n\nconst getIconSize = (size: IconSize): NumericIconSize => {\n if (isNumericIconSize(size)) {\n return size\n }\n\n return iconSizeMap[size]\n}\n\nexport const iconColors = Colors\nexport type IconColor = (typeof iconColors)[number]\nexport const defaultIconColor = iconColors[0]\n\nexport type IconProps = SVGAttributes<SVGElement> & {\n icon: OcticonProps | ReactElement<OcticonProps>\n color?: IconColor\n hasBackground?: boolean\n size?: IconSize\n}\n\nexport const Icon = ({\n icon: Octicon,\n className,\n color = defaultIconColor,\n hasBackground = false,\n size = defaultIconSize,\n ...rest\n}: IconProps) => {\n const iconSize = getIconSize(size)\n\n const iconProps = {\n size: iconSize,\n ...rest,\n }\n\n const iconComponent = React.isValidElement(Octicon) ? (\n React.cloneElement(Octicon as ReactElement<OcticonProps>, {\n ...Octicon.props,\n ...iconProps,\n })\n ) : (\n <Octicon {...iconProps} />\n )\n\n return (\n <div\n className={clsx(\n styles['Icon'],\n styles[`Icon--size-${iconSize}`],\n styles[`Icon--color-${color}`],\n hasBackground && [styles['Icon--background'], styles[`Icon--background-color-${color}`]],\n className,\n )}\n >\n {iconComponent}\n </div>\n )\n}\n"],"mappings":";;;;;;;;AASA,IAAa,IAAiB;CAAC;CAAS;CAAU;AAAO,GAG5C,IAAmB;CAAC;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;AAAE,GAErD,KAAqB,MAA4C,OAAO,KAAS,UAE1E,IAAY,CAAC,GAAG,GAAgB,GAAG,CAAgB,GAGnD,IAAkB,EAAU,IAC5B,IAAsD;CACjE,OAAO;CACP,QAAQ;CACR,OAAO;AACT,GAEM,KAAe,MACf,EAAkB,CAAI,IACjB,IAGF,EAAY,IAGR,IAAa,GAEb,IAAmB,EAAW,IAS9B,KAAQ,EACnB,MAAM,GACN,cACA,WAAQ,GACR,mBAAgB,IAChB,UAAO,GACP,GAAG,QACY;CACf,IAAM,IAAW,EAAY,CAAI,GAE3B,IAAY;EAChB,MAAM;EACN,GAAG;CACL,GAEM,IAAgB,EAAM,eAAe,CAAO,IAChD,EAAM,aAAa,GAAuC;EACxD,GAAG,EAAQ;EACX,GAAG;CACL,CAAC,IAED,kBAAC,GAAD,EAAS,GAAI,EAAY,CAAA;CAG3B,OACE,kBAAC,OAAD;EACE,WAAW,EACT,EAAO,MACP,EAAO,cAAc,MACrB,EAAO,eAAe,MACtB,KAAiB,CAAC,EAAO,qBAAqB,EAAO,0BAA0B,IAAQ,GACvF,CACF;YAEC;CACE,CAAA;AAET"}
|
package/esm/Icon/Icon.module.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import './Icon.module-UyYnXhrw.css'
|
|
2
|
-
|
|
1
|
+
import './Icon.module-UyYnXhrw.css';//#region src/Icon/Icon.module.css
|
|
2
|
+
var e = "Primer_Brand__Icon-module__Icon___aJJhk", t = {
|
|
3
|
+
Icon: e,
|
|
3
4
|
"Icon--size-20": "Primer_Brand__Icon-module__Icon--size-20___j3HnM",
|
|
4
5
|
"Icon--size-24": "Primer_Brand__Icon-module__Icon--size-24___IMNie",
|
|
5
6
|
"Icon--size-28": "Primer_Brand__Icon-module__Icon--size-28___a2UX9",
|
|
@@ -38,6 +39,6 @@ import './Icon.module-UyYnXhrw.css';var e = {
|
|
|
38
39
|
"Icon--background-color-yellow": "Primer_Brand__Icon-module__Icon--background-color-yellow___uFZoS"
|
|
39
40
|
};
|
|
40
41
|
//#endregion
|
|
41
|
-
export { e as default };
|
|
42
|
+
export { e as Icon, t as default };
|
|
42
43
|
|
|
43
44
|
//# sourceMappingURL=Icon.module.js.map
|
package/esm/Image/Image.d.ts
CHANGED
|
@@ -21,5 +21,5 @@ export type ImageProps = React.ImgHTMLAttributes<HTMLImageElement> & BaseProps<H
|
|
|
21
21
|
}[];
|
|
22
22
|
srcSet?: undefined;
|
|
23
23
|
});
|
|
24
|
-
export declare const Image: ({ animate, aspectRatio, className, as, ref, alt, width, height, media, srcSet, style, borderRadius, ...rest }: ImageProps) =>
|
|
24
|
+
export declare const Image: ({ animate, aspectRatio, className, as, ref, alt, width, height, media, srcSet, style, borderRadius, ...rest }: ImageProps) => React.JSX.Element;
|
|
25
25
|
//# sourceMappingURL=Image.d.ts.map
|
package/esm/Image/Image.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAG9C,eAAO,MAAM,wBAAwB,yDAA0D,CAAA;AAC/F,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA;AAChF,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;AAE1E,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAChE,SAAS,CAAC,gBAAgB,CAAC,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,YAAY,CAAC,EAAE,wBAAwB,CAAA;IACvC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAA;CACnE,GAAG,CACA;IACE,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAA;CACnE,GACD;IACE,EAAE,EAAE,SAAS,CAAA;IACb,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;KACd,EAAE,CAAA;IACH,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB,CACJ,CAAA;AAeH,eAAO,MAAM,KAAK,GAAI,+GAcnB,UAAU,
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image/Image.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAG9C,eAAO,MAAM,wBAAwB,yDAA0D,CAAA;AAC/F,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA;AAChF,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;AAE1E,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAChE,SAAS,CAAC,gBAAgB,CAAC,GAAG;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,YAAY,CAAC,EAAE,wBAAwB,CAAA;IACvC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAA;CACnE,GAAG,CACA;IACE,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAA;CACnE,GACD;IACE,EAAE,EAAE,SAAS,CAAA;IACb,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;KACd,EAAE,CAAA;IACH,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB,CACJ,CAAA;AAeH,eAAO,MAAM,KAAK,GAAI,+GAcnB,UAAU,sBAoEZ,CAAA"}
|
package/esm/Image/Image.js
CHANGED