feat(auth): add resend verification email to all login pages

Add ability to resend verification email when login fails with
"Email not verified" error. Implemented across all 14 apps using
Mana Core Auth.

Changes:
- Add POST /api/v1/auth/resend-verification endpoint to mana-core-auth
- Add resendVerificationEmail method to shared-auth client
- Update LoginPage component with resend UI and translations
- Add resendVerificationEmail to all app auth stores
- Add translations for de, en, fr, es, it
- Add PlantaLogo to shared-branding
- Migrate planta login to shared LoginPage component
This commit is contained in:
Till-JS 2026-01-29 14:55:49 +01:00
parent f911243bf0
commit 0c150df0f1
45 changed files with 691 additions and 110 deletions

View file

@ -21,7 +21,12 @@
"signInFailed": "Anmeldung fehlgeschlagen",
"googleSignInFailed": "Google-Anmeldung fehlgeschlagen",
"signInSuccess": "Erfolgreich angemeldet. Weiterleitung...",
"googleSignInSuccess": "Erfolgreich mit Google angemeldet. Weiterleitung..."
"googleSignInSuccess": "Erfolgreich mit Google angemeldet. Weiterleitung...",
"emailVerified": "E-Mail erfolgreich bestätigt! Bitte melde dich an.",
"emailNotVerified": "E-Mail nicht bestätigt.",
"resendVerification": "Bestätigungs-E-Mail erneut senden",
"resendingVerification": "Wird gesendet...",
"verificationEmailSent": "Bestätigungs-E-Mail wurde gesendet! Bitte überprüfe deinen Posteingang."
},
"register": {
"title": "Konto erstellen",

View file

@ -21,7 +21,12 @@
"signInFailed": "Sign in failed",
"googleSignInFailed": "Google sign in failed",
"signInSuccess": "Successfully signed in. Redirecting...",
"googleSignInSuccess": "Successfully signed in with Google. Redirecting..."
"googleSignInSuccess": "Successfully signed in with Google. Redirecting...",
"emailVerified": "Email successfully verified! Please sign in.",
"emailNotVerified": "Email not verified.",
"resendVerification": "Resend verification email",
"resendingVerification": "Sending...",
"verificationEmailSent": "Verification email sent! Please check your inbox."
},
"register": {
"title": "Create Account",

View file

@ -21,7 +21,12 @@
"signInFailed": "Error al iniciar sesión",
"googleSignInFailed": "Error al iniciar sesión con Google",
"signInSuccess": "Sesión iniciada correctamente. Redirigiendo...",
"googleSignInSuccess": "Sesión iniciada con Google correctamente. Redirigiendo..."
"googleSignInSuccess": "Sesión iniciada con Google correctamente. Redirigiendo...",
"emailVerified": "¡Correo verificado exitosamente! Por favor inicia sesión.",
"emailNotVerified": "Correo no verificado.",
"resendVerification": "Reenviar correo de verificación",
"resendingVerification": "Enviando...",
"verificationEmailSent": "¡Correo de verificación enviado! Por favor revisa tu bandeja de entrada."
},
"register": {
"title": "Crear Cuenta",

View file

@ -21,7 +21,12 @@
"signInFailed": "Échec de la connexion",
"googleSignInFailed": "Échec de la connexion Google",
"signInSuccess": "Connexion réussie. Redirection...",
"googleSignInSuccess": "Connexion Google réussie. Redirection..."
"googleSignInSuccess": "Connexion Google réussie. Redirection...",
"emailVerified": "Email vérifié avec succès ! Veuillez vous connecter.",
"emailNotVerified": "Email non vérifié.",
"resendVerification": "Renvoyer l'email de vérification",
"resendingVerification": "Envoi en cours...",
"verificationEmailSent": "Email de vérification envoyé ! Veuillez vérifier votre boîte de réception."
},
"register": {
"title": "Créer un compte",

View file

@ -37,6 +37,11 @@ export interface AuthTranslations {
googleSignInFailed: string;
signInSuccess: string;
googleSignInSuccess: string;
emailVerified?: string;
emailNotVerified?: string;
resendVerification?: string;
resendingVerification?: string;
verificationEmailSent?: string;
};
register: {
title: string;

View file

@ -21,7 +21,12 @@
"signInFailed": "Accesso fallito",
"googleSignInFailed": "Accesso con Google fallito",
"signInSuccess": "Accesso effettuato. Reindirizzamento...",
"googleSignInSuccess": "Accesso con Google effettuato. Reindirizzamento..."
"googleSignInSuccess": "Accesso con Google effettuato. Reindirizzamento...",
"emailVerified": "Email verificata con successo! Effettua l'accesso.",
"emailNotVerified": "Email non verificata.",
"resendVerification": "Invia di nuovo l'email di verifica",
"resendingVerification": "Invio in corso...",
"verificationEmailSent": "Email di verifica inviata! Controlla la tua casella di posta."
},
"register": {
"title": "Crea Account",