lse }); } if (state.route === "listings" && state.filters.sort === "distance_asc") { scheduleListingsUpdate(); } }, () => { // ignore denied }, { enableHighAccuracy: false, maximumAge: 120000, timeout: 8000 }); } window.addEventListener("hashchange", () => { parseHash(); render(); }); (async () => { await initData(); parseHash(); render(); // Optional: attempt location (blue dot) on load. requestGeolocation(); })();