Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
667 lines
25 KiB
JSON
667 lines
25 KiB
JSON
{
|
|
"profile": {
|
|
"pageTitle": "Your Profile",
|
|
"tabs": {
|
|
"profile": "Profile",
|
|
"security": "Security",
|
|
"sso": "Single Sign-On",
|
|
"apiKeys": "API Keys",
|
|
"notifications": "Notifications",
|
|
"calendar": "Calendar",
|
|
"keyboardShortcuts": "Keyboard Shortcuts"
|
|
},
|
|
"basicInfo": {
|
|
"title": "Basic Information"
|
|
},
|
|
"fields": {
|
|
"firstName": {
|
|
"label": "First Name *"
|
|
},
|
|
"lastName": {
|
|
"label": "Last Name *"
|
|
},
|
|
"email": {
|
|
"label": "Email *"
|
|
},
|
|
"phoneNumber": {
|
|
"label": "Phone Number"
|
|
},
|
|
"timeZone": {
|
|
"label": "Time Zone"
|
|
}
|
|
},
|
|
"actions": {
|
|
"saveChanges": "Save Changes"
|
|
},
|
|
"notifications": {
|
|
"title": "Notification Preferences",
|
|
"viewSwitcher": {
|
|
"email": "Email",
|
|
"internal": "Internal"
|
|
}
|
|
},
|
|
"loading": "Loading profile...",
|
|
"messages": {
|
|
"success": {
|
|
"profileUpdated": "Profile updated successfully"
|
|
},
|
|
"error": {
|
|
"userNotFound": "User not found",
|
|
"fillRequiredFields": "Please fill in all required fields",
|
|
"loadFailed": "Failed to load profile",
|
|
"saveFailed": "Failed to save profile",
|
|
"errorPrefix": "Error: {{error}}"
|
|
}
|
|
},
|
|
"validation": {
|
|
"firstNameRequired": "First name is required",
|
|
"lastNameRequired": "Last name is required"
|
|
},
|
|
"changePassword": {
|
|
"title": "Change Password",
|
|
"current": "Current Password",
|
|
"new": "New Password",
|
|
"confirm": "Confirm New Password",
|
|
"validationFailed": "Password does not meet all requirements",
|
|
"requirements": "Password must be at least 8 characters",
|
|
"submit": "Change Password",
|
|
"success": "Password changed successfully",
|
|
"error": "Failed to change password",
|
|
"passwordMismatch": "New passwords do not match",
|
|
"unknownError": "An error occurred while changing password"
|
|
},
|
|
"loadingStates": {
|
|
"sso": {
|
|
"title": "Single Sign-On",
|
|
"description": "Loading SSO settings..."
|
|
},
|
|
"calendar": {
|
|
"title": "Calendar",
|
|
"description": "Loading calendar settings..."
|
|
}
|
|
}
|
|
},
|
|
"security": {
|
|
"title": "Security Settings",
|
|
"tabs": {
|
|
"roles": "Roles",
|
|
"sessions": "Sessions",
|
|
"sso": "Single Sign-On",
|
|
"permissions": "Permissions",
|
|
"userRoles": "User Roles",
|
|
"policies": "Policies",
|
|
"apiKeys": "API Keys",
|
|
"webhooks": "Webhooks"
|
|
},
|
|
"loading": {
|
|
"roles": "Loading role configuration...",
|
|
"permissions": "Loading permissions configuration...",
|
|
"userRoles": "Loading user role configuration...",
|
|
"policies": "Loading policy configuration...",
|
|
"apiKeys": "Loading API key configuration...",
|
|
"webhooks": "Loading webhook configuration...",
|
|
"sso": "Loading SSO management tools...",
|
|
"sessions": "Loading active sessions..."
|
|
},
|
|
"userRoles": {
|
|
"title": "Assign Roles to Users",
|
|
"description": {
|
|
"msp": "Manage user role assignments for MSP users",
|
|
"client": "Manage user role assignments for Client Portal users"
|
|
},
|
|
"viewSwitcher": {
|
|
"msp": "MSP",
|
|
"clientPortal": "Client Portal"
|
|
},
|
|
"showInactive": "Show Inactive Users",
|
|
"fields": {
|
|
"selectUser": "Select User",
|
|
"selectRole": "Select Role"
|
|
},
|
|
"actions": {
|
|
"assignRole": "Assign Role"
|
|
},
|
|
"table": {
|
|
"user": "User",
|
|
"email": "Email",
|
|
"roles": "Roles",
|
|
"actions": "Actions"
|
|
},
|
|
"unnamedUser": "Unnamed User",
|
|
"noRolesAssigned": "No roles assigned",
|
|
"removeRole": "Remove {{role}}",
|
|
"emptyState": {
|
|
"noUsers": "No {{type}} users found",
|
|
"inactiveHidden": "(inactive users hidden)"
|
|
},
|
|
"inactiveTag": "(Inactive)",
|
|
"messages": {
|
|
"success": {
|
|
"roleAssigned": "Função atribuída com sucesso",
|
|
"roleRemoved": "Função removida com sucesso"
|
|
},
|
|
"error": {
|
|
"assignFailed": "Falha ao atribuir a função. Tente novamente.",
|
|
"removeFailed": "Falha ao remover a função. Tente novamente.",
|
|
"permissionDenied": "Você não tem permissão para alterar funções de usuário."
|
|
}
|
|
}
|
|
},
|
|
"sessions": {
|
|
"title": "All User Sessions",
|
|
"filters": {
|
|
"search": "Search",
|
|
"searchPlaceholder": "Search by name, email, device, or IP...",
|
|
"user": "User",
|
|
"allUsers": "All Users",
|
|
"loginMethod": "Login Method",
|
|
"allMethods": "All Methods",
|
|
"userType": "User Type",
|
|
"allTypes": "All Types",
|
|
"from": "From",
|
|
"to": "To",
|
|
"selectDate": "Select date",
|
|
"reset": "Reset"
|
|
},
|
|
"loginMethods": {
|
|
"password": "Password",
|
|
"google": "Google OAuth",
|
|
"microsoft": "Microsoft OAuth",
|
|
"keycloak": "Keycloak"
|
|
},
|
|
"userTypes": {
|
|
"internal": "Internal",
|
|
"client": "Client"
|
|
},
|
|
"session": {
|
|
"yourSession": "Your Session",
|
|
"unknownDevice": "Unknown Device",
|
|
"lastActive": "Last active {{time}}",
|
|
"logout": "Logout",
|
|
"revoke": "Revoke",
|
|
"revoking": "Revoking..."
|
|
},
|
|
"oauthWarning": "Revoking this session will not revoke {{provider}} OAuth access. Revoke access from your {{provider}} account settings.",
|
|
"confirmLogout": "Are you sure you want to logout from this device?",
|
|
"messages": {
|
|
"loadFailed": "Failed to load sessions",
|
|
"loggingOut": "Logging out...",
|
|
"revoked": "Session revoked successfully",
|
|
"revokeFailed": "Failed to revoke session"
|
|
},
|
|
"emptyState": {
|
|
"loading": "Loading sessions...",
|
|
"noMatch": "No sessions match your search",
|
|
"noSessions": "No active sessions found"
|
|
},
|
|
"subtitle_one": "{{sessionCount}} active session across {{userCount}} user",
|
|
"subtitle_other": "{{sessionCount}} active sessions across {{userCount}} users"
|
|
},
|
|
"webhooks": {
|
|
"title": "Outbound Webhooks",
|
|
"description": "Create signed ticket lifecycle subscriptions, filter them to specific ticket IDs, inspect delivery history, and rotate secrets without leaving settings.",
|
|
"newWebhook": "New Webhook",
|
|
"tabs": {
|
|
"configuration": "Configuration",
|
|
"deliveries": "Deliveries",
|
|
"inbound": "Inbound",
|
|
"outbound": "Outbound"
|
|
},
|
|
"inbound": {
|
|
"title": "Webhooks de entrada",
|
|
"description": "Aceite solicitações autenticadas de sistemas externos e despache-as para ações diretas ou fluxos de trabalho.",
|
|
"placeholder": "Configure endpoints de webhooks de entrada que verificam solicitações, deduplicam entregas e despacham para ações ou fluxos.",
|
|
"newWebhook": "Novo webhook",
|
|
"list": {
|
|
"title": "Webhooks de entrada configurados",
|
|
"loading": "Carregando…",
|
|
"configuredCount": "{{count}} configurados",
|
|
"empty": "Nenhum webhook de entrada configurado ainda.",
|
|
"columns": {
|
|
"name": "Nome",
|
|
"handler": "Manipulador",
|
|
"lastDelivery": "Última entrega",
|
|
"active": "Ativo",
|
|
"actions": "Ações"
|
|
}
|
|
},
|
|
"handlers": {
|
|
"directAction": "Ação direta",
|
|
"workflow": "Fluxo de trabalho"
|
|
},
|
|
"status": {
|
|
"active": "Ativo",
|
|
"inactive": "Inativo"
|
|
},
|
|
"messages": {
|
|
"loadFailed": "Falha ao carregar os webhooks de entrada.",
|
|
"nameRequired": "O nome é obrigatório.",
|
|
"slugRequired": "O slug é obrigatório.",
|
|
"actionRequired": "Selecione uma ação antes de salvar.",
|
|
"workflowRequired": "Selecione um fluxo antes de salvar.",
|
|
"missingRequiredFields": "Mapeie um valor para os campos obrigatórios: {{fields}}"
|
|
},
|
|
"dialog": {
|
|
"createTitle": "Criar webhook de entrada",
|
|
"editTitle": "Editar webhook de entrada",
|
|
"cancel": "Cancelar",
|
|
"create": "Criar webhook",
|
|
"save": "Salvar alterações",
|
|
"saveUnavailable": "Continuar"
|
|
},
|
|
"identity": {
|
|
"title": "Identidade",
|
|
"help": "Nomeie o webhook e escolha o slug seguro para URL usado em seu endpoint receptor.",
|
|
"name": "Nome",
|
|
"namePlaceholder": "Alertas críticos de RMM",
|
|
"slug": "Slug",
|
|
"slugPlaceholder": "alertas-criticos-rmm",
|
|
"description": "Descrição",
|
|
"descriptionPlaceholder": "Notas opcionais sobre o sistema de origem e o payload."
|
|
},
|
|
"auth": {
|
|
"title": "Autenticação",
|
|
"help": "Escolha como as solicitações de entrada comprovam que estão autorizadas a usar este endpoint.",
|
|
"method": "Método de autenticação",
|
|
"types": {
|
|
"hmacSha256": "HMAC-SHA256",
|
|
"bearer": "Token Bearer",
|
|
"ipAllowlist": "Lista de IPs permitidos",
|
|
"pathToken": "Segredo compartilhado no caminho"
|
|
},
|
|
"signatureHeader": "Cabeçalho de assinatura",
|
|
"signatureHeaderPlaceholder": "X-Alga-Signature",
|
|
"bearerToken": "Token Bearer",
|
|
"bearerTokenPlaceholder": "Cole o token ou deixe em branco para gerar um",
|
|
"secretUnchangedPlaceholder": "Deixe em branco para manter o segredo atual",
|
|
"ipCidrs": "IPs / CIDRs permitidos",
|
|
"ipCidrsPlaceholder": "203.0.113.10\n198.51.100.0/24",
|
|
"queryParam": "Parâmetro de consulta",
|
|
"queryParamPlaceholder": "token",
|
|
"pathToken": "Token de caminho",
|
|
"pathTokenPlaceholder": "Cole o token ou deixe em branco para gerar um"
|
|
},
|
|
"secret": {
|
|
"label": "Segredo do webhook",
|
|
"warning": "Este valor é mostrado apenas agora. Salve-o no sistema de origem antes de fechar esta caixa de diálogo.",
|
|
"copy": "Copiar",
|
|
"download": "Baixar como .txt",
|
|
"close": "Fechar"
|
|
},
|
|
"idempotency": {
|
|
"title": "Idempotência",
|
|
"help": "Use uma chave estável para detectar entregas duplicadas dentro da janela configurada.",
|
|
"source": "Origem da chave",
|
|
"types": {
|
|
"header": "Cabeçalho HTTP",
|
|
"jsonata": "Expressão JSONata"
|
|
},
|
|
"headerName": "Nome do cabeçalho",
|
|
"headerNamePlaceholder": "X-Idempotency-Key",
|
|
"jsonataExpression": "Expressão JSONata",
|
|
"jsonataExpressionPlaceholder": "alert.id",
|
|
"windowSeconds": "Janela de duplicatas (segundos)"
|
|
},
|
|
"active": {
|
|
"title": "Estado ativo",
|
|
"help": "Pause o endpoint sem excluir sua URL, mapeamentos ou histórico de entregas.",
|
|
"toggle": "Webhook está ativo",
|
|
"autoDisabled": "Desativado automaticamente em {{date}} após falhas repetidas.",
|
|
"updateFailed": "Falha ao atualizar o estado do webhook de entrada."
|
|
},
|
|
"handler": {
|
|
"title": "Manipulador",
|
|
"help": "Escolha o que Alga deve fazer após a solicitação ser verificada e deduplicada.",
|
|
"type": "Tipo de manipulador",
|
|
"types": {
|
|
"directAction": "Ação direta",
|
|
"workflow": "Fluxo de trabalho"
|
|
},
|
|
"directActionTitle": "Ação direta",
|
|
"directActionHelp": "Selecione uma ação de entrada e mapeie os campos do payload para seus campos de destino.",
|
|
"action": "Ação",
|
|
"actionPlaceholder": "Selecione uma ação",
|
|
"actionEmpty": "Nenhuma ação de entrada registrada. Certifique-se de que o servidor inicializou o registro de ações antes de salvar.",
|
|
"targetFields": "Campos de destino",
|
|
"required": "Obrigatório",
|
|
"optional": "Opcional",
|
|
"mappingPlaceholder": "Digite uma expressão JSONata, por ex. payload.field",
|
|
"workflowTitle": "Fluxo de trabalho",
|
|
"workflowHelp": "Selecione um fluxo para iniciar com o envelope normalizado do webhook.",
|
|
"workflow": "Fluxo de trabalho",
|
|
"workflowPlaceholder": "Selecione um fluxo",
|
|
"workflowEmpty": "Nenhum fluxo visível neste inquilino. Publique ou exiba um fluxo para usar o manipulador de fluxo.",
|
|
"envelopeTitle": "Envelope de entrada do fluxo",
|
|
"fieldTypes": {
|
|
"string": "string",
|
|
"int": "inteiro",
|
|
"number": "número",
|
|
"boolean": "booleano",
|
|
"enum": "enum",
|
|
"json": "json",
|
|
"ref": "referência"
|
|
}
|
|
},
|
|
"sample": {
|
|
"title": "Payload de exemplo",
|
|
"help": "Capture a próxima solicitação verificada para autocompletar de mapeamento.",
|
|
"createFirst": "Salve o webhook antes de capturar uma solicitação de exemplo.",
|
|
"captureButton": "Capturar solicitação de exemplo",
|
|
"captureActive": "Janela de captura ativa até {{expiresAt}}.",
|
|
"sampleAvailable": "Payload de exemplo capturado.",
|
|
"noSample": "Nenhum exemplo capturado ainda.",
|
|
"captureFailed": "Falha ao ativar a captura de exemplo."
|
|
},
|
|
"sampleTree": {
|
|
"title": "Caminhos de exemplo",
|
|
"help": "Clique em um caminho para inseri-lo em {{field}}.",
|
|
"focusHelp": "Foque em um campo de mapeamento, depois clique em um caminho para inseri-lo.",
|
|
"empty": "Capture um payload de exemplo para explorar campos."
|
|
},
|
|
"mapping": {
|
|
"modeStatic": "Valor estático",
|
|
"modeExpression": "Mapear do payload",
|
|
"unknownReference": "referência desconhecida",
|
|
"loading": "Carregando…",
|
|
"errors": {
|
|
"INVALID_INT": "O valor \"{{value}}\" deve ser um inteiro.",
|
|
"INVALID_NUMBER": "O valor \"{{value}}\" deve ser um número.",
|
|
"INVALID_BOOLEAN": "O valor deve ser \"true\" ou \"false\".",
|
|
"INVALID_JSON": "O valor deve ser JSON válido."
|
|
}
|
|
},
|
|
"deliveryLog": {
|
|
"title": "Registro de entregas",
|
|
"help": "Entregas verificadas recentes para este webhook de entrada.",
|
|
"empty": "Nenhuma entrega registrada ainda.",
|
|
"loadFailed": "Falha ao carregar entregas.",
|
|
"pageSummary": "Página {{page}} de {{total}}",
|
|
"durationMs": "{{duration}} ms",
|
|
"allStatuses": "Todos os status",
|
|
"columns": {
|
|
"received": "Recebido",
|
|
"status": "Status",
|
|
"response": "Resposta",
|
|
"duration": "Duração",
|
|
"actions": "Ações"
|
|
},
|
|
"view": "Ver",
|
|
"status": {
|
|
"pending": "pendente",
|
|
"dispatched": "entregue",
|
|
"duplicate": "duplicado",
|
|
"failed": "falhou"
|
|
}
|
|
},
|
|
"deliveryDetail": {
|
|
"title": "Detalhe da entrega",
|
|
"close": "Fechar",
|
|
"replay": "Repetir",
|
|
"replayConfirm": "Reenviar esta entrega através da configuração atual do webhook? Quaisquer efeitos colaterais (criação de tickets, mudanças de status, etc.) serão executados novamente.",
|
|
"replayFailed": "Falha ao repetir a entrega.",
|
|
"received": "Recebido",
|
|
"status": "Status",
|
|
"responseStatus": "Status da resposta",
|
|
"duration": "Duração",
|
|
"sections": {
|
|
"headers": "Cabeçalhos da solicitação",
|
|
"requestBody": "Corpo da solicitação",
|
|
"responseBody": "Corpo da resposta",
|
|
"handlerOutcome": "Resultado do manipulador"
|
|
}
|
|
},
|
|
"test": {
|
|
"openButton": "Enviar teste",
|
|
"title": "Enviar solicitação de teste",
|
|
"body": "Corpo JSON da solicitação",
|
|
"headers": "Cabeçalhos",
|
|
"cancel": "Cancelar",
|
|
"send": "Enviar teste",
|
|
"sendFailed": "Falha ao enviar a solicitação de teste do webhook."
|
|
}
|
|
},
|
|
"stats": {
|
|
"total": "Total webhooks",
|
|
"active": "Active",
|
|
"autoDisabled": "Auto-disabled"
|
|
},
|
|
"secret": {
|
|
"label": "Signing secret",
|
|
"warning": "This value is shown only now. Store it in the receiver before you navigate away.",
|
|
"copy": "Copiar",
|
|
"copied": "Segredo de assinatura copiado para a área de transferência",
|
|
"copyFailed": "Falha ao copiar o segredo de assinatura para a área de transferência",
|
|
"close": "Fechar",
|
|
"download": "Baixar como .txt"
|
|
},
|
|
"form": {
|
|
"createTitle": "Create Webhook",
|
|
"editTitle": "Edit Webhook",
|
|
"helper": "Retry config is stored as JSON; delivery cadence still uses the platform's standard backoff schedule in v1.",
|
|
"name": "Name",
|
|
"namePlaceholder": "Ticket assignment feed",
|
|
"url": "URL",
|
|
"urlPlaceholder": "https://example.com/hooks/alga",
|
|
"events": "Events",
|
|
"customHeaders": "Custom Headers",
|
|
"customHeadersPlaceholder": "Authorization: Bearer abc123\nX-Source: alga-psa",
|
|
"ticketFilter": "Ticket Filter",
|
|
"ticketFilterPlaceholder": "One ticket UUID per line. Leave blank to receive all matching ticket events.",
|
|
"retryConfig": "Retry Config JSON",
|
|
"verifySsl": "Verify SSL certificates",
|
|
"webhookActive": "Webhook is active",
|
|
"save": "Save Changes",
|
|
"saving": "Saving…",
|
|
"create": "Create Webhook",
|
|
"clear": "Clear",
|
|
"delete": "Delete",
|
|
"payloadFields": "Campos entregues",
|
|
"payloadFieldsHelp": "Todos os campos são enviados por padrão. Desmarque para excluir um campo da entrega. A chave de correlação da entidade (por exemplo, ticket_id) é sempre incluída.",
|
|
"payloadFieldsSelectAll": "Selecionar tudo",
|
|
"payloadFieldsClear": "Limpar"
|
|
},
|
|
"list": {
|
|
"title": "Configured Webhooks",
|
|
"loading": "Loading…",
|
|
"configuredCount": "{{count}} configured",
|
|
"empty": "No webhooks configured yet.",
|
|
"columns": {
|
|
"name": "Name",
|
|
"status": "Status",
|
|
"lastDelivery": "Last Delivery",
|
|
"success": "Success",
|
|
"actions": "Actions"
|
|
},
|
|
"actions": {
|
|
"selected": "Selected",
|
|
"manage": "Manage",
|
|
"pause": "Pause",
|
|
"resume": "Resume",
|
|
"view": "View",
|
|
"edit": "Edit"
|
|
}
|
|
},
|
|
"detail": {
|
|
"summary": "{{total}} deliveries, {{successful}} successful, {{failed}} failed.",
|
|
"sendTest": "Send Test",
|
|
"sending": "Sending…",
|
|
"rotateSecret": "Rotate Secret",
|
|
"rotating": "Rotating…",
|
|
"back": "Back to webhooks"
|
|
},
|
|
"deliveries": {
|
|
"title": "Delivery History",
|
|
"page": "Page {{page}} of {{total}}",
|
|
"empty": "No deliveries recorded yet.",
|
|
"columns": {
|
|
"event": "Event",
|
|
"status": "Status",
|
|
"attempted": "Attempted",
|
|
"response": "Response",
|
|
"action": "Action"
|
|
},
|
|
"testBadge": "Test delivery",
|
|
"attempt": "Attempt {{number}}",
|
|
"noResponseCode": "n/a",
|
|
"noResponseBody": "No response body captured.",
|
|
"retry": "Retry",
|
|
"previous": "Previous",
|
|
"next": "Next"
|
|
},
|
|
"messages": {
|
|
"loadFailed": "Failed to load webhook settings.",
|
|
"loadDeliveriesFailed": "Failed to load webhook deliveries.",
|
|
"saveFailed": "Failed to save webhook.",
|
|
"createSuccess": "Webhook created.",
|
|
"updateSuccess": "Webhook updated.",
|
|
"deleteConfirm": "Delete webhook \"{{name}}\"?",
|
|
"deleteSuccess": "Webhook deleted.",
|
|
"deleteFailed": "Failed to delete webhook.",
|
|
"testSuccess": "Test sent successfully ({{statusCode}}).",
|
|
"testFailed": "Test failed: {{message}}",
|
|
"testRunFailed": "Failed to send webhook test.",
|
|
"unknownError": "Unknown error",
|
|
"secretRotated": "Signing secret rotated.",
|
|
"rotateFailed": "Failed to rotate webhook secret.",
|
|
"resumed": "Webhook resumed.",
|
|
"paused": "Webhook paused.",
|
|
"stateChangeFailed": "Failed to update webhook state.",
|
|
"retryQueued": "Retry queued for event {{eventId}}.",
|
|
"retryFailed": "Failed to retry delivery.",
|
|
"invalidHeaderLine": "Invalid header line: \"{{line}}\"",
|
|
"invalidRetryConfig": "Retry config must be a JSON object"
|
|
},
|
|
"common": {
|
|
"never": "Never"
|
|
},
|
|
"health": {
|
|
"healthy": "healthy",
|
|
"failing": "failing",
|
|
"disabled": "disabled"
|
|
},
|
|
"deliveryStatus": {
|
|
"delivered": "delivered",
|
|
"retrying": "retrying",
|
|
"abandoned": "abandoned",
|
|
"pending": "pending"
|
|
}
|
|
},
|
|
"apiKeys": {
|
|
"rateLimit": {
|
|
"columnTitle": "Rate Limit",
|
|
"loading": "Loading…",
|
|
"summary": "{{maxTokens}} burst / {{refillPerMin}} per min",
|
|
"source": "Source: {{label}}",
|
|
"sourceLabels": {
|
|
"key": "Override",
|
|
"tenant": "Tenant default",
|
|
"default": "System default"
|
|
},
|
|
"remaining": " • Remaining: {{remaining}}/{{maxTokens}}",
|
|
"remainingUnavailable": " • Remaining: unavailable",
|
|
"actions": {
|
|
"edit": "Edit",
|
|
"override": "Override",
|
|
"save": "Save",
|
|
"cancel": "Cancel",
|
|
"reset": "Reset"
|
|
},
|
|
"errors": {
|
|
"saveFailed": "Failed to save API rate limit override.",
|
|
"clearFailed": "Failed to clear API rate limit override."
|
|
}
|
|
},
|
|
"generate": {
|
|
"title": "Gerar chave de API",
|
|
"description": "Descrição",
|
|
"descriptionPlaceholder": "ex.: Chave de API de desenvolvimento",
|
|
"expiration": "Data de expiração (opcional)",
|
|
"submit": "Gerar nova chave de API"
|
|
},
|
|
"list": {
|
|
"title": "Suas chaves de API",
|
|
"searchPlaceholder": "Pesquisar por descrição",
|
|
"filters": {
|
|
"allStatuses": "Todos os status",
|
|
"active": "Ativa",
|
|
"inactive": "Inativa",
|
|
"lastUsedAfter": "Último uso após",
|
|
"expiresBefore": "Expira antes de",
|
|
"reset": "Redefinir"
|
|
},
|
|
"columns": {
|
|
"description": "Descrição",
|
|
"created": "Criada",
|
|
"lastUsed": "Último uso",
|
|
"expires": "Expira",
|
|
"status": "Status",
|
|
"actions": "Ações"
|
|
},
|
|
"never": "Nunca",
|
|
"status": {
|
|
"active": "Ativa",
|
|
"inactive": "Inativa"
|
|
},
|
|
"deactivate": "Desativar"
|
|
},
|
|
"newKeyDialog": {
|
|
"title": "Chave de API gerada",
|
|
"warning": "Copie sua chave de API agora. Por motivos de segurança, ela não será exibida novamente.",
|
|
"copy": "Copiar para a área de transferência",
|
|
"download": "Baixar como .txt",
|
|
"copySuccess": "Chave de API copiada para a área de transferência!",
|
|
"copyFailed": "Falha ao copiar a chave de API para a área de transferência",
|
|
"downloadFailed": "Falha ao baixar a chave de API"
|
|
}
|
|
}
|
|
},
|
|
"platformUpdates": {
|
|
"detail": {
|
|
"back": "Back",
|
|
"labels": {
|
|
"info": "Info",
|
|
"warning": "Warning",
|
|
"destructive": "Critical",
|
|
"success": "Success",
|
|
"default": "Notice"
|
|
}
|
|
}
|
|
},
|
|
"connectSso": {
|
|
"verify": {
|
|
"title": "Proteja a sua conta com SSO",
|
|
"description": "Associe Azure AD ou Google Workspace para reutilizar políticas organizacionais e dispensar pedidos locais de autenticação de dois fatores.",
|
|
"signedInAs": "Sessão iniciada como",
|
|
"currentPassword": "Palavra-passe atual",
|
|
"twoFactorCode": "Código de dois fatores",
|
|
"twoFactorPlaceholder": "123456",
|
|
"verifyCredentials": "Verificar Credenciais",
|
|
"verifying": "A verificar...",
|
|
"reset": "Repor",
|
|
"linkedSuccess": "Fornecedor associado com sucesso.",
|
|
"credentialsVerified": "Credenciais verificadas. Escolha um fornecedor abaixo para concluir a associação da sua conta.",
|
|
"verifyFailed": "Não foi possível verificar as credenciais.",
|
|
"verifyBeforeProvider": "Verifique a sua palavra-passe (e código de dois fatores, se necessário) antes de associar um fornecedor."
|
|
},
|
|
"providers": {
|
|
"title": "Associar um fornecedor",
|
|
"description": "Escolha um fornecedor para concluir a associação SSO. Será redirecionado através do fluxo de autenticação do fornecedor.",
|
|
"noneConfigured": "Não existem fornecedores SSO configurados para este ambiente. Peça ao seu administrador para configurar credenciais Google ou Microsoft.",
|
|
"notConfigured": "Não configurado",
|
|
"branding": {
|
|
"google": "Continuar com Google",
|
|
"microsoft": "Continuar com Microsoft",
|
|
"default": "Continuar"
|
|
}
|
|
},
|
|
"linked": {
|
|
"title": "Contas associadas",
|
|
"description": "Atualizaremos a associação na próxima vez que iniciar sessão através de um fornecedor conectado.",
|
|
"empty": "Ainda não há fornecedores SSO associados. Conclua os passos acima para associar um.",
|
|
"linkedAt": "Associado em {{date}}",
|
|
"lastUsed": "Última utilização em {{date}}",
|
|
"notUsedYet": "Ainda não utilizado"
|
|
}
|
|
}
|
|
}
|