refactor use cases
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
'use client';
|
||||
|
||||
import React, { createContext, useContext, useMemo, ReactNode } from 'react';
|
||||
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
||||
import { ServiceFactory } from './ServiceFactory';
|
||||
|
||||
// Import all service types
|
||||
@@ -58,6 +59,15 @@ export interface Services {
|
||||
penaltyService: PenaltyService;
|
||||
}
|
||||
|
||||
const queryClient = new QueryClient({
|
||||
defaultOptions: {
|
||||
queries: {
|
||||
staleTime: 5 * 60 * 1000, // 5 minutes
|
||||
gcTime: 10 * 60 * 1000, // 10 minutes
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
const ServicesContext = createContext<Services | null>(null);
|
||||
|
||||
interface ServiceProviderProps {
|
||||
@@ -98,9 +108,11 @@ export function ServiceProvider({ children }: ServiceProviderProps) {
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<ServicesContext.Provider value={services}>
|
||||
{children}
|
||||
</ServicesContext.Provider>
|
||||
<QueryClientProvider client={queryClient}>
|
||||
<ServicesContext.Provider value={services}>
|
||||
{children}
|
||||
</ServicesContext.Provider>
|
||||
</QueryClientProvider>
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user