const strings = {
error: {
server_error: "Erro no servidor, tente novamente",
aiPromptTooLong: "O prompt de AI é longo demais (máximo de 4096 caracteres)",
},
title: {
donate: "Doe",
donateTitle: "Apoie o P3X Redis UI",
donateDescription: "O P3X Redis UI é um projeto gratuito e de código aberto. Os custos de manutenção do aplicativo, recursos de IA, imagens Docker, servidores e infraestrutura saem do bolso do desenvolvedor. Se você acha esta ferramenta útil, considere apoiar seu desenvolvimento contínuo com uma doação. Cada contribuição ajuda a manter o projeto vivo e crescendo. Obrigado!",
jsonRecursive: "Expandindo todas as folhas",
name: "P3X Redis UI",
nameDonated: "P3X Redis UI+",
main: "Você pode escolher uma conexão Redis para conectar no menu inferior esquerdo.",
statistics: "Estatísticas",
error: "Erro",
connectingRedis: "Conectando a Redis ...",
socketioConnectError: "Erro Socket.IO",
db: "DB",
server: "Servidor",
clients: "Clientes",
memory: "Memória",
persistence: "Persistência",
stats: "Estatísticas",
replication: "Replicação",
cpu: "CPU",
cluster: "Cluster",
modules: "Módulos",
errorstats: "Estatísticas de erros",
commandstats: "Estatísticas de comandos",
latencystats: "Estatísticas de latência",
keysizes: "Tamanhos de chaves",
threads: "Threads"
},
confirm: {
dropIndex: "Tem certeza de que deseja excluir este índice?",
uploadBuffer: "Tem certeza de que deseja fazer upload desses dados binários?",
uploadBufferDone: "Os dados binários são carregados",
uploadBufferDoneAndSave: "Os dados binários são carregados e salvos no servidor",
title: "Confirmar",
alert: "Alerta",
info: "Informações",
deleteListItem: "Tem certeza de que deseja excluir este item da lista?",
deleteHashKey: "Tem certeza de que deseja excluir este item de chave hash?",
deleteStreamTimestamp: "Tem certeza de que deseja excluir o carimbo de data/hora deste stream?",
deleteSetMember: "Tem certeza de que deseja excluir este membro do conjunto?",
deleteZSetMember: "Tem certeza de que deseja excluir este membro do conjunto classificado?",
deleteConnection: "Confirmar",
deleteConnectionText: "Tem certeza de que deseja excluir esta conexão Redis?",
deleteNode: "Tem certeza de que deseja excluir este nó Redis?",
delete: "Excluir?",
deleteAllKeys: opts => {
return `Exclua esta árvore e todas as suas chaves (${opts.key})?`;
},
deleteSearchKeys: opts => {
return `Tem certeza de que deseja excluir todas as chaves correspondentes a "${opts.pattern}"? ${opts.count} chaves encontradas.`;
},
socketioConnectError: "Socket.IO não consegue se conectar ao servidor, você pode recarregar e tentar resolver o erro de conexão sozinho, o cliente não sabe como resolvê-lo sozinho.",
socketioAuthRequired: "É necessária autorização Socket.IO. Autentique com HTTP Basic Auth (nome de usuário/senha) e recarregue.",
invalidCredentials: "Nome de usuário ou senha inválidos.",
deleteKey: "Tem certeza de que deseja excluir esta chave?",
rename: {
title: "Tem certeza de que deseja renomear esta chave?",
textContent: "Esta ação renomeia a chave permanentemente.",
placeholder: "A chave Redis (obrigatória)"
},
ttl: {
title: "Tem certeza de que deseja alterar o TTL desta chave?",
textContent: "Alterar TTL atualiza o tempo de vida desta chave. Deixe em branco para manter esta chave para sempre.",
placeholder: "O TTL da chave Redis (inteiro ou vazio)",
placeholderPlaceholder: "Vazio significa que persiste para sempre; caso contrário, insira um número inteiro.",
convertTextToTime: "Converter texto em hora",
convertTextToTimePlaceholder: "Por exemplo. 1d será 86400"
}
},
language: {
ar: "العربية / Arabic",
az: "Azərbaycanca / Azerbaijani",
be: "Беларуская / Belarusian",
bg: "Български / Bulgarian",
bn: "বাংলা / Bengali",
cs: "Čeština / Czech",
da: "Dansk / Danish",
de: "Deutsch / German",
el: "Ελληνικά / Greek",
en: "English",
es: "Español / Spanish",
et: "Eesti / Estonian",
fi: "Suomi / Finnish",
fil: "Filipino / Filipino",
fr: "Français / French",
he: "עברית / Hebrew",
hr: "Hrvatski / Croatian",
hu: "Magyar / Hungarian",
hy: "Հայերեն / Armenian",
id: "Bahasa Indonesia / Indonesian",
it: "Italiano / Italian",
ja: "日本語 / Japanese",
ka: "ქართული / Georgian",
kk: "Қазақша / Kazakh",
km: "ខ្មែរ / Khmer",
ko: "한국어 / Korean",
ky: "Кыргызча / Kyrgyz",
lt: "Lietuvių / Lithuanian",
mk: "Македонски / Macedonian",
ms: "Bahasa Melayu / Malay",
ne: "नेपाली / Nepali",
nl: "Nederlands / Dutch",
no: "Norsk / Norwegian",
pl: "Polski / Polish",
"pt-BR": "Português (Brasil) / Portuguese (Brazil)",
"pt-PT": "Português / Portuguese",
ro: "Română / Romanian",
ru: "Русский / Russian",
sk: "Slovenčina / Slovak",
sl: "Slovenščina / Slovenian",
sr: "Српски / Serbian",
sv: "Svenska / Swedish",
tg: "Тоҷикӣ / Tajik",
th: "ไทย / Thai",
tr: "Türkçe / Turkish",
uk: "Українська / Ukrainian",
vi: "Tiếng Việt / Vietnamese",
"zh-HK": "中文(香港) / Chinese (Hong Kong)",
"zh-TW": "中文(台灣) / Chinese (Taiwan)",
zn: "中文 / Chinese",
bs: 'Bosanski / Bosnian',
si: 'සිංහල / Sinhala',
sw: 'Kiswahili / Swahili',
ta: 'தமிழ் / Tamil'
},
intention: {
copy: "Copiar",
downloadBuffer: "Baixar binário",
setBuffer: "Carregar binário",
exportKeys: "Exportar chaves",
exportAllKeys: (opts) => `Exportar todas as ${opts.count} chaves`,
exportSearchResults: (opts) => `Exportar ${opts.count} resultados`,
deleteAllKeysMenu: (opts) => `Excluir tudo ${opts.count}`,
importKeys: "Importar chaves",
deleteSearchKeys: (opts) => `Excluir ${opts.count} chaves correspondentes`,
saveWithFormatJson: "Salvar com formato",
formatJson: "Formatar JSON",
wrap: "Embrulhar",
unwrap: "Desembrulhar",
downloadJson: "Baixar JSON",
pubsubMonitor: "PubSub",
pulse: "Pulse",
profiler: "Profiler",
memoryAnalysis: "Analysis",
// When you translate the language, keep the Language in English
// eg. Idioma / Language
language: "Idioma",
ok: "OK",
addKey: "Adicionar a esta chave",
addKeyRoot: "Adicione uma chave raiz",
reloadKey: "Chave de recarga",
reload: "Recarregar",
close: "Fechar",
commands: "Comandos",
view: "Ver",
statistics: "Estatísticas",
refresh: "Atualizar",
pause: "Pausar",
resume: "Retomar",
clear: "Limpar",
rename: "Renomear",
main: "Banco de dados",
cancel: "Cancelar",
theme: "Tema",
github: "GitHub",
githubRepo: "Repositório",
githubRelease: "Lançamentos",
githubChangelog: "Registro de alterações",
info: "Info",
settings: "Configurações",
connect: "Conectar",
disconnect: "Desconectar",
logout: "Sair",
overview: "Visão geral",
console: "Consola",
noConnections: "Sem conexões, adicione uma conexão no menu de configurações.",
noConnectionsInSettings: "Sem conexões, você pode adicionar uma NOVA CONEXÃO acima.",
connectionAdd: "Nova conexão",
addGroup: "Adicionar grupo",
extend: "Estender",
collapse: "Recolher",
add: "Adicionar",
edit: "Editar",
save: "Salvar",
ttl: "Definir TTL",
fieldTtl: "TTL do campo",
digest: "Resumo",
delete: "Excluir",
remove: "Remover",
areYouSure: "Tem certeza?",
sure: "Claro",
testConnection: "Conexão de teste",
getKey: "Carregando chave Redis e dados associados...",
jsonViewShow: "Exibir JSON",
jsonViewEditor: "Editar JSON",
quickConsole: "Consola rápida",
moveUp: "Mover para cima",
moveDown: "Mover para baixo",
},
diff: {
reviewChanges: "Revisar altera\u00e7\u00f5es",
inline: "Em linha",
sideBySide: "Lado a lado",
additions: "adi\u00e7\u00f5es",
deletions: "remo\u00e7\u00f5es",
unchangedLines: "linhas inalteradas",
noChanges: "Nenhuma altera\u00e7\u00e3o detectada",
before: "Antes",
after: "Depois",
},
label: {
id: {
nodeId: "ID do nó",
id: "ID de conexão",
info: "Se você não deseja alterar as propriedades de: sshPassword, sshPrivateKey, password, tlsCrt, tlsKey, tlsCa, insira o ID da conexão nessas propriedades para manter os valores das propriedades intactos. Se desejar a mesma lógica na senha do nó, insira o ID do nó na senha do nó."
},
secureFeature: "Se você vir um valor que começa com P3X e tem a mesma aparência, é um recurso seguro. Para alterar as configurações, basta substituir essas configurações por vazias ou qualquer outra coisa e elas serão salvas. Se você não alterar as configurações, elas serão mantidas como estão no servidor.",
aiTranslating: "Traduzindo...",
aiSettings: "Configurações de IA",
aiGroqApiKey: "Chave API Groq",
aiGroqApiKeyInfo: "Opcional. Sua própria chave API Groq para melhor desempenho. Obtenha uma chave gratuita em",
aiGroqApiKeyPlaceholder: "gsk_...",
aiGroqApiKeySaved: "Chave API IA salva",
aiGroqApiKeyInvalid: "Chave API Groq inválida",
aiGroqApiKeyNotSet: "Não definido (padrão do servidor)",
aiEnabled: "IA ativada",
aiEnabledYes: "Sim",
aiEnabledNo: "Não",
aiRouteViaNetwork: "Rota via network.corifeus.com",
aiRoutingDirect: "As consultas vão diretamente para o Groq usando sua própria chave de API, sem passar pelo network.corifeus.com.",
aiRoutingNetwork: "As consultas de IA são roteadas via network.corifeus.com. Se você tiver sua própria chave de API Groq gratuita, pode desativar esta opção para ir direto ao Groq sem network.corifeus.com.",
aiMaxTokens: "Máximo de tokens de IA",
aiMaxTokensInfo: "Número máximo de tokens para respostas de IA. Valores maiores permitem respostas mais longas, mas podem usar mais créditos de API.",
ssh: {
on: "SSH ativado",
off: "SSH desativado",
sshHost: "Anfitrião SSH",
sshPort: "Porta SSH",
sshUsername: "Nome de usuário SSH",
sshPassword: "Senha SSH",
sshPrivateKey: "Chave privada SSH"
},
isBuffer: opts => `[objeto ArrayBuffer] significa que o valor são dados binários ou o valor é maior que ${opts.maxValueAsBuffer}`,
streamValue: `O campo e o valor do fluxo são oneliner. Ex.: campo1 valor1 "campo 2" "valor 2"`,
streamTimestampId: `'*' significa gerado automaticamente ou a especificação como <millisecondsTime>-<sequenceNumber>`,
unableToLoadKey: ({
key
}) => {
return `Não foi possível carregar esta chave: ${key}. Possível, a chave foi excluída. O erro exato está no console.`;
},
bigJson: "Este objeto JSON tem mais de 10 kb, portanto, saiba o que está fazendo, pois algumas funções podem ter renderização lenta.",
addNode: "Adicionar nó",
validateJson: "Validar JSON",
reducedFunction: `Funcionalidade reduzida`,
tooManyKeys: opts => {
return `Para o máximo de funções permitidas, o total de teclas é ${opts.maxLightKeysCount} contar. Este banco de dados tem mais do que as chaves permitidas no total ${opts.count}. A classificação de chaves e as informações adicionais da árvore sofisticada estão desativadas. A pesquisa está acontecendo apenas no servidor, e não na pesquisa do cliente.`;
},
redisCommandNotFound: "Nenhuma correspondência de comando Redis encontrada...",
treeKeyStore: `A classificação (comparação natural) é executada no cliente, também conhecido como navegador, o que significa que há uma penalidade para conjuntos grandes, como mais de 10 mil chaves, podendo adicionar um pouco de tempo à renderização da página. Não há classificação de chave em Redis, apenas assim.`,
socketIoTimeout: options => {
return `O Socket.IO expirou para esta solicitação (máx. ${options.timeout / 1000} segundos) ...`;
},
resizerInfo: options => {
return `A largura mínima do painel esquerdo ou direito é ${options.width}pixels`;
},
jsonViewNotParsable: "Este valor não é analisável JSON ",
ttlTitle: "Defina TTL em segundos",
passwordSecure: "A senha pode estar vazia, mas ainda assim mostrará caracteres, este é um recurso de segurança.",
aclAuthHint: "Use o nome de usuário e a senha do Redis ACL para autenticar. Deixe em branco para o usuário padrão sem senha.",
tlsWithoutCert: "Habilite TLS sem certificado adicional",
tlsRejectUnauthorized: "Rejeitar certificado não autorizado",
tlsSecure: "Se você vir uma configuração TLS que começa com P3X ou todas as configurações TLS parecem iguais, é um recurso seguro. Para alterar as configurações, basta substituir essas configurações por vazias ou qualquer outra coisa e elas serão salvas. Se você não alterar as configurações de TLS, as configurações serão mantidas como estão no servidor.",
treeSeparatorEmpty: "Se o separador da árvore estiver vazio, a árvore não terá nós aninhados, apenas uma lista pura",
treeSeparatorEmptyNote: "Sem nós aninhados, apenas uma lista pura",
welcomeConsole: "Bem-vindo ao console Redis",
welcomeConsoleInfo: "O histórico do cursor PARA CIMA ou PARA BAIXO está ativado",
redisListIndexInfo: "Vazio para anexar, -1 para preceder ou salvar na posição mostrada.",
console: "Consola",
connectiondAdd: "Adicionar conexão",
connectiondEdit: "Editar conexão",
connectiondView: "Ver conexão",
connections: "Conexões",
keysSort: {
on: "Classificação de chaves ativada",
off: "Classificação de chaves desativada"
},
cluster: {
on: "Cluster ativado",
off: "Cluster desativado"
},
sentinel: {
on: "Sentinel ativado",
off: "Sentinel desativado",
name: "Nome Sentinel"
},
readonly: {
on: "Somente leitura ativado",
off: "Somente leitura desativado"
},
theme: {
light: "Luz",
dark: "Empresa obscura",
darkNeu: "Escuro",
darkoBluo: "Azul escuro",
enterprise: "Empresa",
redis: "Redis",
matrix: "Matriz"
},
connected: opts => {
return `Conectado: ${opts.name}`;
},
tree: "Árvore",
askAuth: "Peça autorização",
keyboardShortcuts: "Keyboard Shortcuts",
about: "About",
supportedLanguages: "Supported Languages",
version: "Version",
redisVersion: "Redis Version",
modules: "Módulos",
shortcutRefresh: "Refresh",
shortcutSearch: "Focus Search",
shortcutNewKey: "New Key",
shortcutDisconnect: "Desconectar",
themeAuto: "Auto (system)",
languageAuto: "Auto (system)",
shortcutCommandPalette: "Command Palette",
commandPalette: "Command Palette",
noResults: "No results",
redisCommandsReference: "Comandos Redis",
ungrouped: "Sem grupo",
grouped: "Grouped",
connectFirst: "Conecte-se primeiro a um servidor Redis",
searchLanguage: "Pesquisar idioma...",
exportProgress: "Exportando chaves...",
importProgress: "Importando chaves...",
importPreview: "Visualização",
importOverwrite: "Sobrescrever",
importSkip: "Pular",
importConflict: "Se a chave já existir:",
noKeysToExport: "Nenhuma chave para exportar",
type: "Tipo",
time: "Tempo",
format: "Formato",
loading: "Carregando...",
autoRefresh: "Auto",
exportSearchHint: "Exportando apenas chaves que correspondem à pesquisa atual",
importSearchHint: "A importação se aplica a todo o banco de dados, não apenas aos resultados da pesquisa",
deleteSearchHint: "Excluir todas as chaves correspondentes à pesquisa atual",
deletingSearchKeys: "Excluindo chaves correspondentes...",
importNoKeys: "Nenhuma chave encontrada no arquivo",
desktopNotifications: "Notificações do desktop",
desktopNotificationsEnabled: "Ativar notificações do desktop",
desktopNotificationsInfo: "Receba notificações do SO para desconexões e reconexões do Redis quando o aplicativo não estiver em foco."
},
status: {
dataCopied: "Os dados estão na área de transferência",
exportDone: "Exportação concluída",
deletedSearchKeys: (opts) => `${opts.count} chaves excluídas`,
indexCreated: "Índice criado",
indexDropped: "Índice excluído",
importDone: (opts) => `Importação concluída: ${opts.created} criados, ${opts.skipped} pulados, ${opts.errors} erros`,
nodeRemoved: "Nó removido",
keyIsNotExisting: "Esta chave pode ter sido excluída ou expirada.",
keyCount: opts => {
if (opts.keyCount === 0) {
return "Sem chave";
} else if (opts.keyCount === 1) {
return "1 chave";
} else {
return `${opts.keyCount} chaves`;
}
},
treeExpandAll: "Expanda todas as folhas das árvores. Esta operação pode ser cara e levar tempo ...",
noRedisKeys: "Não há chaves neste banco de dados.",
redisConnected: "Redis conectado com sucesso",
reverted: "Revertido",
reloadingDataInfo: "Recarregando informações de dados Redis",
added: "Adicionado",
saved: "Atualizado",
cancelled: "Cancelado",
deleted: "Excluído",
savedRedis: "Os dados Redis são salvos",
redisDisconnected: opts => {
return `A conexão atual apresentou um erro: ${opts.error.message}`;
},
dbChanged: opts => {
return `O índice db definido como ${opts.db}. `;
},
treeDeleted: opts => {
return `A chave da árvore foi excluída (${opts.key}).`;
},
deletedKey: opts => {
return `A chave foi excluída (${opts.key}).`;
},
renamedKey: "Esta chave foi renomeada",
ttlChanged: "O TTL desta chave foi alterado",
notInteger: "Esta entrada não é um número inteiro",
persisted: "Esta chave persiste para sempre",
set: "A chave está definida/adicionada",
connectionRestored: "Conexão restaurada",
socketDisconnected: "Desconectado",
socketError: "Erro de conexão",
deletedHashKey: "Chave hash excluída",
deletedSetMember: "Membro do conjunto excluído",
deletedListElement: "Elemento da lista excluído",
deletedZSetMember: "Membro do conjunto ordenado excluído",
deletedStreamTimestamp: "Entrada do stream excluída",
},
code: {
"delete-connection": "Esta conexão foi excluída, portanto você está desconectado desta instância Redis.",
"save-connection": "Esta conexão foi alterada, portanto você está desconectado desta instância Redis. Você pode se reconectar.",
"readonly-connections": "As conexões adicionar/salvar/excluir são somente leitura!",
"readonly-connection-mode": "Esta conexão está no modo somente leitura!",
"list-out-of-bounds": "Este índice de lista está fora dos limites",
"invalid-json-value": "O valor não é válido JSON.",
"http_auth_required": "Autorização necessária: autentique com HTTP Basic Auth e recarregue.",
"auto-connection-failed": "Possível, a conexão foi removida e a conexão automática falhou por causa disso.",
invalid_console_command: "Este comando não está funcionando por meio de GUI.",
"AI_DISABLED": "IA está desativada. Ative nas configurações de IA.",
"AI_PROMPT_REQUIRED": "Consulta de IA é obrigatória.",
"GROQ_API_KEY_READONLY": "A chave Groq API é somente leitura e não pode ser modificada.",
"blocked_api_access": "Seu plano Groq API não permite acesso a este modelo. Atualize seu plano Groq ou use o proxy network.corifeus.com.",
"rate_limit": "Limite de taxa de IA atingido. Tente novamente mais tarde ou use sua própria chave Groq API nas configurações."
},
form: {
error: {
required: "Obrigatório",
port: "A porta está entre 1-65535",
invalid: "O formulário é inválido"
},
connection: {
label: {
name: "Nome",
group: "Group",
host: "Nome do host",
port: "Porto",
password: "Senha",
username: "Nome de usuário"
}
},
treeSettings: {
maxValueDisplay: "Comprimento máximo da string de exibição do valor",
maxValueDisplayInfo: "Se definido como 0, mostra valores completos. Se for maior que 0, trunque para esse comprimento. Se -1: para strings, oculta o valor até editar; para outros tipos, mostre o conteúdo completo.",
maxKeys: "A contagem máxima de chaves",
maxKeysInfo: "Para que GUI não trave, limitamos a contagem máxima de chaves.",
keyCount: (opts) => {
return `Número de chaves: ${opts?.keyCount ?? 0}`;
},
label: {
animation: "Usar animação",
noAnimation: "Sem animação",
undoEnabled: "Desfazer ativado",
undoDisabled: "Desfazer desativado",
diffEnabled: "Mostrar diff antes de salvar",
diffDisabled: "Diff antes de salvar desativado",
jsonFormatTwoSpace: "Formate JSON com 2 espaços",
jsonFormatFourSpace: "Formate JSON com 4 espaços",
formName: "Configurações Redis",
searchModeClient: "Modo de pesquisa de cliente",
searchModeServer: "Modo de pesquisa de servidor",
searchModeStartsWith: "Pesquisa com começa com modo",
searchModeIncludes: "Pesquisa inclui modo"
},
undoHint: "Desfazer est\u00e1 dispon\u00edvel apenas para tipos de chave string e JSON",
field: {
treeSeparator: "Separador de árvores",
treeSeparatorSelector: "Seletor de separador de árvore",
page: "Contagem de paginação em árvore",
keyPageCount: "Contagem de paginação principal",
keysSort: "Classifique as chaves",
searchMode: "Modo de pesquisa",
searchModeStartsWith: "A pesquisa começa com/inclui"
},
error: {
keyPageCount: "A contagem de páginas chave deve ser um número inteiro entre 5 e 100",
page: "A contagem de páginas deve ser um número inteiro entre 10 e 5.000",
maxValueDisplay: "O valor máximo de exibição deve ser um número inteiro entre -1 e 32768",
maxKeys: "O valor máximo de contagem de chaves deve ser um número inteiro entre 100 e 100.000"
}
},
key: {
label: {
formName: {
add: "Adicionar nova chave Redis",
edit: "Editar chave Redis",
append: "Adicionar à chave Redis existente"
}
},
field: {
streamTimestamp: "Carimbo de data e hora",
key: "Chave",
type: "Tipo",
index: "Índice",
hashKey: "Chave hash",
score: "Pontuação",
value: "Valor",
errorRate: "Taxa de erro",
capacity: "Capacidade",
topk: "Top K",
width: "Largura",
depth: "Profundidade",
decay: "Decaimento",
compression: "Compressão",
increment: "Incremento",
item: "Item",
vectorValues: "Valores do vetor (separados por vírgula)",
element: "Nome do elemento",
},
error: {
streamTimestamp: "O carimbo de data/hora é obrigatório, no formato Redis ou como *",
key: "A chave é, pelo menos, um caractere",
hashKey: "A chave da tabela hash tem pelo menos um caractere",
score: "A pontuação do conjunto classificado é obrigatória",
value: "O valor é obrigatório",
errorRate: "A taxa de erro deve estar entre 0 e 1 (ex. 0.01)",
capacity: "A capacidade deve ser um inteiro positivo",
topk: "Top K deve ser um inteiro positivo",
width: "A largura deve ser um inteiro positivo",
depth: "A profundidade deve ser um inteiro positivo",
item: "O item é obrigatório"
}
},
main: {
label: {
database: "DB"
}
}
},
page: {
search: {
title: "Pesquisar",
index: "Índice",
query: "Consulta",
results: "Resultados",
noIndex: "Nenhum índice encontrado",
createIndex: "Criar índice",
dropIndex: "Excluir índice",
indexInfo: "Info do índice",
indexName: "Nome do índice",
prefix: "Prefixo de chave (opcional)",
fieldName: "Nome do campo",
hybridMode: "Busca híbrida (FT.HYBRID)",
vectorField: "Campo vetorial",
vectorValues: "Valores vetoriais",
},
monitor: {
title: "Monitoramento",
memory: "Memória",
opsPerSec: "Ops/seg",
clients: "Clientes",
blocked: "Bloqueados",
hitsMisses: "Taxa de acerto",
networkIo: "Rede I/O",
slowLog: "Log lento",
noSlowQueries: "Nenhuma consulta lenta registrada.",
confirmSlowLogReset: "Tem certeza de que deseja redefinir o log lento?",
slowLogResetDone: "O log lento foi redefinido.",
totalCommands: "Total",
expired: "Expirados",
evicted: "Despejados",
clientList: "Lista de clientes",
topKeys: "Maiores chaves por memória",
killClient: "Encerrar cliente",
clientKilled: "Cliente encerrado",
confirmKillClient: "Tem certeza de que deseja encerrar este cliente?",
noKeys: "Sem chaves",
rss: "RSS",
peak: "Pico",
fragmentation: "Fragmentação",
hitsAndMisses: "Acertos / Erros",
noClients: "Sem clientes",
slotStats: "Estatísticas de slots do cluster",
serverInfo: "Informações do servidor",
os: "Sistema operacional",
port: "Porta de rede",
pid: "ID do processo",
configFile: "Arquivo de configuração",
uptime: "Tempo de atividade",
keyspace: "Espaço de chave Redis",
keys: "Chaves Redis",
expires: "Expira",
noKeyspace: "Sem chaves",
persistence: "Persistência de dados",
rdbLastSave: "Último salvamento do RDB",
rdbStatus: "Status do RDB",
rdbChanges: "Alterações desde o último salvamento",
aofEnabled: "AOF ativado",
aofSize: "Tamanho AOF",
replication: "Replicação Redis",
role: "Função de replicação",
replicas: "Réplicas conectadas",
masterHost: "Anfitrião Primário",
linkStatus: "Status do link de replicação",
cpu: "Uso da CPU",
cpuSys: "Sistema",
cpuUser: "Usuário",
modules: "Módulos Redis carregados",
noModules: "Nenhum módulo Redis carregado",
clusterSlotMap: "Mapa de slots do cluster Redis",
slotRange: "Intervalo de slots de cluster",
totalSlots: "Total de slots de cluster",
noClusterData: "Nenhum dado de cluster Redis disponível.",
},
analysis: {
title: "Análise de Memória",
runAnalysis: "Executar Análise",
running: "Analisando...",
typeDistribution: "Distribuição de Tipos",
prefixMemory: "Memória por Prefixo",
topKeysByMemory: "Maiores Chaves por Memória",
expirationOverview: "Expiração de Chaves",
memoryBreakdown: "Detalhamento de Memória",
keysScanned: "Chaves Analisadas",
totalMemory: "Memória Total",
rssMemory: "Memória RSS",
peakMemory: "Memória de Pico",
luaMemory: "Memória Lua",
overheadMemory: "Sobrecarga",
datasetMemory: "Conjunto de Dados",
fragmentation: "Fragmentação",
allocator: "Alocador",
withTTL: "Com TTL",
persistent: "Persistentes",
avgTTL: "TTL Médio",
prefix: "Prefixo",
keyCount: "Quantidade de Chaves",
memoryUsage: "Uso de Memória",
noPrefix: "(sem prefixo)",
topN: "Top N",
maxScanKeys: "Máx. Chaves Analisadas",
type: "Tipo",
noData: "Sem dados. Clique em Executar Análise para começar.",
exportAll: "Exportar Tudo",
memoryDoctor: "Memory Doctor",
doctorNoData: "Clique em Atualizar para executar o diagnóstico Memory Doctor.",
},
acl: {
title: "Usuários ACL",
loadUsers: "Carregar usuários",
loading: "Carregando...",
username: "Nome de usuário",
status: "Estado",
enabled: "Habilitado",
disabled: "Desativado",
commands: "Comandos",
commandsHint: "por exemplo, +@all or +@read -@dangerous",
keys: "Padrões de chaves Redis",
keysHint: "por exemplo, ~* or ~user:*",
channels: "Canais Pub/Sub",
channelsHint: "por exemplo, &* or ¬ifications:*",
password: "Senha",
noPassword: "Sem senha (nopass)",
passwordHint: "Deixe em branco para manter a senha atual",
currentUser: "Atual",
createUser: "Criar usuário",
editUser: "Editar usuário",
deleteUser: "Excluir",
confirmDelete: "Tem certeza de que deseja excluir o usuário ACL?",
userDeleted: "O usuário ACL foi excluído.",
userSaved: "O usuário ACL foi salvo.",
cannotDeleteDefault: "Não é possível excluir o usuário padrão.",
cannotDeleteSelf: "Não é possível excluir o usuário atualmente conectado.",
noUsers: "ACL requer Redis 6.0+.",
groupCommon: "Geral",
groupDataTypes: "Tipos de dados",
groupOperations: "Operações",
rules: "Regras",
rulesHint: "Tokens separados por espaço (por exemplo on >password +@all ~* &*)",
defaultUserWarning: "Cuidado: Modificar o usuário padrão pode bloquear todas as conexões. Se isso acontecer, você precisará reiniciar o Redis ou usar o redis-cli para restaurar o acesso.",
},
overview: {
noConnected: "Não há conexão com Redis.",
overviewClients: "Liste os conectados pela contagem de clientes",
connectedCount: opt => {
if (opt.length === 1) {
return "1 cliente";
}
return `${opt.length} clientes`;
}
},
key: {
label: {
key: "Chave",
encoding: "Codificação",
compression: "Compressão",
aiRateLimited: "Limite de solicitações de IA atingido. Tente novamente mais tarde ou use sua própria chave de API do Groq nas Configurações.",
aiError: "A consulta de IA falhou",
length: "Tamanho",
ttl: "TTL",
ttlTitle: "Hora de viver",
type: "Tipo",
ttlNotExpire: "não expira",
lengthString: "bytes",
lengthItem: "itens",
actions: "Ações"
},
list: {
table: {
index: "Índice",
value: "Valor"
}
},
hash: {
table: {
hashkey: "Chave de hash",
value: "Valor"
}
},
set: {
table: {
value: "Membro"
}
},
zset: {
table: {
value: "Membro",
score: "Pontuação"
}
},
stream: {
table: {
timestamp: "ID do carimbo de data/hora",
field: "Campo",
value: "Valor"
}
},
timeseries: {
chart: "Gráfico",
info: "Informação",
addPoint: "Adicionar ponto",
from: "De (ms ou -)",
to: "Até (ms ou +)",
aggregation: "Agregação",
timeBucket: "Bucket (ms)",
none: "Nenhum",
dataPoints: "pontos de dados",
labels: "Rótulos",
rules: "Regras",
retention: "Retenção",
timestamp: "Carimbo de data/hora",
value: "Valor",
retentionHint: "0 = sem expiração, ou milissegundos",
duplicatePolicy: "Política de duplicados",
labelsHint: "chave1 valor1 chave2 valor2",
timestampHint: "'*' significa gerado automaticamente, ou carimbo de data/hora em milissegundos",
editAllHint: "Um ponto de dados por linha: carimbo_de_data/hora valor (o carimbo pode ser * para automático)",
autoSpread: "Intervalo de dispersão automático *",
formula: "Fórmula",
formulaLinear: "Linear",
formulaRandom: "Aleatório",
formulaSawtooth: "Dente de serra",
formulaPoints: "Pontos",
formulaAmplitude: "Amplitude",
formulaOffset: "Deslocamento",
generate: "Gerar",
exportChart: "Exportar PNG",
overlay: "Sobrepor chaves",
overlayHint: "Chaves separadas por vírgulas",
mrangeFilter: "Filtro de rótulos",
bulkMode: "Geração em massa",
mrangeHint: "ex. sensor=temp"
},
probabilistic: {
info: "Informação",
addItem: "Adicionar Item",
checkItem: "Verificar Item",
item: "Item",
exists: "Existe",
doesNotExist: "Não existe",
topkList: "Itens Principais",
topkCount: "Contagem",
queryCount: "Contagem de Consultas",
queryResult: "Resultado da Consulta",
addedSuccessfully: "Item adicionado com sucesso",
deletedSuccessfully: "Item excluído com sucesso",
quantile: "Quantil",
quantileResult: "Resultado",
noItems: "Nenhum item para exibir",
resetConfirm: "Redefinir todos os dados neste T-Digest?"
},
vectorset: {
info: "Informações",
elements: "Elementos",
similarity: "Busca por Similaridade",
searchByElement: "Buscar por elemento",
searchByVector: "Buscar por vetor",
vectorValues: "Valores do vetor",
element: "Elemento",
score: "Pontuação",
count: "Contagem",
addElement: "Adicionar Elemento",
attributes: "Atributos",
noAttributes: "Sem atributos",
dimensions: "Dimensões",
removeConfirm: "Remover este elemento do VectorSet?",
noElements: "Sem elementos",
filter: "Filtro",
searchComplete: "Busca concluída",
}
},
treeControls: {
settings: "Configurações de árvore",
expandAll: "Expandir tudo",
collapseAll: "Recolher tudo",
level: "Nível",
search: {
search: "Pesquise nas chaves",
clear: "Limpe a pesquisa atual para definir como vazia",
placeholderClient: "Pesquisar no lado do cliente",
placeholderServer: "Lado do servidor de pesquisa",
info: (opts) => "A pesquisa do lado do cliente significa que ela corresponde ao texto na entrada de pesquisa. A pesquisa no lado do servidor significa que é como pesquisar nos padrões de chaves como *{search-text}*. Para conjuntos de pesquisa grandes, é melhor usar a pesquisa no lado do servidor. Para conjuntos de pesquisa menores, é melhor usar o modo de pesquisa do lado do cliente." + ` Se a contagem de chaves acabar ${opts?.maxLightKeysCount ?? 110000}, você só poderá pesquisar no lado do servidor.`,
largeSetInfo: "Em um conjunto grande, a pesquisa do lado do cliente está desativada. então, no momento, apenas a pesquisa no lado do servidor é possível.",
infoDetails: "Para saber como funciona a pesquisa, verifique as configurações"
},
pager: {
next: "Próximo",
prev: "Anterior",
first: "Primeiro",
last: "Último"
}
}
},
time: {
years: "anos",
months: "meses",
days: "dias",
year: "ano",
month: "mês",
day: "dia",
second: "segundo",
seconds: "segundos",
minute: "minuto",
minutes: "minutos",
hour: "hora",
hours: "horas"
},
redisTypes: {
string: "String",
list: "List",
hash: "Hash table",
set: "Set",
zset: "Sorted set - zset",
stream: "Stream",
json: "JSON",
timeseries: "Time Series",
bloom: "Bloom filtro",
cuckoo: "Cuckoo filtro",
topk: "Top-K",
cms: "Count-Min Sketch",
tdigest: "T-Digest",
vectorset: "VectorSet",
}
};
module.exports = strings;