{"version":3,"file":"collapse-BuwfRoSo.js","sources":["../../../app/javascript/modules/collapse.js"],"sourcesContent":["import { on } from \"../utils/listeners\";\n\nconst collapse = () => {\n on(\"click\", \"[data-toggle='collapse']\", (el, e) => {\n e.preventDefault();\n const target = document.querySelector(el.getAttribute(\"href\"));\n const container = el.closest(\".collapse-container\");\n\n target.style.height = `${target.scrollHeight}px`;\n target.style.height = `${target.scrollHeight}px`;\n\n if (target.classList.contains(\"in\")) {\n target.classList.remove(\"in\");\n target.style.height = 0;\n el.classList.add(\"collapsed\");\n } else {\n target.classList.add(\"in\");\n target.style.height = `${target.scrollHeight}px`;\n el.classList.remove(\"collapsed\");\n\n // Workaround for issue with \"nested\" collapsible elements\n // e.g. filters with \"+ more\" control\n setTimeout(() => {\n target.style.height = \"auto\";\n }, 500);\n }\n container.querySelector(\".toggle-more\").style.display =\n target.classList.contains(\"in\") ? \"none\" : \"inline-flex\";\n container.querySelector(\".toggle-less\").style.display =\n target.classList.contains(\"in\") ? \"inline-flex\" : \"none\";\n });\n};\n\nexport default collapse;\n"],"names":["collapse","on","el","e","target","container"],"mappings":"4CAEK,MAACA,EAAW,IAAM,CACrBC,EAAG,QAAS,2BAA4B,CAACC,EAAIC,IAAM,CACjDA,EAAE,eAAgB,EAClB,MAAMC,EAAS,SAAS,cAAcF,EAAG,aAAa,MAAM,CAAC,EACvDG,EAAYH,EAAG,QAAQ,qBAAqB,EAElDE,EAAO,MAAM,OAAS,GAAGA,EAAO,YAAY,KAC5CA,EAAO,MAAM,OAAS,GAAGA,EAAO,YAAY,KAExCA,EAAO,UAAU,SAAS,IAAI,GAChCA,EAAO,UAAU,OAAO,IAAI,EAC5BA,EAAO,MAAM,OAAS,EACtBF,EAAG,UAAU,IAAI,WAAW,IAE5BE,EAAO,UAAU,IAAI,IAAI,EACzBA,EAAO,MAAM,OAAS,GAAGA,EAAO,YAAY,KAC5CF,EAAG,UAAU,OAAO,WAAW,EAI/B,WAAW,IAAM,CACfE,EAAO,MAAM,OAAS,MACvB,EAAE,GAAG,GAERC,EAAU,cAAc,cAAc,EAAE,MAAM,QAC5CD,EAAO,UAAU,SAAS,IAAI,EAAI,OAAS,cAC7CC,EAAU,cAAc,cAAc,EAAE,MAAM,QAC5CD,EAAO,UAAU,SAAS,IAAI,EAAI,cAAgB,MACxD,CAAG,CACH"}