{"version":3,"sources":["webpack:///./modules/LazyAccordion.ts"],"names":["__webpack_require__","r","__webpack_exports__","LazyAccordion","element","this","addEventListener","e","document","dispatchEvent","CustomEvent","accordionToggle","setup","selector","Array","from","querySelectorAll","filter","node","dataset","moduleInitialized","forEach","prototype","accordionItems","faqAccordionItems","ele","parentElement","classList","contains","remove","add","event","closest","preventDefault","stopPropagation","currentActive","querySelector"],"mappings":"2FAAAA,EAAAC,EAAAC,GAAA,IAEAC,EAAA,WAQI,SAAAA,EAAmBC,GAAAC,KAAAD,UACfC,KAAKD,QAAQE,iBAAiB,OAAQ,SAACC,GACnCC,SAASC,cAAc,IAAIC,YAAY,uBAG3CL,KAAKM,kBAsCb,OAlDWR,EAAAS,MAAP,SAAaC,QAAA,IAAAA,MAHM,iCAIfC,MAAMC,KAAKP,SAASQ,iBAAiBH,IAAWI,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBC,QAAQ,SAACjB,GACpH,IAAID,EAAcC,GAClBA,EAAQe,QAAQC,kBAAoB,UAYpCjB,EAAAmB,UAAAX,gBAAR,WACI,IAAMY,EAAiBlB,KAAKD,QAAQY,iBAAiB,6CAC/CQ,EAAoBnB,KAAKD,QAAQY,iBAAiB,0CAExDO,EAAeF,QAAQ,SAAAI,GACnBA,EAAInB,iBAAiB,QAAS,WACrBmB,EAAIC,cAAcC,UAAUC,SAAS,QAGtCH,EAAIC,cAAcC,UAAUE,OAAO,QAFnCJ,EAAIC,cAAcC,UAAUG,IAAI,YAO5CN,EAAkBH,QAAQ,SAAAI,GAEtBA,EAAInB,iBAAiB,QAAS,SAACyB,GAG3B,GAFoBN,EAAIO,QAAQ,0BAEhC,CAEAD,EAAME,iBACNF,EAAMG,kBACN,IACMC,EADUV,EAAIO,QAAQ,sBACEI,cAAc,SAExCD,GAAiBV,EAAIO,QAAQ,0BAA0BL,UAAUC,SAAS,QAC1EH,EAAIO,QAAQ,0BAA0BL,UAAUE,OAAO,SAEvDM,GAAiBA,EAAcR,UAAUE,OAAO,QAChDJ,EAAIO,QAAQ,0BAA0BL,UAAUG,IAAI,eAKxE3B,EAnDA,eAqDA,IAAIA,EAAcS","file":"./modules/LazyAccordion.2fb73698.js","sourcesContent":["const moduleSelector = '[data-module=\"LazyAccordion\"]';\r\n\r\nexport default class LazyAccordion {\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new LazyAccordion(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element: HTMLElement) {\r\n this.element.addEventListener('show', (e) => {\r\n document.dispatchEvent(new CustomEvent(\"FaceLiftLoadMore\"));\r\n })\r\n\r\n this.accordionToggle();\r\n }\r\n\r\n private accordionToggle() {\r\n const accordionItems = this.element.querySelectorAll(\".cp-accordion-item > .uk-accordion-title \");\r\n const faqAccordionItems = this.element.querySelectorAll(\".cp-accordion-item .uk-accordion-title\");\r\n\r\n accordionItems.forEach(ele => {\r\n ele.addEventListener(\"click\", () => {\r\n if (!ele.parentElement.classList.contains(\"open\")) {\r\n ele.parentElement.classList.add(\"open\");\r\n } else {\r\n ele.parentElement.classList.remove(\"open\");\r\n }\r\n })\r\n })\r\n\r\n faqAccordionItems.forEach(ele => {\r\n\r\n ele.addEventListener(\"click\", (event) => {\r\n const faqAccodion = ele.closest('.cp-faq-accordion-item');\r\n\r\n if (!faqAccodion) return;\r\n \r\n event.preventDefault();\r\n event.stopPropagation();\r\n const wrapper = ele.closest('.cp-accordion-item');\r\n const currentActive = wrapper.querySelector('.open');\r\n\r\n if (currentActive && ele.closest('.cp-faq-accordion-item').classList.contains(\"open\")) {\r\n ele.closest('.cp-faq-accordion-item').classList.remove('open');\r\n } else {\r\n currentActive && currentActive.classList.remove('open');\r\n ele.closest('.cp-faq-accordion-item').classList.add(\"open\");\r\n }\r\n })\r\n })\r\n }\r\n}\r\n\r\nnew LazyAccordion.setup();"],"sourceRoot":""}