From fddd43fa4fa11ceebf62f207802852a177548058 Mon Sep 17 00:00:00 2001 From: fullsizemalt <106900403+fullsizemalt@users.noreply.github.com> Date: Fri, 12 Dec 2025 14:35:54 -0800 Subject: [PATCH] fix: store refreshToken on login for proper auth flow --- frontend/src/context/AuthContext.tsx | 10 +++++++--- frontend/src/pages/LoginPage.tsx | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/frontend/src/context/AuthContext.tsx b/frontend/src/context/AuthContext.tsx index 827dd1e..2ab76d2 100644 --- a/frontend/src/context/AuthContext.tsx +++ b/frontend/src/context/AuthContext.tsx @@ -10,7 +10,7 @@ interface User { interface AuthContextType { user: User | null; - login: (token: string, user: User) => void; + login: (accessToken: string, refreshToken: string, user: User) => void; logout: () => void; isLoading: boolean; } @@ -37,13 +37,17 @@ export const AuthProvider = ({ children }: { children: React.ReactNode }) => { } }, []); - const login = (token: string, newUser: User) => { - localStorage.setItem('token', token); + const login = (accessToken: string, refreshToken: string, newUser: User) => { + localStorage.setItem('token', accessToken); + localStorage.setItem('refreshToken', refreshToken); + localStorage.setItem('user', JSON.stringify(newUser)); setUser(newUser); }; const logout = () => { localStorage.removeItem('token'); + localStorage.removeItem('refreshToken'); + localStorage.removeItem('user'); setUser(null); }; diff --git a/frontend/src/pages/LoginPage.tsx b/frontend/src/pages/LoginPage.tsx index 9764768..3d8580b 100644 --- a/frontend/src/pages/LoginPage.tsx +++ b/frontend/src/pages/LoginPage.tsx @@ -25,7 +25,7 @@ export default function LoginPage() { try { const { data } = await api.post('/auth/login', { email, password }); - login(data.accessToken, data.user); + login(data.accessToken, data.refreshToken, data.user); navigate('/'); } catch (err: any) { setError(err.response?.data?.message || 'Login failed');