Files
wtr/hooks/use-current-weather.ts
zv 2182297adc
All checks were successful
CI / Lint, typecheck and build (push) Successful in 9m54s
feat: add global weather support
2026-06-14 15:59:14 +02:00

20 lines
747 B
TypeScript

"use client";
import { useQuery } from "@tanstack/react-query";
import { fetchCurrentWeather } from "@/lib/imgw-current-api";
import { QUERY_GC_TIME } from "@/lib/constants";
import type { WeatherRegion } from "@/types/weather-region";
const CURRENT_WEATHER_STALE_TIME = 2 * 60 * 1000;
export function useCurrentWeather(latitude?: number, longitude?: number, region: WeatherRegion = "PL") {
return useQuery({
queryKey: ["current-weather", region, latitude, longitude],
queryFn: ({ signal }) => fetchCurrentWeather(latitude as number, longitude as number, region, signal),
staleTime: CURRENT_WEATHER_STALE_TIME,
gcTime: QUERY_GC_TIME,
retry: 1,
enabled: Number.isFinite(latitude) && Number.isFinite(longitude),
});
}