all repos — caroster @ 5e8d53baf4f6676069cef7da12605ec9ae0375ed

[Octree] Group carpool to your event https://caroster.io

frontend/hooks/useLoginWithProvider.ts (view raw)

 1import useAuthStore from '../stores/useAuthStore';
 2
 3const useLoginWithProvider = () => {
 4  const setToken = useAuthStore(s => s.setToken);
 5  const setUser = useAuthStore(s => s.setUser);
 6
 7  const loginWithProvider = async (provider: string, search: string) => {
 8    const resultRaw = await fetch(`/auth/${provider}/callback${search}`);
 9    const result = await resultRaw.json();
10    console.log({result});
11    if (result.hasOwnProperty('error')) throw result;
12    setToken(result.jwt);
13    setUser(result.user);
14    return result;
15  };
16
17  return {loginWithProvider};
18};
19
20export default useLoginWithProvider;