* fix select edit host but not update view (#438) * fix: Checksum issue with chocolatey * fix: Remove homebrew old stuff * Add Korean translation (#439) Co-authored-by: 송준우 <2484@coreit.co.kr> * feat: Automate flatpak * fix: Add imagemagik to electron builder to resolve build error * fix: Build error with runtime repo flag * fix: Flatpak runtime error and install freedesktop ver warning * fix: Flatpak runtime error and install freedesktop ver warning * feat: Re-add homebrew cask and move scripts to backend * fix: No sandbox flag issue * fix: Change name for electron macos cask output * fix: Sandbox error with Linux * fix: Remove comming soon for app stores in readme * Adding Comment at the end of the public_key on the host on deploy (#440) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * -Add New Interface for Credential DB -Add Credential Name as a comment into the server authorized_key file --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * Sudo auto fill password (#441) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * Feature Sudo password auto-fill; * Fix locale json shema; --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * Added Italian Language; (#445) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * Added Italian Language; --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * Auto collapse snippet folders (#448) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * feat: Add collapsable snippets (customizable in user profile) * Translations (#447) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * Added Italian Language; * Fix translations; Removed duplicate keys, synchronised other languages using English as the source, translated added keys, fixed inaccurate translations. --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * Remove PTY-level keepalive (#449) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * Remove PTY-level keepalive to prevent unwanted terminal output; use SSH-level keepalive instead --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * feat: Seperate server stats and tunnel management (improved both UI's) then started initial docker implementation * fix: finalize adding docker to db * feat: Add docker management support (local squash) * Fix RBAC role system bugs and improve UX (#446) * Fix RBAC role system bugs and improve UX - Fix user list dropdown selection in host sharing - Fix role sharing permissions to include role-based access - Fix translation template interpolation for success messages - Standardize system roles to admin and user only - Auto-assign user role to new registrations - Remove blocking confirmation dialogs in modal contexts - Add missing i18n keys for common actions - Fix button type to prevent unintended form submissions * Enhance RBAC system with UI improvements and security fixes - Move role assignment to Users tab with per-user role management - Protect system roles (admin/user) from editing and manual assignment - Simplify permission system: remove Use level, keep View and Manage - Hide Update button and Sharing tab for view-only/shared hosts - Prevent users from sharing hosts with themselves - Unify table and modal styling across admin panels - Auto-assign system roles on user registration - Add permission metadata to host interface * Add empty state message for role assignment - Display helpful message when no custom roles available - Clarify that system roles are auto-assigned - Add noCustomRolesToAssign translation in English and Chinese * fix: Prevent credential sharing errors for shared hosts - Skip credential resolution for shared hosts with credential authentication to prevent decryption errors (credentials are encrypted per-user) - Add warning alert in sharing tab when host uses credential authentication - Inform users that shared users cannot connect to credential-based hosts - Add translations for credential sharing warning (EN/ZH) This prevents authentication failures when sharing hosts configured with credential authentication while maintaining security by keeping credentials isolated per user. * feat: Improve rbac UI and fixes some bugs --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> Co-authored-by: LukeGus <bugattiguy527@gmail.com> * SOCKS5 support (#452) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * SOCKS5 support Adding single and chain socks5 proxy support * fix: cleanup files --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> Co-authored-by: LukeGus <bugattiguy527@gmail.com> * Notes and Expiry fields add (#453) * Add termix.rb Cask file * Update Termix to version 1.9.0 with new checksum * Update README to remove 'coming soon' notes * Notes and Expiry add * fix: cleanup files --------- Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> Co-authored-by: LukeGus <bugattiguy527@gmail.com> * fix: ssh host types * fix: sudo incorrect styling and remove expiration date * feat: add sudo password and add diagonal bg's * fix: snippet running on enter key * fix: base64 decoding * fix: improve server stats / rbac * fix: wrap ssh host json export in hosts array * feat: auto trim host inputs, fix file manager jump hosts, dashboard prevent duplicates, file manager terminal not size updating, improve left sidebar sorting, hide/show tags, add apperance user profile tab, add new host manager tabs. * feat: improve terminal connection speed * fix: sqlite constriant errors and support non-root user (nginx perm issue) * feat: add beta syntax highlighing to terminal * feat: update imports and improve admin settings user management * chore: update translations * chore: update translations * feat: Complete light mode implementation with semantic theme system (#450) - Add comprehensive light/dark mode CSS variables with semantic naming - Implement theme-aware scrollbars using CSS variables - Add light mode backgrounds: --bg-base, --bg-elevated, --bg-surface, etc. - Add theme-aware borders: --border-base, --border-panel, --border-subtle - Add semantic text colors: --foreground-secondary, --foreground-subtle - Convert oklch colors to hex for better compatibility - Add theme awareness to CodeMirror editors - Update dark mode colors for consistency (background, sidebar, card, muted, input) - Add Tailwind color mappings for semantic classes Co-authored-by: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> * fix: syntax errors * chore: updating/match themes and split admin settings * feat: add translation workflow and remove old translation.json * fix: translation workflow error * fix: translation workflow error * feat: improve translation system and update workflow * fix: wrong path for translations * fix: change translation to flat files * fix: gh rule error * chore: auto-translate to multiple languages (#458) * chore: improve organization and made a few styling changes in host manager * feat: improve terminal stability and split out the host manager * fix: add unnversiioned files * chore: migrate all to use the new theme system * fix: wrong animation line colors * fix: rbac implementation general issues (local squash) * fix: remove unneeded files * feat: add 10 new langs * chore: update gitnore * chore: auto-translate to multiple languages (#459) * fix: improve tunnel system * fix: properly split tabs, still need to fix up the host manager * chore: cleanup files (possible RC) * feat: add norwegian * chore: auto-translate to multiple languages (#461) * fix: small qol fixes and began readme update * fix: run cleanup script * feat: add docker docs button * feat: general bug fixes and readme updates * fix: translations * chore: auto-translate to multiple languages (#462) * fix: cleanup files * fix: test new translation issue and add better server-stats support * fix: fix translate error * chore: auto-translate to multiple languages (#463) * fix: fix translate mismatching text * chore: auto-translate to multiple languages (#465) * fix: fix translate mismatching text * fix: fix translate mismatching text * chore: auto-translate to multiple languages (#466) * fix: fix translate mismatching text * fix: fix translate mismatching text * fix: fix translate mismatching text * chore: auto-translate to multiple languages (#467) * fix: fix translate mismatching text * chore: auto-translate to multiple languages (#468) * feat: add to readme, a few qol changes, and improve server stats in general * chore: auto-translate to multiple languages (#469) * feat: turned disk uage into graph and fixed issue with termina console * fix: electron build error and hide icons when shared * chore: run clean * fix: general server stats issues, file manager decoding, ui qol * fix: add dashboard line breaks * fix: docker console error * fix: docker console not loading and mismatched stripped background for electron * fix: docker console not loading * chore: docker console not loading in docker * chore: translate readme to chinese * chore: match package lock to package json * chore: nginx config issue for dokcer console * chore: auto-translate to multiple languages (#470) --------- Co-authored-by: Tran Trung Kien <kientt13.7@gmail.com> Co-authored-by: junu <bigdwarf_@naver.com> Co-authored-by: 송준우 <2484@coreit.co.kr> Co-authored-by: SlimGary <trash.slim@gmail.com> Co-authored-by: Nunzio Marfè <nunzio.marfe@protonmail.com> Co-authored-by: Wesley Reid <starhound@lostsouls.org> Co-authored-by: ZacharyZcR <zacharyzcr1984@gmail.com> Co-authored-by: Denis <38875137+Medvedinca@users.noreply.github.com> Co-authored-by: Peet McKinney <68706879+PeetMcK@users.noreply.github.com>
2402 lines
133 KiB
JSON
2402 lines
133 KiB
JSON
{
|
||
"credentials": {
|
||
"credentialsViewer": "Visor de credenciales",
|
||
"manageYourSSHCredentials": "Administre sus credenciales SSH de forma segura",
|
||
"addCredential": "Agregar credencial",
|
||
"createCredential": "Crear credencial",
|
||
"editCredential": "Editar Credencial",
|
||
"viewCredential": "Ver Credencial",
|
||
"duplicateCredential": "Credencial duplicada",
|
||
"deleteCredential": "Eliminar credencial",
|
||
"updateCredential": "Actualizar Credencial",
|
||
"credentialName": "Nombre de la credencial",
|
||
"credentialDescription": "Descripción",
|
||
"username": "Nombre de usuario",
|
||
"searchCredentials": "Buscar credenciales...",
|
||
"selectFolder": "Seleccionar carpeta",
|
||
"selectAuthType": "Seleccionar tipo de autorización",
|
||
"allFolders": "Todas las carpetas",
|
||
"allAuthTypes": "Todos los tipos de autenticación",
|
||
"uncategorized": "Sin categorizar",
|
||
"totalCredentials": "Total",
|
||
"keyBased": "Basado en claves",
|
||
"passwordBased": "Basado en contraseña",
|
||
"folders": "Carpetas",
|
||
"noCredentialsMatchFilters": "No hay credenciales que coincidan con tus filtros",
|
||
"noCredentialsYet": "Aún no se han creado credenciales",
|
||
"createFirstCredential": "Crea tu primera credencial",
|
||
"failedToFetchCredentials": "No se pudieron obtener las credenciales",
|
||
"credentialDeletedSuccessfully": "Credencial eliminada exitosamente",
|
||
"failedToDeleteCredential": "No se pudo eliminar la credencial",
|
||
"confirmDeleteCredential": "¿Está seguro de que desea eliminar la credencial \"{{name}}\"?",
|
||
"credentialCreatedSuccessfully": "Credencial creada exitosamente",
|
||
"credentialUpdatedSuccessfully": "Credencial actualizada exitosamente",
|
||
"failedToSaveCredential": "No se pudieron guardar las credenciales",
|
||
"failedToFetchCredentialDetails": "No se pudieron obtener los detalles de las credenciales",
|
||
"failedToFetchHostsUsing": "No se pudieron obtener los hosts que usan esta credencial",
|
||
"loadingCredentials": "Cargando credenciales...",
|
||
"retry": "Rever",
|
||
"noCredentials": "Sin credenciales",
|
||
"noCredentialsMessage": "Aún no has añadido ninguna credencial. Haz clic en \"Añadir credencial\" para empezar.",
|
||
"sshCredentials": "Credenciales SSH",
|
||
"credentialsCount": "{{count}} credenciales",
|
||
"refresh": "Refrescar",
|
||
"passwordRequired": "Se requiere contraseña",
|
||
"sshKeyRequired": "Se requiere clave SSH",
|
||
"credentialAddedSuccessfully": "Credencial \"{{name}}\" agregada exitosamente",
|
||
"general": "General",
|
||
"description": "Descripción",
|
||
"folder": "Carpeta",
|
||
"tags": "Etiquetas",
|
||
"addTagsSpaceToAdd": "Agregar etiquetas (presione espacio para agregar)",
|
||
"password": "Contraseña",
|
||
"key": "Llave",
|
||
"sshPrivateKey": "Clave privada SSH",
|
||
"upload": "Subir",
|
||
"updateKey": "Actualizar clave",
|
||
"keyPassword": "Contraseña de clave",
|
||
"keyType": "Tipo de clave",
|
||
"keyTypeRSA": "RSA",
|
||
"keyTypeECDSA": "ECDSA",
|
||
"keyTypeEd25519": "Ed25519",
|
||
"basicInfo": "Información básica",
|
||
"authentication": "Autenticación",
|
||
"organization": "Organización",
|
||
"basicInformation": "Información básica",
|
||
"basicInformationDescription": "Ingrese la información básica para esta credencial",
|
||
"authenticationMethod": "Método de autenticación",
|
||
"authenticationMethodDescription": "Elija cómo desea autenticarse con los servidores SSH",
|
||
"organizationDescription": "Organiza tus credenciales con carpetas y etiquetas",
|
||
"enterCredentialName": "Ingrese el nombre de la credencial",
|
||
"enterCredentialDescription": "Introducir descripción (opcional)",
|
||
"enterUsername": "Introducir nombre de usuario",
|
||
"nameIsRequired": "Se requiere el nombre de la credencial",
|
||
"usernameIsRequired": "El nombre de usuario es obligatorio",
|
||
"authenticationType": "Tipo de autenticación",
|
||
"passwordAuthDescription": "Utilice la autenticación de contraseña",
|
||
"sshKeyAuthDescription": "Utilice la autenticación de clave SSH",
|
||
"passwordIsRequired": "Se requiere contraseña",
|
||
"sshKeyIsRequired": "Se requiere clave SSH",
|
||
"sshKeyType": "Tipo de clave SSH",
|
||
"privateKey": "Clave privada",
|
||
"enterPassword": "Introducir contraseña",
|
||
"enterPrivateKey": "Introduzca la clave privada",
|
||
"keyPassphrase": "Frase de contraseña clave",
|
||
"enterKeyPassphrase": "Ingrese la contraseña de la clave (opcional)",
|
||
"keyPassphraseOptional": "Opcional: déjelo vacío si su clave no tiene contraseña",
|
||
"leaveEmptyToKeepCurrent": "Déjelo vacío para mantener el valor actual",
|
||
"uploadKeyFile": "Subir archivo de clave",
|
||
"generateKeyPairButton": "Generar par de claves",
|
||
"generateKeyPair": "Generar par de claves",
|
||
"generateKeyPairDescription": "Genere un nuevo par de claves SSH. Si desea proteger la clave con una frase de contraseña, introdúzcala primero en el campo \"Contraseña de clave\" que aparece a continuación.",
|
||
"deploySSHKey": "Implementar clave SSH",
|
||
"deploySSHKeyDescription": "Implementar la clave pública en el servidor de destino",
|
||
"sourceCredential": "Credencial de origen",
|
||
"targetHost": "Host objetivo",
|
||
"deploymentProcess": "Proceso de implementación",
|
||
"deploymentProcessDescription": "Esto añadirá de forma segura la clave pública al archivo ~/.ssh/authorized_keys del host de destino sin sobrescribir las claves existentes. La operación es reversible.",
|
||
"chooseHostToDeploy": "Elija un host para implementar...",
|
||
"deploying": "Implementando...",
|
||
"name": "Nombre",
|
||
"noHostsAvailable": "No hay anfitriones disponibles",
|
||
"noHostsMatchSearch": "No hay hosts que coincidan con tu búsqueda",
|
||
"sshKeyGenerationNotImplemented": "Próximamente, función de generación de claves SSH",
|
||
"connectionTestingNotImplemented": "Próximamente, función de prueba de conexión",
|
||
"testConnection": "Conexión de prueba",
|
||
"selectOrCreateFolder": "Seleccionar o crear carpeta",
|
||
"noFolder": "Sin carpeta",
|
||
"orCreateNewFolder": "O crear una nueva carpeta",
|
||
"addTag": "Añadir etiqueta",
|
||
"saving": "Ahorro...",
|
||
"credentialId": "Identificación de credencial",
|
||
"overview": "Descripción general",
|
||
"security": "Seguridad",
|
||
"usage": "Uso",
|
||
"securityDetails": "Detalles de seguridad",
|
||
"securityDetailsDescription": "Ver información de credenciales cifradas",
|
||
"credentialSecured": "Credencial asegurada",
|
||
"credentialSecuredDescription": "Todos los datos confidenciales están encriptados con AES-256",
|
||
"passwordAuthentication": "Autenticación de contraseña",
|
||
"keyAuthentication": "Autenticación de clave",
|
||
"securityReminder": "Recordatorio de seguridad",
|
||
"securityReminderText": "Nunca compartas tus credenciales. Todos los datos están cifrados en reposo.",
|
||
"hostsUsingCredential": "Hosts que utilizan esta credencial",
|
||
"noHostsUsingCredential": "Ningún host está usando esta credencial actualmente",
|
||
"timesUsed": "Veces utilizadas",
|
||
"lastUsed": "Último uso",
|
||
"connectedHosts": "Hosts conectados",
|
||
"created": "Creado",
|
||
"lastModified": "Última modificación",
|
||
"usageStatistics": "Estadísticas de uso",
|
||
"copiedToClipboard": "{{field}} copiado al portapapeles",
|
||
"failedToCopy": "No se pudo copiar al portapapeles",
|
||
"sshKey": "Clave SSH",
|
||
"createCredentialDescription": "Cree una nueva credencial SSH para acceso seguro",
|
||
"editCredentialDescription": "Actualizar la información de las credenciales",
|
||
"listView": "Lista",
|
||
"folderView": "Carpetas",
|
||
"unknownCredential": "Desconocido",
|
||
"confirmRemoveFromFolder": "¿Seguro que desea eliminar \"{{name}}\" de la carpeta \"{{folder}}\"? La credencial se moverá a \"Sin categoría\".",
|
||
"removedFromFolder": "Credencial \"{{name}}\" eliminada de la carpeta correctamente",
|
||
"failedToRemoveFromFolder": "No se pudo eliminar la credencial de la carpeta",
|
||
"folderRenamed": "La carpeta \"{{oldName}}\" se renombró a \"{{newName}}\" correctamente",
|
||
"failedToRenameFolder": "No se pudo cambiar el nombre de la carpeta",
|
||
"movedToFolder": "La credencial \"{{name}}\" se movió a \"{{folder}}\" correctamente",
|
||
"failedToMoveToFolder": "No se pudieron mover las credenciales a la carpeta",
|
||
"sshPublicKey": "Clave pública SSH",
|
||
"publicKeyNote": "La clave pública es opcional pero se recomienda para la validación de clave",
|
||
"publicKeyUploaded": "Clave pública cargada",
|
||
"uploadPublicKey": "Subir clave pública",
|
||
"uploadPrivateKeyFile": "Subir archivo de clave privada",
|
||
"uploadPublicKeyFile": "Subir archivo de clave pública",
|
||
"privateKeyRequiredForGeneration": "Se requiere una clave privada para generar una clave pública",
|
||
"failedToGeneratePublicKey": "No se pudo generar la clave pública",
|
||
"generatePublicKey": "Generar a partir de clave privada",
|
||
"publicKeyGeneratedSuccessfully": "Clave pública generada exitosamente",
|
||
"detectedKeyType": "Tipo de clave detectado",
|
||
"detectingKeyType": "detector...",
|
||
"optional": "Opcional",
|
||
"generateKeyPairNew": "Generar nuevo par de claves",
|
||
"generateEd25519": "Generar Ed25519",
|
||
"generateECDSA": "Generar ECDSA",
|
||
"generateRSA": "Generar RSA",
|
||
"keyTypeEcdsaP256": "ECDSA P-256 (SSH)",
|
||
"keyTypeEcdsaP384": "ECDSA P-384 (SSH)",
|
||
"keyTypeEcdsaP521": "ECDSA P-521 (SSH)",
|
||
"keyTypeDsa": "DSA (SSH)",
|
||
"keyTypeRsaSha256": "RSA-SHA2-256",
|
||
"keyTypeRsaSha512": "RSA-SHA2-512",
|
||
"keyPairGeneratedSuccessfully": "{{keyType}} par de claves generado correctamente",
|
||
"failedToGenerateKeyPair": "No se pudo generar el par de claves",
|
||
"generateKeyPairNote": "Generar un nuevo par de claves SSH directamente. Esto reemplazará cualquier clave existente en el formulario.",
|
||
"invalidKey": "Clave inválida",
|
||
"detectionError": "Error de detección",
|
||
"removing": "Eliminando:",
|
||
"clickToEditCredential": "Haga clic para editar la credencial",
|
||
"dragToMoveBetweenFolders": "Arrastre para moverse entre carpetas",
|
||
"keyBasedOnlyForDeployment": "Solo se pueden implementar credenciales basadas en claves SSH",
|
||
"publicKeyRequiredForDeployment": "Se requiere una clave pública para la implementación",
|
||
"selectTargetHost": "Por favor seleccione un host de destino",
|
||
"keyDeployedSuccessfully": "Clave SSH implementada exitosamente",
|
||
"deploymentFailed": "La implementación falló",
|
||
"failedToDeployKey": "No se pudo implementar la clave SSH",
|
||
"clickToRenameFolder": "Haga clic para cambiar el nombre de la carpeta",
|
||
"renameFolder": "Cambiar el nombre de la carpeta",
|
||
"idLabel": "IDENTIFICACIÓN:"
|
||
},
|
||
"dragIndicator": {
|
||
"error": "Error: {{error}}",
|
||
"dragging": "Arrastrando {{fileName}}",
|
||
"preparing": "Preparando {{fileName}}",
|
||
"readySingle": "Listo para descargar {{fileName}}",
|
||
"readyMultiple": "Listo para descargar {{count}} archivos",
|
||
"batchDrag": "Arrastre {{count}} archivos al escritorio",
|
||
"dragToDesktop": "Arrastrar al escritorio",
|
||
"canDragAnywhere": "Puedes arrastrar archivos a cualquier lugar de tu escritorio"
|
||
},
|
||
"sshTools": {
|
||
"title": "Herramientas SSH",
|
||
"closeTools": "Cerrar herramientas SSH",
|
||
"keyRecording": "Grabación de claves",
|
||
"startKeyRecording": "Iniciar grabación de claves",
|
||
"stopKeyRecording": "Detener la grabación de teclas",
|
||
"selectTerminals": "Seleccionar terminales:",
|
||
"typeCommands": "Escriba comandos (todas las teclas compatibles):",
|
||
"commandsWillBeSent": "Los comandos se enviarán a {{count}} terminales seleccionados.",
|
||
"settings": "Ajustes",
|
||
"enableRightClickCopyPaste": "Habilitar copiar y pegar con clic derecho",
|
||
"shareIdeas": "¿Tienes ideas sobre el futuro de las herramientas SSH? Compártelas en",
|
||
"scripts": {
|
||
"inputPlaceholder": "p. ej., comandos del sistema, scripts de Docker"
|
||
}
|
||
},
|
||
"snippets": {
|
||
"title": "Fragmentos",
|
||
"new": "Nuevo fragmento",
|
||
"create": "Crear fragmento",
|
||
"edit": "Editar fragmento",
|
||
"run": "Correr",
|
||
"empty": "Aún no hay fragmentos",
|
||
"emptyHint": "Crea un fragmento para guardar los comandos más utilizados",
|
||
"searchSnippets": "Buscar fragmentos...",
|
||
"name": "Nombre",
|
||
"description": "Descripción",
|
||
"content": "Dominio",
|
||
"namePlaceholder": "p. ej., reiniciar Nginx",
|
||
"descriptionPlaceholder": "Descripción opcional",
|
||
"contentPlaceholder": "p. ej., sudo systemctl restart nginx",
|
||
"nameRequired": "El nombre es obligatorio",
|
||
"contentRequired": "Se requiere comando",
|
||
"createDescription": "Crea un nuevo fragmento de comando para una ejecución rápida",
|
||
"editDescription": "Editar este fragmento de comando",
|
||
"deleteConfirmTitle": "Eliminar fragmento",
|
||
"deleteConfirmDescription": "¿Estás seguro de que deseas eliminar \"{{name}}\"?",
|
||
"createSuccess": "Fragmento creado exitosamente",
|
||
"updateSuccess": "Fragmento actualizado correctamente",
|
||
"deleteSuccess": "Fragmento eliminado correctamente",
|
||
"createFailed": "No se pudo crear el fragmento",
|
||
"updateFailed": "No se pudo actualizar el fragmento",
|
||
"deleteFailed": "No se pudo eliminar el fragmento",
|
||
"failedToFetch": "No se pudieron obtener los fragmentos",
|
||
"executeSuccess": "Ejecutando: {{name}}",
|
||
"copySuccess": "Copiado \"{{name}}\" al portapapeles",
|
||
"runTooltip": "Ejecute este fragmento en la terminal",
|
||
"copyTooltip": "Copiar fragmento al portapapeles",
|
||
"editTooltip": "Editar este fragmento",
|
||
"deleteTooltip": "Eliminar este fragmento",
|
||
"newFolder": "Nueva carpeta",
|
||
"reorderSameFolder": "Solo se pueden reordenar fragmentos dentro de la misma carpeta",
|
||
"reorderSuccess": "Fragmentos reordenados correctamente",
|
||
"reorderFailed": "No se pudieron reordenar los fragmentos",
|
||
"deleteFolderConfirm": "¿Eliminar la carpeta \"{{name}}\"? Todos los fragmentos se moverán a Sin categoría.",
|
||
"deleteFolderSuccess": "Carpeta eliminada exitosamente",
|
||
"deleteFolderFailed": "No se pudo eliminar la carpeta",
|
||
"updateFolderSuccess": "Carpeta actualizada exitosamente",
|
||
"createFolderSuccess": "Carpeta creada exitosamente",
|
||
"updateFolderFailed": "No se pudo actualizar la carpeta",
|
||
"createFolderFailed": "No se pudo crear la carpeta",
|
||
"selectTerminals": "Seleccionar terminales (opcional)",
|
||
"executeOnSelected": "Ejecutar en {{count}} terminal(es) seleccionada(s)",
|
||
"executeOnCurrent": "Ejecutar en la terminal actual (haga clic para seleccionar varios)",
|
||
"folder": "Carpeta",
|
||
"selectFolder": "Seleccione una carpeta o déjela vacía",
|
||
"noFolder": "Sin carpeta (Sin categoría)",
|
||
"folderName": "Nombre de la carpeta",
|
||
"folderNameRequired": "El nombre de la carpeta es obligatorio",
|
||
"folderColor": "Color de la carpeta",
|
||
"folderIcon": "Icono de carpeta",
|
||
"preview": "Avance",
|
||
"updateFolder": "Actualizar carpeta",
|
||
"createFolder": "Crear carpeta",
|
||
"editFolder": "Editar carpeta",
|
||
"editFolderDescription": "Personaliza tu carpeta de fragmentos",
|
||
"createFolderDescription": "Organiza tus fragmentos en carpetas"
|
||
},
|
||
"commandHistory": {
|
||
"title": "Historia",
|
||
"searchPlaceholder": "Comandos de búsqueda...",
|
||
"noTerminal": "No hay terminal activo",
|
||
"noTerminalHint": "Abra una terminal para ver su historial de comandos.",
|
||
"empty": "Aún no hay historial de comandos",
|
||
"emptyHint": "Ejecutar comandos en la terminal activa para construir su historial.",
|
||
"noResults": "No se encontraron comandos",
|
||
"noResultsHint": "No hay comandos que coincidan con \"{{query}}\"",
|
||
"deleteSuccess": "Comando eliminado del historial",
|
||
"deleteFailed": "No se pudo eliminar el comando.",
|
||
"deleteTooltip": "Comando de eliminación",
|
||
"tabHint": "Utilice la tecla Tab en la Terminal para autocompletar desde el historial de comandos si está habilitado en el Perfil de usuario",
|
||
"authRequiredRefresh": "Se requiere autenticación. Actualice la página.",
|
||
"dataAccessLockedReauth": "Acceso a datos bloqueado. Por favor, vuelva a autenticarse.",
|
||
"loading": "Cargando historial de comandos...",
|
||
"error": "Error al cargar el historial"
|
||
},
|
||
"splitScreen": {
|
||
"title": "Pantalla dividida",
|
||
"none": "Ninguno",
|
||
"twoSplit": "2 vías",
|
||
"threeSplit": "3 vías",
|
||
"fourSplit": "4 vías",
|
||
"availableTabs": "Pestañas disponibles",
|
||
"dragTabsHint": "Arrastre las pestañas a las celdas de diseño a continuación para asignarlas",
|
||
"layout": "Diseño de pantalla dividida",
|
||
"dropHere": "Suelta la pestaña aquí",
|
||
"apply": "Aplicar división",
|
||
"clear": "División clara",
|
||
"selectMode": "Seleccionar un modo de pantalla dividida",
|
||
"helpText": "Elige cuántas pestañas quieres ver a la vez",
|
||
"success": "Pantalla dividida aplicada exitosamente",
|
||
"cleared": "Pantalla dividida borrada",
|
||
"error": {
|
||
"noAssignments": "Asigne al menos una pestaña al diseño",
|
||
"fillAllSlots": "Por favor, rellene todos los {{count}} espacios antes de aplicar"
|
||
}
|
||
},
|
||
"homepage": {
|
||
"loggedInTitle": "¡Has iniciado sesión!",
|
||
"loggedInMessage": "¡Has iniciado sesión! Usa la barra lateral para acceder a todas las herramientas disponibles. Para empezar, crea un host SSH en la pestaña Administrador SSH. Una vez creado, puedes conectarte a ese host usando las demás aplicaciones de la barra lateral.",
|
||
"failedToLoadAlerts": "No se pudieron cargar las alertas",
|
||
"failedToDismissAlert": "No se pudo descartar la alerta"
|
||
},
|
||
"serverConfig": {
|
||
"title": "Configuración del servidor",
|
||
"description": "Configure la URL del servidor Termix para conectarse a sus servicios backend",
|
||
"serverUrl": "URL del servidor",
|
||
"enterServerUrl": "Por favor, introduzca la URL de un servidor",
|
||
"testConnectionFirst": "Por favor, pruebe la conexión primero",
|
||
"connectionSuccess": "¡Conexión exitosa!",
|
||
"connectionFailed": "La conexión falló",
|
||
"connectionError": "Se produjo un error de conexión",
|
||
"connected": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"configSaved": "Configuración guardada exitosamente",
|
||
"saveFailed": "No se pudo guardar la configuración",
|
||
"saveError": "Error al guardar la configuración",
|
||
"saving": "Ahorro...",
|
||
"saveConfig": "Guardar configuración",
|
||
"helpText": "Ingrese la URL donde se ejecuta su servidor Termix (por ejemplo, http://localhost:30001 o https://your-server.com)",
|
||
"warning": "Advertencia",
|
||
"notValidatedWarning": "URL no validada: asegúrese de que sea correcta",
|
||
"changeServer": "Cambiar servidor",
|
||
"mustIncludeProtocol": "La URL del servidor debe comenzar con http:// o https://"
|
||
},
|
||
"versionCheck": {
|
||
"error": "Error de comprobación de versión",
|
||
"checkFailed": "No se pudieron buscar actualizaciones",
|
||
"upToDate": "La aplicación está actualizada",
|
||
"currentVersion": "Estás ejecutando la versión {{version}}",
|
||
"updateAvailable": "Actualización disponible",
|
||
"newVersionAvailable": "¡Hay una nueva versión disponible! Estás usando {{current}}, pero {{latest}} está disponible.",
|
||
"releasedOn": "Publicado el {{date}}",
|
||
"downloadUpdate": "Descargar actualización",
|
||
"dismiss": "Despedir",
|
||
"checking": "Buscando actualizaciones...",
|
||
"checkUpdates": "Buscar actualizaciones",
|
||
"checkingUpdates": "Buscando actualizaciones...",
|
||
"refresh": "Refrescar",
|
||
"updateRequired": "Actualización requerida",
|
||
"updateDismissed": "Notificación de actualización descartada",
|
||
"noUpdatesFound": "No se encontraron actualizaciones"
|
||
},
|
||
"common": {
|
||
"close": "Cerca",
|
||
"minimize": "Minimizar",
|
||
"online": "En línea",
|
||
"offline": "Desconectado",
|
||
"continue": "Continuar",
|
||
"maintenance": "Mantenimiento",
|
||
"degraded": "Degradado",
|
||
"discord": "Discordia",
|
||
"error": "Error",
|
||
"warning": "Advertencia",
|
||
"info": "Información",
|
||
"success": "Éxito",
|
||
"loading": "Cargando...",
|
||
"required": "Requerido",
|
||
"optional": "Opcional",
|
||
"connect": "Conectar",
|
||
"connecting": "Conectando...",
|
||
"creating": "Creando...",
|
||
"clear": "Claro",
|
||
"toggleSidebar": "Activar o desactivar la barra lateral",
|
||
"sidebar": "Barra lateral",
|
||
"home": "Hogar",
|
||
"expired": "Venció",
|
||
"expiresToday": "Caduca hoy",
|
||
"expiresTomorrow": "Caduca en {{days}} días",
|
||
"updateAvailable": "Actualización disponible",
|
||
"sshPath": "Ruta SSH",
|
||
"localPath": "Ruta local",
|
||
"appName": "Termix",
|
||
"resetSidebarWidth": "Restablecer el ancho de la barra lateral",
|
||
"dragToResizeSidebar": "Arrastre para cambiar el tamaño de la barra lateral",
|
||
"noAuthCredentials": "No hay credenciales de autenticación disponibles para este host SSH",
|
||
"noReleases": "Sin lanzamientos",
|
||
"updatesAndReleases": "Actualizaciones y lanzamientos",
|
||
"newVersionAvailable": "Hay una nueva versión ({{version}}) disponible.",
|
||
"failedToFetchUpdateInfo": "No se pudo obtener la información de actualización",
|
||
"preRelease": "Prelanzamiento",
|
||
"loginFailed": "error de inicio de sesion",
|
||
"noReleasesFound": "No se encontraron lanzamientos.",
|
||
"yourBackupCodes": "Sus códigos de respaldo",
|
||
"sendResetCode": "Enviar código de reinicio",
|
||
"verifyCode": "Código de verificación",
|
||
"resetPassword": "Restablecer contraseña",
|
||
"resetCode": "Código de reinicio",
|
||
"newPassword": "Nueva contraseña",
|
||
"folder": "Carpeta",
|
||
"file": "Archivo",
|
||
"renamedSuccessfully": "renombrado exitosamente",
|
||
"deletedSuccessfully": "eliminado exitosamente",
|
||
"noTunnelConnections": "No hay conexiones de túnel configuradas",
|
||
"sshTools": "Herramientas SSH",
|
||
"english": "Inglés",
|
||
"chinese": "Chino",
|
||
"german": "Alemán",
|
||
"cancel": "Cancelar",
|
||
"username": "Nombre de usuario",
|
||
"name": "Nombre",
|
||
"login": "Acceso",
|
||
"logout": "Cerrar sesión",
|
||
"register": "Registro",
|
||
"password": "Contraseña",
|
||
"version": "Versión",
|
||
"confirmPassword": "confirmar Contraseña",
|
||
"back": "Atrás",
|
||
"email": "Correo electrónico",
|
||
"submit": "Entregar",
|
||
"change": "Cambiar",
|
||
"save": "Ahorrar",
|
||
"saving": "Ahorro...",
|
||
"delete": "Borrar",
|
||
"edit": "Editar",
|
||
"add": "Agregar",
|
||
"search": "Buscar",
|
||
"confirm": "Confirmar",
|
||
"yes": "Sí",
|
||
"no": "No",
|
||
"ok": "DE ACUERDO",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"important": "Importante",
|
||
"notEnabled": "No habilitado",
|
||
"settingUp": "Configurando...",
|
||
"next": "Próximo",
|
||
"previous": "Anterior",
|
||
"refresh": "Refrescar",
|
||
"settings": "Ajustes",
|
||
"profile": "Perfil",
|
||
"help": "Ayuda",
|
||
"about": "Acerca de",
|
||
"language": "Idioma",
|
||
"autoDetect": "Detección automática",
|
||
"changeAccountPassword": "Cambiar la contraseña de su cuenta",
|
||
"passwordResetTitle": "Restablecer contraseña",
|
||
"passwordResetDescription": "Estás a punto de restablecer tu contraseña. Esto cerrará tu sesión activa.",
|
||
"enterSixDigitCode": "Ingrese el código de 6 dígitos de los registros del contenedor Docker para el usuario:",
|
||
"enterNewPassword": "Ingrese su nueva contraseña para el usuario:",
|
||
"passwordsDoNotMatch": "Las contraseñas no coinciden",
|
||
"passwordMinLength": "La contraseña debe tener al menos 6 caracteres.",
|
||
"passwordResetSuccess": "¡Contraseña restablecida correctamente! Ya puedes iniciar sesión con tu nueva contraseña.",
|
||
"failedToInitiatePasswordReset": "No se pudo iniciar el restablecimiento de contraseña",
|
||
"failedToVerifyResetCode": "No se pudo verificar el código de restablecimiento",
|
||
"failedToCompletePasswordReset": "No se pudo completar el restablecimiento de contraseña",
|
||
"documentation": "Documentación",
|
||
"retry": "Rever",
|
||
"checking": "De cheques...",
|
||
"checkingDatabase": "Comprobando la conexión a la base de datos...",
|
||
"actions": "Comportamiento",
|
||
"remove": "Eliminar",
|
||
"revoke": "Revocar",
|
||
"create": "Crear"
|
||
},
|
||
"nav": {
|
||
"home": "Hogar",
|
||
"hosts": "Anfitriones",
|
||
"credentials": "Cartas credenciales",
|
||
"terminal": "Terminal",
|
||
"docker": "Estibador",
|
||
"tunnels": "Túneles",
|
||
"fileManager": "Gestor de archivos",
|
||
"serverStats": "Estadísticas del servidor",
|
||
"admin": "Administración",
|
||
"userProfile": "Perfil de usuario",
|
||
"tools": "Herramientas",
|
||
"snippets": "Fragmentos",
|
||
"newTab": "Nueva pestaña",
|
||
"splitScreen": "Pantalla dividida",
|
||
"closeTab": "Cerrar pestaña",
|
||
"sshManager": "Administrador de SSH",
|
||
"hostManager": "Administrador de host",
|
||
"cannotSplitTab": "No se puede dividir esta pestaña",
|
||
"tabNavigation": "Navegación por pestañas",
|
||
"hostTabTitle": "{{username}}@{{ip}}:{{port}}"
|
||
},
|
||
"admin": {
|
||
"title": "Configuración de administrador",
|
||
"oidc": "OIDC",
|
||
"users": "Usuarios",
|
||
"userManagement": "Gestión de usuarios",
|
||
"makeAdmin": "Hacer administrador",
|
||
"removeAdmin": "Eliminar administrador",
|
||
"deleteUser": "¿Eliminar el usuario {{username}}? No se puede deshacer.",
|
||
"allowRegistration": "Permitir registro",
|
||
"oidcSettings": "Configuración de OIDC",
|
||
"clientId": "ID de cliente",
|
||
"clientSecret": "Secreto del cliente",
|
||
"issuerUrl": "URL del emisor",
|
||
"authorizationUrl": "URL de autorización",
|
||
"tokenUrl": "URL del token",
|
||
"updateSettings": "Actualizar configuración",
|
||
"confirmDelete": "¿Estás seguro que deseas eliminar este usuario?",
|
||
"confirmMakeAdmin": "¿Estás seguro de que deseas convertir a {{username}} en administrador?",
|
||
"confirmRemoveAdmin": "¿Estás seguro de que deseas eliminar el estado de administrador de {{username}}?",
|
||
"externalAuthentication": "Autenticación externa (OIDC)",
|
||
"configureExternalProvider": "Configurar el proveedor de identidad externo para la autenticación OIDC/OAuth2.",
|
||
"userIdentifierPath": "Ruta de identificación del usuario",
|
||
"displayNamePath": "Ruta del nombre para mostrar",
|
||
"scopes": "Ámbitos",
|
||
"saving": "Ahorro...",
|
||
"saveConfiguration": "Guardar configuración",
|
||
"reset": "Reiniciar",
|
||
"success": "Éxito",
|
||
"loading": "Cargando...",
|
||
"refresh": "Refrescar",
|
||
"loadingUsers": "Cargando usuarios...",
|
||
"username": "Nombre de usuario",
|
||
"type": "Tipo",
|
||
"actions": "Comportamiento",
|
||
"external": "Externo",
|
||
"local": "Local",
|
||
"adminManagement": "Gestión administrativa",
|
||
"makeUserAdmin": "Convertir usuario en administrador",
|
||
"adding": "Añadiendo...",
|
||
"currentAdmins": "Administradores actuales",
|
||
"adminBadge": "Administración",
|
||
"removeAdminButton": "Eliminar administrador",
|
||
"general": "General",
|
||
"userRegistration": "Registro de usuario",
|
||
"allowNewAccountRegistration": "Permitir el registro de nuevas cuentas",
|
||
"allowPasswordLogin": "Permitir inicio de sesión con nombre de usuario y contraseña",
|
||
"missingRequiredFields": "Campos obligatorios faltantes: {{fields}}",
|
||
"oidcConfigurationUpdated": "¡Configuración de OIDC actualizada exitosamente!",
|
||
"failedToFetchOidcConfig": "No se pudo obtener la configuración de OIDC",
|
||
"failedToFetchRegistrationStatus": "No se pudo obtener el estado del registro",
|
||
"failedToFetchPasswordLoginStatus": "No se pudo obtener el estado de inicio de sesión de la contraseña",
|
||
"failedToFetchUsers": "No se pudieron obtener los usuarios",
|
||
"oidcConfigurationDisabled": "¡Configuración de OIDC deshabilitada exitosamente!",
|
||
"failedToUpdateOidcConfig": "No se pudo actualizar la configuración de OIDC",
|
||
"failedToDisableOidcConfig": "No se pudo deshabilitar la configuración de OIDC",
|
||
"enterUsernameToMakeAdmin": "Introduzca el nombre de usuario para crear el administrador",
|
||
"userIsNowAdmin": "El usuario {{username}} ahora es administrador",
|
||
"failedToMakeUserAdmin": "No se pudo convertir al usuario en administrador",
|
||
"removeAdminStatus": "¿Quitar el estado de administrador de {{username}}?",
|
||
"adminStatusRemoved": "Estado de administrador eliminado de {{username}}",
|
||
"failedToRemoveAdminStatus": "No se pudo eliminar el estado de administrador",
|
||
"userDeletedSuccessfully": "Usuario {{username}} eliminado exitosamente",
|
||
"failedToDeleteUser": "No se pudo eliminar el usuario",
|
||
"overrideUserInfoUrl": "Anular la URL de información del usuario (no es obligatorio)",
|
||
"failedToFetchSessions": "No se pudieron obtener las sesiones",
|
||
"sessionRevokedSuccessfully": "Sesión revocada exitosamente",
|
||
"failedToRevokeSession": "No se pudo revocar la sesión",
|
||
"confirmRevokeSession": "¿Está seguro que desea revocar esta sesión?",
|
||
"confirmRevokeAllSessions": "¿Está seguro de que desea revocar todas las sesiones de este usuario?",
|
||
"failedToRevokeSessions": "No se pudieron revocar las sesiones",
|
||
"sessionsRevokedSuccessfully": "Sesiones revocadas exitosamente",
|
||
"linkToPasswordAccount": "Enlace a la cuenta de contraseña",
|
||
"linkOIDCDialogTitle": "Vincular la cuenta OIDC a la cuenta de contraseña",
|
||
"linkOIDCDialogDescription": "Vincule {{username}} (usuario de OIDC) a una cuenta de contraseña existente. Esto habilitará la autenticación dual para la cuenta de contraseña.",
|
||
"createUser": "Crear usuario",
|
||
"createUserDescription": "Crear un nuevo usuario local con nombre de usuario y contraseña",
|
||
"enterUsername": "Introducir nombre de usuario",
|
||
"enterPassword": "Introducir contraseña",
|
||
"userCreatedSuccessfully": "Usuario {{username}} creado exitosamente",
|
||
"failedToCreateUser": "No se pudo crear el usuario",
|
||
"manageUser": "Administrar usuario",
|
||
"manageUserDescription": "Administrar configuraciones, roles y permisos de usuario",
|
||
"authType": "Tipo de autenticación",
|
||
"adminStatus": "Estado de administrador",
|
||
"userId": "ID de usuario",
|
||
"regularUser": "Usuario regular",
|
||
"adminPrivileges": "Privilegios de administrador",
|
||
"administratorRole": "Rol de administrador",
|
||
"administratorRoleDescription": "Otorgar acceso completo al sistema y privilegios de administración",
|
||
"passwordManagement": "Gestión de contraseñas",
|
||
"passwordResetWarning": "Restablecer la contraseña de un usuario eliminará todos sus datos (hosts SSH, credenciales y configuración). Esta acción es irreversible.",
|
||
"resetUserPassword": "Restablecer contraseña de usuario",
|
||
"resettingPassword": "Reiniciando...",
|
||
"passwordResetInitiated": "Se inició el restablecimiento de contraseña para {{username}}. Se envió el código de restablecimiento.",
|
||
"failedToResetPassword": "No se pudo iniciar el restablecimiento de contraseña",
|
||
"sessionManagement": "Gestión de sesiones",
|
||
"revokeAllSessions": "Revocar todas las sesiones",
|
||
"revokeAllSessionsDescription": "Forzar el cierre de sesión de todos los dispositivos y sesiones",
|
||
"revoking": "Revocando...",
|
||
"revoke": "Revocar todo",
|
||
"dangerZone": "Zona de peligro",
|
||
"deleteUserTitle": "Eliminar cuenta de usuario",
|
||
"deleteUserWarning": "Eliminar permanentemente esta cuenta de usuario y todos los datos asociados. Esta acción no se puede deshacer.",
|
||
"deleting": "Borrando...",
|
||
"cannotDeleteSelf": "No puedes eliminar tu propia cuenta",
|
||
"cannotRemoveLastAdmin": "No se puede eliminar el último administrador",
|
||
"cannotRemoveOwnAdmin": "No puedes eliminar tus propios privilegios de administrador",
|
||
"cannotModifyOwnAdminStatus": "No puedes modificar tu propio estado de administrador",
|
||
"dualAuth": "Doble autenticación",
|
||
"externalOIDC": "Externo (OIDC)",
|
||
"localPassword": "Contraseña local",
|
||
"confirmRevokeOwnSessions": "¿Seguro que desea revocar todas sus sesiones? Se cerrará su sesión.",
|
||
"linkOIDCWarningTitle": "Advertencia: Los datos de usuario de OIDC serán eliminados",
|
||
"linkOIDCActionDeleteUser": "Eliminar la cuenta de usuario de OIDC y todos sus datos",
|
||
"linkOIDCActionAddCapability": "Agregue la capacidad de inicio de sesión de OIDC a la cuenta de contraseña de destino",
|
||
"linkOIDCActionDualAuth": "Permitir que la cuenta de contraseña inicie sesión con contraseña y OIDC",
|
||
"linkTargetUsernameLabel": "Nombre de usuario de la cuenta de contraseña de destino",
|
||
"linkTargetUsernamePlaceholder": "Introduzca el nombre de usuario de la cuenta de contraseña",
|
||
"linkAccountsButton": "Vincular cuentas",
|
||
"linkingAccounts": "Enlace...",
|
||
"accountsLinkedSuccessfully": "El usuario de OIDC {{oidcUsername}} ha sido vinculado a {{targetUsername}}",
|
||
"failedToLinkAccounts": "No se pudieron vincular las cuentas",
|
||
"linkTargetUsernameRequired": "Se requiere el nombre de usuario de destino",
|
||
"unlinkOIDCTitle": "Desvincular la autenticación de OIDC",
|
||
"unlinkOIDCDescription": "¿Eliminar la autenticación OIDC de {{username}}? Después de esto, el usuario solo podrá iniciar sesión con nombre de usuario y contraseña.",
|
||
"unlinkOIDCSuccess": "OIDC desvinculado de {{username}}",
|
||
"failedToUnlinkOIDC": "No se pudo desvincular OIDC",
|
||
"databaseSecurity": "Seguridad de la base de datos",
|
||
"encryptionStatus": "Estado de cifrado",
|
||
"encryptionEnabled": "Cifrado habilitado",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"keyId": "Identificación de clave",
|
||
"created": "Creado",
|
||
"migrationStatus": "Estado migratorio",
|
||
"migrationCompleted": "Migración completada",
|
||
"migrationRequired": "Se requiere migración",
|
||
"deviceProtectedMasterKey": "Llave maestra protegida del medio ambiente",
|
||
"legacyKeyStorage": "Almacenamiento de claves heredadas",
|
||
"masterKeyEncryptedWithDeviceFingerprint": "Llave maestra cifrada con huella ambiental (protección KEK activa)",
|
||
"keyNotProtectedByDeviceBinding": "Clave no protegida por enlace de entorno (actualización recomendada)",
|
||
"valid": "Válido",
|
||
"initializeDatabaseEncryption": "Inicializar el cifrado de la base de datos",
|
||
"enableAes256EncryptionWithDeviceBinding": "Habilite el cifrado AES-256 con protección de clave maestra vinculada al entorno. Esto crea seguridad de nivel empresarial para claves SSH, contraseñas y tokens de autenticación.",
|
||
"featuresEnabled": "Funciones habilitadas:",
|
||
"aes256GcmAuthenticatedEncryption": "Cifrado autenticado AES-256-GCM",
|
||
"deviceFingerprintMasterKeyProtection": "Protección de clave maestra de huellas dactilares ambientales (KEK)",
|
||
"pbkdf2KeyDerivation": "Derivación de clave PBKDF2 con 100 000 iteraciones",
|
||
"automaticKeyManagement": "Gestión y rotación automática de claves",
|
||
"initializing": "Inicializando...",
|
||
"initializeEnterpriseEncryption": "Inicializar el cifrado empresarial",
|
||
"migrateExistingData": "Migrar datos existentes",
|
||
"encryptExistingUnprotectedData": "Cifre los datos no protegidos de su base de datos. Este proceso es seguro y crea copias de seguridad automáticas.",
|
||
"testMigrationDryRun": "Verificar la compatibilidad del cifrado",
|
||
"migrating": "Migrando...",
|
||
"migrateData": "Migrar datos",
|
||
"securityInformation": "Información de seguridad",
|
||
"sshPrivateKeysEncryptedWithAes256": "Las claves privadas y contraseñas SSH están cifradas con AES-256-GCM",
|
||
"userAuthTokensProtected": "Los tokens de autenticación de usuario y los secretos 2FA están protegidos",
|
||
"masterKeysProtectedByDeviceFingerprint": "Las claves de cifrado maestras están protegidas por la huella digital del dispositivo (KEK)",
|
||
"keysBoundToServerInstance": "Las claves están vinculadas al entorno del servidor actual (migrables mediante variables de entorno)",
|
||
"pbkdf2HkdfKeyDerivation": "Derivación de clave PBKDF2 + HKDF con 100 000 iteraciones",
|
||
"backwardCompatibleMigration": "Todos los datos siguen siendo compatibles con versiones anteriores durante la migración",
|
||
"enterpriseGradeSecurityActive": "Seguridad activa de nivel empresarial",
|
||
"masterKeysProtectedByDeviceBinding": "Sus claves de cifrado maestras están protegidas mediante huellas dactilares del entorno. Esta utiliza el nombre de host del servidor, las rutas y otra información del entorno para generar claves de protección. Para migrar servidores, configure la variable de entorno DB_ENCRYPTION_KEY en el nuevo servidor.",
|
||
"important": "Importante",
|
||
"keepEncryptionKeysSecure": "Garantice la seguridad de sus datos: realice copias de seguridad periódicas de sus archivos de base de datos y de la configuración del servidor. Para migrar a un nuevo servidor, configure la variable de entorno DB_ENCRYPTION_KEY en el nuevo entorno o mantenga el mismo nombre de host y la misma estructura de directorios.",
|
||
"loadingEncryptionStatus": "Cargando estado de cifrado...",
|
||
"testMigrationDescription": "Verificar que los datos existentes se puedan migrar de forma segura a un formato cifrado sin modificar ningún dato",
|
||
"serverMigrationGuide": "Guía de migración de servidores",
|
||
"migrationInstructions": "Para migrar datos cifrados a un nuevo servidor: 1) Haga una copia de seguridad de los archivos de la base de datos, 2) Establezca la variable de entorno DB_ENCRYPTION_KEY=\"your-key\" en el nuevo servidor, 3) Restaure los archivos de la base de datos",
|
||
"environmentProtection": "Protección del medio ambiente",
|
||
"environmentProtectionDesc": "Protege las claves de cifrado en función de la información del entorno del servidor (nombre de host, rutas, etc.), migrables mediante variables de entorno",
|
||
"verificationCompleted": "Verificación de compatibilidad completada: no se modificaron datos",
|
||
"verificationInProgress": "Verificación completada",
|
||
"dataMigrationCompleted": "¡Migración de datos completada exitosamente!",
|
||
"verificationFailed": "Error en la verificación de compatibilidad",
|
||
"migrationFailed": "La migración falló",
|
||
"runningVerification": "Ejecutando verificación de compatibilidad...",
|
||
"startingMigration": "Iniciando la migración...",
|
||
"hardwareFingerprintSecurity": "Seguridad de huellas dactilares de hardware",
|
||
"hardwareBoundEncryption": "Cifrado activo vinculado al hardware",
|
||
"masterKeysNowProtectedByHardwareFingerprint": "Las claves maestras ahora están protegidas por huellas dactilares de hardware real en lugar de variables de entorno",
|
||
"cpuSerialNumberDetection": "Detección del número de serie de la CPU",
|
||
"motherboardUuidIdentification": "Identificación UUID de la placa base",
|
||
"diskSerialNumberVerification": "Verificación del número de serie del disco",
|
||
"biosSerialNumberCheck": "Comprobación del número de serie del BIOS",
|
||
"stableMacAddressFiltering": "Filtrado estable de direcciones MAC",
|
||
"databaseFileEncryption": "Cifrado de archivos de base de datos",
|
||
"dualLayerProtection": "Protección activa de doble capa",
|
||
"bothFieldAndFileEncryptionActive": "Ahora, el cifrado a nivel de campo y a nivel de archivo están activos para máxima seguridad.",
|
||
"fieldLevelAes256Encryption": "Cifrado AES-256 a nivel de campo para datos confidenciales",
|
||
"fileLevelDatabaseEncryption": "Cifrado de base de datos a nivel de archivo con enlace de hardware",
|
||
"hardwareBoundFileKeys": "Claves de cifrado de archivos vinculadas al hardware",
|
||
"automaticEncryptedBackups": "Creación automática de copias de seguridad cifradas",
|
||
"createEncryptedBackup": "Crear una copia de seguridad cifrada",
|
||
"creatingBackup": "Creando copia de seguridad...",
|
||
"backupCreated": "Copia de seguridad creada",
|
||
"encryptedBackupCreatedSuccessfully": "Copia de seguridad cifrada creada correctamente",
|
||
"backupCreationFailed": "Error en la creación de la copia de seguridad",
|
||
"databaseMigration": "Migración de bases de datos",
|
||
"exportForMigration": "Exportación para la migración",
|
||
"exportDatabaseForHardwareMigration": "Exportar la base de datos como archivo SQLite con datos descifrados para la migración al nuevo hardware",
|
||
"exportDatabase": "Exportar base de datos SQLite",
|
||
"exporting": "Exportador...",
|
||
"exportCreated": "Exportación SQLite creada",
|
||
"exportContainsDecryptedData": "La exportación de SQLite contiene datos descifrados: ¡manténgalos seguros!",
|
||
"databaseExportedSuccessfully": "La base de datos SQLite se exportó correctamente",
|
||
"databaseExportFailed": "Error en la exportación de la base de datos SQLite",
|
||
"importFromMigration": "Importar desde Migración",
|
||
"importDatabaseFromAnotherSystem": "Importar base de datos SQLite desde otro sistema o hardware",
|
||
"importDatabase": "Importar base de datos SQLite",
|
||
"importing": "Importador...",
|
||
"selectedFile": "Archivo SQLite seleccionado",
|
||
"importWillReplaceExistingData": "La importación de SQLite reemplazará los datos existentes: ¡se recomienda hacer una copia de seguridad!",
|
||
"pleaseSelectImportFile": "Seleccione un archivo de importación de SQLite",
|
||
"databaseImportedSuccessfully": "Base de datos SQLite importada exitosamente",
|
||
"databaseImportFailed": "Error en la importación de la base de datos SQLite",
|
||
"manageEncryptionAndBackups": "Administrar claves de cifrado, seguridad de bases de datos y operaciones de respaldo",
|
||
"activeSecurityFeatures": "Medidas de seguridad y protecciones actualmente activas",
|
||
"deviceBindingTechnology": "Tecnología avanzada de protección de claves basada en hardware",
|
||
"backupAndRecovery": "Opciones seguras de creación de copias de seguridad y recuperación de bases de datos",
|
||
"crossSystemDataTransfer": "Exportar e importar bases de datos en diferentes sistemas",
|
||
"noMigrationNeeded": "No es necesaria ninguna migración",
|
||
"encryptionKey": "Clave de cifrado",
|
||
"keyProtection": "Protección de claves",
|
||
"active": "Activo",
|
||
"legacy": "Legado",
|
||
"dataStatus": "Estado de los datos",
|
||
"encrypted": "Encriptado",
|
||
"needsMigration": "Necesidades Migratorias",
|
||
"ready": "Listo",
|
||
"initializeEncryption": "Inicializar cifrado",
|
||
"initialize": "Inicializar",
|
||
"test": "Prueba",
|
||
"migrate": "Emigrar",
|
||
"backup": "Respaldo",
|
||
"createBackup": "Crear copia de seguridad",
|
||
"exportImport": "Exportación/Importación",
|
||
"export": "Exportar",
|
||
"import": "Importar",
|
||
"passwordRequired": "Se requiere contraseña",
|
||
"confirmExport": "Confirmar exportación",
|
||
"exportDescription": "Exportar hosts y credenciales SSH como archivo SQLite",
|
||
"importDescription": "Importar archivo SQLite con combinación incremental (omite duplicados)",
|
||
"criticalWarning": "Advertencia crítica",
|
||
"cannotDisablePasswordLoginWithoutOIDC": "No se puede desactivar el inicio de sesión con contraseña sin tener configurado OIDC. Debe configurar la autenticación OIDC antes de desactivar el inicio de sesión con contraseña; de lo contrario, perderá el acceso a Termix.",
|
||
"confirmDisablePasswordLogin": "¿Seguro que desea desactivar el inicio de sesión con contraseña? Asegúrese de que OIDC esté configurado correctamente y funcionando antes de continuar; de lo contrario, perderá el acceso a su instancia de Termix.",
|
||
"passwordLoginDisabled": "El inicio de sesión con contraseña se ha deshabilitado correctamente",
|
||
"passwordLoginAndRegistrationDisabled": "El inicio de sesión con contraseña y el registro de una nueva cuenta se han deshabilitado correctamente",
|
||
"requiresPasswordLogin": "Requiere que el inicio de sesión con contraseña esté habilitado",
|
||
"passwordLoginDisabledWarning": "El inicio de sesión con contraseña está deshabilitado. Asegúrese de que OIDC esté configurado correctamente o no podrá iniciar sesión en Termix.",
|
||
"oidcRequiredWarning": "AVISO IMPORTANTE: El inicio de sesión con contraseña está deshabilitado. Si restablece o configura incorrectamente OIDC, perderá todo acceso a Termix y bloqueará su instancia. Continúe solo si está completamente seguro.",
|
||
"confirmDisableOIDCWarning": "ADVERTENCIA: Está a punto de deshabilitar OIDC mientras el inicio de sesión con contraseña también está deshabilitado. Esto bloqueará su instancia de Termix y perderá todo acceso. ¿Está completamente seguro de que desea continuar?",
|
||
"failedToUpdatePasswordLoginStatus": "No se pudo actualizar el estado de inicio de sesión de la contraseña",
|
||
"loadingSessions": "Cargando sesiones...",
|
||
"noActiveSessions": "No se encontraron sesiones activas.",
|
||
"device": "Dispositivo",
|
||
"user": "Usuario",
|
||
"lastActive": "Último activo",
|
||
"expires": "Caduca",
|
||
"revoked": "Revocado",
|
||
"revokeAllUserSessionsTitle": "Revocar todas las sesiones de este usuario",
|
||
"revokeAll": "Revocar todo",
|
||
"linkOidcToPasswordAccount": "Vincular la cuenta OIDC a la cuenta de contraseña",
|
||
"linkOidcToPasswordAccountDescription": "Vincule {{username}} (usuario de OIDC) a una cuenta de contraseña existente. Esto habilitará la autenticación dual para la cuenta de contraseña.",
|
||
"linkOidcWarningTitle": "Advertencia: Los datos de usuario de OIDC serán eliminados",
|
||
"linkOidcWarningDescription": "Esta acción:",
|
||
"linkOidcActionDeleteUser": "Eliminar la cuenta de usuario de OIDC y todos sus datos",
|
||
"linkOidcActionAddCapability": "Agregue la capacidad de inicio de sesión de OIDC a la cuenta de contraseña de destino",
|
||
"linkOidcActionDualAuth": "Permitir que la cuenta de contraseña inicie sesión con contraseña y OIDC",
|
||
"passwordMinLength": "La contraseña debe tener al menos 6 caracteres",
|
||
"currentRoles": "Roles actuales",
|
||
"noRolesAssigned": "No hay roles asignados",
|
||
"assignNewRole": "Asignar nuevo rol"
|
||
},
|
||
"hosts": {
|
||
"title": "Administrador de host",
|
||
"sshHosts": "Hosts SSH",
|
||
"noHosts": "Sin hosts SSH",
|
||
"noHostsMessage": "Aún no has añadido ningún host SSH. Haz clic en \"Añadir host\" para empezar.",
|
||
"loadingHosts": "Cargando hosts...",
|
||
"failedToLoadHosts": "No se pudieron cargar los hosts",
|
||
"retry": "Rever",
|
||
"refresh": "Refrescar",
|
||
"optional": "Opcional",
|
||
"hostsCount": "{{count}} anfitriones",
|
||
"importJson": "Importar JSON",
|
||
"importing": "Importador...",
|
||
"importJsonTitle": "Importar hosts SSH desde JSON",
|
||
"importJsonDesc": "Cargue un archivo JSON para importar en masa varios hosts SSH (máximo 100).",
|
||
"downloadSample": "Descargar muestra",
|
||
"formatGuide": "Guía de formato",
|
||
"exportCredentialWarning": "Advertencia: El host \"{{name}}\" utiliza autenticación de credenciales. El archivo exportado no incluirá los datos de las credenciales y deberá reconfigurarse manualmente después de la importación. ¿Desea continuar?",
|
||
"exportSensitiveDataWarning": "Advertencia: El host \"{{name}}\" contiene datos de autenticación confidenciales (contraseña/clave SSH). El archivo exportado incluirá estos datos en texto plano. Por favor, mantenga el archivo seguro y elimínelo después de usarlo. ¿Desea continuar?",
|
||
"uncategorized": "Sin categorizar",
|
||
"confirmDelete": "¿Estás seguro que deseas eliminar \"{{name}}\" ?",
|
||
"failedToDeleteHost": "No se pudo eliminar el host",
|
||
"failedToExportHost": "Error al exportar el host. Asegúrate de haber iniciado sesión y tener acceso a los datos del host.",
|
||
"jsonMustContainHosts": "JSON debe contener una matriz de \"hosts\" o ser una matriz de hosts",
|
||
"noHostsInJson": "No se encontraron hosts en el archivo JSON",
|
||
"maxHostsAllowed": "Se permite un máximo de 100 hosts por importación",
|
||
"importCompleted": "Importación completada: {{success}} exitosa, {{failed}} fallida",
|
||
"importFailed": "Error en la importación",
|
||
"importError": "Error de importación",
|
||
"failedToImportJson": "No se pudo importar el archivo JSON",
|
||
"connectionDetails": "Detalles de la conexión",
|
||
"organization": "Organización",
|
||
"ipAddress": "Dirección IP",
|
||
"port": "Puerto",
|
||
"name": "Nombre",
|
||
"username": "Nombre de usuario",
|
||
"folder": "Carpeta",
|
||
"tags": "Etiquetas",
|
||
"pin": "Alfiler",
|
||
"notes": "Notas",
|
||
"expirationDate": "Fecha de expiración",
|
||
"passwordRequired": "Se requiere contraseña cuando se utiliza la autenticación de contraseña",
|
||
"sshKeyRequired": "Se requiere una clave privada SSH cuando se utiliza la autenticación de clave",
|
||
"keyTypeRequired": "El tipo de clave es necesario cuando se utiliza la autenticación de clave",
|
||
"mustSelectValidSshConfig": "Debe seleccionar una configuración SSH válida de la lista",
|
||
"addHost": "Agregar host",
|
||
"editHost": "Editar host",
|
||
"cloneHost": "Clonar host",
|
||
"updateHost": "Actualizar host",
|
||
"hostUpdatedSuccessfully": "¡El host \"{{name}}\" se actualizó correctamente!",
|
||
"hostAddedSuccessfully": "¡El host \"{{name}}\" se agregó exitosamente!",
|
||
"hostDeletedSuccessfully": "¡El host \"{{name}}\" se eliminó correctamente!",
|
||
"failedToSaveHost": "No se pudo guardar el host. Inténtalo de nuevo.",
|
||
"savingHost": "Guardando host...",
|
||
"updatingHost": "Actualizando host...",
|
||
"cloningHost": "Clonando host...",
|
||
"enableTerminal": "Habilitar terminal",
|
||
"enableTerminalDesc": "Habilitar o deshabilitar la visibilidad del host en la pestaña Terminal",
|
||
"enableTunnel": "Habilitar túnel",
|
||
"enableTunnelDesc": "Habilitar o deshabilitar la visibilidad del host en la pestaña Túnel",
|
||
"enableFileManager": "Habilitar el Administrador de archivos",
|
||
"enableFileManagerDesc": "Habilitar o deshabilitar la visibilidad del host en la pestaña Administrador de archivos",
|
||
"enableDockerDesc": "Habilitar o deshabilitar la visibilidad del host en la pestaña Docker",
|
||
"enableDocker": "Habilitar Docker",
|
||
"defaultPath": "Ruta predeterminada",
|
||
"defaultPathDesc": "Directorio predeterminado al abrir el administrador de archivos para este host",
|
||
"tunnelConnections": "Conexiones de túnel",
|
||
"connection": "Conexión",
|
||
"remove": "Eliminar",
|
||
"sourcePort": "Puerto de origen",
|
||
"sourcePortDesc": "(La fuente se refiere a los Detalles de conexión actuales en la pestaña General)",
|
||
"endpointPort": "Puerto de punto final",
|
||
"endpointSshConfig": "Configuración SSH del punto final",
|
||
"tunnelForwardDescription": "Este túnel reenviará tráfico desde el puerto {{sourcePort}} en la máquina de origen (detalles de conexión actuales en la pestaña general) al puerto {{endpointPort}} en la máquina del punto final.",
|
||
"maxRetries": "Máximo de reintentos",
|
||
"maxRetriesDescription": "Número máximo de intentos de reintento para la conexión del túnel.",
|
||
"retryInterval": "Intervalo de reintento (segundos)",
|
||
"retryIntervalDescription": "Tiempo de espera entre reintentos.",
|
||
"autoStartContainer": "Inicio automático al lanzar un contenedor",
|
||
"autoStartDesc": "Iniciar automáticamente este túnel cuando se lanza el contenedor",
|
||
"addConnection": "Agregar conexión de túnel",
|
||
"sshpassRequired": "Se requiere Sshpass para la autenticación de contraseña",
|
||
"sshpassRequiredDesc": "Para la autenticación de contraseña en túneles, sshpass debe estar instalado en el sistema.",
|
||
"otherInstallMethods": "Otros métodos de instalación:",
|
||
"debianUbuntuEquivalent": "(Debian/Ubuntu) o el equivalente para su sistema operativo.",
|
||
"or": "o",
|
||
"centosRhelFedora": "CentOS/RHEL/Fedora",
|
||
"macos": "macOS",
|
||
"windows": "Ventanas",
|
||
"sshServerConfigRequired": "Se requiere configuración del servidor SSH",
|
||
"sshServerConfigDesc": "Para las conexiones de túnel, el servidor SSH debe estar configurado para permitir el reenvío de puertos:",
|
||
"gatewayPortsYes": "Para vincular puertos remotos a todas las interfaces",
|
||
"allowTcpForwardingYes": "para habilitar el reenvío de puertos",
|
||
"permitRootLoginYes": "Si se utiliza el usuario root para la tunelización",
|
||
"editSshConfig": "Edite /etc/ssh/sshd_config y reinicie SSH: sudo systemctl restart sshd",
|
||
"upload": "Subir",
|
||
"authentication": "Autenticación",
|
||
"password": "Contraseña",
|
||
"key": "Llave",
|
||
"credential": "Credencial",
|
||
"none": "Ninguno",
|
||
"selectCredential": "Seleccionar Credencial",
|
||
"selectCredentialPlaceholder": "Elija una credencial...",
|
||
"credentialRequired": "Se requieren credenciales cuando se utiliza la autenticación de credenciales",
|
||
"credentialDescription": "Al seleccionar una credencial se sobrescribirá el nombre de usuario actual y se utilizarán los detalles de autenticación de la credencial.",
|
||
"cannotChangeAuthAsSharedUser": "No se puede cambiar la autenticación como usuario compartido",
|
||
"sshPrivateKey": "Clave privada SSH",
|
||
"keyPassword": "Contraseña de clave",
|
||
"keyType": "Tipo de clave",
|
||
"autoDetect": "Detección automática",
|
||
"rsa": "RSA",
|
||
"ed25519": "ED25519",
|
||
"ecdsaNistP256": "ECDSA NIST P-256",
|
||
"ecdsaNistP384": "ECDSA NIST P-384",
|
||
"ecdsaNistP521": "ECDSA NIST P-521",
|
||
"dsa": "DSA",
|
||
"rsaSha2256": "RSA SHA2-256",
|
||
"rsaSha2512": "RSA SHA2-512",
|
||
"uploadFile": "Subir archivo",
|
||
"pasteKey": "Pegar tecla",
|
||
"updateKey": "Actualizar clave",
|
||
"existingKey": "Clave existente (haga clic para cambiar)",
|
||
"existingCredential": "Credencial existente (haga clic para cambiar)",
|
||
"addTagsSpaceToAdd": "agregar etiquetas (espacio para agregar)",
|
||
"terminalBadge": "Terminal",
|
||
"tunnelBadge": "Túnel",
|
||
"fileManagerBadge": "Gestor de archivos",
|
||
"general": "General",
|
||
"terminal": "Terminal",
|
||
"tunnel": "Túnel",
|
||
"fileManager": "Gestor de archivos",
|
||
"serverStats": "Estadísticas del servidor",
|
||
"hostViewer": "Visor de host",
|
||
"enableServerStats": "Habilitar estadísticas del servidor",
|
||
"enableServerStatsDesc": "Habilitar o deshabilitar la recopilación de estadísticas del servidor para este host",
|
||
"displayItems": "Elementos de exhibición",
|
||
"displayItemsDesc": "Elija qué métricas desea mostrar en la página de estadísticas del servidor",
|
||
"enableCpu": "Uso de CPU",
|
||
"enableMemory": "Uso de la memoria",
|
||
"enableDisk": "Uso del disco",
|
||
"enableNetwork": "Estadísticas de la red (próximamente)",
|
||
"enableProcesses": "Recuento de procesos (próximamente)",
|
||
"enableUptime": "Tiempo de actividad (próximamente)",
|
||
"enableHostname": "Nombre de host (próximamente)",
|
||
"enableOs": "Sistema operativo (próximamente)",
|
||
"customCommands": "Comandos personalizados (próximamente)",
|
||
"customCommandsDesc": "Definir comandos de apagado y reinicio personalizados para este servidor",
|
||
"shutdownCommand": "Comando de apagado",
|
||
"rebootCommand": "Comando de reinicio",
|
||
"confirmRemoveFromFolder": "¿Seguro que quieres eliminar \"{{name}}\" de la carpeta \"{{folder}}\"? El host se moverá a \"Sin carpeta\".",
|
||
"removedFromFolder": "El host \"{{name}}\" se eliminó de la carpeta correctamente",
|
||
"failedToRemoveFromFolder": "No se pudo eliminar el host de la carpeta",
|
||
"folderRenamed": "La carpeta \"{{oldName}}\" se renombró a \"{{newName}}\" correctamente",
|
||
"failedToRenameFolder": "No se pudo cambiar el nombre de la carpeta",
|
||
"editFolderAppearance": "Editar la apariencia de la carpeta",
|
||
"editFolderAppearanceDesc": "Personaliza el color y el icono de la carpeta",
|
||
"folderColor": "Color de la carpeta",
|
||
"folderIcon": "Icono de carpeta",
|
||
"preview": "Avance",
|
||
"folderAppearanceUpdated": "La apariencia de la carpeta se actualizó correctamente",
|
||
"failedToUpdateFolderAppearance": "No se pudo actualizar la apariencia de la carpeta",
|
||
"deleteAllHostsInFolder": "Eliminar todos los hosts en la carpeta",
|
||
"confirmDeleteAllHostsInFolder": "¿Seguro que desea eliminar todos los {{count}} hosts de la carpeta \"{{{folder}}\"? Esta acción no se puede deshacer.",
|
||
"allHostsInFolderDeleted": "Se eliminaron {{count}} hosts de la carpeta \"{{folder}}\" correctamente",
|
||
"failedToDeleteHostsInFolder": "No se pudieron eliminar los hosts en la carpeta",
|
||
"movedToFolder": "El host \"{{name}}\" se movió a \"{{folder}}\" con éxito",
|
||
"failedToMoveToFolder": "No se pudo mover el host a la carpeta",
|
||
"clickToRenameFolder": "Haga clic para cambiar el nombre de la carpeta",
|
||
"renameFolder": "Cambiar el nombre de la carpeta",
|
||
"removeFromFolder": "Eliminar de la carpeta \"{{folder}}\"",
|
||
"editHostTooltip": "Editar host",
|
||
"deleteHostTooltip": "Eliminar host",
|
||
"exportHostTooltip": "Host de exportación",
|
||
"cloneHostTooltip": "Host clon",
|
||
"clickToEditHost": "Haga clic para editar el host",
|
||
"dragToMoveBetweenFolders": "Arrastre para moverse entre carpetas",
|
||
"exportedHostConfig": "Configuración de host exportada para {{name}}",
|
||
"openTerminal": "Abrir terminal",
|
||
"openFileManager": "Abrir el Administrador de archivos",
|
||
"openTunnels": "Túneles abiertos",
|
||
"openServerDetails": "Abrir detalles del servidor",
|
||
"statistics": "Estadística",
|
||
"enabledWidgets": "Widgets habilitados",
|
||
"openServerStats": "Abrir estadísticas del servidor",
|
||
"enabledWidgetsDesc": "Seleccione qué widgets de estadísticas desea mostrar para este host",
|
||
"monitoringConfiguration": "Configuración de monitorización",
|
||
"monitoringConfigurationDesc": "Configurar la frecuencia con la que se verifican las estadísticas y el estado del servidor",
|
||
"statusCheckEnabled": "Habilitar la monitorización del estado",
|
||
"statusCheckEnabledDesc": "Comprueba si el servidor está en línea o fuera de línea",
|
||
"statusCheckInterval": "Intervalo de verificación de estado",
|
||
"statusCheckIntervalDesc": "Con qué frecuencia comprobar si el host está en línea (5 s - 1 h)",
|
||
"metricsEnabled": "Habilitar la monitorización de métricas",
|
||
"metricsEnabledDesc": "Recopilar estadísticas de CPU, RAM, disco y otros sistemas",
|
||
"metricsInterval": "Intervalo de recopilación de métricas",
|
||
"metricsIntervalDesc": "Con qué frecuencia recopilar estadísticas del servidor (5 s - 1 h)",
|
||
"intervalSeconds": "artículos de segunda clase",
|
||
"intervalMinutes": "minutos",
|
||
"intervalValidation": "Los intervalos de monitoreo deben estar entre 5 segundos y 1 hora (3600 segundos)",
|
||
"monitoringDisabled": "La monitorización del servidor está deshabilitada para este host",
|
||
"enableMonitoring": "Habilitar la monitorización en Host Manager → pestaña Estadísticas",
|
||
"monitoringDisabledBadge": "Monitoreo desactivado",
|
||
"statusMonitoring": "Estado",
|
||
"metricsMonitoring": "Métrica",
|
||
"terminalCustomization": "Personalización de la terminal",
|
||
"appearance": "Apariencia",
|
||
"behavior": "Comportamiento",
|
||
"advanced": "Avanzado",
|
||
"themePreview": "Vista previa del tema",
|
||
"theme": "Tema",
|
||
"selectTheme": "Seleccionar tema",
|
||
"chooseColorTheme": "Elige un tema de color para la terminal",
|
||
"fontFamily": "Familia de fuentes",
|
||
"selectFont": "Seleccionar fuente",
|
||
"selectFontDesc": "Seleccione la fuente a utilizar en la terminal",
|
||
"fontSize": "Tamaño de fuente",
|
||
"fontSizeValue": "Tamaño de fuente: {{value}}px",
|
||
"adjustFontSize": "Ajustar el tamaño de fuente de la terminal",
|
||
"letterSpacing": "Espaciado entre letras",
|
||
"letterSpacingValue": "Espaciado entre letras: {{value}}px",
|
||
"adjustLetterSpacing": "Ajustar el espaciado entre caracteres",
|
||
"lineHeight": "Altura de línea",
|
||
"lineHeightValue": "Altura de línea: {{value}}",
|
||
"adjustLineHeight": "Ajustar el espaciado entre líneas",
|
||
"cursorStyle": "Estilo del cursor",
|
||
"selectCursorStyle": "Seleccionar el estilo del cursor",
|
||
"cursorStyleBlock": "Bloquear",
|
||
"cursorStyleUnderline": "Subrayar",
|
||
"cursorStyleBar": "Bar",
|
||
"chooseCursorAppearance": "Elija la apariencia del cursor",
|
||
"cursorBlink": "Parpadeo del cursor",
|
||
"enableCursorBlink": "Habilitar la animación de parpadeo del cursor",
|
||
"scrollbackBuffer": "Buffer de retroceso",
|
||
"scrollbackBufferValue": "Buffer de retroceso: {{value}} líneas",
|
||
"scrollbackBufferDesc": "Número de líneas a mantener en el historial de retroceso",
|
||
"bellStyle": "Estilo campana",
|
||
"selectBellStyle": "Seleccionar el estilo de campana",
|
||
"bellStyleNone": "Ninguno",
|
||
"bellStyleSound": "Sonido",
|
||
"bellStyleVisual": "Visual",
|
||
"bellStyleBoth": "Ambos",
|
||
"bellStyleDesc": "Cómo manejar la señal acústica de la terminal (carácter BEL, \\x07). Los programas la activan al completar tareas, detectar errores o para notificaciones. \"Sonido\" reproduce un pitido, \"Visual\" parpadea brevemente en la pantalla, \"Ambos\" realiza ambas funciones y \"Ninguno\" desactiva las alertas acústicas.",
|
||
"rightClickSelectsWord": "Hacer clic derecho selecciona Word",
|
||
"rightClickSelectsWordDesc": "Al hacer clic derecho se selecciona la palabra debajo del cursor.",
|
||
"fastScrollModifier": "Modificador de desplazamiento rápido",
|
||
"selectModifier": "Seleccionar modificador",
|
||
"modifierAlt": "Alt",
|
||
"modifierCtrl": "Control",
|
||
"modifierShift": "Cambio",
|
||
"fastScrollModifierDesc": "Tecla modificadora para desplazamiento rápido",
|
||
"fastScrollSensitivity": "Sensibilidad de desplazamiento rápido",
|
||
"fastScrollSensitivityValue": "Sensibilidad de desplazamiento rápido: {{value}}",
|
||
"fastScrollSensitivityDesc": "Multiplicador de velocidad de desplazamiento cuando se mantiene presionado el modificador",
|
||
"minimumContrastRatio": "Relación de contraste mínima",
|
||
"minimumContrastRatioValue": "Relación de contraste mínima: {{value}}",
|
||
"minimumContrastRatioDesc": "Ajusta automáticamente los colores para una mejor legibilidad.",
|
||
"sshAgentForwarding": "Reenvío de agente SSH",
|
||
"sshAgentForwardingDesc": "Reenviar el agente de autenticación SSH al host remoto",
|
||
"backspaceMode": "Modo de retroceso",
|
||
"selectBackspaceMode": "Seleccionar el modo de retroceso",
|
||
"backspaceModeNormal": "Normal (SUPR)",
|
||
"backspaceModeControlH": "Control-H (^H)",
|
||
"backspaceModeDesc": "Comportamiento de la tecla Retroceso para compatibilidad",
|
||
"startupSnippet": "Fragmento de inicio",
|
||
"selectSnippet": "Seleccionar fragmento",
|
||
"searchSnippets": "Buscar fragmentos...",
|
||
"snippetNone": "Ninguno",
|
||
"noneAuthTitle": "Autenticación interactiva mediante teclado",
|
||
"noneAuthDescription": "Este método de autenticación utilizará autenticación interactiva mediante teclado al conectarse al servidor SSH.",
|
||
"noneAuthDetails": "La autenticación interactiva con teclado permite que el servidor le solicite sus credenciales durante la conexión. Esto es útil para servidores que requieren autenticación multifactor o si no desea guardar las credenciales localmente.",
|
||
"forceKeyboardInteractive": "Teclado interactivo de fuerza",
|
||
"forceKeyboardInteractiveDesc": "Obliga a usar la autenticación interactiva mediante teclado. Esto a veces es necesario para servidores que usan autenticación de dos factores (TOTP/2FA).",
|
||
"overrideCredentialUsername": "Anular nombre de usuario de credenciales",
|
||
"overrideCredentialUsernameDesc": "Use un nombre de usuario diferente al almacenado en la credencial. Esto le permite usar la misma credencial con diferentes nombres de usuario.",
|
||
"jumpHosts": "Hosts de salto",
|
||
"jumpHostsDescription": "Los hosts de salto (también conocidos como hosts bastión) permiten conectarse a un servidor de destino a través de uno o más servidores intermedios. Esto resulta útil para acceder a servidores protegidos por firewalls o en redes privadas.",
|
||
"jumpHostChain": "Saltar cadena de host",
|
||
"addJumpHost": "Agregar Jump Host",
|
||
"selectServer": "Seleccionar servidor",
|
||
"searchServers": "Servidores de búsqueda...",
|
||
"noServerFound": "No se encontró ningún servidor",
|
||
"jumpHostsOrder": "Las conexiones se realizarán en orden: Jump Host 1 → Jump Host 2 → ... → Servidor de destino",
|
||
"socks5Proxy": "Proxy SOCKS5",
|
||
"socks5Description": "Configure el proxy SOCKS5 para la conexión SSH. Todo el tráfico se enrutará a través del servidor proxy especificado.",
|
||
"enableSocks5": "Habilitar el proxy SOCKS5",
|
||
"enableSocks5Description": "Utilice el proxy SOCKS5 para esta conexión SSH",
|
||
"socks5Host": "Servidor proxy",
|
||
"socks5Port": "Puerto proxy",
|
||
"socks5Username": "Nombre de usuario proxy",
|
||
"socks5Password": "Contraseña de proxy",
|
||
"socks5UsernameOptional": "Opcional: déjelo vacío si el proxy no requiere autenticación",
|
||
"socks5PasswordOptional": "Opcional: déjelo vacío si el proxy no requiere autenticación",
|
||
"socks5ProxyChain": "Cadena de proxy",
|
||
"socks5ProxyChainDescription": "Configurar una cadena de servidores proxy SOCKS. Cada servidor proxy de la cadena se conectará a través del anterior.",
|
||
"socks5ProxyMode": "Modo proxy",
|
||
"socks5UseSingleProxy": "Utilice un solo proxy",
|
||
"socks5UseProxyChain": "Usar cadena de proxy",
|
||
"socks5UsePreset": "Usar ajuste preestablecido guardado",
|
||
"socks5SelectPreset": "Seleccionar ajuste preestablecido",
|
||
"socks5ManagePresets": "Administrar ajustes preestablecidos",
|
||
"socks5ProxyNode": "Proxy {{number}}",
|
||
"socks5AddProxy": "Agregar proxy a la cadena",
|
||
"socks5RemoveProxy": "Eliminar proxy",
|
||
"socks5ProxyType": "Tipo de proxy",
|
||
"socks5SaveAsPreset": "Guardar como preestablecido",
|
||
"socks5SavePresetTitle": "Guardar cadena de proxy como preestablecido",
|
||
"socks5SavePresetDescription": "Guardar la configuración actual de la cadena de proxy como un ajuste preestablecido reutilizable",
|
||
"socks5PresetName": "Nombre del preajuste",
|
||
"socks5PresetDescription": "Descripción (opcional)",
|
||
"socks5PresetCreated": "Se creó un ajuste preestablecido de cadena de proxy",
|
||
"socks5PresetUpdated": "Se actualizó el ajuste preestablecido de la cadena proxy",
|
||
"socks5PresetDeleted": "Se eliminó el ajuste preestablecido de la cadena de proxy",
|
||
"socks5PresetSaved": "El ajuste preestablecido \"{{name}}\" se guardó correctamente",
|
||
"socks5PresetSaveError": "No se pudo guardar el ajuste preestablecido",
|
||
"socks5PresetNameRequired": "Se requiere el nombre del preajuste",
|
||
"socks5EmptyChainError": "No se puede guardar una cadena de proxy vacía",
|
||
"socks5ProxyChainEmpty": "Añade al menos un proxy a la cadena",
|
||
"socks5HostDescription": "Nombre de host o dirección IP del servidor proxy SOCKS",
|
||
"socks5PortDescription": "Número de puerto del servidor proxy SOCKS (predeterminado: 1080)",
|
||
"addProxyNode": "Agregar nodo proxy",
|
||
"noProxyNodes": "No hay ningún nodo proxy configurado. Haga clic en \"Añadir nodo proxy\" para añadir uno.",
|
||
"proxyNode": "Nodo proxy",
|
||
"proxyType": "Tipo de proxy",
|
||
"quickActions": "Acciones rápidas",
|
||
"quickActionsDescription": "Las acciones rápidas permiten crear botones personalizados que ejecutan fragmentos de código SSH en este servidor. Estos botones aparecerán en la parte superior de la página \"Estadísticas del servidor\" para un acceso rápido.",
|
||
"quickActionsList": "Lista de acciones rápidas",
|
||
"addQuickAction": "Agregar acción rápida",
|
||
"quickActionName": "Nombre de la acción",
|
||
"noSnippetFound": "No se encontró ningún fragmento",
|
||
"quickActionsOrder": "Los botones de acción rápida aparecerán en el orden indicado anteriormente en la página Estadísticas del servidor",
|
||
"advancedAuthSettings": "Configuración de autenticación avanzada",
|
||
"sudoPasswordAutoFill": "Autocompletar contraseña de Sudo",
|
||
"sudoPasswordAutoFillDesc": "Ofrecer automáticamente insertar la contraseña SSH cuando sudo la solicita",
|
||
"sudoPassword": "Contraseña de Sudo",
|
||
"sudoPasswordDesc": "Contraseña opcional para comandos sudo (útil con autenticación de clave)",
|
||
"socks4": "CALCETINES4",
|
||
"socks5": "CALCETINES5",
|
||
"executeSnippetOnConnect": "Ejecutar un fragmento cuando la terminal se conecta",
|
||
"autoMosh": "Auto-MOSH",
|
||
"autoMoshDesc": "Ejecutar automáticamente el comando MOSH al conectarse",
|
||
"moshCommand": "Comando MOSH",
|
||
"moshCommandDesc": "El comando MOSH a ejecutar",
|
||
"environmentVariables": "Variables de entorno",
|
||
"environmentVariablesDesc": "Establecer variables de entorno personalizadas para la sesión de terminal",
|
||
"variableName": "Nombre de la variable",
|
||
"variableValue": "Valor",
|
||
"addVariable": "Agregar variable",
|
||
"docker": "Estibador",
|
||
"openDocker": "Abrir Docker",
|
||
"notEnabled": "Docker no está habilitado para este host. Habilítelo en la configuración del host para usar las funciones de Docker.",
|
||
"validating": "Validando Docker...",
|
||
"error": "Error",
|
||
"errorCode": "Código de error: {{code}}",
|
||
"version": "Docker v{{version}}",
|
||
"current": "Actual",
|
||
"used_limit": "Usado / Límite",
|
||
"percentage": "Porcentaje",
|
||
"input": "Aporte",
|
||
"output": "Producción",
|
||
"read": "Leer",
|
||
"write": "Escribir",
|
||
"pids": "PID",
|
||
"id": "IDENTIFICACIÓN",
|
||
"state": "Estado",
|
||
"console": "Consola",
|
||
"containerMustBeRunning": "El contenedor debe estar ejecutándose para conectarse a la consola",
|
||
"authenticationRequired": "Se requiere autenticación",
|
||
"connectedTo": "Conectado a {{containerName}}",
|
||
"disconnected": "Desconectado",
|
||
"consoleError": "Error de consola",
|
||
"errorMessage": "Error: {{message}}",
|
||
"failedToConnect": "No se pudo conectar a la consola",
|
||
"disconnectedFromContainer": "Desconectado de la consola del contenedor.",
|
||
"containerNotRunning": "El contenedor no se está ejecutando",
|
||
"startContainerToAccess": "Inicie el contenedor para acceder a la consola",
|
||
"selectShell": "Seleccionar shell",
|
||
"bash": "Intento",
|
||
"sh": "Ella",
|
||
"ash": "Ceniza",
|
||
"connecting": "Conectando...",
|
||
"connect": "Conectar",
|
||
"disconnect": "Desconectar",
|
||
"notConnected": "No conectado",
|
||
"clickToConnect": "Haga clic en Conectar para iniciar un shell interactivo",
|
||
"connectingTo": "Conectando a {{containerName}}...",
|
||
"containerMustBeRunningToViewStats": "El contenedor debe estar ejecutándose para ver las estadísticas",
|
||
"failedToFetchStats": "No se pudieron obtener las estadísticas",
|
||
"noContainersFound": "No se encontraron contenedores",
|
||
"noContainersFoundHint": "Comience creando contenedores en su servidor",
|
||
"searchPlaceholder": "Buscar por nombre, imagen o ID...",
|
||
"filterByStatusPlaceholder": "Filtrar por estado",
|
||
"allContainersCount": "Todos ({{count}})",
|
||
"statusCount": "{{status}} ({{count}})",
|
||
"noContainersMatchFilters": "No hay contenedores que coincidan con tus filtros",
|
||
"noContainersMatchFiltersHint": "Intente ajustar su búsqueda o filtro",
|
||
"containerStarted": "Contenedor {{name}} iniciado",
|
||
"failedToStartContainer": "Error al iniciar el contenedor: {{error}}",
|
||
"containerStopped": "Contenedor {{name}} detenido",
|
||
"failedToStopContainer": "No se pudo detener el contenedor: {{error}}",
|
||
"containerRestarted": "Contenedor {{name}} reiniciado",
|
||
"failedToRestartContainer": "No se pudo reiniciar el contenedor: {{error}}",
|
||
"containerUnpaused": "Contenedor {{name}} sin pausa",
|
||
"containerPaused": "Contenedor {{name}} en pausa",
|
||
"failedToTogglePauseContainer": "Error en {{action}} contenedor: {{error}}",
|
||
"containerRemoved": "Contenedor {{name}} eliminado",
|
||
"failedToRemoveContainer": "No se pudo eliminar el contenedor: {{error}}",
|
||
"image": "Imagen:",
|
||
"idLabel": "IDENTIFICACIÓN:",
|
||
"ports": "Puertos:",
|
||
"noPorts": "Ninguno",
|
||
"created": "Creado:",
|
||
"start": "Comenzar",
|
||
"stop": "Detener",
|
||
"unpause": "Reanudar",
|
||
"pause": "Pausa",
|
||
"restart": "Reanudar",
|
||
"removeContainer": "Retirar contenedor",
|
||
"confirmRemoveContainer": "¿Está seguro de que desea eliminar el contenedor \"{{name}}\"?",
|
||
"runningContainerWarning": "Advertencia: Este contenedor está actualmente en ejecución y será eliminado a la fuerza.",
|
||
"removing": "Eliminando:",
|
||
"containerNotFound": "Contenedor no encontrado",
|
||
"backToList": "Volver a la lista",
|
||
"logs": "Registros",
|
||
"stats": "Estadísticas",
|
||
"consoleTab": "Consola",
|
||
"failedToFetchLogs": "No se pudieron obtener los registros: {{error}}",
|
||
"failedToDownloadLogs": "Error al descargar los registros: {{error}}",
|
||
"linesToShow": "Líneas para mostrar",
|
||
"last50Lines": "Últimas 50 líneas",
|
||
"last100Lines": "Últimas 100 líneas",
|
||
"last500Lines": "Últimas 500 líneas",
|
||
"last1000Lines": "Últimas 1000 líneas",
|
||
"allLogs": "Todos los registros",
|
||
"showTimestamps": "Mostrar marcas de tiempo",
|
||
"autoRefresh": "Actualización automática",
|
||
"filterLogsPlaceholder": "Filtrar registros...",
|
||
"noLogsAvailable": "No hay registros disponibles"
|
||
},
|
||
"terminal": {
|
||
"title": "Terminal",
|
||
"connect": "Conectarse al host",
|
||
"disconnect": "Desconectar",
|
||
"clear": "Claro",
|
||
"copy": "Copiar",
|
||
"paste": "Pasta",
|
||
"find": "Encontrar",
|
||
"fullscreen": "Pantalla completa",
|
||
"splitHorizontal": "División horizontal",
|
||
"splitVertical": "División vertical",
|
||
"closePanel": "Cerrar panel",
|
||
"reconnect": "Reconectar",
|
||
"sessionEnded": "Sesión terminada",
|
||
"connectionLost": "Conexión perdida",
|
||
"error": "ERROR: {{message}}",
|
||
"disconnected": "Desconectado",
|
||
"connectionClosed": "Conexión cerrada",
|
||
"connectionError": "Error de conexión: {{message}}",
|
||
"connected": "Conectado",
|
||
"sshConnected": "Conexión SSH establecida",
|
||
"authError": "Error de autenticación: {{message}}",
|
||
"unknownError": "Se produjo un error desconocido",
|
||
"messageParseError": "No se pudo analizar el mensaje del servidor",
|
||
"websocketError": "Error de conexión de WebSocket",
|
||
"connecting": "Conectando...",
|
||
"reconnecting": "Reconectando... ({{attempt}}/{{max}})",
|
||
"reconnected": "Reconectado exitosamente",
|
||
"maxReconnectAttemptsReached": "Se alcanzó el máximo de intentos de reconexión",
|
||
"connectionTimeout": "Tiempo de espera de conexión",
|
||
"terminalTitle": "Terminal - {{host}}",
|
||
"terminalWithPath": "Terminal - {{host}}:{{path}}",
|
||
"runTitle": "Corriendo {{command}} - {{host}}",
|
||
"totpRequired": "Se requiere autenticación de dos factores",
|
||
"totpCodeLabel": "Código de verificación",
|
||
"totpPlaceholder": "000000",
|
||
"totpVerify": "Verificar",
|
||
"sudoPasswordPopupTitle": "¿Insertar contraseña?",
|
||
"sudoPasswordPopupHint": "Presione Enter para insertar, Esc para descartar",
|
||
"sudoPasswordPopupConfirm": "Insertar",
|
||
"sudoPasswordPopupDismiss": "Despedir"
|
||
},
|
||
"fileManager": {
|
||
"title": "Gestor de archivos",
|
||
"file": "Archivo",
|
||
"folder": "Carpeta",
|
||
"connectToSsh": "Conéctese a SSH para utilizar operaciones con archivos",
|
||
"uploadFile": "Subir archivo",
|
||
"downloadFile": "Descargar",
|
||
"extractArchive": "Extraer archivo",
|
||
"extractingArchive": "Extrayendo {{name}}...",
|
||
"archiveExtractedSuccessfully": "{{name}} extraído exitosamente",
|
||
"extractFailed": "Extracción fallida",
|
||
"compressFile": "Comprimir archivo",
|
||
"compressFiles": "Comprimir archivos",
|
||
"compressFilesDesc": "Comprimir {{count}} elementos en un archivo",
|
||
"archiveName": "Nombre del archivo",
|
||
"enterArchiveName": "Introduzca el nombre del archivo...",
|
||
"compressionFormat": "Formato de compresión",
|
||
"selectedFiles": "Archivos seleccionados",
|
||
"andMoreFiles": "y {{count}} más...",
|
||
"compress": "Comprimir",
|
||
"compressingFiles": "Comprimiendo {{count}} elementos en {{name}}...",
|
||
"filesCompressedSuccessfully": "{{name}} creado exitosamente",
|
||
"compressFailed": "La compresión falló",
|
||
"edit": "Editar",
|
||
"preview": "Avance",
|
||
"previous": "Anterior",
|
||
"next": "Próximo",
|
||
"pageXOfY": "Página {{current}} de {{total}}",
|
||
"zoomOut": "Alejar",
|
||
"zoomIn": "Dar un golpe de zoom",
|
||
"newFile": "Nuevo archivo",
|
||
"newFolder": "Nueva carpeta",
|
||
"rename": "Rebautizar",
|
||
"renameItem": "Cambiar el nombre del elemento",
|
||
"deleteItem": "Eliminar elemento",
|
||
"currentPath": "Ruta actual",
|
||
"uploadFileTitle": "Subir archivo",
|
||
"maxFileSize": "Máx.: 1 GB (JSON) / 5 GB (binario) - Se admiten archivos grandes",
|
||
"removeFile": "Eliminar archivo",
|
||
"clickToSelectFile": "Haga clic para seleccionar un archivo",
|
||
"chooseFile": "Seleccionar archivo",
|
||
"uploading": "Subiendo...",
|
||
"downloading": "Descargando...",
|
||
"uploadingFile": "Subiendo {{name}}...",
|
||
"uploadingLargeFile": "Subiendo archivo grande {{name}} ({{size}})...",
|
||
"downloadingFile": "Descargando {{name}}...",
|
||
"creatingFile": "Creando {{name}}...",
|
||
"creatingFolder": "Creando {{name}}...",
|
||
"deletingItem": "Eliminando {{type}} {{name}}...",
|
||
"renamingItem": "Renombrando {{type}} {{oldName}} a {{newName}}...",
|
||
"createNewFile": "Crear nuevo archivo",
|
||
"fileName": "Nombre del archivo",
|
||
"creating": "Creando...",
|
||
"createFile": "Crear archivo",
|
||
"createNewFolder": "Crear nueva carpeta",
|
||
"folderName": "Nombre de la carpeta",
|
||
"createFolder": "Crear carpeta",
|
||
"warningCannotUndo": "Advertencia: Esta acción no se puede deshacer.",
|
||
"itemPath": "Ruta del artículo",
|
||
"thisIsDirectory": "Este es un directorio (se eliminará recursivamente)",
|
||
"deleting": "Borrando...",
|
||
"currentPathLabel": "Ruta actual",
|
||
"newName": "Nuevo nombre",
|
||
"thisIsDirectoryRename": "Este es un directorio",
|
||
"renaming": "Renombrando...",
|
||
"fileUploadedSuccessfully": "El archivo \"{{name}}\" se cargó correctamente",
|
||
"failedToUploadFile": "No se pudo cargar el archivo",
|
||
"fileDownloadedSuccessfully": "Archivo \"{{name}}\" descargado exitosamente",
|
||
"failedToDownloadFile": "No se pudo descargar el archivo",
|
||
"noFileContent": "No se recibió ningún contenido de archivo",
|
||
"filePath": "Ruta del archivo",
|
||
"fileCreatedSuccessfully": "Archivo \"{{name}}\" creado exitosamente",
|
||
"failedToCreateFile": "No se pudo crear el archivo",
|
||
"folderCreatedSuccessfully": "Carpeta \"{{name}}\" creada correctamente",
|
||
"failedToCreateFolder": "No se pudo crear la carpeta",
|
||
"failedToCreateItem": "No se pudo crear el artículo",
|
||
"operationFailed": "{{operation}} operación fallida para {{name}}: {{error}}",
|
||
"failedToResolveSymlink": "No se pudo resolver el enlace simbólico",
|
||
"itemDeletedSuccessfully": "{{type}} eliminado exitosamente",
|
||
"itemsDeletedSuccessfully": "{{count}} elementos eliminados correctamente",
|
||
"failedToDeleteItems": "No se pudieron eliminar elementos",
|
||
"dragFilesToUpload": "Suelte los archivos aquí para cargarlos",
|
||
"emptyFolder": "Esta carpeta está vacía",
|
||
"itemCount": "{{count}} artículos",
|
||
"selectedCount": "{{count}} seleccionado",
|
||
"searchFiles": "Buscar archivos...",
|
||
"upload": "Subir",
|
||
"selectHostToStart": "Seleccione un host para iniciar la gestión de archivos",
|
||
"failedToConnect": "No se pudo conectar a SSH",
|
||
"failedToLoadDirectory": "No se pudo cargar el directorio",
|
||
"noSSHConnection": "No hay conexión SSH disponible",
|
||
"enterFolderName": "Introduzca el nombre de la carpeta:",
|
||
"enterFileName": "Introduzca el nombre del archivo:",
|
||
"copy": "Copiar",
|
||
"cut": "Cortar",
|
||
"paste": "Pasta",
|
||
"copyPath": "Copiar ruta",
|
||
"copyPaths": "Copiar rutas",
|
||
"delete": "Borrar",
|
||
"properties": "Propiedades",
|
||
"refresh": "Refrescar",
|
||
"downloadFiles": "Descargar {{count}} archivos al navegador",
|
||
"copyFiles": "Copiar {{count}} elementos",
|
||
"cutFiles": "Cortar {{count}} artículos",
|
||
"deleteFiles": "Eliminar {{count}} elementos",
|
||
"filesCopiedToClipboard": "{{count}} elementos copiados al portapapeles",
|
||
"filesCutToClipboard": "{{count}} elementos cortados al portapapeles",
|
||
"pathCopiedToClipboard": "Ruta copiada al portapapeles",
|
||
"pathsCopiedToClipboard": "{{count}} rutas copiadas al portapapeles",
|
||
"failedToCopyPath": "No se pudo copiar la ruta al portapapeles",
|
||
"movedItems": "Se movieron {{count}} elementos",
|
||
"failedToDeleteItem": "No se pudo eliminar el elemento",
|
||
"itemRenamedSuccessfully": "{{type}} renombrado exitosamente",
|
||
"failedToRenameItem": "No se pudo cambiar el nombre del elemento",
|
||
"download": "Descargar",
|
||
"permissions": "Permisos",
|
||
"size": "Tamaño",
|
||
"modified": "Modificado",
|
||
"path": "Camino",
|
||
"confirmDelete": "¿Estás seguro que deseas eliminar {{name}}?",
|
||
"uploadSuccess": "Archivo cargado exitosamente",
|
||
"uploadFailed": "Error en la carga del archivo",
|
||
"downloadSuccess": "Archivo descargado exitosamente",
|
||
"downloadFailed": "Error en la descarga del archivo",
|
||
"permissionDenied": "Permiso denegado",
|
||
"checkDockerLogs": "Consulte los registros de Docker para obtener información detallada sobre errores",
|
||
"internalServerError": "Se produjo un error interno del servidor",
|
||
"serverError": "Error del servidor",
|
||
"error": "Error",
|
||
"requestFailed": "La solicitud falló con el código de estado",
|
||
"unknownFileError": "desconocido",
|
||
"cannotReadFile": "No se puede leer el archivo",
|
||
"noSshSessionId": "No hay ningún ID de sesión SSH disponible",
|
||
"noFilePath": "No hay ninguna ruta de archivo disponible",
|
||
"noCurrentHost": "No hay ningún host disponible actualmente",
|
||
"fileSavedSuccessfully": "Archivo guardado exitosamente",
|
||
"saveTimeout": "Se agotó el tiempo de espera para guardar la operación. Es posible que el archivo se haya guardado correctamente, pero la operación tardó demasiado en completarse. Consulte los registros de Docker para confirmarlo.",
|
||
"failedToSaveFile": "No se pudo guardar el archivo",
|
||
"deletedSuccessfully": "eliminado exitosamente",
|
||
"connectToServer": "Conectarse a un servidor",
|
||
"selectServerToEdit": "Seleccione un servidor de la barra lateral para comenzar a editar archivos",
|
||
"fileOperations": "Operaciones de archivos",
|
||
"confirmDeleteMessage": "¿Estás seguro que deseas eliminar {{name}}?",
|
||
"confirmDeleteSingleItem": "¿Estás seguro de que deseas eliminar permanentemente \"{{name}}\"?",
|
||
"confirmDeleteMultipleItems": "¿Está seguro de que desea eliminar permanentemente {{count}} elementos?",
|
||
"confirmDeleteMultipleItemsWithFolders": "¿Seguro que desea eliminar permanentemente {{count}} elementos? Esto incluye las carpetas y su contenido.",
|
||
"confirmDeleteFolder": "¿Está seguro de que desea eliminar permanentemente la carpeta \"{{name}}\" y todo su contenido?",
|
||
"deleteDirectoryWarning": "Esto eliminará la carpeta y todo su contenido.",
|
||
"actionCannotBeUndone": "Esta acción no se puede deshacer.",
|
||
"permanentDeleteWarning": "Esta acción no se puede deshacer. Los elementos se eliminarán permanentemente del servidor.",
|
||
"recent": "Reciente",
|
||
"pinned": "Fijado",
|
||
"folderShortcuts": "Accesos directos a carpetas",
|
||
"noRecentFiles": "No hay archivos recientes.",
|
||
"noPinnedFiles": "No hay archivos anclados.",
|
||
"enterFolderPath": "Ingrese la ruta de la carpeta",
|
||
"noShortcuts": "Sin atajos.",
|
||
"searchFilesAndFolders": "Buscar archivos y carpetas...",
|
||
"noFilesOrFoldersFound": "No se encontraron archivos ni carpetas.",
|
||
"failedToConnectSSH": "No se pudo conectar a SSH",
|
||
"failedToReconnectSSH": "No se pudo reconectar la sesión SSH",
|
||
"failedToListFiles": "No se pudieron listar los archivos",
|
||
"fetchHomeDataTimeout": "Se agotó el tiempo de recuperación de datos de inicio",
|
||
"sshStatusCheckTimeout": "Se agotó el tiempo de verificación del estado de SSH",
|
||
"sshReconnectionTimeout": "Se agotó el tiempo de reconexión de SSH",
|
||
"saveOperationTimeout": "Se agotó el tiempo de espera para la operación de guardado",
|
||
"cannotSaveFile": "No se puede guardar el archivo",
|
||
"dragSystemFilesToUpload": "Arrastre los archivos del sistema aquí para cargarlos",
|
||
"dragFilesToWindowToDownload": "Arrastre los archivos fuera de la ventana para descargarlos",
|
||
"openTerminalHere": "Abra la terminal aquí",
|
||
"run": "Correr",
|
||
"saveToSystem": "Guardar como...",
|
||
"selectLocationToSave": "Seleccione la ubicación para guardar",
|
||
"openTerminalInFolder": "Abrir terminal en esta carpeta",
|
||
"openTerminalInFileLocation": "Abrir terminal en la ubicación del archivo",
|
||
"terminalWithPath": "Terminal - {{host}}:{{path}}",
|
||
"runningFile": "Corriendo - {{file}}",
|
||
"onlyRunExecutableFiles": "Sólo se pueden ejecutar archivos ejecutables",
|
||
"noHostSelected": "No se ha seleccionado ningún host",
|
||
"starred": "Sembrado de estrellas",
|
||
"shortcuts": "Atajos",
|
||
"directories": "Directorios",
|
||
"removedFromRecentFiles": "Se eliminó \"{{name}}\" de los archivos recientes",
|
||
"removeFailed": "Eliminación fallida",
|
||
"unpinnedSuccessfully": "\"{{name}}\" desanclado exitosamente",
|
||
"unpinFailed": "Error al desanclar",
|
||
"removedShortcut": "Se eliminó el acceso directo \"{{name}}\"",
|
||
"removeShortcutFailed": "Error al eliminar el acceso directo",
|
||
"clearedAllRecentFiles": "Se borraron todos los archivos recientes",
|
||
"clearFailed": "Error al borrar",
|
||
"removeFromRecentFiles": "Eliminar de archivos recientes",
|
||
"clearAllRecentFiles": "Borrar todos los archivos recientes",
|
||
"unpinFile": "Desanclar archivo",
|
||
"removeShortcut": "Eliminar acceso directo",
|
||
"saveFilesToSystem": "Guardar {{count}} archivos como...",
|
||
"pinFile": "Archivo PIN",
|
||
"addToShortcuts": "Agregar a accesos directos",
|
||
"downloadToDefaultLocation": "Descargar a la ubicación predeterminada",
|
||
"pasteFailed": "Pegado fallido",
|
||
"noUndoableActions": "No hay acciones que se puedan deshacer",
|
||
"undoCopySuccess": "Operación de copia deshecha: Se eliminaron {{count}} archivos copiados",
|
||
"undoCopyFailedDelete": "Error al deshacer: no se pudo eliminar ningún archivo copiado",
|
||
"undoCopyFailedNoInfo": "Error al deshacer: no se pudo encontrar la información del archivo copiado",
|
||
"undoMoveSuccess": "Operación de movimiento deshecha: se movieron {{count}} archivos a la ubicación original",
|
||
"undoMoveFailedMove": "Error al deshacer: no se pudo mover ningún archivo hacia atrás",
|
||
"undoMoveFailedNoInfo": "Error al deshacer: no se pudo encontrar la información del archivo movido",
|
||
"undoDeleteNotSupported": "La operación de eliminación no se puede deshacer: los archivos se han eliminado permanentemente del servidor",
|
||
"undoTypeNotSupported": "Tipo de operación de deshacer no compatible",
|
||
"undoOperationFailed": "La operación de deshacer falló",
|
||
"unknownError": "Error desconocido",
|
||
"enterPath": "Introducir ruta...",
|
||
"editPath": "Editar ruta",
|
||
"confirm": "Confirmar",
|
||
"cancel": "Cancelar",
|
||
"find": "Encontrar...",
|
||
"replaceWith": "Reemplazar con...",
|
||
"replace": "Reemplazar",
|
||
"replaceAll": "Reemplazar todo",
|
||
"downloadInstead": "Descargar en su lugar",
|
||
"keyboardShortcuts": "Atajos de teclado",
|
||
"searchAndReplace": "Buscar y reemplazar",
|
||
"editing": "Edición",
|
||
"navigation": "Navegación",
|
||
"code": "Código",
|
||
"search": "Buscar",
|
||
"findNext": "Encuentra el siguiente",
|
||
"findPrevious": "Encontrar anterior",
|
||
"save": "Ahorrar",
|
||
"selectAll": "Seleccionar todo",
|
||
"undo": "Deshacer",
|
||
"redo": "Rehacer",
|
||
"goToLine": "Ir a la línea",
|
||
"moveLineUp": "Mover la alineación",
|
||
"moveLineDown": "Mover línea hacia abajo",
|
||
"toggleComment": "Cambiar comentario",
|
||
"indent": "Sangrar",
|
||
"outdent": "Anular sangría",
|
||
"autoComplete": "Autocompletar",
|
||
"imageLoadError": "No se pudo cargar la imagen",
|
||
"rotate": "Girar",
|
||
"originalSize": "Tamaño original",
|
||
"startTyping": "Empieza a escribir...",
|
||
"unknownSize": "Tamaño desconocido",
|
||
"fileIsEmpty": "El archivo está vacío",
|
||
"largeFileWarning": "Advertencia de archivo grande",
|
||
"largeFileWarningDesc": "Este archivo tiene un tamaño de {{size}}, lo que puede causar problemas de rendimiento cuando se abre como texto.",
|
||
"fileNotFoundAndRemoved": "El archivo \"{{name}}\" no se encontró y se eliminó de los archivos recientes/fijados",
|
||
"failedToLoadFile": "No se pudo cargar el archivo: {{error}}",
|
||
"serverErrorOccurred": "Se produjo un error en el servidor. Inténtelo de nuevo más tarde.",
|
||
"autoSaveFailed": "Error al guardar automáticamente",
|
||
"fileAutoSaved": "Archivo guardado automáticamente",
|
||
"moveFileFailed": "No se pudo mover {{name}}",
|
||
"moveOperationFailed": "La operación de movimiento falló",
|
||
"canOnlyCompareFiles": "Sólo se pueden comparar dos archivos",
|
||
"comparingFiles": "Comparando archivos: {{file1}} y {{file2}}",
|
||
"dragFailed": "La operación de arrastre falló",
|
||
"filePinnedSuccessfully": "Archivo \"{{name}}\" fijado correctamente",
|
||
"pinFileFailed": "No se pudo fijar el archivo",
|
||
"fileUnpinnedSuccessfully": "El archivo \"{{name}}\" se desancló correctamente",
|
||
"unpinFileFailed": "No se pudo desanclar el archivo",
|
||
"shortcutAddedSuccessfully": "El acceso directo a la carpeta \"{{name}}\" se agregó correctamente",
|
||
"addShortcutFailed": "No se pudo agregar el acceso directo",
|
||
"operationCompletedSuccessfully": "{{operation}} {{count}} artículos cargados con éxito",
|
||
"operationCompleted": "{{operation}} {{count}} artículos",
|
||
"downloadFileSuccess": "Archivo {{name}} descargado exitosamente",
|
||
"downloadFileFailed": "Descarga fallida",
|
||
"moveTo": "Mover a {{name}}",
|
||
"diffCompareWith": "Diferencia comparar con {{name}}",
|
||
"dragOutsideToDownload": "Arrastre fuera de la ventana para descargar ({{count}} archivos)",
|
||
"newFolderDefault": "Nueva carpeta",
|
||
"newFileDefault": "NuevoArchivo.txt",
|
||
"successfullyMovedItems": "Se movieron con éxito {{count}} elementos a {{target}}",
|
||
"move": "Mover",
|
||
"searchInFile": "Buscar en el archivo (Ctrl+F)",
|
||
"showKeyboardShortcuts": "Mostrar atajos de teclado",
|
||
"startWritingMarkdown": "Comience a escribir su contenido en Markdown...",
|
||
"loadingFileComparison": "Cargando comparación de archivos...",
|
||
"reload": "Recargar",
|
||
"compare": "Comparar",
|
||
"sideBySide": "Juntos",
|
||
"inline": "En línea",
|
||
"fileComparison": "Comparación de archivos: {{file1}} vs {{file2}}",
|
||
"fileTooLarge": "Archivo demasiado grande: {{error}}",
|
||
"sshConnectionFailed": "Error de conexión SSH. Por favor, revise su conexión a {{name}} ({{ip}}:{{port}})",
|
||
"loadFileFailed": "No se pudo cargar el archivo: {{error}}",
|
||
"connectedSuccessfully": "Conectado exitosamente",
|
||
"totpVerificationFailed": "La verificación TOTP falló",
|
||
"verificationCodePrompt": "Código de verificación:",
|
||
"changePermissions": "Cambiar permisos",
|
||
"changePermissionsDesc": "Modificar los permisos de archivos para",
|
||
"currentPermissions": "Permisos actuales",
|
||
"newPermissions": "Nuevos permisos",
|
||
"owner": "Dueño",
|
||
"group": "Grupo",
|
||
"others": "Otros",
|
||
"read": "Leer",
|
||
"write": "Escribir",
|
||
"execute": "Ejecutar",
|
||
"permissionsChangedSuccessfully": "Los permisos se cambiaron correctamente",
|
||
"failedToChangePermissions": "No se pudieron cambiar los permisos"
|
||
},
|
||
"tunnel": {
|
||
"noTunnelsConfigured": "No hay túneles configurados",
|
||
"configureTunnelsInHostSettings": "Configure las conexiones de túnel en el Administrador de host para comenzar"
|
||
},
|
||
"tunnels": {
|
||
"title": "Túneles SSH",
|
||
"noSshTunnels": "Sin túneles SSH",
|
||
"createFirstTunnelMessage": "Aún no has creado ningún túnel SSH. Configura las conexiones de túnel en el Administrador de Host para empezar.",
|
||
"connected": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"connecting": "Conectando...",
|
||
"disconnecting": "Desconectando...",
|
||
"unknownTunnelStatus": "Desconocido",
|
||
"statusUnknown": "Desconocido",
|
||
"unknown": "Desconocido",
|
||
"error": "Error",
|
||
"failed": "Fallido",
|
||
"retrying": "Reintentando",
|
||
"waiting": "Espera",
|
||
"waitingForRetry": "Esperando reintento",
|
||
"retryingConnection": "Reintentando la conexión",
|
||
"canceling": "Cancelado...",
|
||
"connect": "Conectar",
|
||
"disconnect": "Desconectar",
|
||
"cancel": "Cancelar",
|
||
"port": "Puerto",
|
||
"attempt": "Intento {{current}} de {{max}}",
|
||
"nextRetryIn": "Próximo reintento en {{seconds}} segundos",
|
||
"checkDockerLogs": "Verifique sus registros de Docker para conocer el motivo del error y únase a",
|
||
"orCreate": "o crear una",
|
||
"noTunnelConnections": "No hay conexiones de túnel configuradas",
|
||
"tunnelConnections": "Conexiones de túnel",
|
||
"addTunnel": "Añadir túnel",
|
||
"editTunnel": "Editar túnel",
|
||
"deleteTunnel": "Eliminar túnel",
|
||
"tunnelName": "Nombre del túnel",
|
||
"localPort": "Puerto local",
|
||
"remoteHost": "Host remoto",
|
||
"remotePort": "Puerto remoto",
|
||
"autoStart": "Inicio automático",
|
||
"status": "Estado",
|
||
"active": "Activo",
|
||
"inactive": "Inactivo",
|
||
"start": "Comenzar",
|
||
"stop": "Detener",
|
||
"restart": "Reanudar",
|
||
"connectionType": "Tipo de conexión",
|
||
"local": "Local",
|
||
"remote": "Remoto",
|
||
"dynamic": "Dinámica",
|
||
"unknownConnectionStatus": "Desconocido",
|
||
"portMapping": "Puerto {{sourcePort}} → {{endpointHost}}:{{endpointPort}}",
|
||
"endpointHostNotFound": "No se encontró el host del punto final",
|
||
"discord": "Discordia",
|
||
"githubIssue": "Problema de GitHub",
|
||
"forHelp": "para ayuda"
|
||
},
|
||
"serverStats": {
|
||
"title": "Estadísticas del servidor",
|
||
"cpu": "UPC",
|
||
"memory": "Memoria",
|
||
"disk": "Disco",
|
||
"network": "Red",
|
||
"uptime": "Tiempo de actividad",
|
||
"loadAverage": "Promedio: {{avg1}}, {{avg5}}, {{avg15}}",
|
||
"processes": "Procesos",
|
||
"connections": "Conexiones",
|
||
"usage": "Uso",
|
||
"available": "Disponible",
|
||
"total": "Total",
|
||
"free": "Gratis",
|
||
"used": "Usado",
|
||
"percentage": "Porcentaje",
|
||
"refreshStatusAndMetrics": "Estado de actualización y métricas",
|
||
"refreshStatus": "Actualizar estado",
|
||
"fileManagerAlreadyOpen": "El administrador de archivos ya está abierto para este host",
|
||
"openFileManager": "Abrir el Administrador de archivos",
|
||
"cpuCores_one": "{{count}} CPU",
|
||
"cpuCores_other": "{{count}} CPU",
|
||
"naCpus": "N/A CPU(s)",
|
||
"loadAverageNA": "Promedio: N/D",
|
||
"cpuUsage": "Uso de CPU",
|
||
"memoryUsage": "Uso de la memoria",
|
||
"diskUsage": "Uso del disco",
|
||
"rootStorageSpace": "Espacio de almacenamiento raíz",
|
||
"of": "de",
|
||
"feedbackMessage": "¿Tienes ideas sobre el futuro de la gestión de servidores? Compártelas en",
|
||
"failedToFetchHostConfig": "No se pudo obtener la configuración del host",
|
||
"failedToFetchStatus": "No se pudo obtener el estado del servidor",
|
||
"failedToFetchMetrics": "No se pudieron obtener las métricas del servidor",
|
||
"failedToFetchHomeData": "No se pudieron obtener los datos de inicio",
|
||
"loadingMetrics": "Cargando métricas...",
|
||
"connecting": "Conectando...",
|
||
"refreshing": "Refrescante...",
|
||
"serverOffline": "Servidor fuera de línea",
|
||
"cannotFetchMetrics": "No se pueden obtener métricas del servidor sin conexión",
|
||
"totpRequired": "Se requiere autenticación TOTP",
|
||
"totpUnavailable": "Estadísticas del servidor no disponibles para servidores habilitados para TOTP",
|
||
"totpVerified": "TOTP verificado, recopilación de métricas iniciada",
|
||
"totpFailed": "La verificación TOTP falló",
|
||
"totpInvalidCode": "Código de verificación no válido",
|
||
"totpCancelled": "Recopilación de métricas cancelada",
|
||
"authenticationFailed": "Falló la autenticación",
|
||
"noneAuthNotSupported": "Las estadísticas del servidor no admiten el tipo de autenticación \"ninguno\".",
|
||
"load": "Carga",
|
||
"editLayout": "Editar diseño",
|
||
"cancelEdit": "Cancelar",
|
||
"addWidget": "Agregar widget",
|
||
"saveLayout": "Guardar diseño",
|
||
"unsavedChanges": "Cambios no guardados",
|
||
"layoutSaved": "Diseño guardado exitosamente",
|
||
"failedToSaveLayout": "No se pudo guardar el diseño",
|
||
"systemInfo": "Información del sistema",
|
||
"hostname": "Nombre de host",
|
||
"operatingSystem": "Sistema operativo",
|
||
"kernel": "Núcleo",
|
||
"totalUptime": "Tiempo total de actividad",
|
||
"seconds": "artículos de segunda clase",
|
||
"networkInterfaces": "Interfaces de red",
|
||
"noInterfacesFound": "No se encontraron interfaces de red",
|
||
"totalProcesses": "Procesos totales",
|
||
"running": "Correr",
|
||
"noProcessesFound": "No se encontraron procesos",
|
||
"loginStats": "Estadísticas de inicio de sesión SSH",
|
||
"totalLogins": "Total de inicios de sesión",
|
||
"uniqueIPs": "IP únicas",
|
||
"recentSuccessfulLogins": "Inicios de sesión exitosos recientes",
|
||
"recentFailedAttempts": "Intentos fallidos recientes",
|
||
"noRecentLoginData": "No hay datos de inicio de sesión recientes",
|
||
"from": "de",
|
||
"quickActions": "Acciones rápidas",
|
||
"executeQuickAction": "Ejecutar {{name}}",
|
||
"executingQuickAction": "Ejecutando {{name}}...",
|
||
"quickActionSuccess": "{{name}} completado exitosamente",
|
||
"quickActionFailed": "{{name}} falló",
|
||
"quickActionError": "No se pudo ejecutar {{name}}"
|
||
},
|
||
"auth": {
|
||
"tagline": "ADMINISTRADOR DE SERVIDORES SSH",
|
||
"description": "Gestión de conexiones SSH segura, potente e intuitiva",
|
||
"welcomeBack": "Bienvenido de nuevo a TERMIX",
|
||
"createAccount": "Crea tu cuenta TERMIX",
|
||
"continueExternal": "Continuar con un proveedor externo",
|
||
"loginTitle": "Iniciar sesión en Termix",
|
||
"registerTitle": "Crear una cuenta",
|
||
"loginButton": "Acceso",
|
||
"registerButton": "Registro",
|
||
"forgotPassword": "¿Has olvidado tu contraseña?",
|
||
"rememberMe": "Acuérdate de mí",
|
||
"noAccount": "¿No tienes una cuenta?",
|
||
"hasAccount": "¿Ya tienes una cuenta?",
|
||
"loginSuccess": "Inicio de sesión exitoso",
|
||
"loginFailed": "error de inicio de sesion",
|
||
"registerSuccess": "Registro exitoso",
|
||
"registerFailed": "El registro falló",
|
||
"logoutSuccess": "Cerrado sesión exitosamente",
|
||
"invalidCredentials": "Nombre de usuario o contraseña no válidos",
|
||
"accountCreated": "Cuenta creada exitosamente",
|
||
"passwordReset": "Enlace de restablecimiento de contraseña enviado",
|
||
"twoFactorAuth": "Autenticación de dos factores",
|
||
"enterCode": "Introduzca el código de verificación",
|
||
"backupCode": "O utilice un código de respaldo",
|
||
"verifyCode": "Código de verificación",
|
||
"redirectingToApp": "Redireccionando a la aplicación...",
|
||
"enableTwoFactor": "Habilitar la autenticación de dos factores",
|
||
"disableTwoFactor": "Deshabilitar la autenticación de dos factores",
|
||
"scanQRCode": "Escanee este código QR con su aplicación de autenticación",
|
||
"backupCodes": "Códigos de respaldo",
|
||
"saveBackupCodes": "Guarde estos códigos de respaldo en un lugar seguro",
|
||
"twoFactorEnabledSuccess": "¡La autenticación de dos factores se habilitó exitosamente!",
|
||
"twoFactorDisabled": "Autenticación de dos factores deshabilitada",
|
||
"newBackupCodesGenerated": "Nuevos códigos de respaldo generados",
|
||
"backupCodesDownloaded": "Códigos de respaldo descargados",
|
||
"pleaseEnterSixDigitCode": "Por favor, introduzca un código de 6 dígitos",
|
||
"invalidVerificationCode": "Código de verificación no válido",
|
||
"failedToDisableTotp": "No se pudo deshabilitar TOTP",
|
||
"failedToGenerateBackupCodes": "No se pudieron generar códigos de respaldo",
|
||
"enterPassword": "Ingrese su contraseña",
|
||
"lockedOidcAuth": "Bloqueado (Autenticación OIDC)",
|
||
"twoFactorTitle": "Autenticación de dos factores",
|
||
"twoFactorProtected": "Su cuenta está protegida con autenticación de dos factores",
|
||
"twoFactorActive": "La autenticación de dos factores está actualmente activa en su cuenta",
|
||
"disable2FA": "Desactivar 2FA",
|
||
"disableTwoFactorWarning": "Deshabilitar la autenticación de dos factores hará que su cuenta sea menos segura",
|
||
"passwordOrTotpCode": "Contraseña o Código TOTP",
|
||
"or": "O",
|
||
"generateNewBackupCodesText": "Genere nuevos códigos de respaldo si ha perdido los existentes",
|
||
"generateNewBackupCodes": "Generar nuevos códigos de respaldo",
|
||
"yourBackupCodes": "Sus códigos de respaldo",
|
||
"download": "Descargar",
|
||
"setupTwoFactorTitle": "Configurar la autenticación de dos factores",
|
||
"sshAuthenticationRequired": "Se requiere autenticación SSH",
|
||
"sshNoKeyboardInteractive": "Autenticación interactiva mediante teclado no disponible",
|
||
"sshAuthenticationFailed": "Falló la autenticación",
|
||
"sshAuthenticationTimeout": "Tiempo de espera de autenticación",
|
||
"sshNoKeyboardInteractiveDescription": "El servidor no admite la autenticación interactiva mediante teclado. Proporcione su contraseña o clave SSH.",
|
||
"sshAuthFailedDescription": "Las credenciales proporcionadas son incorrectas. Inténtelo de nuevo con credenciales válidas.",
|
||
"sshTimeoutDescription": "Se agotó el tiempo de autenticación. Inténtalo de nuevo.",
|
||
"sshProvideCredentialsDescription": "Proporcione sus credenciales SSH para conectarse a este servidor.",
|
||
"sshPasswordDescription": "Introduzca la contraseña para esta conexión SSH.",
|
||
"sshKeyPasswordDescription": "Si su clave SSH está encriptada, ingrese la contraseña aquí.",
|
||
"step1ScanQR": "Paso 1: Escanea el código QR con tu aplicación de autenticación",
|
||
"manualEntryCode": "Código de entrada manual",
|
||
"cannotScanQRText": "Si no puede escanear el código QR, introdúzcalo manualmente en su aplicación de autenticación.",
|
||
"nextVerifyCode": "Siguiente: Verificar código",
|
||
"verifyAuthenticator": "Verifique su autenticador",
|
||
"step2EnterCode": "Paso 2: Ingrese el código de 6 dígitos de su aplicación de autenticación",
|
||
"verificationCode": "Código de verificación",
|
||
"back": "Atrás",
|
||
"verifyAndEnable": "Verificar y habilitar",
|
||
"saveBackupCodesTitle": "Guarde sus códigos de respaldo",
|
||
"step3StoreCodesSecurely": "Paso 3: Guarde estos códigos en un lugar seguro",
|
||
"importantBackupCodesText": "Guarda estos códigos de respaldo en un lugar seguro. Puedes usarlos para acceder a tu cuenta si pierdes tu dispositivo de autenticación.",
|
||
"completeSetup": "Configuración completa",
|
||
"notEnabledText": "La autenticación de dos factores agrega una capa adicional de seguridad al requerir un código de su aplicación de autenticación al iniciar sesión.",
|
||
"enableTwoFactorButton": "Habilitar la autenticación de dos factores",
|
||
"addExtraSecurityLayer": "Añade una capa adicional de seguridad a tu cuenta",
|
||
"firstUser": "Primer usuario",
|
||
"firstUserMessage": "Eres el primer usuario y serás administrador. Puedes ver la configuración de administrador en el menú desplegable de usuarios de la barra lateral. Si crees que es un error, consulta los registros de Docker o crea una incidencia en GitHub.",
|
||
"external": "Externo",
|
||
"loginWithExternal": "Iniciar sesión con un proveedor externo",
|
||
"loginWithExternalDesc": "Inicie sesión utilizando su proveedor de identidad externo configurado",
|
||
"externalNotSupportedInElectron": "La aplicación Electron aún no admite la autenticación externa. Utilice la versión web para iniciar sesión en OIDC.",
|
||
"resetPasswordButton": "Restablecer contraseña",
|
||
"sendResetCode": "Enviar código de reinicio",
|
||
"resetCodeDesc": "Introduce tu nombre de usuario para recibir un código de restablecimiento de contraseña. Este código se guardará en los registros del contenedor Docker.",
|
||
"resetCode": "Código de reinicio",
|
||
"verifyCodeButton": "Código de verificación",
|
||
"enterResetCode": "Ingrese el código de 6 dígitos de los registros del contenedor Docker para el usuario:",
|
||
"goToLogin": "Ir a Iniciar sesión",
|
||
"newPassword": "Nueva contraseña",
|
||
"confirmNewPassword": "confirmar Contraseña",
|
||
"enterNewPassword": "Ingrese su nueva contraseña para el usuario:",
|
||
"signUp": "Inscribirse",
|
||
"mobileApp": "Aplicación móvil",
|
||
"loggingInToMobileApp": "Iniciar sesión en la aplicación móvil",
|
||
"desktopApp": "Aplicación de escritorio",
|
||
"loggingInToDesktopApp": "Iniciar sesión en la aplicación de escritorio",
|
||
"loggingInToDesktopAppViaWeb": "Iniciar sesión en la aplicación de escritorio a través de la interfaz web",
|
||
"loadingServer": "Cargando servidor...",
|
||
"authenticating": "Autenticando...",
|
||
"dataLossWarning": "Restablecer tu contraseña de esta manera eliminará todos tus hosts SSH, credenciales y demás datos cifrados guardados. Esta acción es irreversible. Úsala solo si has olvidado tu contraseña y no has iniciado sesión.",
|
||
"authenticationDisabled": "Autenticación deshabilitada",
|
||
"authenticationDisabledDesc": "Todos los métodos de autenticación están deshabilitados. Contacte con su administrador.",
|
||
"passwordResetSuccess": "Restablecimiento de contraseña exitoso",
|
||
"passwordResetSuccessDesc": "Tu contraseña se ha restablecido correctamente. Ya puedes iniciar sesión con tu nueva contraseña."
|
||
},
|
||
"errors": {
|
||
"notFound": "Página no encontrada",
|
||
"unauthorized": "Acceso no autorizado",
|
||
"forbidden": "Acceso prohibido",
|
||
"serverError": "Error del servidor",
|
||
"networkError": "Error de red",
|
||
"databaseConnection": "No se pudo conectar a la base de datos",
|
||
"unknownError": "Error desconocido",
|
||
"loginFailed": "error de inicio de sesion",
|
||
"failedPasswordReset": "No se pudo iniciar el restablecimiento de contraseña",
|
||
"failedVerifyCode": "No se pudo verificar el código de restablecimiento",
|
||
"failedCompleteReset": "No se pudo completar el restablecimiento de contraseña",
|
||
"invalidTotpCode": "Código TOTP no válido",
|
||
"failedOidcLogin": "No se pudo iniciar sesión en OIDC",
|
||
"failedUserInfo": "No se pudo obtener la información del usuario después de iniciar sesión en OIDC",
|
||
"oidcAuthFailed": "Error en la autenticación OIDC",
|
||
"noTokenReceived": "No se recibió ningún token al iniciar sesión",
|
||
"invalidAuthUrl": "URL de autorización no válida recibida del backend",
|
||
"invalidInput": "Entrada no válida",
|
||
"requiredField": "Este campo es obligatorio",
|
||
"minLength": "La longitud mínima es {{min}}",
|
||
"maxLength": "La longitud máxima es {{max}}",
|
||
"invalidEmail": "Dirección de correo electrónico no válida",
|
||
"passwordMismatch": "Las contraseñas no coinciden",
|
||
"passwordLoginDisabled": "El inicio de sesión con nombre de usuario y contraseña está actualmente deshabilitado",
|
||
"weakPassword": "La contraseña es demasiado débil",
|
||
"usernameExists": "El nombre de usuario ya existe",
|
||
"emailExists": "El correo electrónico ya existe",
|
||
"loadFailed": "No se pudieron cargar los datos",
|
||
"saveError": "No se pudo guardar",
|
||
"sessionExpired": "La sesión ha expirado. Por favor, inicie sesión nuevamente."
|
||
},
|
||
"messages": {
|
||
"saveSuccess": "Guardado exitosamente",
|
||
"saveError": "No se pudo guardar",
|
||
"deleteSuccess": "Eliminado exitosamente",
|
||
"deleteError": "No se pudo eliminar",
|
||
"updateSuccess": "Actualizado exitosamente",
|
||
"updateError": "Error al actualizar",
|
||
"copySuccess": "Copiado al portapapeles",
|
||
"copyError": "No se pudo copiar",
|
||
"copiedToClipboard": "{{item}} copiado al portapapeles",
|
||
"connectionEstablished": "Conexión establecida",
|
||
"connectionClosed": "Conexión cerrada",
|
||
"reconnecting": "Reconectando...",
|
||
"processing": "Tratamiento...",
|
||
"pleaseWait": "Espere por favor...",
|
||
"registrationDisabled": "El registro de nuevas cuentas está deshabilitado por un administrador. Inicie sesión o contacte con un administrador.",
|
||
"databaseConnected": "La base de datos se conectó correctamente",
|
||
"databaseConnectionFailed": "No se pudo conectar al servidor de base de datos",
|
||
"checkServerConnection": "Por favor verifique su conexión al servidor y vuelva a intentarlo",
|
||
"resetCodeSent": "Código de restablecimiento enviado a los registros de Docker",
|
||
"codeVerified": "Código verificado exitosamente",
|
||
"passwordResetSuccess": "Restablecimiento de contraseña exitoso",
|
||
"loginSuccess": "Inicio de sesión exitoso",
|
||
"registrationSuccess": "Registro exitoso"
|
||
},
|
||
"profile": {
|
||
"title": "Perfil de usuario",
|
||
"description": "Administra la configuración y la seguridad de tu cuenta",
|
||
"security": "Seguridad",
|
||
"changePassword": "Cambiar la contraseña",
|
||
"twoFactorAuth": "Autenticación de dos factores",
|
||
"accountInfo": "Información de la cuenta",
|
||
"role": "Role",
|
||
"admin": "Administrador",
|
||
"user": "Usuario",
|
||
"authMethod": "Método de autenticación",
|
||
"local": "Local",
|
||
"external": "Externo (OIDC)",
|
||
"externalAndLocal": "Doble autenticación",
|
||
"selectPreferredLanguage": "Seleccione su idioma preferido para la interfaz",
|
||
"fileColorCoding": "Codificación de colores de archivos",
|
||
"fileColorCodingDesc": "Codifique por colores los archivos por tipo: carpetas (rojo), archivos (azul), enlaces simbólicos (verde)",
|
||
"commandAutocomplete": "Autocompletar comandos",
|
||
"commandAutocompleteDesc": "Habilite las sugerencias de autocompletado de la tecla Tab para comandos de terminal según su historial de comandos",
|
||
"defaultSnippetFoldersCollapsed": "Contraer carpetas de fragmentos de forma predeterminada",
|
||
"defaultSnippetFoldersCollapsedDesc": "Cuando esté habilitado, todas las carpetas de fragmentos se contraerán cuando abra la pestaña de fragmentos",
|
||
"terminalSyntaxHighlighting": "Resaltado de sintaxis de terminal",
|
||
"showHostTags": "Mostrar etiquetas de anfitrión",
|
||
"showHostTagsDesc": "Mostrar etiquetas debajo de cada host en la barra lateral. Desactivar para ocultar todas las etiquetas.",
|
||
"account": "Cuenta",
|
||
"appearance": "Apariencia",
|
||
"languageLocalization": "Idioma y localización",
|
||
"fileManagerSettings": "Gestor de archivos",
|
||
"terminalSettings": "Terminal",
|
||
"hostSidebarSettings": "Host y barra lateral",
|
||
"snippetsSettings": "Fragmentos",
|
||
"currentPassword": "Contraseña actual",
|
||
"passwordChangedSuccess": "¡Contraseña cambiada correctamente! Inicie sesión nuevamente.",
|
||
"failedToChangePassword": "No se pudo cambiar la contraseña. Por favor, revise su contraseña actual y vuelva a intentarlo.",
|
||
"theme": "Tema",
|
||
"themeLight": "Luz",
|
||
"themeDark": "Oscuro",
|
||
"themeSystem": "Sistema",
|
||
"appearanceDesc": "Seleccione el tema de color para la aplicación",
|
||
"terminalSyntaxHighlightingDesc": "Resalte automáticamente comandos, rutas, IP y niveles de registro en la salida de la terminal"
|
||
},
|
||
"user": {
|
||
"failedToLoadVersionInfo": "No se pudo cargar la información de la versión"
|
||
},
|
||
"placeholders": {
|
||
"enterCode": "000000",
|
||
"ipAddress": "127.0.0.1",
|
||
"port": "22",
|
||
"maxRetries": "3",
|
||
"retryInterval": "10",
|
||
"language": "Idioma",
|
||
"username": "nombre de usuario",
|
||
"hostname": "nombre de host",
|
||
"folder": "carpeta",
|
||
"password": "contraseña",
|
||
"keyPassword": "contraseña clave",
|
||
"sudoPassword": "contraseña sudo (opcional)",
|
||
"notes": "Añadir notas sobre este host...",
|
||
"expirationDate": "Seleccionar fecha de vencimiento",
|
||
"pastePrivateKey": "Pegue su clave privada aquí...",
|
||
"pastePublicKey": "Pegue su clave pública aquí...",
|
||
"credentialName": "Mi servidor SSH",
|
||
"description": "Descripción de las credenciales SSH",
|
||
"searchCredentials": "Buscar credenciales por nombre, nombre de usuario o etiquetas...",
|
||
"sshConfig": "configuración ssh del punto final",
|
||
"homePath": "/hogar",
|
||
"clientId": "su-id-de-cliente",
|
||
"clientSecret": "tu-cliente-secreto",
|
||
"authUrl": "https://your-provider.com/application/o/authorize/",
|
||
"redirectUrl": "https://your-provider.com/application/o/termix/",
|
||
"tokenUrl": "https://your-provider.com/application/o/token/",
|
||
"userIdField": "sub",
|
||
"usernameField": "nombre",
|
||
"scopes": "perfil de correo electrónico openid",
|
||
"userinfoUrl": "https://your-provider.com/application/o/userinfo/",
|
||
"enterUsername": "Introduzca el nombre de usuario para crear el administrador",
|
||
"searchHosts": "Buscar hosts por nombre, nombre de usuario, IP, carpeta, etiquetas...",
|
||
"enterPassword": "Ingrese su contraseña",
|
||
"totpCode": "Código TOTP de 6 dígitos",
|
||
"searchHostsAny": "Buscar hosts (prueba: etiqueta:prod, usuario:root, ip:192.168)...",
|
||
"confirmPassword": "Ingrese su contraseña para confirmar",
|
||
"typeHere": "Escribe aquí",
|
||
"fileName": "Ingrese el nombre del archivo (por ejemplo, ejemplo.txt)",
|
||
"folderName": "Introduzca el nombre de la carpeta",
|
||
"fullPath": "Ingrese la ruta completa al artículo",
|
||
"currentPath": "Ingrese la ruta actual al artículo",
|
||
"newName": "Introduzca un nuevo nombre",
|
||
"socks5Host": "127.0.0.1",
|
||
"socks5Username": "nombre de usuario proxy",
|
||
"socks5Password": "contraseña de proxy",
|
||
"socks5PresetName": "p. ej., cadena VPN de trabajo",
|
||
"socks5PresetDescription": "p. ej., cadena de proxy para acceder a servidores de trabajo",
|
||
"moshCommand": "usuario mosh@servidor",
|
||
"defaultPort": "22",
|
||
"defaultEndpointPort": "224",
|
||
"defaultMaxRetries": "3",
|
||
"defaultRetryInterval": "10"
|
||
},
|
||
"leftSidebar": {
|
||
"failedToLoadHosts": "No se pudieron cargar los hosts",
|
||
"noFolder": "Sin carpeta",
|
||
"passwordRequired": "Se requiere contraseña",
|
||
"failedToDeleteAccount": "No se pudo eliminar la cuenta",
|
||
"failedToMakeUserAdmin": "No se pudo convertir al usuario en administrador",
|
||
"userIsNowAdmin": "El usuario {{username}} ahora es administrador",
|
||
"removeAdminConfirm": "¿Estás seguro de que deseas eliminar el estado de administrador de {{username}}?",
|
||
"deleteUserConfirm": "¿Seguro que desea eliminar al usuario {{username}}? Esta acción no se puede deshacer.",
|
||
"deleteAccount": "Eliminar cuenta",
|
||
"closeDeleteAccount": "Cerrar Eliminar cuenta",
|
||
"deleteAccountWarning": "Esta acción no se puede deshacer. Eliminará permanentemente su cuenta y todos los datos asociados.",
|
||
"deleteAccountWarningDetails": "Al eliminar tu cuenta, se eliminarán todos tus datos, incluyendo hosts SSH, configuraciones y ajustes. Esta acción es irreversible.",
|
||
"deleteAccountWarningShort": "Esta acción no es reversible y eliminará permanentemente su cuenta.",
|
||
"cannotDeleteAccount": "No se puede eliminar la cuenta",
|
||
"lastAdminWarning": "Eres el último usuario administrador. No puedes eliminar tu cuenta, ya que esto dejaría el sistema sin administradores. Primero, asigna otro usuario como administrador o contacta con el soporte del sistema.",
|
||
"confirmPassword": "confirmar Contraseña",
|
||
"deleting": "Borrando...",
|
||
"cancel": "Cancelar"
|
||
},
|
||
"interface": {
|
||
"sidebar": "Barra lateral",
|
||
"toggleSidebar": "Activar o desactivar la barra lateral",
|
||
"close": "Cerca",
|
||
"online": "En línea",
|
||
"offline": "Desconectado",
|
||
"maintenance": "Mantenimiento",
|
||
"degraded": "Degradado",
|
||
"noTunnelConnections": "No hay conexiones de túnel configuradas",
|
||
"discord": "Discordia",
|
||
"connectToSshForOperations": "Conéctese a SSH para utilizar operaciones con archivos",
|
||
"uploadFile": "Subir archivo",
|
||
"newFile": "Nuevo archivo",
|
||
"newFolder": "Nueva carpeta",
|
||
"rename": "Rebautizar",
|
||
"deleteItem": "Eliminar elemento",
|
||
"createNewFile": "Crear nuevo archivo",
|
||
"createNewFolder": "Crear nueva carpeta",
|
||
"renameItem": "Cambiar el nombre del elemento",
|
||
"clickToSelectFile": "Haga clic para seleccionar un archivo",
|
||
"noSshHosts": "Sin hosts SSH",
|
||
"sshHosts": "Hosts SSH",
|
||
"importSshHosts": "Importar hosts SSH desde JSON",
|
||
"clientId": "ID de cliente",
|
||
"clientSecret": "Secreto del cliente",
|
||
"error": "Error",
|
||
"warning": "Advertencia",
|
||
"deleteAccount": "Eliminar cuenta",
|
||
"closeDeleteAccount": "Cerrar Eliminar cuenta",
|
||
"cannotDeleteAccount": "No se puede eliminar la cuenta",
|
||
"confirmPassword": "confirmar Contraseña",
|
||
"deleting": "Borrando...",
|
||
"externalAuth": "Autenticación externa (OIDC)",
|
||
"configureExternalProvider": "Configurar un proveedor de identidad externo para",
|
||
"waitingForRetry": "Esperando reintento",
|
||
"retryingConnection": "Reintentando la conexión",
|
||
"resetSplitSizes": "Restablecer tamaños de división",
|
||
"sshManagerAlreadyOpen": "El administrador SSH ya está abierto",
|
||
"disabledDuringSplitScreen": "Deshabilitado durante la pantalla dividida",
|
||
"unknown": "Desconocido",
|
||
"connected": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"maxRetriesExhausted": "Máximos reintentos agotados",
|
||
"endpointHostNotFound": "No se encontró el host del punto final",
|
||
"administrator": "Administrador",
|
||
"user": "Usuario",
|
||
"external": "Externo",
|
||
"local": "Local",
|
||
"saving": "Ahorro...",
|
||
"saveConfiguration": "Guardar configuración",
|
||
"loading": "Cargando...",
|
||
"refresh": "Refrescar",
|
||
"adding": "Añadiendo...",
|
||
"makeAdmin": "Hacer administrador",
|
||
"verifying": "Verificando...",
|
||
"verifyAndEnable": "Verificar y habilitar",
|
||
"secretKey": "Clave secreta",
|
||
"totpQrCode": "Código QR TOTP",
|
||
"passwordRequired": "Se requiere contraseña cuando se utiliza la autenticación de contraseña",
|
||
"sshKeyRequired": "Se requiere una clave privada SSH cuando se utiliza la autenticación de clave",
|
||
"keyTypeRequired": "El tipo de clave es necesario cuando se utiliza la autenticación de clave",
|
||
"validSshConfigRequired": "Debe seleccionar una configuración SSH válida de la lista",
|
||
"updateHost": "Actualizar host",
|
||
"addHost": "Agregar host",
|
||
"editHost": "Editar host",
|
||
"pinConnection": "Conexión de pines",
|
||
"authentication": "Autenticación",
|
||
"password": "Contraseña",
|
||
"key": "Llave",
|
||
"sshPrivateKey": "Clave privada SSH",
|
||
"keyPassword": "Contraseña de clave",
|
||
"keyType": "Tipo de clave",
|
||
"enableTerminal": "Habilitar terminal",
|
||
"enableTunnel": "Habilitar túnel",
|
||
"enableFileManager": "Habilitar el Administrador de archivos",
|
||
"defaultPath": "Ruta predeterminada",
|
||
"tunnelConnections": "Conexiones de túnel",
|
||
"maxRetries": "Máximo de reintentos",
|
||
"upload": "Subir",
|
||
"updateKey": "Actualizar clave",
|
||
"productionFolder": "Producción",
|
||
"databaseServer": "Servidor de base de datos",
|
||
"developmentServer": "Servidor de desarrollo",
|
||
"developmentFolder": "Desarrollo",
|
||
"webServerProduction": "Servidor web - Producción",
|
||
"unknownError": "Error desconocido",
|
||
"failedToInitiatePasswordReset": "No se pudo iniciar el restablecimiento de contraseña",
|
||
"failedToVerifyResetCode": "No se pudo verificar el código de restablecimiento",
|
||
"failedToCompletePasswordReset": "No se pudo completar el restablecimiento de contraseña",
|
||
"invalidTotpCode": "Código TOTP no válido",
|
||
"failedToStartOidcLogin": "No se pudo iniciar sesión en OIDC",
|
||
"failedToGetUserInfoAfterOidc": "No se pudo obtener la información del usuario después de iniciar sesión en OIDC",
|
||
"loginWithExternalProvider": "Iniciar sesión con un proveedor externo",
|
||
"loginWithExternal": "Iniciar sesión con un proveedor externo",
|
||
"sendResetCode": "Enviar código de reinicio",
|
||
"verifyCode": "Código de verificación",
|
||
"resetPassword": "Restablecer contraseña",
|
||
"login": "Acceso",
|
||
"signUp": "Inscribirse",
|
||
"failedToUpdateOidcConfig": "No se pudo actualizar la configuración de OIDC",
|
||
"failedToMakeUserAdmin": "No se pudo convertir al usuario en administrador",
|
||
"failedToStartTotpSetup": "No se pudo iniciar la configuración de TOTP",
|
||
"invalidVerificationCode": "Código de verificación no válido",
|
||
"failedToDisableTotp": "No se pudo deshabilitar TOTP",
|
||
"failedToGenerateBackupCodes": "No se pudieron generar códigos de respaldo"
|
||
},
|
||
"mobile": {
|
||
"selectHostToStart": "Seleccione un host para iniciar su sesión de terminal",
|
||
"limitedSupportMessage": "La compatibilidad con el sitio web móvil aún está en desarrollo. Usa la aplicación móvil para una mejor experiencia.",
|
||
"mobileAppInProgress": "La aplicación móvil está en progreso",
|
||
"mobileAppInProgressDesc": "Estamos trabajando en una aplicación móvil dedicada para brindar una mejor experiencia en dispositivos móviles.",
|
||
"viewMobileAppDocs": "Instalar la aplicación móvil",
|
||
"mobileAppDocumentation": "Documentación de la aplicación móvil"
|
||
},
|
||
"dashboard": {
|
||
"title": "Panel",
|
||
"github": "GitHub",
|
||
"support": "Apoyo",
|
||
"discord": "Discordia",
|
||
"donate": "Donar",
|
||
"serverOverview": "Descripción general del servidor",
|
||
"version": "Versión",
|
||
"upToDate": "A hoy",
|
||
"updateAvailable": "Actualización disponible",
|
||
"uptime": "Tiempo de actividad",
|
||
"database": "Base de datos",
|
||
"healthy": "Saludable",
|
||
"error": "Error",
|
||
"totalServers": "Servidores totales",
|
||
"totalTunnels": "Túneles totales",
|
||
"totalCredentials": "Credenciales totales",
|
||
"recentActivity": "Actividad reciente",
|
||
"reset": "Reiniciar",
|
||
"loadingRecentActivity": "Cargando actividad reciente...",
|
||
"noRecentActivity": "No hay actividad reciente",
|
||
"quickActions": "Acciones rápidas",
|
||
"addHost": "Agregar host",
|
||
"addCredential": "Agregar credencial",
|
||
"adminSettings": "Configuración de administrador",
|
||
"userProfile": "Perfil de usuario",
|
||
"serverStats": "Estadísticas del servidor",
|
||
"loadingServerStats": "Cargando estadísticas del servidor...",
|
||
"noServerData": "No hay datos del servidor disponibles",
|
||
"cpu": "UPC",
|
||
"ram": "RAM",
|
||
"notAvailable": "N / A"
|
||
},
|
||
"rbac": {
|
||
"shareHost": "Compartir anfitrión",
|
||
"shareHostTitle": "Compartir acceso al host",
|
||
"shareHostDescription": "Otorgar acceso temporal o permanente a este host",
|
||
"targetUser": "Usuario objetivo",
|
||
"selectUser": "Seleccione un usuario para compartir",
|
||
"duration": "Duración",
|
||
"durationHours": "Duración (horas)",
|
||
"neverExpires": "Nunca caduca",
|
||
"permissionLevel": "Nivel de permiso",
|
||
"permissionLevels": {
|
||
"readonly": "Sólo lectura",
|
||
"readonlyDesc": "Solo se puede ver, no se puede ingresar ningún comando",
|
||
"restricted": "Restringido",
|
||
"restrictedDesc": "Bloquea comandos peligrosos (passwd, rm -rf, etc.)",
|
||
"monitored": "Monitoreado",
|
||
"monitoredDesc": "Graba todos los comandos pero no los bloquea (recomendado)",
|
||
"full": "Acceso completo",
|
||
"fullDesc": "Sin restricciones (No recomendado)"
|
||
},
|
||
"blockedCommands": "Comandos bloqueados",
|
||
"blockedCommandsPlaceholder": "Introduzca comandos para bloquear, por ejemplo, passwd, rm, dd",
|
||
"maxSessionDuration": "Duración máxima de la sesión (minutos)",
|
||
"createTempUser": "Crear usuario temporal",
|
||
"createTempUserDesc": "Crea un usuario restringido en el servidor en lugar de compartir tus credenciales. Requiere acceso a sudo. La opción más segura.",
|
||
"expiresAt": "Caduca a las",
|
||
"expiresIn": "Caduca en {{hours}} horas",
|
||
"expired": "Venció",
|
||
"grantedBy": "Concedido por",
|
||
"accessLevel": "Nivel de acceso",
|
||
"lastAccessed": "Último acceso",
|
||
"accessCount": "Conteo de acceso",
|
||
"revokeAccess": "Revocar acceso",
|
||
"confirmRevokeAccess": "¿Está seguro de que desea revocar el acceso a {{username}}?",
|
||
"hostSharedSuccessfully": "El host se compartió exitosamente con {{username}}",
|
||
"hostAccessUpdated": "Acceso al host actualizado",
|
||
"failedToShareHost": "No se pudo compartir el host",
|
||
"accessRevokedSuccessfully": "Acceso revocado exitosamente",
|
||
"failedToRevokeAccess": "No se pudo revocar el acceso",
|
||
"shared": "Compartido",
|
||
"sharedHosts": "Hosts compartidos",
|
||
"sharedWithMe": "Compartido conmigo",
|
||
"noSharedHosts": "No hay hosts compartidos contigo",
|
||
"owner": "Dueño",
|
||
"viewAccessList": "Ver lista de acceso",
|
||
"accessList": "Lista de acceso",
|
||
"noAccessGranted": "No se ha concedido acceso a este host",
|
||
"noAccessGrantedMessage": "Aún no se ha concedido acceso a ningún usuario a este host",
|
||
"manageAccessFor": "Administrar el acceso para",
|
||
"totalAccessRecords": "{{count}} registro(s) de acceso",
|
||
"neverAccessed": "Nunca",
|
||
"timesAccessed": "{{count}} vez(es)",
|
||
"daysRemaining": "{{days}} día(s)",
|
||
"hoursRemaining": "{{hours}} hora(s)",
|
||
"failedToFetchAccessList": "No se pudo obtener la lista de acceso",
|
||
"currentAccess": "Acceso actual",
|
||
"securityWarning": "Advertencia de seguridad",
|
||
"securityWarningMessage": "Compartir credenciales otorga al usuario acceso total para realizar cualquier operación en el servidor, incluyendo cambiar contraseñas y eliminar archivos. Compártalas solo con usuarios de confianza.",
|
||
"tempUserRecommended": "Recomendamos habilitar 'Crear usuario temporal' para mayor seguridad.",
|
||
"roleManagement": "Gestión de roles",
|
||
"manageRoles": "Administrar roles",
|
||
"manageRolesFor": "Administrar roles para {{username}}",
|
||
"assignRole": "Asignar rol",
|
||
"removeRole": "Eliminar rol",
|
||
"userRoles": "Roles de usuario",
|
||
"permissions": "Permisos",
|
||
"systemRole": "Rol del sistema",
|
||
"customRole": "Rol personalizado",
|
||
"roleAssignedSuccessfully": "Rol asignado a {{username}} exitosamente",
|
||
"failedToAssignRole": "No se pudo asignar el rol",
|
||
"roleRemovedSuccessfully": "Rol eliminado de {{username}} exitosamente",
|
||
"failedToRemoveRole": "No se pudo eliminar el rol",
|
||
"cannotRemoveSystemRole": "No se puede eliminar la función del sistema",
|
||
"cannotShareWithSelf": "No puedes compartir el host contigo mismo",
|
||
"noCustomRolesToAssign": "No hay roles personalizados disponibles. Los roles del sistema se asignan automáticamente.",
|
||
"credentialSharingWarning": "Autenticación de credenciales no compatible para compartir",
|
||
"credentialRequired": "Se requieren credenciales al compartir un host",
|
||
"credentialRequiredDescription": "Este host no utiliza autenticación basada en credenciales. Para compartir hosts, debido al cifrado por usuario, el host debe usar autenticación basada en credenciales.",
|
||
"auditLogs": "Registros de auditoría",
|
||
"viewAuditLogs": "Ver registros de auditoría",
|
||
"action": "Acción",
|
||
"resourceType": "Tipo de recurso",
|
||
"resourceName": "Nombre del recurso",
|
||
"timestamp": "Marca de tiempo",
|
||
"ipAddress": "Dirección IP",
|
||
"userAgent": "Agente de usuario",
|
||
"success": "Éxito",
|
||
"failed": "Fallido",
|
||
"details": "Detalles",
|
||
"noAuditLogs": "No hay registros de auditoría disponibles",
|
||
"sessionRecordings": "Grabaciones de sesiones",
|
||
"viewRecording": "Ver grabación",
|
||
"downloadRecording": "Descargar grabación",
|
||
"dangerousCommand": "Comando peligroso detectado",
|
||
"commandBlocked": "Comando bloqueado",
|
||
"terminateSession": "Terminar sesión",
|
||
"sessionTerminated": "Sesión finalizada por el propietario del host",
|
||
"sharedAccessExpired": "Su acceso compartido a este host ha expirado",
|
||
"sharedAccessExpiresIn": "El acceso compartido expira en {{hours}} horas",
|
||
"roles": {
|
||
"label": "Roles",
|
||
"admin": "Administrador",
|
||
"user": "Usuario"
|
||
},
|
||
"createRole": "Crear rol",
|
||
"editRole": "Editar rol",
|
||
"roleName": "Nombre del rol",
|
||
"displayName": "Nombre para mostrar",
|
||
"description": "Descripción",
|
||
"assignRoles": "Asignar roles",
|
||
"userRoleAssignment": "Asignación de roles de usuario",
|
||
"selectUserPlaceholder": "Seleccione un usuario",
|
||
"searchUsers": "Buscar usuarios...",
|
||
"noUserFound": "No se encontró ningún usuario",
|
||
"currentRoles": "Roles actuales",
|
||
"noRolesAssigned": "No hay roles asignados",
|
||
"assignNewRole": "Asignar nuevo rol",
|
||
"selectRolePlaceholder": "Seleccione un rol",
|
||
"searchRoles": "Buscar roles...",
|
||
"noRoleFound": "No se encontró ningún rol",
|
||
"assign": "Asignar",
|
||
"roleCreatedSuccessfully": "Rol creado exitosamente",
|
||
"roleUpdatedSuccessfully": "Rol actualizado exitosamente",
|
||
"roleDeletedSuccessfully": "Rol eliminado exitosamente",
|
||
"failedToLoadRoles": "No se pudieron cargar los roles",
|
||
"failedToSaveRole": "No se pudo guardar el rol",
|
||
"failedToDeleteRole": "No se pudo eliminar el rol",
|
||
"roleDisplayNameRequired": "El nombre para mostrar del rol es obligatorio",
|
||
"roleNameRequired": "El nombre del rol es obligatorio",
|
||
"roleNameHint": "Utilice únicamente letras minúsculas, números, guiones bajos y guiones.",
|
||
"displayNamePlaceholder": "Revelador",
|
||
"descriptionPlaceholder": "Desarrolladores e ingenieros de software",
|
||
"confirmDeleteRole": "Eliminar rol",
|
||
"confirmDeleteRoleDescription": "¿Seguro que desea eliminar el rol \"{{name}}\"? Esta acción no se puede deshacer.",
|
||
"confirmRemoveRole": "Eliminar rol",
|
||
"confirmRemoveRoleDescription": "¿Está seguro de que desea eliminar este rol del usuario?",
|
||
"editRoleDescription": "Actualizar la información del rol",
|
||
"createRoleDescription": "Crear un nuevo rol personalizado para agrupar usuarios",
|
||
"assignRolesDescription": "Administrar asignaciones de roles para los usuarios",
|
||
"noRoles": "No se encontraron roles",
|
||
"selectRole": "Seleccionar rol",
|
||
"type": "Tipo",
|
||
"user": "Usuario",
|
||
"role": "Role",
|
||
"saveHostFirst": "Guardar el host primero",
|
||
"saveHostFirstDescription": "Guarde el host antes de configurar los ajustes de uso compartido.",
|
||
"shareWithUser": "Compartir con el usuario",
|
||
"shareWithRole": "Compartir con Rol",
|
||
"share": "Compartir",
|
||
"target": "Objetivo",
|
||
"expires": "Caduca",
|
||
"never": "Nunca",
|
||
"noAccessRecords": "No se encontraron registros de acceso",
|
||
"sharedSuccessfully": "Compartido exitosamente",
|
||
"failedToShare": "No se pudo compartir",
|
||
"confirmRevokeAccessDescription": "¿Está seguro de que desea revocar este acceso?",
|
||
"hours": "horas",
|
||
"sharing": "Intercambio",
|
||
"selectUserAndRole": "Por favor seleccione un usuario y un rol",
|
||
"view": "Sólo lectura",
|
||
"viewDesc": "Debido al sistema de cifrado de Termix, otros niveles de permiso estarán disponibles más adelante."
|
||
},
|
||
"commandPalette": {
|
||
"searchPlaceholder": "Buscar hosts o acciones rápidas...",
|
||
"recentActivity": "Actividad reciente",
|
||
"navigation": "Navegación",
|
||
"addHost": "Agregar host",
|
||
"addCredential": "Agregar credencial",
|
||
"adminSettings": "Configuración de administrador",
|
||
"userProfile": "Perfil de usuario",
|
||
"updateLog": "Registro de actualizaciones",
|
||
"hosts": "Anfitriones",
|
||
"openServerDetails": "Abrir detalles del servidor",
|
||
"openFileManager": "Abrir el Administrador de archivos",
|
||
"edit": "Editar",
|
||
"links": "Campo de golf",
|
||
"github": "GitHub",
|
||
"support": "Apoyo",
|
||
"discord": "Discordia",
|
||
"donate": "Donar",
|
||
"press": "Prensa",
|
||
"toToggle": "para alternar",
|
||
"close": "Cerca",
|
||
"hostManager": "Administrador de host",
|
||
"pressToToggle": "Presione Mayús izquierda dos veces para abrir la paleta de comandos"
|
||
},
|
||
"docker": {
|
||
"notEnabled": "Docker no está habilitado para este host",
|
||
"validating": "Validando Docker...",
|
||
"connectingToHost": "Conectando al host...",
|
||
"error": "Error",
|
||
"errorCode": "Código de error: {{code}}",
|
||
"version": "Docker {{version}}",
|
||
"containerStarted": "Contenedor {{name}} iniciado",
|
||
"failedToStartContainer": "No se pudo iniciar el contenedor {{name}}",
|
||
"containerStopped": "Contenedor {{name}} detenido",
|
||
"failedToStopContainer": "No se pudo detener el contenedor {{name}}",
|
||
"containerRestarted": "Contenedor {{name}} reiniciado",
|
||
"failedToRestartContainer": "No se pudo reiniciar el contenedor {{name}}",
|
||
"containerPaused": "Contenedor {{name}} en pausa",
|
||
"containerUnpaused": "Contenedor {{name}} sin pausa",
|
||
"failedToTogglePauseContainer": "No se pudo alternar el estado de pausa para el contenedor {{name}}",
|
||
"containerRemoved": "Contenedor {{name}} eliminado",
|
||
"failedToRemoveContainer": "No se pudo eliminar el contenedor {{name}}",
|
||
"image": "Imagen",
|
||
"idLabel": "IDENTIFICACIÓN",
|
||
"ports": "Puertos",
|
||
"noPorts": "Sin puertos",
|
||
"created": "Creado",
|
||
"start": "Comenzar",
|
||
"stop": "Detener",
|
||
"pause": "Pausa",
|
||
"unpause": "Reanudar",
|
||
"restart": "Reanudar",
|
||
"remove": "Eliminar",
|
||
"removeContainer": "Retirar contenedor",
|
||
"confirmRemoveContainer": "¿Seguro que desea eliminar el contenedor \"{{name}}\"? Esta acción no se puede deshacer.",
|
||
"runningContainerWarning": "Advertencia: Este contenedor está en ejecución. Al eliminarlo, se detendrá.",
|
||
"removing": "Quitando...",
|
||
"loadingContainers": "Cargando contenedores...",
|
||
"noContainersFound": "No se encontraron contenedores",
|
||
"noContainersFoundHint": "No hay contenedores Docker disponibles en este host",
|
||
"searchPlaceholder": "Buscar contenedores...",
|
||
"filterByStatusPlaceholder": "Filtrar por estado",
|
||
"allContainersCount": "Todos ({{count}})",
|
||
"statusCount": "{{status}} ({{count}})",
|
||
"noContainersMatchFilters": "No hay contenedores que coincidan con tus filtros",
|
||
"noContainersMatchFiltersHint": "Intente ajustar sus criterios de búsqueda o filtro",
|
||
"containerMustBeRunningToViewStats": "El contenedor debe estar ejecutándose para ver las estadísticas",
|
||
"failedToFetchStats": "No se pudieron obtener las estadísticas del contenedor",
|
||
"containerNotRunning": "El contenedor no se está ejecutando",
|
||
"startContainerToViewStats": "Inicie el contenedor para ver las estadísticas",
|
||
"loadingStats": "Cargando estadísticas...",
|
||
"errorLoadingStats": "Error al cargar estadísticas",
|
||
"noStatsAvailable": "No hay estadísticas disponibles",
|
||
"cpuUsage": "Uso de CPU",
|
||
"current": "Actual",
|
||
"memoryUsage": "Uso de la memoria",
|
||
"usedLimit": "Usado / Límite",
|
||
"percentage": "Porcentaje",
|
||
"networkIo": "E/S de red",
|
||
"input": "Aporte",
|
||
"output": "Producción",
|
||
"blockIo": "Bloque de E/S",
|
||
"read": "Leer",
|
||
"write": "Escribir",
|
||
"pids": "PID",
|
||
"containerInformation": "Información del contenedor",
|
||
"name": "Nombre",
|
||
"id": "IDENTIFICACIÓN",
|
||
"state": "Estado",
|
||
"disconnectedFromContainer": "Desconectado del contenedor",
|
||
"containerMustBeRunning": "El contenedor debe estar ejecutándose para acceder a la consola",
|
||
"authenticationRequired": "Se requiere autenticación",
|
||
"verificationCodePrompt": "Introduzca el código de verificación",
|
||
"totpVerificationFailed": "Error en la verificación TOTP. Inténtalo de nuevo.",
|
||
"connectedTo": "Conectado a {{containerName}}",
|
||
"disconnected": "Desconectado",
|
||
"consoleError": "Error de consola",
|
||
"errorMessage": "Error: {{message}}",
|
||
"failedToConnect": "No se pudo conectar al contenedor",
|
||
"console": "Consola",
|
||
"selectShell": "Seleccionar shell",
|
||
"bash": "Intento",
|
||
"sh": "ella",
|
||
"ash": "ceniza",
|
||
"connecting": "Conectando...",
|
||
"connect": "Conectar",
|
||
"disconnect": "Desconectar",
|
||
"notConnected": "No conectado",
|
||
"clickToConnect": "Haga clic en conectar para iniciar una sesión de shell",
|
||
"connectingTo": "Conectando a {{containerName}}...",
|
||
"containerNotFound": "Contenedor no encontrado",
|
||
"backToList": "Volver a la lista",
|
||
"logs": "Registros",
|
||
"stats": "Estadísticas",
|
||
"consoleTab": "Consola",
|
||
"startContainerToAccess": "Inicie el contenedor para acceder a la consola"
|
||
},
|
||
"theme": {
|
||
"switchToLight": "Cambiar a la luz",
|
||
"switchToDark": "Cambiar a oscuro"
|
||
}
|
||
} |