@codecademy/brand 3.40.1-alpha.db88c958d7.0 → 4.0.0-alpha.0ae245495b.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/dist/AbbreviatedCommunityEventCard/index.cjs +89 -0
- package/dist/AbbreviatedCommunityEventCard/index.d.cts +11 -0
- package/dist/AbbreviatedCommunityEventCard/index.d.ts +10 -7
- package/dist/AbbreviatedCommunityEventCard/index.js +86 -98
- package/dist/AppBar/AppBarSection.cjs +40 -0
- package/dist/AppBar/AppBarSection.d.cts +15 -0
- package/dist/AppBar/AppBarSection.d.ts +15 -10
- package/dist/AppBar/AppBarSection.js +35 -39
- package/dist/AppBar/index.cjs +22 -0
- package/dist/AppBar/index.d.cts +13 -0
- package/dist/AppBar/index.d.ts +12 -8
- package/dist/AppBar/index.js +20 -20
- package/dist/AppBarDeprecated/AppBarSectionDeprecated.cjs +26 -0
- package/dist/AppBarDeprecated/AppBarSectionDeprecated.d.cts +18 -0
- package/dist/AppBarDeprecated/AppBarSectionDeprecated.d.ts +13 -9
- package/dist/AppBarDeprecated/AppBarSectionDeprecated.js +21 -23
- package/dist/AppBarDeprecated/index.cjs +27 -0
- package/dist/AppBarDeprecated/index.d.cts +18 -0
- package/dist/AppBarDeprecated/index.d.ts +13 -9
- package/dist/AppBarDeprecated/index.js +22 -24
- package/dist/AppBarDeprecated/styles/index.module.cjs +5 -0
- package/dist/AppBarDeprecated/styles/index.module.js +5 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/MarketingBanner.cjs +134 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/MarketingBanner.js +132 -109
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/NavPanels.cjs +300 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/NavPanels.js +288 -336
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/consts.cjs +274 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/consts.js +270 -226
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/index.cjs +110 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/index.d.cts +8 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/index.d.ts +9 -5
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/index.js +107 -123
- package/dist/AppHeader/AppHeaderElements/AppHeaderDietCard/index.cjs +114 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderDietCard/index.js +112 -124
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdown/index.cjs +97 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdown/index.d.cts +16 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdown/index.d.ts +16 -11
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdown/index.js +94 -113
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdownProvider/index.cjs +36 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdownProvider/index.js +29 -27
- package/dist/AppHeader/AppHeaderElements/AppHeaderFeatureCard/index.cjs +61 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderFeatureCard/index.js +59 -56
- package/dist/AppHeader/AppHeaderElements/AppHeaderLink/index.cjs +59 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLink/index.d.cts +56 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLink/index.d.ts +53 -44
- package/dist/AppHeader/AppHeaderElements/AppHeaderLink/index.js +56 -70
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/elements.cjs +34 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/elements.js +32 -36
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/index.cjs +44 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/index.js +41 -59
- package/dist/AppHeader/AppHeaderElements/AppHeaderListItem/index.cjs +26 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderListItem/index.js +23 -32
- package/dist/AppHeader/AppHeaderElements/AppHeaderLogo/index.cjs +53 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLogo/index.d.cts +10 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderLogo/index.d.ts +10 -5
- package/dist/AppHeader/AppHeaderElements/AppHeaderLogo/index.js +49 -55
- package/dist/AppHeader/AppHeaderElements/AppHeaderMenuProvider/index.cjs +85 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderMenuProvider/index.js +80 -86
- package/dist/AppHeader/AppHeaderElements/AppHeaderNavButton/index.cjs +80 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderNavButton/index.js +76 -101
- package/dist/AppHeader/AppHeaderElements/AppHeaderProvider/index.cjs +25 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderProvider/index.js +20 -17
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/NavPanels.cjs +118 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/NavPanels.js +110 -131
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/consts.cjs +341 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/consts.js +335 -291
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/index.cjs +105 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/index.d.cts +8 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/index.d.ts +9 -5
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/index.js +102 -118
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/AppHeaderSectionContext.cjs +18 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/AppHeaderSectionContext.js +15 -10
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileBackButton.cjs +85 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileBackButton.js +83 -89
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileNavMenu.cjs +51 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileNavMenu.js +49 -61
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/NavTabs.cjs +105 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/NavTabs.js +98 -125
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/PanelLayout.cjs +84 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/PanelLayout.js +83 -81
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/elements.cjs +179 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/elements.js +168 -118
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/index.cjs +119 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/index.js +117 -145
- package/dist/AppHeader/AppHeaderElements/AppHeaderSkillTile/index.cjs +55 -0
- package/dist/AppHeader/AppHeaderElements/AppHeaderSkillTile/index.js +53 -65
- package/dist/AppHeader/Search/DefaultResults.cjs +105 -0
- package/dist/AppHeader/Search/DefaultResults.js +101 -111
- package/dist/AppHeader/Search/QuizAndHelpCenterLinks.cjs +70 -0
- package/dist/AppHeader/Search/QuizAndHelpCenterLinks.js +68 -79
- package/dist/AppHeader/Search/SearchButton.cjs +50 -0
- package/dist/AppHeader/Search/SearchButton.js +46 -71
- package/dist/AppHeader/Search/SearchPane.cjs +482 -0
- package/dist/AppHeader/Search/SearchPane.js +472 -595
- package/dist/AppHeader/Search/SearchTrackingProvider/index.cjs +32 -0
- package/dist/AppHeader/Search/SearchTrackingProvider/index.js +26 -23
- package/dist/AppHeader/Search/SearchWorker/PromiseLookup.cjs +43 -0
- package/dist/AppHeader/Search/SearchWorker/PromiseLookup.js +43 -35
- package/dist/AppHeader/Search/SearchWorker/index.cjs +24 -0
- package/dist/AppHeader/Search/SearchWorker/index.d.cts +10 -0
- package/dist/AppHeader/Search/SearchWorker/index.d.ts +9 -4
- package/dist/AppHeader/Search/SearchWorker/index.js +23 -23
- package/dist/AppHeader/Search/SearchWorker/src.cjs +159 -0
- package/dist/AppHeader/Search/SearchWorker/src.js +153 -305
- package/dist/AppHeader/Search/SearchWorker/types.cjs +10 -0
- package/dist/AppHeader/Search/SearchWorker/types.d.cts +30 -0
- package/dist/AppHeader/Search/SearchWorker/types.d.ts +23 -30
- package/dist/AppHeader/Search/SearchWorker/types.js +9 -5
- package/dist/AppHeader/Search/SearchWorker/worker.cjs +26 -0
- package/dist/AppHeader/Search/SearchWorker/worker.js +24 -29
- package/dist/AppHeader/Search/consts.cjs +68 -0
- package/dist/AppHeader/Search/consts.d.cts +26 -0
- package/dist/AppHeader/Search/consts.d.ts +23 -20
- package/dist/AppHeader/Search/consts.js +62 -39
- package/dist/AppHeader/Search/hooks/useUrlChangeDetection.cjs +17 -0
- package/dist/AppHeader/Search/hooks/useUrlChangeDetection.js +16 -14
- package/dist/AppHeader/Search/safelyRedirect.cjs +39 -0
- package/dist/AppHeader/Search/safelyRedirect.js +32 -42
- package/dist/AppHeader/Search/types.d.cts +14 -0
- package/dist/AppHeader/Search/types.d.ts +11 -19
- package/dist/AppHeader/Search/useHeaderSearch.cjs +39 -0
- package/dist/AppHeader/Search/useHeaderSearch.js +38 -40
- package/dist/AppHeader/index.cjs +97 -0
- package/dist/AppHeader/index.d.cts +28 -0
- package/dist/AppHeader/index.d.ts +28 -22
- package/dist/AppHeader/index.js +90 -98
- package/dist/AppHeader/shared/elements.cjs +172 -0
- package/dist/AppHeader/shared/elements.d.ts +9 -90
- package/dist/AppHeader/shared/elements.js +152 -243
- package/dist/AppHeader/shared/index.d.ts +4 -4
- package/dist/AppHeader/shared/keyboardNav.cjs +67 -0
- package/dist/AppHeader/shared/keyboardNav.d.ts +1 -23
- package/dist/AppHeader/shared/keyboardNav.js +63 -65
- package/dist/AppHeader/shared/mockAppHeaderItems.d.ts +1 -2
- package/dist/AppHeader/shared/types.cjs +6 -0
- package/dist/AppHeader/shared/types.d.cts +111 -0
- package/dist/AppHeader/shared/types.d.ts +108 -105
- package/dist/AppHeader/shared/types.js +5 -1
- package/dist/AppHeader/shared/utils.cjs +85 -0
- package/dist/AppHeader/shared/utils.js +84 -100
- package/dist/AppHeaderMobile/AppHeaderMainMenuMobile/index.cjs +126 -0
- package/dist/AppHeaderMobile/AppHeaderMainMenuMobile/index.d.cts +12 -0
- package/dist/AppHeaderMobile/AppHeaderMainMenuMobile/index.d.ts +12 -7
- package/dist/AppHeaderMobile/AppHeaderMainMenuMobile/index.js +121 -140
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/elements.cjs +29 -0
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/elements.js +26 -30
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/index.cjs +110 -0
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/index.d.cts +12 -0
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/index.d.ts +11 -7
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/index.js +105 -122
- package/dist/AppHeaderMobile/AppHeaderSubMenuTarget/index.cjs +61 -0
- package/dist/AppHeaderMobile/AppHeaderSubMenuTarget/index.js +58 -60
- package/dist/AppHeaderMobile/index.cjs +194 -0
- package/dist/AppHeaderMobile/index.d.cts +24 -0
- package/dist/AppHeaderMobile/index.d.ts +26 -19
- package/dist/AppHeaderMobile/index.js +191 -214
- package/dist/Avatar/index.cjs +52 -0
- package/dist/Avatar/index.d.cts +40 -0
- package/dist/Avatar/index.d.ts +37 -33
- package/dist/Avatar/index.js +49 -45
- package/dist/AvatarChooser/index.cjs +99 -0
- package/dist/AvatarChooser/index.d.cts +15 -0
- package/dist/AvatarChooser/index.d.ts +13 -10
- package/dist/AvatarChooser/index.js +93 -102
- package/dist/BackToTopAnchor/index.cjs +33 -0
- package/dist/BackToTopAnchor/index.d.cts +15 -0
- package/dist/BackToTopAnchor/index.d.ts +13 -11
- package/dist/BackToTopAnchor/index.js +31 -37
- package/dist/Banner/CountdownTimer.cjs +111 -0
- package/dist/Banner/CountdownTimer.d.cts +10 -0
- package/dist/Banner/CountdownTimer.d.ts +8 -5
- package/dist/Banner/CountdownTimer.js +103 -104
- package/dist/Banner/EnhancedBanner.cjs +142 -0
- package/dist/Banner/EnhancedBanner.d.cts +20 -0
- package/dist/Banner/EnhancedBanner.d.ts +19 -16
- package/dist/Banner/EnhancedBanner.js +136 -169
- package/dist/Banner/index.cjs +83 -0
- package/dist/Banner/index.d.cts +24 -0
- package/dist/Banner/index.d.ts +21 -18
- package/dist/Banner/index.js +73 -95
- package/dist/BetaSticker/index.cjs +63 -0
- package/dist/BetaSticker/index.d.cts +9 -0
- package/dist/BetaSticker/index.d.ts +7 -4
- package/dist/BetaSticker/index.js +60 -57
- package/dist/CareerPathCard/index.cjs +34 -0
- package/dist/CareerPathCard/index.d.cts +26 -0
- package/dist/CareerPathCard/index.d.ts +24 -20
- package/dist/CareerPathCard/index.js +33 -49
- package/dist/Carousel/elements.cjs +12 -0
- package/dist/Carousel/elements.js +10 -14
- package/dist/Carousel/index.cjs +194 -0
- package/dist/Carousel/index.d.cts +27 -0
- package/dist/Carousel/index.d.ts +24 -21
- package/dist/Carousel/index.js +185 -247
- package/dist/CertificationPathCard/index.cjs +41 -0
- package/dist/CertificationPathCard/index.d.cts +27 -0
- package/dist/CertificationPathCard/index.d.ts +24 -20
- package/dist/CertificationPathCard/index.js +40 -52
- package/dist/CoachingSessionCard/index.cjs +87 -0
- package/dist/CoachingSessionCard/index.d.cts +24 -0
- package/dist/CoachingSessionCard/index.d.ts +23 -20
- package/dist/CoachingSessionCard/index.js +84 -73
- package/dist/CommunityEventCard/EventTypeIcon.cjs +61 -0
- package/dist/CommunityEventCard/EventTypeIcon.js +59 -58
- package/dist/CommunityEventCard/index.cjs +260 -0
- package/dist/CommunityEventCard/index.d.cts +31 -0
- package/dist/CommunityEventCard/index.d.ts +30 -27
- package/dist/CommunityEventCard/index.js +253 -302
- package/dist/CommunityEventToast/index.cjs +35 -0
- package/dist/CommunityEventToast/index.d.cts +9 -0
- package/dist/CommunityEventToast/index.d.ts +7 -4
- package/dist/CommunityEventToast/index.js +33 -32
- package/dist/ContentGroupBaseCard/helpers.cjs +15 -0
- package/dist/ContentGroupBaseCard/helpers.d.cts +8 -0
- package/dist/ContentGroupBaseCard/helpers.d.ts +8 -4
- package/dist/ContentGroupBaseCard/helpers.js +12 -11
- package/dist/ContentGroupBaseCard/index.cjs +215 -0
- package/dist/ContentGroupBaseCard/index.d.cts +40 -0
- package/dist/ContentGroupBaseCard/index.d.ts +38 -31
- package/dist/ContentGroupBaseCard/index.js +209 -236
- package/dist/ContentGroupBaseCard/shared.cjs +80 -0
- package/dist/ContentGroupBaseCard/shared.js +73 -67
- package/dist/ContentGroupBaseCard/types.cjs +18 -0
- package/dist/ContentGroupBaseCard/types.d.cts +13 -0
- package/dist/ContentGroupBaseCard/types.d.ts +11 -8
- package/dist/ContentGroupBaseCard/types.js +15 -11
- package/dist/CourseCard/index.cjs +32 -0
- package/dist/CourseCard/index.d.cts +25 -0
- package/dist/CourseCard/index.d.ts +24 -19
- package/dist/CourseCard/index.js +31 -45
- package/dist/CurriculumCard/BottomTag/index.cjs +30 -0
- package/dist/CurriculumCard/BottomTag/index.d.cts +4 -0
- package/dist/CurriculumCard/BottomTag/index.d.ts +6 -7
- package/dist/CurriculumCard/BottomTag/index.js +26 -24
- package/dist/CurriculumCard/Difficulty/helpers.cjs +17 -0
- package/dist/CurriculumCard/Difficulty/helpers.d.cts +13 -0
- package/dist/CurriculumCard/Difficulty/helpers.d.ts +7 -2
- package/dist/CurriculumCard/Difficulty/helpers.js +15 -11
- package/dist/CurriculumCard/Difficulty/index.cjs +45 -0
- package/dist/CurriculumCard/Difficulty/index.d.cts +7 -0
- package/dist/CurriculumCard/Difficulty/index.d.ts +7 -3
- package/dist/CurriculumCard/Difficulty/index.js +40 -47
- package/dist/CurriculumCard/Difficulty/types.cjs +21 -0
- package/dist/CurriculumCard/Difficulty/types.d.cts +25 -0
- package/dist/CurriculumCard/Difficulty/types.d.ts +16 -13
- package/dist/CurriculumCard/Difficulty/types.js +16 -17
- package/dist/CurriculumCard/Footer/index.cjs +49 -0
- package/dist/CurriculumCard/Footer/index.js +47 -54
- package/dist/CurriculumCard/Image/index.cjs +50 -0
- package/dist/CurriculumCard/Image/index.js +43 -52
- package/dist/CurriculumCard/Subtitle/helpers.cjs +9 -0
- package/dist/CurriculumCard/Subtitle/helpers.js +8 -8
- package/dist/CurriculumCard/Subtitle/index.cjs +40 -0
- package/dist/CurriculumCard/Subtitle/index.d.cts +10 -0
- package/dist/CurriculumCard/Subtitle/index.d.ts +10 -7
- package/dist/CurriculumCard/Subtitle/index.js +37 -34
- package/dist/CurriculumCard/index.cjs +122 -0
- package/dist/CurriculumCard/index.d.cts +63 -0
- package/dist/CurriculumCard/index.d.ts +56 -52
- package/dist/CurriculumCard/index.js +114 -124
- package/dist/DropdownButton/DropdownList.cjs +57 -0
- package/dist/DropdownButton/DropdownList.d.cts +19 -0
- package/dist/DropdownButton/DropdownList.d.ts +16 -14
- package/dist/DropdownButton/DropdownList.js +55 -73
- package/dist/DropdownButton/index.cjs +140 -0
- package/dist/DropdownButton/index.d.cts +80 -0
- package/dist/DropdownButton/index.d.ts +75 -69
- package/dist/DropdownButton/index.js +137 -169
- package/dist/DropdownButton/useDynamicPopoverPosition.cjs +41 -0
- package/dist/DropdownButton/useDynamicPopoverPosition.js +34 -49
- package/dist/EditorialImage/index.cjs +21 -0
- package/dist/EditorialImage/index.d.cts +14 -0
- package/dist/EditorialImage/index.d.ts +13 -9
- package/dist/EditorialImage/index.js +18 -21
- package/dist/EditorialImage/styles.module.cjs +5 -0
- package/dist/EditorialImage/styles.module.js +5 -0
- package/dist/EmptySection/index.cjs +159 -0
- package/dist/EmptySection/index.d.cts +32 -0
- package/dist/EmptySection/index.d.ts +32 -27
- package/dist/EmptySection/index.js +154 -181
- package/dist/ErrorContents/index.cjs +64 -0
- package/dist/ErrorContents/index.d.cts +12 -0
- package/dist/ErrorContents/index.d.ts +11 -7
- package/dist/ErrorContents/index.js +62 -48
- package/dist/FeatureList/index.cjs +41 -0
- package/dist/FeatureList/index.d.cts +18 -0
- package/dist/FeatureList/index.d.ts +16 -9
- package/dist/FeatureList/index.js +39 -41
- package/dist/GlobalFooter/FooterHeading.cjs +28 -0
- package/dist/GlobalFooter/FooterHeading.js +25 -29
- package/dist/GlobalFooter/FooterLegal/LegalLinks.cjs +77 -0
- package/dist/GlobalFooter/FooterLegal/LegalLinks.js +74 -43
- package/dist/GlobalFooter/FooterLegal/MadeIn.cjs +79 -0
- package/dist/GlobalFooter/FooterLegal/MadeIn.js +75 -63
- package/dist/GlobalFooter/FooterLegal/index.cjs +29 -0
- package/dist/GlobalFooter/FooterLegal/index.js +26 -22
- package/dist/GlobalFooter/FooterLinks.cjs +51 -0
- package/dist/GlobalFooter/FooterLinks.js +45 -52
- package/dist/GlobalFooter/FooterNavLinks/CatalogLinks.cjs +297 -0
- package/dist/GlobalFooter/FooterNavLinks/CatalogLinks.js +288 -292
- package/dist/GlobalFooter/FooterNavLinks/CompanyLinks.cjs +254 -0
- package/dist/GlobalFooter/FooterNavLinks/CompanyLinks.js +251 -286
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferAFriendLinkWithModal.cjs +246 -0
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferAFriendLinkWithModal.js +242 -271
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralFields.cjs +27 -0
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralFields.js +25 -29
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralForm.cjs +72 -0
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralForm.js +67 -75
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralLinkSocialMediaSharing.cjs +70 -0
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralLinkSocialMediaSharing.js +69 -86
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/types.d.cts +7 -0
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/types.d.ts +6 -3
- package/dist/GlobalFooter/FooterNavLinks/SocialMediaLinks.cjs +59 -0
- package/dist/GlobalFooter/FooterNavLinks/SocialMediaLinks.js +57 -50
- package/dist/GlobalFooter/FooterNavLinks/assets/download-on-the-app-store.cjs +5 -0
- package/dist/GlobalFooter/FooterNavLinks/assets/download-on-the-app-store.js +5 -0
- package/dist/GlobalFooter/FooterNavLinks/assets/get-it-on-google-play.cjs +5 -0
- package/dist/GlobalFooter/FooterNavLinks/assets/get-it-on-google-play.js +5 -0
- package/dist/GlobalFooter/FooterNavLinks/index.cjs +44 -0
- package/dist/GlobalFooter/FooterNavLinks/index.js +41 -43
- package/dist/GlobalFooter/index.cjs +38 -0
- package/dist/GlobalFooter/index.d.cts +26 -0
- package/dist/GlobalFooter/index.d.ts +25 -21
- package/dist/GlobalFooter/index.js +35 -37
- package/dist/GlobalFooter/types.d.cts +16 -0
- package/dist/GlobalFooter/types.d.ts +14 -11
- package/dist/GlobalHeader/GlobalHeaderItems.cjs +443 -0
- package/dist/GlobalHeader/GlobalHeaderItems.js +375 -378
- package/dist/GlobalHeader/GlobalHeaderVariants.cjs +351 -0
- package/dist/GlobalHeader/GlobalHeaderVariants.js +304 -349
- package/dist/GlobalHeader/context.cjs +82 -0
- package/dist/GlobalHeader/context.js +69 -72
- package/dist/GlobalHeader/index.cjs +171 -0
- package/dist/GlobalHeader/index.d.cts +10 -0
- package/dist/GlobalHeader/index.d.ts +10 -7
- package/dist/GlobalHeader/index.js +165 -194
- package/dist/GlobalHeader/types.d.cts +124 -0
- package/dist/GlobalHeader/types.d.ts +104 -99
- package/dist/GlobalHeader/urlHelpers.cjs +22 -0
- package/dist/GlobalHeader/urlHelpers.js +19 -20
- package/dist/GlobalPage/index.cjs +45 -0
- package/dist/GlobalPage/index.d.cts +51 -0
- package/dist/GlobalPage/index.d.ts +46 -43
- package/dist/GlobalPage/index.js +42 -59
- package/dist/Grid/GridCollapse.cjs +161 -0
- package/dist/Grid/GridCollapse.d.cts +49 -0
- package/dist/Grid/GridCollapse.d.ts +47 -39
- package/dist/Grid/GridCollapse.js +152 -194
- package/dist/Grid/Subgrid.cjs +41 -0
- package/dist/Grid/Subgrid.d.cts +29 -0
- package/dist/Grid/Subgrid.d.ts +11 -5
- package/dist/Grid/Subgrid.js +37 -35
- package/dist/Grid/getCSSFromColumnCount.cjs +10 -0
- package/dist/Grid/getCSSFromColumnCount.d.cts +10 -0
- package/dist/Grid/getCSSFromColumnCount.d.ts +10 -6
- package/dist/Grid/getCSSFromColumnCount.js +9 -7
- package/dist/Grid/index.cjs +9 -0
- package/dist/Grid/index.d.cts +4 -0
- package/dist/Grid/index.d.ts +4 -3
- package/dist/Grid/index.js +5 -3
- package/dist/HeaderHeightArea/index.cjs +38 -0
- package/dist/HeaderHeightArea/index.d.cts +13 -0
- package/dist/HeaderHeightArea/index.d.ts +12 -8
- package/dist/HeaderHeightArea/index.js +35 -40
- package/dist/HeaderHeightArea/useIsInHeaderRegion.cjs +17 -0
- package/dist/HeaderHeightArea/useIsInHeaderRegion.js +15 -14
- package/dist/HorizontalScrollMenu/index.cjs +68 -0
- package/dist/HorizontalScrollMenu/index.d.cts +10 -0
- package/dist/HorizontalScrollMenu/index.d.ts +10 -6
- package/dist/HorizontalScrollMenu/index.js +65 -75
- package/dist/HubCard/index.cjs +40 -0
- package/dist/HubCard/index.d.cts +12 -0
- package/dist/HubCard/index.d.ts +11 -7
- package/dist/HubCard/index.js +38 -38
- package/dist/InfoCard/index.cjs +121 -0
- package/dist/InfoCard/index.d.cts +23 -0
- package/dist/InfoCard/index.d.ts +22 -18
- package/dist/InfoCard/index.js +109 -147
- package/dist/Konamimojisplosion/Konamimojisplosion.cjs +10 -0
- package/dist/Konamimojisplosion/Konamimojisplosion.d.cts +9 -0
- package/dist/Konamimojisplosion/Konamimojisplosion.d.ts +8 -4
- package/dist/Konamimojisplosion/Konamimojisplosion.js +10 -7
- package/dist/Konamimojisplosion/index.cjs +5 -0
- package/dist/Konamimojisplosion/index.d.cts +3 -0
- package/dist/Konamimojisplosion/index.d.ts +3 -2
- package/dist/Konamimojisplosion/index.js +4 -2
- package/dist/Konamimojisplosion/useKonamimojisplosion.cjs +47 -0
- package/dist/Konamimojisplosion/useKonamimojisplosion.d.cts +4 -0
- package/dist/Konamimojisplosion/useKonamimojisplosion.d.ts +4 -1
- package/dist/Konamimojisplosion/useKonamimojisplosion.js +44 -32
- package/dist/LandingPage/CTA.cjs +11 -0
- package/dist/LandingPage/CTA.js +9 -11
- package/dist/LandingPage/Description.cjs +18 -0
- package/dist/LandingPage/Description.d.cts +10 -0
- package/dist/LandingPage/Description.d.ts +9 -5
- package/dist/LandingPage/Description.js +16 -14
- package/dist/LandingPage/Feature.cjs +89 -0
- package/dist/LandingPage/Feature.js +75 -90
- package/dist/LandingPage/PageFAQs.cjs +49 -0
- package/dist/LandingPage/PageFAQs.d.cts +14 -0
- package/dist/LandingPage/PageFAQs.d.ts +13 -9
- package/dist/LandingPage/PageFAQs.js +46 -42
- package/dist/LandingPage/PageFeatures.cjs +99 -0
- package/dist/LandingPage/PageFeatures.d.cts +20 -0
- package/dist/LandingPage/PageFeatures.d.ts +19 -15
- package/dist/LandingPage/PageFeatures.js +91 -106
- package/dist/LandingPage/PageFeaturesEnhanced.cjs +152 -0
- package/dist/LandingPage/PageFeaturesEnhanced.d.cts +11 -0
- package/dist/LandingPage/PageFeaturesEnhanced.d.ts +10 -6
- package/dist/LandingPage/PageFeaturesEnhanced.js +144 -153
- package/dist/LandingPage/PageFeaturesWithReferences.cjs +128 -0
- package/dist/LandingPage/PageFeaturesWithReferences.d.cts +23 -0
- package/dist/LandingPage/PageFeaturesWithReferences.d.ts +22 -18
- package/dist/LandingPage/PageFeaturesWithReferences.js +126 -137
- package/dist/LandingPage/PageHero.cjs +20 -0
- package/dist/LandingPage/PageHero.d.cts +11 -0
- package/dist/LandingPage/PageHero.d.ts +10 -6
- package/dist/LandingPage/PageHero.js +16 -20
- package/dist/LandingPage/PagePrefooter.cjs +66 -0
- package/dist/LandingPage/PagePrefooter.d.cts +9 -0
- package/dist/LandingPage/PagePrefooter.d.ts +8 -4
- package/dist/LandingPage/PagePrefooter.js +64 -74
- package/dist/LandingPage/PageSingleFeature.cjs +108 -0
- package/dist/LandingPage/PageSingleFeature.d.cts +60 -0
- package/dist/LandingPage/PageSingleFeature.d.ts +54 -50
- package/dist/LandingPage/PageSingleFeature.js +104 -127
- package/dist/LandingPage/PageTestimonials.cjs +108 -0
- package/dist/LandingPage/PageTestimonials.d.cts +25 -0
- package/dist/LandingPage/PageTestimonials.d.ts +23 -19
- package/dist/LandingPage/PageTestimonials.js +99 -107
- package/dist/LandingPage/PageVideoGallery.cjs +70 -0
- package/dist/LandingPage/PageVideoGallery.d.cts +15 -0
- package/dist/LandingPage/PageVideoGallery.d.ts +13 -9
- package/dist/LandingPage/PageVideoGallery.js +67 -49
- package/dist/LandingPage/Title.cjs +33 -0
- package/dist/LandingPage/Title.d.cts +27 -0
- package/dist/LandingPage/Title.d.ts +23 -19
- package/dist/LandingPage/Title.js +29 -27
- package/dist/LandingPage/TitleWithEyebrow.cjs +39 -0
- package/dist/LandingPage/TitleWithEyebrow.d.cts +15 -0
- package/dist/LandingPage/TitleWithEyebrow.d.ts +14 -10
- package/dist/LandingPage/TitleWithEyebrow.js +37 -40
- package/dist/LandingPage/index.cjs +29 -0
- package/dist/LandingPage/index.d.cts +15 -0
- package/dist/LandingPage/index.d.ts +15 -14
- package/dist/LandingPage/index.js +15 -14
- package/dist/LandingPage/types.d.cts +31 -0
- package/dist/LandingPage/types.d.ts +30 -27
- package/dist/LayoutMenu/AccordionMenu.cjs +64 -0
- package/dist/LayoutMenu/AccordionMenu.d.cts +18 -0
- package/dist/LayoutMenu/AccordionMenu.d.ts +16 -24
- package/dist/LayoutMenu/AccordionMenu.js +59 -70
- package/dist/LayoutMenu/LayoutMenu.cjs +107 -0
- package/dist/LayoutMenu/LayoutMenu.d.cts +48 -0
- package/dist/LayoutMenu/LayoutMenu.d.ts +47 -43
- package/dist/LayoutMenu/LayoutMenu.js +105 -119
- package/dist/LayoutMenu/LayoutMenuSection.cjs +38 -0
- package/dist/LayoutMenu/LayoutMenuSection.js +36 -39
- package/dist/LayoutMenu/SectionItemLink.cjs +19 -0
- package/dist/LayoutMenu/SectionItemLink.d.cts +11 -0
- package/dist/LayoutMenu/SectionItemLink.d.ts +10 -6
- package/dist/LayoutMenu/SectionItemLink.js +17 -16
- package/dist/LayoutMenu/SelectedSectionItem.cjs +22 -0
- package/dist/LayoutMenu/SelectedSectionItem.d.cts +7 -0
- package/dist/LayoutMenu/SelectedSectionItem.d.ts +7 -3
- package/dist/LayoutMenu/SelectedSectionItem.js +20 -17
- package/dist/LayoutMenu/index.cjs +7 -0
- package/dist/LayoutMenu/index.d.cts +4 -0
- package/dist/LayoutMenu/index.d.ts +4 -3
- package/dist/LayoutMenu/index.js +5 -3
- package/dist/LayoutMenuVariant/AccordionMenu.cjs +76 -0
- package/dist/LayoutMenuVariant/AccordionMenu.d.cts +19 -0
- package/dist/LayoutMenuVariant/AccordionMenu.d.ts +17 -19
- package/dist/LayoutMenuVariant/AccordionMenu.js +72 -86
- package/dist/LayoutMenuVariant/LayoutMenu.cjs +88 -0
- package/dist/LayoutMenuVariant/LayoutMenu.d.cts +43 -0
- package/dist/LayoutMenuVariant/LayoutMenu.d.ts +42 -38
- package/dist/LayoutMenuVariant/LayoutMenu.js +85 -93
- package/dist/LayoutMenuVariant/LayoutMenuSection.cjs +37 -0
- package/dist/LayoutMenuVariant/LayoutMenuSection.js +33 -41
- package/dist/LayoutMenuVariant/SectionItemLink.cjs +19 -0
- package/dist/LayoutMenuVariant/SectionItemLink.d.cts +12 -0
- package/dist/LayoutMenuVariant/SectionItemLink.d.ts +11 -7
- package/dist/LayoutMenuVariant/SectionItemLink.js +17 -17
- package/dist/LayoutMenuVariant/index.cjs +19 -0
- package/dist/LayoutMenuVariant/index.d.cts +9 -0
- package/dist/LayoutMenuVariant/index.d.ts +9 -2
- package/dist/LayoutMenuVariant/index.js +12 -2
- package/dist/LearningOutcomeAssessmentScores/AssessmentDetail.cjs +52 -0
- package/dist/LearningOutcomeAssessmentScores/AssessmentDetail.js +50 -55
- package/dist/LearningOutcomeAssessmentScores/index.cjs +25 -0
- package/dist/LearningOutcomeAssessmentScores/index.d.cts +10 -0
- package/dist/LearningOutcomeAssessmentScores/index.d.ts +8 -6
- package/dist/LearningOutcomeAssessmentScores/index.js +24 -24
- package/dist/LearningOutcomeBadges/LearningOutcomeLevelBadge.cjs +50 -0
- package/dist/LearningOutcomeBadges/LearningOutcomeLevelBadge.d.cts +21 -0
- package/dist/LearningOutcomeBadges/LearningOutcomeLevelBadge.d.ts +17 -14
- package/dist/LearningOutcomeBadges/LearningOutcomeLevelBadge.js +44 -55
- package/dist/LearningOutcomeBadges/LearningOutcomeLowAssessmentBadge.cjs +38 -0
- package/dist/LearningOutcomeBadges/LearningOutcomeLowAssessmentBadge.d.cts +18 -0
- package/dist/LearningOutcomeBadges/LearningOutcomeLowAssessmentBadge.d.ts +16 -8
- package/dist/LearningOutcomeBadges/LearningOutcomeLowAssessmentBadge.js +34 -34
- package/dist/LearningOutcomeBadges/index.cjs +8 -0
- package/dist/LearningOutcomeBadges/index.d.cts +3 -0
- package/dist/LearningOutcomeBadges/index.d.ts +3 -2
- package/dist/LearningOutcomeBadges/index.js +4 -2
- package/dist/LearningOutcomeCard/index.cjs +167 -0
- package/dist/LearningOutcomeCard/index.d.cts +30 -0
- package/dist/LearningOutcomeCard/index.d.ts +27 -23
- package/dist/LearningOutcomeCard/index.js +159 -197
- package/dist/LearningOutcomeFlyout/LearningOutcomeCardList.cjs +41 -0
- package/dist/LearningOutcomeFlyout/LearningOutcomeCardList.js +40 -42
- package/dist/LearningOutcomeFlyout/index.cjs +316 -0
- package/dist/LearningOutcomeFlyout/index.d.cts +12 -0
- package/dist/LearningOutcomeFlyout/index.d.ts +12 -7
- package/dist/LearningOutcomeFlyout/index.js +306 -349
- package/dist/LearningOutcomeFlyout/types.cjs +10 -0
- package/dist/LearningOutcomeFlyout/types.d.cts +66 -0
- package/dist/LearningOutcomeFlyout/types.d.ts +58 -54
- package/dist/LearningOutcomeFlyout/types.js +9 -5
- package/dist/LearningOutcomePopover/index.cjs +117 -0
- package/dist/LearningOutcomePopover/index.d.cts +13 -0
- package/dist/LearningOutcomePopover/index.d.ts +11 -8
- package/dist/LearningOutcomePopover/index.js +112 -121
- package/dist/LearningOutcomeTile/Tile.cjs +68 -0
- package/dist/LearningOutcomeTile/Tile.js +62 -75
- package/dist/LearningOutcomeTile/index.cjs +96 -0
- package/dist/LearningOutcomeTile/index.d.cts +7 -0
- package/dist/LearningOutcomeTile/index.d.ts +7 -3
- package/dist/LearningOutcomeTile/index.js +92 -114
- package/dist/LearningOutcomeTile/types.cjs +11 -0
- package/dist/LearningOutcomeTile/types.d.cts +45 -0
- package/dist/LearningOutcomeTile/types.d.ts +35 -36
- package/dist/LearningOutcomeTile/types.js +8 -9
- package/dist/ListSection/index.cjs +56 -0
- package/dist/ListSection/index.d.cts +25 -0
- package/dist/ListSection/index.d.ts +25 -20
- package/dist/ListSection/index.js +53 -64
- package/dist/Loading/index.cjs +91 -0
- package/dist/Loading/index.d.cts +9 -0
- package/dist/Loading/index.d.ts +8 -4
- package/dist/Loading/index.js +87 -81
- package/dist/Loading/styles.module.cjs +5 -0
- package/dist/Loading/styles.module.js +5 -0
- package/dist/LoadingCurriculumCard/index.cjs +85 -0
- package/dist/LoadingCurriculumCard/index.d.cts +10 -0
- package/dist/LoadingCurriculumCard/index.d.ts +8 -5
- package/dist/LoadingCurriculumCard/index.js +83 -82
- package/dist/Logos/LogoCodecademy/index.cjs +23 -0
- package/dist/Logos/LogoCodecademy/index.d.cts +6 -0
- package/dist/Logos/LogoCodecademy/index.d.ts +6 -2
- package/dist/Logos/LogoCodecademy/index.js +22 -22
- package/dist/Logos/LogoCodecademyMini/index.cjs +19 -0
- package/dist/Logos/LogoCodecademyMini/index.d.cts +6 -0
- package/dist/Logos/LogoCodecademyMini/index.d.ts +6 -2
- package/dist/Logos/LogoCodecademyMini/index.js +18 -18
- package/dist/Logos/LogoCodecademyPro/index.cjs +26 -0
- package/dist/Logos/LogoCodecademyPro/index.d.cts +6 -0
- package/dist/Logos/LogoCodecademyPro/index.d.ts +6 -2
- package/dist/Logos/LogoCodecademyPro/index.js +25 -25
- package/dist/Logos/LogoCodecademyTeams/index.cjs +53 -0
- package/dist/Logos/LogoCodecademyTeams/index.d.cts +6 -0
- package/dist/Logos/LogoCodecademyTeams/index.d.ts +6 -2
- package/dist/Logos/LogoCodecademyTeams/index.js +52 -46
- package/dist/Logos/LogoFromSkillsoft/index.cjs +49 -0
- package/dist/Logos/LogoFromSkillsoft/index.d.cts +7 -0
- package/dist/Logos/LogoFromSkillsoft/index.d.ts +7 -3
- package/dist/Logos/LogoFromSkillsoft/index.js +47 -48
- package/dist/Logos/LogoLXStudio/index.cjs +38 -0
- package/dist/Logos/LogoLXStudio/index.d.cts +7 -0
- package/dist/Logos/LogoLXStudio/index.d.ts +7 -3
- package/dist/Logos/LogoLXStudio/index.js +36 -40
- package/dist/Logos/ProLabel/ProLabelCutout/index.cjs +38 -0
- package/dist/Logos/ProLabel/ProLabelCutout/index.js +36 -31
- package/dist/Logos/ProLabel/ProLabelCutoutTransparent/index.cjs +39 -0
- package/dist/Logos/ProLabel/ProLabelCutoutTransparent/index.js +37 -31
- package/dist/Logos/ProLabel/index.cjs +27 -0
- package/dist/Logos/ProLabel/index.d.cts +18 -0
- package/dist/Logos/ProLabel/index.d.ts +14 -11
- package/dist/Logos/ProLabel/index.js +25 -27
- package/dist/Logos/index.cjs +15 -0
- package/dist/Logos/index.d.cts +8 -0
- package/dist/Logos/index.d.ts +8 -7
- package/dist/Logos/index.js +9 -7
- package/dist/Logos/shared.cjs +14 -0
- package/dist/Logos/shared.d.cts +232 -0
- package/dist/Logos/shared.d.ts +235 -642
- package/dist/Logos/shared.js +10 -14
- package/dist/MarketingToaster/index.cjs +50 -0
- package/dist/MarketingToaster/index.d.cts +11 -0
- package/dist/MarketingToaster/index.d.ts +9 -6
- package/dist/MarketingToaster/index.js +46 -66
- package/dist/NotFoundContent/404.cjs +5 -0
- package/dist/NotFoundContent/404.js +5 -0
- package/dist/NotFoundContent/index.cjs +49 -0
- package/dist/NotFoundContent/index.d.cts +11 -0
- package/dist/NotFoundContent/index.d.ts +9 -6
- package/dist/NotFoundContent/index.js +46 -55
- package/dist/NotificationList/EmptyNotification/emptyNotificationContents.cjs +34 -0
- package/dist/NotificationList/EmptyNotification/emptyNotificationContents.js +33 -23
- package/dist/NotificationList/EmptyNotification/index.cjs +44 -0
- package/dist/NotificationList/EmptyNotification/index.js +42 -38
- package/dist/NotificationList/NotificationItem.cjs +162 -0
- package/dist/NotificationList/NotificationItem.d.cts +12 -0
- package/dist/NotificationList/NotificationItem.d.ts +11 -7
- package/dist/NotificationList/NotificationItem.js +157 -149
- package/dist/NotificationList/index.cjs +45 -0
- package/dist/NotificationList/index.d.cts +13 -0
- package/dist/NotificationList/index.d.ts +12 -8
- package/dist/NotificationList/index.js +41 -46
- package/dist/NotificationList/typings.d.cts +19 -0
- package/dist/NotificationList/typings.d.ts +17 -14
- package/dist/Notifications/NotificationBell.cjs +61 -0
- package/dist/Notifications/NotificationBell.js +60 -72
- package/dist/Notifications/NotificationsContents.cjs +80 -0
- package/dist/Notifications/NotificationsContents.js +78 -85
- package/dist/Notifications/NotificationsDropdown.cjs +24 -0
- package/dist/Notifications/NotificationsDropdown.js +23 -25
- package/dist/Notifications/constants.cjs +9 -0
- package/dist/Notifications/constants.js +7 -3
- package/dist/Notifications/elements.cjs +23 -0
- package/dist/Notifications/elements.js +19 -20
- package/dist/Notifications/types.d.cts +17 -0
- package/dist/Notifications/types.d.ts +16 -22
- package/dist/Notifications/useHeaderNotifications.cjs +38 -0
- package/dist/Notifications/useHeaderNotifications.js +37 -37
- package/dist/Notifications/useNotificationButtons.cjs +53 -0
- package/dist/Notifications/useNotificationButtons.js +52 -56
- package/dist/PageAlerts/PageAlerts.cjs +69 -0
- package/dist/PageAlerts/PageAlerts.d.cts +16 -0
- package/dist/PageAlerts/PageAlerts.d.ts +15 -9
- package/dist/PageAlerts/PageAlerts.js +64 -74
- package/dist/PageAlerts/PageAlertsProvider.cjs +41 -0
- package/dist/PageAlerts/PageAlertsProvider.d.cts +15 -0
- package/dist/PageAlerts/PageAlertsProvider.d.ts +14 -10
- package/dist/PageAlerts/PageAlertsProvider.js +36 -33
- package/dist/PageAlerts/index.cjs +8 -0
- package/dist/PageAlerts/index.d.cts +4 -0
- package/dist/PageAlerts/index.d.ts +4 -3
- package/dist/PageAlerts/index.js +4 -3
- package/dist/PageAlerts/types.d.cts +18 -0
- package/dist/PageAlerts/types.d.ts +15 -14
- package/dist/PageLayoutWithSidebarMenu/PageLayoutWithSidebarMenu.cjs +50 -0
- package/dist/PageLayoutWithSidebarMenu/PageLayoutWithSidebarMenu.d.cts +22 -0
- package/dist/PageLayoutWithSidebarMenu/PageLayoutWithSidebarMenu.d.ts +20 -17
- package/dist/PageLayoutWithSidebarMenu/PageLayoutWithSidebarMenu.js +48 -53
- package/dist/PageLayoutWithSidebarMenu/index.cjs +3 -0
- package/dist/PageLayoutWithSidebarMenu/index.d.cts +2 -0
- package/dist/PageLayoutWithSidebarMenu/index.d.ts +2 -1
- package/dist/PageLayoutWithSidebarMenu/index.js +3 -1
- package/dist/PageSection/index.cjs +65 -0
- package/dist/PageSection/index.d.cts +20 -0
- package/dist/PageSection/index.d.ts +17 -14
- package/dist/PageSection/index.js +61 -65
- package/dist/PastDue/PastDueModalContents/index.cjs +28 -0
- package/dist/PastDue/PastDueModalContents/index.d.cts +12 -0
- package/dist/PastDue/PastDueModalContents/index.d.ts +11 -7
- package/dist/PastDue/PastDueModalContents/index.js +26 -30
- package/dist/PastDue/index.cjs +5 -0
- package/dist/PastDue/index.d.cts +3 -0
- package/dist/PastDue/index.d.ts +3 -2
- package/dist/PastDue/index.js +4 -2
- package/dist/PastDue/pastDueMessages.cjs +55 -0
- package/dist/PastDue/pastDueMessages.d.cts +8 -0
- package/dist/PastDue/pastDueMessages.d.ts +6 -4
- package/dist/PastDue/pastDueMessages.js +53 -48
- package/dist/PausableImage/BaseImage/index.cjs +77 -0
- package/dist/PausableImage/BaseImage/index.js +69 -53
- package/dist/PausableImage/index.cjs +32 -0
- package/dist/PausableImage/index.d.cts +16 -0
- package/dist/PausableImage/index.d.ts +14 -9
- package/dist/PausableImage/index.js +26 -35
- package/dist/PlanCard/PlanCardBanner.cjs +30 -0
- package/dist/PlanCard/PlanCardBanner.d.cts +10 -0
- package/dist/PlanCard/PlanCardBanner.d.ts +8 -5
- package/dist/PlanCard/PlanCardBanner.js +27 -28
- package/dist/PlanCard/PlanFeature.cjs +91 -0
- package/dist/PlanCard/PlanFeature.js +88 -105
- package/dist/PlanCard/PopularBadge.cjs +20 -0
- package/dist/PlanCard/PopularBadge.js +18 -13
- package/dist/PlanCard/PricingAmount.cjs +122 -0
- package/dist/PlanCard/PricingAmount.js +118 -116
- package/dist/PlanCard/RecommendedBadge.cjs +31 -0
- package/dist/PlanCard/RecommendedBadge.js +29 -24
- package/dist/PlanCard/consts.cjs +220 -0
- package/dist/PlanCard/consts.js +219 -167
- package/dist/PlanCard/index.cjs +341 -0
- package/dist/PlanCard/index.d.cts +22 -0
- package/dist/PlanCard/index.d.ts +21 -17
- package/dist/PlanCard/index.js +336 -373
- package/dist/PlanCard/types.cjs +75 -0
- package/dist/PlanCard/types.d.cts +43 -0
- package/dist/PlanCard/types.d.ts +41 -38
- package/dist/PlanCard/types.js +66 -69
- package/dist/PlanCardTeams/consts.cjs +22 -0
- package/dist/PlanCardTeams/consts.js +21 -8
- package/dist/PlanCardTeams/index.cjs +140 -0
- package/dist/PlanCardTeams/index.d.cts +12 -0
- package/dist/PlanCardTeams/index.d.ts +11 -7
- package/dist/PlanCardTeams/index.js +135 -165
- package/dist/PricingSection/ConditionalColorMode.cjs +14 -0
- package/dist/PricingSection/ConditionalColorMode.js +13 -13
- package/dist/PricingSection/PricingCard/PricingAmount.cjs +122 -0
- package/dist/PricingSection/PricingCard/PricingAmount.js +118 -114
- package/dist/PricingSection/PricingCard/RecommendedBadge.cjs +30 -0
- package/dist/PricingSection/PricingCard/RecommendedBadge.js +29 -24
- package/dist/PricingSection/PricingCard/index.cjs +176 -0
- package/dist/PricingSection/PricingCard/index.js +170 -198
- package/dist/PricingSection/PricingCard/types.cjs +67 -0
- package/dist/PricingSection/PricingCard/types.d.cts +26 -0
- package/dist/PricingSection/PricingCard/types.d.ts +24 -38
- package/dist/PricingSection/PricingCard/types.js +61 -58
- package/dist/PricingSection/ProductCTA.cjs +106 -0
- package/dist/PricingSection/ProductCTA.js +103 -133
- package/dist/PricingSection/Products.cjs +86 -0
- package/dist/PricingSection/Products.js +85 -92
- package/dist/PricingSection/config.cjs +33 -0
- package/dist/PricingSection/config.js +29 -36
- package/dist/PricingSection/index.cjs +36 -0
- package/dist/PricingSection/index.d.cts +22 -0
- package/dist/PricingSection/index.d.ts +20 -14
- package/dist/PricingSection/index.js +35 -41
- package/dist/PricingSection/types.cjs +14 -0
- package/dist/PricingSection/types.d.cts +18 -0
- package/dist/PricingSection/types.d.ts +16 -29
- package/dist/PricingSection/types.js +13 -9
- package/dist/ProLogoAlt/index.cjs +28 -0
- package/dist/ProLogoAlt/index.d.cts +13 -0
- package/dist/ProLogoAlt/index.d.ts +12 -8
- package/dist/ProLogoAlt/index.js +26 -26
- package/dist/ProductFeatureShowcase/index.cjs +108 -0
- package/dist/ProductFeatureShowcase/index.d.cts +19 -0
- package/dist/ProductFeatureShowcase/index.d.ts +18 -15
- package/dist/ProductFeatureShowcase/index.js +105 -119
- package/dist/QuizScore/index.cjs +93 -0
- package/dist/QuizScore/index.d.cts +15 -0
- package/dist/QuizScore/index.d.ts +13 -10
- package/dist/QuizScore/index.js +91 -84
- package/dist/RatingsBar/index.cjs +44 -0
- package/dist/RatingsBar/index.d.cts +16 -0
- package/dist/RatingsBar/index.d.ts +15 -11
- package/dist/RatingsBar/index.js +41 -34
- package/dist/Recurly/context/NoProvider.cjs +12 -0
- package/dist/Recurly/context/NoProvider.js +10 -6
- package/dist/Recurly/context/elements/index.cjs +45 -0
- package/dist/Recurly/context/elements/index.d.cts +15 -0
- package/dist/Recurly/context/elements/index.d.ts +10 -21
- package/dist/Recurly/context/elements/index.js +39 -42
- package/dist/Recurly/context/index.d.ts +2 -2
- package/dist/Recurly/context/recurly/index.cjs +49 -0
- package/dist/Recurly/context/recurly/index.d.cts +38 -0
- package/dist/Recurly/context/recurly/index.d.ts +15 -7
- package/dist/Recurly/context/recurly/index.js +44 -47
- package/dist/Recurly/context/recurly/loadRecurly.cjs +21 -0
- package/dist/Recurly/context/recurly/loadRecurly.d.cts +9 -0
- package/dist/Recurly/context/recurly/loadRecurly.d.ts +8 -5
- package/dist/Recurly/context/recurly/loadRecurly.js +21 -22
- package/dist/Recurly/context/recurly/w.cjs +6 -0
- package/dist/Recurly/context/recurly/w.js +4 -3
- package/dist/Recurly/fields/RecurlyField.cjs +69 -0
- package/dist/Recurly/fields/RecurlyField.d.cts +18 -0
- package/dist/Recurly/fields/RecurlyField.d.ts +13 -4
- package/dist/Recurly/fields/RecurlyField.js +65 -55
- package/dist/Recurly/fields/elements.cjs +63 -0
- package/dist/Recurly/fields/elements.d.cts +22 -0
- package/dist/Recurly/fields/elements.d.ts +20 -15
- package/dist/Recurly/fields/elements.js +48 -95
- package/dist/Recurly/fields/index.d.ts +2 -2
- package/dist/Recurly/index.cjs +13 -0
- package/dist/Recurly/index.d.cts +5 -0
- package/dist/Recurly/index.d.ts +7 -2
- package/dist/Recurly/index.js +6 -2
- package/dist/ResourceCard/index.cjs +59 -0
- package/dist/ResourceCard/index.d.cts +19 -0
- package/dist/ResourceCard/index.d.ts +17 -13
- package/dist/ResourceCard/index.js +56 -58
- package/dist/ScoreSummary/SubScores.cjs +136 -0
- package/dist/ScoreSummary/SubScores.d.cts +40 -0
- package/dist/ScoreSummary/SubScores.d.ts +38 -26
- package/dist/ScoreSummary/SubScores.js +132 -163
- package/dist/ScoreSummary/helpers.cjs +20 -0
- package/dist/ScoreSummary/helpers.js +17 -19
- package/dist/ScoreSummary/index.cjs +98 -0
- package/dist/ScoreSummary/index.d.cts +25 -0
- package/dist/ScoreSummary/index.d.ts +24 -20
- package/dist/ScoreSummary/index.js +96 -108
- package/dist/ScoreSummary/types.d.cts +313 -0
- package/dist/ScoreSummary/types.d.ts +308 -305
- package/dist/SkillPathCard/index.cjs +34 -0
- package/dist/SkillPathCard/index.d.cts +25 -0
- package/dist/SkillPathCard/index.d.ts +24 -19
- package/dist/SkillPathCard/index.js +33 -46
- package/dist/SocialMediaSharing/SocialShareIconLink.cjs +43 -0
- package/dist/SocialMediaSharing/SocialShareIconLink.d.cts +9 -0
- package/dist/SocialMediaSharing/SocialShareIconLink.d.ts +9 -12
- package/dist/SocialMediaSharing/SocialShareIconLink.js +39 -48
- package/dist/SocialMediaSharing/index.cjs +86 -0
- package/dist/SocialMediaSharing/index.d.cts +64 -0
- package/dist/SocialMediaSharing/index.d.ts +59 -44
- package/dist/SocialMediaSharing/index.js +80 -114
- package/dist/SocialMediaSharingDropdown/index.cjs +98 -0
- package/dist/SocialMediaSharingDropdown/index.d.cts +19 -0
- package/dist/SocialMediaSharingDropdown/index.d.ts +18 -14
- package/dist/SocialMediaSharingDropdown/index.js +95 -110
- package/dist/Testimonial/index.cjs +141 -0
- package/dist/Testimonial/index.d.cts +53 -0
- package/dist/Testimonial/index.d.ts +50 -42
- package/dist/Testimonial/index.js +128 -153
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.cjs +14 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.js +14 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPrimitive.cjs +16 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPrimitive.js +16 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPropertyKey.cjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPropertyKey.js +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/typeof.cjs +18 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/typeof.js +12 -0
- package/dist/_virtual/rolldown_runtime.cjs +43 -0
- package/dist/_virtual/rolldown_runtime.js +18 -0
- package/dist/assets/navyQuotes.cjs +5 -0
- package/dist/assets/navyQuotes.js +5 -0
- package/dist/index.cjs +279 -0
- package/dist/index.d.cts +122 -0
- package/dist/index.d.ts +132 -89
- package/dist/index.js +116 -86
- package/dist/lib/breakpointHooks/index.cjs +64 -0
- package/dist/lib/breakpointHooks/index.d.cts +46 -0
- package/dist/lib/breakpointHooks/index.d.ts +10 -7
- package/dist/lib/breakpointHooks/index.js +51 -53
- package/dist/lib/catalogList/index.cjs +52 -0
- package/dist/lib/catalogList/index.js +50 -196
- package/dist/lib/resourcesList/index.cjs +68 -0
- package/dist/lib/resourcesList/index.js +65 -231
- package/dist/remoteAssets/components.cjs +6 -0
- package/dist/remoteAssets/components.js +5 -1
- package/package.json +364 -10
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/MarketingBanner.d.ts +0 -6
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/NavPanels.d.ts +0 -8
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/consts.d.ts +0 -17
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/elements.d.ts +0 -92
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/elements.js +0 -63
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/index.d.ts +0 -13
- package/dist/AppHeader/AppHeaderElements/AppHeaderCatalogSection/index.js +0 -440
- package/dist/AppHeader/AppHeaderElements/AppHeaderDietCard/index.d.ts +0 -11
- package/dist/AppHeader/AppHeaderElements/AppHeaderDropdownProvider/index.d.ts +0 -13
- package/dist/AppHeader/AppHeaderElements/AppHeaderFeatureCard/index.d.ts +0 -4
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/elements.d.ts +0 -42
- package/dist/AppHeader/AppHeaderElements/AppHeaderLinkSections/index.d.ts +0 -8
- package/dist/AppHeader/AppHeaderElements/AppHeaderListItem/index.d.ts +0 -14
- package/dist/AppHeader/AppHeaderElements/AppHeaderMenuProvider/index.d.ts +0 -14
- package/dist/AppHeader/AppHeaderElements/AppHeaderNavButton/index.d.ts +0 -12
- package/dist/AppHeader/AppHeaderElements/AppHeaderProvider/index.d.ts +0 -10
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/NavPanels.d.ts +0 -10
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesDropdown/consts.d.ts +0 -18
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesSection/index.d.ts +0 -13
- package/dist/AppHeader/AppHeaderElements/AppHeaderResourcesSection/index.js +0 -194
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/AppHeaderSectionContext.d.ts +0 -8
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileBackButton.d.ts +0 -6
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/MobileNavMenu.d.ts +0 -11
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/NavTabs.d.ts +0 -20
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/PanelLayout.d.ts +0 -9
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/elements.d.ts +0 -88
- package/dist/AppHeader/AppHeaderElements/AppHeaderSection/index.d.ts +0 -25
- package/dist/AppHeader/AppHeaderElements/AppHeaderSkillTile/index.d.ts +0 -6
- package/dist/AppHeader/Search/DefaultResults.d.ts +0 -10
- package/dist/AppHeader/Search/QuizAndHelpCenterLinks.d.ts +0 -7
- package/dist/AppHeader/Search/SearchButton.d.ts +0 -2
- package/dist/AppHeader/Search/SearchPane.d.ts +0 -6
- package/dist/AppHeader/Search/SearchTrackingProvider/index.d.ts +0 -17
- package/dist/AppHeader/Search/SearchWorker/PromiseLookup.d.ts +0 -18
- package/dist/AppHeader/Search/SearchWorker/src.d.ts +0 -1
- package/dist/AppHeader/Search/SearchWorker/worker.d.ts +0 -2
- package/dist/AppHeader/Search/hooks/useUrlChangeDetection.d.ts +0 -5
- package/dist/AppHeader/Search/safelyRedirect.d.ts +0 -5
- package/dist/AppHeader/Search/types.js +0 -1
- package/dist/AppHeader/Search/useHeaderSearch.d.ts +0 -6
- package/dist/AppHeader/shared/index.js +0 -4
- package/dist/AppHeader/shared/mockAppHeaderItems.js +0 -10
- package/dist/AppHeader/shared/utils.d.ts +0 -14
- package/dist/AppHeader/utils/types.d.ts +0 -8
- package/dist/AppHeader/utils/types.js +0 -1
- package/dist/AppHeaderMobile/AppHeaderSubMenuMobile/elements.d.ts +0 -13
- package/dist/AppHeaderMobile/AppHeaderSubMenuTarget/index.d.ts +0 -7
- package/dist/Avatar/Avatar.stories.js +0 -15
- package/dist/Carousel/elements.d.ts +0 -27
- package/dist/CertificationPathCard/__tests__/__fixtures__/index.d.ts +0 -2
- package/dist/CommunityEventCard/EventTypeIcon.d.ts +0 -11
- package/dist/ContentGroupBaseCard/shared.d.ts +0 -7
- package/dist/CourseCard/__tests__/__fixtures__/index.d.ts +0 -3
- package/dist/CurriculumCard/Footer/index.d.ts +0 -10
- package/dist/CurriculumCard/Image/index.d.ts +0 -9
- package/dist/CurriculumCard/Subtitle/helpers.d.ts +0 -1
- package/dist/DropdownButton/useDynamicPopoverPosition.d.ts +0 -14
- package/dist/DropdownButton/useDynamicPopoverPosition.test.js +0 -85
- package/dist/GlobalFooter/FooterHeading.d.ts +0 -9
- package/dist/GlobalFooter/FooterLegal/LegalLinks.d.ts +0 -6
- package/dist/GlobalFooter/FooterLegal/MadeIn.d.ts +0 -5
- package/dist/GlobalFooter/FooterLegal/index.d.ts +0 -7
- package/dist/GlobalFooter/FooterLinks.d.ts +0 -18
- package/dist/GlobalFooter/FooterNavLinks/CatalogLinks.d.ts +0 -7
- package/dist/GlobalFooter/FooterNavLinks/CompanyLinks.d.ts +0 -11
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferAFriendLinkWithModal.d.ts +0 -7
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralFields.d.ts +0 -2
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralForm.d.ts +0 -4
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/ReferralLinkSocialMediaSharing.d.ts +0 -3
- package/dist/GlobalFooter/FooterNavLinks/ReferralRock/types.js +0 -1
- package/dist/GlobalFooter/FooterNavLinks/SocialMediaLinks.d.ts +0 -2
- package/dist/GlobalFooter/FooterNavLinks/index.d.ts +0 -4
- package/dist/GlobalFooter/FooterSubHeading.d.ts +0 -9
- package/dist/GlobalFooter/FooterSubHeading.js +0 -22
- package/dist/GlobalFooter/types.js +0 -1
- package/dist/GlobalHeader/GlobalHeaderItems.d.ts +0 -28
- package/dist/GlobalHeader/GlobalHeaderVariants.d.ts +0 -97
- package/dist/GlobalHeader/context.d.ts +0 -34
- package/dist/GlobalHeader/types.js +0 -1
- package/dist/GlobalHeader/urlHelpers.d.ts +0 -2
- package/dist/Grid/GridCollapse.test.js +0 -96
- package/dist/HeaderHeightArea/useIsInHeaderRegion.d.ts +0 -1
- package/dist/LandingPage/CTA.d.ts +0 -9
- package/dist/LandingPage/Feature.d.ts +0 -32
- package/dist/LandingPage/types.js +0 -1
- package/dist/LayoutMenu/LayoutMenuSection.d.ts +0 -16
- package/dist/LayoutMenuVariant/LayoutMenuSection.d.ts +0 -10
- package/dist/LearningOutcomeAssessmentScores/AssessmentDetail.d.ts +0 -8
- package/dist/LearningOutcomeFlyout/LearningOutcomeCardList.d.ts +0 -7
- package/dist/LearningOutcomeTile/Tile.d.ts +0 -7
- package/dist/Logos/ProLabel/ProLabelCutout/index.d.ts +0 -8
- package/dist/Logos/ProLabel/ProLabelCutoutTransparent/index.d.ts +0 -7
- package/dist/NotificationList/EmptyNotification/emptyNotificationContents.d.ts +0 -7
- package/dist/NotificationList/EmptyNotification/index.d.ts +0 -1
- package/dist/NotificationList/typings.js +0 -1
- package/dist/Notifications/NotificationBell.d.ts +0 -10
- package/dist/Notifications/NotificationsContents.d.ts +0 -3
- package/dist/Notifications/NotificationsDropdown.d.ts +0 -2
- package/dist/Notifications/__fixtures__/NotificationTestComponent.d.ts +0 -2
- package/dist/Notifications/__fixtures__/NotificationTestComponent.js +0 -12
- package/dist/Notifications/__fixtures__/stubs.d.ts +0 -2
- package/dist/Notifications/__fixtures__/stubs.js +0 -8
- package/dist/Notifications/constants.d.ts +0 -4
- package/dist/Notifications/elements.d.ts +0 -12
- package/dist/Notifications/types.js +0 -1
- package/dist/Notifications/useHeaderNotifications.d.ts +0 -10
- package/dist/Notifications/useNotificationButtons.d.ts +0 -9
- package/dist/PageAlerts/types.js +0 -1
- package/dist/PausableImage/BaseImage/index.d.ts +0 -15
- package/dist/PlanCard/PlanFeature.d.ts +0 -10
- package/dist/PlanCard/PopularBadge.d.ts +0 -3
- package/dist/PlanCard/PricingAmount.d.ts +0 -14
- package/dist/PlanCard/RecommendedBadge.d.ts +0 -3
- package/dist/PlanCard/consts.d.ts +0 -15
- package/dist/PlanCardTeams/consts.d.ts +0 -9
- package/dist/PricingSection/ConditionalColorMode.d.ts +0 -4
- package/dist/PricingSection/PlanFeature.d.ts +0 -10
- package/dist/PricingSection/PlanFeature.js +0 -88
- package/dist/PricingSection/PricingCard/PricingAmount.d.ts +0 -14
- package/dist/PricingSection/PricingCard/RecommendedBadge.d.ts +0 -3
- package/dist/PricingSection/PricingCard/consts.d.ts +0 -14
- package/dist/PricingSection/PricingCard/consts.js +0 -99
- package/dist/PricingSection/PricingCard/index.d.ts +0 -16
- package/dist/PricingSection/ProductCTA.d.ts +0 -12
- package/dist/PricingSection/Products.d.ts +0 -15
- package/dist/PricingSection/config.d.ts +0 -8
- package/dist/Recurly/context/NoProvider.d.ts +0 -8
- package/dist/Recurly/context/index.js +0 -2
- package/dist/Recurly/context/recurly/w.d.ts +0 -14
- package/dist/Recurly/fields/elements.test.js +0 -79
- package/dist/Recurly/fields/index.js +0 -2
- package/dist/ScoreSummary/helpers.d.ts +0 -11
- package/dist/ScoreSummary/types.js +0 -1
- package/dist/SkillPathCard/__tests__/__fixtures__/index.d.ts +0 -2
- package/dist/SocialMediaSharingDropdown/__tests__/SocialMediaSharingDropdown-test.d.ts +0 -1
- package/dist/assets/darkQuotes.svg +0 -1
- package/dist/assets/dots.svg +0 -1
- package/dist/assets/lightQuotes.svg +0 -1
- package/dist/assets/orange_squiggle.svg +0 -1
- package/dist/lib/catalogList/index.d.ts +0 -6
- package/dist/lib/resourcesList/index.d.ts +0 -5
- package/dist/png.d.ts +0 -4
- package/dist/react-freezeframe.d.ts +0 -1
- package/dist/remoteAssets/components.d.ts +0 -1
- package/dist/stories/Atoms/Avatar.stories.js +0 -16
- package/dist/stories/Atoms/BetaSticker.stories.js +0 -21
- package/dist/stories/Atoms/Logos/LogoCodecademy.stories.js +0 -8
- package/dist/stories/Atoms/Logos/LogoCodecademyMini.stories.js +0 -8
- package/dist/stories/Atoms/Logos/LogoCodecademyPro.stories.js +0 -8
- package/dist/stories/Atoms/Logos/LogoCodecademyTeams.stories.js +0 -8
- package/dist/stories/Atoms/Logos/LogoFromSkillsoft.stories.js +0 -9
- package/dist/stories/Atoms/Logos/LogoLXStudio.stories.js +0 -11
- package/dist/stories/Atoms/Logos/ProLabel.stories.js +0 -29
- package/dist/stories/Atoms/RatingsBar.stories.js +0 -16
- package/dist/stories/Atoms/Subgrid.stories.js +0 -87
- package/dist/stories/Molecules/AppBar.stories.js +0 -31
- package/dist/stories/Molecules/AppHeader/AppHeader.stories.js +0 -84
- package/dist/stories/Molecules/AppHeader/AppHeaderDropdown.stories.js +0 -67
- package/dist/stories/Molecules/AppHeader/AppHeaderLink.stories.js +0 -50
- package/dist/stories/Molecules/AppHeader/AppHeaderLogo.stories.js +0 -43
- package/dist/stories/Molecules/AppHeader/AppHeaderMainMenuMobile.stories.js +0 -34
- package/dist/stories/Molecules/AppHeader/AppHeaderMobile.stories.js +0 -40
- package/dist/stories/Molecules/AppHeader/AppHeaderSubMenuMobile.stories.js +0 -25
- package/dist/stories/Molecules/AppHeader/LXStudioHeader.stories.js +0 -176
- package/dist/stories/Molecules/AppHeader/LXStudioMobileHeader.stories.js +0 -84
- package/dist/stories/Molecules/AppHeader/MockAppHeaderElements.d.ts +0 -5
- package/dist/stories/Molecules/AppHeader/MockAppHeaderElements.js +0 -90
- package/dist/stories/Molecules/AvatarChooser.stories.js +0 -22
- package/dist/stories/Molecules/BackToTopAnchor.stories.js +0 -51
- package/dist/stories/Molecules/Banner.stories.js +0 -112
- package/dist/stories/Molecules/Carousel.stories.js +0 -47
- package/dist/stories/Molecules/ContentGroupBaseCard.stories.js +0 -175
- package/dist/stories/Molecules/CurriculumCard.stories.js +0 -201
- package/dist/stories/Molecules/CurriculumCards/CareerPathCard.stories.js +0 -94
- package/dist/stories/Molecules/CurriculumCards/CertificationPathCard.stories.js +0 -67
- package/dist/stories/Molecules/CurriculumCards/CourseCard.stories.js +0 -85
- package/dist/stories/Molecules/CurriculumCards/LoadingCurriculumCard.stories.js +0 -20
- package/dist/stories/Molecules/CurriculumCards/SkillPathCard.stories.js +0 -92
- package/dist/stories/Molecules/DropdownButton.stories.js +0 -207
- package/dist/stories/Molecules/EditorialImage.stories.js +0 -17
- package/dist/stories/Molecules/EmptySection.stories.js +0 -167
- package/dist/stories/Molecules/EnhancedBanner.stories.js +0 -104
- package/dist/stories/Molecules/ErrorContents.stories.js +0 -19
- package/dist/stories/Molecules/GridCollapse.stories.js +0 -42
- package/dist/stories/Molecules/HorizontalScrollMenu.examples.d.ts +0 -1
- package/dist/stories/Molecules/HorizontalScrollMenu.examples.js +0 -67
- package/dist/stories/Molecules/HorizontalScrollMenu.stories.js +0 -11
- package/dist/stories/Molecules/HubCard.stories.js +0 -27
- package/dist/stories/Molecules/InfoCard.stories.js +0 -30
- package/dist/stories/Molecules/LearningOutcomeAssessmentScores.stories.js +0 -23
- package/dist/stories/Molecules/LearningOutcomeCard.stories.js +0 -189
- package/dist/stories/Molecules/LearningOutcomeFlyout.stories.js +0 -62
- package/dist/stories/Molecules/LearningOutcomeLevelBadge.stories.js +0 -20
- package/dist/stories/Molecules/LearningOutcomeLowAssessmentBadge.stories.js +0 -10
- package/dist/stories/Molecules/LearningOutcomePopover.stories.js +0 -39
- package/dist/stories/Molecules/LearningOutcomeTile.stories.js +0 -276
- package/dist/stories/Molecules/ListSection.stories.js +0 -97
- package/dist/stories/Molecules/Loading.stories.js +0 -10
- package/dist/stories/Molecules/NotificationList.stories.js +0 -99
- package/dist/stories/Molecules/PageSection.stories.js +0 -67
- package/dist/stories/Molecules/PastDueModalContents.stories.js +0 -62
- package/dist/stories/Molecules/PausableImage.stories.js +0 -16
- package/dist/stories/Molecules/Recurly.stories.js +0 -56
- package/dist/stories/Molecules/ResourceCard.stories.js +0 -18
- package/dist/stories/Molecules/SocialMediaSharing.stories.js +0 -20
- package/dist/stories/Molecules/SocialMediaSharingDropdown.stories.js +0 -20
- package/dist/stories/Molecules/Testimonial.stories.js +0 -59
- package/dist/stories/Organisms/GlobalFooter.stories.js +0 -28
- package/dist/stories/Organisms/GlobalHeader/About.stories.js +0 -133
- package/dist/stories/Organisms/GlobalHeader/Anon.stories.js +0 -71
- package/dist/stories/Organisms/GlobalHeader/Bootcamp.stories.js +0 -29
- package/dist/stories/Organisms/GlobalHeader/Enterprise.stories.js +0 -105
- package/dist/stories/Organisms/GlobalHeader/Free.stories.js +0 -131
- package/dist/stories/Organisms/GlobalHeader/Pro.stories.js +0 -197
- package/dist/stories/Organisms/GlobalHeader/Simple.stories.js +0 -28
- package/dist/stories/Organisms/GlobalPage.stories.js +0 -138
- package/dist/stories/Organisms/LayoutMenu.stories.js +0 -239
- package/dist/stories/Organisms/LayoutMenuVariant.stories.js +0 -222
- package/dist/stories/Organisms/PageAlerts.example.d.ts +0 -2
- package/dist/stories/Organisms/PageAlerts.example.js +0 -42
- package/dist/stories/Organisms/PageAlerts.stories.js +0 -15
- package/dist/stories/Organisms/PageFeatures.stories.js +0 -175
- package/dist/stories/Organisms/PageHero.stories.js +0 -135
- package/dist/stories/Organisms/PageLayoutWithSidebarMenu.stories.js +0 -34
- package/dist/stories/Organisms/PagePrefooter.stories.js +0 -58
- package/dist/stories/Organisms/PageSingleFeature.stories.js +0 -148
- package/dist/stories/Organisms/PageVideoGallery.stories.js +0 -65
- package/dist/stories/Organisms/PlanCard.stories.js +0 -98
- package/dist/stories/Organisms/PlanCardTeams.stories.js +0 -27
- package/dist/stories/Organisms/ScoreSummary.stories.js +0 -295
- package/dist/svg.d.ts +0 -7
- package/dist/theme.d.ts +0 -5
- /package/dist/{NotFoundContent/404.svg → assets/404-BM2-wvJv.svg} +0 -0
- /package/dist/{GlobalFooter/FooterNavLinks/assets/download-on-the-app-store.svg → assets/download-on-the-app-store-BbQ68gT5.svg} +0 -0
- /package/dist/{GlobalFooter/FooterNavLinks/assets/get-it-on-google-play.png → assets/get-it-on-google-play-CnA-UUOj.png} +0 -0
- /package/dist/{AppBarDeprecated/styles/index.module.scss → assets/index.module-Dz0I2VL5.scss} +0 -0
- /package/dist/assets/{navyQuotes.svg → navyQuotes-C0ZxClwi.svg} +0 -0
- /package/dist/{EditorialImage/styles.module.scss → assets/styles.module-CAlrRbjX.scss} +0 -0
- /package/dist/{Loading/styles.module.scss → assets/styles.module-DbrbHmEX.scss} +0 -0
|
@@ -1,342 +1,294 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
as: "ul",
|
|
79
|
-
listStyle: "none",
|
|
80
|
-
children: popularSubjects.map(item => /*#__PURE__*/_jsx("li", {
|
|
81
|
-
children: /*#__PURE__*/_jsx(SkillTile, {
|
|
82
|
-
item: item
|
|
83
|
-
})
|
|
84
|
-
}, item.id))
|
|
85
|
-
})]
|
|
86
|
-
});
|
|
1
|
+
import { useGlobalHeaderDynamicDataContext, useGlobalHeaderItemClick } from "../../../GlobalHeader/context.js";
|
|
2
|
+
import { useAppHeaderDropdownContext } from "../AppHeaderDropdownProvider/index.js";
|
|
3
|
+
import { useAppHeaderSectionContext } from "../AppHeaderSection/AppHeaderSectionContext.js";
|
|
4
|
+
import { liveLearningNavPanelItems } from "../../../lib/catalogList/index.js";
|
|
5
|
+
import { AppHeaderDietCard } from "../AppHeaderDietCard/index.js";
|
|
6
|
+
import { PanelLayout } from "../AppHeaderSection/PanelLayout.js";
|
|
7
|
+
import { SkillTile } from "../AppHeaderSkillTile/index.js";
|
|
8
|
+
import { CERTIFICATION_PROVIDERS, popularLanguages, popularSubjects } from "./consts.js";
|
|
9
|
+
import { Anchor, Box, Card, FlexBox, GridBox, Text } from "@codecademy/gamut";
|
|
10
|
+
import styled from "@emotion/styled";
|
|
11
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { LevelIcon } from "@codecademy/gamut-icons";
|
|
13
|
+
|
|
14
|
+
//#region src/AppHeader/AppHeaderElements/AppHeaderCatalogDropdown/NavPanels.tsx
|
|
15
|
+
const CourseTopicsPanel = () => {
|
|
16
|
+
const { globalHeaderItemClick } = useGlobalHeaderItemClick();
|
|
17
|
+
const { tabIndex } = useAppHeaderSectionContext();
|
|
18
|
+
return /* @__PURE__ */ jsxs(PanelLayout, {
|
|
19
|
+
heading: "Course topics",
|
|
20
|
+
description: /* @__PURE__ */ jsxs(Fragment, { children: ["Explore free or paid courses in a wide variety of topics. With something for every skill level, it's easy to find a course that fits your goals. Not sure where to start? \xA0", /* @__PURE__ */ jsx(Anchor, {
|
|
21
|
+
tabIndex,
|
|
22
|
+
href: "/welcome/find-a-course",
|
|
23
|
+
onClick: (event) => globalHeaderItemClick(event, {
|
|
24
|
+
type: "link",
|
|
25
|
+
href: "/welcome/find-a-course",
|
|
26
|
+
text: "Take the quiz",
|
|
27
|
+
id: "take-the-quiz"
|
|
28
|
+
}),
|
|
29
|
+
children: "Take the quiz"
|
|
30
|
+
})] }),
|
|
31
|
+
linkItem: {
|
|
32
|
+
type: "link",
|
|
33
|
+
href: "/catalog",
|
|
34
|
+
text: "Explore the full catalog",
|
|
35
|
+
trackingTarget: "topnav_catalog",
|
|
36
|
+
id: "explore-all-courses"
|
|
37
|
+
},
|
|
38
|
+
children: [
|
|
39
|
+
/* @__PURE__ */ jsx(Text, {
|
|
40
|
+
variant: "p-large",
|
|
41
|
+
fontWeight: 700,
|
|
42
|
+
as: "h3",
|
|
43
|
+
children: "Popular languages"
|
|
44
|
+
}),
|
|
45
|
+
/* @__PURE__ */ jsx(GridBox, {
|
|
46
|
+
gridTemplateColumns: {
|
|
47
|
+
_: "1fr",
|
|
48
|
+
xs: "1fr 1fr",
|
|
49
|
+
md: "1fr 1fr 1fr"
|
|
50
|
+
},
|
|
51
|
+
gap: 8,
|
|
52
|
+
pl: 0,
|
|
53
|
+
as: "ul",
|
|
54
|
+
listStyle: "none",
|
|
55
|
+
mb: 24,
|
|
56
|
+
children: popularLanguages.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(SkillTile, { item }) }, item.id))
|
|
57
|
+
}),
|
|
58
|
+
/* @__PURE__ */ jsx(Text, {
|
|
59
|
+
variant: "p-large",
|
|
60
|
+
fontWeight: 700,
|
|
61
|
+
as: "h3",
|
|
62
|
+
children: "Popular subjects"
|
|
63
|
+
}),
|
|
64
|
+
/* @__PURE__ */ jsx(GridBox, {
|
|
65
|
+
gridTemplateColumns: {
|
|
66
|
+
_: "1fr",
|
|
67
|
+
xs: "1fr 1fr",
|
|
68
|
+
md: "1fr 1fr 1fr"
|
|
69
|
+
},
|
|
70
|
+
gap: 8,
|
|
71
|
+
pl: 0,
|
|
72
|
+
as: "ul",
|
|
73
|
+
listStyle: "none",
|
|
74
|
+
children: popularSubjects.map((item) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(SkillTile, { item }) }, item.id))
|
|
75
|
+
})
|
|
76
|
+
]
|
|
77
|
+
});
|
|
87
78
|
};
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
children: children
|
|
103
|
-
});
|
|
79
|
+
const DietCardGrid = ({ children }) => {
|
|
80
|
+
return /* @__PURE__ */ jsx(GridBox, {
|
|
81
|
+
as: "ul",
|
|
82
|
+
gridTemplateColumns: {
|
|
83
|
+
_: "1fr",
|
|
84
|
+
sm: "repeat(2, minmax(0, 1fr))",
|
|
85
|
+
md: "repeat(3, minmax(0, 1fr))"
|
|
86
|
+
},
|
|
87
|
+
gap: 16,
|
|
88
|
+
m: 0,
|
|
89
|
+
p: 0,
|
|
90
|
+
listStyleType: "none",
|
|
91
|
+
children
|
|
92
|
+
});
|
|
104
93
|
};
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
trackingTarget: `careerpath_${path.title}`
|
|
130
|
-
}, `${path.title}-card`);
|
|
131
|
-
})
|
|
132
|
-
})
|
|
133
|
-
});
|
|
94
|
+
const CareerPathsPanel = () => {
|
|
95
|
+
const { globalHeaderDynamicData } = useGlobalHeaderDynamicDataContext();
|
|
96
|
+
const totalCareerPathCount = globalHeaderDynamicData?.catalogDropdown.careerPaths.totalCareerPathCount;
|
|
97
|
+
return /* @__PURE__ */ jsx(PanelLayout, {
|
|
98
|
+
heading: "Career paths",
|
|
99
|
+
description: "Choose your career and we'll teach you the skills to get job-ready. Each Career Path contains a curated list of lessons, quizzes, videos, and projects to help you learn and practice real-world skills.",
|
|
100
|
+
linkItem: {
|
|
101
|
+
type: "link",
|
|
102
|
+
href: "/catalog?type=career-path",
|
|
103
|
+
text: `Explore all${totalCareerPathCount ? ` ${totalCareerPathCount}` : ""} career paths`,
|
|
104
|
+
trackingTarget: "topnav_catalog_header_explore_all_career_paths",
|
|
105
|
+
id: "explore-all-career-paths"
|
|
106
|
+
},
|
|
107
|
+
children: /* @__PURE__ */ jsx(DietCardGrid, { children: globalHeaderDynamicData?.catalogDropdown.careerPaths.promotedCareerPaths.map((path) => {
|
|
108
|
+
return /* @__PURE__ */ jsx(AppHeaderDietCard, {
|
|
109
|
+
title: path.title,
|
|
110
|
+
hours: path.durationHours,
|
|
111
|
+
icon: /* @__PURE__ */ jsx(LevelIcon, {}),
|
|
112
|
+
difficulty: path.difficulty,
|
|
113
|
+
href: path.urlPath,
|
|
114
|
+
trackingTarget: `careerpath_${path.title}`
|
|
115
|
+
}, `${path.title}-card`);
|
|
116
|
+
}) })
|
|
117
|
+
});
|
|
134
118
|
};
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
trackingTarget: `skill_${path.title}`
|
|
160
|
-
}, `${path.title}-card`);
|
|
161
|
-
})
|
|
162
|
-
})
|
|
163
|
-
});
|
|
119
|
+
const SkillPathsPanel = () => {
|
|
120
|
+
const { globalHeaderDynamicData } = useGlobalHeaderDynamicDataContext();
|
|
121
|
+
const totalSkillPathCount = globalHeaderDynamicData?.catalogDropdown.skillPaths.totalSkillPathCount;
|
|
122
|
+
return /* @__PURE__ */ jsx(PanelLayout, {
|
|
123
|
+
heading: "Skill paths",
|
|
124
|
+
description: "Build in demand skills fast with a short, curated path. Each one includes interactive content to help you learn and apply your new skill in just a few months.",
|
|
125
|
+
linkItem: {
|
|
126
|
+
type: "link",
|
|
127
|
+
href: "/catalog?type=skill-path",
|
|
128
|
+
text: `Explore all${totalSkillPathCount ? ` ${totalSkillPathCount}` : ""} skill paths`,
|
|
129
|
+
trackingTarget: "topnav_catalog_header_explore_all_skill_paths",
|
|
130
|
+
id: "explore-all-skill-paths"
|
|
131
|
+
},
|
|
132
|
+
children: /* @__PURE__ */ jsx(DietCardGrid, { children: globalHeaderDynamicData?.catalogDropdown.skillPaths.promotedSkillPaths.map((path) => {
|
|
133
|
+
return /* @__PURE__ */ jsx(AppHeaderDietCard, {
|
|
134
|
+
title: path.title,
|
|
135
|
+
hours: path.durationHours,
|
|
136
|
+
icon: /* @__PURE__ */ jsx(LevelIcon, {}),
|
|
137
|
+
difficulty: path.difficulty,
|
|
138
|
+
href: path.urlPath,
|
|
139
|
+
trackingTarget: `skill_${path.title}`
|
|
140
|
+
}, `${path.title}-card`);
|
|
141
|
+
}) })
|
|
142
|
+
});
|
|
164
143
|
};
|
|
165
|
-
const Image = Box.withComponent(
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
})("
|
|
173
|
-
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}) => theme.colors['navy-100'], ";img{filter:brightness(1);}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9BcHBIZWFkZXIvQXBwSGVhZGVyRWxlbWVudHMvQXBwSGVhZGVyQ2F0YWxvZ0Ryb3Bkb3duL05hdlBhbmVscy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBME1FIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy9BcHBIZWFkZXIvQXBwSGVhZGVyRWxlbWVudHMvQXBwSGVhZGVyQ2F0YWxvZ0Ryb3Bkb3duL05hdlBhbmVscy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmNob3IsIEJveCwgQ2FyZCwgRmxleEJveCwgR3JpZEJveCwgVGV4dCB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0JztcbmltcG9ydCB7IExldmVsSWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQ291cnNlRGlmZmljdWx0eSB9IGZyb20gJy4uLy4uLy4uL0NvbnRlbnRHcm91cEJhc2VDYXJkL3R5cGVzJztcbmltcG9ydCB7XG4gIHVzZUdsb2JhbEhlYWRlckR5bmFtaWNEYXRhQ29udGV4dCxcbiAgdXNlR2xvYmFsSGVhZGVySXRlbUNsaWNrLFxufSBmcm9tICcuLi8uLi8uLi9HbG9iYWxIZWFkZXIvY29udGV4dCc7XG5pbXBvcnQgeyBsaXZlTGVhcm5pbmdOYXZQYW5lbEl0ZW1zIH0gZnJvbSAnLi4vLi4vLi4vbGliL2NhdGFsb2dMaXN0JztcbmltcG9ydCB7IEFwcEhlYWRlckRpZXRDYXJkIH0gZnJvbSAnLi4vQXBwSGVhZGVyRGlldENhcmQnO1xuaW1wb3J0IHsgdXNlQXBwSGVhZGVyRHJvcGRvd25Db250ZXh0IH0gZnJvbSAnLi4vQXBwSGVhZGVyRHJvcGRvd25Qcm92aWRlcic7XG5pbXBvcnQgeyB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCB9IGZyb20gJy4uL0FwcEhlYWRlclNlY3Rpb24vQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQnO1xuaW1wb3J0IHsgUGFuZWxMYXlvdXQgfSBmcm9tICcuLi9BcHBIZWFkZXJTZWN0aW9uL1BhbmVsTGF5b3V0JztcbmltcG9ydCB7IFNraWxsVGlsZSB9IGZyb20gJy4uL0FwcEhlYWRlclNraWxsVGlsZSc7XG5pbXBvcnQge1xuICBDRVJUSUZJQ0FUSU9OX1BST1ZJREVSUyxcbiAgcG9wdWxhckxhbmd1YWdlcyxcbiAgcG9wdWxhclN1YmplY3RzLFxufSBmcm9tICcuL2NvbnN0cyc7XG5cbmV4cG9ydCBjb25zdCBDb3Vyc2VUb3BpY3NQYW5lbCA9ICgpID0+IHtcbiAgY29uc3QgeyBnbG9iYWxIZWFkZXJJdGVtQ2xpY2sgfSA9IHVzZUdsb2JhbEhlYWRlckl0ZW1DbGljaygpO1xuICBjb25zdCB7IHRhYkluZGV4IH0gPSB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCgpO1xuXG4gIGNvbnN0IGRlc2NyaXB0aW9uID0gKFxuICAgIDw+XG4gICAgICBFeHBsb3JlIGZyZWUgb3IgcGFpZCBjb3Vyc2VzIGluIGEgd2lkZSB2YXJpZXR5IG9mIHRvcGljcy4gV2l0aCBzb21ldGhpbmdcbiAgICAgIGZvciBldmVyeSBza2lsbCBsZXZlbCwgaXQmYXBvcztzIGVhc3kgdG8gZmluZCBhIGNvdXJzZSB0aGF0IGZpdHMgeW91clxuICAgICAgZ29hbHMuIE5vdCBzdXJlIHdoZXJlIHRvIHN0YXJ0PyAmbmJzcDtcbiAgICAgIDxBbmNob3JcbiAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICBocmVmPVwiL3dlbGNvbWUvZmluZC1hLWNvdXJzZVwiXG4gICAgICAgIG9uQ2xpY2s9eyhldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MQW5jaG9yRWxlbWVudCwgTW91c2VFdmVudD4pID0+XG4gICAgICAgICAgZ2xvYmFsSGVhZGVySXRlbUNsaWNrKGV2ZW50LCB7XG4gICAgICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgICAgICBocmVmOiAnL3dlbGNvbWUvZmluZC1hLWNvdXJzZScsXG4gICAgICAgICAgICB0ZXh0OiAnVGFrZSB0aGUgcXVpeicsXG4gICAgICAgICAgICBpZDogJ3Rha2UtdGhlLXF1aXonLFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgID5cbiAgICAgICAgVGFrZSB0aGUgcXVpelxuICAgICAgPC9BbmNob3I+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8UGFuZWxMYXlvdXRcbiAgICAgIGhlYWRpbmc9XCJDb3Vyc2UgdG9waWNzXCJcbiAgICAgIGRlc2NyaXB0aW9uPXtkZXNjcmlwdGlvbn1cbiAgICAgIGxpbmtJdGVtPXt7XG4gICAgICAgIHR5cGU6ICdsaW5rJyxcbiAgICAgICAgaHJlZjogJy9jYXRhbG9nJyxcbiAgICAgICAgdGV4dDogJ0V4cGxvcmUgdGhlIGZ1bGwgY2F0YWxvZycsXG4gICAgICAgIHRyYWNraW5nVGFyZ2V0OiAndG9wbmF2X2NhdGFsb2cnLFxuICAgICAgICBpZDogJ2V4cGxvcmUtYWxsLWNvdXJzZXMnLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8VGV4dCB2YXJpYW50PVwicC1sYXJnZVwiIGZvbnRXZWlnaHQ9ezcwMH0gYXM9XCJoM1wiPlxuICAgICAgICBQb3B1bGFyIGxhbmd1YWdlc1xuICAgICAgPC9UZXh0PlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17eyBfOiAnMWZyJywgeHM6ICcxZnIgMWZyJywgbWQ6ICcxZnIgMWZyIDFmcicgfX1cbiAgICAgICAgZ2FwPXs4fVxuICAgICAgICBwbD17MH1cbiAgICAgICAgYXM9XCJ1bFwiXG4gICAgICAgIGxpc3RTdHlsZT1cIm5vbmVcIlxuICAgICAgICBtYj17MjR9XG4gICAgICA+XG4gICAgICAgIHtwb3B1bGFyTGFuZ3VhZ2VzLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgIDxsaSBrZXk9e2l0ZW0uaWR9PlxuICAgICAgICAgICAgPFNraWxsVGlsZSBpdGVtPXtpdGVtfSAvPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICkpfVxuICAgICAgPC9HcmlkQm94PlxuXG4gICAgICA8VGV4dCB2YXJpYW50PVwicC1sYXJnZVwiIGZvbnRXZWlnaHQ9ezcwMH0gYXM9XCJoM1wiPlxuICAgICAgICBQb3B1bGFyIHN1YmplY3RzXG4gICAgICA8L1RleHQ+XG4gICAgICA8R3JpZEJveFxuICAgICAgICBncmlkVGVtcGxhdGVDb2x1bW5zPXt7IF86ICcxZnInLCB4czogJzFmciAxZnInLCBtZDogJzFmciAxZnIgMWZyJyB9fVxuICAgICAgICBnYXA9ezh9XG4gICAgICAgIHBsPXswfVxuICAgICAgICBhcz1cInVsXCJcbiAgICAgICAgbGlzdFN0eWxlPVwibm9uZVwiXG4gICAgICA+XG4gICAgICAgIHtwb3B1bGFyU3ViamVjdHMubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgPGxpIGtleT17aXRlbS5pZH0+XG4gICAgICAgICAgICA8U2tpbGxUaWxlIGl0ZW09e2l0ZW19IC8+XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgKSl9XG4gICAgICA8L0dyaWRCb3g+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBEaWV0Q2FyZEdyaWQgPSAoeyBjaGlsZHJlbiB9OiB7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfSkgPT4ge1xuICByZXR1cm4gKFxuICAgIDxHcmlkQm94XG4gICAgICBhcz1cInVsXCJcbiAgICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM9e3tcbiAgICAgICAgXzogJzFmcicsXG4gICAgICAgIHNtOiAncmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKScsXG4gICAgICAgIG1kOiAncmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKScsXG4gICAgICB9fVxuICAgICAgZ2FwPXsxNn1cbiAgICAgIG09ezB9XG4gICAgICBwPXswfVxuICAgICAgbGlzdFN0eWxlVHlwZT1cIm5vbmVcIlxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0dyaWRCb3g+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgQ2FyZWVyUGF0aHNQYW5lbCA9ICgpID0+IHtcbiAgY29uc3QgeyBnbG9iYWxIZWFkZXJEeW5hbWljRGF0YSB9ID0gdXNlR2xvYmFsSGVhZGVyRHluYW1pY0RhdGFDb250ZXh0KCk7XG4gIGNvbnN0IHRvdGFsQ2FyZWVyUGF0aENvdW50ID1cbiAgICBnbG9iYWxIZWFkZXJEeW5hbWljRGF0YT8uY2F0YWxvZ0Ryb3Bkb3duLmNhcmVlclBhdGhzLnRvdGFsQ2FyZWVyUGF0aENvdW50O1xuICBjb25zdCBsaW5rVGV4dCA9IGBFeHBsb3JlIGFsbCR7XG4gICAgdG90YWxDYXJlZXJQYXRoQ291bnQgPyBgICR7dG90YWxDYXJlZXJQYXRoQ291bnR9YCA6ICcnXG4gIH0gY2FyZWVyIHBhdGhzYDtcblxuICByZXR1cm4gKFxuICAgIDxQYW5lbExheW91dFxuICAgICAgaGVhZGluZz1cIkNhcmVlciBwYXRoc1wiXG4gICAgICBkZXNjcmlwdGlvbj1cIkNob29zZSB5b3VyIGNhcmVlciBhbmQgd2UnbGwgdGVhY2ggeW91IHRoZSBza2lsbHMgdG8gZ2V0IGpvYi1yZWFkeS4gRWFjaCBDYXJlZXIgUGF0aCBjb250YWlucyBhIGN1cmF0ZWQgbGlzdCBvZiBsZXNzb25zLCBxdWl6emVzLCB2aWRlb3MsIGFuZCBwcm9qZWN0cyB0byBoZWxwIHlvdSBsZWFybiBhbmQgcHJhY3RpY2UgcmVhbC13b3JsZCBza2lsbHMuXCJcbiAgICAgIGxpbmtJdGVtPXt7XG4gICAgICAgIHR5cGU6ICdsaW5rJyxcbiAgICAgICAgaHJlZjogJy9jYXRhbG9nP3R5cGU9Y2FyZWVyLXBhdGgnLFxuICAgICAgICB0ZXh0OiBsaW5rVGV4dCxcbiAgICAgICAgdHJhY2tpbmdUYXJnZXQ6ICd0b3BuYXZfY2F0YWxvZ19oZWFkZXJfZXhwbG9yZV9hbGxfY2FyZWVyX3BhdGhzJyxcbiAgICAgICAgaWQ6ICdleHBsb3JlLWFsbC1jYXJlZXItcGF0aHMnLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8RGlldENhcmRHcmlkPlxuICAgICAgICB7Z2xvYmFsSGVhZGVyRHluYW1pY0RhdGE/LmNhdGFsb2dEcm9wZG93bi5jYXJlZXJQYXRocy5wcm9tb3RlZENhcmVlclBhdGhzLm1hcChcbiAgICAgICAgICAocGF0aCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPEFwcEhlYWRlckRpZXRDYXJkXG4gICAgICAgICAgICAgICAga2V5PXtgJHtwYXRoLnRpdGxlfS1jYXJkYH1cbiAgICAgICAgICAgICAgICB0aXRsZT17cGF0aC50aXRsZX1cbiAgICAgICAgICAgICAgICBob3Vycz17cGF0aC5kdXJhdGlvbkhvdXJzfVxuICAgICAgICAgICAgICAgIGljb249ezxMZXZlbEljb24gLz59XG4gICAgICAgICAgICAgICAgZGlmZmljdWx0eT17cGF0aC5kaWZmaWN1bHR5IGFzIENvdXJzZURpZmZpY3VsdHl9XG4gICAgICAgICAgICAgICAgaHJlZj17cGF0aC51cmxQYXRofVxuICAgICAgICAgICAgICAgIHRyYWNraW5nVGFyZ2V0PXtgY2FyZWVycGF0aF8ke3BhdGgudGl0bGV9YH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICApfVxuICAgICAgPC9EaWV0Q2FyZEdyaWQ+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBTa2lsbFBhdGhzUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVyRHluYW1pY0RhdGEgfSA9IHVzZUdsb2JhbEhlYWRlckR5bmFtaWNEYXRhQ29udGV4dCgpO1xuICBjb25zdCB0b3RhbFNraWxsUGF0aENvdW50ID1cbiAgICBnbG9iYWxIZWFkZXJEeW5hbWljRGF0YT8uY2F0YWxvZ0Ryb3Bkb3duLnNraWxsUGF0aHMudG90YWxTa2lsbFBhdGhDb3VudDtcbiAgY29uc3QgbGlua1RleHQgPSBgRXhwbG9yZSBhbGwke1xuICAgIHRvdGFsU2tpbGxQYXRoQ291bnQgPyBgICR7dG90YWxTa2lsbFBhdGhDb3VudH1gIDogJydcbiAgfSBza2lsbCBwYXRoc2A7XG5cbiAgcmV0dXJuIChcbiAgICA8UGFuZWxMYXlvdXRcbiAgICAgIGhlYWRpbmc9XCJTa2lsbCBwYXRoc1wiXG4gICAgICBkZXNjcmlwdGlvbj1cIkJ1aWxkIGluIGRlbWFuZCBza2lsbHMgZmFzdCB3aXRoIGEgc2hvcnQsIGN1cmF0ZWQgcGF0aC4gRWFjaCBvbmUgaW5jbHVkZXMgaW50ZXJhY3RpdmUgY29udGVudCB0byBoZWxwIHlvdSBsZWFybiBhbmQgYXBwbHkgeW91ciBuZXcgc2tpbGwgaW4ganVzdCBhIGZldyBtb250aHMuXCJcbiAgICAgIGxpbmtJdGVtPXt7XG4gICAgICAgIHR5cGU6ICdsaW5rJyxcbiAgICAgICAgaHJlZjogJy9jYXRhbG9nP3R5cGU9c2tpbGwtcGF0aCcsXG4gICAgICAgIHRleHQ6IGxpbmtUZXh0LFxuICAgICAgICB0cmFja2luZ1RhcmdldDogJ3RvcG5hdl9jYXRhbG9nX2hlYWRlcl9leHBsb3JlX2FsbF9za2lsbF9wYXRocycsXG4gICAgICAgIGlkOiAnZXhwbG9yZS1hbGwtc2tpbGwtcGF0aHMnLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8RGlldENhcmRHcmlkPlxuICAgICAgICB7Z2xvYmFsSGVhZGVyRHluYW1pY0RhdGE/LmNhdGFsb2dEcm9wZG93bi5za2lsbFBhdGhzLnByb21vdGVkU2tpbGxQYXRocy5tYXAoXG4gICAgICAgICAgKHBhdGgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxBcHBIZWFkZXJEaWV0Q2FyZFxuICAgICAgICAgICAgICAgIGtleT17YCR7cGF0aC50aXRsZX0tY2FyZGB9XG4gICAgICAgICAgICAgICAgdGl0bGU9e3BhdGgudGl0bGV9XG4gICAgICAgICAgICAgICAgaG91cnM9e3BhdGguZHVyYXRpb25Ib3Vyc31cbiAgICAgICAgICAgICAgICBpY29uPXs8TGV2ZWxJY29uIC8+fVxuICAgICAgICAgICAgICAgIGRpZmZpY3VsdHk9e3BhdGguZGlmZmljdWx0eSBhcyBDb3Vyc2VEaWZmaWN1bHR5fVxuICAgICAgICAgICAgICAgIGhyZWY9e3BhdGgudXJsUGF0aH1cbiAgICAgICAgICAgICAgICB0cmFja2luZ1RhcmdldD17YHNraWxsXyR7cGF0aC50aXRsZX1gfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgICl9XG4gICAgICA8L0RpZXRDYXJkR3JpZD5cbiAgICA8L1BhbmVsTGF5b3V0PlxuICApO1xufTtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEdyYXlzY2FsZVRvQ29sb3JIb3ZlckxpbmsgPSBzdHlsZWQoQW5jaG9yKTx7XG4gIG92ZXJyaWRlSW1nRmlsdGVycz86IGJvb2xlYW47XG59PmBcbiAgYm9yZGVyOiAxcHggc29saWQgJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnNbJ2JvcmRlci10ZXJ0aWFyeSddfTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogZmlsdGVyIDAuMnMgZWFzZS1vdXQ7XG4gIGltZyB7XG4gICAgZmlsdGVyOiAkeyh7IG92ZXJyaWRlSW1nRmlsdGVycyB9KSA9PlxuICAgICAgb3ZlcnJpZGVJbWdGaWx0ZXJzID8gJ2NvbnRyYXN0KDUpJyA6ICdicmlnaHRuZXNzKDAuMjUpJ307XG4gICAgdHJhbnNpdGlvbjogZmlsdGVyIDAuMnMgZWFzZS1vdXQ7XG4gIH1cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgaW1nIHtcbiAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxKTtcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5oeXBlcn07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnNbJ25hdnktMTAwJ119O1xuICB9XG5gO1xuXG5jb25zdCBQcm92aWRlclRpbGUgPSAoe1xuICBuYW1lLFxuICBocmVmLFxuICBpbWdTcmMsXG4gIHRhYkluZGV4LFxufToge1xuICBuYW1lOiBzdHJpbmc7XG4gIGhyZWY6IHN0cmluZztcbiAgaW1nU3JjOiBzdHJpbmc7XG4gIHRhYkluZGV4OiBudW1iZXI7XG59KSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVySXRlbUNsaWNrIH0gPSB1c2VHbG9iYWxIZWFkZXJJdGVtQ2xpY2soKTtcbiAgY29uc3QgeyBoYW5kbGVDbG9zZSB9ID0gdXNlQXBwSGVhZGVyRHJvcGRvd25Db250ZXh0KCk7XG5cbiAgY29uc3QgbG93ZXJjYXNlZFByb3ZpZGVyTmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKTtcblxuICByZXR1cm4gKFxuICAgIDxHcmF5c2NhbGVUb0NvbG9ySG92ZXJMaW5rXG4gICAgICBocmVmPXtocmVmfVxuICAgICAgdmFyaWFudD1cImludGVyZmFjZVwiXG4gICAgICBrZXk9e25hbWV9XG4gICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgaGVpZ2h0PXs0OH1cbiAgICAgIHA9ezh9XG4gICAgICBkaXNwbGF5PVwiYmxvY2tcIlxuICAgICAgb25DbGljaz17KGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xuICAgICAgICBnbG9iYWxIZWFkZXJJdGVtQ2xpY2soZXZlbnQsIHtcbiAgICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgICAgaWQ6IGB0b3BuYXZfY2F0YWxvZ19jZXJ0XyR7bG93ZXJjYXNlZFByb3ZpZGVyTmFtZX1gLFxuICAgICAgICAgIGhyZWYsXG4gICAgICAgICAgdGV4dDogbmFtZSxcbiAgICAgICAgICB0cmFja2luZ1RhcmdldDogYHRvcG5hdl9jYXRhbG9nX2NlcnRfJHtsb3dlcmNhc2VkUHJvdmlkZXJOYW1lfWAsXG4gICAgICAgIH0pO1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfX1cbiAgICAgIG92ZXJyaWRlSW1nRmlsdGVycz17bmFtZS50b0xvd2VyQ2FzZSgpID09PSAna3ViZXJuZXRlcyd9XG4gICAgPlxuICAgICAgPEltYWdlIHNyYz17aW1nU3JjfSBhbHQ9e25hbWV9IGRpc3BsYXk9XCJibG9ja1wiIG09XCJhdXRvXCIgLz5cbiAgICA8L0dyYXlzY2FsZVRvQ29sb3JIb3Zlckxpbms+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgQ2VydGlmaWNhdGlvblBhdGhzUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVyRHluYW1pY0RhdGEgfSA9IHVzZUdsb2JhbEhlYWRlckR5bmFtaWNEYXRhQ29udGV4dCgpO1xuICBjb25zdCB7IHRhYkluZGV4IH0gPSB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCgpO1xuICBjb25zdCB0b3RhbENlcnRpZmljYXRpb25QYXRoQ291bnQgPVxuICAgIGdsb2JhbEhlYWRlckR5bmFtaWNEYXRhPy5jYXRhbG9nRHJvcGRvd24uY2VydGlmaWNhdGlvblBhdGhzXG4gICAgICAudG90YWxDZXJ0aWZpY2F0aW9uUGF0aENvdW50O1xuICBjb25zdCBsaW5rVGV4dCA9IGBFeHBsb3JlIGFsbCR7XG4gICAgdG90YWxDZXJ0aWZpY2F0aW9uUGF0aENvdW50ID8gYCAke3RvdGFsQ2VydGlmaWNhdGlvblBhdGhDb3VudH1gIDogJydcbiAgfSBjZXJ0aWZpY2F0aW9uIHBhdGhzYDtcblxuICByZXR1cm4gKFxuICAgIDxQYW5lbExheW91dFxuICAgICAgaGVhZGluZz1cIkNlcnRpZmljYXRpb24gcGF0aHNcIlxuICAgICAgZGVzY3JpcHRpb249XCJQcmVwYXJlIGZvciB0b3AgaW5kdXN0cnkgY2VydGlmaWNhdGlvbnMgd2l0aCBhIGd1aWRlZCBwYXRoLiBFYWNoIG9uZSBpbmNsdWRlcyBleHBlcnQtcmV2aWV3ZWQgbGVzc29ucywgaGFuZHMtb24gcHJvamVjdHMsIGFuZCBwcmFjdGljZSB0ZXN0cyB0byBoZWxwIHlvdSBwYXNzIHRoZSBleGFtLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZy9jZXJ0aWZpY2F0aW9uLXByZXAnLFxuICAgICAgICB0ZXh0OiBsaW5rVGV4dCxcbiAgICAgICAgdHJhY2tpbmdUYXJnZXQ6ICd0b3BuYXZfY2F0YWxvZ19oZWFkZXJfZXhwbG9yZV9hbGxfY2VydGlmaWNhdGlvbl9wYXRocycsXG4gICAgICAgIGlkOiAnZXhwbG9yZS1hbGwtY2VydGlmaWNhdGlvbi1wYXRocycsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxUZXh0IGFzPVwiaDNcIiBmb250U2l6ZT17MTh9IGZvbnRXZWlnaHQ9XCJib2xkXCI+XG4gICAgICAgIFByb3ZpZGVyc1xuICAgICAgPC9UZXh0PlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17e1xuICAgICAgICAgIF86ICcxZnInLFxuICAgICAgICAgIHhzOiAncmVwZWF0KDIsIDFmciknLFxuICAgICAgICAgIHNtOiAncmVwZWF0KDMsIDFmciknLFxuICAgICAgICAgIG1kOiAncmVwZWF0KDQsIDFmciknLFxuICAgICAgICB9fVxuICAgICAgICBnYXA9ezE2fVxuICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICBhcz1cInVsXCJcbiAgICAgICAgbGlzdFN0eWxlPVwibm9uZVwiXG4gICAgICAgIHA9ezB9XG4gICAgICAgIG09ezB9XG4gICAgICA+XG4gICAgICAgIHtDRVJUSUZJQ0FUSU9OX1BST1ZJREVSUy5tYXAoKHsgbmFtZSwgbG9nb1VybCwgaHViVHlwZSB9KSA9PiAoXG4gICAgICAgICAgPEJveCBhcz1cImxpXCIga2V5PXtuYW1lfSB3aWR0aD1cIjEwMCVcIj5cbiAgICAgICAgICAgIDxQcm92aWRlclRpbGVcbiAgICAgICAgICAgICAgbmFtZT17bmFtZX1cbiAgICAgICAgICAgICAgaHJlZj17XG4gICAgICAgICAgICAgICAgaHViVHlwZSA9PT0gJ3N1Ymh1YidcbiAgICAgICAgICAgICAgICAgID8gYC9zZWFyY2g/cXVlcnk9JHtuYW1lfSBjZXJ0aWZpY2F0aW9uc2BcbiAgICAgICAgICAgICAgICAgIDogYC9jYXRhbG9nL2NlcnRpZmljYXRpb24tcHJlcD9wcm92aWRlcj0ke25hbWUudG9Mb3dlckNhc2UoKX1gXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW1nU3JjPXtsb2dvVXJsfVxuICAgICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICApKX1cbiAgICAgIDwvR3JpZEJveD5cbiAgICA8L1BhbmVsTGF5b3V0PlxuICApO1xufTtcblxuY29uc3QgTGl2ZUxlYXJuaW5nSW1hZ2UgPSBzdHlsZWQuaW1nYFxuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG5gO1xuXG5leHBvcnQgY29uc3QgTGl2ZUxlYXJuaW5nUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVySXRlbUNsaWNrIH0gPSB1c2VHbG9iYWxIZWFkZXJJdGVtQ2xpY2soKTtcbiAgY29uc3QgeyBpc0NvYWNoaW5nRW5hYmxlZCwgdGFiSW5kZXggfSA9IHVzZUFwcEhlYWRlclNlY3Rpb25Db250ZXh0KCk7XG4gIGNvbnN0IGdldEltYWdlVXJsID0gKGlkOiBzdHJpbmcpID0+XG4gICAgYGh0dHBzOi8vc3RhdGljLWFzc2V0cy5jb2RlY2FkZW15LmNvbS9hc3NldHMvY29tcG9uZW50cy9jYXJkcy9nbG9iYWwtaGVhZGVyL2xpdmUtbGVhcm5pbmcvdjEvJHtpZH0ud2VicGA7XG4gIGNvbnN0IHsgaGFuZGxlQ2xvc2UgfSA9IHVzZUFwcEhlYWRlckRyb3Bkb3duQ29udGV4dCgpO1xuXG4gIGNvbnN0IGxpdmVMZWFybmluZ0l0ZW1zID0gbGl2ZUxlYXJuaW5nTmF2UGFuZWxJdGVtcyhpc0NvYWNoaW5nRW5hYmxlZCk7XG5cbiAgcmV0dXJuIChcbiAgICA8UGFuZWxMYXlvdXRcbiAgICAgIGhlYWRpbmc9XCJMaXZlIGxlYXJuaW5nXCJcbiAgICAgIGRlc2NyaXB0aW9uPXtsaXZlTGVhcm5pbmdJdGVtcy5kZXNjcmlwdGlvbn1cbiAgICA+XG4gICAgICA8R3JpZEJveFxuICAgICAgICBncmlkVGVtcGxhdGVDb2x1bW5zPXt7IF86ICcxZnInLCBtZDogJ3JlcGVhdCgyLCAxZnIpJyB9fVxuICAgICAgICBnYXA9ezE2fVxuICAgICAgPlxuICAgICAgICB7bGl2ZUxlYXJuaW5nSXRlbXMuZGF0YS5tYXAoKGl0ZW0pID0+IChcbiAgICAgICAgICA8QW5jaG9yXG4gICAgICAgICAgICBocmVmPXtpdGVtLmhyZWZ9XG4gICAgICAgICAgICBrZXk9e2l0ZW0uaWR9XG4gICAgICAgICAgICB2YXJpYW50PVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgIG9uQ2xpY2s9eyhcbiAgICAgICAgICAgICAgZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+XG4gICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgZ2xvYmFsSGVhZGVySXRlbUNsaWNrKGV2ZW50LCBpdGVtKTtcbiAgICAgICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPENhcmRcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBvdmVyZmxvdz1cImhpZGRlblwiXG4gICAgICAgICAgICAgIGJvcmRlcj17MX1cbiAgICAgICAgICAgICAgYm9yZGVyQ29sb3I9XCJib3JkZXItdGVydGlhcnlcIlxuICAgICAgICAgICAgICBib3JkZXJSYWRpdXM9XCJsZ1wiXG4gICAgICAgICAgICAgIGlzSW50ZXJhY3RpdmVcbiAgICAgICAgICAgICAgcD17MH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPExpdmVMZWFybmluZ0ltYWdlXG4gICAgICAgICAgICAgICAgc3JjPXtnZXRJbWFnZVVybChpdGVtLmlkKX1cbiAgICAgICAgICAgICAgICBhbHQ9XCJcIlxuICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPEZsZXhCb3ggZmxleERpcmVjdGlvbj1cImNvbHVtblwiIGdhcD17OH0gcD17MTZ9PlxuICAgICAgICAgICAgICAgIDxUZXh0IHZhcmlhbnQ9XCJ0aXRsZS14c1wiPntpdGVtLnRleHR9PC9UZXh0PlxuICAgICAgICAgICAgICAgIHsnZGVzY3JpcHRpb24nIGluIGl0ZW0gJiYgPFRleHQ+e2l0ZW0uZGVzY3JpcHRpb259PC9UZXh0Pn1cbiAgICAgICAgICAgICAgPC9GbGV4Qm94PlxuICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgIDwvQW5jaG9yPlxuICAgICAgICApKX1cbiAgICAgIDwvR3JpZEJveD5cbiAgICA8L1BhbmVsTGF5b3V0PlxuICApO1xufTtcbiJdfQ== */"));
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
alt: name,
|
|
216
|
-
display: "block",
|
|
217
|
-
m: "auto"
|
|
218
|
-
})
|
|
219
|
-
}, name);
|
|
144
|
+
const Image = Box.withComponent("img");
|
|
145
|
+
const GrayscaleToColorHoverLink = styled(Anchor)`
|
|
146
|
+
border: 1px solid ${({ theme }) => theme.colors["border-tertiary"]};
|
|
147
|
+
border-radius: 8px;
|
|
148
|
+
filter: grayscale(1);
|
|
149
|
+
transition: filter 0.2s ease-out;
|
|
150
|
+
img {
|
|
151
|
+
filter: ${({ overrideImgFilters }) => overrideImgFilters ? "contrast(5)" : "brightness(0.25)"};
|
|
152
|
+
transition: filter 0.2s ease-out;
|
|
153
|
+
}
|
|
154
|
+
&:hover,
|
|
155
|
+
&:focus {
|
|
156
|
+
filter: grayscale(0);
|
|
157
|
+
img {
|
|
158
|
+
filter: brightness(1);
|
|
159
|
+
}
|
|
160
|
+
border-color: ${({ theme }) => theme.colors.hyper};
|
|
161
|
+
background-color: ${({ theme }) => theme.colors["navy-100"]};
|
|
162
|
+
}
|
|
163
|
+
`;
|
|
164
|
+
const ProviderTile = ({ name, href, imgSrc, tabIndex }) => {
|
|
165
|
+
const { globalHeaderItemClick } = useGlobalHeaderItemClick();
|
|
166
|
+
const { handleClose } = useAppHeaderDropdownContext();
|
|
167
|
+
const lowercasedProviderName = name.toLowerCase();
|
|
168
|
+
return /* @__PURE__ */ jsx(GrayscaleToColorHoverLink, {
|
|
169
|
+
href,
|
|
170
|
+
variant: "interface",
|
|
171
|
+
tabIndex,
|
|
172
|
+
width: "100%",
|
|
173
|
+
height: 48,
|
|
174
|
+
p: 8,
|
|
175
|
+
display: "block",
|
|
176
|
+
onClick: (event) => {
|
|
177
|
+
globalHeaderItemClick(event, {
|
|
178
|
+
type: "link",
|
|
179
|
+
id: `topnav_catalog_cert_${lowercasedProviderName}`,
|
|
180
|
+
href,
|
|
181
|
+
text: name,
|
|
182
|
+
trackingTarget: `topnav_catalog_cert_${lowercasedProviderName}`
|
|
183
|
+
});
|
|
184
|
+
handleClose();
|
|
185
|
+
},
|
|
186
|
+
overrideImgFilters: name.toLowerCase() === "kubernetes",
|
|
187
|
+
children: /* @__PURE__ */ jsx(Image, {
|
|
188
|
+
src: imgSrc,
|
|
189
|
+
alt: name,
|
|
190
|
+
display: "block",
|
|
191
|
+
m: "auto"
|
|
192
|
+
})
|
|
193
|
+
}, name);
|
|
220
194
|
};
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
children: /*#__PURE__*/_jsx(ProviderTile, {
|
|
266
|
-
name: name,
|
|
267
|
-
href: hubType === 'subhub' ? `/search?query=${name} certifications` : `/catalog/certification-prep?provider=${name.toLowerCase()}`,
|
|
268
|
-
imgSrc: logoUrl,
|
|
269
|
-
tabIndex: tabIndex
|
|
270
|
-
})
|
|
271
|
-
}, name))
|
|
272
|
-
})]
|
|
273
|
-
});
|
|
195
|
+
const CertificationPathsPanel = () => {
|
|
196
|
+
const { globalHeaderDynamicData } = useGlobalHeaderDynamicDataContext();
|
|
197
|
+
const { tabIndex } = useAppHeaderSectionContext();
|
|
198
|
+
const totalCertificationPathCount = globalHeaderDynamicData?.catalogDropdown.certificationPaths.totalCertificationPathCount;
|
|
199
|
+
return /* @__PURE__ */ jsxs(PanelLayout, {
|
|
200
|
+
heading: "Certification paths",
|
|
201
|
+
description: "Prepare for top industry certifications with a guided path. Each one includes expert-reviewed lessons, hands-on projects, and practice tests to help you pass the exam.",
|
|
202
|
+
linkItem: {
|
|
203
|
+
type: "link",
|
|
204
|
+
href: "/catalog/certification-prep",
|
|
205
|
+
text: `Explore all${totalCertificationPathCount ? ` ${totalCertificationPathCount}` : ""} certification paths`,
|
|
206
|
+
trackingTarget: "topnav_catalog_header_explore_all_certification_paths",
|
|
207
|
+
id: "explore-all-certification-paths"
|
|
208
|
+
},
|
|
209
|
+
children: [/* @__PURE__ */ jsx(Text, {
|
|
210
|
+
as: "h3",
|
|
211
|
+
fontSize: 18,
|
|
212
|
+
fontWeight: "bold",
|
|
213
|
+
children: "Providers"
|
|
214
|
+
}), /* @__PURE__ */ jsx(GridBox, {
|
|
215
|
+
gridTemplateColumns: {
|
|
216
|
+
_: "1fr",
|
|
217
|
+
xs: "repeat(2, 1fr)",
|
|
218
|
+
sm: "repeat(3, 1fr)",
|
|
219
|
+
md: "repeat(4, 1fr)"
|
|
220
|
+
},
|
|
221
|
+
gap: 16,
|
|
222
|
+
width: "100%",
|
|
223
|
+
as: "ul",
|
|
224
|
+
listStyle: "none",
|
|
225
|
+
p: 0,
|
|
226
|
+
m: 0,
|
|
227
|
+
children: CERTIFICATION_PROVIDERS.map(({ name, logoUrl, hubType }) => /* @__PURE__ */ jsx(Box, {
|
|
228
|
+
as: "li",
|
|
229
|
+
width: "100%",
|
|
230
|
+
children: /* @__PURE__ */ jsx(ProviderTile, {
|
|
231
|
+
name,
|
|
232
|
+
href: hubType === "subhub" ? `/search?query=${name} certifications` : `/catalog/certification-prep?provider=${name.toLowerCase()}`,
|
|
233
|
+
imgSrc: logoUrl,
|
|
234
|
+
tabIndex
|
|
235
|
+
})
|
|
236
|
+
}, name))
|
|
237
|
+
})]
|
|
238
|
+
});
|
|
274
239
|
};
|
|
275
|
-
const LiveLearningImage =
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
styles: "object-fit:cover;width:100%/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9BcHBIZWFkZXIvQXBwSGVhZGVyRWxlbWVudHMvQXBwSGVhZGVyQ2F0YWxvZ0Ryb3Bkb3duL05hdlBhbmVscy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb1VvQyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMvQXBwSGVhZGVyL0FwcEhlYWRlckVsZW1lbnRzL0FwcEhlYWRlckNhdGFsb2dEcm9wZG93bi9OYXZQYW5lbHMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5jaG9yLCBCb3gsIENhcmQsIEZsZXhCb3gsIEdyaWRCb3gsIFRleHQgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBMZXZlbEljb24gfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB7IENvdXJzZURpZmZpY3VsdHkgfSBmcm9tICcuLi8uLi8uLi9Db250ZW50R3JvdXBCYXNlQ2FyZC90eXBlcyc7XG5pbXBvcnQge1xuICB1c2VHbG9iYWxIZWFkZXJEeW5hbWljRGF0YUNvbnRleHQsXG4gIHVzZUdsb2JhbEhlYWRlckl0ZW1DbGljayxcbn0gZnJvbSAnLi4vLi4vLi4vR2xvYmFsSGVhZGVyL2NvbnRleHQnO1xuaW1wb3J0IHsgbGl2ZUxlYXJuaW5nTmF2UGFuZWxJdGVtcyB9IGZyb20gJy4uLy4uLy4uL2xpYi9jYXRhbG9nTGlzdCc7XG5pbXBvcnQgeyBBcHBIZWFkZXJEaWV0Q2FyZCB9IGZyb20gJy4uL0FwcEhlYWRlckRpZXRDYXJkJztcbmltcG9ydCB7IHVzZUFwcEhlYWRlckRyb3Bkb3duQ29udGV4dCB9IGZyb20gJy4uL0FwcEhlYWRlckRyb3Bkb3duUHJvdmlkZXInO1xuaW1wb3J0IHsgdXNlQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQgfSBmcm9tICcuLi9BcHBIZWFkZXJTZWN0aW9uL0FwcEhlYWRlclNlY3Rpb25Db250ZXh0JztcbmltcG9ydCB7IFBhbmVsTGF5b3V0IH0gZnJvbSAnLi4vQXBwSGVhZGVyU2VjdGlvbi9QYW5lbExheW91dCc7XG5pbXBvcnQgeyBTa2lsbFRpbGUgfSBmcm9tICcuLi9BcHBIZWFkZXJTa2lsbFRpbGUnO1xuaW1wb3J0IHtcbiAgQ0VSVElGSUNBVElPTl9QUk9WSURFUlMsXG4gIHBvcHVsYXJMYW5ndWFnZXMsXG4gIHBvcHVsYXJTdWJqZWN0cyxcbn0gZnJvbSAnLi9jb25zdHMnO1xuXG5leHBvcnQgY29uc3QgQ291cnNlVG9waWNzUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVySXRlbUNsaWNrIH0gPSB1c2VHbG9iYWxIZWFkZXJJdGVtQ2xpY2soKTtcbiAgY29uc3QgeyB0YWJJbmRleCB9ID0gdXNlQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQoKTtcblxuICBjb25zdCBkZXNjcmlwdGlvbiA9IChcbiAgICA8PlxuICAgICAgRXhwbG9yZSBmcmVlIG9yIHBhaWQgY291cnNlcyBpbiBhIHdpZGUgdmFyaWV0eSBvZiB0b3BpY3MuIFdpdGggc29tZXRoaW5nXG4gICAgICBmb3IgZXZlcnkgc2tpbGwgbGV2ZWwsIGl0JmFwb3M7cyBlYXN5IHRvIGZpbmQgYSBjb3Vyc2UgdGhhdCBmaXRzIHlvdXJcbiAgICAgIGdvYWxzLiBOb3Qgc3VyZSB3aGVyZSB0byBzdGFydD8gJm5ic3A7XG4gICAgICA8QW5jaG9yXG4gICAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgICAgaHJlZj1cIi93ZWxjb21lL2ZpbmQtYS1jb3Vyc2VcIlxuICAgICAgICBvbkNsaWNrPXsoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PlxuICAgICAgICAgIGdsb2JhbEhlYWRlckl0ZW1DbGljayhldmVudCwge1xuICAgICAgICAgICAgdHlwZTogJ2xpbmsnLFxuICAgICAgICAgICAgaHJlZjogJy93ZWxjb21lL2ZpbmQtYS1jb3Vyc2UnLFxuICAgICAgICAgICAgdGV4dDogJ1Rha2UgdGhlIHF1aXonLFxuICAgICAgICAgICAgaWQ6ICd0YWtlLXRoZS1xdWl6JyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIFRha2UgdGhlIHF1aXpcbiAgICAgIDwvQW5jaG9yPlxuICAgIDwvPlxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiQ291cnNlIHRvcGljc1wiXG4gICAgICBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259XG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZycsXG4gICAgICAgIHRleHQ6ICdFeHBsb3JlIHRoZSBmdWxsIGNhdGFsb2cnLFxuICAgICAgICB0cmFja2luZ1RhcmdldDogJ3RvcG5hdl9jYXRhbG9nJyxcbiAgICAgICAgaWQ6ICdleHBsb3JlLWFsbC1jb3Vyc2VzJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPFRleHQgdmFyaWFudD1cInAtbGFyZ2VcIiBmb250V2VpZ2h0PXs3MDB9IGFzPVwiaDNcIj5cbiAgICAgICAgUG9wdWxhciBsYW5ndWFnZXNcbiAgICAgIDwvVGV4dD5cbiAgICAgIDxHcmlkQm94XG4gICAgICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM9e3sgXzogJzFmcicsIHhzOiAnMWZyIDFmcicsIG1kOiAnMWZyIDFmciAxZnInIH19XG4gICAgICAgIGdhcD17OH1cbiAgICAgICAgcGw9ezB9XG4gICAgICAgIGFzPVwidWxcIlxuICAgICAgICBsaXN0U3R5bGU9XCJub25lXCJcbiAgICAgICAgbWI9ezI0fVxuICAgICAgPlxuICAgICAgICB7cG9wdWxhckxhbmd1YWdlcy5tYXAoKGl0ZW0pID0+IChcbiAgICAgICAgICA8bGkga2V5PXtpdGVtLmlkfT5cbiAgICAgICAgICAgIDxTa2lsbFRpbGUgaXRlbT17aXRlbX0gLz5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICApKX1cbiAgICAgIDwvR3JpZEJveD5cblxuICAgICAgPFRleHQgdmFyaWFudD1cInAtbGFyZ2VcIiBmb250V2VpZ2h0PXs3MDB9IGFzPVwiaDNcIj5cbiAgICAgICAgUG9wdWxhciBzdWJqZWN0c1xuICAgICAgPC9UZXh0PlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17eyBfOiAnMWZyJywgeHM6ICcxZnIgMWZyJywgbWQ6ICcxZnIgMWZyIDFmcicgfX1cbiAgICAgICAgZ2FwPXs4fVxuICAgICAgICBwbD17MH1cbiAgICAgICAgYXM9XCJ1bFwiXG4gICAgICAgIGxpc3RTdHlsZT1cIm5vbmVcIlxuICAgICAgPlxuICAgICAgICB7cG9wdWxhclN1YmplY3RzLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgIDxsaSBrZXk9e2l0ZW0uaWR9PlxuICAgICAgICAgICAgPFNraWxsVGlsZSBpdGVtPXtpdGVtfSAvPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICkpfVxuICAgICAgPC9HcmlkQm94PlxuICAgIDwvUGFuZWxMYXlvdXQ+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgRGlldENhcmRHcmlkID0gKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8R3JpZEJveFxuICAgICAgYXM9XCJ1bFwiXG4gICAgICBncmlkVGVtcGxhdGVDb2x1bW5zPXt7XG4gICAgICAgIF86ICcxZnInLFxuICAgICAgICBzbTogJ3JlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSknLFxuICAgICAgICBtZDogJ3JlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSknLFxuICAgICAgfX1cbiAgICAgIGdhcD17MTZ9XG4gICAgICBtPXswfVxuICAgICAgcD17MH1cbiAgICAgIGxpc3RTdHlsZVR5cGU9XCJub25lXCJcbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9HcmlkQm94PlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IENhcmVlclBhdGhzUGFuZWwgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2xvYmFsSGVhZGVyRHluYW1pY0RhdGEgfSA9IHVzZUdsb2JhbEhlYWRlckR5bmFtaWNEYXRhQ29udGV4dCgpO1xuICBjb25zdCB0b3RhbENhcmVlclBhdGhDb3VudCA9XG4gICAgZ2xvYmFsSGVhZGVyRHluYW1pY0RhdGE/LmNhdGFsb2dEcm9wZG93bi5jYXJlZXJQYXRocy50b3RhbENhcmVlclBhdGhDb3VudDtcbiAgY29uc3QgbGlua1RleHQgPSBgRXhwbG9yZSBhbGwke1xuICAgIHRvdGFsQ2FyZWVyUGF0aENvdW50ID8gYCAke3RvdGFsQ2FyZWVyUGF0aENvdW50fWAgOiAnJ1xuICB9IGNhcmVlciBwYXRoc2A7XG5cbiAgcmV0dXJuIChcbiAgICA8UGFuZWxMYXlvdXRcbiAgICAgIGhlYWRpbmc9XCJDYXJlZXIgcGF0aHNcIlxuICAgICAgZGVzY3JpcHRpb249XCJDaG9vc2UgeW91ciBjYXJlZXIgYW5kIHdlJ2xsIHRlYWNoIHlvdSB0aGUgc2tpbGxzIHRvIGdldCBqb2ItcmVhZHkuIEVhY2ggQ2FyZWVyIFBhdGggY29udGFpbnMgYSBjdXJhdGVkIGxpc3Qgb2YgbGVzc29ucywgcXVpenplcywgdmlkZW9zLCBhbmQgcHJvamVjdHMgdG8gaGVscCB5b3UgbGVhcm4gYW5kIHByYWN0aWNlIHJlYWwtd29ybGQgc2tpbGxzLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZz90eXBlPWNhcmVlci1wYXRoJyxcbiAgICAgICAgdGV4dDogbGlua1RleHQsXG4gICAgICAgIHRyYWNraW5nVGFyZ2V0OiAndG9wbmF2X2NhdGFsb2dfaGVhZGVyX2V4cGxvcmVfYWxsX2NhcmVlcl9wYXRocycsXG4gICAgICAgIGlkOiAnZXhwbG9yZS1hbGwtY2FyZWVyLXBhdGhzJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPERpZXRDYXJkR3JpZD5cbiAgICAgICAge2dsb2JhbEhlYWRlckR5bmFtaWNEYXRhPy5jYXRhbG9nRHJvcGRvd24uY2FyZWVyUGF0aHMucHJvbW90ZWRDYXJlZXJQYXRocy5tYXAoXG4gICAgICAgICAgKHBhdGgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxBcHBIZWFkZXJEaWV0Q2FyZFxuICAgICAgICAgICAgICAgIGtleT17YCR7cGF0aC50aXRsZX0tY2FyZGB9XG4gICAgICAgICAgICAgICAgdGl0bGU9e3BhdGgudGl0bGV9XG4gICAgICAgICAgICAgICAgaG91cnM9e3BhdGguZHVyYXRpb25Ib3Vyc31cbiAgICAgICAgICAgICAgICBpY29uPXs8TGV2ZWxJY29uIC8+fVxuICAgICAgICAgICAgICAgIGRpZmZpY3VsdHk9e3BhdGguZGlmZmljdWx0eSBhcyBDb3Vyc2VEaWZmaWN1bHR5fVxuICAgICAgICAgICAgICAgIGhyZWY9e3BhdGgudXJsUGF0aH1cbiAgICAgICAgICAgICAgICB0cmFja2luZ1RhcmdldD17YGNhcmVlcnBhdGhfJHtwYXRoLnRpdGxlfWB9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgKX1cbiAgICAgIDwvRGlldENhcmRHcmlkPlxuICAgIDwvUGFuZWxMYXlvdXQ+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgU2tpbGxQYXRoc1BhbmVsID0gKCkgPT4ge1xuICBjb25zdCB7IGdsb2JhbEhlYWRlckR5bmFtaWNEYXRhIH0gPSB1c2VHbG9iYWxIZWFkZXJEeW5hbWljRGF0YUNvbnRleHQoKTtcbiAgY29uc3QgdG90YWxTa2lsbFBhdGhDb3VudCA9XG4gICAgZ2xvYmFsSGVhZGVyRHluYW1pY0RhdGE/LmNhdGFsb2dEcm9wZG93bi5za2lsbFBhdGhzLnRvdGFsU2tpbGxQYXRoQ291bnQ7XG4gIGNvbnN0IGxpbmtUZXh0ID0gYEV4cGxvcmUgYWxsJHtcbiAgICB0b3RhbFNraWxsUGF0aENvdW50ID8gYCAke3RvdGFsU2tpbGxQYXRoQ291bnR9YCA6ICcnXG4gIH0gc2tpbGwgcGF0aHNgO1xuXG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiU2tpbGwgcGF0aHNcIlxuICAgICAgZGVzY3JpcHRpb249XCJCdWlsZCBpbiBkZW1hbmQgc2tpbGxzIGZhc3Qgd2l0aCBhIHNob3J0LCBjdXJhdGVkIHBhdGguIEVhY2ggb25lIGluY2x1ZGVzIGludGVyYWN0aXZlIGNvbnRlbnQgdG8gaGVscCB5b3UgbGVhcm4gYW5kIGFwcGx5IHlvdXIgbmV3IHNraWxsIGluIGp1c3QgYSBmZXcgbW9udGhzLlwiXG4gICAgICBsaW5rSXRlbT17e1xuICAgICAgICB0eXBlOiAnbGluaycsXG4gICAgICAgIGhyZWY6ICcvY2F0YWxvZz90eXBlPXNraWxsLXBhdGgnLFxuICAgICAgICB0ZXh0OiBsaW5rVGV4dCxcbiAgICAgICAgdHJhY2tpbmdUYXJnZXQ6ICd0b3BuYXZfY2F0YWxvZ19oZWFkZXJfZXhwbG9yZV9hbGxfc2tpbGxfcGF0aHMnLFxuICAgICAgICBpZDogJ2V4cGxvcmUtYWxsLXNraWxsLXBhdGhzJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPERpZXRDYXJkR3JpZD5cbiAgICAgICAge2dsb2JhbEhlYWRlckR5bmFtaWNEYXRhPy5jYXRhbG9nRHJvcGRvd24uc2tpbGxQYXRocy5wcm9tb3RlZFNraWxsUGF0aHMubWFwKFxuICAgICAgICAgIChwYXRoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICA8QXBwSGVhZGVyRGlldENhcmRcbiAgICAgICAgICAgICAgICBrZXk9e2Ake3BhdGgudGl0bGV9LWNhcmRgfVxuICAgICAgICAgICAgICAgIHRpdGxlPXtwYXRoLnRpdGxlfVxuICAgICAgICAgICAgICAgIGhvdXJzPXtwYXRoLmR1cmF0aW9uSG91cnN9XG4gICAgICAgICAgICAgICAgaWNvbj17PExldmVsSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBkaWZmaWN1bHR5PXtwYXRoLmRpZmZpY3VsdHkgYXMgQ291cnNlRGlmZmljdWx0eX1cbiAgICAgICAgICAgICAgICBocmVmPXtwYXRoLnVybFBhdGh9XG4gICAgICAgICAgICAgICAgdHJhY2tpbmdUYXJnZXQ9e2Bza2lsbF8ke3BhdGgudGl0bGV9YH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICApfVxuICAgICAgPC9EaWV0Q2FyZEdyaWQ+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmNvbnN0IEltYWdlID0gQm94LndpdGhDb21wb25lbnQoJ2ltZycpO1xuXG5jb25zdCBHcmF5c2NhbGVUb0NvbG9ySG92ZXJMaW5rID0gc3R5bGVkKEFuY2hvcik8e1xuICBvdmVycmlkZUltZ0ZpbHRlcnM/OiBib29sZWFuO1xufT5gXG4gIGJvcmRlcjogMXB4IHNvbGlkICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzWydib3JkZXItdGVydGlhcnknXX07XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2Utb3V0O1xuICBpbWcge1xuICAgIGZpbHRlcjogJHsoeyBvdmVycmlkZUltZ0ZpbHRlcnMgfSkgPT5cbiAgICAgIG92ZXJyaWRlSW1nRmlsdGVycyA/ICdjb250cmFzdCg1KScgOiAnYnJpZ2h0bmVzcygwLjI1KSd9O1xuICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGVhc2Utb3V0O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgIGltZyB7XG4gICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMSk7XG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMuaHlwZXJ9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzWyduYXZ5LTEwMCddfTtcbiAgfVxuYDtcblxuY29uc3QgUHJvdmlkZXJUaWxlID0gKHtcbiAgbmFtZSxcbiAgaHJlZixcbiAgaW1nU3JjLFxuICB0YWJJbmRleCxcbn06IHtcbiAgbmFtZTogc3RyaW5nO1xuICBocmVmOiBzdHJpbmc7XG4gIGltZ1NyYzogc3RyaW5nO1xuICB0YWJJbmRleDogbnVtYmVyO1xufSkgPT4ge1xuICBjb25zdCB7IGdsb2JhbEhlYWRlckl0ZW1DbGljayB9ID0gdXNlR2xvYmFsSGVhZGVySXRlbUNsaWNrKCk7XG4gIGNvbnN0IHsgaGFuZGxlQ2xvc2UgfSA9IHVzZUFwcEhlYWRlckRyb3Bkb3duQ29udGV4dCgpO1xuXG4gIGNvbnN0IGxvd2VyY2FzZWRQcm92aWRlck5hbWUgPSBuYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8R3JheXNjYWxlVG9Db2xvckhvdmVyTGlua1xuICAgICAgaHJlZj17aHJlZn1cbiAgICAgIHZhcmlhbnQ9XCJpbnRlcmZhY2VcIlxuICAgICAga2V5PXtuYW1lfVxuICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgIGhlaWdodD17NDh9XG4gICAgICBwPXs4fVxuICAgICAgZGlzcGxheT1cImJsb2NrXCJcbiAgICAgIG9uQ2xpY2s9eyhldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MQW5jaG9yRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcbiAgICAgICAgZ2xvYmFsSGVhZGVySXRlbUNsaWNrKGV2ZW50LCB7XG4gICAgICAgICAgdHlwZTogJ2xpbmsnLFxuICAgICAgICAgIGlkOiBgdG9wbmF2X2NhdGFsb2dfY2VydF8ke2xvd2VyY2FzZWRQcm92aWRlck5hbWV9YCxcbiAgICAgICAgICBocmVmLFxuICAgICAgICAgIHRleHQ6IG5hbWUsXG4gICAgICAgICAgdHJhY2tpbmdUYXJnZXQ6IGB0b3BuYXZfY2F0YWxvZ19jZXJ0XyR7bG93ZXJjYXNlZFByb3ZpZGVyTmFtZX1gLFxuICAgICAgICB9KTtcbiAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgIH19XG4gICAgICBvdmVycmlkZUltZ0ZpbHRlcnM9e25hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2t1YmVybmV0ZXMnfVxuICAgID5cbiAgICAgIDxJbWFnZSBzcmM9e2ltZ1NyY30gYWx0PXtuYW1lfSBkaXNwbGF5PVwiYmxvY2tcIiBtPVwiYXV0b1wiIC8+XG4gICAgPC9HcmF5c2NhbGVUb0NvbG9ySG92ZXJMaW5rPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IENlcnRpZmljYXRpb25QYXRoc1BhbmVsID0gKCkgPT4ge1xuICBjb25zdCB7IGdsb2JhbEhlYWRlckR5bmFtaWNEYXRhIH0gPSB1c2VHbG9iYWxIZWFkZXJEeW5hbWljRGF0YUNvbnRleHQoKTtcbiAgY29uc3QgeyB0YWJJbmRleCB9ID0gdXNlQXBwSGVhZGVyU2VjdGlvbkNvbnRleHQoKTtcbiAgY29uc3QgdG90YWxDZXJ0aWZpY2F0aW9uUGF0aENvdW50ID1cbiAgICBnbG9iYWxIZWFkZXJEeW5hbWljRGF0YT8uY2F0YWxvZ0Ryb3Bkb3duLmNlcnRpZmljYXRpb25QYXRoc1xuICAgICAgLnRvdGFsQ2VydGlmaWNhdGlvblBhdGhDb3VudDtcbiAgY29uc3QgbGlua1RleHQgPSBgRXhwbG9yZSBhbGwke1xuICAgIHRvdGFsQ2VydGlmaWNhdGlvblBhdGhDb3VudCA/IGAgJHt0b3RhbENlcnRpZmljYXRpb25QYXRoQ291bnR9YCA6ICcnXG4gIH0gY2VydGlmaWNhdGlvbiBwYXRoc2A7XG5cbiAgcmV0dXJuIChcbiAgICA8UGFuZWxMYXlvdXRcbiAgICAgIGhlYWRpbmc9XCJDZXJ0aWZpY2F0aW9uIHBhdGhzXCJcbiAgICAgIGRlc2NyaXB0aW9uPVwiUHJlcGFyZSBmb3IgdG9wIGluZHVzdHJ5IGNlcnRpZmljYXRpb25zIHdpdGggYSBndWlkZWQgcGF0aC4gRWFjaCBvbmUgaW5jbHVkZXMgZXhwZXJ0LXJldmlld2VkIGxlc3NvbnMsIGhhbmRzLW9uIHByb2plY3RzLCBhbmQgcHJhY3RpY2UgdGVzdHMgdG8gaGVscCB5b3UgcGFzcyB0aGUgZXhhbS5cIlxuICAgICAgbGlua0l0ZW09e3tcbiAgICAgICAgdHlwZTogJ2xpbmsnLFxuICAgICAgICBocmVmOiAnL2NhdGFsb2cvY2VydGlmaWNhdGlvbi1wcmVwJyxcbiAgICAgICAgdGV4dDogbGlua1RleHQsXG4gICAgICAgIHRyYWNraW5nVGFyZ2V0OiAndG9wbmF2X2NhdGFsb2dfaGVhZGVyX2V4cGxvcmVfYWxsX2NlcnRpZmljYXRpb25fcGF0aHMnLFxuICAgICAgICBpZDogJ2V4cGxvcmUtYWxsLWNlcnRpZmljYXRpb24tcGF0aHMnLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8VGV4dCBhcz1cImgzXCIgZm9udFNpemU9ezE4fSBmb250V2VpZ2h0PVwiYm9sZFwiPlxuICAgICAgICBQcm92aWRlcnNcbiAgICAgIDwvVGV4dD5cbiAgICAgIDxHcmlkQm94XG4gICAgICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM9e3tcbiAgICAgICAgICBfOiAnMWZyJyxcbiAgICAgICAgICB4czogJ3JlcGVhdCgyLCAxZnIpJyxcbiAgICAgICAgICBzbTogJ3JlcGVhdCgzLCAxZnIpJyxcbiAgICAgICAgICBtZDogJ3JlcGVhdCg0LCAxZnIpJyxcbiAgICAgICAgfX1cbiAgICAgICAgZ2FwPXsxNn1cbiAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgYXM9XCJ1bFwiXG4gICAgICAgIGxpc3RTdHlsZT1cIm5vbmVcIlxuICAgICAgICBwPXswfVxuICAgICAgICBtPXswfVxuICAgICAgPlxuICAgICAgICB7Q0VSVElGSUNBVElPTl9QUk9WSURFUlMubWFwKCh7IG5hbWUsIGxvZ29VcmwsIGh1YlR5cGUgfSkgPT4gKFxuICAgICAgICAgIDxCb3ggYXM9XCJsaVwiIGtleT17bmFtZX0gd2lkdGg9XCIxMDAlXCI+XG4gICAgICAgICAgICA8UHJvdmlkZXJUaWxlXG4gICAgICAgICAgICAgIG5hbWU9e25hbWV9XG4gICAgICAgICAgICAgIGhyZWY9e1xuICAgICAgICAgICAgICAgIGh1YlR5cGUgPT09ICdzdWJodWInXG4gICAgICAgICAgICAgICAgICA/IGAvc2VhcmNoP3F1ZXJ5PSR7bmFtZX0gY2VydGlmaWNhdGlvbnNgXG4gICAgICAgICAgICAgICAgICA6IGAvY2F0YWxvZy9jZXJ0aWZpY2F0aW9uLXByZXA/cHJvdmlkZXI9JHtuYW1lLnRvTG93ZXJDYXNlKCl9YFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGltZ1NyYz17bG9nb1VybH1cbiAgICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgKSl9XG4gICAgICA8L0dyaWRCb3g+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG5cbmNvbnN0IExpdmVMZWFybmluZ0ltYWdlID0gc3R5bGVkLmltZ2BcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuYDtcblxuZXhwb3J0IGNvbnN0IExpdmVMZWFybmluZ1BhbmVsID0gKCkgPT4ge1xuICBjb25zdCB7IGdsb2JhbEhlYWRlckl0ZW1DbGljayB9ID0gdXNlR2xvYmFsSGVhZGVySXRlbUNsaWNrKCk7XG4gIGNvbnN0IHsgaXNDb2FjaGluZ0VuYWJsZWQsIHRhYkluZGV4IH0gPSB1c2VBcHBIZWFkZXJTZWN0aW9uQ29udGV4dCgpO1xuICBjb25zdCBnZXRJbWFnZVVybCA9IChpZDogc3RyaW5nKSA9PlxuICAgIGBodHRwczovL3N0YXRpYy1hc3NldHMuY29kZWNhZGVteS5jb20vYXNzZXRzL2NvbXBvbmVudHMvY2FyZHMvZ2xvYmFsLWhlYWRlci9saXZlLWxlYXJuaW5nL3YxLyR7aWR9LndlYnBgO1xuICBjb25zdCB7IGhhbmRsZUNsb3NlIH0gPSB1c2VBcHBIZWFkZXJEcm9wZG93bkNvbnRleHQoKTtcblxuICBjb25zdCBsaXZlTGVhcm5pbmdJdGVtcyA9IGxpdmVMZWFybmluZ05hdlBhbmVsSXRlbXMoaXNDb2FjaGluZ0VuYWJsZWQpO1xuXG4gIHJldHVybiAoXG4gICAgPFBhbmVsTGF5b3V0XG4gICAgICBoZWFkaW5nPVwiTGl2ZSBsZWFybmluZ1wiXG4gICAgICBkZXNjcmlwdGlvbj17bGl2ZUxlYXJuaW5nSXRlbXMuZGVzY3JpcHRpb259XG4gICAgPlxuICAgICAgPEdyaWRCb3hcbiAgICAgICAgZ3JpZFRlbXBsYXRlQ29sdW1ucz17eyBfOiAnMWZyJywgbWQ6ICdyZXBlYXQoMiwgMWZyKScgfX1cbiAgICAgICAgZ2FwPXsxNn1cbiAgICAgID5cbiAgICAgICAge2xpdmVMZWFybmluZ0l0ZW1zLmRhdGEubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgPEFuY2hvclxuICAgICAgICAgICAgaHJlZj17aXRlbS5ocmVmfVxuICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgdmFyaWFudD1cImludGVyZmFjZVwiXG4gICAgICAgICAgICBvbkNsaWNrPXsoXG4gICAgICAgICAgICAgIGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50LCBNb3VzZUV2ZW50PlxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgIGdsb2JhbEhlYWRlckl0ZW1DbGljayhldmVudCwgaXRlbSk7XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxDYXJkXG4gICAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgICAgb3ZlcmZsb3c9XCJoaWRkZW5cIlxuICAgICAgICAgICAgICBib3JkZXI9ezF9XG4gICAgICAgICAgICAgIGJvcmRlckNvbG9yPVwiYm9yZGVyLXRlcnRpYXJ5XCJcbiAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzPVwibGdcIlxuICAgICAgICAgICAgICBpc0ludGVyYWN0aXZlXG4gICAgICAgICAgICAgIHA9ezB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxMaXZlTGVhcm5pbmdJbWFnZVxuICAgICAgICAgICAgICAgIHNyYz17Z2V0SW1hZ2VVcmwoaXRlbS5pZCl9XG4gICAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxGbGV4Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBnYXA9ezh9IHA9ezE2fT5cbiAgICAgICAgICAgICAgICA8VGV4dCB2YXJpYW50PVwidGl0bGUteHNcIj57aXRlbS50ZXh0fTwvVGV4dD5cbiAgICAgICAgICAgICAgICB7J2Rlc2NyaXB0aW9uJyBpbiBpdGVtICYmIDxUZXh0PntpdGVtLmRlc2NyaXB0aW9ufTwvVGV4dD59XG4gICAgICAgICAgICAgIDwvRmxleEJveD5cbiAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICA8L0FuY2hvcj5cbiAgICAgICAgKSl9XG4gICAgICA8L0dyaWRCb3g+XG4gICAgPC9QYW5lbExheW91dD5cbiAgKTtcbn07XG4iXX0= */",
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
p: 16,
|
|
331
|
-
children: [/*#__PURE__*/_jsx(Text, {
|
|
332
|
-
variant: "title-xs",
|
|
333
|
-
children: item.text
|
|
334
|
-
}), 'description' in item && /*#__PURE__*/_jsx(Text, {
|
|
335
|
-
children: item.description
|
|
336
|
-
})]
|
|
337
|
-
})]
|
|
338
|
-
}, item.id)
|
|
339
|
-
}, item.id))
|
|
340
|
-
})
|
|
341
|
-
});
|
|
342
|
-
};
|
|
240
|
+
const LiveLearningImage = styled.img`
|
|
241
|
+
object-fit: cover;
|
|
242
|
+
width: 100%;
|
|
243
|
+
`;
|
|
244
|
+
const LiveLearningPanel = () => {
|
|
245
|
+
const { globalHeaderItemClick } = useGlobalHeaderItemClick();
|
|
246
|
+
const { isCoachingEnabled, tabIndex } = useAppHeaderSectionContext();
|
|
247
|
+
const getImageUrl = (id) => `https://static-assets.codecademy.com/assets/components/cards/global-header/live-learning/v1/${id}.webp`;
|
|
248
|
+
const { handleClose } = useAppHeaderDropdownContext();
|
|
249
|
+
const liveLearningItems = liveLearningNavPanelItems(isCoachingEnabled);
|
|
250
|
+
return /* @__PURE__ */ jsx(PanelLayout, {
|
|
251
|
+
heading: "Live learning",
|
|
252
|
+
description: liveLearningItems.description,
|
|
253
|
+
children: /* @__PURE__ */ jsx(GridBox, {
|
|
254
|
+
gridTemplateColumns: {
|
|
255
|
+
_: "1fr",
|
|
256
|
+
md: "repeat(2, 1fr)"
|
|
257
|
+
},
|
|
258
|
+
gap: 16,
|
|
259
|
+
children: liveLearningItems.data.map((item) => /* @__PURE__ */ jsx(Anchor, {
|
|
260
|
+
href: item.href,
|
|
261
|
+
variant: "interface",
|
|
262
|
+
onClick: (event) => {
|
|
263
|
+
globalHeaderItemClick(event, item);
|
|
264
|
+
handleClose();
|
|
265
|
+
},
|
|
266
|
+
tabIndex,
|
|
267
|
+
children: /* @__PURE__ */ jsxs(Card, {
|
|
268
|
+
overflow: "hidden",
|
|
269
|
+
border: 1,
|
|
270
|
+
borderColor: "border-tertiary",
|
|
271
|
+
borderRadius: "lg",
|
|
272
|
+
isInteractive: true,
|
|
273
|
+
p: 0,
|
|
274
|
+
children: [/* @__PURE__ */ jsx(LiveLearningImage, {
|
|
275
|
+
src: getImageUrl(item.id),
|
|
276
|
+
alt: "",
|
|
277
|
+
loading: "lazy"
|
|
278
|
+
}), /* @__PURE__ */ jsxs(FlexBox, {
|
|
279
|
+
flexDirection: "column",
|
|
280
|
+
gap: 8,
|
|
281
|
+
p: 16,
|
|
282
|
+
children: [/* @__PURE__ */ jsx(Text, {
|
|
283
|
+
variant: "title-xs",
|
|
284
|
+
children: item.text
|
|
285
|
+
}), "description" in item && /* @__PURE__ */ jsx(Text, { children: item.description })]
|
|
286
|
+
})]
|
|
287
|
+
}, item.id)
|
|
288
|
+
}, item.id))
|
|
289
|
+
})
|
|
290
|
+
});
|
|
291
|
+
};
|
|
292
|
+
|
|
293
|
+
//#endregion
|
|
294
|
+
export { CareerPathsPanel, CertificationPathsPanel, CourseTopicsPanel, LiveLearningPanel, SkillPathsPanel };
|