{"version":3,"file":"static/chunks/7079-0ad181f07b257ff9.js","mappings":"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","sources":["webpack://_N_E/./src/lib/get-site-id.ts","webpack://_N_E/../design-system/src/components/system/lazy-component/use-lazy-components.tsx","webpack://_N_E/./src/contentful/lib/is-content-type.ts","webpack://_N_E/./src/components.ts","webpack://_N_E/../../../src/shared/lib/loadable-context.shared-runtime.ts","webpack://_N_E/./src/contentful/lib/resolve-includes.ts","webpack://_N_E/../design-system/src/components/system/error-boundary/error-boundary.tsx","webpack://_N_E/../design-system/src/store/slice-location.ts","webpack://_N_E/../design-system/src/store/store-provider.tsx","webpack://_N_E/../design-system/src/store/slice-framework.ts","webpack://_N_E/../design-system/src/i18n/translations.ts","webpack://_N_E/../design-system/src/hooks/use-translations.tsx","webpack://_N_E/../../../src/shared/lib/dynamic.tsx","webpack://_N_E/../../node_modules/next/dynamic.js","webpack://_N_E/./src/contentful/lib/resolve-asset.url.ts","webpack://_N_E/./src/hooks/use-page-props.tsx","webpack://_N_E/./src/contentful/contentful-components.ts","webpack://_N_E/./src/contentful/components/utils/render-contentful-entry.tsx","webpack://_N_E/./src/contentful/lib/edit-attributes-factory.ts","webpack://_N_E/./src/contentful/lib/resolve-entry-url.ts","webpack://_N_E/./src/contentful/lib/resolve-entries.ts","webpack://_N_E/./src/contentful/lib/resolve-is-person-past-hbs-faculty.ts","webpack://_N_E/./src/contentful/lib/resolve-entity-link.ts","webpack://_N_E/./src/contentful/lib/resolve-entity-name.ts","webpack://_N_E/./src/contentful/lib/resolve-assets.ts","webpack://_N_E/./src/hooks/use-contentful.tsx","webpack://_N_E/../../../src/shared/lib/loadable.shared-runtime.tsx","webpack://_N_E/../design-system/src/styles/index.scss?78bb","webpack://_N_E/../design-system/src/store/store.ts"],"sourcesContent":["import { SiteEntry } from \"frontend/contentful/schema/universal\";\n\n// Get the unique site id for a site entry, which is either the domain or the slug\n\nexport function getSiteId(site?: SiteEntry) {\n if (site) {\n if (site.fields.slug === \"/\") return site.fields.domain;\n return site.fields.slug;\n }\n}\n","import { type ComponentLibrary } from \"design-system/components\";\nimport { createContext, FC, PropsWithChildren, useContext } from \"react\";\n\nconst LazyComponentsContext = createContext<\n ComponentLibrary | Record\n>({});\n\ninterface LazyComponentsContextProps extends PropsWithChildren {\n components?: ComponentLibrary;\n}\n\nexport function LazyComponentsProvider({\n components,\n children,\n}: LazyComponentsContextProps) {\n return (\n \n {children}\n \n );\n}\n\nexport function useLazyComponents() {\n const lazyComponents = useContext(LazyComponentsContext);\n\n const getLazyComponentByName = (name: string) => {\n if (name && lazyComponents[name as keyof typeof lazyComponents]) {\n return lazyComponents[name as keyof typeof lazyComponents] as FC;\n }\n };\n\n return {\n lazyComponents,\n getLazyComponentByName,\n };\n}\n","import { ContentfulEntry, ExtractEntry } from \"frontend/contentful/schema/sys\";\n\nexport function isContentType(\n id: ExtractEntry[\"id\"],\n value?: ContentfulEntry,\n): value is T {\n if (!value || typeof value !== \"object\") return false;\n\n if (\"sys\" in value && value.sys && typeof value.sys === \"object\") {\n if (\n \"contentType\" in value.sys &&\n value.sys.contentType &&\n typeof value.sys.contentType === \"object\"\n ) {\n if (\n \"sys\" in value.sys.contentType &&\n value.sys.contentType.sys &&\n typeof value.sys.contentType.sys === \"object\"\n ) {\n if (\"id\" in value.sys.contentType.sys && value.sys.contentType.sys.id) {\n return value.sys.contentType.sys.id === id;\n }\n }\n }\n }\n\n return false;\n}\n","import dynamic from \"next/dynamic\";\nimport { ComponentLibrary } from \"design-system/components\";\n\nexport const frontendComponents = {\n // TOPPERS\n ArticleTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/article-topper/article-topper\"\n ).then((e) => ({\n default: e.ArticleTopper,\n })),\n ),\n CardTopper: dynamic(() =>\n import(\"design-system/components/toppers/card-topper/card-topper\").then(\n (e) => ({ default: e.CardTopper }),\n ),\n ),\n CourseTopper: dynamic(() =>\n import(\"design-system/components/toppers/course-topper/course-topper\").then(\n (e) => ({ default: e.CourseTopper }),\n ),\n ),\n DashboardTopper: dynamic(() =>\n import(\"design-system/sites/alumni/dashboard-topper/dashboard-topper\").then(\n (e) => ({\n default: e.DashboardTopper,\n }),\n ),\n ),\n EditorialTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/editorial-topper/editorial-topper\"\n ).then((e) => ({\n default: e.EditorialTopper,\n })),\n ),\n EventTopper: dynamic(() =>\n import(\"design-system/components/toppers/event-topper/event-topper\").then(\n (e) => ({ default: e.EventTopper }),\n ),\n ),\n MissionTopper: dynamic(() =>\n import(\"design-system/sites/home/mission-topper/mission-topper\").then(\n (e) => ({ default: e.MissionTopper }),\n ),\n ),\n MediaTopper: dynamic(() =>\n import(\"design-system/components/toppers/media-topper/media-topper\").then(\n (e) => ({ default: e.MediaTopper }),\n ),\n ),\n ParticipantStoryTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/participant-story-topper/participant-story-topper\"\n ).then((e) => ({\n default: e.ParticipantStoryTopper,\n })),\n ),\n ProgramTopper: dynamic(() =>\n import(\"design-system/sites/exed/program-topper/program-topper\").then(\n (e) => ({\n default: e.ProgramTopper,\n }),\n ),\n ),\n ProfileTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/profile-topper/profile-topper\"\n ).then((e) => ({\n default: e.ProfileTopper,\n })),\n ),\n SearchTopper: dynamic(() =>\n import(\"design-system/components/toppers/search-topper/search-topper\").then(\n (e) => ({ default: e.SearchTopper }),\n ),\n ),\n SimplePageTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/simple-page-topper/simple-page-topper\"\n ).then((e) => ({\n default: e.SimplePageTopper,\n })),\n ),\n SimpleProgramTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/simple-program-topper/simple-program-topper\"\n ).then((e) => ({\n default: e.SimpleProgramTopper,\n })),\n ),\n SplitTopper: dynamic(() =>\n import(\"design-system/components/toppers/split-topper/split-topper\").then(\n (e) => ({ default: e.SplitTopper }),\n ),\n ),\n StatisticsTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/statistics-topper/statistics-topper\"\n ).then((e) => ({\n default: e.StatisticsTopper,\n })),\n ),\n LargeAssetTopper: dynamic(() =>\n import(\n \"design-system/components/toppers/large-asset-topper/large-asset-topper\"\n ).then((e) => ({\n default: e.LargeAssetTopper,\n })),\n ),\n FeaturedTermTopper: dynamic(() =>\n import(\n \"design-system/sites/hbswk/featured-term-topper/featured-term-topper\"\n ).then((e) => ({\n default: e.FeaturedTermTopper,\n })),\n ),\n SelectTopper: dynamic(() =>\n import(\"design-system/components/toppers/select-topper/select-topper\").then(\n (e) => ({\n default: e.SelectTopper,\n }),\n ),\n ),\n\n // TEASES\n ArticleTease: dynamic(() =>\n import(\n \"design-system/components/primitives/article-tease/article-tease\"\n ).then((e) => ({\n default: e.ArticleTease,\n })),\n ),\n BookTease: dynamic(() =>\n import(\"design-system/components/primitives/book-tease/book-tease\").then(\n (e) => ({\n default: e.BookTease,\n }),\n ),\n ),\n CourseCardTeaseRow: dynamic(() =>\n import(\n \"design-system/sites/online/components/course-card-tease-row/course-card-tease-row\"\n ).then((e) => ({\n default: e.CourseCardTeaseRow,\n })),\n ),\n EventFeedTease: dynamic(() =>\n import(\n \"design-system/components/primitives/event-feed-tease/event-feed-tease\"\n ).then((e) => ({\n default: e.EventFeedTease,\n })),\n ),\n ParticipantStoryTease: dynamic(() =>\n import(\n \"design-system/components/primitives/participant-story-tease/participant-story-tease\"\n ).then((e) => ({\n default: e.ParticipantStoryTease,\n })),\n ),\n PersonSearchResultTease: dynamic(() =>\n import(\n \"design-system/components/primitives/person-search-result-tease/person-search-result-tease\"\n ).then((e) => ({\n default: e.PersonSearchResultTease,\n })),\n ),\n PersonTease: dynamic(() =>\n import(\n \"design-system/components/primitives/person-tease/person-tease\"\n ).then((e) => ({\n default: e.PersonTease,\n })),\n ),\n PodcastTease: dynamic(() =>\n import(\n \"design-system/components/primitives/podcast-tease/podcast-tease\"\n ).then((e) => ({\n default: e.PodcastTease,\n })),\n ),\n QuoteTease: dynamic(() =>\n import(\"design-system/components/primitives/quote-tease/quote-tease\").then(\n (e) => ({\n default: e.QuoteTease,\n }),\n ),\n ),\n ProgramTease: dynamic(() =>\n import(\n \"design-system/components/primitives/program-tease/program-tease\"\n ).then((e) => ({\n default: e.ProgramTease,\n })),\n ),\n SocialMediaTease: dynamic(() =>\n import(\n \"design-system/components/primitives/social-media-tease/social-media-tease\"\n ).then((e) => ({\n default: e.SocialMediaTease,\n })),\n ),\n VideoTease: dynamic(() =>\n import(\"design-system/components/primitives/video-tease/video-tease\").then(\n (e) => ({\n default: e.VideoTease,\n }),\n ),\n ),\n\n // SITE HEADERS\n SiteHeader: dynamic(() =>\n import(\"design-system/components/universal/site-header/site-header\").then(\n (e) => ({\n default: e.SiteHeader,\n }),\n ),\n ),\n} satisfies ComponentLibrary;\n","'use client'\n\nimport React from 'react'\n\ntype CaptureFn = (moduleName: string) => void\n\nexport const LoadableContext = React.createContext(null)\n\nif (process.env.NODE_ENV !== 'production') {\n LoadableContext.displayName = 'LoadableContext'\n}\n","import type {\n AssetRef,\n ContentfulAsset,\n ContentfulEntry,\n ContentfulIncludes,\n ContentfulSysLink,\n EntryRef,\n} from \"../schema/sys\";\n\nexport function resolveEntry(\n includes: ContentfulIncludes,\n ref?: EntryRef,\n) {\n if (isEntryRef(ref)) {\n return includes.Entry.find((entry) => entry.sys?.id === ref.sys?.id) as E;\n } else {\n if (ref && typeof ref === \"object\") {\n if (\n \"fields\" in ref &&\n (ref as Record).fields &&\n typeof (ref as Record).fields === \"object\"\n ) {\n // is most likely an already resolved entry\n return ref as unknown as E;\n }\n }\n }\n}\n\nexport function resolveAsset(\n includes: ContentfulIncludes,\n ref?: ContentfulSysLink,\n): ContentfulAsset | undefined {\n if (isAssetRef(ref)) {\n return includes.Asset.find((asset) => asset.sys?.id === ref.sys?.id)!;\n } else {\n if (ref && typeof ref === \"object\") {\n if (\"fields\" in ref && ref.fields && typeof ref.fields === \"object\") {\n // is most likely an already resolved asset\n return ref as unknown as ContentfulAsset;\n }\n }\n }\n}\n\nexport function isEntryRef(ref: unknown): ref is EntryRef {\n if (isLinkObj(ref)) {\n return ref.sys.linkType === \"Entry\";\n }\n\n return false;\n}\n\nexport function isAssetRef(ref: unknown): ref is AssetRef {\n if (isLinkObj(ref)) {\n return ref.sys.linkType === \"Asset\";\n }\n\n return false;\n}\n\nfunction isLinkObj(\n ref: unknown,\n): ref is ContentfulSysLink {\n if (ref && typeof ref === \"object\") {\n if (\"sys\" in ref && ref.sys && typeof ref.sys === \"object\") {\n if (\"id\" in ref.sys && typeof ref.sys.id === \"string\") {\n if (\"linkType\" in ref.sys && typeof ref.sys.linkType === \"string\") {\n return true;\n }\n }\n }\n }\n\n return false;\n}\n","import { Component, ErrorInfo, ReactNode } from \"react\";\n\ninterface Props {\n fallback?: ReactNode;\n children?: ReactNode;\n}\n\ninterface State {\n hasError: boolean;\n}\n\nexport class ErrorBoundary extends Component {\n public state: State = {\n hasError: false,\n };\n\n constructor(props: Props) {\n super(props);\n }\n\n public static getDerivedStateFromError(): State {\n return { hasError: true };\n }\n\n public componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n console.error(JSON.stringify({ error, errorInfo }));\n }\n\n public render() {\n if (this.state.hasError) {\n return this.props.fallback;\n }\n\n return this.props.children;\n }\n}\n","import { type PayloadAction, createSlice } from \"@reduxjs/toolkit\";\n\nexport interface LocationState {\n domain: string;\n path: string;\n query: Record;\n}\n\nexport const locationSlice = createSlice({\n name: \"location\",\n initialState: { domain: \"www\", path: \"/\", query: {} } satisfies LocationState,\n reducers: {\n initializeLocation: (\n state,\n action: PayloadAction>,\n ) => {\n // since this is a proxy object keys must be updated individually, `state = ...` doesn't work\n if (action.payload.domain) state.domain = action.payload.domain;\n if (action.payload.query) state.query = action.payload.query;\n if (action.payload.path) state.path = action.payload.path;\n },\n },\n});\n","import { PropsWithChildren, useRef } from \"react\";\nimport { Provider } from \"react-redux\";\nimport { createStore, type Store } from \"./store\";\nimport { LocationState, locationSlice } from \"./slice-location\";\nimport { FrameworkState, frameworkSlice } from \"./slice-framework\";\n\n// https://redux-toolkit.js.org/usage/nextjs#loading-initial-data\n\nexport interface StoreProviderProps {\n location: LocationState;\n framework: FrameworkState;\n}\n\nexport function StoreProvider({\n children,\n ...props\n}: PropsWithChildren) {\n const storeRef = useRef(null);\n // this ensures the store is only created once\n if (!storeRef.current) {\n storeRef.current = createStore();\n\n if (props.location) {\n storeRef.current.dispatch(\n locationSlice.actions.initializeLocation(props.location),\n );\n }\n\n if (props.framework) {\n storeRef.current.dispatch(\n frameworkSlice.actions.initializeFramework(props.framework),\n );\n }\n }\n\n return {children};\n}\n","import { type PayloadAction, createSlice } from \"@reduxjs/toolkit\";\nimport { FC, Fragment, ReactNode } from \"react\";\n\nexport interface FrameworkState {\n Head: FC<{ children: ReactNode }>;\n}\n\nexport const frameworkSlice = createSlice({\n name: \"framework\",\n initialState: {\n Head: Fragment as FrameworkState[\"Head\"],\n } satisfies FrameworkState,\n reducers: {\n initializeFramework: (\n state,\n action: PayloadAction>,\n ) => {\n if (action.payload.Head) state.Head = action.payload.Head;\n },\n },\n});\n","export type Translations = Record>;\n\nexport const translations: Translations = {\n \"en-us\": {\n dates: \"Dates\",\n status: \"Status\",\n format: \"Format\",\n blended: \"Blended\",\n inPerson: \"In-Person\",\n virtual: \"Virtual\",\n location: \"Location\",\n role: \"Role\",\n industry: \"Industry\",\n program: \"Program\",\n fee: \"Fee\",\n applicationDue: \"Application Due\",\n overview: \"Overview\",\n selectSession: \"Select a Session\",\n learningTrack: \"Learning Track\",\n startDateToBeConfirmed: \"Start Date to Be Confirmed\",\n toBeConfirmed: \"To Be Confirmed\",\n lastRan: \"Last Ran\",\n applyNow: \"Apply Now\",\n downloadBrochure: \"Download Brochure\",\n backToText: \"back to text\",\n programFormat: \"Program Format\",\n },\n \"zh-cn\": {\n dates: \"日期\",\n status: \"申请状态\",\n format: \"形式\",\n blended: \"混合\",\n inPerson: \"面对面学习\",\n virtual: \"虚拟\",\n location: \"地点\",\n role: \"职能\",\n industry: \"行业\",\n program: \"课程\",\n fee: \"费用\",\n applicationDue: \"申请截止日期\",\n overview: \"概述\",\n selectSession: \"选择一个会话\",\n learningTrack: \"学习轨迹\",\n startDateToBeConfirmed: \"Start Date 待定\",\n toBeConfirmed: \"待定\",\n lastRan: \"上次运行\",\n applyNow: \"立即申请\",\n downloadBrochure: \"下载课程手册\",\n backToText: \"返回文本\",\n programFormat: \"课程形式\",\n },\n};\n","import {\n Translations,\n translations as DEFAULT_TRANSLATIONS,\n} from \"design-system/i18n/translations\";\nimport { PropsWithChildren, createContext, useContext } from \"react\";\n\nexport type TranslationFn = (key: string, locale?: string) => string;\n\nexport interface TranslationsContext {\n t: TranslationFn;\n strings: Translations;\n}\n\nexport interface TranslationsProps {\n locale?: string;\n strings?: Translations;\n}\n\nconst TranslationsContext = createContext({\n t: (key) => key,\n strings: DEFAULT_TRANSLATIONS,\n});\n\nexport function TranslationsProvider({\n strings = DEFAULT_TRANSLATIONS,\n locale: activeLocale = \"en-US\",\n children,\n}: PropsWithChildren) {\n const t: TranslationFn = (key, locale = activeLocale) => {\n if (!strings[locale]?.[key]) {\n console.warn(`Missing translation for key: ${key} in locale: ${locale}`);\n }\n\n return strings[locale]?.[key] || key;\n };\n\n return (\n \n {children}\n \n );\n}\n\nexport function useTranslations() {\n return useContext(TranslationsContext);\n}\n","import React from 'react'\nimport Loadable from './loadable.shared-runtime'\n\nconst isServerSide = typeof window === 'undefined'\n\ntype ComponentModule

= { default: React.ComponentType

}\n\nexport declare type LoaderComponent

= Promise<\n React.ComponentType

| ComponentModule

\n>\n\nexport declare type Loader

=\n | (() => LoaderComponent

)\n | LoaderComponent

\n\nexport type LoaderMap = { [module: string]: () => Loader }\n\nexport type LoadableGeneratedOptions = {\n webpack?(): any\n modules?(): LoaderMap\n}\n\nexport type DynamicOptionsLoadingProps = {\n error?: Error | null\n isLoading?: boolean\n pastDelay?: boolean\n retry?: () => void\n timedOut?: boolean\n}\n\n// Normalize loader to return the module as form { default: Component } for `React.lazy`.\n// Also for backward compatible since next/dynamic allows to resolve a component directly with loader\n// Client component reference proxy need to be converted to a module.\nfunction convertModule

(mod: React.ComponentType

| ComponentModule

) {\n return { default: (mod as ComponentModule

)?.default || mod }\n}\n\nexport type DynamicOptions

= LoadableGeneratedOptions & {\n loading?: (loadingProps: DynamicOptionsLoadingProps) => React.ReactNode\n loader?: Loader

| LoaderMap\n loadableGenerated?: LoadableGeneratedOptions\n ssr?: boolean\n}\n\nexport type LoadableOptions

= DynamicOptions

\n\nexport type LoadableFn

= (\n opts: LoadableOptions

\n) => React.ComponentType

\n\nexport type LoadableComponent

= React.ComponentType

\n\nexport function noSSR

(\n LoadableInitializer: LoadableFn

,\n loadableOptions: DynamicOptions

\n): React.ComponentType

{\n // Removing webpack and modules means react-loadable won't try preloading\n delete loadableOptions.webpack\n delete loadableOptions.modules\n\n // This check is necessary to prevent react-loadable from initializing on the server\n if (!isServerSide) {\n return LoadableInitializer(loadableOptions)\n }\n\n const Loading = loadableOptions.loading!\n // This will only be rendered on the server side\n return () => (\n \n )\n}\n\n/**\n * This function lets you dynamically import a component.\n * It uses [React.lazy()](https://react.dev/reference/react/lazy) with [Suspense](https://react.dev/reference/react/Suspense) under the hood.\n *\n * Read more: [Next.js Docs: `next/dynamic`](https://nextjs.org/docs/app/building-your-application/optimizing/lazy-loading#nextdynamic)\n */\nexport default function dynamic

(\n dynamicOptions: DynamicOptions

| Loader

,\n options?: DynamicOptions

\n): React.ComponentType

{\n let loadableFn = Loadable as LoadableFn

\n\n let loadableOptions: LoadableOptions

= {\n // A loading component is not required, so we default it\n loading: ({ error, isLoading, pastDelay }) => {\n if (!pastDelay) return null\n if (process.env.NODE_ENV !== 'production') {\n if (isLoading) {\n return null\n }\n if (error) {\n return (\n

\n {error.message}\n
\n {error.stack}\n

\n )\n }\n }\n return null\n },\n }\n\n // Support for direct import(), eg: dynamic(import('../hello-world'))\n // Note that this is only kept for the edge case where someone is passing in a promise as first argument\n // The react-loadable babel plugin will turn dynamic(import('../hello-world')) into dynamic(() => import('../hello-world'))\n // To make sure we don't execute the import without rendering first\n if (dynamicOptions instanceof Promise) {\n loadableOptions.loader = () => dynamicOptions\n // Support for having import as a function, eg: dynamic(() => import('../hello-world'))\n } else if (typeof dynamicOptions === 'function') {\n loadableOptions.loader = dynamicOptions\n // Support for having first argument being options, eg: dynamic({loader: import('../hello-world')})\n } else if (typeof dynamicOptions === 'object') {\n loadableOptions = { ...loadableOptions, ...dynamicOptions }\n }\n\n // Support for passing options, eg: dynamic(import('../hello-world'), {loading: () =>

