{"version":3,"sources":["modules.accordion.js"],"names":["app","accordion","classList","item","remove","content","add","link","setAttribute","carousel","querySelector","viewport","parentElement","dataset","initialized","initGeneric","closeText","closeItem","util","slideUp","init","openText","sections","document","querySelectorAll","length","items","section","forEach","expandButton","collapseButton","addEventListener","event","preventDefault","contains","pageUrl","openItem","innerText","pushEvent","window","location","pathname","option"],"mappings":"AAAAA,IAAIC,UAAa,WACf,aAkEA,SAiBSC,EAASC,EAACC,EAAOC,GACxBF,EAAED,UAAAI,IAAA,WAAA,EAhBFC,EAAKL,UAAUI,IAAI,WAAW,EAmB9BC,KAAKC,UAAAA,EAAa,IAAA,WAIpB,IAAsBH,EAChBI,EAAAA,GADgBJ,EAHfG,GAIkBE,cAAc,iBAAiB,EAClDC,EAAWN,EAAQK,cAAc,0BAA0B,EAE9C,OAAbD,GAAkC,OAAbE,GAE0B,SAA/CA,EAASC,cAAcC,QAAQC,aACjCd,IAAIS,SAASM,YAAYN,CAAQ,CATrC,CAAA,EAIEF,EAAII,aAAWN,aAAQK,EAAcG,QAAAG,SAAA,EAErCT,EAAIE,aAAa,gBAAgB,CAAA,CAAK,CAlBxC,CAEA,SAoBEQ,EAAAd,EAAAI,EAAAF,GACFE,EAAAL,UAAAE,OAAA,WAAA,EAEAc,KAAAC,QAAAd,EAAA,IAAA,WACAF,EAAOD,UAAAE,OAAA,WAAA,CACLgB,CAAAA,EAjBAb,EAAKC,aAAa,aAAcD,EAAKM,QAAQQ,QAAQ,EACrDd,EAAKC,aAAa,gBAAiB,CAAA,CAAK,CAC1C,CAcA,MAAO,CACLY,KAtGF,WACE,IAAME,EAAWC,SAASC,iBAAiB,uBAAuB,EAC1C,IAApBF,EAASG,QAEbH,EACQI,QAAQC,SAAAA,GACd,MAAID,EAAMD,EAAYD,iBAAE,uBAAA,EAExB,IAGMI,EAHeD,IAArBD,EAAMG,SAGAD,EAAQD,EAAKjB,cAAK,yBAAA,EACtBoB,EAAkBpB,EAAAA,cAAc,2BAAwB,EAD1DgB,EAIME,QAACG,SAAAA,GAHL,MAIEC,EAAMC,EAAAA,cAAgB,uBAAA,EAElB9B,EAAKD,EAAUgC,cAAS,0BAAwB,EAHtD3B,EAAKwB,iBAAiB,QAAS,SAACC,GAC9BA,EAKEC,eAAA,EAEmC,CAAA,IAAjCE,EAAAA,UAAeD,SAAS,WAAS,GAJnCE,EAKQjC,EAAOkC,EAAAA,CAAAA,EAGfpB,IAAAA,UAAcqB,UAAQjC,gBAAQ,CAChC8B,QAAAI,OAAAC,SAAAC,SACAC,OAAAnC,EAAA8B,SACF,CAAA,GAGAR,EAAaE,EAAAA,EAAAA,CAAiB,CAJ9B,CAAC,CACH,CAAC,EAEGF,GACFA,EASa1B,iBAAYE,QAAQ,SAAA2B,GAC/BA,EAAEC,eAAA,EAENP,EAAAE,QAAA,SAAAzB,GAEI2B,IAEMG,EAEAL,EAJNE,EAAAA,UAAgBI,SAAA,WAAA,IAEVD,EAAAA,EAAcvB,cAAE,uBAAA,EAEhBkB,EAAQzB,EAAAO,cAAU,0BAAA,EAGtB0B,EAAM7B,EAAOJ,EAAKO,CAAAA,EAXpB,CAAC,CACH,CAAC,EAgBHoB,GACAA,EAAAC,iBAAA,QAAA,SAAAC,GACJA,EAAAC,eAAA,EAGO/B,EAAAA,QAAc,SAAAC,GACdD,IAGSK,EACZF,EAJ6B,CAAA,IAA1BH,EAAUI,UAAI4B,SAAY,WAAA,IAGjB3B,EAACF,EAAQK,cAAA,uBAAA,EACrBL,EAAAF,EAAAO,cAAA,0BAAA,EAEFO,EAAAd,EAAAI,EAAAF,CAAA,EACKG,CAAAA,CACD,CAACA,EAGP,CAAA,CAfA,CAyCA,CACF,EAAC","file":"../modules.accordion.min.js","sourcesContent":["app.accordion = (function () {\r\n 'use strict';\r\n\r\n function init() {\r\n const sections = document.querySelectorAll('[data-accordion-list]');\r\n if (sections.length === 0) return;\r\n\r\n sections.forEach((section) => {\r\n const items = section.querySelectorAll('[data-accordion-item]');\r\n if (items.length === 0) return;\r\n\r\n const expandButton = section.querySelector('[data-accordion-expand]');\r\n const collapseButton = section.querySelector('[data-accordion-collapse]');\r\n\r\n items.forEach((item) => {\r\n const link = item.querySelector('[data-accordion-link]');\r\n const content = item.querySelector('[data-accordion-content]');\r\n\r\n link.addEventListener('click', (event) => {\r\n event.preventDefault();\r\n\r\n if (item.classList.contains('is-active') === false) {\r\n openItem(item, link, content);\r\n\r\n // DATALAYER\r\n app.dataLayer.pushEvent('accordionOpen', {\r\n pageUrl: window.location.pathname,\r\n option: link.innerText,\r\n });\r\n } else {\r\n closeItem(item, link, content);\r\n }\r\n });\r\n });\r\n\r\n if (expandButton) {\r\n expandButton.addEventListener('click', (event) => {\r\n event.preventDefault();\r\n\r\n items.forEach((item) => {\r\n if (item.classList.contains('is-active')) return;\r\n\r\n const link = item.querySelector('[data-accordion-link]');\r\n const content = item.querySelector('[data-accordion-content]');\r\n\r\n openItem(item, link, content);\r\n });\r\n });\r\n }\r\n\r\n if (collapseButton) {\r\n collapseButton.addEventListener('click', (event) => {\r\n event.preventDefault();\r\n\r\n items.forEach((item) => {\r\n if (item.classList.contains('is-active') === false) return;\r\n\r\n const link = item.querySelector('[data-accordion-link]');\r\n const content = item.querySelector('[data-accordion-content]');\r\n\r\n closeItem(item, link, content);\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n function openItem(item, link, content) {\r\n item.classList.add('is-active');\r\n link.classList.add('is-active');\r\n\r\n util.slideDown(content, 250, () => {\r\n initCarousel(content);\r\n });\r\n\r\n // a11y: update aria attributes\r\n link.setAttribute('aria-label', link.dataset.closeText);\r\n link.setAttribute('aria-expanded', true);\r\n }\r\n\r\n function closeItem(item, link, content) {\r\n link.classList.remove('is-active');\r\n\r\n util.slideUp(content, 250, () => {\r\n item.classList.remove('is-active');\r\n });\r\n\r\n // a11y: update aria attributes\r\n link.setAttribute('aria-label', link.dataset.openText);\r\n link.setAttribute('aria-expanded', false);\r\n }\r\n\r\n function initCarousel(content) {\r\n var carousel = content.querySelector('[data-carousel]');\r\n var viewport = content.querySelector('[data-carousel-viewport]');\r\n\r\n if (carousel === null || viewport === null) return;\r\n\r\n if (viewport.parentElement.dataset.initialized !== 'true') {\r\n app.carousel.initGeneric(carousel);\r\n }\r\n }\r\n\r\n // Expose public functions and variables\r\n return {\r\n init: init,\r\n };\r\n})();\r\n"]}