1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
import { useQuery } from "@tanstack/react-query";
import { fetchPlan } from "../api/planner";
export const usePlanQuery = (
fromLat: number | undefined,
fromLon: number | undefined,
toLat: number | undefined,
toLon: number | undefined,
time?: Date,
arriveBy: boolean = false,
enabled: boolean = true
) => {
return useQuery({
queryKey: [
"plan",
fromLat,
fromLon,
toLat,
toLon,
time?.toISOString(),
arriveBy,
],
queryFn: () =>
fetchPlan(fromLat!, fromLon!, toLat!, toLon!, time, arriveBy),
enabled: !!(fromLat && fromLon && toLat && toLon) && enabled,
staleTime: 60000, // 1 minute
retry: false,
});
};
|