2021-05-20 07:50:20 +00:00
|
|
|
import HTTPService from './HTTPService';
|
2021-05-20 08:19:37 +00:00
|
|
|
import * as chrono from 'chrono-node';
|
2021-05-20 07:50:20 +00:00
|
|
|
|
|
|
|
export const getMapboxToken = () => {
|
|
|
|
return process.env.NEXT_PUBLIC_MAPBOX_TOKEN;
|
|
|
|
};
|
|
|
|
|
2021-05-20 08:19:37 +00:00
|
|
|
export function parseHumanDate(humanDate: string) {
|
|
|
|
return chrono.parseDate(humanDate);
|
|
|
|
}
|
|
|
|
|
2021-05-20 07:50:20 +00:00
|
|
|
export async function searchLocation(
|
|
|
|
location: string
|
|
|
|
): Promise<[number, number, number, number]> {
|
|
|
|
const resp = await HTTPService.get(
|
|
|
|
`https://api.mapbox.com/geocoding/v5/mapbox.places/${encodeURI(
|
|
|
|
location
|
|
|
|
)}.json`,
|
2021-05-20 08:25:24 +00:00
|
|
|
{ access_token: getMapboxToken(), limit: 1 }
|
2021-05-20 07:50:20 +00:00
|
|
|
);
|
|
|
|
return resp.data.features.length > 0 && resp.data.features[0].bbox;
|
|
|
|
}
|