mirror of
https://github.com/myfatemi04/wheelshare-frontend.git
synced 2025-04-09 22:00:16 -04:00
30 lines
785 B
TypeScript
30 lines
785 B
TypeScript
const div = document.createElement('div');
|
|
const places = new google.maps.places.PlacesService(div);
|
|
|
|
export type PlaceDetails = {
|
|
name: string;
|
|
formattedAddress: string;
|
|
latitude: number;
|
|
longitude: number;
|
|
};
|
|
|
|
export default async function getPlaceDetails(placeId: string) {
|
|
return new Promise<PlaceDetails>((resolve, reject) => {
|
|
places.getDetails(
|
|
{ placeId, fields: ['name', 'formatted_address', 'geometry'] },
|
|
(result, status) => {
|
|
if (result || status === 'OK') {
|
|
resolve({
|
|
name: result.name,
|
|
formattedAddress: result.formatted_address!,
|
|
latitude: result.geometry!.location.lat(),
|
|
longitude: result.geometry!.location.lng(),
|
|
});
|
|
} else {
|
|
reject(new Error('Unexpected Places status ' + status));
|
|
}
|
|
}
|
|
);
|
|
});
|
|
}
|