1var module_196087184570=function(){const hsSearch=function(_instance){const KEYS_TAB="Tab",KEYS_ESC="Esc",KEYS_ESCAPE="Escape",KEYS_UP="Up",KEYS_ARROW_UP="ArrowUp",KEYS_DOWN="Down",KEYS_ARROW_DOWN="ArrowDown";let searchTerm="";const searchForm=_instance,searchField=_instance.querySelector(".header-search__form-input"),searchResults=_instance.querySelector(".header-search__suggestions"),emptySearchResults=function(){searchResults.innerHTML="",searchField.focus(),searchForm.classList.remove("header-search--open")},ariaExpanded=function(val){searchForm.querySelector(".header-search__form_internal-wrp").ariaExpanded=val},getSearchResults=function(){const request=new XMLHttpRequest,requestUrl="/_hcms/search?&term="+encodeURIComponent(searchTerm)+"&limit="+encodeURIComponent(3)+"&autocomplete=true&analytics=true&"+function(){const formParams=[],form=_instance.querySelector("form");for(let i=0;i<form.querySelectorAll("input[type=hidden]").length;i++){const e=form.querySelectorAll("input[type=hidden]")[i];"limit"!==e.name&&formParams.push(encodeURIComponent(e.name)+"="+encodeURIComponent(e.value))}return formParams.join("&")}();request.open("GET",requestUrl,!0),request.onload=function(){if(request.status>=200&&request.status<400){const data=JSON.parse(request.responseText);data.total>0?(!function(response){const items=[];items.push("<li id='results-for'>Results for \""+response.searchTerm+'"</li>'),response.results.forEach(function(val,index){items.push("<li id='result"+index+"'><a href='"+val.url+"'>"+val.title+"</a></li>")}),emptySearchResults(),searchResults.innerHTML=items.join(""),searchForm.classList.add("header-search--open")}(data),trapFocus(),ariaExpanded(!0)):(emptySearchResults(),ariaExpanded(!1))}else console.error("Server reached, error retrieving results.")},request.onerror=function(){console.error("Could not reach the server.")},request.send()},trapFocus=function(){const tabbable=[];tabbable.push(searchField);const tabbables=searchResults.getElementsByTagName("A");for(let i=0;i<tabbables.length;i++)tabbable.push(tabbables[i]);const firstTabbable=tabbable[0],lastTabbable=tabbable[tabbable.length-1];searchForm.addEventListener("keydown",function(e){switch(e.key){case KEYS_TAB:!function(e){e.target!==lastTabbable||e.shiftKey?e.target===firstTabbable&&e.shiftKey&&(searchForm.classList.contains("header-search--open")&&e.preventDefault(),lastTabbable.focus()):(e.preventDefault(),firstTabbable.focus())}(e);break;case KEYS_ESC:case KEYS_ESCAPE:emptySearchResults(),ariaExpanded(!1);break;case KEYS_UP:case KEYS_ARROW_UP:!function(e){e.preventDefault(),e.target===firstTabbable?lastTabbable.focus():tabbable.forEach(function(el){el===e.target&&tabbable[tabbable.indexOf(el)-1].focus()})}(e);break;case KEYS_DOWN:case KEYS_ARROW_DOWN:!function(e){e.preventDefault(),e.target===lastTabbable?firstTabbable.focus():tabbable.forEach(function(el){el===e.target&&tabbable[tabbable.indexOf(el)+1].focus()})}(e)}})},isSearchTermPresent=function(func,wait,immediate){let timeout;return function(){const context=this,args=arguments,callNow=immediate&&!timeout;clearTimeout(timeout),timeout=setTimeout(function(){timeout=null,immediate||func.apply(context,args)},wait||200),callNow&&func.apply(context,args)}}(function(){searchTerm=searchField.value,searchTerm.length>2?(getSearchResults(),ariaExpanded(!0)):0===searchTerm.length&&(emptySearchResults(),ariaExpanded(!1))},250);searchField.addEventListener("input",function(e){searchTerm!==searchField.value&&isSearchTermPresent()})};if(document.attachEvent?"complete"===document.readyState:"loading"!==document.readyState){const searchResults=document.querySelectorAll(".header-search");Array.prototype.forEach.call(searchResults,function(el){hsSearch(el)})}else document.addEventListener("DOMContentLoaded",function(){const searchResults=document.querySelectorAll(".header-search");Array.prototype.forEach.call(searchResults,function(el){hsSearch(el)})});function headerSearch(){const headerSearch=document.getElementById("headerSearch");if(!headerSearch)return;const searchForm=headerSearch.querySelector(".header-search__form"),searchFormInput=headerSearch.querySelector(".header-search__form-input"),searchFormBtn=headerSearch.querySelector(".header-search__form-btn"),searchResults=headerSearch.querySelector(".header-search__suggestions");function showSearchForm(event,elem,isPreventDefault){elem.classList.contains("header-search--show")||(elem.classList.add("header-search--show"),document.body.classList.contains("open-search_wrp")||document.body.classList.add("open-search_wrp"),0===searchForm.tabIndex&&(searchForm.tabIndex=-1),-1===searchFormBtn.tabIndex&&(searchFormBtn.tabIndex=0),-1===searchFormInput.tabIndex&&(searchFormInput.tabIndex=0),searchFormInput.focus(),isPreventDefault&&event.preventDefault())}function hideSearchForm(event,elem,isPreventDefault){elem.classList.contains("header-search--show")&&(elem.classList.remove("header-search--show"),document.body.classList.contains("open-search_wrp")&&document.body.classList.remove("open-search_wrp"),elem.classList.contains("header-search--open")&&(elem.classList.remove("header-search--open"),searchResults.innerHTML=""),-1===searchForm.tabIndex&&(searchForm.tabIndex=0),0===searchFormBtn.tabIndex&&(searchFormBtn.tabIndex=-1),0===searchFormInput.tabIndex&&(searchFormInput.tabIndex=-1),searchFormInput.blur(),searchFormInput.value="",isPreventDefault&&event.preventDefault())}function hideSearchFormByBlur(event){event.relatedTarget&&!event.relatedTarget.closest(".header-search__form_wrp")&&hideSearchForm(event,headerSearch,!1)}searchFormBtn.addEventListener("click",function(event){showSearchForm(event,headerSearch,!0)},{once:!1,passive:!1}),searchFormInput.addEventListener("focus",function(event){showSearchForm(event,headerSearch,!1)},{once:!1,passive:!0}),searchForm.addEventListener("keyup",function(event){"Enter"===event.code&&showSearchForm(event,headerSearch,!1)},{once:!1,passive:!0}),document.addEventListener("keyup",function(event){"Escape"===event.code&&hideSearchForm(event,headerSearch,!1)},{once:!1,passive:!0}),searchFormInput.addEventListener("blur",hideSearchFormByBlur,{once:!1,passive:!0}),searchFormBtn.addEventListener("blur",hideSearchFormByBlur,{once:!1,passive:!0}),document.addEventListener("click",function(event){event.target.closest(".header-search__form_wrp")||hideSearchForm(event,headerSearch,!1)},{once:!1,passive:!0})}function headerHeight(){const root=document.documentElement;if(!root)return;const header=document.querySelector(".global-header_wrp");
1if(!header)return;const mainNavigation=document.getElementById("mainNavigation"),mobileBreakpoint=getComputedStyle(root).getPropertyValue("--mobile_breakpoint");root.style.setProperty("--header-height",header.offsetHeight+"px"),window.addEventListener("resize",function(){mainNavigation&&window.innerWidth<mobileBreakpoint&&(mainNavigation.classList.contains("show")||mainNavigation.classList.contains("collapsing"))||root.style.setProperty("--header-height",header.offsetHeight+"px")},!0)}"loading"===document.readyState?(document.addEventListener("DOMContentLoaded",headerSearch),document.addEventListener("DOMContentLoaded",headerHeight)):(headerSearch(),headerHeight())}(); 2//# sourceURL=https://145497246.fs1.hubspotusercontent-eu1.net/hubfs/145497246/hub_generated/module_assets/1/196087184570/1776258582187/module_site-header-with-mega-menu.js
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.