Untitled
unknown
plain_text
a year ago
618 B
10
Indexable
import { useState, useEffect } from "react";
import { User } from "firebase/auth";
import { auth } from "@/services/firebase";
interface AuthState {
isSignedIn: boolean;
isPending: boolean;
user: User | null;
}
export function useAuth() {
const [authState, setAuthState] = useState<AuthState>({
isSignedIn: false,
isPending: true,
user: null,
});
useEffect(() => {
const unregisterAuthObserver = auth.onAuthStateChanged((user) =>
setAuthState({ user, isPending: false, isSignedIn: !!user })
);
return () => unregisterAuthObserver();
}, []);
return { ...authState };
}
Editor is loading...
Leave a Comment