import { type LocaleCode } from "@agent-native/core/client/i18n"; import zhTW from "./i18n/zh-TW"; const enUS = { root: { commandActions: "Actions", commandSearch: "Search", commandAppearance: "Appearance", toggleTheme: "Toggle theme", openAgent: "Open Agent", }, routeTitles: { chat: "Chat — Dispatch", extension: "Extension — Dispatch", extensions: "Extensions — Dispatch", integrations: "Workspace Integrations — Dispatch", settings: "Settings - Dispatch", }, settings: { title: "Settings", description: "Language, workspace, resource, and agent preferences.", languageTitle: "Language", languageDescription: "Choose the interface language. This preference is saved for your account.", languageLabel: "Interface language", workspaceTitle: "Workspace", workspaceDescription: "Manage team access and shared workspace resources for Dispatch.", openTeamSettings: "Open team settings", openResourceSettings: "Open resource settings", automationsTitle: "Automations", automationsDescription: "Review, pause, and create scheduled or event-triggered jobs.", openAutomations: "Open automations", deliveryTitle: "Delivery", deliveryDescription: "Manage message destinations and check the outbound delivery queue.", openDelivery: "Open delivery", agentTitle: "Manage agent", agentDescription: "Manage the agent's model, API keys, voice, and other controls. Use the Automations page for scheduled and event-triggered jobs.", openAgentSettings: "Manage agent", }, integrations: { title: "Integrations", description: "Connect provider accounts once, then grant them to workspace apps.", status: { connected: "Connected", checking: "Checking", needs_reauth: "Needs reauth", error: "Error", disabled: "Disabled", }, readiness: { ready: "Ready", checking: "Checking", needs_credentials: "Needs refs", needs_attention: "Needs attention", disabled: "Disabled", not_configured: "Available", }, grantMode: { "all-apps": "All-app", selected: "Selected", explicit: "Grant", off: "Off", }, time: { neverUsed: "Never used", justNow: "Just now", }, allApps: "All apps", selected: "Selected", selectedApps: "Selected apps", noApps: "No apps", missingKeys: "Missing {{keys}}{{suffix}}", activeConnection_one: "{{count}} active connection", activeConnection_other: "{{count}} active connections", noCredentialRefs: "No credential refs", credentialRefCount_one: "{{count}} credential ref", credentialRefCount_other: "{{count}} credential refs", connect: "Connect", missingRefs: "Missing refs", repair: "Repair", edit: "Edit", delete: "Delete", credentialRefs: "Credential refs", none: "None", scopes: "Scopes", access: "Access", usage: "Usage", requiredRefsMissing: "Required refs missing: {{keys}}", appGrants: "App grants", everyWorkspaceAppCanReuse: "Every workspace app can reuse this account", selectedAppsCanReuse: "{{apps}} can reuse this account", revoke: "Revoke", grant: "Grant", toggleGrantAria: "{{action}} {{app}} access to {{connection}}", editConnection: "Edit connection", newConnection: "New connection", provider: "Provider", refs: "Refs", chooseProvider: "Choose provider", statusLabel: "Status", label: "Label", accountLabel: "Account label", accountLabelPlaceholder: "Acme workspace", accountId: "Account ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "Access mode", allAppsCanReuseConnection: "All workspace apps can reuse this connection", onlySelectedAppsCanReuseConnection: "Only selected apps can reuse this connection", grantAllWorkspaceAppsAria: "Grant this connection to all workspace apps", cancel: "Cancel", saveConnection: "Save connection", credentialRefsDescription: "Reference names only. Secret values remain in Vault or OAuth.", addRef: "Add ref", refName: "Ref name", required: "Required", scope: "Scope", scopeOrg: "Org", scopeWorkspace: "Workspace", scopeUser: "User", credentialRef: "credential ref", removeRefAria: "Remove {{ref}}", missingRequiredRefs: "Missing required refs: {{refs}}", connectionFallback: "connection", providerFallback: "provider", repairConnectionTitle: "Repair {{connection}}", connectProviderTitle: "Connect {{provider}}", loadingSetupPlan: "Loading setup plan...", connectionLabel: "Connection label", providerPlan: "Provider plan", selectedAppsDescription: "Grant only the apps that should reuse this provider account.", allAppsDescription: "Make this connection available to every workspace app.", suggested: "Suggested", remove: "Remove", appGrantAria: "{{action}} {{app}}", chooseOneApp: "Choose at least one app, or switch to all apps.", back: "Back", next: "Next", applyRepair: "Apply repair", createConnection: "Create connection", grantPreview: "Grant preview", grantPreviewAllApps: "Every workspace app can use {{provider}}. Secret values stay in Vault or OAuth.", grantPreviewSelected: "{{apps}} can use {{provider}}. App-specific channels, repos, cursors, and sync rules stay in those apps.", grantPreviewEmpty: "Choose which apps can use {{provider}}, or switch to all apps.", deleteConnection: "Delete connection", deleteConnectionDescription: "This removes {{connection}} and its app grants.", deleteSharedConnectionDescription: "This removes the shared connection and its app grants.", checkingAffectedApps: "Checking affected apps...", allAppConnection: "All-app connection", selectedGrants: "Selected grants", likelyAffected: "Likely affected: {{apps}}{{suffix}}.", noCurrentAppGrants: "No current app grants were found.", connectionUpdated: "Connection updated", connectionCreated: "Connection created", failedToSave: "Failed to save", connectionRepaired: "Connection repaired", failedToApplySetup: "Failed to apply setup", grantAdded: "Grant added", grantRevoked: "Grant revoked", failedToUpdateGrant: "Failed to update grant", connectionDeleted: "Connection deleted", failedToDeleteConnection: "Failed to delete connection", readyProviders: "Ready providers", readyProvidersDetail: "Configured refs and healthy status", connections: "Connections", connectedCount_one: "{{count}} connected", connectedCount_other: "{{count}} connected", appGrantsDetail: "{{allAppCount}} all-app, {{selectedCount}} selected", keyHealth: "Key health", healthy: "Healthy", missingCount_one: "{{count}} missing", missingCount_other: "{{count}} missing", connectionNeedsAttention_one: "{{count}} connection needs attention", connectionNeedsAttention_other: "{{count}} connections need attention", requiredRefsPresent: "Required refs are present", neverUsedCount_one: "{{count}} never used", neverUsedCount_other: "{{count}} never used", allTrackedAccountsHaveUsage: "All tracked accounts have usage", loadingWorkspaceIntegrations: "Loading workspace integrations...", providerCatalog: "Provider catalog", providersAvailable_one: "{{count}} provider available", providersAvailable_other: "{{count}} providers available", connectedAccounts: "Connected accounts", noSharedConnectionsYet: "No shared connections yet", savedConnectionCount_one: "{{count}} saved connection", savedConnectionCount_other: "{{count}} saved connections", noSharedAccountsYet: "No shared accounts yet.", emptyConnectedAccountsDescription: "Pick a provider from the catalog above, save its credential ref names, then grant the shared account to Brain, Analytics, Mail, Dispatch, or another workspace app.", onboardingConnectTitle: "Connect once", onboardingConnectDetail: "Save safe account metadata and credential ref names in Dispatch.", onboardingGrantTitle: "Grant apps", onboardingGrantDetail: "Let Brain, Analytics, Mail, or Dispatch reuse the account.", onboardingLocalTitle: "Keep app setup local", onboardingLocalDetail: "Channels, repos, cursors, and sync rules stay with each app.", onboardingTitle: "Connect once, grant to apps", onboardingDescription: "Dispatch owns shared provider accounts. Each app owns how it uses the account.", }, messaging: { managed: { connectionChecked: "Slack connection checked", workspaceDisconnected: "Slack workspace disconnected", actionFailed: "Slack action failed", channelPolicyUpdated: "Channel policy updated", policyUpdateFailed: "Could not update policy", positiveMonthlyBudget: "Enter a positive monthly budget", channelBudgetSaved: "Channel budget saved", budgetSaveFailed: "Could not save budget", title: "Managed Slack workspaces", description: "OAuth keeps each workspace token isolated and enables native thread context and live task progress.", addToSlack: "Add to Slack", agentManifest: "Agent manifest", agentManifestDescription: "The Agent manifest enables Slack's Agent view and direct messages.", requiredCredentials: "Save the required Slack app credentials below to enable Add to Slack.", workspaceFallback: "Slack workspace", scopesUpdated_one: "{{count}} scope · updated {{date}}", scopesUpdated_other: "{{count}} scopes · updated {{date}}", health: { unknown: "Unknown", healthy: "Healthy", degraded: "Degraded", revoked: "Revoked", }, test: "Test", disconnect: "Disconnect", empty: "No managed workspaces connected yet. Manual credentials remain available below for local and legacy setups.", channelAccessTitle: "Channel access and budgets", channelAccessDescription: "Each channel runs as an isolated service identity. Guest, Slack Connect, and no-mention access stay off until an admin enables them here.", isolatedIdentity: "{{trust}} · isolated service identity", trust: { trusted: "Trusted", guest: "Guest", external_shared: "Slack Connect", unknown: "Unknown", }, requireMention: "Require mention", allowGuests: "Allow guests", allowSlackConnect: "Allow Slack Connect", monthlyBudgetUsd: "Monthly AI budget (USD)", saveBudget: "Save budget", }, }, dispatch: { nav: { automations: "Automations", approvals: "Approvals", delivery: "Delivery", agents: "Agents", vault: "Vault", audit: "Audit", operations: "Operations", agent: "Agent", }, pages: { dataLoadFailed: "Couldn't load data", dataLoadFailedDescription: "Dispatch couldn't load this data.", tryAgain: "Try again", also: "Also", monitoring: "Monitoring", database: "Database", chatAcrossApps: "Chat across your apps", chatAcrossAppsDescription: "Route work, inspect status, or create something new from one place.", overviewPromptPlaceholder: "Ask Dispatch anything...", chatPromptPlaceholder: "Ask Dispatch...", suggestionWorkspaceHealth: "Summarize the current workspace health", suggestionOnboardingApp: "Create an app for onboarding requests", suggestionAnalyticsAgents: "Check which agents can help with analytics", workspaceShortcutsAria: "Workspace shortcuts", deliveryQueue: "Delivery queue", failedLastHour: "{{count}} failed in the last hour", processingCount: "{{count}} processing", queued: "Queued", active: "Active", done1h: "Done 1h", failed1h: "Failed 1h", oldestQueued: "Oldest queued: {{age}}", queueAgeNone: "none", queueFailureHint: "Check credentials, destinations, and recent queue errors.", unknownPlatform: "unknown", attemptsCount: "{{count}} attempts", noErrorMessage: "(no error message)", }, }, }; type Messages = typeof enUS; type PartialMessages = { [K in keyof Messages]?: K extends "messaging" ? { managed?: Partial & Record; } & Record : K extends "dispatch" ? { nav?: Partial & Record; pages?: Partial & Record; } & Record : Partial & Record; }; function mergeMessages(overrides: PartialMessages): Messages { return { root: { ...enUS.root, ...overrides.root }, routeTitles: { ...enUS.routeTitles, ...overrides.routeTitles }, settings: { ...enUS.settings, ...overrides.settings }, integrations: { ...enUS.integrations, ...overrides.integrations, status: { ...enUS.integrations.status, ...overrides.integrations?.status, }, readiness: { ...enUS.integrations.readiness, ...overrides.integrations?.readiness, }, grantMode: { ...enUS.integrations.grantMode, ...overrides.integrations?.grantMode, }, time: { ...enUS.integrations.time, ...overrides.integrations?.time, }, }, messaging: { ...enUS.messaging, ...overrides.messaging, managed: { ...enUS.messaging.managed, ...( overrides.messaging as | { managed?: Record } | undefined )?.managed, health: { ...enUS.messaging.managed.health, ...( overrides.messaging as | { managed?: { health?: Record } } | undefined )?.managed?.health, }, trust: { ...enUS.messaging.managed.trust, ...( overrides.messaging as | { managed?: { trust?: Record } } | undefined )?.managed?.trust, }, }, }, dispatch: { ...enUS.dispatch, ...overrides.dispatch, nav: { ...enUS.dispatch.nav, ...(overrides.dispatch as { nav?: Record } | undefined) ?.nav, }, pages: { ...enUS.dispatch.pages, ...( overrides.dispatch as { pages?: Record } | undefined )?.pages, }, }, }; } export const messagesByLocale = { "en-US": enUS, "zh-TW": mergeMessages(zhTW), "zh-CN": mergeMessages({ routeTitles: { chat: "聊天 — Dispatch", extension: "扩展 — Dispatch", extensions: "扩展 — Dispatch", integrations: "工作区集成 — Dispatch", settings: "设置 - Dispatch", }, root: { commandActions: "操作", commandSearch: "搜索", commandAppearance: "外观", toggleTheme: "切换主题", openAgent: "打开代理", }, settings: { title: "设置", description: "语言、工作区、资源和代理偏好设置。", languageTitle: "语言", languageDescription: "选择界面语言。此偏好会保存到你的账户。", languageLabel: "界面语言", workspaceTitle: "工作区", workspaceDescription: "管理 Dispatch 的团队访问权限和共享工作区资源。", openTeamSettings: "打开团队设置", openResourceSettings: "打开资源设置", automationsTitle: "自动化", automationsDescription: "查看、暂停并创建定时或事件触发的任务。", openAutomations: "打开自动化", deliveryTitle: "投递", deliveryDescription: "管理消息目的地并查看出站投递队列。", openDelivery: "打开投递", agentTitle: "管理代理", agentDescription: "管理代理的模型、API 密钥、语音和其他控制项。定时与事件触发的任务请使用自动化页面。", openAgentSettings: "管理代理", }, integrations: { title: "集成", description: "连接一次提供商账户,然后授权给工作区应用使用。", status: { connected: "已连接", checking: "检查中", needs_reauth: "需要重新授权", error: "错误", disabled: "已停用", }, readiness: { ready: "就绪", checking: "检查中", needs_credentials: "需要引用", needs_attention: "需要处理", disabled: "已停用", not_configured: "可用", }, grantMode: { "all-apps": "所有应用", selected: "已选择", explicit: "授权", off: "关闭", }, time: { neverUsed: "从未使用", justNow: "刚刚", }, allApps: "所有应用", selected: "已选择", selectedApps: "已选择的应用", noApps: "无应用", missingKeys: "缺少 {{keys}}{{suffix}}", activeConnection_one: "{{count}} 个活跃连接", activeConnection_other: "{{count}} 个活跃连接", noCredentialRefs: "无凭据引用", credentialRefCount_one: "{{count}} 个凭据引用", credentialRefCount_other: "{{count}} 个凭据引用", connect: "连接", missingRefs: "缺少引用", repair: "修复", edit: "编辑", delete: "删除", credentialRefs: "凭据引用", none: "无", scopes: "范围", access: "访问权限", usage: "使用情况", requiredRefsMissing: "缺少必需引用:{{keys}}", appGrants: "应用授权", everyWorkspaceAppCanReuse: "每个工作区应用都可以复用此账户", selectedAppsCanReuse: "{{apps}} 可以复用此账户", revoke: "撤销", grant: "授权", toggleGrantAria: "{{action}} {{app}} 对 {{connection}} 的访问权限", editConnection: "编辑连接", newConnection: "新建连接", provider: "提供商", refs: "引用", chooseProvider: "选择提供商", statusLabel: "状态", label: "标签", accountLabel: "账户标签", accountLabelPlaceholder: "Acme 工作区", accountId: "账户 ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "访问模式", allAppsCanReuseConnection: "所有工作区应用都可以复用此连接", onlySelectedAppsCanReuseConnection: "只有选中的应用可以复用此连接", grantAllWorkspaceAppsAria: "将此连接授权给所有工作区应用", cancel: "取消", saveConnection: "保存连接", credentialRefsDescription: "仅保存引用名称。密钥值保留在 Vault 或 OAuth 中。", addRef: "添加引用", refName: "引用名称", required: "必需", scope: "范围", scopeOrg: "组织", scopeWorkspace: "工作区", scopeUser: "用户", credentialRef: "凭据引用", removeRefAria: "移除 {{ref}}", missingRequiredRefs: "缺少必需引用:{{refs}}", connectionFallback: "连接", providerFallback: "提供商", repairConnectionTitle: "修复 {{connection}}", connectProviderTitle: "连接 {{provider}}", loadingSetupPlan: "正在加载设置方案...", connectionLabel: "连接标签", providerPlan: "提供商方案", selectedAppsDescription: "仅授权应复用此提供商账户的应用。", allAppsDescription: "让每个工作区应用都可以使用此连接。", suggested: "建议", remove: "移除", appGrantAria: "{{action}} {{app}}", chooseOneApp: "请选择至少一个应用,或切换到所有应用。", back: "返回", next: "下一步", applyRepair: "应用修复", createConnection: "创建连接", grantPreview: "授权预览", grantPreviewAllApps: "每个工作区应用都可以使用 {{provider}}。密钥值保留在 Vault 或 OAuth 中。", grantPreviewSelected: "{{apps}} 可以使用 {{provider}}。应用专属的渠道、仓库、游标和同步规则仍保留在各应用中。", grantPreviewEmpty: "选择哪些应用可以使用 {{provider}},或切换到所有应用。", deleteConnection: "删除连接", deleteConnectionDescription: "这会移除 {{connection}} 及其应用授权。", deleteSharedConnectionDescription: "这会移除共享连接及其应用授权。", checkingAffectedApps: "正在检查受影响的应用...", allAppConnection: "所有应用连接", selectedGrants: "已选择的授权", likelyAffected: "可能受影响:{{apps}}{{suffix}}。", noCurrentAppGrants: "未找到当前应用授权。", connectionUpdated: "连接已更新", connectionCreated: "连接已创建", failedToSave: "保存失败", connectionRepaired: "连接已修复", failedToApplySetup: "应用设置失败", grantAdded: "授权已添加", grantRevoked: "授权已撤销", failedToUpdateGrant: "更新授权失败", connectionDeleted: "连接已删除", failedToDeleteConnection: "删除连接失败", readyProviders: "就绪提供商", readyProvidersDetail: "引用已配置且状态正常", connections: "连接", connectedCount_one: "{{count}} 个已连接", connectedCount_other: "{{count}} 个已连接", appGrantsDetail: "{{allAppCount}} 个所有应用,{{selectedCount}} 个已选择", keyHealth: "密钥健康度", healthy: "健康", missingCount_one: "缺少 {{count}} 个", missingCount_other: "缺少 {{count}} 个", connectionNeedsAttention_one: "{{count}} 个连接需要处理", connectionNeedsAttention_other: "{{count}} 个连接需要处理", requiredRefsPresent: "必需引用均已存在", neverUsedCount_one: "{{count}} 个从未使用", neverUsedCount_other: "{{count}} 个从未使用", allTrackedAccountsHaveUsage: "所有跟踪账户都有使用记录", loadingWorkspaceIntegrations: "正在加载工作区集成...", providerCatalog: "提供商目录", providersAvailable_one: "{{count}} 个提供商可用", providersAvailable_other: "{{count}} 个提供商可用", connectedAccounts: "已连接账户", noSharedConnectionsYet: "还没有共享连接", savedConnectionCount_one: "{{count}} 个已保存连接", savedConnectionCount_other: "{{count}} 个已保存连接", noSharedAccountsYet: "还没有共享账户。", emptyConnectedAccountsDescription: "从上方目录选择提供商,保存其凭据引用名称,然后将共享账户授权给 Brain、Analytics、Mail、Dispatch 或其他工作区应用。", onboardingConnectTitle: "连接一次", onboardingConnectDetail: "在 Dispatch 中保存安全账户元数据和凭据引用名称。", onboardingGrantTitle: "授权应用", onboardingGrantDetail: "让 Brain、Analytics、Mail 或 Dispatch 复用该账户。", onboardingLocalTitle: "保留应用本地设置", onboardingLocalDetail: "渠道、仓库、游标和同步规则保留在各自应用中。", onboardingTitle: "连接一次,授权给应用", onboardingDescription: "Dispatch 管理共享提供商账户。每个应用管理自己如何使用该账户。", }, messaging: { managed: { connectionChecked: "Slack 连接已检查", workspaceDisconnected: "Slack 工作区已断开连接", actionFailed: "Slack 操作失败", channelPolicyUpdated: "频道策略已更新", policyUpdateFailed: "无法更新策略", positiveMonthlyBudget: "请输入大于零的每月预算", channelBudgetSaved: "频道预算已保存", budgetSaveFailed: "无法保存预算", title: "托管的 Slack 工作区", description: "OAuth 会隔离每个工作区的令牌,并启用原生线程上下文和实时任务进度。", addToSlack: "添加到 Slack", agentManifest: "Agent 清单", agentManifestDescription: "Agent 清单会启用 Slack 的 Agent 视图和私信。", requiredCredentials: "请先在下方保存必需的 Slack 应用凭据,以启用添加到 Slack。", workspaceFallback: "Slack 工作区", scopesUpdated_other: "{{count}} 个范围 · 更新于 {{date}}", health: { unknown: "未知", healthy: "正常", degraded: "降级", revoked: "已撤销", }, test: "测试", disconnect: "断开连接", empty: "尚未连接托管工作区。下方仍提供手动凭据,供本地和旧版设置使用。", channelAccessTitle: "频道访问和预算", channelAccessDescription: "每个频道都以隔离的服务身份运行。访客、Slack Connect 和无需提及的访问默认关闭,直到管理员在此启用。", isolatedIdentity: "{{trust}} · 隔离的服务身份", trust: { trusted: "受信任", guest: "访客", external_shared: "外部共享 (Slack Connect)", unknown: "未知", }, requireMention: "需要提及", allowGuests: "允许访客", allowSlackConnect: "允许 Slack Connect", monthlyBudgetUsd: "每月 AI 预算(美元)", saveBudget: "保存预算", }, }, dispatch: { nav: { automations: "自动化", approvals: "批准", delivery: "投递", agents: "代理", vault: "保险库", audit: "审计", operations: "运营", agent: "代理", }, pages: { dataLoadFailed: "无法加载数据", dataLoadFailedDescription: "Dispatch 无法加载这些数据。", tryAgain: "重试", also: "还有", monitoring: "监控", database: "数据库", chatAcrossApps: "跨应用聊天", chatAcrossAppsDescription: "在一个地方分派工作、检查状态或创建新内容。", overviewPromptPlaceholder: "向 Dispatch 提问...", chatPromptPlaceholder: "询问 Dispatch...", suggestionWorkspaceHealth: "总结当前工作区运行状况", suggestionOnboardingApp: "为入职请求创建一个应用", suggestionAnalyticsAgents: "查看哪些代理可以协助分析", workspaceShortcutsAria: "工作区快捷入口", deliveryQueue: "投递队列", failedLastHour: "过去一小时失败 {{count}} 次", processingCount: "{{count}} 个处理中", queued: "排队中", active: "进行中", done1h: "完成 1 小时", failed1h: "失败 1 小时", oldestQueued: "最早排队:{{age}}", queueAgeNone: "无", queueFailureHint: "请检查凭据、目的地和最近的队列错误。", unknownPlatform: "未知", attemptsCount: "{{count}} 次尝试", noErrorMessage: "(无错误消息)", }, }, }), "es-ES": mergeMessages({ routeTitles: { chat: "Conversación — Dispatch", extension: "Extensión — Dispatch", extensions: "Extensiones — Dispatch", integrations: "Integraciones del espacio de trabajo — Dispatch", settings: "Ajustes - Dispatch", }, root: { commandActions: "Acciones", commandSearch: "Buscar", commandAppearance: "Apariencia", toggleTheme: "Cambiar tema", openAgent: "Abrir agente", }, settings: { title: "Ajustes", description: "Preferencias de idioma, espacio de trabajo, recursos y agente.", languageTitle: "Idioma", languageDescription: "Elige el idioma de la interfaz. Esta preferencia se guarda en tu cuenta.", languageLabel: "Idioma de la interfaz", workspaceTitle: "Espacio de trabajo", workspaceDescription: "Gestiona el acceso del equipo y los recursos compartidos de Dispatch.", openTeamSettings: "Abrir ajustes del equipo", openResourceSettings: "Abrir ajustes de recursos", automationsTitle: "Automatizaciones", automationsDescription: "Revisa, pausa y crea trabajos programados o activados por eventos.", openAutomations: "Abrir automatizaciones", deliveryTitle: "Entrega", deliveryDescription: "Gestiona destinos de mensajes y revisa la cola de entrega saliente.", openDelivery: "Abrir entrega", agentTitle: "Gestionar agente", agentDescription: "Gestiona el modelo del agente, claves API, voz y otros controles. Usa la página de Automatizaciones para trabajos programados y activados por eventos.", openAgentSettings: "Gestionar agente", }, integrations: { title: "Integraciones", description: "Conecta cuentas de proveedores una vez y concédelas a las apps del espacio de trabajo.", status: { connected: "Conectado", checking: "Comprobando", needs_reauth: "Necesita reautenticación", error: "Error", disabled: "Desactivado", }, readiness: { ready: "Listo", checking: "Comprobando", needs_credentials: "Necesita referencias", needs_attention: "Necesita atención", disabled: "Desactivado", not_configured: "Disponible", }, grantMode: { "all-apps": "Todas las apps", selected: "Seleccionado", explicit: "Concesión", off: "Desactivado", }, time: { neverUsed: "Nunca usado", justNow: "Ahora mismo", }, allApps: "Todas las apps", selected: "Seleccionado", selectedApps: "Apps seleccionadas", noApps: "Sin apps", missingKeys: "Faltan {{keys}}{{suffix}}", activeConnection_one: "{{count}} conexión activa", activeConnection_other: "{{count}} conexiones activas", activeConnection_many: "{{count}} conexiones activas", noCredentialRefs: "Sin referencias de credenciales", credentialRefCount_one: "{{count}} referencia de credencial", credentialRefCount_other: "{{count}} referencias de credenciales", credentialRefCount_many: "{{count}} referencias de credenciales", connect: "Conectar", missingRefs: "Faltan referencias", repair: "Reparar", edit: "Editar", delete: "Eliminar", credentialRefs: "Referencias de credenciales", none: "Ninguno", scopes: "Ámbitos", access: "Acceso", usage: "Uso", requiredRefsMissing: "Faltan referencias obligatorias: {{keys}}", appGrants: "Concesiones de apps", everyWorkspaceAppCanReuse: "Todas las apps del espacio de trabajo pueden reutilizar esta cuenta", selectedAppsCanReuse: "{{apps}} pueden reutilizar esta cuenta", revoke: "Revocar", grant: "Conceder", toggleGrantAria: "{{action}} acceso de {{app}} a {{connection}}", editConnection: "Editar conexión", newConnection: "Nueva conexión", provider: "Proveedor", refs: "Refs", chooseProvider: "Elige proveedor", statusLabel: "Estado", label: "Etiqueta", accountLabel: "Etiqueta de cuenta", accountLabelPlaceholder: "Espacio de trabajo Acme", accountId: "ID de cuenta", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "Modo de acceso", allAppsCanReuseConnection: "Todas las apps del espacio de trabajo pueden reutilizar esta conexión", onlySelectedAppsCanReuseConnection: "Solo las apps seleccionadas pueden reutilizar esta conexión", grantAllWorkspaceAppsAria: "Conceder esta conexión a todas las apps del espacio de trabajo", cancel: "Cancelar", saveConnection: "Guardar conexión", credentialRefsDescription: "Solo nombres de referencia. Los valores secretos permanecen en Vault u OAuth.", addRef: "Añadir ref", refName: "Nombre de ref", required: "Obligatorio", scope: "Ámbito", scopeOrg: "Org", scopeWorkspace: "Espacio de trabajo", scopeUser: "Usuario", credentialRef: "referencia de credencial", removeRefAria: "Eliminar {{ref}}", missingRequiredRefs: "Faltan referencias obligatorias: {{refs}}", connectionFallback: "conexión", providerFallback: "proveedor", repairConnectionTitle: "Reparar {{connection}}", connectProviderTitle: "Conectar {{provider}}", loadingSetupPlan: "Cargando plan de configuración...", connectionLabel: "Etiqueta de conexión", providerPlan: "Plan del proveedor", selectedAppsDescription: "Concede solo las apps que deben reutilizar esta cuenta del proveedor.", allAppsDescription: "Haz que esta conexión esté disponible para todas las apps del espacio de trabajo.", suggested: "Sugerido", remove: "Quitar", appGrantAria: "{{action}} {{app}}", chooseOneApp: "Elige al menos una app o cambia a todas las apps.", back: "Atrás", next: "Siguiente", applyRepair: "Aplicar reparación", createConnection: "Crear conexión", grantPreview: "Vista previa de concesión", grantPreviewAllApps: "Todas las apps del espacio de trabajo pueden usar {{provider}}. Los valores secretos permanecen en Vault u OAuth.", grantPreviewSelected: "{{apps}} pueden usar {{provider}}. Los canales, repos, cursores y reglas de sincronización específicos de cada app permanecen en esas apps.", grantPreviewEmpty: "Elige qué apps pueden usar {{provider}} o cambia a todas las apps.", deleteConnection: "Eliminar conexión", deleteConnectionDescription: "Esto elimina {{connection}} y sus concesiones de apps.", deleteSharedConnectionDescription: "Esto elimina la conexión compartida y sus concesiones de apps.", checkingAffectedApps: "Comprobando apps afectadas...", allAppConnection: "Conexión para todas las apps", selectedGrants: "Concesiones seleccionadas", likelyAffected: "Probablemente afectadas: {{apps}}{{suffix}}.", noCurrentAppGrants: "No se encontraron concesiones de apps actuales.", connectionUpdated: "Conexión actualizada", connectionCreated: "Conexión creada", failedToSave: "No se pudo guardar", connectionRepaired: "Conexión reparada", failedToApplySetup: "No se pudo aplicar la configuración", grantAdded: "Concesión añadida", grantRevoked: "Concesión revocada", failedToUpdateGrant: "No se pudo actualizar la concesión", connectionDeleted: "Conexión eliminada", failedToDeleteConnection: "No se pudo eliminar la conexión", readyProviders: "Proveedores listos", readyProvidersDetail: "Referencias configuradas y estado correcto", connections: "Conexiones", connectedCount_one: "{{count}} conectada", connectedCount_other: "{{count}} conectadas", connectedCount_many: "{{count}} conectadas", appGrantsDetail: "{{allAppCount}} todas las apps, {{selectedCount}} seleccionadas", keyHealth: "Estado de claves", healthy: "Correcto", missingCount_one: "Falta {{count}}", missingCount_other: "Faltan {{count}}", missingCount_many: "Faltan {{count}}", connectionNeedsAttention_one: "{{count}} conexión necesita atención", connectionNeedsAttention_other: "{{count}} conexiones necesitan atención", connectionNeedsAttention_many: "{{count}} conexiones necesitan atención", requiredRefsPresent: "Las referencias obligatorias están presentes", neverUsedCount_one: "{{count}} nunca usada", neverUsedCount_other: "{{count}} nunca usadas", neverUsedCount_many: "{{count}} nunca usadas", allTrackedAccountsHaveUsage: "Todas las cuentas rastreadas tienen uso", loadingWorkspaceIntegrations: "Cargando integraciones del espacio de trabajo...", providerCatalog: "Catálogo de proveedores", providersAvailable_one: "{{count}} proveedor disponible", providersAvailable_other: "{{count}} proveedores disponibles", providersAvailable_many: "{{count}} proveedores disponibles", connectedAccounts: "Cuentas conectadas", noSharedConnectionsYet: "Aún no hay conexiones compartidas", savedConnectionCount_one: "{{count}} conexión guardada", savedConnectionCount_other: "{{count}} conexiones guardadas", savedConnectionCount_many: "{{count}} conexiones guardadas", noSharedAccountsYet: "Aún no hay cuentas compartidas.", emptyConnectedAccountsDescription: "Elige un proveedor del catálogo anterior, guarda sus nombres de referencia de credencial y concede la cuenta compartida a Brain, Analytics, Mail, Dispatch u otra app del espacio de trabajo.", onboardingConnectTitle: "Conectar una vez", onboardingConnectDetail: "Guarda metadatos seguros de cuenta y nombres de referencia de credenciales en Dispatch.", onboardingGrantTitle: "Conceder apps", onboardingGrantDetail: "Permite que Brain, Analytics, Mail o Dispatch reutilicen la cuenta.", onboardingLocalTitle: "Mantener la configuración en cada app", onboardingLocalDetail: "Los canales, repos, cursores y reglas de sincronización permanecen en cada app.", onboardingTitle: "Conecta una vez, concede a apps", onboardingDescription: "Dispatch posee las cuentas compartidas de proveedores. Cada app posee cómo usa la cuenta.", }, messaging: { managed: { connectionChecked: "Conexión de Slack comprobada", workspaceDisconnected: "Espacio de trabajo de Slack desconectado", actionFailed: "La acción de Slack falló", channelPolicyUpdated: "Política del canal actualizada", policyUpdateFailed: "No se pudo actualizar la política", positiveMonthlyBudget: "Introduce un presupuesto mensual positivo", channelBudgetSaved: "Presupuesto del canal guardado", budgetSaveFailed: "No se pudo guardar el presupuesto", title: "Espacios de trabajo de Slack gestionados", description: "OAuth mantiene aislado el token de cada espacio de trabajo y habilita el contexto nativo de hilos y el progreso de tareas en vivo.", addToSlack: "Añadir a Slack", agentManifest: "Manifiesto del agente", agentManifestDescription: "El manifiesto del agente habilita la vista de agente y los mensajes directos de Slack.", requiredCredentials: "Guarda abajo las credenciales obligatorias de la app de Slack para habilitar Añadir a Slack.", workspaceFallback: "Espacio de trabajo de Slack", scopesUpdated_one: "{{count}} ámbito · actualizado el {{date}}", scopesUpdated_other: "{{count}} ámbitos · actualizados el {{date}}", scopesUpdated_many: "{{count}} ámbitos · actualizados el {{date}}", health: { unknown: "Desconocido", healthy: "Correcto", degraded: "Degradado", revoked: "Revocado", }, test: "Probar", disconnect: "Desconectar", empty: "Aún no hay espacios de trabajo gestionados conectados. Las credenciales manuales siguen disponibles abajo para configuraciones locales y antiguas.", channelAccessTitle: "Acceso y presupuestos del canal", channelAccessDescription: "Cada canal se ejecuta con una identidad de servicio aislada. El acceso para invitados, Slack Connect y sin mención permanece desactivado hasta que un administrador lo habilite aquí.", isolatedIdentity: "{{trust}} · identidad de servicio aislada", trust: { trusted: "De confianza", guest: "Invitado", external_shared: "Uso compartido externo (Slack Connect)", unknown: "Desconocido", }, requireMention: "Requerir mención", allowGuests: "Permitir invitados", allowSlackConnect: "Permitir Slack Connect", monthlyBudgetUsd: "Presupuesto mensual de IA (USD)", saveBudget: "Guardar presupuesto", }, }, dispatch: { nav: { automations: "Automatizaciones", approvals: "Aprobaciones", delivery: "Entrega", agents: "Agentes", vault: "Bóveda", audit: "Auditoría", operations: "Operaciones", agent: "Agente", }, pages: { dataLoadFailed: "No se pudieron cargar los datos", dataLoadFailedDescription: "Dispatch no pudo cargar estos datos.", tryAgain: "Intentar de nuevo", also: "También", monitoring: "Monitorización", database: "Base de datos", chatAcrossApps: "Chatea con todas tus aplicaciones", chatAcrossAppsDescription: "Dirige el trabajo, revisa el estado o crea algo nuevo desde un solo lugar.", overviewPromptPlaceholder: "Pregunta lo que quieras a Dispatch...", chatPromptPlaceholder: "Pregunta a Dispatch...", suggestionWorkspaceHealth: "Resume el estado actual del espacio de trabajo", suggestionOnboardingApp: "Crea una app para solicitudes de incorporación", suggestionAnalyticsAgents: "Comprueba qué agentes pueden ayudar con analítica", workspaceShortcutsAria: "Accesos directos del espacio de trabajo", deliveryQueue: "Cola de entrega", failedLastHour: "{{count}} fallos en la última hora", processingCount: "{{count}} en proceso", queued: "En cola", active: "Activo", done1h: "Hecho 1 h", failed1h: "Fallido 1 h", oldestQueued: "Más antiguo en cola: {{age}}", queueAgeNone: "ninguno", queueFailureHint: "Revisa las credenciales, los destinos y los errores recientes de la cola.", unknownPlatform: "desconocido", attemptsCount: "{{count}} intentos", noErrorMessage: "(sin mensaje de error)", }, }, }), "fr-FR": mergeMessages({ routeTitles: { chat: "Discussion — Dispatch", extension: "Module complémentaire — Dispatch", extensions: "Modules complémentaires — Dispatch", integrations: "Intégrations de l’espace de travail — Dispatch", settings: "Paramètres - Dispatch", }, root: { commandActions: "Actions", commandSearch: "Rechercher", commandAppearance: "Apparence", toggleTheme: "Changer de thème", openAgent: "Ouvrir l’agent", }, settings: { title: "Paramètres", description: "Préférences de langue, d’espace de travail, de ressources et d’agent.", languageTitle: "Langue", languageDescription: "Choisissez la langue de l’interface. Cette préférence est enregistrée dans votre compte.", languageLabel: "Langue de l’interface", workspaceTitle: "Espace de travail", workspaceDescription: "Gérez l’accès de l’équipe et les ressources partagées de Dispatch.", openTeamSettings: "Ouvrir les paramètres d’équipe", openResourceSettings: "Ouvrir les paramètres des ressources", automationsTitle: "Automatisations", automationsDescription: "Consultez, mettez en pause et créez des tâches planifiées ou déclenchées par des événements.", openAutomations: "Ouvrir les automatisations", deliveryTitle: "Livraison", deliveryDescription: "Gérez les destinations de messages et consultez la file d’attente sortante.", openDelivery: "Ouvrir la livraison", agentTitle: "Gérer l’agent", agentDescription: "Gérez le modèle de l’agent, les clés API, la voix et les autres contrôles. Utilisez la page Automatisations pour les tâches planifiées et déclenchées par des événements.", openAgentSettings: "Gérer l’agent", }, integrations: { title: "Intégrations", description: "Connectez les comptes fournisseurs une fois, puis accordez-les aux apps de l’espace de travail.", status: { connected: "Connecté", checking: "Vérification", needs_reauth: "Réauthentification requise", error: "Erreur", disabled: "Désactivé", }, readiness: { ready: "Prêt", checking: "Vérification", needs_credentials: "Références requises", needs_attention: "Attention requise", disabled: "Désactivé", not_configured: "Disponible", }, grantMode: { "all-apps": "Toutes les apps", selected: "Sélectionné", explicit: "Accord", off: "Désactivé", }, time: { neverUsed: "Jamais utilisé", justNow: "À l’instant" }, allApps: "Toutes les apps", selected: "Sélectionné", selectedApps: "Apps sélectionnées", noApps: "Aucune app", missingKeys: "{{keys}}{{suffix}} manquants", activeConnection_one: "{{count}} connexion active", activeConnection_other: "{{count}} connexions actives", activeConnection_many: "{{count}} connexions actives", noCredentialRefs: "Aucune référence d’identifiants", credentialRefCount_one: "{{count}} référence d’identifiants", credentialRefCount_other: "{{count}} références d’identifiants", credentialRefCount_many: "{{count}} références d’identifiants", connect: "Connecter", missingRefs: "Références manquantes", repair: "Réparer", edit: "Modifier", delete: "Supprimer", credentialRefs: "Références d’identifiants", none: "Aucun", scopes: "Portées", access: "Accès", usage: "Utilisation", requiredRefsMissing: "Références obligatoires manquantes : {{keys}}", appGrants: "Accords d’apps", everyWorkspaceAppCanReuse: "Chaque app de l’espace de travail peut réutiliser ce compte", selectedAppsCanReuse: "{{apps}} peuvent réutiliser ce compte", revoke: "Révoquer", grant: "Accorder", toggleGrantAria: "{{action}} l’accès de {{app}} à {{connection}}", editConnection: "Modifier la connexion", newConnection: "Nouvelle connexion", provider: "Fournisseur", refs: "Réfs", chooseProvider: "Choisir un fournisseur", statusLabel: "État", label: "Libellé", accountLabel: "Libellé du compte", accountLabelPlaceholder: "Espace de travail Acme", accountId: "ID de compte", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "Mode d’accès", allAppsCanReuseConnection: "Toutes les apps de l’espace de travail peuvent réutiliser cette connexion", onlySelectedAppsCanReuseConnection: "Seules les apps sélectionnées peuvent réutiliser cette connexion", grantAllWorkspaceAppsAria: "Accorder cette connexion à toutes les apps de l’espace de travail", cancel: "Annuler", saveConnection: "Enregistrer la connexion", credentialRefsDescription: "Noms de référence uniquement. Les valeurs secrètes restent dans Vault ou OAuth.", addRef: "Ajouter une réf", refName: "Nom de réf", required: "Obligatoire", scope: "Portée", scopeOrg: "Org", scopeWorkspace: "Espace de travail", scopeUser: "Utilisateur", credentialRef: "référence d’identifiants", removeRefAria: "Supprimer {{ref}}", missingRequiredRefs: "Références obligatoires manquantes : {{refs}}", connectionFallback: "connexion", providerFallback: "fournisseur", repairConnectionTitle: "Réparer {{connection}}", connectProviderTitle: "Connecter {{provider}}", loadingSetupPlan: "Chargement du plan de configuration...", connectionLabel: "Libellé de connexion", providerPlan: "Plan du fournisseur", selectedAppsDescription: "Accordez uniquement les apps qui doivent réutiliser ce compte fournisseur.", allAppsDescription: "Rendre cette connexion disponible pour chaque app de l’espace de travail.", suggested: "Suggéré", remove: "Retirer", appGrantAria: "{{action}} {{app}}", chooseOneApp: "Choisissez au moins une app ou passez à toutes les apps.", back: "Retour", next: "Suivant", applyRepair: "Appliquer la réparation", createConnection: "Créer la connexion", grantPreview: "Aperçu de l’accord", grantPreviewAllApps: "Chaque app de l’espace de travail peut utiliser {{provider}}. Les valeurs secrètes restent dans Vault ou OAuth.", grantPreviewSelected: "{{apps}} peuvent utiliser {{provider}}. Les canaux, dépôts, curseurs et règles de synchronisation propres aux apps restent dans ces apps.", grantPreviewEmpty: "Choisissez les apps pouvant utiliser {{provider}}, ou passez à toutes les apps.", deleteConnection: "Supprimer la connexion", deleteConnectionDescription: "Cela supprime {{connection}} et ses accords d’apps.", deleteSharedConnectionDescription: "Cela supprime la connexion partagée et ses accords d’apps.", checkingAffectedApps: "Vérification des apps affectées...", allAppConnection: "Connexion toutes apps", selectedGrants: "Accords sélectionnés", likelyAffected: "Probablement affectées : {{apps}}{{suffix}}.", noCurrentAppGrants: "Aucun accord d’app actuel trouvé.", connectionUpdated: "Connexion mise à jour", connectionCreated: "Connexion créée", failedToSave: "Échec de l’enregistrement", connectionRepaired: "Connexion réparée", failedToApplySetup: "Échec de l’application de la configuration", grantAdded: "Accord ajouté", grantRevoked: "Accord révoqué", failedToUpdateGrant: "Échec de la mise à jour de l’accord", connectionDeleted: "Connexion supprimée", failedToDeleteConnection: "Échec de la suppression de la connexion", readyProviders: "Fournisseurs prêts", readyProvidersDetail: "Références configurées et état sain", connections: "Connexions", connectedCount_one: "{{count}} connectée", connectedCount_other: "{{count}} connectées", connectedCount_many: "{{count}} connectées", appGrantsDetail: "{{allAppCount}} toutes apps, {{selectedCount}} sélectionnées", keyHealth: "Santé des clés", healthy: "Sain", missingCount_one: "{{count}} manquant", missingCount_other: "{{count}} manquants", missingCount_many: "{{count}} manquants", connectionNeedsAttention_one: "{{count}} connexion nécessite attention", connectionNeedsAttention_other: "{{count}} connexions nécessitent attention", connectionNeedsAttention_many: "{{count}} connexions nécessitent attention", requiredRefsPresent: "Les références obligatoires sont présentes", neverUsedCount_one: "{{count}} jamais utilisée", neverUsedCount_other: "{{count}} jamais utilisées", neverUsedCount_many: "{{count}} jamais utilisées", allTrackedAccountsHaveUsage: "Tous les comptes suivis ont une utilisation", loadingWorkspaceIntegrations: "Chargement des intégrations de l’espace de travail...", providerCatalog: "Catalogue de fournisseurs", providersAvailable_one: "{{count}} fournisseur disponible", providersAvailable_other: "{{count}} fournisseurs disponibles", providersAvailable_many: "{{count}} fournisseurs disponibles", connectedAccounts: "Comptes connectés", noSharedConnectionsYet: "Aucune connexion partagée pour l’instant", savedConnectionCount_one: "{{count}} connexion enregistrée", savedConnectionCount_other: "{{count}} connexions enregistrées", savedConnectionCount_many: "{{count}} connexions enregistrées", noSharedAccountsYet: "Aucun compte partagé pour l’instant.", emptyConnectedAccountsDescription: "Choisissez un fournisseur dans le catalogue ci-dessus, enregistrez ses noms de référence d’identifiants, puis accordez le compte partagé à Brain, Analytics, Mail, Dispatch ou une autre app de l’espace de travail.", onboardingConnectTitle: "Connecter une fois", onboardingConnectDetail: "Enregistrez les métadonnées sûres du compte et les noms de référence d’identifiants dans Dispatch.", onboardingGrantTitle: "Accorder aux apps", onboardingGrantDetail: "Permettez à Brain, Analytics, Mail ou Dispatch de réutiliser le compte.", onboardingLocalTitle: "Garder la configuration dans chaque app", onboardingLocalDetail: "Les canaux, dépôts, curseurs et règles de synchronisation restent dans chaque app.", onboardingTitle: "Connecter une fois, accorder aux apps", onboardingDescription: "Dispatch possède les comptes fournisseurs partagés. Chaque app possède la façon dont elle utilise le compte.", }, messaging: { managed: { connectionChecked: "Connexion Slack vérifiée", workspaceDisconnected: "Espace de travail Slack déconnecté", actionFailed: "Échec de l’action Slack", channelPolicyUpdated: "Politique du canal mise à jour", policyUpdateFailed: "Impossible de mettre à jour la politique", positiveMonthlyBudget: "Saisissez un budget mensuel positif", channelBudgetSaved: "Budget du canal enregistré", budgetSaveFailed: "Impossible d’enregistrer le budget", title: "Espaces de travail Slack gérés", description: "OAuth isole le jeton de chaque espace de travail et active le contexte natif des fils ainsi que la progression des tâches en direct.", addToSlack: "Ajouter à Slack", agentManifest: "Manifeste de l’agent", agentManifestDescription: "Le manifeste de l’agent active la vue Agent et les messages directs de Slack.", requiredCredentials: "Enregistrez ci-dessous les identifiants requis de l’app Slack pour activer Ajouter à Slack.", workspaceFallback: "Espace de travail Slack", scopesUpdated_one: "{{count}} portée · mise à jour le {{date}}", scopesUpdated_other: "{{count}} portées · mises à jour le {{date}}", scopesUpdated_many: "{{count}} portées · mises à jour le {{date}}", health: { unknown: "Inconnu", healthy: "Sain", degraded: "Dégradé", revoked: "Révoqué", }, test: "Tester", disconnect: "Déconnecter", empty: "Aucun espace de travail géré n’est encore connecté. Les identifiants manuels restent disponibles ci-dessous pour les configurations locales et anciennes.", channelAccessTitle: "Accès au canal et budgets", channelAccessDescription: "Chaque canal s’exécute avec une identité de service isolée. L’accès des invités, de Slack Connect et sans mention reste désactivé jusqu’à ce qu’un administrateur l’active ici.", isolatedIdentity: "{{trust}} · identité de service isolée", trust: { trusted: "Fiable", guest: "Invité", external_shared: "Partage externe (Slack Connect)", unknown: "Inconnu", }, requireMention: "Exiger une mention", allowGuests: "Autoriser les invités", allowSlackConnect: "Autoriser Slack Connect", monthlyBudgetUsd: "Budget mensuel d’IA (USD)", saveBudget: "Enregistrer le budget", }, }, dispatch: { nav: { automations: "Automatisations", approvals: "Approbations", delivery: "Livraison", agents: "Agents", vault: "Coffre", audit: "Audit", operations: "Opérations", agent: "Agent", }, pages: { dataLoadFailed: "Impossible de charger les données", dataLoadFailedDescription: "Dispatch n’a pas pu charger ces données.", tryAgain: "Réessayer", also: "Aussi", monitoring: "Surveillance", database: "Base de données", chatAcrossApps: "Discutez avec toutes vos applications", chatAcrossAppsDescription: "Acheminez le travail, vérifiez l’état ou créez du contenu depuis un seul endroit.", overviewPromptPlaceholder: "Demandez n’importe quoi à Dispatch…", chatPromptPlaceholder: "Demandez à Dispatch…", suggestionWorkspaceHealth: "Résumer l’état actuel de l’espace de travail", suggestionOnboardingApp: "Créer une app pour les demandes d’intégration", suggestionAnalyticsAgents: "Vérifier quels agents peuvent aider avec l’analytique", workspaceShortcutsAria: "Raccourcis de l’espace de travail", deliveryQueue: "File de livraison", failedLastHour: "{{count}} échecs au cours de la dernière heure", processingCount: "{{count}} en cours", queued: "En file", active: "Actif", done1h: "Terminé 1 h", failed1h: "Échoué 1 h", oldestQueued: "Plus ancien en file : {{age}}", queueAgeNone: "aucun", queueFailureHint: "Vérifiez les identifiants, les destinations et les erreurs récentes de la file.", unknownPlatform: "inconnu", attemptsCount: "{{count}} tentatives", noErrorMessage: "(aucun message d’erreur)", }, }, }), "de-DE": mergeMessages({ routeTitles: { chat: "Unterhaltung — Dispatch", extension: "Erweiterung — Dispatch", extensions: "Erweiterungen — Dispatch", integrations: "Arbeitsbereich-Integrationen — Dispatch", settings: "Einstellungen - Dispatch", }, root: { commandActions: "Aktionen", commandSearch: "Suchen", commandAppearance: "Darstellung", toggleTheme: "Theme wechseln", openAgent: "Agent öffnen", }, settings: { title: "Einstellungen", description: "Sprach-, Arbeitsbereichs-, Ressourcen- und Agent-Einstellungen.", languageTitle: "Sprache", languageDescription: "Wähle die Sprache der Oberfläche. Diese Einstellung wird in deinem Konto gespeichert.", languageLabel: "Oberflächensprache", workspaceTitle: "Arbeitsbereich", workspaceDescription: "Verwalte Teamzugriff und gemeinsam genutzte Dispatch-Ressourcen.", openTeamSettings: "Teameinstellungen öffnen", openResourceSettings: "Ressourceneinstellungen öffnen", automationsTitle: "Automatisierungen", automationsDescription: "Geplante oder ereignisgesteuerte Jobs prüfen, pausieren und erstellen.", openAutomations: "Automatisierungen öffnen", deliveryTitle: "Zustellung", deliveryDescription: "Nachrichtenziele verwalten und die ausgehende Zustellungswarteschlange prüfen.", openDelivery: "Zustellung öffnen", agentTitle: "Agent verwalten", agentDescription: "Verwalte das Modell, die API-Schlüssel, Sprache und weitere Steuerungen des Agents. Für geplante und ereignisgesteuerte Jobs die Automatisierungen-Seite verwenden.", openAgentSettings: "Agent verwalten", }, integrations: { title: "Integrationen", description: "Verbinde Anbieter-Konten einmal und gib sie dann für Workspace-Apps frei.", status: { connected: "Verbunden", checking: "Wird geprüft", needs_reauth: "Erneute Anmeldung nötig", error: "Fehler", disabled: "Deaktiviert", }, readiness: { ready: "Bereit", checking: "Wird geprüft", needs_credentials: "Refs nötig", needs_attention: "Aufmerksamkeit nötig", disabled: "Deaktiviert", not_configured: "Verfügbar", }, grantMode: { "all-apps": "Alle Apps", selected: "Ausgewählt", explicit: "Freigabe", off: "Aus", }, time: { neverUsed: "Nie verwendet", justNow: "Gerade eben" }, allApps: "Alle Apps", selected: "Ausgewählt", selectedApps: "Ausgewählte Apps", noApps: "Keine Apps", missingKeys: "{{keys}}{{suffix}} fehlen", activeConnection_one: "{{count}} aktive Verbindung", activeConnection_other: "{{count}} aktive Verbindungen", noCredentialRefs: "Keine Anmeldeinformations-Refs", credentialRefCount_one: "{{count}} Anmeldeinformations-Ref", credentialRefCount_other: "{{count}} Anmeldeinformations-Refs", connect: "Verbinden", missingRefs: "Refs fehlen", repair: "Reparieren", edit: "Bearbeiten", delete: "Löschen", credentialRefs: "Anmeldeinformations-Refs", none: "Keine", scopes: "Scopes", access: "Zugriff", usage: "Nutzung", requiredRefsMissing: "Erforderliche Refs fehlen: {{keys}}", appGrants: "App-Freigaben", everyWorkspaceAppCanReuse: "Jede Workspace-App kann dieses Konto wiederverwenden", selectedAppsCanReuse: "{{apps}} können dieses Konto wiederverwenden", revoke: "Entziehen", grant: "Freigeben", toggleGrantAria: "{{action}} Zugriff von {{app}} auf {{connection}}", editConnection: "Verbindung bearbeiten", newConnection: "Neue Verbindung", provider: "Anbieter", refs: "Refs", chooseProvider: "Anbieter wählen", statusLabel: "Status", label: "Label", accountLabel: "Konto-Label", accountLabelPlaceholder: "Acme-Arbeitsbereich", accountId: "Konto-ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "Zugriffsmodus", allAppsCanReuseConnection: "Alle Workspace-Apps können diese Verbindung wiederverwenden", onlySelectedAppsCanReuseConnection: "Nur ausgewählte Apps können diese Verbindung wiederverwenden", grantAllWorkspaceAppsAria: "Diese Verbindung für alle Workspace-Apps freigeben", cancel: "Abbrechen", saveConnection: "Verbindung speichern", credentialRefsDescription: "Nur Referenznamen. Geheime Werte bleiben in Vault oder OAuth.", addRef: "Ref hinzufügen", refName: "Ref-Name", required: "Erforderlich", scope: "Scope", scopeOrg: "Org", scopeWorkspace: "Workspace", scopeUser: "Benutzer", credentialRef: "Anmeldeinformations-Ref", removeRefAria: "{{ref}} entfernen", missingRequiredRefs: "Erforderliche Refs fehlen: {{refs}}", connectionFallback: "Verbindung", providerFallback: "Anbieter", repairConnectionTitle: "{{connection}} reparieren", connectProviderTitle: "{{provider}} verbinden", loadingSetupPlan: "Einrichtungsplan wird geladen...", connectionLabel: "Verbindungslabel", providerPlan: "Anbieterplan", selectedAppsDescription: "Gib nur die Apps frei, die dieses Anbieter-Konto wiederverwenden sollen.", allAppsDescription: "Diese Verbindung für jede Workspace-App verfügbar machen.", suggested: "Vorgeschlagen", remove: "Entfernen", appGrantAria: "{{action}} {{app}}", chooseOneApp: "Wähle mindestens eine App oder wechsle zu allen Apps.", back: "Zurück", next: "Weiter", applyRepair: "Reparatur anwenden", createConnection: "Verbindung erstellen", grantPreview: "Freigabevorschau", grantPreviewAllApps: "Jede Workspace-App kann {{provider}} verwenden. Geheime Werte bleiben in Vault oder OAuth.", grantPreviewSelected: "{{apps}} können {{provider}} verwenden. App-spezifische Kanäle, Repos, Cursor und Synchronisierungsregeln bleiben in diesen Apps.", grantPreviewEmpty: "Wähle, welche Apps {{provider}} verwenden können, oder wechsle zu allen Apps.", deleteConnection: "Verbindung löschen", deleteConnectionDescription: "Dadurch werden {{connection}} und die App-Freigaben entfernt.", deleteSharedConnectionDescription: "Dadurch werden die gemeinsame Verbindung und ihre App-Freigaben entfernt.", checkingAffectedApps: "Betroffene Apps werden geprüft...", allAppConnection: "Alle-Apps-Verbindung", selectedGrants: "Ausgewählte Freigaben", likelyAffected: "Wahrscheinlich betroffen: {{apps}}{{suffix}}.", noCurrentAppGrants: "Keine aktuellen App-Freigaben gefunden.", connectionUpdated: "Verbindung aktualisiert", connectionCreated: "Verbindung erstellt", failedToSave: "Speichern fehlgeschlagen", connectionRepaired: "Verbindung repariert", failedToApplySetup: "Einrichtung konnte nicht angewendet werden", grantAdded: "Freigabe hinzugefügt", grantRevoked: "Freigabe entzogen", failedToUpdateGrant: "Freigabe konnte nicht aktualisiert werden", connectionDeleted: "Verbindung gelöscht", failedToDeleteConnection: "Verbindung konnte nicht gelöscht werden", readyProviders: "Bereite Anbieter", readyProvidersDetail: "Refs konfiguriert und Status fehlerfrei", connections: "Verbindungen", connectedCount_one: "{{count}} verbunden", connectedCount_other: "{{count}} verbunden", appGrantsDetail: "{{allAppCount}} alle Apps, {{selectedCount}} ausgewählt", keyHealth: "Schlüsselzustand", healthy: "Fehlerfrei", missingCount_one: "{{count}} fehlt", missingCount_other: "{{count}} fehlen", connectionNeedsAttention_one: "{{count}} Verbindung braucht Aufmerksamkeit", connectionNeedsAttention_other: "{{count}} Verbindungen brauchen Aufmerksamkeit", requiredRefsPresent: "Erforderliche Refs sind vorhanden", neverUsedCount_one: "{{count}} nie verwendet", neverUsedCount_other: "{{count}} nie verwendet", allTrackedAccountsHaveUsage: "Alle verfolgten Konten haben Nutzung", loadingWorkspaceIntegrations: "Workspace-Integrationen werden geladen...", providerCatalog: "Anbieterkatalog", providersAvailable_one: "{{count}} Anbieter verfügbar", providersAvailable_other: "{{count}} Anbieter verfügbar", connectedAccounts: "Verbundene Konten", noSharedConnectionsYet: "Noch keine gemeinsamen Verbindungen", savedConnectionCount_one: "{{count}} gespeicherte Verbindung", savedConnectionCount_other: "{{count}} gespeicherte Verbindungen", noSharedAccountsYet: "Noch keine gemeinsamen Konten.", emptyConnectedAccountsDescription: "Wähle oben einen Anbieter aus dem Katalog, speichere seine Anmeldeinformations-Refs und gib das gemeinsame Konto dann für Brain, Analytics, Mail, Dispatch oder eine andere Workspace-App frei.", onboardingConnectTitle: "Einmal verbinden", onboardingConnectDetail: "Sichere Kontometadaten und Anmeldeinformations-Refs in Dispatch speichern.", onboardingGrantTitle: "Apps freigeben", onboardingGrantDetail: "Brain, Analytics, Mail oder Dispatch können das Konto wiederverwenden.", onboardingLocalTitle: "App-Einrichtung lokal halten", onboardingLocalDetail: "Kanäle, Repos, Cursor und Synchronisierungsregeln bleiben bei jeder App.", onboardingTitle: "Einmal verbinden, für Apps freigeben", onboardingDescription: "Dispatch besitzt gemeinsame Anbieter-Konten. Jede App besitzt, wie sie das Konto verwendet.", }, messaging: { managed: { connectionChecked: "Slack-Verbindung geprüft", workspaceDisconnected: "Slack-Workspace getrennt", actionFailed: "Slack-Aktion fehlgeschlagen", channelPolicyUpdated: "Kanalrichtlinie aktualisiert", policyUpdateFailed: "Richtlinie konnte nicht aktualisiert werden", positiveMonthlyBudget: "Gib ein positives Monatsbudget ein", channelBudgetSaved: "Kanalbudget gespeichert", budgetSaveFailed: "Budget konnte nicht gespeichert werden", title: "Verwaltete Slack-Workspaces", description: "OAuth isoliert das Token jedes Workspace und aktiviert nativen Thread-Kontext sowie Live-Fortschritt für Aufgaben.", addToSlack: "Zu Slack hinzufügen", agentManifest: "Agent-Manifest", agentManifestDescription: "Das Agent-Manifest aktiviert die Agent-Ansicht und Direktnachrichten in Slack.", requiredCredentials: "Speichere unten die erforderlichen Slack-App-Anmeldedaten, um Zu Slack hinzufügen zu aktivieren.", workspaceFallback: "Slack-Workspace", scopesUpdated_one: "{{count}} Scope · aktualisiert am {{date}}", scopesUpdated_other: "{{count}} Scopes · aktualisiert am {{date}}", health: { unknown: "Unbekannt", healthy: "Fehlerfrei", degraded: "Beeinträchtigt", revoked: "Widerrufen", }, test: "Testen", disconnect: "Trennen", empty: "Noch keine verwalteten Workspaces verbunden. Manuelle Anmeldedaten bleiben unten für lokale und ältere Setups verfügbar.", channelAccessTitle: "Kanalzugriff und Budgets", channelAccessDescription: "Jeder Kanal läuft mit einer isolierten Dienstidentität. Gast-, Slack-Connect- und Zugriff ohne Erwähnung bleiben deaktiviert, bis ein Admin sie hier aktiviert.", isolatedIdentity: "{{trust}} · isolierte Dienstidentität", trust: { trusted: "Vertrauenswürdig", guest: "Gast", external_shared: "Extern geteilt (Slack Connect)", unknown: "Unbekannt", }, requireMention: "Erwähnung erforderlich", allowGuests: "Gäste erlauben", allowSlackConnect: "Slack Connect erlauben", monthlyBudgetUsd: "Monatliches KI-Budget (USD)", saveBudget: "Budget speichern", }, }, dispatch: { nav: { automations: "Automatisierungen", approvals: "Freigaben", delivery: "Zustellung", agents: "Agenten", vault: "Tresor", audit: "Audit", operations: "Betrieb", agent: "Agent", }, pages: { dataLoadFailed: "Daten konnten nicht geladen werden", dataLoadFailedDescription: "Dispatch konnte diese Daten nicht laden.", tryAgain: "Erneut versuchen", also: "Außerdem", monitoring: "Überwachung", database: "Datenbank", chatAcrossApps: "App-übergreifend chatten", chatAcrossAppsDescription: "Leite Arbeit weiter, prüfe den Status oder erstelle Neues an einem Ort.", overviewPromptPlaceholder: "Frage Dispatch alles...", chatPromptPlaceholder: "Dispatch fragen...", suggestionWorkspaceHealth: "Aktuellen Zustand des Workspace zusammenfassen", suggestionOnboardingApp: "Eine App für Onboarding-Anfragen erstellen", suggestionAnalyticsAgents: "Prüfen, welche Agenten bei Analysen helfen können", workspaceShortcutsAria: "Workspace-Kurzbefehle", deliveryQueue: "Zustellungswarteschlange", failedLastHour: "{{count}} fehlgeschlagen in der letzten Stunde", processingCount: "{{count}} in Bearbeitung", queued: "Warteschlange", active: "Aktiv", done1h: "Erledigt 1 Std.", failed1h: "Fehlgeschlagen 1 Std.", oldestQueued: "Älteste Warteschlange: {{age}}", queueAgeNone: "keine", queueFailureHint: "Prüfe Anmeldedaten, Ziele und aktuelle Warteschlangenfehler.", unknownPlatform: "unbekannt", attemptsCount: "{{count}} Versuche", noErrorMessage: "(keine Fehlermeldung)", }, }, }), "ja-JP": mergeMessages({ routeTitles: { chat: "チャット — Dispatch", extension: "拡張機能 — Dispatch", extensions: "拡張機能 — Dispatch", integrations: "ワークスペース連携 — Dispatch", settings: "設定 - Dispatch", }, root: { commandActions: "操作", commandSearch: "検索", commandAppearance: "外観", toggleTheme: "テーマを切り替え", openAgent: "エージェントを開く", }, settings: { title: "設定", description: "言語、ワークスペース、リソース、エージェント設定。", languageTitle: "言語", languageDescription: "インターフェース言語を選択します。この設定はアカウントに保存されます。", languageLabel: "インターフェース言語", workspaceTitle: "ワークスペース", workspaceDescription: "Dispatch のチームアクセスと共有ワークスペースリソースを管理します。", openTeamSettings: "チーム設定を開く", openResourceSettings: "リソース設定を開く", automationsTitle: "自動化", automationsDescription: "スケジュールまたはイベント駆動のジョブを確認、一時停止、作成します。", openAutomations: "自動化を開く", deliveryTitle: "配信", deliveryDescription: "メッセージの送信先を管理し、送信キューを確認します。", openDelivery: "配信を開く", agentTitle: "エージェントを管理", agentDescription: "エージェントのモデル、API キー、音声などを管理します。スケジュールおよびイベント駆動のジョブは自動化ページを使用してください。", openAgentSettings: "エージェントを管理", }, integrations: { title: "連携", description: "プロバイダーアカウントを一度接続し、ワークスペースアプリに許可します。", status: { connected: "接続済み", checking: "確認中", needs_reauth: "再認証が必要", error: "エラー", disabled: "無効", }, readiness: { ready: "準備完了", checking: "確認中", needs_credentials: "参照が必要", needs_attention: "対応が必要", disabled: "無効", not_configured: "利用可能", }, grantMode: { "all-apps": "すべてのアプリ", selected: "選択済み", explicit: "許可", off: "オフ", }, time: { neverUsed: "未使用", justNow: "たった今" }, allApps: "すべてのアプリ", selected: "選択済み", selectedApps: "選択したアプリ", noApps: "アプリなし", missingKeys: "{{keys}}{{suffix}} が不足しています", activeConnection_one: "{{count}} 件のアクティブな接続", activeConnection_other: "{{count}} 件のアクティブな接続", noCredentialRefs: "認証情報参照なし", credentialRefCount_one: "{{count}} 件の認証情報参照", credentialRefCount_other: "{{count}} 件の認証情報参照", connect: "接続", missingRefs: "参照が不足", repair: "修復", edit: "編集", delete: "削除", credentialRefs: "認証情報参照", none: "なし", scopes: "スコープ", access: "アクセス", usage: "使用状況", requiredRefsMissing: "必須参照が不足しています: {{keys}}", appGrants: "アプリ許可", everyWorkspaceAppCanReuse: "すべてのワークスペースアプリがこのアカウントを再利用できます", selectedAppsCanReuse: "{{apps}} がこのアカウントを再利用できます", revoke: "取り消す", grant: "許可", toggleGrantAria: "{{connection}} への {{app}} アクセスを{{action}}", editConnection: "接続を編集", newConnection: "新しい接続", provider: "プロバイダー", refs: "参照", chooseProvider: "プロバイダーを選択", statusLabel: "ステータス", label: "ラベル", accountLabel: "アカウントラベル", accountLabelPlaceholder: "Acme ワークスペース", accountId: "アカウント ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "アクセスモード", allAppsCanReuseConnection: "すべてのワークスペースアプリがこの接続を再利用できます", onlySelectedAppsCanReuseConnection: "選択したアプリのみがこの接続を再利用できます", grantAllWorkspaceAppsAria: "この接続をすべてのワークスペースアプリに許可", cancel: "キャンセル", saveConnection: "接続を保存", credentialRefsDescription: "参照名のみ。シークレット値は Vault または OAuth に残ります。", addRef: "参照を追加", refName: "参照名", required: "必須", scope: "スコープ", scopeOrg: "組織", scopeWorkspace: "ワークスペース", scopeUser: "ユーザー", credentialRef: "認証情報参照", removeRefAria: "{{ref}} を削除", missingRequiredRefs: "必須参照が不足しています: {{refs}}", connectionFallback: "接続", providerFallback: "プロバイダー", repairConnectionTitle: "{{connection}} を修復", connectProviderTitle: "{{provider}} に接続", loadingSetupPlan: "セットアッププランを読み込み中...", connectionLabel: "接続ラベル", providerPlan: "プロバイダープラン", selectedAppsDescription: "このプロバイダーアカウントを再利用するアプリだけを許可します。", allAppsDescription: "この接続をすべてのワークスペースアプリで利用可能にします。", suggested: "推奨", remove: "削除", appGrantAria: "{{app}} を{{action}}", chooseOneApp: "少なくとも 1 つのアプリを選択するか、すべてのアプリに切り替えてください。", back: "戻る", next: "次へ", applyRepair: "修復を適用", createConnection: "接続を作成", grantPreview: "許可プレビュー", grantPreviewAllApps: "すべてのワークスペースアプリが {{provider}} を使用できます。シークレット値は Vault または OAuth に残ります。", grantPreviewSelected: "{{apps}} が {{provider}} を使用できます。アプリ固有のチャンネル、リポジトリ、カーソル、同期ルールは各アプリに残ります。", grantPreviewEmpty: "{{provider}} を使用できるアプリを選択するか、すべてのアプリに切り替えてください。", deleteConnection: "接続を削除", deleteConnectionDescription: "{{connection}} とそのアプリ許可を削除します。", deleteSharedConnectionDescription: "共有接続とそのアプリ許可を削除します。", checkingAffectedApps: "影響を受けるアプリを確認中...", allAppConnection: "すべてのアプリ接続", selectedGrants: "選択した許可", likelyAffected: "影響の可能性: {{apps}}{{suffix}}。", noCurrentAppGrants: "現在のアプリ許可は見つかりませんでした。", connectionUpdated: "接続を更新しました", connectionCreated: "接続を作成しました", failedToSave: "保存に失敗しました", connectionRepaired: "接続を修復しました", failedToApplySetup: "セットアップの適用に失敗しました", grantAdded: "許可を追加しました", grantRevoked: "許可を取り消しました", failedToUpdateGrant: "許可の更新に失敗しました", connectionDeleted: "接続を削除しました", failedToDeleteConnection: "接続の削除に失敗しました", readyProviders: "準備完了のプロバイダー", readyProvidersDetail: "参照が設定され、状態は正常です", connections: "接続", connectedCount_one: "{{count}} 件接続済み", connectedCount_other: "{{count}} 件接続済み", appGrantsDetail: "すべてのアプリ {{allAppCount}} 件、選択済み {{selectedCount}} 件", keyHealth: "キーの状態", healthy: "正常", missingCount_one: "{{count}} 件不足", missingCount_other: "{{count}} 件不足", connectionNeedsAttention_one: "{{count}} 件の接続に対応が必要", connectionNeedsAttention_other: "{{count}} 件の接続に対応が必要", requiredRefsPresent: "必須参照は存在します", neverUsedCount_one: "{{count}} 件未使用", neverUsedCount_other: "{{count}} 件未使用", allTrackedAccountsHaveUsage: "追跡対象のすべてのアカウントに使用記録があります", loadingWorkspaceIntegrations: "ワークスペース連携を読み込み中...", providerCatalog: "プロバイダーカタログ", providersAvailable_one: "{{count}} 件のプロバイダーが利用可能", providersAvailable_other: "{{count}} 件のプロバイダーが利用可能", connectedAccounts: "接続済みアカウント", noSharedConnectionsYet: "共有接続はまだありません", savedConnectionCount_one: "{{count}} 件の保存済み接続", savedConnectionCount_other: "{{count}} 件の保存済み接続", noSharedAccountsYet: "共有アカウントはまだありません。", emptyConnectedAccountsDescription: "上のカタログからプロバイダーを選び、認証情報参照名を保存してから、共有アカウントを Brain、Analytics、Mail、Dispatch、または別のワークスペースアプリに許可します。", onboardingConnectTitle: "一度接続", onboardingConnectDetail: "安全なアカウントメタデータと認証情報参照名を Dispatch に保存します。", onboardingGrantTitle: "アプリに許可", onboardingGrantDetail: "Brain、Analytics、Mail、Dispatch がアカウントを再利用できるようにします。", onboardingLocalTitle: "アプリ設定はローカルに保持", onboardingLocalDetail: "チャンネル、リポジトリ、カーソル、同期ルールは各アプリに残ります。", onboardingTitle: "一度接続し、アプリに許可", onboardingDescription: "Dispatch は共有プロバイダーアカウントを管理します。各アプリはそのアカウントの使い方を管理します。", }, messaging: { managed: { connectionChecked: "Slack 接続を確認しました", workspaceDisconnected: "Slack ワークスペースを切断しました", actionFailed: "Slack の操作に失敗しました", channelPolicyUpdated: "チャンネルポリシーを更新しました", policyUpdateFailed: "ポリシーを更新できませんでした", positiveMonthlyBudget: "正の月額予算を入力してください", channelBudgetSaved: "チャンネル予算を保存しました", budgetSaveFailed: "予算を保存できませんでした", title: "管理対象の Slack ワークスペース", description: "OAuth はワークスペースごとにトークンを分離し、Slack ネイティブのスレッドコンテキストとリアルタイムのタスク進捗を有効にします。", addToSlack: "Slack に追加", agentManifest: "エージェントマニフェスト", agentManifestDescription: "エージェントマニフェストで Slack のエージェントビューとダイレクトメッセージを有効にします。", requiredCredentials: "下で必須の Slack アプリ認証情報を保存すると、Slack に追加を有効にできます。", workspaceFallback: "Slack ワークスペース", scopesUpdated_other: "{{count}} 件のスコープ · {{date}} 更新", health: { unknown: "不明", healthy: "正常", degraded: "機能低下", revoked: "取り消し済み", }, test: "テスト", disconnect: "切断", empty: "管理対象のワークスペースはまだ接続されていません。ローカルおよび従来の設定用に、手動の認証情報を引き続き下で利用できます。", channelAccessTitle: "チャンネルアクセスと予算", channelAccessDescription: "各チャンネルは分離されたサービス ID で実行されます。ゲスト、Slack Connect、メンションなしのアクセスは、管理者がここで有効にするまで無効です。", isolatedIdentity: "{{trust}} · 分離されたサービス ID", trust: { trusted: "信頼済み", guest: "ゲスト", external_shared: "外部共有(Slack Connect)", unknown: "不明", }, requireMention: "メンションを必須にする", allowGuests: "ゲストを許可", allowSlackConnect: "Slack Connect を許可", monthlyBudgetUsd: "月額 AI 予算(USD)", saveBudget: "予算を保存", }, }, dispatch: { nav: { automations: "自動化", approvals: "承認", delivery: "配信", agents: "エージェント", vault: "ボールト", audit: "監査", operations: "運用", agent: "エージェント", }, pages: { dataLoadFailed: "データを読み込めませんでした", dataLoadFailedDescription: "Dispatch はこのデータを読み込めませんでした。", tryAgain: "もう一度試す", also: "その他", monitoring: "監視", database: "データベース", chatAcrossApps: "アプリを横断してチャット", chatAcrossAppsDescription: "1 か所から作業を振り分け、状況を確認し、新しいものを作成できます。", overviewPromptPlaceholder: "Dispatch に何でも質問...", chatPromptPlaceholder: "Dispatch に質問...", suggestionWorkspaceHealth: "現在のワークスペース状況を要約", suggestionOnboardingApp: "オンボーディング依頼用のアプリを作成", suggestionAnalyticsAgents: "分析を支援できるエージェントを確認", workspaceShortcutsAria: "ワークスペースのショートカット", deliveryQueue: "配信キュー", failedLastHour: "過去 1 時間で {{count}} 件失敗", processingCount: "{{count}} 件処理中", queued: "待機中", active: "実行中", done1h: "完了 1h", failed1h: "失敗 1h", oldestQueued: "最古の待機: {{age}}", queueAgeNone: "なし", queueFailureHint: "認証情報、送信先、最近のキューエラーを確認してください。", unknownPlatform: "不明", attemptsCount: "{{count}} 回試行", noErrorMessage: "(エラーメッセージなし)", }, }, }), "ko-KR": mergeMessages({ routeTitles: { chat: "채팅 — Dispatch", extension: "확장 프로그램 — Dispatch", extensions: "확장 프로그램 — Dispatch", integrations: "워크스페이스 통합 — Dispatch", settings: "설정 - Dispatch", }, root: { commandActions: "작업", commandSearch: "검색", commandAppearance: "모양", toggleTheme: "테마 전환", openAgent: "에이전트 열기", }, settings: { title: "설정", description: "언어, 워크스페이스, 리소스 및 에이전트 환경설정입니다.", languageTitle: "언어", languageDescription: "인터페이스 언어를 선택하세요. 이 기본 설정은 계정에 저장됩니다.", languageLabel: "인터페이스 언어", workspaceTitle: "워크스페이스", workspaceDescription: "Dispatch의 팀 접근 권한과 공유 워크스페이스 리소스를 관리합니다.", openTeamSettings: "팀 설정 열기", openResourceSettings: "리소스 설정 열기", automationsTitle: "자동화", automationsDescription: "예약 또는 이벤트 트리거 작업을 검토, 일시 중지, 생성합니다.", openAutomations: "자동화 열기", deliveryTitle: "전달", deliveryDescription: "메시지 대상을 관리하고 발신 전달 대기열을 확인합니다.", openDelivery: "전달 열기", agentTitle: "에이전트 관리", agentDescription: "에이전트의 모델, API 키, 음성 및 기타 제어를 관리합니다. 예약 및 이벤트 트리거 작업은 자동화 페이지를 사용하세요.", openAgentSettings: "에이전트 관리", }, integrations: { title: "통합", description: "공급자 계정을 한 번 연결한 뒤 워크스페이스 앱에 권한을 부여합니다.", status: { connected: "연결됨", checking: "확인 중", needs_reauth: "재인증 필요", error: "오류", disabled: "비활성화됨", }, readiness: { ready: "준비됨", checking: "확인 중", needs_credentials: "참조 필요", needs_attention: "확인 필요", disabled: "비활성화됨", not_configured: "사용 가능", }, grantMode: { "all-apps": "모든 앱", selected: "선택됨", explicit: "권한", off: "꺼짐", }, time: { neverUsed: "사용 안 함", justNow: "방금" }, allApps: "모든 앱", selected: "선택됨", selectedApps: "선택한 앱", noApps: "앱 없음", missingKeys: "{{keys}}{{suffix}} 누락", activeConnection_one: "활성 연결 {{count}}개", activeConnection_other: "활성 연결 {{count}}개", noCredentialRefs: "자격 증명 참조 없음", credentialRefCount_one: "자격 증명 참조 {{count}}개", credentialRefCount_other: "자격 증명 참조 {{count}}개", connect: "연결", missingRefs: "참조 누락", repair: "복구", edit: "편집", delete: "삭제", credentialRefs: "자격 증명 참조", none: "없음", scopes: "범위", access: "접근", usage: "사용량", requiredRefsMissing: "필수 참조 누락: {{keys}}", appGrants: "앱 권한", everyWorkspaceAppCanReuse: "모든 워크스페이스 앱이 이 계정을 재사용할 수 있습니다", selectedAppsCanReuse: "{{apps}}에서 이 계정을 재사용할 수 있습니다", revoke: "해제", grant: "권한 부여", toggleGrantAria: "{{connection}}에 대한 {{app}} 접근 {{action}}", editConnection: "연결 편집", newConnection: "새 연결", provider: "공급자", refs: "참조", chooseProvider: "공급자 선택", statusLabel: "상태", label: "레이블", accountLabel: "계정 레이블", accountLabelPlaceholder: "Acme 워크스페이스", accountId: "계정 ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "접근 모드", allAppsCanReuseConnection: "모든 워크스페이스 앱이 이 연결을 재사용할 수 있습니다", onlySelectedAppsCanReuseConnection: "선택한 앱만 이 연결을 재사용할 수 있습니다", grantAllWorkspaceAppsAria: "이 연결을 모든 워크스페이스 앱에 권한 부여", cancel: "취소", saveConnection: "연결 저장", credentialRefsDescription: "참조 이름만 저장합니다. 비밀 값은 Vault 또는 OAuth에 유지됩니다.", addRef: "참조 추가", refName: "참조 이름", required: "필수", scope: "범위", scopeOrg: "조직", scopeWorkspace: "워크스페이스", scopeUser: "사용자", credentialRef: "자격 증명 참조", removeRefAria: "{{ref}} 제거", missingRequiredRefs: "필수 참조 누락: {{refs}}", connectionFallback: "연결", providerFallback: "공급자", repairConnectionTitle: "{{connection}} 복구", connectProviderTitle: "{{provider}} 연결", loadingSetupPlan: "설정 계획 로드 중...", connectionLabel: "연결 레이블", providerPlan: "공급자 계획", selectedAppsDescription: "이 공급자 계정을 재사용해야 하는 앱에만 권한을 부여합니다.", allAppsDescription: "이 연결을 모든 워크스페이스 앱에서 사용할 수 있게 합니다.", suggested: "추천", remove: "제거", appGrantAria: "{{app}} {{action}}", chooseOneApp: "앱을 하나 이상 선택하거나 모든 앱으로 전환하세요.", back: "뒤로", next: "다음", applyRepair: "복구 적용", createConnection: "연결 만들기", grantPreview: "권한 미리보기", grantPreviewAllApps: "모든 워크스페이스 앱이 {{provider}}를 사용할 수 있습니다. 비밀 값은 Vault 또는 OAuth에 유지됩니다.", grantPreviewSelected: "{{apps}}에서 {{provider}}를 사용할 수 있습니다. 앱별 채널, repo, 커서, 동기화 규칙은 해당 앱에 유지됩니다.", grantPreviewEmpty: "{{provider}}를 사용할 앱을 선택하거나 모든 앱으로 전환하세요.", deleteConnection: "연결 삭제", deleteConnectionDescription: "{{connection}} 및 해당 앱 권한을 제거합니다.", deleteSharedConnectionDescription: "공유 연결 및 해당 앱 권한을 제거합니다.", checkingAffectedApps: "영향받는 앱 확인 중...", allAppConnection: "모든 앱 연결", selectedGrants: "선택한 권한", likelyAffected: "영향 가능성: {{apps}}{{suffix}}.", noCurrentAppGrants: "현재 앱 권한을 찾을 수 없습니다.", connectionUpdated: "연결 업데이트됨", connectionCreated: "연결 생성됨", failedToSave: "저장 실패", connectionRepaired: "연결 복구됨", failedToApplySetup: "설정 적용 실패", grantAdded: "권한 추가됨", grantRevoked: "권한 해제됨", failedToUpdateGrant: "권한 업데이트 실패", connectionDeleted: "연결 삭제됨", failedToDeleteConnection: "연결 삭제 실패", readyProviders: "준비된 공급자", readyProvidersDetail: "참조가 구성되고 상태가 정상입니다", connections: "연결", connectedCount_one: "{{count}}개 연결됨", connectedCount_other: "{{count}}개 연결됨", appGrantsDetail: "모든 앱 {{allAppCount}}개, 선택됨 {{selectedCount}}개", keyHealth: "키 상태", healthy: "정상", missingCount_one: "{{count}}개 누락", missingCount_other: "{{count}}개 누락", connectionNeedsAttention_one: "연결 {{count}}개 확인 필요", connectionNeedsAttention_other: "연결 {{count}}개 확인 필요", requiredRefsPresent: "필수 참조가 있습니다", neverUsedCount_one: "{{count}}개 사용 안 함", neverUsedCount_other: "{{count}}개 사용 안 함", allTrackedAccountsHaveUsage: "추적된 모든 계정에 사용 기록이 있습니다", loadingWorkspaceIntegrations: "워크스페이스 통합 로드 중...", providerCatalog: "공급자 카탈로그", providersAvailable_one: "공급자 {{count}}개 사용 가능", providersAvailable_other: "공급자 {{count}}개 사용 가능", connectedAccounts: "연결된 계정", noSharedConnectionsYet: "아직 공유 연결이 없습니다", savedConnectionCount_one: "저장된 연결 {{count}}개", savedConnectionCount_other: "저장된 연결 {{count}}개", noSharedAccountsYet: "아직 공유 계정이 없습니다.", emptyConnectedAccountsDescription: "위 카탈로그에서 공급자를 선택하고 자격 증명 참조 이름을 저장한 다음 공유 계정을 Brain, Analytics, Mail, Dispatch 또는 다른 워크스페이스 앱에 권한 부여하세요.", onboardingConnectTitle: "한 번 연결", onboardingConnectDetail: "안전한 계정 메타데이터와 자격 증명 참조 이름을 Dispatch에 저장합니다.", onboardingGrantTitle: "앱 권한 부여", onboardingGrantDetail: "Brain, Analytics, Mail 또는 Dispatch가 계정을 재사용하게 합니다.", onboardingLocalTitle: "앱 설정은 로컬에 유지", onboardingLocalDetail: "채널, repo, 커서, 동기화 규칙은 각 앱에 유지됩니다.", onboardingTitle: "한 번 연결하고 앱에 권한 부여", onboardingDescription: "Dispatch는 공유 공급자 계정을 소유합니다. 각 앱은 계정 사용 방식을 소유합니다.", }, messaging: { managed: { connectionChecked: "Slack 연결을 확인했습니다", workspaceDisconnected: "Slack 워크스페이스 연결을 해제했습니다", actionFailed: "Slack 작업에 실패했습니다", channelPolicyUpdated: "채널 정책을 업데이트했습니다", policyUpdateFailed: "정책을 업데이트할 수 없습니다", positiveMonthlyBudget: "0보다 큰 월 예산을 입력하세요", channelBudgetSaved: "채널 예산을 저장했습니다", budgetSaveFailed: "예산을 저장할 수 없습니다", title: "관리형 Slack 워크스페이스", description: "OAuth는 각 워크스페이스 토큰을 격리하고 Slack 기본 스레드 컨텍스트와 실시간 작업 진행 상황을 지원합니다.", addToSlack: "Slack에 추가", agentManifest: "에이전트 매니페스트", agentManifestDescription: "에이전트 매니페스트는 Slack의 에이전트 보기와 다이렉트 메시지를 활성화합니다.", requiredCredentials: "아래에서 필수 Slack 앱 자격 증명을 저장하면 Slack에 추가가 활성화됩니다.", workspaceFallback: "Slack 워크스페이스", scopesUpdated_other: "범위 {{count}}개 · {{date}} 업데이트", health: { unknown: "알 수 없음", healthy: "정상", degraded: "성능 저하", revoked: "취소됨", }, test: "테스트", disconnect: "연결 해제", empty: "연결된 관리형 워크스페이스가 아직 없습니다. 로컬 및 레거시 설정에는 아래의 수동 자격 증명을 계속 사용할 수 있습니다.", channelAccessTitle: "채널 액세스 및 예산", channelAccessDescription: "각 채널은 격리된 서비스 ID로 실행됩니다. 게스트, Slack Connect, 멘션 없는 액세스는 관리자가 여기에서 허용할 때까지 꺼져 있습니다.", isolatedIdentity: "{{trust}} · 격리된 서비스 ID", trust: { trusted: "신뢰됨", guest: "게스트", external_shared: "외부 공유(Slack Connect)", unknown: "알 수 없음", }, requireMention: "멘션 필요", allowGuests: "게스트 허용", allowSlackConnect: "Slack Connect 허용", monthlyBudgetUsd: "월 AI 예산(USD)", saveBudget: "예산 저장", }, }, dispatch: { nav: { automations: "자동화", approvals: "승인", delivery: "전달", agents: "에이전트", vault: "볼트", audit: "감사", operations: "운영", agent: "에이전트", }, pages: { dataLoadFailed: "데이터를 불러올 수 없습니다", dataLoadFailedDescription: "Dispatch에서 이 데이터를 불러오지 못했습니다.", tryAgain: "다시 시도", also: "또한", monitoring: "모니터링", database: "데이터베이스", chatAcrossApps: "앱 전체에서 채팅", chatAcrossAppsDescription: "한곳에서 작업을 전달하고 상태를 확인하거나 새로운 것을 만드세요.", overviewPromptPlaceholder: "Dispatch에 무엇이든 물어보세요...", chatPromptPlaceholder: "Dispatch에 질문...", suggestionWorkspaceHealth: "현재 워크스페이스 상태 요약", suggestionOnboardingApp: "온보딩 요청용 앱 만들기", suggestionAnalyticsAgents: "분석을 지원할 수 있는 에이전트 확인", workspaceShortcutsAria: "워크스페이스 바로가기", deliveryQueue: "전달 대기열", failedLastHour: "지난 1시간 동안 {{count}}건 실패", processingCount: "{{count}}건 처리 중", queued: "대기 중", active: "진행 중", done1h: "완료 1시간", failed1h: "실패 1시간", oldestQueued: "가장 오래된 대기: {{age}}", queueAgeNone: "없음", queueFailureHint: "자격 증명, 대상, 최근 대기열 오류를 확인하세요.", unknownPlatform: "알 수 없음", attemptsCount: "{{count}}회 시도", noErrorMessage: "(오류 메시지 없음)", }, }, }), "pt-BR": mergeMessages({ routeTitles: { chat: "Conversa — Dispatch", extension: "Extensão — Dispatch", extensions: "Extensões — Dispatch", integrations: "Integrações do espaço de trabalho — Dispatch", settings: "Configurações - Dispatch", }, root: { commandActions: "Ações", commandSearch: "Buscar", commandAppearance: "Aparência", toggleTheme: "Alternar tema", openAgent: "Abrir agente", }, settings: { title: "Configurações", description: "Preferências de idioma, espaço de trabalho, recursos e agente.", languageTitle: "Idioma", languageDescription: "Escolha o idioma da interface. Essa preferência é salva na sua conta.", languageLabel: "Idioma da interface", workspaceTitle: "Espaço de trabalho", workspaceDescription: "Gerencie acesso da equipe e recursos compartilhados do Dispatch.", openTeamSettings: "Abrir configurações da equipe", openResourceSettings: "Abrir configurações de recursos", automationsTitle: "Automações", automationsDescription: "Revise, pause e crie trabalhos agendados ou acionados por eventos.", openAutomations: "Abrir automações", deliveryTitle: "Entrega", deliveryDescription: "Gerencie destinos de mensagens e verifique a fila de entrega de saída.", openDelivery: "Abrir entrega", agentTitle: "Gerenciar agente", agentDescription: "Gerencie o modelo do agente, chaves de API, voz e outros controles. Use a página de Automações para trabalhos agendados e acionados por eventos.", openAgentSettings: "Gerenciar agente", }, integrations: { title: "Integrações", description: "Conecte contas de provedores uma vez e conceda acesso aos apps do workspace.", status: { connected: "Conectado", checking: "Verificando", needs_reauth: "Precisa reautenticar", error: "Erro", disabled: "Desativado", }, readiness: { ready: "Pronto", checking: "Verificando", needs_credentials: "Precisa de refs", needs_attention: "Precisa de atenção", disabled: "Desativado", not_configured: "Disponível", }, grantMode: { "all-apps": "Todos os apps", selected: "Selecionado", explicit: "Concessão", off: "Desligado", }, time: { neverUsed: "Nunca usado", justNow: "Agora mesmo" }, allApps: "Todos os apps", selected: "Selecionado", selectedApps: "Apps selecionados", noApps: "Nenhum app", missingKeys: "Faltando {{keys}}{{suffix}}", activeConnection_one: "{{count}} conexão ativa", activeConnection_other: "{{count}} conexões ativas", activeConnection_many: "{{count}} conexões ativas", noCredentialRefs: "Nenhuma ref de credencial", credentialRefCount_one: "{{count}} ref de credencial", credentialRefCount_other: "{{count}} refs de credenciais", credentialRefCount_many: "{{count}} refs de credenciais", connect: "Conectar", missingRefs: "Refs ausentes", repair: "Reparar", edit: "Editar", delete: "Excluir", credentialRefs: "Refs de credenciais", none: "Nenhum", scopes: "Escopos", access: "Acesso", usage: "Uso", requiredRefsMissing: "Refs obrigatórias ausentes: {{keys}}", appGrants: "Concessões de apps", everyWorkspaceAppCanReuse: "Todos os apps do workspace podem reutilizar esta conta", selectedAppsCanReuse: "{{apps}} podem reutilizar esta conta", revoke: "Revogar", grant: "Conceder", toggleGrantAria: "{{action}} acesso de {{app}} a {{connection}}", editConnection: "Editar conexão", newConnection: "Nova conexão", provider: "Provedor", refs: "Refs", chooseProvider: "Escolha o provedor", statusLabel: "Status", label: "Rótulo", accountLabel: "Rótulo da conta", accountLabelPlaceholder: "Espaço de trabalho Acme", accountId: "ID da conta", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "Modo de acesso", allAppsCanReuseConnection: "Todos os apps do workspace podem reutilizar esta conexão", onlySelectedAppsCanReuseConnection: "Só os apps selecionados podem reutilizar esta conexão", grantAllWorkspaceAppsAria: "Conceder esta conexão a todos os apps do workspace", cancel: "Cancelar", saveConnection: "Salvar conexão", credentialRefsDescription: "Apenas nomes de referência. Valores secretos permanecem no Vault ou OAuth.", addRef: "Adicionar ref", refName: "Nome da ref", required: "Obrigatório", scope: "Escopo", scopeOrg: "Org", scopeWorkspace: "Workspace", scopeUser: "Usuário", credentialRef: "ref de credencial", removeRefAria: "Remover {{ref}}", missingRequiredRefs: "Refs obrigatórias ausentes: {{refs}}", connectionFallback: "conexão", providerFallback: "provedor", repairConnectionTitle: "Reparar {{connection}}", connectProviderTitle: "Conectar {{provider}}", loadingSetupPlan: "Carregando plano de configuração...", connectionLabel: "Rótulo da conexão", providerPlan: "Plano do provedor", selectedAppsDescription: "Conceda apenas aos apps que devem reutilizar esta conta do provedor.", allAppsDescription: "Disponibilize esta conexão para todos os apps do workspace.", suggested: "Sugerido", remove: "Remover", appGrantAria: "{{action}} {{app}}", chooseOneApp: "Escolha pelo menos um app ou mude para todos os apps.", back: "Voltar", next: "Avançar", applyRepair: "Aplicar reparo", createConnection: "Criar conexão", grantPreview: "Prévia da concessão", grantPreviewAllApps: "Todos os apps do workspace podem usar {{provider}}. Valores secretos permanecem no Vault ou OAuth.", grantPreviewSelected: "{{apps}} podem usar {{provider}}. Canais, repos, cursores e regras de sincronização específicos do app permanecem nesses apps.", grantPreviewEmpty: "Escolha quais apps podem usar {{provider}} ou mude para todos os apps.", deleteConnection: "Excluir conexão", deleteConnectionDescription: "Isso remove {{connection}} e suas concessões de apps.", deleteSharedConnectionDescription: "Isso remove a conexão compartilhada e suas concessões de apps.", checkingAffectedApps: "Verificando apps afetados...", allAppConnection: "Conexão para todos os apps", selectedGrants: "Concessões selecionadas", likelyAffected: "Provavelmente afetados: {{apps}}{{suffix}}.", noCurrentAppGrants: "Nenhuma concessão de app atual foi encontrada.", connectionUpdated: "Conexão atualizada", connectionCreated: "Conexão criada", failedToSave: "Falha ao salvar", connectionRepaired: "Conexão reparada", failedToApplySetup: "Falha ao aplicar configuração", grantAdded: "Concessão adicionada", grantRevoked: "Concessão revogada", failedToUpdateGrant: "Falha ao atualizar concessão", connectionDeleted: "Conexão excluída", failedToDeleteConnection: "Falha ao excluir conexão", readyProviders: "Provedores prontos", readyProvidersDetail: "Refs configuradas e status saudável", connections: "Conexões", connectedCount_one: "{{count}} conectada", connectedCount_other: "{{count}} conectadas", connectedCount_many: "{{count}} conectadas", appGrantsDetail: "{{allAppCount}} todos os apps, {{selectedCount}} selecionados", keyHealth: "Saúde das chaves", healthy: "Saudável", missingCount_one: "{{count}} ausente", missingCount_other: "{{count}} ausentes", missingCount_many: "{{count}} ausentes", connectionNeedsAttention_one: "{{count}} conexão precisa de atenção", connectionNeedsAttention_other: "{{count}} conexões precisam de atenção", connectionNeedsAttention_many: "{{count}} conexões precisam de atenção", requiredRefsPresent: "As refs obrigatórias estão presentes", neverUsedCount_one: "{{count}} nunca usada", neverUsedCount_other: "{{count}} nunca usadas", neverUsedCount_many: "{{count}} nunca usadas", allTrackedAccountsHaveUsage: "Todas as contas rastreadas têm uso", loadingWorkspaceIntegrations: "Carregando integrações do workspace...", providerCatalog: "Catálogo de provedores", providersAvailable_one: "{{count}} provedor disponível", providersAvailable_other: "{{count}} provedores disponíveis", providersAvailable_many: "{{count}} provedores disponíveis", connectedAccounts: "Contas conectadas", noSharedConnectionsYet: "Ainda não há conexões compartilhadas", savedConnectionCount_one: "{{count}} conexão salva", savedConnectionCount_other: "{{count}} conexões salvas", savedConnectionCount_many: "{{count}} conexões salvas", noSharedAccountsYet: "Ainda não há contas compartilhadas.", emptyConnectedAccountsDescription: "Escolha um provedor no catálogo acima, salve os nomes de refs de credenciais e conceda a conta compartilhada ao Brain, Analytics, Mail, Dispatch ou outro app do workspace.", onboardingConnectTitle: "Conectar uma vez", onboardingConnectDetail: "Salve metadados seguros da conta e nomes de refs de credenciais no Dispatch.", onboardingGrantTitle: "Conceder apps", onboardingGrantDetail: "Permita que Brain, Analytics, Mail ou Dispatch reutilizem a conta.", onboardingLocalTitle: "Manter configuração no app", onboardingLocalDetail: "Canais, repos, cursores e regras de sincronização permanecem em cada app.", onboardingTitle: "Conecte uma vez, conceda aos apps", onboardingDescription: "Dispatch possui as contas compartilhadas de provedores. Cada app possui como usa a conta.", }, messaging: { managed: { connectionChecked: "Conexão do Slack verificada", workspaceDisconnected: "Workspace do Slack desconectado", actionFailed: "Falha na ação do Slack", channelPolicyUpdated: "Política do canal atualizada", policyUpdateFailed: "Não foi possível atualizar a política", positiveMonthlyBudget: "Informe um orçamento mensal positivo", channelBudgetSaved: "Orçamento do canal salvo", budgetSaveFailed: "Não foi possível salvar o orçamento", title: "Workspaces gerenciados do Slack", description: "O OAuth mantém o token de cada workspace isolado e habilita o contexto nativo de threads e o progresso de tarefas em tempo real.", addToSlack: "Adicionar ao Slack", agentManifest: "Manifesto do agente", agentManifestDescription: "O manifesto do agente habilita a visualização de agente e as mensagens diretas no Slack.", requiredCredentials: "Salve abaixo as credenciais obrigatórias do app Slack para habilitar Adicionar ao Slack.", workspaceFallback: "Workspace do Slack", scopesUpdated_one: "{{count}} escopo · atualizado em {{date}}", scopesUpdated_other: "{{count}} escopos · atualizados em {{date}}", scopesUpdated_many: "{{count}} escopos · atualizados em {{date}}", health: { unknown: "Desconhecido", healthy: "Íntegro", degraded: "Degradado", revoked: "Revogado", }, test: "Testar", disconnect: "Desconectar", empty: "Ainda não há workspaces gerenciados conectados. As credenciais manuais continuam disponíveis abaixo para configurações locais e antigas.", channelAccessTitle: "Acesso e orçamentos do canal", channelAccessDescription: "Cada canal é executado com uma identidade de serviço isolada. O acesso para convidados, Slack Connect e sem menção permanece desativado até que um administrador o habilite aqui.", isolatedIdentity: "{{trust}} · identidade de serviço isolada", trust: { trusted: "Confiável", guest: "Convidado", external_shared: "Compartilhamento externo (Slack Connect)", unknown: "Desconhecido", }, requireMention: "Exigir menção", allowGuests: "Permitir convidados", allowSlackConnect: "Permitir Slack Connect", monthlyBudgetUsd: "Orçamento mensal de IA (USD)", saveBudget: "Salvar orçamento", }, }, dispatch: { nav: { automations: "Automações", approvals: "Aprovações", delivery: "Entrega", agents: "Agentes", vault: "Cofre", audit: "Auditoria", operations: "Operações", agent: "Agente", }, pages: { dataLoadFailed: "Não foi possível carregar os dados", dataLoadFailedDescription: "O Dispatch não conseguiu carregar estes dados.", tryAgain: "Tentar novamente", also: "Também", monitoring: "Monitoramento", database: "Banco de dados", chatAcrossApps: "Converse entre seus apps", chatAcrossAppsDescription: "Encaminhe trabalhos, verifique o status ou crie algo novo em um só lugar.", overviewPromptPlaceholder: "Pergunte qualquer coisa ao Dispatch...", chatPromptPlaceholder: "Pergunte ao Dispatch...", suggestionWorkspaceHealth: "Resumir a integridade atual do espaço de trabalho", suggestionOnboardingApp: "Criar um app para solicitações de integração", suggestionAnalyticsAgents: "Verificar quais agentes podem ajudar com análises", workspaceShortcutsAria: "Atalhos do espaço de trabalho", deliveryQueue: "Fila de entrega", failedLastHour: "{{count}} falhas na última hora", processingCount: "{{count}} em processamento", queued: "Na fila", active: "Ativo", done1h: "Concluído 1 h", failed1h: "Falhou 1 h", oldestQueued: "Mais antigo na fila: {{age}}", queueAgeNone: "nenhum", queueFailureHint: "Verifique credenciais, destinos e erros recentes da fila.", unknownPlatform: "desconhecido", attemptsCount: "{{count}} tentativas", noErrorMessage: "(sem mensagem de erro)", }, }, }), "hi-IN": mergeMessages({ routeTitles: { chat: "चैट — Dispatch", extension: "एक्सटेंशन — Dispatch", extensions: "एक्सटेंशन — Dispatch", integrations: "वर्कस्पेस इंटीग्रेशन — Dispatch", settings: "सेटिंग्स - Dispatch", }, root: { commandActions: "क्रियाएं", commandSearch: "खोजें", commandAppearance: "रूप", toggleTheme: "थीम बदलें", openAgent: "एजेंट खोलें", }, settings: { title: "सेटिंग्स", description: "भाषा, कार्यस्थान, संसाधन और एजेंट प्राथमिकताएं।", languageTitle: "भाषा", languageDescription: "इंटरफ़ेस भाषा चुनें। यह पसंद आपके खाते में सहेजी जाती है।", languageLabel: "इंटरफ़ेस भाषा", workspaceTitle: "कार्यस्थान", workspaceDescription: "Dispatch के लिए टीम पहुंच और साझा कार्यस्थान संसाधनों को प्रबंधित करें।", openTeamSettings: "टीम सेटिंग्स खोलें", openResourceSettings: "संसाधन सेटिंग्स खोलें", automationsTitle: "ऑटोमेशन", automationsDescription: "शेड्यूल या इवेंट-ट्रिगर जॉब्स की समीक्षा करें, रोकें और बनाएं।", openAutomations: "ऑटोमेशन खोलें", deliveryTitle: "डिलीवरी", deliveryDescription: "संदेश गंतव्य प्रबंधित करें और आउटबाउंड डिलीवरी कतार जांचें।", openDelivery: "डिलीवरी खोलें", agentTitle: "एजेंट प्रबंधित करें", agentDescription: "एजेंट के मॉडल, API कुंजियों, आवाज़ और अन्य नियंत्रणों को प्रबंधित करें। शेड्यूल और इवेंट-ट्रिगर जॉब्स के लिए ऑटोमेशन पेज का उपयोग करें।", openAgentSettings: "एजेंट प्रबंधित करें", }, integrations: { title: "इंटीग्रेशन", description: "प्रदाता खातों को एक बार कनेक्ट करें, फिर उन्हें कार्यस्थान ऐप्स को दें।", status: { connected: "कनेक्टेड", checking: "जांच हो रही है", needs_reauth: "फिर से प्रमाणीकरण चाहिए", error: "त्रुटि", disabled: "अक्षम", }, readiness: { ready: "तैयार", checking: "जांच हो रही है", needs_credentials: "रेफ चाहिए", needs_attention: "ध्यान चाहिए", disabled: "अक्षम", not_configured: "उपलब्ध", }, grantMode: { "all-apps": "सभी ऐप्स", selected: "चयनित", explicit: "अनुदान", off: "बंद", }, time: { neverUsed: "कभी उपयोग नहीं हुआ", justNow: "अभी" }, allApps: "सभी ऐप्स", selected: "चयनित", selectedApps: "चयनित ऐप्स", noApps: "कोई ऐप नहीं", missingKeys: "{{keys}}{{suffix}} गुम", activeConnection_one: "{{count}} सक्रिय कनेक्शन", activeConnection_other: "{{count}} सक्रिय कनेक्शन", noCredentialRefs: "कोई क्रेडेंशियल रेफ नहीं", credentialRefCount_one: "{{count}} क्रेडेंशियल रेफ", credentialRefCount_other: "{{count}} क्रेडेंशियल रेफ", connect: "कनेक्ट करें", missingRefs: "रेफ गुम", repair: "मरम्मत करें", edit: "संपादित करें", delete: "हटाएं", credentialRefs: "क्रेडेंशियल रेफ", none: "कोई नहीं", scopes: "स्कोप", access: "पहुंच", usage: "उपयोग", requiredRefsMissing: "आवश्यक रेफ गुम: {{keys}}", appGrants: "ऐप अनुदान", everyWorkspaceAppCanReuse: "हर कार्यस्थान ऐप इस खाते का फिर से उपयोग कर सकता है", selectedAppsCanReuse: "{{apps}} इस खाते का फिर से उपयोग कर सकते हैं", revoke: "वापस लें", grant: "अनुदान दें", toggleGrantAria: "{{connection}} के लिए {{app}} पहुंच {{action}}", editConnection: "कनेक्शन संपादित करें", newConnection: "नया कनेक्शन", provider: "प्रदाता", refs: "रेफ", chooseProvider: "प्रदाता चुनें", statusLabel: "स्थिति", label: "लेबल", accountLabel: "खाता लेबल", accountLabelPlaceholder: "Acme कार्यस्थान", accountId: "खाता ID", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "पहुंच मोड", allAppsCanReuseConnection: "सभी कार्यस्थान ऐप्स इस कनेक्शन का फिर से उपयोग कर सकते हैं", onlySelectedAppsCanReuseConnection: "केवल चयनित ऐप्स इस कनेक्शन का फिर से उपयोग कर सकते हैं", grantAllWorkspaceAppsAria: "यह कनेक्शन सभी कार्यस्थान ऐप्स को दें", cancel: "रद्द करें", saveConnection: "कनेक्शन सहेजें", credentialRefsDescription: "केवल रेफरेंस नाम। सीक्रेट मान Vault या OAuth में रहते हैं।", addRef: "रेफ जोड़ें", refName: "रेफ नाम", required: "आवश्यक", scope: "स्कोप", scopeOrg: "संगठन", scopeWorkspace: "कार्यस्थान", scopeUser: "उपयोगकर्ता", credentialRef: "क्रेडेंशियल रेफ", removeRefAria: "{{ref}} हटाएं", missingRequiredRefs: "आवश्यक रेफ गुम: {{refs}}", connectionFallback: "कनेक्शन", providerFallback: "प्रदाता", repairConnectionTitle: "{{connection}} की मरम्मत करें", connectProviderTitle: "{{provider}} कनेक्ट करें", loadingSetupPlan: "सेटअप योजना लोड हो रही है...", connectionLabel: "कनेक्शन लेबल", providerPlan: "प्रदाता योजना", selectedAppsDescription: "केवल उन ऐप्स को अनुदान दें जिन्हें यह प्रदाता खाता फिर से उपयोग करना चाहिए।", allAppsDescription: "यह कनेक्शन हर कार्यस्थान ऐप के लिए उपलब्ध करें।", suggested: "सुझाया गया", remove: "हटाएं", appGrantAria: "{{app}} {{action}}", chooseOneApp: "कम से कम एक ऐप चुनें, या सभी ऐप्स पर स्विच करें।", back: "वापस", next: "आगे", applyRepair: "मरम्मत लागू करें", createConnection: "कनेक्शन बनाएं", grantPreview: "अनुदान पूर्वावलोकन", grantPreviewAllApps: "हर कार्यस्थान ऐप {{provider}} का उपयोग कर सकता है। सीक्रेट मान Vault या OAuth में रहते हैं।", grantPreviewSelected: "{{apps}} {{provider}} का उपयोग कर सकते हैं। ऐप-विशिष्ट चैनल, repos, कर्सर और सिंक नियम उन्हीं ऐप्स में रहते हैं।", grantPreviewEmpty: "चुनें कि कौन से ऐप्स {{provider}} का उपयोग कर सकते हैं, या सभी ऐप्स पर स्विच करें।", deleteConnection: "कनेक्शन हटाएं", deleteConnectionDescription: "यह {{connection}} और उसके ऐप अनुदान हटाता है।", deleteSharedConnectionDescription: "यह साझा कनेक्शन और उसके ऐप अनुदान हटाता है।", checkingAffectedApps: "प्रभावित ऐप्स जांचे जा रहे हैं...", allAppConnection: "सभी ऐप्स कनेक्शन", selectedGrants: "चयनित अनुदान", likelyAffected: "संभावित रूप से प्रभावित: {{apps}}{{suffix}}.", noCurrentAppGrants: "कोई मौजूदा ऐप अनुदान नहीं मिला।", connectionUpdated: "कनेक्शन अपडेट हुआ", connectionCreated: "कनेक्शन बनाया गया", failedToSave: "सहेजने में विफल", connectionRepaired: "कनेक्शन की मरम्मत हुई", failedToApplySetup: "सेटअप लागू करने में विफल", grantAdded: "अनुदान जोड़ा गया", grantRevoked: "अनुदान वापस लिया गया", failedToUpdateGrant: "अनुदान अपडेट करने में विफल", connectionDeleted: "कनेक्शन हटाया गया", failedToDeleteConnection: "कनेक्शन हटाने में विफल", readyProviders: "तैयार प्रदाता", readyProvidersDetail: "रेफ कॉन्फ़िगर हैं और स्थिति स्वस्थ है", connections: "कनेक्शन", connectedCount_one: "{{count}} कनेक्टेड", connectedCount_other: "{{count}} कनेक्टेड", appGrantsDetail: "{{allAppCount}} सभी ऐप्स, {{selectedCount}} चयनित", keyHealth: "कुंजी स्वास्थ्य", healthy: "स्वस्थ", missingCount_one: "{{count}} गुम", missingCount_other: "{{count}} गुम", connectionNeedsAttention_one: "{{count}} कनेक्शन को ध्यान चाहिए", connectionNeedsAttention_other: "{{count}} कनेक्शन को ध्यान चाहिए", requiredRefsPresent: "आवश्यक रेफ मौजूद हैं", neverUsedCount_one: "{{count}} कभी उपयोग नहीं हुआ", neverUsedCount_other: "{{count}} कभी उपयोग नहीं हुआ", allTrackedAccountsHaveUsage: "सभी ट्रैक किए गए खातों में उपयोग है", loadingWorkspaceIntegrations: "कार्यस्थान इंटीग्रेशन लोड हो रहे हैं...", providerCatalog: "प्रदाता कैटलॉग", providersAvailable_one: "{{count}} प्रदाता उपलब्ध", providersAvailable_other: "{{count}} प्रदाता उपलब्ध", connectedAccounts: "कनेक्टेड खाते", noSharedConnectionsYet: "अभी कोई साझा कनेक्शन नहीं", savedConnectionCount_one: "{{count}} सहेजा गया कनेक्शन", savedConnectionCount_other: "{{count}} सहेजे गए कनेक्शन", noSharedAccountsYet: "अभी कोई साझा खाता नहीं।", emptyConnectedAccountsDescription: "ऊपर के कैटलॉग से प्रदाता चुनें, उसके क्रेडेंशियल रेफ नाम सहेजें, फिर साझा खाते को Brain, Analytics, Mail, Dispatch या किसी अन्य कार्यस्थान ऐप को दें।", onboardingConnectTitle: "एक बार कनेक्ट करें", onboardingConnectDetail: "सुरक्षित खाता मेटाडेटा और क्रेडेंशियल रेफ नाम Dispatch में सहेजें।", onboardingGrantTitle: "ऐप्स को अनुदान दें", onboardingGrantDetail: "Brain, Analytics, Mail या Dispatch को खाता फिर से उपयोग करने दें।", onboardingLocalTitle: "ऐप सेटअप स्थानीय रखें", onboardingLocalDetail: "चैनल, repos, कर्सर और सिंक नियम हर ऐप में रहते हैं।", onboardingTitle: "एक बार कनेक्ट करें, ऐप्स को दें", onboardingDescription: "Dispatch साझा प्रदाता खातों का स्वामी है। हर ऐप खाते का उपयोग कैसे करता है, यह वही संभालता है।", }, messaging: { managed: { connectionChecked: "Slack कनेक्शन की जाँच पूरी हुई", workspaceDisconnected: "Slack कार्यस्थान डिस्कनेक्ट किया गया", actionFailed: "Slack कार्रवाई विफल हुई", channelPolicyUpdated: "चैनल नीति अपडेट की गई", policyUpdateFailed: "नीति अपडेट नहीं हो सकी", positiveMonthlyBudget: "शून्य से अधिक मासिक बजट दर्ज करें", channelBudgetSaved: "चैनल बजट सहेजा गया", budgetSaveFailed: "बजट सहेजा नहीं जा सका", title: "प्रबंधित Slack कार्यस्थान", description: "OAuth हर कार्यस्थान टोकन को अलग रखता है और मूल थ्रेड संदर्भ तथा लाइव कार्य प्रगति सक्षम करता है।", addToSlack: "Slack में जोड़ें", agentManifest: "एजेंट मैनिफ़ेस्ट", agentManifestDescription: "एजेंट मैनिफ़ेस्ट Slack का एजेंट व्यू और डायरेक्ट मैसेज सक्षम करता है।", requiredCredentials: "Slack में जोड़ें को सक्षम करने के लिए नीचे आवश्यक Slack ऐप क्रेडेंशियल सहेजें।", workspaceFallback: "Slack कार्यस्थान", scopesUpdated_one: "{{count}} स्कोप · {{date}} को अपडेट किया गया", scopesUpdated_other: "{{count}} स्कोप · {{date}} को अपडेट किए गए", health: { unknown: "अज्ञात", healthy: "स्वस्थ", degraded: "कमज़ोर", revoked: "रद्द", }, test: "जाँचें", disconnect: "डिस्कनेक्ट करें", empty: "अभी कोई प्रबंधित कार्यस्थान कनेक्ट नहीं है। स्थानीय और पुराने सेटअप के लिए मैन्युअल क्रेडेंशियल नीचे उपलब्ध हैं।", channelAccessTitle: "चैनल एक्सेस और बजट", channelAccessDescription: "हर चैनल एक अलग सेवा पहचान के रूप में चलता है। अतिथि, Slack Connect और बिना उल्लेख का एक्सेस तब तक बंद रहता है जब तक कोई एडमिन उसे यहाँ सक्षम न करे।", isolatedIdentity: "{{trust}} · अलग सेवा पहचान", trust: { trusted: "विश्वसनीय", guest: "अतिथि", external_shared: "बाहरी साझाकरण (Slack Connect)", unknown: "अज्ञात", }, requireMention: "उल्लेख आवश्यक", allowGuests: "अतिथियों को अनुमति दें", allowSlackConnect: "Slack Connect को अनुमति दें", monthlyBudgetUsd: "मासिक AI बजट (USD)", saveBudget: "बजट सहेजें", }, }, dispatch: { nav: { automations: "ऑटोमेशन", approvals: "अनुमोदन", delivery: "डिलीवरी", agents: "एजेंट", vault: "वॉल्ट", audit: "ऑडिट", operations: "संचालन", agent: "एजेंट", }, pages: { dataLoadFailed: "डेटा लोड नहीं हो सका", dataLoadFailedDescription: "Dispatch यह डेटा लोड नहीं कर सका।", tryAgain: "फिर से कोशिश करें", also: "और भी", monitoring: "निगरानी", database: "डेटाबेस", chatAcrossApps: "अपने सभी ऐप्स में चैट करें", chatAcrossAppsDescription: "एक ही स्थान से काम भेजें, स्थिति जाँचें या कुछ नया बनाएँ।", overviewPromptPlaceholder: "Dispatch से कुछ भी पूछें...", chatPromptPlaceholder: "Dispatch से पूछें...", suggestionWorkspaceHealth: "वर्तमान कार्यस्थान की स्थिति का सार बताएँ", suggestionOnboardingApp: "ऑनबोर्डिंग अनुरोधों के लिए ऐप बनाएँ", suggestionAnalyticsAgents: "देखें कि कौन से एजेंट विश्लेषण में मदद कर सकते हैं", workspaceShortcutsAria: "कार्यस्थान शॉर्टकट", deliveryQueue: "डिलीवरी कतार", failedLastHour: "पिछले घंटे में {{count}} विफल", processingCount: "{{count}} प्रोसेस हो रहे हैं", queued: "कतार में", active: "सक्रिय", done1h: "पूर्ण 1घं", failed1h: "विफल 1घं", oldestQueued: "सबसे पुराना कतार में: {{age}}", queueAgeNone: "कोई नहीं", queueFailureHint: "क्रेडेंशियल, गंतव्य और हाल की कतार त्रुटियाँ जाँचें।", unknownPlatform: "अज्ञात", attemptsCount: "{{count}} प्रयास", noErrorMessage: "(कोई त्रुटि संदेश नहीं)", }, }, }), "ar-SA": mergeMessages({ routeTitles: { chat: "الدردشة — Dispatch", extension: "الامتداد — Dispatch", extensions: "الامتدادات — Dispatch", integrations: "تكاملات مساحة العمل — Dispatch", settings: "الإعدادات - Dispatch", }, root: { commandActions: "الإجراءات", commandSearch: "بحث", commandAppearance: "المظهر", toggleTheme: "تبديل السمة", openAgent: "فتح الوكيل", }, settings: { title: "الإعدادات", description: "تفضيلات اللغة ومساحة العمل والموارد والوكيل.", languageTitle: "اللغة", languageDescription: "اختر لغة الواجهة. يتم حفظ هذا التفضيل في حسابك.", languageLabel: "لغة الواجهة", workspaceTitle: "مساحة العمل", workspaceDescription: "إدارة وصول الفريق وموارد مساحة العمل المشتركة في Dispatch.", openTeamSettings: "فتح إعدادات الفريق", openResourceSettings: "فتح إعدادات الموارد", automationsTitle: "الأتمتة", automationsDescription: "راجع وأوقف وأنشئ مهامًا مجدولة أو مُشغَّلة بالأحداث.", openAutomations: "فتح الأتمتة", deliveryTitle: "التسليم", deliveryDescription: "إدارة وجهات الرسائل وفحص قائمة انتظار التسليم الصادرة.", openDelivery: "فتح التسليم", agentTitle: "إدارة الوكيل", agentDescription: "أدر نموذج الوكيل ومفاتيح API والصوت وعناصر التحكم الأخرى. استخدم صفحة الأتمتة للمهام المجدولة والمُشغَّلة بالأحداث.", openAgentSettings: "إدارة الوكيل", }, integrations: { title: "عمليات التكامل", description: "اربط حسابات المزوّدين مرة واحدة، ثم امنحها لتطبيقات مساحة العمل.", status: { connected: "متصل", checking: "جار التحقق", needs_reauth: "يحتاج إعادة مصادقة", error: "خطأ", disabled: "معطل", }, readiness: { ready: "جاهز", checking: "جار التحقق", needs_credentials: "يحتاج مراجع", needs_attention: "يحتاج انتباهًا", disabled: "معطل", not_configured: "متاح", }, grantMode: { "all-apps": "كل التطبيقات", selected: "محدد", explicit: "منح", off: "إيقاف", }, time: { neverUsed: "لم يُستخدم قط", justNow: "الآن" }, allApps: "كل التطبيقات", selected: "محدد", selectedApps: "التطبيقات المحددة", noApps: "لا توجد تطبيقات", missingKeys: "مفقود {{keys}}{{suffix}}", activeConnection_one: "{{count}} اتصال نشط", activeConnection_other: "{{count}} اتصالات نشطة", activeConnection_many: "{{count}} اتصالات نشطة", activeConnection_few: "{{count}} اتصالات نشطة", activeConnection_two: "{{count}} اتصالات نشطة", activeConnection_zero: "{{count}} اتصالات نشطة", noCredentialRefs: "لا توجد مراجع اعتماد", credentialRefCount_one: "{{count}} مرجع اعتماد", credentialRefCount_other: "{{count}} مراجع اعتماد", credentialRefCount_many: "{{count}} مراجع اعتماد", credentialRefCount_few: "{{count}} مراجع اعتماد", credentialRefCount_two: "{{count}} مراجع اعتماد", credentialRefCount_zero: "{{count}} مراجع اعتماد", connect: "ربط", missingRefs: "مراجع مفقودة", repair: "إصلاح", edit: "تعديل", delete: "حذف", credentialRefs: "مراجع الاعتماد", none: "لا شيء", scopes: "النطاقات", access: "الوصول", usage: "الاستخدام", requiredRefsMissing: "مراجع مطلوبة مفقودة: {{keys}}", appGrants: "منح التطبيقات", everyWorkspaceAppCanReuse: "يمكن لكل تطبيق في مساحة العمل إعادة استخدام هذا الحساب", selectedAppsCanReuse: "يمكن لـ {{apps}} إعادة استخدام هذا الحساب", revoke: "إلغاء", grant: "منح", toggleGrantAria: "{{action}} وصول {{app}} إلى {{connection}}", editConnection: "تعديل الاتصال", newConnection: "اتصال جديد", provider: "المزوّد", refs: "المراجع", chooseProvider: "اختر المزوّد", statusLabel: "الحالة", label: "التسمية", accountLabel: "تسمية الحساب", accountLabelPlaceholder: "مساحة عمل Acme", accountId: "معرّف الحساب", accountIdPlaceholder: "team or account id", scopesPlaceholder: "channels:history, search", accessMode: "وضع الوصول", allAppsCanReuseConnection: "يمكن لكل تطبيقات مساحة العمل إعادة استخدام هذا الاتصال", onlySelectedAppsCanReuseConnection: "يمكن للتطبيقات المحددة فقط إعادة استخدام هذا الاتصال", grantAllWorkspaceAppsAria: "منح هذا الاتصال لكل تطبيقات مساحة العمل", cancel: "إلغاء", saveConnection: "حفظ الاتصال", credentialRefsDescription: "أسماء المراجع فقط. تبقى القيم السرية في Vault أو OAuth.", addRef: "إضافة مرجع", refName: "اسم المرجع", required: "مطلوب", scope: "النطاق", scopeOrg: "المؤسسة", scopeWorkspace: "مساحة العمل", scopeUser: "المستخدم", credentialRef: "مرجع اعتماد", removeRefAria: "إزالة {{ref}}", missingRequiredRefs: "مراجع مطلوبة مفقودة: {{refs}}", connectionFallback: "الاتصال", providerFallback: "المزوّد", repairConnectionTitle: "إصلاح {{connection}}", connectProviderTitle: "ربط {{provider}}", loadingSetupPlan: "جار تحميل خطة الإعداد...", connectionLabel: "تسمية الاتصال", providerPlan: "خطة المزوّد", selectedAppsDescription: "امنح فقط التطبيقات التي يجب أن تعيد استخدام حساب هذا المزوّد.", allAppsDescription: "اجعل هذا الاتصال متاحًا لكل تطبيق في مساحة العمل.", suggested: "مقترح", remove: "إزالة", appGrantAria: "{{action}} {{app}}", chooseOneApp: "اختر تطبيقًا واحدًا على الأقل، أو بدّل إلى كل التطبيقات.", back: "رجوع", next: "التالي", applyRepair: "تطبيق الإصلاح", createConnection: "إنشاء اتصال", grantPreview: "معاينة المنح", grantPreviewAllApps: "يمكن لكل تطبيق في مساحة العمل استخدام {{provider}}. تبقى القيم السرية في Vault أو OAuth.", grantPreviewSelected: "يمكن لـ {{apps}} استخدام {{provider}}. تبقى القنوات وrepos والمؤشرات وقواعد المزامنة الخاصة بالتطبيق داخل تلك التطبيقات.", grantPreviewEmpty: "اختر التطبيقات التي يمكنها استخدام {{provider}}، أو بدّل إلى كل التطبيقات.", deleteConnection: "حذف الاتصال", deleteConnectionDescription: "سيؤدي هذا إلى إزالة {{connection}} ومنح تطبيقاته.", deleteSharedConnectionDescription: "سيؤدي هذا إلى إزالة الاتصال المشترك ومنح تطبيقاته.", checkingAffectedApps: "جار التحقق من التطبيقات المتأثرة...", allAppConnection: "اتصال لكل التطبيقات", selectedGrants: "منح محددة", likelyAffected: "المتأثرة على الأرجح: {{apps}}{{suffix}}.", noCurrentAppGrants: "لم يتم العثور على منح تطبيقات حالية.", connectionUpdated: "تم تحديث الاتصال", connectionCreated: "تم إنشاء الاتصال", failedToSave: "فشل الحفظ", connectionRepaired: "تم إصلاح الاتصال", failedToApplySetup: "فشل تطبيق الإعداد", grantAdded: "تمت إضافة المنح", grantRevoked: "تم إلغاء المنح", failedToUpdateGrant: "فشل تحديث المنح", connectionDeleted: "تم حذف الاتصال", failedToDeleteConnection: "فشل حذف الاتصال", readyProviders: "المزوّدون الجاهزون", readyProvidersDetail: "المراجع مهيأة والحالة سليمة", connections: "الاتصالات", connectedCount_one: "{{count}} متصل", connectedCount_other: "{{count}} متصلة", connectedCount_many: "{{count}} متصلة", connectedCount_few: "{{count}} متصلة", connectedCount_two: "{{count}} متصلة", connectedCount_zero: "{{count}} متصلة", appGrantsDetail: "{{allAppCount}} لكل التطبيقات، {{selectedCount}} محددة", keyHealth: "سلامة المفاتيح", healthy: "سليم", missingCount_one: "{{count}} مفقود", missingCount_other: "{{count}} مفقودة", missingCount_many: "{{count}} مفقودة", missingCount_few: "{{count}} مفقودة", missingCount_two: "{{count}} مفقودة", missingCount_zero: "{{count}} مفقودة", connectionNeedsAttention_one: "{{count}} اتصال يحتاج انتباهًا", connectionNeedsAttention_other: "{{count}} اتصالات تحتاج انتباهًا", connectionNeedsAttention_many: "{{count}} اتصالات تحتاج انتباهًا", connectionNeedsAttention_few: "{{count}} اتصالات تحتاج انتباهًا", connectionNeedsAttention_two: "{{count}} اتصالات تحتاج انتباهًا", connectionNeedsAttention_zero: "{{count}} اتصالات تحتاج انتباهًا", requiredRefsPresent: "المراجع المطلوبة موجودة", neverUsedCount_one: "{{count}} لم يُستخدم قط", neverUsedCount_other: "{{count}} لم تُستخدم قط", neverUsedCount_many: "{{count}} لم تُستخدم قط", neverUsedCount_few: "{{count}} لم تُستخدم قط", neverUsedCount_two: "{{count}} لم تُستخدم قط", neverUsedCount_zero: "{{count}} لم تُستخدم قط", allTrackedAccountsHaveUsage: "كل الحسابات المتتبعة لديها استخدام", loadingWorkspaceIntegrations: "جار تحميل تكاملات مساحة العمل...", providerCatalog: "كتالوج المزوّدين", providersAvailable_one: "{{count}} مزوّد متاح", providersAvailable_other: "{{count}} مزوّدين متاحين", providersAvailable_many: "{{count}} مزوّدين متاحين", providersAvailable_few: "{{count}} مزوّدين متاحين", providersAvailable_two: "{{count}} مزوّدين متاحين", providersAvailable_zero: "{{count}} مزوّدين متاحين", connectedAccounts: "الحسابات المتصلة", noSharedConnectionsYet: "لا توجد اتصالات مشتركة بعد", savedConnectionCount_one: "{{count}} اتصال محفوظ", savedConnectionCount_other: "{{count}} اتصالات محفوظة", savedConnectionCount_many: "{{count}} اتصالات محفوظة", savedConnectionCount_few: "{{count}} اتصالات محفوظة", savedConnectionCount_two: "{{count}} اتصالات محفوظة", savedConnectionCount_zero: "{{count}} اتصالات محفوظة", noSharedAccountsYet: "لا توجد حسابات مشتركة بعد.", emptyConnectedAccountsDescription: "اختر مزوّدًا من الكتالوج أعلاه، واحفظ أسماء مراجع الاعتماد، ثم امنح الحساب المشترك إلى Brain أو Analytics أو Mail أو Dispatch أو تطبيق مساحة عمل آخر.", onboardingConnectTitle: "اربط مرة واحدة", onboardingConnectDetail: "احفظ بيانات الحساب الآمنة وأسماء مراجع الاعتماد في Dispatch.", onboardingGrantTitle: "امنح التطبيقات", onboardingGrantDetail: "اسمح لـ Brain أو Analytics أو Mail أو Dispatch بإعادة استخدام الحساب.", onboardingLocalTitle: "أبق إعداد التطبيق محليًا", onboardingLocalDetail: "تبقى القنوات وrepos والمؤشرات وقواعد المزامنة مع كل تطبيق.", onboardingTitle: "اربط مرة واحدة، وامنح للتطبيقات", onboardingDescription: "يمتلك Dispatch حسابات المزوّدين المشتركة. ويمتلك كل تطبيق طريقة استخدامه للحساب.", }, messaging: { managed: { connectionChecked: "تم التحقق من اتصال Slack", workspaceDisconnected: "تم قطع اتصال مساحة عمل Slack", actionFailed: "فشل إجراء Slack", channelPolicyUpdated: "تم تحديث سياسة القناة", policyUpdateFailed: "تعذر تحديث السياسة", positiveMonthlyBudget: "أدخل ميزانية شهرية موجبة", channelBudgetSaved: "تم حفظ ميزانية القناة", budgetSaveFailed: "تعذر حفظ الميزانية", title: "مساحات عمل Slack المُدارة", description: "يعزل OAuth رمز كل مساحة عمل ويفعّل سياق سلاسل الرسائل الأصلي وتقدم المهام المباشر.", addToSlack: "إضافة إلى Slack", agentManifest: "بيان الوكيل", agentManifestDescription: "يُفعّل بيان الوكيل عرض الوكيل والرسائل المباشرة في Slack.", requiredCredentials: "احفظ بيانات اعتماد تطبيق Slack المطلوبة أدناه لتفعيل الإضافة إلى Slack.", workspaceFallback: "مساحة عمل Slack", scopesUpdated_zero: "{{count}} نطاق · تم التحديث في {{date}}", scopesUpdated_one: "{{count}} نطاق · تم التحديث في {{date}}", scopesUpdated_two: "{{count}} نطاقان · تم التحديث في {{date}}", scopesUpdated_few: "{{count}} نطاقات · تم التحديث في {{date}}", scopesUpdated_many: "{{count}} نطاقًا · تم التحديث في {{date}}", scopesUpdated_other: "{{count}} نطاق · تم التحديث في {{date}}", health: { unknown: "غير معروف", healthy: "سليم", degraded: "متدهور", revoked: "ملغى", }, test: "اختبار", disconnect: "قطع الاتصال", empty: "لا توجد مساحات عمل مُدارة متصلة بعد. تظل بيانات الاعتماد اليدوية متاحة أدناه للإعدادات المحلية والقديمة.", channelAccessTitle: "الوصول إلى القناة والميزانيات", channelAccessDescription: "تعمل كل قناة بهوية خدمة معزولة. يظل وصول الضيوف وSlack Connect والوصول دون إشارة معطلاً حتى يفعّله مسؤول هنا.", isolatedIdentity: "{{trust}} · هوية خدمة معزولة", trust: { trusted: "موثوق", guest: "ضيف", external_shared: "مشاركة خارجية (Slack Connect)", unknown: "غير معروف", }, requireMention: "طلب الإشارة", allowGuests: "السماح للضيوف", allowSlackConnect: "السماح بـ Slack Connect", monthlyBudgetUsd: "ميزانية الذكاء الاصطناعي الشهرية (USD)", saveBudget: "حفظ الميزانية", }, }, dispatch: { nav: { automations: "الأتمتة", approvals: "الموافقات", delivery: "التسليم", agents: "الوكلاء", vault: "الخزنة", audit: "التدقيق", operations: "التشغيل", agent: "الوكيل", }, pages: { dataLoadFailed: "تعذر تحميل البيانات", dataLoadFailedDescription: "تعذر على Dispatch تحميل هذه البيانات.", tryAgain: "حاول مرة أخرى", also: "أيضًا", monitoring: "المراقبة", database: "قاعدة البيانات", chatAcrossApps: "تحدث عبر تطبيقاتك", chatAcrossAppsDescription: "وجّه العمل وتحقق من الحالة أو أنشئ شيئًا جديدًا من مكان واحد.", overviewPromptPlaceholder: "اسأل Dispatch عن أي شيء...", chatPromptPlaceholder: "اسأل Dispatch...", suggestionWorkspaceHealth: "لخّص حالة مساحة العمل الحالية", suggestionOnboardingApp: "أنشئ تطبيقًا لطلبات الإعداد", suggestionAnalyticsAgents: "تحقق من الوكلاء الذين يمكنهم المساعدة في التحليلات", workspaceShortcutsAria: "اختصارات مساحة العمل", deliveryQueue: "قائمة انتظار التسليم", failedLastHour: "{{count}} فشل خلال الساعة الماضية", processingCount: "{{count}} قيد المعالجة", queued: "في الانتظار", active: "نشط", done1h: "تم خلال ساعة", failed1h: "فشل خلال ساعة", oldestQueued: "الأقدم في الانتظار: {{age}}", queueAgeNone: "لا شيء", queueFailureHint: "تحقق من بيانات الاعتماد والوجهات وأخطاء قائمة الانتظار الأخيرة.", unknownPlatform: "غير معروف", attemptsCount: "{{count}} محاولات", noErrorMessage: "(لا توجد رسالة خطأ)", }, }, }), } satisfies Record;