async function getCurrentPosition() { return new Promise((resolve, reject) => { if (!navigator.geolocation) { reject("Geolocation is not supported"); return; } navigator.geolocation.getCurrentPosition( (position) => { const { latitude, longitude } = position.coords; userLocation = { latitude, longitude }; // Store globally resolve(userLocation); // Resolve with user location }, (error) => reject(error.message) // Reject on error (e.g., permission denied) ); }); } async function init() { // prettier-ignore try { // get user location on page load const location = await getCurrentPosition(); console.log({userLocation}); } catch (error) { console.error(error); } } window.addEventListener("DOMContentLoaded", init);