Files
LambdaMail/services/webmail/messages/es.json
T
Lucas RayanandClaude Opus 5 3a82d82428 #22: fix the admin lockout, and the regressions the UI rewrite brought back
The console demanded a second factor and refused to open without one, but
enrolment lived on the other surface - so an operator whose only account
was the administrator had no way in. The password was already verified at
that point, so the refusal now carries a short-lived grant that permits
enrolling a factor and nothing else, and the admin login screen walks
through it: secret, confirmation, recovery codes, sign in. Two tests cover
it, including that the grant opens no other endpoint.

The rewrite also undid work that was already in place:

  - The postcss override was dropped and the advisory came back, along
    with a critical one in vitest. postcss is a direct dependency now, so
    the fix is the version plus an override scoped to Next's own copy;
    vitest moves to 3.2.7. The lockfile needed regenerating for either to
    take effect. Zero advisories now.

  - 100 language-lint violations: the admin console had been rewritten
    with its strings in Portuguese, hardcoded. That fails CI, and it also
    puts those strings beyond the reach of the translation bundles - an
    English or Spanish user would have read Portuguese. They are English
    in the source again.

  - The mail screen put a fixed 320px list beside the reader with no
    breakpoint, so on a phone the viewport overflowed and the message was
    a few pixels wide. One pane at a time below md, with a way back.

  - The icon-only navigation toggles had nothing for a screen reader to
    announce.

The layouts' own mobile navigation and every previously fixed behaviour
survived the rewrite - checked rather than assumed.

Also fixes a marker collision I introduced: the E2E helper locates the
repository by a migrations directory, and services/migrations satisfied
that one directory too early. It now requires the SQL to actually be
there.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-02 16:13:14 -03:00

149 lines
5.8 KiB
JSON

