@explorer-1/vue 0.2.54 → 0.2.55
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/dist/explorer-1-vue.js +6113 -6105
- package/dist/explorer-1-vue.umd.cjs +16 -16
- package/dist/src/components/BackToTop/BackToTop.stories.d.ts +96 -4
- package/dist/src/components/BackToTop/BackToTop.vue.d.ts +96 -4
- package/dist/src/components/BaseAccordionItem/BaseAccordionItem.vue.d.ts +12 -10
- package/dist/src/components/BaseAudio/BaseAudio.vue.d.ts +12 -5
- package/dist/src/components/BaseButton/BaseButton.stories.d.ts +7 -7
- package/dist/src/components/BaseButton/BaseButton.vue.d.ts +7 -7
- package/dist/src/components/BaseCheckboxGroup/BaseCheckboxGroup.vue.d.ts +4 -4
- package/dist/src/components/BaseHeading/BaseHeading.stories.d.ts +9 -9
- package/dist/src/components/BaseHeading/BaseHeading.vue.d.ts +6 -6
- package/dist/src/components/BaseImage/BaseImage.stories.d.ts +4 -4
- package/dist/src/components/BaseImage/BaseImage.vue.d.ts +4 -4
- package/dist/src/components/BaseImagePlaceholder/BaseImagePlaceholder.vue.d.ts +4 -4
- package/dist/src/components/BaseLightboxCloseButton/BaseLightboxCloseButton.vue.d.ts +3 -1
- package/dist/src/components/BaseLightboxOpenButton/BaseLightboxOpenButton.vue.d.ts +3 -1
- package/dist/src/components/BaseLink/BaseLink.vue.d.ts +70 -6
- package/dist/src/components/BaseModal/BaseModal.stories.d.ts +685 -34
- package/dist/src/components/BaseModal/BaseModal.vue.d.ts +141 -4
- package/dist/src/components/BaseModal/BaseModalDialog.vue.d.ts +124 -4
- package/dist/src/components/BasePill/BasePill.vue.d.ts +4 -4
- package/dist/src/components/BasePlaceholder/BasePlaceholder.stories.d.ts +1 -1
- package/dist/src/components/BasePlaceholder/BasePlaceholder.vue.d.ts +1 -1
- package/dist/src/components/BaseRadioGroup/BaseRadioGroup.vue.d.ts +4 -4
- package/dist/src/components/BaseSwimlane/BaseSwimlane.vue.d.ts +4 -4
- package/dist/src/components/BaseTimer/BaseTimer.vue.d.ts +6 -6
- package/dist/src/components/BaseUnitToggle/BaseUnitToggle.stories.d.ts +33 -33
- package/dist/src/components/BaseUnitToggle/BaseUnitToggle.vue.d.ts +8 -8
- package/dist/src/components/BaseVideo/BaseVideo.vue.d.ts +61 -4
- package/dist/src/components/BlockAccordion/BlockAccordion.vue.d.ts +4 -4
- package/dist/src/components/BlockAnchor/BlockAnchor.vue.d.ts +3 -3
- package/dist/src/components/BlockAudio/BlockAudio.vue.d.ts +230 -3
- package/dist/src/components/BlockCardGridItem/BlockCardGridItemElement.vue.d.ts +172 -5
- package/dist/src/components/BlockCircleImageCard/BlockCircleImageCard.vue.d.ts +170 -4
- package/dist/src/components/BlockCta/BlockCta.vue.d.ts +96 -4
- package/dist/src/components/BlockDialog/BlockDialog.stories.d.ts +7 -5
- package/dist/src/components/BlockGist/BlockGist.vue.d.ts +1 -1
- package/dist/src/components/BlockGist/GitHub404.vue.d.ts +1 -1
- package/dist/src/components/BlockHeading/BlockHeading.vue.d.ts +35 -5
- package/dist/src/components/BlockKeyPoints/BlockKeyPoints.vue.d.ts +87 -3
- package/dist/src/components/BlockLinkCard/BlockLinkCard.stories.d.ts +60 -23
- package/dist/src/components/BlockLinkCardList/BlockLinkCardList.vue.d.ts +4 -4
- package/dist/src/components/BlockTable/BlockTable.vue.d.ts +3 -3
- package/dist/src/components/BlockTeaser/BlockTeaser.vue.d.ts +175 -4
- package/dist/src/components/BlockText/BlockText.vue.d.ts +4 -4
- package/dist/src/components/CalendarButton/CalendarButton.vue.d.ts +95 -4
- package/dist/src/components/CalendarChip/CalendarChip.vue.d.ts +4 -4
- package/dist/src/components/EventDetailHero/EventDetailHero.vue.d.ts +172 -4
- package/dist/src/components/FormContact/FormContact.stories.d.ts +361 -1
- package/dist/src/components/FormContact/FormContact.vue.d.ts +361 -1
- package/dist/src/components/FormNewsletterSignup/FormNewsletterSignup.stories.d.ts +396 -1
- package/dist/src/components/FormNewsletterSignup/FormNewsletterSignup.vue.d.ts +396 -1
- package/dist/src/components/HeroLarge/HeroLarge.vue.d.ts +51 -4
- package/dist/src/components/HomepageFeaturedRobot/HomepageFeaturedRobot.vue.d.ts +281 -3
- package/dist/src/components/HomepageTeaserBlock/HomepageTeaserBlockCardImage.vue.d.ts +141 -3
- package/dist/src/components/Icons/Icon360.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconArrow.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconArrows.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconAudio.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconBook.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconBookUser.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconBriefcase.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconCalendar.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconCaret.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconCheckbox.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconCheckboxSelected.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconClose.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconCloseLightbox.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconDownload.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconDropdown.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconEnvelope.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconExpand.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconExternal.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconFilter.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconForwardTen.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconGrid.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconHand.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconInfo.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconLink.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconList.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconLocation.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconMagnifyingGlass.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconMedal.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconMenu.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconMinus.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconMute.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconNext.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconPause.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconPlay.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconPlus.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconPrev.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconProfile.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconRewindTen.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSearch.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconShare.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSlideshow.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialEmail.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialFacebook.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialGoogleClassroom.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialInstagram.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialPinterest.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialReddit.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialTwitter.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSocialYoutube.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconStop.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconSubject.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconTime.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconUniversity.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconUser.vue.d.ts +1 -1
- package/dist/src/components/Icons/IconVolume.vue.d.ts +1 -1
- package/dist/src/components/Icons/Icons.stories.d.ts +110 -110
- package/dist/src/components/ImageDetailContextImage/ImageDetailContextImage.vue.d.ts +142 -3
- package/dist/src/components/LayoutHelper/LayoutHelper.vue.d.ts +4 -4
- package/dist/src/components/LoadingTransition/LoadingTransition.vue.d.ts +1 -1
- package/dist/src/components/LogoCaltech/LogoCaltech.stories.d.ts +1 -1
- package/dist/src/components/LogoCaltech/LogoCaltech.vue.d.ts +1 -1
- package/dist/src/components/LogoTribrand/LogoTribrand.stories.d.ts +4 -5
- package/dist/src/components/LogoTribrand/LogoTribrand.vue.d.ts +4 -4
- package/dist/src/components/MetadataEduResource/MetadataEduResource.vue.d.ts +4 -4
- package/dist/src/components/MetadataEvent/MetadataEvent.vue.d.ts +4 -4
- package/dist/src/components/MissionDetailAbout/MissionDetailAbout.vue.d.ts +61 -4
- package/dist/src/components/MissionDetailHero/MissionDetailHero.stories.d.ts +0 -1
- package/dist/src/components/MissionDetailHero/MissionDetailHero.vue.d.ts +154 -4
- package/dist/src/components/MissionDetailHighlights/MissionDetailHighlights.stories.d.ts +0 -1
- package/dist/src/components/MissionDetailStats/DistanceStats.vue.d.ts +63 -8
- package/dist/src/components/MissionDetailStats/MissionDetailStats.stories.d.ts +460 -31
- package/dist/src/components/MissionDetailStats/MissionDetailStats.vue.d.ts +199 -12
- package/dist/src/components/MissionDetailStats/MissionDetailStatsMicro.vue.d.ts +63 -6
- package/dist/src/components/MissionDetailStats/MissionDetailStatsMini.vue.d.ts +195 -8
- package/dist/src/components/MixinAnimationCaret/MixinAnimationCaret.stories.d.ts +6 -4
- package/dist/src/components/MixinAnimationCaret/MixinAnimationCaret.vue.d.ts +6 -4
- package/dist/src/components/MixinFancybox/MixinFancybox.vue.d.ts +8 -4
- package/dist/src/components/MixinFancybox/MixinFancyboxOpenButton.vue.d.ts +3 -1
- package/dist/src/components/MixinVideoBg/MixinVideoBg.vue.d.ts +3 -3
- package/dist/src/components/NavDesktop/NavDesktopDropdown.vue.d.ts +44 -4
- package/dist/src/components/NavDropdownToggle/NavDropdownToggle.vue.d.ts +5 -5
- package/dist/src/components/NavSearchForm/NavSearchForm.vue.d.ts +5 -5
- package/dist/src/components/NavSocial/NavSocial.stories.d.ts +99 -4
- package/dist/src/components/NavSocial/NavSocial.vue.d.ts +99 -4
- package/dist/src/components/NewsDetailMediaContact/NewsDetailMediaContact.vue.d.ts +4 -4
- package/dist/src/components/ParallaxContainer/ParallaxContainer.stories.d.ts +8 -8
- package/dist/src/components/ParallaxContainer/ParallaxContainer.vue.d.ts +4 -4
- package/dist/src/components/ParallaxElement/ParallaxElement.vue.d.ts +4 -4
- package/dist/src/components/ProfileDetailSectionGroup/ProfileDetailSectionGroup.vue.d.ts +67 -3
- package/dist/src/components/RoboticsDetailStats/RoboticsDetailStats.stories.d.ts +59 -4
- package/dist/src/components/RoboticsDetailStats/RoboticsDetailStats.vue.d.ts +3 -3
- package/dist/src/components/RoboticsDetailStats/RoboticsDetailStatsMini.vue.d.ts +58 -3
- package/dist/src/components/SearchFilterGroup/SearchFilterGroup.vue.d.ts +5 -5
- package/dist/src/components/SearchInput/SearchInput.vue.d.ts +5 -5
- package/dist/src/components/SearchPagination/SearchPagination.vue.d.ts +96 -3
- package/dist/src/components/SearchResultCard/SearchResultCard.stories.d.ts +19 -1
- package/dist/src/components/SearchSelectMenu/SearchSelectMenu.vue.d.ts +4 -4
- package/dist/src/components/ShareButtons/ShareButtons.vue.d.ts +99 -4
- package/dist/src/components/ShareButtonsEdu/ShareButtonsEdu.vue.d.ts +1 -1
- package/dist/src/components/SkipLink/SkipLink.vue.d.ts +92 -1
- package/dist/src/components/TextArea/TextArea.vue.d.ts +14 -14
- package/dist/src/components/TextInput/TextInput.vue.d.ts +14 -14
- package/dist/src/components/TheFooter/TheFooterSignUp.vue.d.ts +3 -1
- package/dist/src/components/TopicDetailMissionSpotlight/TopicDetailMissionSpotlight.vue.d.ts +314 -3
- package/dist/src/components/TopicDetailMore/TopicDetailMoreVisibility.vue.d.ts +1 -1
- package/dist/src/components/YearTicker/YearTicker.stories.d.ts +3 -3
- package/dist/src/components/YearTicker/YearTicker.vue.d.ts +3 -3
- package/dist/src/docs/foundation/grid_layouthelpers.stories.d.ts +16 -16
- package/dist/src/docs/foundation/typography.stories.d.ts +7 -7
- package/dist/src/interfaces.d.ts +1 -0
- package/dist/src/templates/edu/PageEduExplainerArticle/PageEduExplainerArticle.stories.d.ts +105 -38
- package/dist/src/templates/edu/PageEduLesson/PageEduLesson.stories.d.ts +112 -34
- package/dist/src/templates/edu/PageEduStudentProject/PageEduStudentProject.stories.d.ts +131 -35
- package/dist/src/templates/edu/PageEduTeachableMoment/PageEduTeachableMoment.stories.d.ts +112 -34
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/BaseImage/BaseImage.vue +2 -28
- package/src/components/BlockHeading/BlockHeading.vue +1 -1
- package/src/components/BlockIframeEmbed/BlockIframeEmbed.vue +4 -28
- package/src/components/BlockVideoEmbed/BlockVideoEmbed.vue +0 -2
- package/src/components/HeroMedium/HeroMedium.vue +1 -1
- package/src/components/MetaPanel/MetaPanel.vue +6 -6
- package/src/components/NavJumpMenu/NavJumpMenu.vue +7 -1
- package/src/components/NavJumpMenu/NavJumpMenuContent.vue +6 -1
- package/src/components/SearchInput/SearchInput.vue +15 -4
- package/src/templates/edu/PageEduHome/PageEduHome.stories.js +99 -0
- package/src/templates/edu/PageEduHome/PageEduHome.vue +154 -0
- package/src/templates/edu/PageEduLesson/PageEduLesson.vue +5 -6
- package/src/templates/edu/PageEduStudentProject/PageEduStudentProject.vue +77 -92
- package/src/templates/edu/PageEduStudentProject/PageEduStudentProjectSection.vue +59 -44
- package/dist/src/components/AsteroidWatchWidget/AsteroidWatchWidget.vue.d.ts +0 -36
- package/dist/src/components/BaseImageCaption/BaseImageCaption.vue.d.ts +0 -37
- package/dist/src/components/BlockCardGrid/BlockCardGrid.vue.d.ts +0 -33
- package/dist/src/components/BlockCardGridItem/BlockCardGridItem.vue.d.ts +0 -19
- package/dist/src/components/BlockIframeEmbed/BlockIframeEmbed.vue.d.ts +0 -24
- package/dist/src/components/BlockImage/BlockImage.stories.d.ts +0 -345
- package/dist/src/components/BlockImage/BlockImage.vue.d.ts +0 -24
- package/dist/src/components/BlockImage/BlockImageFullBleed.vue.d.ts +0 -68
- package/dist/src/components/BlockImage/BlockImageStandard.vue.d.ts +0 -65
- package/dist/src/components/BlockImageCarousel/BlockImageCarousel.vue.d.ts +0 -74
- package/dist/src/components/BlockImageCarouselItem/BlockImageCarouselItem.vue.d.ts +0 -58
- package/dist/src/components/BlockImageComparison/BlockImageComparison.vue.d.ts +0 -25
- package/dist/src/components/BlockImageGallery/BlockImageGallery.vue.d.ts +0 -57
- package/dist/src/components/BlockInlineImage/BlockInlineImage.vue.d.ts +0 -19
- package/dist/src/components/BlockLinkCard/BlockLinkCard.vue.d.ts +0 -198
- package/dist/src/components/BlockLinkCarousel/BlockLinkCarousel.stories.d.ts +0 -306
- package/dist/src/components/BlockLinkCarousel/BlockLinkCarousel.vue.d.ts +0 -47
- package/dist/src/components/BlockLinkTile/BlockLinkTile.vue.d.ts +0 -93
- package/dist/src/components/BlockListCards/BlockListCards.vue.d.ts +0 -16
- package/dist/src/components/BlockQuote/BlockQuote.stories.d.ts +0 -202
- package/dist/src/components/BlockQuote/BlockQuote.vue.d.ts +0 -32
- package/dist/src/components/BlockRelatedLinks/BlockRelatedLinks.vue.d.ts +0 -36
- package/dist/src/components/BlockRelatedLinks/RelatedLink.vue.d.ts +0 -42
- package/dist/src/components/BlockStreamfield/BlockStreamfield.vue.d.ts +0 -49
- package/dist/src/components/BlockVideo/BlockVideo.vue.d.ts +0 -40
- package/dist/src/components/BlockVideoEmbed/BlockVideoEmbed.vue.d.ts +0 -38
- package/dist/src/components/DetailHeadline/DetailHeadline.vue.d.ts +0 -156
- package/dist/src/components/DsnWidget/DsnWidget.vue.d.ts +0 -15
- package/dist/src/components/EventCard/EventCard.vue.d.ts +0 -111
- package/dist/src/components/HeroListingIndex/HeroListingIndex.vue.d.ts +0 -42
- package/dist/src/components/HeroMedia/HeroMedia.vue.d.ts +0 -66
- package/dist/src/components/HeroMedium/HeroMedium.vue.d.ts +0 -96
- package/dist/src/components/HomepageCarousel/HomepageCarousel.vue.d.ts +0 -45
- package/dist/src/components/HomepageCarouselItem/HomepageCarouselItem.vue.d.ts +0 -33
- package/dist/src/components/HomepageEmbedBlock/HomepageEmbedBlock.vue.d.ts +0 -15
- package/dist/src/components/HomepageMissionsCarousel/HomepageMissionsCarousel.stories.d.ts +0 -106
- package/dist/src/components/HomepageMissionsCarousel/HomepageMissionsCarousel.vue.d.ts +0 -24
- package/dist/src/components/HomepageMissionsCarousel/HomepageMissionsCarouselItem.vue.d.ts +0 -18
- package/dist/src/components/HomepageStats/HomepageStats.stories.d.ts +0 -565
- package/dist/src/components/HomepageStats/HomepageStats.vue.d.ts +0 -65
- package/dist/src/components/HomepageTeaserBlock/HomepageTeaserBlock.vue.d.ts +0 -21
- package/dist/src/components/MissionDetailHighlights/MissionDetailHighlights.vue.d.ts +0 -65
- package/dist/src/components/MissionDetailHighlights/MissionDetailHighlightsCarousel.vue.d.ts +0 -30
- package/dist/src/components/MissionDetailHighlights/MissionDetailHighlightsCarouselItem.vue.d.ts +0 -36
- package/dist/src/components/MissionDetailInlineImage/MissionDetailInlineImage.vue.d.ts +0 -34
- package/dist/src/components/MissionDetailStreamfield/MissionDetailStreamfield.vue.d.ts +0 -12
- package/dist/src/components/MixinCarousel/MixinCarousel.stories.d.ts +0 -265
- package/dist/src/components/MixinCarousel/MixinCarousel.vue.d.ts +0 -118
- package/dist/src/components/NavDesktop/NavDesktop.stories.d.ts +0 -648
- package/dist/src/components/NavDesktop/NavDesktop.vue.d.ts +0 -94
- package/dist/src/components/NavDesktop/NavDesktopDropdownContent.vue.d.ts +0 -14
- package/dist/src/components/NavDesktop/NavDesktopDropdownMore.vue.d.ts +0 -15
- package/dist/src/components/NavDesktopEdu/NavDesktopEdu.stories.d.ts +0 -338
- package/dist/src/components/NavHeading/NavHeading.vue.d.ts +0 -12
- package/dist/src/components/NavHighlight/NavHighlight.vue.d.ts +0 -20
- package/dist/src/components/NavLinkList/NavLinkList.vue.d.ts +0 -29
- package/dist/src/components/NavLogoLinks/NavLogoLinks.stories.d.ts +0 -18
- package/dist/src/components/NavLogoLinks/NavLogoLinks.vue.d.ts +0 -2
- package/dist/src/components/NavMobile/NavMobile.stories.d.ts +0 -656
- package/dist/src/components/NavMobile/NavMobile.vue.d.ts +0 -94
- package/dist/src/components/NavMobile/NavMobileDropdown.vue.d.ts +0 -54
- package/dist/src/components/NavMobile/NavMobileEdu.stories.d.ts +0 -395
- package/dist/src/components/NavMobile/NavMobileLink.vue.d.ts +0 -46
- package/dist/src/components/NavMobile/NavMobileSecondaryDropdown.vue.d.ts +0 -35
- package/dist/src/components/NavSecondary/NavSecondary.vue.d.ts +0 -75
- package/dist/src/components/NavSecondary/NavSecondaryDropdown.vue.d.ts +0 -70
- package/dist/src/components/NavSecondary/NavSecondaryDropdownContent.vue.d.ts +0 -30
- package/dist/src/components/NavSecondary/NavSecondaryLink.vue.d.ts +0 -40
- package/dist/src/components/PastEventsCarousel/PastEventsCarousel.vue.d.ts +0 -19
- package/dist/src/components/PodcastEpisodeCard/PodcastEpisodeCard.vue.d.ts +0 -82
- package/dist/src/components/PodcastSeriesCarousel/PodcastSeriesCarousel.vue.d.ts +0 -55
- package/dist/src/components/SearchResultCard/SearchResultCard.vue.d.ts +0 -287
- package/dist/src/components/SearchResultGridItem/SearchResultGridItem.vue.d.ts +0 -193
- package/dist/src/components/SearchResultsList/SearchResultsList.vue.d.ts +0 -62
- package/dist/src/components/TheFooter/TheFooter.vue.d.ts +0 -35
- package/dist/src/components/ThumbnailCarousel/ThumbnailCarousel.vue.d.ts +0 -32
- package/dist/src/components/TimelineDialog/TimelineDialog.stories.d.ts +0 -75
- package/dist/src/components/TopicDetailMissionCarousel/TopicDetailMissionCarousel.vue.d.ts +0 -33
- package/dist/src/components/TopicDetailMissionCarouselItem/TopicDetailMissionCarouselItem.vue.d.ts +0 -27
- package/dist/src/components/TopicDetailMore/TopicDetailMore.stories.d.ts +0 -167
- package/dist/src/components/TopicDetailMore/TopicDetailMore.vue.d.ts +0 -39
- package/dist/src/components/TopicDetailMoreItem/TopicDetailMoreItem.vue.d.ts +0 -22
- package/dist/src/components/TopicDetailStreamfield/TopicDetailStreamfield.vue.d.ts +0 -31
- package/dist/src/templates/PageContent/PageContent.vue.d.ts +0 -28
- package/dist/src/templates/PageEventDetail/PageEventDetail.vue.d.ts +0 -22
- package/dist/src/templates/PageNewsDetail/PageNewsDetail.vue.d.ts +0 -17
package/package.json
CHANGED
|
@@ -53,11 +53,6 @@ export default defineComponent({
|
|
|
53
53
|
default: 'lazy'
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
|
-
data() {
|
|
57
|
-
return {
|
|
58
|
-
lazyNative: true
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
56
|
computed: {
|
|
62
57
|
computedClass(): string {
|
|
63
58
|
let classes = ''
|
|
@@ -67,31 +62,10 @@ export default defineComponent({
|
|
|
67
62
|
if (this.objectFitClass) {
|
|
68
63
|
classes = classes + ' ' + objectFitClasses[this.objectFitClass]
|
|
69
64
|
}
|
|
70
|
-
if (!this.lazyNative) {
|
|
71
|
-
classes = classes + ' lazyload'
|
|
72
|
-
}
|
|
73
65
|
return classes
|
|
74
66
|
}
|
|
75
67
|
},
|
|
76
|
-
mounted() {
|
|
77
|
-
this.featureDetectImageLazyLoad()
|
|
78
|
-
},
|
|
79
68
|
methods: {
|
|
80
|
-
featureDetectImageLazyLoad() {
|
|
81
|
-
if ('loading' in HTMLImageElement.prototype) {
|
|
82
|
-
const image = this.$refs.BaseImage ? (this.$refs.BaseImage as HTMLImageElement) : null
|
|
83
|
-
this.lazyNative = true
|
|
84
|
-
// reassign dataset attributes
|
|
85
|
-
if (image && image.dataset.src) {
|
|
86
|
-
image.src = image.dataset.src
|
|
87
|
-
}
|
|
88
|
-
if (image && image.dataset.srcset) {
|
|
89
|
-
image.srcset = image.dataset.srcset
|
|
90
|
-
}
|
|
91
|
-
} else {
|
|
92
|
-
this.lazyNative = false
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
69
|
imageFailed() {
|
|
96
70
|
console.log('Image failed to load.')
|
|
97
71
|
}
|
|
@@ -105,8 +79,8 @@ export default defineComponent({
|
|
|
105
79
|
ref="BaseImage"
|
|
106
80
|
class="BaseImage print:border print:border-gray-mid"
|
|
107
81
|
:class="computedClass"
|
|
108
|
-
:
|
|
109
|
-
:
|
|
82
|
+
:src="src"
|
|
83
|
+
:srcset="srcset"
|
|
110
84
|
:alt="alt"
|
|
111
85
|
:width="width"
|
|
112
86
|
:height="height"
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div v-if="data">
|
|
2
|
+
<div v-if="data?.url">
|
|
3
3
|
<template v-if="data.height">
|
|
4
4
|
<iframe
|
|
5
5
|
v-if="data.url"
|
|
6
6
|
ref="BlockIframeEmbed"
|
|
7
7
|
loading="lazy"
|
|
8
8
|
class="w-full border-none print:!border print:border-gray-dark"
|
|
9
|
-
:class="{ lazyload: !lazyNative }"
|
|
10
9
|
:title="data.title"
|
|
11
|
-
:
|
|
10
|
+
:src="data.url"
|
|
12
11
|
width="90%"
|
|
13
12
|
:height="data.height"
|
|
14
13
|
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
|
|
@@ -28,9 +27,8 @@
|
|
|
28
27
|
ref="BlockIframeEmbed"
|
|
29
28
|
loading="lazy"
|
|
30
29
|
class="w-full border-none"
|
|
31
|
-
:class="{ lazyload: !lazyNative }"
|
|
32
30
|
:title="data.title"
|
|
33
|
-
:
|
|
31
|
+
:src="data.url"
|
|
34
32
|
data-chromatic="ignore"
|
|
35
33
|
width="90%"
|
|
36
34
|
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
|
|
@@ -60,29 +58,7 @@ export default defineComponent({
|
|
|
60
58
|
props: {
|
|
61
59
|
data: {
|
|
62
60
|
type: Object,
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
},
|
|
66
|
-
data() {
|
|
67
|
-
return {
|
|
68
|
-
lazyNative: true
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
mounted() {
|
|
72
|
-
this.featureDetectIframeLazyLoad()
|
|
73
|
-
},
|
|
74
|
-
methods: {
|
|
75
|
-
featureDetectIframeLazyLoad() {
|
|
76
|
-
if ('loading' in HTMLIFrameElement.prototype) {
|
|
77
|
-
const iframe = this.$refs.BlockIframeEmbed as HTMLIFrameElement
|
|
78
|
-
this.lazyNative = true
|
|
79
|
-
// move data-src attribute to src
|
|
80
|
-
if (iframe.dataset.src) {
|
|
81
|
-
iframe.src = iframe.dataset.src
|
|
82
|
-
}
|
|
83
|
-
} else {
|
|
84
|
-
this.lazyNative = false
|
|
85
|
-
}
|
|
61
|
+
default: undefined
|
|
86
62
|
}
|
|
87
63
|
},
|
|
88
64
|
computed: {
|
|
@@ -63,8 +63,6 @@ export default defineComponent({
|
|
|
63
63
|
if (!this.data?.embed) {
|
|
64
64
|
return
|
|
65
65
|
}
|
|
66
|
-
|
|
67
|
-
// TODO: not using feature detect as that would require rewriting the html output from wagtail to set data-src instead of src
|
|
68
66
|
// get the iframe in this component
|
|
69
67
|
const iframe = this.$el.querySelector('iframe')
|
|
70
68
|
if (iframe) {
|
|
@@ -128,7 +128,7 @@ const standardsIste = computed(() => {
|
|
|
128
128
|
>
|
|
129
129
|
<div class="col-start-container lg:col-start-indent-col-2 col-end-container">
|
|
130
130
|
<div class="MetaPanel-heading lg:grid grid-cols-12 col-end-container container">
|
|
131
|
-
<div class="col-start-1 col-end-
|
|
131
|
+
<div class="col-start-1 col-end-9 xl:col-end-9 pl-4 lg:pl-10 pr-6 py-6 lg:py-10">
|
|
132
132
|
<MetaPanelItems
|
|
133
133
|
:theme="theme"
|
|
134
134
|
:primary-subject="primarySubject"
|
|
@@ -138,8 +138,8 @@ const standardsIste = computed(() => {
|
|
|
138
138
|
/>
|
|
139
139
|
</div>
|
|
140
140
|
<div
|
|
141
|
-
v-if="button"
|
|
142
|
-
class="ThemeVariantLight col-start-
|
|
141
|
+
v-if="button && (standards?.length || $slots.metaInfo)"
|
|
142
|
+
class="ThemeVariantLight col-start-9 col-end-13 pl-4 lg:pl-0 pt-4 pb-6 lg:pr-4 xl:pr-10 2xl:pr-0 lg:py-10 lg:text-right"
|
|
143
143
|
>
|
|
144
144
|
<BaseButton
|
|
145
145
|
variant="secondary"
|
|
@@ -164,7 +164,7 @@ const standardsIste = computed(() => {
|
|
|
164
164
|
</div>
|
|
165
165
|
</div>
|
|
166
166
|
<div
|
|
167
|
-
v-if="standards || $slots.metaInfo"
|
|
167
|
+
v-if="standards?.length || $slots.metaInfo"
|
|
168
168
|
v-show="metaPanelOpen"
|
|
169
169
|
class="MetaPanel-panel col-start-container lg:col-start-indent-col-2 col-end-bleed lg:grid grid-cols-subgrid bg-gray-light pb-3 lg:pb-6"
|
|
170
170
|
>
|
|
@@ -176,11 +176,11 @@ const standardsIste = computed(() => {
|
|
|
176
176
|
<slot name="metaInfo" />
|
|
177
177
|
</div>
|
|
178
178
|
<div
|
|
179
|
-
v-if="standards"
|
|
179
|
+
v-if="standards?.length"
|
|
180
180
|
class="pt-6 lg:pt-7"
|
|
181
181
|
>
|
|
182
182
|
<div
|
|
183
|
-
class="text-subtitle mb-5"
|
|
183
|
+
class="ThemeVariantGray text-subtitle mb-5"
|
|
184
184
|
:class="headingClass"
|
|
185
185
|
>
|
|
186
186
|
Standards
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
<NavJumpMenuContent
|
|
20
20
|
:key="index"
|
|
21
21
|
:item="item"
|
|
22
|
+
v-bind="$attrs"
|
|
22
23
|
/>
|
|
23
24
|
</NavSecondaryDropdown>
|
|
24
25
|
</template>
|
|
@@ -41,17 +42,20 @@ import NavSecondary from './../NavSecondary/NavSecondary.vue'
|
|
|
41
42
|
import NavSecondaryDropdown from './../NavSecondary/NavSecondaryDropdown.vue'
|
|
42
43
|
import NavSecondaryLink from './../NavSecondary/NavSecondaryLink.vue'
|
|
43
44
|
import NavJumpMenuContent from './../NavJumpMenu/NavJumpMenuContent.vue'
|
|
45
|
+
import type { BlockHeadingObject } from './../BlockHeading/BlockHeading.vue'
|
|
44
46
|
import type { BlockData, BreadcrumbPathObject } from './../../interfaces'
|
|
45
47
|
import { getHeadingId } from '../../utils/getHeadingId'
|
|
46
48
|
|
|
47
49
|
interface NavJumpMenuProps {
|
|
48
50
|
title?: string
|
|
49
51
|
jumpLinks?: BreadcrumbPathObject[]
|
|
50
|
-
blocks?: BlockData[]
|
|
52
|
+
blocks?: BlockData[] | BlockHeadingObject[]
|
|
51
53
|
headingLevel?: string
|
|
52
54
|
invert?: boolean
|
|
53
55
|
enabled?: boolean
|
|
54
56
|
dropdownText?: string
|
|
57
|
+
// stepsNumbering?: boolean
|
|
58
|
+
// stepClasses?: string
|
|
55
59
|
}
|
|
56
60
|
|
|
57
61
|
const props = withDefaults(defineProps<NavJumpMenuProps>(), {
|
|
@@ -63,6 +67,8 @@ const props = withDefaults(defineProps<NavJumpMenuProps>(), {
|
|
|
63
67
|
invert: true,
|
|
64
68
|
hidden: false,
|
|
65
69
|
dropdownText: 'Jump to…'
|
|
70
|
+
// stepsNumbering: false,
|
|
71
|
+
// stepClasses: 'text-primary'
|
|
66
72
|
})
|
|
67
73
|
|
|
68
74
|
const NavJumpMenuRef = ref()
|
|
@@ -11,6 +11,12 @@
|
|
|
11
11
|
:link-class="linkClass(child)"
|
|
12
12
|
>
|
|
13
13
|
<span>
|
|
14
|
+
<span
|
|
15
|
+
v-if="$attrs['steps-numbering']"
|
|
16
|
+
:class="$attrs['steps-classes']"
|
|
17
|
+
aria-hidden
|
|
18
|
+
>{{ `Step ${index + 1}:` }}</span
|
|
19
|
+
>
|
|
14
20
|
{{ child.title }}
|
|
15
21
|
</span>
|
|
16
22
|
</BaseLink>
|
|
@@ -33,7 +39,6 @@ export default defineComponent({
|
|
|
33
39
|
BaseLink
|
|
34
40
|
},
|
|
35
41
|
props: {
|
|
36
|
-
// the tertiary nav item object that includes path, title, and children
|
|
37
42
|
item: {
|
|
38
43
|
type: Object,
|
|
39
44
|
required: true
|
|
@@ -8,6 +8,7 @@ interface SearchInputProps {
|
|
|
8
8
|
placeholder?: string
|
|
9
9
|
autoFocus?: boolean
|
|
10
10
|
defaultColors?: boolean
|
|
11
|
+
withButton?: boolean
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
// define props
|
|
@@ -16,10 +17,11 @@ const props = withDefaults(defineProps<SearchInputProps>(), {
|
|
|
16
17
|
underlinedInputValue: undefined,
|
|
17
18
|
placeholder: '',
|
|
18
19
|
autoFocus: false,
|
|
19
|
-
defaultColors: true
|
|
20
|
+
defaultColors: true,
|
|
21
|
+
withButton: false
|
|
20
22
|
})
|
|
21
23
|
|
|
22
|
-
const emit = defineEmits(['input', 'esc'])
|
|
24
|
+
const emit = defineEmits(['input', 'esc', 'submit'])
|
|
23
25
|
|
|
24
26
|
const model = defineModel()
|
|
25
27
|
const isFocused = ref(false)
|
|
@@ -67,20 +69,29 @@ onMounted(() => {
|
|
|
67
69
|
<input
|
|
68
70
|
ref="searchQueryRef"
|
|
69
71
|
v-model="model"
|
|
70
|
-
class="pl-14 focus:ring-2 relative z-10 w-full
|
|
72
|
+
class="pl-14 h-full focus:ring-2 relative z-10 w-full px-5 text-sm md:text-base lg:text-lg bg-transparent border-0"
|
|
71
73
|
:class="{
|
|
72
74
|
'text-gray-dark': defaultColors,
|
|
73
75
|
'py-1': underlinedInput,
|
|
74
|
-
'py-
|
|
76
|
+
'py-3.5 lg:py-5': !underlinedInput
|
|
75
77
|
}"
|
|
76
78
|
type="search"
|
|
77
79
|
aria-label="Query"
|
|
78
80
|
:placeholder="placeholder"
|
|
79
81
|
@keydown.esc="emit('esc')"
|
|
82
|
+
@keydown.enter="emit('submit')"
|
|
80
83
|
@input="emit('input', $event.target)"
|
|
81
84
|
@focus="isFocused = true"
|
|
82
85
|
@blur="isFocused = false"
|
|
83
86
|
/>
|
|
87
|
+
<button
|
|
88
|
+
v-if="withButton"
|
|
89
|
+
class="z-10 cursor-pointer bg-action p-4 lg:p-5 border border-white"
|
|
90
|
+
aria-label="Search resources"
|
|
91
|
+
@click="emit('submit')"
|
|
92
|
+
>
|
|
93
|
+
<IconSearch class="relative z-10 text-xl sm:text-2xl lg:text-3xl text-white" />
|
|
94
|
+
</button>
|
|
84
95
|
</div>
|
|
85
96
|
</template>
|
|
86
97
|
<style lang="scss" scoped>
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { BlockLinkCardCarouselData } from './../../../components/BlockLinkCarousel/BlockLinkCarousel.stories.js'
|
|
2
|
+
import { EventsBlockLinkCarouselData } from './../../../components/BlockLinkCarousel/BlockLinkCarousel.stories'
|
|
3
|
+
import { AboutTheAuthorData } from './../../../components/AboutTheAuthor/AboutTheAuthor.stories'
|
|
4
|
+
import { BlockImageData } from './../../../components/BlockImage/BlockImage.stories'
|
|
5
|
+
import { BlockVideoData } from './../../../components/BlockVideo/BlockVideo.stories'
|
|
6
|
+
import { BlockVideoEmbedData } from './../../../components/BlockVideoEmbed/BlockVideoEmbed.stories'
|
|
7
|
+
import { BlockImageComparisonData } from './../../../components/BlockImageComparison/BlockImageComparison.stories'
|
|
8
|
+
import PageEduHome from './PageEduHome.vue'
|
|
9
|
+
|
|
10
|
+
export default {
|
|
11
|
+
title: 'Templates/EDU/PageEduHome',
|
|
12
|
+
component: PageEduHome,
|
|
13
|
+
tags: ['!autodocs'],
|
|
14
|
+
parameters: {
|
|
15
|
+
html: {
|
|
16
|
+
root: '#storyDecorator'
|
|
17
|
+
},
|
|
18
|
+
layout: 'fullscreen'
|
|
19
|
+
},
|
|
20
|
+
excludeStories: /.*Data$/
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// stories
|
|
24
|
+
export const BaseStory = {
|
|
25
|
+
name: 'PageEduHome',
|
|
26
|
+
args: {
|
|
27
|
+
data: {
|
|
28
|
+
__typename: 'EDUHomePage',
|
|
29
|
+
title: 'EDU Homepage',
|
|
30
|
+
slug: 'edu-home',
|
|
31
|
+
url: '/',
|
|
32
|
+
lastPublishedAt: '2024-08-22T02:33:13.507206+00:00',
|
|
33
|
+
thumbnailImage: {
|
|
34
|
+
alt: '',
|
|
35
|
+
original: 'https://picsum.photos/512/288'
|
|
36
|
+
},
|
|
37
|
+
heroImage: {
|
|
38
|
+
// beach
|
|
39
|
+
src: {
|
|
40
|
+
url: 'https://picsum.photos/id/973/1800/1200',
|
|
41
|
+
width: 1800,
|
|
42
|
+
height: 1200
|
|
43
|
+
},
|
|
44
|
+
// lake
|
|
45
|
+
srcSet:
|
|
46
|
+
'https://picsum.photos/id/865/768/548 768w, https://picsum.photos/id/865/1024/684 1024w, https://picsum.photos/id/865/1440/770 1440w, https://picsum.photos/id/865/1800/963 1800w',
|
|
47
|
+
// jungle
|
|
48
|
+
screenMd: {
|
|
49
|
+
url: 'https://picsum.photos/id/921/800/640'
|
|
50
|
+
},
|
|
51
|
+
// desert
|
|
52
|
+
screenSm: {
|
|
53
|
+
url: 'https://picsum.photos/id/247/640/900'
|
|
54
|
+
},
|
|
55
|
+
alt: 'Robotics detail page hero image'
|
|
56
|
+
},
|
|
57
|
+
heroText: 'Discover a universe of activities & resources',
|
|
58
|
+
hotTopics: [
|
|
59
|
+
{
|
|
60
|
+
page: {
|
|
61
|
+
title: 'Psyche Asteroid',
|
|
62
|
+
url: '/topic/'
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
page: {
|
|
67
|
+
title: 'Mars Rovers',
|
|
68
|
+
url: '/topic/'
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
page: {
|
|
73
|
+
title: 'Webb Space Telescope',
|
|
74
|
+
url: '/topic/'
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
page: {
|
|
79
|
+
title: 'NASA Pi Day',
|
|
80
|
+
url: '/topic/'
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
body: [
|
|
85
|
+
{
|
|
86
|
+
blockType: 'HeadingBlock',
|
|
87
|
+
heading: 'EDU Home',
|
|
88
|
+
level: 'h2',
|
|
89
|
+
size: 'h2'
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
blockType: 'RichTextBlock',
|
|
93
|
+
value:
|
|
94
|
+
'<p>Lorem ipsum <a href="/missions/test-mission/">dolor</a> sit amet, consectetur adipiscing elit. Quisque vitae justo quis justo malesuada molestie. Cras sed tincidunt dui.</p><p>Integer imperdiet blandit neque vitae euismod. Nulla aliquet lacus nibh, vel tincidunt urna efficitur non. In et eros vitae ex posuere maximus quis eget urna. Suspendisse fringilla posuere velit sit amet posuere. Morbi malesuada bibendum vehicula. Donec faucibus ut erat ut mattis. Suspendisse ornare, quam at placerat cursus, dolor mi lacinia nunc, eget maximus augue nulla in dolor.</p>\n'
|
|
95
|
+
}
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { computed, reactive, ref } from 'vue'
|
|
3
|
+
import { useRouter } from 'vue-router'
|
|
4
|
+
import type { ImageObject, PageObject } from '../../../interfaces'
|
|
5
|
+
import SearchInput from './../../../components/SearchInput/SearchInput.vue'
|
|
6
|
+
import BlockStreamfield from './../../../components/BlockStreamfield/BlockStreamfield.vue'
|
|
7
|
+
import BaseLink from './../../../components/BaseLink/BaseLink.vue'
|
|
8
|
+
|
|
9
|
+
const router = useRouter()
|
|
10
|
+
|
|
11
|
+
interface PageEduHomeObject extends PageObject {
|
|
12
|
+
heroImage: ImageObject
|
|
13
|
+
heroText: string
|
|
14
|
+
hotTopics: {
|
|
15
|
+
page: PageObject
|
|
16
|
+
}[]
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
interface PageEduHomeProps {
|
|
20
|
+
data: PageEduHomeObject
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// define props
|
|
24
|
+
const props = withDefaults(defineProps<PageEduHomeProps>(), {
|
|
25
|
+
data: undefined
|
|
26
|
+
})
|
|
27
|
+
|
|
28
|
+
const { data } = reactive(props)
|
|
29
|
+
|
|
30
|
+
const searchQuery = ref(undefined)
|
|
31
|
+
const image = computed(() => {
|
|
32
|
+
return data?.heroImage
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
const submitSearch = () => {
|
|
36
|
+
router.push({ path: '/edu/resources/', query: { query: searchQuery.value } })
|
|
37
|
+
}
|
|
38
|
+
</script>
|
|
39
|
+
<template>
|
|
40
|
+
<div
|
|
41
|
+
v-if="data"
|
|
42
|
+
class="PageEduHome ThemeVariantLight -nav-offset"
|
|
43
|
+
>
|
|
44
|
+
<div class="EduHero max-w-screen-3xl relative mx-auto">
|
|
45
|
+
<div class="absolute inset-0 z-10 bg-black">
|
|
46
|
+
<picture v-if="image?.src">
|
|
47
|
+
<source
|
|
48
|
+
media="(min-width: 768px)"
|
|
49
|
+
:srcset="image.srcSet"
|
|
50
|
+
/>
|
|
51
|
+
<source
|
|
52
|
+
media="(min-width: 420px)"
|
|
53
|
+
:srcset="image.screenMd?.url"
|
|
54
|
+
/>
|
|
55
|
+
<source :srcset="image.screenSm?.url" />
|
|
56
|
+
<img
|
|
57
|
+
class="md:object-right object-cover object-bottom w-full h-full"
|
|
58
|
+
:src="image.src.url"
|
|
59
|
+
:width="image.src.width"
|
|
60
|
+
:height="image.src.height"
|
|
61
|
+
:alt="image.alt"
|
|
62
|
+
/>
|
|
63
|
+
</picture>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="content-wrapper lg:flex lg:items-center relative z-20 w-full h-full">
|
|
66
|
+
<div
|
|
67
|
+
class="bg-gradient-to-b lg:bg-gradient-to-l from-transparent-w25 lg:from-transparent-w50 to-transparent-black-50 lg:to-transparent-black-50 absolute inset-0"
|
|
68
|
+
></div>
|
|
69
|
+
<div class="text-contrast relative w-full text-white">
|
|
70
|
+
<div class="lg:py-0 pb-10 container pt-8 mx-auto">
|
|
71
|
+
<div class="lg:px-10 2xl:px-0 pt-30 lg:pt-16 lg:pb-18 px-4">
|
|
72
|
+
<h1
|
|
73
|
+
v-if="data.heroText"
|
|
74
|
+
class="lg:w-3/4 xl:w-3/4 xl:text-10xl lg:text-9xl text-7xl lg:tracking-tightest lg:leading-tighter mb-5 font-bold leading-tight"
|
|
75
|
+
>
|
|
76
|
+
{{ data.heroText }}
|
|
77
|
+
</h1>
|
|
78
|
+
<div class="md:w-4/5 lg:w-2/3 xl:w-1/2 w-full">
|
|
79
|
+
<SearchInput
|
|
80
|
+
v-model="searchQuery"
|
|
81
|
+
class="bg-white border-none"
|
|
82
|
+
placeholder="Search the K-12 resource library"
|
|
83
|
+
with-button
|
|
84
|
+
@submit="submitSearch()"
|
|
85
|
+
/>
|
|
86
|
+
</div>
|
|
87
|
+
<div
|
|
88
|
+
v-if="data.hotTopics?.length"
|
|
89
|
+
class="md:flex flex-row mt-10"
|
|
90
|
+
>
|
|
91
|
+
<h2
|
|
92
|
+
class="text-subtitle mt-1 text-white font-semibold whitespace-nowrap mr-5 mb-3 md:mb-0 lg:mr-8"
|
|
93
|
+
>
|
|
94
|
+
Hot Topics
|
|
95
|
+
</h2>
|
|
96
|
+
<ul class="flex flex-row flex-wrap">
|
|
97
|
+
<li
|
|
98
|
+
v-for="(topic, index) in data.hotTopics"
|
|
99
|
+
:key="index"
|
|
100
|
+
class="mr-2 mb-2"
|
|
101
|
+
>
|
|
102
|
+
<BaseLink
|
|
103
|
+
variant="none"
|
|
104
|
+
:to="`/edu/resources?query=${topic.page?.title}`"
|
|
105
|
+
link-class="text-gray-dark whitespace-nowrap text-sm bg-[#99D1DF] font-extrabold rounded-full inline-block px-3 py-1 text-contrast-none hover:bg-action hover:text-white"
|
|
106
|
+
>
|
|
107
|
+
{{ topic.page?.title }}
|
|
108
|
+
</BaseLink>
|
|
109
|
+
</li>
|
|
110
|
+
</ul>
|
|
111
|
+
</div>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
</div>
|
|
117
|
+
|
|
118
|
+
<div
|
|
119
|
+
v-if="data.body?.length"
|
|
120
|
+
class="my-10 lg:my-18"
|
|
121
|
+
>
|
|
122
|
+
<BlockStreamfield
|
|
123
|
+
v-if="data.body?.length"
|
|
124
|
+
:data="data.body"
|
|
125
|
+
/>
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
</template>
|
|
129
|
+
<style lang="scss">
|
|
130
|
+
.PageEduHome {
|
|
131
|
+
.EduHero {
|
|
132
|
+
.content-wrapper {
|
|
133
|
+
@screen lg {
|
|
134
|
+
min-height: 548px; // maintains 1440x770 aspect ratio
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
@screen xl {
|
|
138
|
+
min-height: 684px; // maintains 1440x770 aspect ratio
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
@screen 2xl {
|
|
142
|
+
min-height: 770px; // 1440x770
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
@screen 3xl {
|
|
146
|
+
min-height: 963px; // maintains 1440x770 aspect ratio
|
|
147
|
+
}
|
|
148
|
+
input::placeholder {
|
|
149
|
+
@apply font-medium text-gray-dark opacity-80;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
</style>
|
|
@@ -252,7 +252,8 @@ const consolidatedSections = computed((): EduLessonSectionObject[] => {
|
|
|
252
252
|
heading: staticSectionHeadings.value ? staticSectionHeadings.value[section] : undefined,
|
|
253
253
|
blocks: section !== 'materials' && section !== 'procedures' ? data[section] : undefined,
|
|
254
254
|
text: section === 'materials' ? data[section] : undefined,
|
|
255
|
-
procedures: section === 'procedures' ? data[section] : undefined
|
|
255
|
+
procedures: section === 'procedures' ? data[section] : undefined,
|
|
256
|
+
image: data[`${section}Image`]
|
|
256
257
|
})
|
|
257
258
|
}
|
|
258
259
|
// include custom "after_" sections
|
|
@@ -271,12 +272,11 @@ const consolidatedSections = computed((): EduLessonSectionObject[] => {
|
|
|
271
272
|
return filteredSections
|
|
272
273
|
})
|
|
273
274
|
const computedClass = computed((): string => {
|
|
274
|
-
if (
|
|
275
|
-
return 'pt-5 lg:pt-12'
|
|
276
|
-
} else if (!heroInline.value) {
|
|
275
|
+
if (heroTitle.value) {
|
|
277
276
|
return '-nav-offset'
|
|
277
|
+
} else {
|
|
278
|
+
return 'pt-5 lg:pt-12'
|
|
278
279
|
}
|
|
279
|
-
return ''
|
|
280
280
|
})
|
|
281
281
|
</script>
|
|
282
282
|
<template>
|
|
@@ -355,7 +355,6 @@ const computedClass = computed((): string => {
|
|
|
355
355
|
:constrain="data.heroConstrain"
|
|
356
356
|
/>
|
|
357
357
|
|
|
358
|
-
<!-- TODO: put this in a component (exclude layout though) -->
|
|
359
358
|
<LayoutHelper
|
|
360
359
|
v-if="!heroEmpty && heroInline && data.hero?.length"
|
|
361
360
|
class="lg:mb-22 mb-10"
|