di usage in website
This commit is contained in:
@@ -1,26 +1,16 @@
|
||||
import { useQuery } from '@tanstack/react-query';
|
||||
import { useServices } from '@/lib/services/ServiceProvider';
|
||||
|
||||
export function useLeagueMemberships(leagueId: string) {
|
||||
const { leagueMembershipService } = useServices();
|
||||
|
||||
return useQuery({
|
||||
queryKey: ['leagueMemberships', leagueId],
|
||||
queryFn: () => leagueMembershipService.fetchLeagueMemberships(leagueId),
|
||||
enabled: !!leagueId,
|
||||
});
|
||||
}
|
||||
import { useInject } from '@/lib/di/hooks/useInject';
|
||||
import { LEAGUE_MEMBERSHIP_SERVICE_TOKEN } from '@/lib/di/tokens';
|
||||
import { enhanceQueryResult } from '@/lib/di/hooks/useReactQueryWithApiError';
|
||||
|
||||
export function useLeagueMembership(leagueId: string, driverId: string) {
|
||||
const { leagueMembershipService } = useServices();
|
||||
const leagueMembershipService = useInject(LEAGUE_MEMBERSHIP_SERVICE_TOKEN);
|
||||
|
||||
return useQuery({
|
||||
const queryResult = useQuery({
|
||||
queryKey: ['leagueMembership', leagueId, driverId],
|
||||
queryFn: async () => {
|
||||
// First fetch memberships if not cached
|
||||
await leagueMembershipService.fetchLeagueMemberships(leagueId);
|
||||
return leagueMembershipService.getMembership(leagueId, driverId);
|
||||
},
|
||||
queryFn: () => leagueMembershipService.getMembership(leagueId, driverId),
|
||||
enabled: !!leagueId && !!driverId,
|
||||
});
|
||||
}
|
||||
|
||||
return enhanceQueryResult(queryResult);
|
||||
}
|
||||
Reference in New Issue
Block a user