- Updated all Spanish (es) translation files with comprehensive translations for tracking, AI, family, insights, children, and settings pages - Updated French (fr), Portuguese (pt), and Chinese (zh) translations to match English structure - Added German (de) and Italian (it) language support with complete translation files - Fixed medicine tracker route from /track/medication to /track/medicine - Updated i18n config to support 7 languages: en, es, fr, pt, zh, de, it - All tracking pages now fully localized: sleep, feeding, diaper, medicine, activity - AI assistant interface fully translated with thinking messages and suggested questions - Family management and insights pages now support all languages 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
69 lines
3.1 KiB
JSON
69 lines
3.1 KiB
JSON
{
|
|
"general": {
|
|
"unknown": "Ocurrió un error desconocido",
|
|
"networkError": "Error de red. Por favor verifica tu conexión.",
|
|
"serverError": "Error del servidor. Por favor intenta más tarde.",
|
|
"notFound": "No se encontró el recurso solicitado",
|
|
"unauthorized": "No estás autorizado para realizar esta acción",
|
|
"forbidden": "Acceso denegado",
|
|
"validation": "Por favor verifica tu entrada e intenta de nuevo",
|
|
"timeout": "Se agotó el tiempo de espera. Por favor intenta de nuevo."
|
|
},
|
|
"auth": {
|
|
"invalidCredentials": "Correo o contraseña inválidos",
|
|
"emailExists": "Ya existe una cuenta con este correo",
|
|
"emailNotVerified": "Por favor verifica tu dirección de correo",
|
|
"accountLocked": "Tu cuenta ha sido bloqueada. Por favor contacta soporte.",
|
|
"sessionExpired": "Tu sesión ha expirado. Por favor inicia sesión de nuevo.",
|
|
"weakPassword": "La contraseña es muy débil",
|
|
"tokenInvalid": "Token inválido o expirado",
|
|
"deviceNotTrusted": "Dispositivo no confiable. Por favor verifica tu dispositivo."
|
|
},
|
|
"family": {
|
|
"limitExceeded": "Límite de tamaño de familia excedido",
|
|
"memberNotFound": "Miembro de familia no encontrado",
|
|
"cannotRemoveSelf": "No puedes eliminarte a ti mismo de la familia",
|
|
"insufficientPermissions": "No tienes permisos para realizar esta acción",
|
|
"invitationExpired": "Esta invitación ha expirado",
|
|
"alreadyMember": "Esta persona ya es miembro de la familia"
|
|
},
|
|
"child": {
|
|
"notFound": "Perfil del niño no encontrado",
|
|
"invalidAge": "Edad inválida. Por favor verifica la fecha de nacimiento.",
|
|
"limitExceeded": "Has alcanzado el número máximo de niños"
|
|
},
|
|
"tracking": {
|
|
"invalidData": "Datos de seguimiento inválidos",
|
|
"futureDate": "No puedes registrar actividades en el futuro",
|
|
"duplicateEntry": "Ya existe una entrada similar",
|
|
"invalidDuration": "Duración inválida",
|
|
"invalidAmount": "Cantidad inválida"
|
|
},
|
|
"ai": {
|
|
"dailyLimitReached": "Límite diario de preguntas IA alcanzado",
|
|
"contextError": "Error al cargar contexto para IA",
|
|
"responseError": "Error al generar respuesta IA",
|
|
"moderationFlag": "Tu mensaje fue marcado por nuestro sistema de moderación de contenido"
|
|
},
|
|
"offline": {
|
|
"noConnection": "Sin conexión a internet",
|
|
"syncFailed": "Error al sincronizar datos",
|
|
"pendingChanges": "Tienes cambios pendientes que necesitan sincronizarse"
|
|
},
|
|
"validation": {
|
|
"required": "Este campo es requerido",
|
|
"invalidEmail": "Por favor ingresa una dirección de correo válida",
|
|
"invalidPhone": "Por favor ingresa un número de teléfono válido",
|
|
"invalidDate": "Por favor ingresa una fecha válida",
|
|
"minLength": "Debe tener al menos {{min}} caracteres",
|
|
"maxLength": "No debe tener más de {{max}} caracteres",
|
|
"minValue": "Debe ser al menos {{min}}",
|
|
"maxValue": "No debe ser más de {{max}}",
|
|
"invalidFormat": "Formato inválido",
|
|
"passwordMismatch": "Las contraseñas no coinciden"
|
|
},
|
|
"retry": "Reintentar",
|
|
"goBack": "Volver",
|
|
"contactSupport": "Contactar Soporte",
|
|
"dismiss": "Descartar"
|
|
} |