mirror of
https://github.com/supabase/supabase.git
synced 2026-10-11 20:35:07 +03:00
28 lines
716 B
JavaScript
28 lines
716 B
JavaScript
import { useEffect, useState } from 'react';
|
|
import { supabase } from './initSupabase';
|
|
|
|
const useUser = () => {
|
|
const [session, setSession] = useState(null);
|
|
const [user, setUser] = useState(null);
|
|
|
|
useEffect(() => {
|
|
setSession(supabase.auth.session());
|
|
setUser(supabase.auth.user());
|
|
const { data: authListener } = supabase.auth.onAuthStateChange(
|
|
(event, session) => {
|
|
console.log(`Supbase auth event: ${event}`);
|
|
setSession(session);
|
|
setUser(session?.user ?? null);
|
|
}
|
|
);
|
|
return () => {
|
|
authListener.unsubscribe();
|
|
};
|
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
}, []);
|
|
|
|
return { user, session };
|
|
};
|
|
|
|
export { useUser };
|