template_0205
This commit is contained in:
303
RN_TEMPLATE/app/i18n/es.ts
Normal file
303
RN_TEMPLATE/app/i18n/es.ts
Normal file
@@ -0,0 +1,303 @@
|
||||
import demoEs from "./demo-es"
|
||||
import { Translations } from "./en"
|
||||
|
||||
const es: Translations = {
|
||||
common: {
|
||||
ok: "OK",
|
||||
cancel: "Cancelar",
|
||||
save: "Guardar",
|
||||
back: "Volver",
|
||||
logOut: "Cerrar sesión",
|
||||
copied: "Copiado",
|
||||
},
|
||||
welcomeScreen: {
|
||||
postscript:
|
||||
"psst — Esto probablemente no es cómo se va a ver tu app. (A menos que tu diseñador te haya enviado estas pantallas, y en ese caso, ¡lánzalas en producción!)",
|
||||
readyForLaunch: "Tu app, casi lista para su lanzamiento",
|
||||
exciting: "(¡ohh, esto es emocionante!)",
|
||||
letsGo: "¡Vamos!",
|
||||
},
|
||||
errorScreen: {
|
||||
title: "¡Algo salió mal!",
|
||||
friendlySubtitle:
|
||||
"Esta es la pantalla que verán tus usuarios en producción cuando haya un error. Vas a querer personalizar este mensaje (que está ubicado en `app/i18n/es.ts`) y probablemente también su diseño (`app/screens/ErrorScreen`). Si quieres eliminarlo completamente, revisa `app/app.tsx` y el componente <ErrorBoundary>.",
|
||||
reset: "REINICIA LA APP",
|
||||
traceTitle: "Error desde %{name}",
|
||||
},
|
||||
emptyStateComponent: {
|
||||
generic: {
|
||||
heading: "Muy vacío... muy triste",
|
||||
content:
|
||||
"No se han encontrado datos por el momento. Intenta darle clic en el botón para refrescar o recargar la app.",
|
||||
button: "Intentemos de nuevo",
|
||||
},
|
||||
},
|
||||
|
||||
errors: {
|
||||
invalidEmail: "Email inválido.",
|
||||
},
|
||||
authErrors: {
|
||||
timeout: "Tiempo de espera agotado. Por favor, inténtelo de nuevo.",
|
||||
cannotConnect: "No se puede conectar al servidor. Por favor, verifique su red.",
|
||||
serverError: "Error del servidor. Por favor, inténtelo más tarde.",
|
||||
badData: "Respuesta inválida del servidor.",
|
||||
unknownError: "Se produjo un error desconocido.",
|
||||
E001: "El nombre de usuario ya existe.",
|
||||
E002: "El correo electrónico ya está registrado.",
|
||||
E003: "Código de referencia inválido.",
|
||||
E004: "No hay solicitud de registro pendiente.",
|
||||
E005: "Código de verificación inválido.",
|
||||
E006: "Código de referencia ya vinculado.",
|
||||
E007: "No puedes usar tu propio código de referencia.",
|
||||
E011: "Correo electrónico o contraseña inválidos.",
|
||||
E012: "Cuenta bloqueada temporalmente. Por favor, inténtelo más tarde.",
|
||||
E013: "No hay solicitud de inicio de sesión pendiente.",
|
||||
E014: "El usuario no existe o ha sido deshabilitado.",
|
||||
E015: "Código de verificación inválido.",
|
||||
E016: "Autenticación de Telegram inválida.",
|
||||
E017: "Formato de datos de Telegram inválido.",
|
||||
E018: "Autenticación de Google fallida.",
|
||||
E019: "Por favor, proporcione el token de Google.",
|
||||
E021: "La contraseña actual es incorrecta.",
|
||||
E022: "La nueva contraseña no puede ser igual a la actual.",
|
||||
E023: "El correo electrónico no está registrado.",
|
||||
E024: "La cuenta ha sido deshabilitada.",
|
||||
E025: "No hay solicitud de restablecimiento de contraseña pendiente.",
|
||||
E026: "El código de restablecimiento de contraseña ha expirado.",
|
||||
E027: "Código de restablecimiento de contraseña inválido.",
|
||||
E028: "El usuario no existe.",
|
||||
E029: "No se proporcionaron campos para actualizar.",
|
||||
E041: "Enviando código de verificación con demasiada frecuencia. Por favor, espere.",
|
||||
E042: "El código de verificación de correo electrónico ha expirado.",
|
||||
E043: "Código de verificación de correo electrónico inválido.",
|
||||
E044: "El correo electrónico ya está verificado.",
|
||||
E045: "El correo electrónico ya está siendo utilizado por otro usuario.",
|
||||
E046: "No hay dirección de correo electrónico verificada.",
|
||||
E047: "Por favor, envíe primero el código de verificación al correo actual.",
|
||||
E048: "Por favor, verifique primero el correo electrónico actual.",
|
||||
E049: "Por favor, envíe primero el código de verificación al nuevo correo.",
|
||||
E050: "Parámetro de acción inválido.",
|
||||
},
|
||||
loginScreen: {
|
||||
logIn: "Iniciar sesión",
|
||||
enterDetails:
|
||||
"Ingresa tus datos a continuación para desbloquear información ultra secreta. Nunca vas a adivinar lo que te espera al otro lado. O quizás si lo harás; la verdad no hay mucha ciencia alrededor.",
|
||||
emailFieldLabel: "Email",
|
||||
passwordFieldLabel: "Contraseña",
|
||||
emailFieldPlaceholder: "Ingresa tu email",
|
||||
passwordFieldPlaceholder: "Contraseña super secreta aquí",
|
||||
tapToLogIn: "¡Presiona acá para iniciar sesión!",
|
||||
hint: "Consejo: puedes usar cualquier email y tu contraseña preferida :)",
|
||||
},
|
||||
navigator: {
|
||||
componentsTab: "Componentes",
|
||||
debugTab: "Debug",
|
||||
communityTab: "Comunidad",
|
||||
podcastListTab: "Podcasts",
|
||||
profileTab: "Perfil",
|
||||
},
|
||||
profileScreen: {
|
||||
title: "Perfil",
|
||||
guest: "Invitado",
|
||||
uid: "UID",
|
||||
username: "Nombre de usuario",
|
||||
referralCode: "Código de referencia",
|
||||
settings: "Configuración",
|
||||
darkMode: "Modo oscuro",
|
||||
notifications: "Notificaciones",
|
||||
security: "Seguridad",
|
||||
account: "Cuenta",
|
||||
accountStatus: "Estado de la cuenta",
|
||||
active: "Activo",
|
||||
inactive: "Inactivo",
|
||||
regular: "Regular",
|
||||
emailVerified: "Email verificado",
|
||||
verified: "Verificado",
|
||||
unverified: "No verificado",
|
||||
loginMethods: "Métodos de inicio de sesión",
|
||||
version: "Versión",
|
||||
changePassword: "Cambiar contraseña",
|
||||
changeEmail: "Cambiar email",
|
||||
editNickname: "Editar apodo",
|
||||
editProfile: "Editar perfil",
|
||||
nicknamePlaceholder: "Introduce tu apodo",
|
||||
nickname: "Apodo",
|
||||
tapToChangeAvatar: "Toca para cambiar avatar",
|
||||
about: "Acerca de",
|
||||
},
|
||||
changePasswordScreen: {
|
||||
title: "Cambiar contraseña",
|
||||
description: "Introduce tu contraseña actual y elige una nueva.",
|
||||
oldPassword: "Contraseña actual",
|
||||
newPassword: "Nueva contraseña",
|
||||
confirmPassword: "Confirmar nueva contraseña",
|
||||
logoutOtherDevices: "Cerrar sesión en otros dispositivos",
|
||||
submit: "Cambiar contraseña",
|
||||
success: "Éxito",
|
||||
successMessage: "Tu contraseña ha sido cambiada exitosamente.",
|
||||
oldPasswordRequired: "La contraseña actual es requerida.",
|
||||
newPasswordRequired: "La nueva contraseña es requerida.",
|
||||
passwordTooShort: "La contraseña debe tener al menos 6 caracteres.",
|
||||
passwordMismatch: "Las contraseñas no coinciden.",
|
||||
samePassword: "La nueva contraseña no puede ser igual a la actual.",
|
||||
},
|
||||
changeEmailScreen: {
|
||||
title: "Cambiar email",
|
||||
step1Label: "Verificar",
|
||||
step2Label: "Vincular",
|
||||
step1Title: "Paso 1: Verificar email actual",
|
||||
step1Description: "Enviaremos un código de verificación a tu email actual.",
|
||||
step2Title: "Paso 2: Vincular nuevo email",
|
||||
step2Description: "Introduce tu nueva dirección de email y verifícala.",
|
||||
currentEmail: "Email actual",
|
||||
newEmail: "Nueva dirección de email",
|
||||
verificationCode: "Código de verificación",
|
||||
sendCode: "Enviar código de verificación",
|
||||
sendCodeToNewEmail: "Enviar código al nuevo email",
|
||||
verify: "Verificar",
|
||||
confirmNewEmail: "Confirmar nuevo email",
|
||||
resendCode: "Reenviar código",
|
||||
success: "Éxito",
|
||||
successMessage: "Tu email ha sido cambiado exitosamente.",
|
||||
codeRequired: "El código de verificación es requerido.",
|
||||
codeInvalid: "El código de verificación debe tener 6 dígitos.",
|
||||
newEmailRequired: "La nueva dirección de email es requerida.",
|
||||
emailInvalid: "Por favor introduce una dirección de email válida.",
|
||||
sameEmail: "El nuevo email no puede ser igual al actual.",
|
||||
},
|
||||
settingsScreen: {
|
||||
title: "Configuración",
|
||||
appearance: "Apariencia",
|
||||
theme: "Tema",
|
||||
darkMode: "Modo Oscuro",
|
||||
language: "Idioma",
|
||||
currentLanguage: "Idioma",
|
||||
},
|
||||
languageScreen: {
|
||||
title: "Idioma",
|
||||
selectHint: "Selecciona tu idioma preferido",
|
||||
},
|
||||
themeScreen: {
|
||||
title: "Tema",
|
||||
selectHint: "Selecciona tu tema preferido",
|
||||
system: "Sistema",
|
||||
light: "Claro",
|
||||
dark: "Oscuro",
|
||||
},
|
||||
securityScreen: {
|
||||
title: "Seguridad",
|
||||
description: "Administra la configuración de seguridad de tu cuenta.",
|
||||
changePassword: "Cambiar Contraseña",
|
||||
changeEmail: "Cambiar Email",
|
||||
// Session management
|
||||
activeSessions: "Active Sessions",
|
||||
activeSessionsDescription: "Devices currently logged into your account",
|
||||
currentDevice: "Current Device",
|
||||
lastActive: "Last active",
|
||||
loginMethod: "Login via",
|
||||
logoutDevice: "Logout",
|
||||
logoutAllOther: "Logout All Other Devices",
|
||||
logoutAllOtherDescription: "This will log out all devices except the current one.",
|
||||
noOtherSessions: "No other active sessions",
|
||||
sessionRevoked: "Device has been logged out",
|
||||
sessionsRevoked: "{{count}} devices have been logged out",
|
||||
confirmLogout: "Confirm Logout",
|
||||
confirmLogoutMessage: "Are you sure you want to log out this device?",
|
||||
confirmLogoutAllMessage: "Are you sure you want to log out all other devices?",
|
||||
deviceTypes: {
|
||||
desktop: "Desktop",
|
||||
mobile: "Mobile",
|
||||
tablet: "Tablet",
|
||||
unknown: "Unknown Device",
|
||||
},
|
||||
},
|
||||
aboutScreen: {
|
||||
title: "Acerca de",
|
||||
appInfo: "Información de la App",
|
||||
appName: "Nombre de la App",
|
||||
version: "Versión",
|
||||
buildVersion: "Versión de Compilación",
|
||||
appId: "ID de la App",
|
||||
appVersion: "Versión de la App",
|
||||
legal: "Legal",
|
||||
privacyPolicy: "Política de Privacidad",
|
||||
termsOfService: "Términos de Servicio",
|
||||
},
|
||||
communityScreen: {
|
||||
title: "Conecta con la comunidad",
|
||||
tagLine:
|
||||
"Únete a la comunidad React Native con los ingenieros de Infinite Red y mejora con nosotros tus habilidades para el desarrollo de apps.",
|
||||
joinUsOnSlackTitle: "Únete a nosotros en Slack",
|
||||
joinUsOnSlack:
|
||||
"¿Quieres conectar con desarrolladores de React Native de todo el mundo? Únete a la conversación en nuestra comunidad de Slack. Nuestra comunidad, que crece día a día, es un espacio seguro para hacer preguntas, aprender de los demás y ampliar tu red.",
|
||||
joinSlackLink: "Únete a la comunidad de Slack",
|
||||
makeIgniteEvenBetterTitle: "Haz que Ignite sea aún mejor",
|
||||
makeIgniteEvenBetter:
|
||||
"¿Tienes una idea para hacer que Ignite sea aún mejor? ¡Nos encantaría escucharla! Estamos siempre buscando personas que quieran ayudarnos a construir las mejores herramientas para React Native. Únete a nosotros en GitHub para ayudarnos a construir el futuro de Ignite.",
|
||||
contributeToIgniteLink: "Contribuir a Ignite",
|
||||
theLatestInReactNativeTitle: "Lo último en el mundo de React Native",
|
||||
theLatestInReactNative:
|
||||
"Estamos aquí para mantenerte al día con todo lo que React Native tiene para ofrecer.",
|
||||
reactNativeRadioLink: "React Native Radio",
|
||||
reactNativeNewsletterLink: "Newsletter de React Native",
|
||||
reactNativeLiveLink: "React Native Live",
|
||||
chainReactConferenceLink: "Conferencia Chain React",
|
||||
hireUsTitle: "Trabaja con Infinite Red en tu próximo proyecto",
|
||||
hireUs:
|
||||
"Ya sea para gestionar un proyecto de inicio a fin o educación a equipos a través de nuestros cursos y capacitación práctica, Infinite Red puede ayudarte en casi cualquier proyecto de React Native.",
|
||||
hireUsLink: "Envíanos un mensaje",
|
||||
},
|
||||
showroomScreen: {
|
||||
jumpStart: "Componentes para comenzar tu proyecto",
|
||||
lorem2Sentences:
|
||||
"Nulla cupidatat deserunt amet quis aliquip nostrud do adipisicing. Adipisicing excepteur elit laborum Lorem adipisicing do duis.",
|
||||
demoHeaderTxExample: "Yay",
|
||||
demoViaTxProp: "A través de el atributo `tx`",
|
||||
demoViaSpecifiedTxProp: "A través de el atributo específico `{{prop}}Tx`",
|
||||
},
|
||||
demoDebugScreen: {
|
||||
howTo: "CÓMO HACERLO",
|
||||
title: "Debug",
|
||||
tagLine:
|
||||
"Felicidades, aquí tienes una propuesta de arquitectura y base de código avanzada para una app en React Native. ¡Disfrutalos!",
|
||||
reactotron: "Enviar a Reactotron",
|
||||
reportBugs: "Reportar errores",
|
||||
demoList: "Lista demo",
|
||||
demoPodcastList: "Lista demo de podcasts",
|
||||
androidReactotronHint:
|
||||
"Si esto no funciona, asegúrate de que la app de escritorio de Reactotron se esté ejecutando, corre adb reverse tcp:9090 tcp:9090 desde tu terminal, y luego recarga la app.",
|
||||
iosReactotronHint:
|
||||
"Si esto no funciona, asegúrate de que la app de escritorio de Reactotron se esté ejecutando, y luego recarga la app.",
|
||||
macosReactotronHint:
|
||||
"Si esto no funciona, asegúrate de que la app de escritorio de Reactotron se esté ejecutando, y luego recarga la app.",
|
||||
webReactotronHint:
|
||||
"Si esto no funciona, asegúrate de que la app de escritorio de Reactotron se esté ejecutando, y luego recarga la app.",
|
||||
windowsReactotronHint:
|
||||
"Si esto no funciona, asegúrate de que la app de escritorio de Reactotron se esté ejecutando, y luego recarga la app.",
|
||||
},
|
||||
demoPodcastListScreen: {
|
||||
title: "Episodios de React Native Radio",
|
||||
onlyFavorites: "Mostrar solo favoritos",
|
||||
favoriteButton: "Favorito",
|
||||
unfavoriteButton: "No favorito",
|
||||
accessibility: {
|
||||
cardHint:
|
||||
"Haz doble clic para escuchar el episodio. Haz doble clic y mantén presionado para {{action}} este episodio.",
|
||||
switch: "Activa para mostrar solo favoritos",
|
||||
favoriteAction: "Cambiar a favorito",
|
||||
favoriteIcon: "Episodio no favorito",
|
||||
unfavoriteIcon: "Episodio favorito",
|
||||
publishLabel: "Publicado el {{date}}",
|
||||
durationLabel: "Duración: {{hours}} horas {{minutes}} minutos {{seconds}} segundos",
|
||||
},
|
||||
noFavoritesEmptyState: {
|
||||
heading: "Esto está un poco vacío",
|
||||
content:
|
||||
"No se han agregado episodios favoritos todavía. ¡Presiona el corazón dentro de un episodio para agregarlo a tus favoritos!",
|
||||
},
|
||||
},
|
||||
|
||||
...demoEs,
|
||||
}
|
||||
|
||||
export default es
|
||||
Reference in New Issue
Block a user