feat: multi-module improvements across merchant, store, i18n, and customer systems
All checks were successful
All checks were successful
- Fix platform-grouped merchant sidebar menu with core items at root level - Add merchant store management (detail page, create store, team page) - Fix store settings 500 error by removing dead stripe/API tab - Move onboarding translations to module-owned locale files - Fix onboarding banner i18n with server-side rendering + context inheritance - Refactor login language selectors to use languageSelector() function (LANG-002) - Move HTTPException handling to global exception handler in merchant routes (API-003) - Add language selector to all login pages and portal headers - Fix customer module: drop order stats from customer model, add to orders module - Fix admin menu config visibility for super admin platform context - Fix storefront auth and layout issues - Add missing i18n translations for onboarding steps (en/fr/de/lb) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -111,7 +111,35 @@
|
||||
"invalid_credentials": "Ungültiger Benutzername oder Passwort",
|
||||
"session_expired": "Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.",
|
||||
"account_locked": "Ihr Konto wurde gesperrt",
|
||||
"account_inactive": "Ihr Konto ist inaktiv"
|
||||
"account_inactive": "Ihr Konto ist inaktiv",
|
||||
"signing_in": "Anmeldung läuft...",
|
||||
"sending": "Wird gesendet...",
|
||||
"send_reset_link": "Link zum Zurücksetzen senden",
|
||||
"reset_password_desc": "Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen einen Link zum Zurücksetzen Ihres Passworts.",
|
||||
"back_to_login": "Zurück zur Anmeldung",
|
||||
"back_to_platform": "Zurück zur Plattform",
|
||||
"no_account": "Noch kein Konto?",
|
||||
"visit_platform": "Besuchen Sie unsere Plattform",
|
||||
"already_have_account": "Haben Sie bereits ein Konto?",
|
||||
"create_account": "Konto erstellen",
|
||||
"continue_shopping": "Weiter einkaufen",
|
||||
"admin_login": "Admin-Anmeldung",
|
||||
"merchant_login": "Händler-Anmeldung",
|
||||
"store_login": "Shop-Portal-Anmeldung",
|
||||
"customer_login": "Kunden-Anmeldung",
|
||||
"create_account_title": "Konto erstellen",
|
||||
"creating_account": "Konto wird erstellt...",
|
||||
"sign_in_instead": "Stattdessen anmelden",
|
||||
"first_name": "Vorname",
|
||||
"last_name": "Nachname",
|
||||
"phone_number": "Telefonnummer",
|
||||
"marketing_consent": "Ich möchte Neuigkeiten und Sonderangebote erhalten",
|
||||
"password_requirements": "Muss mindestens 8 Zeichen, einen Buchstaben und eine Zahl enthalten",
|
||||
"check_email": "Überprüfen Sie Ihre E-Mail",
|
||||
"reset_link_sent": "Wir haben einen Link zum Zurücksetzen des Passworts an Ihre E-Mail-Adresse gesendet. Bitte überprüfen Sie Ihren Posteingang und klicken Sie auf den Link.",
|
||||
"didnt_receive_email": "E-Mail nicht erhalten? Überprüfen Sie Ihren Spam-Ordner oder",
|
||||
"try_again": "versuchen Sie es erneut",
|
||||
"remember_password": "Passwort wieder eingefallen?"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
@@ -191,5 +219,11 @@
|
||||
"time": "HH:mm",
|
||||
"datetime": "DD.MM.YYYY HH:mm",
|
||||
"currency": "{amount} {symbol}"
|
||||
},
|
||||
"onboarding": {
|
||||
"banner": {
|
||||
"title": "Erste Schritte",
|
||||
"dismiss": "Ausblenden"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,7 +111,35 @@
|
||||
"invalid_credentials": "Invalid username or password",
|
||||
"session_expired": "Your session has expired. Please login again.",
|
||||
"account_locked": "Your account has been locked",
|
||||
"account_inactive": "Your account is inactive"
|
||||
"account_inactive": "Your account is inactive",
|
||||
"signing_in": "Signing in...",
|
||||
"sending": "Sending...",
|
||||
"send_reset_link": "Send Reset Link",
|
||||
"reset_password_desc": "Enter your email address and we'll send you a link to reset your password.",
|
||||
"back_to_login": "Back to Login",
|
||||
"back_to_platform": "Back to Platform",
|
||||
"no_account": "Don't have an account?",
|
||||
"visit_platform": "Visit our platform",
|
||||
"already_have_account": "Already have an account?",
|
||||
"create_account": "Create an account",
|
||||
"continue_shopping": "Continue shopping",
|
||||
"admin_login": "Admin Login",
|
||||
"merchant_login": "Merchant Login",
|
||||
"store_login": "Store Portal Login",
|
||||
"customer_login": "Customer Login",
|
||||
"create_account_title": "Create Account",
|
||||
"creating_account": "Creating account...",
|
||||
"sign_in_instead": "Sign in instead",
|
||||
"first_name": "First Name",
|
||||
"last_name": "Last Name",
|
||||
"phone_number": "Phone Number",
|
||||
"marketing_consent": "I'd like to receive news and special offers",
|
||||
"password_requirements": "Must contain at least 8 characters, one letter, and one number",
|
||||
"check_email": "Check Your Email",
|
||||
"reset_link_sent": "We've sent a password reset link to your email. Please check your inbox and click the link to reset your password.",
|
||||
"didnt_receive_email": "Didn't receive the email? Check your spam folder or",
|
||||
"try_again": "try again",
|
||||
"remember_password": "Remember your password?"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
@@ -195,5 +223,11 @@
|
||||
"clipboard": {
|
||||
"copied": "Copied to clipboard",
|
||||
"failed": "Failed to copy"
|
||||
},
|
||||
"onboarding": {
|
||||
"banner": {
|
||||
"title": "Get Started",
|
||||
"dismiss": "Dismiss"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,7 +111,35 @@
|
||||
"invalid_credentials": "Nom d'utilisateur ou mot de passe invalide",
|
||||
"session_expired": "Votre session a expiré. Veuillez vous reconnecter.",
|
||||
"account_locked": "Votre compte a été verrouillé",
|
||||
"account_inactive": "Votre compte est inactif"
|
||||
"account_inactive": "Votre compte est inactif",
|
||||
"signing_in": "Connexion en cours...",
|
||||
"sending": "Envoi en cours...",
|
||||
"send_reset_link": "Envoyer le lien de réinitialisation",
|
||||
"reset_password_desc": "Entrez votre adresse e-mail et nous vous enverrons un lien pour réinitialiser votre mot de passe.",
|
||||
"back_to_login": "Retour à la connexion",
|
||||
"back_to_platform": "Retour à la plateforme",
|
||||
"no_account": "Vous n'avez pas de compte ?",
|
||||
"visit_platform": "Visitez notre plateforme",
|
||||
"already_have_account": "Vous avez déjà un compte ?",
|
||||
"create_account": "Créer un compte",
|
||||
"continue_shopping": "Continuer vos achats",
|
||||
"admin_login": "Connexion Admin",
|
||||
"merchant_login": "Connexion Marchand",
|
||||
"store_login": "Connexion Portail Magasin",
|
||||
"customer_login": "Connexion Client",
|
||||
"create_account_title": "Créer un compte",
|
||||
"creating_account": "Création du compte...",
|
||||
"sign_in_instead": "Se connecter",
|
||||
"first_name": "Prénom",
|
||||
"last_name": "Nom",
|
||||
"phone_number": "Numéro de téléphone",
|
||||
"marketing_consent": "Je souhaite recevoir des actualités et offres spéciales",
|
||||
"password_requirements": "Doit contenir au moins 8 caractères, une lettre et un chiffre",
|
||||
"check_email": "Vérifiez votre e-mail",
|
||||
"reset_link_sent": "Nous avons envoyé un lien de réinitialisation à votre adresse e-mail. Veuillez vérifier votre boîte de réception et cliquer sur le lien.",
|
||||
"didnt_receive_email": "Vous n'avez pas reçu l'e-mail ? Vérifiez votre dossier spam ou",
|
||||
"try_again": "réessayez",
|
||||
"remember_password": "Vous vous souvenez de votre mot de passe ?"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Tableau de bord",
|
||||
@@ -191,5 +219,11 @@
|
||||
"time": "HH:mm",
|
||||
"datetime": "DD/MM/YYYY HH:mm",
|
||||
"currency": "{amount} {symbol}"
|
||||
},
|
||||
"onboarding": {
|
||||
"banner": {
|
||||
"title": "Premiers pas",
|
||||
"dismiss": "Masquer"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,7 +111,35 @@
|
||||
"invalid_credentials": "Ongëltege Benotzernumm oder Passwuert",
|
||||
"session_expired": "Är Sessioun ass ofgelaf. Mellt Iech w.e.g. erëm un.",
|
||||
"account_locked": "Äre Kont ass gespaart",
|
||||
"account_inactive": "Äre Kont ass inaktiv"
|
||||
"account_inactive": "Äre Kont ass inaktiv",
|
||||
"signing_in": "Umellen...",
|
||||
"sending": "Gëtt geschéckt...",
|
||||
"send_reset_link": "Link fir zréckzesetzen schécken",
|
||||
"reset_password_desc": "Gitt Är E-Mail-Adress an a mir schécken Iech e Link fir Äert Passwuert zréckzesetzen.",
|
||||
"back_to_login": "Zréck zum Login",
|
||||
"back_to_platform": "Zréck zur Plattform",
|
||||
"no_account": "Kee Kont?",
|
||||
"visit_platform": "Besicht eis Plattform",
|
||||
"already_have_account": "Hutt Dir schonn e Kont?",
|
||||
"create_account": "E Kont erstellen",
|
||||
"continue_shopping": "Weider akafen",
|
||||
"admin_login": "Admin Login",
|
||||
"merchant_login": "Händler Login",
|
||||
"store_login": "Buttek-Portal Login",
|
||||
"customer_login": "Client Login",
|
||||
"create_account_title": "Kont erstellen",
|
||||
"creating_account": "Kont gëtt erstallt...",
|
||||
"sign_in_instead": "Aloggen amplaz",
|
||||
"first_name": "Virnumm",
|
||||
"last_name": "Nonumm",
|
||||
"phone_number": "Telefonsnummer",
|
||||
"marketing_consent": "Ech wëll Neiegkeeten an Spezialangebotter kréien",
|
||||
"password_requirements": "Muss mindestens 8 Zeechen, ee Buschtaf an eng Zuel enthalen",
|
||||
"check_email": "Kuckt Är E-Mail",
|
||||
"reset_link_sent": "Mir hunn e Link fir d'Passwuert zréckzesetzen op Är E-Mail-Adress geschéckt. Kuckt w.e.g. Ären Posteingang a klickt op de Link.",
|
||||
"didnt_receive_email": "E-Mail net kritt? Kuckt Ären Spam-Dossier oder",
|
||||
"try_again": "probéiert et nach eng Kéier",
|
||||
"remember_password": "Passwuert erëm agefall?"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
@@ -191,5 +219,11 @@
|
||||
"time": "HH:mm",
|
||||
"datetime": "DD.MM.YYYY HH:mm",
|
||||
"currency": "{amount} {symbol}"
|
||||
},
|
||||
"onboarding": {
|
||||
"banner": {
|
||||
"title": "Ufänken",
|
||||
"dismiss": "Verstoppen"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user