@carbon/ibmdotcom-web-components 2.30.0 → 2.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dotcom-shell.js +2 -2
- package/dist/dotcom-shell.min.js +1 -1
- package/dist/ibmdotcom-web-components-dotcom-shell.js +2 -2
- package/dist/ibmdotcom-web-components-dotcom-shell.min.js +1 -1
- package/dist/{index-dbec7dea.js → index-26a88a3d.js} +1972 -1417
- package/dist/{index-70141123.js → index-4100d655.js} +203 -165
- package/dist/{left-nav-menu-4547bc31.js → left-nav-menu-73cc4d31.js} +2 -2
- package/dist/{left-nav-menu-e123e07b.js → left-nav-menu-bc31afe6.js} +1 -1
- package/dist/{left-nav-menu-category-heading-ea7b8fd0.js → left-nav-menu-category-heading-ae671aac.js} +1 -1
- package/dist/{left-nav-menu-category-heading-40a84206.js → left-nav-menu-category-heading-be3c5305.js} +2 -2
- package/dist/{left-nav-menu-item-b13fa9bd.js → left-nav-menu-item-527bd558.js} +1 -1
- package/dist/{left-nav-menu-item-f0de1048.js → left-nav-menu-item-77d3bbd4.js} +2 -2
- package/dist/{left-nav-menu-section-46049aa9.js → left-nav-menu-section-9167278e.js} +2 -2
- package/dist/{left-nav-menu-section-12c63c9c.js → left-nav-menu-section-c78646ab.js} +1 -1
- package/dist/{left-nav-overlay-d67d0a6a.js → left-nav-overlay-a08a649c.js} +2 -2
- package/dist/{left-nav-overlay-f71e3d74.js → left-nav-overlay-f04dc847.js} +1 -1
- package/dist/{megamenu-category-group-c85b1d1c.js → megamenu-category-group-24b09a4c.js} +1 -1
- package/dist/{megamenu-category-group-copy-74dadbb3.js → megamenu-category-group-copy-2b174334.js} +1 -1
- package/dist/{megamenu-category-group-copy-fd64eb79.js → megamenu-category-group-copy-e82bc5f8.js} +2 -2
- package/dist/{megamenu-category-group-2098af3d.js → megamenu-category-group-e89e1b08.js} +2 -2
- package/dist/{megamenu-category-heading-24704ad6.js → megamenu-category-heading-1a4b7528.js} +2 -2
- package/dist/{megamenu-category-heading-88fb4721.js → megamenu-category-heading-79034e24.js} +1 -1
- package/dist/{megamenu-category-link-af006474.js → megamenu-category-link-1052455e.js} +2 -2
- package/dist/{megamenu-category-link-ae6d2273.js → megamenu-category-link-5675f4ea.js} +1 -1
- package/dist/{megamenu-category-link-group-8c6969cd.js → megamenu-category-link-group-36c5488f.js} +1 -1
- package/dist/{megamenu-category-link-group-06a95043.js → megamenu-category-link-group-5634039f.js} +2 -2
- package/dist/{megamenu-left-navigation-382f79e5.js → megamenu-left-navigation-1aec089b.js} +1 -1
- package/dist/{megamenu-left-navigation-7796fe5e.js → megamenu-left-navigation-3141795e.js} +2 -2
- package/dist/{megamenu-overlay-327917c7.js → megamenu-overlay-175353cb.js} +1 -1
- package/dist/{megamenu-overlay-d33c2656.js → megamenu-overlay-1ddf254a.js} +2 -2
- package/dist/{megamenu-tab-819a92be.js → megamenu-tab-9e226ee0.js} +1 -1
- package/dist/{megamenu-tab-d7354c99.js → megamenu-tab-a16b83c8.js} +2 -2
- package/es/components/content-block-simple/content-block-simple.css.js +1 -1
- package/es/components/masthead/masthead-composite.d.ts +2 -1
- package/es/components/masthead/masthead-composite.js +14 -9
- package/es/components/masthead/masthead-composite.js.map +1 -1
- package/es/components/masthead/masthead.css.js +1 -1
- package/es/components/masthead/megamenu-language-selector.css.js +12 -0
- package/es/components/masthead/megamenu-language-selector.d.ts +374 -0
- package/es/components/masthead/megamenu-language-selector.js +551 -0
- package/es/components/masthead/megamenu-language-selector.js.map +1 -0
- package/es/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
- package/lib/component-mixins/callout/defs.js +16 -16
- package/lib/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
- package/package.json +5 -5
- package/scss/components/content-block-simple/content-block-simple.scss +38 -1
- package/scss/components/masthead/masthead.scss +2 -3
- package/scss/components/masthead/megamenu-language-selector.scss +170 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masthead-composite.js","names":["LitElement","html","state","property","query","ifDefined","ArrowRight16","ArrowLeft16","Wikis","ifNonEmpty","unsafeSVG","root","HostListener","HostListenerMixin","settings","globalInit","MastheadLogoAPI","UNAUTHENTICATED_STATUS","CLOUD_UNAUTHENTICATED_STATUS","MASTHEAD_AUTH_METHOD","MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME","C4D_CUSTOM_PROFILE_LOGIN","C4DMastheadLogo","C4DMegaMenuTabs","C4DMegamenuTopNavMenu","C4DMastheadL1","styles","MEGAMENU_LAYOUT_SCHEME","layoutBreakpoint","carbonElement","customElement","C4DMastheadMenuButton","stablePrefix","c4dPrefix","prefix","C4DMastheadComposite","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_renderL1","l1Data","selectedMenuItemL1","cta","actions","undefined","_t","_","renderL1Cta","_renderLogo","logoData","_t2","activateSearch","useAlternateLogo","setMastheadLogo","tooltip","svg","href","_t3","hrefDefault","_renderMegaMenu","menu","_parentKey","layout","LIST","_megamenuRenderMap","has","get","_renderMegaMenuListing","isRTL","document","dir","toLowerCase","_renderMegaMenuTabbed","_activeMenuItem$headi","viewAll","sections","sortedMenuItems","forEach","section","i","push","_objectSpread","itemKey","activeMenuItem","_activeMegamenuTabKey","find","item","_t4","TAB","heading","title","map","_item$heading","_t5","url","_t6","ArrowIcon","slot","part","_renderMegamenuTabPanel","menuItem","groups","itemViewAll","_t7","HAS_SIDEBAR","_t8","description","group","_renderMegapanelLinkGroup","autoid","_t9","megapanel","highlights","_t10","_t11","headingLevel","FULL","_t12","length","_t13","_t14","options","links","_t15","_t16","link","linkAutoId","_t17","_t18","_renderLeftNavMenuSections","menuItems","isSubmenu","showBackButton","sectionTitle","sectionUrl","sectionId","items","elem","_elem$isHeading","_elem$isViewAll","_t19","lastHighlightedItem","panelId","selected","_t20","isHeading","isViewAll","unshift","_t21","_t22","_t23","_selectedLeftNavItems","currentUrlPath","matchFound","selectedItems","level0","level1","level2","megapanelContent","quickLinks","parentItemUrl","_menu$i","_menu$i2","k","_links$k","_hasAutoSelectedItems","_renderLeftNav","platform","getL0Data","level0Items","level1Items","submenu","Array","j","highlightedItems","highlight","lastHighlighted","level2Items","linkGroup","groupHeading","l","isNotFaceted","megapanelHeading","titleEnglish","Boolean","_t24","_t25","_getPlatformUrl","_renderMenuButton","menuButtonAssistiveTextActive","menuButtonAssistiveTextInactive","_t26","_isActiveMenuItem","flattenedLinks","flattenLinkGroup","_renderTopNav","selectedMenuItem","menuBarAssistiveText","_t27","_renderNavItem","_activeMegamenuIndex","_titleEnglish$trim","_selectedMenuItem$tri","trim","_t28","linkTitle","linkUrl","_t29","_t30","_t31","decorators","eventMegaMenuToggled","event","detail","active","resolveFn","index","menuIndex","_this$contactModuleAp","contactModuleApp","minimize","_setCustomPropertyL0BottomEdge","dropDownToggleEvent","_handleL1DropdownToggle","isOpen","_this$contactModuleAp2","eventBeforeSelect","_loadMegamenuTabPanel","id","split","window","CM_APP","eventToggle","_event$detail","_this$mastheadRef","mastheadL0","mastheadRef","shadowRoot","querySelector","style","setProperty","customPropertyL0BottomEdge","getBoundingClientRect","bottom","language","platformUrl","formattedLang","replace","m","toUpperCase","Object","prototype","hasOwnProperty","call","_renderPlatformTitle","_t32","_renderSearch","currentSearchResults","customTypeaheadAPI","hasSearch","initialSearchTerm","inputTimeout","openSearchDropdown","scopeParameters","searchPlaceholder","_t33","_renderContact","contactUsButton","hasContact","_t34","_renderLanguageSelector","hasLanguageSelector","_t35","_renderCart","hasCart","cartLabel","_t36","_getProfileItems","customProfileLogin","userIsAuthenticated","authenticatedProfileItems","unauthenticatedProfileItems","profileItems","_renderProfileMenu","_this$_getProfileItem","hasProfile","_t37","_t38","matches","Map","bind","type","String","reflect","attribute","_root$location","location","Number","l0Data","navLinks","console","warn","DEFAULT","authMethod","userStatus","ResizeObserver","_resizeObserverCallback","clearTimeout","_resizeObserverThrottle","setTimeout","_setContainerHeight","display","height","firstUpdated","_this$_loadTranslatio","dataEndpoint","_this$_setLanguage","_setLanguage","_loadTranslation","catch","_this$_loadUserStatus","_loadUserStatus","zIndex","position","addEventListener","_isMobileVersion","requestUpdate","_heightResizeObserver","observe","mastheadHasLanguageSelector","updated","changedProperties","_this$_setLanguage2","_this$_loadTranslatio2","disconnectedCallback","_superPropGet","disconnect","render","isMobileVersion","mastheadAssistiveText","skipToContentText","skipToContentHref","_t39","createRenderRoot","static"],"sources":["components/masthead/masthead-composite.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html, TemplateResult } from 'lit';\nimport { state, property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ArrowRight16 from '@carbon/web-components/es/icons/arrow--right/16.js';\nimport ArrowLeft16 from '@carbon/web-components/es/icons/arrow--left/16.js';\nimport Wikis from '@carbon/web-components/es/icons/wikis/20.js';\nimport ifNonEmpty from '@carbon/web-components/es/globals/directives/if-non-empty.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport root from 'window-or-global';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { globalInit } from '@carbon/ibmdotcom-services/es/services/global/global.js';\nimport MastheadLogoAPI from '@carbon/ibmdotcom-services/es/services/MastheadLogo/MastheadLogo.js';\nimport {\n BasicLink,\n MastheadL1,\n MastheadLogoData,\n MastheadProfileItem,\n Translation,\n L0MenuItem,\n L0Megamenu,\n Megapanel,\n MegapanelLinkGroup,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/translateAPI';\nimport {\n UNAUTHENTICATED_STATUS,\n CLOUD_UNAUTHENTICATED_STATUS,\n MASTHEAD_AUTH_METHOD,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/profileAPI.js';\nimport { MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME } from './megamenu-right-navigation';\nimport { C4D_CUSTOM_PROFILE_LOGIN } from '../../globals/internal/feature-flags';\nimport C4DMastheadLogo from './masthead-logo';\nimport C4DMegaMenuTabs from './megamenu-tabs';\nimport C4DMegamenuTopNavMenu from './megamenu-top-nav-menu';\nimport C4DMastheadL1 from './masthead-l1';\nimport './masthead';\nimport './masthead-l1';\nimport './masthead-l1-cta';\nimport './masthead-l1-name';\nimport './masthead-menu-button';\nimport './masthead-contact';\nimport './masthead-global-bar';\nimport './masthead-profile';\nimport './masthead-profile-item';\nimport './masthead-cart';\nimport './megamenu';\nimport './megamenu-heading';\nimport './megamenu-top-nav-menu';\nimport './skip-to-content';\nimport './top-nav';\nimport './top-nav-l1';\nimport './top-nav-name';\nimport './top-nav-item';\nimport './top-nav-menu';\nimport './top-nav-menu-item';\nimport './left-nav';\nimport '../search-with-typeahead/search-with-typeahead';\nimport '../search-with-typeahead/search-with-typeahead-item';\nimport styles from './masthead.scss';\nimport { MEGAMENU_LAYOUT_SCHEME } from './defs';\nimport layoutBreakpoint from './masthead-breakpoint';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport C4DMastheadMenuButton from './masthead-menu-button';\n\nconst { stablePrefix: c4dPrefix, prefix } = settings;\n\n/**\n * Globally-scoped Contact Module variable.\n *\n * @see https://github.ibm.com/live-advisor/cm-app\n */\nexport interface CMApp {\n version: string;\n ready: boolean;\n init: Function;\n minimize: Function;\n refresh: Function;\n register: Function;\n deregister: Function;\n fireEvent: Function;\n update: Function;\n props: {\n eventHandlers: any;\n events: CustomEvent[];\n getLoadedBundle: Function;\n };\n}\n\n/**\n * Component that renders masthead from links, etc. data.\n *\n * @element c4d-masthead-composite\n * @csspart view-all - Targets all view-all elements. Usage: `c4d-masthead-composite::part(view-all)`\n * @csspart view-all-left - Targets the view all left. Usage: `c4d-masthead-composite::part(view-all-left)`\n * @csspart view-all-right - Targets the view all right. Usage: `c4d-masthead-composite::part(view-all-right)`\n * @csspart view-all-bottom - Targets the view all bottom. Usage: `c4d-masthead-composite::part(view-all-bottom)`\n * @csspart l0-view-all-products-arrow - Targets the view all products arrow icon. Usage: `c4d-masthead-composite::part(l0-view-all-products-arrow)`\n */\n@customElement(`${c4dPrefix}-masthead-composite`)\nclass C4DMastheadComposite extends HostListenerMixin(LitElement) {\n /**\n * Renders L1 menu based on l1Data & screen width.\n *\n * @returns {TemplateResult | undefined}\n */\n protected _renderL1() {\n const { l1Data, selectedMenuItemL1 } = this;\n const { cta } = l1Data?.actions || {};\n return !l1Data\n ? undefined\n : html`\n <c4d-masthead-l1\n slot=\"masthead-l1\"\n .l1Data=${l1Data}\n selected-menu-item=${selectedMenuItemL1 || ''}>\n ${cta ? C4DMastheadL1.renderL1Cta(cta) : ''}\n </c4d-masthead-l1>\n `;\n }\n\n /**\n * Renders masthead logo\n *\n * @returns {TemplateResult} A template fragment representing the logo.\n */\n protected _renderLogo() {\n if (!this.logoData) {\n return html`\n <c4d-masthead-logo\n ?hide-logo=\"${this.activateSearch}\"></c4d-masthead-logo>\n `;\n }\n const useAlternateLogo = MastheadLogoAPI.setMastheadLogo(this.logoData);\n const { tooltip, svg, href } = this.logoData;\n return html`\n <c4d-masthead-logo\n ?hide-logo=\"${this.activateSearch}\"\n ?hasTooltip=\"${tooltip}\"\n aria-label=\"${ifDefined(tooltip)}\"\n href=\"${href || C4DMastheadLogo.hrefDefault}\"\n >${useAlternateLogo ? unsafeSVG(svg) : ''}</c4d-masthead-logo\n >\n `;\n }\n\n /**\n * Render MegaMenu content\n *\n * @param menu megamenu data object\n * @param _parentKey parent key\n * @param layout layout selection to render the megamenu with\n * @returns {TemplateResult} A template fragment representing a megamenu.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderMegaMenu(\n menu: L0Megamenu,\n _parentKey,\n layout: MEGAMENU_LAYOUT_SCHEME = MEGAMENU_LAYOUT_SCHEME.LIST\n ): TemplateResult {\n const { _megamenuRenderMap } = this;\n if (_megamenuRenderMap.has(layout)) {\n return (_megamenuRenderMap.get(layout) as Function)(menu, _parentKey);\n }\n return this._renderMegaMenuListing(menu, _parentKey);\n }\n\n protected get ArrowIcon() {\n const isRTL = document.dir.toLowerCase() === 'rtl';\n return isRTL ? ArrowLeft16 : ArrowRight16;\n }\n\n /**\n * Render MegaMenu content in tabbed layout.\n *\n * @param menu megamenu data object\n * @param _parentKey key that identifies parent nav item\n * @returns {TemplateResult} A template fragment representing a tabbed megamenu.\n */\n protected _renderMegaMenuTabbed(menu: L0Megamenu, _parentKey) {\n const { viewAll, sections } = menu;\n type menuItem = Megapanel & { itemKey: String };\n const sortedMenuItems: menuItem[] = [];\n sections.forEach((section, i) => {\n return sortedMenuItems.push({\n ...section,\n itemKey: `${_parentKey}-${i}`,\n });\n });\n\n const activeMenuItem = this._activeMegamenuTabKey\n ? sortedMenuItems.find(\n (item) => item.itemKey === this._activeMegamenuTabKey\n )\n : sortedMenuItems[0];\n\n return html`\n <c4d-megamenu layout=\"${MEGAMENU_LAYOUT_SCHEME.TAB}\">\n <c4d-megamenu-left-navigation>\n <c4d-megamenu-tabs\n value=\"${ifNonEmpty(activeMenuItem?.heading?.title)}\">\n ${sortedMenuItems.map((item) => {\n return item?.heading?.title\n ? html`\n <c4d-megamenu-tab\n id=\"tab-${item.itemKey}\"\n target=\"panel-${item.itemKey}\"\n value=\"${item.heading.title}\">\n ${item.heading.title}\n </c4d-megamenu-tab>\n `\n : '';\n })}\n </c4d-megamenu-tabs>\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-left\"\n slot=\"view-all\">\n <span>${viewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n part: 'l0-view-all-products-arrow',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-left-navigation>\n ${this._renderMegamenuTabPanel(activeMenuItem)}\n </c4d-megamenu>\n `;\n }\n\n /**\n * Render individual tabpanel in a tabbed megamenu.\n *\n * @param menuItem menuItem data object\n * @returns {TemplateResult} A template fragment representing a megamenu tabpanel.\n */\n protected _renderMegamenuTabPanel(menuItem) {\n const { itemKey, groups, heading, viewAll: itemViewAll } = menuItem;\n return html`\n <div\n id=\"panel-${itemKey}\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-${itemKey}\">\n <c4d-megamenu-right-navigation\n class=\"${c4dPrefix}--masthead__tabpanel-child\"\n style-scheme=\"${MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.HAS_SIDEBAR}\">\n ${heading?.title\n ? html`\n <c4d-megamenu-heading\n href=\"${ifNonEmpty(heading?.url)}\"\n title=\"${heading?.title}\"\n slot=\"heading\">\n ${heading?.description}\n </c4d-megamenu-heading>\n `\n : ''}\n ${groups\n ? groups.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n autoid: `panel-${itemKey}-${i}`,\n })\n )\n : ''}\n ${itemViewAll?.url && itemViewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${itemViewAll.url}\"\n part=\"view-all view-all-right\"\n slot=\"view-all\">\n <span>${itemViewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-right-navigation>\n </div>\n `;\n }\n\n /**\n * Render MegaMenu content in listing layout.\n *\n * @param menu megamenu data object\n * @param _parentKey key that identifies parent nav item\n * @returns {TemplateResult} A template fragment representing a listing megamenu.\n */\n // eslint-disable-next-line\n protected _renderMegaMenuListing(menu: L0Megamenu, _parentKey) {\n const megapanel = menu.sections[0];\n const { heading } = megapanel;\n const { viewAll, highlights } = menu;\n\n return html`\n <c4d-megamenu layout=\"${MEGAMENU_LAYOUT_SCHEME.LIST}\">\n ${highlights\n ? html`\n <c4d-megamenu-left-navigation>\n ${highlights.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n headingLevel: 2,\n autoid: `${c4dPrefix}--masthead__l0-nav-list${i}`,\n })\n )}\n </c4d-megamenu-left-navigation>\n `\n : null}\n <c4d-megamenu-right-navigation\n style-scheme=\"${highlights\n ? MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.HAS_SIDEBAR\n : MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.FULL}\">\n ${heading && !highlights\n ? html`\n <c4d-megamenu-heading\n href=\"${ifNonEmpty(heading.url)}\"\n title=\"${ifNonEmpty(heading.title)}\"\n slot=\"heading\">\n ${heading.description}\n </c4d-megamenu-heading>\n `\n : ''}\n ${megapanel.groups.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n headingLevel: heading ? 3 : 2,\n autoid: `${c4dPrefix}--masthead__l0-nav-list${\n i + (highlights ? highlights.length : 0)\n }`,\n })\n )}\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-right\"\n slot=\"view-all\">\n <span>${viewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-right-navigation>\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-bottom\">\n <span>${viewAll.title}</span>${this.ArrowIcon({ slot: 'icon' })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu>\n `;\n }\n\n /**\n * Render a Megapanel link group.\n *\n * @param group megamenu link group\n * @returns {TemplateResult} A template fragment representing a megapanel link group.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderMegapanelLinkGroup(\n group: MegapanelLinkGroup,\n options: { headingLevel?: Number; autoid?: String } = { headingLevel: 3 }\n ) {\n const { links, heading } = group;\n const { headingLevel, autoid } = options;\n return html`\n <c4d-megamenu-category-group data-autoid=\"${ifNonEmpty(autoid)}\">\n ${heading?.title\n ? html`\n <c4d-megamenu-category-heading\n title=\"${heading.title}\"\n href=\"${ifNonEmpty(heading?.url)}\"\n slot=\"heading\"\n heading-level=\"${ifNonEmpty(headingLevel)}\">\n ${heading?.description}\n </c4d-megamenu-category-heading>\n `\n : ''}\n ${links &&\n links.map((link, i) => {\n const linkAutoId = autoid ? `${autoid}-item${i}` : null;\n if (link?.description) {\n return html`\n <c4d-megamenu-category-link\n title=\"${link?.title}\"\n href=\"${ifNonEmpty(link?.url)}\"\n data-autoid=\"${ifNonEmpty(linkAutoId)}\">\n ${link?.description}\n </c4d-megamenu-category-link>\n `;\n }\n return html`\n <c4d-megamenu-category-link\n href=\"${ifNonEmpty(link?.url)}\"\n data-autoid=\"${ifNonEmpty(linkAutoId)}\">\n ${link?.title}\n </c4d-megamenu-category-link>\n `;\n })}\n </c4d-megamenu-category-group>\n `;\n }\n\n /**\n * Renders the left nav menus sections\n *\n * @param object heading heading of menu section\n * @param object.menuItems menu items\n * @param object.heading heading heading of menu section\n * @param object.isSubmenu determines whether menu section is a submenu section\n * @param object.showBackButton Determines whether to show back button\n * @param object.sectionTitle title of menu section\n * @param object.sectionUrl section title url of menu section\n * @param object.sectionId id of menu section\n * @returns {TemplateResult} A template fragment representing the left nav menu\n * sections.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderLeftNavMenuSections({\n menuItems,\n heading,\n isSubmenu = false,\n showBackButton = false,\n sectionTitle = '',\n sectionUrl = '',\n sectionId = '',\n }) {\n const items = menuItems?.map((elem) => {\n if (elem.menu) {\n return html`\n <c4d-left-nav-menu\n ?last-highlighted=${elem.lastHighlightedItem}\n panel-id=${elem.panelId}\n ?active=\"${elem.selected}\"\n title=\"${elem.title}\"\n data-autoid=\"${elem.autoid}\">\n </c4d-left-nav-menu>\n `;\n }\n\n return html`\n <c4d-left-nav-menu-item\n ?last-highlighted=${elem.lastHighlightedItem}\n ?active=\"${elem.selected}\"\n href=\"${elem.url}\"\n title=\"${elem.title}\"\n data-autoid=\"${elem.autoid}\"\n .isHeading=${elem.isHeading ?? false}\n .isViewAll=${elem.isViewAll ?? false}></c4d-left-nav-menu-item>\n `;\n });\n\n if (heading) {\n if (typeof heading === 'string') {\n items.unshift(\n html`\n <c4d-left-nav-menu-category-heading\n title=\"${heading}\"></c4d-left-nav-menu-category-heading>\n `\n );\n } else {\n const { title, description, url } = heading;\n items.unshift(\n html`\n <c4d-left-nav-menu-category-heading\n .boostSize=${true}\n title=\"${title}\"\n url=\"${ifDefined(url)}\">\n ${description ?? ''}\n </c4d-left-nav-menu-category-heading>\n `\n );\n }\n }\n\n return html`\n <c4d-left-nav-menu-section\n section-id=\"${sectionId}\"\n ?is-submenu=${ifDefined(isSubmenu)}\n title=${ifDefined(sectionTitle)}\n titleUrl=${ifDefined(sectionUrl)}\n ?show-back-button=${ifDefined(showBackButton)}>\n ${items}\n </c4d-left-nav-menu-section>\n `;\n }\n\n /**\n * checks if menu item's children url match the current url path, if so return the menu item and its children\n *\n * @returns {object} selectedItems\n */\n // eslint-disable-next-line class-methods-use-this\n protected _selectedLeftNavItems() {\n const { currentUrlPath } = this;\n let matchFound = false;\n const selectedItems = { level0: '', level1: '', level2: '' };\n\n return ({\n menu = [\n { url: '', megapanelContent: { quickLinks: { links: [{ url: '' }] } } },\n ],\n key = '',\n parentItemUrl = '',\n }) => {\n if (!matchFound) {\n if (parentItemUrl === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n matchFound = true;\n }\n // check if child url matches current url path\n else {\n for (let i = 0; i < menu?.length; i++) {\n if (menu[i]?.url === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n selectedItems.level1 = `${key}-${i}`;\n matchFound = true;\n break;\n } else {\n const links = menu[i]?.megapanelContent?.quickLinks?.links;\n for (let k = 0; k < links?.length; k++) {\n if (links[k]?.url === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n selectedItems.level1 = `${key}-${i}`;\n selectedItems.level2 = `${key}-${i}-${k}`;\n matchFound = true;\n break;\n }\n }\n }\n }\n }\n this._hasAutoSelectedItems = matchFound;\n return selectedItems;\n }\n return selectedItems;\n };\n }\n\n /**\n * Renders the left nav menus\n *\n * @param menuItems The options.\n * @param autoid Base autoid to be applied to the menu items\n * @returns {TemplateResult} A template fragment representing the left nav.\n */\n protected _renderLeftNav() {\n const { platform } = this;\n const menu: any[] = [];\n const menuItems = this.getL0Data();\n const autoid = `${c4dPrefix}--masthead__l0`;\n const level0Items = menuItems?.map((elem: L0MenuItem, i) => {\n // Instantiate bucket for first level submenus.\n const level1Items: {\n title: string;\n panelId: string;\n autoid: string;\n lastHighlightedItem: boolean;\n url?: string;\n menu: boolean;\n selected: boolean;\n isHeading?: boolean;\n isViewAll?: boolean;\n heading?: string;\n description?: string;\n }[] = [];\n\n // If it's a \"simple\" menu, no megapanels.\n if (elem?.submenu instanceof Array) {\n elem.submenu.forEach((link, j) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: false,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n });\n });\n\n if (level1Items.length !== 0) {\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level1Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: elem.title,\n sectionUrl: elem.url,\n sectionId: `${i}, -1`,\n heading: elem.title,\n })\n );\n }\n }\n\n // If it's a megapanel.\n const submenu = elem.submenu as L0Megamenu;\n if (submenu?.sections) {\n // Check if other types of links exist.\n const highlightedItems = submenu?.highlights || [];\n const viewAll = submenu?.viewAll;\n\n // 1. Add highlighted items to top of menu.\n if (highlightedItems.length !== 0) {\n highlightedItems.forEach((highlight: MegapanelLinkGroup, j) => {\n const { heading, links } = highlight;\n const lastHighlighted = j + 1 === highlightedItems.length;\n\n if (heading) {\n level1Items.push({\n title: heading.title,\n url: heading.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n isHeading: true,\n });\n }\n if (links) {\n links.forEach((link, k) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-item${k}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n });\n });\n }\n });\n }\n\n /**\n * 2. Add megamenu links to menu.\n *\n * `sections`' length implies a tabbed or listing megamenu, which must\n * be handled in different ways and have slightly different content\n * requirements.\n */\n if (submenu.sections.length > 1) {\n submenu.sections.map((item: Megapanel, j) => {\n const { heading, groups } = item;\n const lastHighlighted = j + 1 === highlightedItems.length;\n const level2Items: {\n title: string;\n url?: string;\n autoid: string;\n selected: boolean;\n isHeading?: boolean;\n }[] = [];\n\n groups.forEach((linkGroup: MegapanelLinkGroup, k) => {\n const { heading: groupHeading, links } = linkGroup;\n\n if (groupHeading) {\n level2Items.push({\n title: groupHeading.title,\n url: groupHeading.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-heading${k}`,\n selected: false,\n isHeading: true,\n });\n }\n if (links) {\n links.forEach((link, l) => {\n level2Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-heading${k}-item${l}`,\n selected: false,\n });\n });\n }\n });\n\n if (level2Items.length !== 0) {\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level2Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: heading?.title,\n sectionUrl: heading?.url,\n sectionId: `${i}, ${j}`,\n heading,\n })\n );\n }\n\n return level1Items.push({\n title: (heading as BasicLink).title, // headings are required in tabbed layout\n url: heading?.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n selected: false,\n menu: groups && groups.length !== 0,\n });\n });\n } else {\n submenu.sections[0].groups.forEach((group: MegapanelLinkGroup, j) => {\n const { heading, links } = group;\n const lastHighlighted = j + 1 === highlightedItems.length;\n\n if (heading) {\n level1Items.push({\n title: heading.title,\n url: heading.url,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n menu: false,\n selected: false,\n isHeading: true,\n });\n }\n\n if (links) {\n links.forEach((link, k) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}, ${k}`,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-item${k}`,\n menu: false,\n selected: false,\n });\n });\n }\n });\n }\n\n // 3. Add view all link to bottom of menu.\n if (viewAll) {\n level1Items.push({\n title: viewAll.title,\n url: viewAll.url,\n lastHighlightedItem: false,\n panelId: `${i}`,\n autoid: `${autoid}--sidenav--nav${i}-list${level1Items.length}`,\n menu: false,\n selected: false,\n isViewAll: true,\n });\n }\n\n if (level1Items.length !== 0) {\n const isNotFaceted = submenu.sections.length === 1;\n const megapanelHeading = submenu.sections[0].heading;\n\n const heading =\n isNotFaceted && !!megapanelHeading ? megapanelHeading : elem.title;\n\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level1Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: elem.title,\n sectionUrl: elem.url,\n sectionId: `${i}, -1`,\n heading,\n })\n );\n }\n }\n\n return {\n title: elem.title,\n titleEnglish: elem.titleEnglish,\n url: elem?.url,\n menu: Boolean(elem?.submenu),\n panelId: `${i}, -1`,\n autoid: `${autoid}--sidenav--nav${i}`,\n selected: false,\n };\n });\n\n return html`\n <c4d-left-nav-overlay></c4d-left-nav-overlay>\n <c4d-left-nav>\n ${!platform\n ? undefined\n : html`\n <c4d-left-nav-name href=\"${ifNonEmpty(this._getPlatformUrl())}\">\n ${platform}\n </c4d-left-nav-name>\n `}\n ${this._renderLeftNavMenuSections({\n menuItems: level0Items,\n sectionId: '-1, -1',\n heading: false,\n })}\n ${menu}\n </c4d-left-nav>\n `;\n }\n\n /**\n * Renders the mobile menu button.\n *\n * @returns {TemplateResult} A template fragment representing the menu button.\n */\n protected _renderMenuButton() {\n const {\n activateSearch,\n menuButtonAssistiveTextActive,\n menuButtonAssistiveTextInactive,\n } = this;\n return html`\n <c4d-masthead-menu-button\n button-label-active=\"${ifNonEmpty(menuButtonAssistiveTextActive)}\"\n button-label-inactive=\"${ifNonEmpty(menuButtonAssistiveTextInactive)}\"\n ?hide-menu-button=\"${activateSearch}\">\n </c4d-masthead-menu-button>\n `;\n }\n\n /**\n * Checks if there is a child item in the menu section that matches current\n * url and returns true for first valid result.\n *\n * @param menuItem a top level L0 menu item\n * @returns boolean\n */\n protected _isActiveMenuItem(menuItem: L0MenuItem) {\n const { currentUrlPath } = this;\n const { submenu } = menuItem;\n let matchFound = false;\n\n if (!submenu) {\n matchFound = menuItem?.url === currentUrlPath;\n } else if (submenu instanceof Array) {\n matchFound = Boolean(\n (submenu as BasicLink[]).find((link) => link.url === currentUrlPath)\n );\n } else if (submenu.sections) {\n const { highlights, viewAll, sections } = submenu;\n const flattenedLinks: BasicLink[] = [];\n const flattenLinkGroup = (group: MegapanelLinkGroup): BasicLink[] => {\n const links: BasicLink[] = [];\n if (group.heading) {\n links.push(group.heading);\n }\n if (group.links) {\n group.links.forEach((link) => {\n links.push(link);\n });\n }\n return links;\n };\n\n // Flatten all data into array of BasicLinks.\n if (highlights) {\n highlights.forEach((highlight) => {\n flattenedLinks.push(...flattenLinkGroup(highlight));\n });\n }\n if (sections.length > 0) {\n sections.forEach((section) => {\n if (section.heading) {\n flattenedLinks.push(section.heading);\n }\n section.groups.forEach((group) => {\n flattenedLinks.push(...flattenLinkGroup(group));\n });\n });\n }\n if (viewAll) {\n flattenedLinks.push(viewAll);\n }\n\n // Check flattened list for matching URL.\n matchFound = Boolean(\n flattenedLinks.find((link) => link.url === currentUrlPath)\n );\n }\n\n return matchFound;\n }\n\n /**\n * Renders the top navigation bar.\n *\n * @returns {TemplateResult} A template fragment representing the top nav.\n */\n protected _renderTopNav() {\n const { selectedMenuItem, menuBarAssistiveText, activateSearch } = this;\n return !this.getL0Data()\n ? undefined\n : html`\n <c4d-top-nav\n selected-menu-item=${selectedMenuItem}\n menu-bar-label=\"${ifNonEmpty(menuBarAssistiveText)}\"\n ?hideNav=\"${activateSearch}\">\n ${this.getL0Data().map((link, i) => {\n return this._renderNavItem(link, i, `${c4dPrefix}--masthead__l0`);\n })}\n </c4d-top-nav>\n `;\n }\n\n /**\n * Renders a nav item.\n *\n * @param item The item to render\n * @param i The index of the item in a series\n * @param autoid The unique id to assign to the item\n * @returns {TemplateResult} A template fragment representing a nav item.\n */\n protected _renderNavItem(item: L0MenuItem, i, autoid): TemplateResult {\n const { selectedMenuItem, currentUrlPath, _activeMegamenuIndex } = this;\n const { submenu, title, titleEnglish, url } = item;\n let selected;\n\n if (selectedMenuItem) {\n selected =\n titleEnglish?.trim()?.toLowerCase() ===\n selectedMenuItem?.trim()?.toLowerCase();\n } else {\n selected = this._isActiveMenuItem(item);\n }\n\n if (submenu instanceof Array) {\n return html`\n <c4d-top-nav-menu\n ?active=\"${selected}\"\n menu-label=\"${title}\"\n trigger-content=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\">\n ${submenu.map(\n ({ title: linkTitle, url: linkUrl }, j) =>\n html`\n <c4d-top-nav-menu-item\n ?active=\"${selectedMenuItem\n ? selected\n : linkUrl === currentUrlPath}\"\n href=\"${ifDefined(linkUrl)}\"\n title=\"${linkTitle}\"\n data-autoid=\"${autoid}-nav--subnav-col${i}-item${j}\"></c4d-top-nav-menu-item>\n `\n )}\n </c4d-top-nav-menu>\n `;\n }\n\n if (submenu?.sections) {\n const layout =\n submenu.sections.length > 1\n ? MEGAMENU_LAYOUT_SCHEME.TAB\n : MEGAMENU_LAYOUT_SCHEME.LIST;\n\n // Render nav menu, but only render megamenu if it is active.\n return html`\n <c4d-megamenu-top-nav-menu\n ?active=\"${selected}\"\n menu-label=\"${title}\"\n trigger-content=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\"\n .menuIndex=${i}>\n ${_activeMegamenuIndex === i\n ? this._renderMegaMenu(submenu, i, layout)\n : null}\n </c4d-megamenu-top-nav-menu>\n `;\n }\n\n // Fallback render as simple link.\n return html`\n <c4d-top-nav-item\n ?active=\"${selectedMenuItem ? selected : url === currentUrlPath}\"\n href=\"${ifDefined(url)}\"\n title=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\"></c4d-top-nav-item>\n `;\n }\n\n /**\n * Sets the active megamenu upon user interaction.\n *\n * @param event The event.\n */\n @HostListener(C4DMegamenuTopNavMenu.eventMegaMenuToggled)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n protected _loadMegamenu = (event: CustomEvent) => {\n const {\n detail: { active, resolveFn, index: menuIndex },\n } = event;\n\n // Open a megamenu by updating state to trigger a re-render. This also closes\n // any previously opened megamenu.\n if (active && menuIndex !== undefined) {\n this._activeMegamenuIndex = menuIndex;\n\n // Close the Contact Module upon opening megamenu.\n this.contactModuleApp?.minimize();\n\n // Set positioning property upon opening megamenu.\n this._setCustomPropertyL0BottomEdge();\n }\n\n // If clicking the same nav item to close megamenu, reset state to prune its\n // markup from the DOM.\n if (!active && menuIndex === this._activeMegamenuIndex) {\n this._activeMegamenuIndex = undefined;\n }\n\n // Reset active tab when closing any megamenu.\n if (!active && this._activeMegamenuTabKey) {\n this._activeMegamenuTabKey = undefined;\n }\n\n resolveFn();\n };\n\n @HostListener(C4DMastheadL1.dropDownToggleEvent)\n protected _handleL1DropdownToggle({ detail }: CustomEvent) {\n const { isOpen } = detail;\n if (isOpen) {\n this.contactModuleApp?.minimize();\n }\n }\n\n /**\n * Sets the active megamenu tabpanel upon user interaction.\n *\n * @param event The event.\n */\n @HostListener(C4DMegaMenuTabs.eventBeforeSelect)\n protected _loadMegamenuTabPanel(event) {\n const { detail } = event;\n const panelId = detail.item.id.split('tab-')[1];\n this._activeMegamenuTabKey = panelId;\n }\n\n /**\n * Stores a reference of the globally-scoped CM_APP object within the masthead.\n */\n @HostListener('document:cm-app-ready')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n protected _getContactModuleReference = () => {\n // @ts-ignore: CM_APP will definitely exist if this event is fired\n this.contactModuleApp = window.CM_APP;\n };\n\n contactModuleApp?: CMApp;\n\n /**\n * Performs actions on left nav button toggle.\n */\n @HostListener(C4DMastheadMenuButton.eventToggle)\n protected _handleMenuButtonToggle = (event) => {\n if (event.detail?.active) {\n this._setCustomPropertyL0BottomEdge();\n }\n };\n\n /**\n * Sets a CSS value for the position of the L0's bottom edge.\n */\n protected _setCustomPropertyL0BottomEdge() {\n const mastheadL0 = this.mastheadRef?.shadowRoot.querySelector(\n `.${prefix}--masthead__l0`\n );\n if (mastheadL0) {\n this.style.setProperty(\n (this.constructor as typeof C4DMastheadComposite)\n .customPropertyL0BottomEdge,\n `${mastheadL0.getBoundingClientRect().bottom}px`\n );\n }\n }\n\n /**\n * Gets localized platform URL.\n *\n * @returns {string} A URL.\n */\n private _getPlatformUrl(): string {\n const { language, platformUrl } = this;\n const formattedLang = language\n ?.toLowerCase()\n .replace(/-(.*)/, (m) => m.toUpperCase());\n let url = platformUrl;\n if (platformUrl && formattedLang) {\n if (\n typeof platformUrl === 'object' &&\n Object.prototype.hasOwnProperty.call(platformUrl, formattedLang)\n ) {\n url = platformUrl[formattedLang].url || platformUrl;\n }\n }\n return url;\n }\n\n /**\n * Renders the platform title.\n *\n * @returns {TemplateResult} A template fragment representing the platform title.\n */\n protected _renderPlatformTitle() {\n const { l1Data, platform } = this;\n return !platform || l1Data\n ? undefined\n : html`\n <c4d-top-nav-name href=\"${ifDefined(this._getPlatformUrl())}\">\n ${platform}\n </c4d-top-nav-name>\n `;\n }\n\n /**\n * Renders the masthead search.\n *\n * @returns {TemplateResult} A template fragment representing the search bar.\n */\n protected _renderSearch() {\n const {\n activateSearch,\n currentSearchResults,\n customTypeaheadAPI,\n hasSearch,\n initialSearchTerm,\n inputTimeout,\n language,\n openSearchDropdown,\n scopeParameters,\n searchPlaceholder,\n } = this;\n return hasSearch === 'false'\n ? ''\n : html`\n <c4d-search-with-typeahead\n ?active=\"${activateSearch}\"\n .currentSearchResults=\"${ifDefined(currentSearchResults)}\"\n ?custom-typeahead-api=\"${ifDefined(customTypeaheadAPI)}\"\n initial-search-term=\"${ifDefined(initialSearchTerm)}\"\n input-timeout=\"${inputTimeout}\"\n language=\"${ifDefined(language)}\"\n ?open=\"${openSearchDropdown}\"\n placeholder=\"${ifDefined(searchPlaceholder)}\"\n .scopeParameters=\"${ifDefined(scopeParameters)}\"\n ?searchOpenOnload=\"${activateSearch}\"></c4d-search-with-typeahead>\n `;\n }\n\n /**\n * Renders the contact button.\n *\n * @returns {TemplateResult} A template fragment representing the contact button.\n */\n protected _renderContact() {\n const { contactUsButton, hasContact } = this;\n return hasContact === 'false'\n ? undefined\n : html`\n <c4d-masthead-contact\n data-ibm-contact=\"contact-link\"\n trigger-label=\"${ifDefined(\n contactUsButton?.title\n )}\"></c4d-masthead-contact>\n `;\n }\n\n protected _renderLanguageSelector() {\n const { hasLanguageSelector } = this;\n\n return hasLanguageSelector === 'false'\n ? undefined\n : html`\n <div class=\"earth-language-icon\" part=\"earth-l0-icon\">\n ${Wikis({ part: 'earth-l0-svg' })}\n </div>\n `;\n }\n\n protected _renderCart() {\n const { hasCart, cartLabel } = this;\n return hasCart\n ? html`<c4d-masthead-cart link-label=\"${cartLabel}\"></c4d-masthead-cart>`\n : undefined;\n }\n\n /**\n * Gets the appropriate profile items for the current masthead state.\n *\n * @returns An array of profile items or undefined.\n */\n protected _getProfileItems(): MastheadProfileItem[] | undefined {\n const {\n customProfileLogin,\n userIsAuthenticated,\n authenticatedProfileItems,\n unauthenticatedProfileItems,\n } = this;\n\n let profileItems;\n if (\n C4D_CUSTOM_PROFILE_LOGIN &&\n customProfileLogin &&\n !userIsAuthenticated\n ) {\n profileItems = unauthenticatedProfileItems?.map((item) => {\n if (item?.id === 'signin') {\n return { ...item, url: customProfileLogin };\n }\n return item;\n });\n } else {\n profileItems = userIsAuthenticated\n ? authenticatedProfileItems\n : unauthenticatedProfileItems;\n }\n return profileItems;\n }\n\n /**\n * Renders the profile menu.\n *\n * @returns {TemplateResult} A template fragment representing the profile menu.\n */\n protected _renderProfileMenu() {\n const { hasProfile, userIsAuthenticated } = this;\n return hasProfile === 'false'\n ? ''\n : html`\n <c4d-masthead-profile ?authenticated=\"${userIsAuthenticated}\">\n ${this._getProfileItems()?.map(\n ({ title, url }) =>\n html`\n <c4d-masthead-profile-item href=\"${ifDefined(url)}\">\n ${title}\n </c4d-masthead-profile-item>\n `\n )}\n </c4d-masthead-profile>\n `;\n }\n\n /**\n * Whether or not a nav item has automatically been designated as \"selected\".\n *\n * @internal\n */\n _hasAutoSelectedItems = false;\n\n /**\n * Whether the nav should load as `left-nav` or `top-nav`\n */\n _isMobileVersion = layoutBreakpoint.matches;\n\n /**\n * The placeholder for `loadTranslation()` Redux action that will be mixed in.\n *\n * @internal\n */\n _loadTranslation?: (\n language?: string,\n dataEndpoint?: string\n ) => Promise<Translation>;\n\n /**\n * The placeholder for `loadUserStatus()` Redux action that will be mixed in.\n *\n * @internal\n */\n _loadUserStatus?: (authMethod?: string) => void;\n\n /**\n * The placeholder for `setLanguage()` Redux action that will be mixed in.\n *\n * @internal\n */\n _setLanguage?: (language: string) => void;\n\n /**\n * Map of megamenu layout options to corresponding render methods.\n *\n * @internal\n */\n _megamenuRenderMap = new Map([\n [MEGAMENU_LAYOUT_SCHEME.LIST, this._renderMegaMenuListing.bind(this)],\n [MEGAMENU_LAYOUT_SCHEME.TAB, this._renderMegaMenuTabbed.bind(this)],\n ]);\n\n /**\n * The index of a megamenu that should be visible.\n */\n @state()\n _activeMegamenuIndex?: number;\n\n /**\n * The index of a megamenu's tabpanel that should be visible.\n */\n @state()\n _activeMegamenuTabKey?: string;\n\n /**\n * `true` if there is a profile.\n */\n @property({ type: String, reflect: true, attribute: 'has-profile' })\n hasProfile = 'true';\n\n /**\n * `true` if there is a search.\n */\n @property({ type: String, reflect: true, attribute: 'has-search' })\n hasSearch = 'true';\n\n /**\n * `true` to activate the search box.\n */\n @property({ type: Boolean, attribute: 'activate-search' })\n activateSearch = false;\n\n /**\n * `true` sets search to active when page loads.\n */\n @property({ attribute: 'search-open-on-load' })\n searchOpenOnload = this.activateSearch;\n\n /**\n * Sets a default query in the masthead's search input.\n */\n @property({ attribute: 'initial-search-term', reflect: true })\n initialSearchTerm?: string;\n\n /**\n * The profile items for authenticated state.\n */\n @property({ attribute: false })\n authenticatedProfileItems?: MastheadProfileItem[];\n\n /**\n * Text for Contact us button\n */\n @property({ attribute: false })\n contactUsButton?: MastheadProfileItem;\n\n /**\n * The platform name.\n */\n @property()\n platform!: string;\n\n /**\n * The platform url. Accepts both a string or an object with a specific URL for each locale.\n */\n @property({ attribute: false })\n platformUrl?;\n\n /**\n * The search results to show in the UI.\n */\n @property({ attribute: false })\n currentSearchResults: string[] = [];\n\n @property({ attribute: false })\n currentUrlPath?: string = root.location?.href;\n\n /**\n * The custom profile login link.\n */\n @property({ attribute: 'custom-profile-login' })\n customProfileLogin?: string;\n\n /**\n * The boolean to use a custom search API.\n */\n @property({ attribute: 'custom-typeahead-api', type: Boolean })\n customTypeaheadAPI = false;\n\n /**\n * The `aria-label` attribute for the top-level container.\n */\n @property({ attribute: 'masthead-assistive-text' })\n mastheadAssistiveText!: string;\n\n /**\n * The `aria-label` attribute for the menu bar UI.\n */\n @property({ attribute: 'menu-bar-assistive-text' })\n menuBarAssistiveText!: string;\n\n /**\n * The skip-to-content link text.\n */\n @property({ attribute: 'skip-to-content-text' })\n skipToContentText = 'Skip to content';\n\n /**\n * The skip-to-content href.\n */\n @property({ attribute: 'skip-to-content-href' })\n skipToContentHref = '#main-content';\n\n /**\n * The `aria-label` attribute for the header menu button in its active state.\n */\n @property({ attribute: 'menu-button-assistive-text-active' })\n menuButtonAssistiveTextActive!: string;\n\n /**\n * The `aria-label` attribute for the header menu button in its active state.\n */\n @property({ attribute: 'menu-button-assistive-text-inactive' })\n menuButtonAssistiveTextInactive!: string;\n\n /**\n * The parameters passed to the search-with-typeahead for search scope\n */\n @property()\n scopeParameters;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * The English title of the selected nav item in the L1.\n */\n @property({ attribute: 'selected-menu-item-l1' })\n selectedMenuItemL1!: string;\n\n /**\n * The profile items for unauthenticated state.\n */\n @property({ attribute: false })\n unauthenticatedProfileItems?: MastheadProfileItem[];\n\n /**\n * Specify translation endpoint if not using default c4d endpoint.\n */\n @property({ attribute: 'data-endpoint' })\n dataEndpoint?: string;\n\n /**\n * The throttle timeout to run query upon user input.\n */\n @property({ type: Number, attribute: 'input-timeout' })\n inputTimeout = 200;\n\n /**\n * The language used for query.\n */\n @property()\n language?: string;\n\n /**\n * Logo data\n */\n @property({ attribute: false })\n logoData?: MastheadLogoData;\n\n /**\n * The navigation links.\n *\n * @deprecated This property name is ambiguous. Use the l0Data prop instead.\n */\n @property({ attribute: false })\n navLinks?: L0MenuItem[];\n\n /**\n * Data for l0.\n */\n @property({ attribute: false })\n l0Data?: L0MenuItem[];\n\n /**\n * Temporary getter to fetch data until navLinks prop is phased out.\n */\n public getL0Data() {\n const { l0Data, navLinks } = this;\n if (navLinks) {\n console.warn(\n `Warning: ${c4dPrefix}-masthead's \"navLinks\" property is deprecated. Use \"l0Data\" property instead.`\n );\n }\n return (l0Data || navLinks) as L0MenuItem[];\n }\n\n /**\n * Data for l1.\n */\n @property({ attribute: false })\n l1Data?: MastheadL1;\n\n /**\n * `true` to open the search dropdown.\n */\n @property({ type: Boolean, reflect: true, attribute: 'open-search-dropdown' })\n openSearchDropdown = false;\n\n /**\n * Value to display when the input has an empty `value`.\n */\n @property()\n searchPlaceholder?: string;\n\n /**\n * `true` if Contact us should be shown.\n */\n @property({ type: String, reflect: true, attribute: 'has-contact' })\n hasContact = 'true';\n\n /**\n * `true` if Language Selector should be shown.\n */\n @property({ type: String, reflect: true, attribute: 'has-language-selector' })\n hasLanguageSelector = 'true';\n\n /**\n * `true` if Cart should be shown.\n */\n @property({ type: Boolean, reflect: true, attribute: 'has-cart' })\n hasCart = false;\n\n /**\n * Label for the cart icon.\n */\n @property({ type: String, reflect: true, attribute: 'cart-label' })\n cartLabel = 'Cart';\n\n /**\n * The selected authentication method, either `profile-api` (default), `cookie`, or `docs-api`.\n */\n @property({ attribute: 'auth-method' })\n authMethod = MASTHEAD_AUTH_METHOD.DEFAULT;\n\n /**\n * The user authentication status.\n */\n @property({ attribute: 'user-status' })\n userStatus =\n this.authMethod === MASTHEAD_AUTH_METHOD.DEFAULT\n ? UNAUTHENTICATED_STATUS\n : CLOUD_UNAUTHENTICATED_STATUS;\n\n get userIsAuthenticated(): boolean {\n const { userStatus } = this;\n return (\n userStatus !== UNAUTHENTICATED_STATUS &&\n userStatus !== CLOUD_UNAUTHENTICATED_STATUS\n );\n }\n\n /**\n * A reference to the c4d-masthead element.\n */\n @query(`${c4dPrefix}-masthead`)\n mastheadRef;\n\n /**\n * Resize observer to trigger container height recalculations.\n *\n * @private\n */\n private _heightResizeObserver = new ResizeObserver(\n this._resizeObserverCallback.bind(this)\n );\n\n /**\n * Prevents resize observer from blocking main thread.\n */\n private _resizeObserverThrottle?: NodeJS.Timeout;\n\n /**\n * Throttled callback for _heightResizeObserver.\n */\n protected _resizeObserverCallback() {\n clearTimeout(this._resizeObserverThrottle);\n this._resizeObserverThrottle = setTimeout(\n this._setContainerHeight.bind(this),\n 100\n );\n }\n\n /**\n * Sets root element's height equal to the height of the fixed masthead elements.\n */\n protected _setContainerHeight() {\n const { mastheadRef } = this;\n if (mastheadRef) {\n this.style.display = 'block';\n this.style.height = `${mastheadRef.getBoundingClientRect().height}px`;\n }\n }\n\n firstUpdated() {\n const { language, dataEndpoint } = this;\n globalInit();\n if (language) {\n this._setLanguage?.(language);\n }\n this._loadTranslation?.(language, dataEndpoint).catch(() => {}); // The error is logged in the Redux store\n if (this.userStatus === UNAUTHENTICATED_STATUS) {\n this._loadUserStatus?.(this.authMethod);\n }\n\n // This is a temp fix until we figure out why we can't set styles to the :host(c4d-masthead-container) in stylesheets\n this.style.zIndex = '900';\n this.style.position = 'relative';\n\n // Allows conditional rendering of left/top navs.\n layoutBreakpoint.addEventListener('change', () => {\n this._isMobileVersion = layoutBreakpoint.matches;\n this.requestUpdate();\n });\n\n // Keep render root's height in sync with c4d-masthead.\n this._heightResizeObserver.observe(this.mastheadRef);\n\n const mastheadHasLanguageSelector = this.querySelector(\n 'c4d-masthead[has-language-selector]'\n );\n if (mastheadHasLanguageSelector) {\n this.hasLanguageSelector = 'true';\n } else {\n this.hasLanguageSelector = 'false';\n }\n }\n\n updated(changedProperties) {\n if (\n changedProperties.has('language') ||\n changedProperties.has('dataEndpoint')\n ) {\n const { language, dataEndpoint } = this;\n if (language) {\n this._setLanguage?.(language);\n this._loadTranslation?.(language, dataEndpoint).catch(() => {}); // The error is logged in the Redux store\n }\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this._heightResizeObserver.disconnect();\n }\n\n render() {\n const {\n _isMobileVersion: isMobileVersion,\n activateSearch,\n mastheadAssistiveText,\n skipToContentText,\n skipToContentHref,\n } = this;\n\n return html`\n ${isMobileVersion ? this._renderLeftNav() : ''}\n <c4d-masthead\n has-language-selector\n ?has-l1=${this.l1Data}\n aria-label=\"${ifNonEmpty(mastheadAssistiveText)}\">\n <c4d-skip-to-content\n href=\"${skipToContentHref}\"\n link-assistive-text=\"${skipToContentText}\"></c4d-skip-to-content>\n ${isMobileVersion ? this._renderMenuButton() : ''} ${this._renderLogo()}\n ${this._renderPlatformTitle()}\n ${!isMobileVersion ? this._renderTopNav() : ''} ${this._renderSearch()}\n <c4d-masthead-global-bar ?has-search-active=${activateSearch}>\n ${this._renderContact()}\n ${this._renderCart()}${this._renderLanguageSelector()}\n ${this._renderProfileMenu()}\n </c4d-masthead-global-bar>\n ${this._renderL1()}\n <c4d-megamenu-overlay></c4d-megamenu-overlay>\n </c4d-masthead>\n `;\n }\n\n protected createRenderRoot() {\n return this;\n }\n\n /**\n * The name of the CSS custom property to track bottom edge position.\n */\n static get customPropertyL0BottomEdge() {\n return `--${c4dPrefix}-masthead-l0-bottom-edge`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DMastheadComposite;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"masthead-composite.js","names":["LitElement","html","state","property","query","ifDefined","ArrowRight16","ArrowLeft16","Wikis","ifNonEmpty","unsafeSVG","root","HostListener","HostListenerMixin","settings","globalInit","MastheadLogoAPI","UNAUTHENTICATED_STATUS","CLOUD_UNAUTHENTICATED_STATUS","MASTHEAD_AUTH_METHOD","MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME","C4D_CUSTOM_PROFILE_LOGIN","C4DMastheadLogo","C4DMegaMenuTabs","C4DMegamenuTopNavMenu","C4DMastheadL1","styles","MEGAMENU_LAYOUT_SCHEME","layoutBreakpoint","carbonElement","customElement","C4DMastheadMenuButton","stablePrefix","c4dPrefix","prefix","C4DMastheadComposite","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_renderL1","l1Data","selectedMenuItemL1","cta","actions","undefined","_t","_","renderL1Cta","_renderLogo","logoData","_t2","activateSearch","useAlternateLogo","setMastheadLogo","tooltip","svg","href","_t3","hrefDefault","_renderMegaMenu","menu","_parentKey","layout","LIST","_megamenuRenderMap","has","get","_renderMegaMenuListing","isRTL","document","dir","toLowerCase","_renderMegaMenuTabbed","_activeMenuItem$headi","viewAll","sections","sortedMenuItems","forEach","section","i","push","_objectSpread","itemKey","activeMenuItem","_activeMegamenuTabKey","find","item","_t4","TAB","heading","title","map","_item$heading","_t5","url","_t6","ArrowIcon","slot","part","_renderMegamenuTabPanel","menuItem","groups","itemViewAll","_t7","HAS_SIDEBAR","_t8","description","group","_renderMegapanelLinkGroup","autoid","_t9","megapanel","highlights","_t10","_t11","headingLevel","FULL","_t12","length","_t13","_t14","options","links","_t15","_t16","link","linkAutoId","_t17","_t18","_renderLeftNavMenuSections","menuItems","isSubmenu","showBackButton","sectionTitle","sectionUrl","sectionId","items","elem","_elem$isHeading","_elem$isViewAll","_t19","lastHighlightedItem","panelId","selected","_t20","isHeading","isViewAll","unshift","_t21","_t22","_t23","_selectedLeftNavItems","currentUrlPath","matchFound","selectedItems","level0","level1","level2","megapanelContent","quickLinks","parentItemUrl","_menu$i","_menu$i2","k","_links$k","_hasAutoSelectedItems","_renderLeftNav","platform","getL0Data","level0Items","level1Items","submenu","Array","j","highlightedItems","highlight","lastHighlighted","level2Items","linkGroup","groupHeading","l","isNotFaceted","megapanelHeading","titleEnglish","Boolean","_t24","_t25","_getPlatformUrl","_renderMenuButton","menuButtonAssistiveTextActive","menuButtonAssistiveTextInactive","_t26","_isActiveMenuItem","flattenedLinks","flattenLinkGroup","_renderTopNav","selectedMenuItem","menuBarAssistiveText","_t27","_renderNavItem","_activeMegamenuIndex","_titleEnglish$trim","_selectedMenuItem$tri","trim","_t28","linkTitle","linkUrl","_t29","_t30","_t31","decorators","eventMegaMenuToggled","event","detail","active","resolveFn","index","menuIndex","_this$contactModuleAp","contactModuleApp","minimize","_setCustomPropertyL0BottomEdge","dropDownToggleEvent","_handleL1DropdownToggle","isOpen","_this$contactModuleAp2","eventBeforeSelect","_loadMegamenuTabPanel","id","split","window","CM_APP","eventToggle","_event$detail","_this$mastheadRef","mastheadL0","mastheadRef","shadowRoot","querySelector","style","setProperty","customPropertyL0BottomEdge","getBoundingClientRect","bottom","language","platformUrl","formattedLang","replace","m","toUpperCase","Object","prototype","hasOwnProperty","call","_renderPlatformTitle","_t32","_renderSearch","currentSearchResults","customTypeaheadAPI","hasSearch","initialSearchTerm","inputTimeout","openSearchDropdown","scopeParameters","searchPlaceholder","_t33","_renderContact","contactUsButton","hasContact","_t34","_renderLanguageSelector","isAEMCMSpage","hasLanguageSelector","_t35","_t36","_renderCart","hasCart","cartLabel","_t37","_getProfileItems","customProfileLogin","userIsAuthenticated","authenticatedProfileItems","unauthenticatedProfileItems","profileItems","_renderProfileMenu","_this$_getProfileItem","hasProfile","_t38","_t39","matches","Map","bind","type","String","reflect","attribute","_root$location","location","Number","l0Data","navLinks","console","warn","DEFAULT","authMethod","userStatus","ResizeObserver","_resizeObserverCallback","clearTimeout","_resizeObserverThrottle","setTimeout","_setContainerHeight","display","height","firstUpdated","_this$_loadTranslatio","dataEndpoint","_this$_setLanguage","_setLanguage","_loadTranslation","catch","_this$_loadUserStatus","_loadUserStatus","zIndex","position","addEventListener","_isMobileVersion","requestUpdate","_heightResizeObserver","observe","mastheadHasLanguageSelector","updated","changedProperties","_this$_setLanguage2","_this$_loadTranslatio2","disconnectedCallback","_superPropGet","disconnect","render","isMobileVersion","mastheadAssistiveText","skipToContentText","skipToContentHref","_t40","createRenderRoot","static"],"sources":["components/masthead/masthead-composite.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html, TemplateResult } from 'lit';\nimport { state, property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ArrowRight16 from '@carbon/web-components/es/icons/arrow--right/16.js';\nimport ArrowLeft16 from '@carbon/web-components/es/icons/arrow--left/16.js';\nimport Wikis from '@carbon/web-components/es/icons/wikis/20.js';\nimport ifNonEmpty from '@carbon/web-components/es/globals/directives/if-non-empty.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport root from 'window-or-global';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport { globalInit } from '@carbon/ibmdotcom-services/es/services/global/global.js';\nimport MastheadLogoAPI from '@carbon/ibmdotcom-services/es/services/MastheadLogo/MastheadLogo.js';\nimport {\n BasicLink,\n MastheadL1,\n MastheadLogoData,\n MastheadProfileItem,\n Translation,\n L0MenuItem,\n L0Megamenu,\n Megapanel,\n MegapanelLinkGroup,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/translateAPI';\nimport {\n UNAUTHENTICATED_STATUS,\n CLOUD_UNAUTHENTICATED_STATUS,\n MASTHEAD_AUTH_METHOD,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/profileAPI.js';\nimport { MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME } from './megamenu-right-navigation';\nimport { C4D_CUSTOM_PROFILE_LOGIN } from '../../globals/internal/feature-flags';\nimport C4DMastheadLogo from './masthead-logo';\nimport C4DMegaMenuTabs from './megamenu-tabs';\nimport C4DMegamenuTopNavMenu from './megamenu-top-nav-menu';\nimport C4DMastheadL1 from './masthead-l1';\nimport './masthead';\nimport './masthead-l1';\nimport './masthead-l1-cta';\nimport './masthead-l1-name';\nimport './masthead-menu-button';\nimport './masthead-contact';\nimport './masthead-global-bar';\nimport './masthead-profile';\nimport './masthead-profile-item';\nimport './masthead-cart';\nimport './megamenu-language-selector';\nimport './megamenu';\nimport './megamenu-heading';\nimport './megamenu-top-nav-menu';\nimport './skip-to-content';\nimport './top-nav';\nimport './top-nav-l1';\nimport './top-nav-name';\nimport './top-nav-item';\nimport './top-nav-menu';\nimport './top-nav-menu-item';\nimport './left-nav';\nimport '../search-with-typeahead/search-with-typeahead';\nimport '../search-with-typeahead/search-with-typeahead-item';\nimport styles from './masthead.scss';\nimport { MEGAMENU_LAYOUT_SCHEME } from './defs';\nimport layoutBreakpoint from './masthead-breakpoint';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport C4DMastheadMenuButton from './masthead-menu-button';\n\nconst { stablePrefix: c4dPrefix, prefix } = settings;\n\n/**\n * Globally-scoped Contact Module variable.\n *\n * @see https://github.ibm.com/live-advisor/cm-app\n */\nexport interface CMApp {\n version: string;\n ready: boolean;\n init: Function;\n minimize: Function;\n refresh: Function;\n register: Function;\n deregister: Function;\n fireEvent: Function;\n update: Function;\n props: {\n eventHandlers: any;\n events: CustomEvent[];\n getLoadedBundle: Function;\n };\n}\n\n/**\n * Component that renders masthead from links, etc. data.\n *\n * @element c4d-masthead-composite\n * @csspart view-all - Targets all view-all elements. Usage: `c4d-masthead-composite::part(view-all)`\n * @csspart view-all-left - Targets the view all left. Usage: `c4d-masthead-composite::part(view-all-left)`\n * @csspart view-all-right - Targets the view all right. Usage: `c4d-masthead-composite::part(view-all-right)`\n * @csspart view-all-bottom - Targets the view all bottom. Usage: `c4d-masthead-composite::part(view-all-bottom)`\n * @csspart l0-view-all-products-arrow - Targets the view all products arrow icon. Usage: `c4d-masthead-composite::part(l0-view-all-products-arrow)`\n */\n@customElement(`${c4dPrefix}-masthead-composite`)\nclass C4DMastheadComposite extends HostListenerMixin(LitElement) {\n /**\n * Renders L1 menu based on l1Data & screen width.\n *\n * @returns {TemplateResult | undefined}\n */\n protected _renderL1() {\n const { l1Data, selectedMenuItemL1 } = this;\n const { cta } = l1Data?.actions || {};\n return !l1Data\n ? undefined\n : html`\n <c4d-masthead-l1\n slot=\"masthead-l1\"\n .l1Data=${l1Data}\n selected-menu-item=${selectedMenuItemL1 || ''}>\n ${cta ? C4DMastheadL1.renderL1Cta(cta) : ''}\n </c4d-masthead-l1>\n `;\n }\n\n /**\n * Renders masthead logo\n *\n * @returns {TemplateResult} A template fragment representing the logo.\n */\n protected _renderLogo() {\n if (!this.logoData) {\n return html`\n <c4d-masthead-logo\n ?hide-logo=\"${this.activateSearch}\"></c4d-masthead-logo>\n `;\n }\n const useAlternateLogo = MastheadLogoAPI.setMastheadLogo(this.logoData);\n const { tooltip, svg, href } = this.logoData;\n return html`\n <c4d-masthead-logo\n ?hide-logo=\"${this.activateSearch}\"\n ?hasTooltip=\"${tooltip}\"\n aria-label=\"${ifDefined(tooltip)}\"\n href=\"${href || C4DMastheadLogo.hrefDefault}\"\n >${useAlternateLogo ? unsafeSVG(svg) : ''}</c4d-masthead-logo\n >\n `;\n }\n\n /**\n * Render MegaMenu content\n *\n * @param menu megamenu data object\n * @param _parentKey parent key\n * @param layout layout selection to render the megamenu with\n * @returns {TemplateResult} A template fragment representing a megamenu.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderMegaMenu(\n menu: L0Megamenu,\n _parentKey,\n layout: MEGAMENU_LAYOUT_SCHEME = MEGAMENU_LAYOUT_SCHEME.LIST\n ): TemplateResult {\n const { _megamenuRenderMap } = this;\n if (_megamenuRenderMap.has(layout)) {\n return (_megamenuRenderMap.get(layout) as Function)(menu, _parentKey);\n }\n return this._renderMegaMenuListing(menu, _parentKey);\n }\n\n protected get ArrowIcon() {\n const isRTL = document.dir.toLowerCase() === 'rtl';\n return isRTL ? ArrowLeft16 : ArrowRight16;\n }\n\n /**\n * Render MegaMenu content in tabbed layout.\n *\n * @param menu megamenu data object\n * @param _parentKey key that identifies parent nav item\n * @returns {TemplateResult} A template fragment representing a tabbed megamenu.\n */\n protected _renderMegaMenuTabbed(menu: L0Megamenu, _parentKey) {\n const { viewAll, sections } = menu;\n type menuItem = Megapanel & { itemKey: String };\n const sortedMenuItems: menuItem[] = [];\n sections.forEach((section, i) => {\n return sortedMenuItems.push({\n ...section,\n itemKey: `${_parentKey}-${i}`,\n });\n });\n\n const activeMenuItem = this._activeMegamenuTabKey\n ? sortedMenuItems.find(\n (item) => item.itemKey === this._activeMegamenuTabKey\n )\n : sortedMenuItems[0];\n\n return html`\n <c4d-megamenu layout=\"${MEGAMENU_LAYOUT_SCHEME.TAB}\">\n <c4d-megamenu-left-navigation>\n <c4d-megamenu-tabs\n value=\"${ifNonEmpty(activeMenuItem?.heading?.title)}\">\n ${sortedMenuItems.map((item) => {\n return item?.heading?.title\n ? html`\n <c4d-megamenu-tab\n id=\"tab-${item.itemKey}\"\n target=\"panel-${item.itemKey}\"\n value=\"${item.heading.title}\">\n ${item.heading.title}\n </c4d-megamenu-tab>\n `\n : '';\n })}\n </c4d-megamenu-tabs>\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-left\"\n slot=\"view-all\">\n <span>${viewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n part: 'l0-view-all-products-arrow',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-left-navigation>\n ${this._renderMegamenuTabPanel(activeMenuItem)}\n </c4d-megamenu>\n `;\n }\n\n /**\n * Render individual tabpanel in a tabbed megamenu.\n *\n * @param menuItem menuItem data object\n * @returns {TemplateResult} A template fragment representing a megamenu tabpanel.\n */\n protected _renderMegamenuTabPanel(menuItem) {\n const { itemKey, groups, heading, viewAll: itemViewAll } = menuItem;\n return html`\n <div\n id=\"panel-${itemKey}\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-${itemKey}\">\n <c4d-megamenu-right-navigation\n class=\"${c4dPrefix}--masthead__tabpanel-child\"\n style-scheme=\"${MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.HAS_SIDEBAR}\">\n ${heading?.title\n ? html`\n <c4d-megamenu-heading\n href=\"${ifNonEmpty(heading?.url)}\"\n title=\"${heading?.title}\"\n slot=\"heading\">\n ${heading?.description}\n </c4d-megamenu-heading>\n `\n : ''}\n ${groups\n ? groups.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n autoid: `panel-${itemKey}-${i}`,\n })\n )\n : ''}\n ${itemViewAll?.url && itemViewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${itemViewAll.url}\"\n part=\"view-all view-all-right\"\n slot=\"view-all\">\n <span>${itemViewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-right-navigation>\n </div>\n `;\n }\n\n /**\n * Render MegaMenu content in listing layout.\n *\n * @param menu megamenu data object\n * @param _parentKey key that identifies parent nav item\n * @returns {TemplateResult} A template fragment representing a listing megamenu.\n */\n // eslint-disable-next-line\n protected _renderMegaMenuListing(menu: L0Megamenu, _parentKey) {\n const megapanel = menu.sections[0];\n const { heading } = megapanel;\n const { viewAll, highlights } = menu;\n\n return html`\n <c4d-megamenu layout=\"${MEGAMENU_LAYOUT_SCHEME.LIST}\">\n ${highlights\n ? html`\n <c4d-megamenu-left-navigation>\n ${highlights.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n headingLevel: 2,\n autoid: `${c4dPrefix}--masthead__l0-nav-list${i}`,\n })\n )}\n </c4d-megamenu-left-navigation>\n `\n : null}\n <c4d-megamenu-right-navigation\n style-scheme=\"${highlights\n ? MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.HAS_SIDEBAR\n : MEGAMENU_RIGHT_NAVIGATION_STYLE_SCHEME.FULL}\">\n ${heading && !highlights\n ? html`\n <c4d-megamenu-heading\n href=\"${ifNonEmpty(heading.url)}\"\n title=\"${ifNonEmpty(heading.title)}\"\n slot=\"heading\">\n ${heading.description}\n </c4d-megamenu-heading>\n `\n : ''}\n ${megapanel.groups.map((group, i) =>\n this._renderMegapanelLinkGroup(group, {\n headingLevel: heading ? 3 : 2,\n autoid: `${c4dPrefix}--masthead__l0-nav-list${\n i + (highlights ? highlights.length : 0)\n }`,\n })\n )}\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-right\"\n slot=\"view-all\">\n <span>${viewAll.title}</span>${this.ArrowIcon({\n slot: 'icon',\n })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu-right-navigation>\n ${viewAll?.url && viewAll?.title\n ? html`\n <c4d-megamenu-link-with-icon\n href=\"${viewAll.url}\"\n part=\"view-all view-all-bottom\">\n <span>${viewAll.title}</span>${this.ArrowIcon({ slot: 'icon' })}\n </c4d-megamenu-link-with-icon>\n `\n : null}\n </c4d-megamenu>\n `;\n }\n\n /**\n * Render a Megapanel link group.\n *\n * @param group megamenu link group\n * @returns {TemplateResult} A template fragment representing a megapanel link group.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderMegapanelLinkGroup(\n group: MegapanelLinkGroup,\n options: { headingLevel?: Number; autoid?: String } = { headingLevel: 3 }\n ) {\n const { links, heading } = group;\n const { headingLevel, autoid } = options;\n return html`\n <c4d-megamenu-category-group data-autoid=\"${ifNonEmpty(autoid)}\">\n ${heading?.title\n ? html`\n <c4d-megamenu-category-heading\n title=\"${heading.title}\"\n href=\"${ifNonEmpty(heading?.url)}\"\n slot=\"heading\"\n heading-level=\"${ifNonEmpty(headingLevel)}\">\n ${heading?.description}\n </c4d-megamenu-category-heading>\n `\n : ''}\n ${links &&\n links.map((link, i) => {\n const linkAutoId = autoid ? `${autoid}-item${i}` : null;\n if (link?.description) {\n return html`\n <c4d-megamenu-category-link\n title=\"${link?.title}\"\n href=\"${ifNonEmpty(link?.url)}\"\n data-autoid=\"${ifNonEmpty(linkAutoId)}\">\n ${link?.description}\n </c4d-megamenu-category-link>\n `;\n }\n return html`\n <c4d-megamenu-category-link\n href=\"${ifNonEmpty(link?.url)}\"\n data-autoid=\"${ifNonEmpty(linkAutoId)}\">\n ${link?.title}\n </c4d-megamenu-category-link>\n `;\n })}\n </c4d-megamenu-category-group>\n `;\n }\n\n /**\n * Renders the left nav menus sections\n *\n * @param object heading heading of menu section\n * @param object.menuItems menu items\n * @param object.heading heading heading of menu section\n * @param object.isSubmenu determines whether menu section is a submenu section\n * @param object.showBackButton Determines whether to show back button\n * @param object.sectionTitle title of menu section\n * @param object.sectionUrl section title url of menu section\n * @param object.sectionId id of menu section\n * @returns {TemplateResult} A template fragment representing the left nav menu\n * sections.\n */\n // eslint-disable-next-line class-methods-use-this\n protected _renderLeftNavMenuSections({\n menuItems,\n heading,\n isSubmenu = false,\n showBackButton = false,\n sectionTitle = '',\n sectionUrl = '',\n sectionId = '',\n }) {\n const items = menuItems?.map((elem) => {\n if (elem.menu) {\n return html`\n <c4d-left-nav-menu\n ?last-highlighted=${elem.lastHighlightedItem}\n panel-id=${elem.panelId}\n ?active=\"${elem.selected}\"\n title=\"${elem.title}\"\n data-autoid=\"${elem.autoid}\">\n </c4d-left-nav-menu>\n `;\n }\n\n return html`\n <c4d-left-nav-menu-item\n ?last-highlighted=${elem.lastHighlightedItem}\n ?active=\"${elem.selected}\"\n href=\"${elem.url}\"\n title=\"${elem.title}\"\n data-autoid=\"${elem.autoid}\"\n .isHeading=${elem.isHeading ?? false}\n .isViewAll=${elem.isViewAll ?? false}></c4d-left-nav-menu-item>\n `;\n });\n\n if (heading) {\n if (typeof heading === 'string') {\n items.unshift(\n html`\n <c4d-left-nav-menu-category-heading\n title=\"${heading}\"></c4d-left-nav-menu-category-heading>\n `\n );\n } else {\n const { title, description, url } = heading;\n items.unshift(\n html`\n <c4d-left-nav-menu-category-heading\n .boostSize=${true}\n title=\"${title}\"\n url=\"${ifDefined(url)}\">\n ${description ?? ''}\n </c4d-left-nav-menu-category-heading>\n `\n );\n }\n }\n\n return html`\n <c4d-left-nav-menu-section\n section-id=\"${sectionId}\"\n ?is-submenu=${ifDefined(isSubmenu)}\n title=${ifDefined(sectionTitle)}\n titleUrl=${ifDefined(sectionUrl)}\n ?show-back-button=${ifDefined(showBackButton)}>\n ${items}\n </c4d-left-nav-menu-section>\n `;\n }\n\n /**\n * checks if menu item's children url match the current url path, if so return the menu item and its children\n *\n * @returns {object} selectedItems\n */\n // eslint-disable-next-line class-methods-use-this\n protected _selectedLeftNavItems() {\n const { currentUrlPath } = this;\n let matchFound = false;\n const selectedItems = { level0: '', level1: '', level2: '' };\n\n return ({\n menu = [\n { url: '', megapanelContent: { quickLinks: { links: [{ url: '' }] } } },\n ],\n key = '',\n parentItemUrl = '',\n }) => {\n if (!matchFound) {\n if (parentItemUrl === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n matchFound = true;\n }\n // check if child url matches current url path\n else {\n for (let i = 0; i < menu?.length; i++) {\n if (menu[i]?.url === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n selectedItems.level1 = `${key}-${i}`;\n matchFound = true;\n break;\n } else {\n const links = menu[i]?.megapanelContent?.quickLinks?.links;\n for (let k = 0; k < links?.length; k++) {\n if (links[k]?.url === currentUrlPath) {\n selectedItems.level0 = `${key}`;\n selectedItems.level1 = `${key}-${i}`;\n selectedItems.level2 = `${key}-${i}-${k}`;\n matchFound = true;\n break;\n }\n }\n }\n }\n }\n this._hasAutoSelectedItems = matchFound;\n return selectedItems;\n }\n return selectedItems;\n };\n }\n\n /**\n * Renders the left nav menus\n *\n * @param menuItems The options.\n * @param autoid Base autoid to be applied to the menu items\n * @returns {TemplateResult} A template fragment representing the left nav.\n */\n protected _renderLeftNav() {\n const { platform } = this;\n const menu: any[] = [];\n const menuItems = this.getL0Data();\n const autoid = `${c4dPrefix}--masthead__l0`;\n const level0Items = menuItems?.map((elem: L0MenuItem, i) => {\n // Instantiate bucket for first level submenus.\n const level1Items: {\n title: string;\n panelId: string;\n autoid: string;\n lastHighlightedItem: boolean;\n url?: string;\n menu: boolean;\n selected: boolean;\n isHeading?: boolean;\n isViewAll?: boolean;\n heading?: string;\n description?: string;\n }[] = [];\n\n // If it's a \"simple\" menu, no megapanels.\n if (elem?.submenu instanceof Array) {\n elem.submenu.forEach((link, j) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: false,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n });\n });\n\n if (level1Items.length !== 0) {\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level1Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: elem.title,\n sectionUrl: elem.url,\n sectionId: `${i}, -1`,\n heading: elem.title,\n })\n );\n }\n }\n\n // If it's a megapanel.\n const submenu = elem.submenu as L0Megamenu;\n if (submenu?.sections) {\n // Check if other types of links exist.\n const highlightedItems = submenu?.highlights || [];\n const viewAll = submenu?.viewAll;\n\n // 1. Add highlighted items to top of menu.\n if (highlightedItems.length !== 0) {\n highlightedItems.forEach((highlight: MegapanelLinkGroup, j) => {\n const { heading, links } = highlight;\n const lastHighlighted = j + 1 === highlightedItems.length;\n\n if (heading) {\n level1Items.push({\n title: heading.title,\n url: heading.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n isHeading: true,\n });\n }\n if (links) {\n links.forEach((link, k) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-item${k}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n menu: false,\n selected: false,\n });\n });\n }\n });\n }\n\n /**\n * 2. Add megamenu links to menu.\n *\n * `sections`' length implies a tabbed or listing megamenu, which must\n * be handled in different ways and have slightly different content\n * requirements.\n */\n if (submenu.sections.length > 1) {\n submenu.sections.map((item: Megapanel, j) => {\n const { heading, groups } = item;\n const lastHighlighted = j + 1 === highlightedItems.length;\n const level2Items: {\n title: string;\n url?: string;\n autoid: string;\n selected: boolean;\n isHeading?: boolean;\n }[] = [];\n\n groups.forEach((linkGroup: MegapanelLinkGroup, k) => {\n const { heading: groupHeading, links } = linkGroup;\n\n if (groupHeading) {\n level2Items.push({\n title: groupHeading.title,\n url: groupHeading.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-heading${k}`,\n selected: false,\n isHeading: true,\n });\n }\n if (links) {\n links.forEach((link, l) => {\n level2Items.push({\n title: link.title,\n url: link.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-heading${k}-item${l}`,\n selected: false,\n });\n });\n }\n });\n\n if (level2Items.length !== 0) {\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level2Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: heading?.title,\n sectionUrl: heading?.url,\n sectionId: `${i}, ${j}`,\n heading,\n })\n );\n }\n\n return level1Items.push({\n title: (heading as BasicLink).title, // headings are required in tabbed layout\n url: heading?.url,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n selected: false,\n menu: groups && groups.length !== 0,\n });\n });\n } else {\n submenu.sections[0].groups.forEach((group: MegapanelLinkGroup, j) => {\n const { heading, links } = group;\n const lastHighlighted = j + 1 === highlightedItems.length;\n\n if (heading) {\n level1Items.push({\n title: heading.title,\n url: heading.url,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}`,\n autoid: `${autoid}--sidenav--nav${i}-list${j}`,\n menu: false,\n selected: false,\n isHeading: true,\n });\n }\n\n if (links) {\n links.forEach((link, k) => {\n level1Items.push({\n title: link.title,\n url: link.url,\n lastHighlightedItem: lastHighlighted,\n panelId: `${i}, ${j}, ${k}`,\n autoid: `${autoid}--sidenav--nav${i}-list${j}-item${k}`,\n menu: false,\n selected: false,\n });\n });\n }\n });\n }\n\n // 3. Add view all link to bottom of menu.\n if (viewAll) {\n level1Items.push({\n title: viewAll.title,\n url: viewAll.url,\n lastHighlightedItem: false,\n panelId: `${i}`,\n autoid: `${autoid}--sidenav--nav${i}-list${level1Items.length}`,\n menu: false,\n selected: false,\n isViewAll: true,\n });\n }\n\n if (level1Items.length !== 0) {\n const isNotFaceted = submenu.sections.length === 1;\n const megapanelHeading = submenu.sections[0].heading;\n\n const heading =\n isNotFaceted && !!megapanelHeading ? megapanelHeading : elem.title;\n\n menu.push(\n this._renderLeftNavMenuSections({\n menuItems: level1Items,\n isSubmenu: true,\n showBackButton: true,\n sectionTitle: elem.title,\n sectionUrl: elem.url,\n sectionId: `${i}, -1`,\n heading,\n })\n );\n }\n }\n\n return {\n title: elem.title,\n titleEnglish: elem.titleEnglish,\n url: elem?.url,\n menu: Boolean(elem?.submenu),\n panelId: `${i}, -1`,\n autoid: `${autoid}--sidenav--nav${i}`,\n selected: false,\n };\n });\n\n return html`\n <c4d-left-nav-overlay></c4d-left-nav-overlay>\n <c4d-left-nav>\n ${!platform\n ? undefined\n : html`\n <c4d-left-nav-name href=\"${ifNonEmpty(this._getPlatformUrl())}\">\n ${platform}\n </c4d-left-nav-name>\n `}\n ${this._renderLeftNavMenuSections({\n menuItems: level0Items,\n sectionId: '-1, -1',\n heading: false,\n })}\n ${menu}\n </c4d-left-nav>\n `;\n }\n\n /**\n * Renders the mobile menu button.\n *\n * @returns {TemplateResult} A template fragment representing the menu button.\n */\n protected _renderMenuButton() {\n const {\n activateSearch,\n menuButtonAssistiveTextActive,\n menuButtonAssistiveTextInactive,\n } = this;\n return html`\n <c4d-masthead-menu-button\n button-label-active=\"${ifNonEmpty(menuButtonAssistiveTextActive)}\"\n button-label-inactive=\"${ifNonEmpty(menuButtonAssistiveTextInactive)}\"\n ?hide-menu-button=\"${activateSearch}\">\n </c4d-masthead-menu-button>\n `;\n }\n\n /**\n * Checks if there is a child item in the menu section that matches current\n * url and returns true for first valid result.\n *\n * @param menuItem a top level L0 menu item\n * @returns boolean\n */\n protected _isActiveMenuItem(menuItem: L0MenuItem) {\n const { currentUrlPath } = this;\n const { submenu } = menuItem;\n let matchFound = false;\n\n if (!submenu) {\n matchFound = menuItem?.url === currentUrlPath;\n } else if (submenu instanceof Array) {\n matchFound = Boolean(\n (submenu as BasicLink[]).find((link) => link.url === currentUrlPath)\n );\n } else if (submenu.sections) {\n const { highlights, viewAll, sections } = submenu;\n const flattenedLinks: BasicLink[] = [];\n const flattenLinkGroup = (group: MegapanelLinkGroup): BasicLink[] => {\n const links: BasicLink[] = [];\n if (group.heading) {\n links.push(group.heading);\n }\n if (group.links) {\n group.links.forEach((link) => {\n links.push(link);\n });\n }\n return links;\n };\n\n // Flatten all data into array of BasicLinks.\n if (highlights) {\n highlights.forEach((highlight) => {\n flattenedLinks.push(...flattenLinkGroup(highlight));\n });\n }\n if (sections.length > 0) {\n sections.forEach((section) => {\n if (section.heading) {\n flattenedLinks.push(section.heading);\n }\n section.groups.forEach((group) => {\n flattenedLinks.push(...flattenLinkGroup(group));\n });\n });\n }\n if (viewAll) {\n flattenedLinks.push(viewAll);\n }\n\n // Check flattened list for matching URL.\n matchFound = Boolean(\n flattenedLinks.find((link) => link.url === currentUrlPath)\n );\n }\n\n return matchFound;\n }\n\n /**\n * Renders the top navigation bar.\n *\n * @returns {TemplateResult} A template fragment representing the top nav.\n */\n protected _renderTopNav() {\n const { selectedMenuItem, menuBarAssistiveText, activateSearch } = this;\n return !this.getL0Data()\n ? undefined\n : html`\n <c4d-top-nav\n selected-menu-item=${selectedMenuItem}\n menu-bar-label=\"${ifNonEmpty(menuBarAssistiveText)}\"\n ?hideNav=\"${activateSearch}\">\n ${this.getL0Data().map((link, i) => {\n return this._renderNavItem(link, i, `${c4dPrefix}--masthead__l0`);\n })}\n </c4d-top-nav>\n `;\n }\n\n /**\n * Renders a nav item.\n *\n * @param item The item to render\n * @param i The index of the item in a series\n * @param autoid The unique id to assign to the item\n * @returns {TemplateResult} A template fragment representing a nav item.\n */\n protected _renderNavItem(item: L0MenuItem, i, autoid): TemplateResult {\n const { selectedMenuItem, currentUrlPath, _activeMegamenuIndex } = this;\n const { submenu, title, titleEnglish, url } = item;\n let selected;\n\n if (selectedMenuItem) {\n selected =\n titleEnglish?.trim()?.toLowerCase() ===\n selectedMenuItem?.trim()?.toLowerCase();\n } else {\n selected = this._isActiveMenuItem(item);\n }\n\n if (submenu instanceof Array) {\n return html`\n <c4d-top-nav-menu\n ?active=\"${selected}\"\n menu-label=\"${title}\"\n trigger-content=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\">\n ${submenu.map(\n ({ title: linkTitle, url: linkUrl }, j) =>\n html`\n <c4d-top-nav-menu-item\n ?active=\"${selectedMenuItem\n ? selected\n : linkUrl === currentUrlPath}\"\n href=\"${ifDefined(linkUrl)}\"\n title=\"${linkTitle}\"\n data-autoid=\"${autoid}-nav--subnav-col${i}-item${j}\"></c4d-top-nav-menu-item>\n `\n )}\n </c4d-top-nav-menu>\n `;\n }\n\n if (submenu?.sections) {\n const layout =\n submenu.sections.length > 1\n ? MEGAMENU_LAYOUT_SCHEME.TAB\n : MEGAMENU_LAYOUT_SCHEME.LIST;\n\n // Render nav menu, but only render megamenu if it is active.\n return html`\n <c4d-megamenu-top-nav-menu\n ?active=\"${selected}\"\n menu-label=\"${title}\"\n trigger-content=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\"\n .menuIndex=${i}>\n ${_activeMegamenuIndex === i\n ? this._renderMegaMenu(submenu, i, layout)\n : null}\n </c4d-megamenu-top-nav-menu>\n `;\n }\n\n // Fallback render as simple link.\n return html`\n <c4d-top-nav-item\n ?active=\"${selectedMenuItem ? selected : url === currentUrlPath}\"\n href=\"${ifDefined(url)}\"\n title=\"${title}\"\n data-autoid=\"${autoid}-nav--nav${i}\"></c4d-top-nav-item>\n `;\n }\n\n /**\n * Sets the active megamenu upon user interaction.\n *\n * @param event The event.\n */\n @HostListener(C4DMegamenuTopNavMenu.eventMegaMenuToggled)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n protected _loadMegamenu = (event: CustomEvent) => {\n const {\n detail: { active, resolveFn, index: menuIndex },\n } = event;\n\n // Open a megamenu by updating state to trigger a re-render. This also closes\n // any previously opened megamenu.\n if (active && menuIndex !== undefined) {\n this._activeMegamenuIndex = menuIndex;\n\n // Close the Contact Module upon opening megamenu.\n this.contactModuleApp?.minimize();\n\n // Set positioning property upon opening megamenu.\n this._setCustomPropertyL0BottomEdge();\n }\n\n // If clicking the same nav item to close megamenu, reset state to prune its\n // markup from the DOM.\n if (!active && menuIndex === this._activeMegamenuIndex) {\n this._activeMegamenuIndex = undefined;\n }\n\n // Reset active tab when closing any megamenu.\n if (!active && this._activeMegamenuTabKey) {\n this._activeMegamenuTabKey = undefined;\n }\n\n resolveFn();\n };\n\n @HostListener(C4DMastheadL1.dropDownToggleEvent)\n protected _handleL1DropdownToggle({ detail }: CustomEvent) {\n const { isOpen } = detail;\n if (isOpen) {\n this.contactModuleApp?.minimize();\n }\n }\n\n /**\n * Sets the active megamenu tabpanel upon user interaction.\n *\n * @param event The event.\n */\n @HostListener(C4DMegaMenuTabs.eventBeforeSelect)\n protected _loadMegamenuTabPanel(event) {\n const { detail } = event;\n const panelId = detail.item.id.split('tab-')[1];\n this._activeMegamenuTabKey = panelId;\n }\n\n /**\n * Stores a reference of the globally-scoped CM_APP object within the masthead.\n */\n @HostListener('document:cm-app-ready')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n protected _getContactModuleReference = () => {\n // @ts-ignore: CM_APP will definitely exist if this event is fired\n this.contactModuleApp = window.CM_APP;\n };\n\n contactModuleApp?: CMApp;\n\n /**\n * Performs actions on left nav button toggle.\n */\n @HostListener(C4DMastheadMenuButton.eventToggle)\n protected _handleMenuButtonToggle = (event) => {\n if (event.detail?.active) {\n this._setCustomPropertyL0BottomEdge();\n }\n };\n\n /**\n * Sets a CSS value for the position of the L0's bottom edge.\n */\n protected _setCustomPropertyL0BottomEdge() {\n const mastheadL0 = this.mastheadRef?.shadowRoot.querySelector(\n `.${prefix}--masthead__l0`\n );\n if (mastheadL0) {\n this.style.setProperty(\n (this.constructor as typeof C4DMastheadComposite)\n .customPropertyL0BottomEdge,\n `${mastheadL0.getBoundingClientRect().bottom}px`\n );\n }\n }\n\n /**\n * Gets localized platform URL.\n *\n * @returns {string} A URL.\n */\n private _getPlatformUrl(): string {\n const { language, platformUrl } = this;\n const formattedLang = language\n ?.toLowerCase()\n .replace(/-(.*)/, (m) => m.toUpperCase());\n let url = platformUrl;\n if (platformUrl && formattedLang) {\n if (\n typeof platformUrl === 'object' &&\n Object.prototype.hasOwnProperty.call(platformUrl, formattedLang)\n ) {\n url = platformUrl[formattedLang].url || platformUrl;\n }\n }\n return url;\n }\n\n /**\n * Renders the platform title.\n *\n * @returns {TemplateResult} A template fragment representing the platform title.\n */\n protected _renderPlatformTitle() {\n const { l1Data, platform } = this;\n return !platform || l1Data\n ? undefined\n : html`\n <c4d-top-nav-name href=\"${ifDefined(this._getPlatformUrl())}\">\n ${platform}\n </c4d-top-nav-name>\n `;\n }\n\n /**\n * Renders the masthead search.\n *\n * @returns {TemplateResult} A template fragment representing the search bar.\n */\n protected _renderSearch() {\n const {\n activateSearch,\n currentSearchResults,\n customTypeaheadAPI,\n hasSearch,\n initialSearchTerm,\n inputTimeout,\n language,\n openSearchDropdown,\n scopeParameters,\n searchPlaceholder,\n } = this;\n return hasSearch === 'false'\n ? ''\n : html`\n <c4d-search-with-typeahead\n ?active=\"${activateSearch}\"\n .currentSearchResults=\"${ifDefined(currentSearchResults)}\"\n ?custom-typeahead-api=\"${ifDefined(customTypeaheadAPI)}\"\n initial-search-term=\"${ifDefined(initialSearchTerm)}\"\n input-timeout=\"${inputTimeout}\"\n language=\"${ifDefined(language)}\"\n ?open=\"${openSearchDropdown}\"\n placeholder=\"${ifDefined(searchPlaceholder)}\"\n .scopeParameters=\"${ifDefined(scopeParameters)}\"\n ?searchOpenOnload=\"${activateSearch}\"></c4d-search-with-typeahead>\n `;\n }\n\n /**\n * Renders the contact button.\n *\n * @returns {TemplateResult} A template fragment representing the contact button.\n */\n protected _renderContact() {\n const { contactUsButton, hasContact } = this;\n return hasContact === 'false'\n ? undefined\n : html`\n <c4d-masthead-contact\n data-ibm-contact=\"contact-link\"\n trigger-label=\"${ifDefined(\n contactUsButton?.title\n )}\"></c4d-masthead-contact>\n `;\n }\n\n protected _renderLanguageSelector() {\n const isAEMCMSpage = document.querySelector('[href *= adobe-cms]');\n const { hasLanguageSelector } = this;\n\n return hasLanguageSelector === 'true' && isAEMCMSpage\n ? html`\n <div class=\"earth-language-icon\" part=\"earth-l0-icon\">\n ${Wikis({ part: 'earth-l0-svg' })}\n </div>\n `\n : hasLanguageSelector === 'true' && !isAEMCMSpage\n ? html`\n <c4d-megamenu-language-selector></c4d-megamenu-language-selector>\n `\n : undefined;\n }\n\n protected _renderCart() {\n const { hasCart, cartLabel } = this;\n return hasCart\n ? html`<c4d-masthead-cart link-label=\"${cartLabel}\"></c4d-masthead-cart>`\n : undefined;\n }\n\n /**\n * Gets the appropriate profile items for the current masthead state.\n *\n * @returns An array of profile items or undefined.\n */\n protected _getProfileItems(): MastheadProfileItem[] | undefined {\n const {\n customProfileLogin,\n userIsAuthenticated,\n authenticatedProfileItems,\n unauthenticatedProfileItems,\n } = this;\n\n let profileItems;\n if (\n C4D_CUSTOM_PROFILE_LOGIN &&\n customProfileLogin &&\n !userIsAuthenticated\n ) {\n profileItems = unauthenticatedProfileItems?.map((item) => {\n if (item?.id === 'signin') {\n return { ...item, url: customProfileLogin };\n }\n return item;\n });\n } else {\n profileItems = userIsAuthenticated\n ? authenticatedProfileItems\n : unauthenticatedProfileItems;\n }\n return profileItems;\n }\n\n /**\n * Renders the profile menu.\n *\n * @returns {TemplateResult} A template fragment representing the profile menu.\n */\n protected _renderProfileMenu() {\n const { hasProfile, userIsAuthenticated } = this;\n return hasProfile === 'false'\n ? ''\n : html`\n <c4d-masthead-profile ?authenticated=\"${userIsAuthenticated}\">\n ${this._getProfileItems()?.map(\n ({ title, url }) =>\n html`\n <c4d-masthead-profile-item href=\"${ifDefined(url)}\">\n ${title}\n </c4d-masthead-profile-item>\n `\n )}\n </c4d-masthead-profile>\n `;\n }\n\n /**\n * Whether or not a nav item has automatically been designated as \"selected\".\n *\n * @internal\n */\n _hasAutoSelectedItems = false;\n\n /**\n * Whether the nav should load as `left-nav` or `top-nav`\n */\n _isMobileVersion = layoutBreakpoint.matches;\n\n /**\n * The placeholder for `loadTranslation()` Redux action that will be mixed in.\n *\n * @internal\n */\n _loadTranslation?: (\n language?: string,\n dataEndpoint?: string\n ) => Promise<Translation>;\n\n /**\n * The placeholder for `loadUserStatus()` Redux action that will be mixed in.\n *\n * @internal\n */\n _loadUserStatus?: (authMethod?: string) => void;\n\n /**\n * The placeholder for `setLanguage()` Redux action that will be mixed in.\n *\n * @internal\n */\n _setLanguage?: (language: string) => void;\n\n /**\n * Map of megamenu layout options to corresponding render methods.\n *\n * @internal\n */\n _megamenuRenderMap = new Map([\n [MEGAMENU_LAYOUT_SCHEME.LIST, this._renderMegaMenuListing.bind(this)],\n [MEGAMENU_LAYOUT_SCHEME.TAB, this._renderMegaMenuTabbed.bind(this)],\n ]);\n\n /**\n * The index of a megamenu that should be visible.\n */\n @state()\n _activeMegamenuIndex?: number;\n\n /**\n * The index of a megamenu's tabpanel that should be visible.\n */\n @state()\n _activeMegamenuTabKey?: string;\n\n /**\n * `true` if there is a profile.\n */\n @property({ type: String, reflect: true, attribute: 'has-profile' })\n hasProfile = 'true';\n\n /**\n * `true` if there is a search.\n */\n @property({ type: String, reflect: true, attribute: 'has-search' })\n hasSearch = 'true';\n\n /**\n * `true` to activate the search box.\n */\n @property({ type: Boolean, attribute: 'activate-search' })\n activateSearch = false;\n\n /**\n * `true` sets search to active when page loads.\n */\n @property({ attribute: 'search-open-on-load' })\n searchOpenOnload = this.activateSearch;\n\n /**\n * Sets a default query in the masthead's search input.\n */\n @property({ attribute: 'initial-search-term', reflect: true })\n initialSearchTerm?: string;\n\n /**\n * The profile items for authenticated state.\n */\n @property({ attribute: false })\n authenticatedProfileItems?: MastheadProfileItem[];\n\n /**\n * Text for Contact us button\n */\n @property({ attribute: false })\n contactUsButton?: MastheadProfileItem;\n\n /**\n * The platform name.\n */\n @property()\n platform!: string;\n\n /**\n * The platform url. Accepts both a string or an object with a specific URL for each locale.\n */\n @property({ attribute: false })\n platformUrl?;\n\n /**\n * The search results to show in the UI.\n */\n @property({ attribute: false })\n currentSearchResults: string[] = [];\n\n @property({ attribute: false })\n currentUrlPath?: string = root.location?.href;\n\n /**\n * The custom profile login link.\n */\n @property({ attribute: 'custom-profile-login' })\n customProfileLogin?: string;\n\n /**\n * The boolean to use a custom search API.\n */\n @property({ attribute: 'custom-typeahead-api', type: Boolean })\n customTypeaheadAPI = false;\n\n /**\n * The `aria-label` attribute for the top-level container.\n */\n @property({ attribute: 'masthead-assistive-text' })\n mastheadAssistiveText!: string;\n\n /**\n * The `aria-label` attribute for the menu bar UI.\n */\n @property({ attribute: 'menu-bar-assistive-text' })\n menuBarAssistiveText!: string;\n\n /**\n * The skip-to-content link text.\n */\n @property({ attribute: 'skip-to-content-text' })\n skipToContentText = 'Skip to content';\n\n /**\n * The skip-to-content href.\n */\n @property({ attribute: 'skip-to-content-href' })\n skipToContentHref = '#main-content';\n\n /**\n * The `aria-label` attribute for the header menu button in its active state.\n */\n @property({ attribute: 'menu-button-assistive-text-active' })\n menuButtonAssistiveTextActive!: string;\n\n /**\n * The `aria-label` attribute for the header menu button in its active state.\n */\n @property({ attribute: 'menu-button-assistive-text-inactive' })\n menuButtonAssistiveTextInactive!: string;\n\n /**\n * The parameters passed to the search-with-typeahead for search scope\n */\n @property()\n scopeParameters;\n\n /**\n * The English title of the selected nav item.\n */\n @property({ attribute: 'selected-menu-item' })\n selectedMenuItem!: string;\n\n /**\n * The English title of the selected nav item in the L1.\n */\n @property({ attribute: 'selected-menu-item-l1' })\n selectedMenuItemL1!: string;\n\n /**\n * The profile items for unauthenticated state.\n */\n @property({ attribute: false })\n unauthenticatedProfileItems?: MastheadProfileItem[];\n\n /**\n * Specify translation endpoint if not using default c4d endpoint.\n */\n @property({ attribute: 'data-endpoint' })\n dataEndpoint?: string;\n\n /**\n * The throttle timeout to run query upon user input.\n */\n @property({ type: Number, attribute: 'input-timeout' })\n inputTimeout = 200;\n\n /**\n * The language used for query.\n */\n @property()\n language?: string;\n\n /**\n * Logo data\n */\n @property({ attribute: false })\n logoData?: MastheadLogoData;\n\n /**\n * The navigation links.\n *\n * @deprecated This property name is ambiguous. Use the l0Data prop instead.\n */\n @property({ attribute: false })\n navLinks?: L0MenuItem[];\n\n /**\n * Data for l0.\n */\n @property({ attribute: false })\n l0Data?: L0MenuItem[];\n\n /**\n * Temporary getter to fetch data until navLinks prop is phased out.\n */\n public getL0Data() {\n const { l0Data, navLinks } = this;\n if (navLinks) {\n console.warn(\n `Warning: ${c4dPrefix}-masthead's \"navLinks\" property is deprecated. Use \"l0Data\" property instead.`\n );\n }\n return (l0Data || navLinks) as L0MenuItem[];\n }\n\n /**\n * Data for l1.\n */\n @property({ attribute: false })\n l1Data?: MastheadL1;\n\n /**\n * `true` to open the search dropdown.\n */\n @property({ type: Boolean, reflect: true, attribute: 'open-search-dropdown' })\n openSearchDropdown = false;\n\n /**\n * Value to display when the input has an empty `value`.\n */\n @property()\n searchPlaceholder?: string;\n\n /**\n * `true` if Contact us should be shown.\n */\n @property({ type: String, reflect: true, attribute: 'has-contact' })\n hasContact = 'true';\n\n /**\n * `true` if Language Selector should be shown.\n */\n @property({ type: String, reflect: true, attribute: 'has-language-selector' })\n hasLanguageSelector = 'true';\n\n /**\n * `true` if Cart should be shown.\n */\n @property({ type: Boolean, reflect: true, attribute: 'has-cart' })\n hasCart = false;\n\n /**\n * Label for the cart icon.\n */\n @property({ type: String, reflect: true, attribute: 'cart-label' })\n cartLabel = 'Cart';\n\n /**\n * The selected authentication method, either `profile-api` (default), `cookie`, or `docs-api`.\n */\n @property({ attribute: 'auth-method' })\n authMethod = MASTHEAD_AUTH_METHOD.DEFAULT;\n\n /**\n * The user authentication status.\n */\n @property({ attribute: 'user-status' })\n userStatus =\n this.authMethod === MASTHEAD_AUTH_METHOD.DEFAULT\n ? UNAUTHENTICATED_STATUS\n : CLOUD_UNAUTHENTICATED_STATUS;\n\n get userIsAuthenticated(): boolean {\n const { userStatus } = this;\n return (\n userStatus !== UNAUTHENTICATED_STATUS &&\n userStatus !== CLOUD_UNAUTHENTICATED_STATUS\n );\n }\n\n /**\n * A reference to the c4d-masthead element.\n */\n @query(`${c4dPrefix}-masthead`)\n mastheadRef;\n\n /**\n * Resize observer to trigger container height recalculations.\n *\n * @private\n */\n private _heightResizeObserver = new ResizeObserver(\n this._resizeObserverCallback.bind(this)\n );\n\n /**\n * Prevents resize observer from blocking main thread.\n */\n private _resizeObserverThrottle?: NodeJS.Timeout;\n\n /**\n * Throttled callback for _heightResizeObserver.\n */\n protected _resizeObserverCallback() {\n clearTimeout(this._resizeObserverThrottle);\n this._resizeObserverThrottle = setTimeout(\n this._setContainerHeight.bind(this),\n 100\n );\n }\n\n /**\n * Sets root element's height equal to the height of the fixed masthead elements.\n */\n protected _setContainerHeight() {\n const { mastheadRef } = this;\n if (mastheadRef) {\n this.style.display = 'block';\n this.style.height = `${mastheadRef.getBoundingClientRect().height}px`;\n }\n }\n\n firstUpdated() {\n const { language, dataEndpoint } = this;\n globalInit();\n if (language) {\n this._setLanguage?.(language);\n }\n this._loadTranslation?.(language, dataEndpoint).catch(() => {}); // The error is logged in the Redux store\n if (this.userStatus === UNAUTHENTICATED_STATUS) {\n this._loadUserStatus?.(this.authMethod);\n }\n\n // This is a temp fix until we figure out why we can't set styles to the :host(c4d-masthead-container) in stylesheets\n this.style.zIndex = '900';\n this.style.position = 'relative';\n\n // Allows conditional rendering of left/top navs.\n layoutBreakpoint.addEventListener('change', () => {\n this._isMobileVersion = layoutBreakpoint.matches;\n this.requestUpdate();\n });\n\n // Keep render root's height in sync with c4d-masthead.\n this._heightResizeObserver.observe(this.mastheadRef);\n\n const mastheadHasLanguageSelector = this.querySelector(\n `${c4dPrefix}-masthead[has-language-selector]`\n );\n\n if (mastheadHasLanguageSelector) {\n this.hasLanguageSelector = 'true';\n } else {\n this.hasLanguageSelector = 'false';\n }\n }\n\n updated(changedProperties) {\n if (\n changedProperties.has('language') ||\n changedProperties.has('dataEndpoint')\n ) {\n const { language, dataEndpoint } = this;\n if (language) {\n this._setLanguage?.(language);\n this._loadTranslation?.(language, dataEndpoint).catch(() => {}); // The error is logged in the Redux store\n }\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this._heightResizeObserver.disconnect();\n }\n\n render() {\n const {\n _isMobileVersion: isMobileVersion,\n activateSearch,\n mastheadAssistiveText,\n skipToContentText,\n skipToContentHref,\n } = this;\n\n return html`\n ${isMobileVersion ? this._renderLeftNav() : ''}\n <c4d-masthead\n has-language-selector\n ?has-l1=${this.l1Data}\n aria-label=\"${ifNonEmpty(mastheadAssistiveText)}\">\n <c4d-skip-to-content\n href=\"${skipToContentHref}\"\n link-assistive-text=\"${skipToContentText}\"></c4d-skip-to-content>\n ${isMobileVersion ? this._renderMenuButton() : ''} ${this._renderLogo()}\n ${this._renderPlatformTitle()}\n ${!isMobileVersion ? this._renderTopNav() : ''} ${this._renderSearch()}\n <c4d-masthead-global-bar ?has-search-active=${activateSearch}>\n ${this._renderContact()}\n ${this._renderCart()}${this._renderLanguageSelector()}\n ${this._renderProfileMenu()}\n </c4d-masthead-global-bar>\n ${this._renderL1()}\n <c4d-megamenu-overlay></c4d-megamenu-overlay>\n </c4d-masthead>\n `;\n }\n\n protected createRenderRoot() {\n return this;\n }\n\n /**\n * The name of the CSS custom property to track bottom edge position.\n */\n static get customPropertyL0BottomEdge() {\n return `--${c4dPrefix}-masthead-l0-bottom-edge`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DMastheadComposite;\n"],"mappings":"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","ignoreList":[]}
|