1function e(){import.meta.url,import("_").catch((()=>1)),async function*(){}().next()}function t(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return n(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n<t;n++)o[n]=e[n];return o}class o{constructor(){this.menu="",this.logo=null,this.cta=null,this.mobileWidth=1023,this.keyModifierDown=!1}init(){""!==this.menu?(this.menu.classList.add("portent-toggle-nav"),this.setupMobileToggle(),this.setupStatusArea(),this.setupBrandArea(),this.navigationMenuToggle(this.menu),this.setupClickOutside()):console.log("Please set a menu property"),this.menu.addEventListener("keydown",(function(e){16===e.keyCode&&(this.keyModifierDown=!0)})),this.menu.addEventListener("keyup",(function(e){16===e.keyCode&&(this.keyModifierDown=!1)}))}setupClickOutside(){var e=this,t=this.menu;document.addEventListener("click",(function(n){t.contains(n.target)||e.closeAllMenus(t)}))}setupBrandArea(){var e=document.createElement("div");if(e.classList.add("brand-area"),this.logo){var t=document.createElement("img");t.classList.add("brand-area__logo"),t.src=this.logo,e.appendChild(t)}if(this.cta){var n=document.createElement("div");n.classList.add("brand-area__cta"),n.innerHTML=this.cta,e.appendChild(n)}this.menu.insertBefore(e,this.menu.children[0])}statusButtonKeys(e){var t=this.menu.querySelector("[data-open=true]"),n=!1;null===t&&(t=this.menu.querySelector("ul"),n=!0),(38===e.keyCode||9===e.keyCode&&this.keyModifierDown)&&(e.stopPropagation(),e.preventDefault(),this.findNextMenuLink(e,t,"up",n)),(40===e.keyCode||9===e.keyCode&&!this.keyModifierDown)&&(e.stopPropagation(),e.preventDefault(),this.findNextMenuLink(e,t,"down",n))}setupStatusArea(){var e=this,t=this.menu,n=document.createElement("div"),o=document.createElement("button"),i=document.createElement("button");n.setAttribute("data-interface","statusArea"),i.innerText="Close",i.classList.add("mobile-close-btn"),o.innerText="Back to main menu",o.classList.add("mobile-back-btn"),n.appendChild(o),n.appendChild(i),t.insertBefore(n,t.children[0]),o.addEventListener("click",(function(){e.closeAllMenus(t)})),i.addEventListener("click",(function(){e.closeMobileMenu(t)})),o.addEventListener("keydown",(function(t){e.statusButtonKeys(t)})),i.addEventListener("keydown",(function(t){e.statusButtonKeys(t)}))}setupMobileToggle(){var e,t=this,n=this.menu;this.toggleButton?e=this.toggleButton:(e.innerText="Menu",e=document.createElement("button"),n.parentElement.insertBefore(e,n)),e.addEventListener("click",(function(){t.openMobileMenu(t.menu)})),e.setAttribute("aria-expanded","false")}setSubMenuStatus(e=!1){e?this.menu.setAttribute("data-menu","open"):this.menu.removeAttribute("data-menu")}expandTopLevelItem(e){e.preventDefault(),"true"===e.target.parentNode.dataset.open?(e.target.dataset.open="false",e.target.setAttribute("aria-expanded","false"),this.setSubMenuStatus(!1)):(this.closeAllMenus(this.menu),e.target.parentNode.dataset.open="true",e.target.setAttribute("aria-expanded","true"),this.setSubMenuStatus(!0),this.focusFirstOption(e.target.parentNode))}navigationMenuToggle(e){var t=e.querySelectorAll("[data-children=true]"),n=this;t.forEach.call(t,(function(t,o){t.querySelector("button").addEventListener("click",(function(t){return"true"===this.parentNode.dataset.open?(this.parentNode.dataset.open="false",this.setAttribute("aria-expanded","false"),n.setSubMenuStatus()):(n.closeAllMenus(e),this.parentNode.dataset.open="true",this.setAttribute("aria-expanded","true"),n.setSubMenuStatus(!0)),n.focusFirstOption(this.parentNode),!1})),t.querySelector("button").addEventListener("keydown",(function(t){return window.outerWidth<=n.mobileWidth?((38===t.keyCode||9===t.keyCode&&this.keyModifierDown)&&(t.preventDefault(),n.findNextMenuLink(t,this.parentNode.parentNode,"up",!0)),(40===t.keyCode||9===t.keyCode&&!this.keyModifierDown)&&(t.preventDefault(),n.findNextMenuLink(t,this.parentNode.parentNode,"down",!0)),39===t.keyCode&&n.expandTopLevelItem(t)):([40,39].includes(t.keyCode)&&n.expandTopLevelItem(t),[38].includes(t.keyCode)&&n.closeAllMenus(e)),!1})),t.querySelectorAll("a").forEach((function(o){o.addEventListener("keydown",(function(e){window.outerWidth<=n.mobileWidth?((38===e.keyCode||9===e.keyCode&&this.keyModifierDown)&&(e.stopPropagation(),e.preventDefault(),n.findNextMenuLink(e,t,"up")),(40===e.keyCode||9===e.keyCode&&!this.keyModifierDown)&&(e.stopPropagation(),e.preventDefault(),n.findNextMenuLink(e,t,"down"))):(38===e.keyCode&&(e.stopPropagation(),e.preventDefault(),n.findNextMenuLink(e,t,"up")),40===e.keyCode&&(e.stopPropagation(),e.preventDefault(),n.findNextMenuLink(e,t,"down")))})),o.addEventListener("keyup",(function(o){27===o.keyCode&&(n.closeAllMenus(e),t.querySelector("button").focus())}))}))}))}findNextMenuLink(e,n,o,i){var r,u;(o&&void 0!==o||(o="down"),i||(i=!1),window.outerWidth<=this.mobileWidth)?(i?(u=Array.from(this.menu.querySelectorAll(".mobile-close-btn")),r=Array.from(n.querySelectorAll(":scope > li > button, :scope > li > a"))):(u=Array.from(this.menu.querySelectorAll(".mobile-back-btn, .mobile-close-btn")),r=Array.from(n.querySelectorAll("a"))),r=[].
1concat(t(u),t(r))):r=Array.from(n.querySelectorAll("a"));var a=r[0],s=r[r.length-1],d=document.activeElement;d!==a||"up"!==o?d!==s||"down"!==o?r.forEach((function(e,t){d===e&&("down"===o?r[t+1].focus():"up"===o&&r[t-1].focus())})):a.focus():s.focus()}closeAllMenus(e){var t=e.querySelectorAll("button[aria-expanded=true]");t.forEach((function(e){e.parentNode.dataset.open="false",e.setAttribute("aria-expanded","false")})),t.length>0&&t.item(0).focus(),this.setSubMenuStatus(!1)}setDocumentAttribute(){document.querySelector("body").setAttribute("data-menu","open")}removeDocumentAttribute(){document.querySelector("body").removeAttribute("data-menu")}openMobileMenu(e){e.setAttribute("data-mobile","open"),this.setDocumentAttribute(),this.menu.querySelector(".menu-item button").focus()}closeMobileMenu(){this.removeDocumentAttribute(),this.closeAllMenus(this.menu),"open"===this.menu.getAttribute("data-mobile")&&this.menu.removeAttribute("data-mobile"),this.toggleButton.focus(),this.setSubMenuStatus(!1)}focusFirstOption(e){e.querySelector(".sub-menu a").focus({preventScroll:!0})}debouceKeys(e,t,n){var o;return function(){var i=this,r=arguments,u=n&&!o;clearTimeout(o),o=setTimeout((function(){o=null,n||e.apply(i,r)}),t),u&&e.apply(i,r)}}}window.PortentToggleNav=o;export{o as P,e as __vite_legacy_guard};
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.