diff --git a/src/components/App.tsx b/src/components/App.tsx index 49f4f6c..a99b9c3 100755 --- a/src/components/App.tsx +++ b/src/components/App.tsx @@ -7,12 +7,12 @@ import { AttributesSelector } from "./attribute-selector"; import { AttributeFilter } from "./attribute-filter"; import { InfoModal } from "./info-modal"; import { useStateContext } from "../hooks/use-state"; -import { adjustStationDataset, calculateDistance, getWeatherStations } from "../utils/getWeatherStations"; +import { adjustStationDataset, getWeatherStations } from "../utils/getWeatherStations"; import { addNotificationHandler, createStationsDataset, guaranteeGlobal } from "../utils/codapHelpers"; import { useCODAPApi } from "../hooks/use-codap-api"; import { composeURL, formatData } from "../utils/noaaApiHelper"; import { StationDSName, globalMaxDate, globalMinDate } from "../constants"; -import { geoLocSearch, geoNameSearch } from "../utils/geonameSearch"; +import { geoLocSearch } from "../utils/geonameSearch"; import { DataReturnWarning } from "./data-return-warning"; import { IState } from "../types"; import InfoIcon from "../assets/images/icon-info.svg"; @@ -82,12 +82,12 @@ export const App = () => { if (myCase) { const station = myCase.values; const {latitude, longitude} = station; - const locationName = await geoLocSearch(latitude, longitude); - const locale = await geoNameSearch(locationName, 1); - const distance = locale && calculateDistance(latitude, longitude, locale[0].latitude, locale[0].longitude); + const locationInfo = await geoLocSearch(latitude, longitude); + const locale = `${locationInfo.split(",")[0]}, ${locationInfo.split(",")[1]}`; + const distance = Number(locationInfo.split(",")[2]); setState((draft) => { draft.weatherStation = station; - draft.location = {name: locationName, latitude, longitude}; + draft.location = {name: locale, latitude, longitude}; draft.weatherStationDistance = distance; draft.zoomMap = false; draft.didUserSelectStationFromMap = true; diff --git a/src/types.ts b/src/types.ts index 28f9fc7..04cdb9d 100644 --- a/src/types.ts +++ b/src/types.ts @@ -124,7 +124,7 @@ export interface IState { didUserSelectDate: boolean; isMapOpen: boolean; zoomMap: boolean; - didUserSelectStationFromMap: boolean; + didUserSelectStationFromMap?: boolean; } export const unitMap: UnitMap = { @@ -165,7 +165,6 @@ export const DefaultState: IState = { didUserSelectDate: false, isMapOpen: false, zoomMap: false, - didUserSelectStationFromMap: false, }; interface IDataTypeUnits { diff --git a/src/utils/geonameSearch.ts b/src/utils/geonameSearch.ts index b12448e..009427f 100644 --- a/src/utils/geonameSearch.ts +++ b/src/utils/geonameSearch.ts @@ -57,7 +57,7 @@ export const geoLocSearch = async (lat: number, long: number) => { const response = await fetch(url); if (response.ok) { const data = await response.json(); - return `${data?.geonames?.[0]?.name}, ${data?.geonames?.[0]?.adminCode1}` || "Unknown Location"; + return `${data?.geonames?.[0]?.name}, ${data?.geonames?.[0]?.adminCode1}, ${data?.geonames?.[0]?.distance}` || "Unknown Location"; } else { return Promise.reject(response.statusText); }