{"version":3,"file":"header.min.js","sources":["header.js"],"sourcesContent":["(function ($, Drupal) {\n 'use strict'\n\n Drupal.behaviors.pressHeader = {\n attach: function (context) {\n var viewportHeightMobile = window.innerHeight;\n var viewportWidthMobile = window.innerWidth;\n $(window).on('orientationchange', function () {\n var auxHeight = viewportHeightMobile;\n viewportHeightMobile = viewportWidthMobile;\n viewportWidthMobile = auxHeight;\n });\n\n var $header = $('#header', context);\n if ($header.length > 0) {\n var $navigation = $header.find('.o-header__navigation');\n\n /**\n * Append screeners link to navigation menus\n * (Mobile & Desktop)\n */\n var $screenersLink = $('#screeners-navigation-link', context);\n if ($screenersLink.length > 0) {\n var $newElementScreeners = $('
  • ' + $screenersLink.get(0).outerHTML + '
  • ');\n\n if (window.innerWidth < 960) {\n var $menuNavigationMobile = $header.find('.o-header__navigation--mobile__container.navigation .menu-navigation');\n $menuNavigationMobile.append($newElementScreeners);\n } else {\n var $menuNavigationDesktop = $header.find('.o-header__navigation .menu-navigation');\n $menuNavigationDesktop.prepend($newElementScreeners);\n }\n\n $screenersLink.parent().remove();\n }\n\n /**\n * Functionalities only to mobile version\n */\n if (window.innerWidth < 960) {\n var $buttonCollapse = $header.find('.o-header__brand__button-collapse');\n var $menuMobile = $header.find('.o-header__navigation--mobile');\n var $stepMenu = $menuMobile.find('.o-header__navigation--mobile__step').first();\n var $stepRegionSelection = $menuMobile.find('.o-header__navigation--mobile__step').last();\n var $buttonRegionSelection = $stepMenu.find('.region-selection-action');\n var $buttonBackStepMenu = $stepRegionSelection.find('.back-button');\n\n if ($menuMobile.length > 0) {\n var totalHeight = (window.innerHeight - $header.find('.o-header__container').outerHeight());\n\n if ($('#toolbar-bar').length > 0) {\n totalHeight -= 39;\n }\n\n $menuMobile.css({\n 'top': '-' + (window.innerHeight - 30) + 'px',\n 'height': totalHeight + 'px'\n });\n\n var $navigationMobile = $menuMobile.find('.o-header__navigation--mobile__container.navigation');\n if ($navigationMobile.find('.menu-navigation > li').length < 2) {\n $navigationMobile.remove();\n }\n }\n\n $buttonCollapse.on('click', function (event) {\n event.preventDefault();\n event.stopPropagation();\n\n //If search bar is open then it will be closed\n if ($header.find('.o-header__search').hasClass('is-open')) {\n $header.find('.search-action').click();\n }\n\n if ($menuMobile.hasClass('is-open')) {\n $(this).children().removeClass('is-active');\n $menuMobile.removeClass('is-open');\n if (!$('html').hasClass('brands-icon-list-opened')) {\n utils.unBlockScrollPage();\n }\n } else {\n $(this).children().addClass('is-active');\n $menuMobile.addClass('is-open');\n utils.blockScrollPage();\n }\n\n });\n $buttonRegionSelection.on('click', function (event) {\n $stepMenu.css('left', '-' + $stepMenu.outerWidth() + 'px');\n $stepRegionSelection.css('left', '0px');\n });\n $buttonBackStepMenu.on('click', function (event) {\n $stepMenu.css('left', '0px');\n $stepRegionSelection.css('left', $stepRegionSelection.outerWidth() + 'px');\n });\n\n var $wrapper = $('#wrapper');\n var $brandsActions = $header.find('.o-header__brands');\n if ($brandsActions.find('.menu-navigation').length > 0) {\n $wrapper.addClass('with-header-complex');\n }\n }\n\n /**\n * This event handler for the click event on the o-header search button\n * to show/hide the search form. Also,\n */\n var $searchAction = $navigation.find('.search-action');\n var $searchContainer = $header.find('.o-header__search');\n $searchAction.on('click', function () {\n if (window.innerWidth < 960) {\n var $brandsAction = $header.find('.o-header__brands');\n var durationTime = 50;\n if ($searchContainer.hasClass('is-open')) {\n durationTime = 233.34;\n }\n //If brands block is open then it will be closed\n if ($('html').hasClass('brands-icon-list-opened')) {\n $('.m-brands-icon-list__close-button, .m-brands-icon-list__close-button-mobile', context).click();\n }\n //If mobile nav menu is open then it will be closed\n if ($header.find('.o-header__navigation--mobile').hasClass('is-open')) {\n $header.find('.o-header__brand__button-collapse').click();\n }\n\n $brandsAction.animate({ height: 'toggle', opacity: 'toggle' }, durationTime);\n }\n\n $(this).toggleClass('is-active');\n $searchContainer.toggleClass('is-open');\n\n if ($searchContainer.hasClass('is-hidden')) {\n $searchContainer.removeClass('is-hidden');\n } else {\n setTimeout(function () {\n $searchContainer.addClass('is-hidden');\n }, 500);\n }\n });\n\n /**\n * This event handler is triggered whenever a user click the search button\n * inside the search bar. And it start the search process.\n * The redirection URL will have to be updated when the search page is completed.\n */\n var $searchForm = $searchContainer.find('form');\n $searchForm.on('submit', function (e) {\n e.preventDefault();\n e.stopPropagation();\n var value = $(this).find('input').val();\n if (value !== '') {\n var root = window.location.origin;\n var extras = window.location.pathname;\n var url = root + '/' + extras.split('/')[1];\n url += '/search?search_api_fulltext=' + encodeURIComponent(value);\n window.location.href = url;\n }\n });\n\n /**\n * This event handler validate the value of the search bar input to hide the\n * search form submit button only when a non empty string is provided.\n */\n $searchForm.find('input[type=\"text\"]').on('input', function () {\n var $submitButton = $(this).next();\n\n if ($(this).val() !== '') {\n $submitButton.removeAttr('disabled');\n if (!(window.innerWidth < 960)) {\n $submitButton.show();\n }\n } else {\n $submitButton.attr('disabled', true);\n if (!(window.innerWidth < 960)) {\n $submitButton.hide();\n }\n }\n });\n\n /**\n * This event handler sticky header bar\n */\n $(window).on('scroll', function () {\n if ($(window).scrollTop() > 0) {\n if (!$header.hasClass('is-sticky')) {\n $header.addClass('is-sticky');\n }\n } else {\n if ($header.hasClass('is-sticky') && !$('body').hasClass('no-scroll')) {\n $header.removeClass('is-sticky');\n }\n }\n })\n\n /**\n * This event handler for the user account button and dispatch the\n * account modal.\n */\n var $userAccountButton = $('#header .user-account-modal-button', context);\n if ($userAccountButton.length > 0) {\n var $userAccountModal = $('#header .o-header__user-account-modal', context);\n\n $userAccountButton.on('click', function () {\n if ($(this).hasClass('is-active')) {\n $(this).removeClass('is-active');\n $userAccountModal.removeClass('is-active');\n\n if (!$userAccountButton.is(':hover')) {\n $(this).parent().removeClass('is-active');\n }\n } else {\n $(this).addClass('is-active');\n $(this).parent().addClass('is-active');\n $userAccountModal.addClass('is-active');\n }\n });\n\n // Evaluates where the focus of the click is to see if is necesary to hide the modal\n $('body').on('click', function(event) {\n var $target = $(event.target);\n var $parent = $target.parents();\n var targetClasses = [\n '.o-header__user-account-modal, .user-account-modal-button, .user-actions',\n '.user-actions, .o-header__user-account-modal, .user-account-modal-button, .user-actions, .user-account-modal-button, .o-header__user-account-modal-actions'\n ];\n\n if (!$target.is(targetClasses[0]) && !$parent.is(targetClasses[1])) {\n if ($userAccountButton.hasClass('is-active')) {\n $userAccountButton.removeClass('is-active');\n $userAccountButton.parent().removeClass('is-active');\n $userAccountModal.removeClass('is-active');\n }\n }\n });\n\n // Hides/shows the separator of the menu item when hover events are triggered\n $userAccountButton.hover(\n function() {\n if (!$(this).hasClass('is-active')) {\n $(this).parent().addClass('is-active');\n }\n },\n function() {\n if (!$(this).hasClass('is-active')) {\n $(this).parent().removeClass('is-active');\n }\n }\n );\n }\n }\n }\n }\n}) (jQuery, Drupal);\n"],"names":["$","Drupal","behaviors","pressHeader","attach","context","$navigation","$menuMobile","$stepMenu","$stepRegionSelection","$buttonBackStepMenu","$wrapper","$searchAction","$searchContainer","$searchForm","$userAccountButton","$userAccountModal","viewportHeightMobile","window","innerHeight","viewportWidthMobile","innerWidth","$header","on","auxHeight","length","find","$screenersLink","$newElementScreeners","get","outerHTML","append","prepend","parent","remove","$buttonCollapse","first","last","$buttonRegionSelection","totalHeight","outerHeight","css","top","height","$navigationMobile","event","preventDefault","stopPropagation","hasClass","click","this","children","removeClass","utils","unBlockScrollPage","addClass","blockScrollPage","outerWidth","$brandsAction","durationTime","animate","opacity","toggleClass","setTimeout","e","url","value","val","location","origin","pathname","split","encodeURIComponent","href","$submitButton","next","removeAttr","show","attr","hide","scrollTop","is","$target","target","$parent","parents","targetClasses","hover","jQuery"],"mappings":"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"}