ready to test

Testing

Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
This commit is contained in:
2026-06-22 10:07:20 +08:00
parent 56d984a26a
commit fbef7cb6e6
283 changed files with 25961 additions and 1072 deletions
+9 -2
View File
@@ -9,6 +9,7 @@ export const decodeToken = (token) => JSON.parse(atob(token.split('.')[1]))
export function AuthProvider({ children }) {
const [accessToken, _setAccessToken] = useState(null)
const [user, setUser] = useState(null)
const [sessionId, setSessionId] = useState(null)
const [loading, setLoading] = useState(true)
const [sessionRestored, setSessionRestored] = useState(false)
const [authError, setAuthError] = useState(null)
@@ -28,6 +29,7 @@ export function AuthProvider({ children }) {
const { data } = await api.post('/auth/login', { email, password })
setAccessToken(data.data.accessToken)
setUser(data.data.user)
setSessionId(data.data.session_id ?? null)
return { success: true, user: data.data.user }
} catch (err) {
const message = err.response?.data?.message || 'Login failed. Please try again.'
@@ -56,6 +58,7 @@ export function AuthProvider({ children }) {
const { data } = await api.post('/auth/verify-otp', { email, otp })
setAccessToken(data.data.accessToken)
setUser(data.data.user)
setSessionId(data.data.session_id ?? null)
return { success: true, user: data.data.user }
} catch (err) {
const message = err.response?.data?.message || 'OTP verification failed.'
@@ -78,14 +81,15 @@ export function AuthProvider({ children }) {
// ── Logout ─────────────────────────────────────────────────────────────────
const logout = useCallback(async () => {
try {
await api.post('/auth/logout')
await api.post('/auth/logout', { session_id: sessionId })
} catch (_) {
// ignore
} finally {
setAccessToken(null)
setUser(null)
setSessionId(null)
}
}, [])
}, [sessionId])
// ── Restore session ────────────────────────────────────────────────────────
const restoreSession = useCallback(async () => {
@@ -97,9 +101,11 @@ export function AuthProvider({ children }) {
const { data } = await api.post('/auth/refresh')
setAccessToken(data.data.accessToken)
setUser(data.data.user)
setSessionId(data.data.session_id ?? null)
} catch (_) {
setAccessToken(null)
setUser(null)
setSessionId(null)
} finally {
setLoading(false)
}
@@ -112,6 +118,7 @@ export function AuthProvider({ children }) {
setAccessToken,
user,
setUser,
sessionId,
login,
register,
verifyOTP,