{"version":3,"file":"posts/filters.js","mappings":"YAAA,MAAMA,EAAeC,SAASC,eAAe,iBACvCC,EAAcF,SAASC,eAAe,gBACtCE,EAAeH,SAASC,eAAe,iBACvCG,EAAeJ,SAASK,cAAc,6BACtCC,EAAaN,SAASK,cAAc,2BAEpCE,EAAeC,MAAOC,IAC1B,IAAKA,EAGH,OAFAH,EAAWI,UAAY,8DACvBJ,EAAWK,UAAW,GAIxB,IACE,MAAMC,QAAiBC,MAAM,YAAYC,mBAAmBL,aACtDM,QAAeH,EAASI,OAE9BV,EAAWI,UAAY,0CACvBK,EAAOE,SAAQC,IACb,MAAMC,EAAS,IAAIC,OAAOF,EAAKG,KAAMH,EAAKG,MAC1Cf,EAAWgB,IAAIH,EAAO,IAExBb,EAAWK,UAAW,CACxB,CAAE,MAAOY,GACPC,QAAQD,MAAM,yBAA0BA,GACxCjB,EAAWK,UAAW,CACxB,GAGFP,EAAaqB,iBAAiB,UAAWC,IACvCnB,EAAamB,EAAEC,OAAOC,MAAM,IAG9B,MAIMC,EAAY,KAChB3B,EAAY4B,UAAUR,IAAI,SAAS,EAGrCvB,EAAa0B,iBAAiB,SARZ,KAChBvB,EAAY4B,UAAUC,OAAO,SAAS,IAQxC7B,EAAYuB,iBAAiB,SAAUC,IACjCA,EAAEC,SAAWzB,GACf2B,GACF,IAGF1B,EAAasB,iBAAiB,SAAUC,IACtCA,EAAEM,iBACFH,GAAW,IAIbI,OAAOC,mBAAqB,WAC1B,MAAM5B,EAAaN,SAASK,cAAc,2BACpCD,EAAeJ,SAASK,cAAc,6BAExCC,EAAWsB,OAA8B,KAArBtB,EAAWsB,MACjCK,OAAOE,SAASC,KAAO,WAAW9B,EAAWsB,MAAMS,gBAC1CjC,EAAawB,OAAgC,KAAvBxB,EAAawB,QAC5CK,OAAOE,SAASC,KAAO,YAAYhC,EAAawB,MAAMS,gBAE1D,EAEA9B,G","sources":["webpack://trace_taiwan/./app/javascript/packs/posts/filters.js"],"sourcesContent":["const filterButton = document.getElementById('filter-button');\nconst filterModal = document.getElementById('filter-modal');\nconst cancelButton = document.getElementById('cancel-filter');\nconst regionSelect = document.querySelector('select[name=\"region[id]\"]');\nconst citySelect = document.querySelector('select[name=\"city[id]\"]');\n\nconst updateCities = async (regionName) => {\n if (!regionName) {\n citySelect.innerHTML = '';\n citySelect.disabled = true;\n return;\n }\n\n try {\n const response = await fetch(`/regions/${encodeURIComponent(regionName)}/cities`);\n const cities = await response.json();\n\n citySelect.innerHTML = '';\n cities.forEach(city => {\n const option = new Option(city.name, city.name);\n citySelect.add(option);\n });\n citySelect.disabled = false;\n } catch (error) {\n console.error('Error fetching cities:', error);\n citySelect.disabled = true;\n }\n};\n\nregionSelect.addEventListener('change', (e) => {\n updateCities(e.target.value);\n});\n\nconst showModal = () => {\n filterModal.classList.remove('hidden');\n};\n\nconst hideModal = () => {\n filterModal.classList.add('hidden');\n};\n\nfilterButton.addEventListener('click', showModal);\nfilterModal.addEventListener('click', (e) => {\n if (e.target === filterModal) {\n hideModal();\n }\n});\n\ncancelButton.addEventListener('click', (e) => {\n e.preventDefault();\n hideModal();\n});\n\n// Make handleFilterSubmit available globally\nwindow.handleFilterSubmit = function() {\n const citySelect = document.querySelector('select[name=\"city[id]\"]');\n const regionSelect = document.querySelector('select[name=\"region[id]\"]');\n \n if (citySelect.value && citySelect.value !== '') {\n window.location.href = `/cities/${citySelect.value.toLowerCase()}`;\n } else if (regionSelect.value && regionSelect.value !== '') {\n window.location.href = `/regions/${regionSelect.value.toLowerCase()}`;\n }\n}\n\nupdateCities();"],"names":["filterButton","document","getElementById","filterModal","cancelButton","regionSelect","querySelector","citySelect","updateCities","async","regionName","innerHTML","disabled","response","fetch","encodeURIComponent","cities","json","forEach","city","option","Option","name","add","error","console","addEventListener","e","target","value","hideModal","classList","remove","preventDefault","window","handleFilterSubmit","location","href","toLowerCase"],"sourceRoot":""}