@xopcai/xopc 0.0.86 → 0.0.88
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/feishu/src/adapters/cli-login.js +3 -3
- package/dist/extensions/feishu/src/adapters/cli-login.js.map +1 -1
- package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
- package/dist/extensions/feishu/src/workflow-progress.js +1 -1
- package/dist/extensions/telegram/src/delivery-chat-id.d.ts +1 -1
- package/dist/extensions/telegram/src/delivery-chat-id.js +1 -1
- package/dist/extensions/telegram/src/delivery-chat-id.js.map +1 -1
- package/dist/extensions/telegram/src/plugin.js +1 -1
- package/dist/extensions/telegram/src/routing-integration.js +3 -2
- package/dist/extensions/telegram/src/routing-integration.js.map +1 -1
- package/dist/extensions/telegram/src/workflow-progress.js +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/extensions/weixin/src/__tests__/workflow-progress.test.js +2 -2
- package/dist/extensions/weixin/src/__tests__/workflow-progress.test.js.map +1 -1
- package/dist/extensions/weixin/src/api/api.js +3 -3
- package/dist/extensions/weixin/src/api/api.js.map +1 -1
- package/dist/extensions/weixin/src/auth/accounts.js +12 -12
- package/dist/extensions/weixin/src/auth/accounts.js.map +1 -1
- package/dist/extensions/weixin/src/cdn/upload.js +1 -1
- package/dist/extensions/weixin/src/delivery-to.js +2 -2
- package/dist/extensions/weixin/src/delivery-to.js.map +1 -1
- package/dist/extensions/weixin/src/media/data-url.js +1 -1
- package/dist/extensions/weixin/src/messaging/debug-mode.js +5 -5
- package/dist/extensions/weixin/src/messaging/debug-mode.js.map +1 -1
- package/dist/extensions/weixin/src/messaging/inbound.js +11 -11
- package/dist/extensions/weixin/src/messaging/inbound.js.map +1 -1
- package/dist/extensions/weixin/src/messaging/process-message.js +1 -1
- package/dist/extensions/weixin/src/plugin.js +1 -1
- package/dist/extensions/weixin/src/storage/sync-buf.js +4 -4
- package/dist/extensions/weixin/src/storage/sync-buf.js.map +1 -1
- package/dist/extensions/weixin/src/workflow-progress.d.ts +1 -1
- package/dist/extensions/weixin/src/workflow-progress.js +1 -1
- package/dist/extensions/weixin/src/workflow-progress.js.map +1 -1
- package/dist/gateway/static/root/assets/agents-CRxETUZx.js +222 -0
- package/dist/gateway/static/root/assets/{apps-page-DrfytjOb.js → apps-page-wKWf3l57.js} +1 -1
- package/dist/gateway/static/root/assets/channels-settings-DDbqVNkx.js +1 -0
- package/dist/gateway/static/root/assets/{channels-status-swr-Bs5kMCMI.js → channels-status-swr-DIsl75Y3.js} +1 -1
- package/dist/gateway/static/root/assets/copy-SxMW6Xpc.js +1 -0
- package/dist/gateway/static/root/assets/{cron-api-BuVcZ5zR.js → cron-api-N9hvuRrn.js} +1 -1
- package/dist/gateway/static/root/assets/{cron-page-BMrloeFH.js → cron-page-tlNGNxhP.js} +1 -1
- package/dist/gateway/static/root/assets/{dist-CKU1OOTf.js → dist-CJwfHYvT.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-BdW_46sN.js → extension-debug-page-BVJohZoZ.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-DW47KI82.js → extension-page-BT2tmElC.js} +1 -1
- package/dist/gateway/static/root/assets/extension-settings-page-BSS47c2j.js +1 -0
- package/dist/gateway/static/root/assets/{fetch-B2MYHbWg.js → fetch-BaFNUtkE.js} +1 -1
- package/dist/gateway/static/root/assets/{field-primitives-DPG-oJmx.js → field-primitives-QwYEq6Hz.js} +1 -1
- package/dist/gateway/static/root/assets/{heartbeat-config-api-C8dNts9i.js → heartbeat-config-api-BVSidEDJ.js} +1 -1
- package/dist/gateway/static/root/assets/index-CqZzHNEg.css +1 -0
- package/dist/gateway/static/root/assets/{index-BmVYculr.js → index-qNrVJp-y.js} +97 -95
- package/dist/gateway/static/root/assets/{logs-page-sTsVWz0X.js → logs-page-DDonPVLn.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-DKt-Wmib.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-DuvRQW--.js → settings-form-section-B8N3A3Zo.js} +1 -1
- package/dist/gateway/static/root/assets/settings-page-DcJjvvw4.js +3 -0
- package/dist/gateway/static/root/assets/{share-preview-page-BtG2kLDh.js → share-preview-page-Q7KqkO-u.js} +1 -1
- package/dist/gateway/static/root/assets/skills-page-DuJ4BTO3.js +2 -0
- package/dist/gateway/static/root/assets/{theme-store-DryYl3qD.js → theme-store-BbRc5ugR.js} +1 -1
- package/dist/gateway/static/root/assets/url-D6jvVYIA.js +7 -0
- package/dist/gateway/static/root/assets/{utils-BY7bU1DT.js → utils-CxDGduqK.js} +1 -1
- package/dist/gateway/static/root/assets/voice-api-key-field-CTyHz7L_.js +1 -0
- package/dist/gateway/static/root/assets/workflows-page-GacJ41Fv.js +27 -0
- package/dist/gateway/static/root/index.html +6 -5
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.js +7 -7
- package/dist/src/agent/agent-scope.d.ts +4 -0
- package/dist/src/agent/agent-scope.js +53 -10
- package/dist/src/agent/agent-scope.js.map +1 -1
- package/dist/src/agent/bootstrap/filter-bootstrap-files.js +2 -1
- package/dist/src/agent/bootstrap/filter-bootstrap-files.js.map +1 -1
- package/dist/src/agent/bootstrap/load-bootstrap-files.js +1 -1
- package/dist/src/agent/child-agent-factory.d.ts +15 -0
- package/dist/src/agent/child-agent-factory.js +35 -2
- package/dist/src/agent/child-agent-factory.js.map +1 -1
- package/dist/src/agent/client-error-format.d.ts +20 -0
- package/dist/src/agent/client-error-format.js +97 -0
- package/dist/src/agent/client-error-format.js.map +1 -0
- package/dist/src/agent/context/workspace-seed.js +2 -2
- package/dist/src/agent/embedded/run-turn.js +23 -4
- package/dist/src/agent/embedded/run-turn.js.map +1 -1
- package/dist/src/agent/embedded/session-tool-result-guard.js +2 -1
- package/dist/src/agent/embedded/session-tool-result-guard.js.map +1 -1
- package/dist/src/agent/embedded/tool-result-truncation.js +2 -1
- package/dist/src/agent/embedded/tool-result-truncation.js.map +1 -1
- package/dist/src/agent/fallback/candidates.js +2 -2
- package/dist/src/agent/fallback/candidates.js.map +1 -1
- package/dist/src/agent/goals/goal-locale.d.ts +1 -1
- package/dist/src/agent/goals/goal-run-store.js +4 -4
- package/dist/src/agent/goals/persistent-goal-apis.d.ts +0 -2
- package/dist/src/agent/goals/persistent-goal-service.js +1 -2
- package/dist/src/agent/goals/persistent-goal-service.js.map +1 -1
- package/dist/src/agent/goals/post-turn.js +2 -2
- package/dist/src/agent/image/generation/normalization.js +2 -12
- package/dist/src/agent/image/generation/normalization.js.map +1 -1
- package/dist/src/agent/image/generation/provider-registry.d.ts +4 -8
- package/dist/src/agent/image/generation/provider-registry.js.map +1 -1
- package/dist/src/agent/image/generation/runtime.d.ts +2 -2
- package/dist/src/agent/image/generation/runtime.js.map +1 -1
- package/dist/src/agent/image/generation/types.d.ts +0 -18
- package/dist/src/agent/image/image-helpers.js +6 -1
- package/dist/src/agent/image/image-helpers.js.map +1 -1
- package/dist/src/agent/image/index.d.ts +1 -1
- package/dist/src/agent/image/load-image-media.js +2 -2
- package/dist/src/agent/inbound/inbound-loop.d.ts +5 -0
- package/dist/src/agent/inbound/inbound-loop.js +41 -10
- package/dist/src/agent/inbound/inbound-loop.js.map +1 -1
- package/dist/src/agent/inbound/turn-dispatcher.d.ts +4 -0
- package/dist/src/agent/inbound/turn-dispatcher.js +7 -5
- package/dist/src/agent/inbound/turn-dispatcher.js.map +1 -1
- package/dist/src/agent/ipc/bus.js +1 -1
- package/dist/src/agent/ipc/inbox.js +2 -2
- package/dist/src/agent/ipc/socket.js +1 -1
- package/dist/src/agent/mcp/bundle-mcp-materialize.js +2 -1
- package/dist/src/agent/mcp/bundle-mcp-materialize.js.map +1 -1
- package/dist/src/agent/mcp/bundle-mcp-names.js +2 -1
- package/dist/src/agent/mcp/bundle-mcp-names.js.map +1 -1
- package/dist/src/agent/mcp/bundle-mcp-runtime.js +2 -1
- package/dist/src/agent/mcp/bundle-mcp-runtime.js.map +1 -1
- package/dist/src/agent/mcp/mcp-transport-config.js +2 -1
- package/dist/src/agent/mcp/mcp-transport-config.js.map +1 -1
- package/dist/src/agent/mcp/mcp-transport.js +2 -1
- package/dist/src/agent/mcp/mcp-transport.js.map +1 -1
- package/dist/src/agent/media-generation/runtime-shared.js +2 -9
- package/dist/src/agent/media-generation/runtime-shared.js.map +1 -1
- package/dist/src/agent/memory/builtin-memory-store.js +1 -1
- package/dist/src/agent/memory/dreaming/deep-promotion.js +1 -1
- package/dist/src/agent/memory/dreaming/events.js +1 -1
- package/dist/src/agent/memory/dreaming/last-run.js +1 -1
- package/dist/src/agent/memory/dreaming/light-sweep.js +1 -1
- package/dist/src/agent/memory/dreaming/preview.js +1 -1
- package/dist/src/agent/memory/dreaming/rem-patterns.js +1 -1
- package/dist/src/agent/memory/dreaming/short-term-store.js +1 -1
- package/dist/src/agent/memory/dreaming/utils.js +1 -1
- package/dist/src/agent/memory/plugin-discovery.js +1 -1
- package/dist/src/agent/messaging/command-handler.d.ts +6 -0
- package/dist/src/agent/messaging/command-handler.js +5 -0
- package/dist/src/agent/messaging/command-handler.js.map +1 -1
- package/dist/src/agent/models/manager.js +1 -1
- package/dist/src/agent/orchestration/llm-turn-retry.d.ts +2 -0
- package/dist/src/agent/orchestration/llm-turn-retry.js +9 -1
- package/dist/src/agent/orchestration/llm-turn-retry.js.map +1 -1
- package/dist/src/agent/prompt/safety.d.ts +0 -7
- package/dist/src/agent/prompt/safety.js +1 -20
- package/dist/src/agent/prompt/safety.js.map +1 -1
- package/dist/src/agent/prompt/service-prompt-builder.js +2 -2
- package/dist/src/agent/reply/post-compaction-context.js +1 -1
- package/dist/src/agent/reply/workspace-boundary-read.js +1 -1
- package/dist/src/agent/sandbox/path-policy.js +2 -2
- package/dist/src/agent/service/build-direct-message-content.js +2 -2
- package/dist/src/agent/service/build-direct-message-content.js.map +1 -1
- package/dist/src/agent/service/direct-turn-helpers.d.ts +3 -1
- package/dist/src/agent/service/direct-turn-helpers.js +6 -1
- package/dist/src/agent/service/direct-turn-helpers.js.map +1 -1
- package/dist/src/agent/service/process-direct-one-shot.d.ts +4 -0
- package/dist/src/agent/service/process-direct-one-shot.js +15 -2
- package/dist/src/agent/service/process-direct-one-shot.js.map +1 -1
- package/dist/src/agent/service/process-direct-streaming.d.ts +4 -0
- package/dist/src/agent/service/process-direct-streaming.js +53 -7
- package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
- package/dist/src/agent/service/webchat-tts.d.ts +1 -2
- package/dist/src/agent/service/webchat-tts.js +2 -2
- package/dist/src/agent/service/webchat-tts.js.map +1 -1
- package/dist/src/agent/service.d.ts +8 -0
- package/dist/src/agent/service.js +25 -5
- package/dist/src/agent/service.js.map +1 -1
- package/dist/src/agent/session/session-inspector.js +1 -1
- package/dist/src/agent/skills/config.js +1 -1
- package/dist/src/agent/skills/hub-hash.js +2 -2
- package/dist/src/agent/skills/hub-lock.js +1 -1
- package/dist/src/agent/skills/hub-pull.js +2 -2
- package/dist/src/agent/skills/index.js +1 -1
- package/dist/src/agent/skills/managed-store.js +1 -1
- package/dist/src/agent/skills/scanner.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +1 -1
- package/dist/src/agent/skills/skill-manager.js +1 -1
- package/dist/src/agent/tools/create-share-tool.js +27 -20
- package/dist/src/agent/tools/create-share-tool.js.map +1 -1
- package/dist/src/agent/tools/dreaming-tool.js +1 -1
- package/dist/src/agent/tools/factory.js +2 -2
- package/dist/src/agent/tools/image-generate-tool.js +1 -1
- package/dist/src/agent/tools/index.d.ts +0 -1
- package/dist/src/agent/tools/index.js +4 -5
- package/dist/src/agent/tools/send-media.js +1 -1
- package/dist/src/agent/tools/shell.js +0 -13
- package/dist/src/agent/tools/shell.js.map +1 -1
- package/dist/src/agent/tools/skill-manage-tool.js +1 -1
- package/dist/src/agent/tools/workflow-tool.js +70 -16
- package/dist/src/agent/tools/workflow-tool.js.map +1 -1
- package/dist/src/agent/tools/write.js +1 -1
- package/dist/src/agent/workflow/agent-progress.d.ts +5 -0
- package/dist/src/agent/workflow/agent-progress.js +65 -0
- package/dist/src/agent/workflow/agent-progress.js.map +1 -0
- package/dist/src/agent/workflow/builtins/audit-repo.d.ts +1 -1
- package/dist/src/agent/workflow/builtins/audit-repo.js +14 -0
- package/dist/src/agent/workflow/builtins/audit-repo.js.map +1 -1
- package/dist/src/agent/workflow/builtins/debug-incident.d.ts +1 -1
- package/dist/src/agent/workflow/builtins/debug-incident.js +14 -0
- package/dist/src/agent/workflow/builtins/debug-incident.js.map +1 -1
- package/dist/src/agent/workflow/builtins/implementation-plan.d.ts +12 -0
- package/dist/src/agent/workflow/builtins/implementation-plan.js +175 -0
- package/dist/src/agent/workflow/builtins/implementation-plan.js.map +1 -0
- package/dist/src/agent/workflow/builtins/index.d.ts +3 -1
- package/dist/src/agent/workflow/builtins/index.js +11 -1
- package/dist/src/agent/workflow/builtins/index.js.map +1 -1
- package/dist/src/agent/workflow/builtins/multi-perspective-review.d.ts +1 -1
- package/dist/src/agent/workflow/builtins/multi-perspective-review.js +14 -0
- package/dist/src/agent/workflow/builtins/multi-perspective-review.js.map +1 -1
- package/dist/src/agent/workflow/builtins/pr-review.d.ts +1 -1
- package/dist/src/agent/workflow/builtins/pr-review.js +14 -0
- package/dist/src/agent/workflow/builtins/pr-review.js.map +1 -1
- package/dist/src/agent/workflow/builtins/release-check.d.ts +11 -0
- package/dist/src/agent/workflow/builtins/release-check.js +165 -0
- package/dist/src/agent/workflow/builtins/release-check.js.map +1 -0
- package/dist/src/agent/workflow/builtins/research.d.ts +1 -1
- package/dist/src/agent/workflow/builtins/research.js +14 -0
- package/dist/src/agent/workflow/builtins/research.js.map +1 -1
- package/dist/src/agent/workflow/catalog.js +1 -1
- package/dist/src/agent/workflow/channel-capability.d.ts +3 -3
- package/dist/src/agent/workflow/index.d.ts +2 -1
- package/dist/src/agent/workflow/index.js +3 -2
- package/dist/src/agent/workflow/lint.d.ts +38 -0
- package/dist/src/agent/workflow/lint.js +74 -0
- package/dist/src/agent/workflow/lint.js.map +1 -0
- package/dist/src/agent/workflow/meta-locale.d.ts +12 -0
- package/dist/src/agent/workflow/meta-locale.js +62 -0
- package/dist/src/agent/workflow/meta-locale.js.map +1 -0
- package/dist/src/agent/workflow/parser.js +7 -1
- package/dist/src/agent/workflow/parser.js.map +1 -1
- package/dist/src/agent/workflow/runtime.d.ts +4 -1
- package/dist/src/agent/workflow/runtime.js +88 -8
- package/dist/src/agent/workflow/runtime.js.map +1 -1
- package/dist/src/agent/workflow/snapshot.js +2 -12
- package/dist/src/agent/workflow/snapshot.js.map +1 -1
- package/dist/src/agent/workflow/step-labels.d.ts +8 -0
- package/dist/src/agent/workflow/step-labels.js +48 -0
- package/dist/src/agent/workflow/step-labels.js.map +1 -0
- package/dist/src/agent/workflow/subagent-runner.js +46 -1
- package/dist/src/agent/workflow/subagent-runner.js.map +1 -1
- package/dist/src/agent/workflow/types.d.ts +76 -1
- package/dist/src/auth/credentials.d.ts +5 -0
- package/dist/src/auth/credentials.js +12 -3
- package/dist/src/auth/credentials.js.map +1 -1
- package/dist/src/auth/profiles/store.js +1 -1
- package/dist/src/auth/sync-provider-auth.js +1 -1
- package/dist/src/browser/cache-dir-policy.js +1 -1
- package/dist/src/browser/cdp-local-launcher.js +2 -2
- package/dist/src/browser/index.js +4 -4
- package/dist/src/browser/manager.d.ts +1 -3
- package/dist/src/browser/manager.js +0 -6
- package/dist/src/browser/manager.js.map +1 -1
- package/dist/src/browser/providers/browser-ext-install.d.ts +4 -4
- package/dist/src/browser/providers/browser-ext-install.js +41 -88
- package/dist/src/browser/providers/browser-ext-install.js.map +1 -1
- package/dist/src/browser/providers/cloakbrowser.d.ts +0 -5
- package/dist/src/browser/providers/cloakbrowser.js +6 -59
- package/dist/src/browser/providers/cloakbrowser.js.map +1 -1
- package/dist/src/browser/providers/playwright-doctor.js +1 -1
- package/dist/src/browser/stealth.js +1 -1
- package/dist/src/channels/attachments/inbound-persist.js +1 -1
- package/dist/src/channels/attachments/outbound-tts-persist.js +1 -1
- package/dist/src/channels/attachments/voice-stt-webchat.js +10 -8
- package/dist/src/channels/attachments/voice-stt-webchat.js.map +1 -1
- package/dist/src/channels/outbound/persist-store.js +1 -1
- package/dist/src/channels/pairing/allow-from-file.js +9 -9
- package/dist/src/channels/pairing/allow-from-file.js.map +1 -1
- package/dist/src/channels/pairing/pairing-store.js +7 -7
- package/dist/src/channels/pairing/pairing-store.js.map +1 -1
- package/dist/src/chat-commands/builtins/config.js +2 -2
- package/dist/src/chat-commands/builtins/session.js +1 -1
- package/dist/src/chat-commands/builtins/session.js.map +1 -1
- package/dist/src/chat-commands/builtins/tts.js +2 -2
- package/dist/src/chat-commands/builtins/tts.js.map +1 -1
- package/dist/src/chat-commands/context.d.ts +3 -0
- package/dist/src/chat-commands/context.js +22 -4
- package/dist/src/chat-commands/context.js.map +1 -1
- package/dist/src/chat-commands/session-key.d.ts +4 -37
- package/dist/src/chat-commands/session-key.js +49 -85
- package/dist/src/chat-commands/session-key.js.map +1 -1
- package/dist/src/chat-commands/types.d.ts +2 -0
- package/dist/src/cli/commands/agent/interactive.js +2 -2
- package/dist/src/cli/commands/agent/interactive.js.map +1 -1
- package/dist/src/cli/commands/agent/sessions.js +2 -2
- package/dist/src/cli/commands/agent/sessions.js.map +1 -1
- package/dist/src/cli/commands/agent.js +4 -5
- package/dist/src/cli/commands/agent.js.map +1 -1
- package/dist/src/cli/commands/channels.js +1 -5
- package/dist/src/cli/commands/channels.js.map +1 -1
- package/dist/src/cli/commands/config.js +1 -1
- package/dist/src/cli/commands/doctor/checks/config-health.js +1 -1
- package/dist/src/cli/commands/doctor/checks/provider-auth.js +1 -1
- package/dist/src/cli/commands/doctor/checks/session-integrity.js +1 -1
- package/dist/src/cli/commands/doctor/checks/state-integrity.js +1 -1
- package/dist/src/cli/commands/doctor/checks/workspace-status.js +1 -1
- package/dist/src/cli/commands/extension-dev.js +1 -1
- package/dist/src/cli/commands/extension-marketplace.js +1 -1
- package/dist/src/cli/commands/extension-pack.js +1 -1
- package/dist/src/cli/commands/gateway/lifecycle-core.js +1 -1
- package/dist/src/cli/commands/gateway/lifecycle-core.js.map +1 -1
- package/dist/src/cli/commands/gateway/logs.d.ts +9 -0
- package/dist/src/cli/commands/gateway/logs.js +50 -17
- package/dist/src/cli/commands/gateway/logs.js.map +1 -1
- package/dist/src/cli/commands/image.js +23 -22
- package/dist/src/cli/commands/image.js.map +1 -1
- package/dist/src/cli/commands/init.js +4 -4
- package/dist/src/cli/commands/onboard.js +1 -1
- package/dist/src/cli/commands/session/utils.js +2 -2
- package/dist/src/cli/commands/session/utils.js.map +1 -1
- package/dist/src/cli/commands/update.js +26 -46
- package/dist/src/cli/commands/update.js.map +1 -1
- package/dist/src/cli/utils/init-workspace-core.js +2 -2
- package/dist/src/cli/utils/session.d.ts +0 -5
- package/dist/src/cli/utils/session.js +1 -6
- package/dist/src/cli/utils/session.js.map +1 -1
- package/dist/src/commands/agents.config.js +1 -1
- package/dist/src/commands/agents.config.js.map +1 -1
- package/dist/src/config/agent-profile.js +6 -28
- package/dist/src/config/agent-profile.js.map +1 -1
- package/dist/src/config/agent-typed-models.d.ts +18 -0
- package/dist/src/config/agent-typed-models.js +53 -0
- package/dist/src/config/agent-typed-models.js.map +1 -0
- package/dist/src/config/gateway-bind.js +1 -1
- package/dist/src/config/index.js +6 -6
- package/dist/src/config/loader.js +2 -2
- package/dist/src/config/model-input.js +2 -5
- package/dist/src/config/model-input.js.map +1 -1
- package/dist/src/config/models-json.js +2 -2
- package/dist/src/config/paths-state.js +1 -1
- package/dist/src/config/profile.js +2 -2
- package/dist/src/config/schema.d.ts +253 -217
- package/dist/src/config/schema.js +91 -40
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/config/voice.d.ts +3 -28
- package/dist/src/config/voice.js +27 -261
- package/dist/src/config/voice.js.map +1 -1
- package/dist/src/config/workspace-path-helpers.d.ts +1 -2
- package/dist/src/config/workspace-path-helpers.js.map +1 -1
- package/dist/src/config/workspace-path.js +1 -1
- package/dist/src/cron/executor.js +2 -2
- package/dist/src/cron/persistence.js +1 -1
- package/dist/src/cron/run-log-store.js +1 -1
- package/dist/src/daemon/constants.js +1 -1
- package/dist/src/daemon/install-plan.js +27 -3
- package/dist/src/daemon/install-plan.js.map +1 -1
- package/dist/src/daemon/launchd.d.ts +8 -0
- package/dist/src/daemon/launchd.js +7 -14
- package/dist/src/daemon/launchd.js.map +1 -1
- package/dist/src/daemon/schtasks.d.ts +25 -0
- package/dist/src/daemon/schtasks.js +168 -48
- package/dist/src/daemon/schtasks.js.map +1 -1
- package/dist/src/daemon/service.js +5 -4
- package/dist/src/daemon/service.js.map +1 -1
- package/dist/src/daemon/systemd.d.ts +6 -0
- package/dist/src/daemon/systemd.js +20 -5
- package/dist/src/daemon/systemd.js.map +1 -1
- package/dist/src/extensions/activation-context.js +0 -1
- package/dist/src/extensions/activation-context.js.map +1 -1
- package/dist/src/extensions/bundle-mcp.js +1 -1
- package/dist/src/extensions/discover-extensions.js +1 -1
- package/dist/src/extensions/health.js +1 -1
- package/dist/src/extensions/loader.js +1 -1
- package/dist/src/extensions/lockfile.js +2 -2
- package/dist/src/extensions/normalize-manifest.js +0 -1
- package/dist/src/extensions/normalize-manifest.js.map +1 -1
- package/dist/src/extensions/types/manifest.d.ts +0 -2
- package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
- package/dist/src/gateway/agent-builtin-tools.js +1 -0
- package/dist/src/gateway/agent-builtin-tools.js.map +1 -1
- package/dist/src/gateway/agents-admin.d.ts +9 -0
- package/dist/src/gateway/agents-admin.js +28 -4
- package/dist/src/gateway/agents-admin.js.map +1 -1
- package/dist/src/gateway/config-tools-web.js +3 -2
- package/dist/src/gateway/config-tools-web.js.map +1 -1
- package/dist/src/gateway/file-path-classifier.js +2 -2
- package/dist/src/gateway/heartbeat/service.js +2 -2
- package/dist/src/gateway/heartbeat/service.js.map +1 -1
- package/dist/src/gateway/hono/app.js +1 -1
- package/dist/src/gateway/hono/lib/agent-model.d.ts +25 -10
- package/dist/src/gateway/hono/lib/agent-model.js +60 -36
- package/dist/src/gateway/hono/lib/agent-model.js.map +1 -1
- package/dist/src/gateway/hono/lib/config-payload.js +29 -6
- package/dist/src/gateway/hono/lib/config-payload.js.map +1 -1
- package/dist/src/gateway/hono/lib/extension-store.js +2 -2
- package/dist/src/gateway/hono/lib/mask-secret-length.d.ts +6 -0
- package/dist/src/gateway/hono/lib/mask-secret-length.js +16 -0
- package/dist/src/gateway/hono/lib/mask-secret-length.js.map +1 -0
- package/dist/src/gateway/hono/lib/safe-providers-config.d.ts +1 -1
- package/dist/src/gateway/hono/lib/safe-providers-config.js +2 -1
- package/dist/src/gateway/hono/lib/safe-providers-config.js.map +1 -1
- package/dist/src/gateway/hono/lib/safe-voice-config.js +16 -54
- package/dist/src/gateway/hono/lib/safe-voice-config.js.map +1 -1
- package/dist/src/gateway/hono/lib/static-ui.js +2 -2
- package/dist/src/gateway/hono/oauth.js +1 -1
- package/dist/src/gateway/hono/routes/agents.js +2 -2
- package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
- package/dist/src/gateway/hono/routes/config-patch/agents.js +25 -7
- package/dist/src/gateway/hono/routes/config-patch/agents.js.map +1 -1
- package/dist/src/gateway/hono/routes/config-patch/channels.js +0 -11
- package/dist/src/gateway/hono/routes/config-patch/channels.js.map +1 -1
- package/dist/src/gateway/hono/routes/config-patch/gateway.js +3 -2
- package/dist/src/gateway/hono/routes/config-patch/gateway.js.map +1 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +8 -3
- package/dist/src/gateway/hono/routes/config-patch/misc.js.map +1 -1
- package/dist/src/gateway/hono/routes/config.js +59 -0
- package/dist/src/gateway/hono/routes/config.js.map +1 -1
- package/dist/src/gateway/hono/routes/dreaming.js +1 -1
- package/dist/src/gateway/hono/routes/goals.js +1 -1
- package/dist/src/gateway/hono/routes/goals.js.map +1 -1
- package/dist/src/gateway/hono/routes/host-fs.js +2 -2
- package/dist/src/gateway/hono/routes/lazy-bundles.js +8 -0
- package/dist/src/gateway/hono/routes/lazy-bundles.js.map +1 -1
- package/dist/src/gateway/hono/routes/models.js +75 -12
- package/dist/src/gateway/hono/routes/models.js.map +1 -1
- package/dist/src/gateway/hono/routes/sessions.js +28 -7
- package/dist/src/gateway/hono/routes/sessions.js.map +1 -1
- package/dist/src/gateway/hono/routes/shares.js +15 -13
- package/dist/src/gateway/hono/routes/shares.js.map +1 -1
- package/dist/src/gateway/hono/routes/tunnel.js +1 -1
- package/dist/src/gateway/hono/routes/update.js +4 -2
- package/dist/src/gateway/hono/routes/update.js.map +1 -1
- package/dist/src/gateway/hono/routes/voice.js +75 -0
- package/dist/src/gateway/hono/routes/voice.js.map +1 -1
- package/dist/src/gateway/hono/routes/workflows.d.ts +3 -0
- package/dist/src/gateway/hono/routes/workflows.js +347 -0
- package/dist/src/gateway/hono/routes/workflows.js.map +1 -0
- package/dist/src/gateway/hono/routes/workspace.js +4 -4
- package/dist/src/gateway/hono/sse.js +16 -33
- package/dist/src/gateway/hono/sse.js.map +1 -1
- package/dist/src/gateway/lock.js +11 -11
- package/dist/src/gateway/lock.js.map +1 -1
- package/dist/src/gateway/ports.js +6 -6
- package/dist/src/gateway/ports.js.map +1 -1
- package/dist/src/gateway/resolve-webchat-session-key.d.ts +19 -0
- package/dist/src/gateway/resolve-webchat-session-key.js +46 -0
- package/dist/src/gateway/resolve-webchat-session-key.js.map +1 -0
- package/dist/src/gateway/service/agent-runner.js +2 -2
- package/dist/src/gateway/service/marketplace-service.js +2 -2
- package/dist/src/gateway/service/run-gateway-agent.js +9 -11
- package/dist/src/gateway/service/run-gateway-agent.js.map +1 -1
- package/dist/src/gateway/service/sessions-api.d.ts +3 -0
- package/dist/src/gateway/service/sessions-api.js +8 -0
- package/dist/src/gateway/service/sessions-api.js.map +1 -1
- package/dist/src/gateway/service.d.ts +3 -2
- package/dist/src/gateway/service.js +9 -8
- package/dist/src/gateway/service.js.map +1 -1
- package/dist/src/gateway/session-reset-service.d.ts +20 -0
- package/dist/src/gateway/session-reset-service.js +54 -0
- package/dist/src/gateway/session-reset-service.js.map +1 -0
- package/dist/src/gateway/startup-readiness.d.ts +1 -1
- package/dist/src/gateway/startup-readiness.js +1 -0
- package/dist/src/gateway/startup-readiness.js.map +1 -1
- package/dist/src/gateway/workspace-fs-file-list.js +1 -1
- package/dist/src/heartbeat/index.js +1 -1
- package/dist/src/infra/gateway-processes.js +2 -2
- package/dist/src/infra/gateway-processes.js.map +1 -1
- package/dist/src/infra/restart.js +2 -2
- package/dist/src/infra/run-command.d.ts +16 -0
- package/dist/src/infra/run-command.js +67 -0
- package/dist/src/infra/run-command.js.map +1 -0
- package/dist/src/infra/update-check.js +1 -1
- package/dist/src/infra/update-global.d.ts +45 -0
- package/dist/src/infra/update-global.js +224 -0
- package/dist/src/infra/update-global.js.map +1 -0
- package/dist/src/infra/update-lock.js +3 -3
- package/dist/src/infra/update-runner.js +1 -1
- package/dist/src/infra/update-startup.js +2 -2
- package/dist/src/infra/write-file-atomic.js +2 -2
- package/dist/src/mcp/channel-shared.js +2 -1
- package/dist/src/mcp/channel-shared.js.map +1 -1
- package/dist/src/providers/auth-runtime/auth-profile-store.js +2 -2
- package/dist/src/providers/auth-runtime/auth-profile-store.js.map +1 -1
- package/dist/src/providers/auth-runtime/resolve-auth.js +1 -12
- package/dist/src/providers/auth-runtime/resolve-auth.js.map +1 -1
- package/dist/src/providers/auth-runtime/types.d.ts +6 -12
- package/dist/src/providers/index.js +2 -2
- package/dist/src/providers/model-registry.js +1 -1
- package/dist/src/routing/agent-session-key.d.ts +58 -0
- package/dist/src/routing/agent-session-key.js +164 -0
- package/dist/src/routing/agent-session-key.js.map +1 -0
- package/dist/src/routing/index.d.ts +1 -1
- package/dist/src/routing/index.js +4 -2
- package/dist/src/routing/index.js.map +1 -1
- package/dist/src/routing/resolve-route.d.ts +15 -0
- package/dist/src/routing/resolve-route.js +41 -20
- package/dist/src/routing/resolve-route.js.map +1 -1
- package/dist/src/routing/resolve-tui-session-key.d.ts +25 -0
- package/dist/src/routing/resolve-tui-session-key.js +54 -0
- package/dist/src/routing/resolve-tui-session-key.js.map +1 -0
- package/dist/src/routing/session-key-utils.d.ts +24 -0
- package/dist/src/routing/session-key-utils.js +92 -0
- package/dist/src/routing/session-key-utils.js.map +1 -0
- package/dist/src/routing/session-key.d.ts +19 -49
- package/dist/src/routing/session-key.js +143 -116
- package/dist/src/routing/session-key.js.map +1 -1
- package/dist/src/session/config-store.js +2 -2
- package/dist/src/session/index.d.ts +6 -0
- package/dist/src/session/index.js +7 -1
- package/dist/src/session/init-session-turn.d.ts +30 -0
- package/dist/src/session/init-session-turn.js +102 -0
- package/dist/src/session/init-session-turn.js.map +1 -0
- package/dist/src/session/lifecycle-timestamps.d.ts +8 -0
- package/dist/src/session/lifecycle-timestamps.js +16 -0
- package/dist/src/session/lifecycle-timestamps.js.map +1 -0
- package/dist/src/session/manager.d.ts +7 -1
- package/dist/src/session/manager.js +8 -1
- package/dist/src/session/manager.js.map +1 -1
- package/dist/src/session/parity/jsonl-transcript-io.js +2 -2
- package/dist/src/session/parity/sessions-json-file.js +1 -1
- package/dist/src/session/parity/transcript-file-lock.js +2 -2
- package/dist/src/session/parity/transcript-paths.js +2 -2
- package/dist/src/session/parity/transcript-paths.js.map +1 -1
- package/dist/src/session/parity/xopc-session-disk-entry.d.ts +6 -0
- package/dist/src/session/reset-policy.d.ts +32 -0
- package/dist/src/session/reset-policy.js +65 -0
- package/dist/src/session/reset-policy.js.map +1 -0
- package/dist/src/session/reset-triggers.d.ts +20 -0
- package/dist/src/session/reset-triggers.js +63 -0
- package/dist/src/session/reset-triggers.js.map +1 -0
- package/dist/src/session/reset-type.d.ts +12 -0
- package/dist/src/session/reset-type.js +25 -0
- package/dist/src/session/reset-type.js.map +1 -0
- package/dist/src/session/resolve-session.d.ts +30 -0
- package/dist/src/session/resolve-session.js +93 -0
- package/dist/src/session/resolve-session.js.map +1 -0
- package/dist/src/session/search-index-cache.js +1 -1
- package/dist/src/session/search-index.js +1 -1
- package/dist/src/session/session-title.js +3 -2
- package/dist/src/session/session-title.js.map +1 -1
- package/dist/src/session/store.d.ts +11 -4
- package/dist/src/session/store.js +62 -11
- package/dist/src/session/store.js.map +1 -1
- package/dist/src/session/transcript-events.js +2 -1
- package/dist/src/session/transcript-events.js.map +1 -1
- package/dist/src/share/share-auto.js +2 -2
- package/dist/src/share/share-store.js +3 -3
- package/dist/src/share/share-thumbnail.js +2 -2
- package/dist/src/share/share-url.d.ts +33 -0
- package/dist/src/share/share-url.js +56 -14
- package/dist/src/share/share-url.js.map +1 -1
- package/dist/src/share/share-zip.js +1 -1
- package/dist/src/share/site-share-store.js +3 -3
- package/dist/src/share/site-static-serve.js +1 -1
- package/dist/src/tui/backends/embedded-backend.js +4 -9
- package/dist/src/tui/backends/embedded-backend.js.map +1 -1
- package/dist/src/tui/backends/gateway-sse-backend.js +1 -1
- package/dist/src/tui/backends/gateway-sse-backend.js.map +1 -1
- package/dist/src/tui/clipboard-image.js +3 -3
- package/dist/src/tui/components/chat-log.js +3 -3
- package/dist/src/tui/components/chat-log.js.map +1 -1
- package/dist/src/tui/theme-manager.js +1 -1
- package/dist/src/tui/theme.d.ts +0 -2
- package/dist/src/tui/theme.js +1 -3
- package/dist/src/tui/theme.js.map +1 -1
- package/dist/src/tui/tui-agent-events.js +2 -1
- package/dist/src/tui/tui-agent-events.js.map +1 -1
- package/dist/src/tui/tui-commands.d.ts +3 -0
- package/dist/src/tui/tui-commands.js +45 -10
- package/dist/src/tui/tui-commands.js.map +1 -1
- package/dist/src/tui/tui-keybindings-file.js +2 -22
- package/dist/src/tui/tui-keybindings-file.js.map +1 -1
- package/dist/src/tui/tui-scoped-models.js +2 -2
- package/dist/src/tui/tui-session-actions.d.ts +28 -0
- package/dist/src/tui/tui-session-actions.js +88 -0
- package/dist/src/tui/tui-session-actions.js.map +1 -0
- package/dist/src/tui/tui-settings.js +1 -1
- package/dist/src/tui/tui.js +54 -49
- package/dist/src/tui/tui.js.map +1 -1
- package/dist/src/tunnel/frpc-binary.js +3 -3
- package/dist/src/tunnel/frpc-config.js +1 -1
- package/dist/src/tunnel/frpc-extract.js +1 -1
- package/dist/src/tunnel/tunnel-state.js +1 -1
- package/dist/src/utils/logger/audit.js +1 -1
- package/dist/src/utils/logger/log-store.js +1 -1
- package/dist/src/utils/logger/rotation.js +1 -1
- package/dist/src/utils/string-coerce.d.ts +2 -0
- package/dist/src/utils/string-coerce.js +10 -1
- package/dist/src/utils/string-coerce.js.map +1 -1
- package/dist/src/voice/metadata/builtin.d.ts +2 -0
- package/dist/src/voice/metadata/builtin.js +420 -0
- package/dist/src/voice/metadata/builtin.js.map +1 -0
- package/dist/src/voice/metadata/index.d.ts +4 -0
- package/dist/src/voice/metadata/index.js +3 -0
- package/dist/src/voice/metadata/registry.d.ts +5 -0
- package/dist/src/voice/metadata/registry.js +34 -0
- package/dist/src/voice/metadata/registry.js.map +1 -0
- package/dist/src/voice/metadata/types.d.ts +41 -0
- package/dist/src/voice/metadata/types.js +1 -0
- package/dist/src/voice/stt/config-slice.d.ts +2 -5
- package/dist/src/voice/stt/config-slice.js +5 -26
- package/dist/src/voice/stt/config-slice.js.map +1 -1
- package/dist/src/voice/stt/list-providers.d.ts +3 -3
- package/dist/src/voice/stt/list-providers.js +41 -6
- package/dist/src/voice/stt/list-providers.js.map +1 -1
- package/dist/src/voice/stt/types.d.ts +1 -18
- package/dist/src/voice/stt/types.js +4 -2
- package/dist/src/voice/stt/types.js.map +1 -1
- package/dist/src/voice/tts/audio.js +1 -1
- package/dist/src/voice/tts/config-slice.d.ts +3 -7
- package/dist/src/voice/tts/config-slice.js +7 -38
- package/dist/src/voice/tts/config-slice.js.map +1 -1
- package/dist/src/voice/tts/list-providers.d.ts +3 -3
- package/dist/src/voice/tts/list-providers.js +41 -6
- package/dist/src/voice/tts/list-providers.js.map +1 -1
- package/dist/src/voice/tts/merge-config.js +2 -48
- package/dist/src/voice/tts/merge-config.js.map +1 -1
- package/dist/src/voice/tts/providers/alibaba-speech.js +1 -1
- package/dist/src/voice/tts/providers/alibaba-speech.js.map +1 -1
- package/dist/src/voice/tts/providers/edge-speech.js +2 -2
- package/dist/src/voice/tts/types.d.ts +1 -29
- package/dist/src/voice/tts/types.js +19 -17
- package/dist/src/voice/tts/types.js.map +1 -1
- package/dist/src/workflows/domain/command.d.ts +18 -0
- package/dist/src/workflows/domain/command.js +1 -0
- package/dist/src/workflows/domain/definition.d.ts +62 -0
- package/dist/src/workflows/domain/definition.js +1 -0
- package/dist/src/workflows/domain/event.d.ts +67 -0
- package/dist/src/workflows/domain/event.js +1 -0
- package/dist/src/workflows/domain/index.d.ts +5 -0
- package/dist/src/workflows/domain/index.js +2 -0
- package/dist/src/workflows/domain/result.d.ts +65 -0
- package/dist/src/workflows/domain/result.js +1 -0
- package/dist/src/workflows/domain/run.d.ts +120 -0
- package/dist/src/workflows/domain/run.js +14 -0
- package/dist/src/workflows/domain/run.js.map +1 -0
- package/dist/src/workflows/engine/index.d.ts +2 -0
- package/dist/src/workflows/engine/index.js +3 -0
- package/dist/src/workflows/engine/projector.d.ts +3 -0
- package/dist/src/workflows/engine/projector.js +205 -0
- package/dist/src/workflows/engine/projector.js.map +1 -0
- package/dist/src/workflows/engine/workflow-engine.d.ts +31 -0
- package/dist/src/workflows/engine/workflow-engine.js +188 -0
- package/dist/src/workflows/engine/workflow-engine.js.map +1 -0
- package/dist/src/workflows/index.d.ts +6 -0
- package/dist/src/workflows/index.js +11 -0
- package/dist/src/workflows/runtime/index.d.ts +1 -0
- package/dist/src/workflows/runtime/index.js +4 -0
- package/dist/src/workflows/runtime/script-runtime.d.ts +3 -0
- package/dist/src/workflows/runtime/script-runtime.js +3 -0
- package/dist/src/workflows/store/event-store.d.ts +17 -0
- package/dist/src/workflows/store/event-store.js +83 -0
- package/dist/src/workflows/store/event-store.js.map +1 -0
- package/dist/src/workflows/store/paths.d.ts +7 -0
- package/dist/src/workflows/store/paths.js +26 -0
- package/dist/src/workflows/store/paths.js.map +1 -0
- package/dist/src/workflows/store/run-store.d.ts +13 -0
- package/dist/src/workflows/store/run-store.js +68 -0
- package/dist/src/workflows/store/run-store.js.map +1 -0
- package/package.json +5 -8
- package/dist/gateway/static/root/assets/agents-mS3_HpRI.js +0 -222
- package/dist/gateway/static/root/assets/channels-settings-BG6b9KrW.js +0 -1
- package/dist/gateway/static/root/assets/extension-settings-page-B-W4x2xP.js +0 -1
- package/dist/gateway/static/root/assets/index-ew_2L2We.css +0 -1
- package/dist/gateway/static/root/assets/sessions-page-FaG_Vlkb.js +0 -1
- package/dist/gateway/static/root/assets/settings-page-Bet1OerL.js +0 -3
- package/dist/gateway/static/root/assets/skills-page-DhUO235y.js +0 -2
- package/dist/gateway/static/root/assets/url-BwNL6Rgk.js +0 -3
- package/dist/gateway/static/root/assets/voice-api-key-field-CGEydndO.js +0 -1
- package/dist/src/agent/tools/browser-legacy-tools.d.ts +0 -17
- package/dist/src/agent/tools/browser-legacy-tools.js +0 -766
- package/dist/src/agent/tools/browser-legacy-tools.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{i,o as a,t as o}from"./url-BwNL6Rgk.js";import{i as s}from"./vendor-swr-BIWyz7Rc.js";import{a as c,i as l,n as u,o as d,r as f,s as p,t as m}from"./dist-BTWC-BTN.js";import{a as h,n as g}from"./fetch-B2MYHbWg.js";import{Ai as _,Bn as v,Ci as y,F as b,Gt as x,Ji as S,On as C,Rr as w,Rt as T,Sn as E,Ti as D,Wn as O,Zn as k,_n as A,ct as j,da as M,g as N,h as P,ir as F,la as I,lt as L,mn as R,nr as z,qi as ee,st as B,tr as V,ua as H,ut as U,wi as te,zt as W}from"./index-BmVYculr.js";import{a as G,c as ne,i as K,o as re,r as q,s as ie,t as J}from"./utils-BY7bU1DT.js";import{n as Y,r as ae,t as oe}from"./field-primitives-DPG-oJmx.js";import{_ as se,a as ce,c as le,d as ue,f as de,g as fe,h as pe,i as me,l as he,m as ge,n as _e,o as ve,p as ye,r as be,s as xe,t as X,u as Se,v as Ce,y as we}from"./channels-status-swr-Bs5kMCMI.js";var Z=e(t(),1),Q=n(),$=r();function Te(e){switch(e){case`running`:return`bg-success-soft text-success`;case`offline`:return`bg-amber-100 text-amber-900 dark:bg-amber-950/60 dark:text-amber-200`;case`disabled`:return`bg-surface-hover text-fg-muted`;default:return`bg-surface-hover text-fg-muted`}}function Ee(e,t){switch(t){case`running`:return e.hubStatusRunning;case`offline`:return e.hubStatusOffline;case`disabled`:return e.hubStatusDisabled;default:return e.hubStatusNotConfigured}}function De(e,t){switch(t){case`setup`:return e.hubSetupButton;case`fix`:return e.hubFixButton;case`pairing`:return e.hubPairingButton;default:return e.hubManageButton}}function Oe(e){let t=(0,Q.c)(62),{channelId:n,title:r,subtitle:i,vm:a,toggleDisabled:o,onOpen:s,onReviewPairing:c,onToggle:l,ch:u}=e,d=a.configured&&a.manageable,f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=z(`flex h-full min-h-0 flex-col gap-3 rounded-xl border border-edge-subtle bg-surface-panel p-4 shadow-sm transition-colors`,`hover:border-edge`),t[0]=f):f=t[0];let p=a.status===`running`?`bg-accent-soft`:`bg-surface-base`,m;t[1]===p?m=t[2]:(m=z(`flex size-11 shrink-0 items-center justify-center rounded-xl ring-1 ring-edge-subtle/40`,p),t[1]=p,t[2]=m);let h;t[3]===n?h=t[4]:(h=(0,$.jsx)(E,{sourceChannel:n,className:`size-5`}),t[3]=n,t[4]=h);let g;t[5]!==m||t[6]!==h?(g=(0,$.jsx)(`div`,{className:m,"aria-hidden":!0,children:h}),t[5]=m,t[6]=h,t[7]=g):g=t[7];let _;t[8]===r?_=t[9]:(_=(0,$.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:r}),t[8]=r,t[9]=_);let v;t[10]===a.status?v=t[11]:(v=z(`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium`,Te(a.status)),t[10]=a.status,t[11]=v);let y;t[12]!==u||t[13]!==a.status?(y=Ee(u,a.status),t[12]=u,t[13]=a.status,t[14]=y):y=t[14];let b;t[15]!==v||t[16]!==y?(b=(0,$.jsx)(`span`,{className:v,children:y}),t[15]=v,t[16]=y,t[17]=b):b=t[17];let x;t[18]!==u||t[19]!==c||t[20]!==a.pendingPairing?(x=a.pendingPairing>0?(0,$.jsx)(`button`,{type:`button`,className:z(`inline-flex items-center rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-900 dark:bg-amber-950/60 dark:text-amber-200`,W.press),onClick:e=>{e.stopPropagation(),c()},children:u.hubPairingPendingBadge.replace(`{{count}}`,String(a.pendingPairing))}):null,t[18]=u,t[19]=c,t[20]=a.pendingPairing,t[21]=x):x=t[21];let S;t[22]!==x||t[23]!==b?(S=(0,$.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-1.5`,children:[b,x]}),t[22]=x,t[23]=b,t[24]=S):S=t[24];let C;t[25]!==S||t[26]!==_?(C=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[_,S]}),t[25]=S,t[26]=_,t[27]=C):C=t[27];let w;t[28]!==u||t[29]!==l||t[30]!==d||t[31]!==r||t[32]!==o||t[33]!==a.enabled?(w=d?(0,$.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":a.enabled,"aria-label":`${r} — ${u.enableChannelAria}`,disabled:o,className:z(`inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-edge p-0.5 transition-colors`,W.press,a.enabled?`justify-end bg-accent`:`justify-start bg-surface-hover`,o&&`cursor-not-allowed opacity-50`),onClick:e=>{e.stopPropagation(),l(!a.enabled)},children:(0,$.jsx)(`span`,{className:`size-4 rounded-full bg-surface-panel shadow-surface ring-1 ring-edge/40 dark:ring-edge/55`})}):null,t[28]=u,t[29]=l,t[30]=d,t[31]=r,t[32]=o,t[33]=a.enabled,t[34]=w):w=t[34];let T;t[35]!==C||t[36]!==w||t[37]!==g?(T=(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[g,C,w]}),t[35]=C,t[36]=w,t[37]=g,t[38]=T):T=t[38];let D;t[39]===i?D=t[40]:(D=(0,$.jsx)(`p`,{className:`line-clamp-2 text-xs leading-relaxed text-fg-muted`,children:i}),t[39]=i,t[40]=D);let O;t[41]===a.summaryLines?O=t[42]:(O=a.summaryLines.length>0?(0,$.jsx)(`ul`,{className:`mt-1.5 space-y-0.5`,children:a.summaryLines.map(ke)}):null,t[41]=a.summaryLines,t[42]=O);let k;t[43]!==D||t[44]!==O?(k=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[D,O]}),t[43]=D,t[44]=O,t[45]=k):k=t[45];let A;t[46]!==s||t[47]!==c||t[48]!==a.manageable||t[49]!==a.pendingPairing||t[50]!==a.primaryAction?(A=()=>{if(a.manageable&&(a.primaryAction===`pairing`||a.pendingPairing>0)){c();return}s()},t[46]=s,t[47]=c,t[48]=a.manageable,t[49]=a.pendingPairing,t[50]=a.primaryAction,t[51]=A):A=t[51];let j;t[52]!==u||t[53]!==a.primaryAction?(j=De(u,a.primaryAction),t[52]=u,t[53]=a.primaryAction,t[54]=j):j=t[54];let M;t[55]!==A||t[56]!==j?(M=(0,$.jsx)(`div`,{className:`mt-auto`,children:(0,$.jsx)(V,{type:`button`,variant:`primary`,className:`w-full`,onClick:A,children:j})}),t[55]=A,t[56]=j,t[57]=M):M=t[57];let N;return t[58]!==T||t[59]!==k||t[60]!==M?(N=(0,$.jsxs)(`article`,{className:f,children:[T,k,M]}),t[58]=T,t[59]=k,t[60]=M,t[61]=N):N=t[61],N}function ke(e){return(0,$.jsx)(`li`,{className:`text-xs text-fg-muted`,children:e},e)}function Ae(e){let t=(0,Q.c)(17),{catalog:n,cards:r,ch:i,saving:a,onOpenChannel:o,onToggleChannel:s}=e,c;t[0]===r?c=t[1]:(c=new Map(r.map(je)),t[0]=r,t[1]=c);let l=c,u;if(t[2]!==l||t[3]!==n||t[4]!==i||t[5]!==o||t[6]!==s||t[7]!==a){let e;t[9]!==l||t[10]!==i||t[11]!==o||t[12]!==s||t[13]!==a?(e=e=>{let t=l.get(e.id);return t?(0,$.jsx)(`li`,{className:`h-full min-h-0`,children:(0,$.jsx)(Oe,{channelId:e.id,title:e.title,subtitle:e.subtitle,vm:t,toggleDisabled:a||!t.manageable,onOpen:()=>o(e.id),onReviewPairing:()=>o(e.id,{scrollToPairing:!0}),onToggle:t=>s(e.id,t),ch:i})},e.id):null},t[9]=l,t[10]=i,t[11]=o,t[12]=s,t[13]=a,t[14]=e):e=t[14],u=n.map(e),t[2]=l,t[3]=n,t[4]=i,t[5]=o,t[6]=s,t[7]=a,t[8]=u}else u=t[8];let d;return t[15]===u?d=t[16]:(d=(0,$.jsx)(`ul`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-[repeat(auto-fill,minmax(280px,1fr))]`,role:`list`,children:u}),t[15]=u,t[16]=d),d}function je(e){return[e.id,e]}var Me=`animate-pulse motion-reduce:animate-none rounded-md bg-surface-hover dark:bg-surface-active/50`;function Ne(){let e=(0,Q.c)(4),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`div`,{className:z(`size-11 shrink-0 rounded-xl`,Me)}),e[0]=t):t=e[0];let n;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[t,(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-2`,children:[(0,$.jsx)(`div`,{className:z(`h-4 w-2/5`,Me)}),(0,$.jsx)(`div`,{className:z(`h-5 w-16 rounded-full`,Me)})]}),(0,$.jsx)(`div`,{className:z(`h-6 w-10 shrink-0 rounded-full`,Me)})]}),e[1]=n):n=e[1];let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`div`,{className:z(`h-3 w-full`,Me)}),(0,$.jsx)(`div`,{className:z(`h-3 w-[88%]`,Me)})]}),e[2]=r):r=e[2];let i;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(`div`,{className:`flex h-full min-h-[13.5rem] flex-col gap-3 rounded-xl border border-edge-subtle bg-surface-panel p-4 shadow-sm dark:border-edge-subtle`,"aria-hidden":!0,children:[n,r,(0,$.jsx)(`div`,{className:`mt-auto`,children:(0,$.jsx)(`div`,{className:z(`h-10 w-full rounded-lg`,Me)})})]}),e[3]=i):i=e[3],i}function Pe(e){let t=(0,Q.c)(2),{count:n}=e,r=n===void 0?3:n,i;return t[0]===r?i=t[1]:(i=(0,$.jsx)(`ul`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,role:`list`,"aria-busy":!0,children:Array.from({length:r},Fe)}),t[0]=r,t[1]=i),i}function Fe(e,t){return(0,$.jsx)(`li`,{className:`h-full min-h-0`,children:(0,$.jsx)(Ne,{})},t)}function Ie(e,t=!1){return e===`drawer`?z(`xopc-drawer-right fixed right-0 top-0 flex size-full flex-col overflow-hidden border-l border-edge bg-surface-panel shadow-popover outline-none dark:border-edge`,t?`max-w-[36rem]`:`max-w-xl`,P):z(`fixed left-1/2 top-1/2 flex max-h-[min(90vh,52rem)] w-[min(calc(100%-2rem),32rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden`,t&&`max-h-[min(90vh,48rem)] w-[min(calc(100%-2rem),36rem)]`,P,`rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none dark:border-edge`)}function Le(e){let t=(0,Q.c)(30),{presentation:n,open:r,onOpenChange:i,title:a,description:o,srTitle:s,srDescription:h,closeAriaLabel:g,children:_,footer:v,wide:y,headerExtra:b}=e,x=y===void 0?!1:y,S=n===`drawer`,C;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,$.jsx)(l,{className:z(`xopc-dialog-overlay fixed inset-0 bg-scrim backdrop-blur-[1px]`,N)}),t[0]=C):C=t[0];let w;t[1]!==n||t[2]!==x?(w=Ie(n,x),t[1]=n,t[2]=x,t[3]=w):w=t[3];let E;t[4]===s?E=t[5]:(E=s?(0,$.jsx)(p,{className:`sr-only`,children:s}):null,t[4]=s,t[5]=E);let D;t[6]===h?D=t[7]:(D=h?(0,$.jsx)(f,{className:`sr-only`,children:h}):null,t[6]=h,t[7]=D);let O;t[8]!==g||t[9]!==o||t[10]!==b||t[11]!==S||t[12]!==a?(O=S?(0,$.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-4 py-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[a?(0,$.jsx)(`div`,{className:`text-base font-semibold text-fg`,children:a}):null,o?(0,$.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:o}):null]}),(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(V,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":g,children:(0,$.jsx)(F,{className:`size-5`,strokeWidth:1.75})})})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:z(T,`absolute right-3 top-3 z-20 p-1.5 hover:bg-surface-hover`),"aria-label":g,children:(0,$.jsx)(F,{className:`size-4`})})}),b]}),t[8]=g,t[9]=o,t[10]=b,t[11]=S,t[12]=a,t[13]=O):O=t[13];let k=S?`px-4 py-4`:`p-6`,A;t[14]===k?A=t[15]:(A=z(`min-h-0 flex-1 overflow-y-auto`,k),t[14]=k,t[15]=A);let j;t[16]!==_||t[17]!==A?(j=(0,$.jsx)(`div`,{className:A,children:_}),t[16]=_,t[17]=A,t[18]=j):j=t[18];let M;t[19]!==v||t[20]!==w||t[21]!==E||t[22]!==D||t[23]!==O||t[24]!==j?(M=(0,$.jsxs)(c,{children:[C,(0,$.jsxs)(u,{className:w,onOpenAutoFocus:Re,children:[E,D,O,j,v]})]}),t[19]=v,t[20]=w,t[21]=E,t[22]=D,t[23]=O,t[24]=j,t[25]=M):M=t[25];let P;return t[26]!==i||t[27]!==r||t[28]!==M?(P=(0,$.jsx)(d,{open:r,onOpenChange:i,children:M}),t[26]=i,t[27]=r,t[28]=M,t[29]=P):P=t[29],P}function Re(e){return e.preventDefault()}function ze(e){let t=(0,Q.c)(52),{open:n,onOpenChange:r,entry:i,vm:a,ch:o,language:s}=e,c=a.status===`running`?o.hubStatusRunning:a.status===`offline`?o.hubStatusOffline:a.status===`disabled`?o.hubStatusDisabled:o.hubStatusNotConfigured,l=i.title,u=i.subtitle,d=o.modalCancel,f;t[0]===i.title?f=t[1]:(f=(0,$.jsx)(`h2`,{className:`text-lg font-semibold tracking-tight text-fg`,children:i.title}),t[0]=i.title,t[1]=f);let p;t[2]===i.subtitle?p=t[3]:(p=(0,$.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:i.subtitle}),t[2]=i.subtitle,t[3]=p);let m;t[4]!==f||t[5]!==p?(m=(0,$.jsxs)(`div`,{className:`border-b border-edge-subtle px-6 pb-4 pt-6 dark:border-edge-subtle`,children:[f,p]}),t[4]=f,t[5]=p,t[6]=m):m=t[6];let h;t[7]===o.hubExtensionManageHint?h=t[8]:(h=(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:o.hubExtensionManageHint}),t[7]=o.hubExtensionManageHint,t[8]=h);let g;t[9]===o.hubExtensionStatusLabel?g=t[10]:(g=(0,$.jsx)(`dt`,{className:`text-xs font-medium uppercase tracking-wide text-fg-subtle`,children:o.hubExtensionStatusLabel}),t[9]=o.hubExtensionStatusLabel,t[10]=g);let _;t[11]===c?_=t[12]:(_=(0,$.jsx)(`dd`,{className:`mt-1 text-fg`,children:c}),t[11]=c,t[12]=_);let v;t[13]!==g||t[14]!==_?(v=(0,$.jsxs)(`div`,{children:[g,_]}),t[13]=g,t[14]=_,t[15]=v):v=t[15];let y;t[16]===o.hubExtensionEnabledLabel?y=t[17]:(y=(0,$.jsx)(`dt`,{className:`text-xs font-medium uppercase tracking-wide text-fg-subtle`,children:o.hubExtensionEnabledLabel}),t[16]=o.hubExtensionEnabledLabel,t[17]=y);let b=a.enabled?o.hubExtensionYes:o.hubExtensionNo,x;t[18]===b?x=t[19]:(x=(0,$.jsx)(`dd`,{className:`mt-1 text-fg`,children:b}),t[18]=b,t[19]=x);let S;t[20]!==y||t[21]!==x?(S=(0,$.jsxs)(`div`,{children:[y,x]}),t[20]=y,t[21]=x,t[22]=S):S=t[22];let C;t[23]===o.hubExtensionConnectedLabel?C=t[24]:(C=(0,$.jsx)(`dt`,{className:`text-xs font-medium uppercase tracking-wide text-fg-subtle`,children:o.hubExtensionConnectedLabel}),t[23]=o.hubExtensionConnectedLabel,t[24]=C);let w=a.connected?o.hubExtensionYes:o.hubExtensionNo,T;t[25]===w?T=t[26]:(T=(0,$.jsx)(`dd`,{className:`mt-1 text-fg`,children:w}),t[25]=w,t[26]=T);let E;t[27]!==C||t[28]!==T?(E=(0,$.jsxs)(`div`,{children:[C,T]}),t[27]=C,t[28]=T,t[29]=E):E=t[29];let k;t[30]!==v||t[31]!==S||t[32]!==E?(k=(0,$.jsxs)(`dl`,{className:`grid gap-3 text-sm`,children:[v,S,E]}),t[30]=v,t[31]=S,t[32]=E,t[33]=k):k=t[33];let A;t[34]===s?A=t[35]:(A=O(s,`channels`),t[34]=s,t[35]=A);let j;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(D,{className:`ml-2 size-3.5`}),t[36]=j):j=t[36];let M;t[37]!==o.hubViewDocs||t[38]!==A?(M=(0,$.jsx)(V,{type:`button`,variant:`secondary`,asChild:!0,children:(0,$.jsxs)(`a`,{href:A,target:`_blank`,rel:`noreferrer`,children:[o.hubViewDocs,j]})}),t[37]=o.hubViewDocs,t[38]=A,t[39]=M):M=t[39];let N;t[40]!==k||t[41]!==M||t[42]!==h?(N=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[h,k,M]}),t[40]=k,t[41]=M,t[42]=h,t[43]=N):N=t[43];let P;return t[44]!==o.modalCancel||t[45]!==i.subtitle||t[46]!==i.title||t[47]!==r||t[48]!==n||t[49]!==N||t[50]!==m?(P=(0,$.jsx)(Le,{presentation:`modal`,open:n,onOpenChange:r,srTitle:l,srDescription:u,closeAriaLabel:d,headerExtra:m,children:N}),t[44]=o.modalCancel,t[45]=i.subtitle,t[46]=i.title,t[47]=r,t[48]=n,t[49]=N,t[50]=m,t[51]=P):P=t[51],P}var Be=(0,Z.memo)(function(e){let t=(0,Q.c)(15),{ch:n,refreshing:r,saveOk:i,onRefresh:a}=e,o;t[0]!==n.saved||t[1]!==i?(o=i?(0,$.jsx)(`span`,{className:`text-sm text-fg-muted`,children:n.saved}):null,t[0]=n.saved,t[1]=i,t[2]=o):o=t[2];let s=n.refresh,c=n.refresh,l=r&&`animate-spin`,u;t[3]===l?u=t[4]:(u=z(`size-4`,l),t[3]=l,t[4]=u);let d;t[5]===u?d=t[6]:(d=(0,$.jsx)(w,{className:u,"aria-hidden":!0}),t[5]=u,t[6]=d);let f;t[7]!==n.refresh||t[8]!==a||t[9]!==r||t[10]!==d?(f=(0,$.jsx)(V,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,disabled:r,title:s,"aria-label":c,onClick:a,children:d}),t[7]=n.refresh,t[8]=a,t[9]=r,t[10]=d,t[11]=f):f=t[11];let p;return t[12]!==o||t[13]!==f?(p=(0,$.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center justify-end gap-2`,children:[o,f]}),t[12]=o,t[13]=f,t[14]=p):p=t[14],p});function Ve(e){let t=(0,Q.c)(27),{accountIds:n,routes:r,defaultAgentId:o,agentItems:s,disabled:c,onChange:l,ch:u}=e,d=i(He),f,p,m,h,g;if(t[0]!==n||t[1]!==s||t[2]!==u||t[3]!==o||t[4]!==c||t[5]!==d||t[6]!==l||t[7]!==r){g=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a(d).agentsSettings;if(n.length===0){g=null;break bb0}let i=s.length>0?s:[{id:o}];m=`space-y-3 border-t border-edge-subtle pt-4 dark:border-edge`;let _;t[13]===u.agentRoutingTitle?_=t[14]:(_=(0,$.jsx)(Y,{children:u.agentRoutingTitle}),t[13]=u.agentRoutingTitle,t[14]=_);let v;t[15]===u.agentRoutingHint?v=t[16]:(v=(0,$.jsx)(oe,{children:u.agentRoutingHint}),t[15]=u.agentRoutingHint,t[16]=v),t[17]!==_||t[18]!==v?(h=(0,$.jsxs)(`div`,{children:[_,v]}),t[17]=_,t[18]=v,t[19]=h):h=t[19],f=`space-y-2`,p=n.map(t=>(0,$.jsxs)(`div`,{className:`grid grid-cols-1 items-start gap-2 rounded-lg border border-edge-subtle bg-surface-base px-3 py-2.5 sm:grid-cols-2 sm:items-center dark:border-edge`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:u.agentRoutingAccountLabel}),(0,$.jsx)(`p`,{className:`mt-0.5 truncate font-mono text-sm text-fg`,title:t,children:t})]}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`label`,{className:`sr-only`,htmlFor:`agent-route-${t}`,children:u.agentRoutingAgentLabel}),(0,$.jsx)(`select`,{id:`agent-route-${t}`,className:z(J(),k),disabled:c,value:(r[t]??o).toLowerCase(),onChange:e=>l(t,e.target.value),children:i.map(t=>(0,$.jsx)(`option`,{value:t.id,children:`${b(t,e)} (${t.id})`},t.id))})]})]},t))}t[0]=n,t[1]=s,t[2]=u,t[3]=o,t[4]=c,t[5]=d,t[6]=l,t[7]=r,t[8]=f,t[9]=p,t[10]=m,t[11]=h,t[12]=g}else f=t[8],p=t[9],m=t[10],h=t[11],g=t[12];if(g!==Symbol.for(`react.early_return_sentinel`))return g;let _;t[20]!==f||t[21]!==p?(_=(0,$.jsx)(`div`,{className:f,children:p}),t[20]=f,t[21]=p,t[22]=_):_=t[22];let v;return t[23]!==m||t[24]!==h||t[25]!==_?(v=(0,$.jsxs)(`div`,{className:m,children:[h,_]}),t[23]=m,t[24]=h,t[25]=_,t[26]=v):v=t[26],v}function He(e){return e.language}function Ue(e){return e===`telegram`?`pairing`:`open`}function We(e,t,n){return n?.dmPolicy?n.dmPolicy:t??Ue(e)}function Ge(e,t){if(e===`telegram`){let e=Ce(t);return e.length>0?e:[`default`]}if(e===`weixin`){let e=we(t);return e.length>0?e:[`default`]}let n=se(t);return n.length>0?n:[`default`]}function Ke(e){return e?.enabled!==!1}function qe(e,t,n){let r=t.accounts?.[n];return We(e,t.dmPolicy,r)}function Je(e,t){return Ge(e,t).some(n=>{let r=t.accounts?.[n];return Ke(r)?qe(e,t,n)===`pairing`:!1})}function Ye(e){return!e.configured||!e.channelEnabled||!e.usesPairing?0:e.summaryPending}function Xe(e){let{channel:t,accountId:n,messages:r,mutate:i,setCodeBySender:a,setBusySender:o,setFeedback:s}=e,c=(0,Z.useCallback)(async(e,t)=>{o(e),s(null);try{let n=await t();a(t=>{let n={...t};return delete n[e],n}),s({kind:`ok`,text:r.pairingApproved.replace(`{{id}}`,n.senderId)}),await i()}catch(e){let t=e instanceof Error?e.message:r.pairingInvalid;s({kind:`err`,text:t.includes(`PAIRING`)?r.pairingInvalid:t})}finally{o(null)}},[r.pairingApproved,r.pairingInvalid,i,o,a,s]);return{approveByCode:(0,Z.useCallback)((e,r)=>{let i=r.trim().toUpperCase();i&&c(e,()=>ce({channel:t,accountId:n,code:i}))},[n,t,c]),quickApprove:(0,Z.useCallback)(e=>{c(e,()=>me({channel:t,accountId:n,senderId:e}))},[n,t,c])}}var Ze=[`channels-pairing-requested`,`channels-pairing-refreshed`,`channels-pairing-approved`,`channels-pairing-revoked`,`channels-pairing-dismissed`],Qe=`channel-pairing-summary`;function $e(e){let t=()=>e();for(let e of Ze)window.addEventListener(e,t);return()=>{for(let e of Ze)window.removeEventListener(e,t)}}function et(e,t){let n=(0,Q.c)(4),r=t===void 0?!0:t,i,a;n[0]!==r||n[1]!==e?(i=()=>{if(r)return $e(e)},a=[r,e],n[0]=r,n[1]=e,n[2]=i,n[3]=a):(i=n[2],a=n[3]),(0,Z.useEffect)(i,a)}function tt(e){return`channel-pairing-${e}`}function nt(e){requestAnimationFrame(()=>{document.getElementById(tt(e))?.scrollIntoView({behavior:`smooth`,block:`start`})})}function rt(e,t){let n=Date.parse(e)-Date.now();if(!Number.isFinite(n))return e;let r=Math.max(1,Math.round(Math.abs(n)/6e4));if(n<=0)return t.startsWith(`zh`)?`已过期`:`expired`;if(r<60)return t.startsWith(`zh`)?`${r} 分钟后`:`in ${r} min`;let i=Math.round(r/60);return t.startsWith(`zh`)?`${i} 小时后`:`in ${i} h`}function it(e,t){return`channel-pairing-${e}-${t}`}var at={codeBySender:{},busySender:null,dismissingId:null,revokingId:null,feedback:null};function ot(e,t){switch(t.type){case`setCodeBySender`:return{...e,codeBySender:t.updater(e.codeBySender)};case`setBusySender`:return{...e,busySender:t.value};case`setDismissingId`:return{...e,dismissingId:t.value};case`setRevokingId`:return{...e,revokingId:t.value};case`setFeedback`:return{...e,feedback:t.value};case`clearSenderCode`:{let n={...e.codeBySender};return delete n[t.senderId],{...e,codeBySender:n}}}}function st({channel:e,accountIds:t,channelConfig:n,active:r,ch:i,language:a,onPairedChange:o}){let c=J,l=(0,Z.useMemo)(()=>{let e=(t??[`default`]).filter(Boolean);return e.length>0?e:[`default`]},[t]),u=(0,Z.useMemo)(()=>Je(e,n),[e,n]),d=(0,Z.useCallback)(t=>qe(e,n,t),[e,n]),[f,p]=(0,Z.useState)(l[0]??`default`),[m,h]=(0,Z.useState)(l);l!==m&&(h(l),l.includes(f)||p(l[0]??`default`));let[g,_]=(0,Z.useReducer)(ot,at),{codeBySender:v,busySender:y,dismissingId:b,revokingId:x,feedback:S}=g,C=d(f)===`pairing`,T=(0,Z.useRef)(o);T.current=o;let{data:E,error:D,isLoading:O,mutate:k}=s(r&&u&&C?it(e,f):null,()=>le(e,f),{revalidateOnFocus:!0,onSuccess:e=>{T.current?.(e.paired.fromCredentials.length)}});et((0,Z.useCallback)(()=>{k()},[k]),r&&u&&C);let A=E?.paired.fromCredentials??[],j=(0,Z.useCallback)(e=>{_({type:`setCodeBySender`,updater:typeof e==`function`?e:()=>e})},[]),M=(0,Z.useCallback)(e=>{_({type:`setBusySender`,value:typeof e==`function`?e(g.busySender):e})},[g.busySender]),N=(0,Z.useCallback)(e=>{_({type:`setFeedback`,value:typeof e==`function`?e(g.feedback):e})},[g.feedback]),{approveByCode:P,quickApprove:I}=Xe({channel:e,accountId:f,messages:{pairingApproved:i.pairingApproved,pairingInvalid:i.pairingInvalid},mutate:k,setCodeBySender:j,setBusySender:M,setFeedback:N}),L=(0,Z.useCallback)(async t=>{_({type:`setDismissingId`,value:t}),_({type:`setFeedback`,value:null});try{await ve({channel:e,accountId:f,senderId:t}),_({type:`clearSenderCode`,senderId:t}),_({type:`setFeedback`,value:{kind:`ok`,text:i.pairingDismissed.replace(`{{id}}`,t)}}),await k()}catch(e){_({type:`setFeedback`,value:{kind:`err`,text:e instanceof Error?e.message:i.pairingDismissError}})}finally{_({type:`setDismissingId`,value:null})}},[f,e,i.pairingDismissed,i.pairingDismissError,k]),R=(0,Z.useCallback)(async t=>{_({type:`setRevokingId`,value:t}),_({type:`setFeedback`,value:null});try{await fe({channel:e,accountId:f,senderId:t}),_({type:`setFeedback`,value:{kind:`ok`,text:i.pairingRevoked.replace(`{{id}}`,t)}}),await k()}catch(e){_({type:`setFeedback`,value:{kind:`err`,text:e instanceof Error?e.message:i.pairingRevokeError}})}finally{_({type:`setRevokingId`,value:null})}},[f,e,i.pairingRevoked,i.pairingRevokeError,k]);if(!u)return null;if(!C)return(0,$.jsxs)(`div`,{id:tt(e),className:`space-y-2 rounded-xl border border-edge-subtle bg-surface-base/50 p-4 dark:border-edge`,children:[(0,$.jsx)(`h3`,{className:`text-sm font-medium text-fg`,children:i.pairingTitle}),(0,$.jsx)(`p`,{className:`text-xs text-fg-muted`,children:i.pairingAccountNotPairing.replace(`{{account}}`,f)}),l.length>1?(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:i.pairingAccountLabel}),(0,$.jsx)(`select`,{className:c(),value:f,onChange:e=>p(e.target.value),children:l.map(e=>(0,$.jsx)(`option`,{value:e,children:e},e))})]}):null]});let ee=E?.pending??[],B=E?.paired.fromConfig??[];return(0,$.jsxs)(`div`,{id:tt(e),className:`space-y-3 rounded-xl border border-edge-subtle bg-surface-base/50 p-4 dark:border-edge`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h3`,{className:`text-sm font-medium text-fg`,children:i.pairingTitle}),(0,$.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:i.pairingSubtitle})]}),(0,$.jsx)(V,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":i.pairingRefresh,disabled:O,onClick:()=>void k(),children:(0,$.jsx)(w,{className:z(`size-4 text-fg-muted`,O&&`animate-spin`)})})]}),l.length>1?(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:i.pairingAccountLabel}),(0,$.jsx)(`select`,{className:c(),value:f,onChange:e=>p(e.target.value),children:l.map(e=>(0,$.jsx)(`option`,{value:e,children:e},e))})]}):null,(0,$.jsx)(oe,{children:i.pairingSetupHint}),D?(0,$.jsx)(`p`,{className:`text-xs text-red-600 dark:text-red-400`,children:i.pairingLoadError}):null,S?(0,$.jsx)(`p`,{className:z(`text-xs`,S.kind===`ok`?`text-success`:`text-red-600 dark:text-red-400`),children:S.text}):null,(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(Y,{children:i.pairingPendingTitle}),ee.length>0?(0,$.jsx)(oe,{children:i.pairingQuickApproveHint}):null,ee.length===0?(0,$.jsx)(`p`,{className:`text-xs text-fg-muted`,children:i.pairingPendingEmpty}):(0,$.jsx)(`ul`,{className:`space-y-2`,children:ee.map(e=>{let t=v[e.senderId]??``,n=y===e.senderId,r=b===e.senderId;return(0,$.jsxs)(`li`,{className:z(`rounded-lg border bg-surface-panel p-3 dark:border-edge`,e.isStale?`border-amber-300/50 dark:border-amber-800/50`:`border-edge`),children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-baseline justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-xs text-fg`,children:e.senderId}),(0,$.jsxs)(`span`,{className:`text-[11px] text-fg-muted`,children:[e.isStale?(0,$.jsx)(`span`,{className:`text-amber-800 dark:text-amber-200`,children:i.pairingStaleItem}):null,e.isStale?` · `:null,i.pairingExpiresHint.replace(`{{time}}`,rt(e.expiresAt,a))]})]}),e.codeLast4?(0,$.jsx)(`p`,{className:`mt-1 text-[11px] text-fg-muted`,children:i.pairingCodeHint.replace(`{{suffix}}`,e.codeLast4)}):null,(0,$.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:[(0,$.jsx)(V,{type:`button`,variant:`secondary`,className:`shrink-0 text-xs`,disabled:n||r,onClick:()=>void I(e.senderId),children:n?i.pairingApproving:i.pairingQuickApprove}),(0,$.jsx)(`input`,{className:z(c(),`min-w-0 flex-1 font-mono text-xs uppercase`),value:t,autoComplete:`off`,spellCheck:!1,maxLength:8,placeholder:i.pairingCodePlaceholder,onChange:t=>j(n=>({...n,[e.senderId]:t.target.value.toUpperCase()})),onKeyDown:n=>{n.key===`Enter`&&P(e.senderId,t)}}),(0,$.jsx)(V,{type:`button`,variant:`primary`,className:`shrink-0 text-xs`,disabled:n||r||!t.trim(),onClick:()=>P(e.senderId,t),children:n?i.pairingApproving:i.pairingApprove}),(0,$.jsx)(V,{type:`button`,variant:`ghost`,className:`shrink-0 text-xs text-fg-muted hover:text-danger`,disabled:n||r,onClick:()=>void L(e.senderId),children:r?i.pairingDismissing:i.pairingDismiss})]})]},e.senderId)})})]}),(0,$.jsxs)(`div`,{className:`space-y-2 border-t border-edge-subtle pt-3 dark:border-edge-subtle`,children:[(0,$.jsx)(Y,{children:i.pairedTitle}),(0,$.jsxs)(`div`,{className:`grid gap-3 text-xs sm:grid-cols-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`text-fg-muted`,children:i.pairedFromConfig}),(0,$.jsx)(`p`,{className:`mt-0.5 font-mono text-fg`,children:B.length?B.join(`, `):i.pairedEmpty})]}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`text-fg-muted`,children:i.pairedFromCredentials}),A.length===0?(0,$.jsx)(`p`,{className:`mt-0.5 font-mono text-fg`,children:i.pairedEmpty}):(0,$.jsx)(`ul`,{className:`mt-1 space-y-1`,children:A.map(e=>(0,$.jsxs)(`li`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-fg`,children:e}),(0,$.jsx)(V,{type:`button`,variant:`ghost`,className:`size-7 shrink-0 p-0 text-fg-muted hover:text-danger`,"aria-label":i.pairingRevokeAria.replace(`{{id}}`,e),disabled:x===e,onClick:()=>void R(e),children:(0,$.jsx)(F,{className:`size-3.5`})})]},e))})]})]})]})]})}function ct(e){let t=(0,Q.c)(368),{ch:n,form:r,baseline:i,showFeishuSecret:a,setShowFeishuSecret:o,showFeishuWebhookSecrets:s,setShowFeishuWebhookSecrets:c,feishuCopied:l,feishuWebhookCopied:u,copyFeishuSecret:d,copyFeishuWebhookConfig:f,updateFeishu:p,updateChannelAgentRoute:m,feishuAccountsDraft:h,setFeishuAccountsDraft:g,feishuAccountsError:v,onFeishuAccountsBlur:b,dmOpts:x,groupOpts:C,chatAgents:w,saving:T,language:E,dialogOpen:D,pairingFocus:O}=e,k=O===void 0?!1:O,A=r.feishu,j;t[0]===A?j=t[1]:(j=se(A),t[0]=A,t[1]=j);let M=j,N;t[2]===M?N=t[3]:(N=M.length>0?M:[`default`],t[2]=M,t[3]=N);let P=N,F=i?.feishu?.appSecret??``,I;t[4]!==F||t[5]!==A.appSecret||t[6]!==a?(I=!a&&!!String(F).trim()&&A.appSecret===F,t[4]=F,t[5]=A.appSecret,t[6]=a,t[7]=I):I=t[7];let L=I,R=(0,Z.useRef)(null),B,H;t[8]===k?(B=t[9],H=t[10]):(B=()=>{if(!k)return;let e=R.current;e&&(e.open=!0);let t=window.setTimeout(ft,80);return()=>window.clearTimeout(t)},H=[k],t[8]=k,t[9]=B,t[10]=H),(0,Z.useEffect)(B,H);let U;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(ee,{className:`size-4 shrink-0 text-fg-muted transition-transform group-open:rotate-180`}),t[11]=U):U=t[11];let W;t[12]===n.advancedShow?W=t[13]:(W=(0,$.jsx)(`summary`,{className:`cursor-pointer list-none rounded-xl px-3 py-2.5 text-sm font-medium text-fg transition-colors hover:bg-surface-hover group-open:rounded-b-none [&::-webkit-details-marker]:hidden`,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[U,n.advancedShow]})}),t[12]=n.advancedShow,t[13]=W);let G;t[14]===n.feishuAdvancedHint?G=t[15]:(G=(0,$.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:n.feishuAdvancedHint}),t[14]=n.feishuAdvancedHint,t[15]=G);let ne;t[16]===p?ne=t[17]:(ne=e=>p({enabled:e.target.checked}),t[16]=p,t[17]=ne);let K;t[18]!==A.enabled||t[19]!==ne?(K=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox mt-0.5`,checked:A.enabled,onChange:ne}),t[18]=A.enabled,t[19]=ne,t[20]=K):K=t[20];let q;t[21]===n.enableFeishuAria?q=t[22]:(q=(0,$.jsx)(`span`,{children:n.enableFeishuAria}),t[21]=n.enableFeishuAria,t[22]=q);let ce;t[23]!==K||t[24]!==q?(ce=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 text-sm text-fg`,children:[K,q]}),t[23]=K,t[24]=q,t[25]=ce):ce=t[25];let le;t[26]===p?le=t[27]:(le=e=>p({dmPolicy:e}),t[26]=p,t[27]=le);let ue;t[28]!==n.dmPolicy||t[29]!==x||t[30]!==A.dmPolicy||t[31]!==le?(ue=(0,$.jsx)(ae,{label:n.dmPolicy,value:A.dmPolicy,onChange:le,options:x}),t[28]=n.dmPolicy,t[29]=x,t[30]=A.dmPolicy,t[31]=le,t[32]=ue):ue=t[32];let de;t[33]!==n||t[34]!==D||t[35]!==A||t[36]!==E||t[37]!==P?(de=(0,$.jsx)(st,{channel:`feishu`,accountIds:P,channelConfig:A,active:D,ch:n,language:E}),t[33]=n,t[34]=D,t[35]=A,t[36]=E,t[37]=P,t[38]=de):de=t[38];let fe;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(fe=(0,$.jsx)(`span`,{className:`text-red-600 dark:text-red-400`,children:` *`}),t[39]=fe):fe=t[39];let pe;t[40]===n.feishuAppId?pe=t[41]:(pe=(0,$.jsxs)(Y,{children:[n.feishuAppId,fe]}),t[40]=n.feishuAppId,t[41]=pe);let me;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(me=z(J(),`min-w-0 flex-1 font-mono text-xs`),t[42]=me):me=t[42];let he;t[43]===p?he=t[44]:(he=e=>p({appId:e.target.value}),t[43]=p,t[44]=he);let ge;t[45]!==A.appId||t[46]!==he?(ge=(0,$.jsx)(`input`,{className:me,value:A.appId,onChange:he,placeholder:`cli_xxx`}),t[45]=A.appId,t[46]=he,t[47]=ge):ge=t[47];let _e;t[48]===n.feishuAppIdDesc?_e=t[49]:(_e=(0,$.jsx)(oe,{children:n.feishuAppIdDesc}),t[48]=n.feishuAppIdDesc,t[49]=_e);let ve;t[50]!==pe||t[51]!==ge||t[52]!==_e?(ve=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[pe,ge,_e]}),t[50]=pe,t[51]=ge,t[52]=_e,t[53]=ve):ve=t[53];let ye;t[54]===Symbol.for(`react.memo_cache_sentinel`)?(ye=(0,$.jsx)(`span`,{className:`text-red-600 dark:text-red-400`,children:` *`}),t[54]=ye):ye=t[54];let be;t[55]===n.feishuAppSecret?be=t[56]:(be=(0,$.jsxs)(Y,{children:[n.feishuAppSecret,ye]}),t[55]=n.feishuAppSecret,t[56]=be);let xe;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(xe=z(J(),`min-w-0 flex-1 font-mono text-xs`),t[57]=xe):xe=t[57];let X=a?`text`:`password`,Se;t[58]!==L||t[59]!==A.appSecret?(Se=L?`*`.repeat(Math.max(1,A.appSecret.length)):A.appSecret,t[58]=L,t[59]=A.appSecret,t[60]=Se):Se=t[60];let Ce;t[61]!==L||t[62]!==p?(Ce=e=>{L||p({appSecret:e.target.value})},t[61]=L,t[62]=p,t[63]=Ce):Ce=t[63];let we;t[64]!==L||t[65]!==X||t[66]!==Se||t[67]!==Ce?(we=(0,$.jsx)(`input`,{className:xe,type:X,autoComplete:`off`,readOnly:L,value:Se,onChange:Ce,placeholder:`••••••••`}),t[64]=L,t[65]=X,t[66]=Se,t[67]=Ce,t[68]=we):we=t[68];let Te;t[69]!==n.copied||t[70]!==n.copy||t[71]!==d||t[72]!==l||t[73]!==A.appSecret?(Te=A.appSecret?(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:()=>void d(),children:[l?(0,$.jsx)(S,{className:`size-3.5`}):(0,$.jsx)(_,{className:`size-3.5`}),l?n.copied:n.copy]}):null,t[69]=n.copied,t[70]=n.copy,t[71]=d,t[72]=l,t[73]=A.appSecret,t[74]=Te):Te=t[74];let Ee;t[75]===o?Ee=t[76]:(Ee=()=>o(dt),t[75]=o,t[76]=Ee);let De;t[77]===a?De=t[78]:(De=a?(0,$.jsx)(te,{className:`size-3.5`}):(0,$.jsx)(y,{className:`size-3.5`}),t[77]=a,t[78]=De);let Oe=a?n.hide:n.show,ke;t[79]!==Ee||t[80]!==De||t[81]!==Oe?(ke=(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:Ee,children:[De,Oe]}),t[79]=Ee,t[80]=De,t[81]=Oe,t[82]=ke):ke=t[82];let Ae;t[83]!==we||t[84]!==Te||t[85]!==ke?(Ae=(0,$.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[we,Te,ke]}),t[83]=we,t[84]=Te,t[85]=ke,t[86]=Ae):Ae=t[86];let je;t[87]===n.feishuAppSecretDesc?je=t[88]:(je=(0,$.jsx)(oe,{children:n.feishuAppSecretDesc}),t[87]=n.feishuAppSecretDesc,t[88]=je);let Me;t[89]!==be||t[90]!==Ae||t[91]!==je?(Me=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[be,Ae,je]}),t[89]=be,t[90]=Ae,t[91]=je,t[92]=Me):Me=t[92];let Ne;t[93]===n.feishuDomain?Ne=t[94]:(Ne=(0,$.jsx)(Y,{children:n.feishuDomain}),t[93]=n.feishuDomain,t[94]=Ne);let Pe;t[95]===Symbol.for(`react.memo_cache_sentinel`)?(Pe=J(),t[95]=Pe):Pe=t[95];let Fe=String(A.domain||`feishu`),Ie;t[96]===p?Ie=t[97]:(Ie=e=>p({domain:e.target.value}),t[96]=p,t[97]=Ie);let Le,Re;t[98]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,$.jsx)(`option`,{value:`feishu`,children:`feishu`}),Re=(0,$.jsx)(`option`,{value:`lark`,children:`lark`}),t[98]=Le,t[99]=Re):(Le=t[98],Re=t[99]);let ze;t[100]!==Fe||t[101]!==Ie?(ze=(0,$.jsxs)(`select`,{className:Pe,value:Fe,onChange:Ie,children:[Le,Re]}),t[100]=Fe,t[101]=Ie,t[102]=ze):ze=t[102];let Be;t[103]!==Ne||t[104]!==ze?(Be=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Ne,ze]}),t[103]=Ne,t[104]=ze,t[105]=Be):Be=t[105];let He;t[106]===n.connectionMode?He=t[107]:(He=(0,$.jsx)(Y,{children:n.connectionMode}),t[106]=n.connectionMode,t[107]=He);let Ue;t[108]===Symbol.for(`react.memo_cache_sentinel`)?(Ue=J(),t[108]=Ue):Ue=t[108];let We;t[109]===p?We=t[110]:(We=e=>p({connectionMode:e.target.value}),t[109]=p,t[110]=We);let Ge,Ke;t[111]===Symbol.for(`react.memo_cache_sentinel`)?(Ge=(0,$.jsx)(`option`,{value:`websocket`,children:`websocket`}),Ke=(0,$.jsx)(`option`,{value:`webhook`,children:`webhook`}),t[111]=Ge,t[112]=Ke):(Ge=t[111],Ke=t[112]);let qe;t[113]!==A.connectionMode||t[114]!==We?(qe=(0,$.jsxs)(`select`,{className:Ue,value:A.connectionMode,onChange:We,children:[Ge,Ke]}),t[113]=A.connectionMode,t[114]=We,t[115]=qe):qe=t[115];let Je;t[116]===n.connectionModeDesc?Je=t[117]:(Je=(0,$.jsx)(oe,{children:n.connectionModeDesc}),t[116]=n.connectionModeDesc,t[117]=Je);let Ye;t[118]!==He||t[119]!==qe||t[120]!==Je?(Ye=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[He,qe,Je]}),t[118]=He,t[119]=qe,t[120]=Je,t[121]=Ye):Ye=t[121];let Xe;t[122]!==Be||t[123]!==Ye?(Xe=(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[Be,Ye]}),t[122]=Be,t[123]=Ye,t[124]=Xe):Xe=t[124];let Ze;t[125]!==n.copied||t[126]!==n.copy||t[127]!==n.encryptKey||t[128]!==n.encryptKeyDesc||t[129]!==n.hide||t[130]!==n.show||t[131]!==n.verificationToken||t[132]!==n.verificationTokenDesc||t[133]!==n.webhookHost||t[134]!==n.webhookPath||t[135]!==n.webhookPathDesc||t[136]!==n.webhookPort||t[137]!==n.webhookTitle||t[138]!==f||t[139]!==u||t[140]!==A.connectionMode||t[141]!==A.encryptKey||t[142]!==A.verificationToken||t[143]!==A.webhookHost||t[144]!==A.webhookPath||t[145]!==A.webhookPort||t[146]!==c||t[147]!==s||t[148]!==p?(Ze=A.connectionMode===`webhook`?(0,$.jsxs)(`div`,{className:`rounded-xl border border-edge-subtle bg-surface px-4 py-3 dark:border-edge-subtle`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:n.webhookTitle}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:()=>c(ut),children:[s?(0,$.jsx)(te,{className:`size-3.5`}):(0,$.jsx)(y,{className:`size-3.5`}),s?n.hide:n.show]}),(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:()=>void f(),children:[u?(0,$.jsx)(S,{className:`size-3.5`}):(0,$.jsx)(_,{className:`size-3.5`}),u?n.copied:n.copy]})]})]}),(0,$.jsxs)(`div`,{className:`mt-3 grid gap-3 sm:grid-cols-2`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:n.verificationToken}),(0,$.jsx)(`input`,{className:z(J(),`min-w-0 flex-1 font-mono text-xs`),type:s?`text`:`password`,autoComplete:`off`,value:A.verificationToken??``,onChange:e=>p({verificationToken:e.target.value})}),(0,$.jsx)(oe,{children:n.verificationTokenDesc})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:n.encryptKey}),(0,$.jsx)(`input`,{className:z(J(),`min-w-0 flex-1 font-mono text-xs`),type:s?`text`:`password`,autoComplete:`off`,value:A.encryptKey??``,onChange:e=>p({encryptKey:e.target.value})}),(0,$.jsx)(oe,{children:n.encryptKeyDesc})]})]}),(0,$.jsxs)(`div`,{className:`mt-3 grid gap-3 sm:grid-cols-3`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5 sm:col-span-2`,children:[(0,$.jsx)(Y,{children:n.webhookHost}),(0,$.jsx)(`input`,{className:z(J(),`min-w-0 flex-1 font-mono text-xs`),value:A.webhookHost??``,onChange:e=>p({webhookHost:e.target.value}),placeholder:`127.0.0.1`})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:n.webhookPort}),(0,$.jsx)(`input`,{className:z(J(),`min-w-0 flex-1 font-mono text-xs`),type:`number`,inputMode:`numeric`,value:String(A.webhookPort??``),onChange:e=>p({webhookPort:Number(e.target.value||`0`)||0}),placeholder:`3000`})]})]}),(0,$.jsxs)(`div`,{className:`mt-3 flex flex-col gap-1.5`,children:[(0,$.jsx)(Y,{children:n.webhookPath}),(0,$.jsx)(`input`,{className:z(J(),`min-w-0 flex-1 font-mono text-xs`),value:A.webhookPath??``,onChange:e=>p({webhookPath:e.target.value}),placeholder:`/feishu/events`}),(0,$.jsx)(oe,{children:n.webhookPathDesc})]})]}):null,t[125]=n.copied,t[126]=n.copy,t[127]=n.encryptKey,t[128]=n.encryptKeyDesc,t[129]=n.hide,t[130]=n.show,t[131]=n.verificationToken,t[132]=n.verificationTokenDesc,t[133]=n.webhookHost,t[134]=n.webhookPath,t[135]=n.webhookPathDesc,t[136]=n.webhookPort,t[137]=n.webhookTitle,t[138]=f,t[139]=u,t[140]=A.connectionMode,t[141]=A.encryptKey,t[142]=A.verificationToken,t[143]=A.webhookHost,t[144]=A.webhookPath,t[145]=A.webhookPort,t[146]=c,t[147]=s,t[148]=p,t[149]=Ze):Ze=t[149];let Qe;t[150]===n.renderMode?Qe=t[151]:(Qe=(0,$.jsx)(Y,{children:n.renderMode}),t[150]=n.renderMode,t[151]=Qe);let $e;t[152]===Symbol.for(`react.memo_cache_sentinel`)?($e=J(),t[152]=$e):$e=t[152];let et;t[153]===p?et=t[154]:(et=e=>p({renderMode:e.target.value}),t[153]=p,t[154]=et);let tt,nt,rt;t[155]===Symbol.for(`react.memo_cache_sentinel`)?(tt=(0,$.jsx)(`option`,{value:`auto`,children:`auto`}),nt=(0,$.jsx)(`option`,{value:`raw`,children:`raw`}),rt=(0,$.jsx)(`option`,{value:`card`,children:`card`}),t[155]=tt,t[156]=nt,t[157]=rt):(tt=t[155],nt=t[156],rt=t[157]);let it;t[158]!==A.renderMode||t[159]!==et?(it=(0,$.jsxs)(`select`,{className:$e,value:A.renderMode,onChange:et,children:[tt,nt,rt]}),t[158]=A.renderMode,t[159]=et,t[160]=it):it=t[160];let at;t[161]!==Qe||t[162]!==it?(at=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Qe,it]}),t[161]=Qe,t[162]=it,t[163]=at):at=t[163];let ot;t[164]===n.reactionNotifications?ot=t[165]:(ot=(0,$.jsx)(Y,{children:n.reactionNotifications}),t[164]=n.reactionNotifications,t[165]=ot);let ct;t[166]===Symbol.for(`react.memo_cache_sentinel`)?(ct=J(),t[166]=ct):ct=t[166];let pt;t[167]===p?pt=t[168]:(pt=e=>p({reactionNotifications:e.target.value}),t[167]=p,t[168]=pt);let mt,ht,gt;t[169]===Symbol.for(`react.memo_cache_sentinel`)?(mt=(0,$.jsx)(`option`,{value:`off`,children:`off`}),ht=(0,$.jsx)(`option`,{value:`own`,children:`own`}),gt=(0,$.jsx)(`option`,{value:`all`,children:`all`}),t[169]=mt,t[170]=ht,t[171]=gt):(mt=t[169],ht=t[170],gt=t[171]);let _t;t[172]!==A.reactionNotifications||t[173]!==pt?(_t=(0,$.jsxs)(`select`,{className:ct,value:A.reactionNotifications,onChange:pt,children:[mt,ht,gt]}),t[172]=A.reactionNotifications,t[173]=pt,t[174]=_t):_t=t[174];let vt;t[175]!==ot||t[176]!==_t?(vt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[ot,_t]}),t[175]=ot,t[176]=_t,t[177]=vt):vt=t[177];let yt;t[178]!==at||t[179]!==vt?(yt=(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[at,vt]}),t[178]=at,t[179]=vt,t[180]=yt):yt=t[180];let bt;t[181]===p?bt=t[182]:(bt=e=>p({streaming:e.target.checked}),t[181]=p,t[182]=bt);let xt;t[183]!==A.streaming||t[184]!==bt?(xt=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:A.streaming,onChange:bt}),t[183]=A.streaming,t[184]=bt,t[185]=xt):xt=t[185];let St;t[186]!==n.enableStreaming||t[187]!==xt?(St=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[xt,n.enableStreaming]}),t[186]=n.enableStreaming,t[187]=xt,t[188]=St):St=t[188];let Ct;t[189]===n.groupPolicy?Ct=t[190]:(Ct=(0,$.jsx)(Y,{children:n.groupPolicy}),t[189]=n.groupPolicy,t[190]=Ct);let wt;t[191]===Symbol.for(`react.memo_cache_sentinel`)?(wt=J(),t[191]=wt):wt=t[191];let Tt=A.groupPolicy,Et;t[192]===p?Et=t[193]:(Et=e=>p({groupPolicy:e.target.value}),t[192]=p,t[193]=Et);let Dt;t[194]===C?Dt=t[195]:(Dt=C.map(lt),t[194]=C,t[195]=Dt);let Ot;t[196]!==A.groupPolicy||t[197]!==Et||t[198]!==Dt?(Ot=(0,$.jsx)(`select`,{className:wt,value:Tt,onChange:Et,children:Dt}),t[196]=A.groupPolicy,t[197]=Et,t[198]=Dt,t[199]=Ot):Ot=t[199];let kt;t[200]!==Ct||t[201]!==Ot?(kt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Ct,Ot]}),t[200]=Ct,t[201]=Ot,t[202]=kt):kt=t[202];let At;t[203]===p?At=t[204]:(At=e=>p({requireMention:e.target.checked}),t[203]=p,t[204]=At);let jt;t[205]!==A.requireMention||t[206]!==At?(jt=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:A.requireMention,onChange:At}),t[205]=A.requireMention,t[206]=At,t[207]=jt):jt=t[207];let Mt;t[208]!==n.requireMention||t[209]!==jt?(Mt=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[jt,n.requireMention]}),t[208]=n.requireMention,t[209]=jt,t[210]=Mt):Mt=t[210];let Nt;t[211]===n.allowFromDm?Nt=t[212]:(Nt=(0,$.jsx)(Y,{children:n.allowFromDm}),t[211]=n.allowFromDm,t[212]=Nt);let Pt;t[213]===Symbol.for(`react.memo_cache_sentinel`)?(Pt=z(J(),`min-h-[2.75rem] resize-y font-mono text-xs`),t[213]=Pt):Pt=t[213];let Ft;t[214]===A.allowFrom?Ft=t[215]:(Ft=re(A.allowFrom),t[214]=A.allowFrom,t[215]=Ft);let It;t[216]===p?It=t[217]:(It=e=>p({allowFrom:ie(e.target.value)}),t[216]=p,t[217]=It);let Lt;t[218]!==Ft||t[219]!==It?(Lt=(0,$.jsx)(`textarea`,{className:Pt,rows:2,placeholder:`ou_xxx, on_xxx`,value:Ft,onChange:It}),t[218]=Ft,t[219]=It,t[220]=Lt):Lt=t[220];let Rt;t[221]===n.allowFromDmDesc?Rt=t[222]:(Rt=(0,$.jsx)(oe,{children:n.allowFromDmDesc}),t[221]=n.allowFromDmDesc,t[222]=Rt);let zt;t[223]!==Nt||t[224]!==Lt||t[225]!==Rt?(zt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Nt,Lt,Rt]}),t[223]=Nt,t[224]=Lt,t[225]=Rt,t[226]=zt):zt=t[226];let Bt;t[227]===n.allowFromGroups?Bt=t[228]:(Bt=(0,$.jsx)(Y,{children:n.allowFromGroups}),t[227]=n.allowFromGroups,t[228]=Bt);let Vt;t[229]===Symbol.for(`react.memo_cache_sentinel`)?(Vt=z(J(),`min-h-[2.75rem] resize-y font-mono text-xs`),t[229]=Vt):Vt=t[229];let Ht;t[230]===A.groupAllowFrom?Ht=t[231]:(Ht=re(A.groupAllowFrom),t[230]=A.groupAllowFrom,t[231]=Ht);let Ut;t[232]===p?Ut=t[233]:(Ut=e=>p({groupAllowFrom:ie(e.target.value)}),t[232]=p,t[233]=Ut);let Wt;t[234]!==Ht||t[235]!==Ut?(Wt=(0,$.jsx)(`textarea`,{className:Vt,rows:2,placeholder:`oc_xxx, oc_yyy`,value:Ht,onChange:Ut}),t[234]=Ht,t[235]=Ut,t[236]=Wt):Wt=t[236];let Gt;t[237]===n.allowFromGroupsDesc?Gt=t[238]:(Gt=(0,$.jsx)(oe,{children:n.allowFromGroupsDesc}),t[237]=n.allowFromGroupsDesc,t[238]=Gt);let Kt;t[239]!==Bt||t[240]!==Wt||t[241]!==Gt?(Kt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Bt,Wt,Gt]}),t[239]=Bt,t[240]=Wt,t[241]=Gt,t[242]=Kt):Kt=t[242];let qt;t[243]===n.historyLimit?qt=t[244]:(qt=(0,$.jsx)(Y,{children:n.historyLimit}),t[243]=n.historyLimit,t[244]=qt);let Jt;t[245]===Symbol.for(`react.memo_cache_sentinel`)?(Jt=z(J(),`min-w-0 flex-1 font-mono text-xs`),t[245]=Jt):Jt=t[245];let Yt=String(A.historyLimit),Xt;t[246]===p?Xt=t[247]:(Xt=e=>p({historyLimit:Number(e.target.value||`0`)||0}),t[246]=p,t[247]=Xt);let Zt;t[248]!==Yt||t[249]!==Xt?(Zt=(0,$.jsx)(`input`,{className:Jt,type:`number`,inputMode:`numeric`,value:Yt,onChange:Xt}),t[248]=Yt,t[249]=Xt,t[250]=Zt):Zt=t[250];let Qt;t[251]!==qt||t[252]!==Zt?(Qt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[qt,Zt]}),t[251]=qt,t[252]=Zt,t[253]=Qt):Qt=t[253];let $t;t[254]===n.textChunkLimit?$t=t[255]:($t=(0,$.jsx)(Y,{children:n.textChunkLimit}),t[254]=n.textChunkLimit,t[255]=$t);let en;t[256]===Symbol.for(`react.memo_cache_sentinel`)?(en=z(J(),`min-w-0 flex-1 font-mono text-xs`),t[256]=en):en=t[256];let tn=String(A.textChunkLimit),nn;t[257]===p?nn=t[258]:(nn=e=>p({textChunkLimit:Number(e.target.value||`0`)||0}),t[257]=p,t[258]=nn);let rn;t[259]!==tn||t[260]!==nn?(rn=(0,$.jsx)(`input`,{className:en,type:`number`,inputMode:`numeric`,value:tn,onChange:nn}),t[259]=tn,t[260]=nn,t[261]=rn):rn=t[261];let an;t[262]!==$t||t[263]!==rn?(an=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[$t,rn]}),t[262]=$t,t[263]=rn,t[264]=an):an=t[264];let on;t[265]!==Qt||t[266]!==an?(on=(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[Qt,an]}),t[265]=Qt,t[266]=an,t[267]=on):on=t[267];let sn;t[268]===n.feishuToolsTitle?sn=t[269]:(sn=(0,$.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:n.feishuToolsTitle}),t[268]=n.feishuToolsTitle,t[269]=sn);let cn;t[270]===n.feishuToolDoc?cn=t[271]:(cn=[`doc`,n.feishuToolDoc],t[270]=n.feishuToolDoc,t[271]=cn);let ln;t[272]===n.feishuToolWiki?ln=t[273]:(ln=[`wiki`,n.feishuToolWiki],t[272]=n.feishuToolWiki,t[273]=ln);let un;t[274]===n.feishuToolDrive?un=t[275]:(un=[`drive`,n.feishuToolDrive],t[274]=n.feishuToolDrive,t[275]=un);let dn;t[276]===n.feishuToolPerm?dn=t[277]:(dn=[`perm`,n.feishuToolPerm],t[276]=n.feishuToolPerm,t[277]=dn);let fn;t[278]===n.feishuToolBitable?fn=t[279]:(fn=[`bitable`,n.feishuToolBitable],t[278]=n.feishuToolBitable,t[279]=fn);let pn;t[280]===n.feishuToolScopes?pn=t[281]:(pn=[`scopes`,n.feishuToolScopes],t[280]=n.feishuToolScopes,t[281]=pn);let mn;t[282]!==cn||t[283]!==ln||t[284]!==un||t[285]!==dn||t[286]!==fn||t[287]!==pn?(mn=[cn,ln,un,dn,fn,pn],t[282]=cn,t[283]=ln,t[284]=un,t[285]=dn,t[286]=fn,t[287]=pn,t[288]=mn):mn=t[288];let hn=mn,gn;t[289]!==A.tools||t[290]!==hn||t[291]!==p?(gn=(0,$.jsx)(`div`,{className:`mt-2 grid gap-2 sm:grid-cols-2`,children:hn.map(e=>{let[t,n]=e;return(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:!!A.tools?.[t],onChange:e=>p({tools:{...A.tools,[t]:e.target.checked}})}),n]},t)})}),t[289]=A.tools,t[290]=hn,t[291]=p,t[292]=gn):gn=t[292];let _n;t[293]===n.feishuToolsDesc?_n=t[294]:(_n=(0,$.jsx)(`div`,{className:`mt-2`,children:(0,$.jsx)(oe,{children:n.feishuToolsDesc})}),t[293]=n.feishuToolsDesc,t[294]=_n);let vn;t[295]!==sn||t[296]!==gn||t[297]!==_n?(vn=(0,$.jsxs)(`div`,{className:`rounded-xl border border-edge-subtle bg-surface px-4 py-3 dark:border-edge-subtle`,children:[sn,gn,_n]}),t[295]=sn,t[296]=gn,t[297]=_n,t[298]=vn):vn=t[298];let yn;t[299]===n.feishuActionsTitle?yn=t[300]:(yn=(0,$.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:n.feishuActionsTitle}),t[299]=n.feishuActionsTitle,t[300]=yn);let bn=!!A.actions?.reactions,xn;t[301]!==A.actions||t[302]!==p?(xn=e=>p({actions:{...A.actions,reactions:e.target.checked}}),t[301]=A.actions,t[302]=p,t[303]=xn):xn=t[303];let Sn;t[304]!==bn||t[305]!==xn?(Sn=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:bn,onChange:xn}),t[304]=bn,t[305]=xn,t[306]=Sn):Sn=t[306];let Cn;t[307]!==n.feishuActionReactions||t[308]!==Sn?(Cn=(0,$.jsxs)(`label`,{className:`mt-2 flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[Sn,n.feishuActionReactions]}),t[307]=n.feishuActionReactions,t[308]=Sn,t[309]=Cn):Cn=t[309];let wn;t[310]!==yn||t[311]!==Cn?(wn=(0,$.jsxs)(`div`,{className:`rounded-xl border border-edge-subtle bg-surface px-4 py-3 dark:border-edge-subtle`,children:[yn,Cn]}),t[310]=yn,t[311]=Cn,t[312]=wn):wn=t[312];let Tn;t[313]===A?Tn=t[314]:(Tn=se(A),t[313]=A,t[314]=Tn);let En;t[315]===w?.items?En=t[316]:(En=w?.items??[],t[315]=w?.items,t[316]=En);let Dn;t[317]===m?Dn=t[318]:(Dn=(e,t)=>m(`feishu`,e,t),t[317]=m,t[318]=Dn);let On;t[319]!==n||t[320]!==r.channelAgentRoutes.feishu||t[321]!==r.defaultAgentId||t[322]!==T||t[323]!==Tn||t[324]!==En||t[325]!==Dn?(On=(0,$.jsx)(Ve,{accountIds:Tn,routes:r.channelAgentRoutes.feishu,defaultAgentId:r.defaultAgentId,agentItems:En,disabled:T,onChange:Dn,ch:n}),t[319]=n,t[320]=r.channelAgentRoutes.feishu,t[321]=r.defaultAgentId,t[322]=T,t[323]=Tn,t[324]=En,t[325]=Dn,t[326]=On):On=t[326];let kn;t[327]===n.multiAccountJson?kn=t[328]:(kn=(0,$.jsx)(Y,{children:n.multiAccountJson}),t[327]=n.multiAccountJson,t[328]=kn);let An;t[329]===Symbol.for(`react.memo_cache_sentinel`)?(An=z(J(),`min-h-[140px] resize-y font-mono text-xs`),t[329]=An):An=t[329];let jn;t[330]===g?jn=t[331]:(jn=e=>g(e.target.value),t[330]=g,t[331]=jn);let Mn;t[332]!==h||t[333]!==b||t[334]!==jn?(Mn=(0,$.jsx)(`textarea`,{className:An,spellCheck:!1,value:h,onChange:jn,onBlur:b,placeholder:`{ "default": { "appId": "...", "appSecret": "...", "enabled": true } }`}),t[332]=h,t[333]=b,t[334]=jn,t[335]=Mn):Mn=t[335];let Nn;t[336]!==n.multiAccountJsonDesc||t[337]!==v?(Nn=v?(0,$.jsx)(`p`,{className:`text-xs text-red-600 dark:text-red-400`,children:v}):(0,$.jsx)(oe,{children:n.multiAccountJsonDesc}),t[336]=n.multiAccountJsonDesc,t[337]=v,t[338]=Nn):Nn=t[338];let Pn;t[339]!==kn||t[340]!==Mn||t[341]!==Nn?(Pn=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[kn,Mn,Nn]}),t[339]=kn,t[340]=Mn,t[341]=Nn,t[342]=Pn):Pn=t[342];let Fn;t[343]!==Kt||t[344]!==on||t[345]!==vn||t[346]!==wn||t[347]!==On||t[348]!==Pn||t[349]!==ve||t[350]!==Me||t[351]!==Xe||t[352]!==Ze||t[353]!==yt||t[354]!==St||t[355]!==kt||t[356]!==Mt||t[357]!==zt?(Fn=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[ve,Me,Xe,Ze,yt,St,kt,Mt,zt,Kt,on,vn,wn,On,Pn]}),t[343]=Kt,t[344]=on,t[345]=vn,t[346]=wn,t[347]=On,t[348]=Pn,t[349]=ve,t[350]=Me,t[351]=Xe,t[352]=Ze,t[353]=yt,t[354]=St,t[355]=kt,t[356]=Mt,t[357]=zt,t[358]=Fn):Fn=t[358];let In;t[359]!==ce||t[360]!==Fn||t[361]!==ue||t[362]!==de||t[363]!==G?(In=(0,$.jsxs)(`div`,{className:`space-y-4 border-t border-edge-subtle px-3 pb-3 pt-3 dark:border-edge-subtle`,children:[G,ce,ue,de,Fn]}),t[359]=ce,t[360]=Fn,t[361]=ue,t[362]=de,t[363]=G,t[364]=In):In=t[364];let Ln;return t[365]!==In||t[366]!==W?(Ln=(0,$.jsxs)(`details`,{ref:R,className:`group rounded-xl border border-edge-subtle bg-surface-base open:pb-3 dark:border-edge`,children:[W,In]}),t[365]=In,t[366]=W,t[367]=Ln):Ln=t[367],Ln}function lt(e){return(0,$.jsx)(`option`,{value:e.value,children:e.label},e.value)}function ut(e){return!e}function dt(e){return!e}function ft(){return nt(`feishu`)}var pt=e(be(),1);function mt(e){let t=(0,Q.c)(24),{ch:n,dirty:r,saving:i,onCancel:a,onDiscard:o,onSave:s,showCancel:c}=e,l=c===void 0?!0:c,u;t[0]!==n.unsavedHint||t[1]!==r?(u=r?(0,$.jsx)(`p`,{className:`mb-3 text-xs text-amber-800 dark:text-amber-200`,children:n.unsavedHint}):null,t[0]=n.unsavedHint,t[1]=r,t[2]=u):u=t[2];let d;t[3]!==n.modalCancel||t[4]!==a||t[5]!==l?(d=l?(0,$.jsx)(V,{type:`button`,variant:`secondary`,onClick:a,children:n.modalCancel}):null,t[3]=n.modalCancel,t[4]=a,t[5]=l,t[6]=d):d=t[6];let f=!r||i,p;t[7]!==n.discard||t[8]!==o||t[9]!==f?(p=(0,$.jsx)(V,{type:`button`,variant:`secondary`,disabled:f,onClick:o,children:n.discard}),t[7]=n.discard,t[8]=o,t[9]=f,t[10]=p):p=t[10];let m=!r||i,h;t[11]===s?h=t[12]:(h=()=>void s(),t[11]=s,t[12]=h);let g=i?n.saving:n.save,_;t[13]!==m||t[14]!==h||t[15]!==g?(_=(0,$.jsx)(V,{type:`button`,variant:`primary`,disabled:m,onClick:h,children:g}),t[13]=m,t[14]=h,t[15]=g,t[16]=_):_=t[16];let v;t[17]!==d||t[18]!==p||t[19]!==_?(v=(0,$.jsxs)(`div`,{className:`flex flex-wrap justify-end gap-2`,children:[d,p,_]}),t[17]=d,t[18]=p,t[19]=_,t[20]=v):v=t[20];let y;return t[21]!==v||t[22]!==u?(y=(0,$.jsxs)(`div`,{className:`sticky bottom-0 shrink-0 border-t border-edge-subtle bg-surface-panel px-6 py-4 dark:border-edge-subtle`,children:[u,v]}),t[21]=v,t[22]=u,t[23]=y):y=t[23],y}var ht={width:208,margin:2,errorCorrectionLevel:`M`,color:{dark:`#000000ff`,light:`#ffffffff`}},gt={sessionKey:null,qrUrl:null};function _t({ch:e,onSetupSuccess:t,onOpenChange:n,closeOnSetupSuccess:r,moreSettings:i}){let[a,o]=(0,Z.useState)(`feishu`),[s,c]=(0,Z.useState)(0),[l,u]=(0,Z.useState)(null),d=(0,Z.useRef)(t),f=(0,Z.useRef)(n);d.current=t,f.current=n;let p=C(()=>Se({domain:a}).then(e=>({sessionKey:e.sessionKey,qrUrl:e.qrUrl})),[s,a],{initial:gt,errorData:gt}),m=p.data.sessionKey,h=p.data.qrUrl,g=p.loading,_=p.error instanceof Error?p.error.message:p.error?String(p.error):null,v=l??_,y=(0,Z.useCallback)(e=>{u(null),o(e),c(e=>e+1)},[]);(0,Z.useEffect)(()=>{if(!m)return;let e=!1,t,n=async()=>{try{let n=await ue(m);if(e||n.phase===`polling`)return;if(n.phase===`done`){t!==void 0&&(window.clearInterval(t),t=void 0),p.setData(gt),n.ok?(r&&f.current(!1),d.current({appId:n.appId,domain:n.domain,openId:n.openId})):u(n.message);return}n.phase===`unknown`&&(t!==void 0&&window.clearInterval(t),u(n.message),p.setData(gt))}catch(n){e||(t!==void 0&&window.clearInterval(t),u(n instanceof Error?n.message:`Request failed`),p.setData(gt))}};return t=window.setInterval(()=>void n(),3e3),n(),()=>{e=!0,t!==void 0&&window.clearInterval(t)}},[m,r,p.setData]);let b=C(()=>pt.toDataURL(h,ht),[h],{enabled:!!h,initial:null,errorData:null}),x=b.data,S=b.error!==null&&!b.loading,w=!!(h&&m),T=!v&&!w;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`text-center`,children:[(0,$.jsx)(`p`,{className:`text-base font-semibold tracking-tight text-fg`,children:e.feishuQrModalTitle}),(0,$.jsx)(`p`,{className:`mt-1.5 text-sm text-fg-muted`,children:e.feishuQrModalSubtitle})]}),(0,$.jsxs)(`div`,{className:`mt-6 flex min-h-[17.5rem] flex-col items-center justify-center gap-3`,children:[v?(0,$.jsx)(`p`,{className:`text-center text-sm text-red-600 dark:text-red-400`,children:v}):null,!v&&(w||T)?(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-3`,children:[(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:T?e.feishuQrStarting:e.feishuQrScanHint}),(0,$.jsxs)(`div`,{className:z(`relative flex size-52 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-edge-subtle bg-white p-3 dark:border-edge`,T&&`bg-surface-muted/40 dark:bg-surface-base`),children:[T?(0,$.jsx)(`div`,{className:`absolute inset-3 animate-pulse rounded-md bg-surface-muted dark:bg-surface-hover`,"aria-hidden":!0}):null,w&&h&&!v&&x&&!S?(0,$.jsx)(`img`,{src:x,alt:``,className:`relative z-[1] size-full object-contain`}):null,w&&h&&!v&&!x&&!S&&!T?(0,$.jsx)(`p`,{className:`relative z-[1] px-2 text-center text-sm text-fg-muted`,children:e.feishuQrEncoding}):null,w&&h&&!v&&S?(0,$.jsxs)(`div`,{className:`relative z-[1] flex size-full flex-col items-center justify-center gap-2 px-1`,children:[(0,$.jsx)(`p`,{className:`text-center text-xs text-fg-muted`,children:e.feishuQrImageError}),(0,$.jsxs)(`a`,{href:h,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-xs text-accent underline-offset-2 hover:underline`,children:[(0,$.jsx)(D,{className:`size-3 shrink-0`}),e.feishuQrOpenLink]})]}):null]})]}):null]}),(0,$.jsx)(`div`,{className:`mx-auto mt-4 flex w-full max-w-[20rem] justify-center px-1`,role:`group`,"aria-label":e.feishuRegionSwitchAria,children:(0,$.jsxs)(`div`,{className:`inline-flex w-full rounded-full border border-edge bg-surface-muted/60 p-1 dark:border-edge dark:bg-surface-base`,children:[(0,$.jsx)(`button`,{type:`button`,disabled:g,className:z(`min-w-0 flex-1 rounded-full px-3 py-2 text-center text-sm font-medium transition-colors`,W.press,a===`feishu`?`bg-surface-panel text-fg shadow-sm dark:bg-surface-panel`:`text-fg-muted hover:text-fg`),onClick:()=>y(`feishu`),children:e.feishuRegionChina}),(0,$.jsx)(`button`,{type:`button`,disabled:g,className:z(`min-w-0 flex-1 rounded-full px-3 py-2 text-center text-sm font-medium transition-colors`,W.press,a===`lark`?`bg-surface-panel text-fg shadow-sm dark:bg-surface-panel`:`text-fg-muted hover:text-fg`),onClick:()=>y(`lark`),children:e.feishuRegionInternational})]})}),(0,$.jsx)(`div`,{className:`mt-6`,children:(0,$.jsx)(V,{type:`button`,variant:`secondary`,className:`h-11 w-full rounded-full border-0 bg-fg text-surface-panel hover:opacity-90 dark:bg-fg dark:text-surface-panel`,disabled:g,onClick:()=>y(a),children:g?e.feishuQrStarting:e.feishuQrRegenerate})}),i?(0,$.jsx)(`div`,{className:`mt-6 border-t border-edge-subtle pt-4 dark:border-edge-subtle`,children:i}):null]})}function vt(e){let t=(0,Q.c)(26),{open:n,onOpenChange:r,ch:i,onSetupSuccess:a,moreSettings:o,settingsDirty:s,settingsSaving:c,onSettingsDiscard:l,onSettingsSave:u,presentation:d,closeOnSetupSuccess:f}=e,p=s===void 0?!1:s,m=c===void 0?!1:c,h=d===void 0?`modal`:d,g=f===void 0?!0:f,_;t[0]!==i||t[1]!==o||t[2]!==r||t[3]!==l||t[4]!==u||t[5]!==p||t[6]!==m?(_=o&&l&&u?(0,$.jsx)(mt,{ch:i,dirty:p,saving:m,showCancel:!1,onCancel:()=>r(!1),onDiscard:l,onSave:u}):void 0,t[0]=i,t[1]=o,t[2]=r,t[3]=l,t[4]=u,t[5]=p,t[6]=m,t[7]=_):_=t[7];let v;t[8]!==i||t[9]!==g||t[10]!==o||t[11]!==r||t[12]!==a||t[13]!==n?(v=n?(0,$.jsx)(_t,{ch:i,onSetupSuccess:a,onOpenChange:r,closeOnSetupSuccess:g,moreSettings:o},`active`):null,t[8]=i,t[9]=g,t[10]=o,t[11]=r,t[12]=a,t[13]=n,t[14]=v):v=t[14];let y;return t[15]!==i.feishuQrCloseAria||t[16]!==i.feishuQrModalSubtitle||t[17]!==i.feishuQrModalTitle||t[18]!==i.feishuSubtitle||t[19]!==i.feishuTitle||t[20]!==r||t[21]!==n||t[22]!==h||t[23]!==_||t[24]!==v?(y=(0,$.jsx)(Le,{presentation:h,open:n,onOpenChange:r,title:i.feishuTitle,description:i.feishuSubtitle,srTitle:i.feishuQrModalTitle,srDescription:i.feishuQrModalSubtitle,closeAriaLabel:i.feishuQrCloseAria,wide:!0,footer:_,children:v}),t[15]=i.feishuQrCloseAria,t[16]=i.feishuQrModalSubtitle,t[17]=i.feishuQrModalTitle,t[18]=i.feishuSubtitle,t[19]=i.feishuTitle,t[20]=r,t[21]=n,t[22]=h,t[23]=_,t[24]=v,t[25]=y):y=t[25],y}function yt(e){let t=(0,Q.c)(25),{ch:n,usesPairing:r,tokenReady:i,pairingComplete:a}=e;if(!r)return null;let o=i,s=a,c=!o,l=o&&!s,u;t[0]!==c||t[1]!==o?(u=(0,$.jsx)(bt,{done:o,current:c,index:1}),t[0]=c,t[1]=o,t[2]=u):u=t[2];let d=o&&`text-fg-muted`,f;t[3]===d?f=t[4]:(f=z(`text-fg`,d),t[3]=d,t[4]=f);let p;t[5]!==n.telegramSetupStepToken||t[6]!==f?(p=(0,$.jsx)(`span`,{className:f,children:n.telegramSetupStepToken}),t[5]=n.telegramSetupStepToken,t[6]=f,t[7]=p):p=t[7];let m;t[8]!==u||t[9]!==p?(m=(0,$.jsxs)(`li`,{className:`flex items-start gap-2`,children:[u,p]}),t[8]=u,t[9]=p,t[10]=m):m=t[10];let h;t[11]!==l||t[12]!==s?(h=(0,$.jsx)(bt,{done:s,current:l,index:2}),t[11]=l,t[12]=s,t[13]=h):h=t[13];let g=s&&`text-fg-muted`,_;t[14]===g?_=t[15]:(_=z(`text-fg`,g),t[14]=g,t[15]=_);let v;t[16]!==n.telegramSetupStepPairing||t[17]!==_?(v=(0,$.jsx)(`span`,{className:_,children:n.telegramSetupStepPairing}),t[16]=n.telegramSetupStepPairing,t[17]=_,t[18]=v):v=t[18];let y;t[19]!==h||t[20]!==v?(y=(0,$.jsxs)(`li`,{className:`flex items-start gap-2`,children:[h,v]}),t[19]=h,t[20]=v,t[21]=y):y=t[21];let b;return t[22]!==y||t[23]!==m?(b=(0,$.jsxs)(`ol`,{className:`space-y-2 rounded-xl border border-accent/25 bg-accent-soft/20 px-4 py-3 text-xs`,children:[m,y]}),t[22]=y,t[23]=m,t[24]=b):b=t[24],b}function bt(e){let t=(0,Q.c)(7),{done:n,current:r,index:i}=e,a=n&&`border-success bg-success text-white`,o=!n&&r&&`border-accent bg-accent text-white`,s=!n&&!r&&`border-edge text-fg-muted`,c;t[0]!==a||t[1]!==o||t[2]!==s?(c=z(`mt-0.5 flex size-4 shrink-0 items-center justify-center rounded-full border text-[10px] font-semibold`,a,o,s),t[0]=a,t[1]=o,t[2]=s,t[3]=c):c=t[3];let l=n?`✓`:String(i),u;return t[4]!==c||t[5]!==l?(u=(0,$.jsx)(`span`,{className:c,"aria-hidden":!0,children:l}),t[4]=c,t[5]=l,t[6]=u):u=t[6],u}function xt(e){let t=(0,Q.c)(115),{tg:n,updateTelegram:r,ch:i,groupOpts:a,replyOpts:o,streamOpts:s,tgAccountsDraft:c,setTgAccountsDraft:l,tgAccountsError:u,onTgAccountsBlur:d}=e,f;t[0]===i.apiRoot?f=t[1]:(f=(0,$.jsx)(Y,{children:i.apiRoot}),t[0]=i.apiRoot,t[1]=f);let p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=J(),t[2]=p):p=t[2];let m;t[3]===r?m=t[4]:(m=e=>r({apiRoot:e.target.value}),t[3]=r,t[4]=m);let h;t[5]!==m||t[6]!==n.apiRoot?(h=(0,$.jsx)(`input`,{className:p,value:n.apiRoot,onChange:m,placeholder:`https://api.telegram.org`}),t[5]=m,t[6]=n.apiRoot,t[7]=h):h=t[7];let g;t[8]!==f||t[9]!==h?(g=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[f,h]}),t[8]=f,t[9]=h,t[10]=g):g=t[10];let _;t[11]===i.proxy?_=t[12]:(_=(0,$.jsx)(Y,{children:i.proxy}),t[11]=i.proxy,t[12]=_);let v;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(v=J(),t[13]=v):v=t[13];let y;t[14]===r?y=t[15]:(y=e=>r({proxy:e.target.value}),t[14]=r,t[15]=y);let b;t[16]!==y||t[17]!==n.proxy?(b=(0,$.jsx)(`input`,{className:v,value:n.proxy,onChange:y,placeholder:`http://proxy.example.com:8080`}),t[16]=y,t[17]=n.proxy,t[18]=b):b=t[18];let x;t[19]!==_||t[20]!==b?(x=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[_,b]}),t[19]=_,t[20]=b,t[21]=x):x=t[21];let S;t[22]===r?S=t[23]:(S=e=>r({groupPolicy:e}),t[22]=r,t[23]=S);let C;t[24]!==i.groupPolicy||t[25]!==a||t[26]!==S||t[27]!==n.groupPolicy?(C=(0,$.jsx)(ae,{label:i.groupPolicy,value:n.groupPolicy,onChange:S,options:a}),t[24]=i.groupPolicy,t[25]=a,t[26]=S,t[27]=n.groupPolicy,t[28]=C):C=t[28];let w;t[29]===r?w=t[30]:(w=e=>r({replyToMode:e}),t[29]=r,t[30]=w);let T;t[31]!==i.replyToMode||t[32]!==o||t[33]!==w||t[34]!==n.replyToMode?(T=(0,$.jsx)(ae,{label:i.replyToMode,value:n.replyToMode,onChange:w,options:o}),t[31]=i.replyToMode,t[32]=o,t[33]=w,t[34]=n.replyToMode,t[35]=T):T=t[35];let E;t[36]===r?E=t[37]:(E=e=>r({streamMode:e}),t[36]=r,t[37]=E);let D;t[38]!==i.streamMode||t[39]!==s||t[40]!==E||t[41]!==n.streamMode?(D=(0,$.jsx)(ae,{label:i.streamMode,value:n.streamMode,onChange:E,options:s}),t[38]=i.streamMode,t[39]=s,t[40]=E,t[41]=n.streamMode,t[42]=D):D=t[42];let O;t[43]===i.allowFromGroups?O=t[44]:(O=(0,$.jsx)(Y,{children:i.allowFromGroups}),t[43]=i.allowFromGroups,t[44]=O);let k;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(k=z(J(),`min-h-[2.75rem] resize-y font-mono text-xs`),t[45]=k):k=t[45];let A;t[46]===n.groupAllowFrom?A=t[47]:(A=re(n.groupAllowFrom),t[46]=n.groupAllowFrom,t[47]=A);let j;t[48]===r?j=t[49]:(j=e=>r({groupAllowFrom:ie(e.target.value)}),t[48]=r,t[49]=j);let M;t[50]!==A||t[51]!==j?(M=(0,$.jsx)(`textarea`,{className:k,rows:2,placeholder:`-1001234567890`,value:A,onChange:j}),t[50]=A,t[51]=j,t[52]=M):M=t[52];let N;t[53]!==O||t[54]!==M?(N=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[O,M]}),t[53]=O,t[54]=M,t[55]=N):N=t[55];let P;t[56]===i.historyLimit?P=t[57]:(P=(0,$.jsx)(Y,{children:i.historyLimit}),t[56]=i.historyLimit,t[57]=P);let F;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(F=J(),t[58]=F):F=t[58];let I;t[59]===r?I=t[60]:(I=e=>r({historyLimit:parseInt(e.target.value,10)||50}),t[59]=r,t[60]=I);let L;t[61]!==I||t[62]!==n.historyLimit?(L=(0,$.jsx)(`input`,{type:`number`,min:10,max:200,className:F,value:n.historyLimit,onChange:I}),t[61]=I,t[62]=n.historyLimit,t[63]=L):L=t[63];let R;t[64]!==P||t[65]!==L?(R=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[P,L]}),t[64]=P,t[65]=L,t[66]=R):R=t[66];let ee;t[67]===i.textChunkLimit?ee=t[68]:(ee=(0,$.jsx)(Y,{children:i.textChunkLimit}),t[67]=i.textChunkLimit,t[68]=ee);let B;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(B=J(),t[69]=B):B=t[69];let V;t[70]===r?V=t[71]:(V=e=>r({textChunkLimit:parseInt(e.target.value,10)||4e3}),t[70]=r,t[71]=V);let H;t[72]!==V||t[73]!==n.textChunkLimit?(H=(0,$.jsx)(`input`,{type:`number`,min:1e3,max:1e4,step:100,className:B,value:n.textChunkLimit,onChange:V}),t[72]=V,t[73]=n.textChunkLimit,t[74]=H):H=t[74];let U;t[75]!==ee||t[76]!==H?(U=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[ee,H]}),t[75]=ee,t[76]=H,t[77]=U):U=t[77];let te;t[78]!==R||t[79]!==U?(te=(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[R,U]}),t[78]=R,t[79]=U,t[80]=te):te=t[80];let W;t[81]===r?W=t[82]:(W=e=>r({debug:e.target.checked}),t[81]=r,t[82]=W);let G;t[83]!==W||t[84]!==n.debug?(G=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:n.debug,onChange:W}),t[83]=W,t[84]=n.debug,t[85]=G):G=t[85];let ne;t[86]!==i.telegramDebug||t[87]!==G?(ne=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[G,i.telegramDebug]}),t[86]=i.telegramDebug,t[87]=G,t[88]=ne):ne=t[88];let K;t[89]===i.multiAccountJson?K=t[90]:(K=(0,$.jsx)(Y,{children:i.multiAccountJson}),t[89]=i.multiAccountJson,t[90]=K);let q;t[91]===Symbol.for(`react.memo_cache_sentinel`)?(q=z(J(),`min-h-[140px] resize-y font-mono text-xs`),t[91]=q):q=t[91];let se;t[92]===l?se=t[93]:(se=e=>l(e.target.value),t[92]=l,t[93]=se);let ce;t[94]!==d||t[95]!==se||t[96]!==c?(ce=(0,$.jsx)(`textarea`,{className:q,spellCheck:!1,value:c,onChange:se,onBlur:d,placeholder:`{ "personal": { "accountId": "personal", "botToken": "...", ... } }`}),t[94]=d,t[95]=se,t[96]=c,t[97]=ce):ce=t[97];let le;t[98]!==i.multiAccountJsonDesc||t[99]!==u?(le=u?(0,$.jsx)(`p`,{className:`text-xs text-red-600 dark:text-red-400`,children:u}):(0,$.jsx)(oe,{children:i.multiAccountJsonDesc}),t[98]=i.multiAccountJsonDesc,t[99]=u,t[100]=le):le=t[100];let ue;t[101]!==K||t[102]!==ce||t[103]!==le?(ue=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[K,ce,le]}),t[101]=K,t[102]=ce,t[103]=le,t[104]=ue):ue=t[104];let de;return t[105]!==x||t[106]!==C||t[107]!==T||t[108]!==D||t[109]!==N||t[110]!==te||t[111]!==ne||t[112]!==ue||t[113]!==g?(de=(0,$.jsxs)(`div`,{className:`space-y-4 border-t border-edge-subtle pt-4 dark:border-edge`,children:[g,x,C,T,D,N,te,ne,ue]}),t[105]=x,t[106]=C,t[107]=T,t[108]=D,t[109]=N,t[110]=te,t[111]=ne,t[112]=ue,t[113]=g,t[114]=de):de=t[114],de}function St(e){let t=(0,Q.c)(169),{open:n,onOpenChange:r,presentation:i,ch:a,form:o,baseline:s,tgAdvanced:c,setTgAdvanced:l,showToken:u,setShowToken:d,copied:f,copyToken:p,updateTelegram:m,updateChannelAgentRoute:h,tgAccountsDraft:g,setTgAccountsDraft:v,tgAccountsError:b,onTgAccountsBlur:x,dmOpts:C,groupOpts:w,replyOpts:T,streamOpts:E,chatAgents:D,saving:O,dirty:k,save:A,discard:j,language:M,scrollToPairingOnOpen:N,closeOnSave:P}=e,F=i===void 0?`modal`:i,I=N===void 0?!1:N,L=P===void 0?!0:P,R=o.telegram,B;t[0]===s?B=t[1]:(B=s?ne(s.telegram):``,t[0]=s,t[1]=B);let H=B,U=ne(R),W=!u&&!!String(H).trim()&&U===H,[G,K]=(0,Z.useState)(0),q=!!U.trim()&&R.enabled,se;t[2]===R?se=t[3]:(se=Ce(R),t[2]=R,t[3]=se);let ce=se,le,ue;t[4]!==n||t[5]!==I?(le=()=>{if(!n||!I)return;let e=window.setTimeout(Tt,80);return()=>window.clearTimeout(e)},ue=[n,I],t[4]=n,t[5]=I,t[6]=le,t[7]=ue):(le=t[6],ue=t[7]),(0,Z.useEffect)(le,ue);let de=a.telegramTitle,fe=a.telegramSubtitle,pe=a.telegramTitle,me=a.telegramSubtitle,he=a.modalCancel,ge;t[8]!==a.telegramSubtitle||t[9]!==a.telegramTitle||t[10]!==F?(ge=F===`modal`?(0,$.jsxs)(`div`,{className:`border-b border-edge-subtle px-6 pb-4 pt-6 dark:border-edge-subtle`,children:[(0,$.jsx)(`h2`,{className:`text-lg font-semibold tracking-tight text-fg`,children:a.telegramTitle}),(0,$.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:a.telegramSubtitle})]}):void 0,t[8]=a.telegramSubtitle,t[9]=a.telegramTitle,t[10]=F,t[11]=ge):ge=t[11];let _e;t[12]===r?_e=t[13]:(_e=()=>r(!1),t[12]=r,t[13]=_e);let ve;t[14]!==L||t[15]!==r||t[16]!==A?(ve=async()=>{await A()&&L&&r(!1)},t[14]=L,t[15]=r,t[16]=A,t[17]=ve):ve=t[17];let ye;t[18]!==a||t[19]!==k||t[20]!==j||t[21]!==O||t[22]!==_e||t[23]!==ve?(ye=(0,$.jsx)(mt,{ch:a,dirty:k,saving:O,onCancel:_e,onDiscard:j,onSave:ve}),t[18]=a,t[19]=k,t[20]=j,t[21]=O,t[22]=_e,t[23]=ve,t[24]=ye):ye=t[24];let be;t[25]===m?be=t[26]:(be=e=>m({enabled:e.target.checked}),t[25]=m,t[26]=be);let X;t[27]!==be||t[28]!==R.enabled?(X=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:R.enabled,onChange:be}),t[27]=be,t[28]=R.enabled,t[29]=X):X=t[29];let Se;t[30]===a.enableTelegramAria?Se=t[31]:(Se=(0,$.jsx)(`span`,{children:a.enableTelegramAria}),t[30]=a.enableTelegramAria,t[31]=Se);let we;t[32]!==X||t[33]!==Se?(we=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[X,Se]}),t[32]=X,t[33]=Se,t[34]=we):we=t[34];let Te;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(Te=(0,$.jsx)(`span`,{className:`text-red-600 dark:text-red-400`,children:` *`}),t[35]=Te):Te=t[35];let Ee;t[36]===a.telegramToken?Ee=t[37]:(Ee=(0,$.jsxs)(Y,{children:[a.telegramToken,Te]}),t[36]=a.telegramToken,t[37]=Ee);let De;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(De=z(J(),`min-w-0 flex-1 font-mono text-xs`),t[38]=De):De=t[38];let Oe=u?`text`:`password`,ke;t[39]!==W||t[40]!==H||t[41]!==U?(ke=W?`*`.repeat(Math.max(1,H.length)):U,t[39]=W,t[40]=H,t[41]=U,t[42]=ke):ke=t[42];let Ae;t[43]!==W||t[44]!==R.accounts||t[45]!==m?(Ae=e=>{if(W)return;let t=R.accounts?.default??xe(`default`);m({accounts:{...R.accounts,default:{...t,accountId:`default`,botToken:e.target.value}}})},t[43]=W,t[44]=R.accounts,t[45]=m,t[46]=Ae):Ae=t[46];let je;t[47]!==Oe||t[48]!==ke||t[49]!==Ae||t[50]!==W?(je=(0,$.jsx)(`input`,{className:De,type:Oe,autoComplete:`off`,readOnly:W,value:ke,onChange:Ae,placeholder:`123456789:ABCdefGHIjklMNOpqrsTUVwxyz`}),t[47]=Oe,t[48]=ke,t[49]=Ae,t[50]=W,t[51]=je):je=t[51];let Me;t[52]!==a.copied||t[53]!==a.copy||t[54]!==f||t[55]!==p||t[56]!==U?(Me=U?(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:()=>void p(),children:[f?(0,$.jsx)(S,{className:`size-3.5`}):(0,$.jsx)(_,{className:`size-3.5`}),f?a.copied:a.copy]}):null,t[52]=a.copied,t[53]=a.copy,t[54]=f,t[55]=p,t[56]=U,t[57]=Me):Me=t[57];let Ne;t[58]===d?Ne=t[59]:(Ne=()=>d(wt),t[58]=d,t[59]=Ne);let Pe;t[60]===u?Pe=t[61]:(Pe=u?(0,$.jsx)(te,{className:`size-3.5`}):(0,$.jsx)(y,{className:`size-3.5`}),t[60]=u,t[61]=Pe);let Fe=u?a.hide:a.show,Ie;t[62]!==Ne||t[63]!==Pe||t[64]!==Fe?(Ie=(0,$.jsxs)(V,{type:`button`,variant:`secondary`,className:`px-2 py-1 text-xs`,onClick:Ne,children:[Pe,Fe]}),t[62]=Ne,t[63]=Pe,t[64]=Fe,t[65]=Ie):Ie=t[65];let Re;t[66]!==je||t[67]!==Me||t[68]!==Ie?(Re=(0,$.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[je,Me,Ie]}),t[66]=je,t[67]=Me,t[68]=Ie,t[69]=Re):Re=t[69];let ze;t[70]===a.telegramTokenDesc?ze=t[71]:(ze=(0,$.jsx)(oe,{children:a.telegramTokenDesc}),t[70]=a.telegramTokenDesc,t[71]=ze);let Be;t[72]!==Ee||t[73]!==Re||t[74]!==ze?(Be=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Ee,Re,ze]}),t[72]=Ee,t[73]=Re,t[74]=ze,t[75]=Be):Be=t[75];let He;t[76]===R?He=t[77]:(He=Je(`telegram`,R),t[76]=R,t[77]=He);let Ue=G>0,We;t[78]!==a||t[79]!==He||t[80]!==Ue||t[81]!==q?(We=(0,$.jsx)(yt,{ch:a,usesPairing:He,tokenReady:q,pairingComplete:Ue}),t[78]=a,t[79]=He,t[80]=Ue,t[81]=q,t[82]=We):We=t[82];let Ge;t[83]===m?Ge=t[84]:(Ge=e=>m({dmPolicy:e}),t[83]=m,t[84]=Ge);let Ke;t[85]!==a.dmPolicy||t[86]!==C||t[87]!==Ge||t[88]!==R.dmPolicy?(Ke=(0,$.jsx)(ae,{label:a.dmPolicy,value:R.dmPolicy,onChange:Ge,options:C}),t[85]=a.dmPolicy,t[86]=C,t[87]=Ge,t[88]=R.dmPolicy,t[89]=Ke):Ke=t[89];let qe;t[90]!==a||t[91]!==M||t[92]!==n||t[93]!==K||t[94]!==R||t[95]!==ce?(qe=(0,$.jsx)(st,{channel:`telegram`,accountIds:ce,channelConfig:R,active:n,ch:a,language:M,onPairedChange:K}),t[90]=a,t[91]=M,t[92]=n,t[93]=K,t[94]=R,t[95]=ce,t[96]=qe):qe=t[96];let Ye;t[97]===a.allowFromDm?Ye=t[98]:(Ye=(0,$.jsx)(Y,{children:a.allowFromDm}),t[97]=a.allowFromDm,t[98]=Ye);let Xe;t[99]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=z(J(),`min-h-[2.75rem] resize-y font-mono text-xs`),t[99]=Xe):Xe=t[99];let Ze;t[100]===R.allowFrom?Ze=t[101]:(Ze=re(R.allowFrom),t[100]=R.allowFrom,t[101]=Ze);let Qe;t[102]===m?Qe=t[103]:(Qe=e=>m({allowFrom:ie(e.target.value)}),t[102]=m,t[103]=Qe);let $e;t[104]!==Ze||t[105]!==Qe?($e=(0,$.jsx)(`textarea`,{className:Xe,rows:2,placeholder:`123456789, 987654321`,value:Ze,onChange:Qe}),t[104]=Ze,t[105]=Qe,t[106]=$e):$e=t[106];let et;t[107]===a.allowFromDmDesc?et=t[108]:(et=(0,$.jsx)(oe,{children:a.allowFromDmDesc}),t[107]=a.allowFromDmDesc,t[108]=et);let tt;t[109]!==Ye||t[110]!==$e||t[111]!==et?(tt=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[Ye,$e,et]}),t[109]=Ye,t[110]=$e,t[111]=et,t[112]=tt):tt=t[112];let nt;t[113]===R?nt=t[114]:(nt=Ce(R),t[113]=R,t[114]=nt);let rt;t[115]===D?.items?rt=t[116]:(rt=D?.items??[],t[115]=D?.items,t[116]=rt);let it;t[117]===h?it=t[118]:(it=(e,t)=>h(`telegram`,e,t),t[117]=h,t[118]=it);let at;t[119]!==a||t[120]!==o.channelAgentRoutes.telegram||t[121]!==o.defaultAgentId||t[122]!==O||t[123]!==nt||t[124]!==rt||t[125]!==it?(at=(0,$.jsx)(Ve,{accountIds:nt,routes:o.channelAgentRoutes.telegram,defaultAgentId:o.defaultAgentId,agentItems:rt,disabled:O,onChange:it,ch:a}),t[119]=a,t[120]=o.channelAgentRoutes.telegram,t[121]=o.defaultAgentId,t[122]=O,t[123]=nt,t[124]=rt,t[125]=it,t[126]=at):at=t[126];let ot;t[127]===l?ot=t[128]:(ot=()=>l(Ct),t[127]=l,t[128]=ot);let ct=c&&`rotate-180`,lt;t[129]===ct?lt=t[130]:(lt=z(`mr-1 size-4 transition-transform`,ct),t[129]=ct,t[130]=lt);let ut;t[131]===lt?ut=t[132]:(ut=(0,$.jsx)(ee,{className:lt}),t[131]=lt,t[132]=ut);let dt=c?a.advancedHide:a.advancedShow,ft;t[133]!==ot||t[134]!==ut||t[135]!==dt?(ft=(0,$.jsxs)(V,{type:`button`,variant:`ghost`,className:`-ml-2 h-auto justify-start px-2 py-1 text-sm text-fg-muted hover:text-fg`,onClick:ot,children:[ut,dt]}),t[133]=ot,t[134]=ut,t[135]=dt,t[136]=ft):ft=t[136];let pt;t[137]!==a||t[138]!==w||t[139]!==x||t[140]!==T||t[141]!==v||t[142]!==E||t[143]!==R||t[144]!==g||t[145]!==b||t[146]!==c||t[147]!==m?(pt=c?(0,$.jsx)(xt,{tg:R,updateTelegram:m,ch:a,groupOpts:w,replyOpts:T,streamOpts:E,tgAccountsDraft:g,setTgAccountsDraft:v,tgAccountsError:b,onTgAccountsBlur:x}):null,t[137]=a,t[138]=w,t[139]=x,t[140]=T,t[141]=v,t[142]=E,t[143]=R,t[144]=g,t[145]=b,t[146]=c,t[147]=m,t[148]=pt):pt=t[148];let ht;t[149]!==Be||t[150]!==We||t[151]!==Ke||t[152]!==qe||t[153]!==tt||t[154]!==at||t[155]!==ft||t[156]!==pt?(ht=(0,$.jsxs)(`div`,{className:`mt-6 space-y-4`,children:[Be,We,Ke,qe,tt,at,ft,pt]}),t[149]=Be,t[150]=We,t[151]=Ke,t[152]=qe,t[153]=tt,t[154]=at,t[155]=ft,t[156]=pt,t[157]=ht):ht=t[157];let gt;return t[158]!==a.modalCancel||t[159]!==a.telegramSubtitle||t[160]!==a.telegramTitle||t[161]!==r||t[162]!==n||t[163]!==F||t[164]!==ge||t[165]!==ye||t[166]!==we||t[167]!==ht?(gt=(0,$.jsxs)(Le,{presentation:F,open:n,onOpenChange:r,title:de,description:fe,srTitle:pe,srDescription:me,closeAriaLabel:he,wide:!0,headerExtra:ge,footer:ye,children:[we,ht]}),t[158]=a.modalCancel,t[159]=a.telegramSubtitle,t[160]=a.telegramTitle,t[161]=r,t[162]=n,t[163]=F,t[164]=ge,t[165]=ye,t[166]=we,t[167]=ht,t[168]=gt):gt=t[168],gt}function Ct(e){return!e}function wt(e){return!e}function Tt(){return nt(`telegram`)}var Et=[{id:`telegram`,titleKey:`telegramTitle`,subtitleKey:`telegramSubtitle`},{id:`weixin`,titleKey:`weixinTitle`,subtitleKey:`weixinSubtitle`},{id:`feishu`,titleKey:`feishuTitle`,subtitleKey:`feishuSubtitle`}];function Dt(){return o(`/api/channels/meta`)}async function Ot(){return(await g(Dt())).payload?.channels??[]}var kt=new Map(Et.map(e=>[e.id,e])),At=new Map(Et.map((e,t)=>[e.id,t]));function jt(e,t){return{title:t[e.titleKey],subtitle:t[e.subtitleKey]}}function Mt(e,t){let n=new Map;for(let r of e??[]){let e=kt.get(r.id),i=e?jt(e,t):{title:r.label,subtitle:r.description||t.hubExtensionSubtitle};n.set(r.id,{id:r.id,title:i.title,subtitle:i.subtitle,manageable:r.manageable,order:r.order})}if(n.size===0)return Et.map((e,n)=>{let r=jt(e,t);return{id:e.id,title:r.title,subtitle:r.subtitle,manageable:!0,order:n}});for(let e of Et){if(n.has(e.id))continue;let r=jt(e,t);n.set(e.id,{id:e.id,title:r.title,subtitle:r.subtitle,manageable:!0,order:At.get(e.id)??0})}return Array.from(n.values()).sort((e,t)=>e.order===t.order?e.id.localeCompare(t.id):e.order-t.order)}function Nt(e,t){let n=(0,Q.c)(11),r;n[0]===e?r=n[1]:(r=e?Dt():null,n[0]=e,n[1]=r);let i;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(i={revalidateOnFocus:!1},n[2]=i):i=n[2];let{data:a,error:o,isLoading:c,mutate:l}=s(r,Ot,i),u;n[3]!==t||n[4]!==a?(u=Mt(a,t),n[3]=t,n[4]=a,n[5]=u):u=n[5];let d=u,f;return n[6]!==d||n[7]!==o||n[8]!==c||n[9]!==l?(f={entries:d,isLoading:c,error:o,mutate:l},n[6]=d,n[7]=o,n[8]=c,n[9]=l,n[10]=f):f=n[10],f}function Pt(e,t){return e.find(e=>e.name===t)?.connected??!1}function Ft(e,t){return e.find(e=>e.name===t)?.enabled??!1}function It(e,t){let n=e&&typeof e==`object`?e.channels:void 0,r=n&&typeof n==`object`&&!Array.isArray(n)?n[t]:void 0;return!r||typeof r!=`object`?!1:Object.keys(r).length>0}function Lt(e,t,n){return e?t?n?`running`:`offline`:`disabled`:`not_configured`}function Rt(e,t,n){return n?e===`not_configured`?`setup`:t>0?`pairing`:e===`offline`?`fix`:`manage`:`manage`}function zt(e,t){return e.policy.dm[t]}function Bt(e,t){return e.hubSummaryAccountCount.replace(`{{count}}`,String(t))}function Vt(e,t){let n=t.telegram,r=[e.hubSummaryDm.replace(`{{policy}}`,zt(e,n.dmPolicy))],i=Ce(n).length;return i>0&&r.push(Bt(e,i)),r}function Ht(e,t){let n=t.weixin,r=[e.hubSummaryDm.replace(`{{policy}}`,zt(e,n.dmPolicy))];r.push(e.hubSummaryStream.replace(`{{mode}}`,e.policy.stream[n.streamMode]));let i=we(n).length;return i>0&&r.push(Bt(e,i)),r}function Ut(e,t){let n=t.feishu,r=n.connectionMode===`webhook`?e.hubConnectionWebhook:e.hubConnectionWebsocket,i=[e.hubSummaryConnection.replace(`{{mode}}`,r)],a=se(n).length;return a>0&&i.push(Bt(e,a)),i}function Wt(e,t){return t[e]}function Gt(e){let{id:t,form:n,connected:r,pairingSummary:i,ch:a}=e,o=n.telegram,s=n.weixin,c=n.feishu,l=t===`telegram`?K(o):t===`weixin`?G(s):q(c),u=t===`telegram`?o.enabled:t===`weixin`?s.enabled:c.enabled,d=Ye({configured:l,channelEnabled:u,usesPairing:Je(t,t===`telegram`?o:t===`weixin`?s:c),summaryPending:Wt(t,i).pending}),f=Lt(l,u,r);return{id:t,manageable:!0,configured:l,enabled:u,connected:r,status:f,summaryLines:l?t===`telegram`?Vt(a,n):t===`weixin`?Ht(a,n):Ut(a,n):[],pendingPairing:d,primaryAction:Rt(f,d,!0)}}function Kt(e){let{id:t,config:n,statuses:r,ch:i}=e,a=It(n,t),o=Ft(r,t),s=Pt(r,t);return{id:t,manageable:!1,configured:a,enabled:o,connected:s,status:Lt(a,o,s),summaryLines:a?[i.hubExtensionConfiguredHint]:[],pendingPairing:0,primaryAction:`manage`}}function qt(e){return L(e.id)?Gt({id:e.id,form:e.form,connected:Pt(e.statuses,e.id),pairingSummary:e.pairingSummary,ch:e.ch}):Kt({id:e.id,config:e.config,statuses:e.statuses,ch:e.ch})}function Jt(e){return e.catalogIds.map(t=>qt({id:t,form:e.form,config:e.config,statuses:e.statuses,pairingSummary:e.pairingSummary,ch:e.ch}))}var Yt=`channels-status`;function Xt(e){if(!e||typeof e!=`object`)return null;let t=e.channels;return Array.isArray(t)?t:null}function Zt(e){let t=t=>e(t.detail);return window.addEventListener(Yt,t),()=>window.removeEventListener(Yt,t)}function Qt(e,t){let n=(0,Q.c)(4),r=t===void 0?!0:t,i,a;n[0]!==r||n[1]!==e?(i=()=>{if(r)return Zt(e)},a=[r,e],n[0]=r,n[1]=e,n[2]=i,n[3]=a):(i=n[2],a=n[3]),(0,Z.useEffect)(i,a)}var $t={telegram:{pending:0,stale:0,atCapacity:!1},feishu:{pending:0,stale:0,atCapacity:!1},weixin:{pending:0,stale:0,atCapacity:!1}};function en(e){let t=(0,Q.c)(8),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={revalidateOnFocus:!0},t[0]=n):n=t[0];let{data:r,mutate:i,isLoading:a,error:o}=s(e?Qe:null,he,n),c;t[1]===i?c=t[2]:(c=()=>{i()},t[1]=i,t[2]=c);let l=c;et(l,e);let u=r??$t,d;return t[3]!==o||t[4]!==a||t[5]!==l||t[6]!==u?(d={summary:u,isLoading:a,error:o,refresh:l},t[3]=o,t[4]=a,t[5]=l,t[6]=u,t[7]=d):d=t[7],d}var tn=3e4;function nn(e){let t=(0,Q.c)(25),{hasToken:n,form:r,ch:i}=e,{data:a,mutate:o}=A(n),{entries:c,mutate:l}=Nt(n,i),u;t[0]===n?u=t[1]:(u=n?X():null,t[0]=n,t[1]=u);let d;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(d={revalidateOnFocus:!0,refreshInterval:tn},t[2]=d):d=t[2];let{data:f,mutate:p}=s(u,_e,d),m;t[3]===f?m=t[4]:(m=f===void 0?[]:f,t[3]=f,t[4]=m);let h=m,g;t[5]===p?g=t[6]:(g=e=>{let t=Xt(e);if(t){p(t,{revalidate:!1});return}p()},t[5]=p,t[6]=g),Qt(g,n);let{summary:_,refresh:v}=en(n),y;t[7]===c?y=t[8]:(y=c.map(rn),t[7]=c,t[8]=y);let b=y,x=a?.payload?.config,S;bb0:{if(!r||b.length===0){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[9]=e):e=t[9],S=e;break bb0}let e;t[10]!==b||t[11]!==i||t[12]!==x||t[13]!==r||t[14]!==_||t[15]!==h?(e=Jt({catalogIds:b,form:r,config:x,statuses:h,pairingSummary:_,ch:i}),t[10]=b,t[11]=i,t[12]=x,t[13]=r,t[14]=_,t[15]=h,t[16]=e):e=t[16],S=e}let C=S,w;t[17]!==l||t[18]!==o||t[19]!==p||t[20]!==v?(w=()=>{p(),l(),o(),v()},t[17]=l,t[18]=o,t[19]=p,t[20]=v,t[21]=w):w=t[21];let T=w,E;return t[22]!==C||t[23]!==T?(E={cards:C,refreshAll:T},t[22]=C,t[23]=T,t[24]=E):E=t[24],E}function rn(e){return e.id}var an={form:null,baseline:null,tgAccountsDraft:``,tgAccountsError:``,wxAccountsDraft:``,wxAccountsError:``,feishuAccountsDraft:``,feishuAccountsError:``};function on(e){return{tgAccountsDraft:JSON.stringify(e.telegram.accounts??{},null,2),tgAccountsError:``,wxAccountsDraft:JSON.stringify(e.weixin.accounts??{},null,2),wxAccountsError:``,feishuAccountsDraft:JSON.stringify(e.feishu?.accounts??{},null,2),feishuAccountsError:``}}function sn(e,t){switch(t.type){case`reset`:return an;case`load`:{let e=structuredClone(t.payload);return{form:e,baseline:structuredClone(e),...on(e)}}case`commitSaved`:{let e=structuredClone(t.payload);return{form:e,baseline:structuredClone(e),...on(e)}}case`discard`:{if(!e.baseline)return e;let t=structuredClone(e.baseline);return{form:t,baseline:e.baseline,...on(t)}}case`updateTelegram`:return e.form?{...e,form:{...e.form,telegram:{...e.form.telegram,...t.patch}}}:e;case`updateWeixin`:return e.form?{...e,form:{...e.form,weixin:{...e.form.weixin,...t.patch}}}:e;case`updateFeishu`:return e.form?{...e,form:{...e.form,feishu:{...e.form.feishu,...t.patch}}}:e;case`updateChannelAgentRoute`:{if(!e.form)return e;let n=t.channel===`telegram`?`telegram`:t.channel===`weixin`?`weixin`:`feishu`;return{...e,form:{...e.form,channelAgentRoutes:{...e.form.channelAgentRoutes,[n]:{...e.form.channelAgentRoutes[n],[t.accountId]:t.agentId.trim().toLowerCase()}}}}}case`setTgAccountsDraft`:return{...e,tgAccountsDraft:t.value};case`setWxAccountsDraft`:return{...e,wxAccountsDraft:t.value};case`setFeishuAccountsDraft`:return{...e,feishuAccountsDraft:t.value};case`setTgAccountsError`:return{...e,tgAccountsError:t.value};case`setWxAccountsError`:return{...e,wxAccountsError:t.value};case`setFeishuAccountsError`:return{...e,feishuAccountsError:t.value};case`applyTgAccounts`:return e.form?{...e,form:{...e.form,telegram:{...e.form.telegram,accounts:t.accounts}},tgAccountsError:``}:e;case`applyWxAccounts`:return e.form?{...e,form:{...e.form,weixin:{...e.form.weixin,accounts:t.accounts}},wxAccountsError:``}:e;case`applyFeishuAccounts`:return e.form?{...e,form:{...e.form,feishu:{...e.form.feishu,accounts:t.accounts}},feishuAccountsError:``}:e;case`restoreForm`:return{...e,form:structuredClone(t.payload)}}}function cn(){let e=i(e=>e.language),t=a(e),n=t.channelsSettings,r=!!h(e=>e.token),o=(0,Z.useRef)(!1),[c,l]=(0,Z.useReducer)(sn,an),[u,d]=(0,Z.useState)({hasToken:r,parsed:null}),[f,p]=(0,Z.useState)(!1),[m,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(null),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(!1),[O,k]=(0,Z.useState)(!1),[j,M]=(0,Z.useState)(!1),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)(!1),[L,z]=(0,Z.useState)(!1),{data:ee}=s(r?`gateway-chat-agents-ch`:null,R,{revalidateOnFocus:!1}),{data:B,error:V,isLoading:H,mutate:U}=A(r),te=(0,Z.useMemo)(()=>B?.payload?.config===void 0?null:ge(B.payload.config),[B]);(r!==u.hasToken||te!==u.parsed)&&(d({hasToken:r,parsed:te}),r?te!==null&&!o.current&&(l({type:`load`,payload:te}),v(!1)):(o.current=!1,l({type:`reset`}),v(!1)));let{form:W,baseline:G,tgAccountsDraft:K,tgAccountsError:re,wxAccountsDraft:q,wxAccountsError:ie,feishuAccountsDraft:J,feishuAccountsError:Y}=c,ae=(0,Z.useMemo)(()=>!W||!G?!1:JSON.stringify(W)!==JSON.stringify(G),[W,G]),oe=!!(r&&H&&B===void 0&&!V),se=V instanceof Error?V.message:V?String(V):null,ce=(0,Z.useCallback)((e,t,n)=>{o.current=!0,l({type:`updateChannelAgentRoute`,channel:e,accountId:t,agentId:n})},[]),le=(0,Z.useCallback)(e=>{o.current=!0,l({type:`updateTelegram`,patch:e})},[]),ue=(0,Z.useCallback)(e=>{o.current=!0,l({type:`updateWeixin`,patch:e})},[]),de=(0,Z.useCallback)(e=>{o.current=!0,l({type:`updateFeishu`,patch:e})},[]),fe=(0,Z.useCallback)(async()=>{if(!W||f)return!1;p(!0),g(null),v(!1);try{let e=await pe(W);return o.current=!1,l({type:`commitSaved`,payload:e}),v(!0),window.setTimeout(()=>v(!1),2500),!0}catch(e){return g(e instanceof Error?e.message:n.saveError),!1}finally{p(!1)}},[W,f,n.saveError]),me=(0,Z.useCallback)(()=>{G&&(o.current=!1,l({type:`discard`}),g(null),v(!1))},[G]),he=(0,Z.useCallback)(async(e,t)=>{if(!W||f)return;let r=W,i=e===`weixin`?{...W,weixin:{...W.weixin,enabled:t}}:e===`telegram`?{...W,telegram:{...W.telegram,enabled:t}}:{...W,feishu:{...W.feishu,enabled:t}};o.current=!0,l(e===`weixin`?{type:`updateWeixin`,patch:{enabled:t}}:e===`telegram`?{type:`updateTelegram`,patch:{enabled:t}}:{type:`updateFeishu`,patch:{enabled:t}}),p(!0),g(null);try{let e=await pe(i);o.current=!1,l({type:`commitSaved`,payload:e})}catch(e){g(e instanceof Error?e.message:n.saveError),o.current=!0,l({type:`restoreForm`,payload:r})}finally{p(!1)}},[W,f,n.saveError]),_e=(0,Z.useCallback)(async()=>{let e=W?ne(W.telegram):``;e&&await x(e)&&(P(!0),window.setTimeout(()=>P(!1),2e3))},[W]),ve=(0,Z.useCallback)(e=>{de({appId:e.appId,domain:e.domain,enabled:!0}),U(),C(n.feishuQrSetupSuccess),window.setTimeout(()=>C(null),4e3)},[de,U,n.feishuQrSetupSuccess]),ye=(0,Z.useCallback)(async()=>{let e=W?.feishu?.appSecret;e&&await x(e)&&(I(!0),window.setTimeout(()=>I(!1),2e3))},[W]),be=(0,Z.useCallback)(async()=>{let e=W?.feishu;if(!e)return;let t={connectionMode:e.connectionMode,verificationToken:e.verificationToken||``,encryptKey:e.encryptKey||``,webhookHost:e.webhookHost||``,webhookPort:e.webhookPort||0,webhookPath:e.webhookPath||``};await x(JSON.stringify(t,null,2))&&(z(!0),window.setTimeout(()=>z(!1),2e3))},[W]);return{language:e,m:t,ch:n,hasToken:r,loading:oe,fetchError:se,mutate:U,form:W,baseline:G,dirty:ae,saving:f,error:m,saveOk:_,weixinSuccessBanner:y,setWeixinSuccessBanner:b,feishuSetupSuccessBanner:S,tgAdvanced:w,setTgAdvanced:T,showToken:E,setShowToken:D,showFeishuSecret:O,setShowFeishuSecret:k,showFeishuWebhookSecrets:j,setShowFeishuWebhookSecrets:M,copied:N,feishuCopied:F,feishuWebhookCopied:L,tgAccountsDraft:K,setTgAccountsDraft:(0,Z.useCallback)(e=>{l({type:`setTgAccountsDraft`,value:e})},[]),tgAccountsError:re,wxAccountsDraft:q,setWxAccountsDraft:(0,Z.useCallback)(e=>{l({type:`setWxAccountsDraft`,value:e})},[]),wxAccountsError:ie,feishuAccountsDraft:J,setFeishuAccountsDraft:(0,Z.useCallback)(e=>{l({type:`setFeishuAccountsDraft`,value:e})},[]),feishuAccountsError:Y,chatAgents:ee,updateChannelAgentRoute:ce,updateTelegram:le,updateWeixin:ue,updateFeishu:de,save:fe,discard:me,toggleChannelEnabled:he,copyToken:_e,handleFeishuQrSetupSuccess:ve,copyFeishuSecret:ye,copyFeishuWebhookConfig:be,onTgAccountsBlur:(0,Z.useCallback)(()=>{if(!W)return;let e=K.trim();if(!e){o.current=!0,l({type:`applyTgAccounts`,accounts:{}});return}try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))throw Error(n.jsonObjectAccounts);o.current=!0,l({type:`applyTgAccounts`,accounts:t})}catch(e){l({type:`setTgAccountsError`,value:e instanceof Error?e.message:n.jsonInvalid})}},[W,K,n.jsonObjectAccounts,n.jsonInvalid]),onWxAccountsBlur:(0,Z.useCallback)(()=>{if(!W)return;let e=q.trim();if(!e){o.current=!0,l({type:`applyWxAccounts`,accounts:{}});return}try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))throw Error(n.jsonObjectAccounts);o.current=!0,l({type:`applyWxAccounts`,accounts:t})}catch(e){l({type:`setWxAccountsError`,value:e instanceof Error?e.message:n.jsonInvalid})}},[W,q,n.jsonObjectAccounts,n.jsonInvalid]),onFeishuAccountsBlur:(0,Z.useCallback)(()=>{if(!W)return;let e=J.trim();if(!e){o.current=!0,l({type:`applyFeishuAccounts`,accounts:{}});return}try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))throw Error(n.jsonObjectAccounts);o.current=!0,l({type:`applyFeishuAccounts`,accounts:t})}catch(e){l({type:`setFeishuAccountsError`,value:e instanceof Error?e.message:n.jsonInvalid})}},[W,J,n.jsonObjectAccounts,n.jsonInvalid]),dmOpts:(0,Z.useMemo)(()=>[`pairing`,`allowlist`,`open`,`disabled`].map(e=>({value:e,label:n.policy.dm[e]})),[n.policy.dm]),groupOpts:(0,Z.useMemo)(()=>[`open`,`disabled`,`allowlist`].map(e=>({value:e,label:n.policy.group[e]})),[n.policy.group]),replyOpts:(0,Z.useMemo)(()=>[`off`,`first`,`all`].map(e=>({value:e,label:n.policy.reply[e]})),[n.policy.reply]),streamOpts:(0,Z.useMemo)(()=>[`off`,`partial`,`block`].map(e=>({value:e,label:n.policy.stream[e]})),[n.policy.stream])}}var ln={width:208,margin:2,errorCorrectionLevel:`M`,color:{dark:`#000000ff`,light:`#ffffffff`}},un={sessionKey:null,qrcodeUrl:null};function dn({ch:e,onLoginSuccess:t,onOpenChange:n,closeOnLoginSuccess:r,moreSettings:i}){let[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(null),d=(0,Z.useRef)(t),f=(0,Z.useRef)(n);d.current=t,f.current=n;let p=C(()=>de().then(e=>({sessionKey:e.sessionKey,qrcodeUrl:e.qrcodeUrl})),[a],{initial:un,errorData:un}),m=p.data.sessionKey,h=p.data.qrcodeUrl,g=p.loading,_=p.error instanceof Error?p.error.message:p.error?String(p.error):null,v=l??_,y=(0,Z.useCallback)(()=>{u(null),c(null),o(e=>e+1)},[]);(0,Z.useEffect)(()=>{if(!m)return;let t=!1,n,i=async()=>{try{let i=await ye(m);if(t)return;if(i.phase===`polling`){p.setData(e=>({...e,qrcodeUrl:i.qrcodeUrl})),c(i.qrStatus===`scaned`?e.weixinQrLoginScanned:null);return}if(i.phase===`done`){n!==void 0&&(window.clearInterval(n),n=void 0),p.setData(un),i.ok?(r&&f.current(!1),await d.current()):u(i.message);return}i.phase===`unknown`&&c(null)}catch(e){t||(n!==void 0&&window.clearInterval(n),u(e instanceof Error?e.message:`Request failed`),p.setData(un))}};return n=window.setInterval(()=>void i(),2e3),i(),()=>{t=!0,n!==void 0&&window.clearInterval(n)}},[m,e.weixinQrLoginScanned,r,p.setData]);let b=C(()=>pt.toDataURL(h,ln),[h],{enabled:!!h,initial:null,errorData:null}),x=b.data,S=b.error!==null&&!b.loading,w=!!(h&&m),T=!v&&!w;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`text-center`,children:[(0,$.jsx)(`p`,{className:`text-base font-semibold tracking-tight text-fg`,children:e.weixinQrModalTitle}),(0,$.jsx)(`p`,{className:`mt-1.5 text-sm text-fg-muted`,children:e.weixinQrModalSubtitle})]}),(0,$.jsxs)(`div`,{className:`mt-6 flex min-h-[17.5rem] flex-col items-center justify-center gap-3`,children:[v?(0,$.jsx)(`p`,{className:`text-center text-sm text-red-600 dark:text-red-400`,children:v}):null,!v&&(w||T)?(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-3`,children:[(0,$.jsx)(`p`,{className:z(`min-h-[1.25rem] text-center text-sm`,s&&!T?`text-accent`:`text-fg-muted`),children:T?e.weixinQrLoginBusy:s??`\xA0`}),(0,$.jsxs)(`div`,{className:z(`relative flex size-52 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-edge-subtle bg-white p-3 dark:border-edge`,T&&`bg-surface-muted/40 dark:bg-surface-base`),children:[T?(0,$.jsx)(`div`,{className:`absolute inset-3 animate-pulse rounded-md bg-surface-muted dark:bg-surface-hover`,"aria-hidden":!0}):null,w&&h&&!v&&x&&!S?(0,$.jsx)(`img`,{src:x,alt:``,className:`relative z-[1] size-full object-contain`}):null,w&&h&&!v&&!x&&!S&&!T?(0,$.jsx)(`p`,{className:`relative z-[1] px-2 text-center text-sm text-fg-muted`,children:e.weixinQrEncoding}):null,w&&h&&!v&&S?(0,$.jsxs)(`div`,{className:`relative z-[1] flex size-full flex-col items-center justify-center gap-2 px-1`,children:[(0,$.jsx)(`p`,{className:`text-center text-xs text-fg-muted`,children:e.weixinQrImageError}),(0,$.jsxs)(`a`,{href:h,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-xs text-accent underline-offset-2 hover:underline`,children:[(0,$.jsx)(D,{className:`size-3 shrink-0`}),e.weixinQrOpenLink]})]}):null]})]}):null]}),(0,$.jsx)(`div`,{className:`mt-6`,children:(0,$.jsx)(V,{type:`button`,variant:`secondary`,className:`h-11 w-full rounded-full border-0 bg-fg text-surface-panel hover:opacity-90 dark:bg-fg dark:text-surface-panel`,disabled:g,onClick:y,children:g?e.weixinQrLoginBusy:e.weixinQrRegenerate})}),i?(0,$.jsx)(`div`,{className:`mt-6 border-t border-edge-subtle pt-4 dark:border-edge-subtle`,children:i}):null]})}function fn(e){let t=(0,Q.c)(26),{open:n,onOpenChange:r,ch:i,onLoginSuccess:a,moreSettings:o,settingsDirty:s,settingsSaving:c,onSettingsDiscard:l,onSettingsSave:u,presentation:d,closeOnLoginSuccess:f}=e,p=s===void 0?!1:s,m=c===void 0?!1:c,h=d===void 0?`modal`:d,g=f===void 0?!0:f,_;t[0]!==i||t[1]!==o||t[2]!==r||t[3]!==l||t[4]!==u||t[5]!==p||t[6]!==m?(_=o&&l&&u?(0,$.jsx)(mt,{ch:i,dirty:p,saving:m,showCancel:!1,onCancel:()=>r(!1),onDiscard:l,onSave:u}):void 0,t[0]=i,t[1]=o,t[2]=r,t[3]=l,t[4]=u,t[5]=p,t[6]=m,t[7]=_):_=t[7];let v;t[8]!==i||t[9]!==g||t[10]!==o||t[11]!==a||t[12]!==r||t[13]!==n?(v=n?(0,$.jsx)(dn,{ch:i,onLoginSuccess:a,onOpenChange:r,closeOnLoginSuccess:g,moreSettings:o},`active`):null,t[8]=i,t[9]=g,t[10]=o,t[11]=a,t[12]=r,t[13]=n,t[14]=v):v=t[14];let y;return t[15]!==i.weixinQrModalCloseAria||t[16]!==i.weixinQrModalSubtitle||t[17]!==i.weixinQrModalTitle||t[18]!==i.weixinSubtitle||t[19]!==i.weixinTitle||t[20]!==r||t[21]!==n||t[22]!==h||t[23]!==_||t[24]!==v?(y=(0,$.jsx)(Le,{presentation:h,open:n,onOpenChange:r,title:i.weixinTitle,description:i.weixinSubtitle,srTitle:i.weixinQrModalTitle,srDescription:i.weixinQrModalSubtitle,closeAriaLabel:i.weixinQrModalCloseAria,wide:!0,footer:_,children:v}),t[15]=i.weixinQrModalCloseAria,t[16]=i.weixinQrModalSubtitle,t[17]=i.weixinQrModalTitle,t[18]=i.weixinSubtitle,t[19]=i.weixinTitle,t[20]=r,t[21]=n,t[22]=h,t[23]=_,t[24]=v,t[25]=y):y=t[25],y}function pn(e){let t=(0,Q.c)(108),{wx:n,updateWeixin:r,ch:i,streamOpts:a,wxAccountsDraft:o,setWxAccountsDraft:s,wxAccountsError:c,onWxAccountsBlur:l,channelAgentRoutesWx:u,defaultAgentId:d,agentItems:f,onAgentRouteChange:p,routingDisabled:m}=e,h;t[0]===i.weixinAllowFrom?h=t[1]:(h=(0,$.jsx)(Y,{children:i.weixinAllowFrom}),t[0]=i.weixinAllowFrom,t[1]=h);let g;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(g=z(J(),`min-h-[2.75rem] resize-y font-mono text-xs`),t[2]=g):g=t[2];let _;t[3]===n.allowFrom?_=t[4]:(_=n.allowFrom.join(`, `),t[3]=n.allowFrom,t[4]=_);let v;t[5]===r?v=t[6]:(v=e=>r({allowFrom:e.target.value.split(/[,\n]/).flatMap(mn)}),t[5]=r,t[6]=v);let y;t[7]!==_||t[8]!==v?(y=(0,$.jsx)(`textarea`,{className:g,rows:2,placeholder:`wxid_..., openid_...`,value:_,onChange:v}),t[7]=_,t[8]=v,t[9]=y):y=t[9];let b;t[10]===i.weixinAllowFromDesc?b=t[11]:(b=(0,$.jsx)(oe,{children:i.weixinAllowFromDesc}),t[10]=i.weixinAllowFromDesc,t[11]=b);let x;t[12]!==h||t[13]!==y||t[14]!==b?(x=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[h,y,b]}),t[12]=h,t[13]=y,t[14]=b,t[15]=x):x=t[15];let S;t[16]===r?S=t[17]:(S=e=>r({streamMode:e}),t[16]=r,t[17]=S);let C;t[18]!==i.streamMode||t[19]!==a||t[20]!==S||t[21]!==n.streamMode?(C=(0,$.jsx)(ae,{label:i.streamMode,value:n.streamMode,onChange:S,options:a}),t[18]=i.streamMode,t[19]=a,t[20]=S,t[21]=n.streamMode,t[22]=C):C=t[22];let w;t[23]===i.historyLimit?w=t[24]:(w=(0,$.jsx)(Y,{children:i.historyLimit}),t[23]=i.historyLimit,t[24]=w);let T;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(T=J(),t[25]=T):T=t[25];let E;t[26]===r?E=t[27]:(E=e=>r({historyLimit:parseInt(e.target.value,10)||50}),t[26]=r,t[27]=E);let D;t[28]!==E||t[29]!==n.historyLimit?(D=(0,$.jsx)(`input`,{type:`number`,min:10,max:200,className:T,value:n.historyLimit,onChange:E}),t[28]=E,t[29]=n.historyLimit,t[30]=D):D=t[30];let O;t[31]!==w||t[32]!==D?(O=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[w,D]}),t[31]=w,t[32]=D,t[33]=O):O=t[33];let k;t[34]===i.textChunkLimit?k=t[35]:(k=(0,$.jsx)(Y,{children:i.textChunkLimit}),t[34]=i.textChunkLimit,t[35]=k);let A;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(A=J(),t[36]=A):A=t[36];let j;t[37]===r?j=t[38]:(j=e=>r({textChunkLimit:parseInt(e.target.value,10)||4e3}),t[37]=r,t[38]=j);let M;t[39]!==j||t[40]!==n.textChunkLimit?(M=(0,$.jsx)(`input`,{type:`number`,min:1e3,max:1e4,step:100,className:A,value:n.textChunkLimit,onChange:j}),t[39]=j,t[40]=n.textChunkLimit,t[41]=M):M=t[41];let N;t[42]!==k||t[43]!==M?(N=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[k,M]}),t[42]=k,t[43]=M,t[44]=N):N=t[44];let P;t[45]!==O||t[46]!==N?(P=(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[O,N]}),t[45]=O,t[46]=N,t[47]=P):P=t[47];let F;t[48]===i.weixinRouteTag?F=t[49]:(F=(0,$.jsx)(Y,{children:i.weixinRouteTag}),t[48]=i.weixinRouteTag,t[49]=F);let I;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(I=J(),t[50]=I):I=t[50];let L;t[51]===r?L=t[52]:(L=e=>r({routeTag:e.target.value}),t[51]=r,t[52]=L);let R;t[53]!==i.routeTagPlaceholder||t[54]!==L||t[55]!==n.routeTag?(R=(0,$.jsx)(`input`,{className:I,value:n.routeTag,onChange:L,placeholder:i.routeTagPlaceholder}),t[53]=i.routeTagPlaceholder,t[54]=L,t[55]=n.routeTag,t[56]=R):R=t[56];let ee;t[57]===i.weixinRouteTagDesc?ee=t[58]:(ee=(0,$.jsx)(oe,{children:i.weixinRouteTagDesc}),t[57]=i.weixinRouteTagDesc,t[58]=ee);let B;t[59]!==F||t[60]!==R||t[61]!==ee?(B=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[F,R,ee]}),t[59]=F,t[60]=R,t[61]=ee,t[62]=B):B=t[62];let V;t[63]===r?V=t[64]:(V=e=>r({debug:e.target.checked}),t[63]=r,t[64]=V);let H;t[65]!==V||t[66]!==n.debug?(H=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:n.debug,onChange:V}),t[65]=V,t[66]=n.debug,t[67]=H):H=t[67];let U;t[68]!==i.weixinDebug||t[69]!==H?(U=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm text-fg`,children:[H,i.weixinDebug]}),t[68]=i.weixinDebug,t[69]=H,t[70]=U):U=t[70];let te;t[71]===i.weixinDebugDesc?te=t[72]:(te=(0,$.jsx)(oe,{children:i.weixinDebugDesc}),t[71]=i.weixinDebugDesc,t[72]=te);let W;t[73]===i.weixinAccountsJson?W=t[74]:(W=(0,$.jsx)(Y,{children:i.weixinAccountsJson}),t[73]=i.weixinAccountsJson,t[74]=W);let G;t[75]===Symbol.for(`react.memo_cache_sentinel`)?(G=z(J(),`min-h-[140px] resize-y font-mono text-xs`),t[75]=G):G=t[75];let ne;t[76]===s?ne=t[77]:(ne=e=>s(e.target.value),t[76]=s,t[77]=ne);let K;t[78]!==l||t[79]!==ne||t[80]!==o?(K=(0,$.jsx)(`textarea`,{className:G,spellCheck:!1,value:o,onChange:ne,onBlur:l,placeholder:`{ "personal": { "name": "...", "cdnBaseUrl": "...", "enabled": true } }`}),t[78]=l,t[79]=ne,t[80]=o,t[81]=K):K=t[81];let re;t[82]!==i.weixinAccountsJsonDesc||t[83]!==c?(re=c?(0,$.jsx)(`p`,{className:`text-xs text-red-600 dark:text-red-400`,children:c}):(0,$.jsx)(oe,{children:i.weixinAccountsJsonDesc}),t[82]=i.weixinAccountsJsonDesc,t[83]=c,t[84]=re):re=t[84];let q;t[85]!==W||t[86]!==K||t[87]!==re?(q=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[W,K,re]}),t[85]=W,t[86]=K,t[87]=re,t[88]=q):q=t[88];let ie;t[89]===n?ie=t[90]:(ie=we(n),t[89]=n,t[90]=ie);let se;t[91]!==f||t[92]!==i||t[93]!==u||t[94]!==d||t[95]!==p||t[96]!==m||t[97]!==ie?(se=(0,$.jsx)(Ve,{accountIds:ie,routes:u,defaultAgentId:d,agentItems:f,disabled:m,onChange:p,ch:i}),t[91]=f,t[92]=i,t[93]=u,t[94]=d,t[95]=p,t[96]=m,t[97]=ie,t[98]=se):se=t[98];let ce;return t[99]!==P||t[100]!==B||t[101]!==U||t[102]!==te||t[103]!==q||t[104]!==se||t[105]!==x||t[106]!==C?(ce=(0,$.jsxs)(`div`,{className:`space-y-4 border-t border-edge-subtle pt-4 dark:border-edge`,children:[x,C,P,B,U,te,q,se]}),t[99]=P,t[100]=B,t[101]=U,t[102]=te,t[103]=q,t[104]=se,t[105]=x,t[106]=C,t[107]=ce):ce=t[107],ce}function mn(e){let t=e.trim();return t?[t]:[]}function hn(e){let t=(0,Q.c)(60),{ch:n,wx:r,updateWeixin:i,dmOpts:a,streamOpts:o,wxAccountsDraft:s,setWxAccountsDraft:c,wxAccountsError:l,onWxAccountsBlur:u,form:d,chatAgents:f,onAgentRouteChange:p,saving:m,language:h,dialogOpen:g,pairingFocus:_}=e,v=_===void 0?!1:_,y;t[0]===r?y=t[1]:(y=we(r),t[0]=r,t[1]=y);let b=y,x;t[2]===b?x=t[3]:(x=b.length>0?b:[`default`],t[2]=b,t[3]=x);let S=x,C=(0,Z.useRef)(null),w,T;t[4]===v?(w=t[5],T=t[6]):(w=()=>{if(!v)return;let e=C.current;e&&(e.open=!0);let t=window.setTimeout(gn,80);return()=>window.clearTimeout(t)},T=[v],t[4]=v,t[5]=w,t[6]=T),(0,Z.useEffect)(w,T);let E;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(ee,{className:`size-4 shrink-0 text-fg-muted transition-transform group-open:rotate-180`}),t[7]=E):E=t[7];let D;t[8]===n.advancedShow?D=t[9]:(D=(0,$.jsx)(`summary`,{className:`cursor-pointer list-none rounded-xl px-3 py-2.5 text-sm font-medium text-fg transition-colors hover:bg-surface-hover group-open:rounded-b-none [&::-webkit-details-marker]:hidden`,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[E,n.advancedShow]})}),t[8]=n.advancedShow,t[9]=D);let O;t[10]===n.weixinAdvancedHint?O=t[11]:(O=(0,$.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:n.weixinAdvancedHint}),t[10]=n.weixinAdvancedHint,t[11]=O);let k;t[12]===i?k=t[13]:(k=e=>i({enabled:e.target.checked}),t[12]=i,t[13]=k);let A;t[14]!==k||t[15]!==r.enabled?(A=(0,$.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox mt-0.5`,checked:r.enabled,onChange:k}),t[14]=k,t[15]=r.enabled,t[16]=A):A=t[16];let j;t[17]===n.enableWeixinAria?j=t[18]:(j=(0,$.jsx)(`span`,{children:n.enableWeixinAria}),t[17]=n.enableWeixinAria,t[18]=j);let M;t[19]!==A||t[20]!==j?(M=(0,$.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 text-sm text-fg`,children:[A,j]}),t[19]=A,t[20]=j,t[21]=M):M=t[21];let N;t[22]===i?N=t[23]:(N=e=>i({dmPolicy:e}),t[22]=i,t[23]=N);let P;t[24]!==n.dmPolicy||t[25]!==a||t[26]!==N||t[27]!==r.dmPolicy?(P=(0,$.jsx)(ae,{label:n.dmPolicy,value:r.dmPolicy,onChange:N,options:a}),t[24]=n.dmPolicy,t[25]=a,t[26]=N,t[27]=r.dmPolicy,t[28]=P):P=t[28];let F;t[29]!==n||t[30]!==g||t[31]!==h||t[32]!==S||t[33]!==r?(F=(0,$.jsx)(st,{channel:`weixin`,accountIds:S,channelConfig:r,active:g,ch:n,language:h}),t[29]=n,t[30]=g,t[31]=h,t[32]=S,t[33]=r,t[34]=F):F=t[34];let I;t[35]===f?.items?I=t[36]:(I=f?.items??[],t[35]=f?.items,t[36]=I);let L;t[37]!==n||t[38]!==d.channelAgentRoutes.weixin||t[39]!==d.defaultAgentId||t[40]!==p||t[41]!==u||t[42]!==m||t[43]!==c||t[44]!==o||t[45]!==I||t[46]!==i||t[47]!==r||t[48]!==s||t[49]!==l?(L=(0,$.jsx)(`div`,{className:`[&>div]:border-0 [&>div]:pt-0`,children:(0,$.jsx)(pn,{wx:r,updateWeixin:i,ch:n,streamOpts:o,wxAccountsDraft:s,setWxAccountsDraft:c,wxAccountsError:l,onWxAccountsBlur:u,channelAgentRoutesWx:d.channelAgentRoutes.weixin,defaultAgentId:d.defaultAgentId,agentItems:I,onAgentRouteChange:p,routingDisabled:m})}),t[37]=n,t[38]=d.channelAgentRoutes.weixin,t[39]=d.defaultAgentId,t[40]=p,t[41]=u,t[42]=m,t[43]=c,t[44]=o,t[45]=I,t[46]=i,t[47]=r,t[48]=s,t[49]=l,t[50]=L):L=t[50];let R;t[51]!==M||t[52]!==P||t[53]!==F||t[54]!==L||t[55]!==O?(R=(0,$.jsxs)(`div`,{className:`space-y-4 border-t border-edge-subtle px-3 pb-3 pt-3 dark:border-edge-subtle`,children:[O,M,P,F,L]}),t[51]=M,t[52]=P,t[53]=F,t[54]=L,t[55]=O,t[56]=R):R=t[56];let z;return t[57]!==R||t[58]!==D?(z=(0,$.jsxs)(`details`,{ref:C,className:`group rounded-xl border border-edge-subtle bg-surface-base open:pb-3 dark:border-edge`,children:[D,R]}),t[57]=R,t[58]=D,t[59]=z):z=t[59],z}function gn(){return nt(`weixin`)}function _n(){let e=I(),{channelId:t}=H(),[n]=M(),{language:r,m:i,ch:a,hasToken:o,loading:s,fetchError:c,mutate:l,form:u,baseline:d,dirty:f,saving:p,error:m,saveOk:h,weixinSuccessBanner:g,setWeixinSuccessBanner:_,feishuSetupSuccessBanner:v,tgAdvanced:y,setTgAdvanced:b,showToken:x,setShowToken:S,showFeishuSecret:C,setShowFeishuSecret:w,showFeishuWebhookSecrets:T,setShowFeishuWebhookSecrets:E,copied:k,feishuCopied:A,feishuWebhookCopied:N,tgAccountsDraft:P,setTgAccountsDraft:F,tgAccountsError:R,wxAccountsDraft:z,setWxAccountsDraft:ee,wxAccountsError:te,feishuAccountsDraft:W,setFeishuAccountsDraft:G,feishuAccountsError:ne,chatAgents:K,updateChannelAgentRoute:re,updateTelegram:q,updateWeixin:ie,updateFeishu:J,save:Y,discard:ae,toggleChannelEnabled:oe,copyToken:se,handleFeishuQrSetupSuccess:ce,copyFeishuSecret:le,copyFeishuWebhookConfig:ue,onTgAccountsBlur:de,onWxAccountsBlur:fe,onFeishuAccountsBlur:pe,dmOpts:me,groupOpts:he,replyOpts:ge,streamOpts:_e}=cn(),[ve,ye]=(0,Z.useState)(!1),{entries:be}=Nt(o,a),xe=(0,Z.useMemo)(()=>new Map(be.map(e=>[e.id,e])),[be]),X=U(t),Se=n.get(`pairing`)===`1`,Ce=!!(X&&xe.has(X)),{cards:we,refreshAll:Q}=nn({hasToken:o,form:u,ch:a}),Te=X?xe.get(X):void 0,Ee=X?we.find(e=>e.id===X):void 0;(0,Z.useEffect)(()=>{!X||be.length===0||xe.has(X)||e(B,{replace:!0})},[X,xe,be.length,e]);let De=(0,Z.useCallback)((t,n)=>{e(j(t,{pairing:n?.scrollToPairing}))},[e]),Oe=(0,Z.useCallback)(()=>{e(B)},[e]),ke=(0,Z.useCallback)(e=>{e||Oe()},[Oe]),je=(0,Z.useCallback)(async()=>{await l(),_(a.weixinQrLoginSuccess),window.setTimeout(()=>_(null),4e3)},[a.weixinQrLoginSuccess,l,_]),Me=(0,Z.useCallback)(async()=>{ye(!0);try{Q(),await l()}finally{ye(!1)}},[l,Q]);if(!o)return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(vn,{hasToken:o,ch:a,refreshing:ve,saveOk:h,onRefresh:Me}),(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-8`,children:[(0,$.jsx)(`h1`,{className:`text-lg font-semibold text-fg`,children:i.settingsSections.channels}),(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:a.needToken})]})]});if(s)return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(vn,{hasToken:o,ch:a,refreshing:ve,saveOk:h,onRefresh:Me}),(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-6`,children:[(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`div`,{className:`h-7 w-40 animate-pulse rounded-md bg-surface-hover motion-reduce:animate-none dark:bg-surface-active/50`}),(0,$.jsx)(`div`,{className:`h-4 w-full max-w-md animate-pulse rounded-md bg-surface-hover motion-reduce:animate-none dark:bg-surface-active/50`})]}),(0,$.jsx)(Pe,{}),(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:a.loading})]})]});if(!u)return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(vn,{hasToken:o,ch:a,refreshing:ve,saveOk:h,onRefresh:Me}),(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-8`,children:[(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:m??c??a.loadError}),(0,$.jsx)(V,{type:`button`,variant:`secondary`,onClick:()=>void l(),children:a.retry})]})]});let Ne=u.weixin,Fe=Se&&X===`weixin`,Ie=Se&&X===`feishu`,Le=(0,$.jsx)(hn,{ch:a,wx:Ne,updateWeixin:ie,dmOpts:me,streamOpts:_e,wxAccountsDraft:z,setWxAccountsDraft:ee,wxAccountsError:te,onWxAccountsBlur:fe,form:u,chatAgents:K,onAgentRouteChange:(e,t)=>re(`weixin`,e,t),saving:p,language:r,dialogOpen:Ce&&X===`weixin`,pairingFocus:Fe}),Re=(0,$.jsx)(ct,{ch:a,form:u,baseline:d,showFeishuSecret:C,setShowFeishuSecret:w,showFeishuWebhookSecrets:T,setShowFeishuWebhookSecrets:E,feishuCopied:A,feishuWebhookCopied:N,copyFeishuSecret:le,copyFeishuWebhookConfig:ue,updateFeishu:J,updateChannelAgentRoute:re,feishuAccountsDraft:W,setFeishuAccountsDraft:G,feishuAccountsError:ne,onFeishuAccountsBlur:pe,dmOpts:me,groupOpts:he,chatAgents:K,saving:p,language:r,dialogOpen:Ce&&X===`feishu`,pairingFocus:Ie});return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(vn,{hasToken:o,ch:a,refreshing:ve,saveOk:h,onRefresh:Me}),(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-6`,children:[(0,$.jsxs)(`header`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`h1`,{className:`text-lg font-semibold tracking-tight text-fg`,children:i.settingsSections.channels}),(0,$.jsx)(`p`,{className:`text-sm text-fg-muted`,children:a.subtitle}),(0,$.jsxs)(`a`,{href:O(r,`channels`),target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-sm text-accent hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,children:[a.docsLink,(0,$.jsx)(D,{className:`size-3.5`})]})]}),m?(0,$.jsx)(`p`,{className:`text-sm text-red-600 dark:text-red-400`,children:m}):null,g?(0,$.jsx)(`p`,{className:`text-xs text-accent`,children:g}):null,v?(0,$.jsx)(`div`,{className:`rounded-xl border border-success/30 bg-success-soft px-4 py-3 text-sm text-success`,children:v}):null,ve?(0,$.jsx)(Pe,{count:Math.max(be.length,3)}):(0,$.jsx)(Ae,{catalog:be,cards:we,ch:a,saving:p,onOpenChannel:De,onToggleChannel:(e,t)=>{L(e)&&oe(e,t)}}),X===`weixin`?(0,$.jsx)(fn,{open:Ce,onOpenChange:ke,ch:a,onLoginSuccess:je,moreSettings:Le,settingsDirty:f,settingsSaving:p,onSettingsDiscard:ae,onSettingsSave:Y}):null,X===`telegram`?(0,$.jsx)(St,{open:Ce,onOpenChange:e=>{e||Oe()},ch:a,form:u,baseline:d,tgAdvanced:y,setTgAdvanced:b,showToken:x,setShowToken:S,copied:k,copyToken:se,updateTelegram:q,updateChannelAgentRoute:re,tgAccountsDraft:P,setTgAccountsDraft:F,tgAccountsError:R,onTgAccountsBlur:de,dmOpts:me,groupOpts:he,replyOpts:ge,streamOpts:_e,chatAgents:K,saving:p,dirty:f,save:Y,discard:ae,language:r,scrollToPairingOnOpen:Se,closeOnSave:!1}):null,X===`feishu`?(0,$.jsx)(vt,{open:Ce,onOpenChange:e=>{e||Oe()},ch:a,onSetupSuccess:ce,moreSettings:Re,settingsDirty:f,settingsSaving:p,onSettingsDiscard:ae,onSettingsSave:Y}):null,Te&&Ee&&!Te.manageable?(0,$.jsx)(ze,{open:Ce,onOpenChange:e=>{e||Oe()},entry:Te,vm:Ee,ch:a,language:r}):null]})]})}function vn(e){let t=(0,Q.c)(11),{hasToken:n,ch:r,refreshing:i,saveOk:a,onRefresh:o}=e,s=v(bn),c=v(yn),l;t[0]!==r||t[1]!==o||t[2]!==i||t[3]!==a?(l=(0,$.jsx)(Be,{ch:r,refreshing:i,saveOk:a,onRefresh:o}),t[0]=r,t[1]=o,t[2]=i,t[3]=a,t[4]=l):l=t[4];let u=l,d,f;return t[5]!==u||t[6]!==c||t[7]!==n||t[8]!==s?(d=()=>n?(s({startExtra:null,main:null,end:u}),()=>c()):(c(),()=>c()),f=[u,c,n,s],t[5]=u,t[6]=c,t[7]=n,t[8]=s,t[9]=d,t[10]=f):(d=t[9],f=t[10]),(0,Z.useLayoutEffect)(d,f),null}function yn(e){return e.clearPageHeader}function bn(e){return e.setPageHeader}export{_n as ChannelsSettingsPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{i,o as a,t as o}from"./url-BwNL6Rgk.js";import{i as s}from"./vendor-swr-BIWyz7Rc.js";import{a as c,n as l,t as u}from"./fetch-B2MYHbWg.js";import{$n as d,Zn as f,er as p,ii as m,n as h,nr as g,oa as _,tr as v,ua as y,wn as b}from"./index-BmVYculr.js";import{a as x,c as S,d as C,i as w,l as T,s as E,t as D,u as O}from"./voice-api-key-field-CGEydndO.js";import{n as k}from"./field-primitives-DPG-oJmx.js";var A=n(),j=e(t(),1),M=r(),N=()=>o(C);function P(e){return{credentialsIntro:e.credentialsIntro,regionHint:e.regionHint,endpointPresetsHint:e.endpointPresetsHint,apiKeyLabel:e.apiKeyLabel,optionalPlaceholder:e.optionalPlaceholder,regionLabel:e.regionLabel,baseUrlLabel:e.baseUrlLabel,imageBaseUrlLabel:e.imageBaseUrlLabel,saveCredentials:e.saveCredentials,savingCredentials:e.savingCredentials,credentialsSaved:e.credentialsSaved,discardCredentials:e.discardCredentials,credentialsNothingToSave:e.credentialsNothingToSave,credentialsSaveError:e.credentialsSaveError,regionPresetDefault:e.regionPresetDefault,regionPresetCustom:e.regionPresetCustom,baseUrlPresetDefault:e.baseUrlPresetDefault,baseUrlPresetCustom:e.baseUrlPresetCustom,openExtensionSettings:e.openExtensionSettings,openImageModelsPage:e.openImageModelsPage,extensionSettingsLinkTitle:e.extensionSettingsLinkTitle,imageModelsLinkTitle:e.imageModelsLinkTitle,configured:e.configured,missingKey:e.missingKey,unsavedChanges:e.unsavedChanges,expandProvider:e.expandProvider,collapseProvider:e.collapseProvider,defaultModel:e.defaultModel,modelsLabel:e.modelsLabel,modelCountOne:e.modelCountOne,modelCountMany:e.modelCountMany,imageBaseUrlPresetHint:e.imageBaseUrlPresetHint,dashscopeRegion_beijing:e.dashscopeRegion_beijing,dashscopeRegion_singapore:e.dashscopeRegion_singapore,dashscopeRegion_us:e.dashscopeRegion_us,apiKeyMaskedHelp:e.apiKeyMaskedHelp,apiKeyCopy:e.apiKeyCopy,apiKeyCopied:e.apiKeyCopied,apiKeyShow:e.apiKeyShow,apiKeyHide:e.apiKeyHide,apiKeyNotInConfigFile:e.apiKeyNotInConfigFile,apiKeyRevealFailed:e.apiKeyRevealFailed,minimaxClusterLabel:e.minimaxClusterLabel,minimaxClusterHint:e.minimaxClusterHint,falQueueBaseLabel:e.falQueueBaseLabel,falQueueBaseHint:e.falQueueBaseHint}}function F(e){let t=(0,A.c)(40),{extensionId:n}=e,r=i(L),o;t[0]===r?o=t[1]:(o=a(r),t[0]=r,t[1]=o);let l=o,u=l.imageModelsSettings,d=c(I),f;t[2]===d?f=t[3]:(f=d?N():null,t[2]=d,t[3]=f);let p;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(p={revalidateOnFocus:!1},t[4]=p):p=t[4];let{data:h,isLoading:g}=s(f,O,p),_;t[5]===h?_=t[6]:(_=h===void 0?[]:h,t[5]=h,t[6]=_);let v=_,y;if(t[7]!==v||t[8]!==n){let e;t[10]===n?e=t[11]:(e=e=>e.id===n,t[10]=n,t[11]=e),y=v.filter(e),t[7]=v,t[8]=n,t[9]=y}else y=t[9];let b=y,x=S(b),C;t[12]===u?C=t[13]:(C=P(u),t[12]=u,t[13]=C);let w=C,E;t[14]!==l.providersSettings.getApiKey||t[15]!==l.providersSettings.getApiKeyCn||t[16]!==l.providersSettings.getApiKeyIntl?(E={getApiKey:l.providersSettings.getApiKey,getApiKeyIntl:l.providersSettings.getApiKeyIntl,getApiKeyCn:l.providersSettings.getApiKeyCn},t[14]=l.providersSettings.getApiKey,t[15]=l.providersSettings.getApiKeyCn,t[16]=l.providersSettings.getApiKeyIntl,t[17]=E):E=t[17];let D=E;if(!d)return null;if(g){let e;return t[18]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,M.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-sm text-fg-muted`,children:[(0,M.jsx)(m,{className:`size-4 animate-spin`}),`…`]}),t[18]=e):e=t[18],e}if(b.length===0){let e=r===`zh`?`网关未注册该图像 Provider,或扩展已被禁用。`:`This image provider is not registered on the gateway, or the extension is disabled.`,n;return t[19]===e?n=t[20]:(n=(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e}),t[19]=e,t[20]=n),n}let k;t[21]!==x||t[22]!==u.credentialsSaveError?(k=()=>void x.saveCredentials(u.credentialsSaveError),t[21]=x,t[22]=u.credentialsSaveError,t[23]=k):k=t[23];let j;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(j=new Set,t[24]=j):j=t[24];let F;return t[25]!==D||t[26]!==x.credBaseline||t[27]!==x.credDirty||t[28]!==x.credDraft||t[29]!==x.credError||t[30]!==x.credNoopFlash||t[31]!==x.credSavedFlash||t[32]!==x.credSaving||t[33]!==x.onDiscardCredentials||t[34]!==x.updateCredRow||t[35]!==r||t[36]!==w||t[37]!==b||t[38]!==k?(F=(0,M.jsx)(T,{summaries:b,credDraft:x.credDraft,credBaseline:x.credBaseline,credDirty:x.credDirty,credSaving:x.credSaving,credError:x.credError,credSavedFlash:x.credSavedFlash,credNoopFlash:x.credNoopFlash,updateCredRow:x.updateCredRow,onDiscardCredentials:x.onDiscardCredentials,onSaveCredentials:k,extensionIds:j,showExtensionLinks:!1,showImageModelsLink:!1,language:r,apiKeyLinkLabels:D,messages:w}),t[25]=D,t[26]=x.credBaseline,t[27]=x.credDirty,t[28]=x.credDraft,t[29]=x.credError,t[30]=x.credNoopFlash,t[31]=x.credSavedFlash,t[32]=x.credSaving,t[33]=x.onDiscardCredentials,t[34]=x.updateCredRow,t[35]=r,t[36]=w,t[37]=b,t[38]=k,t[39]=F):F=t[39],F}function I(e){return!!e.token}function L(e){return e.language}var R=[{id:`whisper-large-v3-turbo`,name:`Whisper Large v3 Turbo`},{id:`whisper-large-v3`,name:`Whisper Large v3`}];function ee(e){let t=e?.manifest?.mediaUnderstandingProviders?.[0];if(typeof t==`string`&&t.trim())return t.trim();let n=e?.manifest?.contracts?.mediaUnderstandingProviders?.[0];if(typeof n==`string`&&n.trim())return n.trim()}function z(){return g(d,f)}function B(){return g(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,`placeholder:text-fg-subtle`,p,`dark:border-edge`)}function V(e,t){if(!e||!t)return{apiKey:``,model:R[0].id};if(t===`alibaba`)return{apiKey:e.stt.alibaba?.apiKey??``,model:e.stt.alibaba?.model??`paraformer-v2`};if(t===`openai`)return{apiKey:e.stt.openai?.apiKey??``,model:e.stt.openai?.model??`whisper-1`};let n=e.stt.providers?.[t];return{apiKey:typeof n?.apiKey==`string`?n.apiKey:``,model:typeof n?.model==`string`?n.model:R[0].id}}function H({providerId:e,voiceSettings:t,mutateVoice:n}){let r=a(i(e=>e.language)),c=r.voiceSettings,l=r.extensionSttMedia,u={maskedHelp:c.apiKeyMaskedHelp,copy:c.apiKeyCopy,copied:c.apiKeyCopied,show:c.apiKeyShow,hide:c.apiKeyHide,notInConfigFile:c.apiKeyNotInConfigFile,loadFailed:c.apiKeyRevealFailed},{data:d}=s(o(`/api/voice/stt-providers`),x,{revalidateOnFocus:!1}),p=(0,j.useMemo)(()=>d?.providers.some(t=>t.id===e&&t.configured)??!1,[e,d]),m=(0,j.useMemo)(()=>V(t,e),[e,t]),h=(0,j.useRef)(!1),[_,y]=(0,j.useState)(null),[b,S]=(0,j.useState)(!1),[C,w]=(0,j.useState)(null),[T,O]=(0,j.useState)(!1),A=_??m,N=m,P=A.apiKey!==N.apiKey||A.model!==N.model,F=(0,j.useCallback)(async()=>{S(!0),w(null);try{let r=structuredClone(t);r.stt.enabled=!0,e===`alibaba`?(r.stt.provider=`alibaba`,r.stt.alibaba={...r.stt.alibaba,apiKey:A.apiKey,model:A.model}):e===`openai`?(r.stt.provider=`openai`,r.stt.openai={...r.stt.openai,apiKey:A.apiKey,model:A.model}):(r.stt.providers={...r.stt.providers??{},[e]:{...r.stt.providers?.[e]??{},apiKey:A.apiKey,model:A.model}},(!r.stt.provider||r.stt.provider===`alibaba`||r.stt.provider===`openai`)&&(r.stt.provider=e)),await E(r),await n(r,!1),h.current=!1,y(null),O(!0),window.setTimeout(()=>O(!1),2500)}catch(e){w(e instanceof Error?e.message:String(e))}finally{S(!1)}},[A.apiKey,A.model,n,e,t]),I=e===`groq`?R:[{id:A.model,name:A.model}];return(0,M.jsxs)(`div`,{className:`flex flex-col gap-4 rounded-xl border border-edge bg-surface-base p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:l.credentialsTitle}),(0,M.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:l.credentialsHint.replace(`{providerId}`,e)})]}),(0,M.jsx)(`span`,{className:g(`rounded-full px-2 py-0.5 text-xs font-medium`,p?`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:`bg-amber-500/10 text-amber-800 dark:text-amber-200`),children:p?l.configured:l.notConfigured})]}),(0,M.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[(0,M.jsxs)(`div`,{className:g(`flex flex-col gap-1.5`,f),children:[(0,M.jsx)(k,{children:c.stt.apiKey}),(0,M.jsx)(D,{kind:`stt`,providerId:e,fieldId:`ext-stt-${e}-api-key`,value:A.apiKey,onChange:e=>{h.current=!0,y(t=>({...t??m,apiKey:e})),w(null)},labels:u,placeholder:e===`groq`?`gsk_...`:`sk-...`}),(0,M.jsxs)(`p`,{className:`text-xs text-fg-subtle`,children:[c.stt.apiKeyDesc,e===`groq`?` (GROQ_API_KEY)`:``]})]}),(0,M.jsxs)(`div`,{className:g(`flex flex-col gap-1.5`,f),children:[(0,M.jsx)(k,{children:c.stt.model}),e===`groq`?(0,M.jsx)(`select`,{className:z(),value:A.model,onChange:e=>{h.current=!0,y(t=>({...t??m,model:e.target.value})),w(null)},children:I.map(e=>(0,M.jsx)(`option`,{value:e.id,children:e.name},e.id))}):(0,M.jsx)(`input`,{className:B(),value:A.model,onChange:e=>{h.current=!0,y(t=>({...t??m,model:e.target.value})),w(null)}})]})]}),(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[T?(0,M.jsx)(`span`,{className:`text-xs text-emerald-600 dark:text-emerald-400`,children:c.saved}):null,C?(0,M.jsx)(`span`,{className:`text-xs text-red-600 dark:text-red-400`,children:C}):null,(0,M.jsx)(v,{type:`button`,variant:`ghost`,className:`h-8 text-xs`,disabled:!P||b,onClick:()=>{h.current=!1,y(null),w(null)},children:c.discard}),(0,M.jsx)(v,{type:`button`,variant:`primary`,className:`h-8 text-xs`,disabled:!P||b,onClick:()=>void F(),children:b?c.saving:c.save})]})]})}function U(e){let t=(0,A.c)(13),{extensionId:n}=e,r=i(G),a=c(W),u;t[0]===n?u=t[1]:(u=()=>l(o(`/api/extensions/${encodeURIComponent(n)}`)),t[0]=n,t[1]=u);let{data:d,isLoading:f}=s(a&&n?`ext-stt-detail-${n}`:null,u),p;t[2]===d?p=t[3]:(p=ee(d),t[2]=d,t[3]=p);let h=p,g;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(g={revalidateOnFocus:!1},t[4]=g):g=t[4];let{data:_,mutate:v,isLoading:y}=s(a?`voice-settings-ext-stt`:null,w,g);if(!a)return null;if(f||y){let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,M.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-sm text-fg-muted`,children:[(0,M.jsx)(m,{className:`size-4 animate-spin`}),`…`]}),t[5]=e):e=t[5],e}if(!h){let e=r===`zh`?`该扩展未声明 mediaUnderstandingProviders。`:`This extension does not declare mediaUnderstandingProviders.`,n;return t[6]===e?n=t[7]:(n=(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:e}),t[6]=e,t[7]=n),n}if(!_)return null;let b=`${n}:${h}`,x;return t[8]!==v||t[9]!==h||t[10]!==b||t[11]!==_?(x=(0,M.jsx)(H,{providerId:h,voiceSettings:_,mutateVoice:v},b),t[8]=v,t[9]=h,t[10]=b,t[11]=_,t[12]=x):x=t[12],x}function W(e){return!!e.token}function G(e){return e.language}function K(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function q(e){let t={};if(e.type!==`object`||!K(e.properties))return t;for(let[n,r]of Object.entries(e.properties))K(r)&&Object.prototype.hasOwnProperty.call(r,`default`)&&(t[n]=r.default);return t}function J(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Y(e){let t=e[`x-order`];return typeof t==`number`&&!Number.isNaN(t)?t:999}function X(e){let t=e[`x-group`];return typeof t==`string`&&t.length>0?t:``}function Z(e){return e[`x-hidden`]===!0}function Q(e){let t=e.properties;if(!J(t))return[];let n=[];for(let[e,r]of Object.entries(t))J(r)&&(Z(r)||n.push({key:e,sub:r,order:Y(r),group:X(r),hidden:!1}));return n.sort((e,t)=>e.order-t.order||e.key.localeCompare(t.key)),n}function te(e){let t=new Map;for(let n of e){let e=n.group;t.has(e)||t.set(e,[]),t.get(e).push(n)}return t}function ne(e){let t=(0,A.c)(29),{name:n,s:r,value:i,onChange:a,disabled:o}=e,s=typeof r.description==`string`?r.description:void 0,c=(typeof r[`x-placeholder`]==`string`?r[`x-placeholder`]:null)||s,l=r.format;if(Array.isArray(r.enum)&&r.enum.every(ie)){let e;t[0]===s?e=t[1]:(e=s?(0,M.jsx)(`label`,{className:`text-xs text-fg-muted`,children:s}):null,t[0]=s,t[1]=e);let c;t[2]===a?c=t[3]:(c=e=>a(e.target.value),t[2]=a,t[3]=c);let l;t[4]===r.enum?l=t[5]:(l=r.enum.map(re),t[4]=r.enum,t[5]=l);let u;t[6]!==o||t[7]!==n||t[8]!==c||t[9]!==l||t[10]!==i?(u=(0,M.jsx)(`select`,{name:n,className:`ui-input h-9 rounded-md border border-edge bg-surface-base px-2 text-sm text-fg`,value:i,disabled:o,onChange:c,children:l}),t[6]=o,t[7]=n,t[8]=c,t[9]=l,t[10]=i,t[11]=u):u=t[11];let d;return t[12]!==e||t[13]!==u?(d=(0,M.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e,u]}),t[12]=e,t[13]=u,t[14]=d):d=t[14],d}let u=l===`password`?`password`:`text`,d;t[15]===s?d=t[16]:(d=s?(0,M.jsx)(`label`,{className:`text-xs text-fg-muted`,children:s}):null,t[15]=s,t[16]=d);let f;t[17]===a?f=t[18]:(f=e=>a(e.target.value),t[17]=a,t[18]=f);let p;t[19]!==o||t[20]!==u||t[21]!==n||t[22]!==c||t[23]!==f||t[24]!==i?(p=(0,M.jsx)(`input`,{name:n,type:u,className:`ui-input h-9 rounded-md border border-edge bg-surface-base px-2.5 text-sm text-fg placeholder:text-fg-muted/70`,value:i,placeholder:c,disabled:o,onChange:f}),t[19]=o,t[20]=u,t[21]=n,t[22]=c,t[23]=f,t[24]=i,t[25]=p):p=t[25];let m;return t[26]!==d||t[27]!==p?(m=(0,M.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[d,p]}),t[26]=d,t[27]=p,t[28]=m):m=t[28],m}function re(e){return(0,M.jsx)(`option`,{value:e,children:e},e)}function ie(e){return typeof e==`string`}function ae(e){let t=(0,A.c)(11),{s:n,value:r,onChange:i,disabled:a}=e,o=typeof n.description==`string`?n.description:void 0,s;t[0]===o?s=t[1]:(s=o?(0,M.jsx)(`label`,{className:`text-xs text-fg-muted`,children:o}):null,t[0]=o,t[1]=s);let c=Number.isFinite(r)?r:0,l;t[2]===i?l=t[3]:(l=e=>i(Number(e.target.value)),t[2]=i,t[3]=l);let u;t[4]!==a||t[5]!==c||t[6]!==l?(u=(0,M.jsx)(`input`,{type:`number`,className:`ui-input h-9 rounded-md border border-edge bg-surface-base px-2.5 text-sm text-fg`,value:c,disabled:a,onChange:l}),t[4]=a,t[5]=c,t[6]=l,t[7]=u):u=t[7];let d;return t[8]!==s||t[9]!==u?(d=(0,M.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[s,u]}),t[8]=s,t[9]=u,t[10]=d):d=t[10],d}function oe(e){let t=(0,A.c)(11),{s:n,value:r,onChange:i,disabled:a}=e,o=(typeof n.description==`string`?n.description:void 0)??(typeof n.title==`string`&&n.title.length>0?n.title:`Enable`),s;t[0]===i?s=t[1]:(s=e=>i(e.target.checked),t[0]=i,t[1]=s);let c;t[2]!==a||t[3]!==s||t[4]!==r?(c=(0,M.jsx)(`input`,{type:`checkbox`,className:`size-4 rounded border border-edge`,checked:r,disabled:a,onChange:s}),t[2]=a,t[3]=s,t[4]=r,t[5]=c):c=t[5];let l;t[6]===o?l=t[7]:(l=(0,M.jsx)(`span`,{children:o}),t[6]=o,t[7]=l);let u;return t[8]!==c||t[9]!==l?(u=(0,M.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[c,l]}),t[8]=c,t[9]=l,t[10]=u):u=t[10],u}function se(e){let t=(0,A.c)(21),{s:n,value:r,onChange:i,disabled:a}=e,o=typeof n.description==`string`?n.description:void 0,s=n.items;if(!(J(s)&&s.type===`string`)){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,M.jsx)(`p`,{className:`text-xs text-fg-muted`,children:`Unsupported array type`}),t[0]=e):e=t[0],e}let c;t[1]!==i||t[2]!==r?(c=e=>{let t=e.trim();!t||r.includes(t)||i([...r,t])},t[1]=i,t[2]=r,t[3]=c):c=t[3];let l=c,u;t[4]===o?u=t[5]:(u=o?(0,M.jsx)(`label`,{className:`text-xs text-fg-muted`,children:o}):null,t[4]=o,t[5]=u);let d;t[6]!==a||t[7]!==i||t[8]!==r?(d=r.map(e=>(0,M.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md border border-edge bg-surface-panel px-2 py-0.5 text-sm`,children:[e,(0,M.jsx)(`button`,{type:`button`,className:`text-fg-muted hover:text-fg`,disabled:a,onClick:()=>i(r.filter(t=>t!==e)),children:`×`})]},e)),t[6]=a,t[7]=i,t[8]=r,t[9]=d):d=t[9];let f;t[10]===d?f=t[11]:(f=(0,M.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:d}),t[10]=d,t[11]=f);let p;t[12]===l?p=t[13]:(p=e=>{e.key===`Enter`&&(e.preventDefault(),l(e.target.value),e.target.value=``)},t[12]=l,t[13]=p);let m;t[14]!==a||t[15]!==p?(m=(0,M.jsx)(`input`,{className:`ui-input h-9 rounded-md border border-edge bg-surface-base px-2.5 text-sm`,disabled:a,placeholder:`Add and press Enter`,onKeyDown:p}),t[14]=a,t[15]=p,t[16]=m):m=t[16];let h;return t[17]!==u||t[18]!==f||t[19]!==m?(h=(0,M.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[u,f,m]}),t[17]=u,t[18]=f,t[19]=m,t[20]=h):h=t[20],h}function ce(e){let t=(0,A.c)(48),{k:n,sub:r,value:i,onValue:a,disabled:o}=e,s=r.type,c=(typeof r.title==`string`&&r.title.length>0?r.title:null)??n;if(s===`boolean`){let e;t[0]===c?e=t[1]:(e=(0,M.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:c}),t[0]=c,t[1]=e);let n=i===!0,s;t[2]===a?s=t[3]:(s=e=>a(e),t[2]=a,t[3]=s);let l;t[4]!==o||t[5]!==r||t[6]!==n||t[7]!==s?(l=(0,M.jsx)(oe,{s:r,value:n,disabled:o,onChange:s}),t[4]=o,t[5]=r,t[6]=n,t[7]=s,t[8]=l):l=t[8];let u;return t[9]!==e||t[10]!==l?(u=(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[e,l]}),t[9]=e,t[10]=l,t[11]=u):u=t[11],u}if(s===`number`||s===`integer`){let e;t[12]===c?e=t[13]:(e=(0,M.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:c}),t[12]=c,t[13]=e);let n=typeof i==`number`?i:0,s;t[14]!==o||t[15]!==a||t[16]!==r||t[17]!==n?(s=(0,M.jsx)(ae,{s:r,value:n,disabled:o,onChange:a}),t[14]=o,t[15]=a,t[16]=r,t[17]=n,t[18]=s):s=t[18];let l;return t[19]!==e||t[20]!==s?(l=(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[e,s]}),t[19]=e,t[20]=s,t[21]=l):l=t[21],l}if(s===`string`){let e;t[22]===c?e=t[23]:(e=(0,M.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:c}),t[22]=c,t[23]=e);let s=typeof i==`string`?i:``,l;t[24]!==o||t[25]!==n||t[26]!==a||t[27]!==r||t[28]!==s?(l=(0,M.jsx)(ne,{name:n,s:r,value:s,disabled:o,onChange:a}),t[24]=o,t[25]=n,t[26]=a,t[27]=r,t[28]=s,t[29]=l):l=t[29];let u;return t[30]!==e||t[31]!==l?(u=(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[e,l]}),t[30]=e,t[31]=l,t[32]=u):u=t[32],u}if(s===`array`){let e=r.items;if(J(e)&&e.type===`string`){let e;t[33]===c?e=t[34]:(e=(0,M.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:c}),t[33]=c,t[34]=e);let n;t[35]===i?n=t[36]:(n=Array.isArray(i)&&i.every(le)?i:[],t[35]=i,t[36]=n);let s;t[37]!==o||t[38]!==a||t[39]!==r||t[40]!==n?(s=(0,M.jsx)(se,{s:r,value:n,disabled:o,onChange:a}),t[37]=o,t[38]=a,t[39]=r,t[40]=n,t[41]=s):s=t[41];let l;return t[42]!==e||t[43]!==s?(l=(0,M.jsxs)(`div`,{className:`space-y-1.5`,children:[e,s]}),t[42]=e,t[43]=s,t[44]=l):l=t[44],l}}let l=typeof s==`string`?` (${s})`:``,u;return t[45]!==l||t[46]!==c?(u=(0,M.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[c,`: unsupported field type`,l]}),t[45]=l,t[46]=c,t[47]=u):u=t[47],u}function le(e){return typeof e==`string`}function ue(e){let t=(0,A.c)(26),{schema:n,values:r,onChange:i,disabled:a,className:o}=e,s=a===void 0?!1:a,c;bb0:{if(n.type!==`object`){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[0]=e):e=t[0],c=e;break bb0}let e;t[1]===n?e=t[2]:(e=Q(n),t[1]=n,t[2]=e),c=e}let l=c,u;bb1:{if(l.length===0){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=new Map,t[3]=e):e=t[3],u=e;break bb1}let e;t[4]===l?e=t[5]:(e=te(l),t[4]=l,t[5]=e),u=e}let d=u,f;t[6]!==i||t[7]!==r?(f=(e,t)=>{i({...r,[e]:t})},t[6]=i,t[7]=r,t[8]=f):f=t[8];let p=f;if(n.type!==`object`||!J(n.properties)||l.length===0)return null;let m,h;if(t[9]!==o||t[10]!==s||t[11]!==d||t[12]!==p||t[13]!==r){let e=Array.from(d.keys()).sort(de);t[16]===o?m=t[17]:(m=g(`flex flex-col gap-4`,o),t[16]=o,t[17]=m);let n;t[18]!==s||t[19]!==d||t[20]!==p||t[21]!==r?(n=e=>{let t=(d.get(e)??[]).map(e=>(0,M.jsx)(ce,{k:e.key,sub:e.sub,value:r[e.key],onValue:t=>p(e.key,t),disabled:s},e.key));return e===``?(0,M.jsx)(`div`,{children:t},`default`):(0,M.jsxs)(`details`,{className:`group rounded-lg border border-edge bg-surface-panel/40 open:bg-surface-base`,open:!0,children:[(0,M.jsx)(`summary`,{className:`cursor-pointer select-none px-3 py-2 text-sm font-medium text-fg group-open:rounded-b-none`,children:e}),(0,M.jsx)(`div`,{className:`space-y-4 border-t border-edge p-3`,children:t})]},e)},t[18]=s,t[19]=d,t[20]=p,t[21]=r,t[22]=n):n=t[22],h=e.map(n),t[9]=o,t[10]=s,t[11]=d,t[12]=p,t[13]=r,t[14]=m,t[15]=h}else m=t[14],h=t[15];let _;return t[23]!==m||t[24]!==h?(_=(0,M.jsx)(`div`,{className:m,children:h}),t[23]=m,t[24]=h,t[25]=_):_=t[25],_}function de(e,t){return e===``?-1:t===``?1:e.localeCompare(t)}function fe(e,t){switch(t.type){case`sync`:return{...e,localValues:t.value,isDirty:!1,saveError:null};case`change`:return{...e,localValues:t.value,isDirty:!0,saveError:null,saveSuccess:!1};case`discard`:return{...e,localValues:t.value,isDirty:!1,saveError:null};case`reset-defaults`:return{...e,localValues:t.value,isDirty:!0,saveError:null,saveSuccess:!1};case`save-start`:return{...e,saving:!0,saveError:null};case`save-success`:return{...e,localValues:t.value,isDirty:!1,saving:!1,saveSuccess:!0,saveError:null};case`save-error`:return{...e,saving:!1,saveError:t.message}}}function pe({extensionId:e}){let t=a(i(e=>e.language)).agentSettings,n=c(e=>!!e.token),{data:r,error:d}=s(n&&e?`ext-detail-${e}`:null,()=>l(o(`/api/extensions/${encodeURIComponent(e)}`))),{data:f,mutate:p,error:m}=s(n&&e?`ext-cfg-${e}`:null,()=>l(o(`/api/extensions/${encodeURIComponent(e)}/config`))),h=r?.manifest?.configSchema,g=(0,j.useMemo)(()=>h&&h.type===`object`?q(h):{},[h]),_=(0,j.useMemo)(()=>({...g,...f??{}}),[g,f]),[y,b]=(0,j.useReducer)(fe,{localValues:{},isDirty:!1,saving:!1,saveError:null,saveSuccess:!1}),[x,S]=(0,j.useState)(!1),C=(0,j.useRef)(!1),w=(0,j.useRef)(_);!C.current&&w.current!==_&&(w.current=_,b({type:`sync`,value:_}));let T=(0,j.useCallback)(e=>{C.current=!0,b({type:`change`,value:e})},[]),E=(0,j.useCallback)(()=>{C.current=!1,b({type:`discard`,value:_})},[_]),D=(0,j.useCallback)(()=>{!h||h.type!==`object`||(C.current=!0,b({type:`reset-defaults`,value:{...q(h)}}))},[h]),O=(0,j.useCallback)(async()=>{if(e){b({type:`save-start`});try{let t=await u(o(`/api/extensions/${encodeURIComponent(e)}/config`),{method:`PATCH`,body:JSON.stringify(y.localValues)});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.error?.message??t.statusText)}await p(y.localValues,!1),C.current=!1,b({type:`save-success`,value:y.localValues}),S(!0),window.setTimeout(()=>S(!1),3e3)}catch(e){b({type:`save-error`,message:e instanceof Error?e.message:String(e)})}}},[y.localValues,e,p]);if(!n)return null;if(d||m){let e=d??m;return(0,M.jsxs)(`p`,{className:`text-sm text-fg-muted`,children:[`Could not load extension settings: `,e instanceof Error?e.message:String(e)]})}return!h||h.type!==`object`?null:(0,M.jsxs)(`div`,{className:`mb-6 flex flex-col gap-3 rounded-xl border border-edge bg-surface-base p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:`Configuration`}),(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[x?(0,M.jsx)(`span`,{className:`text-xs text-emerald-600 dark:text-emerald-400`,children:t.saved}):null,y.saveError?(0,M.jsx)(`span`,{className:`text-xs text-red-600 dark:text-red-400`,children:y.saveError}):null,(0,M.jsx)(v,{type:`button`,variant:`ghost`,className:`h-8 text-xs`,disabled:!y.isDirty,onClick:E,children:t.discard}),(0,M.jsx)(v,{type:`button`,variant:`ghost`,className:`h-8 text-xs`,onClick:D,children:`Reset to defaults`}),(0,M.jsx)(v,{type:`button`,variant:`primary`,className:`h-8 text-xs`,disabled:!y.isDirty||y.saving,onClick:()=>void O(),children:y.saving?t.saving:t.save})]})]}),(0,M.jsx)(ue,{schema:h,values:y.localValues,onChange:T,disabled:y.saving})]})}function me(){let e=(0,A.c)(47),t=i(he),n;e[0]===t?n=e[1]:(n=a(t),e[0]=t,e[1]=n);let r=n,o=r.extensionImageGen,s=r.extensionSttMedia,{extensionId:c,panelId:l}=y(),u=b();if(!c){let t;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,M.jsx)($,{message:`No extension ID provided.`}),e[2]=t):t=e[2],t}let d,f,p;if(e[3]!==c||e[4]!==u||e[5]!==l){p=Symbol.for(`react.early_return_sentinel`);bb0:{let t;if(e[9]===c?t=e[10]:(t=e=>e.id===c,e[9]=c,e[10]=t),d=u.find(t),!d){let t=`Extension "${c}" not found or is not available in this workspace.`,n;e[11]===t?n=e[12]:(n=(0,M.jsx)($,{message:t}),e[11]=t,e[12]=n),p=n;break bb0}let n=d.ui?.contributions?.settingsPanels;f=l?n?.find(e=>e.id===l||e.id===`${c}.${l}`):n?.[0]}e[3]=c,e[4]=u,e[5]=l,e[6]=d,e[7]=f,e[8]=p}else d=e[6],f=e[7],p=e[8];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m=f,g=!!(m&&d.ui),v=!!d.hasConfigSchema,x=d.kind===`image-generation`,S=d.kind===`media-provider`;if(!v&&!g&&!(x||S)){let t=`Extension "${c}" has no settings panels or config schema.`,n;return e[13]===t?n=e[14]:(n=(0,M.jsx)($,{message:t}),e[13]=t,e[14]=n),n}let C=m?.title??`${d.name} Settings`,w;e[15]===C?w=e[16]:(w=(0,M.jsx)(`h1`,{className:`text-lg font-semibold text-fg`,children:C}),e[15]=C,e[16]=w);let T;e[17]!==x||e[18]!==r.imageModelsSettings||e[19]!==o?(T=x?(0,M.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-edge-subtle bg-surface-base px-4 py-3 text-sm`,children:[(0,M.jsx)(`p`,{className:`leading-relaxed text-fg-muted`,children:o.banner}),(0,M.jsx)(_,{to:`/settings/image-models`,className:`w-fit font-medium text-accent hover:underline`,title:r.imageModelsSettings.imageModelsLinkTitle,children:o.openImageModels})]}):null,e[17]=x,e[18]=r.imageModelsSettings,e[19]=o,e[20]=T):T=e[20];let E;e[21]!==c||e[22]!==x?(E=x?(0,M.jsx)(F,{extensionId:c}):null,e[21]=c,e[22]=x,e[23]=E):E=e[23];let D;e[24]!==S||e[25]!==s?(D=S?(0,M.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-lg border border-edge-subtle bg-surface-base px-4 py-3 text-sm`,children:[(0,M.jsx)(`p`,{className:`leading-relaxed text-fg-muted`,children:s.banner}),(0,M.jsx)(_,{to:`/settings/voice`,className:`w-fit font-medium text-accent hover:underline`,children:s.openVoice})]}):null,e[24]=S,e[25]=s,e[26]=D):D=e[26];let O;e[27]!==c||e[28]!==S?(O=S?(0,M.jsx)(U,{extensionId:c}):null,e[27]=c,e[28]=S,e[29]=O):O=e[29];let k;e[30]!==c||e[31]!==v?(k=v?(0,M.jsx)(pe,{extensionId:c}):null,e[30]=c,e[31]=v,e[32]=k):k=e[32];let j;e[33]!==d.name||e[34]!==d.ui||e[35]!==c||e[36]!==g||e[37]!==m?(j=g&&m&&d.ui?(0,M.jsx)(`div`,{className:`overflow-hidden rounded-xl border border-edge bg-surface-base`,children:(0,M.jsx)(h,{extensionId:c,extensionName:d.name,entrypoint:m.entrypoint,permissions:d.ui?.permissions,title:m.title,className:`w-full`,minHeight:120,maxHeight:2e3})}):null,e[33]=d.name,e[34]=d.ui,e[35]=c,e[36]=g,e[37]=m,e[38]=j):j=e[38];let N;return e[39]!==w||e[40]!==T||e[41]!==E||e[42]!==D||e[43]!==O||e[44]!==k||e[45]!==j?(N=(0,M.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-8`,children:[w,T,E,D,O,k,j]}),e[39]=w,e[40]=T,e[41]=E,e[42]=D,e[43]=O,e[44]=k,e[45]=j,e[46]=N):N=e[46],N}function he(e){return e.language}function $(e){let t=(0,A.c)(2),{message:n}=e,r;return t[0]===n?r=t[1]:(r=(0,M.jsx)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-3 px-4 py-8`,children:(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n})}),t[0]=n,t[1]=r),r}export{me as ExtensionSettingsPage};
|