{"version":3,"sources":["webpack://xoom-visual-experience/./lib/js/components/header/index.js","webpack://xoom-visual-experience/webpack/bootstrap","webpack://xoom-visual-experience/webpack/runtime/compat get default export","webpack://xoom-visual-experience/webpack/runtime/define property getters","webpack://xoom-visual-experience/webpack/runtime/global","webpack://xoom-visual-experience/webpack/runtime/hasOwnProperty shorthand","webpack://xoom-visual-experience/webpack/runtime/make namespace object","webpack://xoom-visual-experience/webpack/runtime/node module decorator","webpack://xoom-visual-experience/webpack/runtime/runtimeId","webpack://xoom-visual-experience/webpack/runtime/jsonp chunk loading","webpack://xoom-visual-experience/webpack/startup"],"names":["$window","$","window","$html","document","documentElement","Header","prefix","Object","assign","this","getHeaderClasses","onKeyDown","bind","onClickIcon","onClickMenuItem","onResize","onFocusIn","$menuContainer","menuContainerClass","$menuIcon","menuIconClass","$subMenu","menuSubClass","$headerMenuBorder","headerMenuBorderClass","$mainMenu","menuUlClass","$header","headerClass","$menuAction","menuAction","on","menuItemAnchorClass","stopPropagation","menuActionClass","headerTopDistance","get","offsetTop","menuHeight","height","css","setMenuHeight","toggleClass","overflowHiddenFixedClass","attr","menuIconActiveClass","headerMenuBorderOpenClass","menuContainerExpandedClass","hasClass","removeClass","menuItemAnchorActiveClass","hideAll","$menuItem","$anchor","children","addClass","evt","keyCode","ESC_KEYCODE","toggleMenu","preventDefault","setActiveMenuItem","target","parent","has","activeElement","length","onDocumentReady","initHeader","__webpack_module_cache__","__webpack_require__","moduleId","exports","module","id","loaded","__webpack_modules__","call","m","n","getter","__esModule","d","a","definition","key","o","defineProperty","enumerable","g","globalThis","Function","e","obj","prop","prototype","hasOwnProperty","r","Symbol","toStringTag","value","nmd","paths","j","installedChunks","deferredModules","checkDeferredModules","checkDeferredModulesImpl","result","i","deferredModule","fulfilled","depId","splice","s","x","chunkLoadingGlobal","slice","webpackJsonpCallback","data","chunkId","chunkIds","moreModules","runtime","executeModules","resolves","push","parentChunkLoadingFunction","shift","apply","self"],"mappings":"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","file":"js/header.js","sourcesContent":["import $ from 'zepto';\nimport { onDocumentReady } from '../../main';\n\nimport { ESC_KEYCODE } from '../../utils/constants/keys';\nimport { stopPropagation } from '../../utils';\nimport { getHeaderClasses } from '../../utils/constants/classes';\nimport { hideAll } from '../legacy/tooltips';\n\nconst $window = $(window);\nconst $html = $(document.documentElement);\n\nexport default class Header {\n constructor(prefix) {\n Object.assign(this, getHeaderClasses(prefix));\n\n this.onKeyDown = this.onKeyDown.bind(this);\n this.onClickIcon = this.onClickIcon.bind(this);\n this.onClickMenuItem = this.onClickMenuItem.bind(this);\n this.onResize = this.onResize.bind(this);\n this.onFocusIn = this.onFocusIn.bind(this);\n }\n\n /**\n * Initialize header\n *\n * @returns {Header}\n */\n initHeader() {\n this.$menuContainer = $(`.${this.menuContainerClass}`);\n this.$menuIcon = $(`.${this.menuIconClass}`);\n this.$subMenu = $(`.${this.menuSubClass}`);\n this.$headerMenuBorder = $(`.${this.headerMenuBorderClass}`);\n this.$mainMenu = $(`.${this.menuContainerClass} > .${this.menuUlClass}`);\n this.$header = $(`.${this.headerClass}`);\n this.$menuAction = $(`.${this.menuAction}`);\n\n $window.on('keydown', this.onKeyDown);\n $window.on('resize', this.onResize);\n\n // Stop propagation for submenu achor items\n $(`.${this.menuItemAnchorClass}`).on('click', stopPropagation);\n\n // Toggle classes to elements when click on hamburger icon\n $(`.${this.menuActionClass}, .${this.menuContainerClass}`).on('click', this.onClickIcon);\n\n // Add/remove active class on submenu parent element\n $(`.${this.menuSubClass} > .${this.menuItemAnchorClass}`).on('click', this.onClickMenuItem);\n\n $html.on('focusin', this.onFocusIn);\n\n return this;\n }\n\n // #region actions\n /**\n * gives specific height to the menu container and menu\n *\n * @returns {Header}\n */\n setMenuHeight() {\n const headerTopDistance = this.$header.get(0) ? this.$header.get(0).offsetTop : 0;\n const menuHeight = $html.height() - (this.$header.height() + headerTopDistance);\n\n // Adding height to menu container based on body height to show the\n // black layer behind the menu dropdown section.\n this.$menuContainer.css({ height: menuHeight });\n this.$mainMenu.css('max-height', `${menuHeight}px`);\n\n return this;\n }\n\n /**\n * Toggle classes to menu elements\n *\n * @returns {Header}\n */\n toggleMenu() {\n this.setMenuHeight();\n\n // Add/remove class to HTML tag to remove the scroll behaviour while dropdown\n // menu is open\n $html.toggleClass(this.overflowHiddenFixedClass);\n this.$menuAction.attr('aria-expanded', false);\n // Add/remove classes to open and close menu\n this.$menuIcon.toggleClass(this.menuIconActiveClass);\n this.$headerMenuBorder.toggleClass(this.headerMenuBorderOpenClass);\n this.$menuContainer.toggleClass(this.menuContainerExpandedClass);\n\n if (this.$menuIcon.hasClass(this.menuIconActiveClass)) {\n this.$subMenu.removeClass(this.menuItemAnchorActiveClass);\n this.$menuAction.attr('aria-expanded', true);\n }\n\n // Close country picker popover components\n // to fix overlay elements when show mobile menu\n hideAll();\n\n return this;\n }\n\n /**\n * Gives active class to xvxMenuSub element\n *\n * @param {Zepto} $menuItem menu item to activate\n * @returns {Header}\n */\n setActiveMenuItem($menuItem) {\n const $anchor = $menuItem.children('a');\n if ($menuItem.hasClass(this.menuItemAnchorActiveClass)) {\n this.$subMenu.removeClass(this.menuItemAnchorActiveClass);\n $anchor.attr('aria-expanded', false);\n } else {\n this.$subMenu.removeClass(this.menuItemAnchorActiveClass);\n $menuItem.addClass(this.menuItemAnchorActiveClass);\n $anchor.attr('aria-expanded', true);\n }\n return this;\n }\n\n // #region event handlers\n onResize() {\n this.setMenuHeight();\n }\n\n onKeyDown(evt) {\n if (evt.keyCode === ESC_KEYCODE && $html.hasClass(this.overflowHiddenFixedClass)) {\n this.toggleMenu();\n }\n }\n\n onClickIcon(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n this.toggleMenu();\n }\n\n onClickMenuItem(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n\n this.setActiveMenuItem($(evt.target).parent());\n }\n\n onFocusIn(evt) {\n evt.preventDefault();\n evt.stopPropagation();\n if (this.$menuAction.attr('aria-expanded') === 'true') {\n if (this.$menuContainer.has(document.activeElement).length === 0) {\n this.toggleMenu();\n }\n }\n }\n}\n\nonDocumentReady('Header', () => {\n new Header('xvx-').initHeader();\n new Header('xppvx_').initHeader();\n});\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tif(__webpack_module_cache__[moduleId]) {\n\t\treturn __webpack_module_cache__[moduleId].exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 19;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// Promise = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t19: 0\n};\n\nvar deferredModules = [\n\t[9313,592]\n];\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\nvar checkDeferredModules = function() {\n\n};\nfunction checkDeferredModulesImpl() {\n\tvar result;\n\tfor(var i = 0; i < deferredModules.length; i++) {\n\t\tvar deferredModule = deferredModules[i];\n\t\tvar fulfilled = true;\n\t\tfor(var j = 1; j < deferredModule.length; j++) {\n\t\t\tvar depId = deferredModule[j];\n\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferredModules.splice(i--, 1);\n\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n\t\t}\n\t}\n\tif(deferredModules.length === 0) {\n\t\t__webpack_require__.x();\n\t\t__webpack_require__.x = function() {\n\n\t\t}\n\t}\n\treturn result;\n}\n__webpack_require__.x = function() {\n\t// reset startup function so it can be called again when more startup code is added\n\t__webpack_require__.x = function() {\n\n\t}\n\tchunkLoadingGlobal = chunkLoadingGlobal.slice();\n\tfor(var i = 0; i < chunkLoadingGlobal.length; i++) webpackJsonpCallback(chunkLoadingGlobal[i]);\n\treturn (checkDeferredModules = checkDeferredModulesImpl)();\n};\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\tvar executeModules = data[3];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0, resolves = [];\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tresolves.push(installedChunks[chunkId][0]);\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\tfor(moduleId in moreModules) {\n\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t}\n\t}\n\tif(runtime) runtime(__webpack_require__);\n\tparentChunkLoadingFunction(data);\n\twhile(resolves.length) {\n\t\tresolves.shift()();\n\t}\n\n\t// add entry modules from loaded chunk to deferred list\n\tif(executeModules) deferredModules.push.apply(deferredModules, executeModules);\n\n\t// run deferred modules when all chunks ready\n\treturn checkDeferredModules();\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkxoom_visual_experience\"] = self[\"webpackChunkxoom_visual_experience\"] || [];\nvar parentChunkLoadingFunction = chunkLoadingGlobal.push.bind(chunkLoadingGlobal);\nchunkLoadingGlobal.push = webpackJsonpCallback;","// run startup\nreturn __webpack_require__.x();\n"],"sourceRoot":""}