const { data: findCitiesByNameData = [], status: findCitiesByNameStatus } =
api.search.findCitiesByName.useQuery({
name: searchValue.name,
});
const { data: findCityByIdData = [], status: findCityByIdStatus } =
api.search.findCityById.useQuery({
id: searchValue.id,
});
const { data: findCityByNameData = [], status: findCityByNameStatus } =
api.search.findCityByName.useQuery({
name: searchValue.name,
});
useEffect(() => {
if (searchValue.name === "") {
setResults([]);
return;
}
if (!findCitiesByNameData || findCitiesByNameStatus !== "success") return;
setResults(findCitiesByNameData);
}, [searchValue, findCitiesByNameData, findCitiesByNameStatus]);
const searchCity = () => {
let city: ICity | undefined = {
id: 0,
name: "",
country: "",
region: "",
coord: {
lon: 0,
lat: 0,
},
};
if (searchValue.id === -1) {
city = {
id: -1,
name: searchValue.name,
country: "",
region: "",
coord: {
lon: searchValue.coord.lon,
lat: searchValue.coord.lat,
},
};
} else {
if (searchValue.id !== 0 && searchValue.country !== "") {
if (!Array.isArray(findCityByIdData)) {
city = findCityByIdData.city;
} else {
toast.error(translationLocationSettings("city not found toast"));
return;
}
} else {
if (!Array.isArray(findCityByNameData)) {
city = findCityByNameData.city;
} else {
toast.error(translationLocationSettings("city not found toast"));
return;
}
}
}
const { data: findCitiesByNameData = [], status: findCitiesByNameStatus } =
api.search.findCitiesByName.useQuery({
name: searchValue.name,
});
const { data: findCityByIdData = [], status: findCityByIdStatus } =
api.search.findCityById.useQuery({
id: searchValue.id,
});
const { data: findCityByNameData = [], status: findCityByNameStatus } =
api.search.findCityByName.useQuery({
name: searchValue.name,
});
useEffect(() => {
if (searchValue.name === "") {
setResults([]);
return;
}
if (!findCitiesByNameData || findCitiesByNameStatus !== "success") return;
setResults(findCitiesByNameData);
}, [searchValue, findCitiesByNameData, findCitiesByNameStatus]);
const searchCity = () => {
let city: ICity | undefined = {
id: 0,
name: "",
country: "",
region: "",
coord: {
lon: 0,
lat: 0,
},
};
if (searchValue.id === -1) {
city = {
id: -1,
name: searchValue.name,
country: "",
region: "",
coord: {
lon: searchValue.coord.lon,
lat: searchValue.coord.lat,
},
};
} else {
if (searchValue.id !== 0 && searchValue.country !== "") {
if (!Array.isArray(findCityByIdData)) {
city = findCityByIdData.city;
} else {
toast.error(translationLocationSettings("city not found toast"));
return;
}
} else {
if (!Array.isArray(findCityByNameData)) {
city = findCityByNameData.city;
} else {
toast.error(translationLocationSettings("city not found toast"));
return;
}
}
}