Files
LogiFlow/client/src/hooks/useAuth.ts
T
2025-08-11 14:43:48 +00:00

29 lines
789 B
TypeScript

import { useQuery } from "@tanstack/react-query";
export function useAuth() {
const { data: user, isLoading, error } = useQuery({
queryKey: ["/api/user"],
retry: (failureCount, error: any) => {
// Ne pas retry si c'est une erreur d'authentification
if (error?.message?.includes('401') || error?.message?.includes('Unauthorized')) {
return false;
}
return failureCount < 2;
},
refetchInterval: false,
refetchOnWindowFocus: false,
refetchOnMount: true, // Permettre le rechargement au montage
refetchOnReconnect: false,
staleTime: 5 * 60 * 1000, // 5 minutes
gcTime: 10 * 60 * 1000, // 10 minutes
enabled: true,
});
return {
user: user || null,
isLoading,
isAuthenticated: !!user,
error,
};
}