'use client' import { QueryClient, QueryClientProvider } from '@tanstack/react-query' import { ReactQueryDevtools } from '@tanstack/react-query-devtools' import { useState } from 'react' export default function QueryProvider({ children }: { children: React.ReactNode }) { const [queryClient] = useState( () => new QueryClient({ defaultOptions: { queries: { staleTime: 5 * 60 * 1000, // 5 minutes gcTime: 10 * 60 * 1000, // 10 minutes retry: (failureCount, error: any) => { // Don't retry on 4xx errors if (error?.status >= 400 && error?.status < 500) { return false } return failureCount < 2 }, }, mutations: { retry: 1, }, }, }) ) return ( {children} ) }