{"version":3,"file":"office-directory-filter.min.js","names":["async","countyFilterDropdown","categoryFilterElement","document","querySelectorAll","categoryItemElement","categorySectionElement","siteContentElement","querySelector","categoryFilterToggleText","forEach","item","categoryValue","getAttribute","addEventListener","event","preventDefault","classList","remove","add","value","closest","addRemoveClassOnFilterItem","innerText","filterSelected","Event","dispatchEvent","pageUrlParam","window","location","search","countyParam","URLSearchParams","get","str","replaceAll","replace","match","index","toLowerCase","toUpperCase","click"],"sources":["office-directory-filter.js"],"mappings":"AAAAA,eAAeC,uBACX,MAAMC,EAAwBC,SAASC,iBAAiB,0BAClDC,EAAsBF,SAASC,iBAAiB,wBAChDE,EAAyBH,SAASC,iBAAiB,gCACnDG,EAAqBJ,SAASK,cAAc,iBAC5CC,EAA0BN,SAASK,cAAc,4CAEvDN,EAAsBQ,SAASC,IAC3B,MAAMC,EAAgBD,EAAKE,aAAa,wBAExCF,EAAKG,iBAAiB,SAAUC,IAC5BA,EAAMC,iBACNd,EAAsBQ,SAAQC,IAC1BA,EAAKM,UAAUC,OAAO,SAAS,IAEnCP,EAAKM,UAAUE,IAAI,UAoB3B,SAAoCC,GAChCf,EAAoBK,SAAQC,IACxBA,EAAKU,QAAQ,sBAAsBJ,UAAUC,OAAO,sBAAsB,IAGjDf,SAASC,iBAAiB,wBAA0BgB,EAAQ,MACpEV,SAAQC,IACzBA,EAAKU,QAAQ,sBAAsBJ,UAAUE,IAAI,sBAAsB,IAG3Eb,EAAuBI,SAAQC,IACEA,EAAKH,cAAc,yBAG5CD,EAAmBU,UAAUE,IAAI,mCACjCR,EAAKM,UAAUE,IAAI,+BAEnBR,EAAKM,UAAUC,OAAO,6BACtBX,EAAmBU,UAAUC,OAAO,mCACxC,GAER,CAxCQI,CAA2BV,GAE3BH,EAAyBc,UAAYZ,EAAKY,UAE1C,MAAMC,EAAiB,IAAIC,MAAM,mBAGjCd,EAAKe,cAAcF,EAAe,GACpC,IAGN,MAAMG,EAAeC,OAAOC,SAASC,OAE/BC,EADY,IAAIC,gBAAgBL,GACRM,IAAI,UA6BlC,IAAkBC,EA3BE,OAAhBH,GACA5B,SAASK,cAAc,0BA0BT0B,EA1B4CH,EAAYI,WAAW,IAAK,KA2B/ED,EAAIE,QAAQ,2BAA2B,SAASC,EAAOC,GAC9D,OAAe,IAAVD,EAAoB,GACJ,IAAVC,EAAcD,EAAME,cAAgBF,EAAMG,aACrD,eA9BuGC,OAgC/G","sourcesContent":["async function countyFilterDropdown() {\r\n const categoryFilterElement = document.querySelectorAll('[data-category-filter]');\r\n const categoryItemElement = document.querySelectorAll('[data-category-item]');\r\n const categorySectionElement = document.querySelectorAll('.index-section, .index-items');\r\n const siteContentElement = document.querySelector('.site-content');\r\n const categoryFilterToggleText= document.querySelector('.index-filter .index-filter__toggle-text');\r\n \r\n categoryFilterElement.forEach((item) => {\r\n const categoryValue = item.getAttribute('data-category-filter');\r\n \r\n item.addEventListener('click', (event) => {\r\n event.preventDefault();\r\n categoryFilterElement.forEach(item => {\r\n item.classList.remove('active');\r\n });\r\n item.classList.add('active');\r\n addRemoveClassOnFilterItem(categoryValue);\r\n \r\n categoryFilterToggleText.innerText = item.innerText;\r\n\r\n const filterSelected = new Event('filter-selected');\r\n\r\n // Dispatch the event.\r\n item.dispatchEvent(filterSelected);\r\n });\r\n });\r\n\r\n const pageUrlParam = window.location.search;\r\n const urlParams = new URLSearchParams(pageUrlParam);\r\n const countyParam = urlParams.get('county');\r\n\r\n if (countyParam !== null) {\r\n document.querySelector(`[data-category-filter=\"${camelize(countyParam.replaceAll('+', ' '))}County\"]`).click();\r\n }\r\n \r\n function addRemoveClassOnFilterItem(value) {\r\n categoryItemElement.forEach(item => {\r\n item.closest('.index-items__item').classList.remove('js-category-showing');\r\n });\r\n \r\n const activeFilterCategory = document.querySelectorAll('[data-category-item=\"' + value + '\"]');\r\n activeFilterCategory.forEach(item => {\r\n item.closest('.index-items__item').classList.add('js-category-showing');\r\n });\r\n \r\n categorySectionElement.forEach(item => {\r\n const activeFilterElements = item.querySelector('.js-category-showing');\r\n \r\n if (activeFilterElements) {\r\n siteContentElement.classList.add('js-index-filter-entries-showing');\r\n item.classList.add('js-filter-section-showing');\r\n } else {\r\n item.classList.remove('js-filter-section-showing');\r\n siteContentElement.classList.remove('js-index-filter-entries-showing');\r\n }\r\n });\r\n }\r\n \r\n function camelize(str) {\r\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w|\\s+)/g, function(match, index) {\r\n if (+match === 0) return '';\r\n return index === 0 ? match.toLowerCase() : match.toUpperCase();\r\n });\r\n }\r\n}"]}