@explorer-1/vue 0.1.0 → 0.1.2
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/components.d.ts +2 -0
- package/dist/explorer-1-vue.js +4833 -4820
- package/dist/explorer-1-vue.umd.cjs +14 -14
- package/dist/src/components/AsteroidWatchWidget/AsteroidWatchWidget.stories.d.ts +1 -1
- package/dist/src/components/BackToTop/BackToTop.stories.d.ts +2 -2
- package/dist/src/components/BaseAudio/BaseAudio.stories.d.ts +1 -1
- package/dist/src/components/BaseButton/BaseButton.stories.d.ts +2 -1
- package/dist/src/components/BaseCheckboxGroup/BaseCheckboxGroup.stories.d.ts +24 -0
- package/dist/src/components/BaseHeading/BaseHeading.stories.d.ts +1 -1
- package/dist/src/components/BaseImage/BaseImage.stories.d.ts +1 -1
- package/dist/src/components/BaseImageCaption/BaseImageCaption.stories.d.ts +1 -1
- package/dist/src/components/BaseImagePlaceholder/BaseImagePlaceholder.stories.d.ts +4 -1
- package/dist/src/components/BaseLink/BaseLink.stories.d.ts +2 -1
- package/dist/src/components/BaseModal/BaseModal.stories.d.ts +2 -2
- package/dist/src/components/BasePlaceholder/BasePlaceholder.stories.d.ts +2 -2
- package/dist/src/components/BaseRadioGroup/BaseRadioGroup.stories.d.ts +28 -0
- package/dist/src/components/BaseSwimlane/BaseSwimlane.stories.d.ts +25 -0
- package/dist/src/components/BaseTimer/BaseTimer.stories.d.ts +2 -1
- package/dist/src/components/BaseUnitToggle/BaseUnitToggle.stories.d.ts +2 -1
- package/dist/src/components/BaseVideo/BaseVideo.stories.d.ts +1 -1
- package/dist/src/components/BlockAudio/BlockAudio.stories.d.ts +1 -1
- package/dist/src/components/BlockCard/BlockCard.stories.d.ts +1 -1
- package/dist/src/components/BlockCardGroup/BlockCardGroup.stories.d.ts +1 -1
- package/dist/src/components/BlockCircleImageCard/BlockCircleImageCard.stories.d.ts +1 -1
- package/dist/src/components/BlockCta/BlockCta.stories.d.ts +1 -1
- package/dist/src/components/BlockHeading/BlockHeading.stories.d.ts +1 -1
- package/dist/src/components/BlockIframeEmbed/BlockIframeEmbed.stories.d.ts +1 -1
- package/dist/src/components/BlockImage/BlockImage.stories.d.ts +3 -2
- package/dist/src/components/BlockImageCarousel/BlockImageCarousel.stories.d.ts +1 -1
- package/dist/src/components/BlockImageCarouselItem/BlockImageCarouselItem.stories.d.ts +1 -1
- package/dist/src/components/BlockImageComparison/BlockImageComparison.stories.d.ts +1 -1
- package/dist/src/components/BlockImageGallery/BlockImageGallery.stories.d.ts +1 -1
- package/dist/src/components/BlockInlineImage/BlockInlineImage.stories.d.ts +2 -1
- package/dist/src/components/BlockKeyPoints/BlockKeyPoints.stories.d.ts +1 -1
- package/dist/src/components/BlockLinkCard/BlockLinkCard.stories.d.ts +4 -2
- package/dist/src/components/BlockLinkCarousel/BlockLinkCarousel.stories.d.ts +2 -1
- package/dist/src/components/BlockLinkTile/BlockLinkTile.stories.d.ts +2 -1
- package/dist/src/components/BlockListCards/BlockListCards.stories.d.ts +1 -1
- package/dist/src/components/BlockQuote/BlockQuote.stories.d.ts +2 -2
- package/dist/src/components/BlockRelatedLinks/BlockRelatedLinks.stories.d.ts +1 -1
- package/dist/src/components/BlockStreamfield/BlockStreamfield.stories.d.ts +1 -1
- package/dist/src/components/BlockTable/BlockTable.stories.d.ts +1 -1
- package/dist/src/components/BlockTeaser/BlockTeaser.stories.d.ts +1 -1
- package/dist/src/components/BlockText/BlockText.stories.d.ts +1 -1
- package/dist/src/components/BlockTwitterEmbed/BlockTwitterEmbed.stories.d.ts +1 -1
- package/dist/src/components/BlockVideo/BlockVideo.stories.d.ts +1 -1
- package/dist/src/components/BlockVideoEmbed/BlockVideoEmbed.stories.d.ts +1 -1
- package/dist/src/components/CalendarButton/CalendarButton.stories.d.ts +2 -2
- package/dist/src/components/DetailHeadline/DetailHeadline.stories.d.ts +1 -1
- package/dist/src/components/DsnWidget/DsnWidget.stories.d.ts +1 -1
- package/dist/src/components/EventDetailHero/EventDetailHero.stories.d.ts +1 -1
- package/dist/src/components/FormContact/FormContact.stories.d.ts +2 -2
- package/dist/src/components/FormNewsletterSignup/FormNewsletterSignup.stories.d.ts +2 -2
- package/dist/src/components/HeroLarge/HeroLarge.stories.d.ts +1 -1
- package/dist/src/components/HeroListingIndex/HeroListingIndex.stories.d.ts +1 -1
- package/dist/src/components/HeroMedia/HeroMedia.stories.d.ts +7 -2
- package/dist/src/components/HeroMedium/HeroMedium.stories.d.ts +19 -3
- package/dist/src/components/HeroMedium/HeroMedium.vue.d.ts +11 -0
- package/dist/src/components/HeroMedium/HeroSmall.stories.d.ts +90 -0
- package/dist/src/components/HomepageCarousel/HomepageCarousel.stories.d.ts +8 -6
- package/dist/src/components/HomepageCarouselItem/HomepageCarouselItem.stories.d.ts +2 -1
- package/dist/src/components/HomepageEmbedBlock/HomepageEmbedBlock.stories.d.ts +1 -1
- package/dist/src/components/HomepageFeaturedRobot/HomepageFeaturedRobot.stories.d.ts +2 -1
- package/dist/src/components/HomepageMissionsCarousel/HomepageMissionsCarousel.stories.d.ts +1 -1
- package/dist/src/components/HomepageStats/HomepageStats.stories.d.ts +2 -2
- package/dist/src/components/HomepageTeaserBlock/HomepageTeaserBlock.stories.d.ts +3 -2
- package/dist/src/components/LogoCaltech/LogoCaltech.stories.d.ts +2 -2
- package/dist/src/components/LogoTribrand/LogoTribrand.stories.d.ts +3 -2
- package/dist/src/components/MissionDetailAbout/MissionDetailAbout.stories.d.ts +1 -1
- package/dist/src/components/MissionDetailHero/MissionDetailHero.stories.d.ts +2 -1
- package/dist/src/components/MissionDetailHighlights/MissionDetailHighlights.stories.d.ts +2 -1
- package/dist/src/components/MissionDetailInlineImage/MissionDetailInlineImage.stories.d.ts +1 -1
- package/dist/src/components/MissionDetailStats/MissionDetailStats.stories.d.ts +2 -1
- package/dist/src/components/MissionDetailStreamfield/MissionDetailStreamfield.stories.d.ts +1 -1
- package/dist/src/components/MixinAnimationCaret/MixinAnimationCaret.stories.d.ts +1 -1
- package/dist/src/components/MixinCarousel/MixinCarousel.stories.d.ts +1 -1
- package/dist/src/components/MixinVideoBg/MixinVideoBg.stories.d.ts +1 -9
- package/dist/src/components/NavDesktop/NavDesktop.stories.d.ts +2 -1
- package/dist/src/components/NavHeading/NavHeading.stories.d.ts +1 -1
- package/dist/src/components/NavHighlight/NavHighlight.stories.d.ts +1 -1
- package/dist/src/components/NavLinkList/NavLinkList.stories.d.ts +1 -1
- package/dist/src/components/NavLogoLinks/NavLogoLinks.stories.d.ts +1 -1
- package/dist/src/components/NavMobile/NavMobile.stories.d.ts +2 -1
- package/dist/src/components/NavSearchForm/NavSearchForm.stories.d.ts +1 -1
- package/dist/src/components/NavSecondary/NavSecondary.stories.d.ts +1 -1
- package/dist/src/components/NavSocial/NavSocial.stories.d.ts +2 -2
- package/dist/src/components/NewsDetailMediaContact/NewsDetailMediaContact.stories.d.ts +1 -1
- package/dist/src/components/ParallaxContainer/ParallaxContainer.stories.d.ts +2 -2
- package/dist/src/components/PodcastSeriesCarousel/PodcastSeriesCarousel.stories.d.ts +1 -1
- package/dist/src/components/RoboticsDetailStats/RoboticsDetailStats.stories.d.ts +1 -1
- package/dist/src/components/SearchFilterGroup/SearchFilterGroup.stories.d.ts +2 -1
- package/dist/src/components/SearchInput/SearchInput.stories.d.ts +1 -1
- package/dist/src/components/SearchInput/SearchInput.vue.d.ts +9 -9
- package/dist/src/components/SearchPagination/SearchPagination.stories.d.ts +2 -1
- package/dist/src/components/SearchResultCard/SearchResultCard.stories.d.ts +2 -1
- package/dist/src/components/SearchResultGridItem/SearchResultGridItem.stories.d.ts +2 -1
- package/dist/src/components/SearchSelectMenu/SearchSelectMenu.stories.d.ts +1 -1
- package/dist/src/components/ShareButtons/ShareButtons.stories.d.ts +1 -1
- package/dist/src/components/ShareButtonsEdu/ShareButtonsEdu.stories.d.ts +1 -1
- package/dist/src/components/SkipLink/SkipLink.stories.d.ts +1 -1
- package/dist/src/components/SwimlaneCTA/SwimlaneCTA.stories.d.ts +25 -0
- package/dist/src/components/TextArea/TextArea.stories.d.ts +30 -0
- package/dist/src/components/TextArea/TextArea.vue.d.ts +95 -0
- package/dist/src/components/TextInput/TextInput.stories.d.ts +33 -0
- package/dist/src/components/TextInput/TextInput.vue.d.ts +116 -0
- package/dist/src/components/TheFooter/TheFooter.stories.d.ts +6 -2
- package/dist/src/components/ThumbnailCarousel/ThumbnailCarousel.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailMissionCarousel/TopicDetailMissionCarousel.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailMissionCarouselItem/TopicDetailMissionCarouselItem.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailMissionSpotlight/TopicDetailMissionSpotlight.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailMore/TopicDetailMore.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailMoreItem/TopicDetailMoreItem.stories.d.ts +1 -1
- package/dist/src/components/TopicDetailStreamfield/TopicDetailStreamfield.stories.d.ts +1 -1
- package/dist/src/components/YearTicker/YearTicker.stories.d.ts +2 -2
- package/dist/src/docs/foundation/typography.stories.d.ts +0 -6
- package/dist/src/docs/guides/responsive.stories.d.ts +13 -0
- package/dist/src/docs/utils/ComponentItem.d.ts +2 -0
- package/dist/src/docs/utils/ComponentList.d.ts +2 -0
- package/dist/src/templates/PageContent/PageContent.stories.d.ts +1 -1
- package/dist/src/templates/PageEventDetail/PageEventDetail.stories.d.ts +1 -1
- package/dist/src/templates/PageNewsDetail/PageNewsDetail.stories.d.ts +44 -3178
- package/dist/src/templates/edu/PageEduNewsDetail.stories.d.ts +9 -772
- package/dist/style.css +1 -1
- package/lib/main.ts +2 -2
- package/package.json +3 -3
- package/src/components/AsteroidWatchWidget/AsteroidWatchWidget.stories.js +2 -2
- package/src/components/BackToTop/BackToTop.stories.js +3 -3
- package/src/components/BackToTop/BackToTop.vue +1 -1
- package/src/components/BaseAudio/BaseAudio.stories.js +1 -1
- package/src/components/BaseButton/BaseButton.stories.ts +3 -2
- package/src/components/BaseCheckboxGroup/BaseCheckboxGroup.stories.js +39 -0
- package/src/components/BaseHeading/BaseHeading.stories.js +2 -2
- package/src/components/BaseImage/BaseImage.stories.ts +1 -1
- package/src/components/BaseImageCaption/BaseImageCaption.stories.js +1 -1
- package/src/components/BaseImagePlaceholder/BaseImagePlaceholder.stories.js +3 -1
- package/src/components/BaseLink/BaseLink.stories.js +3 -2
- package/src/components/BaseModal/BaseModal.stories.js +2 -2
- package/src/components/BasePlaceholder/BasePlaceholder.stories.js +3 -3
- package/src/components/BaseRadioGroup/BaseRadioGroup.stories.js +47 -0
- package/src/components/BaseSwimlane/BaseSwimlane.stories.js +45 -0
- package/src/components/BaseTag/BaseTag.stories.js +1 -1
- package/src/components/BaseTimer/BaseTimer.stories.js +2 -1
- package/src/components/BaseUnitToggle/BaseUnitToggle.stories.js +2 -1
- package/src/components/BaseVideo/BaseVideo.stories.js +1 -1
- package/src/components/BlockAudio/BlockAudio.stories.js +1 -1
- package/src/components/BlockCard/BlockCard.stories.js +1 -1
- package/src/components/BlockCardGroup/BlockCardGroup.stories.js +1 -1
- package/src/components/BlockCircleImageCard/BlockCircleImageCard.stories.js +1 -1
- package/src/components/BlockCta/BlockCta.stories.js +1 -1
- package/src/components/BlockHeading/BlockHeading.stories.js +1 -1
- package/src/components/BlockIframeEmbed/BlockIframeEmbed.stories.js +1 -1
- package/src/components/BlockImage/BlockImage.stories.js +3 -2
- package/src/components/BlockImageCarousel/BlockImageCarousel.stories.js +1 -1
- package/src/components/BlockImageCarouselItem/BlockImageCarouselItem.stories.js +1 -1
- package/src/components/BlockImageComparison/BlockImageComparison.stories.js +1 -1
- package/src/components/BlockImageGallery/BlockImageGallery.stories.js +1 -1
- package/src/components/BlockInlineImage/BlockInlineImage.stories.js +2 -1
- package/src/components/BlockKeyPoints/BlockKeyPoints.stories.js +1 -1
- package/src/components/BlockLinkCard/BlockLinkCard.stories.js +2 -1
- package/src/components/BlockLinkCarousel/BlockLinkCarousel.stories.js +2 -1
- package/src/components/BlockLinkTile/BlockLinkTile.stories.js +2 -1
- package/src/components/BlockListCards/BlockListCards.stories.js +1 -1
- package/src/components/BlockQuote/BlockQuote.stories.js +2 -2
- package/src/components/BlockRelatedLinks/BlockRelatedLinks.stories.js +1 -1
- package/src/components/BlockStreamfield/BlockStreamfield.stories.js +1 -1
- package/src/components/BlockTable/BlockTable.stories.js +1 -1
- package/src/components/BlockTeaser/BlockTeaser.stories.js +1 -1
- package/src/components/BlockText/BlockText.stories.js +1 -1
- package/src/components/BlockTwitterEmbed/BlockTwitterEmbed.stories.js +1 -1
- package/src/components/BlockVideo/BlockVideo.stories.js +1 -1
- package/src/components/BlockVideoEmbed/BlockVideoEmbed.stories.js +1 -1
- package/src/components/CalendarButton/CalendarButton.stories.js +3 -3
- package/src/components/DetailHeadline/DetailHeadline.stories.js +2 -2
- package/src/components/DsnWidget/DsnWidget.stories.js +2 -2
- package/src/components/EventDetailHero/EventDetailHero.stories.js +2 -2
- package/src/components/FormContact/FormContact.stories.js +3 -3
- package/src/components/FormContact/FormContact.vue +40 -87
- package/src/components/FormNewsletterSignup/FormNewsletterSignup.stories.js +3 -3
- package/src/components/FormNewsletterSignup/FormNewsletterSignup.vue +43 -90
- package/src/components/HeroLarge/HeroLarge.stories.js +2 -2
- package/src/components/HeroListingIndex/HeroListingIndex.stories.js +3 -2
- package/src/components/HeroMedia/HeroMedia.stories.js +8 -3
- package/src/components/HeroMedium/HeroMedium.stories.js +13 -2
- package/src/components/HeroMedium/HeroMedium.vue +21 -4
- package/src/components/HeroMedium/HeroSmall.stories.js +58 -0
- package/src/components/HomepageCarousel/HomepageCarousel.stories.js +3 -2
- package/src/components/HomepageCarouselItem/HomepageCarouselItem.stories.js +3 -2
- package/src/components/HomepageEmbedBlock/HomepageEmbedBlock.stories.js +2 -2
- package/src/components/HomepageFeaturedRobot/HomepageFeaturedRobot.stories.js +3 -2
- package/src/components/HomepageMissionsCarousel/HomepageMissionsCarousel.stories.js +2 -2
- package/src/components/HomepageStats/HomepageStats.stories.js +3 -3
- package/src/components/HomepageTeaserBlock/HomepageTeaserBlock.stories.js +4 -3
- package/src/components/Icons/Icons.stories.ts +1 -1
- package/src/components/LogoCaltech/LogoCaltech.stories.js +4 -4
- package/src/components/LogoTribrand/LogoTribrand.stories.js +6 -5
- package/src/components/MissionDetailAbout/MissionDetailAbout.stories.js +2 -2
- package/src/components/MissionDetailHero/MissionDetailHero.stories.js +3 -2
- package/src/components/MissionDetailHighlights/MissionDetailHighlights.stories.js +3 -2
- package/src/components/MissionDetailHighlights/MissionDetailHighlights.vue +1 -1
- package/src/components/MissionDetailInlineImage/MissionDetailInlineImage.stories.js +2 -2
- package/src/components/MissionDetailStats/MissionDetailStats.stories.js +3 -2
- package/src/components/MissionDetailStreamfield/MissionDetailStreamfield.stories.js +2 -2
- package/src/components/MixinAnimationCaret/MixinAnimationCaret.stories.ts +2 -2
- package/src/components/MixinCarousel/MixinCarousel.stories.js +3 -3
- package/src/components/MixinVideoBg/MixinVideoBg.stories.js +2 -12
- package/src/components/NavDesktop/NavDesktop.stories.js +3 -2
- package/src/components/NavDesktop/NavDesktopDropdown.vue +10 -10
- package/src/components/NavDesktop/NavDesktopDropdownContent.vue +3 -3
- package/src/components/NavDesktop/NavDesktopDropdownMore.vue +2 -2
- package/src/components/NavDesktopEdu/NavDesktopEdu.stories.js +186 -0
- package/src/components/NavDesktopEdu/NavDesktopEdu.vue +315 -0
- package/src/components/{MixinDropdownToggle/MixinDropdownToggle.vue → NavDropdownToggle/NavDropdownToggle.vue} +2 -2
- package/src/components/NavHeading/NavHeading.stories.js +2 -2
- package/src/components/NavHeading/NavHeading.vue +2 -2
- package/src/components/NavHighlight/NavHighlight.stories.js +2 -2
- package/src/components/NavLinkList/NavLinkList.stories.js +2 -2
- package/src/components/NavLogoLinks/NavLogoLinks.stories.js +3 -6
- package/src/components/NavLogoLinks/NavLogoLinks.vue +0 -1
- package/src/components/NavMobile/NavMobile.stories.js +3 -2
- package/src/components/NavMobile/NavMobile.vue +40 -15
- package/src/components/NavMobile/NavMobileDropdown.vue +4 -4
- package/src/components/NavMobile/NavMobileEdu.stories.js +174 -0
- package/src/components/NavMobile/NavMobileSecondaryDropdown.vue +5 -5
- package/src/components/NavSearchForm/NavSearchForm.stories.js +2 -2
- package/src/components/NavSecondary/NavSecondary.stories.js +2 -2
- package/src/components/NavSecondary/NavSecondaryDropdown.vue +5 -5
- package/src/components/NavSocial/NavSocial.stories.js +3 -3
- package/src/components/NavSocial/NavSocial.vue +70 -42
- package/src/components/NewsDetailMediaContact/NewsDetailMediaContact.stories.js +2 -2
- package/src/components/ParallaxContainer/ParallaxContainer.stories.js +4 -4
- package/src/components/PodcastSeriesCarousel/PodcastSeriesCarousel.stories.js +2 -2
- package/src/components/RoboticsDetailStats/RoboticsDetailStats.stories.js +2 -2
- package/src/components/SearchFilterGroup/SearchFilterGroup.stories.js +2 -1
- package/src/components/SearchFilterGroup/SearchFilterGroup.vue +1 -1
- package/src/components/SearchInput/SearchInput.stories.js +1 -1
- package/src/components/SearchInput/SearchInput.vue +36 -36
- package/src/components/SearchPagination/SearchPagination.stories.js +2 -1
- package/src/components/SearchResultCard/SearchResultCard.stories.js +1 -1
- package/src/components/SearchResultGridItem/SearchResultGridItem.stories.js +2 -1
- package/src/components/SearchSelectMenu/SearchSelectMenu.stories.js +1 -1
- package/src/components/ShareButtons/ShareButtons.stories.js +2 -2
- package/src/components/ShareButtonsEdu/ShareButtonsEdu.stories.js +2 -2
- package/src/components/SkipLink/SkipLink.stories.js +2 -2
- package/src/components/SwimlaneCTA/SwimlaneCTA.stories.js +57 -0
- package/src/components/SwimlaneCTA/SwimlaneCTA.vue +12 -5
- package/src/components/TextArea/TextArea.stories.js +28 -0
- package/src/components/TextArea/TextArea.vue +74 -0
- package/src/components/TextInput/TextInput.stories.js +30 -0
- package/src/components/TextInput/TextInput.vue +87 -0
- package/src/components/TheFooter/TheFooter.stories.js +8 -3
- package/src/components/TheFooter/TheFooter.vue +31 -15
- package/src/components/ThumbnailCarousel/ThumbnailCarousel.stories.js +2 -2
- package/src/components/TopicDetailMissionCarousel/TopicDetailMissionCarousel.stories.js +2 -2
- package/src/components/TopicDetailMissionCarouselItem/TopicDetailMissionCarouselItem.stories.js +2 -2
- package/src/components/TopicDetailMissionSpotlight/TopicDetailMissionSpotlight.stories.js +2 -2
- package/src/components/TopicDetailMore/TopicDetailMore.stories.js +2 -2
- package/src/components/TopicDetailMoreItem/TopicDetailMoreItem.stories.js +2 -2
- package/src/components/TopicDetailStreamfield/TopicDetailStreamfield.stories.js +2 -2
- package/src/components/YearTicker/YearTicker.stories.js +3 -3
- package/src/docs/foundation/color.docs.mdx +1 -1
- package/src/docs/foundation/grid.stories.js +1 -1
- package/src/docs/foundation/grid_layouthelpers.stories.js +1 -1
- package/src/docs/foundation/themes.stories.js +1 -1
- package/src/docs/foundation/typography.stories.js +2 -3
- package/src/docs/getting-started/designer.docs.mdx +18 -0
- package/src/docs/getting-started/developer.docs.mdx +81 -0
- package/src/docs/guides/accessibility.docs.mdx +39 -0
- package/src/docs/guides/responsive.docs.mdx +67 -0
- package/src/docs/guides/responsive.stories.js +36 -0
- package/src/docs/introduction.docs.mdx +42 -0
- package/src/docs/overviews/base.docs.mdx +88 -0
- package/src/docs/overviews/blocks.docs.mdx.disabled +185 -0
- package/src/docs/overviews/components.docs.mdx +48 -0
- package/src/docs/overviews/forms.docs.mdx +59 -0
- package/src/docs/overviews/global.docs.mdx +15 -0
- package/src/docs/overviews/global_footers.docs.mdx +21 -0
- package/src/docs/overviews/global_headers.docs.mdx +29 -0
- package/src/docs/overviews/heroes.docs.mdx +57 -0
- package/src/docs/overviews/mixins.docs.mdx +39 -0
- package/src/docs/overviews/search.docs.mdx +30 -0
- package/src/docs/overviews/utilities.docs.mdx +22 -0
- package/src/docs/roadmap.docs.mdx +25 -0
- package/src/docs/utils/ComponentItem.jsx +102 -0
- package/src/docs/utils/ComponentList.jsx +17 -0
- package/src/templates/PageContent/PageContent.stories.js +1 -1
- package/src/templates/PageEventDetail/PageEventDetail.stories.js +1 -1
- package/src/templates/PageNewsDetail/PageNewsDetail.stories.js +8 -8
- package/src/templates/edu/PageEduNewsDetail.stories.js +8 -3
- package/src/templates/edu/PageEduNewsDetail.vue +2 -2
- package/src/components/BaseCheckboxGroup/BaseCheckboxGroup.stories.mdx +0 -68
- package/src/components/BaseRadioGroup/BaseRadioGroup.stories.mdx +0 -68
- package/src/components/BaseSwimlane/BaseSwimlane.stories.mdx +0 -64
- package/src/components/SwimlaneCTA/SwimlaneCTA.stories.mdx +0 -77
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { MenuHighlightColumnData } from './../NavHighlight/NavHighlight.stories'
|
|
2
|
+
import { MenuLinkColumnWithHeaderData } from './../NavLinkList/NavLinkList.stories'
|
|
3
|
+
import NavDesktop from './NavDesktopEdu.vue'
|
|
4
|
+
import NavDesktopTopHat from './../NavDesktop/NavDesktopTopHat.vue'
|
|
5
|
+
import NavDesktopDropdown from './../NavDesktop/NavDesktopDropdown.vue'
|
|
6
|
+
import NavDesktopDropdownContent from './../NavDesktop/NavDesktopDropdownContent.vue'
|
|
7
|
+
import NavDesktopDropdownMore from './../NavDesktop/NavDesktopDropdownMore.vue'
|
|
8
|
+
|
|
9
|
+
export default {
|
|
10
|
+
title: 'Navigation/Headers/EDU/NavDesktopEdu',
|
|
11
|
+
component: NavDesktop,
|
|
12
|
+
excludeStories: /.*Data$/,
|
|
13
|
+
parameters: {
|
|
14
|
+
viewMode: 'canvas'
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const NavDesktopTopHatData = {
|
|
19
|
+
topHat: [
|
|
20
|
+
{
|
|
21
|
+
linkPage: {
|
|
22
|
+
title: 'Home',
|
|
23
|
+
url: '/'
|
|
24
|
+
},
|
|
25
|
+
title: 'JPL',
|
|
26
|
+
path: null
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
linkPage: null,
|
|
30
|
+
title: 'Career',
|
|
31
|
+
path: 'https://jpl.jobs/'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
linkPage: null,
|
|
35
|
+
title: 'Science and Technology',
|
|
36
|
+
path: 'https://scienceandtechnology.jpl.nasa.gov/'
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// combined dropdown data
|
|
42
|
+
export const NavDesktopDropdownContentData = {
|
|
43
|
+
blockType: 'MenuPanel',
|
|
44
|
+
titleLink: {
|
|
45
|
+
linkPage: {
|
|
46
|
+
title: 'About',
|
|
47
|
+
url: '/about/'
|
|
48
|
+
},
|
|
49
|
+
title: null
|
|
50
|
+
},
|
|
51
|
+
menuColumns: [
|
|
52
|
+
MenuHighlightColumnData,
|
|
53
|
+
{
|
|
54
|
+
blockType: 'MenuDescriptionColumn',
|
|
55
|
+
description: 'Lorem ipsum dolor sit amet.',
|
|
56
|
+
title: 'About'
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
...MenuLinkColumnWithHeaderData,
|
|
60
|
+
heading: null,
|
|
61
|
+
headingPage: null
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
...MenuLinkColumnWithHeaderData,
|
|
65
|
+
heading: null,
|
|
66
|
+
headingPage: null
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
// combined dropdown data for "more" menu
|
|
71
|
+
export const NavDesktopDropdownMoreData = {
|
|
72
|
+
blockType: 'MenuMorePanel',
|
|
73
|
+
titleText: 'More',
|
|
74
|
+
strapline:
|
|
75
|
+
'JPL is a unique research facility that carries out robotic space and Earth science missions.',
|
|
76
|
+
menuColumns: [
|
|
77
|
+
{
|
|
78
|
+
blockType: 'MenuDescriptionColumn',
|
|
79
|
+
description: 'Lorem ipsum dolor sit amet.',
|
|
80
|
+
title: 'About'
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
...MenuLinkColumnWithHeaderData,
|
|
84
|
+
heading: 'More from JPL',
|
|
85
|
+
headingPage: null
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
...MenuLinkColumnWithHeaderData,
|
|
89
|
+
heading: 'Explore Topics',
|
|
90
|
+
headingPage: null
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
blockType: 'MenuMoreHighlightsColumn',
|
|
94
|
+
heading: 'Discover',
|
|
95
|
+
headingPage: null,
|
|
96
|
+
highlights: [MenuHighlightColumnData, MenuHighlightColumnData]
|
|
97
|
+
}
|
|
98
|
+
]
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// combined header data // desktop and mobile
|
|
102
|
+
|
|
103
|
+
export const NavDesktopData = {
|
|
104
|
+
breadcrumb:
|
|
105
|
+
'{"/": [{"path": "http://www.jpl.nasa.gov/", "title": "Asteroid watch"}, {"path": "http://www.jpl.nasa.gov/", "title": "Asteroid fast facts"}, {"path": "http://www.jpl.nasa.gov/", "title": "Meteor shower viewing guide"}, {"path": "http://www.jpl.nasa.gov/", "title": "Yeoman\'s top 10"}, {"path": "http://www.jpl.nasa.gov/", "title": "Glossary of space rocks"}, {"path": "/robotics-at-jpl/", "title": "Robotics"}, {"path": "http://www.jpl.nasa.gov/", "title": "Apps"}, {"path": "/jpl-life/", "title": "JPL Life"}, {"path": "/stars-and-galaxies/", "title": "Stars and Galaxies"}, {"path": "/exoplanets/", "title": "Exoplanets"}, {"path": "/solar-system/", "title": "Solar System"}, {"path": "/asteroids/", "title": "Asteroids"}, {"path": "/comets/", "title": "Comets"}, {"path": "/technology/", "title": "Technology"}, {"path": "/mars/", "title": "Mars"}, {"path": "/earth/", "title": "Earth"}, {"path": "/climate-change/", "title": "Climate Change"}, {"path": "/earthquakes/", "title": "Earthquakes"}, {"path": "/weather/", "title": "Weather"}, {"path": "/robotics/", "title": "Robotics"}], "/missions/": [{"path": "/missions/", "title": "Current"}, {"path": "/missions/", "title": "Past"}, {"path": "/missions/", "title": "Future"}, {"path": "/missions/", "title": "Proposed"}, {"path": "/missions/", "title": "All"}], "/news/": [{"path": "/news/", "title": "All news"}, {"path": "/news/", "title": "Press kits"}, {"path": "/news/", "title": "Fact sheets"}, {"path": "/news/", "title": "Media Information"}, {"path": "/news/", "title": "JPL newsletter"}]}',
|
|
106
|
+
...NavDesktopTopHatData,
|
|
107
|
+
primaryNavigation: [
|
|
108
|
+
NavDesktopDropdownContentData,
|
|
109
|
+
{
|
|
110
|
+
...NavDesktopDropdownContentData,
|
|
111
|
+
titleLink: {
|
|
112
|
+
linkPage: {
|
|
113
|
+
title: 'Missions',
|
|
114
|
+
url: '/missions/'
|
|
115
|
+
},
|
|
116
|
+
title: null
|
|
117
|
+
},
|
|
118
|
+
menuColumns: [
|
|
119
|
+
MenuHighlightColumnData,
|
|
120
|
+
{
|
|
121
|
+
blockType: 'MenuDescriptionColumn',
|
|
122
|
+
description: 'Lorem ipsum dolor sit amet.',
|
|
123
|
+
title: 'Missions'
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
...MenuLinkColumnWithHeaderData,
|
|
127
|
+
heading: null,
|
|
128
|
+
headingPage: null
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
...MenuLinkColumnWithHeaderData,
|
|
132
|
+
heading: null,
|
|
133
|
+
headingPage: null
|
|
134
|
+
}
|
|
135
|
+
]
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
...NavDesktopDropdownContentData,
|
|
139
|
+
titleLink: {
|
|
140
|
+
linkPage: {
|
|
141
|
+
title: 'News',
|
|
142
|
+
url: '/news/'
|
|
143
|
+
},
|
|
144
|
+
title: null
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
...NavDesktopDropdownContentData,
|
|
149
|
+
titleLink: {
|
|
150
|
+
linkPage: {
|
|
151
|
+
title: 'Galleries',
|
|
152
|
+
url: '/galleries/'
|
|
153
|
+
},
|
|
154
|
+
title: null
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
...NavDesktopDropdownContentData,
|
|
159
|
+
titleLink: {
|
|
160
|
+
linkPage: {
|
|
161
|
+
title: 'Engage',
|
|
162
|
+
url: '/engage/'
|
|
163
|
+
},
|
|
164
|
+
title: null
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
export const BaseStory = {
|
|
171
|
+
name: 'NavDesktop',
|
|
172
|
+
args: {
|
|
173
|
+
data: NavDesktopData,
|
|
174
|
+
headerVisible: true,
|
|
175
|
+
scrolledUp: false,
|
|
176
|
+
scrollTop: 0,
|
|
177
|
+
invertOverride: false
|
|
178
|
+
},
|
|
179
|
+
render: (args) => ({
|
|
180
|
+
components: { NavDesktop },
|
|
181
|
+
setup() {
|
|
182
|
+
return { args }
|
|
183
|
+
},
|
|
184
|
+
template: `<NavDesktop v-bind="args" />`
|
|
185
|
+
})
|
|
186
|
+
}
|
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
class="NavDesktopEdu ThemeEdu z-50 w-full duration-150 ease-in"
|
|
4
|
+
:class="{
|
|
5
|
+
'sticky top-0': scrolledUp,
|
|
6
|
+
relative: !scrolledUp,
|
|
7
|
+
'transition-colors': scrollTop === 0, // smooth bg transition if going from opaque to transparent at top of page
|
|
8
|
+
'transition-transform': scrollTop > 0 && scrolledCurrentPage, // If not at the top of the page, just transition the transform to prevents content from peeking through on header reveal.
|
|
9
|
+
'transform -translate-y-full': !scrolledUp && !headerVisible,
|
|
10
|
+
'-scrolled transform translate-y-0': scrolledUp && headerVisible && scrollTop > 0,
|
|
11
|
+
'-transparent': invert,
|
|
12
|
+
'-hasSecondary': !headerStore?.highlightPrimary
|
|
13
|
+
}"
|
|
14
|
+
>
|
|
15
|
+
<!-- navbar -->
|
|
16
|
+
<div class="header-bg z-10 max-w-screen-3xl absolute inset-0 mx-auto"></div>
|
|
17
|
+
<div class="bg-primary z-0 absolute right-0 w-1/2 top-0 bottom-0"></div>
|
|
18
|
+
<div class="px-4">
|
|
19
|
+
<div class="h-18 container flex items-center justify-between mx-auto">
|
|
20
|
+
<!-- branding -->
|
|
21
|
+
<NavLogoLinks class="w-[17rem] z-20 flex flex-shrink-0 my-2 -ml-1">
|
|
22
|
+
<img
|
|
23
|
+
:src="LogoWhite"
|
|
24
|
+
alt="JPL Logo"
|
|
25
|
+
width="324"
|
|
26
|
+
height="72"
|
|
27
|
+
/>
|
|
28
|
+
</NavLogoLinks>
|
|
29
|
+
<!-- site title -->
|
|
30
|
+
<div class="ml-3 pl-5 border-l border-white border-opacity-30 z-20">
|
|
31
|
+
<span class="text-white font-bold text-3xl">Education</span>
|
|
32
|
+
</div>
|
|
33
|
+
<!-- main nav with dropdowns -->
|
|
34
|
+
<nav
|
|
35
|
+
v-if="data"
|
|
36
|
+
aria-label="Main"
|
|
37
|
+
class="main-navigation flex items-center justify-end w-full"
|
|
38
|
+
>
|
|
39
|
+
<div
|
|
40
|
+
v-show="!searchVisible"
|
|
41
|
+
class="flex flex-wrap items-center justify-end"
|
|
42
|
+
>
|
|
43
|
+
<template v-for="(item, index) in data.primaryNavigation">
|
|
44
|
+
<NavDesktopDropdown
|
|
45
|
+
v-if="item.blockType === 'MenuPanel' && item.titleLink"
|
|
46
|
+
:key="index"
|
|
47
|
+
:class="{ '-active': checkActive(item.titleLink) }"
|
|
48
|
+
:parent-scrolled="scrollTop"
|
|
49
|
+
>
|
|
50
|
+
<template #dropdownLabel>
|
|
51
|
+
{{ getLinkText(item.titleLink) }}
|
|
52
|
+
</template>
|
|
53
|
+
<NavDesktopDropdownContent :data="item" />
|
|
54
|
+
</NavDesktopDropdown>
|
|
55
|
+
</template>
|
|
56
|
+
</div>
|
|
57
|
+
<!-- search -->
|
|
58
|
+
<div
|
|
59
|
+
class="relative z-20 flex items-center w-auto"
|
|
60
|
+
:class="{ 'w-2/3': searchVisible }"
|
|
61
|
+
>
|
|
62
|
+
<button
|
|
63
|
+
v-if="!searchVisible"
|
|
64
|
+
aria-label="Open Search"
|
|
65
|
+
class="p-4 -mr-4 text-lg cursor-pointer"
|
|
66
|
+
@click="toggleSearch()"
|
|
67
|
+
>
|
|
68
|
+
<IconSearch />
|
|
69
|
+
</button>
|
|
70
|
+
<div
|
|
71
|
+
v-else
|
|
72
|
+
class="flex items-center w-full -transparent"
|
|
73
|
+
>
|
|
74
|
+
<NavSearchForm
|
|
75
|
+
class="w-full"
|
|
76
|
+
@clear-search="closeSearch()"
|
|
77
|
+
@submit-form="closeSearch()"
|
|
78
|
+
/>
|
|
79
|
+
<button
|
|
80
|
+
aria-label="Close Search"
|
|
81
|
+
class="p-4 -mr-4 cursor-pointer"
|
|
82
|
+
@click="closeSearch()"
|
|
83
|
+
>
|
|
84
|
+
<IconClose class="text-sm" />
|
|
85
|
+
</button>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</nav>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
92
|
+
</template>
|
|
93
|
+
<script lang="ts">
|
|
94
|
+
// @ts-nocheck
|
|
95
|
+
import { defineComponent } from 'vue'
|
|
96
|
+
import { mapStores } from 'pinia'
|
|
97
|
+
import { useHeaderStore } from './../../store/header'
|
|
98
|
+
import NavDesktopDropdown from './../NavDesktop/NavDesktopDropdown.vue'
|
|
99
|
+
import NavDesktopDropdownContent from './../NavDesktop/NavDesktopDropdownContent.vue'
|
|
100
|
+
import NavLogoLinks from './../NavLogoLinks/NavLogoLinks.vue'
|
|
101
|
+
import NavSearchForm from './../NavSearchForm/NavSearchForm.vue'
|
|
102
|
+
import IconSearch from './../Icons/IconSearch.vue'
|
|
103
|
+
import IconClose from './../Icons/IconClose.vue'
|
|
104
|
+
import type { LinkObject, BreadcrumbObject } from './../../utils/mixins'
|
|
105
|
+
import LogoWhite from '@explorer-1/common/src/images/svg/logo-tribrand-white.svg'
|
|
106
|
+
import type { BreadcrumbPathObject } from '../../interfaces'
|
|
107
|
+
import {
|
|
108
|
+
mixinIsActivePath,
|
|
109
|
+
mixinGetLinkText,
|
|
110
|
+
mixinUpdateGlobalChildren,
|
|
111
|
+
mixinUpdateSecondary
|
|
112
|
+
} from './../../utils/mixins'
|
|
113
|
+
|
|
114
|
+
export default defineComponent({
|
|
115
|
+
name: 'NavDesktop',
|
|
116
|
+
components: {
|
|
117
|
+
NavDesktopDropdown,
|
|
118
|
+
NavDesktopDropdownContent,
|
|
119
|
+
NavLogoLinks,
|
|
120
|
+
NavSearchForm,
|
|
121
|
+
IconSearch,
|
|
122
|
+
IconClose
|
|
123
|
+
},
|
|
124
|
+
props: {
|
|
125
|
+
data: {
|
|
126
|
+
type: Object || null,
|
|
127
|
+
required: false,
|
|
128
|
+
default: null
|
|
129
|
+
},
|
|
130
|
+
// this will override the initial display state (used in storybook)
|
|
131
|
+
invertOverride: {
|
|
132
|
+
type: Boolean,
|
|
133
|
+
required: false
|
|
134
|
+
},
|
|
135
|
+
headerVisible: {
|
|
136
|
+
type: Boolean,
|
|
137
|
+
required: false,
|
|
138
|
+
default: false
|
|
139
|
+
},
|
|
140
|
+
scrolled: {
|
|
141
|
+
type: Boolean,
|
|
142
|
+
required: false,
|
|
143
|
+
default: false
|
|
144
|
+
},
|
|
145
|
+
scrolledUp: {
|
|
146
|
+
type: Boolean,
|
|
147
|
+
required: false,
|
|
148
|
+
default: false
|
|
149
|
+
},
|
|
150
|
+
scrollTop: {
|
|
151
|
+
type: Number,
|
|
152
|
+
required: false,
|
|
153
|
+
default: 0
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
data() {
|
|
157
|
+
return {
|
|
158
|
+
searchVisible: false,
|
|
159
|
+
// scrolledCurrentPage is used to track if a user has scrolled on the current page.
|
|
160
|
+
// This is used in transition logic to avoid distracting animations on route changes
|
|
161
|
+
// without this check, the nav would swoop in/out on a route change if it was visible before the route change occured (e.g. partially scrolled up on a page)
|
|
162
|
+
scrolledCurrentPage: false,
|
|
163
|
+
LogoWhite: LogoWhite
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
computed: {
|
|
167
|
+
...mapStores(useHeaderStore),
|
|
168
|
+
// get the breadcrumb JSON string and convert to object. used to determine active class.
|
|
169
|
+
breadcrumb(): BreadcrumbObject | null {
|
|
170
|
+
if (this.data) {
|
|
171
|
+
return JSON.parse(this.data.breadcrumb)
|
|
172
|
+
}
|
|
173
|
+
return null
|
|
174
|
+
},
|
|
175
|
+
// dynamic classes for header transparency and onScroll effects
|
|
176
|
+
invert(): boolean {
|
|
177
|
+
const highContrast =
|
|
178
|
+
typeof window !== 'undefined' // client-side only
|
|
179
|
+
? window.matchMedia('(forced-colors: active)').matches
|
|
180
|
+
: false
|
|
181
|
+
// storybook-safe
|
|
182
|
+
const headerTransparent = this.headerStore ? this.headerStore?.headerTransparent : false
|
|
183
|
+
return !highContrast && (headerTransparent || this.invertOverride)
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
|
|
187
|
+
watch: {
|
|
188
|
+
scrollTop(newVal) {
|
|
189
|
+
if (newVal > 0) {
|
|
190
|
+
this.scrolledCurrentPage = true
|
|
191
|
+
} else {
|
|
192
|
+
this.scrolledCurrentPage = false
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
$route() {
|
|
196
|
+
// close the search on route change
|
|
197
|
+
if (this.searchVisible) {
|
|
198
|
+
this.closeSearch()
|
|
199
|
+
}
|
|
200
|
+
// update header transparency
|
|
201
|
+
if (this.headerStore) {
|
|
202
|
+
this.headerStore.makeTransparent(false)
|
|
203
|
+
// to reset if active primary nav item should be highlighted
|
|
204
|
+
// content pages can override this a la carte
|
|
205
|
+
this.headerStore.updateHighlightPrimary(true)
|
|
206
|
+
// clear secondary nav each time
|
|
207
|
+
mixinUpdateSecondary(null)
|
|
208
|
+
}
|
|
209
|
+
// reset scrolledCurrentPage on route change
|
|
210
|
+
this.scrolledCurrentPage = false
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
methods: {
|
|
214
|
+
// safe way to retrieve url key from nav items. used with breadcrumb to determine active class.
|
|
215
|
+
getUrlKey(item: LinkObject): string | null {
|
|
216
|
+
if (item.linkPage) {
|
|
217
|
+
return item.linkPage.url
|
|
218
|
+
}
|
|
219
|
+
return null
|
|
220
|
+
},
|
|
221
|
+
// to determine active class on menu links and 'more' menu links
|
|
222
|
+
checkActive(item: LinkObject) {
|
|
223
|
+
const urlKey = this.getUrlKey(item)
|
|
224
|
+
if (urlKey && this.breadcrumb && this.breadcrumb.menu_links) {
|
|
225
|
+
// key into the breadcrumbs for each section
|
|
226
|
+
const objArray = this.breadcrumb.menu_links[urlKey]
|
|
227
|
+
// check if any of the paths contained in the array are active
|
|
228
|
+
const isActive = objArray.some((el: BreadcrumbPathObject) => mixinIsActivePath(el.path))
|
|
229
|
+
if (isActive) {
|
|
230
|
+
mixinUpdateGlobalChildren(this.breadcrumb.menu_links[urlKey])
|
|
231
|
+
}
|
|
232
|
+
return isActive
|
|
233
|
+
}
|
|
234
|
+
return false
|
|
235
|
+
},
|
|
236
|
+
checkActiveMore() {
|
|
237
|
+
if (this.breadcrumb && this.breadcrumb.more) {
|
|
238
|
+
// get the more menu array
|
|
239
|
+
const arr = this.breadcrumb.more
|
|
240
|
+
// check if array contains current path
|
|
241
|
+
const isActive = arr.some((el: BreadcrumbPathObject) => mixinIsActivePath(el.path))
|
|
242
|
+
if (isActive) {
|
|
243
|
+
// clear the secondary nav store when visiting a breadcrumb page
|
|
244
|
+
// ensures blank secondary nav unless explicitly set via content page "Promote" settings
|
|
245
|
+
mixinUpdateGlobalChildren(null)
|
|
246
|
+
}
|
|
247
|
+
return isActive
|
|
248
|
+
}
|
|
249
|
+
return false
|
|
250
|
+
},
|
|
251
|
+
toggleSearch() {
|
|
252
|
+
this.searchVisible ? this.closeSearch() : this.openSearch()
|
|
253
|
+
},
|
|
254
|
+
closeSearch() {
|
|
255
|
+
if (this.searchVisible) {
|
|
256
|
+
this.searchVisible = false
|
|
257
|
+
this.$emit('closeSearch')
|
|
258
|
+
}
|
|
259
|
+
},
|
|
260
|
+
openSearch() {
|
|
261
|
+
if (!this.searchVisible) {
|
|
262
|
+
this.searchVisible = true
|
|
263
|
+
this.$emit('openSearch')
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
getLinkText(item: LinkObject) {
|
|
267
|
+
return mixinGetLinkText(item)
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
})
|
|
271
|
+
</script>
|
|
272
|
+
<style lang="scss">
|
|
273
|
+
.NavDesktopEdu {
|
|
274
|
+
@apply border-b border-transparent;
|
|
275
|
+
|
|
276
|
+
> .header-bg {
|
|
277
|
+
@apply bg-gradient-to-r from-black to-primary bg-transparent to-90%;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
.main-navigation {
|
|
281
|
+
> * {
|
|
282
|
+
@apply text-white;
|
|
283
|
+
|
|
284
|
+
.NavDesktopDropdown > button {
|
|
285
|
+
// mimics .text-contrast class
|
|
286
|
+
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
&.-scrolled {
|
|
292
|
+
@apply border-b border-gray-mid border-opacity-50 bg-white;
|
|
293
|
+
|
|
294
|
+
&.-transparent {
|
|
295
|
+
> .header-bg {
|
|
296
|
+
@apply opacity-0 bg-white;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.main-navigation {
|
|
300
|
+
> * {
|
|
301
|
+
@apply text-gray-dark;
|
|
302
|
+
|
|
303
|
+
.NavDesktopDropdown > button {
|
|
304
|
+
text-shadow: none;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
&.-hasSecondary {
|
|
311
|
+
@apply border-0 border-transparent;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
</style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<button
|
|
3
|
-
class="
|
|
3
|
+
class="NavDropdownToggle group cursor-pointer"
|
|
4
4
|
:class="{ '-active': isActivePath }"
|
|
5
5
|
:aria-expanded="ariaExpanded"
|
|
6
6
|
@click="clickEvent()"
|
|
@@ -22,7 +22,7 @@ export default defineComponent({
|
|
|
22
22
|
* - NavMobileDropdown
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
-
name: '
|
|
25
|
+
name: 'NavDropdownToggle',
|
|
26
26
|
props: {
|
|
27
27
|
path: {
|
|
28
28
|
type: String,
|
|
@@ -2,7 +2,7 @@ import { MenuLinkColumnWithHeaderData } from './../NavLinkList/NavLinkList.stori
|
|
|
2
2
|
import NavHeading from './NavHeading.vue'
|
|
3
3
|
|
|
4
4
|
export default {
|
|
5
|
-
title: '
|
|
5
|
+
title: 'Navigation/Elements/NavHeading',
|
|
6
6
|
component: NavHeading,
|
|
7
7
|
decorators: [
|
|
8
8
|
() => ({
|
|
@@ -18,6 +18,6 @@ export default {
|
|
|
18
18
|
excludeStories: /.*Data$/
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
export const
|
|
21
|
+
export const BaseStory = {
|
|
22
22
|
args: { data: MenuLinkColumnWithHeaderData }
|
|
23
23
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<template v-if="data.headingPage && data.heading">
|
|
7
7
|
<BaseLink
|
|
8
8
|
variant="none"
|
|
9
|
-
class="text-subtitle text-jpl-blue-lighter inline-block mb-4"
|
|
9
|
+
class="text-subtitle text-jpl-blue-lighter edu:text-primary-lighter inline-block mb-4"
|
|
10
10
|
link-class="p-2"
|
|
11
11
|
:to="data.headingPage.url"
|
|
12
12
|
>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</BaseLink>
|
|
15
15
|
</template>
|
|
16
16
|
<template v-else-if="data.heading">
|
|
17
|
-
<div class="text-subtitle text-jpl-blue-lighter inline-block mb-4">
|
|
17
|
+
<div class="text-subtitle text-jpl-blue-lighter edu:text-primary-lighter inline-block mb-4">
|
|
18
18
|
<span class="p-2">{{ data.heading }}</span>
|
|
19
19
|
</div>
|
|
20
20
|
</template>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import NavHighlight from './NavHighlight.vue'
|
|
2
2
|
|
|
3
3
|
export default {
|
|
4
|
-
title: '
|
|
4
|
+
title: 'Navigation/Elements/NavHighlight',
|
|
5
5
|
component: NavHighlight,
|
|
6
6
|
decorators: [
|
|
7
7
|
() => ({
|
|
@@ -34,7 +34,7 @@ export const MenuHighlightColumnData = {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
export const
|
|
37
|
+
export const BaseStory = {
|
|
38
38
|
args: {
|
|
39
39
|
customLabel: MenuHighlightColumnData.label,
|
|
40
40
|
highlight: MenuHighlightColumnData.highlight
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import NavLinkList from './NavLinkList.vue'
|
|
2
2
|
|
|
3
3
|
export default {
|
|
4
|
-
title: '
|
|
4
|
+
title: 'Navigation/Elements/NavLinkList',
|
|
5
5
|
component: NavLinkList,
|
|
6
6
|
decorators: [
|
|
7
7
|
() => ({
|
|
@@ -39,7 +39,7 @@ export const MenuLinkColumnWithHeaderData = {
|
|
|
39
39
|
]
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
export const
|
|
42
|
+
export const BaseStory = {
|
|
43
43
|
args: {
|
|
44
44
|
data: MenuLinkColumnWithHeaderData
|
|
45
45
|
}
|
|
@@ -2,21 +2,18 @@ import LogoColor from '@explorer-1/common/src/images/svg/logo-tribrand-color.svg
|
|
|
2
2
|
import NavLogoLinks from './NavLogoLinks.vue'
|
|
3
3
|
|
|
4
4
|
export default {
|
|
5
|
-
title: '
|
|
5
|
+
title: 'Navigation/Elements/NavLogoLinks',
|
|
6
6
|
component: NavLogoLinks,
|
|
7
7
|
excludeStories: /.*Data$/
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
// TODO: VUE3 -- fix logo image in story
|
|
11
|
-
export const
|
|
12
|
-
args: {
|
|
13
|
-
src: LogoColor
|
|
14
|
-
},
|
|
11
|
+
export const BaseStory = {
|
|
15
12
|
render: (args) => ({
|
|
16
13
|
components: { NavLogoLinks },
|
|
17
14
|
setup() {
|
|
18
15
|
return { args }
|
|
19
16
|
},
|
|
20
|
-
template: `<div class="flex"><NavLogoLinks><img
|
|
17
|
+
template: `<div class="flex"><NavLogoLinks><img src="/images/svg/logo-tribrand-color.svg" alt="Logo Image" /></NavLogoLinks></div>`
|
|
21
18
|
})
|
|
22
19
|
}
|
|
@@ -4,7 +4,7 @@ import NavMobileDropdown from './NavMobileDropdown.vue'
|
|
|
4
4
|
import NavMobileLink from './NavMobileLink.vue'
|
|
5
5
|
|
|
6
6
|
export default {
|
|
7
|
-
title: '
|
|
7
|
+
title: 'Navigation/Headers/WWW/NavMobile',
|
|
8
8
|
component: NavMobile,
|
|
9
9
|
excludeStories: /.*Data$/,
|
|
10
10
|
parameters: {
|
|
@@ -113,7 +113,8 @@ const NavMobileTertiaryNavData = [
|
|
|
113
113
|
}
|
|
114
114
|
]
|
|
115
115
|
|
|
116
|
-
export const
|
|
116
|
+
export const BaseStory = {
|
|
117
|
+
name: 'NavMobile',
|
|
117
118
|
args: {
|
|
118
119
|
data: NavMobileData,
|
|
119
120
|
headerVisible: true,
|