feat: add Open-Meteo weather forecast

This commit is contained in:
zv
2026-06-01 19:57:11 +02:00
parent 1c8b57b571
commit fc14b23001
12 changed files with 380 additions and 7 deletions

16
hooks/use-forecast.ts Normal file
View File

@@ -0,0 +1,16 @@
"use client";
import { useQuery } from "@tanstack/react-query";
import { fetchForecast } from "@/lib/forecast-api";
import { QUERY_GC_TIME } from "@/lib/constants";
export function useForecast(latitude?: number, longitude?: number) {
return useQuery({
queryKey: ["forecast", latitude, longitude],
queryFn: ({ signal }) => fetchForecast(latitude as number, longitude as number, signal),
enabled: Number.isFinite(latitude) && Number.isFinite(longitude),
staleTime: 15 * 60 * 1000,
gcTime: QUERY_GC_TIME,
retry: 2,
});
}