{"version":3,"mappings":"41BAAMA,EAAgB,IAAM,CACpB,MAAAC,EAAW,SAAS,uBAAuB,gBAAgB,EAC3DC,EAAQ,SAAS,uBAAuB,SAAS,EACjDC,EAAY,SAAS,uBAAuB,cAAc,EAE1DC,EAAYC,GAAqBC,GAAa,CAClCD,EACR,UAAU,OAAO,QAAQ,EACjC,UAAWE,KAAQL,EACZK,EAAA,UAAU,OAAO,QAAQ,EAEhCD,EAAE,eAAe,GAGbE,EAAiBF,GAAa,CAC/BA,EAAE,yBAAyB,SACnBF,EAAAE,EAAE,aAAa,EAAEA,CAAC,CAC7B,EAIIG,EAAc,IAAM,CACxB,UAAWC,KAAWT,EACZS,EAAA,UAAU,OAAO,QAAQ,EAEnC,UAAWH,KAAQL,EACZK,EAAA,UAAU,OAAO,QAAQ,CAChC,EAGII,EAAiBC,GAA2B,CAChD,GAAKA,EAIL,WAAWF,KAAWT,EACZS,EAAA,oBAAoB,QAASF,CAAa,EAIpD,UAAWE,KAAWT,EACZS,EAAA,iBAAiB,QAASF,CAAa,EAIjD,UAAWK,KAAYV,EACZU,EAAA,oBAAoB,QAASJ,CAAW,EAInD,UAAWI,KAAYV,EACZU,EAAA,iBAAiB,QAASJ,CAAW,EAChD,EAGIK,EAAQ,WAAW,qBAAqB,EAC9CA,EAAM,iBAAiB,SAAWR,GAAMK,EAAcL,EAAE,OAAO,CAAC,EAChEK,EAAcG,EAAM,OAAO,CAC7B,ECxDAd,IAEI,SAAS,eAAe,OAAO,GACjCe,EAAA,WAAO,qBAAoB,EAAE,SAAMC,GAASA,EAAK,QAAS,GAGxD,SAAS,eAAe,eAAe,GACzCD,EAAA,WAAO,yBAAwB,EAAE,SAAMC,GAASA,EAAK,QAAS,GAG5D,SAAS,cAAc,kBAAkB,GAC3CD,EAAA,WAAO,4BAA2B,EAAE,SAAMC,GAASA,EAAK,QAAS,GAG/D,SAAS,cAAc,kBAAkB,GAC3CD,EAAA,WAAO,4BAA2B,EAAE,SAAMC,GAASA,EAAK,QAAS,GAG/D,SAAS,cAAc,SAAS,GAClCD,EAAA,WAAO,oBAAmB,EAAE,SAAMC,GAASA,EAAK,QAAS,GAGvD,SAAS,cAAc,eAAe,GACxCD,EAAA,WAAO,0BAAyB,MAAE,KAAMC,GAASA,EAAK,QAAS,GAG7D,SAAS,cAAc,cAAc,GACvCD,EAAA,WAAO,wBAAuB,EAAE,sEAAMC,GAASA,EAAK,QAAS,GAG3D,SAAS,cAAc,mBAAmB,GAC5CD,EAAA,WAAO,6BAA4B,EAAE,2EAAMC,GAASA,EAAK,QAAS,GAGhE,SAAS,cAAc,cAAc,GACvCD,EAAA,WAAO,wBAAuB,EAAE,SAAMC,GAASA,EAAK,QAAS,GAG3D,SAAS,cAAc,cAAc,GACvCD,EAAA,WAAO,wBAAuB,EAAE,8EAAMC,GAASA,EAAK,QAAS,GAG3D,SAAS,cAAc,0BAA0B,GACnDD,EAAA,WAAO,+BAA8B,MAAE,KAAMC,GAASA,EAAK,QAAS,GAGlE,SAAS,cAAc,wBAAwB,GACjDD,EAAA,WAAO,6BAA4B,EAAE,SAAMC,GAASA,EAAK,QAAS,GAGhE,SAAS,cAAc,YAAY,GACrCD,EAAA,WAAO,mBAAkB,sEAAE,KAAMC,GAASA,EAAK,QAAS","names":["initialiseNav","togglers","menus","menuLinks","onToggle","target","e","menu","toggleHandler","onLinkClick","toggler","bindListeners","isSmallScreen","menuLink","query","__vitePreload","init"],"sources":["../../scripts/components/navigation.ts","../../scripts/main.ts"],"sourcesContent":["const initialiseNav = () => {\n const togglers = document.getElementsByClassName(\"js-menu-toggle\");\n const menus = document.getElementsByClassName(\"js-menu\");\n const menuLinks = document.getElementsByClassName(\"js-menu-link\");\n\n const onToggle = (target: Element) => (e: Event) => {\n const element = target as HTMLElement; // Can't just use e.target as that could be a child of \"toggler\" el\n element.classList.toggle(\"active\");\n for (const menu of menus) {\n menu.classList.toggle(\"active\");\n }\n e.preventDefault();\n };\n\n const toggleHandler = (e: Event) => {\n if(e.currentTarget instanceof Element) {\n onToggle(e.currentTarget)(e);\n }\n };\n\n // Navigation link may be anchors, so remove active state of navigation on click\n const onLinkClick = () => {\n for (const toggler of togglers) {\n toggler.classList.remove(\"active\");\n }\n for (const menu of menus) {\n menu.classList.remove(\"active\");\n }\n };\n\n const bindListeners = (isSmallScreen: boolean) => {\n if (!isSmallScreen) {\n return;\n }\n\n for (const toggler of togglers) {\n toggler.removeEventListener(\"click\", toggleHandler);\n }\n\n // Rebind\n for (const toggler of togglers) {\n toggler.addEventListener(\"click\", toggleHandler);\n }\n\n\n for (const menuLink of menuLinks) {\n menuLink.removeEventListener(\"click\", onLinkClick);\n }\n\n // Rebind\n for (const menuLink of menuLinks) {\n menuLink.addEventListener(\"click\", onLinkClick);\n }\n };\n\n const query = matchMedia(\"(max-width: 1280px)\"); // This could use a variable\n query.addEventListener(\"change\", (e) => bindListeners(e.matches));\n bindListeners(query.matches);\n};\n\nexport default initialiseNav;\n","import initialiseNav from \"./components/navigation\";\n\ninitialiseNav();\n\nif (document.getElementById(\"popup\")) {\n import(\"./components/popup\").then((init) => init.default()); // async import, creates a bundle\n}\n\nif (document.getElementById(\"alert-message\")) {\n import(\"./components/alert-bar\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-search-modal\")) {\n import(\"./components/search-modal\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-toggle-class\")) {\n import(\"./components/toggle-class\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-tab\")) {\n import(\"./components/tabs\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-accordion\")) {\n import(\"./components/accordions\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-carousel\")) {\n import(\"./components/carousel\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-grid-carousel\")) {\n import(\"./components/grid-carousel\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-lightbox\")) {\n import(\"./components/lightbox\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-parallax\")) {\n import(\"./components/parallax\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-language-picker-list\")) {\n import(\"./components/language-picker\").then((init) => init.default());\n}\n\nif (document.querySelector(\".js-site-switcher-list\")) {\n import(\"./components/site-switcher\").then((init) => init.default());\n}\n\nif (document.querySelector(\"[data-aos]\")) {\n import(\"./components/aos\").then((init) => init.default());\n}\n"],"file":"scripts/main-b777a993.js"}