add error logging

This commit is contained in:
Abhinav 2024-01-24 13:49:20 +05:30
parent df3aa80091
commit 3d72e58c55

View file

@ -1,4 +1,5 @@
import { CITIES_URL } from '@ente/shared/constants/urls';
import { logError } from '@ente/shared/sentry';
import { LocationTagData } from 'types/entity';
import { Location } from 'types/upload';
@ -16,25 +17,38 @@ class LocationSearchService {
private cities: Array<City> = [];
private citiesPromise: Promise<void>;
loadCities() {
if (this.citiesPromise) {
return;
}
this.citiesPromise = fetch(CITIES_URL).then((response) => {
return response.json().then((data) => {
this.cities = data['data'];
async loadCities() {
try {
if (this.citiesPromise) {
return;
}
this.citiesPromise = fetch(CITIES_URL).then((response) => {
return response.json().then((data) => {
this.cities = data['data'];
});
});
});
await this.citiesPromise;
} catch (e) {
logError(e, 'LocationSearchService loadCities failed');
this.citiesPromise = null;
}
}
async searchCities(searchTerm: string) {
if (!this.citiesPromise) {
this.loadCities();
try {
if (!this.citiesPromise) {
this.loadCities();
}
await this.citiesPromise;
return this.cities.filter((city) => {
return city.city
.toLowerCase()
.startsWith(searchTerm.toLowerCase());
});
} catch (e) {
logError(e, 'LocationSearchService searchCities failed');
throw e;
}
await this.citiesPromise;
return this.cities.filter((city) => {
return city.city.toLowerCase().startsWith(searchTerm.toLowerCase());
});
}
}