diff --git a/web/ui/mantine-ui/src/api/api.ts b/web/ui/mantine-ui/src/api/api.ts index baef0b72c..d7446d689 100644 --- a/web/ui/mantine-ui/src/api/api.ts +++ b/web/ui/mantine-ui/src/api/api.ts @@ -1,4 +1,4 @@ -import { useQuery, useSuspenseQuery } from "@tanstack/react-query"; +import { QueryKey, useQuery, useSuspenseQuery } from "@tanstack/react-query"; import { useSettings } from "../state/settingsSlice"; export const API_PATH = "api/v1"; @@ -89,7 +89,7 @@ const createQueryFn = }; type QueryOptions = { - key?: string; + key?: QueryKey; path: string; params?: Record; enabled?: boolean; @@ -106,7 +106,7 @@ export const useAPIQuery = ({ const { pathPrefix } = useSettings(); return useQuery>({ - queryKey: key ? [key] : [path, params], + queryKey: key !== undefined ? key : [path, params], retry: false, refetchOnWindowFocus: false, gcTime: 0, @@ -119,7 +119,7 @@ export const useSuspenseAPIQuery = ({ key, path, params }: QueryOptions) => { const { pathPrefix } = useSettings(); return useSuspenseQuery>({ - queryKey: key ? [key] : [path, params], + queryKey: key !== undefined ? key : [path, params], retry: false, refetchOnWindowFocus: false, gcTime: 0, diff --git a/web/ui/mantine-ui/src/components/ReadinessWrapper.tsx b/web/ui/mantine-ui/src/components/ReadinessWrapper.tsx index 800195e98..52ae0485c 100644 --- a/web/ui/mantine-ui/src/components/ReadinessWrapper.tsx +++ b/web/ui/mantine-ui/src/components/ReadinessWrapper.tsx @@ -15,7 +15,7 @@ const ReadinessLoader: FC = () => { // Query readiness status. const { data: ready } = useSuspenseQuery({ - queryKey: [`ready-${queryKey}`], + queryKey: ["ready", queryKey], retry: false, refetchOnWindowFocus: false, gcTime: 0, @@ -46,8 +46,8 @@ const ReadinessLoader: FC = () => { data: { min, max, current }, }, } = useSuspenseAPIQuery({ - path: `/status/walreplay`, - key: `walreplay-${queryKey}`, + path: "/status/walreplay", + key: ["walreplay", queryKey], }); useEffect(() => { diff --git a/web/ui/mantine-ui/src/pages/query/ExpressionInput.tsx b/web/ui/mantine-ui/src/pages/query/ExpressionInput.tsx index b13a81f61..b74d74596 100644 --- a/web/ui/mantine-ui/src/pages/query/ExpressionInput.tsx +++ b/web/ui/mantine-ui/src/pages/query/ExpressionInput.tsx @@ -144,7 +144,7 @@ const ExpressionInput: FC = ({ isFetching: isFormatting, refetch: formatQuery, } = useAPIQuery({ - key: expr, + key: [expr], path: "/format_query", params: { query: expr, diff --git a/web/ui/mantine-ui/src/pages/query/Graph.tsx b/web/ui/mantine-ui/src/pages/query/Graph.tsx index d6e413cfd..3fc9a6c51 100644 --- a/web/ui/mantine-ui/src/pages/query/Graph.tsx +++ b/web/ui/mantine-ui/src/pages/query/Graph.tsx @@ -44,7 +44,7 @@ const Graph: FC = ({ const { data, error, isFetching, isLoading, refetch } = useAPIQuery({ - key: useId(), + key: [useId()], path: "/query_range", params: { query: expr, diff --git a/web/ui/mantine-ui/src/pages/query/TableTab.tsx b/web/ui/mantine-ui/src/pages/query/TableTab.tsx index f65936e6d..353509d8a 100644 --- a/web/ui/mantine-ui/src/pages/query/TableTab.tsx +++ b/web/ui/mantine-ui/src/pages/query/TableTab.tsx @@ -28,7 +28,7 @@ const TableTab: FC = ({ panelIdx, retriggerIdx }) => { const { endTime, range } = visualizer; const { data, error, isFetching, refetch } = useAPIQuery({ - key: useId(), + key: [useId()], path: "/query", params: { query: expr,