{
"common": {
"appName": "LambdaMail",
"userPortal": "Webmail",
"adminPortal": "Consola de Gestión",
"loading": "Cargando...",
"save": "Guardar Cambios",
"cancel": "Cancelar",
"delete": "Eliminar",
"confirm": "Confirmar",
"search": "Buscar",
"status": "Estado",
"actions": "Acciones",
"refresh": "Actualizar",
"logout": "Cerrar Sesión"
},
"auth": {
"userLoginTitle": "Iniciar Sesión en Webmail",
"adminLoginTitle": "Iniciar Sesión en Consola Admin",
"emailLabel": "Dirección de Correo",
"passwordLabel": "Contraseña",
"signInButton": "Iniciar Sesión",
"totpCodeLabel": "Código del Autenticador (6 dígitos)",
"verifyCodeButton": "Verificar Código",
"invalidCredentials": "Correo o contraseña no válidos",
"mfaRequired": "Código de autenticación de dos factores requerido"
},
"mail": {
"inbox": "Bandeja de Entrada",
"sent": "Enviados",
"drafts": "Borradores",
"trash": "Papelera",
"junk": "Spam",
"archive": "Archivo",
"compose": "Redactar Correo",
"noMessages": "No hay mensajes en esta carpeta",
"unreadCount": "{count, plural, =0 {Sin mensajes no leídos} one {# mensaje no leído} other {# mensajes no leídos}}",
"loadImages": "Cargar Imágenes Remotas",
"reply": "Responder",
"forward": "Reenviar",
"undoSend": "Deshacer Envío ({seconds}s restantes)"
},
"settings": {
"title": "Configuración de la Cuenta",
"security": "Seguridad y 2FA",
"appPasswords": "Contraseñas de Aplicación",
"sessions": "Sesiones Activas",
"mfaStatus": "Estado de Autenticación de Dos Factores",
"mfaEnabled": "2FA está Activo",
"mfaDisabled": "2FA está Desactivado",
"enableMfa": "Activar 2FA",
"generateAppPassword": "Generar Contraseña de Aplicación",
"recoveryCodesTitle": "Códigos de Recuperación",
"saveRecoveryCodes": "Guarde estos códigos de recuperación en un lugar seguro. No se volverán a mostrar.",
"language": "Idioma",
"signOut": "Cerrar sesión",
"langEn": "Inglés",
"langPtBR": "Portugués (Brasil)",
"langEs": "Español"
},
"admin": {
"dashboardTitle": "Panel del Sistema",
"domainsTitle": "Dominios y DNS (13 Registros)",
"mailboxesTitle": "Buzones y Cuentas",
"aliasesTitle": "Alias y Enrutamiento",
"queueTitle": "Cola de Entrega de Salida",
"dmarcTitle": "Análisis DMARC",
"securityTitle": "Seguridad y Registro de Auditoría",
"preflightTitle": "Diagnóstico Preflight",
"reconcileDns": "Reconciliar Registros DNS",
"dnsStatusVerified": "VERIFICADO",
"dnsStatusDrift": "DESVÍO DETECTADO",
"dnsStatusPartial": "PARCIAL",
"retryJob": "Reintentar Entrega",
"cancelJob": "Cancelar Trabajo",
"freezeDomain": "Congelar Destino"
},
"errors": {
"unauthorized": "Sesión expirada o no autorizada",
"forbidden": "Acceso prohibido para esta superficie de cuenta",
"serverError": "Ocurrió un error interno en el servidor"
},
"ui": {
"accountStatus": "Estado de la cuenta",
"actions": "Acciones",
"active": "ACTIVA",
"activeSessions": "Sesiones activas del webmail",
"actor": "Autor / cuenta",
"actualRecord": "Registro DNS actual (Cloudflare)",
"allChecksPassed": "TODAS LAS COMPROBACIONES PASARON",
"appPasswordGenerated": "Contrasena de aplicacion generada:",
"appPasswordsSection": "Contrasenas de aplicacion (clientes IMAP / SMTP)",
"attempts": "Intentos",
"clientIp": "IP del cliente",
"copyPasswordNow": "Copie esta contrasena ahora. No se mostrara de nuevo.",
"coreInfra": "Estado de la infraestructura",
"currentSession": "Sesion actual de este navegador",
"daneVerified": "DANE / MTA-STS verificado",
"destination": "Destino",
"diskUsed": "Uso de disco",
"dkimResult": "Resultado DKIM",
"dkimAlignment": "Alineacion de la firma DKIM",
"dmarcEnforcement": "Aplicacion de la politica DMARC",
"domainVerification": "Estado de la verificacion del dominio",
"emailAddress": "Direccion de correo",
"eventAction": "Accion registrada",
"expectedValue": "Valor esperado por la especificacion",
"healthy": "SALUDABLE",
"imapEngine": "Servidor IMAP (143/993)",
"inboundVolume": "Volumen de entrada (24h)",
"jobId": "ID del trabajo",
"lastError": "Ultimo error",
"liveMetrics": "Metricas operativas del nodo de correo.",
"localDisk": "Almacenamiento en disco local",
"preflightTitle": "Diagnostico de preflight del servidor",
"messageBody": "Cuerpo del mensaje",
"messageVolume": "Volumen de mensajes",
"noAppPasswords": "Aun no se generaron contrasenas de aplicacion.",
"online": "EN LINEA",
"outboundDelivered": "Entregados en salida (24h)",
"queueDepth": "Profundidad de la cola",
"postgresRunner": "Ejecutor de tareas Postgres activo",
"provisionMailbox": "Crear nuevo buzon",
"recipient": "Destinatario",
"recordName": "Nombre del registro",
"reportingOrg": "Organizacion que informo",
"scanners": "Rspamd (antispam) y ClamAV",
"sender": "Remitente",
"smtpListener": "Servidor SMTP (25/587/465)",
"sourceIp": "IP de origen",
"spfRatio": "Tasa de alineacion SPF",
"spfResult": "Resultado SPF",
"storageQuota": "Cuota de almacenamiento",
"subject": "Asunto",
"targetObject": "Objeto destino",
"timestamp": "Fecha y hora",
"toRecipients": "Para (destinatarios)",
"totalEvaluated": "Total de mensajes evaluados",
"twoFactorSection": "Autenticacion en dos pasos (TOTP RFC 6238)",
"watching": "OBSERVANDO",
"passwordChanged": "Contrasena cambiada",
"signOutOthers": "Cerrar las otras sesiones",
"changePassword": "Cambiar contrasena",
"currentPassword": "Contrasena actual",
"newPassword": "Nueva contrasena (min. 12 caracteres)",
"toggleMenu": "Abrir o cerrar el menu"
}
}