Merge origin/main into deferred OpenCode restart branch.
Resolve ProvidersPage and lifecycle conflicts with custom providers and AppImage ARGV0 stripping. Address review follow-ups: OAuth index helper + tests, single auth-methods load trigger, shared Google env-alias module with VS Code parity coverage, and deferred restart for custom provider upsert. Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
This commit is contained in:
@@ -698,9 +698,8 @@ export const settingsDict = {
|
||||
"settings.skills.sidebar.toast.skillDeleted": "Habilidade \"{name}\" excluída com sucesso",
|
||||
"settings.skills.sidebar.toast.deleteSkillFailed": "Não foi possível excluir a habilidade",
|
||||
"settings.skills.sidebar.toast.duplicateLoadFailed": "Não foi possível carregar as informações da habilidade para duplicá-la",
|
||||
"settings.skills.sidebar.toast.renameLoadFailed": "Não foi possível carregar as informações da habilidade",
|
||||
"settings.skills.sidebar.toast.removeOldAfterRenameFailed": "Não foi possível excluir a habilidade antiga depois da renomeação",
|
||||
"settings.skills.sidebar.toast.renameFailed": "Não foi possível renomear da habilidade",
|
||||
"settings.skills.sidebar.toast.skillRenamed": "Habilidade renomeada para \"{name}\"",
|
||||
"settings.skills.sidebar.deleteDialog.title": "Excluir habilidade",
|
||||
"settings.skills.sidebar.deleteDialog.description": "Tem certeza de que deseja excluir a habilidade \"{name}\"?",
|
||||
"settings.skills.sidebar.renameDialog.title": "Renomear habilidade",
|
||||
@@ -1313,7 +1312,58 @@ export const settingsDict = {
|
||||
"settings.providers.page.connect.selectProviderPlaceholder": "Selecionar provedor",
|
||||
"settings.providers.page.connect.searchProvidersPlaceholder": "Buscar...",
|
||||
"settings.providers.page.connect.noProvidersFound": "Nenhum provedores",
|
||||
"settings.providers.page.connect.allProvidersConnected": "Todos os provedores estão conectados.",
|
||||
"settings.providers.page.custom.optionLabel": "Outro / Personalizado",
|
||||
"settings.providers.page.custom.title": "Provedor personalizado",
|
||||
"settings.providers.page.custom.editTitle": "Editar provedor personalizado",
|
||||
|
||||
"settings.providers.page.custom.description": "Adicione um provedor compatível com OpenAI com URL base, credenciais e lista de modelos. Salvo na configuração do OpenCode para uso no chat como qualquer outro provedor.",
|
||||
"settings.providers.page.custom.field.providerID.label": "ID do provedor",
|
||||
"settings.providers.page.custom.field.providerID.placeholder": "meu-provedor",
|
||||
"settings.providers.page.custom.field.providerID.info": "Letras minúsculas, números, hífens e sublinhados. Usado como ID de provedor do OpenCode.",
|
||||
"settings.providers.page.custom.field.name.label": "Nome de exibição",
|
||||
"settings.providers.page.custom.field.name.placeholder": "Meu provedor",
|
||||
"settings.providers.page.custom.field.name.info": "Mostrado nos seletores de provedor e modelo.",
|
||||
"settings.providers.page.custom.field.baseURL.label": "URL base",
|
||||
"settings.providers.page.custom.field.baseURL.placeholder": "https://api.example.com/v1",
|
||||
"settings.providers.page.custom.field.baseURL.info": "URL base da API compatível com OpenAI. Deve começar com http:// ou https://.",
|
||||
"settings.providers.page.custom.field.apiKey.label": "Chave de API",
|
||||
"settings.providers.page.custom.field.apiKey.placeholder": "sk-... ou {env:VAR_NAME}",
|
||||
"settings.providers.page.custom.field.apiKey.info": "Armazenada na autenticação do OpenCode, não pelo OpenChamber. Use {env:VAR_NAME} para ler uma chave do ambiente.",
|
||||
"settings.providers.page.custom.field.apiKey.editInfo": "Deixe em branco para manter a credencial existente, ou informe uma nova chave / {env:VAR_NAME}.",
|
||||
"settings.providers.page.custom.field.apiKey.editPlaceholder": "Deixe em branco para manter a chave existente",
|
||||
|
||||
|
||||
"settings.providers.page.custom.models.title": "Modelos",
|
||||
"settings.providers.page.custom.models.idLabel": "ID do modelo",
|
||||
"settings.providers.page.custom.models.idPlaceholder": "gpt-4o",
|
||||
"settings.providers.page.custom.models.nameLabel": "Nome do modelo",
|
||||
"settings.providers.page.custom.models.namePlaceholder": "GPT-4o",
|
||||
"settings.providers.page.custom.models.add": "Adicionar modelo",
|
||||
"settings.providers.page.custom.models.remove": "Remover modelo",
|
||||
"settings.providers.page.custom.headers.title": "Cabeçalhos",
|
||||
"settings.providers.page.custom.headers.description": "Cabeçalhos de solicitação opcionais enviados em cada chamada.",
|
||||
"settings.providers.page.custom.headers.keyLabel": "Nome do cabeçalho",
|
||||
"settings.providers.page.custom.headers.keyPlaceholder": "X-Custom-Header",
|
||||
"settings.providers.page.custom.headers.valueLabel": "Valor do cabeçalho",
|
||||
"settings.providers.page.custom.headers.valuePlaceholder": "valor",
|
||||
"settings.providers.page.custom.headers.add": "Adicionar cabeçalho",
|
||||
"settings.providers.page.custom.headers.remove": "Remover cabeçalho",
|
||||
"settings.providers.page.custom.actions.back": "Voltar",
|
||||
"settings.providers.page.custom.actions.save": "Salvar provedor",
|
||||
"settings.providers.page.custom.actions.update": "Atualizar provedor",
|
||||
|
||||
"settings.providers.page.custom.error.providerID.required": "O ID do provedor é obrigatório",
|
||||
"settings.providers.page.custom.error.providerID.format": "Use letras minúsculas, números, hífens ou sublinhados",
|
||||
"settings.providers.page.custom.error.providerID.exists": "Já existe um provedor conectado com este ID",
|
||||
"settings.providers.page.custom.error.name.required": "O nome de exibição é obrigatório",
|
||||
"settings.providers.page.custom.error.baseURL.required": "A URL base é obrigatória",
|
||||
"settings.providers.page.custom.error.baseURL.format": "A URL base deve começar com http:// ou https://",
|
||||
"settings.providers.page.custom.error.required": "Obrigatório",
|
||||
"settings.providers.page.custom.error.duplicate": "Duplicado",
|
||||
"settings.providers.page.custom.error.apiKey.required": "É necessária uma chave de API ou {env:VAR_NAME}",
|
||||
"settings.providers.page.custom.authFailure.configAfterAuth": "As credenciais foram salvas, mas a configuração do provedor não. Corrija o erro e tente novamente, ou desconecte para limpar o salvamento parcial.",
|
||||
|
||||
|
||||
"settings.providers.page.auth.title": "Autenticação",
|
||||
"settings.providers.page.auth.loadingMethods": "Carregando métodos de autenticação...",
|
||||
"settings.providers.page.auth.apiKeyLabel": "Chave API",
|
||||
@@ -1322,6 +1372,10 @@ export const settingsDict = {
|
||||
"settings.providers.page.auth.oauthMethodFallback": "Método OAuth {index}",
|
||||
"settings.providers.page.auth.pasteAuthorizationCodePlaceholder": "Colar código de autorização",
|
||||
"settings.providers.page.auth.connected": "Conectado",
|
||||
"settings.providers.page.auth.incomplete": "Credenciais ausentes",
|
||||
"settings.providers.page.auth.incompleteHint": "· Adicione uma chave de API ou {env:VAR} antes de usar este provedor no chat",
|
||||
|
||||
|
||||
"settings.providers.page.auth.useReconnectHint": "· Usar Reconnect para atualizar credenciais",
|
||||
"settings.providers.page.connectionDetails.title": "Detalhes de conexão",
|
||||
"settings.providers.page.connectionDetails.configuredIn": "Configuredo en:",
|
||||
@@ -1351,6 +1405,8 @@ export const settingsDict = {
|
||||
"settings.providers.page.actions.complete": "Completar",
|
||||
"settings.providers.page.actions.hide": "Ocultar",
|
||||
"settings.providers.page.actions.reconnect": "Reconectar",
|
||||
"settings.providers.page.actions.edit": "Editar",
|
||||
|
||||
"settings.providers.page.actions.disconnecting": "Desconectando...",
|
||||
"settings.providers.page.actions.disconnect": "Desconectar",
|
||||
"settings.providers.page.actions.hideAll": "Ocultar todo",
|
||||
@@ -1371,6 +1427,8 @@ export const settingsDict = {
|
||||
"settings.providers.page.toast.deviceCodeCopyFailed": "Não foi possível copiar o código de dispositivo",
|
||||
"settings.providers.page.toast.providerDisconnected": "Provedor desconectado",
|
||||
"settings.providers.page.toast.providerDisconnectFailed": "Não foi possível desconectar o provedor",
|
||||
"settings.providers.page.toast.customProviderSaved": "{provider} conectado",
|
||||
"settings.providers.page.toast.customProviderSaveFailed": "Falha ao salvar o provedor personalizado",
|
||||
"settings.mcp.page.empty.selectServer": "Selecione um servidor MCP de o painel lateral",
|
||||
"settings.mcp.page.empty.addNewOne": "o añade um novo",
|
||||
"settings.mcp.page.header.newServer": "Novo servidor MCP",
|
||||
|
||||
Reference in New Issue
Block a user