{"version":3,"file":"4031.0c33778457fcc31f9ef7.js","mappings":"+IAEA,MAAMA,EAEFC,WAAAA,CAAYC,GAKR,GAJAC,KAAKD,GAAKA,EACVC,KAAKC,QAAUF,EAAGG,cAAc,wBAChCF,KAAKG,SAAWJ,EAAGG,cAAc,yBACjCF,KAAKI,UAAYC,SAASH,cAAc,IAAIH,EAAGO,QAAQC,eAClC,MAAlBP,KAAKI,UAAmB,CACvBJ,KAAKQ,UAAY,GACGR,KAAKI,UAAUK,iBAAiB,yBACtCC,SAAQC,IAElB,IAAIC,EAAU,CAACC,QAAQ,GACvBF,EAAEG,UAAUC,SAAS,QAAUH,EAAQI,MAAO,EAAOJ,EAAQK,MAAO,EACpEjB,KAAKQ,UAAUU,KAAKC,EAAAA,GAAWC,oBAAoBT,EAAGC,GAAS,IAGnEZ,KAAKC,QAAQoB,QAAU,KACnBrB,KAAKa,QAAO,EAAK,EAErBb,KAAKG,SAASkB,QAAU,KACpBrB,KAAKa,QAAO,EAAM,CAE1B,CACJ,CAEAA,MAAAA,CAAOS,GACHtB,KAAKQ,UAAUE,SAAQC,IAChBW,EACCX,EAAEK,OAEFL,EAAEM,MACN,GAER,EAKG,SAASM,EAAWC,GACvBA,EAASd,SAASe,IAEQ,IAAlBA,EAAKC,UACL,IAAI7B,EAAiB4B,EACzB,GAER,C","sources":["webpack://UKCISA/./wwwroot/app/src/js/accordion-open-close-all.js"],"sourcesContent":["import { Collapse as bsCollapse } from 'bootstrap';\r\n\r\nclass AccordionControl {\r\n\r\n    constructor(el) {\r\n        this.el = el;\r\n        this.openBtn = el.querySelector('.accordion--open-all');\r\n        this.closeBtn = el.querySelector('.accordion--close-all');\r\n        this.accordian = document.querySelector(`#${el.dataset.accordionId}`);\r\n        if(this.accordian != null) {\r\n            this.expanders = [];\r\n            let findExpanders = this.accordian.querySelectorAll('.expander > .collapse');\r\n            findExpanders.forEach(e => {\r\n                //console.log(`collapse show: ${e.classList.contains('show')}`);\r\n                let options = {toggle: false};\r\n                e.classList.contains('show') ? options.show = true : options.hide = true;\r\n                this.expanders.push(bsCollapse.getOrCreateInstance(e, options));\r\n            });\r\n            // button behaviours\r\n            this.openBtn.onclick = () => {\r\n                this.toggle(true);\r\n            }\r\n            this.closeBtn.onclick = () => {\r\n                this.toggle(false);\r\n            }\r\n        }\r\n    }\r\n\r\n    toggle(mode) {\r\n        this.expanders.forEach(e => {\r\n            if(mode) {\r\n                e.show();\r\n            } else {\r\n                e.hide();\r\n            }\r\n        });\r\n    }\r\n\r\n}\r\n\r\n// export the default function to create\r\nexport function createFrom(wrappers) {\r\n    wrappers.forEach((node) => {\r\n        // if node is an element\r\n        if (node.nodeType === 1) {\r\n            new AccordionControl(node);\r\n        }\r\n    });\r\n}"],"names":["AccordionControl","constructor","el","this","openBtn","querySelector","closeBtn","accordian","document","dataset","accordionId","expanders","querySelectorAll","forEach","e","options","toggle","classList","contains","show","hide","push","bsCollapse","getOrCreateInstance","onclick","mode","createFrom","wrappers","node","nodeType"],"sourceRoot":""}