mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-09 04:50:59 +00:00
i18n(shell): translate auth, nav, password-strength, and trend-hints into es/fr/it/pl
Localises the user-facing shell strings: auth (sign-in / sign-up,
passkey fallback, password validation), nav (sidebar labels, theme
toggle), password-strength meter, trend-hints countdown, notifications
breadcrumbs, common copy/unknownError, format.dateShort with locale
date order (dd/mm/yyyy for es/fr/it, dd.mm.yyyy for pl), and the
errorBoundary fallback title. Placeholders {minLength}, {count} all
preserved.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
31895fcea9
commit
1e9bde7b60
4 files changed
+145
-145
No files matched your search
+36
-36
@@ -19,7 +19,7 @@
|
||||
"disabled": "Desactivado",
|
||||
"networkError": "Error de red",
|
||||
"unknownError": "Error desconocido",
|
||||
"copied": "Copied!",
|
||||
"copied": "¡Copiado!",
|
||||
"or": "o",
|
||||
"unknown": "Desconocido",
|
||||
"add": "Añadir",
|
||||
@@ -154,20 +154,20 @@
|
||||
}
|
||||
},
|
||||
"errorBoundary": {
|
||||
"title": "Algo salió mal",
|
||||
"title": "Algo ha salido mal",
|
||||
"description": "An unexpected error occurred. You can retry, copy the technical details, or open a bug report."
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Panel",
|
||||
"measurements": "Measurements",
|
||||
"measurements": "Mediciones",
|
||||
"medications": "Medicamentos",
|
||||
"insights": "Análisis",
|
||||
"targets": "Targets",
|
||||
"achievements": "Achievements",
|
||||
"insights": "Insights",
|
||||
"targets": "Objetivos",
|
||||
"achievements": "Logros",
|
||||
"settings": "Ajustes",
|
||||
"bugreport": "Bug Report",
|
||||
"admin": "Admin Console",
|
||||
"logout": "Sign out",
|
||||
"admin": "Consola de administración",
|
||||
"logout": "Cerrar sesión",
|
||||
"login": "Iniciar sesión",
|
||||
"about": "Acerca de HealthLog",
|
||||
"notifications": "Centro de notificaciones",
|
||||
@@ -193,22 +193,22 @@
|
||||
"register": "Registrarse",
|
||||
"username": "Nombre de usuario",
|
||||
"password": "Contraseña",
|
||||
"email": "Email address",
|
||||
"emailPlaceholder": "name@example.com",
|
||||
"emailOrUsername": "Email address or username",
|
||||
"emailOrUsernamePlaceholder": "name@example.com or username",
|
||||
"loginWithPasskey": "Sign in with Passkey",
|
||||
"loginWithPassword": "Sign in with password",
|
||||
"noAccount": "Don't have an account?",
|
||||
"hasAccount": "Already have an account?",
|
||||
"loginFailed": "Login failed",
|
||||
"registerFailed": "Registration failed",
|
||||
"createAccount": "Create account",
|
||||
"newAccount": "Create new account",
|
||||
"backToPasskey": "Back to Passkey",
|
||||
"passkeySetupLater": "You can set up passkeys at any time in Settings.",
|
||||
"passwordMinLength": "Min. 12 characters",
|
||||
"passwordTooShort": "Password must be at least {minLength} characters long.",
|
||||
"email": "Correo electrónico",
|
||||
"emailPlaceholder": "nombre@ejemplo.com",
|
||||
"emailOrUsername": "Correo electrónico o nombre de usuario",
|
||||
"emailOrUsernamePlaceholder": "nombre@ejemplo.com o nombredeusuario",
|
||||
"loginWithPasskey": "Iniciar sesión con passkey",
|
||||
"loginWithPassword": "Iniciar sesión con contraseña",
|
||||
"noAccount": "¿Aún no tienes cuenta?",
|
||||
"hasAccount": "¿Ya tienes cuenta?",
|
||||
"loginFailed": "No se ha podido iniciar sesión",
|
||||
"registerFailed": "No se ha podido completar el registro",
|
||||
"createAccount": "Crear cuenta",
|
||||
"newAccount": "Crear cuenta nueva",
|
||||
"backToPasskey": "Volver a passkey",
|
||||
"passkeySetupLater": "Puedes configurar passkeys más tarde en los ajustes.",
|
||||
"passwordMinLength": "Mín. 12 caracteres",
|
||||
"passwordTooShort": "La contraseña debe tener al menos {minLength} caracteres.",
|
||||
"privacyPolicy": "Política de privacidad"
|
||||
},
|
||||
"dashboard": {
|
||||
@@ -1526,9 +1526,9 @@
|
||||
}
|
||||
},
|
||||
"trendHints": {
|
||||
"title": "First trend after 5 readings",
|
||||
"remainingOne": "1 more reading to go.",
|
||||
"remainingMany": "{count} more readings to go."
|
||||
"title": "Primera tendencia tras 5 mediciones",
|
||||
"remainingOne": "Falta 1 medición para la tendencia.",
|
||||
"remainingMany": "Faltan {count} mediciones para la tendencia."
|
||||
},
|
||||
"settings": {
|
||||
"researchMode": {
|
||||
@@ -2770,7 +2770,7 @@
|
||||
"breadcrumbInbox": "Centro de notificaciones",
|
||||
"breadcrumbChannels": "Canales de notificación",
|
||||
"breadcrumbSettings": "Ajustes",
|
||||
"eventColumn": "Event",
|
||||
"eventColumn": "Evento",
|
||||
"subtitle": "Choose which notifications you want to receive through which channel.",
|
||||
"loadError": "Notification preferences could not be loaded.",
|
||||
"noChannels": "Configure a notification channel in Settings first.",
|
||||
@@ -2942,14 +2942,14 @@
|
||||
}
|
||||
},
|
||||
"passwordStrength": {
|
||||
"veryWeak": "Very weak",
|
||||
"weak": "Weak",
|
||||
"acceptable": "Acceptable",
|
||||
"strong": "Strong",
|
||||
"veryStrong": "Very strong",
|
||||
"tooShort": "Too short",
|
||||
"characters": "characters",
|
||||
"minLength": "At least {count} characters required."
|
||||
"veryWeak": "Muy débil",
|
||||
"weak": "Débil",
|
||||
"acceptable": "Aceptable",
|
||||
"strong": "Fuerte",
|
||||
"veryStrong": "Muy fuerte",
|
||||
"tooShort": "Demasiado corta",
|
||||
"characters": "caracteres",
|
||||
"minLength": "Se requieren al menos {count} caracteres."
|
||||
},
|
||||
"telegram": {
|
||||
"errorInvalidAction": "Invalid action.",
|
||||
|
||||
+35
-35
@@ -19,7 +19,7 @@
|
||||
"disabled": "Désactivé",
|
||||
"networkError": "Erreur réseau",
|
||||
"unknownError": "Erreur inconnue",
|
||||
"copied": "Copied!",
|
||||
"copied": "Copié !",
|
||||
"or": "ou",
|
||||
"unknown": "Inconnu",
|
||||
"add": "Ajouter",
|
||||
@@ -159,15 +159,15 @@
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Tableau de bord",
|
||||
"measurements": "Measurements",
|
||||
"measurements": "Mesures",
|
||||
"medications": "Médicaments",
|
||||
"insights": "Analyses",
|
||||
"targets": "Targets",
|
||||
"achievements": "Achievements",
|
||||
"insights": "Insights",
|
||||
"targets": "Objectifs",
|
||||
"achievements": "Succès",
|
||||
"settings": "Paramètres",
|
||||
"bugreport": "Bug Report",
|
||||
"admin": "Admin Console",
|
||||
"logout": "Sign out",
|
||||
"admin": "Console d’administration",
|
||||
"logout": "Se déconnecter",
|
||||
"login": "Se connecter",
|
||||
"about": "À propos de HealthLog",
|
||||
"notifications": "Centre de notifications",
|
||||
@@ -193,22 +193,22 @@
|
||||
"register": "S'inscrire",
|
||||
"username": "Nom d'utilisateur",
|
||||
"password": "Mot de passe",
|
||||
"email": "Email address",
|
||||
"emailPlaceholder": "name@example.com",
|
||||
"emailOrUsername": "Email address or username",
|
||||
"emailOrUsernamePlaceholder": "name@example.com or username",
|
||||
"loginWithPasskey": "Sign in with Passkey",
|
||||
"loginWithPassword": "Sign in with password",
|
||||
"noAccount": "Don't have an account?",
|
||||
"hasAccount": "Already have an account?",
|
||||
"loginFailed": "Login failed",
|
||||
"registerFailed": "Registration failed",
|
||||
"createAccount": "Create account",
|
||||
"newAccount": "Create new account",
|
||||
"backToPasskey": "Back to Passkey",
|
||||
"passkeySetupLater": "You can set up passkeys at any time in Settings.",
|
||||
"passwordMinLength": "Min. 12 characters",
|
||||
"passwordTooShort": "Password must be at least {minLength} characters long.",
|
||||
"email": "Adresse e-mail",
|
||||
"emailPlaceholder": "nom@exemple.fr",
|
||||
"emailOrUsername": "Adresse e-mail ou nom d’utilisateur",
|
||||
"emailOrUsernamePlaceholder": "nom@exemple.fr ou nomdutilisateur",
|
||||
"loginWithPasskey": "Se connecter avec une passkey",
|
||||
"loginWithPassword": "Se connecter avec un mot de passe",
|
||||
"noAccount": "Pas encore de compte ?",
|
||||
"hasAccount": "Déjà un compte ?",
|
||||
"loginFailed": "Échec de la connexion",
|
||||
"registerFailed": "Échec de l’inscription",
|
||||
"createAccount": "Créer un compte",
|
||||
"newAccount": "Créer un nouveau compte",
|
||||
"backToPasskey": "Revenir à la passkey",
|
||||
"passkeySetupLater": "Tu peux configurer les passkeys plus tard dans les paramètres.",
|
||||
"passwordMinLength": "Min. 12 caractères",
|
||||
"passwordTooShort": "Le mot de passe doit comporter au moins {minLength} caractères.",
|
||||
"privacyPolicy": "Politique de confidentialité"
|
||||
},
|
||||
"dashboard": {
|
||||
@@ -1526,9 +1526,9 @@
|
||||
}
|
||||
},
|
||||
"trendHints": {
|
||||
"title": "First trend after 5 readings",
|
||||
"remainingOne": "1 more reading to go.",
|
||||
"remainingMany": "{count} more readings to go."
|
||||
"title": "Première tendance après 5 mesures",
|
||||
"remainingOne": "Encore 1 mesure avant la tendance.",
|
||||
"remainingMany": "Encore {count} mesures avant la tendance."
|
||||
},
|
||||
"settings": {
|
||||
"researchMode": {
|
||||
@@ -2769,8 +2769,8 @@
|
||||
"title": "Centre de notifications",
|
||||
"breadcrumbInbox": "Centre de notifications",
|
||||
"breadcrumbChannels": "Canaux de notification",
|
||||
"breadcrumbSettings": "Réglages",
|
||||
"eventColumn": "Event",
|
||||
"breadcrumbSettings": "Paramètres",
|
||||
"eventColumn": "Événement",
|
||||
"subtitle": "Choose which notifications you want to receive through which channel.",
|
||||
"loadError": "Notification preferences could not be loaded.",
|
||||
"noChannels": "Configure a notification channel in Settings first.",
|
||||
@@ -2942,14 +2942,14 @@
|
||||
}
|
||||
},
|
||||
"passwordStrength": {
|
||||
"veryWeak": "Very weak",
|
||||
"weak": "Weak",
|
||||
"veryWeak": "Très faible",
|
||||
"weak": "Faible",
|
||||
"acceptable": "Acceptable",
|
||||
"strong": "Strong",
|
||||
"veryStrong": "Very strong",
|
||||
"tooShort": "Too short",
|
||||
"characters": "characters",
|
||||
"minLength": "At least {count} characters required."
|
||||
"strong": "Fort",
|
||||
"veryStrong": "Très fort",
|
||||
"tooShort": "Trop court",
|
||||
"characters": "caractères",
|
||||
"minLength": "Au moins {count} caractères requis."
|
||||
},
|
||||
"telegram": {
|
||||
"errorInvalidAction": "Invalid action.",
|
||||
|
||||
+37
-37
@@ -19,7 +19,7 @@
|
||||
"disabled": "Disabilitato",
|
||||
"networkError": "Errore di rete",
|
||||
"unknownError": "Errore sconosciuto",
|
||||
"copied": "Copied!",
|
||||
"copied": "Copiato!",
|
||||
"or": "o",
|
||||
"unknown": "Sconosciuto",
|
||||
"add": "Aggiungi",
|
||||
@@ -154,20 +154,20 @@
|
||||
}
|
||||
},
|
||||
"errorBoundary": {
|
||||
"title": "Si è verificato un errore",
|
||||
"title": "Qualcosa è andato storto",
|
||||
"description": "An unexpected error occurred. You can retry, copy the technical details, or open a bug report."
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Cruscotto",
|
||||
"measurements": "Measurements",
|
||||
"dashboard": "Dashboard",
|
||||
"measurements": "Misurazioni",
|
||||
"medications": "Farmaci",
|
||||
"insights": "Analisi",
|
||||
"targets": "Targets",
|
||||
"achievements": "Achievements",
|
||||
"insights": "Insights",
|
||||
"targets": "Obiettivi",
|
||||
"achievements": "Traguardi",
|
||||
"settings": "Impostazioni",
|
||||
"bugreport": "Bug Report",
|
||||
"admin": "Admin Console",
|
||||
"logout": "Sign out",
|
||||
"admin": "Console di amministrazione",
|
||||
"logout": "Esci",
|
||||
"login": "Accedi",
|
||||
"about": "Informazioni su HealthLog",
|
||||
"notifications": "Centro notifiche",
|
||||
@@ -193,22 +193,22 @@
|
||||
"register": "Registrati",
|
||||
"username": "Nome utente",
|
||||
"password": "Password",
|
||||
"email": "Email address",
|
||||
"emailPlaceholder": "name@example.com",
|
||||
"emailOrUsername": "Email address or username",
|
||||
"emailOrUsernamePlaceholder": "name@example.com or username",
|
||||
"loginWithPasskey": "Sign in with Passkey",
|
||||
"loginWithPassword": "Sign in with password",
|
||||
"noAccount": "Don't have an account?",
|
||||
"hasAccount": "Already have an account?",
|
||||
"loginFailed": "Login failed",
|
||||
"registerFailed": "Registration failed",
|
||||
"createAccount": "Create account",
|
||||
"newAccount": "Create new account",
|
||||
"backToPasskey": "Back to Passkey",
|
||||
"passkeySetupLater": "You can set up passkeys at any time in Settings.",
|
||||
"passwordMinLength": "Min. 12 characters",
|
||||
"passwordTooShort": "Password must be at least {minLength} characters long.",
|
||||
"email": "Indirizzo e-mail",
|
||||
"emailPlaceholder": "nome@esempio.it",
|
||||
"emailOrUsername": "Indirizzo e-mail o nome utente",
|
||||
"emailOrUsernamePlaceholder": "nome@esempio.it o nomeutente",
|
||||
"loginWithPasskey": "Accedi con passkey",
|
||||
"loginWithPassword": "Accedi con password",
|
||||
"noAccount": "Non hai ancora un account?",
|
||||
"hasAccount": "Hai già un account?",
|
||||
"loginFailed": "Accesso non riuscito",
|
||||
"registerFailed": "Registrazione non riuscita",
|
||||
"createAccount": "Crea account",
|
||||
"newAccount": "Crea un nuovo account",
|
||||
"backToPasskey": "Torna a passkey",
|
||||
"passkeySetupLater": "Puoi configurare le passkey più tardi dalle impostazioni.",
|
||||
"passwordMinLength": "Min. 12 caratteri",
|
||||
"passwordTooShort": "La password deve avere almeno {minLength} caratteri.",
|
||||
"privacyPolicy": "Informativa sulla privacy"
|
||||
},
|
||||
"dashboard": {
|
||||
@@ -1526,9 +1526,9 @@
|
||||
}
|
||||
},
|
||||
"trendHints": {
|
||||
"title": "First trend after 5 readings",
|
||||
"remainingOne": "1 more reading to go.",
|
||||
"remainingMany": "{count} more readings to go."
|
||||
"title": "Primo trend dopo 5 misurazioni",
|
||||
"remainingOne": "Manca 1 misurazione al trend.",
|
||||
"remainingMany": "Mancano {count} misurazioni al trend."
|
||||
},
|
||||
"settings": {
|
||||
"researchMode": {
|
||||
@@ -2770,7 +2770,7 @@
|
||||
"breadcrumbInbox": "Centro notifiche",
|
||||
"breadcrumbChannels": "Canali di notifica",
|
||||
"breadcrumbSettings": "Impostazioni",
|
||||
"eventColumn": "Event",
|
||||
"eventColumn": "Evento",
|
||||
"subtitle": "Choose which notifications you want to receive through which channel.",
|
||||
"loadError": "Notification preferences could not be loaded.",
|
||||
"noChannels": "Configure a notification channel in Settings first.",
|
||||
@@ -2942,14 +2942,14 @@
|
||||
}
|
||||
},
|
||||
"passwordStrength": {
|
||||
"veryWeak": "Very weak",
|
||||
"weak": "Weak",
|
||||
"acceptable": "Acceptable",
|
||||
"strong": "Strong",
|
||||
"veryStrong": "Very strong",
|
||||
"tooShort": "Too short",
|
||||
"characters": "characters",
|
||||
"minLength": "At least {count} characters required."
|
||||
"veryWeak": "Molto debole",
|
||||
"weak": "Debole",
|
||||
"acceptable": "Accettabile",
|
||||
"strong": "Forte",
|
||||
"veryStrong": "Molto forte",
|
||||
"tooShort": "Troppo corta",
|
||||
"characters": "caratteri",
|
||||
"minLength": "Servono almeno {count} caratteri."
|
||||
},
|
||||
"telegram": {
|
||||
"errorInvalidAction": "Invalid action.",
|
||||
|
||||
+37
-37
@@ -19,7 +19,7 @@
|
||||
"disabled": "Wyłączone",
|
||||
"networkError": "Błąd sieci",
|
||||
"unknownError": "Nieznany błąd",
|
||||
"copied": "Copied!",
|
||||
"copied": "Skopiowano!",
|
||||
"or": "lub",
|
||||
"unknown": "Nieznane",
|
||||
"add": "Dodaj",
|
||||
@@ -158,17 +158,17 @@
|
||||
"description": "An unexpected error occurred. You can retry, copy the technical details, or open a bug report."
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Pulpit",
|
||||
"measurements": "Measurements",
|
||||
"dashboard": "Panel",
|
||||
"measurements": "Pomiary",
|
||||
"medications": "Leki",
|
||||
"insights": "Statystyki",
|
||||
"targets": "Targets",
|
||||
"achievements": "Achievements",
|
||||
"insights": "Insights",
|
||||
"targets": "Cele",
|
||||
"achievements": "Osiągnięcia",
|
||||
"settings": "Ustawienia",
|
||||
"bugreport": "Bug Report",
|
||||
"admin": "Admin Console",
|
||||
"logout": "Sign out",
|
||||
"login": "Zaloguj się",
|
||||
"admin": "Konsola administratora",
|
||||
"logout": "Wyloguj",
|
||||
"login": "Zaloguj",
|
||||
"about": "O HealthLog",
|
||||
"notifications": "Centrum powiadomień",
|
||||
"theme": "Wygląd",
|
||||
@@ -193,22 +193,22 @@
|
||||
"register": "Zarejestruj się",
|
||||
"username": "Nazwa użytkownika",
|
||||
"password": "Hasło",
|
||||
"email": "Email address",
|
||||
"emailPlaceholder": "name@example.com",
|
||||
"emailOrUsername": "Email address or username",
|
||||
"emailOrUsernamePlaceholder": "name@example.com or username",
|
||||
"loginWithPasskey": "Sign in with Passkey",
|
||||
"loginWithPassword": "Sign in with password",
|
||||
"noAccount": "Don't have an account?",
|
||||
"hasAccount": "Already have an account?",
|
||||
"loginFailed": "Login failed",
|
||||
"registerFailed": "Registration failed",
|
||||
"createAccount": "Create account",
|
||||
"newAccount": "Create new account",
|
||||
"backToPasskey": "Back to Passkey",
|
||||
"passkeySetupLater": "You can set up passkeys at any time in Settings.",
|
||||
"passwordMinLength": "Min. 12 characters",
|
||||
"passwordTooShort": "Password must be at least {minLength} characters long.",
|
||||
"email": "Adres e-mail",
|
||||
"emailPlaceholder": "imie@przyklad.pl",
|
||||
"emailOrUsername": "Adres e-mail lub nazwa użytkownika",
|
||||
"emailOrUsernamePlaceholder": "imie@przyklad.pl lub nazwauzytkownika",
|
||||
"loginWithPasskey": "Zaloguj się za pomocą passkey",
|
||||
"loginWithPassword": "Zaloguj się hasłem",
|
||||
"noAccount": "Nie masz jeszcze konta?",
|
||||
"hasAccount": "Masz już konto?",
|
||||
"loginFailed": "Logowanie nie powiodło się",
|
||||
"registerFailed": "Rejestracja nie powiodła się",
|
||||
"createAccount": "Utwórz konto",
|
||||
"newAccount": "Utwórz nowe konto",
|
||||
"backToPasskey": "Wróć do passkey",
|
||||
"passkeySetupLater": "Passkey możesz skonfigurować później w ustawieniach.",
|
||||
"passwordMinLength": "Min. 12 znaków",
|
||||
"passwordTooShort": "Hasło musi mieć co najmniej {minLength} znaków.",
|
||||
"privacyPolicy": "Polityka prywatności"
|
||||
},
|
||||
"dashboard": {
|
||||
@@ -1526,9 +1526,9 @@
|
||||
}
|
||||
},
|
||||
"trendHints": {
|
||||
"title": "First trend after 5 readings",
|
||||
"remainingOne": "1 more reading to go.",
|
||||
"remainingMany": "{count} more readings to go."
|
||||
"title": "Pierwszy trend po 5 pomiarach",
|
||||
"remainingOne": "Jeszcze 1 pomiar do trendu.",
|
||||
"remainingMany": "Jeszcze {count} pomiarów do trendu."
|
||||
},
|
||||
"settings": {
|
||||
"researchMode": {
|
||||
@@ -2770,7 +2770,7 @@
|
||||
"breadcrumbInbox": "Centrum powiadomień",
|
||||
"breadcrumbChannels": "Kanały powiadomień",
|
||||
"breadcrumbSettings": "Ustawienia",
|
||||
"eventColumn": "Event",
|
||||
"eventColumn": "Zdarzenie",
|
||||
"subtitle": "Choose which notifications you want to receive through which channel.",
|
||||
"loadError": "Notification preferences could not be loaded.",
|
||||
"noChannels": "Configure a notification channel in Settings first.",
|
||||
@@ -2942,14 +2942,14 @@
|
||||
}
|
||||
},
|
||||
"passwordStrength": {
|
||||
"veryWeak": "Very weak",
|
||||
"weak": "Weak",
|
||||
"acceptable": "Acceptable",
|
||||
"strong": "Strong",
|
||||
"veryStrong": "Very strong",
|
||||
"tooShort": "Too short",
|
||||
"characters": "characters",
|
||||
"minLength": "At least {count} characters required."
|
||||
"veryWeak": "Bardzo słabe",
|
||||
"weak": "Słabe",
|
||||
"acceptable": "Akceptowalne",
|
||||
"strong": "Silne",
|
||||
"veryStrong": "Bardzo silne",
|
||||
"tooShort": "Za krótkie",
|
||||
"characters": "znaków",
|
||||
"minLength": "Wymagane co najmniej {count} znaków."
|
||||
},
|
||||
"telegram": {
|
||||
"errorInvalidAction": "Invalid action.",
|
||||
|
||||
Reference in new issue
Block a user