From 2315dbd4b48205197390359e24496bcb03014686 Mon Sep 17 00:00:00 2001 From: Luke Gustafson <88517757+LukeGus@users.noreply.github.com> Date: Mon, 12 Jan 2026 06:03:23 -0500 Subject: [PATCH] New translations en.json (Portuguese) --- src/locales/translated/pt.json | 4424 ++++++++++++++++---------------- 1 file changed, 2212 insertions(+), 2212 deletions(-) diff --git a/src/locales/translated/pt.json b/src/locales/translated/pt.json index e319cfd7..c60aa60f 100644 --- a/src/locales/translated/pt.json +++ b/src/locales/translated/pt.json @@ -1,882 +1,882 @@ { "credentials": { - "credentialsViewer": "Credentials Viewer", - "manageYourSSHCredentials": "Manage your SSH credentials securely", - "addCredential": "Add Credential", - "createCredential": "Create Credential", - "editCredential": "Edit Credential", - "viewCredential": "View Credential", - "duplicateCredential": "Duplicate Credential", - "deleteCredential": "Delete Credential", - "updateCredential": "Update Credential", - "credentialName": "Credential Name", - "credentialDescription": "Description", - "username": "Username", - "searchCredentials": "Search credentials...", - "selectFolder": "Select Folder", - "selectAuthType": "Select Auth Type", - "allFolders": "All Folders", - "allAuthTypes": "All Auth Types", - "uncategorized": "Uncategorized", - "totalCredentials": "Total", - "keyBased": "Key-based", - "passwordBased": "Password-based", - "folders": "Folders", - "noCredentialsMatchFilters": "No credentials match your filters", - "noCredentialsYet": "No credentials created yet", - "createFirstCredential": "Create your first credential", - "failedToFetchCredentials": "Failed to fetch credentials", - "credentialDeletedSuccessfully": "Credential deleted successfully", - "failedToDeleteCredential": "Failed to delete credential", - "confirmDeleteCredential": "Are you sure you want to delete credential \"{{name}}\"?", - "credentialCreatedSuccessfully": "Credential created successfully", - "credentialUpdatedSuccessfully": "Credential updated successfully", - "failedToSaveCredential": "Failed to save credential", - "failedToFetchCredentialDetails": "Failed to fetch credential details", - "failedToFetchHostsUsing": "Failed to fetch hosts using this credential", - "loadingCredentials": "Loading credentials...", - "retry": "Retry", - "noCredentials": "No Credentials", - "noCredentialsMessage": "You haven't added any credentials yet. Click \"Add Credential\" to get started.", - "sshCredentials": "SSH Credentials", - "credentialsCount": "{{count}} credentials", - "refresh": "Refresh", - "passwordRequired": "Password is required", - "sshKeyRequired": "SSH key is required", - "credentialAddedSuccessfully": "Credential \"{{name}}\" added successfully", - "general": "General", - "description": "Description", - "folder": "Folder", - "tags": "Tags", - "addTagsSpaceToAdd": "Add tags (press space to add)", - "password": "Password", - "key": "Key", - "sshPrivateKey": "SSH Private Key", - "upload": "Upload", - "updateKey": "Update Key", - "keyPassword": "Key Password", - "keyType": "Key Type", + "credentialsViewer": "Visualizador de credenciais", + "manageYourSSHCredentials": "Gerencie suas credenciais SSH de forma segura", + "addCredential": "Adicionar Credencial", + "createCredential": "Criar Credencial", + "editCredential": "Editar Credencial", + "viewCredential": "Ver Credencial", + "duplicateCredential": "Duplicar Credencial", + "deleteCredential": "Excluir Credencial", + "updateCredential": "Atualizar Credencial", + "credentialName": "Nome de Credencial", + "credentialDescription": "Descrição:", + "username": "Usuário:", + "searchCredentials": "Pesquisar credenciais...", + "selectFolder": "Selecionar pasta", + "selectAuthType": "Selecionar Tipo de Autenticação", + "allFolders": "Todas as pastas", + "allAuthTypes": "Todos os Tipos de Autenticação", + "uncategorized": "Descategorizado", + "totalCredentials": "Total:", + "keyBased": "Baseado em chave", + "passwordBased": "Baseada em senha", + "folders": "Pastas", + "noCredentialsMatchFilters": "Nenhuma credencial corresponde aos seus filtros", + "noCredentialsYet": "Nenhuma credencial criada ainda", + "createFirstCredential": "Crie sua primeira credencial", + "failedToFetchCredentials": "Falha ao obter credenciais", + "credentialDeletedSuccessfully": "Credencial excluída com sucesso", + "failedToDeleteCredential": "Falha ao excluir credencial", + "confirmDeleteCredential": "Tem certeza de que deseja excluir credencial \"{{name}}\"?", + "credentialCreatedSuccessfully": "Credencial criada com sucesso", + "credentialUpdatedSuccessfully": "Credencial atualizada com sucesso", + "failedToSaveCredential": "Falha ao salvar credencial", + "failedToFetchCredentialDetails": "Não foi possível obter detalhes de credenciais", + "failedToFetchHostsUsing": "Não foi possível obter os hosts usando esta credencial", + "loadingCredentials": "Carregando credenciais...", + "retry": "Repetir", + "noCredentials": "Sem Credenciais", + "noCredentialsMessage": "Você ainda não adicionou nenhuma credencial. Clique em \"Adicionar Credencial\" para começar.", + "sshCredentials": "Credenciais SSH", + "credentialsCount": "Credenciais {{count}}", + "refresh": "atualizar", + "passwordRequired": "A senha é obrigatória", + "sshKeyRequired": "Chave SSH é necessária", + "credentialAddedSuccessfully": "Credencial \"{{name}}\" adicionado com sucesso", + "general": "Gerais", + "description": "Descrição:", + "folder": "pasta", + "tags": "Etiquetas", + "addTagsSpaceToAdd": "Adicionar etiquetas (pressione espaço para adicionar)", + "password": "Palavra-passe", + "key": "Chave", + "sshPrivateKey": "Chave privada SSH", + "upload": "Transferir", + "updateKey": "Atualizar Chave", + "keyPassword": "Senha da Chave", + "keyType": "Tipo de chave", "keyTypeRSA": "RSA", "keyTypeECDSA": "ECDSA", "keyTypeEd25519": "Ed25519", - "basicInfo": "Basic Info", - "authentication": "Authentication", - "organization": "Organization", - "basicInformation": "Basic Information", - "basicInformationDescription": "Enter the basic information for this credential", - "authenticationMethod": "Authentication Method", - "authenticationMethodDescription": "Choose how you want to authenticate with SSH servers", - "organizationDescription": "Organize your credentials with folders and tags", - "enterCredentialName": "Enter credential name", - "enterCredentialDescription": "Enter description (optional)", - "enterUsername": "Enter username", - "nameIsRequired": "Credential name is required", - "usernameIsRequired": "Username is required", - "authenticationType": "Authentication Type", - "passwordAuthDescription": "Use password authentication", - "sshKeyAuthDescription": "Use SSH key authentication", - "passwordIsRequired": "Password is required", - "sshKeyIsRequired": "SSH key is required", - "sshKeyType": "SSH Key Type", - "privateKey": "Private Key", - "enterPassword": "Enter password", - "enterPrivateKey": "Enter private key", - "keyPassphrase": "Key Passphrase", - "enterKeyPassphrase": "Enter key passphrase (optional)", - "keyPassphraseOptional": "Optional: leave empty if your key has no passphrase", - "leaveEmptyToKeepCurrent": "Leave empty to keep current value", - "uploadKeyFile": "Upload Key File", - "generateKeyPairButton": "Generate Key Pair", - "generateKeyPair": "Generate Key Pair", - "generateKeyPairDescription": "Generate a new SSH key pair. If you want to protect the key with a passphrase, enter it in the Key Password field below first.", - "deploySSHKey": "Deploy SSH Key", - "deploySSHKeyDescription": "Deploy public key to target server", - "sourceCredential": "Source Credential", - "targetHost": "Target Host", - "deploymentProcess": "Deployment Process", - "deploymentProcessDescription": "This will safely add the public key to the target host's ~/.ssh/authorized_keys file without overwriting existing keys. The operation is reversible.", - "chooseHostToDeploy": "Choose a host to deploy to...", - "deploying": "Deploying...", - "name": "Name", - "noHostsAvailable": "No hosts available", - "noHostsMatchSearch": "No hosts match your search", - "sshKeyGenerationNotImplemented": "SSH key generation feature coming soon", - "connectionTestingNotImplemented": "Connection testing feature coming soon", - "testConnection": "Test Connection", - "selectOrCreateFolder": "Select or create folder", - "noFolder": "No folder", - "orCreateNewFolder": "Or create new folder", - "addTag": "Add tag", - "saving": "Saving...", - "credentialId": "Credential ID", - "overview": "Overview", - "security": "Security", - "usage": "Usage", - "securityDetails": "Security Details", - "securityDetailsDescription": "View encrypted credential information", - "credentialSecured": "Credential Secured", - "credentialSecuredDescription": "All sensitive data is encrypted with AES-256", - "passwordAuthentication": "Password Authentication", - "keyAuthentication": "Key Authentication", - "securityReminder": "Security Reminder", - "securityReminderText": "Never share your credentials. All data is encrypted at rest.", - "hostsUsingCredential": "Hosts Using This Credential", - "noHostsUsingCredential": "No hosts are currently using this credential", - "timesUsed": "Times Used", - "lastUsed": "Last Used", - "connectedHosts": "Connected Hosts", - "created": "Created", - "lastModified": "Last Modified", - "usageStatistics": "Usage Statistics", - "copiedToClipboard": "{{field}} copied to clipboard", - "failedToCopy": "Failed to copy to clipboard", - "sshKey": "SSH Key", - "createCredentialDescription": "Create a new SSH credential for secure access", - "editCredentialDescription": "Update the credential information", - "listView": "List", - "folderView": "Folders", - "unknownCredential": "Unknown", - "confirmRemoveFromFolder": "Are you sure you want to remove \"{{name}}\" from folder \"{{folder}}\"? The credential will be moved to \"Uncategorized\".", - "removedFromFolder": "Credential \"{{name}}\" removed from folder successfully", - "failedToRemoveFromFolder": "Failed to remove credential from folder", - "folderRenamed": "Folder \"{{oldName}}\" renamed to \"{{newName}}\" successfully", - "failedToRenameFolder": "Failed to rename folder", - "movedToFolder": "Credential \"{{name}}\" moved to \"{{folder}}\" successfully", - "failedToMoveToFolder": "Failed to move credential to folder", - "sshPublicKey": "SSH Public Key", - "publicKeyNote": "Public key is optional but recommended for key validation", - "publicKeyUploaded": "Public Key Uploaded", - "uploadPublicKey": "Upload Public Key", - "uploadPrivateKeyFile": "Upload Private Key File", - "uploadPublicKeyFile": "Upload Public Key File", - "privateKeyRequiredForGeneration": "Private key is required to generate public key", - "failedToGeneratePublicKey": "Failed to generate public key", - "generatePublicKey": "Generate from Private Key", - "publicKeyGeneratedSuccessfully": "Public key generated successfully", - "detectedKeyType": "Detected key type", - "detectingKeyType": "detecting...", - "optional": "Optional", - "generateKeyPairNew": "Generate New Key Pair", - "generateEd25519": "Generate Ed25519", - "generateECDSA": "Generate ECDSA", - "generateRSA": "Generate RSA", + "basicInfo": "Informação básica", + "authentication": "Autenticação", + "organization": "Cliente", + "basicInformation": "Informações Básicas", + "basicInformationDescription": "Insira as informações básicas para esta credencial", + "authenticationMethod": "Método de autenticação", + "authenticationMethodDescription": "Escolha como você deseja autenticar com servidores SSH", + "organizationDescription": "Organize suas credenciais com pastas e tags", + "enterCredentialName": "Insira o nome da credencial", + "enterCredentialDescription": "Inserir a descrição (opcional)", + "enterUsername": "Digite o usuário", + "nameIsRequired": "Nome de Credencial é necessário", + "usernameIsRequired": "Usuário é obrigatório", + "authenticationType": "Tipo de autenticação", + "passwordAuthDescription": "Usar autenticação de senha", + "sshKeyAuthDescription": "Usar autenticação por chave SSH", + "passwordIsRequired": "A senha é obrigatória", + "sshKeyIsRequired": "Chave SSH é necessária", + "sshKeyType": "Tipo de Chave SSH", + "privateKey": "Chave Privada", + "enterPassword": "Insira a senha", + "enterPrivateKey": "Inserir chave privada", + "keyPassphrase": "Senha Chave", + "enterKeyPassphrase": "Digite a senha chave (opcional)", + "keyPassphraseOptional": "Opcional: deixe em branco se a sua chave não tem nenhuma frase secreta", + "leaveEmptyToKeepCurrent": "Deixe vazio para manter o valor atual", + "uploadKeyFile": "Carregar arquivo chave", + "generateKeyPairButton": "Gerar par de chaves", + "generateKeyPair": "Gerar par de chaves", + "generateKeyPairDescription": "Gerar um novo par de chave SSH. Se você deseja proteger a chave com uma frase-senha, insira-o no campo de senha da chave abaixo primeiro.", + "deploySSHKey": "Chave SSH de deploy", + "deploySSHKeyDescription": "Implementar chave pública no servidor de destino", + "sourceCredential": "Credenciais de origem", + "targetHost": "Host de destino", + "deploymentProcess": "Processo de implantação", + "deploymentProcessDescription": "Isto irá adicionar com segurança a chave pública ao arquivo ~/.ssh/authorized_keys sem sobrescrever as chaves existentes. A operação é reversível.", + "chooseHostToDeploy": "Escolha um host para implantar em...", + "deploying": "Implementando...", + "name": "Nome:", + "noHostsAvailable": "Nenhum host disponível", + "noHostsMatchSearch": "Nenhum host corresponde à sua pesquisa", + "sshKeyGenerationNotImplemented": "Recurso de geração de chave SSH chegando em breve", + "connectionTestingNotImplemented": "Conexão testando recursos em breve", + "testConnection": "Testar Conexão", + "selectOrCreateFolder": "Selecionar ou criar pasta", + "noFolder": "Nenhuma pasta", + "orCreateNewFolder": "Ou criar nova pasta", + "addTag": "Adicionar tag", + "saving": "Salvando...", + "credentialId": "ID de credenciais", + "overview": "Geral", + "security": "Segurança", + "usage": "Utilização", + "securityDetails": "Detalhes de segurança", + "securityDetailsDescription": "Ver informações de credencial criptografadas", + "credentialSecured": "Credencial Segura", + "credentialSecuredDescription": "Todos os dados confidenciais são criptografados com AES-256", + "passwordAuthentication": "Autenticação de senha", + "keyAuthentication": "Autenticação por Chave", + "securityReminder": "Lembrete de segurança", + "securityReminderText": "Nunca compartilhe suas credenciais. Todos os dados são criptografados.", + "hostsUsingCredential": "Hosts usando esta credencial", + "noHostsUsingCredential": "Nenhum host está usando essa credencial atualmente", + "timesUsed": "Quantidade de usos", + "lastUsed": "Último uso", + "connectedHosts": "Hosts conectados", + "created": "Criado", + "lastModified": "Última Modificação", + "usageStatistics": "Estatísticas de uso", + "copiedToClipboard": "{{field}} copiado para área de transferência", + "failedToCopy": "Falha ao copiar para área de transferência", + "sshKey": "Chave SSH", + "createCredentialDescription": "Crie uma nova credencial SSH para acesso seguro", + "editCredentialDescription": "Atualizar informações de credencial", + "listView": "Lista", + "folderView": "Pastas", + "unknownCredential": "Desconhecido", + "confirmRemoveFromFolder": "Tem certeza de que deseja remover \"{{name}}\" da pasta \"{{folder}}\"? A credencial será movida para \"Sem categoria\".", + "removedFromFolder": "Credencial \"{{name}}\" removido da pasta com sucesso", + "failedToRemoveFromFolder": "Falha ao remover a credencial da pasta", + "folderRenamed": "Pasta \"{{oldName}}\" renomeada para \"{{newName}}\" com sucesso", + "failedToRenameFolder": "Falha ao renomear pasta", + "movedToFolder": "Credencial \"{{name}}\" movido para \"{{folder}}\" com sucesso", + "failedToMoveToFolder": "Falha ao mover credencial para pasta", + "sshPublicKey": "Chave pública SSH", + "publicKeyNote": "Chave pública é opcional, mas recomendada para validação de chave", + "publicKeyUploaded": "Chave pública enviada", + "uploadPublicKey": "Carregar chave pública", + "uploadPrivateKeyFile": "Carregar arquivo de chave privada", + "uploadPublicKeyFile": "Enviar arquivo de chave pública", + "privateKeyRequiredForGeneration": "A chave privada é necessária para gerar a chave pública", + "failedToGeneratePublicKey": "Falha ao gerar chave pública", + "generatePublicKey": "Gerar a partir da Chave Privada", + "publicKeyGeneratedSuccessfully": "Chave pública gerada com sucesso", + "detectedKeyType": "Tipo de chave detectado", + "detectingKeyType": "detectando...", + "optional": "Opcional", + "generateKeyPairNew": "Gerar um novo par de chaves", + "generateEd25519": "Gerar Ed25519", + "generateECDSA": "Gerar ECDSA", + "generateRSA": "Gerar 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}} key pair generated successfully", - "failedToGenerateKeyPair": "Failed to generate key pair", - "generateKeyPairNote": "Generate a new SSH key pair directly. This will replace any existing keys in the form.", - "invalidKey": "Invalid Key", - "detectionError": "Detection Error", - "removing": "Removing:", - "clickToEditCredential": "Click to edit credential", - "dragToMoveBetweenFolders": "Drag to move between folders", - "keyBasedOnlyForDeployment": "Only SSH key-based credentials can be deployed", - "publicKeyRequiredForDeployment": "Public key is required for deployment", - "selectTargetHost": "Please select a target host", - "keyDeployedSuccessfully": "SSH key deployed successfully", - "deploymentFailed": "Deployment failed", - "failedToDeployKey": "Failed to deploy SSH key", - "clickToRenameFolder": "Click to rename folder", - "renameFolder": "Rename folder", + "keyPairGeneratedSuccessfully": "Par de chaves {{keyType}} gerado com sucesso", + "failedToGenerateKeyPair": "Falha ao gerar o par de chaves", + "generateKeyPairNote": "Gerar um novo par de chaves SSH diretamente. Isto irá substituir todas as chaves existentes no formulário.", + "invalidKey": "Chave inválida", + "detectionError": "Erro de Detecção", + "removing": "Removendo:", + "clickToEditCredential": "Clique para editar a credencial", + "dragToMoveBetweenFolders": "Arraste para mover entre as pastas", + "keyBasedOnlyForDeployment": "Apenas credenciais com base em chaves SSH podem ser implantadas", + "publicKeyRequiredForDeployment": "Chave pública é necessária para implantação", + "selectTargetHost": "Por favor, selecione um host de destino", + "keyDeployedSuccessfully": "Chave SSH implantada com sucesso", + "deploymentFailed": "A implantação falhou", + "failedToDeployKey": "Falha ao implantar a chave SSH", + "clickToRenameFolder": "Clique para renomear a pasta", + "renameFolder": "Renomear pasta", "idLabel": "ID:" }, "dragIndicator": { - "error": "Error: {{error}}", - "dragging": "Dragging {{fileName}}", - "preparing": "Preparing {{fileName}}", - "readySingle": "Ready to download {{fileName}}", - "readyMultiple": "Ready to download {{count}} files", - "batchDrag": "Drag {{count}} files to desktop", - "dragToDesktop": "Drag to desktop", - "canDragAnywhere": "You can drag files anywhere on your desktop" + "error": "Erro: {{error}}", + "dragging": "Arrastando {{fileName}}", + "preparing": "Preparando {{fileName}}", + "readySingle": "Pronto para baixar {{fileName}}", + "readyMultiple": "Pronto para baixar arquivos {{count}}", + "batchDrag": "Arraste {{count}} arquivos para desktop", + "dragToDesktop": "Arraste para desktops", + "canDragAnywhere": "Você pode arrastar arquivos em qualquer lugar da sua área de trabalho" }, "sshTools": { - "title": "SSH Tools", - "closeTools": "Close SSH Tools", - "keyRecording": "Key Recording", - "startKeyRecording": "Start Key Recording", - "stopKeyRecording": "Stop Key Recording", - "selectTerminals": "Select terminals:", - "typeCommands": "Type commands (all keys supported):", + "title": "Ferramentas SSH", + "closeTools": "Fechar Ferramentas SSH", + "keyRecording": "Gravação de Teclas", + "startKeyRecording": "Iniciar Gravação de Teclas", + "stopKeyRecording": "Parar Chave de Gravação", + "selectTerminals": "Selecionar terminais:", + "typeCommands": "Digite comandos (todas as chaves suportadas):", "commandsWillBeSent": "Commands will be sent to {{count}} selected terminal(s).", - "settings": "Settings", - "enableRightClickCopyPaste": "Enable right‑click copy/paste", - "shareIdeas": "Have ideas for what should come next for ssh tools? Share them on", + "settings": "Confirgurações", + "enableRightClickCopyPaste": "Habilitar direita,clique em copiar/colar", + "shareIdeas": "Tem ideias para o que deve vir depois com ferramentas ssh? Compartilhe elas nas", "scripts": { - "inputPlaceholder": "e.g., System Commands, Docker Scripts" + "inputPlaceholder": "ex.: Comandos do Sistema, Scripts Docker" } }, "snippets": { - "title": "Snippets", - "new": "New Snippet", - "create": "Create Snippet", - "edit": "Edit Snippet", - "run": "Run", - "empty": "No snippets yet", - "emptyHint": "Create a snippet to save commonly used commands", - "searchSnippets": "Search snippets...", - "name": "Name", - "description": "Description", - "content": "Command", - "namePlaceholder": "e.g., Restart Nginx", - "descriptionPlaceholder": "Optional description", - "contentPlaceholder": "e.g., sudo systemctl restart nginx", - "nameRequired": "Name is required", - "contentRequired": "Command is required", - "createDescription": "Create a new command snippet for quick execution", - "editDescription": "Edit this command snippet", - "deleteConfirmTitle": "Delete Snippet", - "deleteConfirmDescription": "Are you sure you want to delete \"{{name}}\"?", - "createSuccess": "Snippet created successfully", - "updateSuccess": "Snippet updated successfully", - "deleteSuccess": "Snippet deleted successfully", - "createFailed": "Failed to create snippet", - "updateFailed": "Failed to update snippet", - "deleteFailed": "Failed to delete snippet", - "failedToFetch": "Failed to fetch snippets", - "executeSuccess": "Executing: {{name}}", - "copySuccess": "Copied \"{{name}}\" to clipboard", - "runTooltip": "Execute this snippet in the terminal", - "copyTooltip": "Copy snippet to clipboard", - "editTooltip": "Edit this snippet", - "deleteTooltip": "Delete this snippet", - "newFolder": "New Folder", - "reorderSameFolder": "Can only reorder snippets within the same folder", - "reorderSuccess": "Snippets reordered successfully", - "reorderFailed": "Failed to reorder snippets", - "deleteFolderConfirm": "Delete folder \"{{name}}\"? All snippets will be moved to Uncategorized.", - "deleteFolderSuccess": "Folder deleted successfully", - "deleteFolderFailed": "Failed to delete folder", - "updateFolderSuccess": "Folder updated successfully", - "createFolderSuccess": "Folder created successfully", - "updateFolderFailed": "Failed to update folder", - "createFolderFailed": "Failed to create folder", - "selectTerminals": "Select Terminals (optional)", - "executeOnSelected": "Execute on {{count}} selected terminal(s)", - "executeOnCurrent": "Execute on current terminal (click to select multiple)", - "folder": "Folder", - "selectFolder": "Select a folder or leave empty", - "noFolder": "No folder (Uncategorized)", - "folderName": "Folder Name", - "folderNameRequired": "Folder name is required", - "folderColor": "Folder Color", - "folderIcon": "Folder Icon", - "preview": "Preview", - "updateFolder": "Update Folder", - "createFolder": "Create Folder", - "editFolder": "Edit Folder", - "editFolderDescription": "Customize your snippet folder", - "createFolderDescription": "Organize your snippets into folders" + "title": "Trechos", + "new": "Novo Trecho", + "create": "Criar Snippet", + "edit": "Editar Trecho", + "run": "Executar", + "empty": "Nenhum trecho ainda", + "emptyHint": "Criar um snippet para salvar comandos comumente usados", + "searchSnippets": "Buscar snippets...", + "name": "Nome:", + "description": "Descrição:", + "content": "Comando", + "namePlaceholder": "ex.: Reiniciar o Nginx", + "descriptionPlaceholder": "Descrição opcional", + "contentPlaceholder": "ex.: sudo systemctl reinicializa o nginx", + "nameRequired": "O nome é obrigatório", + "contentRequired": "Comando é necessário", + "createDescription": "Criar um novo snippet de comando para a execução rápida", + "editDescription": "Editar este comando de snippet", + "deleteConfirmTitle": "Excluir Snippet", + "deleteConfirmDescription": "Tem certeza que deseja excluir \"{{name}}\"?", + "createSuccess": "Snippet criado com sucesso", + "updateSuccess": "Trecho atualizado com sucesso", + "deleteSuccess": "Snippet excluído com sucesso", + "createFailed": "Falha ao criar snippet", + "updateFailed": "Falha ao atualizar snippet", + "deleteFailed": "Falha ao excluir snippet", + "failedToFetch": "Falha ao buscar snippets", + "executeSuccess": "Executando: {{name}}", + "copySuccess": "Copiado \"{{name}}\" para área de transferência", + "runTooltip": "Execute esse snippet no terminal", + "copyTooltip": "Copiar snippet para área de transferência", + "editTooltip": "Editar este trecho", + "deleteTooltip": "Excluir este snippet", + "newFolder": "Adicionar uma pasta", + "reorderSameFolder": "Só é possível reordenar snippets dentro da mesma pasta", + "reorderSuccess": "Trechos reordenados com sucesso", + "reorderFailed": "Falha ao reordenar snippets", + "deleteFolderConfirm": "Excluir pasta \"{{name}}\"? Todos os snippets serão movidos para Uncategorizados.", + "deleteFolderSuccess": "Pasta excluída com sucesso", + "deleteFolderFailed": "Falha ao excluir pasta", + "updateFolderSuccess": "Pasta atualizada com sucesso", + "createFolderSuccess": "Pasta criada com sucesso", + "updateFolderFailed": "Falha ao atualizar a pasta", + "createFolderFailed": "Falha ao criar pasta", + "selectTerminals": "Selecione os Terminais (opcional)", + "executeOnSelected": "Executar no {{count}} terminal(s) selecionado(s)", + "executeOnCurrent": "Executar no terminal atual (clique para selecionar múltipla)", + "folder": "pasta", + "selectFolder": "Selecione uma pasta ou deixe vazio", + "noFolder": "Nenhuma pasta (Descategorizada)", + "folderName": "Nome da pasta", + "folderNameRequired": "O nome da pasta é obrigatório", + "folderColor": "Cor da pasta", + "folderIcon": "Ícone da pasta", + "preview": "Pré-visualizar", + "updateFolder": "Atualizar pasta", + "createFolder": "Criar pasta", + "editFolder": "Editar Pasta", + "editFolderDescription": "Personalize sua pasta de snippet", + "createFolderDescription": "Organize seus snippets em pastas" }, "commandHistory": { - "title": "History", - "searchPlaceholder": "Search commands...", - "noTerminal": "No active terminal", - "noTerminalHint": "Open a terminal to see its command history.", - "empty": "No command history yet", - "emptyHint": "Execute commands in the active terminal to build its history.", - "noResults": "No commands found", - "noResultsHint": "No commands matching \"{{query}}\"", - "deleteSuccess": "Command deleted from history", - "deleteFailed": "Failed to delete command.", - "deleteTooltip": "Delete command", - "tabHint": "Use Tab in Terminal to autocomplete from command history if enabled in User Profile", - "authRequiredRefresh": "Authentication required. Please refresh the page.", - "dataAccessLockedReauth": "Data access locked. Please re-authenticate.", - "loading": "Loading command history...", - "error": "Error Loading History" + "title": "Histórico", + "searchPlaceholder": "Comandos de pesquisa...", + "noTerminal": "Nenhum terminal ativo", + "noTerminalHint": "Abra um terminal para ver seu histórico de comandos.", + "empty": "Nenhum histórico de comandos ainda", + "emptyHint": "Execute comandos no terminal ativo para construir sua história.", + "noResults": "Nenhum comando encontrado", + "noResultsHint": "Sem comandos correspondentes a \"{{query}}\"", + "deleteSuccess": "Comando excluído do histórico", + "deleteFailed": "Falha ao excluir comando.", + "deleteTooltip": "Excluir comando", + "tabHint": "Use a aba Terminal para autocompletar do histórico de comandos se ativado no perfil do usuário", + "authRequiredRefresh": "Autenticação necessária. Por favor, atualize a página.", + "dataAccessLockedReauth": "Acesso aos dados bloqueado. Por favor, autentique-se novamente.", + "loading": "Carregando histórico do comando...", + "error": "Erro ao Carregar Histórico" }, "splitScreen": { - "title": "Split Screen", - "none": "None", - "twoSplit": "2-Way", - "threeSplit": "3-Way", - "fourSplit": "4-Way", - "availableTabs": "Available Tabs", - "dragTabsHint": "Drag tabs to the layout cells below to assign them", - "layout": "Split Screen Layout", - "dropHere": "Drop tab here", - "apply": "Apply Split", - "clear": "Clear Split", - "selectMode": "Select a split screen mode", - "helpText": "Choose how many tabs you want to view at once", - "success": "Split screen applied successfully", - "cleared": "Split screen cleared", + "title": "Dividir a tela", + "none": "Nenhuma", + "twoSplit": "2 vias", + "threeSplit": "3-Caminho", + "fourSplit": "4-Caminho", + "availableTabs": "Abas disponíveis", + "dragTabsHint": "Arraste as abas para o layout das células abaixo para atribui-las", + "layout": "Dividir layout da tela", + "dropHere": "Aba Solte aqui", + "apply": "Aplicar divisão", + "clear": "Limpar Divisão", + "selectMode": "Selecione o modo de tela dividida", + "helpText": "Escolha quantas abas você quer ver de uma vez", + "success": "Tela dividida aplicada com sucesso", + "cleared": "Tela dividida apagada", "error": { - "noAssignments": "Please assign at least one tab to the layout", - "fillAllSlots": "Please fill all {{count}} slots before applying" + "noAssignments": "Por favor, atribua pelo menos uma aba para o layout", + "fillAllSlots": "Por favor, preencha todos os {{count}} slots antes de aplicar" } }, "homepage": { - "loggedInTitle": "Logged in!", - "loggedInMessage": "You are logged in! Use the sidebar to access all available tools. To get started, create an SSH Host in the SSH Manager tab. Once created, you can connect to that host using the other apps in the sidebar.", - "failedToLoadAlerts": "Failed to load alerts", - "failedToDismissAlert": "Failed to dismiss alert" + "loggedInTitle": "Sessão iniciada!", + "loggedInMessage": "Você está logado! Use a barra lateral para acessar todas as ferramentas disponíveis. Para começar, crie um host SSH na guia SSH Manager. Uma vez criado, você pode se conectar a esse host usando os outros apps na barra lateral.", + "failedToLoadAlerts": "Falha ao carregar alertas", + "failedToDismissAlert": "Falha ao descartar alerta" }, "serverConfig": { - "title": "Server Configuration", - "description": "Configure the Termix server URL to connect to your backend services", - "serverUrl": "Server URL", - "enterServerUrl": "Please enter a server URL", - "testConnectionFirst": "Please test the connection first", - "connectionSuccess": "Connection successful!", - "connectionFailed": "Connection failed", - "connectionError": "Connection error occurred", - "connected": "Connected", - "disconnected": "Disconnected", - "configSaved": "Configuration saved successfully", - "saveFailed": "Failed to save configuration", - "saveError": "Error saving configuration", - "saving": "Saving...", - "saveConfig": "Save Configuration", - "helpText": "Enter the URL where your Termix server is running (e.g., http://localhost:30001 or https://your-server.com)", - "warning": "Warning", - "notValidatedWarning": "URL not validated - ensure it's correct", - "changeServer": "Change Server", - "mustIncludeProtocol": "Server URL must start with http:// or https://" + "title": "Configuração Servidor", + "description": "Configure o URL do servidor do Termix para conectar aos seus serviços de backend", + "serverUrl": "URL do servidor", + "enterServerUrl": "Por favor, insira uma URL de servidor", + "testConnectionFirst": "Por favor, teste a conexão primeiro", + "connectionSuccess": "Conexão bem-sucedida!", + "connectionFailed": "Conexão falhou", + "connectionError": "Ocorreu um erro de conexão", + "connected": "Conectado", + "disconnected": "Desconectado", + "configSaved": "Configuração salva com sucesso", + "saveFailed": "Falha ao salvar a configuração", + "saveError": "Erro ao salvar configuração", + "saving": "Salvando...", + "saveConfig": "Salvar configuração", + "helpText": "Digite a URL onde o servidor do seu Termix está executando (por exemplo, http://localhost:30001 ou https://seu-servidor.com)", + "warning": "ATENÇÃO", + "notValidatedWarning": "URL não validada - certifique-se de que está correta", + "changeServer": "Alterar Servidor", + "mustIncludeProtocol": "O URL do servidor deve começar com http:// ou https://" }, "versionCheck": { - "error": "Version Check Error", - "checkFailed": "Failed to check for updates", - "upToDate": "App is Up to Date", - "currentVersion": "You are running version {{version}}", - "updateAvailable": "Update Available", - "newVersionAvailable": "A new version is available! You are running {{current}}, but {{latest}} is available.", - "releasedOn": "Released on {{date}}", - "downloadUpdate": "Download Update", - "dismiss": "Dismiss", - "checking": "Checking for updates...", - "checkUpdates": "Check for Updates", - "checkingUpdates": "Checking for updates...", - "refresh": "Refresh", - "updateRequired": "Update Required", - "updateDismissed": "Update notification dismissed", - "noUpdatesFound": "No updates found" + "error": "Erro de verificação de versão", + "checkFailed": "Não foi possível verificar se há atualizações", + "upToDate": "O aplicativo está atualizado", + "currentVersion": "Você está executando a versão {{version}}", + "updateAvailable": "Atualização disponível", + "newVersionAvailable": "Uma nova versão está disponível! Você está executando {{current}}, mas {{latest}} está disponível.", + "releasedOn": "Lançado em {{date}}", + "downloadUpdate": "Baixar atualização", + "dismiss": "Descartar", + "checking": "Verificando atualizações...", + "checkUpdates": "Procurar por atualizações", + "checkingUpdates": "Verificando atualizações...", + "refresh": "atualizar", + "updateRequired": "Atualização Necessária", + "updateDismissed": "Atualizar notificação dispensada", + "noUpdatesFound": "Nenhuma atualização encontrada" }, "common": { - "close": "Close", + "close": "FECHAR", "minimize": "Minimize", - "online": "Online", - "offline": "Offline", - "continue": "Continue", - "maintenance": "Maintenance", - "degraded": "Degraded", + "online": "Disponível", + "offline": "Desconectado", + "continue": "Continuar", + "maintenance": "Manutenção", + "degraded": "Degradado", "discord": "Discord", - "error": "Error", - "warning": "Warning", - "info": "Info", - "success": "Success", - "loading": "Loading...", - "required": "Required", - "optional": "Optional", - "connect": "Connect", - "connecting": "Connecting...", - "creating": "Creating...", - "clear": "Clear", - "toggleSidebar": "Toggle Sidebar", + "error": "ERRO", + "warning": "ATENÇÃO", + "info": "Informações", + "success": "Sucesso", + "loading": "Carregandochar@@0", + "required": "Obrigatório", + "optional": "Opcional", + "connect": "Conectar", + "connecting": "Conectandochar@@0", + "creating": "Criando...", + "clear": "Limpar", + "toggleSidebar": "Alternar barra lateral", "sidebar": "Sidebar", - "home": "Home", - "expired": "Expired", - "expiresToday": "Expires today", - "expiresTomorrow": "Expires in {{days}} days", - "updateAvailable": "Update Available", - "sshPath": "SSH Path", - "localPath": "Local Path", + "home": "Residencial", + "expired": "Expirado", + "expiresToday": "Expira hoje", + "expiresTomorrow": "Expira em {{days}} dias", + "updateAvailable": "Atualização disponível", + "sshPath": "Caminho SSH", + "localPath": "Caminho local", "appName": "Termix", "resetSidebarWidth": "Reset sidebar width", - "dragToResizeSidebar": "Drag to resize sidebar", - "noAuthCredentials": "No authentication credentials available for this SSH host", - "noReleases": "No Releases", - "updatesAndReleases": "Updates & Releases", - "newVersionAvailable": "A new version ({{version}}) is available.", - "failedToFetchUpdateInfo": "Failed to fetch update information", - "preRelease": "Pre-release", - "loginFailed": "Login failed", - "noReleasesFound": "No releases found.", - "yourBackupCodes": "Your Backup Codes", - "sendResetCode": "Send Reset Code", - "verifyCode": "Verify Code", - "resetPassword": "Reset Password", + "dragToResizeSidebar": "Arraste para redimensionar a barra lateral", + "noAuthCredentials": "Não há credenciais de autenticação disponíveis para este host SSH", + "noReleases": "Sem lançamentos", + "updatesAndReleases": "Atualizações e Versões", + "newVersionAvailable": "Uma nova versão ({{version}}) está disponível.", + "failedToFetchUpdateInfo": "Falha ao buscar informações de atualização", + "preRelease": "Pré-lançamento", + "loginFailed": "Falha no login", + "noReleasesFound": "Nenhuma versão encontrada.", + "yourBackupCodes": "Seus códigos de recuperação", + "sendResetCode": "Enviar Código de Redefinição", + "verifyCode": "Verificar Código", + "resetPassword": "Redefinir a senha", "resetCode": "Reset Code", - "newPassword": "New Password", - "folder": "Folder", - "file": "File", - "renamedSuccessfully": "renamed successfully", - "deletedSuccessfully": "deleted successfully", - "noTunnelConnections": "No tunnel connections configured", - "sshTools": "SSH Tools", - "english": "English", - "chinese": "Chinese", - "german": "German", - "cancel": "Cancel", - "username": "Username", - "name": "Name", - "login": "Login", - "logout": "Logout", - "register": "Register", - "password": "Password", - "version": "Version", - "confirmPassword": "Confirm Password", - "back": "Back", - "email": "Email", - "submit": "Submit", - "change": "Change", - "save": "Save", - "saving": "Saving...", - "delete": "Delete", - "edit": "Edit", - "add": "Add", - "search": "Search", - "confirm": "Confirm", - "yes": "Yes", - "no": "No", - "ok": "OK", - "enabled": "Enabled", - "disabled": "Disabled", - "important": "Important", - "notEnabled": "Not Enabled", - "settingUp": "Setting up...", - "next": "Next", - "previous": "Previous", - "refresh": "Refresh", - "settings": "Settings", - "profile": "Profile", - "help": "Help", - "about": "About", - "language": "Language", - "autoDetect": "Auto-detect", - "changeAccountPassword": "Change your account password", - "passwordResetTitle": "Password Reset", - "passwordResetDescription": "You are about to reset your password. This will log you out of all active sessions.", - "enterSixDigitCode": "Enter the 6-digit code from the docker container logs for user:", - "enterNewPassword": "Enter your new password for user:", - "passwordsDoNotMatch": "Passwords do not match", - "passwordMinLength": "Password must be at least 6 characters long", - "passwordResetSuccess": "Password reset successfully! You can now log in with your new password.", - "failedToInitiatePasswordReset": "Failed to initiate password reset", - "failedToVerifyResetCode": "Failed to verify reset code", - "failedToCompletePasswordReset": "Failed to complete password reset", - "documentation": "Documentation", - "retry": "Retry", - "checking": "Checking...", - "checkingDatabase": "Checking database connection...", - "actions": "Actions", - "remove": "Remove", + "newPassword": "Nova Palavra-Passe", + "folder": "pasta", + "file": "Arquivo", + "renamedSuccessfully": "renomeado com sucesso", + "deletedSuccessfully": "excluído com sucesso", + "noTunnelConnections": "Nenhuma conexão de túnel configurada", + "sshTools": "Ferramentas SSH", + "english": "Portuguese-Brazil", + "chinese": "chinês", + "german": "alemão", + "cancel": "cancelar", + "username": "Usuário:", + "name": "Nome:", + "login": "Conectar-se", + "logout": "Desconectar", + "register": "Cadastrar", + "password": "Palavra-passe", + "version": "Versão", + "confirmPassword": "Confirmar senha", + "back": "Anterior", + "email": "e-mail", + "submit": "submeter", + "change": "Troca", + "save": "Guardar", + "saving": "Salvando...", + "delete": "excluir", + "edit": "Alterar", + "add": "Adicionar", + "search": "Pesquisa", + "confirm": "Confirmar", + "yes": "sim", + "no": "Não", + "ok": "Certo", + "enabled": "Ativado", + "disabled": "Desabilitado", + "important": "Importante", + "notEnabled": "Não habilitado", + "settingUp": "Configurando ...", + "next": "Próximo", + "previous": "Anterior", + "refresh": "atualizar", + "settings": "Confirgurações", + "profile": "Perfil", + "help": "Socorro", + "about": "SOBRE", + "language": "IDIOMA", + "autoDetect": "Auto-detectar", + "changeAccountPassword": "Alterar a senha da sua conta", + "passwordResetTitle": "Recuperar senha", + "passwordResetDescription": "Você está prestes a redefinir sua senha. Isso irá deslogar você de todas as sessões ativas.", + "enterSixDigitCode": "Insira o código de 6 dígitos do contêiner docker para o usuário:", + "enterNewPassword": "Digite sua nova senha para o usuário:", + "passwordsDoNotMatch": "As senhas não coincidem", + "passwordMinLength": "A senha deve ter pelo menos 6 caracteres", + "passwordResetSuccess": "Senha redefinida com sucesso! Você agora pode entrar com sua nova senha.", + "failedToInitiatePasswordReset": "Falha ao iniciar a redefinição de senha", + "failedToVerifyResetCode": "Falha ao verificar código de redefinição", + "failedToCompletePasswordReset": "Falha ao concluir a redefinição de senha", + "documentation": "Documentação", + "retry": "Repetir", + "checking": "Verificandochar@@0", + "checkingDatabase": "Verificando conexão com o banco de dados...", + "actions": "Ações.", + "remove": "Excluir", "revoke": "Revoke", - "create": "Create" + "create": "Crio" }, "nav": { - "home": "Home", - "hosts": "Hosts", - "credentials": "Credentials", + "home": "Residencial", + "hosts": "Anfitriões", + "credentials": "Credenciais", "terminal": "Terminal", - "docker": "Docker", - "tunnels": "Tunnels", - "fileManager": "File Manager", - "serverStats": "Server Stats", - "admin": "Admin", - "userProfile": "User Profile", - "tools": "Tools", - "snippets": "Snippets", + "docker": "Atracador", + "tunnels": "Túneis", + "fileManager": "Gerenciador de Arquivos", + "serverStats": "Estatísticas do servidor", + "admin": "Administrador", + "userProfile": "Informações do Perfil", + "tools": "Ferramentas", + "snippets": "Trechos", "newTab": "New Tab", - "splitScreen": "Split Screen", - "closeTab": "Close Tab", - "sshManager": "SSH Manager", - "hostManager": "Host Manager", - "cannotSplitTab": "Cannot split this tab", + "splitScreen": "Dividir a tela", + "closeTab": "Fechar Aba", + "sshManager": "Gerenciador SSH", + "hostManager": "Gerenciador de Host", + "cannotSplitTab": "Não é possível dividir esta aba", "tabNavigation": "Tab Navigation", "hostTabTitle": "{{username}}@{{ip}}:{{port}}" }, "admin": { - "title": "Admin Settings", - "oidc": "OIDC", - "users": "Users", - "userManagement": "User Management", - "makeAdmin": "Make Admin", - "removeAdmin": "Remove Admin", - "deleteUser": "Delete user {{username}}? This cannot be undone.", - "allowRegistration": "Allow Registration", - "oidcSettings": "OIDC Settings", - "clientId": "Client ID", - "clientSecret": "Client Secret", - "issuerUrl": "Issuer URL", - "authorizationUrl": "Authorization URL", - "tokenUrl": "Token URL", - "updateSettings": "Update Settings", - "confirmDelete": "Are you sure you want to delete this user?", - "confirmMakeAdmin": "Are you sure you want to make {{username}} an admin?", - "confirmRemoveAdmin": "Are you sure you want to remove admin status from {{username}}?", - "externalAuthentication": "External Authentication (OIDC)", - "configureExternalProvider": "Configure external identity provider for OIDC/OAuth2 authentication.", - "userIdentifierPath": "User Identifier Path", - "displayNamePath": "Display Name Path", - "scopes": "Scopes", - "saving": "Saving...", - "saveConfiguration": "Save Configuration", + "title": "Configurações de administrador", + "oidc": "OCIDADE", + "users": "Utilizadores", + "userManagement": "Gerenciamento de usuários", + "makeAdmin": "Tornar administrador", + "removeAdmin": "Remover Administrador", + "deleteUser": "Excluir usuário {{username}}? Isso não pode ser desfeito.", + "allowRegistration": "Permitir Registro", + "oidcSettings": "Configurações OIDC", + "clientId": "ID do Cliente", + "clientSecret": "Segredo do Cliente", + "issuerUrl": "URL do Emissor", + "authorizationUrl": "URL de autorização", + "tokenUrl": "URL do token", + "updateSettings": "Configurações de atualização", + "confirmDelete": "Tem certeza de que deseja excluir este usuário?", + "confirmMakeAdmin": "Tem certeza que deseja tornar o administrador {{username}}?", + "confirmRemoveAdmin": "Tem certeza que deseja remover o status de administrador do {{username}}?", + "externalAuthentication": "Autenticação externa (OIDC)", + "configureExternalProvider": "Configurar provedor de identidade externo para autenticação OIDC/OAuth2.", + "userIdentifierPath": "Caminho do usuário", + "displayNamePath": "Exibir Caminho do Nome", + "scopes": "Âmbitos", + "saving": "Salvando...", + "saveConfiguration": "Salvar configuração", "reset": "Reset", - "success": "Success", - "loading": "Loading...", - "refresh": "Refresh", - "loadingUsers": "Loading users...", - "username": "Username", - "type": "Type", - "actions": "Actions", - "external": "External", - "local": "Local", - "adminManagement": "Admin Management", - "makeUserAdmin": "Make User Admin", - "adding": "Adding...", - "currentAdmins": "Current Admins", - "adminBadge": "Admin", - "removeAdminButton": "Remove Admin", - "general": "General", - "userRegistration": "User Registration", - "allowNewAccountRegistration": "Allow new account registration", - "allowPasswordLogin": "Allow username/password login", - "missingRequiredFields": "Missing required fields: {{fields}}", - "oidcConfigurationUpdated": "OIDC configuration updated successfully!", - "failedToFetchOidcConfig": "Failed to fetch OIDC configuration", - "failedToFetchRegistrationStatus": "Failed to fetch registration status", - "failedToFetchPasswordLoginStatus": "Failed to fetch password login status", - "failedToFetchUsers": "Failed to fetch users", - "oidcConfigurationDisabled": "OIDC configuration disabled successfully!", - "failedToUpdateOidcConfig": "Failed to update OIDC configuration", - "failedToDisableOidcConfig": "Failed to disable OIDC configuration", - "enterUsernameToMakeAdmin": "Enter username to make admin", - "userIsNowAdmin": "User {{username}} is now an admin", - "failedToMakeUserAdmin": "Failed to make user admin", - "removeAdminStatus": "Remove admin status from {{username}}?", - "adminStatusRemoved": "Admin status removed from {{username}}", - "failedToRemoveAdminStatus": "Failed to remove admin status", - "userDeletedSuccessfully": "User {{username}} deleted successfully", - "failedToDeleteUser": "Failed to delete user", - "overrideUserInfoUrl": "Override User Info URL (not required)", - "failedToFetchSessions": "Failed to fetch sessions", - "sessionRevokedSuccessfully": "Session revoked successfully", - "failedToRevokeSession": "Failed to revoke session", - "confirmRevokeSession": "Are you sure you want to revoke this session?", - "confirmRevokeAllSessions": "Are you sure you want to revoke all sessions for this user?", - "failedToRevokeSessions": "Failed to revoke sessions", - "sessionsRevokedSuccessfully": "Sessions revoked successfully", - "linkToPasswordAccount": "Link to Password Account", - "linkOIDCDialogTitle": "Link OIDC Account to Password Account", - "linkOIDCDialogDescription": "Link {{username}} (OIDC user) to an existing password account. This will enable dual authentication for the password account.", - "createUser": "Create User", - "createUserDescription": "Create a new local user with username and password", - "enterUsername": "Enter username", - "enterPassword": "Enter password", - "userCreatedSuccessfully": "User {{username}} created successfully", - "failedToCreateUser": "Failed to create user", - "manageUser": "Manage User", - "manageUserDescription": "Manage user settings, roles, and permissions", - "authType": "Authentication Type", - "adminStatus": "Admin Status", - "userId": "User ID", - "regularUser": "Regular User", - "adminPrivileges": "Administrator Privileges", - "administratorRole": "Administrator Role", - "administratorRoleDescription": "Grant full system access and management privileges", - "passwordManagement": "Password Management", - "passwordResetWarning": "Resetting a user's password will delete all their data (SSH hosts, credentials, settings). This action cannot be undone.", - "resetUserPassword": "Reset User Password", - "resettingPassword": "Resetting...", - "passwordResetInitiated": "Password reset initiated for {{username}}. Reset code sent.", - "failedToResetPassword": "Failed to initiate password reset", - "sessionManagement": "Session Management", - "revokeAllSessions": "Revoke All Sessions", - "revokeAllSessionsDescription": "Force logout from all devices and sessions", - "revoking": "Revoking...", - "revoke": "Revoke All", - "dangerZone": "Danger Zone", - "deleteUserTitle": "Delete User Account", - "deleteUserWarning": "Permanently delete this user account and all associated data. This action cannot be undone.", - "deleting": "Deleting...", - "cannotDeleteSelf": "You cannot delete your own account", - "cannotRemoveLastAdmin": "Cannot remove the last administrator", - "cannotRemoveOwnAdmin": "You cannot remove your own admin privileges", - "cannotModifyOwnAdminStatus": "You cannot modify your own admin status", - "dualAuth": "Dual Auth", - "externalOIDC": "External (OIDC)", - "localPassword": "Local Password", - "confirmRevokeOwnSessions": "Are you sure you want to revoke all your own sessions? You will be logged out.", - "linkOIDCWarningTitle": "Warning: OIDC User Data Will Be Deleted", - "linkOIDCActionDeleteUser": "Delete the OIDC user account and all their data", - "linkOIDCActionAddCapability": "Add OIDC login capability to the target password account", - "linkOIDCActionDualAuth": "Allow the password account to login with both password and OIDC", - "linkTargetUsernameLabel": "Target Password Account Username", - "linkTargetUsernamePlaceholder": "Enter username of password account", - "linkAccountsButton": "Link Accounts", - "linkingAccounts": "Linking...", - "accountsLinkedSuccessfully": "OIDC user {{oidcUsername}} has been linked to {{targetUsername}}", - "failedToLinkAccounts": "Failed to link accounts", - "linkTargetUsernameRequired": "Target username is required", - "unlinkOIDCTitle": "Unlink OIDC Authentication", - "unlinkOIDCDescription": "Remove OIDC authentication from {{username}}? The user will only be able to login with username/password after this.", - "unlinkOIDCSuccess": "OIDC unlinked from {{username}}", - "failedToUnlinkOIDC": "Failed to unlink OIDC", - "databaseSecurity": "Database Security", - "encryptionStatus": "Encryption Status", - "encryptionEnabled": "Encryption Enabled", - "enabled": "Enabled", - "disabled": "Disabled", - "keyId": "Key ID", - "created": "Created", - "migrationStatus": "Migration Status", - "migrationCompleted": "Migration completed", - "migrationRequired": "Migration required", - "deviceProtectedMasterKey": "Environment-Protected Master Key", - "legacyKeyStorage": "Legacy Key Storage", - "masterKeyEncryptedWithDeviceFingerprint": "Master key encrypted with environment fingerprint (KEK protection active)", - "keyNotProtectedByDeviceBinding": "Key not protected by environment binding (upgrade recommended)", + "success": "Sucesso", + "loading": "Carregandochar@@0", + "refresh": "atualizar", + "loadingUsers": "Carregando usuários...", + "username": "Usuário:", + "type": "tipo", + "actions": "Ações.", + "external": "externo", + "local": "Localização", + "adminManagement": "Gerenciamento de administração", + "makeUserAdmin": "Tornar Usuário Administrador", + "adding": "Adicionando...", + "currentAdmins": "Administradores atuais", + "adminBadge": "Administrador", + "removeAdminButton": "Remover Administrador", + "general": "Gerais", + "userRegistration": "Registro de Usuário", + "allowNewAccountRegistration": "Permitir o registro de novas contas", + "allowPasswordLogin": "Permitir login do usuário/senha", + "missingRequiredFields": "Faltam campos obrigatórios: {{fields}}", + "oidcConfigurationUpdated": "Configuração OIDC atualizada com sucesso!", + "failedToFetchOidcConfig": "Falha ao buscar a configuração OIDC", + "failedToFetchRegistrationStatus": "Não foi possível obter o status do registro", + "failedToFetchPasswordLoginStatus": "Falha ao obter o status de login da senha", + "failedToFetchUsers": "Falha ao buscar usuários", + "oidcConfigurationDisabled": "Configuração OIDC desativada com sucesso!", + "failedToUpdateOidcConfig": "Falha ao atualizar a configuração OIDC", + "failedToDisableOidcConfig": "Falha ao desativar a configuração OIDC", + "enterUsernameToMakeAdmin": "Insira o usuário para fazer o administrador", + "userIsNowAdmin": "Usuário {{username}} agora é um administrador", + "failedToMakeUserAdmin": "Falha ao tornar o usuário administrador", + "removeAdminStatus": "Remover status de administrador do {{username}}?", + "adminStatusRemoved": "Status de administrador removido da {{username}}", + "failedToRemoveAdminStatus": "Falha ao remover o status de administrador", + "userDeletedSuccessfully": "Usuário {{username}} excluído com sucesso", + "failedToDeleteUser": "Falha ao excluir usuário", + "overrideUserInfoUrl": "Substituir URL de informação de usuários (não é obrigatório)", + "failedToFetchSessions": "Falha ao buscar sessões", + "sessionRevokedSuccessfully": "Sessão revogada com sucesso", + "failedToRevokeSession": "Falha ao revogar sessão", + "confirmRevokeSession": "Tem certeza de que deseja revogar esta sessão?", + "confirmRevokeAllSessions": "Tem certeza de que deseja revogar todas as sessões deste usuário?", + "failedToRevokeSessions": "Falha ao revogar sessões", + "sessionsRevokedSuccessfully": "Sessões revogadas com sucesso", + "linkToPasswordAccount": "Link para a Conta de Senha", + "linkOIDCDialogTitle": "Vincular conta OIDC à conta de senha", + "linkOIDCDialogDescription": "Vincular {{username}} (usuário OIDC) a uma conta de senha existente. Isso ativará a verificação dupla para a conta de senha.", + "createUser": "Criar Usuário", + "createUserDescription": "Criar um novo usuário local com nome de usuário e senha", + "enterUsername": "Digite o usuário", + "enterPassword": "Insira a senha", + "userCreatedSuccessfully": "Usuário {{username}} criado com sucesso", + "failedToCreateUser": "Falha ao criar usuário", + "manageUser": "Gerenciar Usuário", + "manageUserDescription": "Gerenciar configurações, papéis e permissões do usuário", + "authType": "Tipo de autenticação", + "adminStatus": "Status do administrador", + "userId": "ID de usuário", + "regularUser": "Usuário Normal", + "adminPrivileges": "Privilégios do Administrador", + "administratorRole": "Função de Administrador", + "administratorRoleDescription": "Conceder privilégios de acesso e gerenciamento ao sistema completo", + "passwordManagement": "Gerenciamento de senhas", + "passwordResetWarning": "Redefinir a senha de um usuário apagará todos os dados (hosts SH, credenciais, configurações). Esta ação não pode ser desfeita.", + "resetUserPassword": "Redefinir Senha do Usuário", + "resettingPassword": "Redefinindo...", + "passwordResetInitiated": "Redefinição de senha iniciada para {{username}}. Redefinir código enviado.", + "failedToResetPassword": "Falha ao iniciar a redefinição de senha", + "sessionManagement": "Gerenciamento de sessão", + "revokeAllSessions": "Revogar todas as sessões", + "revokeAllSessionsDescription": "Forçar logout de todos os dispositivos e sessões", + "revoking": "Revogando...", + "revoke": "Revogar Todos", + "dangerZone": "Zona de Perigo", + "deleteUserTitle": "Excluir conta de usuário", + "deleteUserWarning": "Excluir permanentemente esta conta de usuário e todos os dados associados. Esta ação não pode ser desfeita.", + "deleting": "Excluindo...", + "cannotDeleteSelf": "Você não pode excluir sua própria conta", + "cannotRemoveLastAdmin": "Não é possível remover o último administrador", + "cannotRemoveOwnAdmin": "Você não pode remover seus próprios privilégios de administrador", + "cannotModifyOwnAdminStatus": "Você não pode modificar seu próprio status de administrador", + "dualAuth": "Dupla Autenticação", + "externalOIDC": "Externo (OIDC)", + "localPassword": "Senha local", + "confirmRevokeOwnSessions": "Tem certeza que deseja revogar todas as suas próprias sessões? Você será desconectado.", + "linkOIDCWarningTitle": "Aviso: Os dados de usuário OIDC serão excluídos", + "linkOIDCActionDeleteUser": "Excluir a conta de usuário OIDC e todos os seus dados", + "linkOIDCActionAddCapability": "Adicionar capacidade de login OIDC à conta de senha de destino", + "linkOIDCActionDualAuth": "Permitir que a conta de senha acesse com senha e OIDC", + "linkTargetUsernameLabel": "Usuário da Conta de Destino", + "linkTargetUsernamePlaceholder": "Insira o usuário da conta da senha", + "linkAccountsButton": "Vincular Contas", + "linkingAccounts": "Ligando...", + "accountsLinkedSuccessfully": "O usuário OIDC {{oidcUsername}} foi vinculado a {{targetUsername}}", + "failedToLinkAccounts": "Falha ao vincular contas", + "linkTargetUsernameRequired": "Nome de usuário alvo é necessário", + "unlinkOIDCTitle": "Desvincular Autenticação OIDC", + "unlinkOIDCDescription": "Remover autenticação OIDC do {{username}}? O usuário só será capaz de acessar com nome de usuário/senha depois disso.", + "unlinkOIDCSuccess": "OIDC desvinculado de {{username}}", + "failedToUnlinkOIDC": "Falha ao desvincular OIDC", + "databaseSecurity": "Segurança da base", + "encryptionStatus": "Status da Criptografia", + "encryptionEnabled": "Criptografia habilitada", + "enabled": "Ativado", + "disabled": "Desabilitado", + "keyId": "ID da chave", + "created": "Criado", + "migrationStatus": "Status da migração", + "migrationCompleted": "Migração concluída", + "migrationRequired": "Migração necessária", + "deviceProtectedMasterKey": "Chave Mestra Protegida pelo Ambiente", + "legacyKeyStorage": "Armazenamento de chave antiga", + "masterKeyEncryptedWithDeviceFingerprint": "Chave mestra criptografada com impressão digital ambiente (proteção KEK ativa)", + "keyNotProtectedByDeviceBinding": "Chave não protegida por vínculo de ambiente (atualização recomendada)", "valid": "Valid", - "initializeDatabaseEncryption": "Initialize Database Encryption", - "enableAes256EncryptionWithDeviceBinding": "Enable AES-256 encryption with environment-bound master key protection. This creates enterprise-grade security for SSH keys, passwords, and authentication tokens.", - "featuresEnabled": "Features enabled:", - "aes256GcmAuthenticatedEncryption": "AES-256-GCM authenticated encryption", - "deviceFingerprintMasterKeyProtection": "Environment fingerprint master key protection (KEK)", - "pbkdf2KeyDerivation": "PBKDF2 key derivation with 100K iterations", - "automaticKeyManagement": "Automatic key management and rotation", - "initializing": "Initializing...", - "initializeEnterpriseEncryption": "Initialize Enterprise Encryption", - "migrateExistingData": "Migrate Existing Data", - "encryptExistingUnprotectedData": "Encrypt existing unprotected data in your database. This process is safe and creates automatic backups.", - "testMigrationDryRun": "Verify Encryption Compatibility", - "migrating": "Migrating...", - "migrateData": "Migrate Data", - "securityInformation": "Security Information", - "sshPrivateKeysEncryptedWithAes256": "SSH private keys and passwords are encrypted with AES-256-GCM", - "userAuthTokensProtected": "User authentication tokens and 2FA secrets are protected", - "masterKeysProtectedByDeviceFingerprint": "Master encryption keys are protected by device fingerprint (KEK)", - "keysBoundToServerInstance": "Keys are bound to current server environment (migratable via environment variables)", - "pbkdf2HkdfKeyDerivation": "PBKDF2 + HKDF key derivation with 100K iterations", - "backwardCompatibleMigration": "All data remains backward compatible during migration", - "enterpriseGradeSecurityActive": "Enterprise-Grade Security Active", - "masterKeysProtectedByDeviceBinding": "Your master encryption keys are protected by environment fingerprinting. This uses server hostname, paths, and other environment info to generate protection keys. To migrate servers, set the DB_ENCRYPTION_KEY environment variable on the new server.", - "important": "Important", - "keepEncryptionKeysSecure": "Ensure data security: regularly backup your database files and server configuration. To migrate to a new server, set the DB_ENCRYPTION_KEY environment variable on the new environment, or maintain the same hostname and directory structure.", - "loadingEncryptionStatus": "Loading encryption status...", - "testMigrationDescription": "Verify that existing data can be safely migrated to encrypted format without actually modifying any data", - "serverMigrationGuide": "Server Migration Guide", - "migrationInstructions": "To migrate encrypted data to a new server: 1) Backup database files, 2) Set environment variable DB_ENCRYPTION_KEY=\"your-key\" on new server, 3) Restore database files", - "environmentProtection": "Environment Protection", - "environmentProtectionDesc": "Protects encryption keys based on server environment info (hostname, paths, etc.), migratable via environment variables", - "verificationCompleted": "Compatibility verification completed - no data was changed", - "verificationInProgress": "Verification completed", - "dataMigrationCompleted": "Data migration completed successfully!", - "verificationFailed": "Compatibility verification failed", - "migrationFailed": "Migration failed", - "runningVerification": "Running compatibility verification...", - "startingMigration": "Starting migration...", - "hardwareFingerprintSecurity": "Hardware Fingerprint Security", - "hardwareBoundEncryption": "Hardware-Bound Encryption Active", - "masterKeysNowProtectedByHardwareFingerprint": "Master keys are now protected by real hardware fingerprinting instead of environment variables", - "cpuSerialNumberDetection": "CPU serial number detection", - "motherboardUuidIdentification": "Motherboard UUID identification", - "diskSerialNumberVerification": "Disk serial number verification", - "biosSerialNumberCheck": "BIOS serial number check", - "stableMacAddressFiltering": "Stable MAC address filtering", - "databaseFileEncryption": "Database File Encryption", - "dualLayerProtection": "Dual-Layer Protection Active", - "bothFieldAndFileEncryptionActive": "Both field-level and file-level encryption are now active for maximum security", - "fieldLevelAes256Encryption": "Field-level AES-256 encryption for sensitive data", - "fileLevelDatabaseEncryption": "File-level database encryption with hardware binding", - "hardwareBoundFileKeys": "Hardware-bound file encryption keys", - "automaticEncryptedBackups": "Automatic encrypted backup creation", - "createEncryptedBackup": "Create Encrypted Backup", - "creatingBackup": "Creating Backup...", - "backupCreated": "Backup Created", - "encryptedBackupCreatedSuccessfully": "Encrypted backup created successfully", - "backupCreationFailed": "Backup creation failed", - "databaseMigration": "Database Migration", - "exportForMigration": "Export for Migration", - "exportDatabaseForHardwareMigration": "Export database as SQLite file with decrypted data for migration to new hardware", + "initializeDatabaseEncryption": "Inicializar Criptografia do Banco de Dados", + "enableAes256EncryptionWithDeviceBinding": "Habilite criptografia AES-256 com proteção de chave mestra vinculada ao ambiente. Isso cria segurança de nível empresarial para chaves SSH, senhas e tokens de autenticação.", + "featuresEnabled": "Funcionalidades habilitadas:", + "aes256GcmAuthenticatedEncryption": "Criptografia AES-256-GCM autenticada", + "deviceFingerprintMasterKeyProtection": "Proteção de chave mestra do ambiente (KEK)", + "pbkdf2KeyDerivation": "A derivação da chave PBKDF2 com 100K iterações", + "automaticKeyManagement": "Gerenciamento automático de chaves e rotação", + "initializing": "Inicializandochar@@0", + "initializeEnterpriseEncryption": "Inicializar Criptografia da Empresa", + "migrateExistingData": "Migrar Dados Existentes", + "encryptExistingUnprotectedData": "Criptografar dados desprotegidos existentes em seu banco de dados. Esse processo é seguro e cria backups automáticos.", + "testMigrationDryRun": "Verificar a compatibilidade de criptografia", + "migrating": "Migrando...", + "migrateData": "Migrar Dados", + "securityInformation": "Informações de segurança", + "sshPrivateKeysEncryptedWithAes256": "Chaves e senhas SSH são criptografadas com AES-256-GCM", + "userAuthTokensProtected": "Tokens de autenticação de usuário e segredos de 2FA estão protegidos", + "masterKeysProtectedByDeviceFingerprint": "Chaves criptográficas principais estão protegidas pela impressão digital do dispositivo (KEK)", + "keysBoundToServerInstance": "Chaves estão vinculadas ao ambiente atual do servidor (migrável através de variáveis de ambiente)", + "pbkdf2HkdfKeyDerivation": "PBKDF2 + derivação de chave HKDF com 100K iterações", + "backwardCompatibleMigration": "Todos os dados permanecem incompatíveis durante a migração", + "enterpriseGradeSecurityActive": "Segurança de notas empresariais ativa", + "masterKeysProtectedByDeviceBinding": "Suas chaves de criptografia mestra estão protegidas pela impressão digital. Isto usa o nome de host do servidor, caminhos e outras informações de ambiente para gerar chaves de proteção. Para migrar os servidores, defina a variável de ambiente DB_ENCRYPTION_KEY no novo servidor.", + "important": "Importante", + "keepEncryptionKeysSecure": "Assegure a segurança dos dados: faça um backup regular dos seus arquivos de banco de dados e da configuração do servidor. Para migrar para um novo servidor, defina a variável de ambiente DB_ENCRYPTION_KEY no novo ambiente, ou mantenha o mesmo nome de host e estrutura de diretório.", + "loadingEncryptionStatus": "Carregando status da criptografia...", + "testMigrationDescription": "Verifique se os dados existentes podem ser migrados com segurança para o formato criptografado sem modificar quaisquer dados", + "serverMigrationGuide": "Guia de Migração", + "migrationInstructions": "Para migrar dados criptografados para um novo servidor: 1) Fazer backup dos arquivos de banco de dados, 2) Definir a variável de ambiente DB_ENCRYPTION_KEY=\"sua-chave\" em novo servidor, 3) Restaurar os arquivos de banco de dados", + "environmentProtection": "Proteção do Ambiente", + "environmentProtectionDesc": "Protege chaves de criptografia com base na informação de ambiente do servidor (hostname, paths, etc.), migrável através de variáveis de ambiente", + "verificationCompleted": "Verificação de compatibilidade completada - nenhum dado foi alterado", + "verificationInProgress": "Verificação concluída", + "dataMigrationCompleted": "Migração de dados concluída com sucesso!", + "verificationFailed": "Verificação de compatibilidade falhou", + "migrationFailed": "Falha na migração", + "runningVerification": "Executando verificação de compatibilidade...", + "startingMigration": "Iniciando migração...", + "hardwareFingerprintSecurity": "Segurança da Impressão Digital Hardware", + "hardwareBoundEncryption": "Criptografia de Hardware-Bound Ativa", + "masterKeysNowProtectedByHardwareFingerprint": "Chaves mestres agora são protegidas por impressão digital de hardware real em vez de variáveis de ambiente", + "cpuSerialNumberDetection": "Detecção de números seriais da CPU", + "motherboardUuidIdentification": "Identificação do cliente UUID", + "diskSerialNumberVerification": "Verificação de número de série do disco", + "biosSerialNumberCheck": "Verificar número de série da BIOS", + "stableMacAddressFiltering": "Filtragem de endereço MAC estável", + "databaseFileEncryption": "Criptografia de Arquivo Base", + "dualLayerProtection": "Proteção de dupla camada ativa", + "bothFieldAndFileEncryptionActive": "A criptografia em nível de campo e nível de arquivo agora estão ativos para máxima segurança", + "fieldLevelAes256Encryption": "Field-level AES-256 criptografia para dados confidenciais", + "fileLevelDatabaseEncryption": "Criptografia do banco de dados de nível de arquivo com ligação de hardware", + "hardwareBoundFileKeys": "Chaves de criptografia para arquivos com hardware", + "automaticEncryptedBackups": "Criação de backup criptografado automático", + "createEncryptedBackup": "Criar Backup Criptografado", + "creatingBackup": "Criando Backup...", + "backupCreated": "Backup Criado", + "encryptedBackupCreatedSuccessfully": "Backup criptografado criado com sucesso", + "backupCreationFailed": "Criação do backup falhou", + "databaseMigration": "Migração de banco", + "exportForMigration": "Exportar para Migração", + "exportDatabaseForHardwareMigration": "Exportar banco de dados como arquivo SQLite com dados descriptografados para migração para novo hardware", "exportDatabase": "Export SQLite Database", - "exporting": "Exporting...", - "exportCreated": "SQLite Export Created", - "exportContainsDecryptedData": "SQLite export contains decrypted data - keep secure!", - "databaseExportedSuccessfully": "SQLite database exported successfully", - "databaseExportFailed": "SQLite database export failed", - "importFromMigration": "Import from Migration", - "importDatabaseFromAnotherSystem": "Import SQLite database from another system or hardware", + "exporting": "Exportando...", + "exportCreated": "Exportação do SQLite criada", + "exportContainsDecryptedData": "A exportação SQLite contém dados descriptografados - mantenha-se seguro!", + "databaseExportedSuccessfully": "Banco de dados SQLite exportado com sucesso", + "databaseExportFailed": "Falha na exportação do banco de dados SQLite", + "importFromMigration": "Importar da migração", + "importDatabaseFromAnotherSystem": "Importar banco de dados SQLite a partir de outro sistema ou hardware", "importDatabase": "Import SQLite Database", - "importing": "Importing...", - "selectedFile": "Selected SQLite File", - "importWillReplaceExistingData": "SQLite import will replace existing data - backup recommended!", - "pleaseSelectImportFile": "Please select a SQLite import file", - "databaseImportedSuccessfully": "SQLite database imported successfully", - "databaseImportFailed": "SQLite database import failed", - "manageEncryptionAndBackups": "Manage encryption keys, database security, and backup operations", - "activeSecurityFeatures": "Currently active security measures and protections", - "deviceBindingTechnology": "Advanced hardware-based key protection technology", - "backupAndRecovery": "Secure backup creation and database recovery options", - "crossSystemDataTransfer": "Export and import databases across different systems", - "noMigrationNeeded": "No migration needed", - "encryptionKey": "Encryption Key", - "keyProtection": "Key Protection", - "active": "Active", - "legacy": "Legacy", - "dataStatus": "Data Status", - "encrypted": "Encrypted", - "needsMigration": "Needs Migration", - "ready": "Ready", - "initializeEncryption": "Initialize Encryption", - "initialize": "Initialize", - "test": "Test", - "migrate": "Migrate", + "importing": "Importando...", + "selectedFile": "Arquivo SQLite selecionado", + "importWillReplaceExistingData": "A importação de SQLite substituirá os dados existentes - backup recomendado!", + "pleaseSelectImportFile": "Por favor selecione um arquivo de importação SQLite", + "databaseImportedSuccessfully": "Base de dados SQLite importada com sucesso", + "databaseImportFailed": "Falha na importação do banco de dados SQLite", + "manageEncryptionAndBackups": "Gerenciar chaves de criptografia, segurança do banco de dados e operações de backup", + "activeSecurityFeatures": "Medidas de segurança e proteções atuais", + "deviceBindingTechnology": "Tecnologia avançada de proteção de chaves", + "backupAndRecovery": "Opções de criação de backup seguro e recuperação do banco de dados", + "crossSystemDataTransfer": "Exportar e importar bancos de dados em diferentes sistemas", + "noMigrationNeeded": "Não é necessária migração", + "encryptionKey": "Chave de Criptografia", + "keyProtection": "Proteção por Chave", + "active": "ativo", + "legacy": "Antigo", + "dataStatus": "Situação dos dados", + "encrypted": "Criptografado", + "needsMigration": "Precisa de migração", + "ready": "pronto", + "initializeEncryption": "Iniciar Criptografia", + "initialize": "Inicializar", + "test": "teste", + "migrate": "Migrar", "backup": "Backup", - "createBackup": "Create Backup", - "exportImport": "Export/Import", - "export": "Export", - "import": "Import", - "passwordRequired": "Password required", - "confirmExport": "Confirm Export", - "exportDescription": "Export SSH hosts and credentials as SQLite file", - "importDescription": "Import SQLite file with incremental merge (skips duplicates)", - "criticalWarning": "Critical Warning", - "cannotDisablePasswordLoginWithoutOIDC": "Cannot disable password login without OIDC configured! You must configure OIDC authentication before disabling password login, or you will lose access to Termix.", - "confirmDisablePasswordLogin": "Are you sure you want to disable password login? Make sure OIDC is properly configured and working before proceeding, or you will lose access to your Termix instance.", - "passwordLoginDisabled": "Password login disabled successfully", - "passwordLoginAndRegistrationDisabled": "Password login and new account registration disabled successfully", - "requiresPasswordLogin": "Requires password login enabled", - "passwordLoginDisabledWarning": "Password login is disabled. Ensure OIDC is properly configured or you will not be able to log in to Termix.", - "oidcRequiredWarning": "CRITICAL: Password login is disabled. If you reset or misconfigure OIDC, you will lose all access to Termix and brick your instance. Only proceed if you are absolutely certain.", - "confirmDisableOIDCWarning": "WARNING: You are about to disable OIDC while password login is also disabled. This will brick your Termix instance and you will lose all access. Are you absolutely sure you want to proceed?", - "failedToUpdatePasswordLoginStatus": "Failed to update password login status", - "loadingSessions": "Loading sessions...", - "noActiveSessions": "No active sessions found.", - "device": "Device", - "user": "User", - "lastActive": "Last Active", - "expires": "Expires", + "createBackup": "Criar Backup", + "exportImport": "Exportar/Importar", + "export": "Exportação", + "import": "Importação", + "passwordRequired": "Senha requerida", + "confirmExport": "Confirmar Exportação", + "exportDescription": "Exportar hosts SSH e credenciais como arquivo SQLite", + "importDescription": "Importar arquivo SQLite com merge incremental (ignora duplicatas)", + "criticalWarning": "Aviso Crítico", + "cannotDisablePasswordLoginWithoutOIDC": "Não é possível desabilitar o login da senha sem OIDC configurado! Você deve configurar a autenticação OIDC antes de desativar o login da senha, ou você perderá o acesso ao Termix.", + "confirmDisablePasswordLogin": "Tem certeza que deseja desativar o login por senha? Certifique-se de que OIDC está configurado corretamente e funcionando antes de prosseguir, ou você perderá o acesso à sua instância do Termix.", + "passwordLoginDisabled": "Login com senha desativado com sucesso", + "passwordLoginAndRegistrationDisabled": "Login de senha e registro de nova conta desativados com sucesso", + "requiresPasswordLogin": "Requer login com senha ativado", + "passwordLoginDisabledWarning": "Login de senha está desabilitado. Certifique-se de que OIDC está configurado corretamente ou você não será capaz de entrar no Termix.", + "oidcRequiredWarning": "CRITICAL: O login de senha está desativado. Se você redefinir ou configurar mal OIDC, você perderá todo o acesso ao Termix e brickará sua instância. Só prossiga se tiver a certeza absoluta.", + "confirmDisableOIDCWarning": "AVISO: Você está prestes a desativar OIDC enquanto o login por senha está desabilitado. Isto irá brickar sua instância do Termix e você irá perder todos os acesso. Tem certeza absoluta de que deseja continuar?", + "failedToUpdatePasswordLoginStatus": "Falha ao atualizar status da senha de login", + "loadingSessions": "Carregando sessões...", + "noActiveSessions": "Não foram encontradas sessões ativas.", + "device": "Dispositivo", + "user": "Usuário", + "lastActive": "Última atividade", + "expires": "Expira", "revoked": "Revoked", - "revokeAllUserSessionsTitle": "Revoke all sessions for this user", - "revokeAll": "Revoke All", - "linkOidcToPasswordAccount": "Link OIDC Account to Password Account", - "linkOidcToPasswordAccountDescription": "Link {{username}} (OIDC user) to an existing password account. This will enable dual authentication for the password account.", - "linkOidcWarningTitle": "Warning: OIDC User Data Will Be Deleted", - "linkOidcWarningDescription": "This action will:", - "linkOidcActionDeleteUser": "Delete the OIDC user account and all their data", - "linkOidcActionAddCapability": "Add OIDC login capability to the target password account", - "linkOidcActionDualAuth": "Allow the password account to login with both password and OIDC", - "passwordMinLength": "Password must be at least 6 characters", - "currentRoles": "Current Roles", - "noRolesAssigned": "No roles assigned", - "assignNewRole": "Assign New Role" + "revokeAllUserSessionsTitle": "Revogar todas as sessões para este usuário", + "revokeAll": "Revogar Todos", + "linkOidcToPasswordAccount": "Vincular conta OIDC à conta de senha", + "linkOidcToPasswordAccountDescription": "Vincular {{username}} (usuário OIDC) a uma conta de senha existente. Isso ativará a verificação dupla para a conta de senha.", + "linkOidcWarningTitle": "Aviso: Os dados de usuário OIDC serão excluídos", + "linkOidcWarningDescription": "Esta ação irá:", + "linkOidcActionDeleteUser": "Excluir a conta de usuário OIDC e todos os seus dados", + "linkOidcActionAddCapability": "Adicionar capacidade de login OIDC à conta de senha de destino", + "linkOidcActionDualAuth": "Permitir que a conta de senha acesse com senha e OIDC", + "passwordMinLength": "A senha deve ter pelo menos 6 caracteres", + "currentRoles": "Papéis Atuais", + "noRolesAssigned": "Nenhum cargo atribuído", + "assignNewRole": "Atribuir Nova Função" }, "hosts": { - "title": "Host Manager", - "sshHosts": "SSH Hosts", - "noHosts": "No SSH Hosts", - "noHostsMessage": "You haven't added any SSH hosts yet. Click \"Add Host\" to get started.", - "loadingHosts": "Loading hosts...", - "failedToLoadHosts": "Failed to load hosts", - "retry": "Retry", - "refresh": "Refresh", - "optional": "Optional", - "hostsCount": "{{count}} hosts", - "importJson": "Import JSON", - "importing": "Importing...", - "importJsonTitle": "Import SSH Hosts from JSON", - "importJsonDesc": "Upload a JSON file to bulk import multiple SSH hosts (max 100).", - "downloadSample": "Download Sample", - "formatGuide": "Format Guide", - "exportCredentialWarning": "Warning: Host \"{{name}}\" uses credential authentication. The exported file will not include the credential data and will need to be manually reconfigured after import. Do you want to continue?", - "exportSensitiveDataWarning": "Warning: Host \"{{name}}\" contains sensitive authentication data (password/SSH key). The exported file will include this data in plaintext. Please keep the file secure and delete it after use. Do you want to continue?", - "uncategorized": "Uncategorized", - "confirmDelete": "Are you sure you want to delete \"{{name}}\" ?", - "failedToDeleteHost": "Failed to delete host", - "failedToExportHost": "Failed to export host. Please ensure you're logged in and have access to the host data.", - "jsonMustContainHosts": "JSON must contain a \"hosts\" array or be an array of hosts", - "noHostsInJson": "No hosts found in JSON file", - "maxHostsAllowed": "Maximum 100 hosts allowed per import", - "importCompleted": "Import completed: {{success}} successful, {{failed}} failed", - "importFailed": "Import failed", - "importError": "Import error", - "failedToImportJson": "Failed to import JSON file", - "connectionDetails": "Connection Details", - "organization": "Organization", - "ipAddress": "IP Address", - "port": "Port", - "name": "Name", - "username": "Username", - "folder": "Folder", - "tags": "Tags", - "pin": "Pin", - "notes": "Notes", - "expirationDate": "Expiration Date", - "passwordRequired": "Password is required when using password authentication", - "sshKeyRequired": "SSH Private Key is required when using key authentication", - "keyTypeRequired": "Key Type is required when using key authentication", - "mustSelectValidSshConfig": "Must select a valid SSH configuration from the list", - "addHost": "Add Host", - "editHost": "Edit Host", - "cloneHost": "Clone Host", - "updateHost": "Update Host", - "hostUpdatedSuccessfully": "Host \"{{name}}\" updated successfully!", - "hostAddedSuccessfully": "Host \"{{name}}\" added successfully!", - "hostDeletedSuccessfully": "Host \"{{name}}\" deleted successfully!", - "failedToSaveHost": "Failed to save host. Please try again.", - "savingHost": "Saving host...", - "updatingHost": "Updating host...", - "cloningHost": "Cloning host...", - "enableTerminal": "Enable Terminal", - "enableTerminalDesc": "Enable/disable host visibility in Terminal tab", - "enableTunnel": "Enable Tunnel", - "enableTunnelDesc": "Enable/disable host visibility in Tunnel tab", - "enableFileManager": "Enable File Manager", - "enableFileManagerDesc": "Enable/disable host visibility in File Manager tab", - "enableDockerDesc": "Enable/disable host visibility in Docker tab", - "enableDocker": "Enable Docker", - "defaultPath": "Default Path", - "defaultPathDesc": "Default directory when opening file manager for this host", - "tunnelConnections": "Tunnel Connections", - "connection": "Connection", - "remove": "Remove", - "sourcePort": "Source Port", - "sourcePortDesc": " (Source refers to the Current Connection Details in the General tab)", - "endpointPort": "Endpoint Port", - "endpointSshConfig": "Endpoint SSH Configuration", - "tunnelForwardDescription": "This tunnel will forward traffic from port {{sourcePort}} on the source machine (current connection details in general tab) to port {{endpointPort}} on the endpoint machine.", - "maxRetries": "Max Retries", - "maxRetriesDescription": "Maximum number of retry attempts for tunnel connection.", - "retryInterval": "Retry Interval (seconds)", - "retryIntervalDescription": "Time to wait between retry attempts.", - "autoStartContainer": "Auto Start on Container Launch", - "autoStartDesc": "Automatically start this tunnel when the container launches", - "addConnection": "Add Tunnel Connection", - "sshpassRequired": "Sshpass Required For Password Authentication", - "sshpassRequiredDesc": "For password authentication in tunnels, sshpass must be installed on the system.", - "otherInstallMethods": "Other installation methods:", - "debianUbuntuEquivalent": "(Debian/Ubuntu) or the equivalent for your OS.", - "or": "or", + "title": "Gerenciador de Host", + "sshHosts": "Hosts SSH", + "noHosts": "Nenhum host SSH", + "noHostsMessage": "Você ainda não adicionou nenhum host SSH. Clique em \"Adicionar Host\" para começar.", + "loadingHosts": "Carregando hosts...", + "failedToLoadHosts": "Falha ao carregar hosts", + "retry": "Repetir", + "refresh": "atualizar", + "optional": "Opcional", + "hostsCount": "Hosts {{count}}", + "importJson": "Importar JSON", + "importing": "Importando...", + "importJsonTitle": "Importar o SSH Hosts do JSON", + "importJsonDesc": "Carregar um arquivo JSON para importar em massa vários hosts SSH (máx. 100).", + "downloadSample": "Baixar Exemplo", + "formatGuide": "Guia de formatação", + "exportCredentialWarning": "Aviso: Host \"{{name}}\" usa autenticação de credenciais. O arquivo exportado não incluirá os dados de credenciais e precisará ser reconfigurado manualmente após a importação. Deseja continuar?", + "exportSensitiveDataWarning": "Aviso: Host \"{{name}}\" contém dados de autenticação confidenciais (senha / chave SSH). O arquivo exportado incluirá estes dados em texto simples. Mantenha o arquivo seguro e exclua-o após o uso. Deseja continuar?", + "uncategorized": "Descategorizado", + "confirmDelete": "Tem certeza que deseja excluir \"{{name}}\" ?", + "failedToDeleteHost": "Falha ao excluir host", + "failedToExportHost": "Falha ao exportar o host. Verifique se você está logado e tenha acesso aos dados do host.", + "jsonMustContainHosts": "JSON deve conter um array \"hosts\" ou ser um array de hosts", + "noHostsInJson": "Nenhum host encontrado no arquivo JSON", + "maxHostsAllowed": "Máximo de 100 hosts permitidos por importação", + "importCompleted": "Importação concluída: {{success}} com sucesso, {{failed}} falhou", + "importFailed": "Falha na importação", + "importError": "Erro ao importar", + "failedToImportJson": "Falha ao importar arquivo JSON", + "connectionDetails": "Detalhes da conexão", + "organization": "Cliente", + "ipAddress": "Endereço IP", + "port": "Porta", + "name": "Nome:", + "username": "Usuário:", + "folder": "pasta", + "tags": "Etiquetas", + "pin": "PIN", + "notes": "Observações", + "expirationDate": "Data de Validade", + "passwordRequired": "A senha é obrigatória ao usar a autenticação de senha", + "sshKeyRequired": "A chave privada SSH é necessária para a autenticação de chave", + "keyTypeRequired": "Tipo de chave é necessário ao usar autenticação de chave", + "mustSelectValidSshConfig": "Precisa selecionar uma configuração SSH válida da lista", + "addHost": "Adicionar Host", + "editHost": "Editar Host", + "cloneHost": "Clonar Host", + "updateHost": "Atualizar Host", + "hostUpdatedSuccessfully": "O host \"{{name}}\" foi atualizado com sucesso!", + "hostAddedSuccessfully": "Host \"{{name}}\" adicionado com sucesso!", + "hostDeletedSuccessfully": "Host \"{{name}}\" excluído com sucesso!", + "failedToSaveHost": "Falha ao salvar host. Por favor, tente novamente.", + "savingHost": "Salvando host...", + "updatingHost": "Atualizando host...", + "cloningHost": "Excluindo host...", + "enableTerminal": "Ativar Terminal", + "enableTerminalDesc": "Ativar/desativar a visibilidade do host na aba Terminal", + "enableTunnel": "Ativar Túnel", + "enableTunnelDesc": "Ativar/desativar a visibilidade do host na aba Túnel", + "enableFileManager": "Ativar Gerenciador de Arquivos", + "enableFileManagerDesc": "Ativar/desativar a visibilidade do host na aba Gerenciador de Arquivos", + "enableDockerDesc": "Ativar/desativar a visibilidade do host na aba Docker", + "enableDocker": "Ativar Docker", + "defaultPath": "Caminho Padrão", + "defaultPathDesc": "Diretório padrão ao abrir o gerenciador de arquivos para este host", + "tunnelConnections": "Conexões de túnel", + "connection": "Ligação", + "remove": "Excluir", + "sourcePort": "Porta de origem", + "sourcePortDesc": " (código-fonte refere-se aos detalhes da conexão atual na guia geral)", + "endpointPort": "Porta de Endpoint", + "endpointSshConfig": "Configuração do Endpoint SSH", + "tunnelForwardDescription": "Este túnel irá encaminhar o tráfego da porta {{sourcePort}} na máquina de origem (detalhes atuais da conexão em geral) para a porta {{endpointPort}} na máquina de fim de linha.", + "maxRetries": "Máximo de buscas", + "maxRetriesDescription": "Número máximo de tentativas de tentar conectar túneis novamente.", + "retryInterval": "Intervalo de Repetir (segundos)", + "retryIntervalDescription": "Tempo de espera entre tentativas novamente.", + "autoStartContainer": "Iniciar automaticamente no lançamento do contêiner", + "autoStartDesc": "Iniciar automaticamente este túnel quando o contêiner iniciar", + "addConnection": "Adicionar Conexão de Túnel", + "sshpassRequired": "Sshpass necessário para autenticação de senha", + "sshpassRequiredDesc": "Para autenticação de senha nos túneis, o sshpass deve ser instalado no sistema.", + "otherInstallMethods": "Outros métodos de instalação:", + "debianUbuntuEquivalent": "(Debian/Ubuntu) ou o equivalente para seu sistema operacional.", + "or": "ou", "centosRhelFedora": "CentOS/RHEL/Fedora", "macos": "macOS", - "windows": "Windows", - "sshServerConfigRequired": "SSH Server Configuration Required", - "sshServerConfigDesc": "For tunnel connections, the SSH server must be configured to allow port forwarding:", - "gatewayPortsYes": "to bind remote ports to all interfaces", - "allowTcpForwardingYes": "to enable port forwarding", - "permitRootLoginYes": "if using root user for tunneling", - "editSshConfig": "Edit /etc/ssh/sshd_config and restart SSH: sudo systemctl restart sshd", - "upload": "Upload", - "authentication": "Authentication", - "password": "Password", - "key": "Key", - "credential": "Credential", - "none": "None", - "selectCredential": "Select Credential", - "selectCredentialPlaceholder": "Choose a credential...", - "credentialRequired": "Credential is required when using credential authentication", - "credentialDescription": "Selecting a credential will overwrite the current username and use the credential's authentication details.", - "cannotChangeAuthAsSharedUser": "Cannot change authentication as shared user", - "sshPrivateKey": "SSH Private Key", - "keyPassword": "Key Password", - "keyType": "Key Type", - "autoDetect": "Auto-detect", + "windows": "Janelas", + "sshServerConfigRequired": "Configuração do servidor SSH necessária", + "sshServerConfigDesc": "Para as conexões do túnel, o servidor SSH deve ser configurado para permitir encaminhamento de portas:", + "gatewayPortsYes": "vincular portas remotas a todas as interfaces", + "allowTcpForwardingYes": "para habilitar o encaminhamento de porta", + "permitRootLoginYes": "se estiver usando um usuário root para tunelamento", + "editSshConfig": "Editar /etc/ssh/sshd_config e reiniciar o SSH: sudo systemctl restart sshd", + "upload": "Transferir", + "authentication": "Autenticação", + "password": "Palavra-passe", + "key": "Chave", + "credential": "Credencial", + "none": "Nenhuma", + "selectCredential": "Selecionar Credencial", + "selectCredentialPlaceholder": "Escolha uma credencial...", + "credentialRequired": "A credencial é necessária para usar autenticação de credenciais", + "credentialDescription": "Selecionar uma credencial substituirá o nome de usuário atual e usará os detalhes de autenticação da credencial.", + "cannotChangeAuthAsSharedUser": "Não é possível alterar a autenticação como usuário compartilhado", + "sshPrivateKey": "Chave privada SSH", + "keyPassword": "Senha da Chave", + "keyType": "Tipo de chave", + "autoDetect": "Auto-detectar", "rsa": "RSA", "ed25519": "ED25519", "ecdsaNistP256": "ECDSA NIST P-256", @@ -885,1015 +885,1015 @@ "dsa": "DSA", "rsaSha2256": "RSA SHA2-256", "rsaSha2512": "RSA SHA2-512", - "uploadFile": "Upload File", - "pasteKey": "Paste Key", - "updateKey": "Update Key", - "existingKey": "Existing Key (click to change)", - "existingCredential": "Existing Credential (click to change)", - "addTagsSpaceToAdd": "add tags (space to add)", + "uploadFile": "Enviar Arquivo", + "pasteKey": "Colar Chave", + "updateKey": "Atualizar Chave", + "existingKey": "Chave Existente (clique para alterar)", + "existingCredential": "Credencial Existente (clique para alterar)", + "addTagsSpaceToAdd": "adicionar etiquetas (espaço para adicionar)", "terminalBadge": "Terminal", - "tunnelBadge": "Tunnel", - "fileManagerBadge": "File Manager", - "general": "General", + "tunnelBadge": "Túnel", + "fileManagerBadge": "Gerenciador de Arquivos", + "general": "Gerais", "terminal": "Terminal", - "tunnel": "Tunnel", - "fileManager": "File Manager", - "serverStats": "Server Stats", - "hostViewer": "Host Viewer", - "enableServerStats": "Enable Server Stats", - "enableServerStatsDesc": "Enable/disable server statistics collection for this host", - "displayItems": "Display Items", - "displayItemsDesc": "Choose which metrics to display on the server stats page", - "enableCpu": "CPU Usage", - "enableMemory": "Memory Usage", - "enableDisk": "Disk Usage", - "enableNetwork": "Network Statistics (Coming Soon)", - "enableProcesses": "Process Count (Coming Soon)", - "enableUptime": "Uptime (Coming Soon)", - "enableHostname": "Hostname (Coming Soon)", - "enableOs": "Operating System (Coming Soon)", - "customCommands": "Custom Commands (Coming Soon)", - "customCommandsDesc": "Define custom shutdown and reboot commands for this server", - "shutdownCommand": "Shutdown Command", - "rebootCommand": "Reboot Command", - "confirmRemoveFromFolder": "Are you sure you want to remove \"{{name}}\" from folder \"{{folder}}\"? The host will be moved to \"No Folder\".", - "removedFromFolder": "Host \"{{name}}\" removed from folder successfully", - "failedToRemoveFromFolder": "Failed to remove host from folder", - "folderRenamed": "Folder \"{{oldName}}\" renamed to \"{{newName}}\" successfully", - "failedToRenameFolder": "Failed to rename folder", - "editFolderAppearance": "Edit Folder Appearance", - "editFolderAppearanceDesc": "Customize the color and icon for folder", - "folderColor": "Folder Color", - "folderIcon": "Folder Icon", - "preview": "Preview", - "folderAppearanceUpdated": "Folder appearance updated successfully", - "failedToUpdateFolderAppearance": "Failed to update folder appearance", - "deleteAllHostsInFolder": "Delete All Hosts in Folder", - "confirmDeleteAllHostsInFolder": "Are you sure you want to delete all {{count}} hosts in folder \"{{folder}}\"? This action cannot be undone.", - "allHostsInFolderDeleted": "Deleted {{count}} hosts from folder \"{{folder}}\" successfully", - "failedToDeleteHostsInFolder": "Failed to delete hosts in folder", - "movedToFolder": "Host \"{{name}}\" moved to \"{{folder}}\" successfully", - "failedToMoveToFolder": "Failed to move host to folder", - "clickToRenameFolder": "Click to rename folder", - "renameFolder": "Rename folder", - "removeFromFolder": "Remove from folder \"{{folder}}\"", - "editHostTooltip": "Edit host", - "deleteHostTooltip": "Delete host", - "exportHostTooltip": "Export host", - "cloneHostTooltip": "Clone host", - "clickToEditHost": "Click to edit host", - "dragToMoveBetweenFolders": "Drag to move between folders", - "exportedHostConfig": "Exported host configuration for {{name}}", - "openTerminal": "Open Terminal", - "openFileManager": "Open File Manager", - "openTunnels": "Open Tunnels", - "openServerDetails": "Open Server Details", - "statistics": "Statistics", - "enabledWidgets": "Enabled Widgets", - "openServerStats": "Open Server Stats", - "enabledWidgetsDesc": "Select which statistics widgets to display for this host", - "monitoringConfiguration": "Monitoring Configuration", - "monitoringConfigurationDesc": "Configure how often server statistics and status are checked", - "statusCheckEnabled": "Enable Status Monitoring", - "statusCheckEnabledDesc": "Check if the server is online or offline", - "statusCheckInterval": "Status Check Interval", - "statusCheckIntervalDesc": "How often to check if host is online (5s - 1h)", - "metricsEnabled": "Enable Metrics Monitoring", - "metricsEnabledDesc": "Collect CPU, RAM, disk, and other system statistics", - "metricsInterval": "Metrics Collection Interval", - "metricsIntervalDesc": "How often to collect server statistics (5s - 1h)", - "intervalSeconds": "seconds", - "intervalMinutes": "minutes", - "intervalValidation": "Monitoring intervals must be between 5 seconds and 1 hour (3600 seconds)", - "monitoringDisabled": "Server monitoring is disabled for this host", - "enableMonitoring": "Enable monitoring in Host Manager → Statistics tab", - "monitoringDisabledBadge": "Monitoring Off", - "statusMonitoring": "Status", - "metricsMonitoring": "Metrics", - "terminalCustomization": "Terminal Customization", - "appearance": "Appearance", - "behavior": "Behavior", - "advanced": "Advanced", - "themePreview": "Theme Preview", - "theme": "Theme", - "selectTheme": "Select theme", - "chooseColorTheme": "Choose a color theme for the terminal", - "fontFamily": "Font Family", + "tunnel": "Túnel", + "fileManager": "Gerenciador de Arquivos", + "serverStats": "Estatísticas do servidor", + "hostViewer": "Visualizador do Host", + "enableServerStats": "Habilitar estatísticas do servidor", + "enableServerStatsDesc": "Ativar/desativar estatísticas do servidor para este host", + "displayItems": "Exibir itens", + "displayItemsDesc": "Escolha quais métricas serão exibidas na página de estatísticas do servidor", + "enableCpu": "Uso da CPU", + "enableMemory": "Memória Utilizada", + "enableDisk": "Uso do disco", + "enableNetwork": "Estatísticas de Rede (Em Breve)", + "enableProcesses": "Contagem de processos (Em breve)", + "enableUptime": "Tempo de trabalho (Em breve)", + "enableHostname": "Hostname (Em breve)", + "enableOs": "Sistema Operacional (Em breve)", + "customCommands": "Comandos Personalizados (Em Breve)", + "customCommandsDesc": "Definir comandos personalizados de desligamento e reinicialização para este servidor", + "shutdownCommand": "Comando de desligamento", + "rebootCommand": "Comando de reinicialização", + "confirmRemoveFromFolder": "Tem certeza de que deseja remover \"{{name}}\" da pasta \"{{folder}}\"? O host será movido para \"Nenhuma pasta\".", + "removedFromFolder": "Host \"{{name}}\" removido da pasta com sucesso", + "failedToRemoveFromFolder": "Falha ao remover o host da pasta", + "folderRenamed": "Pasta \"{{oldName}}\" renomeada para \"{{newName}}\" com sucesso", + "failedToRenameFolder": "Falha ao renomear pasta", + "editFolderAppearance": "Editar aparência da pasta", + "editFolderAppearanceDesc": "Personalizar a cor e ícone para pasta", + "folderColor": "Cor da pasta", + "folderIcon": "Ícone da pasta", + "preview": "Pré-visualizar", + "folderAppearanceUpdated": "Aparência da pasta atualizada com sucesso", + "failedToUpdateFolderAppearance": "Falha ao atualizar a aparência da pasta", + "deleteAllHostsInFolder": "Excluir todos os hosts na pasta", + "confirmDeleteAllHostsInFolder": "Tem certeza que deseja excluir todos os hosts do {{count}} na pasta \"{{folder}}\"? Esta ação não pode ser desfeita.", + "allHostsInFolderDeleted": "{{count}} hosts apagados da pasta \"{{folder}}\" com sucesso", + "failedToDeleteHostsInFolder": "Falha ao excluir hosts da pasta", + "movedToFolder": "Host \"{{name}}\" movido para \"{{folder}}\" com sucesso", + "failedToMoveToFolder": "Falha ao mover host para a pasta", + "clickToRenameFolder": "Clique para renomear a pasta", + "renameFolder": "Renomear pasta", + "removeFromFolder": "Remover da pasta \"{{folder}}\"", + "editHostTooltip": "Editar host", + "deleteHostTooltip": "Excluir host", + "exportHostTooltip": "Exportar host", + "cloneHostTooltip": "Clonar host", + "clickToEditHost": "Clique para editar o host", + "dragToMoveBetweenFolders": "Arraste para mover entre as pastas", + "exportedHostConfig": "Configuração host exportada para {{name}}", + "openTerminal": "Abrir terminal", + "openFileManager": "Abrir Gerenciador de Arquivos", + "openTunnels": "Abrir túneis", + "openServerDetails": "Abrir Detalhes do Servidor", + "statistics": "estatísticas", + "enabledWidgets": "Widgets ativos", + "openServerStats": "Estatísticas do Servidor Aberto", + "enabledWidgetsDesc": "Selecione quais widgets de estatísticas a exibir para este host", + "monitoringConfiguration": "Configuração de Monitoramento", + "monitoringConfigurationDesc": "Configurar com que frequência estatísticas e status do servidor são verificados", + "statusCheckEnabled": "Habilitar monitoramento de status", + "statusCheckEnabledDesc": "Verifique se o servidor está online ou offline", + "statusCheckInterval": "Intervalo de verificação de status", + "statusCheckIntervalDesc": "Frequência para verificar se o host está online (5s - 1h)", + "metricsEnabled": "Habilitar monitoramento de métricas", + "metricsEnabledDesc": "Coletar estatísticas de CPU, RAM, disco e outros sistemas", + "metricsInterval": "Intervalo de Coleção de Métricas", + "metricsIntervalDesc": "Com que frequência coletar estatísticas do servidor (5s - 1h)", + "intervalSeconds": "segundos", + "intervalMinutes": "Minutos", + "intervalValidation": "Intervalos de monitoramento devem ser entre 5 segundos e 1 hora (3600 segundos)", + "monitoringDisabled": "Monitoramento do servidor está desabilitado para este host", + "enableMonitoring": "Habilitar monitoramento no Host Manager → Aba de Estatísticas", + "monitoringDisabledBadge": "Monitoramento desligado", + "statusMonitoring": "SItuação", + "metricsMonitoring": "Métricas", + "terminalCustomization": "Customização de Terminal", + "appearance": "Aparência", + "behavior": "Comportamento", + "advanced": "Avançado", + "themePreview": "Pré-visualização do tema", + "theme": "Tema", + "selectTheme": "Selecione um tema", + "chooseColorTheme": "Escolha um tema de cor para o terminal", + "fontFamily": "Família de fonte", "selectFont": "Select font", - "selectFontDesc": "Select the font to use in the terminal", + "selectFontDesc": "Selecione a fonte a ser usada no terminal", "fontSize": "Font Size", - "fontSizeValue": "Font Size: {{value}}px", - "adjustFontSize": "Adjust the terminal font size", - "letterSpacing": "Letter Spacing", - "letterSpacingValue": "Letter Spacing: {{value}}px", - "adjustLetterSpacing": "Adjust spacing between characters", - "lineHeight": "Line Height", - "lineHeightValue": "Line Height: {{value}}", - "adjustLineHeight": "Adjust spacing between lines", - "cursorStyle": "Cursor Style", - "selectCursorStyle": "Select cursor style", - "cursorStyleBlock": "Block", - "cursorStyleUnderline": "Underline", - "cursorStyleBar": "Bar", - "chooseCursorAppearance": "Choose the cursor appearance", - "cursorBlink": "Cursor Blink", - "enableCursorBlink": "Enable cursor blinking animation", - "scrollbackBuffer": "Scrollback Buffer", - "scrollbackBufferValue": "Scrollback Buffer: {{value}} lines", - "scrollbackBufferDesc": "Number of lines to keep in scrollback history", - "bellStyle": "Bell Style", - "selectBellStyle": "Select bell style", - "bellStyleNone": "None", - "bellStyleSound": "Sound", + "fontSizeValue": "Tamanho da fonte: {{value}}px", + "adjustFontSize": "Ajustar o tamanho da fonte do terminal", + "letterSpacing": "Espaçamento das letras", + "letterSpacingValue": "Espaçamento das letras: {{value}}px", + "adjustLetterSpacing": "Ajustar espaçamento entre os caracteres", + "lineHeight": "Altura da linha", + "lineHeightValue": "Altura da linha: {{value}}", + "adjustLineHeight": "Ajustar espaçamento entre as linhas", + "cursorStyle": "Estilo do cursor", + "selectCursorStyle": "Selecionar estilo do cursor", + "cursorStyleBlock": "Bloquear", + "cursorStyleUnderline": "Sublinhar", + "cursorStyleBar": "Barras", + "chooseCursorAppearance": "Escolha a aparência do cursor", + "cursorBlink": "Pisca do Cursor", + "enableCursorBlink": "Ativar animação piscando o cursor", + "scrollbackBuffer": "Buffer de rolagem", + "scrollbackBufferValue": "Buffer: Linhas {{value}}", + "scrollbackBufferDesc": "Número de linhas para manter no histórico de rolagem de volta", + "bellStyle": "Estilo do sino", + "selectBellStyle": "Selecionar estilo do sino", + "bellStyleNone": "Nenhuma", + "bellStyleSound": "Som", "bellStyleVisual": "Visual", - "bellStyleBoth": "Both", - "bellStyleDesc": "How to handle terminal bell (BEL character, \\x07). Programs trigger this when completing tasks, encountering errors, or for notifications. \"Sound\" plays an audio beep, \"Visual\" flashes the screen briefly, \"Both\" does both, \"None\" disables bell alerts.", - "rightClickSelectsWord": "Right Click Selects Word", - "rightClickSelectsWordDesc": "Right-clicking selects the word under cursor", - "fastScrollModifier": "Fast Scroll Modifier", - "selectModifier": "Select modifier", + "bellStyleBoth": "Ambos", + "bellStyleDesc": "Como lidar com o terminal bell (personagem BEL, \\x07). Programas acionam essa opção ao concluir tarefas, encontrar erros ou para notificações. \"Som\" reproduz um sinal sonoro, \"Visual\" pisca a tela brevemente, \"Ambo\" faz ambos, \"Nenhum\" desativa os alertas do sino.", + "rightClickSelectsWord": "Clique com botão direito seleciona Palavra", + "rightClickSelectsWordDesc": "Clique direito seleciona a palavra sob cursor", + "fastScrollModifier": "Modificador de rolagem rápido", + "selectModifier": "Selecionar modificador", "modifierAlt": "Alt", "modifierCtrl": "Ctrl", - "modifierShift": "Shift", - "fastScrollModifierDesc": "Modifier key for fast scrolling", - "fastScrollSensitivity": "Fast Scroll Sensitivity", - "fastScrollSensitivityValue": "Fast Scroll Sensitivity: {{value}}", - "fastScrollSensitivityDesc": "Scroll speed multiplier when modifier is held", - "minimumContrastRatio": "Minimum Contrast Ratio", - "minimumContrastRatioValue": "Minimum Contrast Ratio: {{value}}", - "minimumContrastRatioDesc": "Automatically adjust colors for better readability", - "sshAgentForwarding": "SSH Agent Forwarding", - "sshAgentForwardingDesc": "Forward SSH authentication agent to remote host", - "backspaceMode": "Backspace Mode", - "selectBackspaceMode": "Select backspace mode", + "modifierShift": "Turno", + "fastScrollModifierDesc": "Tecla modificadora para rolagem rápida", + "fastScrollSensitivity": "Sensibilidade de rolagem rápida", + "fastScrollSensitivityValue": "Sensibilidade rápida de rolagem: {{value}}", + "fastScrollSensitivityDesc": "Multiplicador de velocidade de rolagem quando o modificador é mantido", + "minimumContrastRatio": "Relação Mínima de Contraste", + "minimumContrastRatioValue": "Taxa Mínima de Contraste: {{value}}", + "minimumContrastRatioDesc": "Ajustar cores automaticamente para melhor legibilidade", + "sshAgentForwarding": "Encaminhamento de agente SSH", + "sshAgentForwardingDesc": "Encaminhar agente de autenticação SSH para host remoto", + "backspaceMode": "Modo Backspace", + "selectBackspaceMode": "Selecionar modo backspace", "backspaceModeNormal": "Normal (DEL)", "backspaceModeControlH": "Control-H (^H)", - "backspaceModeDesc": "Backspace key behavior for compatibility", - "startupSnippet": "Startup Snippet", - "selectSnippet": "Select snippet", - "searchSnippets": "Search snippets...", - "snippetNone": "None", - "noneAuthTitle": "Keyboard-Interactive Authentication", - "noneAuthDescription": "This authentication method will use keyboard-interactive authentication when connecting to the SSH server.", - "noneAuthDetails": "Keyboard-interactive authentication allows the server to prompt you for credentials during connection. This is useful for servers that require multi-factor authentication or if you do not want to save credentials locally.", - "forceKeyboardInteractive": "Force Keyboard-Interactive", - "forceKeyboardInteractiveDesc": "Forces the use of keyboard-interactive authentication. This is sometimes required for servers that use Two-Factor Authentication (TOTP/2FA).", - "overrideCredentialUsername": "Override Credential Username", - "overrideCredentialUsernameDesc": "Use a different username than the one stored in the credential. This allows you to use the same credential with different usernames.", - "jumpHosts": "Jump Hosts", - "jumpHostsDescription": "Jump hosts (also known as bastion hosts) allow you to connect to a target server through one or more intermediate servers. This is useful for accessing servers behind firewalls or in private networks.", - "jumpHostChain": "Jump Host Chain", - "addJumpHost": "Add Jump Host", - "selectServer": "Select Server", - "searchServers": "Search servers...", - "noServerFound": "No server found", - "jumpHostsOrder": "Connections will be made in order: Jump Host 1 → Jump Host 2 → ... → Target Server", - "socks5Proxy": "SOCKS5 Proxy", - "socks5Description": "Configure SOCKS5 proxy for SSH connection. All traffic will be routed through the specified proxy server.", - "enableSocks5": "Enable SOCKS5 Proxy", - "enableSocks5Description": "Use SOCKS5 proxy for this SSH connection", - "socks5Host": "Proxy Host", - "socks5Port": "Proxy Port", - "socks5Username": "Proxy Username", - "socks5Password": "Proxy Password", - "socks5UsernameOptional": "Optional: leave empty if proxy doesn't require authentication", - "socks5PasswordOptional": "Optional: leave empty if proxy doesn't require authentication", - "socks5ProxyChain": "Proxy Chain", - "socks5ProxyChainDescription": "Configure a chain of SOCKS proxies. Each proxy in the chain will connect through the previous one.", - "socks5ProxyMode": "Proxy Mode", - "socks5UseSingleProxy": "Use Single Proxy", - "socks5UseProxyChain": "Use Proxy Chain", - "socks5UsePreset": "Use Saved Preset", - "socks5SelectPreset": "Select Preset", - "socks5ManagePresets": "Manage Presets", + "backspaceModeDesc": "Comportamento da chave Backspace para compatibilidade", + "startupSnippet": "Trecho de Inicialização", + "selectSnippet": "Selecionar snippet", + "searchSnippets": "Buscar snippets...", + "snippetNone": "Nenhuma", + "noneAuthTitle": "Autenticação interativa", + "noneAuthDescription": "Este método de autenticação usará a autenticação interativa de teclado ao conectar ao servidor SSH.", + "noneAuthDetails": "A autenticação interativa permite que o servidor lhe peça credenciais durante a conexão. Isso é útil para servidores que requerem autenticação multi-fatores ou você não quer salvar as credenciais localmente.", + "forceKeyboardInteractive": "Forçar teclado interativo", + "forceKeyboardInteractiveDesc": "Força o uso de autenticação interativa de teclado. Isso às vezes é necessário para servidores que usam a Autenticação de Dois Fatores (TOTP/2FA).", + "overrideCredentialUsername": "Substituir o nome de usuário credencial", + "overrideCredentialUsernameDesc": "Use um nome de usuário diferente do armazenado nas credenciais. Isso permite que você use a mesma credencial com nomes de usuário diferentes.", + "jumpHosts": "Hosts de Salto", + "jumpHostsDescription": "Pular hosts (também conhecidos como hosts) permitem que você conecte a um servidor alvo através de um ou mais servidores intermediários. Isso é útil para acessar servidores atrás de firewalls ou em redes privadas.", + "jumpHostChain": "Corrente de Host Salto", + "addJumpHost": "Adicionar Jump Host", + "selectServer": "Selecionar servidor", + "searchServers": "Pesquisar servidores...", + "noServerFound": "Nenhum servidor encontrado", + "jumpHostsOrder": "Conexões serão feitas em ordem: Saltar Host 1 → Jump Host 2 → ... → Servidor de destino", + "socks5Proxy": "Proxy SOCKS5", + "socks5Description": "Configurar o proxy SOCKS5 para conexão SSH. Todo o tráfego será encaminhado através do servidor proxy especificado.", + "enableSocks5": "Habilitar SOCKS5 Proxy", + "enableSocks5Description": "Use o proxy SOCKS5 para esta conexão SSH", + "socks5Host": "Servidor de Proxy", + "socks5Port": "Porta do Proxy", + "socks5Username": "Usuário do Proxy", + "socks5Password": "Senha do Proxy", + "socks5UsernameOptional": "Opcional: deixe em branco se o proxy não requer autenticação", + "socks5PasswordOptional": "Opcional: deixe em branco se o proxy não requer autenticação", + "socks5ProxyChain": "Corrente de Proxy", + "socks5ProxyChainDescription": "Configure uma cadeia de proxies SOCKS. Cada proxy na cadeia se conectará através do anterior.", + "socks5ProxyMode": "Modo Proxy", + "socks5UseSingleProxy": "Usar um Proxy Único", + "socks5UseProxyChain": "Usar Proxy Chain", + "socks5UsePreset": "Usar Predefinição Salva", + "socks5SelectPreset": "Selecione a predefinição", + "socks5ManagePresets": "Gerenciar predefinições", "socks5ProxyNode": "Proxy {{number}}", - "socks5AddProxy": "Add Proxy to Chain", - "socks5RemoveProxy": "Remove Proxy", - "socks5ProxyType": "Proxy Type", - "socks5SaveAsPreset": "Save as Preset", - "socks5SavePresetTitle": "Save Proxy Chain as Preset", - "socks5SavePresetDescription": "Save the current proxy chain configuration as a reusable preset", - "socks5PresetName": "Preset Name", - "socks5PresetDescription": "Description (optional)", - "socks5PresetCreated": "Proxy chain preset created", - "socks5PresetUpdated": "Proxy chain preset updated", - "socks5PresetDeleted": "Proxy chain preset deleted", - "socks5PresetSaved": "Preset \"{{name}}\" saved successfully", - "socks5PresetSaveError": "Failed to save preset", - "socks5PresetNameRequired": "Preset name is required", - "socks5EmptyChainError": "Cannot save an empty proxy chain", - "socks5ProxyChainEmpty": "Add at least one proxy to the chain", - "socks5HostDescription": "Hostname or IP address of the SOCKS proxy server", - "socks5PortDescription": "Port number of the SOCKS proxy server (default: 1080)", - "addProxyNode": "Add Proxy Node", - "noProxyNodes": "No proxy nodes configured. Click 'Add Proxy Node' to add one.", - "proxyNode": "Proxy Node", - "proxyType": "Proxy Type", - "quickActions": "Quick Actions", - "quickActionsDescription": "Quick actions allow you to create custom buttons that execute SSH snippets on this server. These buttons will appear at the top of the Server Stats page for quick access.", - "quickActionsList": "Quick Actions List", - "addQuickAction": "Add Quick Action", - "quickActionName": "Action name", - "noSnippetFound": "No snippet found", - "quickActionsOrder": "Quick action buttons will appear in the order listed above on the Server Stats page", - "advancedAuthSettings": "Advanced Authentication Settings", - "sudoPasswordAutoFill": "Sudo Password Auto-Fill", - "sudoPasswordAutoFillDesc": "Automatically offer to insert SSH password when sudo prompts for password", - "sudoPassword": "Sudo Password", - "sudoPasswordDesc": "Optional password for sudo commands (useful with key authentication)", + "socks5AddProxy": "Adicionar Proxy para Cadeia", + "socks5RemoveProxy": "Remover Proxy", + "socks5ProxyType": "Tipo de proxy", + "socks5SaveAsPreset": "Salvar como Predefinição", + "socks5SavePresetTitle": "Salvar cadeia de proxy como predefinição", + "socks5SavePresetDescription": "Salvar a configuração do processo de proxy atual como uma predefinição reutilizável", + "socks5PresetName": "Nome da predefinição", + "socks5PresetDescription": "Descrição (opcional)", + "socks5PresetCreated": "Predefinição de cadeia de proxy criada", + "socks5PresetUpdated": "Predefinição de cadeia de proxy atualizada", + "socks5PresetDeleted": "Predefinição de cadeia de proxy excluída", + "socks5PresetSaved": "Predefinição \"{{name}}\" salva com sucesso", + "socks5PresetSaveError": "Falha ao salvar predefinição", + "socks5PresetNameRequired": "Nome da predefinição é necessário", + "socks5EmptyChainError": "Não pode salvar uma cadeia de proxy vazia", + "socks5ProxyChainEmpty": "Adicionar pelo menos um proxy para a cadeia", + "socks5HostDescription": "Nome do host ou endereço IP do servidor proxy SOCKS", + "socks5PortDescription": "Número da porta do servidor proxy SOCKS (padrão: 1080)", + "addProxyNode": "Adicionar nó proxy", + "noProxyNodes": "Nenhum nó proxy configurado. Clique em 'Adicionar nó de proxy' para adicionar um.", + "proxyNode": "Nó Proxy", + "proxyType": "Tipo de proxy", + "quickActions": "Ações rápidas", + "quickActionsDescription": "Ações rápidas permitem que você crie botões personalizados que executam snippets SSH neste servidor. Esses botões aparecerão no topo da página de estatísticas do servidor para acesso rápido.", + "quickActionsList": "Lista de Ações Rápidas", + "addQuickAction": "Adicionar ação rápida", + "quickActionName": "Nome da ação", + "noSnippetFound": "Nenhum snippet encontrado", + "quickActionsOrder": "Os botões de ação rápida aparecerão na ordem listada acima na página de estatísticas do servidor", + "advancedAuthSettings": "Configurações avançadas de autenticação", + "sudoPasswordAutoFill": "Auto-preenchimento de Senha Sudo", + "sudoPasswordAutoFillDesc": "Oferecer automaticamente a senha de SSH quando sudo solicitar senha", + "sudoPassword": "Senha Sudo", + "sudoPasswordDesc": "Senha opcional para comandos sudo (útil com autenticação de chave)", "socks4": "SOCKS4", "socks5": "SOCKS5", - "executeSnippetOnConnect": "Execute a snippet when the terminal connects", + "executeSnippetOnConnect": "Executar um snippet quando o terminal estiver conectado", "autoMosh": "Auto-MOSH", - "autoMoshDesc": "Automatically run MOSH command on connect", - "moshCommand": "MOSH Command", - "moshCommandDesc": "The MOSH command to execute", - "environmentVariables": "Environment Variables", - "environmentVariablesDesc": "Set custom environment variables for the terminal session", - "variableName": "Variable name", - "variableValue": "Value", - "addVariable": "Add Variable", - "docker": "Docker", - "openDocker": "Open Docker", - "notEnabled": "Docker is not enabled for this host. Enable it in Host Settings to use Docker features.", - "validating": "Validating Docker...", - "error": "Error", - "errorCode": "Error code: {{code}}", + "autoMoshDesc": "Executar o comando MOSH automaticamente ao conectar", + "moshCommand": "Comando MOSH", + "moshCommandDesc": "O comando MOSH para executar", + "environmentVariables": "Variáveis de Ambiente", + "environmentVariablesDesc": "Definir variáveis de ambiente personalizadas para a sessão do terminal", + "variableName": "Nome da variável", + "variableValue": "Valor", + "addVariable": "Adicionar Variável", + "docker": "Atracador", + "openDocker": "Abrir Docker", + "notEnabled": "O Docker não está habilitado para este host. Habilite nas configurações de Host para usar os recursos Docker.", + "validating": "Validando o Docker...", + "error": "ERRO", + "errorCode": "Código de erro: {{code}}", "version": "Docker v{{version}}", - "current": "Current", - "used_limit": "Used / Limit", - "percentage": "Percentage", + "current": "Atual", + "used_limit": "Usado / Limite", + "percentage": "Porcentagem", "input": "Input", - "output": "Output", - "read": "Read", - "write": "Write", + "output": "Saída", + "read": "Lido", + "write": "Salvar", "pids": "PIDs", "id": "ID", - "state": "State", + "state": "Estado:", "console": "Console", - "containerMustBeRunning": "Container must be running to connect to console", - "authenticationRequired": "Authentication required", - "connectedTo": "Connected to {{containerName}}", - "disconnected": "Disconnected", - "consoleError": "Console error", - "errorMessage": "Error: {{message}}", - "failedToConnect": "Failed to connect to console", - "disconnectedFromContainer": "Disconnected from container console.", - "containerNotRunning": "Container is not running", - "startContainerToAccess": "Start the container to access the console", - "selectShell": "Select shell", - "bash": "Bash", + "containerMustBeRunning": "O contêiner deve estar em execução para conectar ao console", + "authenticationRequired": "Autenticação requerida", + "connectedTo": "Conectado a {{containerName}}", + "disconnected": "Desconectado", + "consoleError": "Erro de console", + "errorMessage": "Erro: {{message}}", + "failedToConnect": "Falha ao conectar ao console", + "disconnectedFromContainer": "Desconectado do container console.", + "containerNotRunning": "O contêiner não está em execução", + "startContainerToAccess": "Iniciar o contêiner para acessar o console", + "selectShell": "Selecionar shell", + "bash": "Pancada", "sh": "Sh", - "ash": "Ash", - "connecting": "Connecting...", - "connect": "Connect", - "disconnect": "Disconnect", - "notConnected": "Not connected", - "clickToConnect": "Click Connect to start an interactive shell", - "connectingTo": "Connecting to {{containerName}}...", - "containerMustBeRunningToViewStats": "Container must be running to view stats", - "failedToFetchStats": "Failed to fetch stats", - "noContainersFound": "No containers found", - "noContainersFoundHint": "Start by creating containers on your server", - "searchPlaceholder": "Search by name, image, or ID...", - "filterByStatusPlaceholder": "Filter by status", - "allContainersCount": "All ({{count}})", + "ash": "Cinzas", + "connecting": "Conectandochar@@0", + "connect": "Conectar", + "disconnect": "Desconectar", + "notConnected": "Não conectado", + "clickToConnect": "Clique em Conectar para iniciar um shell interativo", + "connectingTo": "Conectando a {{containerName}}...", + "containerMustBeRunningToViewStats": "O contêiner deve estar em execução para ver estatísticas", + "failedToFetchStats": "Falha ao buscar estatísticas", + "noContainersFound": "Nenhum contêiner encontrado", + "noContainersFoundHint": "Comece criando contêineres em seu servidor", + "searchPlaceholder": "Pesquisar por nome, imagem ou ID...", + "filterByStatusPlaceholder": "Filtrar por status", + "allContainersCount": "Todos ({{count}})", "statusCount": "{{status}} ({{count}})", - "noContainersMatchFilters": "No containers match your filters", - "noContainersMatchFiltersHint": "Try adjusting your search or filter", - "containerStarted": "Container {{name}} started", - "failedToStartContainer": "Failed to start container: {{error}}", - "containerStopped": "Container {{name}} stopped", - "failedToStopContainer": "Failed to stop container: {{error}}", - "containerRestarted": "Container {{name}} restarted", - "failedToRestartContainer": "Failed to restart container: {{error}}", - "containerUnpaused": "Container {{name}} unpaused", - "containerPaused": "Container {{name}} paused", - "failedToTogglePauseContainer": "Failed to {{action}} container: {{error}}", - "containerRemoved": "Container {{name}} removed", - "failedToRemoveContainer": "Failed to remove container: {{error}}", - "image": "Image:", + "noContainersMatchFilters": "Nenhum contêiner corresponde aos seus filtros", + "noContainersMatchFiltersHint": "Tente ajustar sua pesquisa ou filtro", + "containerStarted": "Contêiner {{name}} iniciado", + "failedToStartContainer": "Falha ao iniciar o container: {{error}}", + "containerStopped": "O contêiner {{name}} parou", + "failedToStopContainer": "Falha ao interromper contêiner: {{error}}", + "containerRestarted": "Contêiner {{name}} reiniciado", + "failedToRestartContainer": "Falha ao reiniciar o container: {{error}}", + "containerUnpaused": "Recipiente {{name}} despausado", + "containerPaused": "Recipiente {{name}} pausado", + "failedToTogglePauseContainer": "Falha ao contêiner {{action}} : {{error}}", + "containerRemoved": "{{name}} do contêiner removido", + "failedToRemoveContainer": "Falha ao remover container: {{error}}", + "image": "Imagem:", "idLabel": "ID:", - "ports": "Ports:", - "noPorts": "None", - "created": "Created:", - "start": "Start", - "stop": "Stop", + "ports": "Portos:", + "noPorts": "Nenhuma", + "created": "Criado:", + "start": "Iniciar", + "stop": "Interromper", "unpause": "Unpause", - "pause": "Pause", - "restart": "Restart", - "removeContainer": "Remove Container", - "confirmRemoveContainer": "Are you sure you want to remove container \"{{name}}\"?", - "runningContainerWarning": "Warning: This container is currently running and will be force-removed.", - "removing": "Removing:", - "containerNotFound": "Container not found", - "backToList": "Back to list", - "logs": "Logs", - "stats": "Stats", + "pause": "Suspender", + "restart": "Reiniciar", + "removeContainer": "Remover Contêiner", + "confirmRemoveContainer": "Tem certeza de que deseja remover o contêiner \"{{name}}\"?", + "runningContainerWarning": "Aviso: Este contêiner está atualmente em execução e será forçado a remover.", + "removing": "Removendo:", + "containerNotFound": "Contêiner não encontrado", + "backToList": "Voltar para a lista", + "logs": "Registros", + "stats": "Estatísticas", "consoleTab": "Console", - "failedToFetchLogs": "Failed to fetch logs: {{error}}", - "failedToDownloadLogs": "Failed to download logs: {{error}}", - "linesToShow": "Lines to show", - "last50Lines": "Last 50 lines", - "last100Lines": "Last 100 lines", - "last500Lines": "Last 500 lines", - "last1000Lines": "Last 1000 lines", - "allLogs": "All logs", - "showTimestamps": "Show Timestamps", - "autoRefresh": "Auto Refresh", - "filterLogsPlaceholder": "Filter logs...", - "noLogsAvailable": "No logs available" + "failedToFetchLogs": "Falha ao obter os registros: {{error}}", + "failedToDownloadLogs": "Falha ao baixar os logs: {{error}}", + "linesToShow": "Linhas para mostrar", + "last50Lines": "Últimas 50 linhas", + "last100Lines": "Últimas 100 linhas", + "last500Lines": "Últimas 500 linhas", + "last1000Lines": "Últimas 1000 linhas", + "allLogs": "Todos os logs", + "showTimestamps": "Mostrar Horários", + "autoRefresh": "Atualização Automática", + "filterLogsPlaceholder": "Filtrar registros...", + "noLogsAvailable": "Não há registros disponíveis" }, "terminal": { "title": "Terminal", - "connect": "Connect to Host", - "disconnect": "Disconnect", - "clear": "Clear", - "copy": "Copy", - "paste": "Paste", - "find": "Find", - "fullscreen": "Fullscreen", - "splitHorizontal": "Split Horizontal", - "splitVertical": "Split Vertical", - "closePanel": "Close Panel", - "reconnect": "Reconnect", - "sessionEnded": "Session Ended", - "connectionLost": "Connection Lost", - "error": "ERROR: {{message}}", - "disconnected": "Disconnected", - "connectionClosed": "Connection closed", - "connectionError": "Connection error: {{message}}", - "connected": "Connected", - "sshConnected": "SSH connection established", - "authError": "Authentication failed: {{message}}", - "unknownError": "Unknown error occurred", - "messageParseError": "Failed to parse server message", - "websocketError": "WebSocket connection error", - "connecting": "Connecting...", - "reconnecting": "Reconnecting... ({{attempt}}/{{max}})", - "reconnected": "Reconnected successfully", - "maxReconnectAttemptsReached": "Maximum reconnection attempts reached", - "connectionTimeout": "Connection timeout", + "connect": "Conectar ao Host", + "disconnect": "Desconectar", + "clear": "Limpar", + "copy": "copiar", + "paste": "Colar", + "find": "Localizar", + "fullscreen": "Tela cheia", + "splitHorizontal": "Divisão Horizontal", + "splitVertical": "Divisão Vertical", + "closePanel": "Fechar Painel", + "reconnect": "Reconectar", + "sessionEnded": "Sessão Encerrada", + "connectionLost": "Conexão Perdida", + "error": "ERRO: {{message}}", + "disconnected": "Desconectado", + "connectionClosed": "Conexão fechada", + "connectionError": "Erro de conexão: {{message}}", + "connected": "Conectado", + "sshConnected": "Conexão SSH estabelecida", + "authError": "Falha na autenticação: {{message}}", + "unknownError": "Ocorreu um erro desconhecido", + "messageParseError": "Falha ao analisar mensagem do servidor", + "websocketError": "Erro de conexão WebSocket", + "connecting": "Conectandochar@@0", + "reconnecting": "Reconectando... ({{attempt}}/{{max}})", + "reconnected": "Reconectado com sucesso", + "maxReconnectAttemptsReached": "Máximo de tentativas de reconexão alcançadas", + "connectionTimeout": "Conexão expirada", "terminalTitle": "Terminal - {{host}}", "terminalWithPath": "Terminal - {{host}}:{{path}}", - "runTitle": "Running {{command}} - {{host}}", - "totpRequired": "Two-Factor Authentication Required", - "totpCodeLabel": "Verification Code", + "runTitle": "Executando {{command}} - {{host}}", + "totpRequired": "Autenticação dupla requerida", + "totpCodeLabel": "Código de verificação", "totpPlaceholder": "000000", - "totpVerify": "Verify", - "sudoPasswordPopupTitle": "Insert Password?", - "sudoPasswordPopupHint": "Press Enter to insert, Esc to dismiss", + "totpVerify": "Verificar", + "sudoPasswordPopupTitle": "Inserir senha?", + "sudoPasswordPopupHint": "Pressione Enter para inserir, Esc para dispensar", "sudoPasswordPopupConfirm": "Insert", - "sudoPasswordPopupDismiss": "Dismiss" + "sudoPasswordPopupDismiss": "Descartar" }, "fileManager": { - "title": "File Manager", - "file": "File", - "folder": "Folder", - "connectToSsh": "Connect to SSH to use file operations", - "uploadFile": "Upload File", - "downloadFile": "Download", - "extractArchive": "Extract Archive", - "extractingArchive": "Extracting {{name}}...", - "archiveExtractedSuccessfully": "{{name}} extracted successfully", - "extractFailed": "Extract failed", - "compressFile": "Compress File", - "compressFiles": "Compress Files", - "compressFilesDesc": "Compress {{count}} items into an archive", - "archiveName": "Archive Name", - "enterArchiveName": "Enter archive name...", - "compressionFormat": "Compression Format", - "selectedFiles": "Selected files", - "andMoreFiles": "and {{count}} more...", - "compress": "Compress", - "compressingFiles": "Compressing {{count}} items into {{name}}...", - "filesCompressedSuccessfully": "{{name}} created successfully", - "compressFailed": "Compression failed", - "edit": "Edit", - "preview": "Preview", - "previous": "Previous", - "next": "Next", - "pageXOfY": "Page {{current}} of {{total}}", - "zoomOut": "Zoom Out", - "zoomIn": "Zoom In", - "newFile": "New File", - "newFolder": "New Folder", - "rename": "Rename", - "renameItem": "Rename Item", - "deleteItem": "Delete Item", - "currentPath": "Current Path", - "uploadFileTitle": "Upload File", - "maxFileSize": "Max: 1GB (JSON) / 5GB (Binary) - Large files supported", - "removeFile": "Remove File", - "clickToSelectFile": "Click to select a file", - "chooseFile": "Choose File", - "uploading": "Uploading...", - "downloading": "Downloading...", - "uploadingFile": "Uploading {{name}}...", + "title": "Gerenciador de Arquivos", + "file": "Arquivo", + "folder": "pasta", + "connectToSsh": "Conecte-se a SSH para usar arquivos de operação", + "uploadFile": "Enviar Arquivo", + "downloadFile": "BAIXAR", + "extractArchive": "Extrair arquivo", + "extractingArchive": "Extraindo {{name}}...", + "archiveExtractedSuccessfully": "{{name}} extraído com sucesso", + "extractFailed": "Falha ao extrair", + "compressFile": "Compactar arquivo", + "compressFiles": "Compactar arquivos", + "compressFilesDesc": "Comprimir itens {{count}} em um arquivo", + "archiveName": "Nome do Arquivo", + "enterArchiveName": "Informe o nome do arquivo...", + "compressionFormat": "Formato de compressão", + "selectedFiles": "Arquivos selecionados", + "andMoreFiles": "e mais {{count}}...", + "compress": "Compactar", + "compressingFiles": "Comprimindo {{count}} itens em {{name}}...", + "filesCompressedSuccessfully": "{{name}} criado com sucesso", + "compressFailed": "Compressão falhou", + "edit": "Alterar", + "preview": "Pré-visualizar", + "previous": "Anterior", + "next": "Próximo", + "pageXOfY": "Página {{current}} de {{total}}", + "zoomOut": "Diminuir o zoom", + "zoomIn": "Aumentar zoom", + "newFile": "Novo arquivo", + "newFolder": "Adicionar uma pasta", + "rename": "Renomear", + "renameItem": "Renomear Item", + "deleteItem": "Excluir Item", + "currentPath": "Caminho Atual", + "uploadFileTitle": "Enviar Arquivo", + "maxFileSize": "Máx: 1GB (JSON) / 5GB (Binary) - Suportados arquivos grandes", + "removeFile": "Remover Arquivo", + "clickToSelectFile": "Clique para selecionar um arquivo", + "chooseFile": "Selecionar Arquivo", + "uploading": "Enviando...", + "downloading": "Baixando...", + "uploadingFile": "Enviando {{name}}...", "uploadingLargeFile": "Uploading large file {{name}} ({{size}})...", - "downloadingFile": "Downloading {{name}}...", - "creatingFile": "Creating {{name}}...", - "creatingFolder": "Creating {{name}}...", - "deletingItem": "Deleting {{type}} {{name}}...", - "renamingItem": "Renaming {{type}} {{oldName}} to {{newName}}...", - "createNewFile": "Create New File", - "fileName": "File Name", - "creating": "Creating...", - "createFile": "Create File", - "createNewFolder": "Create New Folder", - "folderName": "Folder Name", - "createFolder": "Create Folder", - "warningCannotUndo": "Warning: This action cannot be undone", - "itemPath": "Item Path", - "thisIsDirectory": "This is a directory (will delete recursively)", - "deleting": "Deleting...", - "currentPathLabel": "Current Path", - "newName": "New Name", - "thisIsDirectoryRename": "This is a directory", - "renaming": "Renaming...", - "fileUploadedSuccessfully": "File \"{{name}}\" uploaded successfully", - "failedToUploadFile": "Failed to upload file", - "fileDownloadedSuccessfully": "File \"{{name}}\" downloaded successfully", - "failedToDownloadFile": "Failed to download file", - "noFileContent": "No file content received", - "filePath": "File Path", - "fileCreatedSuccessfully": "File \"{{name}}\" created successfully", - "failedToCreateFile": "Failed to create file", - "folderCreatedSuccessfully": "Folder \"{{name}}\" created successfully", - "failedToCreateFolder": "Failed to create folder", - "failedToCreateItem": "Failed to create item", - "operationFailed": "{{operation}} operation failed for {{name}}: {{error}}", - "failedToResolveSymlink": "Failed to resolve symlink", - "itemDeletedSuccessfully": "{{type}} deleted successfully", - "itemsDeletedSuccessfully": "{{count}} items deleted successfully", - "failedToDeleteItems": "Failed to delete items", - "dragFilesToUpload": "Drop files here to upload", - "emptyFolder": "This folder is empty", - "itemCount": "{{count}} items", - "selectedCount": "{{count}} selected", - "searchFiles": "Search files...", - "upload": "Upload", - "selectHostToStart": "Select a host to start file management", - "failedToConnect": "Failed to connect to SSH", - "failedToLoadDirectory": "Failed to load directory", - "noSSHConnection": "No SSH connection available", - "enterFolderName": "Enter folder name:", - "enterFileName": "Enter file name:", - "copy": "Copy", - "cut": "Cut", - "paste": "Paste", - "copyPath": "Copy Path", - "copyPaths": "Copy Paths", - "delete": "Delete", - "properties": "Properties", - "refresh": "Refresh", - "downloadFiles": "Download {{count}} files to Browser", - "copyFiles": "Copy {{count}} items", - "cutFiles": "Cut {{count}} items", - "deleteFiles": "Delete {{count}} items", - "filesCopiedToClipboard": "{{count}} items copied to clipboard", - "filesCutToClipboard": "{{count}} items cut to clipboard", - "pathCopiedToClipboard": "Path copied to clipboard", - "pathsCopiedToClipboard": "{{count}} paths copied to clipboard", - "failedToCopyPath": "Failed to copy path to clipboard", - "movedItems": "Moved {{count}} items", - "failedToDeleteItem": "Failed to delete item", - "itemRenamedSuccessfully": "{{type}} renamed successfully", - "failedToRenameItem": "Failed to rename item", - "download": "Download", - "permissions": "Permissions", - "size": "Size", - "modified": "Modified", - "path": "Path", - "confirmDelete": "Are you sure you want to delete {{name}}?", - "uploadSuccess": "File uploaded successfully", - "uploadFailed": "File upload failed", - "downloadSuccess": "File downloaded successfully", - "downloadFailed": "File download failed", - "permissionDenied": "Permission denied", - "checkDockerLogs": "Check the Docker logs for detailed error information", - "internalServerError": "Internal server error occurred", - "serverError": "Server Error", - "error": "Error", - "requestFailed": "Request failed with status code", - "unknownFileError": "unknown", - "cannotReadFile": "Cannot read file", - "noSshSessionId": "No SSH session ID available", - "noFilePath": "No file path available", - "noCurrentHost": "No current host available", - "fileSavedSuccessfully": "File saved successfully", - "saveTimeout": "Save operation timed out. The file may have been saved successfully, but the operation took too long to complete. Check the Docker logs for confirmation.", - "failedToSaveFile": "Failed to save file", - "deletedSuccessfully": "deleted successfully", - "connectToServer": "Connect to a Server", - "selectServerToEdit": "Select a server from the sidebar to start editing files", - "fileOperations": "File Operations", - "confirmDeleteMessage": "Are you sure you want to delete {{name}}?", - "confirmDeleteSingleItem": "Are you sure you want to permanently delete \"{{name}}\"?", - "confirmDeleteMultipleItems": "Are you sure you want to permanently delete {{count}} items?", - "confirmDeleteMultipleItemsWithFolders": "Are you sure you want to permanently delete {{count}} items? This includes folders and their contents.", + "downloadingFile": "Baixando {{name}}...", + "creatingFile": "Criando {{name}}...", + "creatingFolder": "Criando {{name}}...", + "deletingItem": "Excluindo {{type}} {{name}}...", + "renamingItem": "Renomeando {{type}} {{oldName}} para {{newName}}...", + "createNewFile": "Criar novo arquivo", + "fileName": "Nome do arquivo", + "creating": "Criando...", + "createFile": "Criar arquivo", + "createNewFolder": "Criar Nova Pasta", + "folderName": "Nome da pasta", + "createFolder": "Criar pasta", + "warningCannotUndo": "Aviso: Esta ação não pode ser desfeita", + "itemPath": "Caminho do item", + "thisIsDirectory": "Este é um diretório (excluirá recursivamente)", + "deleting": "Excluindo...", + "currentPathLabel": "Caminho Atual", + "newName": "Novo Nome", + "thisIsDirectoryRename": "Este é um diretório", + "renaming": "Renomeando...", + "fileUploadedSuccessfully": "Arquivo \"{{name}}\" carregado com sucesso", + "failedToUploadFile": "Falha ao carregar arquivo", + "fileDownloadedSuccessfully": "Arquivo \"{{name}}\" baixado com sucesso", + "failedToDownloadFile": "Não foi possível baixar o arquivo", + "noFileContent": "Nenhum conteúdo recebido", + "filePath": "Caminho do Arquivo", + "fileCreatedSuccessfully": "Arquivo \"{{name}}\" criado com sucesso", + "failedToCreateFile": "Falha ao criar arquivo", + "folderCreatedSuccessfully": "Pasta \"{{name}}\" criada com sucesso", + "failedToCreateFolder": "Falha ao criar pasta", + "failedToCreateItem": "Falha ao criar item", + "operationFailed": "A operação {{operation}} falhou para {{name}}: {{error}}", + "failedToResolveSymlink": "Falha ao resolver link simbólico", + "itemDeletedSuccessfully": "{{type}} excluído com sucesso", + "itemsDeletedSuccessfully": "Itens {{count}} excluídos com sucesso", + "failedToDeleteItems": "Falha ao excluir itens", + "dragFilesToUpload": "Solte os arquivos aqui para enviar", + "emptyFolder": "Esta pasta está vazia", + "itemCount": "Itens de {{count}}", + "selectedCount": "{{count}} selecionado", + "searchFiles": "Pesquisar arquivos...", + "upload": "Transferir", + "selectHostToStart": "Selecione um host para iniciar o gerenciamento de arquivos", + "failedToConnect": "Falha ao conectar com SSH", + "failedToLoadDirectory": "Falha ao carregar diretório", + "noSSHConnection": "Nenhuma conexão SSH disponível", + "enterFolderName": "Inserir nome da pasta:", + "enterFileName": "Inserir nome do arquivo:", + "copy": "copiar", + "cut": "Recortar", + "paste": "Colar", + "copyPath": "Copiar Caminho", + "copyPaths": "Copiar caminhos", + "delete": "excluir", + "properties": "propriedades", + "refresh": "atualizar", + "downloadFiles": "Baixar arquivos {{count}} para o Navegador", + "copyFiles": "Copiar itens {{count}}", + "cutFiles": "Cortar {{count}} itens", + "deleteFiles": "Excluir {{count}} itens", + "filesCopiedToClipboard": "{{count}} itens copiados para a área de transferência", + "filesCutToClipboard": "{{count}} itens cortados na área de transferência", + "pathCopiedToClipboard": "Caminho copiado para área de transferência", + "pathsCopiedToClipboard": "{{count}} caminhos copiados para a área de transferência", + "failedToCopyPath": "Falha ao copiar caminho para área de transferência", + "movedItems": "Itens de {{count}} movidos", + "failedToDeleteItem": "Falha ao excluir item", + "itemRenamedSuccessfully": "{{type}} renomeado com sucesso", + "failedToRenameItem": "Falha ao renomear item", + "download": "BAIXAR", + "permissions": "Permissões", + "size": "Tamanho", + "modified": "Modificado", + "path": "Caminho", + "confirmDelete": "Tem certeza que deseja excluir {{name}}?", + "uploadSuccess": "Arquivo enviado com sucesso", + "uploadFailed": "Falha ao enviar arquivo", + "downloadSuccess": "Arquivo baixado com sucesso", + "downloadFailed": "Download de arquivo falhou", + "permissionDenied": "Permissão negada", + "checkDockerLogs": "Verifique os logs do Docker para informações detalhadas sobre o erro", + "internalServerError": "Ocorreu um erro interno do servidor", + "serverError": "Erro no Servidor", + "error": "ERRO", + "requestFailed": "Falha na solicitação com código de status", + "unknownFileError": "desconhecido", + "cannotReadFile": "Impossível ler arquivo", + "noSshSessionId": "Nenhum ID de sessão SSH disponível", + "noFilePath": "Nenhum caminho disponível", + "noCurrentHost": "Nenhum host atual disponível", + "fileSavedSuccessfully": "Arquivo salvo com sucesso", + "saveTimeout": "A operação de salvamento expirou. O arquivo pode ter sido salvo com sucesso, mas a operação demorou muito para ser concluída. Verifique os logs do Docker para confirmação.", + "failedToSaveFile": "Falha ao salvar arquivo", + "deletedSuccessfully": "excluído com sucesso", + "connectToServer": "Conectar a um servidor", + "selectServerToEdit": "Selecione um servidor na barra lateral para começar a editar arquivos", + "fileOperations": "Operações de arquivo", + "confirmDeleteMessage": "Tem certeza que deseja excluir {{name}}?", + "confirmDeleteSingleItem": "Tem certeza de que quer apagar permanentemente \"{{name}}\"?", + "confirmDeleteMultipleItems": "Tem certeza de que deseja excluir permanentemente itens {{count}}?", + "confirmDeleteMultipleItemsWithFolders": "Tem certeza de que deseja excluir permanentemente itens {{count}} ? Isso inclui pastas e seu conteúdo.", "confirmDeleteFolder": "Are you sure you want to permanently delete the folder \"{{name}}\" and all its contents?", - "deleteDirectoryWarning": "This will delete the folder and all its contents.", - "actionCannotBeUndone": "This action cannot be undone.", - "permanentDeleteWarning": "This action cannot be undone. The item(s) will be permanently deleted from the server.", - "recent": "Recent", - "pinned": "Pinned", - "folderShortcuts": "Folder Shortcuts", - "noRecentFiles": "No recent files.", - "noPinnedFiles": "No pinned files.", - "enterFolderPath": "Enter folder path", - "noShortcuts": "No shortcuts.", - "searchFilesAndFolders": "Search files and folders...", - "noFilesOrFoldersFound": "No files or folders found.", - "failedToConnectSSH": "Failed to connect to SSH", - "failedToReconnectSSH": "Failed to reconnect SSH session", - "failedToListFiles": "Failed to list files", - "fetchHomeDataTimeout": "Fetch home data timed out", - "sshStatusCheckTimeout": "SSH status check timed out", - "sshReconnectionTimeout": "SSH reconnection timed out", - "saveOperationTimeout": "Save operation timed out", - "cannotSaveFile": "Cannot save file", - "dragSystemFilesToUpload": "Drag system files here to upload", - "dragFilesToWindowToDownload": "Drag files outside window to download", - "openTerminalHere": "Open Terminal Here", - "run": "Run", - "saveToSystem": "Save as...", - "selectLocationToSave": "Select Location to Save", - "openTerminalInFolder": "Open Terminal in This Folder", - "openTerminalInFileLocation": "Open Terminal at File Location", + "deleteDirectoryWarning": "Isto irá apagar a pasta e todo o seu conteúdo.", + "actionCannotBeUndone": "Esta ação não pode ser desfeita.", + "permanentDeleteWarning": "Esta ação não pode ser desfeita. O(s) item(ns) serão excluídos permanentemente do servidor.", + "recent": "Recente", + "pinned": "Fixado", + "folderShortcuts": "Atalhos da pasta", + "noRecentFiles": "Nenhum arquivo recente.", + "noPinnedFiles": "Nenhum arquivo fixado.", + "enterFolderPath": "Insira o caminho da pasta", + "noShortcuts": "Sem atalhos.", + "searchFilesAndFolders": "Pesquisar arquivos e pastas...", + "noFilesOrFoldersFound": "Nenhum arquivo ou pasta encontrado.", + "failedToConnectSSH": "Falha ao conectar com SSH", + "failedToReconnectSSH": "Falha ao reconectar a sessão SSH", + "failedToListFiles": "Falha ao listar arquivos", + "fetchHomeDataTimeout": "Obter dados do home timeout excedido", + "sshStatusCheckTimeout": "A verificação de status SSH expirou", + "sshReconnectionTimeout": "A reconexão SSH expirou", + "saveOperationTimeout": "Salve a operação expirou", + "cannotSaveFile": "Impossível salvar arquivo", + "dragSystemFilesToUpload": "Arraste arquivos de sistema aqui para fazer o upload", + "dragFilesToWindowToDownload": "Arraste os arquivos fora da janela para baixar", + "openTerminalHere": "Abrir Terminal Aqui", + "run": "Executar", + "saveToSystem": "Salvar como:", + "selectLocationToSave": "Selecione o local para salvar", + "openTerminalInFolder": "Abrir Terminal nesta Pasta", + "openTerminalInFileLocation": "Abrir Terminal no Local do Arquivo", "terminalWithPath": "Terminal - {{host}}:{{path}}", - "runningFile": "Running - {{file}}", - "onlyRunExecutableFiles": "Can only run executable files", - "noHostSelected": "No host selected", - "starred": "Starred", - "shortcuts": "Shortcuts", - "directories": "Directories", - "removedFromRecentFiles": "Removed \"{{name}}\" from recent files", - "removeFailed": "Remove failed", - "unpinnedSuccessfully": "Unpinned \"{{name}}\" successfully", - "unpinFailed": "Unpin failed", - "removedShortcut": "Removed shortcut \"{{name}}\"", - "removeShortcutFailed": "Remove shortcut failed", - "clearedAllRecentFiles": "Cleared all recent files", - "clearFailed": "Clear failed", - "removeFromRecentFiles": "Remove from recent files", - "clearAllRecentFiles": "Clear all recent files", - "unpinFile": "Unpin file", - "removeShortcut": "Remove shortcut", - "saveFilesToSystem": "Save {{count}} files as...", - "pinFile": "Pin file", - "addToShortcuts": "Add to shortcuts", - "downloadToDefaultLocation": "Download to default location", - "pasteFailed": "Paste failed", - "noUndoableActions": "No undoable actions", - "undoCopySuccess": "Undid copy operation: Deleted {{count}} copied files", - "undoCopyFailedDelete": "Undo failed: Could not delete any copied files", - "undoCopyFailedNoInfo": "Undo failed: Could not find copied file information", - "undoMoveSuccess": "Undid move operation: Moved {{count}} files back to original location", - "undoMoveFailedMove": "Undo failed: Could not move any files back", - "undoMoveFailedNoInfo": "Undo failed: Could not find moved file information", - "undoDeleteNotSupported": "Delete operation cannot be undone: Files have been permanently deleted from server", - "undoTypeNotSupported": "Unsupported undo operation type", - "undoOperationFailed": "Undo operation failed", - "unknownError": "Unknown error", - "enterPath": "Enter path...", - "editPath": "Edit path", - "confirm": "Confirm", - "cancel": "Cancel", - "find": "Find...", - "replaceWith": "Replace with...", - "replace": "Replace", - "replaceAll": "Replace All", - "downloadInstead": "Download Instead", - "keyboardShortcuts": "Keyboard Shortcuts", - "searchAndReplace": "Search & Replace", - "editing": "Editing", + "runningFile": "Executando - {{file}}", + "onlyRunExecutableFiles": "Só é possível executar arquivos executáveis", + "noHostSelected": "Nenhum host selecionado", + "starred": "Marcado", + "shortcuts": "Atalhos", + "directories": "Diretórios", + "removedFromRecentFiles": "Removido \"{{name}}\" dos arquivos recentes", + "removeFailed": "Falha ao remover", + "unpinnedSuccessfully": "\"{{name}}desafixado\" com sucesso", + "unpinFailed": "Desafixar falhou", + "removedShortcut": "Atalho \"{{name}} removido \"", + "removeShortcutFailed": "Falha ao remover atalho", + "clearedAllRecentFiles": "Todos os arquivos recentes foram removidos", + "clearFailed": "Falha ao apagar", + "removeFromRecentFiles": "Remover dos arquivos recentes", + "clearAllRecentFiles": "Limpar todos os arquivos recentes", + "unpinFile": "Desafixar arquivo", + "removeShortcut": "Remover atalho", + "saveFilesToSystem": "Salvar arquivos {{count}} como...", + "pinFile": "Fixar arquivo", + "addToShortcuts": "Adicionar a atalhos", + "downloadToDefaultLocation": "Baixar para o local padrão", + "pasteFailed": "A colagem falhou", + "noUndoableActions": "Nenhuma ação irreversível", + "undoCopySuccess": "Operação de cópia desfeita: {{count}} excluídos arquivos copiados", + "undoCopyFailedDelete": "Desfazer falhou: Não foi possível excluir nenhum arquivo copiado", + "undoCopyFailedNoInfo": "Desfazer falhou: Não foi possível encontrar informações do arquivo copiado", + "undoMoveSuccess": "Operação movida desfeita: arquivos {{count}} movidos de volta para o local original", + "undoMoveFailedMove": "Desfazer falhou: Não foi possível mover nenhum arquivo de volta", + "undoMoveFailedNoInfo": "Desfazer falhou: Não foi possível encontrar informação de arquivo movido", + "undoDeleteNotSupported": "Operação de exclusão não pode ser desfeita: Os arquivos foram excluídos permanentemente do servidor", + "undoTypeNotSupported": "Tipo de operação desfazer não suportado", + "undoOperationFailed": "Falha na operação", + "unknownError": "Erro desconhecido", + "enterPath": "Digite o caminho...", + "editPath": "Editar caminho", + "confirm": "Confirmar", + "cancel": "cancelar", + "find": "Localizar...", + "replaceWith": "Substituir com...", + "replace": "Substituir", + "replaceAll": "Substituir todos", + "downloadInstead": "Em vez disso, baixar", + "keyboardShortcuts": "Atalhos do teclado", + "searchAndReplace": "Pesquisar e substituir", + "editing": "Editando", "navigation": "Navigation", - "code": "Code", - "search": "Search", - "findNext": "Find Next", - "findPrevious": "Find Previous", - "save": "Save", - "selectAll": "Select All", - "undo": "Undo", - "redo": "Redo", - "goToLine": "Go to Line", - "moveLineUp": "Move Line Up", - "moveLineDown": "Move Line Down", - "toggleComment": "Toggle Comment", - "indent": "Indent", - "outdent": "Outdent", + "code": "Código", + "search": "Pesquisa", + "findNext": "Localizar Próximo", + "findPrevious": "Localizar Anterior", + "save": "Guardar", + "selectAll": "Selecionar Todos", + "undo": "Desfazer", + "redo": "Refazer", + "goToLine": "Ir para a Linha", + "moveLineUp": "Mover Linha para Cima", + "moveLineDown": "Mover Linha para Baixo", + "toggleComment": "Alternar comentário", + "indent": "Indentar", + "outdent": "Desdentar", "autoComplete": "Auto Complete", - "imageLoadError": "Failed to load image", - "rotate": "Rotate", - "originalSize": "Original Size", - "startTyping": "Start typing...", - "unknownSize": "Unknown size", - "fileIsEmpty": "File is empty", - "largeFileWarning": "Large File Warning", - "largeFileWarningDesc": "This file is {{size}} in size, which may cause performance issues when opened as text.", - "fileNotFoundAndRemoved": "File \"{{name}}\" not found and has been removed from recent/pinned files", - "failedToLoadFile": "Failed to load file: {{error}}", - "serverErrorOccurred": "Server error occurred. Please try again later.", - "autoSaveFailed": "Auto-save failed", - "fileAutoSaved": "File auto-saved", - "moveFileFailed": "Failed to move {{name}}", - "moveOperationFailed": "Move operation failed", - "canOnlyCompareFiles": "Can only compare two files", - "comparingFiles": "Comparing files: {{file1}} and {{file2}}", - "dragFailed": "Drag operation failed", - "filePinnedSuccessfully": "File \"{{name}}\" pinned successfully", - "pinFileFailed": "Failed to pin file", - "fileUnpinnedSuccessfully": "File \"{{name}}\" unpinned successfully", - "unpinFileFailed": "Failed to unpin file", - "shortcutAddedSuccessfully": "Folder shortcut \"{{name}}\" added successfully", - "addShortcutFailed": "Failed to add shortcut", - "operationCompletedSuccessfully": "{{operation}} {{count}} items successfully", - "operationCompleted": "{{operation}} {{count}} items", - "downloadFileSuccess": "File {{name}} downloaded successfully", - "downloadFileFailed": "Download failed", - "moveTo": "Move to {{name}}", - "diffCompareWith": "Diff compare with {{name}}", - "dragOutsideToDownload": "Drag outside window to download ({{count}} files)", - "newFolderDefault": "NewFolder", + "imageLoadError": "Não foi possível carregar a imagem", + "rotate": "Rotacionar", + "originalSize": "Tamanho Original", + "startTyping": "Comece a digitar...", + "unknownSize": "Tamanho desconhecido", + "fileIsEmpty": "O arquivo está vazio", + "largeFileWarning": "Aviso de arquivo grande", + "largeFileWarningDesc": "Este arquivo tem o tamanho {{size}} , o que pode causar problemas de desempenho quando aberto como texto.", + "fileNotFoundAndRemoved": "O arquivo \"{{name}}\" não foi encontrado e foi removido dos arquivos recentes/fixados", + "failedToLoadFile": "Falha ao carregar arquivo: {{error}}", + "serverErrorOccurred": "Ocorreu um erro no servidor. Tente novamente mais tarde.", + "autoSaveFailed": "Auto-salvamento falhou", + "fileAutoSaved": "Arquivo salvo automaticamente", + "moveFileFailed": "Falha ao mover {{name}}", + "moveOperationFailed": "Falha ao mover", + "canOnlyCompareFiles": "Só é possível comparar dois arquivos", + "comparingFiles": "Comparando arquivos: {{file1}} e {{file2}}", + "dragFailed": "Falha ao arrastar", + "filePinnedSuccessfully": "Arquivo \"{{name}}\" fixado com sucesso", + "pinFileFailed": "Falha ao fixar arquivo", + "fileUnpinnedSuccessfully": "Arquivo \"{{name}}\" desafixado com sucesso", + "unpinFileFailed": "Falha ao desafixar arquivo", + "shortcutAddedSuccessfully": "Atalho para a pasta \"{{name}}\" adicionado com sucesso", + "addShortcutFailed": "Falha ao adicionar atalho", + "operationCompletedSuccessfully": "{{operation}} Itens {{count}} com sucesso", + "operationCompleted": "{{operation}} Itens em {{count}}", + "downloadFileSuccess": "Arquivo {{name}} baixado com sucesso", + "downloadFileFailed": "Download falhou", + "moveTo": "Mover para {{name}}", + "diffCompareWith": "Comparar diferenças com {{name}}", + "dragOutsideToDownload": "Arraste fora do janela para baixar (arquivos{{count}})", + "newFolderDefault": "Pasta", "newFileDefault": "NewFile.txt", - "successfullyMovedItems": "Successfully moved {{count}} items to {{target}}", - "move": "Move", - "searchInFile": "Search in file (Ctrl+F)", - "showKeyboardShortcuts": "Show keyboard shortcuts", - "startWritingMarkdown": "Start writing your markdown content...", - "loadingFileComparison": "Loading file comparison...", + "successfullyMovedItems": "Itens de {{count}} movidos com sucesso para {{target}}", + "move": "Mover-se", + "searchInFile": "Procurar no arquivo (Ctrl+F)", + "showKeyboardShortcuts": "Exibir atalhos de teclado", + "startWritingMarkdown": "Comece a escrever o seu conteúdo markdown...", + "loadingFileComparison": "Carregando comparação de arquivo...", "reload": "Reload", - "compare": "Compare", - "sideBySide": "Side by Side", - "inline": "Inline", - "fileComparison": "File Comparison: {{file1}} vs {{file2}}", - "fileTooLarge": "File too large: {{error}}", - "sshConnectionFailed": "SSH connection failed. Please check your connection to {{name}} ({{ip}}:{{port}})", - "loadFileFailed": "Failed to load file: {{error}}", - "connectedSuccessfully": "Connected successfully", - "totpVerificationFailed": "TOTP verification failed", - "verificationCodePrompt": "Verification code:", - "changePermissions": "Change Permissions", - "changePermissionsDesc": "Modify file permissions for", - "currentPermissions": "Current Permissions", - "newPermissions": "New Permissions", - "owner": "Owner", - "group": "Group", - "others": "Others", - "read": "Read", - "write": "Write", - "execute": "Execute", - "permissionsChangedSuccessfully": "Permissions changed successfully", - "failedToChangePermissions": "Failed to change permissions" + "compare": "Comparar", + "sideBySide": "Lado a lado", + "inline": "Embutido", + "fileComparison": "Comparação de arquivos: {{file1}} vs {{file2}}", + "fileTooLarge": "Arquivo muito grande: {{error}}", + "sshConnectionFailed": "Falha na conexão SSH. Por favor, verifique sua conexão com {{name}} ({{ip}}:{{port}})", + "loadFileFailed": "Falha ao carregar arquivo: {{error}}", + "connectedSuccessfully": "Conectado com sucesso", + "totpVerificationFailed": "Falha na verificação TOTP", + "verificationCodePrompt": "Código de verificação:", + "changePermissions": "Alterar permissões", + "changePermissionsDesc": "Modificar permissões de arquivos para", + "currentPermissions": "Permissões Atuais", + "newPermissions": "Novas permissões", + "owner": "Proprietário", + "group": "grupo", + "others": "Outros", + "read": "Lido", + "write": "Salvar", + "execute": "Executar", + "permissionsChangedSuccessfully": "Permissões alteradas com sucesso", + "failedToChangePermissions": "Falha ao alterar permissões" }, "tunnel": { - "noTunnelsConfigured": "No Tunnels Configured", - "configureTunnelsInHostSettings": "Configure tunnel connections in the Host Manager to get started" + "noTunnelsConfigured": "Nenhum túnel configurado", + "configureTunnelsInHostSettings": "Configure conexões de túnel no Gerenciador de Host para começar" }, "tunnels": { - "title": "SSH Tunnels", - "noSshTunnels": "No SSH Tunnels", - "createFirstTunnelMessage": "You haven't created any SSH tunnels yet. Configure tunnel connections in the Host Manager to get started.", - "connected": "Connected", - "disconnected": "Disconnected", - "connecting": "Connecting...", - "disconnecting": "Disconnecting...", - "unknownTunnelStatus": "Unknown", - "statusUnknown": "Unknown", - "unknown": "Unknown", - "error": "Error", - "failed": "Failed", - "retrying": "Retrying", - "waiting": "Waiting", - "waitingForRetry": "Waiting for retry", - "retryingConnection": "Retrying connection", - "canceling": "Canceling...", - "connect": "Connect", - "disconnect": "Disconnect", - "cancel": "Cancel", - "port": "Port", - "attempt": "Attempt {{current}} of {{max}}", - "nextRetryIn": "Next retry in {{seconds}} seconds", - "checkDockerLogs": "Check your Docker logs for the error reason, join the", - "orCreate": "or create a ", - "noTunnelConnections": "No tunnel connections configured", - "tunnelConnections": "Tunnel Connections", - "addTunnel": "Add Tunnel", - "editTunnel": "Edit Tunnel", - "deleteTunnel": "Delete Tunnel", - "tunnelName": "Tunnel Name", - "localPort": "Local Port", - "remoteHost": "Remote Host", - "remotePort": "Remote Port", - "autoStart": "Auto Start", - "status": "Status", - "active": "Active", - "inactive": "Inactive", - "start": "Start", - "stop": "Stop", - "restart": "Restart", - "connectionType": "Connection Type", - "local": "Local", - "remote": "Remote", - "dynamic": "Dynamic", - "unknownConnectionStatus": "Unknown", - "portMapping": "Port {{sourcePort}} → {{endpointHost}}:{{endpointPort}}", - "endpointHostNotFound": "Endpoint host not found", + "title": "Túneis SSH", + "noSshTunnels": "Sem Túneis SSH", + "createFirstTunnelMessage": "Você ainda não criou nenhum túnel SSH. Configure as conexões de túnel no Gerenciador de Host para começar.", + "connected": "Conectado", + "disconnected": "Desconectado", + "connecting": "Conectandochar@@0", + "disconnecting": "Desconectando...", + "unknownTunnelStatus": "Desconhecido", + "statusUnknown": "Desconhecido", + "unknown": "Desconhecido", + "error": "ERRO", + "failed": "Falhou", + "retrying": "Retentando", + "waiting": "Esperando", + "waitingForRetry": "Aguardando nova tentativa", + "retryingConnection": "Tentando conexão novamente", + "canceling": "Cancelando...", + "connect": "Conectar", + "disconnect": "Desconectar", + "cancel": "cancelar", + "port": "Porta", + "attempt": "Tentativa {{current}} de {{max}}", + "nextRetryIn": "Próxima repetição em {{seconds}} segundos", + "checkDockerLogs": "Verifique os seus logs do Docker pelo motivo de erro, junte-se ao", + "orCreate": "ou criar uma ", + "noTunnelConnections": "Nenhuma conexão de túnel configurada", + "tunnelConnections": "Conexões de túnel", + "addTunnel": "Adicionar túnel", + "editTunnel": "Editar túnel", + "deleteTunnel": "Excluir túnel", + "tunnelName": "Nome do túnel", + "localPort": "Porta local", + "remoteHost": "Host Remoto", + "remotePort": "Porta remota", + "autoStart": "Início automático", + "status": "SItuação", + "active": "ativo", + "inactive": "Inativo", + "start": "Iniciar", + "stop": "Interromper", + "restart": "Reiniciar", + "connectionType": "Tipo de conexão", + "local": "Localização", + "remote": "Remoto", + "dynamic": "Dinâmico", + "unknownConnectionStatus": "Desconhecido", + "portMapping": "Porta {{sourcePort}} → {{endpointHost}}:{{endpointPort}}", + "endpointHostNotFound": "Servidor de Endpoint não encontrado", "discord": "Discord", - "githubIssue": "GitHub issue", - "forHelp": "for help" + "githubIssue": "Problema no GitHub", + "forHelp": "para obter ajuda" }, "serverStats": { - "title": "Server Statistics", - "cpu": "CPU", - "memory": "Memory", - "disk": "Disk", - "network": "Network", - "uptime": "Uptime", - "loadAverage": "Avg: {{avg1}}, {{avg5}}, {{avg15}}", - "processes": "Processes", - "connections": "Connections", - "usage": "Usage", - "available": "Available", - "total": "Total", - "free": "Free", - "used": "Used", - "percentage": "Percentage", - "refreshStatusAndMetrics": "Refresh status and metrics", - "refreshStatus": "Refresh Status", - "fileManagerAlreadyOpen": "File Manager already open for this host", - "openFileManager": "Open File Manager", - "cpuCores_one": "{{count}} CPU", + "title": "Estatísticas do Servidor", + "cpu": "cpu", + "memory": "Memória", + "disk": "Disco", + "network": "Rede", + "uptime": "Tempo em atividade", + "loadAverage": "Média: {{avg1}}, {{avg5}}, {{avg15}}", + "processes": "processos", + "connections": "Conexões", + "usage": "Utilização", + "available": "Disponível", + "total": "Total:", + "free": "Gratuito", + "used": "Utilizado", + "percentage": "Porcentagem", + "refreshStatusAndMetrics": "Atualizar status e métricas", + "refreshStatus": "Atualizar status", + "fileManagerAlreadyOpen": "Gerenciador de arquivos já aberto para este host", + "openFileManager": "Abrir Gerenciador de Arquivos", + "cpuCores_one": "CPU {{count}}", "cpuCores_other": "{{count}} CPUs", "naCpus": "N/A CPU(s)", - "loadAverageNA": "Avg: N/A", - "cpuUsage": "CPU Usage", - "memoryUsage": "Memory Usage", - "diskUsage": "Disk Usage", - "rootStorageSpace": "Root Storage Space", - "of": "of", - "feedbackMessage": "Have ideas for what should come next for server management? Share them on", - "failedToFetchHostConfig": "Failed to fetch host configuration", - "failedToFetchStatus": "Failed to fetch server status", - "failedToFetchMetrics": "Failed to fetch server metrics", - "failedToFetchHomeData": "Failed to fetch home data", - "loadingMetrics": "Loading metrics...", - "connecting": "Connecting...", - "refreshing": "Refreshing...", - "serverOffline": "Server Offline", - "cannotFetchMetrics": "Cannot fetch metrics from offline server", - "totpRequired": "TOTP Authentication Required", - "totpUnavailable": "Server Stats unavailable for TOTP-enabled servers", - "totpVerified": "TOTP verified, metrics collection started", - "totpFailed": "TOTP verification failed", - "totpInvalidCode": "Invalid verification code", - "totpCancelled": "Metrics collection cancelled", - "authenticationFailed": "Authentication failed", - "noneAuthNotSupported": "Server Stats does not support 'none' authentication type.", - "load": "Load", - "editLayout": "Edit Layout", - "cancelEdit": "Cancel", - "addWidget": "Add Widget", - "saveLayout": "Save Layout", - "unsavedChanges": "Unsaved changes", - "layoutSaved": "Layout saved successfully", - "failedToSaveLayout": "Failed to save layout", - "systemInfo": "System Information", + "loadAverageNA": "Média: N/A", + "cpuUsage": "Uso da CPU", + "memoryUsage": "Memória Utilizada", + "diskUsage": "Uso do disco", + "rootStorageSpace": "Espaço de armazenamento ROOT", + "of": "de", + "feedbackMessage": "Tem ideias para o que deve vir a seguir para o gerenciamento de servidores? Compartilhe em", + "failedToFetchHostConfig": "Falha ao buscar a configuração do host", + "failedToFetchStatus": "Falha ao obter o status do servidor", + "failedToFetchMetrics": "Falha ao buscar métricas do servidor", + "failedToFetchHomeData": "Falha ao obter dados de tela inicial", + "loadingMetrics": "Carregando métricas...", + "connecting": "Conectandochar@@0", + "refreshing": "Atualizando...", + "serverOffline": "Servidor Offline", + "cannotFetchMetrics": "Não é possível buscar métricas do servidor offline", + "totpRequired": "Autenticação TOTP Necessária", + "totpUnavailable": "Estatísticas do Servidor indisponíveis para servidores TOTP habilitados", + "totpVerified": "Coleção de métricas TOTP verificada", + "totpFailed": "Falha na verificação TOTP", + "totpInvalidCode": "Código de verificação inválido", + "totpCancelled": "Coleção de métricas cancelada", + "authenticationFailed": "Falha na autenticação", + "noneAuthNotSupported": "As estatísticas do servidor não suportam tipo de autenticação 'nenhum'.", + "load": "Carregar", + "editLayout": "Editar Layout", + "cancelEdit": "cancelar", + "addWidget": "Adicionar Widget", + "saveLayout": "Gravar Layout", + "unsavedChanges": "Alterações não salvas", + "layoutSaved": "Layout salvo com sucesso", + "failedToSaveLayout": "Falha ao salvar layout", + "systemInfo": "Informação do Sistema", "hostname": "Hostname", - "operatingSystem": "Operating System", + "operatingSystem": "Sistema operacional", "kernel": "Kernel", - "totalUptime": "Total Uptime", - "seconds": "seconds", - "networkInterfaces": "Network Interfaces", - "noInterfacesFound": "No network interfaces found", - "totalProcesses": "Total Processes", - "running": "Running", - "noProcessesFound": "No processes found", - "loginStats": "SSH Login Statistics", - "totalLogins": "Total Logins", - "uniqueIPs": "Unique IPs", - "recentSuccessfulLogins": "Recent Successful Logins", - "recentFailedAttempts": "Recent Failed Attempts", - "noRecentLoginData": "No recent login data", - "from": "from", - "quickActions": "Quick Actions", - "executeQuickAction": "Execute {{name}}", - "executingQuickAction": "Executing {{name}}...", - "quickActionSuccess": "{{name}} completed successfully", - "quickActionFailed": "{{name}} failed", - "quickActionError": "Failed to execute {{name}}" + "totalUptime": "Total em Feriado", + "seconds": "segundos", + "networkInterfaces": "Interfaces de Rede", + "noInterfacesFound": "Nenhuma interface de rede encontrada", + "totalProcesses": "Total de processos", + "running": "Executando", + "noProcessesFound": "Nenhum processo encontrado", + "loginStats": "Estatísticas de Login SSH", + "totalLogins": "Logins totais", + "uniqueIPs": "IPs únicos", + "recentSuccessfulLogins": "Logins recentes", + "recentFailedAttempts": "Tentativas Recentes", + "noRecentLoginData": "Nenhum dado de login recente", + "from": "De", + "quickActions": "Ações rápidas", + "executeQuickAction": "Executar {{name}}", + "executingQuickAction": "Executando {{name}}...", + "quickActionSuccess": "{{name}} completado com sucesso", + "quickActionFailed": "{{name}} falhou", + "quickActionError": "Falha ao executar {{name}}" }, "auth": { - "tagline": "SSH SERVER MANAGER", - "description": "Secure, powerful, and intuitive SSH connection management", - "welcomeBack": "Welcome back to TERMIX", - "createAccount": "Create your TERMIX account", - "continueExternal": "Continue with external provider", - "loginTitle": "Login to Termix", - "registerTitle": "Create Account", - "loginButton": "Login", - "registerButton": "Register", - "forgotPassword": "Forgot Password?", - "rememberMe": "Remember Me", - "noAccount": "Don't have an account?", - "hasAccount": "Already have an account?", - "loginSuccess": "Login successful", - "loginFailed": "Login failed", - "registerSuccess": "Registration successful", - "registerFailed": "Registration failed", - "logoutSuccess": "Logged out successfully", - "invalidCredentials": "Invalid username or password", - "accountCreated": "Account created successfully", - "passwordReset": "Password reset link sent", - "twoFactorAuth": "Two-Factor Authentication", - "enterCode": "Enter verification code", - "backupCode": "Or use backup code", - "verifyCode": "Verify Code", - "redirectingToApp": "Redirecting to app...", - "enableTwoFactor": "Enable Two-Factor Authentication", - "disableTwoFactor": "Disable Two-Factor Authentication", - "scanQRCode": "Scan this QR code with your authenticator app", - "backupCodes": "Backup Codes", - "saveBackupCodes": "Save these backup codes in a safe place", - "twoFactorEnabledSuccess": "Two-factor authentication enabled successfully!", - "twoFactorDisabled": "Two-factor authentication disabled", - "newBackupCodesGenerated": "New backup codes generated", - "backupCodesDownloaded": "Backup codes downloaded", - "pleaseEnterSixDigitCode": "Please enter a 6-digit code", - "invalidVerificationCode": "Invalid verification code", - "failedToDisableTotp": "Failed to disable TOTP", - "failedToGenerateBackupCodes": "Failed to generate backup codes", - "enterPassword": "Enter your password", - "lockedOidcAuth": "Locked (OIDC Auth)", - "twoFactorTitle": "Two-Factor Authentication", - "twoFactorProtected": "Your account is protected with two-factor authentication", - "twoFactorActive": "Two-factor authentication is currently active on your account", - "disable2FA": "Disable 2FA", - "disableTwoFactorWarning": "Disabling two-factor authentication will make your account less secure", - "passwordOrTotpCode": "Password or TOTP Code", - "or": "Or", - "generateNewBackupCodesText": "Generate new backup codes if you've lost your existing ones", - "generateNewBackupCodes": "Generate New Backup Codes", - "yourBackupCodes": "Your Backup Codes", - "download": "Download", - "setupTwoFactorTitle": "Set Up Two-Factor Authentication", - "sshAuthenticationRequired": "SSH Authentication Required", - "sshNoKeyboardInteractive": "Keyboard-Interactive Authentication Unavailable", - "sshAuthenticationFailed": "Authentication Failed", - "sshAuthenticationTimeout": "Authentication Timeout", - "sshNoKeyboardInteractiveDescription": "The server does not support keyboard-interactive authentication. Please provide your password or SSH key.", - "sshAuthFailedDescription": "The provided credentials were incorrect. Please try again with valid credentials.", - "sshTimeoutDescription": "The authentication attempt timed out. Please try again.", - "sshProvideCredentialsDescription": "Please provide your SSH credentials to connect to this server.", - "sshPasswordDescription": "Enter the password for this SSH connection.", - "sshKeyPasswordDescription": "If your SSH key is encrypted, enter the passphrase here.", - "step1ScanQR": "Step 1: Scan the QR code with your authenticator app", - "manualEntryCode": "Manual Entry Code", - "cannotScanQRText": "If you can't scan the QR code, enter this code manually in your authenticator app", - "nextVerifyCode": "Next: Verify Code", - "verifyAuthenticator": "Verify Your Authenticator", - "step2EnterCode": "Step 2: Enter the 6-digit code from your authenticator app", - "verificationCode": "Verification Code", - "back": "Back", - "verifyAndEnable": "Verify and Enable", - "saveBackupCodesTitle": "Save Your Backup Codes", - "step3StoreCodesSecurely": "Step 3: Store these codes in a safe place", - "importantBackupCodesText": "Save these backup codes in a secure location. You can use them to access your account if you lose your authenticator device.", - "completeSetup": "Complete Setup", - "notEnabledText": "Two-factor authentication adds an extra layer of security by requiring a code from your authenticator app when signing in.", - "enableTwoFactorButton": "Enable Two-Factor Authentication", - "addExtraSecurityLayer": "Add an extra layer of security to your account", - "firstUser": "First User", - "firstUserMessage": "You are the first user and will be made an admin. You can view admin settings in the sidebar user dropdown. If you think this is a mistake, check the docker logs, or create a GitHub issue.", - "external": "External", - "loginWithExternal": "Login with External Provider", - "loginWithExternalDesc": "Login using your configured external identity provider", - "externalNotSupportedInElectron": "External authentication is not supported in the Electron app yet. Please use the web version for OIDC login.", - "resetPasswordButton": "Reset Password", - "sendResetCode": "Send Reset Code", - "resetCodeDesc": "Enter your username to receive a password reset code. The code will be logged in the docker container logs.", + "tagline": "GERENCIADOR DE SERVIDOR SSH", + "description": "Gerenciamento de conexão SSH seguro, poderoso e intuitivo", + "welcomeBack": "Bem-vindo de volta ao TERMIX", + "createAccount": "Criar sua conta TERMIX", + "continueExternal": "Continuar com o provedor externo", + "loginTitle": "Faça login para Termix", + "registerTitle": "Criar conta", + "loginButton": "Conectar-se", + "registerButton": "Cadastrar", + "forgotPassword": "Esqueceu a senha?", + "rememberMe": "Lembrar de mim", + "noAccount": "Não possui uma conta?", + "hasAccount": "Já possui uma conta?", + "loginSuccess": "Login bem-sucedido", + "loginFailed": "Falha no login", + "registerSuccess": "Registrado com sucesso", + "registerFailed": "Registro falhou", + "logoutSuccess": "Sessão encerrada com sucesso", + "invalidCredentials": "Usuário ou senha inválidos", + "accountCreated": "Conta criada com sucesso", + "passwordReset": "Link de redefinição de senha enviado", + "twoFactorAuth": "Autenticação dupla", + "enterCode": "Inserir código de verificação", + "backupCode": "Ou usar código de backup", + "verifyCode": "Verificar Código", + "redirectingToApp": "Redirecionando para o aplicativo...", + "enableTwoFactor": "Ativar autenticação dupla", + "disableTwoFactor": "Desativar autenticação dupla", + "scanQRCode": "Escaneie este código QR com o seu aplicativo de autenticação", + "backupCodes": "Códigos de recuperação", + "saveBackupCodes": "Salve esses códigos de backup em um local seguro", + "twoFactorEnabledSuccess": "Autenticação de dois fatores habilitada com sucesso!", + "twoFactorDisabled": "Autenticação de dois fatores desativada", + "newBackupCodesGenerated": "Novos códigos de backup gerados", + "backupCodesDownloaded": "Códigos de backup baixados", + "pleaseEnterSixDigitCode": "Por favor, insira um código de 6 dígitos", + "invalidVerificationCode": "Código de verificação inválido", + "failedToDisableTotp": "Falha ao desativar TOTP", + "failedToGenerateBackupCodes": "Falha ao gerar códigos de backup", + "enterPassword": "Digite sua senha", + "lockedOidcAuth": "Bloqueado (OIDC Auth)", + "twoFactorTitle": "Autenticação dupla", + "twoFactorProtected": "Sua conta está protegida com autenticação de dois fatores", + "twoFactorActive": "A autenticação de dois fatores está ativa em sua conta", + "disable2FA": "Desativar 2FA", + "disableTwoFactorWarning": "Desativar a autenticação de dois fatores tornará sua conta menos segura", + "passwordOrTotpCode": "Senha ou Código TOTP", + "or": "ou", + "generateNewBackupCodesText": "Gerar novos códigos de backup se você perdeu os já existentes", + "generateNewBackupCodes": "Gerar novos códigos de recuperação", + "yourBackupCodes": "Seus códigos de recuperação", + "download": "BAIXAR", + "setupTwoFactorTitle": "Configurar autenticação dupla", + "sshAuthenticationRequired": "Autenticação SSH necessária", + "sshNoKeyboardInteractive": "Autenticação Interativa do Keyboard-Indisponível", + "sshAuthenticationFailed": "Falha na autenticação", + "sshAuthenticationTimeout": "Timeout de autenticação", + "sshNoKeyboardInteractiveDescription": "O servidor não suporta autenticação interativa de teclado. Por favor, forneça sua senha ou chave SSH.", + "sshAuthFailedDescription": "As credenciais fornecidas estavam incorretas. Por favor, tente novamente com credenciais válidas.", + "sshTimeoutDescription": "A tentativa de autenticação expirou. Tente novamente.", + "sshProvideCredentialsDescription": "Por favor, forneça suas credenciais SSH para conectar a este servidor.", + "sshPasswordDescription": "Digite a senha para esta conexão SSH.", + "sshKeyPasswordDescription": "Se a sua chave SSH estiver criptografada, digite a senha aqui.", + "step1ScanQR": "Passo 1: Digitalize o código QR com o seu aplicativo de autenticador", + "manualEntryCode": "Código de Entrada Manual", + "cannotScanQRText": "Se você não puder escanear o código QR, insira este código manualmente no seu aplicativo autenticador", + "nextVerifyCode": "Próximo: Verificar código", + "verifyAuthenticator": "Verifique seu autenticador", + "step2EnterCode": "Passo 2: Insira o código de 6 dígitos do seu aplicativo autenticador", + "verificationCode": "Código de verificação", + "back": "Anterior", + "verifyAndEnable": "Verificar e Habilitar", + "saveBackupCodesTitle": "Salve seus códigos de recuperação", + "step3StoreCodesSecurely": "Etapa 3: Armazene esses códigos em um lugar seguro", + "importantBackupCodesText": "Salve esses códigos de backup em um local seguro. Você pode usá-los para acessar a sua conta se perder o seu dispositivo de autenticação.", + "completeSetup": "Configuração completa", + "notEnabledText": "A autenticação em duas etapas adiciona uma camada extra de segurança, exigindo um código do seu aplicativo de autenticação ao entrar.", + "enableTwoFactorButton": "Ativar autenticação dupla", + "addExtraSecurityLayer": "Adicionar uma camada extra de segurança à sua conta", + "firstUser": "Primeiro usuário", + "firstUserMessage": "Você é o primeiro usuário e será feito um administrador. Você pode ver as configurações de administrador na lista de usuários da barra lateral. Se você acha que isso é um erro, verifique os logs do docker ou crie uma questão no GitHub.", + "external": "externo", + "loginWithExternal": "Entrar com o provedor externo", + "loginWithExternalDesc": "Fazer login usando seu provedor de identidade externo configurado", + "externalNotSupportedInElectron": "A autenticação externa ainda não é suportada no aplicativo Electron. Por favor, use a versão web para logar OIDC.", + "resetPasswordButton": "Redefinir a senha", + "sendResetCode": "Enviar Código de Redefinição", + "resetCodeDesc": "Digite seu nome de usuário para receber um código de redefinição de senha. O código será logado nos logs do contêiner docker.", "resetCode": "Reset Code", - "verifyCodeButton": "Verify Code", - "enterResetCode": "Enter the 6-digit code from the docker container logs for user:", - "goToLogin": "Go to Login", - "newPassword": "New Password", - "confirmNewPassword": "Confirm Password", - "enterNewPassword": "Enter your new password for user:", - "signUp": "Sign Up", - "mobileApp": "Mobile App", - "loggingInToMobileApp": "Logging in to the mobile app", - "desktopApp": "Desktop App", - "loggingInToDesktopApp": "Logging in to the desktop app", - "loggingInToDesktopAppViaWeb": "Logging in to the desktop app via web interface", - "loadingServer": "Loading server...", - "authenticating": "Authenticating...", - "dataLossWarning": "Resetting your password this way will delete all your saved SSH hosts, credentials, and other encrypted data. This action cannot be undone. Only use this if you have forgotten your password and are not logged in.", - "authenticationDisabled": "Authentication Disabled", - "authenticationDisabledDesc": "All authentication methods are currently disabled. Please contact your administrator.", - "passwordResetSuccess": "Password Reset Successful", - "passwordResetSuccessDesc": "Your password has been reset successfully. You can now log in with your new password." + "verifyCodeButton": "Verificar Código", + "enterResetCode": "Insira o código de 6 dígitos do contêiner docker para o usuário:", + "goToLogin": "Ir para o Login", + "newPassword": "Nova Palavra-Passe", + "confirmNewPassword": "Confirmar senha", + "enterNewPassword": "Digite sua nova senha para o usuário:", + "signUp": "Criar conta", + "mobileApp": "Aplicativo Móvel", + "loggingInToMobileApp": "Fazendo login no aplicativo móvel", + "desktopApp": "Aplicativo para computador", + "loggingInToDesktopApp": "Fazendo login no aplicativo para computador", + "loggingInToDesktopAppViaWeb": "Logando na área de trabalho através de interface web", + "loadingServer": "Carregando servidor...", + "authenticating": "Autenticando...", + "dataLossWarning": "Redefinir sua senha desta forma irá apagar todos os seus hosts, credenciais e outros dados criptografados salvos por SSH. Essa ação não pode ser desfeita. Apenas use isso se você esqueceu sua senha e não está logado.", + "authenticationDisabled": "Autenticação desabilitada", + "authenticationDisabledDesc": "Todos os métodos de autenticação estão desativados no momento. Entre em contato com o administrador.", + "passwordResetSuccess": "Senha redefinida com sucesso", + "passwordResetSuccessDesc": "Sua senha foi redefinida com sucesso. Você agora pode entrar com sua nova senha." }, "errors": { - "notFound": "Page not found", - "unauthorized": "Unauthorized access", - "forbidden": "Access forbidden", - "serverError": "Server error", - "networkError": "Network error", - "databaseConnection": "Could not connect to the database", - "unknownError": "Unknown error", - "loginFailed": "Login failed", - "failedPasswordReset": "Failed to initiate password reset", - "failedVerifyCode": "Failed to verify reset code", - "failedCompleteReset": "Failed to complete password reset", + "notFound": "Página não encontrada", + "unauthorized": "Acesso não autorizado", + "forbidden": "Acesso proibido", + "serverError": "Erro no servidor", + "networkError": "Erro de rede", + "databaseConnection": "Não foi possível conectar ao banco de dados", + "unknownError": "Erro desconhecido", + "loginFailed": "Falha no login", + "failedPasswordReset": "Falha ao iniciar a redefinição de senha", + "failedVerifyCode": "Falha ao verificar código de redefinição", + "failedCompleteReset": "Falha ao concluir a redefinição de senha", "invalidTotpCode": "Invalid TOTP code", - "failedOidcLogin": "Failed to start OIDC login", - "failedUserInfo": "Failed to get user info after OIDC login", - "oidcAuthFailed": "OIDC authentication failed", - "noTokenReceived": "No token received from login", - "invalidAuthUrl": "Invalid authorization URL received from backend", + "failedOidcLogin": "Falha ao iniciar o login OIDC", + "failedUserInfo": "Falha ao obter informações de usuário após login OIDC", + "oidcAuthFailed": "Falha na autenticação OIDC", + "noTokenReceived": "Nenhum token recebido do login", + "invalidAuthUrl": "URL de autorização inválida recebida do backend", "invalidInput": "Invalid input", - "requiredField": "This field is required", - "minLength": "Minimum length is {{min}}", - "maxLength": "Maximum length is {{max}}", - "invalidEmail": "Invalid email address", - "passwordMismatch": "Passwords do not match", - "passwordLoginDisabled": "Username/password login is currently disabled", - "weakPassword": "Password is too weak", - "usernameExists": "Username already exists", - "emailExists": "Email already exists", - "loadFailed": "Failed to load data", - "saveError": "Failed to save", - "sessionExpired": "Session expired - please log in again" + "requiredField": "Este campo é obrigatório", + "minLength": "Tamanho mínimo de {{min}}", + "maxLength": "O comprimento máximo é {{max}}", + "invalidEmail": "Endereço de e-mail inválido", + "passwordMismatch": "As senhas não coincidem", + "passwordLoginDisabled": "Nome de usuário/senha está desativado no momento", + "weakPassword": "A senha é muito fraca", + "usernameExists": "Nome de usuário já existe", + "emailExists": "E-mail já existe", + "loadFailed": "Não foi possível carregar os dados", + "saveError": "Falha ao salvar", + "sessionExpired": "Sessão expirou - por favor faça o login novamente" }, "messages": { - "saveSuccess": "Saved successfully", - "saveError": "Failed to save", - "deleteSuccess": "Deleted successfully", - "deleteError": "Failed to delete", - "updateSuccess": "Updated successfully", - "updateError": "Failed to update", - "copySuccess": "Copied to clipboard", - "copyError": "Failed to copy", - "copiedToClipboard": "{{item}} copied to clipboard", - "connectionEstablished": "Connection established", - "connectionClosed": "Connection closed", - "reconnecting": "Reconnecting...", - "processing": "Processing...", - "pleaseWait": "Please wait...", - "registrationDisabled": "New account registration is currently disabled by an admin. Please log in or contact an administrator.", - "databaseConnected": "Database connected successfully", - "databaseConnectionFailed": "Failed to connect to the database server", - "checkServerConnection": "Please check your server connection and try again", - "resetCodeSent": "Reset code sent to Docker logs", - "codeVerified": "Code verified successfully", - "passwordResetSuccess": "Password reset successfully", - "loginSuccess": "Login successful", - "registrationSuccess": "Registration successful" + "saveSuccess": "Salvo com Sucesso", + "saveError": "Falha ao salvar", + "deleteSuccess": "Excluído com sucesso", + "deleteError": "Falha ao apagar", + "updateSuccess": "Atualizado com sucesso", + "updateError": "Falha ao atualizar", + "copySuccess": "Copiado para o clipboard", + "copyError": "Falha ao copiar", + "copiedToClipboard": "{{item}} copiado para área de transferência", + "connectionEstablished": "Conexão estabelecida", + "connectionClosed": "Conexão fechada", + "reconnecting": "Reconectando...", + "processing": "Processandochar@@0", + "pleaseWait": "Por favor, aguarde...", + "registrationDisabled": "O registro da nova conta está desativado por um administrador. Por favor, entre em contato com um administrador.", + "databaseConnected": "Banco de dados conectado com sucesso", + "databaseConnectionFailed": "Falha ao conectar ao servidor do banco de dados", + "checkServerConnection": "Por favor, verifique sua conexão com o servidor e tente novamente", + "resetCodeSent": "Redefinir código enviado para os logs Docker", + "codeVerified": "Código verificado com sucesso", + "passwordResetSuccess": "Senha redefinida com sucesso", + "loginSuccess": "Login bem-sucedido", + "registrationSuccess": "Registrado com sucesso" }, "profile": { - "title": "User Profile", - "description": "Manage your account settings and security", - "security": "Security", - "changePassword": "Change Password", - "twoFactorAuth": "Two-Factor Authentication", - "accountInfo": "Account Information", - "role": "Role", - "admin": "Administrator", - "user": "User", - "authMethod": "Authentication Method", - "local": "Local", - "external": "External (OIDC)", - "externalAndLocal": "Dual Auth", - "selectPreferredLanguage": "Select your preferred language for the interface", - "fileColorCoding": "File Color Coding", - "fileColorCodingDesc": "Color-code files by type: folders (red), files (blue), symlinks (green)", - "commandAutocomplete": "Command Autocomplete", - "commandAutocompleteDesc": "Enable Tab key autocomplete suggestions for terminal commands based on your command history", - "defaultSnippetFoldersCollapsed": "Collapse Snippet Folders by Default", - "defaultSnippetFoldersCollapsedDesc": "When enabled, all snippet folders will be collapsed when you open the snippets tab", - "terminalSyntaxHighlighting": "Terminal Syntax Highlighting", - "showHostTags": "Show Host Tags", - "showHostTagsDesc": "Display tags under each host in the sidebar. Disable to hide all tags.", - "account": "Account", - "appearance": "Appearance", - "languageLocalization": "Language & Localization", - "fileManagerSettings": "File Manager", + "title": "Informações do Perfil", + "description": "Gerencie as configurações e segurança da sua conta", + "security": "Segurança", + "changePassword": "Mudar a senha", + "twoFactorAuth": "Autenticação dupla", + "accountInfo": "Informações da Conta", + "role": "Funções", + "admin": "Administrador", + "user": "Usuário", + "authMethod": "Método de autenticação", + "local": "Localização", + "external": "Externo (OIDC)", + "externalAndLocal": "Dupla Autenticação", + "selectPreferredLanguage": "Selecione o idioma de sua preferência para a interface", + "fileColorCoding": "Codificação de cores", + "fileColorCodingDesc": "Arquivos de código de cor por tipo: pastas (vermelho), arquivos (azul), links simbólicos (verde)", + "commandAutocomplete": "Auto-completar comando", + "commandAutocompleteDesc": "Ativar sugestões de autocompletar da tecla de aba para comandos de terminal com base no seu histórico de comandos", + "defaultSnippetFoldersCollapsed": "Recolher pastas de fragmentos por padrão", + "defaultSnippetFoldersCollapsedDesc": "Quando ativado, todas as pastas de snippet serão recolhidas quando você abrir a aba de snippets", + "terminalSyntaxHighlighting": "Realce de Sintaxe Terminal", + "showHostTags": "Exibir Tags do Host", + "showHostTagsDesc": "Exibir tags em cada host na barra lateral. Desative para ocultar todas as tags.", + "account": "conta", + "appearance": "Aparência", + "languageLocalization": "Idioma e localização", + "fileManagerSettings": "Gerenciador de Arquivos", "terminalSettings": "Terminal", - "hostSidebarSettings": "Host & Sidebar", - "snippetsSettings": "Snippets", - "currentPassword": "Current Password", - "passwordChangedSuccess": "Password changed successfully! Please log in again.", - "failedToChangePassword": "Failed to change password. Please check your current password and try again.", - "theme": "Theme", - "themeLight": "Light", - "themeDark": "Dark", - "themeSystem": "System", - "appearanceDesc": "Select the color theme for the application", - "terminalSyntaxHighlightingDesc": "Automatically highlight commands, paths, IPs, and log levels in terminal output" + "hostSidebarSettings": "Host e Barra Lateral", + "snippetsSettings": "Trechos", + "currentPassword": "Palavra-passe Atual", + "passwordChangedSuccess": "Senha alterada com sucesso! Por favor, faça login novamente.", + "failedToChangePassword": "Falha ao alterar a senha. Por favor, verifique sua senha atual e tente novamente.", + "theme": "Tema", + "themeLight": "Fino", + "themeDark": "Escuro", + "themeSystem": "SISTEMA", + "appearanceDesc": "Selecione o tema de cores para o aplicativo", + "terminalSyntaxHighlightingDesc": "Destacar automaticamente comandos, caminhos, IPs e níveis de log na saída do terminal" }, "user": { - "failedToLoadVersionInfo": "Failed to load version information" + "failedToLoadVersionInfo": "Falha ao carregar informações da versão" }, "placeholders": { "enterCode": "000000", @@ -1901,502 +1901,502 @@ "port": "22", "maxRetries": "3", "retryInterval": "10", - "language": "Language", - "username": "username", - "hostname": "host name", - "folder": "folder", - "password": "password", - "keyPassword": "key password", - "sudoPassword": "sudo password (optional)", - "notes": "add notes about this host...", - "expirationDate": "Select expiration date", - "pastePrivateKey": "Paste your private key here...", - "pastePublicKey": "Paste your public key here...", - "credentialName": "My SSH Server", - "description": "SSH credential description", - "searchCredentials": "Search credentials by name, username, or tags...", - "sshConfig": "endpoint ssh configuration", - "homePath": "/home", - "clientId": "your-client-id", - "clientSecret": "your-client-secret", - "authUrl": "https://your-provider.com/application/o/authorize/", - "redirectUrl": "https://your-provider.com/application/o/termix/", - "tokenUrl": "https://your-provider.com/application/o/token/", + "language": "IDIOMA", + "username": "usuário", + "hostname": "nome do host", + "folder": "Pasta", + "password": "Senha", + "keyPassword": "Senha da chave", + "sudoPassword": "senha sudo (opcional)", + "notes": "adicionar notas sobre este host...", + "expirationDate": "Selecionar data de validade", + "pastePrivateKey": "Cole sua chave privada aqui...", + "pastePublicKey": "Cole sua chave pública aqui...", + "credentialName": "Meu servidor SSH", + "description": "Descrição de credenciais SSH", + "searchCredentials": "Pesquisar credenciais por nome, nome de usuário, ou tags...", + "sshConfig": "configuração endpoint ssh", + "homePath": "/casa", + "clientId": "seu-ID-cliente", + "clientSecret": "seu-cliente-secreto", + "authUrl": "https://seu-provedor.com/application/o/authorize/", + "redirectUrl": "https://seu-provedor.com/application/o/termix/", + "tokenUrl": "https://seu-provedor.com/application/o/token/", "userIdField": "sub", - "usernameField": "name", - "scopes": "openid email profile", - "userinfoUrl": "https://your-provider.com/application/o/userinfo/", - "enterUsername": "Enter username to make admin", - "searchHosts": "Search hosts by name, username, IP, folder, tags...", - "enterPassword": "Enter your password", + "usernameField": "Nome", + "scopes": "perfil de e-mail openid", + "userinfoUrl": "https://seu-provedor.com/application/o/userinfo/", + "enterUsername": "Insira o usuário para fazer o administrador", + "searchHosts": "Pesquisar hosts por nome, nome de usuário, IP, pasta, tags...", + "enterPassword": "Digite sua senha", "totpCode": "6-digit TOTP code", - "searchHostsAny": "Search hosts (try: tag:prod, user:root, ip:192.168)...", - "confirmPassword": "Enter your password to confirm", - "typeHere": "Type here", - "fileName": "Enter file name (e.g., example.txt)", - "folderName": "Enter folder name", - "fullPath": "Enter full path to item", - "currentPath": "Enter current path to item", - "newName": "Enter new name", + "searchHostsAny": "Pesquisar hosts (tentar: tag:prod, usuário:root, ip:192.168)...", + "confirmPassword": "Digite sua senha para confirmar", + "typeHere": "Digite aqui", + "fileName": "Inserir nome do arquivo (por exemplo, exemplo.txt)", + "folderName": "Inserir nome da pasta", + "fullPath": "Digite o caminho completo para o item", + "currentPath": "Digite o caminho atual para o item", + "newName": "Digite o novo nome", "socks5Host": "127.0.0.1", - "socks5Username": "proxy username", - "socks5Password": "proxy password", - "socks5PresetName": "e.g., Work VPN Chain", - "socks5PresetDescription": "e.g., Proxy chain for accessing work servers", - "moshCommand": "mosh user@server", + "socks5Username": "usuário do proxy", + "socks5Password": "senha de proxy", + "socks5PresetName": "ex.: Cadeia VPN do trabalho", + "socks5PresetDescription": "ex.: Cadeia de proxy para acessar servidores de trabalho", + "moshCommand": "usuário mosh@server", "defaultPort": "22", "defaultEndpointPort": "224", "defaultMaxRetries": "3", "defaultRetryInterval": "10" }, "leftSidebar": { - "failedToLoadHosts": "Failed to load hosts", - "noFolder": "No Folder", - "passwordRequired": "Password is required", - "failedToDeleteAccount": "Failed to delete account", - "failedToMakeUserAdmin": "Failed to make user admin", - "userIsNowAdmin": "User {{username}} is now an admin", - "removeAdminConfirm": "Are you sure you want to remove admin status from {{username}}?", - "deleteUserConfirm": "Are you sure you want to delete user {{username}}? This action cannot be undone.", - "deleteAccount": "Delete Account", - "closeDeleteAccount": "Close Delete Account", - "deleteAccountWarning": "This action cannot be undone. This will permanently delete your account and all associated data.", - "deleteAccountWarningDetails": "Deleting your account will remove all your data including SSH hosts, configurations, and settings. This action is irreversible.", - "deleteAccountWarningShort": "This action is not reversible and will permanently delete your account.", - "cannotDeleteAccount": "Cannot Delete Account", - "lastAdminWarning": "You are the last admin user. You cannot delete your account as this would leave the system without any administrators. Please make another user an admin first, or contact system support.", - "confirmPassword": "Confirm Password", - "deleting": "Deleting...", - "cancel": "Cancel" + "failedToLoadHosts": "Falha ao carregar hosts", + "noFolder": "Nenhuma Pasta", + "passwordRequired": "A senha é obrigatória", + "failedToDeleteAccount": "Falha ao excluir conta", + "failedToMakeUserAdmin": "Falha ao tornar o usuário administrador", + "userIsNowAdmin": "Usuário {{username}} agora é um administrador", + "removeAdminConfirm": "Tem certeza que deseja remover o status de administrador do {{username}}?", + "deleteUserConfirm": "Tem certeza que deseja excluir o usuário {{username}}? Esta ação não pode ser desfeita.", + "deleteAccount": "Excluir Conta", + "closeDeleteAccount": "Fechar Conta Deletada", + "deleteAccountWarning": "Esta ação não pode ser desfeita. Isto irá apagar permanentemente a sua conta e todos os dados associados.", + "deleteAccountWarningDetails": "Excluir sua conta irá remover todos os seus dados, incluindo hosts, configurações e configurações SSH. Esta ação é irreversível.", + "deleteAccountWarningShort": "Esta ação não é reversível e irá excluir permanentemente sua conta.", + "cannotDeleteAccount": "Não é possível excluir a conta", + "lastAdminWarning": "Você é o último usuário administrador. Você não pode excluir sua conta, pois isso deixaria o sistema sem nenhum administrador. Por favor, faça outro usuário um administrador primeiro ou entre em contato com o suporte do sistema.", + "confirmPassword": "Confirmar senha", + "deleting": "Excluindo...", + "cancel": "cancelar" }, "interface": { "sidebar": "Sidebar", - "toggleSidebar": "Toggle Sidebar", - "close": "Close", - "online": "Online", - "offline": "Offline", - "maintenance": "Maintenance", - "degraded": "Degraded", - "noTunnelConnections": "No tunnel connections configured", + "toggleSidebar": "Alternar barra lateral", + "close": "FECHAR", + "online": "Disponível", + "offline": "Desconectado", + "maintenance": "Manutenção", + "degraded": "Degradado", + "noTunnelConnections": "Nenhuma conexão de túnel configurada", "discord": "Discord", - "connectToSshForOperations": "Connect to SSH to use file operations", - "uploadFile": "Upload File", - "newFile": "New File", - "newFolder": "New Folder", - "rename": "Rename", - "deleteItem": "Delete Item", - "createNewFile": "Create New File", - "createNewFolder": "Create New Folder", - "renameItem": "Rename Item", - "clickToSelectFile": "Click to select a file", - "noSshHosts": "No SSH Hosts", - "sshHosts": "SSH Hosts", - "importSshHosts": "Import SSH Hosts from JSON", - "clientId": "Client ID", - "clientSecret": "Client Secret", - "error": "Error", - "warning": "Warning", - "deleteAccount": "Delete Account", - "closeDeleteAccount": "Close Delete Account", - "cannotDeleteAccount": "Cannot Delete Account", - "confirmPassword": "Confirm Password", - "deleting": "Deleting...", - "externalAuth": "External Authentication (OIDC)", - "configureExternalProvider": "Configure external identity provider for", - "waitingForRetry": "Waiting for retry", - "retryingConnection": "Retrying connection", - "resetSplitSizes": "Reset split sizes", - "sshManagerAlreadyOpen": "SSH Manager already open", - "disabledDuringSplitScreen": "Disabled during split screen", - "unknown": "Unknown", - "connected": "Connected", - "disconnected": "Disconnected", - "maxRetriesExhausted": "Max retries exhausted", - "endpointHostNotFound": "Endpoint host not found", - "administrator": "Administrator", - "user": "User", - "external": "External", - "local": "Local", - "saving": "Saving...", - "saveConfiguration": "Save Configuration", - "loading": "Loading...", - "refresh": "Refresh", - "adding": "Adding...", - "makeAdmin": "Make Admin", - "verifying": "Verifying...", - "verifyAndEnable": "Verify and Enable", - "secretKey": "Secret key", + "connectToSshForOperations": "Conecte-se a SSH para usar arquivos de operação", + "uploadFile": "Enviar Arquivo", + "newFile": "Novo arquivo", + "newFolder": "Adicionar uma pasta", + "rename": "Renomear", + "deleteItem": "Excluir Item", + "createNewFile": "Criar novo arquivo", + "createNewFolder": "Criar Nova Pasta", + "renameItem": "Renomear Item", + "clickToSelectFile": "Clique para selecionar um arquivo", + "noSshHosts": "Nenhum host SSH", + "sshHosts": "Hosts SSH", + "importSshHosts": "Importar o SSH Hosts do JSON", + "clientId": "ID do Cliente", + "clientSecret": "Segredo do Cliente", + "error": "ERRO", + "warning": "ATENÇÃO", + "deleteAccount": "Excluir Conta", + "closeDeleteAccount": "Fechar Conta Deletada", + "cannotDeleteAccount": "Não é possível excluir a conta", + "confirmPassword": "Confirmar senha", + "deleting": "Excluindo...", + "externalAuth": "Autenticação externa (OIDC)", + "configureExternalProvider": "Configurar provedor de identidade externo para", + "waitingForRetry": "Aguardando nova tentativa", + "retryingConnection": "Tentando conexão novamente", + "resetSplitSizes": "Redefinir tamanhos divididos", + "sshManagerAlreadyOpen": "SSH Manager já aberto", + "disabledDuringSplitScreen": "Desativado durante a tela dividida", + "unknown": "Desconhecido", + "connected": "Conectado", + "disconnected": "Desconectado", + "maxRetriesExhausted": "Máximo de tentativas esgotadas", + "endpointHostNotFound": "Servidor de Endpoint não encontrado", + "administrator": "Administrador", + "user": "Usuário", + "external": "externo", + "local": "Localização", + "saving": "Salvando...", + "saveConfiguration": "Salvar configuração", + "loading": "Carregandochar@@0", + "refresh": "atualizar", + "adding": "Adicionando...", + "makeAdmin": "Tornar administrador", + "verifying": "Verificando...", + "verifyAndEnable": "Verificar e Habilitar", + "secretKey": "Chave secreta", "totpQrCode": "TOTP QR Code", - "passwordRequired": "Password is required when using password authentication", - "sshKeyRequired": "SSH Private Key is required when using key authentication", - "keyTypeRequired": "Key Type is required when using key authentication", - "validSshConfigRequired": "Must select a valid SSH configuration from the list", - "updateHost": "Update Host", - "addHost": "Add Host", - "editHost": "Edit Host", - "pinConnection": "Pin Connection", - "authentication": "Authentication", - "password": "Password", - "key": "Key", - "sshPrivateKey": "SSH Private Key", - "keyPassword": "Key Password", - "keyType": "Key Type", - "enableTerminal": "Enable Terminal", - "enableTunnel": "Enable Tunnel", - "enableFileManager": "Enable File Manager", - "defaultPath": "Default Path", - "tunnelConnections": "Tunnel Connections", - "maxRetries": "Max Retries", - "upload": "Upload", - "updateKey": "Update Key", - "productionFolder": "Production", - "databaseServer": "Database Server", - "developmentServer": "Development Server", - "developmentFolder": "Development", - "webServerProduction": "Web Server - Production", - "unknownError": "Unknown error", - "failedToInitiatePasswordReset": "Failed to initiate password reset", - "failedToVerifyResetCode": "Failed to verify reset code", - "failedToCompletePasswordReset": "Failed to complete password reset", + "passwordRequired": "A senha é obrigatória ao usar a autenticação de senha", + "sshKeyRequired": "A chave privada SSH é necessária para a autenticação de chave", + "keyTypeRequired": "Tipo de chave é necessário ao usar autenticação de chave", + "validSshConfigRequired": "Precisa selecionar uma configuração SSH válida da lista", + "updateHost": "Atualizar Host", + "addHost": "Adicionar Host", + "editHost": "Editar Host", + "pinConnection": "Fixar Conexão", + "authentication": "Autenticação", + "password": "Palavra-passe", + "key": "Chave", + "sshPrivateKey": "Chave privada SSH", + "keyPassword": "Senha da Chave", + "keyType": "Tipo de chave", + "enableTerminal": "Ativar Terminal", + "enableTunnel": "Ativar Túnel", + "enableFileManager": "Ativar Gerenciador de Arquivos", + "defaultPath": "Caminho Padrão", + "tunnelConnections": "Conexões de túnel", + "maxRetries": "Máximo de buscas", + "upload": "Transferir", + "updateKey": "Atualizar Chave", + "productionFolder": "Produção", + "databaseServer": "Banco de dados", + "developmentServer": "Servidor de desenvolvimento", + "developmentFolder": "Desenvolvimento", + "webServerProduction": "Web Server - Produção", + "unknownError": "Erro desconhecido", + "failedToInitiatePasswordReset": "Falha ao iniciar a redefinição de senha", + "failedToVerifyResetCode": "Falha ao verificar código de redefinição", + "failedToCompletePasswordReset": "Falha ao concluir a redefinição de senha", "invalidTotpCode": "Invalid TOTP code", - "failedToStartOidcLogin": "Failed to start OIDC login", - "failedToGetUserInfoAfterOidc": "Failed to get user info after OIDC login", - "loginWithExternalProvider": "Login with external provider", - "loginWithExternal": "Login with External Provider", - "sendResetCode": "Send Reset Code", - "verifyCode": "Verify Code", - "resetPassword": "Reset Password", - "login": "Login", - "signUp": "Sign Up", - "failedToUpdateOidcConfig": "Failed to update OIDC configuration", - "failedToMakeUserAdmin": "Failed to make user admin", - "failedToStartTotpSetup": "Failed to start TOTP setup", - "invalidVerificationCode": "Invalid verification code", - "failedToDisableTotp": "Failed to disable TOTP", - "failedToGenerateBackupCodes": "Failed to generate backup codes" + "failedToStartOidcLogin": "Falha ao iniciar o login OIDC", + "failedToGetUserInfoAfterOidc": "Falha ao obter informações de usuário após login OIDC", + "loginWithExternalProvider": "Entrar com um provedor externo", + "loginWithExternal": "Entrar com o provedor externo", + "sendResetCode": "Enviar Código de Redefinição", + "verifyCode": "Verificar Código", + "resetPassword": "Redefinir a senha", + "login": "Conectar-se", + "signUp": "Criar conta", + "failedToUpdateOidcConfig": "Falha ao atualizar a configuração OIDC", + "failedToMakeUserAdmin": "Falha ao tornar o usuário administrador", + "failedToStartTotpSetup": "Falha ao iniciar a configuração TOTP", + "invalidVerificationCode": "Código de verificação inválido", + "failedToDisableTotp": "Falha ao desativar TOTP", + "failedToGenerateBackupCodes": "Falha ao gerar códigos de backup" }, "mobile": { - "selectHostToStart": "Select a host to start your terminal session", - "limitedSupportMessage": "Website mobile support is still in progress. Use the mobile app for a better experience.", - "mobileAppInProgress": "Mobile app is in progress", - "mobileAppInProgressDesc": "We're working on a dedicated mobile app to provide a better experience on mobile devices.", - "viewMobileAppDocs": "Install Mobile App", - "mobileAppDocumentation": "Mobile App Documentation" + "selectHostToStart": "Selecione um host para iniciar sua sessão de terminal", + "limitedSupportMessage": "O suporte móvel para sites ainda está em andamento. Use o aplicativo móvel para uma experiência melhor.", + "mobileAppInProgress": "App móvel em andamento", + "mobileAppInProgressDesc": "Estamos trabalhando em um aplicativo de celular dedicado para fornecer uma melhor experiência em dispositivos móveis.", + "viewMobileAppDocs": "Instalar aplicativo móvel", + "mobileAppDocumentation": "Documentação para aplicativos móveis" }, "dashboard": { - "title": "Dashboard", + "title": "Painel", "github": "GitHub", - "support": "Support", + "support": "SUPORTE", "discord": "Discord", - "donate": "Donate", - "serverOverview": "Server Overview", - "version": "Version", - "upToDate": "Up to Date", - "updateAvailable": "Update Available", - "uptime": "Uptime", - "database": "Database", - "healthy": "Healthy", - "error": "Error", - "totalServers": "Total Servers", - "totalTunnels": "Total Tunnels", - "totalCredentials": "Total Credentials", - "recentActivity": "Recent Activity", + "donate": "Doar", + "serverOverview": "Visão Geral do Servidor", + "version": "Versão", + "upToDate": "Até a data", + "updateAvailable": "Atualização disponível", + "uptime": "Tempo em atividade", + "database": "Banco", + "healthy": "Saudável", + "error": "ERRO", + "totalServers": "Total de Servidores", + "totalTunnels": "Total de túneis", + "totalCredentials": "Credenciais totais", + "recentActivity": "Atividade recente", "reset": "Reset", - "loadingRecentActivity": "Loading recent activity...", - "noRecentActivity": "No recent activity", - "quickActions": "Quick Actions", - "addHost": "Add Host", - "addCredential": "Add Credential", - "adminSettings": "Admin Settings", - "userProfile": "User Profile", - "serverStats": "Server Stats", - "loadingServerStats": "Loading server stats...", - "noServerData": "No server data available", - "cpu": "CPU", + "loadingRecentActivity": "Carregando atividade recente...", + "noRecentActivity": "Nenhuma atividade recente", + "quickActions": "Ações rápidas", + "addHost": "Adicionar Host", + "addCredential": "Adicionar Credencial", + "adminSettings": "Configurações de administrador", + "userProfile": "Informações do Perfil", + "serverStats": "Estatísticas do servidor", + "loadingServerStats": "Carregando estatísticas do servidor...", + "noServerData": "Nenhum dado de servidor disponível", + "cpu": "cpu", "ram": "RAM", - "notAvailable": "N/A" + "notAvailable": "N/D" }, "rbac": { - "shareHost": "Share Host", - "shareHostTitle": "Share Host Access", - "shareHostDescription": "Grant temporary or permanent access to this host", - "targetUser": "Target User", - "selectUser": "Select a user to share with", - "duration": "Duration", - "durationHours": "Duration (hours)", - "neverExpires": "Never expires", - "permissionLevel": "Permission Level", + "shareHost": "Host de compartilhamento", + "shareHostTitle": "Compartilhar Acesso ao Host", + "shareHostDescription": "Conceder acesso temporário ou permanente a este host", + "targetUser": "Usuário Alvo", + "selectUser": "Selecione um usuário para compartilhar com", + "duration": "Duração", + "durationHours": "Duração (horas)", + "neverExpires": "Nunca Expirar", + "permissionLevel": "Nível de permissão", "permissionLevels": { - "readonly": "Read-Only", - "readonlyDesc": "Can view only, no command input", - "restricted": "Restricted", - "restrictedDesc": "Blocks dangerous commands (passwd, rm -rf, etc.)", - "monitored": "Monitored", - "monitoredDesc": "Records all commands but doesn't block (Recommended)", - "full": "Full Access", - "fullDesc": "No restrictions (Not recommended)" + "readonly": "Somente leitura", + "readonlyDesc": "Pode ver apenas, sem entrada de comando", + "restricted": "Restrito", + "restrictedDesc": "Bloqueia comandos perigosos (passwd, rm -rf, etc.)", + "monitored": "Monitorado", + "monitoredDesc": "Registra todos os comandos mas não bloqueia (recomendado)", + "full": "Acesso total", + "fullDesc": "Sem restrições (não recomendado)" }, - "blockedCommands": "Blocked Commands", - "blockedCommandsPlaceholder": "Enter commands to block, e.g., passwd, rm, dd", - "maxSessionDuration": "Max Session Duration (minutes)", - "createTempUser": "Create Temporary User", - "createTempUserDesc": "Creates a restricted user on the server instead of sharing your credentials. Requires sudo access. Most secure option.", - "expiresAt": "Expires At", - "expiresIn": "Expires in {{hours}} hours", - "expired": "Expired", - "grantedBy": "Granted By", - "accessLevel": "Access Level", - "lastAccessed": "Last Accessed", - "accessCount": "Access Count", - "revokeAccess": "Revoke Access", - "confirmRevokeAccess": "Are you sure you want to revoke access for {{username}}?", - "hostSharedSuccessfully": "Host shared successfully with {{username}}", - "hostAccessUpdated": "Host access updated", - "failedToShareHost": "Failed to share host", - "accessRevokedSuccessfully": "Access revoked successfully", - "failedToRevokeAccess": "Failed to revoke access", - "shared": "Shared", - "sharedHosts": "Shared Hosts", - "sharedWithMe": "Shared With Me", - "noSharedHosts": "No hosts shared with you", - "owner": "Owner", - "viewAccessList": "View Access List", - "accessList": "Access List", - "noAccessGranted": "No access has been granted for this host", - "noAccessGrantedMessage": "No users have been granted access to this host yet", - "manageAccessFor": "Manage access for", - "totalAccessRecords": "{{count}} access record(s)", - "neverAccessed": "Never", - "timesAccessed": "{{count}} time(s)", - "daysRemaining": "{{days}} day(s)", - "hoursRemaining": "{{hours}} hour(s)", - "failedToFetchAccessList": "Failed to fetch access list", - "currentAccess": "Current Access", - "securityWarning": "Security Warning", - "securityWarningMessage": "Sharing credentials gives the user full access to perform any operations on the server, including changing passwords and deleting files. Only share with trusted users.", - "tempUserRecommended": "We recommend enabling 'Create Temporary User' for better security.", - "roleManagement": "Role Management", - "manageRoles": "Manage Roles", - "manageRolesFor": "Manage roles for {{username}}", - "assignRole": "Assign Role", - "removeRole": "Remove Role", - "userRoles": "User Roles", - "permissions": "Permissions", - "systemRole": "System Role", - "customRole": "Custom Role", - "roleAssignedSuccessfully": "Role assigned to {{username}} successfully", - "failedToAssignRole": "Failed to assign role", - "roleRemovedSuccessfully": "Role removed from {{username}} successfully", - "failedToRemoveRole": "Failed to remove role", - "cannotRemoveSystemRole": "Cannot remove system role", - "cannotShareWithSelf": "Cannot share host with yourself", - "noCustomRolesToAssign": "No custom roles available. System roles are auto-assigned.", - "credentialSharingWarning": "Credential Authentication Not Supported for Sharing", - "credentialRequired": "Credential is required when sharing a host", - "credentialRequiredDescription": "This host does not use credential-based authentication. In order to share hosts, due to per-user-encryption, the host must use credential based authentication.", - "auditLogs": "Audit Logs", - "viewAuditLogs": "View Audit Logs", - "action": "Action", - "resourceType": "Resource Type", - "resourceName": "Resource Name", + "blockedCommands": "Comandos Bloqueados", + "blockedCommandsPlaceholder": "Digite comandos para bloquear, por exemplo, senha, rm, dd", + "maxSessionDuration": "Duração Máxima da Sessão (minutos)", + "createTempUser": "Criar usuário temporário", + "createTempUserDesc": "Cria um usuário restrito no servidor em vez de compartilhar suas credenciais. Requer acesso sudo. Opção mais segura.", + "expiresAt": "Expira em", + "expiresIn": "Expira em {{hours}} horas", + "expired": "Expirado", + "grantedBy": "Concedido por", + "accessLevel": "Nível de Acesso", + "lastAccessed": "Último acesso", + "accessCount": "Contagem de Acesso", + "revokeAccess": "Revogar Acesso", + "confirmRevokeAccess": "Tem certeza de que deseja revogar o acesso por {{username}}?", + "hostSharedSuccessfully": "Hospedeiro compartilhado com {{username}}", + "hostAccessUpdated": "Acesso ao host atualizado", + "failedToShareHost": "Falha ao compartilhar host", + "accessRevokedSuccessfully": "Acesso revogado com sucesso", + "failedToRevokeAccess": "Falha ao revogar acesso", + "shared": "Compartilhado", + "sharedHosts": "Hosts compartilhados", + "sharedWithMe": "Compartilhado comigo", + "noSharedHosts": "Nenhum host compartilhado com você", + "owner": "Proprietário", + "viewAccessList": "Ver lista de acesso", + "accessList": "Lista de Acesso", + "noAccessGranted": "Não foi concedido acesso para este host", + "noAccessGrantedMessage": "Nenhum usuário recebeu acesso a este host ainda", + "manageAccessFor": "Gerenciar acesso para", + "totalAccessRecords": "Registros de acesso {{count}}", + "neverAccessed": "nunca", + "timesAccessed": "{{count}} vez(es)", + "daysRemaining": "{{days}} dia(s)", + "hoursRemaining": "{{hours}} hora(s)", + "failedToFetchAccessList": "Falha ao buscar lista de acesso", + "currentAccess": "Acesso atual", + "securityWarning": "Aviso de segurança", + "securityWarningMessage": "Compartilhar credenciais dá ao usuário acesso total para executar qualquer operação no servidor, incluindo a alteração de senhas e a exclusão de arquivos. Apenas compartilhe com usuários confiáveis.", + "tempUserRecommended": "Recomendamos ativar 'Criar Usuário Temporário' para uma melhor segurança.", + "roleManagement": "Gerenciamento de funções", + "manageRoles": "Gerenciar Funções", + "manageRolesFor": "Gerenciar cargos para {{username}}", + "assignRole": "Atribuir Função", + "removeRole": "Remover Papel", + "userRoles": "Papéis do Usuário", + "permissions": "Permissões", + "systemRole": "Função do Sistema", + "customRole": "Função Personalizada", + "roleAssignedSuccessfully": "Função atribuída a {{username}} com sucesso", + "failedToAssignRole": "Falha ao atribuir papel", + "roleRemovedSuccessfully": "Função removida de {{username}} com sucesso", + "failedToRemoveRole": "Falha ao remover papel", + "cannotRemoveSystemRole": "Não é possível remover função do sistema", + "cannotShareWithSelf": "Não é possível compartilhar host consigo mesmo", + "noCustomRolesToAssign": "Nenhuma função personalizada disponível. Cargos do sistema são auto-atribuídos.", + "credentialSharingWarning": "Autenticação de Credencial Não Suportada para Compartilhamento", + "credentialRequired": "É necessária credencial ao compartilhar um host", + "credentialRequiredDescription": "Este host não usa autenticação baseada em credenciais. A fim de compartilhar hosts, devido a criptografia por usuário, o host deve usar autenticação baseada em credenciais.", + "auditLogs": "Registros de Auditoria", + "viewAuditLogs": "Visualizar logs de auditoria", + "action": "Acão", + "resourceType": "Tipo de Recurso", + "resourceName": "Nome do Recurso", "timestamp": "Timestamp", - "ipAddress": "IP Address", - "userAgent": "User Agent", - "success": "Success", - "failed": "Failed", - "details": "Details", - "noAuditLogs": "No audit logs available", - "sessionRecordings": "Session Recordings", - "viewRecording": "View Recording", - "downloadRecording": "Download Recording", - "dangerousCommand": "Dangerous Command Detected", - "commandBlocked": "Command Blocked", - "terminateSession": "Terminate Session", - "sessionTerminated": "Session terminated by host owner", - "sharedAccessExpired": "Your shared access to this host has expired", - "sharedAccessExpiresIn": "Shared access expires in {{hours}} hours", + "ipAddress": "Endereço IP", + "userAgent": "Agente do usuário", + "success": "Sucesso", + "failed": "Falhou", + "details": "detalhes", + "noAuditLogs": "Não há logs de auditoria disponíveis", + "sessionRecordings": "Gravações da Sessão", + "viewRecording": "Ver Gravação", + "downloadRecording": "Baixar Gravação", + "dangerousCommand": "Comando perigoso detectado", + "commandBlocked": "Comando bloqueado", + "terminateSession": "Terminar sessão", + "sessionTerminated": "Sessão terminada pelo proprietário do host", + "sharedAccessExpired": "Seu acesso compartilhado com este host expirou", + "sharedAccessExpiresIn": "O acesso compartilhado expira em {{hours}} horas", "roles": { - "label": "Roles", - "admin": "Administrator", - "user": "User" + "label": "Papéis", + "admin": "Administrador", + "user": "Usuário" }, - "createRole": "Create Role", - "editRole": "Edit Role", - "roleName": "Role Name", - "displayName": "Display Name", - "description": "Description", - "assignRoles": "Assign Roles", - "userRoleAssignment": "User-Role Assignment", - "selectUserPlaceholder": "Select a user", - "searchUsers": "Search users...", - "noUserFound": "No user found", - "currentRoles": "Current Roles", - "noRolesAssigned": "No roles assigned", - "assignNewRole": "Assign New Role", - "selectRolePlaceholder": "Select a role", - "searchRoles": "Search roles...", - "noRoleFound": "No role found", - "assign": "Assign", - "roleCreatedSuccessfully": "Role created successfully", - "roleUpdatedSuccessfully": "Role updated successfully", - "roleDeletedSuccessfully": "Role deleted successfully", - "failedToLoadRoles": "Failed to load roles", - "failedToSaveRole": "Failed to save role", - "failedToDeleteRole": "Failed to delete role", - "roleDisplayNameRequired": "Role display name is required", - "roleNameRequired": "Role name is required", - "roleNameHint": "Use lowercase letters, numbers, underscores, and hyphens only", - "displayNamePlaceholder": "Developer", - "descriptionPlaceholder": "Software developers and engineers", - "confirmDeleteRole": "Delete Role", - "confirmDeleteRoleDescription": "Are you sure you want to delete the role '{{name}}'? This action cannot be undone.", - "confirmRemoveRole": "Remove Role", - "confirmRemoveRoleDescription": "Are you sure you want to remove this role from the user?", - "editRoleDescription": "Update role information", - "createRoleDescription": "Create a new custom role for grouping users", - "assignRolesDescription": "Manage role assignments for users", - "noRoles": "No roles found", - "selectRole": "Select Role", - "type": "Type", - "user": "User", - "role": "Role", - "saveHostFirst": "Save Host First", - "saveHostFirstDescription": "Please save the host before configuring sharing settings.", - "shareWithUser": "Share with User", - "shareWithRole": "Share with Role", - "share": "Share", + "createRole": "Criar Papel", + "editRole": "Editar Permissão", + "roleName": "Nome da Função", + "displayName": "Nome para exibição", + "description": "Descrição:", + "assignRoles": "Atribuir Papéis", + "userRoleAssignment": "Atribuição de Função", + "selectUserPlaceholder": "Selecione um usuário", + "searchUsers": "Procurar usuários...", + "noUserFound": "Nenhum usuário encontrado", + "currentRoles": "Papéis Atuais", + "noRolesAssigned": "Nenhum cargo atribuído", + "assignNewRole": "Atribuir Nova Função", + "selectRolePlaceholder": "Selecione uma função", + "searchRoles": "Pesquisar funções...", + "noRoleFound": "Nenhuma função encontrada", + "assign": "Atribuir", + "roleCreatedSuccessfully": "Papel criado com sucesso", + "roleUpdatedSuccessfully": "Função atualizada com sucesso", + "roleDeletedSuccessfully": "Função apagada com sucesso", + "failedToLoadRoles": "Falha ao carregar funções", + "failedToSaveRole": "Falha ao salvar papel", + "failedToDeleteRole": "Falha ao excluir papel", + "roleDisplayNameRequired": "Nome de exibição da função é obrigatório", + "roleNameRequired": "Nome da função é obrigatório", + "roleNameHint": "Use apenas letras minúsculas, números, sublinhados e hífens", + "displayNamePlaceholder": "Desenvolvedores", + "descriptionPlaceholder": "Desenvolvedores e engenheiros de software", + "confirmDeleteRole": "Excluir Papel", + "confirmDeleteRoleDescription": "Você tem certeza que deseja excluir a função '{{name}}'? Esta ação não pode ser desfeita.", + "confirmRemoveRole": "Remover Papel", + "confirmRemoveRoleDescription": "Você tem certeza que deseja remover esta função do usuário?", + "editRoleDescription": "Atualizar informações das funções", + "createRoleDescription": "Criar um novo cargo personalizado para agrupar usuários", + "assignRolesDescription": "Gerenciar atribuições de papéis para os usuários", + "noRoles": "Nenhum cargo encontrado", + "selectRole": "Selecione a função", + "type": "tipo", + "user": "Usuário", + "role": "Funções", + "saveHostFirst": "Salvar o Host primeiro", + "saveHostFirstDescription": "Por favor, salve o host antes de configurar configurações de compartilhamento.", + "shareWithUser": "Compartilhar com Usuário", + "shareWithRole": "Compartilhar com Função", + "share": "Compartilhar", "target": "Target", - "expires": "Expires", - "never": "Never", - "noAccessRecords": "No access records found", - "sharedSuccessfully": "Shared successfully", - "failedToShare": "Failed to share", - "confirmRevokeAccessDescription": "Are you sure you want to revoke this access?", - "hours": "hours", - "sharing": "Sharing", - "selectUserAndRole": "Please select both a user and a role", - "view": "View Only", - "viewDesc": "Due to the Termix encryption system, other permission levels will come at a later date" + "expires": "Expira", + "never": "nunca", + "noAccessRecords": "Nenhum registro de acesso encontrado", + "sharedSuccessfully": "Compartilhado com sucesso", + "failedToShare": "Falha ao compartilhar", + "confirmRevokeAccessDescription": "Tem certeza de que deseja revogar esse acesso?", + "hours": "horas", + "sharing": "Compartilhando", + "selectUserAndRole": "Por favor, selecione um usuário e um papel", + "view": "Apenas Visualizar", + "viewDesc": "Devido ao sistema de criptografia do Termix, outros níveis de permissão virão em uma data posterior" }, "commandPalette": { - "searchPlaceholder": "Search for hosts or quick actions...", - "recentActivity": "Recent Activity", + "searchPlaceholder": "Procurar por hosts ou ações rápidas...", + "recentActivity": "Atividade recente", "navigation": "Navigation", - "addHost": "Add Host", - "addCredential": "Add Credential", - "adminSettings": "Admin Settings", - "userProfile": "User Profile", - "updateLog": "Update Log", - "hosts": "Hosts", - "openServerDetails": "Open Server Details", - "openFileManager": "Open File Manager", - "edit": "Edit", + "addHost": "Adicionar Host", + "addCredential": "Adicionar Credencial", + "adminSettings": "Configurações de administrador", + "userProfile": "Informações do Perfil", + "updateLog": "Atualizar registro", + "hosts": "Anfitriões", + "openServerDetails": "Abrir Detalhes do Servidor", + "openFileManager": "Abrir Gerenciador de Arquivos", + "edit": "Alterar", "links": "Links", "github": "GitHub", - "support": "Support", + "support": "SUPORTE", "discord": "Discord", - "donate": "Donate", - "press": "Press", - "toToggle": "to toggle", - "close": "Close", - "hostManager": "Host Manager", - "pressToToggle": "Press Left Shift twice to open the command palette" + "donate": "Doar", + "press": "Pressionar", + "toToggle": "para alternar", + "close": "FECHAR", + "hostManager": "Gerenciador de Host", + "pressToToggle": "Pressione Shift Esquerdo duas vezes para abrir a paleta de comandos" }, "docker": { - "notEnabled": "Docker is not enabled for this host", - "validating": "Validating Docker...", - "connectingToHost": "Connecting to host...", - "error": "Error", - "errorCode": "Error code: {{code}}", - "version": "Docker {{version}}", - "containerStarted": "Container {{name}} started", - "failedToStartContainer": "Failed to start container {{name}}", - "containerStopped": "Container {{name}} stopped", - "failedToStopContainer": "Failed to stop container {{name}}", - "containerRestarted": "Container {{name}} restarted", - "failedToRestartContainer": "Failed to restart container {{name}}", - "containerPaused": "Container {{name}} paused", - "containerUnpaused": "Container {{name}} unpaused", - "failedToTogglePauseContainer": "Failed to toggle pause state for container {{name}}", - "containerRemoved": "Container {{name}} removed", - "failedToRemoveContainer": "Failed to remove container {{name}}", - "image": "Image", + "notEnabled": "O Docker não está habilitado para este host", + "validating": "Validando o Docker...", + "connectingToHost": "Conectando ao host...", + "error": "ERRO", + "errorCode": "Código de erro: {{code}}", + "version": "{{version}} Docker", + "containerStarted": "Contêiner {{name}} iniciado", + "failedToStartContainer": "Falha ao iniciar o contêiner {{name}}", + "containerStopped": "O contêiner {{name}} parou", + "failedToStopContainer": "Falha ao parar o contêiner {{name}}", + "containerRestarted": "Contêiner {{name}} reiniciado", + "failedToRestartContainer": "Falha ao reiniciar o contêiner {{name}}", + "containerPaused": "Recipiente {{name}} pausado", + "containerUnpaused": "Recipiente {{name}} despausado", + "failedToTogglePauseContainer": "Falha ao alternar estado de pausa para o contêiner {{name}}", + "containerRemoved": "{{name}} do contêiner removido", + "failedToRemoveContainer": "Falha ao remover contêiner {{name}}", + "image": "Imagem:", "idLabel": "ID", - "ports": "Ports", - "noPorts": "No ports", - "created": "Created", - "start": "Start", - "stop": "Stop", - "pause": "Pause", + "ports": "Portas", + "noPorts": "Nenhuma porta", + "created": "Criado", + "start": "Iniciar", + "stop": "Interromper", + "pause": "Suspender", "unpause": "Unpause", - "restart": "Restart", - "remove": "Remove", - "removeContainer": "Remove Container", - "confirmRemoveContainer": "Are you sure you want to remove the container '{{name}}'? This action cannot be undone.", - "runningContainerWarning": "Warning: This container is currently running. Removing it will stop the container first.", - "removing": "Removing...", - "loadingContainers": "Loading containers...", - "noContainersFound": "No containers found", - "noContainersFoundHint": "No Docker containers are available on this host", - "searchPlaceholder": "Search containers...", - "filterByStatusPlaceholder": "Filter by status", - "allContainersCount": "All ({{count}})", + "restart": "Reiniciar", + "remove": "Excluir", + "removeContainer": "Remover Contêiner", + "confirmRemoveContainer": "Você tem certeza que deseja remover o contêiner '{{name}}'? Esta ação não pode ser desfeita.", + "runningContainerWarning": "Aviso: Este contêiner está em execução no momento. Removê-lo irá parar o contêiner primeiro.", + "removing": "Removendo...", + "loadingContainers": "Carregando contêineres...", + "noContainersFound": "Nenhum contêiner encontrado", + "noContainersFoundHint": "Nenhum contêiner Docker está disponível neste host", + "searchPlaceholder": "Procurar contêineres...", + "filterByStatusPlaceholder": "Filtrar por status", + "allContainersCount": "Todos ({{count}})", "statusCount": "{{status}} ({{count}})", - "noContainersMatchFilters": "No containers match your filters", - "noContainersMatchFiltersHint": "Try adjusting your search or filter criteria", - "containerMustBeRunningToViewStats": "Container must be running to view statistics", - "failedToFetchStats": "Failed to fetch container statistics", - "containerNotRunning": "Container not running", - "startContainerToViewStats": "Start the container to view statistics", - "loadingStats": "Loading statistics...", - "errorLoadingStats": "Error loading statistics", - "noStatsAvailable": "No statistics available", - "cpuUsage": "CPU Usage", - "current": "Current", - "memoryUsage": "Memory Usage", - "usedLimit": "Used / Limit", - "percentage": "Percentage", - "networkIo": "Network I/O", + "noContainersMatchFilters": "Nenhum contêiner corresponde aos seus filtros", + "noContainersMatchFiltersHint": "Tente ajustar sua pesquisa ou critério de filtro", + "containerMustBeRunningToViewStats": "O contêiner deve estar em execução para ver as estatísticas", + "failedToFetchStats": "Falha ao obter estatísticas do contêiner", + "containerNotRunning": "Contêiner não executando", + "startContainerToViewStats": "Inicie o contêiner para ver estatísticas", + "loadingStats": "Carregando estatísticas...", + "errorLoadingStats": "Erro ao carregar estatísticas", + "noStatsAvailable": "Não há estatísticas disponíveis", + "cpuUsage": "Uso da CPU", + "current": "Atual", + "memoryUsage": "Memória Utilizada", + "usedLimit": "Usado / Limite", + "percentage": "Porcentagem", + "networkIo": "I/O de rede", "input": "Input", - "output": "Output", - "blockIo": "Block I/O", - "read": "Read", - "write": "Write", + "output": "Saída", + "blockIo": "Bloco I/O", + "read": "Lido", + "write": "Salvar", "pids": "PIDs", - "containerInformation": "Container Information", - "name": "Name", + "containerInformation": "Informação do contêiner", + "name": "Nome:", "id": "ID", - "state": "State", - "disconnectedFromContainer": "Disconnected from container", - "containerMustBeRunning": "Container must be running to access console", - "authenticationRequired": "Authentication required", - "verificationCodePrompt": "Enter verification code", - "totpVerificationFailed": "TOTP verification failed. Please try again.", - "connectedTo": "Connected to {{containerName}}", - "disconnected": "Disconnected", - "consoleError": "Console error", - "errorMessage": "Error: {{message}}", - "failedToConnect": "Failed to connect to container", + "state": "Estado:", + "disconnectedFromContainer": "Desconectado do contêiner", + "containerMustBeRunning": "O contêiner deve estar em execução para acessar o console", + "authenticationRequired": "Autenticação requerida", + "verificationCodePrompt": "Inserir código de verificação", + "totpVerificationFailed": "Falha na verificação TOTP. Tente novamente.", + "connectedTo": "Conectado a {{containerName}}", + "disconnected": "Desconectado", + "consoleError": "Erro de console", + "errorMessage": "Erro: {{message}}", + "failedToConnect": "Falha ao conectar ao contêiner", "console": "Console", - "selectShell": "Select shell", - "bash": "Bash", - "sh": "sh", - "ash": "ash", - "connecting": "Connecting...", - "connect": "Connect", - "disconnect": "Disconnect", - "notConnected": "Not connected", - "clickToConnect": "Click connect to start a shell session", - "connectingTo": "Connecting to {{containerName}}...", - "containerNotFound": "Container not found", - "backToList": "Back to List", - "logs": "Logs", - "stats": "Stats", + "selectShell": "Selecionar shell", + "bash": "Pancada", + "sh": "estrito", + "ash": "cinzas", + "connecting": "Conectandochar@@0", + "connect": "Conectar", + "disconnect": "Desconectar", + "notConnected": "Não conectado", + "clickToConnect": "Clique em conectar para iniciar uma sessão shell", + "connectingTo": "Conectando a {{containerName}}...", + "containerNotFound": "Contêiner não encontrado", + "backToList": "Voltar para a Lista", + "logs": "Registros", + "stats": "Estatísticas", "consoleTab": "Console", - "startContainerToAccess": "Start the container to access the console" + "startContainerToAccess": "Iniciar o contêiner para acessar o console" }, "theme": { - "switchToLight": "Switch to Light", - "switchToDark": "Switch to Dark" + "switchToLight": "Trocar para Claro", + "switchToDark": "Mudar para escuro" } }