{"version":3,"file":"js/select_all-e3e1521fe0cfbc80336b.js","mappings":"6EAkBAA,SAASC,iBAAiB,oBAAoB,WAC5C,MAAMC,EAAoBF,SAASG,cAAc,QAC3CC,EAAiBJ,SAASK,iBAAiB,eAC3CC,EAAUN,SAASO,eAAe,UA+BxC,SAASC,IACPN,EAAkBO,SAAU,EAC5BH,EAAQI,UA7CM,u5CA8CdJ,EAAQK,MAAMC,QAAUV,EAAkBO,SAAW,IAErDL,EAAeS,SAASC,IACtBA,EAASL,SAAU,GACnBK,EAAWA,EAASC,mBAAmBZ,cAAc,aAC5CQ,MAAMC,QAAUV,EAAkBO,SAAW,GAAG,GAE7D,CAWA,SAASO,EAAsBF,GAC7BZ,EAAkBO,SAAU,EAC5BH,EAAQI,UA3EW,2YA4EnBJ,EAAQK,MAAMC,QAAU,IACpBE,EAASL,SACXK,EAAWA,EAASC,mBAAmBZ,cAAc,aAC5CQ,MAAMC,QAAU,KAEzBE,EAAWA,EAASC,mBAAmBZ,cAAc,aAC5CQ,MAAMC,QAAU,GAE7B,CA5DIV,GAAqBE,GAA8B,OAAZE,IAE3CJ,GAAmBD,iBAAiB,UAAWgB,IACzCA,EAAEC,OAAOT,QACXD,KAqCFF,EAAQK,MAAMC,SAAWV,EAAkBO,SAAW,IACtDL,EAAeS,SAASC,IACtBA,EAASL,SAAU,GACnBK,EAAWA,EAASC,mBAAmBZ,cAAc,aAC5CQ,MAAMC,SAAWV,EAAkBO,SAAW,GAAG,IAtC5D,IAGFL,GAAgBS,SAASC,IACvBA,EAASb,iBAAiB,UAAWgB,IAC/BA,EAAEC,OAAOT,QACP,IAAIL,GAAgBe,OAAML,GAAYA,EAASL,UACjDD,IAEAQ,EAAsBF,GAGpB,IAAIV,GAAgBgB,MAAKN,GAAYA,EAASL,UAChDO,EAAsBF,GA0C9B,SAA+BA,GAC7BA,EAASL,SAAU,EACnBP,EAAkBO,SAAU,EAC5BH,EAAQK,MAAMC,QAAU,IACxBE,EAAWA,EAASC,mBAAmBZ,cAAc,YACrDW,EAASH,MAAMC,QAAU,GAC3B,CA9CQS,CAAsBP,EAE1B,GACA,IA4CN,G","sources":["webpack://app/./app/javascript/checkboxes/index.js"],"sourcesContent":["const someFilledSvg = `\n \n \n \n \n \n \n`;\n\nconst checkSvg = `\n \n \n \n \n \n \n`;\n\ndocument.addEventListener('DOMContentLoaded', function() {\n const selectAllCheckbox = document.querySelector('.all');\n const formCheckboxes = document.querySelectorAll('.individual');\n const tickSvg = document.getElementById('allSvg');\n\n // If there are no saved searches, we do not want to do any of the code below\n if (selectAllCheckbox && formCheckboxes && tickSvg === null) { return; }\n\n selectAllCheckbox?.addEventListener('change', (e) => {\n if (e.target.checked) {\n stylesForSelectAll();\n } else {\n stylesForDeselectAll();\n }\n });\n\n formCheckboxes?.forEach((checkbox) => {\n checkbox.addEventListener('change', (e) => {\n if (e.target.checked) {\n if ([...formCheckboxes].every(checkbox => checkbox.checked)) {\n stylesForSelectAll();\n } else {\n stylesForSomeSelected(checkbox);\n }\n } else {\n if ([...formCheckboxes].some(checkbox => checkbox.checked)) {\n stylesForSomeSelected(checkbox);\n } else {\n stylesForNoneSelected(checkbox);\n }\n }\n });\n });\n\n function stylesForSelectAll() {\n selectAllCheckbox.checked = true;\n tickSvg.innerHTML = checkSvg;\n tickSvg.style.opacity = selectAllCheckbox.checked && '1';\n\n formCheckboxes.forEach((checkbox) => {\n checkbox.checked = true;\n checkbox = checkbox.nextElementSibling.querySelector('.tickSvg');\n checkbox.style.opacity = selectAllCheckbox.checked && '1';\n });\n }\n\n function stylesForDeselectAll() {\n tickSvg.style.opacity = !selectAllCheckbox.checked && '0';\n formCheckboxes.forEach((checkbox) => {\n checkbox.checked = false;\n checkbox = checkbox.nextElementSibling.querySelector('.tickSvg');\n checkbox.style.opacity = !selectAllCheckbox.checked && '0';\n });\n }\n\n function stylesForSomeSelected(checkbox) {\n selectAllCheckbox.checked = false;\n tickSvg.innerHTML = someFilledSvg;\n tickSvg.style.opacity = '1';\n if (checkbox.checked) {\n checkbox = checkbox.nextElementSibling.querySelector('.tickSvg');\n checkbox.style.opacity = '1';\n } else {\n checkbox = checkbox.nextElementSibling.querySelector('.tickSvg');\n checkbox.style.opacity = '0';\n }\n }\n\n function stylesForNoneSelected(checkbox) {\n checkbox.checked = false;\n selectAllCheckbox.checked = false;\n tickSvg.style.opacity = '0';\n checkbox = checkbox.nextElementSibling.querySelector('.tickSvg');\n checkbox.style.opacity = '0';\n }\n});\n"],"names":["document","addEventListener","selectAllCheckbox","querySelector","formCheckboxes","querySelectorAll","tickSvg","getElementById","stylesForSelectAll","checked","innerHTML","style","opacity","forEach","checkbox","nextElementSibling","stylesForSomeSelected","e","target","every","some","stylesForNoneSelected"],"sourceRoot":""}