{"version":3,"file":"nav.js","names":["pxToRem","px","rootFontSize","parseFloat","getComputedStyle","document","documentElement","fontSize","$","Drupal","behaviors","nav","attach","context","$nav","length","mainNavScroll","subMenuClick","searchSubMenuClick","loginSubMenuClick","mobileSideToggle","mobileBackButtonClick","mobileDotsClick","mobileMenuCloseClick","desktopSubMenuCloseClick","$window","window","$userNav","scroll","hasClass","alertHeight","height","$drupalToolbarHeight","$drupalToolbarHeightREM","scrollTop","addClass","css","concat","removeClass","removeActiveClassMainMenuButtons","self","listItemButtons","unbind","click","e","clickedLink","currentTarget","menuTargetName","data","menuTarget","mainContainer","slideDown","not","fadeOut","slideUp","hide","fadeIn","first","focus","location","href","searchButton","searchSubMenu","keypress","which","loginButton","preventDefault","loginSubMenu","$wholeLeftMenu","wholeLeftVal","parseInt","toggleMobileNav","$leftMenu","siblings","animateLeft","animate","left","toggleMobileMainMenu","$subMenus","closest","find","$searchAndLogin","width","targetMenuId","menusToShow","complete","display","_this","$mainContainer","currentmenu","parent","next","children","isScrolledIntoView","elem","docViewTop","docViewBottom","elemTop","offset","top","elemBottom","toggle","jQuery"],"sources":["src/components/nav/nav.es6.js"],"sourcesContent":["/* eslint-disable max-len */\nfunction pxToRem(px) {\n const rootFontSize = parseFloat(\n getComputedStyle(document.documentElement).fontSize\n );\n return px / rootFontSize;\n}\n(function ($) {\n 'use strict';\n Drupal.behaviors.nav = {\n attach: function(context) {\n const $nav = $('.nav-wrapper', context);\n if (!$nav.length) {\n return;\n }\n this.mainNavScroll();\n this.subMenuClick();\n this.searchSubMenuClick();\n this.loginSubMenuClick();\n this.mobileSideToggle();\n this.mobileBackButtonClick();\n this.mobileDotsClick();\n this.mobileMenuCloseClick();\n this.desktopSubMenuCloseClick();\n },\n \n mainNavScroll: function() {\n\tif ( $( \"#is_home\" ).length ){\n\t\tconst $window = $(window);\n\t\t // Get if nav on live site or in Drupal admin.\n\t\tconst $userNav = $('body:not(.toolbar-fixed) .nav');\n\t\tconst $nav = $('.nav-wrapper');\n\n\t\t$window.scroll(function() {\n\t\t\tif ($nav.hasClass('open')) {\n\t\t\t return;\n\t\t\t}\n\t\t\t// If there is an alert, don't pin nav until past alert.\n\t\t\tconst alertHeight = $('#block-alerts').height() || 0;\n\t\t\t// Get offset height of any Drupal admin toolbars.\n\t\t\tconst $drupalToolbarHeight = $('.toolbar-bar').height() + $('.toolbar-tab').height();\n\t\t\tconst $drupalToolbarHeightREM = pxToRem($drupalToolbarHeight);\n\n\t\t\tif ($window.scrollTop() > alertHeight) {\n\t\t\t $nav.addClass('sticky');\n\t\t\t if(!$userNav.length) {\n\t\t\t\t// If logged in, pin below admin toolbar.\n\t\t\t\t$nav.css('top', `${$drupalToolbarHeightREM}rem`);\n\t\t\t }\n\t\t\t}\n\t\t\telse {\n\t\t\t $('.nav-wrapper').removeClass('sticky');\n\t\t\t if(!$userNav.length) {\n\t\t\t\t$nav.css('top', 'auto');\n\t\t\t }\n\t\t\t}\n\t\t });\n\t} \n },\n\t\n removeActiveClassMainMenuButtons: function() {\n $('.nav__search-icon-container').removeClass('active');\n $('.nav__menu-list-item-button').removeClass('active');\n },\n subMenuClick: function() {\n const self = this;\n // Hide/show submenus on click.\n const listItemButtons = $('.nav__menu-list-item-button');\n listItemButtons.unbind(\"click\").click(function(e) {\n const clickedLink = $(e.currentTarget);\n const menuTargetName = clickedLink.data('target');\n const menuTarget = $(`.nav__submenu-container--desktop .nav__submenu[data-target='${menuTargetName}']`);\n // If it has a submenu to show, show it, otherwise treat it like a link.\n if(menuTarget.length) {\n const mainContainer = $('.nav__submenu-container--desktop');\n mainContainer.removeClass('search');\n mainContainer.slideDown();\n // Remove active class from other links.\n self.removeActiveClassMainMenuButtons();\n // Fade out all other submenus.\n $('.nav__submenu').not(menuTarget).fadeOut().removeClass('open');\n // Toggle fade for target submenu.\n if(menuTarget.hasClass('open')) {\n menuTarget.fadeOut().removeClass('open');\n mainContainer.slideUp();\n clickedLink.removeClass('active');\t\t\t\n }\n else {\n menuTarget.addClass('open').hide().fadeIn();\n clickedLink.addClass('active');\n\t\t\t$(`.nav__submenu-container--desktop .nav__submenu[data-target='${menuTargetName}'] a`).first().focus();\n }\n }\n else {\n window.location.href = clickedLink.data('url');\n }\n });\n },\n searchSubMenuClick: function() {\n // Hide/show the search submenu specifically.\n const searchButton = $('.nav--desktop .nav__search-icon-container');\n searchButton.unbind(\"click\").click((e) => {\n const mainContainer = $('.nav__submenu-container--desktop');\n const searchSubMenu = $('.nav__submenu-search');\n const clickedLink = $(e.currentTarget);\n // Unhighlight all other links and open main container.\n $('.nav__menu-list-item-button').removeClass('active');\n // Smaller height for search submenu.\n mainContainer.addClass('search');\n mainContainer.slideDown();\n\n // Hide other submenus.\n $('.nav__submenu').not(searchSubMenu).fadeOut().removeClass('open');\n // If its already open, fade it out and shrink it.\n // Then shrink main container and un-highlight link.\n if(searchSubMenu.hasClass('open')) {\n searchSubMenu.fadeOut().removeClass('open');\n mainContainer.slideUp();\n clickedLink.removeClass('active');\n mainContainer.removeClass('search');\n }\n else {\n // Otherwise, open search (weird jQuery hide/fadeIn here for flexbox) and\n // highlight link.\n searchSubMenu.addClass('open').hide().fadeIn();\n\t\t $('.nav__submenu-search input').focus();\n clickedLink.addClass('active');\n }\n });\n\n searchButton.keypress(function(e) {\n if(e.which === 13) {\n $(e.currentTarget).click();\n $('.search-bar__input').focus();\n }\n });\n },\n loginSubMenuClick: function() {\n // Hide/show the login submenu specifically.\n const loginButton = $('.nav--desktop .nav__login-link');\n loginButton.unbind(\"click\").click((e) => {\n e.preventDefault();\n const mainContainer = $('.nav__submenu-container--desktop');\n const loginSubMenu = $('.nav__submenu-login');\n const clickedLink = $(e.currentTarget);\n // Unhighlight all other links and open main container.\n $('.nav__menu-list-item-button').removeClass('active');\n // Smaller height for login submenu.\n mainContainer.slideDown();\n\n // Hide other submenus.\n $('.nav__submenu').not(loginSubMenu).fadeOut().removeClass('open');\n // If its already open, fade it out and shrink it.\n // Then shrink main container and un-highlight link.\n if(loginSubMenu.hasClass('open')) {\n loginSubMenu.fadeOut().removeClass('open');\n mainContainer.slideUp();\n clickedLink.removeClass('active');\n }\n else {\n // Otherwise, open login (weird jQuery hide/fadeIn here for flexbox) and\n // highlight link.\n loginSubMenu.addClass('open').hide().fadeIn();\n clickedLink.addClass('active');\n }\n });\n },\n mobileSideToggle: function() {\n // Mobile side menu behavior.\n const $wholeLeftMenu = $('.nav__side-menu-container');\n const wholeLeftVal = parseInt($wholeLeftMenu.css('left'));\n const toggleMobileNav = (e) => {\n const $leftMenu = $(e.currentTarget).siblings('.nav__side-menu-container').first();\n let animateLeft = (parseInt($leftMenu.css('left')) === 0) ? wholeLeftVal : 0;\n\t\tanimateLeft = pxToRem(animateLeft);\n $leftMenu.animate({\n left: animateLeft + 'rem'\n });\n };\n $('.nav--mobile .nav__menu-icon-container').click((e) => {\n $(e.currentTarget).siblings('.nav__mobile-close-button').addClass('show');\n toggleMobileNav(e);\n });\n $('.nav--mobile .nav__search-icon-container').click((e) => {\n toggleMobileNav(e);\n $(e.currentTarget).siblings('.nav__mobile-close-button').addClass('show');\n $('.nav__submenu-search .search-bar__input').focus();\n });\n },\n toggleMobileMainMenu: function(e) {\n const $subMenus = $(e.currentTarget).closest('.nav--mobile').find('.nav__submenu');\n const $searchAndLogin = $(e.currentTarget).closest('.nav--mobile').find('.nav__search-and-login-container');\n\n $searchAndLogin.animate({\n width: 'toggle'\n });\n $subMenus.animate({\n width: 'toggle'\n });\n },\n mobileBackButtonClick: function() {\n const self = this;\n // Mobile back button menu behavior.\n $('.nav__submenu-back-button').click((e) => {\n const targetMenuId = $(e.currentTarget).data('target');\n const menusToShow = $(e.currentTarget).closest('.nav--mobile').find(`.nav__submenu-inner-container[data-menu-id='${targetMenuId}']`);\n self.toggleMobileMainMenu(e);\n menusToShow.animate({\n left: '100%'\n }, {\n complete: () => {\n menusToShow.css({\n display: 'none',\n });\n }\n });\n });\n },\n mobileDotsClick: function() {\n const self = this;\n // Show submenu on dots click on mobile.\n $('.nav__submenu-expand-dots').click((e) => {\n const targetMenuId = $(e.currentTarget).data('target');\n const menusToShow = $(e.currentTarget).closest('.nav--mobile').find(`.nav__submenu-inner-container[data-menu-id='${targetMenuId}']`);\n\n // If it's not a direct link, toggle in its submenu, otherwise navigate to link.\n if(menusToShow.length) {\n self.toggleMobileMainMenu(e);\n\n menusToShow.css({\n display: 'flex',\n });\n menusToShow.animate({\n left: '0%'\n });\n }\n else {\n window.location.href = $(this).data('url');\n }\n });\n },\n mobileMenuCloseClick: function() {\n const $wholeLeftMenu = $('.nav__side-menu-container');\n const wholeLeftVal = parseInt($wholeLeftMenu.css('left'));\n const toggleMobileNav = (e) => {\n const $leftMenu = $(e.currentTarget).siblings('.nav__side-menu-container').first();\n\n let animateLeft = (parseInt($leftMenu.css('left')) === 0) ? wholeLeftVal : 0;\n\t\tanimateLeft = pxToRem(animateLeft);\n $leftMenu.animate({\n left: animateLeft + 'rem'\n });\n };\n $('.nav__mobile-close-button').click(function (e) {\n toggleMobileNav(e);\n $(this).removeClass('show');\n });\n },\n desktopSubMenuCloseClick: function() {\n const self = this;\n $('.nav__submenu-close-button').click(function() {\n const $mainContainer = $('.nav__submenu-container--desktop');\n\n $mainContainer.slideUp();\n\t\t\n\t\t// tab to next menu item or section\n\t\tconst currentTarget = $('.nav__submenu-container--desktop .nav__submenu.open').data('target');\n\t\t\tif (typeof currentTarget !== 'undefined') {\n\t\t\t\tconst currentmenu = $(`.nav__menu-list-item-button.active[data-target='${currentTarget}']`);\n\t\t\t\tif(currentmenu.parent().next().length > 0)\n\t\t\t\t{\n\t\t\t\t\tcurrentmenu.parent().next().children(\"button\").focus();\n\t\t\t\t}\n\t\t\t\telse{\n\t\t\t\t\t$('main a').first().focus();\n\t\t\t\t}\n\t\t\t}\n\t\t\telse{\n\t\t\t\t$('main a').first().focus();\n\t\t\t}\n\t\t$('.nav__submenu-search').removeClass('open');\n $('.nav__submenu-login').removeClass('open');\n $mainContainer.removeClass('search');\t\n self.removeActiveClassMainMenuButtons();\n });\n },\n isScrolledIntoView: function(elem) {\n var docViewTop = $(window).scrollTop();\n var docViewBottom = docViewTop + $(window).height();\n\n var elemTop = $(elem).offset().top;\n var elemBottom = elemTop + $(elem).height();\n\n return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop));\n }\n };\n\n $('.nav__submenu-expand-login-links').click(function() {\n $('.nav__submenu-login-links-list').toggle();\n });\n\n}(jQuery));\n"],"mappings":"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","ignoreList":[]}