{"version":3,"file":"accordion-list.js","sources":["../../../../src/assets/scripts/accordion-list.entry.ts"],"sourcesContent":["function handleClickAccordion(accordion: HTMLElement) {\n if (!accordion) {\n return;\n }\n\n let list = accordion.querySelectorAll('.arjo-o-accordion-item');\n\n const removeActive = () => {\n let listHeaderActive = accordion!.querySelectorAll('.arjo-o-accordion-item__header.is-active');\n listHeaderActive.forEach((el: HTMLElement) => {\n el.classList.remove('is-active');\n });\n\n let listPanelActive = accordion!.querySelectorAll('.arjo-o-accordion-item__panel.is-active');\n listPanelActive.forEach((el: HTMLElement) => {\n el.classList.remove('is-active');\n el.style.maxHeight = '0';\n });\n };\n\n list.forEach((item: HTMLElement) => {\n let header = item.querySelector('.arjo-o-accordion-item__header');\n let panel = item.querySelector('.arjo-o-accordion-item__panel');\n let wrapper = item.querySelector('.arjo-o-accordion-item__panel-wrapper');\n\n const toggle = (e: MouseEvent) => {\n e.preventDefault();\n\n if (!header || !panel) {\n return;\n }\n\n if (!header.classList.contains('is-active')) {\n removeActive();\n panel.style.maxHeight = wrapper?.clientHeight + 'px';\n } else {\n panel.style.maxHeight = '0';\n }\n\n header.classList.toggle('is-active');\n panel.classList.toggle('is-active');\n };\n\n header!.addEventListener('click', toggle, true);\n });\n}\n\nfunction expandPanel(panel: HTMLElement) {\n let panelWrapper = panel.querySelector('.arjo-o-accordion-item__panel-wrapper');\n\n if (!panel || !panelWrapper) {\n return;\n }\n\n const resizeObserver = new ResizeObserver((entries) => {\n if (!panel.style.maxHeight) {\n return;\n }\n\n panel.style.maxHeight = entries[0].target.clientHeight * 10 + 'px';\n });\n\n resizeObserver.observe(panelWrapper);\n}\n\nfunction setup() {\n let accordionList = document.querySelectorAll('.arjo-o-accordion-list');\n\n [].forEach.call(accordionList, handleClickAccordion);\n\n let panelList = document.querySelectorAll('.arjo-o-accordion-item__panel');\n\n [].forEach.call(panelList, expandPanel);\n}\n\nsetup();\n\nexport {};\n"],"names":["handleClickAccordion","accordion","list","removeActive","el","item","header","panel","wrapper","toggle","e","expandPanel","panelWrapper","entries","setup","accordionList","panelList"],"mappings":"AAAA,SAASA,EAAqBC,EAAwB,CACpD,GAAI,CAACA,EACH,OAGE,IAAAC,EAAOD,EAAU,iBAA8B,wBAAwB,EAE3E,MAAME,EAAe,IAAM,CACFF,EAAW,iBAA8B,0CAA0C,EACzF,QAASG,GAAoB,CACzCA,EAAA,UAAU,OAAO,WAAW,CAAA,CAChC,EAEqBH,EAAW,iBAA8B,yCAAyC,EACxF,QAASG,GAAoB,CACxCA,EAAA,UAAU,OAAO,WAAW,EAC/BA,EAAG,MAAM,UAAY,GAAA,CACtB,CAAA,EAGEF,EAAA,QAASG,GAAsB,CAC9B,IAAAC,EAASD,EAAK,cAA2B,gCAAgC,EACzEE,EAAQF,EAAK,cAA2B,+BAA+B,EACvEG,EAAUH,EAAK,cAA2B,uCAAuC,EAE/E,MAAAI,EAAUC,GAAkB,CAChCA,EAAE,eAAe,EAEb,GAACJ,GAAU,CAACC,KAIXD,EAAO,UAAU,SAAS,WAAW,EAIxCC,EAAM,MAAM,UAAY,KAHXJ,IACPI,EAAA,MAAM,WAAYC,GAAA,YAAAA,EAAS,cAAe,MAK3CF,EAAA,UAAU,OAAO,WAAW,EAC7BC,EAAA,UAAU,OAAO,WAAW,EAAA,EAG5BD,EAAA,iBAAiB,QAASG,EAAQ,EAAI,CAAA,CAC/C,CACH,CAEA,SAASE,EAAYJ,EAAoB,CACnC,IAAAK,EAAeL,EAAM,cAAc,uCAAuC,EAE1E,GAAA,CAACA,GAAS,CAACK,EACb,OAGqB,IAAI,eAAgBC,GAAY,CAChDN,EAAM,MAAM,YAIjBA,EAAM,MAAM,UAAYM,EAAQ,CAAC,EAAE,OAAO,aAAe,GAAK,KAAA,CAC/D,EAEc,QAAQD,CAAY,CACrC,CAEA,SAASE,GAAQ,CACX,IAAAC,EAAgB,SAAS,iBAA8B,wBAAwB,EAEnF,CAAA,EAAG,QAAQ,KAAKA,EAAef,CAAoB,EAE/C,IAAAgB,EAAY,SAAS,iBAA8B,+BAA+B,EAEtF,CAAA,EAAG,QAAQ,KAAKA,EAAWL,CAAW,CACxC,CAEAG,EAAM"}