{"version":3,"file":"js/component-headerNavigation.chunk.js","mappings":"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","sources":["webpack:///./assets/common/src/scripts/base/baseComponent.ts","webpack:///./assets/common/src/scripts/components/headerNavigation.ts"],"sourcesContent":["import Bean from 'bean';\nimport deepFreeze from '../utilities/freeze';\nimport CommonInterface from './commonInterface';\nexport default class BaseComponent extends CommonInterface {\n    /**\n     *\n     * constructor\n     *\n     * @param {Element} element\n     */\n    constructor(element) {\n        super();\n        this._componentElement = element;\n        this._componentElement.setAttribute('data-component-init', 'true');\n        this._checkMessages();\n    }\n    /**\n     * @returns {HTMLElement}\n     */\n    get $el() {\n        return this._componentElement;\n    }\n    get $options() {\n        const compOptions = {};\n        const options = Object.assign({}, this.$el.dataset);\n        const optionsEntires = Object.keys(options).filter((entry) => entry.includes('option'));\n        optionsEntires.forEach((entry) => {\n            const cleanEntry = BaseComponent.cleanOptionKey(entry);\n            let optionValue;\n            if (options[entry].includes('{') && options[entry].includes('}')) {\n                optionValue = JSON.parse(options[entry].replace(/'/g, '\"'));\n            }\n            else {\n                optionValue = BaseComponent.convertType(options[entry]);\n            }\n            compOptions[cleanEntry] = optionValue;\n        });\n        return deepFreeze(compOptions);\n    }\n    get COMPONENT_NAME() {\n        return this.__proto__.constructor.name;\n    }\n    static convertType(option) {\n        let optionReturn;\n        switch (option) {\n            case 'false':\n                optionReturn = false;\n                break;\n            case 'true':\n                optionReturn = true;\n                break;\n            case 'null':\n                optionReturn = null;\n                break;\n            default:\n                optionReturn = option;\n                break;\n        }\n        return optionReturn;\n    }\n    static cleanOptionKey(key) {\n        const str = key.replace('option', '');\n        return `${str.charAt(0).toLocaleLowerCase()}${str.slice(1)}`;\n    }\n    /**\n     *\n     * $on\n     *\n     * @param {String} events\n     * @param {Function} cb\n     * @param {Element} [element = this.$el]\n     * @param {Array|String|Element} [elements = null]\n     */\n    $on(events, cb, element = this.$el, elements = null) {\n        if (!element || !events || !cb)\n            return;\n        if (!elements) {\n            Bean.on(element, events, (e) => {\n                if (e)\n                    e.stopPropagation();\n                cb(e);\n            });\n        }\n        else {\n            Bean.on(element, events, elements, (e) => {\n                if (e)\n                    e.stopPropagation();\n                cb(e);\n            });\n        }\n    }\n    /**\n     *\n     * $one\n     *\n     * @param {String} events\n     * @param {Function} cb\n     * @param {Element} [element = this.$el]\n     */\n    $one(events, cb, element = this.$el) {\n        Bean.one(element, events, cb);\n    }\n    /**\n     *\n     * $off\n     *\n     * @param {String} events\n     * @param {Element} [element = this.$el]\n     */\n    $off(events, element = this.$el) {\n        Bean.off(element, events);\n    }\n    /**\n     *\n     * $fire\n     *\n     * @param {String} events\n     * @param {Element} [element = this.$el]\n     */\n    $fire(events, element = this.$el) {\n        Bean.fire(element, events);\n    }\n}\n","import analytics from '@utils/analytics';\nimport * as focusTrap from 'focus-trap';\nimport whatInput from 'what-input';\nimport BaseComponent from '../base/baseComponent';\nexport default class headerNavigation extends BaseComponent {\n    constructor(element) {\n        super(element);\n        this.clickEvent = (e) => {\n            const currentInput = whatInput.ask();\n            if (currentInput === 'keyboard' || currentInput === 'touch' || document.body.classList.contains('keyboard-mode')) {\n                e.preventDefault();\n                const clickedLink = e.currentTarget;\n                analytics.firstLevelClick(clickedLink.dataset.gtmEvent);\n                const { trap } = this.menuTraps.find((trap) => trap.el === clickedLink);\n                if (trap) {\n                    if (clickedLink.getAttribute('aria-expanded') === 'true') {\n                        trap.deactivate();\n                    }\n                    else {\n                        trap.activate();\n                    }\n                }\n            }\n        };\n        this.toggleFirstLevel = (el) => {\n            this.EMIT(this.CUSTOM_MESSAGES.BODY.TOGGLE_OVERLAY, {});\n            el.setAttribute('aria-expanded', el.getAttribute('aria-expanded') === 'true' ? 'false' : 'true');\n            el.parentElement.classList.toggle(this.CLASSES.open);\n        };\n        this.enterEvent = (e) => {\n            if (whatInput.ask() != 'touch') {\n                const hoveredLi = e.currentTarget;\n                const containerSubmenu = hoveredLi.lastElementChild.firstElementChild;\n                const containerSubmenuHeight = containerSubmenu ? `${containerSubmenu.offsetHeight}px` : null;\n                if (!this.isExpanded) {\n                    this.$el.classList.add('no-transition');\n                    setTimeout(() => {\n                        this.$el.classList.remove('no-transition');\n                    }, 300);\n                    this.isExpanded = true;\n                    this.menuWrapper.classList.add(this.CLASSES.expanded);\n                    this.EMIT(this.CUSTOM_MESSAGES.BODY.ON_OVERLAY, {});\n                    if (containerSubmenuHeight) {\n                        this.allSubmenu.forEach((current) => {\n                            current.style.height = containerSubmenuHeight;\n                        });\n                    }\n                    hoveredLi.classList.add(this.CLASSES.open);\n                    hoveredLi.firstElementChild.setAttribute('aria-expanded', 'true');\n                }\n                else {\n                    const lastOpen = this.firstLevelLi.find((li) => li.classList.contains(this.CLASSES.open));\n                    const lastMenuWrapper = lastOpen.lastElementChild;\n                    lastMenuWrapper.style.transitionProperty = 'none';\n                    // del nuovo li che devo aprire animo solo l'altezza\n                    const currentMenuWrapper = hoveredLi.lastElementChild;\n                    currentMenuWrapper.style.transitionProperty = 'height';\n                    lastOpen.firstElementChild.setAttribute('aria-expanded', 'false');\n                    hoveredLi.firstElementChild.setAttribute('aria-expanded', 'true');\n                    // e alla fine tolgo l'open da quello precedente\n                    lastOpen.classList.remove(this.CLASSES.open);\n                    hoveredLi.classList.add(this.CLASSES.open);\n                    // metto la nuova altezza\n                    if (containerSubmenuHeight) {\n                        this.allSubmenu.forEach((current) => {\n                            current.style.height = containerSubmenuHeight;\n                        });\n                    }\n                    // dopo 300ms tolgo la transition only height\n                    setTimeout(() => {\n                        currentMenuWrapper.style.removeProperty('transition-property');\n                        lastMenuWrapper.style.removeProperty('transition-property');\n                    }, 300);\n                }\n            }\n        };\n        this.leaveEvent = (e) => {\n            var _a, _b, _c;\n            if (whatInput.ask() != 'touch') {\n                const matchFirst = (_a = e.relatedTarget) === null || _a === void 0 ? void 0 : _a.matches(this.SELECTORS.firstLevelLinks);\n                if (!e.relatedTarget || !this.menuWrapper.contains(e.relatedTarget) || !matchFirst) {\n                    this.$el.classList.add('delay-transition');\n                    setTimeout(() => {\n                        this.$el.classList.remove('delay-transition');\n                    }, 300);\n                    this.isExpanded = false;\n                    this.menuWrapper.classList.remove(this.CLASSES.expanded);\n                    this.EMIT(this.CUSTOM_MESSAGES.BODY.OFF_OVERLAY, {});\n                    // resetto le altezza in uscita\n                    this.allSubmenu.forEach((current) => {\n                        current.style.height = `${current.firstElementChild.offsetHeight}px`;\n                    });\n                    const isCloseButton = (_b = e.currentTarget) === null || _b === void 0 ? void 0 : _b.matches(this.SELECTORS.closeButton);\n                    let parentMenuItem = null;\n                    if (isCloseButton) {\n                        parentMenuItem = e.currentTarget.closest(this.SELECTORS.firstLevelLi);\n                    }\n                    const hoveredLi = parentMenuItem || e.currentTarget;\n                    hoveredLi.classList.remove(this.CLASSES.open);\n                    (_c = hoveredLi.querySelector(this.SELECTORS.firstLevelLinks)) === null || _c === void 0 ? void 0 : _c.setAttribute('aria-expanded', 'false');\n                }\n            }\n        };\n        this.closeButtonClick = (e, lastOpen) => {\n            const firstLevelLink = lastOpen.querySelector('a' + this.SELECTORS.firstLevelLinks);\n            const { trap } = this.menuTraps.find((trap) => trap.el === firstLevelLink);\n            if (trap) {\n                trap.deactivate();\n            }\n        };\n        this.mobileClick = (e) => {\n            var _a;\n            //check if is voice has sub menu\n            const currentHeading = e.currentTarget;\n            if (Boolean(currentHeading.getAttribute('aria-haspopup'))) {\n                //then prevent link navigation\n                e.preventDefault();\n            }\n            this.accountWrapper.forEach((el) => {\n                el.classList.add(this.CLASSES.hide);\n            });\n            if (this.nav.classList.contains(this.CLASSES.open)) {\n                this.menuTitle.classList.add(this.CLASSES.show);\n            }\n            if (currentHeading.matches(this.SELECTORS.firstLevelLinks)) {\n                this.firstLevelClicked = currentHeading;\n                const url = currentHeading.getAttribute('data-href') || currentHeading.getAttribute('href') || 'javascript:;';\n                this.titleText.setAttribute('href', url);\n                this.titleText.innerHTML = currentHeading.innerHTML;\n                if (this.menuOpen && this.nav.classList.contains(this.CLASSES.open)) {\n                    currentHeading.setAttribute('aria-expanded', 'true');\n                }\n                else {\n                    currentHeading.setAttribute('aria-expanded', 'false');\n                }\n                if (this.nav.classList.contains(this.CLASSES.open)) {\n                    this.nav.classList.add(this.CLASSES.firstLevel);\n                    this.menuBack.focus();\n                    const accordionList = document.querySelectorAll('button.submenu-heading');\n                    accordionList === null || accordionList === void 0 ? void 0 : accordionList.forEach((el) => {\n                        const panelId = el === null || el === void 0 ? void 0 : el.getAttribute('aria-controls');\n                        const subcategoriesList = document.getElementById(panelId);\n                        if (!subcategoriesList) {\n                            return;\n                        }\n                        subcategoriesList.parentElement.setAttribute('aria-hidden', 'true');\n                        const subcategoryListItem = subcategoriesList.querySelectorAll('.submenu-item');\n                        subcategoryListItem.forEach((el) => {\n                            el.setAttribute('tabindex', '-1');\n                        });\n                    });\n                }\n                if (this.menuWrapper) {\n                    this.menuWrapper.scrollTop = 0;\n                }\n                analytics.firstLevelClick(currentHeading.dataset.gtmEvent);\n            }\n            else if (currentHeading.matches(this.SELECTORS.secondLevelLinks)) {\n                if (this.nav.classList.contains(this.CLASSES.open) && this.nav.classList.contains(this.CLASSES.firstLevel)) {\n                    this.nav.classList.add(this.CLASSES.secondLevel);\n                }\n                // toggle accordion second level\n                const accordionList = document.querySelectorAll('button.submenu-heading');\n                accordionList === null || accordionList === void 0 ? void 0 : accordionList.forEach((el) => {\n                    const panelId = el === null || el === void 0 ? void 0 : el.getAttribute('aria-controls');\n                    const subcategoriesList = document.getElementById(panelId);\n                    if (!subcategoriesList) {\n                        return;\n                    }\n                    subcategoriesList.parentElement.setAttribute('aria-hidden', 'false');\n                    const subcategoryListItem = subcategoriesList.querySelectorAll('.submenu-item');\n                    subcategoryListItem.forEach((el) => {\n                        el.setAttribute('tabindex', '0');\n                    });\n                    const isClosing = currentHeading.getAttribute('aria-expanded') === 'true';\n                    if (el != currentHeading || isClosing) {\n                        subcategoriesList.parentElement.style.height = '';\n                        el === null || el === void 0 ? void 0 : el.setAttribute('aria-expanded', 'false');\n                        setTimeout(() => {\n                            subcategoriesList.parentElement.setAttribute('aria-hidden', 'true');\n                            const subcategoryListItem = subcategoriesList.querySelectorAll('.submenu-item');\n                            subcategoryListItem.forEach((el) => {\n                                el.setAttribute('tabindex', '-1');\n                            });\n                        }, 500);\n                    }\n                    else {\n                        this.secondLevelClicked = currentHeading;\n                        let listHeight = subcategoriesList === null || subcategoriesList === void 0 ? void 0 : subcategoriesList.offsetHeight;\n                        subcategoriesList.parentElement.style.height = listHeight + 'px';\n                        subcategoriesList.parentElement.setAttribute('aria-hidden', 'false');\n                        const subcategoryListItem = subcategoriesList.querySelectorAll('.submenu-item');\n                        subcategoryListItem.forEach((el) => {\n                            el.setAttribute('tabindex', '0');\n                        });\n                        currentHeading.setAttribute('aria-expanded', 'true');\n                    }\n                });\n                analytics.secondLevelClick((_a = this.firstLevelClicked) === null || _a === void 0 ? void 0 : _a.dataset.gtmEvent, currentHeading === null || currentHeading === void 0 ? void 0 : currentHeading.dataset.gtmEvent);\n            }\n        };\n        this.closeMobile = () => {\n            document.body.classList.remove('is-fixed');\n            window.scroll(0, this.scrollTop);\n            document.documentElement.style.scrollBehavior = 'smooth';\n            visualViewport.onresize = null;\n            this.menuOpen.setAttribute('aria-expanded', 'false');\n            this.nav.classList.remove(this.CLASSES.open);\n            document.body.classList.remove(this.CLASSES.noOverflow);\n            this.menuTitle.classList.remove(this.CLASSES.show);\n            this.menuOpen.focus();\n            // resetto lo stato iniziale del menu\n            setTimeout(() => {\n                this.accountWrapper.forEach((el) => {\n                    el.classList.remove(this.CLASSES.hide);\n                });\n                this.submenuToggler.forEach((el) => {\n                    el.setAttribute('aria-expanded', 'false');\n                });\n                this.nav.classList.remove(this.CLASSES.firstLevel);\n                this.nav.classList.remove(this.CLASSES.secondLevel);\n                this.firstLevelClicked = null;\n                this.secondLevelClicked = null;\n            }, 300);\n            if (this.secondLevelClicked && this.firstLevelClicked) {\n                analytics.closeMenuFromThirdLevel(this.firstLevelClicked.dataset.gtmEvent, this.secondLevelClicked.dataset.gtmEvent);\n            }\n            else if (this.firstLevelClicked) {\n                analytics.closeMenuFromSecondLevel(this.firstLevelClicked.dataset.gtmEvent);\n            }\n            else {\n                analytics.closeMenuFromFirstLevel();\n            }\n        };\n        this.mobileBack = () => {\n            this.accountWrapper.forEach((el) => {\n                el.classList.remove(this.CLASSES.hide);\n            });\n            this.menuTitle.classList.remove(this.CLASSES.show);\n            // back from 2nd level\n            if (this.secondLevelClicked && this.firstLevelClicked) {\n                if (this.secondLevelClicked.getAttribute('aria-expanded') == 'true') {\n                    const panelId = this.secondLevelClicked.getAttribute('aria-controls') || '';\n                    const subcategoriesList = document.getElementById(panelId);\n                    if (subcategoriesList) {\n                        subcategoriesList.parentElement.style.height = '';\n                        subcategoriesList.parentElement.setAttribute('aria-hidden', 'true');\n                        const subcategoryListItem = subcategoriesList.querySelectorAll('.submenu-item');\n                        subcategoryListItem.forEach((el) => {\n                            el.setAttribute('tabindex', '-1');\n                        });\n                        this.secondLevelClicked.setAttribute('aria-expanded', 'false');\n                    }\n                }\n                this.nav.classList.remove(this.CLASSES.secondLevel);\n                analytics.backFromThirdLevel(this.firstLevelClicked.dataset.gtmEvent, this.secondLevelClicked.dataset.gtmEvent);\n                this.secondLevelClicked = null;\n            }\n            // back from 1st level\n            if (this.firstLevelClicked) {\n                this.nav.classList.remove(this.CLASSES.firstLevel);\n                analytics.backFromSecondLevel(this.firstLevelClicked.dataset.gtmEvent);\n                this.firstLevelClicked.setAttribute('aria-expanded', 'false');\n                setTimeout(() => {\n                    this.firstLevelClicked.focus();\n                    this.firstLevelClicked = null;\n                }, 100);\n            }\n        };\n        // this.mobileOnlyListerners = false;\n        this.scrollTop = 0;\n        this.isDesktop = window.isDesktop();\n        this.desktopNavigation();\n        this.mobileNavigation();\n        this.isLandscape = window.innerWidth > window.mqObj.md;\n    }\n    get Messages() {\n        return {\n            [this.CUSTOM_MESSAGES.BREAKPOINTER.BREAKPOINT_CHANGE]: this.onBreakpointChange,\n        };\n    }\n    get SELECTORS() {\n        return {\n            firstLevelLinks: '.menu-heading',\n            secondLevelLinks: '.submenu-heading:not(.third-level)',\n            thirdLevelLinks: '.submenu-heading.third-level',\n            firstLevelLi: '.menu-item',\n            menuWrapper: '.menu-wrapper',\n            navigation: '.navigation',\n            menuOpen: '[data-menu-open]',\n            menuClose: '[data-menu-close]',\n            menuBack: '[data-menu-back]',\n            submenuToggler: '.menu-wrapper [aria-expanded]',\n            account: '.account-wrapper',\n            menuTitle: '.menu-title',\n            mobileDialog: '#mainnav',\n            wrapperSubmenu: '.wrapper-submenu',\n            closeButton: '.menu-button-close',\n        };\n    }\n    get CLASSES() {\n        return {\n            open: 'open',\n            // overlay: 'overlay',\n            show: 'show',\n            hide: 'hide',\n            expanded: 'expanded',\n            noOverflow: 'no-overflow',\n            firstLevel: 'first-level',\n            secondLevel: 'second-level',\n        };\n    }\n    desktopNavigation() {\n        if (this.isDesktop) {\n            this.firstLevelLinks = this.$el.querySelectorAll('a' + this.SELECTORS.firstLevelLinks);\n            if (!this.firstLevelLi) {\n                this.firstLevelLi = [];\n            }\n            if (!this.menuTraps) {\n                this.menuTraps = [];\n            }\n            if (!this.menuWrapper) {\n                this.menuWrapper = this.$el.querySelector(this.SELECTORS.menuWrapper);\n            }\n            if (!this.allSubmenu) {\n                this.allSubmenu = document.querySelectorAll(this.SELECTORS.wrapperSubmenu);\n            }\n            this.allSubmenu.forEach((current) => {\n                current.style.height = `${current.firstElementChild.offsetHeight}px`;\n            });\n            this.menuWrapper.style.removeProperty('height');\n            if (this.firstLevelLinks.length > 0) {\n                // gestione navigazione da tastiera\n                this.firstLevelLinks.forEach((el) => {\n                    this.firstLevelLi.push(el.parentElement);\n                    // init traps\n                    const trap = focusTrap.createFocusTrap(el.nextElementSibling, {\n                        onDeactivate: () => {\n                            this.toggleFirstLevel(el);\n                        },\n                        onActivate: () => this.toggleFirstLevel(el),\n                        clickOutsideDeactivates: (e) => {\n                            if (e.target === el || (e.target.tagName.toLowerCase() === 'span' && e.target.parentElement === el)) {\n                                return false;\n                            }\n                            else {\n                                return true;\n                            }\n                        },\n                        fallbackFocus: () => {\n                            return el.nextElementSibling.querySelector('a');\n                        },\n                    });\n                    this.menuTraps.push({ el, trap });\n                    el.addEventListener('click', this.clickEvent);\n                });\n                // gestione mouse enter/leave\n                this.firstLevelLi.forEach((el) => {\n                    el.addEventListener('mouseenter', this.enterEvent);\n                    el.addEventListener('mouseleave', this.leaveEvent);\n                    const closeButton = el.querySelector(this.SELECTORS.closeButton);\n                    if (closeButton) {\n                        closeButton.addEventListener('click', (e) => this.closeButtonClick(e, el));\n                    }\n                });\n            }\n        }\n        else {\n            // Cleanup listeners\n            if (this.firstLevelLinks) {\n                this.firstLevelLinks.forEach((el) => {\n                    el.removeEventListener('click', this.clickEvent);\n                });\n                this.firstLevelLi.forEach((el) => {\n                    el.removeEventListener('mouseenter', this.enterEvent);\n                    el.removeEventListener('mouseleave', this.leaveEvent);\n                });\n                this.allSubmenu.forEach((current) => {\n                    current.style.removeProperty('height');\n                });\n            }\n        }\n    }\n    mobileNavigation() {\n        if (!this.isDesktop) {\n            if (!this.nav) {\n                this.nav = this.$el.querySelector(this.SELECTORS.navigation);\n            }\n            if (!this.menuOpen) {\n                this.menuOpen = this.$el.querySelector(this.SELECTORS.menuOpen);\n            }\n            if (!this.menuClose) {\n                this.menuClose = this.$el.querySelector(this.SELECTORS.menuClose);\n            }\n            if (!this.submenuToggler) {\n                this.submenuToggler = this.$el.querySelectorAll(this.SELECTORS.submenuToggler);\n            }\n            if (!this.mobileDialog) {\n                this.mobileDialog = this.$el.querySelector(this.SELECTORS.mobileDialog);\n                this.mobileDialog.setAttribute('role', 'dialog');\n            }\n            this.mobileTrap = focusTrap.createFocusTrap(['.menu-wrapper'], {\n                onDeactivate: this.closeMobile,\n                fallbackFocus: '.menu-close',\n                initialFocus: '.menu-close',\n                clickOutsideDeactivates: true,\n            });\n            //inizializzo il menu con tutti i submenus chiusi\n            this.submenuToggler.forEach((el) => {\n                el.setAttribute('aria-expanded', 'false');\n            });\n            this.firstLevelLinks = this.$el.querySelectorAll('a' + this.SELECTORS.firstLevelLinks);\n            this.firstLevelLinks.forEach((el) => {\n                var _a, _b;\n                el.setAttribute('aria-haspopup', 'true');\n                (_a = el.nextElementSibling) === null || _a === void 0 ? void 0 : _a.removeAttribute('role');\n                (_b = el.nextElementSibling) === null || _b === void 0 ? void 0 : _b.removeAttribute('aria-labelledby');\n            });\n            if (!this.accountWrapper) {\n                this.accountWrapper = this.$el.querySelectorAll(this.SELECTORS.account);\n            }\n            if (!this.menuTitle) {\n                this.menuTitle = this.$el.querySelector(this.SELECTORS.menuTitle);\n            }\n            if (!this.titleText) {\n                this.titleText = this.menuTitle.querySelector('a');\n            }\n            if (!this.menuBack) {\n                this.menuBack = this.$el.querySelector(this.SELECTORS.menuBack);\n            }\n            if (!this.headings) {\n                this.headings = this.$el.querySelectorAll(`${this.SELECTORS.firstLevelLinks}, ${this.SELECTORS.secondLevelLinks}`);\n            }\n            this.headings.forEach((el) => {\n                el.addEventListener('click', this.mobileClick);\n            });\n            // questi listeners devono essere aggiunti 1 volta sola\n            if (!this.mobileOnlyListerners) {\n                this.mobileOnlyListerners = true;\n                this.titleText.addEventListener('click', (e) => {\n                    var _a, _b;\n                    const firstSectionClicked = (_a = this.firstLevelClicked) === null || _a === void 0 ? void 0 : _a.dataset.gtmEvent;\n                    const secondSectionClicked = (_b = this.secondLevelClicked) === null || _b === void 0 ? void 0 : _b.dataset.gtmEvent;\n                    // we assume that is an FLP (but it could not be)\n                    analytics.thirdLevelClick(firstSectionClicked, secondSectionClicked, 'flp');\n                });\n                this.menuBack.addEventListener('click', this.mobileBack);\n                this.menuOpen.addEventListener('click', () => {\n                    if (!this.isLandscape) {\n                        document.documentElement.style.scrollBehavior = 'auto';\n                        this.scrollTop = window.scrollY;\n                        window.scroll(0, this.scrollTop);\n                    }\n                    this.menuOpen.setAttribute('aria-expanded', 'true');\n                    this.mobileDialog.setAttribute('aria-modal', 'true');\n                    this.mobileDialog.setAttribute('tabindex', '-1');\n                    this.nav.classList.add(this.CLASSES.open);\n                    // this.$el.classList.add(this.CLASSES.overlay);\n                    this.mobileTrap.activate();\n                    window.sprChat && window.sprChat('disable');\n                    analytics.header('menu');\n                    if (!this.menuWrapper) {\n                        this.menuWrapper = this.$el.querySelector(this.SELECTORS.menuWrapper);\n                    }\n                    if (this.menuWrapper && !this.isDesktop) {\n                        visualViewport.onresize = () => {\n                            if (!this.isDesktop) {\n                                this.menuWrapper.style.height = `${visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.height}px`;\n                            }\n                        };\n                        this.menuWrapper.style.height = `${visualViewport === null || visualViewport === void 0 ? void 0 : visualViewport.height}px`;\n                    }\n                    setTimeout(() => {\n                        document.body.classList.add(this.CLASSES.noOverflow);\n                    }, 250);\n                });\n                this.menuClose.addEventListener('click', () => {\n                    this.mobileTrap.deactivate();\n                    window.sprChat && window.sprChat('enable');\n                });\n            }\n        }\n        else {\n            // Cleanup listeners\n            if (this.nav) {\n                this.nav.classList.remove(this.CLASSES.open);\n                this.nav.classList.remove(this.CLASSES.firstLevel);\n                this.nav.classList.remove(this.CLASSES.secondLevel);\n                this.menuTitle.classList.remove(this.CLASSES.show);\n            }\n            if (this.mobileDialog) {\n                this.mobileDialog.removeAttribute('role');\n            }\n            if (!this.firstLevelLinks) {\n                this.firstLevelLinks = this.$el.querySelectorAll(this.SELECTORS.firstLevelLinks);\n            }\n            this.firstLevelLinks.forEach((el) => {\n                var _a, _b;\n                el.setAttribute('aria-haspopup', 'dialog');\n                (_a = el.nextElementSibling) === null || _a === void 0 ? void 0 : _a.setAttribute('role', 'dialog');\n                (_b = el.nextElementSibling) === null || _b === void 0 ? void 0 : _b.setAttribute('aria-labelledby', `${el.nextElementSibling.id}-title`);\n            });\n            document.body.classList.remove(this.CLASSES.noOverflow);\n            if (this.headings) {\n                this.headings.forEach((el) => {\n                    el.removeEventListener('click', this.mobileClick);\n                });\n            }\n            if (this.submenuToggler) {\n                this.submenuToggler.forEach((el) => {\n                    el.setAttribute('aria-expanded', 'false');\n                });\n            }\n        }\n    }\n    onBreakpointChange(br) {\n        // this.$log(br);\n        if (br.value > window.mqObj['sm']) {\n            this.isLandscape = true;\n        }\n        if (br.value >= window.mqObj['md'] && !this.isDesktop) {\n            this.isDesktop = true;\n            this.desktopNavigation();\n            this.mobileNavigation();\n            this.menuWrapper.style.removeProperty('height');\n        }\n        else if (br.value < window.mqObj['md'] && this.isDesktop) {\n            this.isDesktop = false;\n            this.desktopNavigation();\n            this.mobileNavigation();\n        }\n    }\n}\n"],"names":["BaseComponent","constructor","element","super","this","_componentElement","setAttribute","_checkMessages","$el","$options","compOptions","options","Object","assign","dataset","keys","filter","entry","includes","forEach","cleanEntry","cleanOptionKey","optionValue","JSON","parse","replace","convertType","COMPONENT_NAME","__proto__","name","static","option","optionReturn","key","str","charAt","toLocaleLowerCase","slice","$on","events","cb","elements","e","stopPropagation","$one","$off","$fire","headerNavigation","clickEvent","currentInput","document","body","classList","contains","preventDefault","clickedLink","currentTarget","gtmEvent","trap","menuTraps","find","el","getAttribute","deactivate","activate","toggleFirstLevel","EMIT","CUSTOM_MESSAGES","BODY","TOGGLE_OVERLAY","parentElement","toggle","CLASSES","open","enterEvent","hoveredLi","containerSubmenu","lastElementChild","firstElementChild","containerSubmenuHeight","offsetHeight","isExpanded","lastOpen","firstLevelLi","li","lastMenuWrapper","style","transitionProperty","currentMenuWrapper","remove","add","allSubmenu","current","height","setTimeout","removeProperty","menuWrapper","expanded","ON_OVERLAY","leaveEvent","_a","_b","_c","matchFirst","relatedTarget","matches","SELECTORS","firstLevelLinks","OFF_OVERLAY","parentMenuItem","closeButton","closest","querySelector","closeButtonClick","firstLevelLink","mobileClick","currentHeading","Boolean","accountWrapper","hide","nav","menuTitle","show","firstLevelClicked","url","titleText","innerHTML","menuOpen","firstLevel","menuBack","focus","accordionList","querySelectorAll","panelId","subcategoriesList","getElementById","scrollTop","secondLevelLinks","secondLevel","isClosing","secondLevelClicked","listHeight","closeMobile","window","scroll","documentElement","scrollBehavior","visualViewport","onresize","noOverflow","submenuToggler","mobileBack","isDesktop","desktopNavigation","mobileNavigation","isLandscape","innerWidth","mqObj","md","Messages","BREAKPOINTER","BREAKPOINT_CHANGE","onBreakpointChange","thirdLevelLinks","navigation","menuClose","account","mobileDialog","wrapperSubmenu","length","push","nextElementSibling","onDeactivate","onActivate","clickOutsideDeactivates","target","tagName","toLowerCase","fallbackFocus","addEventListener","removeEventListener","removeAttribute","id","headings","mobileTrap","initialFocus","mobileOnlyListerners","firstSectionClicked","secondSectionClicked","scrollY","sprChat","br","value"],"sourceRoot":""}