{"version":3,"sources":["webpack://@verndale/toolkit/./node_modules/@verndale/roving-ux/dist/index.modern.js","webpack://@verndale/toolkit/./src/js/modules/accordion.js"],"names":[],"mappings":"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","file":"scripts/4489.1ef5b3408a1c22f1d815.js","sourcesContent":["const e=new Map,t=({element:t,target:d,callback:o})=>{const i=t.querySelectorAll(d||\":scope *\"),v=i[0];t.tabIndex=-1,i.forEach(e=>e.tabIndex=-1),v.tabIndex=0,e.set(t,{targets:i,active:v,index:0});const l=n=>{e.get(\"last_rover\")!=t&&(c(t,e.get(t).active),e.set(\"last_rover\",t))};t.addEventListener(\"focusin\",l);const x=e=>{switch(e.keyCode){case 39:case 40:e.preventDefault(),s(t,o);break;case 37:case 38:e.preventDefault(),r(t,o);break;case 36:e.preventDefault(),n(t,o);break;case 35:e.preventDefault(),a(t,o)}};t.addEventListener(\"keydown\",x);const g=n=>{t.removeEventListener(\"focusin\",l),t.removeEventListener(\"keydown\",x),t.removeEventListener(\"DOMNodeRemoved\",g),e.delete(t),i.forEach(e=>e.tabIndex=\"\")};t.addEventListener(\"DOMNodeRemovedFromDocument\",g)},n=(t,n)=>{const a=e.get(t);a.index=0;let s=a.targets[a.index];s&&c(t,s,n)},a=(t,n)=>{const a=e.get(t);a.index=a.targets.length-1;let s=a.targets[a.index];s&&c(t,s,n)},s=(t,n)=>{const a=e.get(t);a.index+=1,a.index>a.targets.length-1&&(a.index=a.targets.length-1);let s=a.targets[a.index];s&&c(t,s,n)},r=(t,n)=>{const a=e.get(t);a.index-=1,a.index<1&&(a.index=0);let s=a.targets[a.index];s&&c(t,s,n)},c=(t,n,a)=>{const s=e.get(t);s.active.tabIndex=-1,a&&a(n),s.active=n,s.active.tabIndex=0,s.active.focus()};export{t as rovingIndex};\n//# sourceMappingURL=index.modern.js.map\n","// @ts-check\nimport { Component } from '@verndale/core';\nimport { rovingIndex } from '@verndale/roving-ux';\n\nclass Module extends Component {\n setupDefaults() {\n this.dom = {\n $content: this.el.querySelector('.accordion__content'),\n $accordionIds: this.el.querySelectorAll('.accordion__item-content')\n };\n this.dom.$headings = this.dom.$content.querySelectorAll(\n '.accordion__item-heading'\n );\n\n this.rovingTarget = `${\n this.el.closest('.campaign-toolkit-downloads') ? '' : ':scope >'\n } .accordion__item > .accordion__item-heading button`;\n\n this.setRovings();\n this.expandById();\n }\n\n addListeners() {\n this.dom?.$headings.forEach((heading) =>\n heading.addEventListener('click', this.toggleAccordionItem)\n );\n }\n\n setRovings() {\n rovingIndex({\n element: this.dom?.$content,\n target: this.rovingTarget\n });\n }\n\n expandById() {\n const queryString = window.location.search;\n if (queryString) {\n const urlParams = new URLSearchParams(queryString);\n const section = urlParams.get('section');\n\n if (section) {\n const accordion = Array.from(this.dom?.$accordionIds).find(\n (element) => element.id === section\n );\n accordion.scrollIntoView({ behavior: 'smooth' });\n this.openAccordions(accordion.id);\n }\n }\n }\n\n openAccordions(id) {\n const button = document.querySelector(`button[aria-controls=\"${id}\"]`);\n this.toggleAccordionItem({ currentTarget: button?.parentNode });\n const parent = button?.closest('.accordion__item-content');\n\n if (parent) this.openAccordions(parent.id);\n }\n\n toggleAccordionItem(e) {\n const isOpen = e.currentTarget.parentNode.dataset.expanded === 'true';\n const button = e.currentTarget.querySelector('button');\n button.setAttribute('aria-expanded', !isOpen);\n e.currentTarget.parentNode.dataset.expanded = !isOpen;\n }\n}\n\nexport default Module;\n"],"sourceRoot":""}