{"version":3,"file":"static/chunks/1412.7e5579423b6b6969.js","mappings":"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","sources":["webpack://_N_E/../design-system/src/components/universal/global-menu/top-level.scss?eb87","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-nav.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/toggle-nav-stack.ts","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-sub.tsx","webpack://_N_E/../design-system/src/utils/style-transition-delay.ts","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-link.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-submenu-trigger.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-item.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu-list.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/site-header-alert.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/site-header-banner.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/alert-and-banner.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-buttons.tsx","webpack://_N_E/../design-system/src/components/primitives/logo/logo.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-logo.tsx","webpack://_N_E/../design-system/src/components/universal/local-navigation/get-fitting-items-index.ts","webpack://_N_E/../design-system/src/components/universal/local-navigation/local-navigation-item.tsx","webpack://_N_E/../design-system/src/components/universal/local-navigation/local-navigation.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/expanded-navigation-cta.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/navigation-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/feature-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/menu-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/top-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/page-list.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/page-list-wrapper.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/page-list-or-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/page-group.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/horizontal-layout.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/vertical-layout.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/expanded-desktop-navigation.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-cta.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/common/expanded-mobile-link.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/horizontal/expanded-mobile-horizontal-content.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/horizontal/expanded-mobile-horizontal-header.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/horizontal/expanded-mobile-horizontal-page-list.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/horizontal/expanded-mobile-horizontal-page-group.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/horizontal/expanded-mobile-horizontal.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/vertical/expanded-mobile-vertical.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-item-content.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-item-header.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-item.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-main-content.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/main/expanded-mobile-main-trigger.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/mobile/expanded-mobile-navigation.tsx","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/local/expanded-local-navigation.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-navigation.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-section-title.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-working-knowledge-tagline.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-working-knowledge-title.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/site-header-wrapper.tsx","webpack://_N_E/../design-system/src/components/universal/site-header/components/useSetSticky.ts","webpack://_N_E/../design-system/src/components/universal/site-header/site-header.tsx","webpack://_N_E/../design-system/src/hooks/use-breakpoint.ts","webpack://_N_E/../design-system/src/components/universal/global-menu/second-level.scss?7649","webpack://_N_E/../design-system/src/components/primitives/link/link.tsx","webpack://_N_E/../design-system/src/utils/external.ts","webpack://_N_E/../design-system/src/utils/debounce.ts","webpack://_N_E/../design-system/src/components/universal/site-header/site-header.scss?655f","webpack://_N_E/../design-system/src/components/universal/expanded-local-navigation/desktop/expanded-desktop-navigation.scss?7d3d","webpack://_N_E/../design-system/src/components/primitives/social-media-links/social-media-links.scss?1804","webpack://_N_E/../design-system/src/components/universal/global-menu/global-menu.scss?e6ac","webpack://_N_E/../design-system/src/components/universal/local-navigation/local-navigation.scss?2ae4","webpack://_N_E/../design-system/src/components/primitives/cta-link/cta-link.scss?4714","webpack://_N_E/../design-system/src/hooks/use-resize-observer.ts","webpack://_N_E/../design-system/src/components/primitives/social-media-links/social-media-icon.tsx","webpack://_N_E/../design-system/src/components/primitives/social-media-links/social-media-links.tsx","webpack://_N_E/../design-system/src/components/universal/global-menu/third-level.scss?8ea9","webpack://_N_E/../design-system/src/utils/document.ts","webpack://_N_E/../design-system/src/components/primitives/cta-link/cta-link.tsx","webpack://_N_E/../design-system/src/utils/filter-undefined.ts"],"sourcesContent":["// extracted by mini-css-extract-plugin","import cn from \"clsx\";\nimport { disableBodyScroll, enableBodyScroll } from \"body-scroll-lock\";\nimport { SocialMediaLinks } from \"design-system/components/primitives/social-media-links/social-media-links\";\nimport {\n Dispatch,\n ReactNode,\n SetStateAction,\n createContext,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { SocialMediaIconProps } from \"design-system/components/primitives/social-media-links/social-media-icon\";\nimport { Theme } from \"design-system/utils/theme\";\n\ninterface GlobalMenuNavContextProps {\n open: boolean;\n navStack: Array;\n setNavStack: Dispatch>>;\n}\n\n/** Tracks active states for menu */\nexport const GlobalMenuNavContext = createContext({\n open: false,\n navStack: [],\n setNavStack: () => false,\n});\n\ninterface GlobalMenuLevelContextProps {\n level: number;\n}\n\n/** Tracks current nav level for menu */\nexport const GlobalMenuLevelContext =\n createContext({\n level: 0,\n });\n\nexport interface GlobalMenuNavMainProps {\n id: string;\n socialLinks?: Array;\n label?: string;\n open?: boolean;\n theme?: Theme;\n numBanners?: 0 | 1 | 2;\n}\n\nexport type GlobalMenuNavProps = GlobalMenuNavMainProps & {\n children: ReactNode;\n};\n\nexport function GlobalMenuNav({\n id,\n children,\n socialLinks,\n label = \"Global Menu\",\n open = false,\n theme = \"dark\",\n numBanners,\n}: GlobalMenuNavProps) {\n if (!Array.isArray(socialLinks)) socialLinks = [];\n\n const [navStack, setNavStack] = useState>([]);\n const ref = useRef(null);\n\n useEffect(() => {\n // Close all submenus when the menu is closed\n if (!open) {\n setNavStack([]);\n }\n\n if (!ref.current) {\n return;\n }\n\n // Prevent scrolling when the menu is open\n if (open) {\n disableBodyScroll(ref.current);\n } else {\n enableBodyScroll(ref.current);\n }\n }, [open]);\n\n const classname = cn(\n \"hbs-global-menu\",\n open && \"hbs-global-menu--open\",\n navStack.length > 0 && `hbs-global-menu--nav-stack-${navStack.length}`,\n );\n\n return (\n \n \n \n
\n \n {children}\n
\n \n
\n \n
\n \n \n \n );\n}\n","/**\n * Add or remove an ID from the nav stack\n *\n * If removing, remove all ids (e.g. nested nav items) after the given id.\n *\n * Passing `true` for the `force` param will always remove an id if present.\n */\nexport function toggleNavStack(\n id: string,\n level: number,\n stack: Array,\n force?: boolean,\n) {\n const isPresent = stack[level] === id;\n\n if (!isPresent && force !== false) {\n return [...stack.slice(0, level), id];\n } else if (isPresent && force !== true) {\n return stack.slice(0, level);\n }\n\n // noop\n return stack;\n}\n","import cn from \"clsx\";\nimport { useFocusVisible } from \"react-aria\";\nimport { ReactNode, useContext, useMemo } from \"react\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport {\n GlobalMenuLevelContext,\n GlobalMenuNavContext,\n} from \"./global-menu-nav\";\nimport { useBreakpoint } from \"design-system/hooks/use-breakpoint\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { GlobalMenuItemContext, GlobalMenuNavItem } from \"./global-menu-item\";\nimport { toggleNavStack } from \"./toggle-nav-stack\";\nimport { GlobalMenuList } from \"./global-menu-list\";\nimport { Icon } from \"design-system/components/icons/icon\";\n\nexport interface GlobalMenuSubmenuHeader {\n label: string;\n link?: string;\n subtitle?: ReactNode;\n\n editAttributes?: {\n title?: EditAttributes;\n subtitle: EditAttributes;\n };\n}\n\nexport interface GlobalMenuSubmenu {\n header: GlobalMenuSubmenuHeader;\n items: Array;\n}\n\ninterface GlobalMenuSubmenuProps extends GlobalMenuSubmenu {\n label: string;\n}\n\nexport function GlobalMenuSub({\n header,\n label,\n items,\n}: GlobalMenuSubmenuProps) {\n const context = useContext(GlobalMenuNavContext);\n const { id, triggerButton } = useContext(GlobalMenuItemContext);\n const { level: parentLevel } = useContext(GlobalMenuLevelContext);\n\n const { isDesktop } = useBreakpoint();\n const { isFocusVisible } = useFocusVisible({\n autoFocus: false,\n isTextInput: false,\n });\n\n // Submenu is one level up from the parent list item\n const level = parentLevel + 1;\n const isThirdLevel = level === 2;\n\n const isOpen = useMemo(\n () => context.navStack.includes(id),\n [id, context.navStack],\n );\n\n const isActive = useMemo(\n () => context.navStack.at(-1) === id,\n [id, context.navStack],\n );\n\n const shouldShowBackButton = isDesktop\n ? isActive && isFocusVisible\n : isActive;\n\n const closeSubmenu = () => {\n context.setNavStack((prevStack) =>\n toggleNavStack(id, parentLevel, prevStack, false),\n );\n };\n\n return (\n \n {\n // Close submenu if focus leaves the submenu\n if (e.relatedTarget && !e.currentTarget.contains(e.relatedTarget)) {\n closeSubmenu();\n }\n }}\n >\n
\n {\n closeSubmenu();\n // Then re-focus this submenu's trigger button\n triggerButton?.focus();\n }}\n >\n \n Back\n \n\n
\n \n {header.label}\n \n\n \n {header.subtitle}\n
\n
\n\n \n \n \n
\n );\n}\n","interface StyleTransitionDelayArgs {\n index: number;\n isVisible?: boolean;\n delay?: number;\n}\n\nexport function styleTransitionDelay({\n index,\n isVisible,\n delay = 0.03,\n}: StyleTransitionDelayArgs) {\n return {\n transitionDelay: `${index * delay}s`,\n transform: isVisible ? \"translateY(0)\" : \"translateY(100%)\",\n };\n}\n","import { useContext } from \"react\";\nimport { GlobalMenuLevelContext } from \"./global-menu-nav\";\nimport { LinkProps, Link } from \"design-system/components/primitives/link/link\";\nimport { styleTransitionDelay } from \"../../../utils/style-transition-delay\";\n\ninterface GlobalMenuLinkProps extends LinkProps {\n index: number;\n isVisible?: boolean;\n}\n\nexport function GlobalMenuLink({\n children,\n index,\n isVisible,\n ...props\n}: GlobalMenuLinkProps) {\n const { level } = useContext(GlobalMenuLevelContext);\n\n const classPrefix =\n level === 0 ? \"hbs-global-menu__\" : \"hbs-global-menu__submenu-\";\n\n return (\n \n \n {children}\n \n \n );\n}\n","import { MouseEvent, forwardRef, useContext, useMemo } from \"react\";\nimport {\n GlobalMenuLevelContext,\n GlobalMenuNavContext,\n} from \"./global-menu-nav\";\nimport { GlobalMenuItemContext } from \"./global-menu-item\";\nimport { toggleNavStack } from \"./toggle-nav-stack\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { styleTransitionDelay } from \"design-system/utils/style-transition-delay\";\n\ninterface GlobalMenuSubmenuTriggerProps {\n index: number;\n label: string;\n isVisible?: boolean;\n}\n\nexport const GlobalMenuSubmenuTrigger = forwardRef<\n HTMLButtonElement,\n GlobalMenuSubmenuTriggerProps\n>(({ label, index, isVisible }, ref) => {\n const context = useContext(GlobalMenuNavContext);\n const { id: controls } = useContext(GlobalMenuItemContext);\n const { level } = useContext(GlobalMenuLevelContext);\n\n const isExpanded = useMemo(\n () => context.navStack.includes(controls),\n [controls, context.navStack],\n );\n\n const openSubmenu = (evt: MouseEvent) => {\n evt.preventDefault();\n context.setNavStack((prevStack) =>\n toggleNavStack(controls, level, prevStack),\n );\n };\n\n const classPrefix =\n level > 0 ? \"hbs-global-menu__submenu-\" : \"hbs-global-menu__\";\n\n let lastWord;\n let firstWords;\n if (typeof label === \"string\") {\n const words = label.trim().split(\" \");\n lastWord = words.pop();\n firstWords = words.join(\" \");\n }\n\n const withSplitWords = (\n \n {firstWords}{\" \"}\n \n {lastWord}\n \n \n \n );\n\n return (\n \n \n {withSplitWords}\n \n \n );\n});\n","import cn from \"clsx\";\nimport { useContext, useRef, createContext } from \"react\";\nimport {\n GlobalMenuLevelContext,\n GlobalMenuNavContext,\n} from \"./global-menu-nav\";\nimport { GlobalMenuSub, GlobalMenuSubmenu } from \"./global-menu-sub\";\nimport { GlobalMenuLink } from \"./global-menu-link\";\nimport { GlobalMenuSubmenuTrigger } from \"./global-menu-submenu-trigger\";\n\ninterface GlobalMenuItemContextProps {\n id: string;\n triggerButton: HTMLButtonElement | null;\n}\n\nexport const GlobalMenuItemContext = createContext({\n id: \"\",\n triggerButton: null,\n});\n\nexport interface GlobalMenuNavItem {\n id: string;\n label: string;\n link?: string;\n submenu?: GlobalMenuSubmenu;\n}\n\nexport interface GlobalMenuItemProps {\n index: number;\n item: GlobalMenuNavItem;\n isVisible?: boolean;\n}\n\nexport function GlobalMenuItem({\n item,\n index,\n isVisible,\n}: GlobalMenuItemProps) {\n const context = useContext(GlobalMenuNavContext);\n const { level } = useContext(GlobalMenuLevelContext);\n\n const triggerRef = useRef(null);\n\n const isSub = level > 0;\n const isActive = context.navStack.includes(item.id);\n\n const rootClass = isSub\n ? \"hbs-global-menu__submenu-item\"\n : \"hbs-global-menu__item\";\n const classname = cn(rootClass, isActive && `${rootClass}--active`);\n\n return (\n \n
  • \n {item.submenu ? (\n <>\n \n \n \n ) : (\n \n {item.label}\n \n )}\n
  • \n \n );\n}\n","import cn from \"clsx\";\nimport { GlobalMenuItem, GlobalMenuNavItem } from \"./global-menu-item\";\n\nexport interface GlobalMenuListProps {\n items: Array;\n isVisible?: boolean;\n}\n\nexport function GlobalMenuList({ items, isVisible }: GlobalMenuListProps) {\n if (!items || items.length === 0) return null;\n\n return (\n
      \n {items.map((item, i) => (\n \n ))}\n
    \n );\n}\n","import \"./global-menu.scss\";\nimport \"./top-level.scss\";\nimport \"./second-level.scss\";\nimport \"./third-level.scss\";\n\nimport { GlobalMenuNav, GlobalMenuNavMainProps } from \"./global-menu-nav\";\nimport { GlobalMenuList } from \"./global-menu-list\";\nimport { GlobalMenuNavItem } from \"./global-menu-item\";\n\n/* -------------------------------------------------------------------------------------------------\n * GlobalMenu\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface GlobalMenuProps extends GlobalMenuNavMainProps {\n items?: Array;\n}\n\n/**\n * This component lives in the hamburger menu of each page. It renders a nested list of links with submenus as a three-tier nav menu.\n *\n * - **`id: UC-001-000-00`**\n * - **`data-region: uc__global-menu`**\n */\nexport function GlobalMenu({ items, ...props }: GlobalMenuProps) {\n if (!Array.isArray(items)) items = [];\n\n return (\n \n \n \n );\n}\n","import cn from \"clsx\";\nimport { ReactNode } from \"react\";\n\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { SiteHeaderTheme, Theme } from \"design-system/utils/theme\";\n\nexport interface SiteHeaderAlertProps {\n title?: string;\n href?: string;\n description?: ReactNode;\n menuIsOpen?: boolean;\n hasBanner?: boolean;\n theme?: Theme;\n parentTheme?: SiteHeaderTheme;\n\n editAttributes?: {\n url?: EditAttributes;\n title?: EditAttributes;\n description?: EditAttributes;\n };\n}\n\nexport function SiteHeaderAlert({\n title,\n description,\n href,\n theme = \"crimson\",\n parentTheme,\n menuIsOpen,\n hasBanner,\n editAttributes,\n}: SiteHeaderAlertProps) {\n if (!title || !href) return null;\n\n const themeWithDefault =\n parentTheme === theme ? (theme === \"crimson\" ? \"black\" : \"crimson\") : theme;\n\n const alertClass = cn(\n \"hbs-header-alert__link\",\n menuIsOpen && \"hbs-header-alert__link--menu-is-open\",\n );\n\n return (\n \n
    \n
    \n \n \n {title}\n \n \n\n \n \n {description}\n \n\n \n
    \n
    \n \n \n );\n}\n","import cn from \"clsx\";\n\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport {\n CtaLink,\n CtaLinkProps,\n} from \"design-system/components/primitives/cta-link/cta-link\";\nimport { Icon } from \"design-system/components/icons/icon\";\n\nexport interface SiteHeaderBannerProps {\n title?: string;\n link?: CtaLinkProps;\n notificationHref?: string;\n notificationActive?: boolean;\n}\n\nexport function SiteHeaderBanner({\n title,\n link,\n notificationActive,\n notificationHref,\n}: SiteHeaderBannerProps) {\n return (\n
    \n
    \n
    \n

    {title}

    \n
    \n {link ? (\n \n ) : null}\n {notificationHref ? (\n \n \n \n ) : null}\n
    \n
    \n
    \n
    \n );\n}\n","import {\n SiteHeaderAlert,\n SiteHeaderAlertProps,\n} from \"design-system/components/universal/site-header/site-header-alert\";\nimport {\n SiteHeaderBanner,\n SiteHeaderBannerProps,\n} from \"design-system/components/universal/site-header/site-header-banner\";\nimport { SiteHeaderTheme } from \"design-system/utils/theme\";\nimport { FC, RefObject } from \"react\";\n\nexport interface SiteHeaderAlertAndBannerProps {\n bannerRef?: RefObject;\n headerAlert?: SiteHeaderAlertProps;\n headerTheme?: SiteHeaderTheme;\n isMenuOpen: boolean;\n headerBanner?: SiteHeaderBannerProps;\n}\n\nexport const SiteHeaderAlertAndBanner: FC = ({\n bannerRef,\n isMenuOpen,\n headerAlert,\n headerBanner,\n headerTheme,\n}) => {\n return (\n
    \n {headerAlert && (\n \n )}\n {headerBanner && }\n
    \n );\n};\n","import { Icon } from \"design-system/components/icons/icon\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport {\n SearchBoxDropdown,\n SearchBoxDropdownProps,\n} from \"design-system/components/search/search-dropdown/search-dropdown\";\nimport { GlobalMenuProps } from \"design-system/components/universal/global-menu/global-menu\";\nimport { SiteHeaderCta } from \"design-system/components/universal/site-header/site-header\";\nimport { SessionProps } from \"frontend/types\";\nimport { FC, RefObject } from \"react\";\n\nexport interface SiteHeaderButtonsProps {\n session?: SessionProps;\n logInOut?: SiteHeaderCta;\n enableLogout?: boolean;\n cta?: SiteHeaderCta;\n hasSearchOverlay?: boolean;\n searchLink?: string;\n isMenuOpen: boolean;\n toggleMenu: () => void;\n closeMenuOnSearchOverlayOpen: () => void;\n search?: SearchBoxDropdownProps;\n siteTypeOption: \"internal\" | \"external\";\n globalMenu?: GlobalMenuProps;\n buttonsRef: RefObject;\n subscribeLink?: string;\n}\nexport const SiteHeaderButtons: FC = ({\n logInOut,\n cta,\n closeMenuOnSearchOverlayOpen,\n hasSearchOverlay,\n isMenuOpen,\n toggleMenu,\n searchLink,\n search,\n siteTypeOption,\n globalMenu,\n buttonsRef,\n subscribeLink,\n}) => {\n let hasGlobalMenu = true;\n if (siteTypeOption === \"internal\") hasGlobalMenu = false;\n else if (!globalMenu?.items || globalMenu.items.length === 0) {\n hasGlobalMenu = false;\n }\n\n return (\n
    \n {logInOut?.text && (\n

    \n \n {logInOut.text}\n \n

    \n )}\n\n {cta && (\n \n {cta.text}\n \n )}\n\n {subscribeLink && (\n \n Subscribe\n \n )}\n\n {hasSearchOverlay ? (\n \n ) : (\n searchLink && (\n \n \n \n )\n )}\n\n {hasGlobalMenu && (\n \n {isMenuOpen ? (\n \n ) : (\n \n )}\n \n )}\n
    \n );\n};\n","// css is global\n\nexport interface LogoProps {\n title?: string;\n siteType?: \"external\" | \"internal\";\n}\n\n/**\n *\n * - **`id: P-017-000-00`**\n */\nexport function Logo({\n title = \"Harvard Business School Logo\",\n siteType,\n}: LogoProps) {\n return (\n
    \n \n {title}\n {/* Shield */}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n {siteType === \"external\" && (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n\n {siteType === \"internal\" && (\n \n \n \n )}\n \n
    \n );\n}\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { Logo } from \"design-system/components/primitives/logo/logo\";\nimport { FC } from \"react\";\n\nexport interface SiteHeaderLogoProps {\n logoLink?: string;\n siteTypeOption?: \"external\" | \"internal\";\n}\n\nexport const SiteHeaderLogo: FC = ({\n logoLink,\n siteTypeOption,\n}) => {\n return (\n
    \n
    \n \n \n Harvard Business School\n \n {siteTypeOption === \"external\" && (\n \n )}\n {siteTypeOption === \"internal\" && (\n \n )}\n \n
    \n
    \n );\n};\n","export function getFittingItemsIndex(\n totalWidth: number,\n itemsWidth: Array,\n moreItemWidth?: number,\n) {\n let widthLeft = Math.floor(totalWidth);\n\n const moreIndex = itemsWidth.findIndex((itemWidth) => {\n if (itemWidth) {\n widthLeft = widthLeft - itemWidth;\n return widthLeft <= 0;\n }\n return false;\n });\n\n if (moreIndex === -1) {\n return itemsWidth.length;\n }\n\n // Make sure there is still space for the \"more\" item\n const lastItemWidth = itemsWidth[moreIndex];\n if (\n moreItemWidth &&\n lastItemWidth &&\n widthLeft + lastItemWidth < moreItemWidth\n ) {\n return moreIndex - 1;\n }\n\n return moreIndex;\n}\n","import cn from \"clsx\";\nimport { ForwardedRef, forwardRef } from \"react\";\nimport { NavigationLink } from \"./local-navigation\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { useStoreSelector } from \"design-system/store/store\";\n\nexport interface LocalNavigationItemProps extends NavigationLink {\n isCurrent?: boolean;\n isCurrentSubmenu?: boolean;\n submenu?: Array;\n isDropdownOpen?: boolean;\n showDropdown?: () => void;\n hideDropdown?: () => void;\n isHidden?: boolean;\n mobileOnly?: boolean;\n}\n\nexport const LocalNavigationItem = forwardRef(LocalNavigationItemWithRef);\n\nfunction LocalNavigationItemWithRef(\n {\n submenu,\n isDropdownOpen,\n showDropdown,\n hideDropdown,\n isHidden,\n url,\n title,\n editAttributes,\n isCurrent,\n isCurrentSubmenu,\n }: LocalNavigationItemProps,\n ref: ForwardedRef,\n) {\n const path = useStoreSelector((store) => store.location.path);\n\n const hasSubmenu = Array.isArray(submenu) && submenu.length > 0;\n\n // Helper function to check if a URL matches the current path\n const isUrlCurrent = (linkUrl?: string) => {\n return linkUrl && path.startsWith(linkUrl);\n };\n return (\n hasSubmenu && showDropdown && showDropdown()}\n onMouseLeave={() => hideDropdown && hideDropdown()}\n className={cn(\n \"hbs-local-navigation__item\",\n (isCurrent || isCurrentSubmenu) && \"hbs-local-navigation__item--active\",\n isHidden && \"hbs-local-navigation__item--hidden\",\n )}\n >\n {url ? (\n \n {title}\n \n ) : (\n \n {title}\n \n )}\n\n {hasSubmenu && (\n <>\n {\n if (isDropdownOpen && hideDropdown) {\n hideDropdown();\n } else if (showDropdown) {\n showDropdown();\n }\n }}\n aria-current={isCurrent ? \"true\" : undefined}\n >\n \n \n\n {\n // Hide the dropdown when the focus leaves the dropdown\n if (!e.currentTarget.contains(e.relatedTarget)) {\n // Note: Directly setting the aria-hidden attribute instead of calling hideDropdown() because hideDropdown() causes the screen reader to re-read the dropdown trigger button label when focusing the next local nav item\n e.currentTarget.setAttribute(\"aria-hidden\", \"true\");\n }\n }}\n >\n
      \n {submenu?.map((link, j) => (\n \n \n {link.title}\n
      \n \n
      \n \n \n ))}\n
    \n \n \n )}\n \n );\n}\n","import \"./local-navigation.scss\";\n\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport * as Collapsible from \"@radix-ui/react-collapsible\";\nimport cn from \"clsx\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport {\n CtaLink,\n CtaLinkProps,\n} from \"design-system/components/primitives/cta-link/cta-link\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { useResizeObserver } from \"design-system/hooks/use-resize-observer\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { AppUrlEntry } from \"frontend/contentful/schema/app\";\nimport { usePageProps } from \"frontend/hooks/use-page-props\";\nimport { RefObject, useRef, useState } from \"react\";\nimport { getFittingItemsIndex } from \"./get-fitting-items-index\";\nimport {\n LocalNavigationItem,\n LocalNavigationItemProps,\n} from \"./local-navigation-item\";\n\nexport interface NavigationLink {\n title: string;\n url?: string;\n description?: string;\n\n editAttributes?: {\n title?: EditAttributes;\n };\n}\n\nexport interface LocalNavigationProps {\n localNavigationItems?: Array;\n isHomepage?: boolean;\n isWorkingKnowledge?: boolean;\n isSticky?: boolean;\n sectionTitle?: NavigationLink;\n moreItemsTitle?: string;\n mobileCta?: CtaLinkProps;\n logInOut?: CtaLinkProps;\n buttonsRef?: RefObject;\n sectionTitleRef?: RefObject;\n\n editAttributes?: {\n title?: EditAttributes;\n moreItemsTitle?: EditAttributes;\n };\n}\n\n/**\n * The top navigation in the header of all pages\n *\n * ## How it works\n * On desktop, dropdowns are available on hover if submenu items are present.\n *\n * On mobile, the [Radix Collapsible](https://www.radix-ui.com/docs/primitives/components/collapsible) component is used in conjunction with the [Radix Accordion]((https://www.radix-ui.com/docs/primitives/components/accordion) block. If top level links are provided, the first link in the mobile submenu will automatically be the top level link.\n *\n * ## See it in use on...\n * - A [landing page](/story/example-pages-landing-pages-card-topper--story)\n * - The [homepage](/story/example-pages-homepage--homepage)\n *\n * - **`id: UC-002-001-00`**\n * - **`data-region: uc__local-navigation__sitewide`**\n */\nexport function LocalNavigation({\n localNavigationItems,\n isHomepage,\n isWorkingKnowledge,\n isSticky = false,\n sectionTitle,\n moreItemsTitle,\n mobileCta,\n logInOut,\n editAttributes,\n buttonsRef,\n sectionTitleRef,\n}: LocalNavigationProps) {\n const { entry } = usePageProps();\n const currentPageUrl = (entry as AppUrlEntry)?.fields?.url;\n const items = Array.isArray(localNavigationItems) ? localNavigationItems : [];\n\n const [accordionValue, setRadixAccordionValue] = useState>();\n const [activeDropdownIndex, setActiveDropdownIndex] = useState(\n null,\n );\n\n const listRef = useRef(null);\n const itemsRef = useRef>([]);\n const moreItemRef = useRef(null);\n\n let { width: listWidth } = useResizeObserver(listRef);\n\n /**\n * Reduce list width by the width of the buttons and section title\n * so that list will not overlap with them.\n */\n if (isSticky) {\n listWidth =\n listWidth -\n (buttonsRef?.current?.offsetWidth || 0) -\n (sectionTitleRef?.current?.offsetWidth || 0);\n }\n\n const onRadixAccordionValueChange = (newValue: Array) => {\n setRadixAccordionValue(newValue);\n };\n\n const dataRegion = `uc__local-navigation__${\n isHomepage ? \"homepage\" : \"sitewide\"\n }`;\n\n // Render the whole list on first render (when width will be 0) to avoid flashing empty list.\n // There will still be a flash if the whole list can't fit, but it should happen less often.\n\n const moreIndex =\n listWidth === 0\n ? items.length\n : getFittingItemsIndex(\n listWidth,\n itemsRef.current.map((el) => (el ? el.offsetWidth : 0)),\n moreItemRef.current?.offsetWidth,\n );\n // Helper function to normalize URLs for comparison\n const normalizeUrl = (url = \"\") => {\n return url.replace(/^(?:https?:\\/\\/)?(?:[^/]+)/, \"\");\n };\n\n const normalizedCurrentUrl = normalizeUrl(currentPageUrl);\n\n return (\n <>\n {/* DESKTOP */}\n \n {!isHomepage && sectionTitle && !isWorkingKnowledge && (\n \n \n {sectionTitle.title}\n \n \n )}\n\n
      \n {items.map((item, i) => {\n const normalizedItemUrl = normalizeUrl(item.url);\n const normalizedSubmenuUrls = item.submenu?.map((submenuItem) =>\n normalizeUrl(submenuItem.url),\n );\n return (\n {\n itemsRef.current[i] = el;\n }}\n isCurrent={normalizedItemUrl === normalizedCurrentUrl}\n isCurrentSubmenu={normalizedSubmenuUrls?.includes(\n normalizedCurrentUrl,\n )}\n isDropdownOpen={activeDropdownIndex === i && i < moreIndex}\n showDropdown={() => setActiveDropdownIndex(i)}\n hideDropdown={() => setActiveDropdownIndex(null)}\n isHidden={i >= moreIndex || item.mobileOnly}\n />\n );\n })}\n\n ({ title: item.title, url: item.url }))\n : [{ title: \"More\" }]\n }\n isDropdownOpen={activeDropdownIndex === moreIndex}\n showDropdown={() => setActiveDropdownIndex(moreIndex)}\n hideDropdown={() => setActiveDropdownIndex(null)}\n isHidden={moreIndex >= items.length}\n />\n
    \n \n\n {/* MOBILE */}\n {((!isHomepage && sectionTitle) || isWorkingKnowledge) && (\n \n
    \n {sectionTitle && (\n
    \n \n {sectionTitle.title}\n \n
    \n )}\n \n \n {moreItemsTitle ? moreItemsTitle : \"More\"}\n \n \n
    \n \n \n {items.map((item, i) =>\n item.submenu ? (\n \n \n \n \n {item.title}\n \n \n \n \n \n \n \n
      \n {item.url && (\n
    • \n \n {item.title}\n \n
    • \n )}\n {item.submenu.map((link, j) => (\n \n \n {link.title}\n \n \n ))}\n
    \n
    \n \n ) : (\n
    \n

    \n \n \n {item.title}\n \n \n

    \n
    \n ),\n )}\n \n {mobileCta && (\n \n {mobileCta.children}\n \n )}\n {logInOut?.children && (\n \n {logInOut.children}\n \n )}\n
    \n \n )}\n \n );\n}\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport {\n CtaLink,\n CtaLinkProps,\n} from \"design-system/components/primitives/cta-link/cta-link\";\nimport { FC } from \"react\";\n\ninterface ExpandedNavigationCTAProps extends CtaLinkProps {\n layout: \"horizontal\" | \"vertical\";\n}\n\nexport const ExpandedNavigationCTA: FC = ({\n layout,\n ...ctaProps\n}) => {\n return (\n
    \n \n \n \n
    \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\nimport { NavigationLink as NavigationLinkType } from \"../../local-navigation/local-navigation\";\n\ninterface NavigationLinkProps {\n link: NavigationLinkType;\n}\nexport const NavigationLink: FC = ({ link }) => {\n return (\n \n \n \n {link.title}\n \n \n \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport {\n MediaAsset,\n MediaAssetProps,\n} from \"design-system/components/primitives/media-asset/media-asset\";\nimport { FC, ReactNode } from \"react\";\nimport { NavigationLink } from \"../../local-navigation/local-navigation\";\n\ninterface FeatureLinkProps extends NavigationLink {\n mediaAsset?: MediaAssetProps;\n featureOptions?: {\n featureCard?: boolean;\n featureMedia?: boolean;\n featureDescription?: boolean;\n };\n}\n\ninterface WrapperProps {\n url: string;\n className?: string;\n children: ReactNode;\n}\nconst Wrapper: FC = ({ url, className, children }) => {\n return (\n \n \n \n {children}\n \n \n \n );\n};\n\nexport const FeatureLink: FC = ({\n title,\n description,\n url,\n featureOptions,\n mediaAsset,\n}) => {\n if (!url) return null;\n\n const { featureCard, featureDescription, featureMedia } =\n featureOptions || {};\n\n const descriptionComponent = featureDescription && description && (\n

    \n {description}\n

    \n );\n\n if (featureCard) {\n return (\n \n

    \n {title}\n

    \n {descriptionComponent}\n
    \n );\n }\n\n if (featureMedia && mediaAsset) {\n return (\n \n
    \n \n
    \n
    \n \n {title}\n \n {descriptionComponent}\n
    \n
    \n );\n }\n\n return (\n \n {title}\n {descriptionComponent}\n \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\nimport { NavigationLink } from \"../../local-navigation/local-navigation\";\n\ntype MenuLinkProps = NavigationLink;\n\nexport const MenuLink: FC = ({ title, url }) => {\n return (\n \n \n {title}\n \n \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\nimport { NavigationLink } from \"../../local-navigation/local-navigation\";\n\ntype TopLinkProps = NavigationLink;\nexport const TopLink: FC = ({ url, title, description }) => {\n return (\n \n
  • \n \n {title}\n \n {description && (\n

    \n {description}\n

    \n )}\n
  • \n
    \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport clsx from \"clsx\";\nimport { FC } from \"react\";\nimport { ExpandedNavigationLinkWithSubItems } from \"../local/expanded-local-navigation\";\nimport { FeatureLink } from \"./feature-link\";\nimport { MenuLink } from \"./menu-link\";\nimport { TopLink } from \"./top-link\";\n\ninterface PageListProps {\n pageList: ExpandedNavigationLinkWithSubItems;\n layout: \"vertical\" | \"horizontal\";\n}\n\nexport type LinkType = \"topLink\" | \"link\" | \"featureLink\";\n\nexport const PageList: FC = ({ pageList, layout }) => {\n const {\n featureLinksTitle,\n featureCard,\n featureDescription,\n featureLinks,\n featureMedia,\n menu,\n topLinks,\n } = pageList;\n\n const hasTopLinks = !!topLinks?.length;\n const hasMenu = !!menu?.length;\n const hasFeatureLinks = !!featureLinks?.length;\n\n const featureOptions = {\n featureCard,\n featureDescription,\n featureMedia,\n };\n\n return (\n
    \n <>\n {hasTopLinks && (\n \n \n {topLinks.map((topLink) => (\n \n ))}\n \n \n )}\n\n {hasMenu && (\n \n
      \n {menu.map((menuLink) => (\n \n ))}\n
    \n
    \n )}\n\n {hasFeatureLinks && (\n
    \n \n {featureLinksTitle && (\n
    \n {featureLinksTitle}\n
    \n )}\n
    \n {featureLinks.map((featureLink) => {\n return (\n \n );\n })}\n
    \n \n
    \n )}\n \n
    \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { FC } from \"react\";\nimport { ExpandedNavigationLinkWithSubItems } from \"../local/expanded-local-navigation\";\nimport { PageList } from \"./page-list\";\n\ninterface PageListWrapperProps {\n pageList: ExpandedNavigationLinkWithSubItems;\n tab: number;\n layout: \"vertical\" | \"horizontal\";\n}\n\nexport const PageListWrapper: FC = ({\n layout,\n pageList,\n tab,\n}) => {\n if (layout === \"horizontal\") {\n const { title } = pageList;\n return (\n \n {title && (\n event.preventDefault()}\n onPointerLeave={(event) => event.preventDefault()}\n asChild\n >\n \n \n )}\n\n \n \n \n \n );\n }\n\n return ;\n};\n","import { FC } from \"react\";\nimport { NavigationLink as NavigationLinkType } from \"../../local-navigation/local-navigation\";\nimport { ExpandedNavigationLinkWithSubItems } from \"../local/expanded-local-navigation\";\nimport { NavigationLink } from \"./navigation-link\";\nimport { PageListWrapper } from \"./page-list-wrapper\";\n\ninterface PageListOrLinkProps {\n pageListOrLink: NavigationLinkType | ExpandedNavigationLinkWithSubItems;\n tab: number;\n layout: \"vertical\" | \"horizontal\";\n}\n\nexport const PageListOrLink: FC = ({\n pageListOrLink,\n tab,\n layout,\n}) => {\n if (\"url\" in pageListOrLink) {\n return ;\n }\n\n return (\n \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { FC } from \"react\";\nimport { ExpandedNavigationSubMenuProps } from \"../local/expanded-local-navigation\";\nimport { PageListOrLink } from \"./page-list-or-link\";\n\ninterface PageGroupProps {\n pageGroup: ExpandedNavigationSubMenuProps;\n layout: \"horizontal\" | \"vertical\";\n}\nexport const PageGroup: FC = ({ pageGroup, layout }) => {\n const { title, pageListOrLinks } = pageGroup;\n return (\n <>\n {pageListOrLinks && (\n \n
      \n {title && (\n
      \n {title}\n
      \n )}\n {pageListOrLinks.map((pageListOrLink, k) => (\n \n ))}\n
    \n
    \n )}\n \n );\n};\n","import * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { CtaLinkProps } from \"design-system/components/primitives/cta-link/cta-link\";\nimport { FC } from \"react\";\nimport { ExpandedNavigationSubMenuProps } from \"../local/expanded-local-navigation\";\nimport { ExpandedNavigationCTA } from \"./expanded-navigation-cta\";\nimport { PageGroup } from \"./page-group\";\n\ninterface HorizontalLayoutProps {\n pageGroups: Array;\n cta?: CtaLinkProps;\n}\n/**\n * The Horizontal layout is calculated automatically on the props file.\n * If there's more than one pageListOrLinks that's a pageList, then it's horizontal.\n */\nexport const HorizontalLayout: FC = ({\n pageGroups,\n cta,\n}) => {\n return (\n \n \n
    \n
    \n
    \n {pageGroups?.map((pageGroup, j) => (\n \n ))}\n
    \n {cta && }\n
    \n \n
    \n
    \n \n );\n};\n","import cn from \"clsx\";\nimport { CtaLinkProps } from \"design-system/components/primitives/cta-link/cta-link\";\nimport { FC } from \"react\";\nimport { ExpandedNavigationSubMenuProps } from \"../local/expanded-local-navigation\";\nimport { ExpandedNavigationCTA } from \"./expanded-navigation-cta\";\nimport { PageListOrLink } from \"./page-list-or-link\";\n\ninterface VerticalLayoutProps {\n pageGroups: Array;\n cta?: CtaLinkProps;\n}\n/**\n * The Vertical layout is calculated automatically on the props file.\n * If there's just ONE pageListOrLinks that's a pageList, then it's vertical.\n */\nexport const VerticalLayout: FC = ({\n pageGroups,\n cta,\n}) => {\n return (\n <>\n \n {pageGroups.map(({ title, pageListOrLinks }, index) => (\n
    \n {title && (\n
    \n {title}\n
    \n )}\n\n {pageListOrLinks?.map((pageListOrLink, k) => {\n return (\n \n );\n })}\n\n {cta && }\n
    \n ))}\n \n \n );\n};\n","import \"./expanded-desktop-navigation.scss\";\n\nimport * as NavigationMenu from \"@radix-ui/react-navigation-menu\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { ExpandedLocalNavigationProps } from \"../local/expanded-local-navigation\";\nimport { HorizontalLayout } from \"./horizontal-layout\";\nimport { VerticalLayout } from \"./vertical-layout\";\n\n/**\n * To facilitate future debugging:\n * Add `const value = items[0]?.title`\n * Add `value={value}` to the Root component\n * Add `value={title}` to the first Item component\n * This way the menu is rendered open and keeps open after inspection.\n */\n\nexport function ExpandedDesktopNavigation({\n expandedNavigationItems,\n}: ExpandedLocalNavigationProps) {\n const items = expandedNavigationItems || [];\n\n return (\n \n \n
      \n {items.map(({ title, layoutType, pageGroups, cta }, index) => (\n <>\n \n
    • \n \n \n \n \n \n \n {pageGroups &&\n pageGroups.length > 0 &&\n (layoutType === \"horizontal\" ? (\n \n ) : (\n \n ))}\n \n
    • \n
      \n \n ))}\n
    \n
    \n\n
    \n \n
    \n
    \n );\n}\n","import {\n CtaLink,\n CtaLinkProps,\n} from \"design-system/components/primitives/cta-link/cta-link\";\nimport { FC } from \"react\";\n\nexport const ExpandedMobileCTA: FC = (props) => {\n return (\n \n );\n};\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { FC } from \"react\";\n\nexport const ExpandedMobileLink: FC = ({ url, title }) => {\n return (\n
  • \n \n {title}\n \n
  • \n );\n};\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { FC } from \"react\";\nimport { ExpandedMobileLink } from \"../common/expanded-mobile-link\";\n\ninterface ExpandedMobileHorizontalContent {\n links: Array;\n}\nexport const ExpandedMobileHorizontalContent: FC<\n ExpandedMobileHorizontalContent\n> = ({ links }) => {\n return (\n \n
      \n {links.map((link) => (\n \n ))}\n
    \n
    \n );\n};\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { FC } from \"react\";\n\ninterface ExpandedMobileHorizontalHeaderProps {\n title: string;\n itemIndex: string;\n submenuAccordionValue: Array | undefined;\n}\n\nexport const ExpandedMobileHorizontalHeader: FC<\n ExpandedMobileHorizontalHeaderProps\n> = ({ title, itemIndex, submenuAccordionValue }) => {\n return (\n \n \n \n {title}\n \n \n \n \n \n \n );\n};\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { FC, useState } from \"react\";\nimport { ExpandedMobileHorizontalContent } from \"./expanded-mobile-horizontal-content\";\nimport { ExpandedMobileHorizontalHeader } from \"./expanded-mobile-horizontal-header\";\n\ninterface ExpandedMobileHorizontalPageListProps {\n title: string;\n links: Array;\n itemIndex: string;\n}\nexport const ExpandedMobileHorizontalPageList: FC<\n ExpandedMobileHorizontalPageListProps\n> = ({ links, title, itemIndex }) => {\n const [submenuAccordionValue, setSubmenuRadixAccordionValue] =\n useState>();\n\n const onSubmenuRadixAccordionValueChangeSubmenu = (\n newValue: Array,\n ) => {\n setSubmenuRadixAccordionValue(newValue);\n };\n\n return (\n \n \n \n \n \n \n );\n};\n","import { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { FC } from \"react\";\nimport {\n ExpandedNavigationLinkWithSubItems,\n ExpandedNavigationSubMenuProps,\n} from \"../../local/expanded-local-navigation\";\nimport { ExpandedMobileHorizontalPageList } from \"./expanded-mobile-horizontal-page-list\";\n\ninterface ExpandedMobileHorizontalPageGroupProps {\n pageGroup: ExpandedNavigationSubMenuProps;\n}\nexport const ExpandedMobileHorizontalPageGroup: FC<\n ExpandedMobileHorizontalPageGroupProps\n> = ({ pageGroup }) => {\n const areAllLinks = pageGroup.pageListOrLinks?.every((item) => \"url\" in item);\n\n if (areAllLinks) {\n const { pageListOrLinks, title } = pageGroup;\n\n // Type assertion because we already made sure they are all links above\n const allLinks = pageListOrLinks as Array;\n return (\n allLinks &&\n title && (\n \n )\n );\n }\n\n interface LinkList {\n title?: string;\n links?: Array;\n }\n\n const linkList: Array =\n pageGroup.pageListOrLinks?.map((listOrLinks) => {\n if (\"url\" in listOrLinks && listOrLinks.title) {\n const link = listOrLinks;\n return {\n links: [\n {\n title: link.title,\n url: link.url,\n },\n ],\n };\n }\n\n const list = listOrLinks as ExpandedNavigationLinkWithSubItems;\n\n return {\n title: list.title,\n links: [...(list?.topLinks || []), ...(list?.menu || [])],\n };\n }) || [];\n\n return linkList.map(({ links, title }) => {\n if (!links || !title) return null;\n return (\n \n );\n });\n};\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\nimport { ExpandedLocalNavigationItemProps } from \"../../local/expanded-local-navigation\";\nimport { ExpandedMobileHorizontalPageGroup } from \"./expanded-mobile-horizontal-page-group\";\n\ninterface HorizontalLayoutProps {\n item: ExpandedLocalNavigationItemProps;\n}\n\nexport const ExpandedMobileHorizontal: FC = ({\n item,\n}) => {\n const { title, linkTitle, url } = item;\n\n return (\n <>\n {url && (\n
  • \n \n {linkTitle ? linkTitle : title}\n \n
  • \n )}\n {item.pageGroups?.map((pageGroup) => (\n \n ))}\n \n );\n};\n","import { filterUndefined } from \"design-system/utils/filter-undefined\";\nimport { FC } from \"react\";\nimport {\n ExpandedLocalNavigationItemProps,\n ExpandedNavigationLinkWithSubItems,\n} from \"../../local/expanded-local-navigation\";\nimport { ExpandedMobileLink } from \"../common/expanded-mobile-link\";\n\ninterface VerticalLayoutProps {\n item: ExpandedLocalNavigationItemProps;\n}\n\nexport const ExpandedMobileVertical: FC = ({ item }) =>\n item.pageGroups\n ?.map((pageGroup) =>\n pageGroup.pageListOrLinks?.map((pageListOrLink) => {\n if (\"url\" in pageListOrLink) {\n return (\n \n );\n }\n const pageList: ExpandedNavigationLinkWithSubItems = pageListOrLink;\n return [\n ...(pageList.topLinks ?? []),\n ...(pageList.menu ?? []),\n ...(pageList.featureLinks ?? []),\n ].map((item) => );\n }),\n )\n .flat(2)\n .filter(filterUndefined);\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { FC } from \"react\";\nimport { ExpandedLocalNavigationItemProps } from \"../../local/expanded-local-navigation\";\nimport { ExpandedMobileHorizontal } from \"../horizontal/expanded-mobile-horizontal\";\nimport { ExpandedMobileVertical } from \"../vertical/expanded-mobile-vertical\";\n\ninterface AccordionContentProps {\n item: ExpandedLocalNavigationItemProps;\n}\nexport const ExpandedMobileItemContent: FC = ({\n item,\n}) => {\n return (\n \n
      \n {item.layoutType === \"horizontal\" ? (\n \n ) : (\n \n )}\n
    \n
    \n );\n};\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"design-system/components/icons/icon\";\nimport { FC } from \"react\";\n\ninterface AccordionHeaderProps {\n accordionValue: Array | undefined;\n itemIndex: string;\n title: string;\n}\n\nexport const ExpandedMobileItemHeader: FC = ({\n accordionValue,\n itemIndex,\n title,\n}) => {\n return (\n \n \n \n {title}\n \n \n \n \n \n \n );\n};\n","import { FC } from \"react\";\nimport { ExpandedLocalNavigationItemProps } from \"../../local/expanded-local-navigation\";\n\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { ExpandedMobileItemContent } from \"./expanded-mobile-item-content\";\nimport { ExpandedMobileItemHeader } from \"./expanded-mobile-item-header\";\n\ninterface MainMenuItemProps {\n item: ExpandedLocalNavigationItemProps;\n itemIndex: string;\n accordionValue: Array | undefined;\n}\n\nexport const ExpandedMobileItem: FC = ({\n itemIndex,\n accordionValue,\n item,\n}) => {\n return (\n \n \n \n \n );\n};\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { FC, useState } from \"react\";\nimport { ExpandedLocalNavigationProps } from \"../../local/expanded-local-navigation\";\nimport { ExpandedMobileCTA } from \"./expanded-mobile-cta\";\nimport { ExpandedMobileItem } from \"./expanded-mobile-item\";\n\ntype ContentProps = Pick<\n ExpandedLocalNavigationProps,\n \"expandedNavigationItems\" | \"mobileCta\" | \"logInOut\"\n>;\nexport const ExpandedMobileMainContent: FC = ({\n expandedNavigationItems,\n mobileCta,\n logInOut,\n}) => {\n const [accordionValue, setRadixAccordionValue] = useState>();\n\n const onRadixAccordionValueChange = (newValue: Array) => {\n setRadixAccordionValue(newValue);\n };\n\n return (\n \n \n {expandedNavigationItems\n ?.filter((item) => item.pageGroups?.length)\n ?.map((item, index) => (\n \n ))}\n \n {mobileCta && }\n {logInOut?.children && }\n \n );\n};\n","import * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\nimport { ExpandedLocalNavigationProps } from \"../../local/expanded-local-navigation\";\n\ntype TriggerProps = Pick<\n ExpandedLocalNavigationProps,\n \"sectionTitle\" | \"moreItemsTitle\"\n>;\n\nexport const ExpandedMobileMainTrigger: FC = ({\n sectionTitle,\n moreItemsTitle,\n}) => {\n return (\n
    \n {sectionTitle && (\n
    \n \n {sectionTitle.title}\n \n
    \n )}\n \n \n {moreItemsTitle ? moreItemsTitle : \"More\"}\n \n \n
    \n );\n};\n","import \"design-system/components/universal/local-navigation/local-navigation.scss\";\n\nimport * as Collapsible from \"@radix-ui/react-collapsible\";\nimport { ExpandedLocalNavigationProps } from \"../local/expanded-local-navigation\";\nimport { ExpandedMobileMainContent } from \"./main/expanded-mobile-main-content\";\nimport { ExpandedMobileMainTrigger } from \"./main/expanded-mobile-main-trigger\";\n\nexport const ExpandedMobileNavigation = ({\n expandedNavigationItems,\n isHomepage,\n sectionTitle,\n moreItemsTitle,\n mobileCta,\n logInOut,\n}: ExpandedLocalNavigationProps) => {\n const dataRegion = `uc__local-navigation__${\n isHomepage ? \"homepage\" : \"sitewide\"\n }`;\n\n if (isHomepage || !sectionTitle) return null;\n\n return (\n \n \n \n \n );\n};\n","import \"design-system/components/universal/local-navigation/local-navigation.scss\";\n\nimport cn from \"clsx\";\nimport { CtaLinkProps } from \"design-system/components/primitives/cta-link/cta-link\";\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { MediaAssetProps } from \"design-system/components/primitives/media-asset/media-asset\";\nimport { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { ExpandedDesktopNavigation } from \"../desktop/expanded-desktop-navigation\";\nimport { ExpandedMobileNavigation } from \"../mobile/expanded-mobile-navigation\";\n\ntype FeatureLink = NavigationLink & { mediaAsset?: MediaAssetProps };\n\nexport interface ExpandedNavigationLinkWithSubItems {\n title?: string;\n featureLinks?: Array;\n featureLinksTitle?: string;\n featureCard?: boolean;\n featureDescription?: boolean;\n featureMedia?: boolean;\n menu?: Array;\n topLinks?: Array;\n}\n\nexport interface ExpandedNavigationSubMenuProps {\n title?: string;\n pageListOrLinks?: Array;\n}\n\nexport interface ExpandedLocalNavigationItemProps extends NavigationLink {\n pageGroups?: Array;\n layoutType: \"horizontal\" | \"vertical\";\n linkTitle?: string; // used in mobile together with URL\n cta?: CtaLinkProps;\n}\n\nexport interface ExpandedLocalNavigationProps {\n expandedNavigationItems?: Array;\n isHomepage?: boolean;\n isSticky?: boolean;\n sectionTitle?: NavigationLink;\n moreItemsTitle?: string;\n mobileCta?: CtaLinkProps;\n logInOut?: CtaLinkProps;\n isWorkingKnowledge?: boolean;\n editAttributes?: {\n title?: EditAttributes;\n };\n}\n\n/**\n * The top navigation in the header of all pages\n *\n * ## How it works\n * On desktop, dropdowns are available on hover if submenu items are present.\n *\n * On mobile, the [Radix Collapsible](https://www.radix-ui.com/docs/primitives/components/collapsible) component is used in conjunction with the [Radix Accordion]((https://www.radix-ui.com/docs/primitives/components/accordion) block. If top level links are provided, the first link in the mobile submenu will automatically be the top level link.\n *\n * ## See it in use on...\n * - A [landing page](/story/example-pages-landing-pages-card-topper--story)\n * - The [homepage](/story/example-pages-homepage--homepage)\n *\n * - **`id: UC-002-001-00`**\n * - **`data-region: uc__local-navigation__sitewide`**\n */\nexport function ExpandedLocalNavigation({\n expandedNavigationItems,\n isHomepage,\n isSticky = false,\n sectionTitle,\n moreItemsTitle,\n mobileCta,\n logInOut,\n isWorkingKnowledge = false,\n editAttributes,\n}: ExpandedLocalNavigationProps) {\n const dataRegion = `uc__local-navigation__${\n isHomepage ? \"homepage\" : \"sitewide\"\n }`;\n\n return (\n <>\n \n {!isHomepage && sectionTitle && !isWorkingKnowledge && (\n \n \n {sectionTitle.title}\n \n \n )}\n\n {expandedNavigationItems && (\n \n )}\n \n\n \n \n );\n}\n","import { FC } from \"react\";\n\nimport {\n LocalNavigation,\n LocalNavigationProps,\n} from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { SiteHeaderCta } from \"design-system/components/universal/site-header/site-header\";\nimport {\n ExpandedLocalNavigation,\n ExpandedLocalNavigationProps,\n} from \"../../expanded-local-navigation/local/expanded-local-navigation\";\n\nexport type SiteHeaderNavigationProps = Omit<\n LocalNavigationProps & ExpandedLocalNavigationProps,\n \"mobileCta\"\n> & {\n cta?: SiteHeaderCta;\n logInOut?: SiteHeaderCta;\n domain?: string;\n};\n\nexport const SiteHeaderNavigation: FC = ({\n localNavigationItems,\n expandedNavigationItems,\n buttonsRef,\n editAttributes,\n isHomepage,\n isSticky,\n moreItemsTitle,\n sectionTitle,\n sectionTitleRef,\n isWorkingKnowledge,\n logInOut,\n cta,\n domain,\n}) => {\n const mobileCta = cta && {\n href: cta.link,\n children: cta.text,\n hideIcon: cta.hideIcon,\n };\n\n return (\n
    \n {domain === \"online\" ? (\n \n ) : (\n \n )}\n
    \n );\n};\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { NavigationLink } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { FC, RefObject } from \"react\";\n\nexport interface SiteHeaderSectionTitleProps {\n sectionTitle: NavigationLink;\n sectionTitleRef: RefObject;\n\n editAttributes?: {\n title?: EditAttributes;\n moreItemsTitle?: EditAttributes;\n };\n}\n\nexport const SiteHeaderSectionTitle: FC = ({\n sectionTitle,\n sectionTitleRef,\n editAttributes,\n}) => {\n return (\n
    \n \n {sectionTitle.title}\n \n
    \n );\n};\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { FC } from \"react\";\n\nexport interface SiteHeaderWorkingKnowledgeTaglineProps {\n workingKnowledgeTitleLink?: string;\n workingKnowledgeTagline?: string;\n}\nexport const SiteHeaderWorkingKnowledgeTagline: FC<\n SiteHeaderWorkingKnowledgeTaglineProps\n> = ({ workingKnowledgeTitleLink, workingKnowledgeTagline }) => {\n return (\n
    \n \n Working Knowledge\n \n
    \n {workingKnowledgeTagline}\n
    \n
    \n );\n};\n","import { Link } from \"design-system/components/primitives/link/link\";\nimport { FC, RefObject } from \"react\";\n\nexport interface SiteHeaderWorkingKnowledgeTitle {\n sectionTitleRef: RefObject;\n workingKnowledgeTitleLink?: string;\n}\n\nexport const SiteHeaderWorkingKnowledgeTitle: FC<\n SiteHeaderWorkingKnowledgeTitle\n> = ({ sectionTitleRef, workingKnowledgeTitleLink }) => {\n return (\n
    \n \n Working Knowledge\n \n
    \n );\n};\n","import cn from \"clsx\";\nimport { useResizeObserver } from \"design-system/hooks/use-resize-observer\";\nimport { SiteHeaderPosition } from \"design-system/types/types\";\nimport { CSSProperties, FC, ReactNode, RefObject, useRef } from \"react\";\n\nexport interface SiteHeaderWrapperProps {\n children?: ReactNode;\n bannerRef: RefObject;\n sticky?: boolean;\n position: SiteHeaderPosition;\n isMenuOpen?: boolean;\n hasAlert?: boolean;\n isWorkingKnowledge?: boolean;\n isMinimalHeader?: boolean;\n isHomepage?: boolean;\n headerTheme?: string;\n domain?: string;\n}\n\nexport const SiteHeaderWrapper: FC = ({\n children,\n bannerRef,\n sticky,\n position,\n isMenuOpen,\n hasAlert,\n isWorkingKnowledge,\n isMinimalHeader,\n isHomepage,\n headerTheme,\n domain,\n}) => {\n const ref = useRef(null);\n const { height: bannerHeight } = useResizeObserver(bannerRef);\n\n const headerClass = cn(\n domain === \"online\" ? \"hbs-site-header\" : \"hbs-site-header noindex\",\n domain === \"online\" && \"hbs-site-header--online\",\n sticky && position === \"sticky\" && \"hbs-site-header--sticky\",\n position === \"relative\" && \"hbs-site-header--relative\",\n isMenuOpen && \"hbs-site-header--menu-is-open\",\n hasAlert && \"hbs-site-header--header-alert\",\n isWorkingKnowledge && \"hbs-wk-site-header\",\n isMinimalHeader && \"hbs-site-header--minimal\",\n isHomepage && \"hbs-site-header--homepage\",\n );\n\n return (\n \n {children}\n \n );\n};\n","import { useResizeObserver } from \"design-system/hooks/use-resize-observer\";\nimport { useCallback, useEffect, useState } from \"react\";\n\ntype useSetSticky = (props: {\n defaultValue: boolean;\n isWorkingKnowledge?: boolean;\n}) => boolean;\nexport const useSetSticky: useSetSticky = ({\n defaultValue,\n isWorkingKnowledge,\n}) => {\n const [sticky, setSticky] = useState(defaultValue);\n\n const { width: windowWidth } = useResizeObserver({\n current: typeof document !== \"undefined\" ? document.body : null,\n });\n\n const isSticky = useCallback(() => {\n const headerHeight = isWorkingKnowledge ? 160 : 100;\n const isDesktop =\n typeof window !== \"undefined\" && window.innerWidth >= 1024;\n setSticky(window.scrollY >= headerHeight && isDesktop);\n // React complains about windowWidth below\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isWorkingKnowledge, windowWidth]);\n\n useEffect(() => {\n if (document.readyState === \"complete\") {\n isSticky();\n }\n }, [isSticky]);\n\n useEffect(() => {\n window.addEventListener(\"load\", isSticky);\n return () => window.removeEventListener(\"load\", isSticky);\n }, [isSticky]);\n\n useEffect(() => {\n window.addEventListener(\"scroll\", isSticky);\n return () => {\n window.removeEventListener(\"scroll\", isSticky);\n };\n }, [isSticky]);\n\n return sticky;\n};\n","import \"./site-header.scss\";\n\nimport { Link } from \"design-system/components/primitives/link/link\";\nimport { GlobalMenu } from \"design-system/components/universal/global-menu/global-menu\";\nimport { LocalNavigationProps } from \"design-system/components/universal/local-navigation/local-navigation\";\nimport { SiteHeaderTheme } from \"design-system/utils/theme\";\nimport FocusTrap from \"focus-trap-react\";\nimport { ReactNode, useRef, useState } from \"react\";\nimport {\n SiteHeaderAlertAndBanner,\n SiteHeaderAlertAndBannerProps,\n} from \"./components/alert-and-banner\";\nimport {\n SiteHeaderButtons,\n SiteHeaderButtonsProps,\n} from \"./components/site-header-buttons\";\nimport {\n SiteHeaderLogo,\n SiteHeaderLogoProps,\n} from \"./components/site-header-logo\";\n\nimport {\n SiteHeaderNavigation,\n SiteHeaderNavigationProps,\n} from \"./components/site-header-navigation\";\n\nimport {\n SiteHeaderSectionTitle,\n SiteHeaderSectionTitleProps,\n} from \"./components/site-header-section-title\";\n\nimport {\n SiteHeaderWorkingKnowledgeTagline,\n SiteHeaderWorkingKnowledgeTaglineProps,\n} from \"./components/site-header-working-knowledge-tagline\";\nimport { SiteHeaderWorkingKnowledgeTitle } from \"./components/site-header-working-knowledge-title\";\n\nimport { ExpandedLocalNavigationProps } from \"../expanded-local-navigation/local/expanded-local-navigation\";\nimport {\n SiteHeaderWrapper,\n SiteHeaderWrapperProps,\n} from \"./components/site-header-wrapper\";\nimport { useSetSticky } from \"./components/useSetSticky\";\n\nexport interface SiteHeaderCta {\n link?: string;\n text?: string;\n hideIcon?: boolean;\n}\n\n/**\n * Type that overrides certain required props inherited then omitted\n */\ninterface SiteHeaderPropsPartialOverrides {\n localNavigationItems?: LocalNavigationProps[\"localNavigationItems\"];\n expandedNavigationItems?: ExpandedLocalNavigationProps[\"expandedNavigationItems\"];\n position?: SiteHeaderWrapperProps[\"position\"];\n sectionTitle?: SiteHeaderNavigationProps[\"sectionTitle\"];\n enableLogout?: SiteHeaderButtonsProps[\"enableLogout\"];\n children?: ReactNode;\n}\n\nexport type SiteHeaderProps = SiteHeaderLogoProps &\n SiteHeaderWorkingKnowledgeTaglineProps &\n Omit &\n Omit &\n Omit &\n Omit &\n Omit<\n SiteHeaderButtonsProps,\n | \"siteTypeOption\"\n | \"toggleMenu\"\n | \"closeMenuOnSearchOverlayOpen\"\n | \"isMenuOpen\"\n | \"enableLogout\"\n | \"buttonsRef\"\n > &\n SiteHeaderPropsPartialOverrides & {\n theme?: SiteHeaderTheme;\n moreItemsTitle?: string;\n siteType?: string;\n domain?: string;\n };\n\n/**\n * - **`id: UC-004-001-00`**\n * - **`data-region: uc__site-header__sitewide`**\n */\nexport function SiteHeader({\n localNavigationItems,\n expandedNavigationItems,\n theme,\n isHomepage,\n isWorkingKnowledge,\n sectionTitle,\n headerAlert,\n headerBanner,\n globalMenu,\n cta,\n logoLink,\n position = \"sticky\",\n searchLink,\n hasSearchOverlay = false,\n search,\n moreItemsTitle,\n workingKnowledgeTagline,\n workingKnowledgeTitleLink,\n editAttributes,\n isMinimalHeader = false,\n siteType,\n logInOut,\n subscribeLink,\n domain,\n}: SiteHeaderProps) {\n const sectionTitleRef = useRef(null);\n const buttonsRef = useRef(null);\n const bannerRef = useRef(null);\n const hasAlert = headerAlert !== undefined;\n const siteTypeOption = siteType === \"internal\" ? \"internal\" : \"external\";\n\n const isSticky = useSetSticky({\n defaultValue: false,\n isWorkingKnowledge,\n });\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const headerTheme =\n isMenuOpen || (isSticky && position === \"sticky\") ? \"dark\" : theme;\n\n let dataRegion = \"uc__site-header\" + isHomepage ? \"__homepage\" : \"__sitewide\";\n if (hasAlert) dataRegion += \"__alert-banner\";\n\n function toggleMenu() {\n setIsMenuOpen(!isMenuOpen);\n }\n\n function handleDeactivate() {\n setIsMenuOpen(false);\n }\n\n function closeMenuOnSearchOverlayOpen() {\n if (isMenuOpen) {\n handleDeactivate();\n }\n }\n\n return (\n <>\n \n Skip to Main Content\n \n \n \n \n \n\n
    \n \n\n {!isHomepage && sectionTitle && !isWorkingKnowledge && (\n \n )}\n\n {isWorkingKnowledge && (\n \n )}\n\n {!isMenuOpen && !isWorkingKnowledge && (\n \n )}\n\n {isWorkingKnowledge && !isMenuOpen && (\n \n )}\n\n \n
    \n\n {isWorkingKnowledge && !isMenuOpen && (\n \n )}\n \n\n {globalMenu && (\n \n )}\n
    \n \n \n );\n}\n","/**\n * Check for breakpoint.\n *\n * @return - whether breakpoint is mobile, tablet, or desktop\n */\n\nimport { useEffect, useState } from \"react\";\nimport { BREAKPOINTS } from \"design-system/utils/constants\";\n\nconst { TABLET, DESKTOP } = BREAKPOINTS;\n\ninterface UseBreakpointsProps {\n isMobile: boolean;\n isTablet: boolean;\n isDesktop: boolean;\n}\n\nexport function useBreakpoint(\n initialValue: Partial = {},\n): UseBreakpointsProps {\n const [state, setState] = useState({\n isMobile: false,\n isTablet: false,\n isDesktop: false,\n ...initialValue,\n });\n\n useEffect(() => {\n const tablet = window.matchMedia(\n `(min-width: ${TABLET}px) and (max-width: ${DESKTOP - 1}px)`,\n );\n\n const onTabletChange = (e: MediaQueryListEvent) => {\n if (e.matches) {\n // TABLET\n setState({ isMobile: false, isTablet: true, isDesktop: false });\n } else {\n if (window.innerWidth < DESKTOP) {\n // MOBILE\n setState({ isMobile: true, isTablet: false, isDesktop: false });\n } else {\n // DESKTOP\n setState({ isMobile: false, isTablet: false, isDesktop: true });\n }\n }\n };\n\n tablet.addEventListener(\"change\", onTabletChange);\n\n setState({\n isMobile: !tablet.matches && window.innerWidth < DESKTOP,\n isTablet: tablet.matches,\n isDesktop: !tablet.matches && window.innerWidth > TABLET,\n });\n\n return () => {\n tablet.removeEventListener(\"change\", onTabletChange);\n };\n }, []);\n\n return state;\n}\n","// extracted by mini-css-extract-plugin","import { EditAttributes } from \"design-system/types/types\";\nimport { DataLayerEvent } from \"frontend/hooks/use-data-layer\";\nimport { AnchorHTMLAttributes, forwardRef, MouseEventHandler } from \"react\";\n\nexport interface DataOptions {\n parentTitle?: string;\n programName?: string;\n imageTitle?: string;\n searchTerm?: string;\n position?: number;\n searchCategory?: string;\n}\n\nexport interface LinkProps extends AnchorHTMLAttributes {\n editAttributes?: EditAttributes;\n dataLayer?: DataLayerEvent;\n dataParentTitle?: string;\n onClick?: MouseEventHandler;\n}\n\nexport const Link = forwardRef(\n (\n {\n href,\n target,\n children,\n className,\n rel,\n onClick,\n editAttributes,\n dataLayer,\n ...props\n },\n ref,\n ) => {\n if (!target) target = \"_blank\";\n\n if (href?.startsWith(\"/\") || href?.includes(\".hbs.edu\")) {\n if (href.includes(\"webassets.hbs.edu\")) target = \"_blank\";\n else target = \"_self\";\n }\n\n const handleOnClick: MouseEventHandler = (event) => {\n /* eslint-disable camelcase */\n if (\n dataLayer?.event_data.explore_search &&\n !dataLayer.event_data.explore_search_info_box_clicked\n ) {\n const title = typeof children === \"string\" ? children.trim() : \"\";\n dataLayer.event_data.explore_search_info_box_clicked = title;\n }\n /* eslint-enable camelcase */\n if (onClick) {\n // pushDataLayer gets called at the parent layer to prevent double firing\n onClick(event);\n }\n };\n\n return (\n // eslint-disable-next-line react/forbid-elements\n \n {children}\n \n );\n },\n);\n","/**\n * A link is external if host does not contain hbs.edu.\n */\nexport function isExternalLink(href: string): boolean {\n if (!href) {\n return false;\n }\n\n try {\n const url = new URL(href);\n return !url.host.endsWith(\"hbs.edu\");\n } catch (error) {\n return false;\n }\n}\n","// eslint-disable-next-line @typescript-eslint/ban-types\nexport function debounce(fn: Fn, ms = 300) {\n let timeoutId: ReturnType;\n\n return function (this: unknown, ...args: Array) {\n clearTimeout(timeoutId);\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n timeoutId = setTimeout(() => fn.apply(this, args), ms);\n } as unknown as Fn;\n}\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import { debounce } from \"design-system/utils/debounce\";\nimport { MutableRefObject, RefObject, useEffect, useState } from \"react\";\n\n/**\n *\n */\nexport function useResizeObserver(\n ref: RefObject | MutableRefObject,\n onResize?: ResizeObserverCallback,\n) {\n const [width, setWidth] = useState(0);\n const [height, setHeight] = useState(0);\n\n useEffect(() => {\n const { current: el } = ref;\n if (!el) {\n return;\n }\n\n let subscribed = true;\n\n const handleResize: ResizeObserverCallback = (entries) => {\n if (!subscribed) {\n return;\n }\n\n const contentRect = entries[0]?.contentRect;\n\n if (contentRect) {\n setWidth(contentRect.width);\n setHeight(contentRect.height);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n onResize && onResize(entries, observer);\n };\n\n const debouncedResize = debounce(handleResize, 150);\n const observer = new ResizeObserver(debouncedResize);\n\n observer.observe(el);\n\n return () => {\n subscribed = false;\n observer.unobserve(el);\n };\n });\n\n return { width, height };\n}\n","import { Icon, IconName } from \"design-system/components/icons/icon\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { Link } from \"../link/link\";\n\n// all social media icon names should be entirely lowercase to match the icon name from Contentful\nexport type SocialIconName = Extract<\n IconName,\n | \"apple\"\n | \"facebook\"\n | \"instagram\"\n | \"linkedin\"\n | \"youtube\"\n | \"tiktok\"\n | \"print\"\n | \"quicklink\"\n | \"mail\"\n | \"x\"\n>;\n\nexport interface SocialMediaIconProps {\n href?: string;\n icon?: SocialIconName;\n title?: string;\n print?: boolean;\n ariaLabel?: string;\n\n editAttributes?: EditAttributes;\n}\n\nexport function SocialMediaIcon({\n href,\n icon,\n title,\n print = false,\n ariaLabel,\n editAttributes,\n}: SocialMediaIconProps) {\n if (!icon || (!href && !print)) return null;\n\n return print ? (\n \n ) : (\n \n {ariaLabel || title}\n\n \n \n );\n}\n","import \"./social-media-links.scss\";\n\nimport { SocialMediaIcon, SocialMediaIconProps } from \"./social-media-icon\";\n\nexport interface SocialMediaLinksProps {\n links?: Array;\n}\n\n/**\n *\n * - **`id: P-023-000-00`**\n */\nexport function SocialMediaLinks({ links }: SocialMediaLinksProps) {\n if (!links || links.length < 1) {\n return null;\n }\n\n return (\n
    \n {links.map((link, i) => (\n \n ))}\n
    \n );\n}\n","// extracted by mini-css-extract-plugin","const DOC_EXTENSIONS = [\n \".pdf\",\n \".doc\",\n \".docx\",\n \".xls\",\n \".xlsx\",\n \".ppt\",\n \".pptx\",\n];\n\n/**\n * A link is a document if its pathname ends with a document extension.\n */\nexport function isDocumentLink(link: string): boolean {\n if (!link) return false;\n\n let pathname: string;\n\n try {\n const url = new URL(link);\n pathname = url.pathname;\n } catch (e) {\n pathname = link;\n }\n\n return DOC_EXTENSIONS.some((extension) => pathname.endsWith(extension));\n}\n","import \"./cta-link.scss\";\n\nimport { MouseEvent, ReactNode, forwardRef } from \"react\";\nimport cn from \"clsx\";\nimport { Icon, IconName } from \"design-system/components/icons/icon\";\nimport { EditAttributes } from \"design-system/types/types\";\nimport { Link } from \"../link/link\";\nimport { isDocumentLink } from \"design-system/utils/document\";\nimport { isExternalLink } from \"design-system/utils/external\";\nimport { DataLayerEvent, useDataLayer } from \"frontend/hooks/use-data-layer\";\n\nexport type CtaLinkType = \"primary-button\" | \"secondary-button\" | \"link\";\n\nexport interface CtaLinkProps {\n children?: ReactNode;\n href?: string;\n onClick?: (e: MouseEvent) => void;\n dataLayer?: DataLayerEvent;\n type?: CtaLinkType;\n className?: string;\n isSmall?: boolean;\n isNested?: boolean;\n icon?: IconName;\n hideIcon?: boolean;\n \"aria-label\"?: string;\n id?: string;\n \"aria-selected\"?: boolean;\n \"aria-describedby\"?: string;\n tabIndex?: number;\n editAttributes?: EditAttributes;\n}\n\n/**\n * Simple link with icon used in various components\n *\n * - **`id: P-010-000-09`**\n */\nexport const CtaLink = forwardRef<\n HTMLAnchorElement & HTMLButtonElement,\n CtaLinkProps\n>(\n (\n {\n children,\n className,\n href,\n onClick,\n dataLayer,\n type = \"link\",\n isSmall,\n isNested,\n icon,\n hideIcon,\n \"aria-label\": ariaLabel,\n \"aria-selected\": ariaSelected,\n \"aria-describedby\": ariaDescribedBy,\n id,\n tabIndex,\n editAttributes,\n },\n ref,\n ) => {\n let isExternal: boolean | undefined;\n\n if (href) {\n isExternal = isExternalLink(href);\n }\n\n // Initialize icon if not provided\n if (!icon && href) {\n icon = isDocumentLink(href) ? \"download\" : \"arrow\";\n }\n\n const { pushDataLayer } = useDataLayer();\n\n const ctaClassNames = cn(\n \"hbs-cta-link\",\n isSmall && \"hbs-cta-link--small\",\n `hbs-cta-link--${type}`,\n isNested ? \"hbs-cta-link--nested\" : \"\",\n className,\n );\n\n const iconClassNames = cn(\n \"hbs-cta-link__icon\",\n `hbs-cta-link__icon--${icon?.toLowerCase() || \"\"}`,\n isExternal && \"hbs-cta-link__icon--external\",\n );\n\n // Split string into first words & last word to make sure icon doesn't wrap on its own\n let lastWord;\n let firstWords;\n if (typeof children === \"string\") {\n const words = children.trim().split(\" \");\n lastWord = words.pop();\n firstWords = words.join(\" \");\n }\n\n const withoutSplitWords = (\n \n {children}\n {!hideIcon && icon && }\n \n );\n\n const commonProps = {\n className: ctaClassNames,\n ref,\n id,\n \"aria-selected\": ariaSelected,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-label\": ariaLabel,\n tabIndex,\n };\n\n if (onClick) {\n if (dataLayer) {\n window.addEventListener(\"click\", () => {\n pushDataLayer(dataLayer);\n });\n }\n\n return (\n \n );\n }\n\n if (\n typeof children !== \"string\" ||\n type === \"primary-button\" ||\n type === \"secondary-button\"\n ) {\n let handleOnClick = undefined;\n if (dataLayer) {\n handleOnClick = () => {\n const title = typeof children === \"string\" ? children.trim() : \"\";\n if (\n dataLayer?.event_data &&\n dataLayer.event.includes(\"program_finder\")\n ) {\n /* eslint-disable camelcase */\n dataLayer.event_data.program_action = dataLayer.event_data\n .program_action\n ? dataLayer.event_data.program_action\n : \"program cta click\";\n dataLayer.event_data.program_name = ariaLabel;\n }\n if (dataLayer.event_data.explore_search) {\n dataLayer.event_data.explore_search_info_box_clicked = title;\n }\n if (dataLayer.event === \"info_box_item_click\") {\n dataLayer.event_data.infobox_item_link_text = title;\n dataLayer.event_data.infobox_item_url = href;\n }\n /* eslint-enable camelcase */\n pushDataLayer(dataLayer);\n };\n }\n\n return (\n \n {withoutSplitWords}\n \n );\n }\n\n const withSplitWords = (\n \n {firstWords}{\" \"}\n \n {lastWord}\n {!hideIcon && icon && }\n \n \n );\n\n if (isNested) {\n return (\n \n {withSplitWords}\n \n );\n }\n\n return (\n \n {withSplitWords}\n \n );\n },\n);\n","export function filterUndefined(\n value: T | undefined | null | false | \"\",\n): value is T {\n return Boolean(value);\n}\n"],"names":["GlobalMenuNavContext","createContext","open","navStack","setNavStack","level","GlobalMenuNav","id","children","socialLinks","label","theme","numBanners","Array","isArray","useState","ref","useRef","useEffect","current","disableBodyScroll","enableBodyScroll","classname","cn","length","Provider","value","GlobalMenuLevelContext","div","className","data-theme","data-region","nav","aria-label","SocialMediaLinks","links","toggleNavStack","stack","force","isPresent","slice","GlobalMenuSub","header","items","context","useContext","triggerButton","GlobalMenuItemContext","parentLevel","isDesktop","useBreakpoint","isFocusVisible","useFocusVisible","autoFocus","isTextInput","isOpen","useMemo","includes","isActive","at","closeSubmenu","prevStack","isThirdLevel","onBlur","e","relatedTarget","currentTarget","contains","button","shouldShowBackButton","onClick","focus","Icon","name","Link","editAttributes","title","href","link","subtitle","GlobalMenuList","isVisible","styleTransitionDelay","index","delay","transitionDelay","transform","GlobalMenuLink","props","classPrefix","span","style","GlobalMenuSubmenuTrigger","forwardRef","lastWord","firstWords","controls","isExpanded","words","trim","split","pop","join","withSplitWords","openSubmenu","evt","preventDefault","aria-controls","aria-expanded","GlobalMenuItem","item","triggerRef","rootClass","isSub","li","submenu","ul","map","i","GlobalMenu","SiteHeaderAlert","description","parentTheme","menuIsOpen","hasBanner","alertClass","themeWithDefault","url","SiteHeaderBanner","notificationActive","notificationHref","p","CtaLink","isSmall","SiteHeaderAlertAndBanner","bannerRef","isMenuOpen","headerAlert","headerBanner","headerTheme","Boolean","SiteHeaderButtons","logInOut","cta","closeMenuOnSearchOverlayOpen","hasSearchOverlay","toggleMenu","searchLink","search","siteTypeOption","globalMenu","buttonsRef","subscribeLink","hasGlobalMenu","text","SearchBoxDropdown","dropdownItems","isOverlay","onOpenCallback","data-testid","Logo","siteType","svg","viewBox","fill","xmlns","role","aria-labelledby","g","path","d","rect","x","width","height","SiteHeaderLogo","logoLink","LocalNavigationItem","LocalNavigationItemWithRef","isDropdownOpen","showDropdown","hideDropdown","isHidden","isCurrent","isCurrentSubmenu","useStoreSelector","store","location","hasSubmenu","isUrlCurrent","linkUrl","startsWith","aria-hidden","onMouseEnter","onMouseLeave","aria-current","undefined","setAttribute","j","key","animationDelay","LocalNavigation","moreItemRef","sectionTitleRef","localNavigationItems","isHomepage","isWorkingKnowledge","isSticky","sectionTitle","moreItemsTitle","mobileCta","entry","usePageProps","currentPageUrl","fields","accordionValue","setRadixAccordionValue","activeDropdownIndex","setActiveDropdownIndex","listRef","itemsRef","listWidth","useResizeObserver","offsetWidth","dataRegion","moreIndex","totalWidth","itemsWidth","moreItemWidth","widthLeft","Math","floor","findIndex","itemWidth","lastItemWidth","el","normalizeUrl","replace","normalizedCurrentUrl","tabIndex","normalizedItemUrl","normalizedSubmenuUrls","submenuItem","mobileOnly","Collapsible","RadixAccordion","type","onValueChange","newValue","onRadixAccordionValueChange","h3","ExpandedNavigationCTA","layout","ctaProps","NavigationMenu","asChild","Wrapper","FeatureLink","featureOptions","mediaAsset","featureCard","featureDescription","featureMedia","descriptionComponent","h4","MediaAsset","MenuLink","pageList","featureLinksTitle","featureLinks","menu","topLinks","hasTopLinks","hasMenu","hasFeatureLinks","TopLink","topLink","menuLink","clsx","h5","featureLink","tab","onPointerMove","event","onPointerLeave","PageList","pageListOrLink","NavigationLink","PageListWrapper","PageGroup","pageGroup","pageListOrLinks","k","PageListOrLink","pageGroups","defaultValue","ExpandedDesktopNavigation","expandedNavigationItems","layoutType","HorizontalLayout","VerticalLayout","ExpandedMobileCTA","ExpandedMobileLink","ExpandedMobileHorizontalHeader","itemIndex","submenuAccordionValue","setSubmenuRadixAccordionValue","onSubmenuRadixAccordionValueChangeSubmenu","ExpandedMobileHorizontalContent","areAllLinks","every","allLinks","ExpandedMobileHorizontalPageList","linkList","listOrLinks","list","linkTitle","ExpandedMobileHorizontalPageGroup","ExpandedMobileVertical","flat","filter","filterUndefined","ExpandedMobileItemContent","ExpandedMobileHorizontal","ExpandedMobileItemHeader","ExpandedMobileItem","ExpandedMobileMainTrigger","ExpandedMobileMainContent","ExpandedLocalNavigation","ExpandedMobileNavigation","SiteHeaderNavigation","domain","hideIcon","workingKnowledgeTitleLink","workingKnowledgeTagline","em","sticky","position","hasAlert","isMinimalHeader","bannerHeight","headerClass","setSticky","windowWidth","document","body","useCallback","headerHeight","window","innerWidth","scrollY","readyState","addEventListener","removeEventListener","SiteHeader","useSetSticky","setIsMenuOpen","handleDeactivate","target","FocusTrap","active","focusTrapOptions","onDeactivate","SiteHeaderWrapper","SiteHeaderSectionTitle","SiteHeaderWorkingKnowledgeTitle","SiteHeaderWorkingKnowledgeTagline","TABLET","DESKTOP","BREAKPOINTS","initialValue","state","setState","isMobile","isTablet","tablet","matchMedia","onTabletChange","matches","rel","dataLayer","a","handleOnClick","event_data","explore_search","explore_search_info_box_clicked","isExternalLink","URL","host","endsWith","error","debounce","fn","timeoutId","ms","args","clearTimeout","setTimeout","apply","onResize","setWidth","setHeight","subscribed","observer","ResizeObserver","entries","contentRect","observe","unobserve","SocialMediaIcon","icon","print","ariaLabel","DOC_EXTENSIONS","isExternal","isNested","ariaSelected","ariaDescribedBy","isDocumentLink","pathname","some","extension","pushDataLayer","useDataLayer","ctaClassNames","iconClassNames","toLowerCase","withoutSplitWords","commonProps","program_action","program_name","infobox_item_link_text","infobox_item_url","aria-describedby"],"sourceRoot":"","ignoreList":[]}