{"file":"patternlib-header-portal.entry.js","mappings":"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","names":[],"sources":["./src/components/patternlib-header-portal/patternlib-header-portal.scss?tag=patternlib-header-portal&encapsulation=shadow","./src/components/patternlib-header-portal/patternlib-header-portal.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.header-container {\n width: 100%;\n background-color: var(--color-white);\n box-sizing: border-box;\n -moz-user-select: none;\n -khtml-user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n\n &.sticky {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 50;\n }\n\n .partner-logo-devider {\n width: 2px;\n height: 44px;\n background-color: var(--color-steel-200);\n margin-right: var(--spacing-m);\n }\n\n .portal-name {\n @apply font-text-bold text-copy;\n color: var(--color-black);\n }\n\n .menu-button {\n border: none;\n outline: none;\n background: none;\n padding: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n\n .bar1,\n .bar2 {\n transition: 0.3s;\n -webkit-transform-origin: center;\n transform-origin: center;\n }\n\n &.mobile-menu-open {\n //close button\n .bar1 {\n -webkit-transform: rotate(45deg) translate(-8px, 8px);\n transform: rotate(45deg) translate(-8px, 8px);\n }\n .bar2 {\n -webkit-transform: rotate(-45deg) translate(-8px, -8px);\n transform: rotate(-45deg) translate(-8px, -8px);\n }\n }\n }\n\n .mobile-menu {\n position: relative;\n background-color: var(--color-steel-100);\n z-index: 50;\n height: calc(100vh - 70px);\n\n ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n }\n\n li {\n display: flex;\n justify-content: flex-start;\n flex-direction: column;\n margin: 0;\n padding: 0;\n @apply font-text-bold text-copy;\n }\n\n .mobile-menu-tabitem-wrapper {\n border-bottom: 1px solid var(--color-steel-400);\n\n &.subitem {\n background-color: var(--color-steel-200);\n }\n }\n\n .mobile-menu-expand-subitems-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 80px;\n cursor: pointer;\n }\n\n .mobile-menu-tabitem,\n .mobile-menu-subitem,\n .mobile-menu-sub-subitem {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n height: 80px;\n padding-right: 12px;\n overflow: hidden;\n cursor: pointer;\n\n span {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n\n .mobile-menu-sub-subitem {\n background-color: var(--color-steel-300);\n border-bottom: 1px solid var(--color-steel-400);\n padding: 0 24px 0 60px;\n }\n }\n\n .tabitem-menu {\n position: relative;\n background-color: var(--color-steel-100);\n width: 100%;\n z-index: 50;\n height: calc(100vh - 70px);\n\n /* Tablet+ */\n @media (min-width: theme('screens.sm')) {\n height: calc(100vh - 90px);\n }\n\n ul {\n list-style-type: none;\n margin: 0;\n padding: 0;\n }\n\n li {\n display: flex;\n justify-content: flex-start;\n flex-direction: column;\n margin: 0;\n padding: 0;\n font-family: var(--headline-font-family);\n font-size: var(--h4-font-size);\n }\n\n .tabitem-menu-tabitem-wrapper {\n display: flex;\n width: 224px;\n padding: 0 0 24px 0;\n cursor: pointer;\n\n .tabitem-menu-tabitem-underline {\n background-image: linear-gradient(to bottom, transparent 20%, var(--color-black) 21%);\n background-position: 0 1em;\n background-repeat: no-repeat;\n background-size: 0% 4px;\n transition: background-size 0.5s ease-in-out;\n text-transform: uppercase;\n line-height: 44px;\n\n &:hover {\n background-size: 100% 4px;\n transition-delay: 0s;\n }\n }\n }\n\n .tabitem-menu-subitem-container {\n display: flex;\n\n &:hover .tabitem-menu-tabitem-underline {\n background-size: 100% 4px;\n transition-delay: 0s;\n }\n\n .tabitem-menu-sub-subitem-container {\n position: relative;\n display: contents;\n\n ul {\n display: none;\n flex-direction: column;\n position: absolute;\n left: 448px;\n width: 100%;\n }\n\n li {\n font-size: 24px;\n }\n\n .tabitem-menu-sub-subitem-wrapper {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n padding: 0 0 24px 48px;\n cursor: pointer;\n width: 100%;\n min-height: 48px;\n\n &:hover {\n font-family: var(--headline-font-family);\n }\n }\n }\n\n &:hover .tabitem-menu-sub-subitem-container {\n ul {\n display: inline-flex;\n }\n }\n }\n }\n}\n\n.header-wrapper {\n position: relative;\n grid-template-columns: auto 1fr;\n\n @apply min-h-[70px] lg:min-h-[90px];\n\n /* has portal or partner logo */\n &.portal {\n grid-template-columns: auto auto;\n }\n}\n\n/* Tablet */\n@media (min-width: theme('screens.sm')) {\n .header-wrapper {\n gap: var(--spacing-xl);\n\n &.portal {\n grid-template-columns: auto auto 1fr;\n }\n }\n}\n\n/* Desktop */\n@media (min-width: theme('screens.lg')) {\n .header-wrapper {\n grid-template-columns: auto 1fr auto;\n\n &.portal {\n grid-template-columns: auto auto 1fr auto;\n }\n }\n}\n\n/* Selects any placed inside a slot */\n::slotted(patternlib-main-navigation) {\n @apply pt-4 pb-4;\n}\n\n.burger-wrapper {\n position: relative;\n display: inline-block;\n}\n.burger-wrapper patternlib-badge {\n position: absolute;\n top: 0px;\n right: -10px;\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { ClassNames, LhChangeItem, LhClickBrandLogo, LhMobileSearch, LhSticky } from '../../utils/interfaces';\n\nconst logo = (\n \n \n \n);\n\nexport interface SubitemsValue {\n label: string;\n items: [{ label: string; itemId: string }];\n itemId: string;\n}\n\n@Component({\n tag: 'patternlib-header-portal',\n styleUrl: 'patternlib-header-portal.scss',\n shadow: true,\n})\nexport class PatternlibHeaderPortal {\n private hasPartnerLogoSlot: boolean;\n private hasPortalName: boolean;\n private hasPortalNameOrPartnerLogo: boolean;\n private offsetTop: number;\n private tabElement: HTMLPatternlibTabsElement;\n private scrollPosition: number;\n private isStickyAndMenuisOpen = false;\n private hasMoreSlot: boolean;\n private hasSearchSlot: boolean;\n private initialRender = true;\n private lastOpendTab: number | string;\n\n @Element() hostElement: HTMLPatternlibHeaderPortalElement;\n\n /**\n * Set the padding for the header\n */\n @Prop() padding?: string;\n\n /**\n * Define the portal name\n */\n @Prop() portalName?: string = '';\n\n /**\n * Set the header to be sticky if the pageYOffset is greater than the header's offsetTop\n */\n @Prop() sticky?: boolean;\n\n /**\n * Set the header to be sticky by default\n */\n @Prop() stickyByDefault?: boolean;\n\n /**\n * Provide a path to the brand logo image file\n */\n @Prop() brandLogo: string;\n\n /**\n * Define the width of the more slot displayed in the mobile menu\n */\n @Prop() moreSlotWidth = 'auto';\n\n /**\n * Set state if mobile menu is opened or closed\n */\n @Prop({ mutable: true }) mobileMenuIsOpen = false;\n\n /**\n * If true the default padding values get applied.\n */\n @Prop() usePadding = false;\n\n /**\n * Internal state if header is sticky\n */\n @State() isSticky = false;\n\n /**\n * Internal state to save state if tab-item menu is opened or closed\n */\n @State() tabItemMenuIsOpen = false;\n\n /**\n * Internal state to save the TabItems\n */\n @State() tabItems: HTMLPatternlibTabsItemElement[] = [];\n\n /**\n * Internal state to save the tab-item's index\n */\n @State() tabItemIndex: number;\n\n /**\n * Internal state to save the tab-subitem's index\n */\n @State() subItemIndex: number;\n\n /**\n * Total number of unseen notifications. Is set by the notification-flyout-service\n */\n @State() unseenNotificationCount = 0;\n\n /*\n * watch 'portalName' and set it if it has changed or has been\n provided later (e.g. when translation is loaded)\n */\n @Watch('portalName')\n updateHasPortalName(): void {\n this.hasPortalName = this.portalName !== '' && this.portalName !== null;\n this.hasPortalNameOrPartnerLogo = this.hasPortalName || this.hasPartnerLogoSlot;\n }\n\n @Listen('lhUnseenNotificationCountChange')\n updateUnseenNotificationCount(evt) {\n if (evt.detail !== '') {\n this.unseenNotificationCount = evt.detail;\n }\n }\n\n async componentWillLoad(): Promise {\n this.hasPartnerLogoSlot = this.hostElement.querySelector('[slot=\"partner-logo\"]') !== null;\n this.tabElement = this.hostElement.querySelector('patternlib-tabs');\n this.hasPortalName = this.portalName !== '';\n this.hasPortalNameOrPartnerLogo = this.hasPortalName || this.hasPartnerLogoSlot;\n this.offsetTop = this.hostElement.offsetTop;\n this.hasMoreSlot = this.hostElement.querySelector('[slot=\"more\"]') !== null;\n this.hasSearchSlot = this.hostElement.querySelector('[slot=\"search\"]') !== null;\n\n if (this.tabElement != null) {\n this.tabElement.setAttribute('padding-top', '9px');\n }\n\n this.tabItems = Array.from(this.hostElement.querySelectorAll('patternlib-tabs-item'));\n }\n\n // Fix Firefox bug where initial offsetTop returns a negative value and force to set tab to active to check scroll overflow again.\n async componentDidLoad(): Promise {\n this.offsetTop = this.hostElement.offsetTop;\n\n let i = 0;\n for (const tab of this.tabItems) {\n if (tab.active) {\n await this.tabElement.setTabToActive(i);\n this.lastOpendTab = i;\n }\n i++;\n }\n }\n\n componentDidUpdate(): void {\n this.offsetTop = this.hostElement.offsetTop;\n }\n\n /**\n * Provide a method to be triggered if the pageYOffset is greater than the header's offsetTop.\n */\n @Event({ eventName: 'lhSticky' }) lhSticky: EventEmitter;\n\n /**\n * Provide a method to be triggered each time a tab is clicked.\n */\n @Event({ eventName: 'lhTabClick' }) tabClick: EventEmitter;\n /**\n * Provide a method to get the searchbox value when the search icon get clicked.\n */\n @Event({ eventName: 'lhMobileSearch' }) mobileSearch: EventEmitter;\n\n /**\n * Provide a method to get the searchbox value when the Enter key get pressed.\n */\n @Event({ eventName: 'lhMobileEnterPress' }) mobileEnterPress: EventEmitter;\n\n /**\n * Provide a method to be triggered each time the brand-logo is clicked.\n */\n @Event({ eventName: 'lhClickBrandLogo' }) clickBrandLogo: EventEmitter;\n\n @Listen('scroll', { target: 'window' })\n windowScroll(): void {\n const isOpen = this.mobileMenuIsOpen || this.tabItemMenuIsOpen;\n\n if (this.sticky) {\n if (window.pageYOffset > this.offsetTop && isOpen === false) {\n this.isSticky = true;\n this.lhSticky.emit({ isSticky: this.isSticky });\n } else if (window.pageYOffset <= this.offsetTop && isOpen === false) {\n this.isSticky = false;\n this.lhSticky.emit({ isSticky: this.isSticky });\n }\n }\n\n if (isOpen === false) {\n this.scrollPosition = window.pageYOffset;\n }\n }\n\n @Listen('lhChangeItem')\n handleTabChange(e): void {\n const itemId = e.detail.itemId;\n if (this.initialRender == false) {\n this.tabItems.map((tab, i) => {\n if (i === itemId || tab.itemId === itemId) {\n const index = i;\n if (this.mobileMenuIsOpen === false) {\n if (this.tabItems[index].subitems != undefined) {\n if (this.tabItemMenuIsOpen === false && this.tabItemIndex != index) {\n this.tabItemIndex = index;\n this.tabItemMenuIsOpen = true;\n if (this.sticky) {\n this.isSticky = true;\n this.isStickyAndMenuisOpen = true;\n this.lhSticky.emit({ isSticky: this.isSticky });\n }\n this.fixBodyPosition();\n } else if (this.tabItemMenuIsOpen && this.tabItemIndex != index) {\n this.tabItemIndex = index;\n } else if (this.tabItemMenuIsOpen && this.tabItemIndex === index) {\n this.tabItemMenuIsOpen = false;\n this.tabItemIndex = undefined;\n this.fixBodyPosition();\n }\n } else {\n this.tabItemMenuIsOpen = false;\n this.tabItemIndex = undefined;\n this.fixBodyPosition();\n if (this.lastOpendTab != itemId) {\n this.tabClick.emit({ itemId: itemId });\n this.lastOpendTab = itemId;\n }\n }\n } else {\n this.mobileMenuIsOpen = false;\n this.fixBodyPosition();\n }\n }\n });\n }\n this.initialRender = false;\n }\n\n @Listen('keydown', { target: 'document' })\n async handleEscapePress(e: KeyboardEvent): Promise {\n if (e.key === 'Escape') {\n if (this.mobileMenuIsOpen && this.tabItemMenuIsOpen === false) {\n this.handleMenuClick();\n } else if (this.mobileMenuIsOpen === false && this.tabItemMenuIsOpen) {\n await this.handleCloseTabItemMenu();\n }\n }\n }\n\n @Listen('lhEnterPress')\n handleEnterPress(e): void {\n const value = e.detail;\n this.mobileEnterPress.emit({ value: value });\n }\n\n /**\n * @deprecated Set the prop screenSize from outside (e.g. ResizeObserver)\n *\n * Will be removed with 3.0. Does nothing.\n *\n * @param {ScreenSize} _screen - The size of the Screen\n * @param _height\n */\n @Method()\n async setScreenSize(_screen: any, _height: number): Promise {\n // this.screenSize = screen;\n // this.screenHeight = height;\n }\n\n private fixBodyPosition(): void {\n const isSticky = this.isSticky || this.stickyByDefault;\n // Fix the body's position if the mobile menu is open and remove the property if mobile menu get closed\n if (this.isStickyAndMenuisOpen === false) {\n if ((this.mobileMenuIsOpen && isSticky) || (this.tabItemMenuIsOpen && isSticky)) {\n document.body.style.position = 'fixed';\n } else {\n document.body.style.position = '';\n // Set the scroll position back to last know position\n window.scrollTo(0, this.scrollPosition);\n }\n } else if (this.isStickyAndMenuisOpen) {\n if ((this.mobileMenuIsOpen && isSticky) || (this.tabItemMenuIsOpen && isSticky)) {\n document.body.style.position = 'fixed';\n } else {\n document.body.style.position = '';\n this.isStickyAndMenuisOpen = false;\n // Set the scroll position back to last know position\n if (this.scrollPosition <= this.offsetTop || this.scrollPosition === undefined) {\n this.isSticky = false;\n this.lhSticky.emit({ isSticky: this.isSticky });\n // Try to scroll to offsetTop\n window.scrollTo(0, this.offsetTop);\n } else {\n window.scrollTo(0, this.scrollPosition);\n }\n }\n }\n }\n\n private async closeMenus(): Promise {\n if (this.tabItemIndex != this.lastOpendTab) {\n await this.tabElement.setTabToActive(this.lastOpendTab);\n }\n this.tabItemMenuIsOpen = false;\n this.mobileMenuIsOpen = false;\n this.tabItemIndex = undefined;\n }\n\n private handleMenuClick = (): void => {\n this.mobileMenuIsOpen = !this.mobileMenuIsOpen;\n if (this.sticky) {\n this.isSticky = true;\n this.isStickyAndMenuisOpen = true;\n this.lhSticky.emit({ isSticky: this.isSticky });\n }\n this.fixBodyPosition();\n };\n\n private handleTabClick = (itemId: number | string, index2?: string | number, index3?: string | number) => async () => {\n if (itemId != undefined && index2 === undefined && index3 === undefined) {\n this.tabClick.emit({ itemId: itemId });\n this.lastOpendTab = itemId;\n await this.tabElement.setTabToActive(itemId);\n this.tabItemMenuIsOpen = false;\n this.mobileMenuIsOpen = false;\n this.tabItemIndex = undefined;\n this.fixBodyPosition();\n } else if (itemId != undefined && index2 != undefined && index3 === undefined) {\n this.tabClick.emit({ itemId: itemId, subitemId: index2 });\n this.lastOpendTab = itemId;\n this.tabItemMenuIsOpen = false;\n this.mobileMenuIsOpen = false;\n this.tabItemIndex = undefined;\n this.fixBodyPosition();\n } else if (itemId != undefined && index2 != undefined && index3 != undefined) {\n this.tabClick.emit({ itemId: itemId, subitemId: index2, subSubitemId: index3 });\n this.lastOpendTab = itemId;\n this.tabItemMenuIsOpen = false;\n this.mobileMenuIsOpen = false;\n this.tabItemIndex = undefined;\n this.fixBodyPosition();\n }\n };\n\n private handleCloseTabItemMenu = async (): Promise => {\n await this.closeMenus();\n this.fixBodyPosition();\n };\n\n private handleToggleSubitems = (index: number, index2?: number) => (): void => {\n if (index != undefined && index2 === undefined) {\n this.tabItems = this.tabItems.map((tab, i) => {\n if (i === index) {\n tab.subitemsAreCollapsed = !tab.subitemsAreCollapsed;\n } else {\n tab.subitemsAreCollapsed = true;\n }\n return tab;\n });\n } else if (index != undefined && index2 != undefined) {\n if (this.subItemIndex === index + index2) {\n this.subItemIndex = undefined;\n } else {\n this.subItemIndex = index + index2;\n }\n }\n };\n\n private handleBrandLogoClick = (): void => {\n this.clickBrandLogo.emit();\n };\n\n render(): any {\n const mobileMenuTabitemWrapperClassName = 'mobile-menu-tabitem-wrapper';\n\n const headerClass: ClassNames = {\n 'header-container': true,\n 'sticky': this.isSticky || this.stickyByDefault,\n 'px-[20px] desktop:px-[120px]': this.usePadding,\n };\n\n const headerWrapperClasses = {\n 'header-wrapper grid items-center h-full': true,\n 'portal': this.hasPortalNameOrPartnerLogo,\n };\n\n const portalNameClass: ClassNames = {\n 'portal-name': true,\n };\n\n const partnerLogoDeviderClass: ClassNames = {\n 'partner-logo-devider': true,\n };\n\n const menuButtonClass: ClassNames = {\n 'menu-button': true,\n 'mobile-menu-open': this.mobileMenuIsOpen,\n };\n\n const mobileMenuClass: ClassNames = {\n 'mobile-menu': true,\n };\n\n const mobileMenuTabitemWrapperClass: ClassNames = {\n [mobileMenuTabitemWrapperClassName]: true,\n };\n\n const mobileMenuTabitemClass: ClassNames = {\n 'mobile-menu-tabitem': true,\n 'overflow-hidden': true,\n };\n\n const mobileMenuExpandSubitemsIconClass: ClassNames = {\n 'mobile-menu-expand-subitems-icon': true,\n };\n\n const mobileMenuTabitemWrapperSubitemsClass: ClassNames = {\n [mobileMenuTabitemWrapperClassName]: true,\n subitem: true,\n };\n\n const mobileMenuSubSubitemClass: ClassNames = {\n 'mobile-menu-subitem': true,\n };\n\n const mobileMenuTabitemWrapperSubSubitemsClass: ClassNames = {\n [mobileMenuTabitemWrapperClassName]: true,\n 'mobile-menu-sub-subitem': true,\n };\n\n const tabitemMenuClass: ClassNames = {\n 'tabitem-menu': true,\n };\n\n const tabitemMenuTabitemWrapperClass: ClassNames = {\n 'tabitem-menu-tabitem-wrapper': true,\n };\n\n const tabitemMenuTabitemUnderlineClass: ClassNames = {\n 'tabitem-menu-tabitem-underline': true,\n };\n\n const tabitemMenuSubitemContainerClass: ClassNames = {\n 'tabitem-menu-subitem-container': true,\n };\n\n const tabitemMenuSubSubitemContainerClass: ClassNames = {\n 'tabitem-menu-sub-subitem-container': true,\n };\n\n const tabitemMenuSubSubitemWrapperClass: ClassNames = {\n 'tabitem-menu-sub-subitem-wrapper': true,\n };\n\n const headerContainerStyles = {\n boxShadow: this.isSticky || this.stickyByDefault ? 'var(--shadow-elevation-basic)' : undefined,\n padding: !this.usePadding ? this.padding : undefined,\n };\n\n const partnerLogoDeviderStyles = { marginLeft: this.hasPortalName ? 'var(--spacing-m)' : '0px' };\n\n const mobileMenuWrapperStyles = { gridTemplateRows: this.hasSearchSlot ? '80px 1fr 80px' : '1fr 80px' };\n\n const moreSlotStyles = { width: this.moreSlotWidth };\n\n const menuIcon = (\n \n );\n\n const closeIcon = (\n \n );\n\n const mobileMenu = (\n
\n
\n {this.hasSearchSlot && (\n
\n
\n \n
\n
\n )}\n\n
\n
    \n {this.tabItems\n .filter(x => x.show)\n .map((tabItem: HTMLPatternlibTabsItemElement, index: number) => {\n let _subitems: SubitemsValue[];\n\n if (tabItem.subitems != undefined) {\n _subitems = JSON.parse(tabItem.subitems);\n }\n\n const itemId = tabItem.itemId != undefined ? tabItem.itemId : index;\n\n const collapseSubitemsIconStyles = {\n transform: tabItem.subitemsAreCollapsed === false ? 'rotate(180deg)' : 'rotate(360deg)',\n };\n\n return (\n
  • \n \n {_subitems != undefined && tabItem.subitemsAreCollapsed === false && (\n
      \n {_subitems.map((item, index2: number) => {\n const collapseSubSubitemsIconStyles = {\n transform: this.subItemIndex === index + index2 ? 'rotate(180deg)' : 'rotate(360deg)',\n };\n const subitemId = item.itemId || index2;\n\n return (\n
    • \n \n {_subitems[index2].items != undefined && this.subItemIndex === index + index2 && (\n
        \n {_subitems[index2].items.map((item, index3: number) => {\n const subSubitemId = item.itemId || index3;\n return (\n
      • \n \n
        \n {item.label}\n
        \n
        \n
      • \n );\n })}\n
      \n )}\n
    • \n );\n })}\n
    \n )}\n
  • \n );\n })}\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n );\n\n const tabItemMenu = (\n
\n
{closeIcon}
\n
\n
\n
    \n {this.tabItems.map((tabItem: HTMLPatternlibTabsItemElement, index: number) => {\n if (index === this.tabItemIndex) {\n const _subitems = JSON.parse(tabItem.subitems);\n const itemId = tabItem.itemId != undefined ? tabItem.itemId : index;\n\n return (\n
  • \n \n
      \n {_subitems.map((item, index2: number) => {\n const subitemId = item.itemId || index2;\n return (\n
    • \n
      \n \n {_subitems[index2].items != undefined && (\n
      \n
        \n {_subitems[index2].items.map((item, index3: number) => {\n const subSubitemId = item.itemId || index3;\n return (\n
      • \n \n
      • \n );\n })}\n
      \n
      \n )}\n
      \n
    • \n );\n })}\n
    \n
  • \n );\n }\n })}\n
\n
\n
\n
\n );\n\n const additionals =\n this.hasMoreSlot && this.hasSearchSlot ? (\n
\n \n \n
\n ) : this.hasMoreSlot ? (\n \n ) : this.hasSearchSlot ? (\n \n ) : null;\n\n return (\n \n
\n
\n
\n {!this.brandLogo ? (\n
{logo}
\n ) : (\n \n )}\n
\n\n {this.hasPortalNameOrPartnerLogo && (\n
\n {this.hasPortalName && {this.portalName}}\n {this.hasPartnerLogoSlot &&
}\n {this.hasPartnerLogoSlot && }\n
\n )}\n\n
\n \n
\n\n {!this.mobileMenuIsOpen &&
{additionals}
}\n\n \n {menuIcon}\n
\n \n
{!this.mobileMenuIsOpen && }
\n {this.mobileMenuIsOpen && mobileMenu}\n {this.tabItemMenuIsOpen && tabItemMenu}\n
\n
\n );\n }\n}\n"],"version":3}