Loading something

})\n loadableOptions = { ...loadableOptions, ...options }\n\n const loaderFn = loadableOptions.loader as () => LoaderComponent

\n const loader = () =>\n loaderFn != null\n ? loaderFn().then(convertModule)\n : Promise.resolve(convertModule(() => null))\n\n // coming from build/babel/plugins/react-loadable-plugin.js\n if (loadableOptions.loadableGenerated) {\n loadableOptions = {\n ...loadableOptions,\n ...loadableOptions.loadableGenerated,\n }\n delete loadableOptions.loadableGenerated\n }\n\n // support for disabling server side rendering, eg: dynamic(() => import('../hello-world'), {ssr: false}).\n if (typeof loadableOptions.ssr === 'boolean' && !loadableOptions.ssr) {\n delete loadableOptions.webpack\n delete loadableOptions.modules\n\n return noSSR(loadableFn, loadableOptions)\n }\n\n return loadableFn({ ...loadableOptions, loader: loader as Loader

})\n}\n","module.exports = require('./dist/shared/lib/dynamic')\n","import { AssetRef, ContentfulIncludes } from \"../schema/sys\";\nimport { resolveAsset } from \"./resolve-includes\";\n\nconst CONTENTFUL_ASSET_DOMAIN = \"assets.ctfassets.net\";\nconst CONTENTFUL_IMAGE_DOMAIN = \"images.ctfassets.net\";\n\ninterface ResolveAssetUrlArgs {\n asset?: AssetRef;\n includes: ContentfulIncludes;\n}\n\nexport function resolveAssetUrl({ asset, includes }: ResolveAssetUrlArgs) {\n const resolved = resolveAsset(includes, asset);\n\n const url = resolved?.fields?.file?.url;\n\n if (url) {\n let assetUrl = url\n .replace(CONTENTFUL_ASSET_DOMAIN, \"webassets.hbs.edu\")\n .replace(CONTENTFUL_IMAGE_DOMAIN, \"webassets.hbs.edu\");\n\n // contentful asset URLs begin with \"//\"\n if (assetUrl.startsWith(\"//\")) assetUrl = \"https:\" + assetUrl;\n return assetUrl;\n }\n\n return url;\n}\n\nexport function cleanAssetUrl(url: string): string {\n let assetUrl = url\n .replace(CONTENTFUL_ASSET_DOMAIN, \"webassets.hbs.edu\")\n .replace(CONTENTFUL_IMAGE_DOMAIN, \"webassets.hbs.edu\");\n\n // contentful asset URLs begin with \"//\"\n if (assetUrl.startsWith(\"//\")) assetUrl = \"https:\" + assetUrl;\n\n return assetUrl;\n}\n","import { resolveEntry } from \"frontend/contentful/lib/resolve-includes\";\nimport type { PageProps } from \"frontend/types\";\nimport { PropsWithChildren, createContext, useContext } from \"react\";\n\nconst PagePropsContext = createContext({\n map: [],\n errors: [],\n fetches: [],\n singletons: {},\n contentful: {},\n includes: { Asset: [], Entry: [] },\n request: {\n method: \"get\",\n path: \"/\",\n query: {},\n cookies: {},\n headers: {},\n host: \"www.hbs.edu\",\n domain: \"www\",\n env: \"production\",\n search: \"\",\n },\n locale: \"en-us\",\n defaultLocale: \"en-us\",\n supportedLocales: [\"en-us\", \"zh-cn\"],\n hasTranslations: false,\n});\n\nexport function PagePropsProvider({\n children,\n ...ctx\n}: PropsWithChildren) {\n const entry = resolveEntry(ctx.includes, ctx.entry);\n\n const map = ctx.map.sort((a, b) => {\n if (a.order && !b.order) return -1;\n if (b.order && !a.order) return 1;\n if (a.order && b.order && a.order !== b.order) {\n return a.order > b.order ? 1 : -1;\n }\n return a.title.localeCompare(b.title);\n });\n\n return (\n \n {children}\n \n );\n}\n\nexport function usePageProps() {\n return useContext(PagePropsContext);\n}\n","import dynamic from \"next/dynamic\";\nimport { ComponentType } from \"react\";\nimport { ContentfulComponentRenderProps } from \"./lib/create-contentful-component\";\n\n/*\nkey: Contentful content type id\nvalue: dynamic Contentful-enabled component (has props: { entry: ContentfulEntry })\n*/\n\nexport const contentfulComponents = {\n // if a site content entry is passed, render 404 page\n site: dynamic(() =>\n import(\"frontend/contentful/components/universal/site.contentful\").then(\n (e) => ({\n default: e.ContentfulSite,\n }),\n ),\n ),\n\n // PAGES\n landingPage: dynamic(() =>\n import(\"frontend/contentful/components/pages/landing-page.contentful\").then(\n (e) => ({\n default: e.ContentfulLandingPage,\n }),\n ),\n ),\n detailPage: dynamic(() =>\n import(\"frontend/contentful/components/pages/detail-page.contentful\").then(\n (e) => ({\n default: e.ContentfulDetailPage,\n }),\n ),\n ),\n archivePage: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/archive-page/archive-page.contentful\"\n ).then((e) => ({\n default: e.ContentfulArchivePage,\n })),\n ),\n exedProgramFinderArchivePage: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/archive-page/exed-program-finder.contentful\"\n ).then((e) => ({\n default: e.ContentfulExEdProgramFinderArchivePage,\n })),\n ),\n articlePage: dynamic(() =>\n import(\"frontend/contentful/components/pages/article-page.contentful\").then(\n (e) => ({\n default: e.ContentfulArticlePage,\n }),\n ),\n ),\n coursePage: dynamic(() =>\n import(\"frontend/contentful/components/pages/course-page.contentful\").then(\n (e) => ({\n default: e.ContentfulCoursePage,\n }),\n ),\n ),\n programPage: dynamic(() =>\n import(\"frontend/contentful/components/pages/program-page.contentful\").then(\n (e) => ({\n default: e.ContentfulProgramPage,\n }),\n ),\n ),\n profilePage: dynamic(() =>\n import(\"frontend/contentful/components/pages/profile-page.contentful\").then(\n (e) => ({\n default: e.ContentfulProfilePage,\n }),\n ),\n ),\n participantStory: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/participant-story.contentful\"\n ).then((e) => ({\n default: e.ContentfulParticipantStory,\n })),\n ),\n knowledgeBaseArticlePage: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/knowledge-base-article-page.contentful\"\n ).then((e) => ({\n default: e.ContentfulKnowledgeBaseArticlePage,\n })),\n ),\n databasePage: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/database-page.contentful\"\n ).then((e) => ({\n default: e.ContentfulDatabasePage,\n })),\n ),\n datasetPage: dynamic(() =>\n import(\"frontend/contentful/components/pages/dataset-page.contentful\").then(\n (e) => ({\n default: e.ContentfulDatasetPage,\n }),\n ),\n ),\n podcastEpisodePage: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/podcast-episode-page.contentful\"\n ).then((e) => ({\n default: e.ContentfulPodcastEpisodePage,\n })),\n ),\n clubPage: dynamic(() =>\n import(\"frontend/contentful/components/pages/club-page.contentful\").then(\n (e) => ({\n default: e.ContentfulClubPage,\n }),\n ),\n ),\n knowledgeDetail: dynamic(() =>\n import(\n \"frontend/contentful/components/pages/knowledge-detail.contentful\"\n ).then((e) => ({\n default: e.ContentfulKnowledgeGraphPage,\n })),\n ),\n\n // SEMANTIC PAGES\n artwork: dynamic(() =>\n import(\"frontend/contentful/components/semantics/artwork.contentful\").then(\n (e) => ({\n default: e.ContentfulArtworkPage,\n }),\n ),\n ),\n podcastEpisode: dynamic(() =>\n import(\n \"frontend/contentful/components/semantics/podcast-episode.contentful\"\n ).then((e) => ({\n default: e.ContentfulPodcastEpisode,\n })),\n ),\n\n // TOPPERS\n missionTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/mission-topper/mission-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulMissionTopper,\n })),\n ),\n splitPageTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/split-page-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSplitPageTopper,\n })),\n ),\n splitPageTopperPodcast: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/split-page-topper-podcast.contentful\"\n ).then((e) => ({\n default: e.ContentfulSplitPageTopperPodcast,\n })),\n ),\n splitSearchTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/split-search-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSplitSearchTopper,\n })),\n ),\n simplePageTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/simple-page-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSimplePageTopper,\n })),\n ),\n statisticsTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/statistics-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulStatisticsTopper,\n })),\n ),\n cardTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/card-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulCardTopper,\n })),\n ),\n mediaTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/media-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulMediaTopper,\n })),\n ),\n simpleArticleTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/simple-article-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSimpleArticleTopper,\n })),\n ),\n bigArtTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/big-art-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulBigArtTopper,\n })),\n ),\n splitArticleTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/split-article-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSplitArticleTopper,\n })),\n ),\n editorialTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/editorial-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulEditorialTopper,\n })),\n ),\n profileTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/profile-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulProfileTopper,\n })),\n ),\n wkProfileTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/wk-profile-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulWKProfileTopper,\n })),\n ),\n largeAssetTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/large-asset-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulLargeAssetTopper,\n })),\n ),\n featuredTermTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/featured-term-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulFeaturedTermTopper,\n })),\n ),\n wkFeaturedTermTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/wk-featured-term-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulWKFeaturedTermTopper,\n })),\n ),\n selectTopper: dynamic(() =>\n import(\n \"frontend/contentful/components/toppers/select-topper.contentful\"\n ).then((e) => ({\n default: e.ContentfulSelectTopper,\n })),\n ),\n\n // BLOCKS\n accordion: dynamic(() =>\n import(\"frontend/contentful/components/blocks/accordion.contentful\").then(\n (e) => ({\n default: e.ContentfulAccordion,\n }),\n ),\n ),\n alphanumericLinkList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/alphanumeric-link-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulAlphanumericLinkList,\n })),\n ),\n ctaBanner: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/cta/cta-banner.contentful\"\n ).then((e) => ({\n default: e.ContentfulCtaBanner,\n })),\n ),\n donationCta: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/donation-cta.contentful\"\n ).then((e) => ({\n default: e.ContentfulDonationCta,\n })),\n ),\n heroStatement: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/hero-statement.contentful\"\n ).then((e) => ({\n default: e.ContentfulHeroStatement,\n })),\n ),\n hierarchicalTease: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/hierarchical-tease.contentful\"\n ).then((e) => ({\n default: e.ContentfulHierarchicalTease,\n })),\n ),\n keywordScrollList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/keyword-scroll-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulKeywordScrollList,\n })),\n ),\n pageSectionHeader: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/page-section-header.contentful\"\n ).then((e) => ({\n default: e.ContentfulPageSectionHeader,\n })),\n ),\n supportingDetails: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/supporting-details.contentful\"\n ).then((e) => ({\n default: e.ContentfulSupportingDetails,\n })),\n ),\n smallGridList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/small-grid-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulSmallGridList,\n })),\n ),\n bigGridList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/big-grid-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulBigGridList,\n })),\n ),\n multiFeedTeaseRow: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/multi-feed-tease-row.contentful\"\n ).then((e) => ({\n default: e.ContentfulMultiFeedTeaseRow,\n })),\n ),\n tabs: dynamic(() =>\n import(\"frontend/contentful/components/blocks/tabs.contentful\").then(\n (e) => ({\n default: e.ContentfulTabs,\n }),\n ),\n ),\n teaseRowArticles: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-articles.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowArticles,\n })),\n ),\n teaseRowBooks: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-books.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowBooks,\n })),\n ),\n teaseRowQuotes: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-quotes.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowQuotes,\n })),\n ),\n teaseRowContents: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-contents.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowContents,\n })),\n ),\n teaseRowPodcasts: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-podcasts.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowPodcasts,\n })),\n ),\n richText: dynamic(() =>\n import(\"frontend/contentful/components/blocks/rich-text.contentful\").then(\n (e) => ({\n default: e.ContentfulRichText,\n }),\n ),\n ),\n richTextTruncator: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/rich-text-truncator.contentful\"\n ).then((e) => ({\n default: e.ContentfulRichTextTruncator,\n })),\n ),\n mediaAssetRow: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/media-asset-row.contentful\"\n ).then((e) => ({\n default: e.ContentfulMediaAssetRow,\n })),\n ),\n sectionIntroText: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/section-intro-text.contentful\"\n ).then((e) => ({\n default: e.ContentfulSectionIntroText,\n })),\n ),\n timelineTease: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/timeline-tease.contentful\"\n ).then((e) => ({\n default: e.ContentfulTimelineTease,\n })),\n ),\n heroTease: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/hero-tease.contentful\"\n ).then((e) => ({\n default: e.ContentfulHeroTease,\n })),\n ),\n statisticsCta: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/statistics-cta.contentful\"\n ).then((e) => ({\n default: e.ContentfulStatisticsCta,\n })),\n ),\n statisticsGroup: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/statistics-group.contentful\"\n ).then((e) => ({\n default: e.ContentfulStatisticsGroup,\n })),\n ),\n table: dynamic(() =>\n import(\"frontend/contentful/components/blocks/table.contentful\").then(\n (m) => ({ default: m.ContentfulTable }),\n ),\n ),\n teaseRowPeople: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-people.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowPeople,\n })),\n ),\n teaseRowProgramCards: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-program-cards.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowProgramCards,\n })),\n ),\n teaseFeedArticles: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-feed-articles.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseFeedArticles,\n })),\n ),\n teaseFeedBooks: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-feed-books.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseFeedBooks,\n })),\n ),\n multipleColumnList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/multiple-column-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulMultipleColumnList,\n })),\n ),\n podcastPlayer: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/podcast-player.contentful\"\n ).then((e) => ({\n default: e.ContentfulPodcastPlayer,\n })),\n ),\n pullQuote: dynamic(() =>\n import(\"frontend/contentful/components/blocks/pull-quote.contentful\").then(\n (e) => ({\n default: e.ContentfulPullQuote,\n }),\n ),\n ),\n multiColumnRichText: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/multi-column-rich-text.contentful\"\n ).then((e) => ({\n default: e.ContentfulMultiColumnRichText,\n })),\n ),\n statisticsRow: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/statistics-row.contentful\"\n ).then((e) => ({\n default: e.ContentfulStatisticsRow,\n })),\n ),\n teaseRowParticipantStories: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-row-participant-stories.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseRowParticipantStories,\n })),\n ),\n truncator: dynamic(() =>\n import(\"frontend/contentful/components/blocks/truncator.contentful\").then(\n (e) => ({\n default: e.ContentfulTruncator,\n }),\n ),\n ),\n programFinder: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/program-finder.contentful\"\n ).then((e) => ({\n default: e.ContentfulProgramFinder,\n })),\n ),\n quoteTestimonial: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/quote-testimonial.contentful\"\n ).then((e) => ({\n default: e.QuoteContentfulTestimonial,\n })),\n ),\n videoTestimonial: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/video-testimonial.contentful\"\n ).then((e) => ({\n default: e.ContentfulVideoTestimonial,\n })),\n ),\n textCallout: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/text-callout.contentful\"\n ).then((e) => ({\n default: e.ContentfulTextCallout,\n })),\n ),\n sideBySideSectionIntro: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/side-by-side-section-intro.contentful\"\n ).then((e) => ({\n default: e.ContentfulSideBySideSectionIntro,\n })),\n ),\n sideBySideList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/side-by-side-list.contentful\"\n ).then((e) => ({\n default: e.ContentfulSideBySideList,\n })),\n ),\n dataVisualizationEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/data-visualization-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulDataVisualizationEmbed,\n })),\n ),\n dataWrapperEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/data-wrapper-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulDataWrapperEmbed,\n })),\n ),\n peopleListing: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/people-listing.contentful\"\n ).then((e) => ({\n default: e.ContentfulPeopleListing,\n })),\n ),\n mediaCarousel: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/media-carousel.contentful\"\n ).then((e) => ({\n default: e.ContentfulMediaCarousel,\n })),\n ),\n hoursTable: dynamic(() =>\n import(\"frontend/contentful/components/blocks/hours-table.contentful\").then(\n (e) => ({\n default: e.ContentfulHoursTable,\n }),\n ),\n ),\n hoursCalendar: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/hours-calendar.contentful\"\n ).then((e) => ({\n default: e.ContentfulHoursCalendar,\n })),\n ),\n machformEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/machform-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulMachFormEmbed,\n })),\n ),\n springshareFormEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/springshare-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulSpringShareFormEmbed,\n })),\n ),\n activeCampaignEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/active-campaign-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulActiveCampaignEmbed,\n })),\n ),\n formAssemblyEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/formassembly-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulFormAssemblyEmbed,\n })),\n ),\n flourishEmbed: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/flourish-embed.contentful\"\n ).then((e) => ({\n default: e.ContentfulFlourishEmbed,\n })),\n ),\n teaseFeedEvents: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/tease-feed-events.contentful\"\n ).then((e) => ({\n default: e.ContentfulTeaseFeedEvents,\n })),\n ),\n multipleColumnLinkList: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/multiple-column-link-list.contentful\"\n ).then((e) => ({\n default: e.MultipleColumnLinkListContentful,\n })),\n ),\n eventsTease: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/teases/events-tease.contentful\"\n ).then((e) => ({\n default: e.ContentfulEventsTease,\n })),\n ),\n courseFeaturesVideoModule: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/course-features-video-module.contentful\"\n ).then((e) => ({\n default: e.ContentfulCourseFeaturesVideoModule,\n })),\n ),\n eventSchedule: dynamic(() =>\n import(\n \"frontend/contentful/components/blocks/event-schedule.contentful\"\n ).then((e) => ({\n default: e.ContentfulEventSchedule,\n })),\n ),\n socialMediaTease: dynamic(() =>\n import(\n \"frontend/contentful/components/primitives/social-media-tease.contentful\"\n ).then((e) => ({\n default: e.ContentfulSocialMediaTease,\n })),\n ),\n\n // UTILS\n query: dynamic(() =>\n import(\"frontend/contentful/components/utils/query.contentful\").then(\n (e) => ({\n default: e.ContentfulQuery,\n }),\n ),\n ),\n} as const satisfies Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ComponentType>\n>;\n","import { ComponentType, Suspense } from \"react\";\nimport { ContentfulEntry, EntryRef } from \"frontend/contentful/schema/sys\";\nimport { ErrorBoundary } from \"design-system/components/system/error-boundary/error-boundary\";\nimport { contentfulComponents } from \"frontend/contentful/contentful-components\";\nimport { useContentful } from \"frontend/hooks/use-contentful\";\nimport {\n ArchivePageEntry,\n PageTemplates,\n} from \"frontend/contentful/schema/pages\";\nimport { isContentType } from \"frontend/contentful/lib/is-content-type\";\nimport {\n ContentfulComponentRenderProps,\n ContentfulFactoryComponent,\n} from \"frontend/contentful/lib/create-contentful-component\";\n\ninterface RenderContentfulEntryProps {\n entry?: EntryRef | null;\n options?: Record;\n}\n\nconst archiveTemplates: Record<\n PageTemplates,\n ContentfulFactoryComponent\n> = {\n \"ExEd Program Finder\": contentfulComponents.exedProgramFinderArchivePage,\n \"Person Profiles\": contentfulComponents.archivePage,\n};\n\nexport function RenderContentfulEntry({\n entry,\n options,\n}: RenderContentfulEntryProps) {\n const { getEntry } = useContentful();\n\n if (!entry) return null;\n\n entry = getEntry(entry);\n\n let Component: // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ComponentType> | undefined;\n\n if (\n isContentType(\"archivePage\", entry) &&\n entry.fields.template\n ) {\n Component = archiveTemplates[entry.fields.template];\n } else {\n const componentType = entry?.sys?.contentType?.sys?.id;\n Component = componentType\n ? contentfulComponents[componentType as keyof typeof contentfulComponents]\n : undefined;\n }\n\n if (Component) {\n return (\n \n \n \n \n \n );\n }\n\n return null;\n}\n","import { EditAttributes } from \"design-system/types/types\";\nimport { ContentfulEntry, EntryRef } from \"../schema/sys\";\n\ninterface EditAttributesArgs {\n fieldId?: string;\n entryId?: string;\n entry?: EntryRef;\n}\n\nexport type CreateEditAttributesFn = (\n args: EditAttributesArgs,\n) => EditAttributes;\n\nexport function editAttributesFactory(\n isEditorMode?: boolean,\n): CreateEditAttributesFn {\n return ({ fieldId, entry, entryId }) => {\n if (!isEditorMode) return null;\n return {\n \"data-contentful-entry-id\": entryId || entry?.sys?.id || \"\",\n \"data-contentful-field-id\": fieldId || \"internalName\",\n };\n };\n}\n","import { Domain } from \"frontend/lib/get-domain\";\nimport { AppUrlEntry } from \"../schema/app\";\nimport { AssetRef, ContentfulIncludes } from \"../schema/sys\";\nimport { resolveAssetUrl } from \"./resolve-asset.url\";\n\ntype AppUrlWithAssetEntry = AppUrlEntry<\n string,\n {\n // add support for links with possible assets\n asset?: AssetRef;\n }\n>;\n\nexport interface ResolveEntriesOptions {\n absolute?: boolean;\n excludeProtocol?: boolean;\n isPreview?: boolean;\n locale?: string;\n}\n\ninterface ResolveEntryUrlArgs\n extends ResolveEntriesOptions {\n domain: Domain;\n entry?: E;\n includes: ContentfulIncludes;\n defaultLocale?: string;\n supportedLocales?: Array;\n}\n\nexport function resolveEntryUrl({\n entry,\n domain,\n includes,\n absolute,\n excludeProtocol,\n isPreview,\n locale,\n defaultLocale,\n supportedLocales,\n}: ResolveEntryUrlArgs): string | undefined {\n const assetUrl = resolveAssetUrl({ includes, asset: entry?.fields.asset });\n if (assetUrl) return assetUrl;\n\n if (!entry?.fields.url) return undefined;\n if (entry?.fields.isExternalUrl) return entry.fields.url;\n\n // Don't localize URL if the entry doesn't have translations\n if (!entry?.fields.hasTranslations) locale = defaultLocale;\n\n return resolveDomainUrl(\n domain,\n entry.fields.url,\n excludeProtocol,\n absolute,\n isPreview,\n locale,\n defaultLocale,\n supportedLocales,\n );\n}\n\nexport function resolveDomainUrl(\n domain: string,\n url: string,\n excludeProtocol?: boolean,\n absolute?: boolean,\n isPreview?: boolean,\n locale?: string,\n defaultLocale?: string,\n supportedLocales?: Array,\n) {\n if (locale) {\n if (locale !== defaultLocale) {\n const normalizedUrl = url.replace(`${domain}.hbs.edu`, \"\");\n\n // Create a new URL object. If the URL is relative, we assume a base of 'http://dummy.com'\n const parsedUrl = new URL(normalizedUrl, \"http://dummy.com\");\n\n // Split the pathname into segments\n const pathSegments = parsedUrl.pathname\n .split(\"/\")\n .filter((segment) => segment);\n\n // Add the locale as the first path segment\n pathSegments.unshift(locale);\n\n // Join the path segments back together and set the new pathname\n parsedUrl.pathname = pathSegments.join(\"/\");\n\n // Remove the dumy base URL\n const localizedUrl = parsedUrl.toString().replace(\"http://dummy.com\", \"\");\n\n // Add back HBS domain if it was removed\n if (url !== normalizedUrl) {\n url = `${domain}.hbs.edu${localizedUrl}`;\n } else {\n url = localizedUrl;\n }\n } else {\n supportedLocales?.forEach((supportedLocale) => {\n if (supportedLocale === defaultLocale) return;\n url = url.replace(`/${supportedLocale}`, \"\");\n });\n }\n }\n\n // Redirects support for when $1 in the destination URL\n if (url === \"$1\") {\n return url;\n }\n\n if (!absolute && url.startsWith(`${domain}.hbs.edu`)) {\n // account for the root (will be empty string)\n return url.replace(`${domain}.hbs.edu`, \"\") || \"/\";\n }\n\n if (url.startsWith(\"https://\")) {\n if (excludeProtocol) return url.substring(8);\n return url;\n }\n\n if (excludeProtocol || url.startsWith(\"/\")) return url;\n\n if (isPreview) {\n return `https://preview.${url.replace(\"www.\", \"\")}`;\n }\n let updatedUrl = url;\n if (url.startsWith(\"library.\") || url.startsWith(\"exed.\")) {\n updatedUrl = \"www.\" + url;\n }\n\n return `https://${updatedUrl}`;\n}\n","import { ContentfulEntry, ContentfulIncludes, EntryRef } from \"../schema/sys\";\nimport { resolveEntry } from \"./resolve-includes\";\n\ninterface ResolveEntriesArgs {\n refs?: Array>;\n includes: ContentfulIncludes;\n}\n\nexport function resolveEntries({\n refs,\n includes,\n}: ResolveEntriesArgs) {\n if (!Array.isArray(refs)) return [];\n\n const entries: Array = [];\n\n refs.forEach((ref) => {\n const entry = resolveEntry(includes, ref);\n if (entry) entries.push(entry);\n });\n\n return entries;\n}\n","import {\n PersonEntry,\n PersonWrapperEntry,\n} from \"frontend/contentful/schema/semantics\";\nimport { ContentfulIncludes, EntryRef } from \"../schema/sys\";\nimport { resolveEntry } from \"./resolve-includes\";\nimport { resolveEntries } from \"./resolve-entries\";\nimport { isContentType } from \"./is-content-type\";\n\nconst isPastHbsFaculty = (\n includes: ContentfulIncludes,\n personEntry?: PersonEntry,\n) => {\n const personTypes = resolveEntries({\n includes: includes,\n refs: personEntry?.fields.personType,\n });\n return personTypes.some((type) => type.fields.title === \"Past HBS Faculty\");\n};\n\ninterface ResolveIsPersonPastHbsFacultyArgs {\n entry?: EntryRef;\n includes: ContentfulIncludes;\n}\n\nexport function resolveIsPersonPastHbsFaculty({\n entry,\n includes,\n}: ResolveIsPersonPastHbsFacultyArgs) {\n const resolvedEntry = resolveEntry(includes, entry);\n\n if (isContentType(\"personWrapper\", resolvedEntry)) {\n const personEntry = resolveEntry(includes, resolvedEntry.fields.person);\n return isPastHbsFaculty(includes, personEntry);\n }\n\n return isPastHbsFaculty(includes, resolvedEntry);\n}\n","import { Domain } from \"frontend/lib/get-domain\";\nimport {\n OrganizationEntry,\n PersonEntry,\n PersonWrapperEntry,\n SchoolLeadershipPersonDetailsEntry,\n} from \"frontend/contentful/schema/semantics\";\nimport { ContentfulIncludes, EntryRef } from \"../schema/sys\";\nimport { resolveEntry } from \"./resolve-includes\";\nimport { resolveEntries } from \"./resolve-entries\";\nimport { resolveEntryUrl } from \"./resolve-entry-url\";\nimport { isContentType } from \"frontend/contentful/lib/is-content-type\";\nimport { resolveIsPersonPastHbsFaculty } from \"./resolve-is-person-past-hbs-faculty\";\nimport { SiteEntry } from \"../schema/universal\";\nimport { getSiteId } from \"frontend/lib/get-site-id\";\n\ninterface ResolveEntityLinkArgs {\n entry?: EntryRef<\n | PersonEntry\n | PersonWrapperEntry\n | SchoolLeadershipPersonDetailsEntry\n | OrganizationEntry\n >;\n domain: Domain | undefined;\n site?: SiteEntry;\n includes: ContentfulIncludes;\n}\n\nexport function resolveEntityLink({\n entry,\n domain,\n site,\n includes,\n}: ResolveEntityLinkArgs): string {\n if (!entry) return \"\"; // Short-circuit if no entry\n\n const entity = resolveEntry(includes, entry);\n if (!entity) return \"\"; // Short-circuit if entity cannot be resolved\n\n // Short circuit for OrganizationEntry (no URL)\n if (isContentType(\"organization\", entity)) {\n return \"\";\n }\n\n // Handle PersonEntry case\n if (isContentType(\"person\", entity)) {\n const isHbsFaculty = resolveEntries({\n includes,\n refs: entity.fields.personType,\n }).some((type) => type.fields.title === \"HBS Faculty\");\n\n // Try to resolve bioURL\n const bioUrl = resolveEntry(includes, entity.fields.bioURL)?.fields?.url;\n if (bioUrl) {\n if (domain && !bioUrl.startsWith(\"https://\")) {\n return (\n resolveEntryUrl({\n domain,\n entry: resolveEntry(includes, entity.fields.bioURL),\n includes,\n }) || \"\"\n );\n }\n return bioUrl; // Short-circuit if bioUrl is found\n }\n\n // Handle case for HBS Faculty ID\n if (isHbsFaculty && entity.fields.hbsEnterpriseID) {\n return `https://www.hbs.edu/faculty/Pages/profile.aspx?facId=${entity.fields.hbsEnterpriseID}`;\n }\n }\n\n // Handle SchoolLeadershipPersonDetailsEntry case\n if (\n isContentType(\n \"schoolLeadershipPersonDetails\",\n entity,\n )\n ) {\n const leadershipUrl = resolveEntry(includes, entity.fields.link)?.fields\n ?.url;\n if (leadershipUrl) return leadershipUrl; // Short-circuit if found\n\n // Resolve person entry if needed\n const person = resolveEntry(includes, entity.fields.person);\n return resolveEntityLink({ entry: person, domain, site, includes }); // Recursively call resolveEntityLink for nested person\n }\n\n // Handle PersonWrapperEntry case\n if (isContentType(\"personWrapper\", entity)) {\n const bioUrlEntry =\n resolveEntry(includes, entity.fields.bioURL) ||\n resolveEntry(\n includes,\n resolveEntry(includes, entity.fields.person)?.fields?.bioURL,\n );\n if (bioUrlEntry) {\n return domain\n ? resolveEntryUrl({ domain, entry: bioUrlEntry, includes }) || \"\"\n : bioUrlEntry?.fields?.url || \"\";\n }\n }\n\n // Prevent link generation for past HBS faculty\n const personReference = isContentType(\n \"personWrapper\",\n entity,\n )\n ? entity.fields.person\n : entity;\n if (resolveIsPersonPastHbsFaculty({ entry: personReference, includes })) {\n return \"\"; // Short-circuit if person is past HBS faculty\n }\n\n // Handle Working Knowledge site logic\n if (site && getSiteId(resolveEntry(includes, site)) === \"working-knowledge\") {\n // Safely check if entity is a PersonWrapperEntry or PersonEntry, then resolve personEntry\n const personEntry = isContentType(\n \"personWrapper\",\n entity,\n )\n ? resolveEntry(includes, entity.fields.person)\n : undefined;\n\n const personType = personEntry?.fields?.personType;\n const isFaculty = resolveEntries({ includes, refs: personType }).some(\n (type) => type.fields.title === \"HBS Faculty\",\n );\n\n if (isFaculty) {\n const personWrapperUrl = resolveEntryUrl({\n entry: resolveEntry(includes, entity.fields.bioURL),\n domain: \"library\",\n includes,\n absolute: true,\n });\n if (personWrapperUrl) return personWrapperUrl; // Short-circuit if found\n }\n }\n\n return \"\"; // Default return if no URL was resolved\n}\n","import {\n OrganizationEntry,\n PersonEntry,\n PersonWrapperEntry,\n SchoolLeadershipPersonDetailsEntry,\n} from \"frontend/contentful/schema/semantics\";\nimport { ContentfulIncludes, EntryRef } from \"../schema/sys\";\nimport { resolveEntry } from \"./resolve-includes\";\nimport { isContentType } from \"frontend/contentful/lib/is-content-type\";\n\ninterface ResolvePersonNameArgs {\n entry?: EntryRef<\n | PersonEntry\n | PersonWrapperEntry\n | SchoolLeadershipPersonDetailsEntry\n | OrganizationEntry\n >;\n includes: ContentfulIncludes;\n}\n\nexport function resolveEntityName({\n entry,\n includes,\n}: ResolvePersonNameArgs): string {\n if (!entry) return \"\";\n\n let entity = resolveEntry(includes, entry);\n\n if (!entity) return \"\";\n\n // Handle SchoolLeadershipPersonDetailsEntry\n if (\n isContentType(\n \"schoolLeadershipPersonDetails\",\n entity,\n )\n ) {\n if (entity.fields.personName) return entity.fields.personName;\n entity = resolveEntry(includes, entity.fields.person);\n }\n\n // Handle PersonWrapperEntry\n if (isContentType(\"personWrapper\", entity)) {\n return (\n entity.fields.displayName ||\n resolveEntry(includes, entity.fields.person)?.fields.displayName ||\n \"\"\n );\n }\n\n // Handle OrganizationEntry\n if (isContentType(\"organization\", entity)) {\n return entity.fields.title || \"\";\n }\n\n // Handle generic PersonEntry\n if (entity?.fields.displayName) return entity.fields.displayName;\n\n // Construct full name for PersonEntry\n const fields = isContentType(\"personWrapper\", entity)\n ? resolveEntry(includes, entity.fields.person)?.fields\n : entity?.fields;\n\n return (\n [\n fields?.firstName,\n fields?.middleName,\n fields?.lastName,\n fields?.nameSuffix,\n ]\n .filter(Boolean)\n .join(\" \") || \"\"\n );\n}\n","import { AssetRef, ContentfulAsset, ContentfulIncludes } from \"../schema/sys\";\nimport { resolveAsset } from \"./resolve-includes\";\n\ninterface ResolveAssetsArgs {\n refs?: Array;\n includes: ContentfulIncludes;\n}\n\nexport function resolveAssets({ refs, includes }: ResolveAssetsArgs) {\n if (!Array.isArray(refs)) return [];\n\n const assets: Array = [];\n\n refs.forEach((ref) => {\n const asset = resolveAsset(includes, ref);\n if (asset) assets.push(asset);\n });\n\n return assets;\n}\n","import {\n Dispatch,\n ReactNode,\n SetStateAction,\n createContext,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from \"react\";\nimport dynamic from \"next/dynamic\";\nimport type * as ContentfulLiveImport from \"@contentful/live-preview/react\";\nimport { usePageProps } from \"./use-page-props\";\nimport {\n AssetRef,\n ContentfulAsset,\n ContentfulEntry,\n EntryRef,\n} from \"frontend/contentful/schema/sys\";\nimport {\n resolveAsset,\n resolveEntry,\n} from \"frontend/contentful/lib/resolve-includes\";\nimport { editAttributesFactory } from \"frontend/contentful/lib/edit-attributes-factory\";\nimport {\n ResolveEntriesOptions,\n resolveEntryUrl,\n} from \"frontend/contentful/lib/resolve-entry-url\";\nimport { AppUrlEntry } from \"frontend/contentful/schema/app\";\nimport {\n OrganizationEntry,\n PersonEntry,\n PersonWrapperEntry,\n SchoolLeadershipPersonDetailsEntry,\n} from \"frontend/contentful/schema/semantics\";\nimport { resolveEntityLink } from \"frontend/contentful/lib/resolve-entity-link\";\nimport { resolveEntityName } from \"frontend/contentful/lib/resolve-entity-name\";\nimport { resolveEntries } from \"frontend/contentful/lib/resolve-entries\";\nimport { resolveAssets } from \"frontend/contentful/lib/resolve-assets\";\nimport { resolveIsPersonPastHbsFaculty } from \"frontend/contentful/lib/resolve-is-person-past-hbs-faculty\";\n\nconst ContentfulToolbox = dynamic(\n () =>\n import(\n \"frontend/contentful/components/utils/contentful-toolbox/contentful-toolbox\"\n ).then((e) => ({\n default: e.ContentfulToolbox,\n })), // do not ssr - will break due to portal rendering\n { ssr: false },\n);\n\ninterface ContentfulLivePreviewProps {\n isPreview?: boolean;\n children: ReactNode;\n}\n\ninterface ContentfulEditorState {\n isPageLoaded: boolean;\n isEditorMode: boolean;\n setIsEditorMode: Dispatch>;\n useContentfulLiveUpdates: typeof ContentfulLiveImport.useContentfulLiveUpdates;\n useContentfulInspectorMode: typeof ContentfulLiveImport.useContentfulInspectorMode;\n ContentfulLivePreviewProvider?: typeof ContentfulLiveImport.ContentfulLivePreviewProvider;\n}\n\nconst createInitialState = (): ContentfulEditorState => ({\n isPageLoaded: false,\n isEditorMode: false,\n setIsEditorMode: (s) => s,\n useContentfulLiveUpdates: (e: ContentfulEntry) => e,\n useContentfulInspectorMode: () => () => null,\n});\n\ntype ContentfulEditorContextState = [\n ContentfulEditorState,\n Dispatch>,\n];\n\nconst ContentfulEditorContext = createContext([\n createInitialState(),\n (s) => s,\n]);\n\nexport function ContentfulLivePreview({\n isPreview,\n children,\n}: ContentfulLivePreviewProps) {\n const [state, setState] =\n useState(createInitialState());\n\n useEffect(() => {\n // Contentful site preview is inside an iframe\n const isEditorMode = isPreview ? window.self !== window.top : false;\n setState((state) => ({ ...state, isPageLoaded: true, isEditorMode }));\n }, [isPreview]);\n\n useEffect(() => {\n // lazy import the hooks\n if (state.isEditorMode && !state.ContentfulLivePreviewProvider) {\n void (async () => {\n try {\n // we want to only import the live-preview library when we are in editor mode\n const lib = await import(\"@contentful/live-preview/react\");\n\n setState((state) => ({\n ...state,\n ContentfulLivePreviewProvider: lib.ContentfulLivePreviewProvider,\n useContentfulInspectorMode: lib.useContentfulInspectorMode,\n useContentfulLiveUpdates: lib.useContentfulLiveUpdates,\n }));\n } catch (e) {\n console.error(e);\n }\n })();\n }\n }, [state]);\n\n return (\n \n {state.ContentfulLivePreviewProvider ? (\n \n {children}\n \n ) : (\n children\n )}\n\n {isPreview && }\n \n );\n}\n\ntype GetEntryUrl = (\n entry?: EntryRef,\n options?: ResolveEntriesOptions,\n) => string | undefined;\n\nexport function useContentful() {\n const [state] = useContext(ContentfulEditorContext);\n\n const {\n contentful,\n includes,\n request,\n site,\n locale: entryLocale,\n defaultLocale,\n supportedLocales,\n } = usePageProps();\n\n const createEditAttributes = editAttributesFactory(state.isEditorMode);\n\n const createContentfulHref = (path?: string) => {\n return `https://app.contentful.com/spaces/${contentful.spaceId}/environments/${contentful.environment}${path}`;\n };\n\n const getEntry = useCallback(\n (ref?: EntryRef) => {\n return resolveEntry(includes, ref);\n },\n [includes],\n );\n\n const getSite = () => getEntry(site);\n\n const getEntries = useCallback(\n (refs?: Array>): Array => {\n return resolveEntries({ refs, includes });\n },\n [includes],\n );\n\n const getAsset = (ref?: AssetRef) => {\n return resolveAsset(includes, ref);\n };\n\n const getAssets = (refs?: Array): Array => {\n return resolveAssets({ refs, includes });\n };\n\n const getEntryUrl: GetEntryUrl = (\n entry,\n { excludeProtocol, absolute, locale } = { locale: entryLocale },\n ) => {\n return resolveEntryUrl({\n domain: request.domain,\n entry: getEntry(entry),\n includes,\n excludeProtocol,\n absolute,\n locale,\n defaultLocale,\n supportedLocales,\n });\n };\n\n const getPersonLink = (\n entry?: EntryRef<\n | PersonEntry\n | PersonWrapperEntry\n | SchoolLeadershipPersonDetailsEntry\n | OrganizationEntry\n >,\n ): string => {\n return resolveEntityLink({\n entry,\n includes,\n domain: request.domain,\n site: getSite(),\n });\n };\n\n const getEntityName = (\n entry?: EntryRef<\n | PersonEntry\n | PersonWrapperEntry\n | SchoolLeadershipPersonDetailsEntry\n | OrganizationEntry\n >,\n ): string => {\n return resolveEntityName({ entry, includes });\n };\n\n const getIsPersonPastHbsFaculty = (\n entry?: EntryRef,\n ): boolean => {\n return resolveIsPersonPastHbsFaculty({ entry, includes });\n };\n\n return {\n ...contentful,\n site: getSite(),\n getEntry,\n getAsset,\n getAssets,\n getEntries,\n getEntryUrl,\n getPersonLink,\n getEntityName,\n getIsPersonPastHbsFaculty,\n createEditAttributes,\n createContentfulHref,\n isPageLoaded: state.isPageLoaded,\n isEditorMode: state.isEditorMode,\n useContentfulLiveUpdates: state.useContentfulLiveUpdates,\n useContentfulInspectorMode: state.useContentfulInspectorMode,\n };\n}\n","// TODO: Remove use of `any` type.\n/**\n@copyright (c) 2017-present James Kyle \n MIT License\n Permission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n The above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE\n*/\n// https://github.com/jamiebuilds/react-loadable/blob/v5.5.0/src/index.js\n// Modified to be compatible with webpack 4 / Next.js\n\nimport React from 'react'\nimport { LoadableContext } from './loadable-context.shared-runtime'\n\nfunction resolve(obj: any) {\n return obj && obj.default ? obj.default : obj\n}\n\nconst ALL_INITIALIZERS: any[] = []\nconst READY_INITIALIZERS: any[] = []\nlet initialized = false\n\nfunction load(loader: any) {\n let promise = loader()\n\n let state: any = {\n loading: true,\n loaded: null,\n error: null,\n }\n\n state.promise = promise\n .then((loaded: any) => {\n state.loading = false\n state.loaded = loaded\n return loaded\n })\n .catch((err: any) => {\n state.loading = false\n state.error = err\n throw err\n })\n\n return state\n}\n\nfunction createLoadableComponent(loadFn: any, options: any) {\n let opts = Object.assign(\n {\n loader: null,\n loading: null,\n delay: 200,\n timeout: null,\n webpack: null,\n modules: null,\n },\n options\n )\n\n /** @type LoadableSubscription */\n let subscription: any = null\n function init() {\n if (!subscription) {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n const sub = new LoadableSubscription(loadFn, opts)\n subscription = {\n getCurrentValue: sub.getCurrentValue.bind(sub),\n subscribe: sub.subscribe.bind(sub),\n retry: sub.retry.bind(sub),\n promise: sub.promise.bind(sub),\n }\n }\n return subscription.promise()\n }\n\n // Server only\n if (typeof window === 'undefined') {\n ALL_INITIALIZERS.push(init)\n }\n\n // Client only\n if (!initialized && typeof window !== 'undefined') {\n // require.resolveWeak check is needed for environments that don't have it available like Jest\n const moduleIds =\n opts.webpack && typeof (require as any).resolveWeak === 'function'\n ? opts.webpack()\n : opts.modules\n if (moduleIds) {\n READY_INITIALIZERS.push((ids: any) => {\n for (const moduleId of moduleIds) {\n if (ids.includes(moduleId)) {\n return init()\n }\n }\n })\n }\n }\n\n function useLoadableModule() {\n init()\n\n const context = React.useContext(LoadableContext)\n if (context && Array.isArray(opts.modules)) {\n opts.modules.forEach((moduleName: any) => {\n context(moduleName)\n })\n }\n }\n\n function LoadableComponent(props: any, ref: any) {\n useLoadableModule()\n\n const state = (React as any).useSyncExternalStore(\n subscription.subscribe,\n subscription.getCurrentValue,\n subscription.getCurrentValue\n )\n\n React.useImperativeHandle(\n ref,\n () => ({\n retry: subscription.retry,\n }),\n []\n )\n\n return React.useMemo(() => {\n if (state.loading || state.error) {\n return React.createElement(opts.loading, {\n isLoading: state.loading,\n pastDelay: state.pastDelay,\n timedOut: state.timedOut,\n error: state.error,\n retry: subscription.retry,\n })\n } else if (state.loaded) {\n return React.createElement(resolve(state.loaded), props)\n } else {\n return null\n }\n }, [props, state])\n }\n\n LoadableComponent.preload = () => init()\n LoadableComponent.displayName = 'LoadableComponent'\n\n return React.forwardRef(LoadableComponent)\n}\n\nclass LoadableSubscription {\n _loadFn: any\n _opts: any\n _callbacks: any\n _delay: any\n _timeout: any\n _res: any\n _state: any\n constructor(loadFn: any, opts: any) {\n this._loadFn = loadFn\n this._opts = opts\n this._callbacks = new Set()\n this._delay = null\n this._timeout = null\n\n this.retry()\n }\n\n promise() {\n return this._res.promise\n }\n\n retry() {\n this._clearTimeouts()\n this._res = this._loadFn(this._opts.loader)\n\n this._state = {\n pastDelay: false,\n timedOut: false,\n }\n\n const { _res: res, _opts: opts } = this\n\n if (res.loading) {\n if (typeof opts.delay === 'number') {\n if (opts.delay === 0) {\n this._state.pastDelay = true\n } else {\n this._delay = setTimeout(() => {\n this._update({\n pastDelay: true,\n })\n }, opts.delay)\n }\n }\n\n if (typeof opts.timeout === 'number') {\n this._timeout = setTimeout(() => {\n this._update({ timedOut: true })\n }, opts.timeout)\n }\n }\n\n this._res.promise\n .then(() => {\n this._update({})\n this._clearTimeouts()\n })\n .catch((_err: any) => {\n this._update({})\n this._clearTimeouts()\n })\n this._update({})\n }\n\n _update(partial: any) {\n this._state = {\n ...this._state,\n error: this._res.error,\n loaded: this._res.loaded,\n loading: this._res.loading,\n ...partial,\n }\n this._callbacks.forEach((callback: any) => callback())\n }\n\n _clearTimeouts() {\n clearTimeout(this._delay)\n clearTimeout(this._timeout)\n }\n\n getCurrentValue() {\n return this._state\n }\n\n subscribe(callback: any) {\n this._callbacks.add(callback)\n return () => {\n this._callbacks.delete(callback)\n }\n }\n}\n\nfunction Loadable(opts: any) {\n return createLoadableComponent(load, opts)\n}\n\nfunction flushInitializers(initializers: any, ids?: any): any {\n let promises = []\n\n while (initializers.length) {\n let init = initializers.pop()\n promises.push(init(ids))\n }\n\n return Promise.all(promises).then(() => {\n if (initializers.length) {\n return flushInitializers(initializers, ids)\n }\n })\n}\n\nLoadable.preloadAll = () => {\n return new Promise((resolveInitializers, reject) => {\n flushInitializers(ALL_INITIALIZERS).then(resolveInitializers, reject)\n })\n}\n\nLoadable.preloadReady = (ids: (string | number)[] = []): Promise => {\n return new Promise((resolvePreload) => {\n const res = () => {\n initialized = true\n return resolvePreload()\n }\n // We always will resolve, errors should be handled within loading UIs.\n flushInitializers(READY_INITIALIZERS, ids).then(res, res)\n })\n}\n\ndeclare global {\n interface Window {\n __NEXT_PRELOADREADY?: (ids?: (string | number)[]) => Promise\n }\n}\n\nif (typeof window !== 'undefined') {\n window.__NEXT_PRELOADREADY = Loadable.preloadReady\n}\n\nexport default Loadable\n","// extracted by mini-css-extract-plugin","import {\n TypedUseSelectorHook,\n useDispatch,\n useSelector,\n useStore,\n} from \"react-redux\";\nimport { configureStore } from \"@reduxjs/toolkit\";\nimport { locationSlice } from \"./slice-location\";\nimport { frameworkSlice } from \"./slice-framework\";\n\nexport type Store = ReturnType;\n\nexport function createStore() {\n return configureStore({\n reducer: {\n location: locationSlice.reducer,\n framework: frameworkSlice.reducer,\n },\n middleware: (getDefaultMiddleware) => {\n return getDefaultMiddleware({\n serializableCheck: {\n ignoredActions: [\"framework/initializeFramework\"],\n ignoredPaths: [\"payload.Head\", \"framework.Head\"],\n },\n });\n },\n });\n}\n\nexport const useStoreDispatch: () => Store[\"dispatch\"] = useDispatch;\nexport const useStoreSelector: TypedUseSelectorHook<\n ReturnType\n> = useSelector;\nexport const useStoreComplete: () => Store = useStore;\n"],"names":["getSiteId","site","fields","slug","domain","LazyComponentsContext","createContext","LazyComponentsProvider","components","children","Provider","value","useLazyComponents","lazyComponents","useContext","getLazyComponentByName","name","isContentType","id","sys","contentType","frontendComponents","ArticleTopper","dynamic","then","default","e","CardTopper","CourseTopper","DashboardTopper","EditorialTopper","EventTopper","MissionTopper","MediaTopper","ParticipantStoryTopper","ProgramTopper","ProfileTopper","SearchTopper","SimplePageTopper","SimpleProgramTopper","SplitTopper","StatisticsTopper","LargeAssetTopper","FeaturedTermTopper","SelectTopper","ArticleTease","BookTease","CourseCardTeaseRow","EventFeedTease","ParticipantStoryTease","PersonSearchResultTease","PersonTease","PodcastTease","QuoteTease","ProgramTease","SocialMediaTease","VideoTease","SiteHeader","LoadableContext","React","resolveEntry","includes","ref","isEntryRef","linkType","Entry","find","entry","resolveAsset","isAssetRef","Asset","asset","isLinkObj","ErrorBoundary","Component","getDerivedStateFromError","hasError","componentDidCatch","error","errorInfo","console","JSON","stringify","render","state","props","fallback","constructor","locationSlice","createSlice","initialState","path","query","reducers","initializeLocation","action","payload","StoreProvider","storeRef","useRef","current","createStore","location","dispatch","actions","framework","frameworkSlice","initializeFramework","store","Head","Fragment","translations","dates","status","format","blended","inPerson","virtual","role","industry","program","fee","applicationDue","overview","selectSession","learningTrack","startDateToBeConfirmed","toBeConfirmed","lastRan","applyNow","downloadBrochure","backToText","programFormat","TranslationsContext","t","key","strings","DEFAULT_TRANSLATIONS","TranslationsProvider","locale","activeLocale","warn","useTranslations","noSSR","convertModule","mod","LoadableInitializer","loadableOptions","webpack","modules","dynamicOptions","options","loadableFn","Loadable","loading","isLoading","pastDelay","Promise","loader","loaderFn","loadableGenerated","ssr","resolve","CONTENTFUL_ASSET_DOMAIN","CONTENTFUL_IMAGE_DOMAIN","resolveAssetUrl","resolved","url","file","assetUrl","replace","startsWith","cleanAssetUrl","PagePropsContext","map","errors","fetches","singletons","contentful","request","method","cookies","headers","host","env","search","defaultLocale","supportedLocales","hasTranslations","PagePropsProvider","ctx","sort","a","b","order","title","localeCompare","usePageProps","contentfulComponents","ContentfulSite","landingPage","ContentfulLandingPage","detailPage","ContentfulDetailPage","archivePage","ContentfulArchivePage","exedProgramFinderArchivePage","ContentfulExEdProgramFinderArchivePage","articlePage","ContentfulArticlePage","coursePage","ContentfulCoursePage","programPage","ContentfulProgramPage","profilePage","ContentfulProfilePage","participantStory","ContentfulParticipantStory","knowledgeBaseArticlePage","ContentfulKnowledgeBaseArticlePage","databasePage","ContentfulDatabasePage","datasetPage","ContentfulDatasetPage","podcastEpisodePage","ContentfulPodcastEpisodePage","clubPage","ContentfulClubPage","knowledgeDetail","ContentfulKnowledgeGraphPage","artwork","ContentfulArtworkPage","podcastEpisode","ContentfulPodcastEpisode","missionTopper","ContentfulMissionTopper","splitPageTopper","ContentfulSplitPageTopper","splitPageTopperPodcast","ContentfulSplitPageTopperPodcast","splitSearchTopper","ContentfulSplitSearchTopper","simplePageTopper","ContentfulSimplePageTopper","statisticsTopper","ContentfulStatisticsTopper","cardTopper","ContentfulCardTopper","mediaTopper","ContentfulMediaTopper","simpleArticleTopper","ContentfulSimpleArticleTopper","bigArtTopper","ContentfulBigArtTopper","splitArticleTopper","ContentfulSplitArticleTopper","editorialTopper","ContentfulEditorialTopper","profileTopper","ContentfulProfileTopper","wkProfileTopper","ContentfulWKProfileTopper","largeAssetTopper","ContentfulLargeAssetTopper","featuredTermTopper","ContentfulFeaturedTermTopper","wkFeaturedTermTopper","ContentfulWKFeaturedTermTopper","selectTopper","ContentfulSelectTopper","accordion","ContentfulAccordion","alphanumericLinkList","ContentfulAlphanumericLinkList","ctaBanner","ContentfulCtaBanner","donationCta","ContentfulDonationCta","heroStatement","ContentfulHeroStatement","hierarchicalTease","ContentfulHierarchicalTease","keywordScrollList","ContentfulKeywordScrollList","pageSectionHeader","ContentfulPageSectionHeader","supportingDetails","ContentfulSupportingDetails","smallGridList","ContentfulSmallGridList","bigGridList","ContentfulBigGridList","multiFeedTeaseRow","ContentfulMultiFeedTeaseRow","tabs","ContentfulTabs","teaseRowArticles","ContentfulTeaseRowArticles","teaseRowBooks","ContentfulTeaseRowBooks","teaseRowQuotes","ContentfulTeaseRowQuotes","teaseRowContents","ContentfulTeaseRowContents","teaseRowPodcasts","ContentfulTeaseRowPodcasts","richText","ContentfulRichText","richTextTruncator","ContentfulRichTextTruncator","mediaAssetRow","ContentfulMediaAssetRow","sectionIntroText","ContentfulSectionIntroText","timelineTease","ContentfulTimelineTease","heroTease","ContentfulHeroTease","statisticsCta","ContentfulStatisticsCta","statisticsGroup","ContentfulStatisticsGroup","table","m","ContentfulTable","teaseRowPeople","ContentfulTeaseRowPeople","teaseRowProgramCards","ContentfulTeaseRowProgramCards","teaseFeedArticles","ContentfulTeaseFeedArticles","teaseFeedBooks","ContentfulTeaseFeedBooks","multipleColumnList","ContentfulMultipleColumnList","podcastPlayer","ContentfulPodcastPlayer","pullQuote","ContentfulPullQuote","multiColumnRichText","ContentfulMultiColumnRichText","statisticsRow","ContentfulStatisticsRow","teaseRowParticipantStories","ContentfulTeaseRowParticipantStories","truncator","ContentfulTruncator","programFinder","ContentfulProgramFinder","quoteTestimonial","QuoteContentfulTestimonial","videoTestimonial","ContentfulVideoTestimonial","textCallout","ContentfulTextCallout","sideBySideSectionIntro","ContentfulSideBySideSectionIntro","sideBySideList","ContentfulSideBySideList","dataVisualizationEmbed","ContentfulDataVisualizationEmbed","dataWrapperEmbed","ContentfulDataWrapperEmbed","peopleListing","ContentfulPeopleListing","mediaCarousel","ContentfulMediaCarousel","hoursTable","ContentfulHoursTable","hoursCalendar","ContentfulHoursCalendar","machformEmbed","ContentfulMachFormEmbed","springshareFormEmbed","ContentfulSpringShareFormEmbed","activeCampaignEmbed","ContentfulActiveCampaignEmbed","formAssemblyEmbed","ContentfulFormAssemblyEmbed","flourishEmbed","ContentfulFlourishEmbed","teaseFeedEvents","ContentfulTeaseFeedEvents","multipleColumnLinkList","MultipleColumnLinkListContentful","eventsTease","ContentfulEventsTease","courseFeaturesVideoModule","ContentfulCourseFeaturesVideoModule","eventSchedule","ContentfulEventSchedule","socialMediaTease","ContentfulSocialMediaTease","ContentfulQuery","archiveTemplates","RenderContentfulEntry","getEntry","useContentful","template","componentType","undefined","Suspense","resolveEntryUrl","absolute","excludeProtocol","isPreview","isExternalUrl","resolveDomainUrl","normalizedUrl","parsedUrl","URL","pathSegments","pathname","split","filter","segment","unshift","join","localizedUrl","toString","forEach","supportedLocale","substring","updatedUrl","resolveEntries","refs","Array","isArray","entries","push","isPastHbsFaculty","personEntry","personType","some","type","resolveIsPersonPastHbsFaculty","resolvedEntry","person","ContentfulToolbox","createInitialState","isPageLoaded","isEditorMode","setIsEditorMode","s","useContentfulLiveUpdates","useContentfulInspectorMode","ContentfulEditorContext","ContentfulLivePreview","setState","useState","useEffect","window","self","top","ContentfulLivePreviewProvider","lib","debugMode","enableInspectorMode","enableLiveUpdates","targetOrigin","entryLocale","createEditAttributes","editAttributesFactory","fieldId","entryId","useCallback","getSite","getEntries","getAsset","getAssets","resolveAssets","assets","getEntryUrl","getPersonLink","resolveEntityLink","bioUrlEntry","entity","isHbsFaculty","bioUrl","bioURL","hbsEnterpriseID","leadershipUrl","link","isFaculty","personWrapperUrl","getEntityName","resolveEntityName","personName","displayName","firstName","middleName","lastName","nameSuffix","Boolean","getIsPersonPastHbsFaculty","createContentfulHref","spaceId","environment","ALL_INITIALIZERS","READY_INITIALIZERS","initialized","load","promise","loaded","catch","err","LoadableSubscription","_res","retry","_clearTimeouts","_loadFn","_opts","_state","timedOut","res","opts","delay","_delay","setTimeout","_update","timeout","_timeout","partial","_callbacks","callback","clearTimeout","getCurrentValue","subscribe","add","delete","loadFn","Set","createLoadableComponent","Object","assign","subscription","init","sub","bind","moduleIds","ids","moduleId","LoadableComponent","useLoadableModule","context","moduleName","useSyncExternalStore","useImperativeHandle","useMemo","createElement","obj","preload","forwardRef","flushInitializers","initializers","promises","length","pop","all","preloadAll","resolveInitializers","reject","preloadReady","resolvePreload","__NEXT_PRELOADREADY","configureStore","reducer","middleware","getDefaultMiddleware","serializableCheck","ignoredActions","ignoredPaths","useStoreSelector","useSelector"],"sourceRoot":"","ignoreList":[13]}