mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 21:01:08 +02:00
fix(mana-auth): robust email-not-verified detection
Better Auth throws APIError.from(FORBIDDEN, EMAIL_NOT_VERIFIED). Check status 403, body.code, and lowercased message. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
38135ca8b9
commit
36922cc946
1 changed files with 6 additions and 3 deletions
|
|
@ -131,10 +131,13 @@ export function createAuthRoutes(
|
|||
|
||||
return c.json(response);
|
||||
} catch (error) {
|
||||
// Check if Better Auth rejected login due to unverified email
|
||||
const errorMessage = error instanceof Error ? error.message : String(error);
|
||||
// Better Auth throws APIError.from("FORBIDDEN", "EMAIL_NOT_VERIFIED") for unverified emails
|
||||
const isEmailNotVerified =
|
||||
errorMessage.includes('email') && errorMessage.toLowerCase().includes('verif');
|
||||
(error as any)?.status === 403 ||
|
||||
(error as any)?.body?.code === 'EMAIL_NOT_VERIFIED' ||
|
||||
String((error as any)?.message ?? error)
|
||||
.toLowerCase()
|
||||
.includes('not verified');
|
||||
if (isEmailNotVerified) {
|
||||
return c.json({ error: 'Email not verified', code: 'EMAIL_NOT_VERIFIED' }, 403);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue