veza/apps/web/src/locales/es.json
senke dfeff836ce feat(ui): add SUMI design system components, seasonal hooks, and i18n updates
Add SumiButton and SumiCanvas components with lavis ink wash aesthetic.
Add useSeason and useTimeOfDay hooks for time-aware UI tinting.
Update storybook config, UI components, locales (en/es/fr), and dependencies.
Add Chromatic CI workflow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 19:15:54 +02:00

1292 lines
49 KiB
JSON

{
"common": {
"loading": "Cargando...",
"save": "Guardar",
"cancel": "Cancelar",
"edit": "Editar",
"delete": "Eliminar",
"confirm": "Confirmar",
"close": "Cerrar",
"help": "Ayuda",
"back": "Volver",
"next": "Siguiente",
"previous": "Anterior",
"search": "Buscar",
"filter": "Filtrar",
"sort": "Ordenar",
"view": "Ver",
"download": "Descargar",
"upload": "Subir",
"share": "Compartir",
"copy": "Copiar",
"refresh": "Actualizar",
"settings": "Configuración",
"profile": "Perfil",
"logout": "Cerrar sesión",
"login": "Iniciar sesión",
"register": "Registrarse",
"email": "Correo electrónico",
"password": "Contraseña",
"showPassword": "Mostrar contraseña",
"hidePassword": "Ocultar contraseña",
"username": "Nombre de usuario",
"firstName": "Nombre",
"lastName": "Apellido",
"name": "Nombre",
"title": "Título",
"description": "Descripción",
"date": "Fecha",
"time": "Hora",
"status": "Estado",
"type": "Tipo",
"size": "Tamaño",
"actions": "Acciones",
"error": "Error",
"success": "Éxito",
"warning": "Advertencia",
"info": "Información",
"yes": "Sí",
"no": "No",
"never": "Nunca",
"changeTheme": "Cambiar tema",
"userMenu": "Menú de usuario",
"notifications": "Notificaciones",
"retry": "Reintentar",
"retrying": "Reintentando...",
"dismiss": "Descartar",
"loadingAria": "Cargando"
},
"auth": {
"login": {
"title": "Iniciar sesión",
"subtitle": "Inicia sesión en tu cuenta Veza",
"email": "Correo electrónico",
"password": "Contraseña",
"rememberMe": "Recordarme",
"forgotPassword": "¿Olvidaste tu contraseña?",
"loginButton": "Iniciar sesión",
"noAccount": "¿No tienes una cuenta?",
"createAccount": "Crear cuenta",
"orContinueWith": "o continuar con",
"footerLink": "¿No tienes cuenta? Regístrate",
"oauthProvider": "Iniciar sesión con {{provider}}",
"errors": {
"invalidCredentials": "Correo o contraseña incorrectos",
"accountLocked": "Cuenta bloqueada",
"emailNotVerified": "Correo no verificado",
"emailRequired": "El correo es obligatorio",
"emailInvalid": "Formato de correo inválido",
"passwordRequired": "La contraseña es obligatoria",
"connectionError": "Error de conexión. Verifica tu internet.",
"genericError": "Ocurrió un error. Inténtalo de nuevo."
}
},
"twoFactor": {
"title": "Autenticación de dos factores",
"subtitle": "Ingresa el código de tu aplicación de autenticación",
"backToSignIn": "Volver a iniciar sesión",
"verificationCode": "Código de verificación",
"enterCode": "Ingresa el código de 6 dígitos de tu aplicación de autenticación para continuar.",
"lostAccess": "¿Perdiste el acceso?",
"useBackupCode": "Usar un código de respaldo",
"useAuthenticator": "Usar código de autenticador",
"backupCode": "Código de respaldo",
"verify": "Verificar",
"verifying": "Verificando...",
"cancel": "Cancelar",
"enterCodeError": "Por favor ingresa un código de verificación"
},
"layout": {
"pageLabel": "Página de autenticación",
"navLabel": "Navegación de autenticación"
},
"register": {
"title": "Registro",
"subtitle": "Crea tu cuenta",
"firstName": "Nombre",
"lastName": "Apellido",
"username": "Nombre de usuario",
"email": "Correo electrónico",
"password": "Contraseña",
"confirmPassword": "Confirmar contraseña",
"registerButton": "Registrarse",
"loadingText": "Registrando...",
"hasAccount": "¿Ya tienes una cuenta?",
"loginLink": "Iniciar sesión",
"footerLink": "¿Ya tienes una cuenta? Iniciar sesión",
"formAriaLabel": "Formulario de registro",
"errors": {
"emailRequired": "Correo requerido",
"emailInvalid": "Correo inválido",
"usernameRequired": "Nombre de usuario requerido",
"usernameTooShort": "El nombre de usuario debe tener al menos 3 caracteres",
"usernameUnavailable": "Este nombre de usuario ya está en uso",
"passwordRequired": "Contraseña requerida",
"passwordTooShort": "La contraseña debe tener al menos 12 caracteres",
"passwordWeak": "La contraseña debe contener mayúscula, minúscula, número y carácter especial",
"confirmRequired": "Confirmación de contraseña requerida",
"passwordMismatch": "Las contraseñas no coinciden",
"emailExists": "Este correo ya está en uso",
"usernameExists": "Este nombre de usuario ya está en uso",
"weakPassword": "La contraseña debe tener al menos 12 caracteres",
"termsRequired": "Debes aceptar los términos de servicio y la política de privacidad"
},
"terms": {
"accept": "Acepto los",
"termsOfService": "términos de servicio",
"termsAriaLabel": "Leer los términos de servicio",
"and": "y la",
"privacyPolicy": "política de privacidad",
"privacyAriaLabel": "Leer la política de privacidad",
"description": "Debes aceptar los términos de servicio y la política de privacidad para crear una cuenta"
},
"usernameCheck": {
"checking": "Verificando...",
"available": "Este nombre de usuario está disponible",
"unavailable": "Este nombre de usuario ya está en uso"
},
"passwordStrength": {
"label": "Fuerza de la contraseña: {{level}}",
"weak": "Débil",
"fair": "Regular",
"good": "Buena",
"strong": "Fuerte",
"reqLength": "Al menos 12 caracteres ({{current}}/12)",
"reqCase": "Mayúscula y minúscula",
"reqDigit": "Un número",
"reqSpecial": "Un carácter especial (!@#$%^&*...)"
},
"verification": {
"title": "¡Registro exitoso!",
"emailSent": "Se ha enviado un correo de verificación a",
"checkInbox": "Revisa tu bandeja de entrada y haz clic en el enlace de verificación.",
"resendButton": "Reenviar correo de verificación",
"resendLoading": "Enviando...",
"resendSuccess": "¡Correo de verificación reenviado con éxito!",
"resendError": "No se pudo reenviar el correo. Inténtalo de nuevo."
}
},
"verifyEmail": {
"title": {
"verifying": "Verificación de correo",
"success": "Correo verificado",
"error": "Verificación de correo"
},
"subtitle": {
"verifying": "Verificación en curso...",
"success": "Tu correo ha sido verificado con éxito",
"error": "Ocurrió un error"
},
"message": {
"verifying": "Verificando tu correo electrónico...",
"success": "¡Tu correo ha sido verificado con éxito!",
"invalidLink": "Enlace de verificación inválido o faltante",
"defaultError": "La verificación falló",
"resendSuccess": "¡Correo de verificación enviado! Revisa tu bandeja de entrada.",
"emailNotFound": "Correo no encontrado. Regístrate de nuevo o contacta al soporte.",
"resendError": "Error al enviar el correo"
},
"button": {
"retry": "Reintentar",
"resend": "Reenviar correo de verificación",
"resendCooldown": "Reenviar en {{seconds}}s",
"resendCooldownAriaLabel": "Reenviar correo de verificación en {{seconds}} segundos",
"resendAriaLabel": "Reenviar correo de verificación"
},
"success": {
"title": "¡Éxito!",
"redirecting": "Serás redirigido a la página de inicio de sesión..."
},
"error": {
"title": "Error"
},
"srOnly": {
"verifying": "Verificando tu correo electrónico, por favor espera"
},
"footer": {
"backToLogin": "Volver al inicio de sesión"
}
},
"forgotPassword": {
"title": "Contraseña olvidada",
"subtitle": "Ingresa tu correo para recibir un enlace de restablecimiento",
"email": "Correo electrónico",
"sendButton": "Enviar enlace",
"backToLogin": "Volver al inicio de sesión",
"success": "Correo de restablecimiento enviado",
"successTitle": "Revisa tu correo",
"successBody": "Si existe una cuenta con ese correo, hemos enviado instrucciones para restablecer la contraseña.",
"checkInbox": "Revisa tu bandeja de entrada y haz clic en el enlace para restablecer tu contraseña.",
"resendButton": "Reenviar correo",
"formAriaLabel": "Formulario de restablecimiento de contraseña",
"pageTitle": "Contraseña olvidada - Veza",
"errors": {
"emailRequired": "Correo requerido",
"emailInvalid": "Formato de correo inválido"
}
},
"resetPassword": {
"title": "Restablecer contraseña",
"subtitle": "Ingresa tu nueva contraseña",
"pageTitle": "Restablecer contraseña - Veza",
"password": "Nueva contraseña",
"confirmPassword": "Confirmar contraseña",
"submitButton": "Restablecer contraseña",
"backToLogin": "Volver al inicio de sesión",
"requestNewLink": "Solicitar un nuevo enlace",
"formAriaLabel": "Formulario de restablecimiento de contraseña",
"invalidToken": {
"title": "Enlace de restablecimiento inválido",
"subtitle": "El enlace de restablecimiento es inválido o ha expirado",
"heading": "Enlace inválido",
"body": "El enlace de restablecimiento es inválido o ha expirado. Solicita un nuevo enlace."
},
"success": {
"title": "Contraseña restablecida",
"subtitle": "Tu contraseña ha sido cambiada con éxito",
"heading": "¡Éxito!",
"body": "Tu contraseña ha sido restablecida con éxito.",
"redirecting": "Serás redirigido a la página de inicio de sesión en {{seconds}}s..."
},
"errors": {
"passwordRequired": "Contraseña requerida",
"passwordTooShort": "La contraseña debe tener al menos 8 caracteres",
"confirmRequired": "Confirmación de contraseña requerida",
"passwordMismatch": "Las contraseñas no coinciden"
}
}
},
"landing": {
"nav": {
"product": "PRODUCTO",
"platform": "PLATAFORMA",
"login": "INICIAR SESIÓN",
"ariaLabel": "Navegación principal"
},
"hero": {
"tagline1": "Hardware de audio profesional — abierto, reparable, transparente.",
"tagline2": "Plataforma musical ética — sin rastreo, sin algoritmo.",
"cta": "Lanzamiento pronto — Únete a los primeros",
"placeholder": "tu@email.com",
"submit": "UNIRSE",
"discover": "DESCUBRIR"
},
"values": {
"kicker": "三つの柱",
"title": "Tres compromisos",
"card1": {
"title": "Hardware Abierto",
"desc": "Esquemas publicados bajo licencia CERN-OHL. Puedes construir, reparar y mejorar cada componente. Sin obsolescencia programada."
},
"card2": {
"title": "Plataforma Ética",
"desc": "Cero rastreo comportamental. Cero algoritmo de manipulación. Feed cronológico. Datos privados. Código open-source (AGPL-3.0)."
},
"card3": {
"title": "Comunidad Artista",
"desc": "Streaming, marketplace, chat en tiempo real, playlists colaborativas. Compensación transparente. Los artistas controlan su música."
}
},
"product": {
"kicker": "Primer producto",
"title": "Micrófono Condensador",
"desc": "Diafragma grande. Preamplificador OPA1642. Cuerpo de aluminio mecanizado. Esquemas publicados, componentes estándar, guía de reparación incluida. Garantía de 5 años.",
"feat1": "Esquemas KiCAD publicados — CERN-OHL-W",
"feat2": "Reparable — sin pegamento, componentes estándar",
"feat3": "Fabricado en Francia — sourcing documentado",
"feat4": "~150 € — transparencia total de costos",
"cta": "RECIBIR NOTIFICACIÓN DEL LANZAMIENTO"
},
"platform": {
"kicker": "La plataforma",
"subtitle": "墨 STREAMING — DEL MICRÓFONO AL OYENTE",
"streaming": "Streaming HLS",
"community": "Comunidad",
"marketplace": "Marketplace",
"privacy": "Privacidad",
"openSource": "Open source",
"zeroTracking": "Cero rastreo",
"stats": "435 000 líneas de código. Auditoría de seguridad externa. 34 suites de tests. Backend Go + Stream server Rust + Frontend React. Auto-hospedado. Sin cloud. Sin VC."
},
"notify": {
"title": "Únete a los primeros",
"desc": "Regístrate para ser notificado del lanzamiento. Sin spam — un solo correo el día del lanzamiento.",
"submit": "NOTIFICARME",
"placeholder": "tu@email.com",
"ariaLabel": "Correo electrónico para notificación de lanzamiento"
},
"form": {
"successHero": "Registro confirmado. ¡Hasta pronto!",
"successCta": "Registro confirmado. ¡Hasta pronto!",
"errorSubscription": "La suscripción falló",
"errorGeneric": "Ocurrió un error",
"loadingAriaLabel": "Enviando..."
},
"footer": {
"openSource": "Open Source",
"privacy": "Privacidad",
"contact": "Contacto",
"tagline": "TECNOLOGÍA AUDIO ÉTICA — HECHO EN FRANCIA"
},
"pageTitle": "TALAS — Hardware de audio ético y Plataforma"
},
"feed": {
"title": "Feed",
"subtitle": "Últimas pistas de tus artistas",
"emptyTitle": "Tu feed está vacío",
"emptyDescription": "Sigue artistas para ver sus últimas pistas aquí.",
"newReleasesInGenres": "Nuevos lanzamientos en tus géneros",
"followedArtists": "Artistas seguidos",
"noNewTracks": "No hay pistas nuevas",
"suggestedAccounts": "Cuentas sugeridas",
"followers_one": "{{count}} seguidor",
"followers_other": "{{count}} seguidores",
"seeAll": "Ver todo"
},
"dashboard": {
"title": "Panel de control",
"welcome": "¡Bienvenido, {{name}}!",
"goodMorning": "Buenos días",
"goodAfternoon": "Buenas tardes",
"goodEvening": "Buenas noches",
"subtitle": "Esto es lo que está pasando con tu música hoy.",
"stats": {
"totalTracks": "Pistas totales",
"totalPlaylists": "Playlists",
"totalFavorites": "Favoritos",
"totalStorage": "Almacenamiento usado",
"tracksListened": "Pistas escuchadas",
"messagesSent": "Mensajes enviados",
"favorites": "Favoritos",
"activeFriends": "Amigos activos"
},
"fromLastMonth": "respecto al mes pasado",
"viewAll": "Ver todo",
"recentActivity": "Actividad reciente",
"recentActivityDescription": "Tus últimas interacciones en la plataforma",
"recentTracks": "Pistas recientes",
"recentTracksDescription": "Últimas adiciones a tu biblioteca",
"noTracksInLibrary": "No hay pistas en tu biblioteca",
"quickActions": "Acciones rápidas",
"quickActionsDescription": "Acceso rápido a las funciones principales",
"uploadTrack": "Subir pista",
"createPlaylist": "Crear playlist",
"discoverMusic": "Descubrir música",
"openChat": "Abrir chat",
"startChat": "Iniciar chat",
"newTrack": "Nueva pista",
"newChat": "Nuevo chat",
"library": "Biblioteca",
"inviteFriends": "Invitar amigos",
"activity": {
"newTrackAdded": "Nueva pista añadida",
"messageFrom": "Mensaje de @{{user}}",
"newFavoriteAdded": "Nuevo favorito añadido"
}
},
"comingSoon": {
"title": "Próximamente",
"description": "Esta función está en desarrollo y estará disponible pronto.",
"notifyMe": "Notificarme",
"goBack": "Volver"
},
"designSystem": {
"pageTitle": "Design System — Veza",
"title": "Design System",
"subtitle": "Biblioteca de componentes y referencia visual",
"underConstruction": "Esta página está en construcción. Los componentes se mostrarán aquí pronto.",
"backToHome": "Volver al inicio"
},
"player": {
"miniPlayerAriaLabel": "Mini reproductor de audio",
"expandPlayer": "Expandir reproductor",
"closeMiniPlayer": "Cerrar mini reproductor",
"play": "Reproducir",
"pause": "Pausa",
"next": "Siguiente pista",
"previous": "Pista anterior",
"shuffleOn": "Aleatorio: Activado",
"shuffleOff": "Aleatorio: Desactivado",
"repeatOff": "Repetición: Desactivada",
"repeatTrack": "Repetición: Pista",
"repeatPlaylist": "Repetición: Playlist",
"mute": "Silenciar",
"unmute": "Activar sonido",
"showQueue": "Mostrar cola",
"hideQueue": "Ocultar cola"
},
"chat": {
"title": "Chat",
"conversations": "Conversaciones",
"newConversation": "Nueva conversación",
"searchConversations": "Buscar conversaciones",
"noConversations": "Sin conversaciones",
"startConversation": "Iniciar una conversación",
"messages": {
"placeholder": "Escribe tu mensaje...",
"send": "Enviar",
"typing": "{{user}} está escribiendo...",
"online": "En línea",
"offline": "Desconectado",
"lastSeen": "Visto por última vez {{time}}"
},
"errors": {
"connectionFailed": "Error al conectar al chat",
"messageFailed": "Error al enviar el mensaje",
"reconnecting": "Reconectando..."
}
},
"library": {
"title": "Biblioteca",
"myFiles": "Mis archivos",
"favorites": "Favoritos",
"recent": "Recientes",
"search": "Buscar en la biblioteca",
"filterBy": "Filtrar por",
"sortBy": "Ordenar por",
"viewMode": {
"grid": "Vista de cuadrícula",
"list": "Vista de lista"
},
"upload": {
"title": "Subir archivo",
"dragDrop": "Arrastra y suelta tus archivos aquí",
"or": "o",
"browseFiles": "Explorar archivos",
"supportedFormats": "Formatos soportados: MP3, WAV, FLAC, PDF, DOC, DOCX",
"maxSize": "Tamaño máximo: 100MB"
},
"actions": {
"play": "Reproducir",
"download": "Descargar",
"share": "Compartir",
"addToFavorites": "Añadir a favoritos",
"removeFromFavorites": "Quitar de favoritos",
"edit": "Editar",
"delete": "Eliminar"
},
"empty": {
"title": "Tu biblioteca está vacía",
"subtitle": "Comienza subiendo tus primeros archivos",
"description": "Sube tu primera pista o crea una playlist para empezar.",
"uploadButton": "Subir archivo",
"uploadTrack": "Subir pista"
},
"new": "Nuevo",
"searchPlaceholder": "Buscar...",
"table": {
"label": "Lista de mis pistas",
"title": "Título",
"artist": "Artista",
"date": "Fecha",
"duration": "Duración",
"download": "Descargar",
"delete": "Eliminar",
"moreOptions": "Más opciones para {{title}}"
},
"grid": {
"label": "Cuadrícula de pistas de la biblioteca",
"play": "Reproducir {{title}}"
}
},
"profile": {
"title": "Perfil",
"subtitle": "Gestiona tu información personal y preferencias",
"personalInfo": "Información personal",
"updateProfile": "Actualizar tu perfil",
"edit": "Editar",
"save": "Guardar",
"cancel": "Cancelar",
"avatar": {
"title": "Foto de perfil",
"changePhoto": "Cambiar foto",
"removePhoto": "Eliminar foto"
},
"accountInfo": "Información de la cuenta",
"memberSince": "Miembro desde",
"emailVerified": "Correo verificado",
"lastLogin": "Último acceso",
"fields": {
"firstName": "Nombre",
"lastName": "Apellido",
"username": "Nombre de usuario",
"email": "Correo electrónico",
"bio": "Bio",
"bioPlaceholder": "Cuéntanos sobre ti..."
}
},
"profilePublic": {
"pageTitle": "{{displayName}} — Veza",
"about": "Acerca de",
"noBio": "Sistemas en línea. Sin biografía disponible.",
"links": "Enlaces",
"joined": "Miembro desde {{date}}",
"tabs": {
"tracks": "Pistas",
"playlists": "Playlists",
"reposts": "Reposts",
"feed": "Feed"
},
"stats": {
"tracks": "Pistas",
"playlists": "Playlists",
"followers": "Seguidores",
"following": "Siguiendo"
},
"empty": {
"noTracks": "Aún no hay pistas",
"noTracksDesc": "Este usuario aún no tiene pistas públicas.",
"noPlaylists": "Aún no hay playlists",
"noPlaylistsDesc": "No se encontraron playlists públicas para este usuario.",
"noPosts": "Aún no hay publicaciones",
"noPostsDesc": "Este usuario aún no ha publicado nada.",
"noReposts": "Aún no hay reposts",
"noRepostsDesc": "Este usuario aún no ha reposteado pistas."
},
"reposted": "Reposteado",
"unknownArtist": "Artista desconocido",
"error": {
"notFound": "Usuario no encontrado",
"notFoundDesc": "La señal se perdió en el vacío. No encontramos el perfil que buscabas.",
"generic": "Algo salió mal",
"genericDesc": "No pudimos cargar este perfil. Verifica tu conexión e inténtalo de nuevo.",
"tryAgain": "Reintentar",
"returnToBase": "Volver a la base"
},
"private": {
"title": "Perfil privado",
"description": "Este perfil está oculto. Su contenido no es visible."
},
"follow": {
"follow": "Seguir",
"following": "Siguiendo",
"subscribing": "Suscribiendo...",
"unsubscribing": "Cancelando...",
"followSuccess": "Ahora sigues a este usuario",
"unfollowSuccess": "Ya no sigues a este usuario"
},
"loading": "Cargando perfil"
},
"settings": {
"title": "Configuración",
"subtitle": "Gestiona tus preferencias y configuración de cuenta",
"tabs": {
"appearance": "Apariencia",
"language": "Idioma",
"notifications": "Notificaciones",
"security": "Seguridad",
"account": "Cuenta",
"preferences": "Preferencias",
"privacy": "Privacidad",
"playback": "Reproducción"
},
"appearance": {
"theme": "Tema",
"themeDescription": "Elige el tema que mejor te convenga",
"light": "Claro",
"dark": "Oscuro",
"system": "Sistema",
"systemDescription": "Seguir el sistema"
},
"language": {
"title": "Idioma y región",
"description": "Elige tu idioma preferido",
"language": "Idioma"
},
"notifications": {
"title": "Notificaciones",
"description": "Configura tus preferencias de notificación",
"emailNotifications": "Notificaciones por correo",
"emailDescription": "Recibe notificaciones por correo electrónico",
"pushNotifications": "Notificaciones push",
"pushDescription": "Recibe notificaciones push en el navegador",
"chatNotifications": "Notificaciones de chat",
"chatDescription": "Recibe notificaciones de nuevos mensajes",
"emailPrefs": "Preferencias de correo (configuración de usuario)",
"emailNotif": "Notificaciones por correo",
"emailNotifDesc": "Recibir notificaciones por correo electrónico",
"pushNotif": "Notificaciones push",
"pushNotifDesc": "Recibir notificaciones push",
"browserNotif": "Notificaciones del navegador",
"browserNotifDesc": "Recibir notificaciones en el navegador",
"activity": "Notificaciones de actividad",
"emailFollow": "Correo al seguir",
"emailFollowDesc": "Recibir un correo cuando alguien te sigue",
"emailLike": "Correo al dar me gusta",
"emailLikeDesc": "Recibir un correo cuando a alguien le gusta tu contenido",
"emailComment": "Correo al comentar",
"emailCommentDesc": "Recibir un correo cuando alguien comenta tu contenido",
"emailMessage": "Correo al recibir mensaje",
"emailMessageDesc": "Recibir un correo cuando recibes un mensaje",
"emailMention": "Correo al ser mencionado",
"emailMentionDesc": "Recibir un correo cuando alguien te menciona",
"emailMarketing": "Correos de marketing",
"emailMarketingDesc": "Recibir correos promocionales y noticias"
},
"security": {
"title": "Seguridad",
"description": "Gestiona tu configuración de seguridad",
"changePassword": "Cambiar contraseña",
"changePasswordDescription": "Actualiza tu contraseña",
"twoFactor": "Autenticación de dos factores",
"twoFactorDescription": "Añade una capa adicional de seguridad",
"activeSessions": "Sesiones activas",
"activeSessionsDescription": "Gestiona tus sesiones de inicio de sesión",
"modify": "Modificar",
"configure": "Configurar",
"view": "Ver"
},
"account": {
"changePassword": "Cambiar contraseña",
"changePasswordDesc": "Actualiza tu contraseña para mantener tu cuenta segura",
"currentPassword": "Contraseña actual",
"newPassword": "Nueva contraseña",
"confirmPassword": "Confirmar nueva contraseña",
"passwordHint": "La contraseña debe tener al menos 12 caracteres",
"changePasswordBtn": "Cambiar contraseña",
"changingPassword": "Cambiando...",
"deleteAccount": "Eliminar cuenta",
"deleteDescription": "Eliminar permanentemente tu cuenta y todos los datos asociados",
"deleteWarning": "Esta acción no se puede deshacer. Todos tus datos serán eliminados permanentemente.",
"deleteWarningLong": "Esto eliminará permanentemente tu cuenta y todos los datos asociados. Esta acción no se puede deshacer.",
"deleteConfirm": "¿Estás absolutamente seguro?",
"enterPassword": "Ingresa tu contraseña",
"keepTracks": "Conservar mis pistas públicas (permanecerán pero serán desvinculadas de mi cuenta)",
"reason": "Motivo (opcional)",
"reasonPlaceholder": "¿Por qué eliminas tu cuenta?",
"typeDelete": "Escribe",
"toConfirm": "para confirmar",
"deleteBtn": "Eliminar cuenta",
"deleting": "Eliminando...",
"cancel": "Cancelar"
},
"privacy": {
"searchIndexing": "Permitir indexación por motores de búsqueda",
"searchIndexingDesc": "Permitir que los motores de búsqueda indexen tu perfil",
"showActivity": "Mostrar actividad",
"showActivityDesc": "Permitir que otros usuarios vean tu actividad"
},
"playback": {
"quality": "Calidad de audio",
"qualityHint": "Mayor calidad usa más ancho de banda",
"volume": "Volumen predeterminado",
"volumeHint": "Volumen predeterminado al iniciar la reproducción",
"crossfade": "Fundido cruzado",
"crossfadeHint": "Duración del fundido entre pistas (0-12 segundos)",
"autoplay": "Reproducción automática",
"autoplayHint": "Reproducir automáticamente la siguiente pista en la cola"
},
"preferences": {
"timezone": "Zona horaria"
},
"push": {
"title": "Notificaciones push del navegador",
"description": "Recibir notificaciones en el navegador (seguimiento, me gusta, etc.)",
"enable": "Activar notificaciones push",
"enabling": "Activando...",
"marketing": "Notificaciones de marketing (me gusta y comentarios)",
"marketingDesc": "Recibir notificaciones de me gusta y comentarios \u2014 desactivar con un clic",
"disableAllExcept": "Desactivar todo excepto mensajes y seguimientos",
"follow": "Push al seguir",
"followDesc": "Recibir una notificaci\u00f3n cuando alguien te sigue",
"like": "Push al dar me gusta",
"likeDesc": "Recibir una notificaci\u00f3n cuando alguien le da me gusta a tu contenido",
"comment": "Push al comentar",
"commentDesc": "Recibir una notificaci\u00f3n cuando alguien comenta",
"message": "Push al recibir mensaje",
"messageDesc": "Recibir una notificaci\u00f3n cuando recibes un mensaje",
"mention": "Push al mencionar",
"mentionDesc": "Recibir una notificaci\u00f3n cuando alguien te menciona",
"dnd": "No molestar",
"dndDesc": "Sin notificaciones push ni en tiempo real durante este per\u00edodo",
"enableDnd": "Activar horas tranquilas",
"startTime": "Inicio (ej: 22:00)",
"endTime": "Fin (ej: 08:00)",
"digest": "Resumen semanal",
"digestDesc": "Recibir cada domingo un resumen de los nuevos lanzamientos de los artistas que sigues",
"enableDigest": "Activar resumen semanal"
},
"save": "Guardar cambios",
"saving": "Guardando..."
},
"errors": {
"404": {
"title": "Página no encontrada",
"message": "La página que buscas no existe.",
"backHome": "Volver al inicio"
},
"500": {
"title": "Error del servidor",
"message": "Ocurrió un error interno. Inténtalo de nuevo más tarde.",
"retry": "Reintentar"
},
"network": {
"title": "Error de conexión",
"message": "No se pudo conectar al servidor. Verifica tu conexión a internet.",
"retry": "Reintentar"
},
"unauthorized": {
"title": "Acceso no autorizado",
"message": "No tienes permisos para acceder a este recurso.",
"login": "Iniciar sesión"
}
},
"navigation": {
"dashboard": "Panel de control",
"chat": "Chat",
"library": "Biblioteca",
"profile": "Perfil",
"settings": "Configuración",
"menu": "Menú",
"close": "Cerrar"
},
"validation": {
"required": "Este campo es obligatorio",
"email": "Ingresa una dirección de correo válida",
"minLength": "Este campo debe tener al menos {{min}} caracteres",
"maxLength": "Este campo no puede exceder {{max}} caracteres",
"passwordMatch": "Las contraseñas no coinciden",
"fileSize": "El archivo no puede exceder {{max}}MB",
"fileType": "Tipo de archivo no soportado"
},
"pwa": {
"install": {
"title": "Instalar Veza",
"description": "Accede rápidamente a Veza desde tu pantalla de inicio",
"button": "Instalar",
"installing": "Instalando...",
"later": "Más tarde",
"success": "¡Aplicación instalada correctamente!",
"error": "Error de instalación"
},
"update": {
"title": "Actualización disponible",
"description": "Una nueva versión de Veza está disponible",
"button": "Actualizar",
"updating": "Actualizando...",
"later": "Más tarde",
"success": "¡Aplicación actualizada!",
"error": "Error de actualización"
},
"offline": {
"title": "Modo sin conexión",
"description": "Estás sin conexión. Algunas funciones pueden estar limitadas.",
"retry": "Reintentar"
},
"notifications": {
"permission": {
"title": "Notificaciones",
"description": "Permite las notificaciones para recibir actualizaciones importantes",
"allow": "Permitir",
"deny": "Denegar"
}
}
},
"tracks": {
"title": "Pistas",
"upload": "Subir pista",
"play": "Reproducir",
"pause": "Pausa",
"like": "Me gusta",
"unlike": "Ya no me gusta",
"addToFavorites": "Añadir a favoritos",
"removeFromFavorites": "Quitar de favoritos",
"share": "Compartir",
"download": "Descargar",
"comments": "Comentarios",
"addComment": "Añadir un comentario",
"editComment": "Editar comentario",
"deleteComment": "Eliminar comentario",
"reply": "Responder",
"noTracks": "No hay pistas disponibles",
"noResults": "No se encontraron resultados",
"loading": "Cargando pistas...",
"duration": "Duración",
"artist": "Artista",
"album": "Álbum",
"genre": "Género",
"year": "Año",
"plays": "Reproducciones",
"likes": "Me gusta",
"grid": {
"label": "Cuadrícula de pistas",
"track": "Pista: {{title}}",
"play": "Reproducir {{title}}",
"pause": "Pausar {{title}}",
"coverAlt": "Portada de {{title}}",
"moreOptions": "Más opciones para {{title}}",
"nowPlaying": "Reproduciendo",
"densityCompact": "Compacto",
"densityDefault": "Estándar",
"densityLarge": "Grande"
},
"detail": {
"back": "Volver",
"addToQueue": "Añadir a la cola",
"addedToQueue": "Añadido a la cola",
"listenTogether": "Escuchar juntos",
"edit": "Editar",
"startListening": "Empezar a escuchar",
"close": "Cerrar",
"listenTogetherHelp": "Comparte este enlace con amigos para escuchar juntos. La reproducción estará sincronizada.",
"shareLink": "Enlace para compartir",
"couldNotCreateSession": "No se pudo crear la sesión de escucha",
"linkCopied": "Enlace copiado al portapapeles",
"linkCopyFailed": "Error al copiar el enlace",
"playsLabel": "Reproducciones",
"likesLabel": "Me gusta",
"format": "Formato",
"bitrate": "Tasa de bits",
"sampleRate": "Frecuencia de muestreo",
"bpm": "BPM",
"key": "Tonalidad",
"tags": "Etiquetas",
"uploaded": "Subido",
"discussion": "Discusión",
"analytics": "Estadísticas",
"history": "Historial",
"lyrics": "Letras",
"stems": "Stems",
"performanceData": "Datos de rendimiento",
"versionHistory": "Historial de versiones",
"notFound": "Pista no encontrada",
"failedToLoad": "Error al cargar la pista",
"goBack": "Volver"
},
"commentSection": {
"title": "Comentarios",
"titleWithCount": "Comentarios ({{count}})",
"placeholder": "Escribe un comentario...",
"empty": "Aún no hay comentarios. ¡Sé el primero en comentar!",
"publishError": "Error al publicar el comentario",
"publishSuccess": "Comentario publicado",
"loginToComment": "Inicia sesión para comentar",
"loadError": "Error al cargar los comentarios"
},
"repost": {
"reposted": "Pista añadida a tu perfil",
"repostFailed": "Error al repostear",
"unreposted": "Repost eliminado",
"unrepostFailed": "Error al eliminar el repost",
"repostAction": "Repostear en tu perfil",
"unrepostAction": "Eliminar repost"
},
"likeAction": {
"added": "Añadido a favoritos",
"addFailed": "Error al añadir a favoritos",
"removed": "Eliminado de favoritos",
"removeFailed": "Error al eliminar de favoritos"
},
"shareDialog": {
"title": "Compartir pista",
"creatingLink": "Creando enlace para compartir...",
"shareLink": "Enlace para compartir",
"expiresIn": "Este enlace expira en 7 día(s)",
"close": "Cerrar",
"copyLink": "Copiar enlace",
"createFailed": "Error al crear el enlace para compartir",
"linkCopied": "Enlace copiado al portapapeles",
"linkCopyFailed": "Error al copiar el enlace"
},
"lyricsSection": {
"title": "Letras",
"loadError": "No se pudieron cargar las letras.",
"empty": "No hay letras disponibles para esta pista.",
"showLess": "Ver menos",
"showMore": "Ver más"
},
"stemsSection": {
"title": "Stems",
"upload": "Subir",
"loading": "Cargando stems...",
"loadError": "Error al cargar los stems.",
"empty": "No hay stems disponibles.",
"uploadHelp": "Sube stems (WAV, AIFF, FLAC) para compartir con colaboradores."
},
"stats": {
"scanning": "ANALIZANDO...",
"telemetryError": "Telemetría interrumpida",
"views": "Vistas",
"likes": "Me gusta",
"comments": "Com.",
"downloads": "Datos",
"playTime": "Duración"
}
},
"discover": {
"title": "Descubrir",
"subtitle": "Explora por género, etiqueta o playlist editorial",
"byGenre": "Por género",
"editorialPlaylists": "Playlists editoriales",
"noEditorialPlaylists": "No hay playlists editoriales disponibles por el momento",
"back": "Volver",
"noTracksInGenre": "No hay pistas en este género",
"browseGenre": "Explorar pistas de {{genre}}",
"trackCount": "{{count}} pistas"
},
"playlists": {
"title": "Playlists",
"pageTitle": "Playlists — Veza",
"subtitle": "Descubre y gestiona tus playlists",
"create": "Crear playlist",
"createButton": "Crear",
"createButtonMobile": "Nueva",
"createNewPlaylist": "Crear una nueva playlist",
"importButton": "Importar",
"selectButton": "Seleccionar",
"deselectButton": "Cancelar",
"enableSelection": "Activar selección",
"disableSelection": "Desactivar selección",
"searchPlaceholder": "Buscar playlists...",
"filtersButton": "Filtros",
"filtersActive": "Activo",
"clearFilters": "Borrar",
"filterVisibility": "Visibilidad",
"filterOwner": "Propietario",
"filterSortBy": "Ordenar por",
"sortToggle": "Cambiar orden",
"all": "Todo",
"myPlaylists": "Mis playlists",
"others": "Otros",
"sortByDate": "Fecha",
"sortByTitle": "Título",
"sortByTracks": "Pistas",
"edit": "Editar playlist",
"delete": "Eliminar playlist",
"follow": "Seguir",
"unfollow": "Dejar de seguir",
"following": "Siguiendo",
"followers": "Seguidores",
"share": "Compartir",
"addTrack": "Añadir pista",
"removeTrack": "Quitar pista",
"collaborators": "Colaboradores",
"addCollaborator": "Añadir colaborador",
"removeCollaborator": "Quitar colaborador",
"noPlaylists": "No hay playlists disponibles",
"emptyTitle": "Aún no hay playlists",
"emptyDescription": "Comienza creando tu primera playlist para organizar tus pistas.",
"loading": "Cargando playlists...",
"tracks": "Pistas",
"trackListLabel": "Pistas de la playlist",
"trackItem": "Pista {{position}}: {{title}}",
"public": "Pública",
"private": "Privada",
"createDialog": {
"title": "Crear una playlist",
"titleLabel": "Título",
"titlePlaceholder": "Mi nueva playlist",
"titleRequired": "El título es obligatorio",
"descriptionLabel": "Descripción",
"descriptionPlaceholder": "Describe tu playlist...",
"publicPlaylist": "Playlist pública",
"cancel": "Cancelar creación de playlist",
"cancelButton": "Cancelar",
"submit": "Crear la playlist",
"submitButton": "Crear"
},
"shared": {
"playAll": "Reproducir todo",
"shuffle": "Aleatorio",
"copyLink": "Copiar enlace",
"linkCopied": "Enlace copiado al portapapeles",
"sharedPlaylist": "Playlist compartida",
"trackCount": "{{count}} pista",
"trackCount_other": "{{count}} pistas",
"notFound": "Playlist no encontrada",
"backToLibrary": "Volver a la biblioteca",
"noTracks": "No hay pistas en esta playlist",
"noTracksDescription": "Esta playlist compartida está vacía.",
"publicSignal": "Pública",
"encrypted": "Privada",
"updated": "Actualizada el {{date}}",
"followers": "{{count}} seguidores"
},
"detail": {
"reorder": "Reordenar",
"playTrack": "Reproducir {{title}}",
"pauseTrack": "Pausar {{title}}",
"coverAlt": "Portada de {{title}}",
"addToFavorites": "Añadir {{title}} a Favoritos",
"filterTracks": "Filtrar pistas...",
"addTracks": "Añadir pistas",
"squadMembers": "Miembros del grupo",
"invite": "Invitar",
"suggestedForYou": "Sugerencias para ti",
"recommendations": "Recomendaciones",
"trackAdded": "Pista añadida",
"trackRemoved": "Pista eliminada",
"reordered": "Reordenado",
"playlistReordered": "Playlist reordenada",
"reorderError": "No se pudo reordenar la playlist. Inténtalo de nuevo.",
"emptyTracks": "No hay pistas en esta playlist",
"emptyTracksDescription": "Añade pistas a esta playlist para comenzar.",
"loadingTracks": "Cargando pistas",
"loadingTracksProgress": "Cargando pistas..."
},
"actions": {
"groupLabel": "Acciones de la playlist",
"edit": "Editar",
"editPlaylist": "Editar playlist",
"saving": "Guardando...",
"saved": "Guardado",
"share": "Compartir",
"sharePlaylist": "Compartir playlist",
"delete": "Eliminar",
"deletePlaylist": "Eliminar playlist",
"deleteTitle": "Eliminar playlist",
"deleteConfirmation": "¿Estás seguro de que quieres eliminar \"{{title}}\"? Esta acción es irreversible. Todas las pistas de la playlist se eliminarán.",
"deleteConfirm": "Eliminar",
"deleteCancel": "Cancelar",
"updateSuccess": "Playlist actualizada con éxito",
"updateError": "Error al actualizar la playlist",
"deleteSuccess": "Playlist eliminada con éxito",
"deleteError": "Error al eliminar la playlist"
},
"editDialog": {
"title": "Editar playlist",
"save": "Guardar",
"saving": "Guardando...",
"cancel": "Cancelar",
"titleLabel": "Título",
"titlePlaceholder": "Título de la playlist",
"descriptionLabel": "Descripción",
"descriptionPlaceholder": "Descripción de la playlist",
"coverUrlLabel": "URL de la portada",
"isPublic": "Playlist pública",
"savingInProgress": "Guardando..."
},
"form": {
"editAriaLabel": "Formulario de edición de playlist",
"createAriaLabel": "Formulario de creación de playlist",
"titleLabel": "Título",
"titlePlaceholder": "Mi playlist",
"titleRequired": "El título es obligatorio",
"titleMaxLength": "El título no puede superar los 200 caracteres",
"descriptionLabel": "Descripción",
"descriptionPlaceholder": "Describe tu playlist...",
"descriptionMaxLength": "La descripción no puede superar los 2000 caracteres",
"coverUrlLabel": "URL de la portada",
"coverUrlMaxLength": "La URL no puede superar los 500 caracteres",
"coverUrlInvalid": "La URL de la portada debe ser válida",
"isPublic": "Playlist pública",
"cancel": "Cancelar",
"cancelEdit": "Cancelar edición",
"save": "Guardar",
"create": "Crear",
"saveChanges": "Guardar cambios",
"createPlaylist": "Crear playlist",
"updateSuccess": "Playlist actualizada con éxito",
"createSuccess": "Playlist creada con éxito",
"genericError": "Se produjo un error"
},
"duplicate": {
"button": "Duplicar",
"duplicating": "Duplicando...",
"ariaLabel": "Duplicar playlist",
"copySuffix": "{{title}} (copia)",
"success": "Playlist duplicada con éxito",
"error": "Error al duplicar la playlist"
},
"export": {
"button": "Exportar",
"exporting": "Exportando...",
"json": "Exportar como JSON",
"csv": "Exportar como CSV",
"m3u": "Exportar como M3U",
"success": "Playlist exportada en formato {{format}}",
"authRequired": "Debes iniciar sesión para exportar una playlist",
"forbidden": "No tienes permiso para exportar esta playlist",
"notFound": "Playlist no encontrada",
"error": "Error durante la exportación",
"genericError": "Se produjo un error durante la exportación"
},
"followBtn": {
"follow": "Seguir",
"following": "Siguiendo",
"unfollowing": "Dejando de seguir...",
"subscribing": "Siguiendo...",
"followSuccess": "Ahora sigues esta playlist",
"followError": "Error al seguir la playlist",
"unfollowSuccess": "Ya no sigues esta playlist",
"unfollowError": "Error al dejar de seguir la playlist"
}
},
"queue": {
"pageTitle": "Cola de reproducción — Veza",
"heading": "COLA DE REPRODUCCIÓN",
"tracksUpcoming_one": "{{count}} pista siguiente",
"tracksUpcoming_other": "{{count}} pistas siguientes",
"nowPlaying": "Reproduciendo ahora",
"upNext": "A continuación",
"emptyTitle": "Nada en tu cola",
"emptyDescription": "Reproduce música y añade pistas para llenar tu cola.",
"saveQueue": "Guardar cola",
"clear": "Vaciar",
"clearTitle": "Vaciar la cola",
"clearDescription": "Eliminar todas las pistas de tu cola. Esta acción no se puede deshacer.",
"clearConfirm": "Vaciar",
"removeFromQueue": "Quitar de la cola",
"reorderTrack": "Reordenar {{title}}",
"playTrack": "Reproducir {{title}}",
"pauseTrack": "Pausar {{title}}",
"emptyQueueError": "La cola está vacía",
"savedAs": "Cola guardada como \"{{name}}\"",
"saveAsPlaylist": {
"title": "Guardar cola como playlist",
"nameLabel": "Nombre de la playlist",
"namePlaceholder": "Mi sesión de cola",
"privatePlaylist": "Playlist privada",
"publicPlaylist": "Playlist pública",
"privateDescription": "Solo visible para ti",
"publicDescription": "Visible en tu perfil",
"toggleVisibility": "Cambiar visibilidad de la playlist",
"cancel": "Cancelar",
"save": "Guardar playlist",
"nameRequired": "Por favor, nombra tu playlist",
"saveFailed": "Error al guardar la playlist"
}
},
"notifications": {
"title": "Notificaciones",
"markAsRead": "Marcar como leída",
"markAllAsRead": "Marcar todo como leído",
"clearAll": "Borrar todo",
"noNotifications": "Sin notificaciones",
"viewAll": "Ver todas las notificaciones",
"newMessage": "Nuevo mensaje",
"trackUploaded": "Pista subida",
"userMentioned": "Te han mencionado",
"system": "Notificación del sistema",
"friendRequest": "Solicitud de amistad",
"conversationInvite": "Invitación a conversación"
},
"search": {
"title": "Búsqueda",
"pageTitle": "Búsqueda — Veza",
"heading": "Búsqueda",
"placeholder": "Buscar pistas, playlists, usuarios...",
"searchPlaceholder": "Buscar pistas, artistas, playlists...",
"clearSearch": "Borrar búsqueda",
"results": "Resultados",
"resultsCount_one": "{{count}} resultado encontrado",
"resultsCount_other": "{{count}} resultados encontrados",
"allResults": "Todos los resultados",
"topTracks": "Mejores pistas",
"tracks": "Pistas",
"artists": "Artistas",
"playlists": "Playlists",
"users": "Usuarios",
"all": "Todo",
"noResults": "No se encontraron resultados",
"noResultsHint": "Intenta ajustar tu búsqueda o usa palabras clave diferentes.",
"noDescription": "Sin descripción",
"recentSearches": "Búsquedas recientes",
"clearHistory": "Borrar historial de búsqueda",
"helpText": "Usa AND, OR, NOT y \"frase exacta\" para refinar tu búsqueda.",
"discovery": {
"newReleases": "Novedades",
"newReleasesDesc": "Últimas pistas de tus artistas",
"curatedMixes": "Selecciones",
"curatedMixesDesc": "Selecciones hechas a mano para ti",
"exploreArtists": "Explorar artistas",
"exploreArtistsDesc": "Descubre artistas de la comunidad"
}
},
"analytics": {
"title": "Analíticas",
"period": "Período",
"last7Days": "Últimos 7 días",
"last30Days": "Últimos 30 días",
"last90Days": "Últimos 90 días",
"lastYear": "Último año",
"topTracks": "Pistas populares",
"topPlaylists": "Playlists populares",
"totalPlays": "Total de reproducciones",
"totalLikes": "Total de me gusta",
"totalDownloads": "Total de descargas"
},
"webhooks": {
"title": "Webhooks",
"create": "Crear webhook",
"edit": "Editar webhook",
"delete": "Eliminar webhook",
"test": "Probar webhook",
"regenerateKey": "Regenerar clave API",
"url": "URL",
"events": "Eventos",
"status": "Estado",
"active": "Activo",
"inactive": "Inactivo",
"noWebhooks": "Ningún webhook configurado"
},
"admin": {
"title": "Panel de administración",
"users": "Usuarios",
"systemStats": "Estadísticas del sistema",
"auditLogs": "Registros de auditoría",
"suspiciousActivity": "Actividad sospechosa"
},
"keyboard": {
"shortcuts": {
"title": "Atajos de teclado",
"search": "Enfocar búsqueda o navegar a la página de búsqueda",
"newMessage": "Abrir nuevo chat/mensaje",
"playPause": "Reproducir o pausar la pista actual",
"nextTrack": "Reproducir siguiente pista",
"previousTrack": "Reproducir pista anterior",
"volumeUp": "Subir volumen",
"volumeDown": "Bajar volumen",
"mute": "Activar/desactivar silencio",
"toggleSidebar": "Mostrar/ocultar barra lateral",
"escape": "Cerrar ventanas o volver",
"help": "Mostrar esta ventana de ayuda"
}
},
"header": {
"searchPlaceholder": "¿Qué quieres escuchar?",
"searchAriaLabel": "Buscar pistas, artistas, playlists",
"online": "En línea",
"profile": "Perfil",
"signOut": "Cerrar sesión"
},
"nav": {
"sections": {
"home": "Inicio",
"create": "Crear",
"connect": "Conectar",
"library": "Biblioteca",
"more": "Más",
"tools": "Herramientas",
"system": "Sistema"
},
"items": {
"dashboard": "Panel",
"discover": "Descubrir",
"tracks": "Mis Tracks",
"gear": "Equipo",
"analytics": "Estadísticas",
"social": "Comunidad",
"feed": "Feed",
"marketplace": "Marketplace",
"live": "En vivo",
"chat": "Mensajes",
"sell": "Vender",
"wishlist": "Deseos",
"purchases": "Compras",
"playlists": "Playlists",
"favoris": "Favoritos",
"queue": "Cola",
"cloud": "Nube",
"subscription": "Suscripción",
"distribution": "Distribución",
"education": "Educación",
"support": "Ayuda",
"developer": "API de desarrollador",
"admin": "Admin"
},
"settings": "Configuración",
"logout": "Cerrar sesión",
"skipToContent": "Ir al contenido"
}
}