Files
donutbrowser/src/i18n/locales/es.json
T
2026-05-10 04:45:46 +04:00

1665 lines
78 KiB
JSON

{
"common": {
"buttons": {
"save": "Guardar",
"cancel": "Cancelar",
"close": "Cerrar",
"delete": "Eliminar",
"create": "Crear",
"back": "Atrás",
"retry": "Reintentar",
"download": "Descargar",
"confirm": "Confirmar",
"apply": "Aplicar",
"reset": "Restablecer",
"add": "Agregar",
"edit": "Editar",
"copy": "Copiar",
"clear": "Limpiar",
"search": "Buscar",
"select": "Seleccionar",
"grant": "Otorgar",
"start": "Iniciar",
"stop": "Detener",
"enable": "Habilitar",
"disable": "Deshabilitar",
"import": "Importar",
"export": "Exportar",
"refresh": "Actualizar",
"loading": "Cargando...",
"saveSettings": "Guardar Configuración",
"moreInfo": "Más información",
"downloading": "Descargando...",
"minimize": "Minimizar"
},
"status": {
"active": "Activo",
"inactive": "Inactivo",
"running": "Ejecutando",
"stopped": "Detenido",
"enabled": "Habilitado",
"disabled": "Deshabilitado",
"granted": "Otorgado",
"notGranted": "No Otorgado",
"connected": "Conectado",
"disconnected": "Desconectado",
"synced": "Sincronizado",
"syncing": "Sincronizando",
"pending": "Pendiente",
"error": "Error"
},
"labels": {
"name": "Nombre",
"type": "Tipo",
"status": "Estado",
"actions": "Acciones",
"description": "Descripción",
"none": "Ninguno",
"default": "Predeterminado",
"custom": "Personalizado",
"optional": "Opcional",
"required": "Requerido",
"unknownProfile": "Desconocido",
"mode": "Modo",
"never": "Nunca"
},
"time": {
"days": "días",
"hours": "horas",
"minutes": "minutos",
"seconds": "segundos",
"remaining": "restantes"
},
"aria": {
"selectAll": "Seleccionar todo",
"selectRow": "Seleccionar fila",
"selectProfile": "Seleccionar perfil",
"copy": "Copiar al portapapeles",
"copied": "Copiado",
"showToken": "Mostrar token",
"hideToken": "Ocultar token"
},
"keys": {
"escape": "Escape"
},
"errors": {
"unknown": "Ocurrió un error desconocido"
},
"window": {
"minimize": "Minimizar"
},
"commandPalette": {
"title": "Paleta de comandos",
"description": "Busca un comando para ejecutar..."
},
"noResults": "No se encontraron resultados.",
"srOnly": {
"copy": "Copiar",
"copied": "Copiado"
}
},
"settings": {
"title": "Configuración",
"appearance": {
"title": "Apariencia",
"theme": "Tema",
"themeDescription": "Elige tu tema preferido o sigue la configuración del sistema. Los cambios de tema personalizado se aplican solo al guardar.",
"themePreset": "Tema Predefinido",
"customColors": "Colores Personalizados",
"selectTheme": "Seleccionar tema",
"selectThemePreset": "Seleccionar tema predefinido",
"yourOwn": "Tu Propio",
"light": "Claro",
"dark": "Oscuro",
"system": "Sistema"
},
"language": {
"title": "Idioma",
"description": "Elige tu idioma preferido para la interfaz de la aplicación.",
"systemDefault": "Predeterminado del Sistema",
"selectLanguage": "Seleccionar idioma",
"interface": "Idioma de la interfaz"
},
"defaultBrowser": {
"title": "Navegador Predeterminado",
"setAsDefault": "Establecer como Navegador Predeterminado",
"alreadyDefault": "Ya es el Navegador Predeterminado",
"description": "Cuando se establece como predeterminado, Donut Browser manejará los enlaces web y te permitirá elegir qué perfil usar."
},
"permissions": {
"title": "Permisos del Sistema",
"loading": "Cargando permisos...",
"description": "Estos permisos permiten que los navegadores iniciados desde Donut Browser accedan a los recursos del sistema. Cada sitio web seguirá pidiendo tu permiso individualmente.",
"microphone": "Micrófono",
"microphoneDescription": "Acceso al micrófono para aplicaciones del navegador",
"camera": "Cámara",
"cameraDescription": "Acceso a la cámara para aplicaciones del navegador",
"accessRequested": "Acceso a {{permission}} solicitado"
},
"integrations": {
"title": "Integraciones",
"description": "Configura la API Local y MCP (Protocolo de Contexto de Modelo) para integración con herramientas externas y asistentes de IA.",
"openSettings": "Abrir Configuración de Integraciones"
},
"encryption": {
"title": "Cifrado de sincronización",
"description": "Establece una contraseña para habilitar la sincronización cifrada E2E. Si pierdes esta contraseña, los perfiles cifrados no podrán recuperarse.",
"passwordSet": "Activo",
"passwordSetDescription": "La contraseña de cifrado E2E está configurada",
"noPassword": "Sin contraseña configurada",
"passwordPlaceholder": "Contraseña (mín. 8 caracteres)",
"confirmPlaceholder": "Confirmar contraseña",
"setPassword": "Establecer contraseña",
"changePassword": "Cambiar contraseña",
"removePassword": "Eliminar contraseña",
"removed": "Contraseña de cifrado eliminada",
"passwordSaved": "Contraseña de cifrado establecida",
"passwordMismatch": "Las contraseñas no coinciden",
"passwordTooShort": "La contraseña debe tener al menos 8 caracteres",
"requiresProOrOwner": "El cifrado de perfiles está disponible para usuarios Pro y propietarios de equipos."
},
"commercial": {
"title": "Licencia Comercial",
"trialActive": "Prueba: {{days}} días, {{hours}} horas restantes",
"trialActiveDescription": "El uso comercial es gratuito durante la prueba. Al finalizar, todas las funciones siguen funcionando — el uso personal sigue siendo gratuito, solo el uso comercial requerirá una licencia.",
"trialExpired": "Prueba expirada",
"trialExpiredDescription": "El uso personal sigue siendo gratuito. El uso comercial requiere una licencia."
},
"advanced": {
"title": "Avanzado",
"clearCache": "Limpiar Toda la Caché de Versiones",
"clearCacheDescription": "Limpia todos los datos de versiones de navegadores en caché y actualiza todas las versiones desde sus fuentes. Esto forzará una descarga nueva de información de versiones para todos los navegadores.",
"clearCacheFailed": "Error al limpiar la caché"
},
"disableAutoUpdates": "Desactivar Actualizaciones Automáticas de la App",
"disableAutoUpdatesDescription": "Evita que la aplicación busque e instale actualizaciones de Donut Browser automáticamente. Las actualizaciones de navegadores no se ven afectadas.",
"keepDecryptedProfilesInRam": "Mantener Perfiles Descifrados en RAM",
"keepDecryptedProfilesInRamDescription": "Conservar la copia descifrada en RAM de los perfiles protegidos por contraseña entre lanzamientos para un inicio más rápido. La copia en disco permanece cifrada en cualquier caso."
},
"header": {
"searchPlaceholder": "Buscar perfiles...",
"clearSearch": "Limpiar búsqueda",
"moreActions": "Más acciones",
"createProfile": "Crear un nuevo perfil",
"menu": {
"settings": "Configuración",
"proxies": "Proxies y VPNs",
"groups": "Grupos",
"syncService": "Cuenta",
"integrations": "Integraciones",
"importProfile": "Importar Perfil",
"extensions": "Extensiones"
}
},
"profiles": {
"title": "Perfiles",
"empty": "Sin perfiles aún",
"emptyDescription": "Crea tu primer perfil de navegador para comenzar.",
"createFirst": "Crear Perfil",
"noResults": "No se encontraron perfiles",
"noResultsDescription": "Ningún perfil coincide con tus criterios de búsqueda.",
"table": {
"name": "Nombre",
"browser": "Navegador",
"status": "Estado",
"actions": "Acciones",
"note": "Nota",
"group": "Grupo",
"proxy": "Proxy / VPN",
"lastLaunch": "Último Inicio",
"empty": "No se encontraron perfiles.",
"notSelected": "No seleccionado"
},
"actions": {
"launch": "Iniciar",
"stop": "Detener",
"edit": "Editar",
"delete": "Eliminar",
"copyCookies": "Copiar Cookies",
"configure": "Configurar",
"clone": "Clonar perfil",
"viewNetwork": "Ver Red",
"syncSettings": "Configuración de Sincronización",
"assignToGroup": "Asignar a Grupo",
"changeFingerprint": "Cambiar Huella Digital",
"copyCookiesToProfile": "Copiar Cookies al Perfil",
"launchHook": "URL del hook de inicio",
"setPassword": "Establecer Contraseña",
"changePassword": "Cambiar Contraseña",
"removePassword": "Quitar Contraseña"
},
"synchronizer": {
"launchWithSync": "Lanzar con Sincronizador",
"stopLeader": "Detener este perfil y todos sus seguidores",
"stopFollower": "Siguiendo las acciones de {{leaderName}}",
"desyncedTooltip": "La sincronización falló en {{url}}",
"paidFeature": "El sincronizador es una función de pago",
"wayfernOnly": "Solo los perfiles Wayfern pueden sincronizarse",
"selectFollowers": "Seleccionar perfiles seguidores",
"selectFollowersDesc": "Elige los perfiles que replicarán las acciones del perfil líder. Solo se pueden seleccionar perfiles Wayfern detenidos.",
"leader": "Líder",
"follower": "Seguidor",
"startSession": "Iniciar sesión de sincronización",
"noFollowers": "Selecciona al menos un perfil seguidor",
"flakyBadge": "FLAKY",
"flakyTooltip": "Este perfil tiene una resolución de pantalla diferente a la del líder. El diseño de las páginas puede variar, lo que puede causar que los clics e interacciones fallen."
},
"ephemeral": "Efímero",
"ephemeralDescription": "El navegador se ve obligado a escribir los datos del perfil en memoria en lugar de en el disco. Ten en cuenta que tu sistema operativo puede pasar partes de la memoria al disco cuando hay poca RAM, por lo que aún podrían quedar rastros de la sesión recuperables.",
"ephemeralBadge": "Efímero",
"bulkDelete": {
"title": "Eliminar perfiles seleccionados",
"description": "Esta acción no se puede deshacer. Eliminará permanentemente {{count}} perfil(es) y todos los datos asociados.",
"confirmButton": "Eliminar {{count}} perfil(es)"
},
"note": {
"empty": "Sin nota",
"placeholder": "Añadir una nota..."
},
"aria": {
"profileInfo": "Información del perfil"
},
"delete": {
"title": "Eliminar perfil",
"description": "Esta acción no se puede deshacer. Eliminará permanentemente el perfil \"{{profileName}}\" y todos sus datos asociados.",
"confirmButton": "Eliminar perfil"
},
"actionBar": {
"assignToGroup": "Asignar a grupo",
"assignProxy": "Asignar proxy",
"assignExtensionGroup": "Asignar grupo de extensiones",
"copyCookies": "Copiar cookies"
},
"passwordProtectedBadge": "Protegido por Contraseña"
},
"createProfile": {
"title": "Crear Nuevo Perfil",
"configureTitle": "Crear Nuevo Perfil de {{browser}}",
"antiDetect": {
"title": "Navegador Anti-Detección",
"description": "Elige un navegador con capacidades anti-detección",
"chromium": "Wayfern",
"firefox": "Camoufox",
"badge": "Navegador Anti-Detección"
},
"regular": {
"title": "Navegadores Regulares",
"description": "Elige entre navegadores regulares soportados",
"badge": "Navegador Regular"
},
"profileName": "Nombre del Perfil",
"profileNamePlaceholder": "Ingresa el nombre del perfil",
"proxy": {
"title": "Proxy / VPN",
"addProxy": "Agregar Proxy",
"noProxy": "Sin proxy / VPN",
"noProxiesAvailable": "No hay proxies o VPNs disponibles. Agrega uno para enrutar el tráfico de este perfil.",
"search": "Buscar proxies o VPN...",
"notFound": "No se encontraron proxies o VPN.",
"searchWithCountries": "Buscar proxies, VPN o países..."
},
"launchHook": {
"label": "URL del hook de inicio",
"placeholder": "https://example.com/hooks/profile-launch"
},
"version": {
"fetching": "Obteniendo versiones disponibles...",
"fetchError": "Error al obtener versiones del navegador. Por favor verifica tu conexión a internet e intenta de nuevo.",
"needsDownload": "La versión de {{browser}} ({{version}}) necesita ser descargada",
"available": "La versión de {{browser}} ({{version}}) está disponible",
"downloading": "Descargando versión de {{browser}} ({{version}})...",
"latestNeedsDownload": "La última versión ({{version}}) necesita ser descargada",
"latestAvailable": "La última versión ({{version}}) está disponible",
"latestDownloading": "Descargando versión ({{version}})..."
},
"chromiumLabel": "Chromium",
"chromiumSubtitle": "Impulsado por Wayfern",
"firefoxLabel": "Firefox",
"firefoxSubtitle": "Impulsado por Camoufox",
"camoufoxWarning": "Firefox (Camoufox) está mantenido por una organización de terceros. Para uso en producción, utilice Chromium.",
"platformUnavailable": "{{browser}} aún no está disponible en tu plataforma.",
"passwordProtect": {
"label": "Proteger este perfil con contraseña",
"description": "Cifra los datos del perfil en disco. Necesario para abrirlo."
}
},
"deleteDialog": {
"title": "Eliminar Perfil",
"description": "¿Estás seguro de que deseas eliminar este perfil? Esta acción no se puede deshacer.",
"profilesTitle": "Eliminar Perfiles",
"profilesDescription": "¿Estás seguro de que deseas eliminar los perfiles seleccionados? Esta acción no se puede deshacer.",
"profilesToDelete": "Perfiles a eliminar:"
},
"proxies": {
"title": "Proxies",
"management": {
"description": "Administra tus configuraciones de proxy y VPN para reutilizarlas en los perfiles",
"tabProxies": "Proxies",
"tabVpns": "VPN",
"create": "Crear",
"loading": "Cargando proxies...",
"noneCreated": "Aún no hay proxies. Crea tu primer proxy usando el botón de arriba.",
"usage": "Uso",
"syncCol": "Sincronizar",
"syncCannotDisable": "No se puede desactivar la sincronización mientras este proxy esté en uso por perfiles sincronizados",
"enableSync": "Activar sincronización",
"disableSync": "Desactivar sincronización",
"editProxy": "Editar proxy",
"deleteProxy": "Eliminar proxy",
"cannotDelete_one": "No se puede eliminar: en uso por {{count}} perfil",
"cannotDelete_other": "No se puede eliminar: en uso por {{count}} perfiles",
"syncEnabled": "Sincronización activada",
"syncDisabled": "Sincronización desactivada",
"updateSyncFailed": "Error al actualizar la sincronización",
"deleteSuccess": "Proxy eliminado correctamente",
"deleteFailed": "Error al eliminar el proxy",
"deleteTitle": "Eliminar proxy",
"deleteDescription": "Esta acción no se puede deshacer. Se eliminará permanentemente el proxy \"{{name}}\".",
"title": "Proxies y VPN"
},
"add": "Agregar Proxy",
"edit": "Editar Proxy",
"delete": "Eliminar Proxy",
"import": "Importar",
"export": "Exportar",
"noProxies": "No hay proxies configurados",
"noProxiesDescription": "Agrega un proxy para enrutar el tráfico del navegador a través de él.",
"form": {
"name": "Nombre",
"namePlaceholder": "Ingresa el nombre del proxy",
"type": "Tipo",
"host": "Host",
"hostPlaceholder": "proxy.ejemplo.com",
"port": "Puerto",
"portPlaceholder": "8080",
"username": "Usuario",
"usernamePlaceholder": "Opcional",
"password": "Contraseña",
"passwordPlaceholder": "Opcional",
"cipher": "Cifrado",
"cipherPlaceholder": "aes-256-gcm",
"nameRequired": "El nombre del proxy es obligatorio",
"hostPortRequired": "Host y puerto son obligatorios",
"ssCipherRequired": "Para Shadowsocks se requieren cifrado y contraseña",
"selectType": "Selecciona el tipo de proxy",
"saveFailed": "Error al guardar el proxy: {{error}}"
},
"types": {
"http": "HTTP",
"https": "HTTPS",
"socks4": "SOCKS4",
"socks5": "SOCKS5",
"ss": "Shadowsocks"
},
"tabs": {
"regular": "Regular",
"dynamic": "Dinámico"
},
"dynamic": {
"description": "El proxy dinámico obtiene los detalles de conexión desde una URL cada vez que se inicia un perfil.",
"url": "URL del Proxy",
"urlPlaceholder": "https://api.example.com/proxy",
"urlRequired": "La URL del proxy dinámico es obligatoria",
"format": "Formato de Respuesta",
"formatJson": "JSON",
"formatText": "Texto",
"formatJsonHint": "Espera JSON: {\"ip\": \"...\", \"port\": ..., \"username\": \"...\", \"password\": \"...\"}",
"formatTextHint": "Espera texto como: host:port:username:password o protocol://user:pass@host:port",
"testUrl": "Probar URL",
"testing": "Probando...",
"testSuccess": "Proxy funcionando: {{host}}:{{port}}",
"testFailed": "Prueba de proxy fallida: {{error}}",
"fetchFailed": "Error al obtener el proxy dinámico: {{error}}"
},
"check": {
"checking": "Verificando proxy...",
"valid": "El proxy es válido",
"invalid": "El proxy es inválido",
"lastChecked": "Última verificación: {{time}}"
},
"sync": {
"enabled": "Sincronización Habilitada",
"disabled": "Sincronización Deshabilitada"
},
"exportDialog": {
"title": "Exportar proxies",
"description": "Exporta tus configuraciones de proxy a un archivo",
"format": "Formato de exportación",
"json": "JSON",
"txt": "TXT (formato URL)",
"preview": "Vista previa",
"noProxies": "No hay proxies para exportar",
"downloaded": "{{filename}} descargado",
"failed": "Error al exportar los proxies",
"copied": "Copiado"
},
"importDialog": {
"title": "Importar proxies",
"descDropzone": "Importar proxies desde un archivo JSON o TXT",
"descPreview": "Revisa los proxies a importar",
"descAmbiguous": "Algunos proxies tienen formatos ambiguos. Selecciona el formato correcto.",
"descResult": "Importación completada",
"dropzonePrompt": "Suelta un archivo de configuración de proxy",
"dropzoneFormats": "(.json, .txt)",
"pasteHint": "Pega desde el portapapeles con {{modKey}}+V",
"wrongFileType": "Por favor, suelta un archivo .json o .txt",
"fileReadError": "Error al leer el archivo",
"fileProcessError": "Error al procesar el archivo",
"noValidProxies": "No se encontraron proxies válidos en el archivo",
"namePrefix": "Prefijo de nombre",
"namePrefixDefault": "Imported",
"namePrefixHint": "Los proxies se nombrarán \"{{prefix}} Proxy 1\", \"{{prefix}} Proxy 2\", etc.",
"proxiesToImport": "Proxies a importar ({{count}})",
"invalidCount": "({{count}} inválidos)",
"ambiguousIntro": "Los siguientes proxies tienen un formato ambiguo. Selecciona la interpretación correcta para cada uno.",
"imported": "Importados:",
"skippedDuplicates": "Omitidos (duplicados):",
"errors": "Errores",
"importButton": "Importar {{count}} proxies",
"continueButton": "Continuar",
"doneButton": "Hecho",
"failed": "Error al importar los proxies"
}
},
"groups": {
"title": "Grupos",
"management": "Gestión de Grupos",
"add": "Agregar Grupo",
"edit": "Editar Grupo",
"delete": "Eliminar Grupo",
"defaultGroup": "Predeterminado",
"defaultGroupNoGroup": "Predeterminado (Sin Grupo)",
"moveToDefault": "Mover perfiles al grupo Predeterminado",
"noGroupDescription": "Los perfiles sin grupo aparecerán en el grupo \"Predeterminado\".",
"assignSuccess": "Se asignaron {{count}} perfil(es) a {{group}} exitosamente",
"noGroups": "No hay grupos creados",
"noGroupsDescription": "Crea un grupo para organizar tus perfiles.",
"form": {
"name": "Nombre",
"namePlaceholder": "Ingresa el nombre del grupo"
},
"profileCount": "{{count}} perfil",
"profileCount_plural": "{{count}} perfiles",
"assignProfiles": "Asignar Perfiles",
"sync": {
"enabled": "Sincronización Habilitada",
"disabled": "Sincronización Deshabilitada"
},
"createTitle": "Crear Nuevo Grupo",
"createDescription": "Crea un nuevo grupo para organizar tus perfiles de navegador.",
"editTitle": "Editar Grupo",
"editDescription": "Actualiza el nombre de tu grupo.",
"createSuccess": "Grupo creado correctamente",
"createFailed": "Error al crear el grupo",
"updateSuccess": "Grupo actualizado correctamente",
"updateFailed": "Error al actualizar el grupo",
"deleteTitle": "Eliminar Grupo",
"deleteDescription": "Esta acción no se puede deshacer. Eliminará permanentemente el grupo.",
"deleteSuccess": "Grupo eliminado correctamente",
"deleteFailed": "Error al eliminar el grupo",
"loadingProfiles": "Cargando perfiles asociados...",
"associatedProfiles": "Perfiles Asociados ({{count}})",
"whatToDoWithProfiles": "¿Qué hacer con estos perfiles?",
"moveToDefaultOption": "Mover perfiles al grupo Predeterminado",
"deleteAlongWithGroup": "Eliminar perfiles junto con el grupo",
"noAssociatedProfiles": "Este grupo no tiene perfiles asociados.",
"deleteGroup": "Eliminar Grupo",
"deleteGroupAndProfiles": "Eliminar Grupo y Perfiles",
"loadProfilesFailed": "Error al cargar los perfiles",
"unknownGroup": "Grupo desconocido",
"profileGroupsAriaLabel": "Grupos de perfiles",
"loading": "Cargando grupos..."
},
"sync": {
"mode": {
"title": "Sincronización de perfil",
"description": "Gestionar configuración de sincronización para \"{{name}}\"",
"disabled": "Deshabilitado",
"regular": "Sincronización regular",
"encrypted": "Sincronización cifrada E2E",
"disabledDescription": "Sin sincronización para este perfil",
"regularDescription": "Sincronización rápida, sin cifrar",
"encryptedDescription": "Cifrado antes de subir. El servidor nunca ve los datos en texto plano.",
"noPasswordWarning": "Contraseña E2E no configurada. Por favor establece una contraseña en Ajustes.",
"passwordRequired": "Contraseña E2E no configurada. Por favor establece una contraseña en Ajustes primero.",
"enabledToast": "Sincronización habilitada",
"disabledToast": "Sincronización deshabilitada",
"syncQueued": "Sincronización en cola",
"syncNow": "Sincronizar ahora",
"lastSynced": "Última sincronización",
"notConfigured": "Servicio de sincronización no configurado.",
"configureService": "Configurar servicio de sincronización"
},
"title": "Servicio de Sincronización",
"config": {
"serverUrlRequired": "Introduce la URL del servidor",
"connectionSuccess": "¡Conexión exitosa!",
"serverError": "El servidor respondió con un error",
"connectFailed": "Error al conectar con el servidor",
"settingsSaved": "Ajustes de sincronización guardados",
"saveFailed": "Error al guardar los ajustes",
"disconnected": "Sincronización desconectada",
"disconnectFailed": "Error al desconectar"
},
"serverUrl": "URL del Servidor",
"serverUrlPlaceholder": "https://sync.ejemplo.com",
"token": "Token de Sincronización",
"tokenPlaceholder": "Ingresa tu token de sincronización",
"status": {
"connected": "Conectado",
"disconnected": "Desconectado",
"syncing": "Sincronizando...",
"error": "Error de Sincronización"
},
"description": "Conéctate a un servidor de sincronización para sincronizar tus perfiles, proxies y grupos entre dispositivos.",
"cloud": {
"tabLabel": "Nube",
"selfHostedTabLabel": "Autoalojado",
"email": "Correo electrónico",
"deviceLinkInstructions": "Haz clic en \"Iniciar sesión\" para abrir la página de inicio de sesión en tu navegador. Después de iniciar sesión allí, copia el código que se muestra y pégalo abajo.",
"openLogin": "Iniciar sesión",
"linkCodeLabel": "Código de inicio de sesión",
"linkCodePlaceholder": "Pega el código del sitio web",
"verifyAndLogin": "Verificar e Iniciar Sesión",
"loggingIn": "Iniciando sesión...",
"connected": "Conectado",
"plan": "Plan",
"profiles": "Perfiles",
"profileUsage": "{{used}} / {{limit}}",
"manageAccount": "Administrar Cuenta",
"logout": "Cerrar Sesión",
"logoutConfirm": "¿Estás seguro de que deseas cerrar sesión? La sincronización en la nube se detendrá.",
"loginSuccess": "¡Sesión iniciada exitosamente!",
"logoutSuccess": "Sesión cerrada exitosamente."
},
"team": {
"title": "Equipo",
"name": "Nombre del Equipo",
"role": "Rol",
"roleOwner": "Propietario",
"roleAdmin": "Administrador",
"roleMember": "Miembro",
"manageOnWeb": "Gestionar equipo en el panel web",
"profileLocked": "En uso por {{email}}",
"profileLockedShort": "En uso",
"cannotLaunchLocked": "No se puede iniciar — el perfil está en uso por {{email}}",
"createdBy": "Creado por {{email}}"
},
"disabled": "Desactivada",
"toast": {
"profileSynced": "Perfil '{{name}}' sincronizado correctamente",
"profileSyncFailed": "Error al sincronizar el perfil '{{name}}'",
"profileSyncFailedWithError": "Error al sincronizar el perfil '{{name}}': {{error}}"
}
},
"integrations": {
"title": "Integraciones",
"api": {
"title": "API Local",
"description": "Habilita el servidor de API local para integraciones externas.",
"enabled": "API Habilitada",
"disabled": "API Deshabilitada",
"port": "Puerto",
"token": "Token de API",
"copyToken": "Copiar Token",
"regenerateToken": "Regenerar Token"
},
"mcp": {
"title": "Servidor MCP",
"description": "Habilita el servidor MCP (Protocolo de Contexto de Modelo) para integraciones con asistentes de IA.",
"enabled": "MCP Habilitado",
"disabled": "MCP Deshabilitado",
"port": "Puerto",
"token": "Token de autenticación",
"tokenCopied": "Token copiado",
"url": "URL del servidor MCP",
"urlCopied": "URL copiada",
"claudeDesktopTitle": "Claude Desktop",
"claudeDesktopHint": "Configura claude_desktop_config.json automáticamente",
"addToClaudeDesktop": "Agregar a Claude Desktop",
"removeFromClaudeDesktop": "Eliminar de Claude Desktop",
"addedToClaudeDesktop": "Agregado a Claude Desktop. Reinicia Claude Desktop y activa la extensión en Configuración.",
"removedFromClaudeDesktop": "Eliminado de la configuración de Claude Desktop. Reinicia Claude Desktop.",
"claudeCodeTitle": "Claude Code",
"addToClaudeCode": "Agregar a Claude Code",
"removeFromClaudeCode": "Eliminar de Claude Code",
"addedToClaudeCode": "Agregado a Claude Code",
"removedFromClaudeCode": "Eliminado de Claude Code",
"config": "Configuración MCP",
"copyConfig": "Copiar Configuración"
},
"tabApi": "API local",
"tabMcp": "MCP (asistentes IA)",
"apiEnableLabel": "Activar servidor API local",
"apiEnableDescription": "Permite gestionar perfiles, grupos y proxies vía API REST.",
"apiPortLabel": "Puerto",
"apiTokenLabel": "Token de autenticación",
"apiTokenHint": "Incluir en cabecera Authorization: Bearer {{tokenSlot}}",
"apiInvalidPort": "Puerto inválido",
"apiInvalidPortDescription": "El puerto debe estar entre 1 y 65535",
"apiPortInUse": "El puerto {{port}} ya está en uso",
"apiFallbackPort": "Servidor iniciado en puerto alternativo {{port}}",
"apiStarted": "Servidor API iniciado en puerto {{port}}",
"apiRunning": "Servidor API ejecutándose en puerto {{port}}",
"apiStopped": "Servidor API detenido",
"apiToggleFailed": "Error al alternar el servidor API",
"apiStartFailed": "Error al iniciar el servidor API",
"apiUnknownError": "Error desconocido",
"tokenCopied": "Token copiado",
"mcpEnableLabel": "Activar servidor MCP (Model Context Protocol)",
"mcpEnableDescription": "Permite que asistentes IA como Claude Desktop controlen los navegadores.",
"mcpAcceptTermsFirst": "(Acepta primero los términos de Wayfern en Configuración)",
"mcpStarted": "Servidor MCP iniciado en puerto {{port}}",
"mcpStopped": "Servidor MCP detenido",
"mcpToggleFailed": "Error al alternar el servidor MCP",
"openSettings": "Abrir configuración de integraciones"
},
"import": {
"title": "Importar Perfil",
"description": "Importa un perfil de navegador existente de tu sistema.",
"selectProfile": "Selecciona un perfil para importar",
"noProfiles": "No se detectaron perfiles",
"noProfilesDescription": "No se detectaron perfiles de navegador en tu sistema.",
"importing": "Importando perfil...",
"success": "Perfil importado exitosamente",
"error": "Error al importar perfil"
},
"config": {
"camoufox": {
"title": "Configuración de Camoufox",
"fingerprint": {
"title": "Huella Digital",
"randomize": "Aleatorizar al Iniciar",
"randomizeDescription": "Genera una nueva huella digital cada vez que se inicia el navegador.",
"osCpuPlaceholder": "p. ej., Intel Mac OS X 10.15",
"webglRendererPlaceholder": "p. ej., llvmpipe, o similar"
},
"os": {
"title": "Sistema Operativo",
"description": "El sistema operativo a emular para la generación de huellas digitales.",
"windows": "Windows",
"macos": "macOS",
"linux": "Linux"
},
"screen": {
"title": "Tamaño de Pantalla",
"minWidth": "Ancho Mín",
"maxWidth": "Ancho Máx",
"minHeight": "Alto Mín",
"maxHeight": "Alto Máx"
},
"geoip": {
"title": "GeoIP",
"auto": "Automático (basado en proxy)",
"manual": "Manual",
"disabled": "Deshabilitado"
},
"blocking": {
"title": "Bloqueo",
"images": "Bloquear Imágenes",
"webrtc": "Bloquear WebRTC",
"webgl": "Bloquear WebGL"
}
},
"wayfern": {
"title": "Configuración de Wayfern",
"fingerprint": {
"title": "Huella Digital",
"randomize": "Aleatorizar al Iniciar",
"randomizeDescription": "Genera una nueva huella digital cada vez que se inicia el navegador.",
"platformPlaceholder": "p. ej., Win32, MacIntel, Linux x86_64",
"timezoneOffsetPlaceholder": "p. ej., 300 para EST (UTC-5)",
"webglRendererPlaceholder": "p. ej., Intel(R) HD Graphics"
},
"os": {
"title": "Sistema Operativo",
"description": "El sistema operativo a emular para la generación de huellas digitales.",
"windows": "Windows",
"macos": "macOS",
"linux": "Linux",
"android": "Android",
"ios": "iOS"
},
"screen": {
"title": "Tamaño de Pantalla",
"minWidth": "Ancho Mín",
"maxWidth": "Ancho Máx",
"minHeight": "Alto Mín",
"maxHeight": "Alto Máx"
},
"blocking": {
"title": "Bloqueo",
"webrtc": "Bloquear WebRTC",
"webgl": "Bloquear WebGL"
}
},
"shared": {
"browserBehavior": "Comportamiento del navegador",
"allowAddonsOpenTabs": "Permitir que los complementos abran nuevas pestañas automáticamente"
}
},
"cookies": {
"title": "Cookies",
"copy": {
"title": "Copiar Cookies",
"description": "Selecciona cookies para copiar a otros perfiles.",
"selectSource": "Seleccionar Perfil de Origen",
"selectTarget": "Seleccionar Perfiles de Destino",
"selectCookies": "Seleccionar Cookies",
"allDomains": "Todos los Dominios",
"selectedCount": "{{count}} cookie seleccionada",
"selectedCount_plural": "{{count}} cookies seleccionadas",
"dialogDescription_one": "Copiar cookies de un perfil de origen a {{count}} perfil seleccionado.",
"dialogDescription_other": "Copiar cookies de un perfil de origen a {{count}} perfiles seleccionados.",
"sourceProfile": "Perfil de origen",
"sourcePlaceholder": "Selecciona un perfil del que copiar cookies",
"running": "(en ejecución)",
"targetProfiles": "Perfiles de destino ({{count}})",
"noOtherTargets": "No hay otros perfiles Wayfern/Camoufox seleccionados",
"selectSourceFirst": "Selecciona primero un perfil de origen",
"selectionStatus": "({{selected}} de {{total}} seleccionadas)",
"searchPlaceholder": "Buscar dominios o cookies...",
"noMatching": "No se encontraron cookies coincidentes",
"noFound": "No se encontraron cookies",
"replaceNote": "Las cookies existentes con el mismo nombre y dominio serán reemplazadas. El resto se conservará.",
"cannotCopyRunningOne": "No se pueden copiar las cookies: {{names}} aún en ejecución",
"cannotCopyRunningMany": "No se pueden copiar las cookies: {{names}} aún en ejecución",
"someErrors": "Ocurrieron algunos errores: {{errors}}",
"successMessage": "Se copiaron {{copied}} cookies correctamente ({{replaced}} reemplazadas)",
"failedMessage": "Error al copiar las cookies: {{error}}",
"copyButton_one": "Copiar {{count}} cookie",
"copyButton_other": "Copiar {{count}} cookies",
"copyButtonEmpty": "Copiar cookies"
},
"success": "Cookies copiadas exitosamente",
"error": "Error al copiar cookies",
"management": {
"title": "Gestión de Cookies",
"menuItem": "Gestión de Cookies",
"tabImport": "Importar",
"tabExport": "Exportar",
"importDescription": "Importa cookies desde un archivo en formato Netscape o JSON.",
"dropPrompt": "Haz clic para elegir un archivo de cookies",
"fileFormats": "(.txt, .cookies o .json)",
"cookiesFound": "{{count}} cookies encontradas",
"importedSuccess": "{{imported}} cookies importadas correctamente ({{replaced}} reemplazadas)",
"linesSkipped": "{{count}} línea(s) omitidas",
"fileReadError": "Error al leer el archivo",
"loadFailed": "Error al cargar las cookies: {{error}}",
"cookiesLabel": "Cookies",
"selectionStatus": "({{selected}} de {{total}} seleccionadas)",
"selectAll": "Seleccionar todo",
"deselectAll": "Deseleccionar todo",
"noCookies": "No se encontraron cookies en este perfil",
"doneButton": "Hecho",
"importButton": "Importar",
"exportButton": "Exportar",
"backButton": "Atrás"
},
"import": {
"title": "Importar Cookies",
"description": "Importar cookies desde un archivo en formato Netscape o JSON.",
"selectFile": "Elegir Archivo",
"preview": "{{count}} cookies encontradas",
"success": "Se importaron {{imported}} cookies exitosamente ({{replaced}} reemplazadas)",
"error": "Error al importar cookies",
"proFeature": "La importación de cookies es una función Pro"
},
"export": {
"title": "Exportar Cookies",
"description": "Exportar cookies de este perfil.",
"formatLabel": "Formato",
"netscape": "Netscape TXT",
"json": "JSON",
"success": "Cookies exportadas exitosamente",
"error": "Error al exportar cookies"
}
},
"toasts": {
"success": {
"profileCreated": "Perfil creado exitosamente",
"profileDeleted": "Perfil eliminado exitosamente",
"profileUpdated": "Perfil actualizado exitosamente",
"profileLaunched": "Perfil iniciado exitosamente",
"proxyCreated": "Proxy creado exitosamente",
"proxyDeleted": "Proxy eliminado exitosamente",
"proxyUpdated": "Proxy actualizado exitosamente",
"groupCreated": "Grupo creado exitosamente",
"groupDeleted": "Grupo eliminado exitosamente",
"groupUpdated": "Grupo actualizado exitosamente",
"settingsSaved": "Configuración guardada exitosamente",
"copied": "Copiado al portapapeles",
"permissionRequested": "Acceso a {{permission}} solicitado",
"downloadComplete": "¡{{browser}} {{version}} descargado exitosamente!",
"importSuccess": "{{count}} elementos importados exitosamente",
"exportSuccess": "{{count}} elementos exportados exitosamente",
"syncSuccess": "Sincronización completada exitosamente",
"profileSynced": "Perfil '{{name}}' sincronizado exitosamente",
"cacheCleared": "Caché limpiada exitosamente"
},
"error": {
"profileCreateFailed": "Error al crear perfil",
"profileDeleteFailed": "Error al eliminar perfil",
"profileUpdateFailed": "Error al actualizar perfil",
"profileLaunchFailed": "Error al iniciar perfil",
"proxyCreateFailed": "Error al crear proxy",
"proxyDeleteFailed": "Error al eliminar proxy",
"proxyUpdateFailed": "Error al actualizar proxy",
"groupCreateFailed": "Error al crear grupo",
"groupDeleteFailed": "Error al eliminar grupo",
"groupUpdateFailed": "Error al actualizar grupo",
"settingsSaveFailed": "Error al guardar configuración",
"copyFailed": "Error al copiar al portapapeles",
"downloadFailed": "Error al descargar {{browser}}",
"importFailed": "Error al importar",
"exportFailed": "Error al exportar",
"syncFailed": "Error de sincronización",
"profileSyncFailed": "Error al sincronizar perfil '{{name}}'",
"cacheClearFailed": "Error al limpiar caché",
"unknown": "Ocurrió un error desconocido"
},
"loading": {
"downloading": "Descargando {{browser}} {{version}}",
"extracting": "Extrayendo {{browser}} {{version}}",
"verifying": "Verificando {{browser}} {{version}}",
"syncing": "Sincronizando...",
"syncingProfile": "Sincronizando perfil '{{name}}'...",
"syncingProfileWithProgress": "{{count}} archivos ({{size}})",
"updatingVersions": "Actualizando versiones de navegadores..."
}
},
"errors": {
"required": "Este campo es requerido",
"invalidUrl": "Por favor ingresa una URL válida",
"invalidPort": "Por favor ingresa un número de puerto válido (1-65535)",
"invalidEmail": "Por favor ingresa un correo electrónico válido",
"minLength": "Debe tener al menos {{min}} caracteres",
"maxLength": "Debe tener como máximo {{max}} caracteres",
"networkError": "Error de red. Por favor verifica tu conexión.",
"serverError": "Error del servidor. Por favor intenta de nuevo más tarde.",
"unknownError": "Ocurrió un error desconocido. Por favor intenta de nuevo.",
"noProfilesForUrl": "No hay perfiles disponibles. Crea un perfil antes de abrir URLs.",
"updateCamoufoxConfigFailed": "Error al actualizar la configuración de camoufox: {{error}}",
"updateWayfernConfigFailed": "Error al actualizar la configuración de wayfern: {{error}}",
"createProfileFailed": "Error al crear el perfil: {{error}}",
"launchBrowserFailed": "Error al iniciar el navegador: {{error}}",
"cannotDeleteRunningProfile": "No se puede eliminar el perfil mientras el navegador esté en ejecución. Detén el navegador primero.",
"deleteProfileFailed": "Error al eliminar el perfil: {{error}}",
"renameProfileFailed": "Error al renombrar el perfil: {{error}}",
"killBrowserFailed": "Error al detener el navegador: {{error}}",
"deleteSelectedProfilesFailed": "Error al eliminar los perfiles seleccionados: {{error}}",
"cookieCopyUnsupportedBrowser": "La copia de cookies sólo funciona con perfiles Wayfern y Camoufox",
"updateSyncSettingsFailed": "Error al actualizar los ajustes de sincronización",
"cloneProfileFailed": "Error al clonar el perfil: {{error}}",
"loadSupportedBrowsersFailed": "Error al cargar los navegadores compatibles",
"setupExtensionListenersFailed": "Error al configurar los listeners de eventos de extensiones: {{error}}",
"loadGroupsFailed": "Error al cargar los grupos: {{error}}",
"setupGroupListenersFailed": "Error al configurar los listeners de eventos de grupos: {{error}}",
"loadProfilesFailed": "Error al cargar los perfiles: {{error}}",
"setupProfileListenersFailed": "Error al configurar los listeners de eventos de perfiles: {{error}}",
"loadProxiesFailed": "Error al cargar los proxies: {{error}}",
"setupProxyListenersFailed": "Error al configurar los listeners de eventos de proxies: {{error}}",
"loadVpnConfigsFailed": "Error al cargar las configuraciones de VPN: {{error}}",
"setupVpnListenersFailed": "Error al configurar los listeners de eventos de VPN: {{error}}",
"themeNotFound": "Tema Tokyo Night no encontrado",
"setProfilePasswordFailed": "Error al establecer la contraseña del perfil: {{error}}"
},
"browser": {
"camoufox": "Camoufox",
"wayfern": "Wayfern"
},
"fingerprint": {
"crossOsWarning": "La suplantación de huella digital para un sistema operativo diferente es menos fiable porque es imposible imitar perfectamente todos los componentes subyacentes. Usar con precaución.",
"crossOsLimitations": "La suplantación de huella digital entre sistemas operativos tiene limitaciones. Las APIs a nivel de sistema pueden seguir reflejando su sistema operativo real y algunas funciones pueden tener un rendimiento reducido.",
"osLabel": "Huella digital del sistema operativo",
"selectOSPlaceholder": "Seleccionar sistema operativo",
"generateRandomOnLaunch": "Generar huella digital aleatoria en cada inicio",
"generateRandomDescription": "Cuando está activado, se generará una nueva huella digital cada vez que se inicie el navegador.",
"generateRandomDescriptionAuto": "Cuando está activado, se generará una nueva huella digital cada vez que se inicie el navegador. La huella digital generada se guarda como referencia.",
"autoLocationDescription": "Configurar automáticamente la información de ubicación basándose en la configuración del proxy o en su conexión si no se proporciona un proxy",
"editingDisabledRunning": "La edición de huellas digitales está desactivada porque el perfil se está ejecutando actualmente. Detenga el perfil para realizar cambios.",
"editingDisabledRandomized": "La edición de huellas digitales está desactivada porque la generación aleatoria de huellas digitales está activada. Desactive la opción anterior para editar manualmente la configuración de la huella digital.",
"advancedWarning": "Advertencia: Solo edite estos parámetros si sabe lo que está haciendo. Los valores incorrectos pueden romper sitios web, hacer que lo detecten y provocar errores difíciles de depurar.",
"basicWarning": "Advertencia: Solo edite estos parámetros si sabe lo que está haciendo.",
"automatic": "Automático",
"manual": "Manual",
"blockingOptions": "Opciones de bloqueo",
"blockImages": "Bloquear imágenes",
"blockWebRTC": "Bloquear WebRTC",
"blockWebGL": "Bloquear WebGL",
"navigatorProperties": "Propiedades del navegador",
"userAgent": "Agente de usuario",
"userAgentAndPlatform": "User Agent y plataforma",
"platform": "Plataforma",
"platformVersion": "Versión de plataforma",
"appVersion": "Versión de la aplicación",
"osCpu": "CPU del SO",
"hardwareConcurrency": "Concurrencia de hardware",
"maxTouchPoints": "Puntos táctiles máximos",
"doNotTrack": "No rastrear",
"selectDntPlaceholder": "Seleccionar valor DNT",
"dntAllowed": "0 (rastreo permitido)",
"dntNotAllowed": "1 (rastreo no permitido)",
"dntUnspecified": "no especificado",
"language": "Idioma",
"primaryLanguage": "Idioma principal (navigator.language)",
"languages": "Idiomas (JSON array)",
"languageAndLocale": "Idioma y configuración regional",
"screenProperties": "Propiedades de pantalla",
"screenWidth": "Ancho de pantalla",
"screenHeight": "Alto de pantalla",
"availableWidth": "Ancho disponible",
"availableHeight": "Alto disponible",
"colorDepth": "Profundidad de color",
"pixelDepth": "Profundidad de píxel",
"devicePixelRatio": "Relación de píxeles del dispositivo",
"windowProperties": "Propiedades de ventana",
"outerWidth": "Ancho exterior",
"outerHeight": "Alto exterior",
"innerWidth": "Ancho interior",
"innerHeight": "Alto interior",
"screenX": "Pantalla X",
"screenY": "Pantalla Y",
"geolocation": "Geolocalización",
"timezoneAndGeolocation": "Zona horaria y geolocalización",
"timezoneGeolocationDescription": "Estos valores anulan las APIs de zona horaria y geolocalización del navegador.",
"latitude": "Latitud",
"longitude": "Longitud",
"timezone": "Zona horaria",
"timezoneIana": "Zona horaria (IANA)",
"timezoneOffset": "Desfase (minutos desde UTC)",
"accuracy": "Precisión (metros)",
"locale": "Configuración regional",
"region": "Región",
"script": "Script",
"webglProperties": "Propiedades de WebGL",
"webglVendor": "Proveedor WebGL",
"webglRenderer": "Renderizador WebGL",
"webglParameters": "Parámetros de WebGL",
"webglParametersJson": "Parámetros de WebGL (JSON)",
"webgl2Parameters": "Parámetros de WebGL2",
"webglShaderPrecisionFormats": "Formatos de precisión de shader WebGL",
"webgl2ShaderPrecisionFormats": "Formatos de precisión de shader WebGL2",
"canvasFingerprint": "Canvas Fingerprint",
"canvasNoiseSeed": "Semilla de ruido de Canvas",
"canvasNoiseSeedDescription": "Esta semilla se usa para generar una huella digital de Canvas consistente pero única. Cada perfil debe tener una semilla diferente.",
"fonts": "Fuentes",
"fontsJson": "Fuentes (JSON array)",
"battery": "Batería",
"charging": "Cargando",
"chargingTime": "Tiempo de carga",
"dischargingTime": "Tiempo de descarga",
"batteryLevel": "Nivel (0-1)",
"screenResolution": "Resolución de pantalla",
"maxWidth": "Ancho máximo",
"maxHeight": "Alto máximo",
"minWidth": "Ancho mínimo",
"minHeight": "Alto mínimo",
"hardwareProperties": "Propiedades de hardware",
"deviceMemory": "Memoria del dispositivo (GB)",
"audioProperties": "Propiedades de audio",
"sampleRate": "Frecuencia de muestreo",
"maxChannelCount": "Número máximo de canales",
"vendorInfo": "Información del proveedor",
"vendor": "Proveedor",
"vendorSub": "Proveedor Sub",
"productSub": "Producto Sub",
"brand": "Marca",
"brandVersion": "Versión de marca",
"proFeature": "Esta es una función Pro",
"generateFingerprint": "Generar Huella Digital",
"refreshFingerprint": "Actualizar Huella Digital",
"canvasNoiseSeedPlaceholder": "Introduce una semilla para la huella digital del canvas",
"addFontsPlaceholder": "Agregar fuentes...",
"enterAsJson": "Ingresa {{title}} como JSON"
},
"warnings": {
"windowResizeTitle": "Dimensiones de ventana personalizadas",
"windowResizeDescription": "Cambiar las dimensiones de la ventana del navegador puede aumentar la posibilidad de que los sitios web detecten que la información del navegador está falsificada.",
"windowResizeCamoufoxTitle": "Viewport bloqueado por Camoufox",
"windowResizeCamoufoxDescription": "Camoufox bloquea el viewport a las dimensiones de pantalla falsificadas para anti-fingerprinting. Redimensionar la ventana puede causar áreas recortadas o grises. Este es el comportamiento esperado.",
"dontShowAgain": "No mostrar esto de nuevo",
"continue": "Continuar",
"cancel": "Cancelar"
},
"syncAll": {
"title": "Activar sincronización para elementos existentes",
"description": "Tienes elementos que no se están sincronizando. ¿Te gustaría activar la sincronización para todos?",
"itemsList": "Elementos no sincronizados: {{items}}",
"proxies": "{{count}} proxy",
"proxies_plural": "{{count}} proxies",
"groups": "{{count}} grupo",
"groups_plural": "{{count}} grupos",
"vpns": "{{count}} VPN",
"vpns_plural": "{{count}} VPNs",
"enableAll": "Activar todos",
"skip": "Omitir",
"success": "Sincronización activada para todos los elementos"
},
"crossOs": {
"viewOnly": "Este perfil fue creado en {{os}} y no es compatible con este sistema",
"cannotLaunch": "Este perfil fue creado en {{os}} y no es compatible con este sistema",
"cannotModify": "No se pueden modificar los ajustes de sincronización de un perfil de otro sistema operativo"
},
"profileInfo": {
"title": "Detalles del Perfil",
"tabs": {
"info": "Info",
"settings": "Configuración"
},
"fields": {
"profileId": "ID del Perfil",
"browser": "Navegador",
"releaseType": "Tipo de Versión",
"proxyVpn": "Proxy / VPN",
"launchHook": "Hook de inicio",
"group": "Grupo",
"tags": "Etiquetas",
"note": "Nota",
"syncStatus": "Estado de Sincronización",
"lastLaunched": "Último Lanzamiento",
"hostOs": "SO Host",
"ephemeral": "Efímero",
"extensionGroup": "Grupo de Extensiones"
},
"values": {
"none": "Ninguno",
"never": "Nunca",
"copied": "¡Copiado!",
"yes": "Sí"
},
"network": {
"bypassRules": "Reglas de Omisión de Proxy",
"bypassRulesTitle": "Reglas de Omisión de Proxy",
"bypassRulesDescription": "Las solicitudes que coincidan con estas reglas se conectarán directamente, omitiendo el proxy.",
"addRule": "Agregar Regla",
"rulePlaceholder": "ej. example.com, 192.168.1.*, .*\\.local",
"noRules": "No hay reglas de omisión configuradas.",
"ruleTypes": "Soporta nombres de host, direcciones IP y patrones regex."
},
"launchHook": {
"title": "URL del hook de inicio",
"label": "URL del hook de inicio",
"description": "Donut Browser enviará una solicitud POST a esta URL cada vez que se inicie el perfil.",
"placeholder": "https://example.com/hooks/profile-launch"
},
"actions": {
"manageCookies": "Administrar Cookies",
"assignExtensionGroup": "Asignar Grupo de Extensiones"
},
"clone": {
"title": "Clonar Perfil",
"description": "Ingrese un nombre para el perfil clonado",
"namePlaceholder": "Nombre del perfil",
"button": "Clonar"
}
},
"extensions": {
"title": "Extensiones",
"description": "Administra extensiones de navegador y grupos de extensiones para tus perfiles.",
"upload": "Subir",
"delete": "Eliminar",
"extensionsTab": "Extensiones",
"groupsTab": "Grupos",
"managedNotice": "Las extensiones administradas aquí reemplazarán cualquier extensión instalada manualmente en los perfiles al iniciarlos.",
"proRequired": "La gestión de extensiones es una función Pro",
"empty": "No se han subido extensiones aún.",
"noGroups": "No se han creado grupos de extensiones aún.",
"createGroup": "Crear Grupo",
"addToGroup": "Agregar extensión...",
"removeFromGroup": "Eliminar del grupo",
"deleteGroup": "Eliminar grupo",
"extensionGroup": "Grupo de Extensiones",
"compatibility": {
"label": "Compatibilidad",
"chromium": "Chromium",
"firefox": "Firefox",
"both": "Chromium y Firefox"
},
"selectedFile": "Archivo seleccionado",
"namePlaceholder": "Nombre de la extensión",
"groupNamePlaceholder": "Nombre del grupo",
"uploadSuccess": "Extensión subida exitosamente",
"deleteSuccess": "Extensión eliminada exitosamente",
"groupCreateSuccess": "Grupo de extensiones creado exitosamente",
"groupUpdateSuccess": "Grupo de extensiones actualizado exitosamente",
"groupDeleteSuccess": "Grupo de extensiones eliminado exitosamente",
"deleteConfirmTitle": "Eliminar Extensión",
"deleteConfirmDescription": "¿Estás seguro de que deseas eliminar \"{{name}}\"? Esta acción no se puede deshacer.",
"deleteGroupConfirmTitle": "Eliminar Grupo de Extensiones",
"deleteGroupConfirmDescription": "¿Estás seguro de que deseas eliminar el grupo \"{{name}}\"? Esta acción no se puede deshacer.",
"invalidFileType": "Tipo de archivo no válido. Suba un archivo .crx, .xpi o .zip.",
"readError": "No se pudo leer el archivo de extensión.",
"assignTitle": "Asignar Grupo de Extensiones",
"assignDescription": "Asignar {{count}} perfil(es) seleccionado(s) a un grupo de extensiones.",
"noGroup": "Ninguno (Sin Grupo de Extensiones)",
"assignSuccess": "Grupo de extensiones asignado exitosamente",
"editExtension": "Editar extensión",
"updateSuccess": "Extensión actualizada exitosamente",
"reupload": "Re-subir",
"version": "Versión",
"author": "Autor",
"homepage": "Página de inicio",
"editGroup": "Editar grupo",
"editGroupDescription": "Actualiza el nombre del grupo y gestiona qué extensiones están incluidas.",
"groupExtensions": "Extensiones en este grupo",
"noExtensionsInGroup": "Aún no se han añadido extensiones",
"editExtensionDescription": "Actualizar el nombre de la extensión, ver metadatos o volver a cargar el archivo de extensión.",
"metadata": "Metadatos",
"noMetadata": "No hay metadatos disponibles del manifiesto.",
"selectFile": "Elegir archivo",
"syncEnabled": "Sincronización habilitada",
"syncDisabled": "Sincronización deshabilitada",
"syncEnableTooltip": "Habilitar sincronización",
"syncDisableTooltip": "Deshabilitar sincronización",
"loadGroupsFailed": "Error al cargar grupos de extensiones",
"assignGroupFailed": "Error al asignar grupo de extensiones"
},
"pro": {
"badge": "PRO",
"fingerprintLocked": "La edición de huellas digitales es una función Pro",
"cookieCopyLocked": "La copia de cookies es una función Pro",
"cookieImportLocked": "La importación de cookies es una función Pro",
"cookieExportLocked": "La exportación de cookies es una función Pro",
"cookieManagementLocked": "La gestión de cookies es una función Pro"
},
"dnsBlocklist": {
"title": "Lista de bloqueo DNS",
"none": "Ninguno",
"light": "Ligero",
"normal": "Normal",
"pro": "Pro",
"proPlus": "Pro++",
"ultimate": "Definitivo",
"settingsDescription": "Las listas de bloqueo DNS bloquean anuncios, rastreadores y dominios de malware a nivel de proxy. Las listas se actualizan automáticamente cada 12 horas.",
"manageLists": "Gestionar listas de bloqueo DNS",
"refreshAll": "Actualizar todas las listas",
"refreshFailed": "Error al actualizar las listas de bloqueo DNS",
"domains": "dominios",
"fresh": "Actualizado",
"stale": "Desactualizado",
"notCached": "Sin caché"
},
"vpns": {
"form": {
"titleEdit": "Editar VPN",
"titleCreate": "Crear VPN WireGuard",
"descEdit": "Actualiza el nombre de tu configuración VPN.",
"descCreate": "Introduce los detalles de la interfaz y el par de WireGuard.",
"name": "Nombre",
"namePlaceholder": "p. ej. WireGuard Casa",
"privateKey": "Clave Privada",
"privateKeyPlaceholder": "Clave privada codificada en Base64",
"address": "Dirección",
"addressPlaceholder": "p. ej. 10.0.0.2/24",
"dnsOptional": "DNS (opcional)",
"dnsPlaceholder": "p. ej. 1.1.1.1",
"mtuOptional": "MTU (opcional)",
"mtuPlaceholder": "p. ej. 1420",
"peerPublicKey": "Clave Pública del Par",
"peerPublicKeyPlaceholder": "Clave pública del par codificada en Base64",
"peerEndpoint": "Endpoint del Par",
"peerEndpointPlaceholder": "p. ej. vpn.example.com:51820",
"allowedIps": "IPs Permitidas",
"allowedIpsPlaceholder": "p. ej. 0.0.0.0/0, ::/0",
"keepaliveOptional": "Keepalive Persistente (opcional)",
"keepalivePlaceholder": "p. ej. 25",
"presharedKeyOptional": "Clave Precompartida (opcional)",
"presharedKeyPlaceholder": "Clave precompartida codificada en Base64",
"updateButton": "Actualizar VPN",
"createButton": "Crear VPN",
"nameRequired": "El nombre de la VPN es obligatorio",
"privateKeyRequired": "La clave privada es obligatoria",
"addressRequired": "La dirección es obligatoria",
"peerPublicKeyRequired": "La clave pública del par es obligatoria",
"peerEndpointRequired": "El endpoint del par es obligatorio",
"updated": "VPN actualizada correctamente",
"created": "VPN WireGuard creada correctamente",
"updateFailed": "Error al actualizar la VPN: {{error}}",
"createFailed": "Error al crear la VPN: {{error}}"
},
"import": {
"title": "Importar Configuración VPN",
"descDropzone": "Importa un archivo de configuración WireGuard (.conf)",
"descPreview": "Revisa la configuración VPN a importar",
"descResult": "Importación VPN completada",
"dropzonePrompt": "Suelta un archivo .conf de WireGuard aquí o haz clic para buscar",
"pasteHint": "Pegar desde el portapapeles con {{modKey}}+V",
"invalidContent": "El contenido no parece ser una configuración VPN válida",
"fileReadError": "Error al leer el archivo",
"wrongFileType": "Suelta un archivo .conf de WireGuard",
"configurationLabel": "Configuración {{type}}",
"endpointLabel": "Endpoint: {{endpoint}}",
"vpnNameLabel": "Nombre de la VPN",
"vpnNamePlaceholder": "Mi VPN",
"configPreview": "Vista Previa de la Configuración",
"importedSuccess": "VPN Importada Correctamente",
"importFailed": "Importación Fallida",
"importButton": "Importar VPN",
"doneButton": "Listo",
"failedGeneric": "Error al importar la configuración de VPN",
"defaultName": "VPN {{type}}"
},
"management": {
"loading": "Cargando VPN...",
"noneCreated": "Aún no hay configuraciones de VPN. Importa o crea una usando los botones de arriba.",
"editVpn": "Editar VPN",
"deleteVpn": "Eliminar VPN",
"cannotDelete_one": "No se puede eliminar: en uso por {{count}} perfil",
"cannotDelete_other": "No se puede eliminar: en uso por {{count}} perfiles",
"syncCannotDisable": "No se puede desactivar la sincronización mientras esta VPN esté en uso por perfiles sincronizados",
"deleteSuccess": "VPN eliminada correctamente",
"deleteFailed": "Error al eliminar la VPN",
"deleteTitle": "Eliminar VPN",
"deleteDescription": "Esta acción no se puede deshacer. Se eliminará permanentemente la VPN \"{{name}}\"."
}
},
"importProfile": {
"title": "Importar perfil de navegador",
"autoDetect": "Detección automática",
"manualImport": "Importación manual",
"detectedProfilesTitle": "Perfiles de navegador detectados",
"scanning": "Buscando perfiles de navegador...",
"noneFound": "No se encontraron perfiles de navegador en tu sistema.",
"noneFoundHint": "Prueba la importación manual si tienes perfiles en ubicaciones personalizadas.",
"selectProfile": "Seleccionar perfil:",
"selectProfilePlaceholder": "Elige un perfil detectado",
"pathLabel": "Ruta:",
"browserLabel": "Navegador:",
"newProfileName": "Nombre del nuevo perfil:",
"newProfileNamePlaceholder": "Introduce un nombre para el perfil importado",
"manualTitle": "Importación manual de perfil",
"browserType": "Tipo de navegador:",
"loadingBrowsers": "Cargando navegadores...",
"selectBrowserType": "Selecciona el tipo de navegador",
"profileFolderPath": "Ruta de la carpeta del perfil:",
"profileFolderPlaceholder": "Introduce la ruta completa a la carpeta del perfil",
"browseFolderTitle": "Buscar carpeta",
"examplePaths": "Rutas de ejemplo:",
"selectFolderTitle": "Seleccionar carpeta de perfil",
"folderDialogFailed": "Error al abrir el diálogo de carpeta",
"detectFailed": "Error al detectar los perfiles de navegador existentes",
"fillFields": "Por favor, completa todos los campos",
"selectAndName": "Selecciona un perfil y proporciona un nombre",
"profileNotFound": "Perfil seleccionado no encontrado",
"importedSuccess": "Perfil \"{{name}}\" importado correctamente",
"notInstalled": "{{browser}} no está instalado. Por favor descarga {{browser}} primero desde la ventana principal y luego intenta importar de nuevo.",
"importFailed": "Error al importar el perfil: {{error}}",
"proxyOptional": "Proxy (Opcional)",
"noProxy": "Sin proxy",
"nextButton": "Siguiente",
"importButton": "Importar",
"importedAs": "Este perfil se importará como un perfil de {{browser}}."
},
"syncTooltips": {
"syncing": "Sincronizando...",
"syncedAt": "Sincronizado {{time}}",
"synced": "Sincronizado",
"waiting": "En espera de sincronización",
"errorWith": "Error de sincronización: {{error}}",
"error": "Error de sincronización",
"notSynced": "Sin sincronizar"
},
"groupManagement": {
"description": "Administra tus grupos de perfiles",
"createGroup": "Crear grupo",
"noGroups": "Aún no hay grupos. Crea tu primer grupo usando el botón de arriba.",
"loading": "Cargando grupos...",
"profileCount_one": "{{count}} perfil",
"profileCount_other": "{{count}} perfiles",
"groupsLabel": "Grupos",
"profilesCol": "Perfiles",
"syncCannotDisable": "No se puede desactivar la sincronización mientras este grupo esté en uso por perfiles sincronizados",
"editGroupTooltip": "Editar grupo",
"deleteGroupTooltip": "Eliminar grupo",
"loadFailed": "Error al cargar los grupos"
},
"proxyAssignment": {
"title": "Asignar proxy / VPN",
"description_one": "Asigna un proxy o VPN a {{count}} perfil seleccionado.",
"description_other": "Asigna un proxy o VPN a {{count}} perfiles seleccionados.",
"selectLabel": "Proxy / VPN",
"placeholder": "Selecciona un proxy o VPN",
"noProxy": "Sin proxy / VPN",
"searchPlaceholder": "Buscar proxies o VPN...",
"notFound": "No se encontraron proxies ni VPN.",
"assignButton": "Asignar",
"success": "Proxy/VPN asignado correctamente a {{count}} perfil(es)",
"failed": "Error al asignar proxy/VPN",
"selectedProfilesLabel": "Perfiles seleccionados:",
"assignProxyVpnLabel": "Asignar proxy / VPN:",
"noneOption": "Ninguno",
"noValidProfiles": "No hay perfiles válidos seleccionados.",
"vpnGroupHeading": "VPN",
"failedFallback": "Error al asignar proxy/VPN a los perfiles"
},
"groupAssignment": {
"title": "Asignar grupo",
"description_one": "Asigna un grupo a {{count}} perfil seleccionado.",
"description_other": "Asigna un grupo a {{count}} perfiles seleccionados.",
"selectLabel": "Grupo",
"placeholder": "Selecciona un grupo",
"noGroup": "Sin grupo (Predeterminado)",
"assignButton": "Asignar",
"success": "Grupo asignado correctamente a {{count}} perfil(es)",
"failed": "Error al asignar grupo",
"selectedProfilesLabel": "Perfiles seleccionados:",
"assignGroupLabel": "Asignar a grupo:",
"noValidProfiles": "No hay perfiles válidos seleccionados.",
"failedFallback": "Error al asignar grupo a los perfiles"
},
"profileSelector": {
"title": "Seleccionar perfil",
"description": "Elige un perfil para abrir con esta URL",
"searchPlaceholder": "Buscar perfiles...",
"noProfiles": "No hay perfiles disponibles",
"noResults": "Ningún perfil coincide con tu búsqueda",
"selectButton": "Seleccionar",
"launching": "Abriendo...",
"chooseProfileTitle": "Elegir perfil",
"openingUrl": "Abriendo URL:",
"urlCopied": "¡URL copiada al portapapeles!",
"selectProfileLabel": "Seleccionar perfil:",
"noneAvailableShort": "No hay perfiles disponibles. Crea un perfil primero.",
"noneAvailableLong": "Cierra este diálogo y crea un perfil desde la ventana principal para empezar.",
"chooseAProfile": "Elige un perfil",
"badgeProxy": "Proxy",
"badgeRunning": "En ejecución",
"badgeUnavailable": "No disponible",
"openButton": "Abrir"
},
"locationProxy": {
"title": "Proxy rápido por ubicación",
"description": "Elige un país por el que enrutar este perfil. Se creará un proxy automáticamente.",
"country": "País",
"selectCountry": "Selecciona un país",
"searchCountry": "Buscar país...",
"noCountriesFound": "No se encontraron países.",
"apply": "Aplicar",
"creating": "Creando proxy...",
"success": "Proxy de ubicación aplicado",
"failed": "Error al aplicar el proxy de ubicación",
"titleCreate": "Crear proxy por ubicación",
"descriptionCreate": "Crea un proxy geolocalizado con una sesión persistente de 24 horas",
"countryLabel": "País (obligatorio)",
"regionLabel": "Región (opcional)",
"cityLabel": "Ciudad (opcional)",
"ispLabel": "ISP (opcional)",
"nameLabel": "Nombre",
"namePlaceholder": "Nombre del proxy",
"loadingCountries": "Cargando países...",
"selectCountryPh": "Selecciona país",
"searchCountries": "Buscar países...",
"loadFailed": "Error al cargar los países",
"selectCountryFirst": "Selecciona primero un país",
"loadingRegions": "Cargando regiones...",
"noRegions": "No hay regiones disponibles",
"selectRegion": "Selecciona región",
"searchRegions": "Buscar regiones...",
"loadingCities": "Cargando ciudades...",
"noCities": "No hay ciudades disponibles",
"selectCity": "Selecciona ciudad",
"searchCities": "Buscar ciudades...",
"loadingIsps": "Cargando ISP...",
"noIsps": "No hay ISP disponibles",
"selectIsp": "Selecciona ISP",
"searchIsps": "Buscar ISP...",
"createSuccess": "Proxy de ubicación creado",
"createFailed": "Error al crear el proxy de ubicación",
"creatingButton": "Creando...",
"createButton": "Crear"
},
"launchOnLogin": {
"title": "¿Activar inicio al iniciar sesión?",
"description": "Ejecutarse en segundo plano ayuda a mantener vivos los proxies y navegadores.",
"declineButton": "No volver a preguntar",
"declining": "...",
"enableButton": "Activar",
"enableSuccess": "Inicio al iniciar sesión activado",
"enableFailed": "Error al activar el inicio al iniciar sesión",
"declineFailed": "Error al guardar la preferencia",
"tryAgain": "Por favor, inténtalo de nuevo"
},
"wayfernTerms": {
"title": "Términos y condiciones de Wayfern",
"description": "Antes de usar Donut Browser, debes leer y aceptar los Términos y Condiciones de Wayfern.",
"reviewLabel": "Por favor, revisa los Términos y Condiciones en:",
"agreeNotice": "Al hacer clic en \"Acepto\", aceptas estos términos.",
"acceptButton": "Acepto",
"acceptSuccess": "Términos aceptados correctamente",
"acceptFailed": "Error al aceptar los términos",
"tryAgain": "Por favor, inténtalo de nuevo"
},
"commercialTrial": {
"title": "Periodo de prueba comercial expirado",
"description": "Tu periodo de prueba comercial de 2 semanas ha terminado.",
"body": "Si usas Donut Browser con fines comerciales, debes adquirir una licencia comercial para continuar. Puedes seguir usándolo de forma personal gratis.",
"understandButton": "Entendido",
"failed": "Error al guardar el reconocimiento",
"tryAgain": "Por favor, inténtalo de nuevo"
},
"permissionDialog": {
"titleMicrophone": "Se requiere acceso al micrófono",
"titleCamera": "Se requiere acceso a la cámara",
"descMicrophone": "Donut Browser necesita acceso a tu micrófono para activar la funcionalidad de micrófono en los navegadores. Cada sitio web que quiera usar tu micrófono te lo pedirá individualmente.",
"descCamera": "Donut Browser necesita acceso a tu cámara para activar la funcionalidad de cámara en los navegadores. Cada sitio web que quiera usar tu cámara te lo pedirá individualmente.",
"grantedMicrophone": "¡Permiso concedido! Los navegadores lanzados desde Donut Browser ya pueden acceder a tu micrófono.",
"grantedCamera": "¡Permiso concedido! Los navegadores lanzados desde Donut Browser ya pueden acceder a tu cámara.",
"notGrantedMicrophone": "Permiso no concedido. Haz clic en el botón para solicitar acceso a tu micrófono.",
"notGrantedCamera": "Permiso no concedido. Haz clic en el botón para solicitar acceso a tu cámara.",
"doneButton": "Hecho",
"cancelButton": "Cancelar",
"grantAccessButton": "Conceder acceso",
"requestSuccessMicrophone": "Acceso al micrófono solicitado",
"requestSuccessCamera": "Acceso a la cámara solicitado",
"requestFailed": "Error al solicitar el permiso",
"stillNotGrantedMicrophone": "El acceso al micrófono aún no se ha concedido. Puede que tengas que habilitarlo manualmente en Configuración del Sistema → Privacidad y Seguridad → Micrófono.",
"stillNotGrantedCamera": "El acceso a la cámara aún no se ha concedido. Puede que tengas que habilitarlo manualmente en Configuración del Sistema → Privacidad y Seguridad → Cámara.",
"grantedToastMicrophone": "Acceso al micrófono concedido",
"grantedToastCamera": "Acceso a la cámara concedido"
},
"traffic": {
"title": "Detalles de tráfico",
"bandwidthOverTime": "Ancho de banda en el tiempo",
"timePeriodPlaceholder": "Periodo",
"last1m": "Último 1 min",
"last5m": "Últimos 5 min",
"last30m": "Últimos 30 min",
"last1h": "Última 1 hora",
"last2h": "Últimas 2 horas",
"last4h": "Últimas 4 horas",
"last1d": "Último día",
"last7d": "Últimos 7 días",
"last30d": "Últimos 30 días",
"allTime": "Todo el tiempo",
"allTimeShort": "todo el tiempo",
"totalSuffix": "total",
"sentLabel": "Enviado ({{period}})",
"receivedLabel": "Recibido ({{period}})",
"requestsLabel": "Solicitudes ({{period}})",
"allTimeTraffic": "Tráfico total:",
"allTimeRequests": "Solicitudes totales:",
"proxyDisclaimer": "Nota: Si usas un proxy, VPN o servicio similar, tu proveedor podría calcular el tráfico de forma diferente debido a la sobrecarga de cifrado y diferencias de protocolo.",
"topByTraffic": "Principales dominios por tráfico ({{period}})",
"topByRequests": "Principales dominios por solicitudes ({{period}})",
"columnDomain": "Dominio",
"columnRequests": "Solicitudes",
"columnSent": "Enviado",
"columnReceived": "Recibido",
"columnTotal": "Tráfico total",
"uniqueIps": "IPs únicas ({{count}})",
"noData": "No hay datos de tráfico disponibles para este perfil.",
"noDataHint": "Los datos de tráfico aparecerán cuando lances el perfil.",
"sentLegend": "Enviado",
"receivedLegend": "Recibido",
"tooltipSent": "↑ Enviado: ",
"tooltipReceived": "↓ Recibido: "
},
"camoufoxDialog": {
"titleView": "Ver configuración de huella - {{name}} ({{browser}})",
"titleConfigure": "Configurar huella - {{name}} ({{browser}})",
"invalidFingerprint": "Configuración de huella inválida",
"invalidFingerprintDescription": "La configuración de huella contiene JSON inválido. Revisa la configuración avanzada.",
"saveFailed": "Error al guardar la configuración",
"unknownError": "Ocurrió un error desconocido"
},
"proxyCheck": {
"unknownLocation": "Desconocido",
"locationToast": "La ubicación de tu proxy es:",
"failed": "Falló la verificación del proxy: {{error}}",
"tooltipChecking": "Comprobando proxy...",
"tooltipIp": "IP: {{ip}}",
"tooltipChecked": "Comprobado {{time}}",
"tooltipFailed": "Fallo {{time}}",
"tooltipFailedTitle": "Falló la verificación del proxy",
"tooltipDefault": "Comprobar validez del proxy"
},
"vpnCheck": {
"valid": "La configuración de VPN \"{{name}}\" es válida",
"invalid": "La configuración de VPN \"{{name}}\" no es válida",
"failed": "Falló la verificación de la VPN: {{error}}",
"tooltipChecking": "Comprobando configuración de VPN...",
"tooltipValid": "Configuración válida",
"tooltipInvalid": "Configuración inválida",
"tooltipChecked": "Comprobado {{time}}",
"tooltipDefault": "Comprobar validez de la configuración de VPN"
},
"profileTable": {
"syncTooltipDisabled": "Sincronización desactivada",
"syncTooltipSyncing": "Sincronizando...",
"syncTooltipSyncedAt": "Sincronizado {{time}}",
"syncTooltipSynced": "Sincronizado",
"syncTooltipWaiting": "Esperando para sincronizar",
"syncTooltipErrorWith": "Error de sincronización: {{error}}",
"syncTooltipError": "Error de sincronización",
"syncTooltipNotSynced": "No sincronizado",
"noTags": "Sin etiquetas",
"syncTooltipCloseToSync": "Cierra el perfil para sincronizar",
"syncTooltipDisabledWithLast": "Sincronización desactivada, última sincronización {{time}}",
"addTagsPlaceholder": "Añadir etiquetas",
"tagsHeader": "Etiquetas",
"noteHeader": "Nota",
"vpnsHeading": "VPN",
"createByCountryHeading": "Crear por país"
},
"releaseTypeSelector": {
"noReleaseTypes": "No hay tipos de versión disponibles.",
"placeholder": "Selecciona el tipo de versión...",
"stable": "Estable",
"nightly": "Nightly",
"downloaded": "Descargado",
"downloadBrowser": "Descargar navegador",
"downloading": "Descargando..."
},
"dataTableActionBar": {
"selected": "{{count}} seleccionados",
"clearSelection": "Limpiar selección"
},
"appUpdate": {
"toast": {
"updateFailed": "Error al actualizar Donut Browser",
"restartFailed": "Error al reiniciar",
"updateReady": "Actualización lista, reinicia para aplicar",
"manualDownloadRequired": "Descarga manual requerida",
"restartNow": "Reiniciar ahora",
"viewRelease": "Ver lanzamiento",
"later": "Más tarde",
"uploading": "Subiendo",
"downloading": "Descargando"
}
},
"browserDownload": {
"toast": {
"fetchVersionsFailed": "Error al obtener las versiones de {{browser}}",
"foundNewVersions": "¡Se encontraron {{count}} nuevas versiones de {{browser}}!",
"totalAvailableVersions": "Total disponible: {{count}} versiones",
"downloadFailed": "Error al descargar {{browser}} {{version}}",
"calculating": "calculando...",
"extractionFailed": "{{browser}} {{version}}: error de extracción",
"extractionFailedDescription": "El archivo dañado fue eliminado. Se volverá a descargar en el próximo intento.",
"extracting": "Extrayendo archivos del navegador... No cierre la aplicación.",
"verifying": "Verificando archivos del navegador...",
"downloadingRolling": "Descargando compilación rolling release..."
}
},
"versionUpdater": {
"toast": {
"alreadyAvailable": "{{browser}} {{version}} ya disponible",
"updatingProfiles": "Actualizando configuraciones de perfil...",
"updateCompleted": "Actualización de {{browser}} completada",
"singleProfileUpdated": "El perfil \"{{name}}\" se ha actualizado a la versión {{version}}. Ya puedes iniciar tus navegadores con la última versión.",
"multipleProfilesUpdated": "Se han actualizado {{count}} perfiles a la versión {{version}}. Ya puedes iniciar tus navegadores con la última versión.",
"versionAvailable": "La versión {{version}} ya está disponible. Los perfiles en ejecución usarán la nueva versión al reiniciarse.",
"autoUpdateFailed": "Error al auto-actualizar {{browser}}",
"updateWithErrors": "Actualización completada con algunos errores",
"updateWithErrorsDescription": "Se encontraron {{newVersions}} nuevas versiones, {{failedUpdates}} navegadores no se pudieron actualizar",
"updateSuccess": "Versiones del navegador actualizadas correctamente",
"updateSuccessDescription": "Se encontraron {{newVersions}} nuevas versiones en {{successfulUpdates}} navegadores. Las descargas automáticas comenzarán pronto.",
"upToDate": "No se encontraron nuevas versiones del navegador",
"upToDateDescription": "Todas las versiones del navegador están actualizadas",
"updateAllFailed": "Error al actualizar las versiones del navegador"
}
},
"profilePassword": {
"set": {
"title": "Establecer Contraseña del Perfil",
"description": "Cifra los datos en disco de {{name}}. Necesitarás esta contraseña cada vez que abras el perfil.",
"button": "Cifrar Perfil"
},
"unlock": {
"title": "Desbloquear Perfil",
"description": "Introduce la contraseña para desbloquear {{name}}.",
"button": "Desbloquear"
},
"change": {
"title": "Cambiar Contraseña del Perfil",
"description": "Vuelve a cifrar {{name}} con una nueva contraseña.",
"button": "Cambiar Contraseña"
},
"remove": {
"title": "Quitar Contraseña del Perfil",
"description": "Descifra los datos en disco de {{name}}. El perfil dejará de estar protegido por contraseña.",
"button": "Quitar Contraseña"
},
"fields": {
"password": "Contraseña",
"currentPassword": "Contraseña actual",
"newPassword": "Nueva contraseña",
"confirm": "Confirmar contraseña"
},
"errors": {
"oldPasswordRequired": "Se requiere la contraseña actual",
"passwordRequired": "Se requiere la contraseña",
"tooShort": "La contraseña debe tener al menos {{min}} caracteres",
"mismatch": "Las contraseñas no coinciden"
},
"toasts": {
"set": "El perfil ahora está protegido por contraseña",
"changed": "Contraseña del perfil cambiada",
"removed": "Contraseña del perfil eliminada"
},
"warnings": {
"forgetWarningTitle": "Importante: esta contraseña no se puede recuperar",
"forgetWarningBody": "Donut Browser no puede restablecer, recuperar ni omitir esta contraseña. Si la olvidas, perderás permanentemente el acceso a los datos de este perfil."
}
},
"backendErrors": {
"incorrectPassword": "Contraseña incorrecta",
"lockedOut": "Demasiados intentos incorrectos. Vuelve a intentar en {{duration}}.",
"lockedOutDuration": {
"seconds": "{{seconds}}s",
"minutes": "{{minutes}} min",
"hours": "{{hours}} h"
},
"profileNotFound": "Perfil no encontrado",
"profileNotProtected": "El perfil no está protegido por contraseña",
"profileAlreadyProtected": "El perfil ya está protegido por contraseña",
"profileRunning": "No se puede realizar esta acción mientras el perfil está en ejecución",
"profileMissingSalt": "Al perfil le falta su sal de cifrado",
"profileLocked": "El perfil está bloqueado. Introduce la contraseña primero.",
"invalidProfileId": "ID de perfil no válido",
"passwordTooShort": "La contraseña debe tener al menos {{min}} caracteres",
"internal": "Algo salió mal: {{detail}}"
}
}