@xopcai/xopc 0.0.113 → 0.0.115
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/outbound/media-load.js +1 -1
- package/dist/extensions/feishu/src/workflow-progress.js +1 -1
- package/dist/extensions/telegram/src/adapters/streaming-adapter.js +1 -1
- package/dist/extensions/telegram/src/inbound-processor.js +1 -1
- package/dist/extensions/telegram/src/plugin.js +1 -1
- package/dist/extensions/telegram/src/routing-integration.js +2 -2
- package/dist/extensions/telegram/src/update-offset-store.js +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/api/api.js +2 -2
- package/dist/extensions/weixin/src/auth/accounts.js +1 -1
- package/dist/extensions/weixin/src/cdn/upload.js +1 -1
- package/dist/extensions/weixin/src/media/data-url.js +1 -1
- package/dist/extensions/weixin/src/messaging/debug-mode.js +1 -1
- package/dist/extensions/weixin/src/messaging/inbound.js +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 +1 -1
- package/dist/extensions/weixin/src/workflow-progress.js +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CBlklyNr.js → agent-avatar-dicebear-DVnBfANm.js} +1 -1
- package/dist/gateway/static/root/assets/agent-browser-settings-page-DPXc4hz8.js +6 -0
- package/dist/gateway/static/root/assets/agent-defaults-tabbed-page-CTJ0YnRQ.js +1 -0
- package/dist/gateway/static/root/assets/agents-zJXQfJ_W.js +71 -0
- package/dist/gateway/static/root/assets/{app-management-settings-panel-28E_WfMe.js → app-management-settings-panel-DzGbdr04.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-Do1z0XgJ.js → appearance-settings-BQpPSTHD.js} +1 -1
- package/dist/gateway/static/root/assets/apps-page-CPjfyzSD.js +1 -0
- package/dist/gateway/static/root/assets/{archive-plugin-BAFlsov_.js → archive-plugin-CXu-Csep.js} +1 -1
- package/dist/gateway/static/root/assets/{attachment-load-V3qGPC3x.js → attachment-load-BAjgOoGY.js} +1 -1
- package/dist/gateway/static/root/assets/{binary-plugins-DT8NvA6W.js → binary-plugins-BSBgB2hO.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-CdLMEcHd.js → block-editor-BpXw9TTR.js} +3 -3
- package/dist/gateway/static/root/assets/channels-settings-BbPUpzWB.js +1 -0
- package/dist/gateway/static/root/assets/{config-api-Bf5mjpu7.js → config-api-NOoPiIYz.js} +1 -1
- package/dist/gateway/static/root/assets/connectors-settings-CAXYMOdp.js +2 -0
- package/dist/gateway/static/root/assets/{cron-api--pAB_rps.js → cron-api-C9BOqAXd.js} +1 -1
- package/dist/gateway/static/root/assets/cron-page-DuUbBeKI.js +3 -0
- package/dist/gateway/static/root/assets/{dreaming-settings-6UZE1FSK.js → dreaming-settings-DQ4DtiK1.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-BGhE7msg.js → extension-debug-page-D9kgUHCc.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-CvpI45WG.js → extension-page-CGyhXqzR.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-DAmR5FUe.js → extension-settings-page-DL8Xquqd.js} +1 -1
- package/dist/gateway/static/root/assets/{fetch-NZmjSXLl.js → fetch-D0VXA932.js} +1 -1
- package/dist/gateway/static/root/assets/{format-interval-label-qhth3BMV.js → format-interval-label-Be8SmgUw.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-api-CaXBt-9R.js → gateway-config-api-C-xjn__h.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-settings-DphpbLBc.js → gateway-settings-BMPwIjKI.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-Be1omjh3.js → gateway-startup-retry-DERUH61L.js} +1 -1
- package/dist/gateway/static/root/assets/goal-detail-page-BJsyjJnF.js +1 -0
- package/dist/gateway/static/root/assets/goals-config-api-BPmqWk90.js +1 -0
- package/dist/gateway/static/root/assets/goals-page-BerDgIhw.js +2 -0
- package/dist/gateway/static/root/assets/goals-settings-ByTjeAto.js +1 -0
- package/dist/gateway/static/root/assets/{heartbeat-config-api-BzO6G4fD.js → heartbeat-config-api-Bfdzr8oV.js} +1 -1
- package/dist/gateway/static/root/assets/{heartbeat-settings-DCST9-du.js → heartbeat-settings-TbHgcjTn.js} +1 -1
- package/dist/gateway/static/root/assets/index-AkTrf6Pb.js +122 -0
- package/dist/gateway/static/root/assets/index-fh5sXTj9.css +1 -0
- package/dist/gateway/static/root/assets/{interval-presets-DJmshV8n.js → interval-presets-utKbuCRY.js} +1 -1
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-9AUUlQ5Q.js → keyboard-shortcuts-settings-CjqS6c6V.js} +1 -1
- package/dist/gateway/static/root/assets/logs-page-DGXuPf5B.js +2 -0
- package/dist/gateway/static/root/assets/{markdown-split-CYYELqAr.js → markdown-split-DW8C47iB.js} +1 -1
- package/dist/gateway/static/root/assets/{media-plugins-BEcMR2M8.js → media-plugins-D6HwDhDT.js} +1 -1
- package/dist/gateway/static/root/assets/messages-upgxw6Ub.js +3 -0
- package/dist/gateway/static/root/assets/models-hub-panel-Bot16nn7.js +2 -0
- package/dist/gateway/static/root/assets/note-detail-page-Brlyou8M.js +2 -0
- package/dist/gateway/static/root/assets/{note-image-lightbox-DNAoPcmm.js → note-image-lightbox-pJM35Pz5.js} +1 -1
- package/dist/gateway/static/root/assets/notes-page-DvZ4pwc-.js +1 -0
- package/dist/gateway/static/root/assets/{preview-open-alternatives-BPLz0AIv.js → preview-open-alternatives-CVwHuyN6.js} +1 -1
- package/dist/gateway/static/root/assets/remote-access-hub-BZEDmxbZ.js +1 -0
- package/dist/gateway/static/root/assets/{save-bar-controls-CrWwWRVK.js → save-bar-controls-Ba-UEk7x.js} +1 -1
- package/dist/gateway/static/root/assets/{schedule-field-CF2sadvN.js → schedule-field-CNN9595U.js} +1 -1
- package/dist/gateway/static/root/assets/{schema-form-Di5cKjYE.js → schema-form-DnNMmtD5.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-DdGGlsfn.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-DlkEkPf9.js +1 -0
- package/dist/gateway/static/root/assets/{settings-collapsible-section-Chh282jW.js → settings-collapsible-section-CmOz80i5.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-form-section-Dq-83cQd.js → settings-form-section-BmK7JJOV.js} +1 -1
- package/dist/gateway/static/root/assets/settings-page-DFPTrsPF.js +1 -0
- package/dist/gateway/static/root/assets/setup-status-panel-CYCCfgh4.js +1 -0
- package/dist/gateway/static/root/assets/{share-preview-page-0FXYnSUA.js → share-preview-page-Dp2qGrHC.js} +1 -1
- package/dist/gateway/static/root/assets/shares-settings-Bff1pGd0.js +1 -0
- package/dist/gateway/static/root/assets/skill-reload-api-CJGKpBur.js +1 -0
- package/dist/gateway/static/root/assets/skills-page-C6ocduTD.js +2 -0
- package/dist/gateway/static/root/assets/{system-settings-panel-W1pTcojB.js → system-settings-panel-5jrIEr5b.js} +1 -1
- package/dist/gateway/static/root/assets/{use-agent-defaults-form-BVRvkK7m.js → use-agent-defaults-form-BuiXLIs5.js} +1 -1
- package/dist/gateway/static/root/assets/{use-channel-catalog-CgJibfMM.js → use-channel-catalog-CHlO8J9G.js} +1 -1
- package/dist/gateway/static/root/assets/{use-settings-tab-guard-Bw_qkRQE.js → use-settings-tab-guard-CW5JORnl.js} +1 -1
- package/dist/gateway/static/root/assets/voice-api-key-field-DDoQyghO.js +1 -0
- package/dist/gateway/static/root/assets/{voice-player-store-C7lziaAx.js → voice-player-store-DDDWYHvg.js} +1 -1
- package/dist/gateway/static/root/assets/workflow-page.utils-CKjeEGqx.js +1 -0
- package/dist/gateway/static/root/assets/workflows-page-B604ehHG.js +18 -0
- package/dist/gateway/static/root/index.html +5 -5
- package/dist/gateway/static/root/logo.svg +4 -3
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.d.ts +8 -0
- package/dist/src/agent/agent-manager.js +63 -28
- package/dist/src/agent/agent-manager.js.map +1 -1
- package/dist/src/agent/agent-scope.js +1 -1
- package/dist/src/agent/bootstrap/load-bootstrap-files.js +1 -1
- package/dist/src/agent/bootstrap/project-agents-context.d.ts +2 -0
- package/dist/src/agent/bootstrap/project-agents-context.js +32 -0
- package/dist/src/agent/bootstrap/project-agents-context.js.map +1 -0
- package/dist/src/agent/context/workspace-seed.js +2 -2
- package/dist/src/agent/context/workspace-state.js +1 -1
- package/dist/src/agent/context/workspace.js +1 -1
- package/dist/src/agent/embedded/session-tool-result-guard.js +8 -1
- package/dist/src/agent/embedded/session-tool-result-guard.js.map +1 -1
- package/dist/src/agent/goals/checklist-judge.d.ts +1 -0
- package/dist/src/agent/goals/checklist-judge.js +3 -2
- package/dist/src/agent/goals/checklist-judge.js.map +1 -1
- package/dist/src/agent/goals/evaluate-turn.d.ts +1 -1
- package/dist/src/agent/goals/evaluate-turn.js +1 -0
- package/dist/src/agent/goals/evaluate-turn.js.map +1 -1
- package/dist/src/agent/goals/goal-locale.js +2 -2
- package/dist/src/agent/goals/persistent-goal-service.js +2 -4
- package/dist/src/agent/goals/persistent-goal-service.js.map +1 -1
- package/dist/src/agent/goals/post-turn.d.ts +6 -1
- package/dist/src/agent/goals/post-turn.js +15 -6
- package/dist/src/agent/goals/post-turn.js.map +1 -1
- package/dist/src/agent/image/load-image-media.js +2 -2
- package/dist/src/agent/inbound/inbound-loop.js +5 -1
- package/dist/src/agent/inbound/inbound-loop.js.map +1 -1
- package/dist/src/agent/inbound/turn-dispatcher.d.ts +2 -2
- package/dist/src/agent/inbound/turn-dispatcher.js +2 -2
- package/dist/src/agent/inbound/turn-dispatcher.js.map +1 -1
- package/dist/src/agent/ipc/inbox.js +3 -3
- package/dist/src/agent/ipc/socket.js +1 -1
- package/dist/src/agent/mcp/bundle-mcp-materialize.d.ts +27 -0
- package/dist/src/agent/mcp/bundle-mcp-materialize.js +50 -2
- package/dist/src/agent/mcp/bundle-mcp-materialize.js.map +1 -1
- package/dist/src/agent/mcp/bundle-mcp-runtime.js +79 -4
- package/dist/src/agent/mcp/bundle-mcp-runtime.js.map +1 -1
- package/dist/src/agent/mcp/bundle-mcp-types.d.ts +19 -0
- package/dist/src/agent/mcp/mcp-transport-config.js +1 -1
- package/dist/src/agent/mcp/mcp-transport.js +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/memory-flush.js +1 -1
- package/dist/src/agent/memory/plugin-discovery.js +1 -1
- package/dist/src/agent/models/manager.js +1 -1
- package/dist/src/agent/prompt/memory/index.js +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/btw-query.js +11 -3
- package/dist/src/agent/service/btw-query.js.map +1 -1
- package/dist/src/agent/service/parse-outbound-session-key.js +13 -8
- package/dist/src/agent/service/parse-outbound-session-key.js.map +1 -1
- package/dist/src/agent/service/process-direct-one-shot.d.ts +2 -2
- package/dist/src/agent/service/process-direct-one-shot.js +1 -1
- package/dist/src/agent/service/process-direct-one-shot.js.map +1 -1
- package/dist/src/agent/service/process-direct-streaming.d.ts +2 -2
- package/dist/src/agent/service/process-direct-streaming.js +1 -1
- package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
- package/dist/src/agent/service.d.ts +1 -1
- package/dist/src/agent/service.js +13 -9
- package/dist/src/agent/service.js.map +1 -1
- package/dist/src/agent/service.types.d.ts +5 -0
- package/dist/src/agent/session/session-inspector.js +1 -1
- package/dist/src/agent/skills/config.js +2 -2
- package/dist/src/agent/skills/filesystem-watcher.js +5 -4
- package/dist/src/agent/skills/filesystem-watcher.js.map +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 +4 -3
- package/dist/src/agent/skills/index.js.map +1 -1
- package/dist/src/agent/skills/installer.js +2 -2
- package/dist/src/agent/skills/managed-store.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +3 -2
- package/dist/src/agent/skills/skill-manage-ops.js.map +1 -1
- package/dist/src/agent/skills/skill-manager.js +1 -1
- package/dist/src/agent/skills/skill-view-path.js +1 -1
- package/dist/src/agent/skills/test-framework.js +1 -1
- package/dist/src/agent/skills/types.d.ts +1 -1
- package/dist/src/agent/skills/watcher.js +2 -5
- package/dist/src/agent/skills/watcher.js.map +1 -1
- package/dist/src/agent/skills/workspace-skills-dir.d.ts +1 -0
- package/dist/src/agent/skills/workspace-skills-dir.js +11 -0
- package/dist/src/agent/skills/workspace-skills-dir.js.map +1 -0
- package/dist/src/agent/starter-agents.js +1 -1
- package/dist/src/agent/tool-manuals/browser.d.ts +1 -1
- package/dist/src/agent/tool-manuals/browser.js +62 -3
- package/dist/src/agent/tool-manuals/browser.js.map +1 -1
- package/dist/src/agent/tools/browser/tool/browser-use-tool.d.ts +4 -1
- package/dist/src/agent/tools/browser/tool/browser-use-tool.js +13 -4
- package/dist/src/agent/tools/browser/tool/browser-use-tool.js.map +1 -1
- package/dist/src/agent/tools/browser/tool/schemas.d.ts +0 -2
- package/dist/src/agent/tools/browser/tool/schemas.js +1 -2
- package/dist/src/agent/tools/browser/tool/schemas.js.map +1 -1
- package/dist/src/agent/tools/dreaming-tool.js +1 -1
- package/dist/src/agent/tools/factory.js +1 -10
- package/dist/src/agent/tools/factory.js.map +1 -1
- package/dist/src/agent/tools/find.js +1 -1
- package/dist/src/agent/tools/grep.js +1 -1
- package/dist/src/agent/tools/image-generate-tool.js +1 -1
- package/dist/src/agent/tools/skill-manage-tool.js +2 -2
- package/dist/src/agent/tools/skill-manage-tool.js.map +1 -1
- package/dist/src/agent/tools/workflow-tool.js +1 -1
- package/dist/src/agent/workflow/catalog.js +1 -1
- package/dist/src/agent/workflow/snapshot.d.ts +10 -0
- package/dist/src/agent/workflow/snapshot.js +136 -1
- package/dist/src/agent/workflow/snapshot.js.map +1 -1
- package/dist/src/agent/workflow/subagent-runner.js +18 -1
- package/dist/src/agent/workflow/subagent-runner.js.map +1 -1
- package/dist/src/ai-assist/text-assist.js +1 -1
- package/dist/src/auth/credentials.js +2 -2
- package/dist/src/auth/profiles/store.js +2 -2
- package/dist/src/auth/sync-provider-auth.js +1 -1
- package/dist/src/browser/actions/extension-registry-bridge.js +91 -7
- package/dist/src/browser/actions/extension-registry-bridge.js.map +1 -1
- package/dist/src/browser/actions/registry.js +383 -7
- package/dist/src/browser/actions/registry.js.map +1 -1
- package/dist/src/browser/actions/types.d.ts +11 -3
- 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 +2 -2
- package/dist/src/browser/pipeline/output.d.ts +18 -16
- package/dist/src/browser/pipeline/output.js +28 -20
- package/dist/src/browser/pipeline/output.js.map +1 -1
- package/dist/src/browser/pipeline/runner.d.ts +7 -14
- package/dist/src/browser/pipeline/runner.js +349 -102
- package/dist/src/browser/pipeline/runner.js.map +1 -1
- package/dist/src/browser/pipeline/schema.d.ts +1 -0
- package/dist/src/browser/pipeline/schema.js +35 -58
- package/dist/src/browser/pipeline/schema.js.map +1 -1
- package/dist/src/browser/pipeline/source.d.ts +2 -0
- package/dist/src/browser/pipeline/source.js +10 -1
- package/dist/src/browser/pipeline/source.js.map +1 -1
- package/dist/src/browser/pipeline/template.d.ts +10 -2
- package/dist/src/browser/pipeline/template.js +50 -8
- package/dist/src/browser/pipeline/template.js.map +1 -1
- package/dist/src/browser/providers/browser-ext-install.js +4 -4
- package/dist/src/browser/providers/cloakbrowser.js +5 -5
- package/dist/src/browser/providers/playwright-doctor.js +1 -1
- package/dist/src/browser/stealth.js +1 -1
- package/dist/src/channels/catalog/channel-catalog-service.d.ts +2 -1
- package/dist/src/channels/catalog/channel-catalog-service.js +133 -16
- package/dist/src/channels/catalog/channel-catalog-service.js.map +1 -1
- package/dist/src/channels/catalog/channel-catalog-types.d.ts +13 -0
- package/dist/src/channels/outbound/persist-store.js +1 -1
- package/dist/src/channels/pairing/allow-from-file.js +1 -1
- package/dist/src/channels/pairing/pairing-store.js +2 -2
- package/dist/src/chat-commands/agent-edit.js +2 -2
- package/dist/src/chat-commands/builtins/config.js +5 -7
- package/dist/src/chat-commands/builtins/config.js.map +1 -1
- package/dist/src/chat-commands/context.d.ts +5 -0
- package/dist/src/chat-commands/context.js +18 -9
- package/dist/src/chat-commands/context.js.map +1 -1
- package/dist/src/chat-commands/index.d.ts +1 -1
- package/dist/src/chat-commands/index.js +2 -2
- package/dist/src/chat-commands/index.js.map +1 -1
- package/dist/src/chat-commands/processor.js +22 -21
- package/dist/src/chat-commands/processor.js.map +1 -1
- package/dist/src/chat-commands/session-key.d.ts +3 -15
- package/dist/src/chat-commands/session-key.js +3 -49
- package/dist/src/chat-commands/session-key.js.map +1 -1
- package/dist/src/chat-commands/types.d.ts +4 -0
- package/dist/src/cli/commands/browser-cli-helpers.js +11 -5
- package/dist/src/cli/commands/browser-cli-helpers.js.map +1 -1
- package/dist/src/cli/commands/config.js +1 -1
- package/dist/src/cli/commands/doctor/checks/channel-config.js +14 -1
- package/dist/src/cli/commands/doctor/checks/channel-config.js.map +1 -1
- package/dist/src/cli/commands/doctor/checks/config-health.js +1 -1
- package/dist/src/cli/commands/doctor/checks/database-schema.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 +8 -8
- package/dist/src/cli/commands/doctor/checks/session-integrity.js.map +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-create.js +1 -1
- package/dist/src/cli/commands/extension-dev.js +2 -2
- package/dist/src/cli/commands/extension-marketplace.js +2 -2
- package/dist/src/cli/commands/extension-pack.js +2 -2
- package/dist/src/cli/commands/extension.js +3 -3
- package/dist/src/cli/commands/gateway/logs.js +1 -1
- package/dist/src/cli/commands/image.js +1 -1
- package/dist/src/cli/commands/init.js +2 -2
- package/dist/src/cli/commands/models.js +1 -1
- package/dist/src/cli/commands/skills-test.js +1 -1
- package/dist/src/cli/templates.js +1 -1
- package/dist/src/cli/utils/gateway-client.js +1 -1
- package/dist/src/cli/utils/init-workspace-core.js +2 -2
- package/dist/src/config/agent-profile.js +1 -1
- package/dist/src/config/agent-typed-models.js +1 -1
- package/dist/src/config/gateway-bind.js +1 -1
- package/dist/src/config/index.js +7 -7
- package/dist/src/config/loader.js +4 -4
- package/dist/src/config/models-json.js +2 -2
- package/dist/src/config/paths-state.js +1 -1
- package/dist/src/config/paths.js +1 -1
- package/dist/src/config/profile.js +1 -1
- package/dist/src/config/reload.js +1 -1
- package/dist/src/config/rules.js +5 -0
- package/dist/src/config/rules.js.map +1 -1
- package/dist/src/config/schema.d.ts +8 -0
- package/dist/src/config/schema.js +7 -0
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/config/web-patch.d.ts +1 -0
- package/dist/src/config/web-patch.js +1 -0
- package/dist/src/config/web-patch.js.map +1 -1
- package/dist/src/config/workspace-path.js +1 -1
- package/dist/src/connectors/builtin-catalog.js +180 -1
- package/dist/src/connectors/builtin-catalog.js.map +1 -1
- package/dist/src/connectors/health.js +18 -9
- package/dist/src/connectors/health.js.map +1 -1
- package/dist/src/connectors/types.d.ts +19 -0
- package/dist/src/connectors/usage.js +12 -4
- package/dist/src/connectors/usage.js.map +1 -1
- package/dist/src/cron/executor.js +1 -1
- package/dist/src/cron/service.js +1 -1
- package/dist/src/daemon/constants.js +1 -1
- package/dist/src/daemon/install-plan.js +2 -2
- package/dist/src/daemon/launchd.js +2 -2
- package/dist/src/daemon/schtasks.js +2 -2
- package/dist/src/daemon/systemd.js +2 -2
- package/dist/src/extensions/bundle-mcp.js +1 -1
- package/dist/src/extensions/discover-extensions.js +2 -2
- package/dist/src/extensions/health.js +1 -1
- package/dist/src/extensions/install.js +2 -2
- package/dist/src/extensions/loader.js +2 -2
- package/dist/src/extensions/lockfile.js +3 -3
- package/dist/src/extensions/security.js +1 -1
- package/dist/src/extensions/types/tui.d.ts +2 -0
- package/dist/src/extensions/update.js +2 -2
- package/dist/src/gateway/agents-admin.js +2 -2
- package/dist/src/gateway/file-path-classifier.js +2 -2
- package/dist/src/gateway/heartbeat/service.js +13 -1
- package/dist/src/gateway/heartbeat/service.js.map +1 -1
- package/dist/src/gateway/hono/app.js +18 -5
- package/dist/src/gateway/hono/app.js.map +1 -1
- package/dist/src/gateway/hono/lib/config-payload.d.ts +3 -1
- package/dist/src/gateway/hono/lib/config-payload.js +7 -4
- 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/static-ui.js +2 -2
- package/dist/src/gateway/hono/middleware/strict-rate-limit.d.ts +4 -0
- package/dist/src/gateway/hono/middleware/strict-rate-limit.js +19 -5
- package/dist/src/gateway/hono/middleware/strict-rate-limit.js.map +1 -1
- package/dist/src/gateway/hono/oauth-async.js +1 -1
- package/dist/src/gateway/hono/routes/agent-stream.js +6 -6
- package/dist/src/gateway/hono/routes/agent-stream.js.map +1 -1
- package/dist/src/gateway/hono/routes/agents.js +1 -1
- package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
- package/dist/src/gateway/hono/routes/channels.js +18 -14
- package/dist/src/gateway/hono/routes/channels.js.map +1 -1
- package/dist/src/gateway/hono/routes/config-patch/gateway.d.ts +1 -1
- package/dist/src/gateway/hono/routes/config-patch/gateway.js +6 -0
- package/dist/src/gateway/hono/routes/config-patch/gateway.js.map +1 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -1
- package/dist/src/gateway/hono/routes/deps.d.ts +1 -0
- package/dist/src/gateway/hono/routes/dreaming.js +1 -1
- package/dist/src/gateway/hono/routes/goals.js +16 -3
- 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/logs.js +1 -0
- package/dist/src/gateway/hono/routes/logs.js.map +1 -1
- package/dist/src/gateway/hono/routes/mcp.js +27 -8
- package/dist/src/gateway/hono/routes/mcp.js.map +1 -1
- package/dist/src/gateway/hono/routes/models.js +1 -1
- package/dist/src/gateway/hono/routes/notes.js +14 -2
- package/dist/src/gateway/hono/routes/notes.js.map +1 -1
- package/dist/src/gateway/hono/routes/sessions.js +62 -4
- package/dist/src/gateway/hono/routes/sessions.js.map +1 -1
- package/dist/src/gateway/hono/routes/shares.js +1 -1
- package/dist/src/gateway/hono/routes/workflows.js +1 -1
- package/dist/src/gateway/hono/routes/workspace.js +5 -68
- package/dist/src/gateway/hono/routes/workspace.js.map +1 -1
- package/dist/src/gateway/hono/sse.d.ts +2 -2
- package/dist/src/gateway/hono/sse.js +7 -15
- package/dist/src/gateway/hono/sse.js.map +1 -1
- package/dist/src/gateway/lock.js +3 -3
- package/dist/src/gateway/ports.js +1 -1
- package/dist/src/gateway/rate-limit/buckets.d.ts +3 -0
- package/dist/src/gateway/rate-limit/buckets.js +12 -0
- package/dist/src/gateway/rate-limit/buckets.js.map +1 -1
- package/dist/src/gateway/resolve-webchat-session-key.d.ts +2 -6
- package/dist/src/gateway/resolve-webchat-session-key.js +5 -31
- package/dist/src/gateway/resolve-webchat-session-key.js.map +1 -1
- package/dist/src/gateway/service/agent-runner.d.ts +2 -3
- package/dist/src/gateway/service/agent-runner.js +9 -22
- package/dist/src/gateway/service/agent-runner.js.map +1 -1
- package/dist/src/gateway/service/config-coordinator.js +1 -1
- package/dist/src/gateway/service/marketplace-service.js +2 -2
- package/dist/src/gateway/service/run-gateway-agent.js +9 -7
- package/dist/src/gateway/service/run-gateway-agent.js.map +1 -1
- package/dist/src/gateway/service/sessions-api.d.ts +9 -0
- package/dist/src/gateway/service/sessions-api.js +11 -0
- package/dist/src/gateway/service/sessions-api.js.map +1 -1
- package/dist/src/gateway/service.d.ts +1 -1
- package/dist/src/gateway/service.js +23 -9
- package/dist/src/gateway/service.js.map +1 -1
- package/dist/src/gateway/workspace-file-search.d.ts +9 -0
- package/dist/src/gateway/workspace-file-search.js +76 -0
- package/dist/src/gateway/workspace-file-search.js.map +1 -0
- package/dist/src/gateway/workspace-fs-file-list.js +1 -1
- package/dist/src/goals/goal-notifications.d.ts +2 -0
- package/dist/src/goals/goal-notifications.js +16 -11
- package/dist/src/goals/goal-notifications.js.map +1 -1
- package/dist/src/goals/goal-service.js +1 -6
- package/dist/src/goals/goal-service.js.map +1 -1
- package/dist/src/goals/goal-workflow-judge.js +2 -2
- package/dist/src/i18n/goals-bundle.js +1 -1
- package/dist/src/i18n/index.js +1 -1
- package/dist/src/i18n/share-tool-bundle.js +2 -2
- package/dist/src/infra/brew.js +1 -1
- package/dist/src/infra/package-json.js +1 -1
- package/dist/src/infra/package-update-steps.js +1 -1
- package/dist/src/infra/path-env.js +2 -2
- package/dist/src/infra/restart.js +1 -1
- package/dist/src/infra/stable-node-path.js +1 -1
- package/dist/src/infra/update-check.js +1 -1
- package/dist/src/infra/update-global.js +1 -1
- package/dist/src/infra/update-lock.js +2 -2
- package/dist/src/infra/update-restart.js +1 -1
- package/dist/src/infra/update-runner.js +1 -1
- package/dist/src/infra/update-startup.js +1 -1
- package/dist/src/infra/write-file-atomic.js +2 -2
- package/dist/src/media/store.js +1 -1
- package/dist/src/notes/agent-context.js +1 -1
- package/dist/src/notes/service.js +1 -1
- package/dist/src/notes/store.js +2 -2
- package/dist/src/project-trust/trust-store.js +4 -2
- package/dist/src/project-trust/trust-store.js.map +1 -1
- package/dist/src/providers/auth-runtime/auth-profile-store.js +1 -1
- package/dist/src/providers/index.js +1 -1
- package/dist/src/providers/model-registry.js +4 -4
- package/dist/src/session/index.d.ts +1 -1
- package/dist/src/session/index.js +2 -2
- package/dist/src/session/init-session-turn.js +7 -10
- package/dist/src/session/init-session-turn.js.map +1 -1
- package/dist/src/session/manager.d.ts +5 -1
- package/dist/src/session/manager.js +5 -2
- package/dist/src/session/manager.js.map +1 -1
- package/dist/src/session/reset-type.d.ts +0 -2
- package/dist/src/session/reset-type.js +3 -9
- package/dist/src/session/reset-type.js.map +1 -1
- package/dist/src/session/resolve-session.js +10 -21
- package/dist/src/session/resolve-session.js.map +1 -1
- package/dist/src/session/session-title.js +2 -2
- package/dist/src/session/store.d.ts +11 -3
- package/dist/src/session/store.js +30 -14
- package/dist/src/session/store.js.map +1 -1
- package/dist/src/session/types.d.ts +2 -4
- package/dist/src/session/types.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-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/storage/sqlite/connection.js +1 -1
- package/dist/src/storage/sqlite/index.d.ts +2 -2
- package/dist/src/storage/sqlite/index.js +3 -3
- package/dist/src/storage/sqlite/memory-index-repository.js +2 -2
- package/dist/src/storage/sqlite/migrations/010_session_id_identity.sql +30 -0
- package/dist/src/storage/sqlite/migrations/discover.js +1 -1
- package/dist/src/storage/sqlite/migrations/runner.d.ts +2 -2
- package/dist/src/storage/sqlite/migrations/runner.js +5 -5
- package/dist/src/storage/sqlite/migrations/runner.js.map +1 -1
- package/dist/src/storage/sqlite/migrations/runner.ts +2 -2
- package/dist/src/storage/sqlite/row-mappers.d.ts +4 -4
- package/dist/src/storage/sqlite/row-mappers.js +11 -14
- package/dist/src/storage/sqlite/row-mappers.js.map +1 -1
- package/dist/src/storage/sqlite/schema.js +4 -4
- package/dist/src/storage/sqlite/schema.js.map +1 -1
- package/dist/src/storage/sqlite/schema.sql +37 -10
- package/dist/src/storage/sqlite/session-metadata.d.ts +2 -7
- package/dist/src/storage/sqlite/session-metadata.js +18 -72
- package/dist/src/storage/sqlite/session-metadata.js.map +1 -1
- package/dist/src/storage/sqlite/session-repository.d.ts +6 -5
- package/dist/src/storage/sqlite/session-repository.js +34 -40
- package/dist/src/storage/sqlite/session-repository.js.map +1 -1
- package/dist/src/storage/sqlite/transcript-repository.d.ts +2 -2
- package/dist/src/storage/sqlite/transcript-repository.js +52 -52
- package/dist/src/storage/sqlite/transcript-repository.js.map +1 -1
- package/dist/src/tui/backends/embedded-backend.d.ts +18 -4
- package/dist/src/tui/backends/embedded-backend.js +100 -1
- package/dist/src/tui/backends/embedded-backend.js.map +1 -1
- package/dist/src/tui/backends/gateway-sse-backend.d.ts +5 -1
- package/dist/src/tui/backends/gateway-sse-backend.js +45 -2
- 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.d.ts +2 -0
- package/dist/src/tui/components/chat-log.js +19 -0
- package/dist/src/tui/components/chat-log.js.map +1 -1
- package/dist/src/tui/extension-host/autocomplete.d.ts +3 -2
- package/dist/src/tui/extension-host/autocomplete.js +29 -12
- package/dist/src/tui/extension-host/autocomplete.js.map +1 -1
- package/dist/src/tui/extension-host/load-extensions.js +1 -1
- package/dist/src/tui/extension-host/runtime.d.ts +12 -0
- package/dist/src/tui/extension-host/runtime.js +6 -4
- package/dist/src/tui/extension-host/runtime.js.map +1 -1
- package/dist/src/tui/theme-manager.js +1 -1
- package/dist/src/tui/tui-backend.d.ts +23 -0
- package/dist/src/tui/tui-command-formatters.js +4 -4
- package/dist/src/tui/tui-commands.d.ts +16 -3
- package/dist/src/tui/tui-commands.js +134 -27
- package/dist/src/tui/tui-commands.js.map +1 -1
- package/dist/src/tui/tui-file-autocomplete.d.ts +5 -0
- package/dist/src/tui/tui-file-autocomplete.js +26 -0
- package/dist/src/tui/tui-file-autocomplete.js.map +1 -0
- package/dist/src/tui/tui-keybindings-file.js +1 -1
- package/dist/src/tui/tui-picker-overlay.js +1 -1
- package/dist/src/tui/tui-scoped-models.js +2 -2
- package/dist/src/tui/tui-settings.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +1 -1
- package/dist/src/tui/tui-startup-text.js +1 -1
- package/dist/src/tui/tui-startup-text.js.map +1 -1
- package/dist/src/tui/tui.js +106 -17
- package/dist/src/tui/tui.js.map +1 -1
- package/dist/src/tunnel/frpc-binary.js +4 -4
- 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/context.d.ts +2 -2
- package/dist/src/utils/logger/context.js +2 -1
- package/dist/src/utils/logger/context.js.map +1 -1
- package/dist/src/utils/logger/log-store.js +2 -1
- package/dist/src/utils/logger/log-store.js.map +1 -1
- package/dist/src/utils/logger/pino-record.js +3 -0
- package/dist/src/utils/logger/pino-record.js.map +1 -1
- package/dist/src/utils/logger/rotation.js +1 -1
- package/dist/src/utils/logger/streams.js +1 -1
- package/dist/src/utils/logger/types.d.ts +5 -0
- package/dist/src/utils/logger/types.js.map +1 -1
- package/dist/src/voice/tts/audio.js +1 -1
- package/dist/src/voice/tts/providers/edge-speech.js +2 -2
- package/dist/src/workflows/draft/workflow-draft-service.js +1 -1
- package/dist/src/workflows/service/workflow-run-service.js +1 -1
- package/dist/src/workflows/service/workflow-session-bridge.js +13 -1
- package/dist/src/workflows/service/workflow-session-bridge.js.map +1 -1
- package/dist/src/workflows/store/event-store.js +1 -1
- package/dist/src/workflows/store/run-store.js +1 -1
- package/package.json +1 -1
- package/dist/gateway/static/root/assets/agent-browser-settings-page-rGbKc2Hh.js +0 -6
- package/dist/gateway/static/root/assets/agent-defaults-tabbed-page-CtwVbjOA.js +0 -1
- package/dist/gateway/static/root/assets/agents-CCBmGcwc.js +0 -71
- package/dist/gateway/static/root/assets/apps-page-xwCsJS15.js +0 -1
- package/dist/gateway/static/root/assets/channels-settings-C044DcYk.js +0 -1
- package/dist/gateway/static/root/assets/connectors-settings-8VEWUOTj.js +0 -2
- package/dist/gateway/static/root/assets/cron-page-DqmNGNOy.js +0 -3
- package/dist/gateway/static/root/assets/goal-detail-page-bv0VRDaf.js +0 -1
- package/dist/gateway/static/root/assets/goals-page-1Ywnt4Cb.js +0 -2
- package/dist/gateway/static/root/assets/goals-settings-ceEBjnfc.js +0 -1
- package/dist/gateway/static/root/assets/index-Cxm6xsps.js +0 -122
- package/dist/gateway/static/root/assets/index-b_R4tKqt.css +0 -1
- package/dist/gateway/static/root/assets/logs-page-B_wrxhee.js +0 -2
- package/dist/gateway/static/root/assets/messages-CkT-lcgP.js +0 -3
- package/dist/gateway/static/root/assets/models-hub-panel-D0JDSbNu.js +0 -2
- package/dist/gateway/static/root/assets/note-detail-page-DpFV-EO6.js +0 -2
- package/dist/gateway/static/root/assets/notes-page-CdkjTch8.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-DSYVAi96.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-CenkcVjF.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-D9sva86V.js +0 -1
- package/dist/gateway/static/root/assets/settings-page-DL35U0x0.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-Ctwbp9Er.js +0 -1
- package/dist/gateway/static/root/assets/shares-settings-DIM3JNsr.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-DAlNaNzL.js +0 -1
- package/dist/gateway/static/root/assets/skills-page-CLrHVzAt.js +0 -2
- package/dist/gateway/static/root/assets/voice-api-key-field-vYAO71Gn.js +0 -1
- package/dist/gateway/static/root/assets/workflow-page.utils-sgHjOXOm.js +0 -1
- package/dist/gateway/static/root/assets/workflows-page-DYyOTmFx.js +0 -18
|
@@ -1,3 +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{t as i}from"./cn-JdwAhgNB.js";import{t as a}from"./messages-CkT-lcgP.js";import{t as o}from"./locale-store-DjbfSsfA.js";import{i as s}from"./theme-store-CD2wtgZV.js";import{c,i as l,n as u,t as d}from"./fetch-NZmjSXLl.js";import{r as f}from"./toast-z0toXu32.js";import{i as p}from"./vendor-swr-BIWyz7Rc.js";import{$r as m,B as h,Bo as g,Cr as _,Di as v,Ds as y,Ea as b,Fo as x,Ft as S,H as C,Ha as w,Hi as T,Jr as E,Kr as D,L as O,Oa as k,Oi as A,Oo as j,Qr as M,Ss as N,Ti as P,U as F,V as I,Xr as L,Yr as R,Zr as z,_i as B,_r as V,as as H,ba as U,bo as W,br as G,ii as ee,is as K,ji as te,jo as ne,k as re,ki as q,o as ie,oi as ae,pa as oe,qa as se,qr as ce,ra as le,ro as ue,rs as de,ta as fe,ts as J,ua as pe,uo as me,vr as he,wi as ge,wr as _e,xi as ve,yr as ye,zn as be}from"./index-Cxm6xsps.js";import{t as xe}from"./markdown-editor-AssmZFx4.js";import{t as Se}from"./settings-advanced-gate-D9sva86V.js";import{n as Ce,t as we}from"./settings-form-section-Dq-83cQd.js";import{C as Y,S as Te,T as Ee,_ as De,a as Oe,b as ke,c as Ae,d as je,f as Me,g as Ne,h as Pe,i as Fe,l as Ie,m as Le,n as Re,o as ze,p as Be,r as Ve,s as He,t as Ue,u as We,v as Ge,w as Ke,x as qe,y as Je}from"./cron-api--pAB_rps.js";import{t as Ye}from"./cron-dreaming-jobs-nCMWCf0p.js";import{r as Xe}from"./interval-presets-DJmshV8n.js";import{t as Ze}from"./format-interval-label-qhth3BMV.js";import{t as Qe}from"./heartbeat-config-api-BzO6G4fD.js";import{h as $e,m as et,t as tt}from"./workflow-page.utils-sgHjOXOm.js";import{i as nt,n as rt,o as it,r as at,t as ot}from"./dist-By6Rh2ee.js";var X=e(t(),1),Z=n(),Q=r();function st(e){let t=(0,Z.c)(25),{open:n,onOpenChange:r,action:i,c:a,onDismiss:o,onConfirm:s}=e,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Q.jsx)(L,{className:`xopc-dialog-overlay fixed inset-0 z-[70] bg-scrim`}),t[0]=c):c=t[0];let l=i===`delete`?a.delete:a.runNow,u;t[1]===l?u=t[2]:(u=(0,Q.jsx)(m,{className:`text-base font-semibold text-fg`,children:l}),t[1]=l,t[2]=u);let d=i===`delete`?a.confirmDelete:a.confirmRun,f;t[3]===d?f=t[4]:(f=(0,Q.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:d}),t[3]=d,t[4]=f);let p;t[5]!==a.cancel||t[6]!==o?(p=(0,Q.jsx)(q,{type:`button`,variant:`secondary`,onClick:o,children:a.cancel}),t[5]=a.cancel,t[6]=o,t[7]=p):p=t[7];let h=i===`delete`?`bg-red-600 hover:bg-red-700`:void 0,g;t[8]===s?g=t[9]:(g=()=>void s(),t[8]=s,t[9]=g);let _=i===`delete`?a.delete:a.runNow,v;t[10]!==h||t[11]!==g||t[12]!==_?(v=(0,Q.jsx)(q,{type:`button`,variant:`primary`,className:h,onClick:g,children:_}),t[10]=h,t[11]=g,t[12]=_,t[13]=v):v=t[13];let y;t[14]!==v||t[15]!==p?(y=(0,Q.jsxs)(`div`,{className:`mt-4 flex justify-end gap-2`,children:[p,v]}),t[14]=v,t[15]=p,t[16]=y):y=t[16];let b;t[17]!==y||t[18]!==u||t[19]!==f?(b=(0,Q.jsxs)(z,{children:[c,(0,Q.jsx)(`div`,{className:`fixed inset-0 z-[70] flex items-center justify-center p-4 pointer-events-none`,children:(0,Q.jsxs)(E,{className:`xopc-dialog-content-pane pointer-events-auto relative w-full max-w-md rounded-xl border border-edge bg-surface-panel p-4 shadow-popover dark:border-edge`,children:[u,f,y]})})]}),t[17]=y,t[18]=u,t[19]=f,t[20]=b):b=t[20];let x;return t[21]!==r||t[22]!==n||t[23]!==b?(x=(0,Q.jsx)(M,{open:n,onOpenChange:r,children:b}),t[21]=r,t[22]=n,t[23]=b,t[24]=x):x=t[24],x}var ct={enabled:!0,maxConcurrentJobs:5,historyRetentionDays:7,enableMetrics:!0};function lt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ut(e){let t=lt(e)?e:{},n=lt(t.cron)?t.cron:{};return{enabled:n.enabled!==!1,maxConcurrentJobs:typeof n.maxConcurrentJobs==`number`&&Number.isFinite(n.maxConcurrentJobs)?Math.max(1,Math.min(100,Math.floor(n.maxConcurrentJobs))):ct.maxConcurrentJobs,historyRetentionDays:typeof n.historyRetentionDays==`number`&&Number.isFinite(n.historyRetentionDays)?Math.max(1,Math.min(365,Math.floor(n.historyRetentionDays))):ct.historyRetentionDays,enableMetrics:n.enableMetrics!==!1}}async function dt(e){await u(l(`/api/config`),{method:`PATCH`,body:JSON.stringify({cron:e})}),ye()}function ft(){return i(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,A,`dark:border-edge`)}function pt(){return{form:null,baseline:null,saving:!1,error:null,saveOk:!1,dirty:!1}}function mt(e,t){switch(t.type){case`sync`:return{...e,form:structuredClone(t.parsed),baseline:structuredClone(t.parsed),saveOk:!1,dirty:!1};case`patch`:return e.form?{...e,form:{...e.form,...t.patch},dirty:!0,saveOk:!1}:e;case`discard`:return e.baseline?{...e,form:structuredClone(e.baseline),dirty:!1}:e;case`saveStart`:return{...e,saving:!0,error:null};case`saveSuccess`:return e.form?{...e,saving:!1,baseline:structuredClone(e.form),dirty:!1,saveOk:!0}:{...e,saving:!1};case`saveError`:return{...e,saving:!1,error:t.error};case`clearSaveOk`:return{...e,saveOk:!1}}}function ht({hasToken:e}){let t=a(o(e=>e.language)).cron.globals,{data:n,isLoading:r}=G(e),i=(0,X.useMemo)(()=>n?.payload?.config===void 0?null:structuredClone(ut(n.payload.config)),[n]),[s,c]=(0,X.useReducer)(mt,void 0,pt),l=(0,X.useRef)(null);(0,X.useEffect)(()=>{!e||i===null||s.dirty||l.current===i||(l.current=i,c({type:`sync`,parsed:i}))},[e,i,s.dirty]);let u=(0,X.useMemo)(()=>!!(s.form&&s.baseline&&JSON.stringify(s.form)!==JSON.stringify(s.baseline)),[s.form,s.baseline]),d=(0,X.useCallback)(e=>{c({type:`patch`,patch:e})},[]),p=(0,X.useCallback)(async()=>{if(!(!s.form||s.saving)){c({type:`saveStart`});try{await dt(s.form),c({type:`saveSuccess`}),f({type:`success`,title:t.saved})}catch(e){c({type:`saveError`,error:e instanceof Error?e.message:t.saveError})}}},[t.saveError,s.form,s.saving]);return!e||!s.form?r?(0,Q.jsx)(we,{children:(0,Q.jsxs)(`p`,{className:`flex items-center gap-2 text-sm text-fg-muted`,children:[(0,Q.jsx)(se,{className:`size-4 animate-spin`}),t.loading]})}):null:(0,Q.jsxs)(we,{children:[(0,Q.jsx)(Ce,{icon:g,title:t.title,subtitle:t.hint}),(0,Q.jsxs)(`div`,{className:`mb-4 flex flex-wrap items-center justify-end gap-2`,children:[(0,Q.jsx)(q,{type:`button`,variant:`secondary`,disabled:!u||s.saving,onClick:()=>c({type:`discard`}),children:t.discard}),(0,Q.jsx)(q,{type:`button`,variant:`primary`,disabled:!u||s.saving,onClick:()=>void p(),children:s.saving?t.saving:t.save})]}),s.error?(0,Q.jsx)(`p`,{className:`mb-3 text-sm text-red-600 dark:text-red-400`,children:s.error}):null,(0,Q.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,Q.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg sm:col-span-2`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:s.form.enabled,onChange:e=>d({enabled:e.target.checked})}),t.enabled]}),(0,Q.jsxs)(Se,{children:[(0,Q.jsx)(gt,{label:t.maxConcurrent,value:s.form.maxConcurrentJobs,min:1,max:100,disabled:!s.form.enabled,onChange:e=>d({maxConcurrentJobs:e})}),(0,Q.jsx)(gt,{label:t.retentionDays,value:s.form.historyRetentionDays,min:1,max:365,disabled:!s.form.enabled,onChange:e=>d({historyRetentionDays:e})}),(0,Q.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:s.form.enableMetrics,disabled:!s.form.enabled,onChange:e=>d({enableMetrics:e.target.checked})}),t.metrics]})]})]})]})}function gt(e){let t=(0,Z.c)(13),{label:n,value:r,min:a,max:o,disabled:s,text:c,onChange:l,onTextChange:u}=e,d;t[0]===n?d=t[1]:(d=(0,Q.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n}),t[0]=n,t[1]=d);let f;t[2]!==s||t[3]!==o||t[4]!==a||t[5]!==l||t[6]!==u||t[7]!==c||t[8]!==r?(f=c?(0,Q.jsx)(`input`,{className:i(ft(),`font-mono text-xs`),value:String(r),disabled:s,onChange:e=>u?.(e.target.value)}):(0,Q.jsx)(`input`,{type:`number`,min:a,max:o,disabled:s,className:i(ft(),`max-w-xs font-mono text-xs`),value:typeof r==`number`?r:0,onChange:e=>{let t=Number(e.target.value);Number.isFinite(t)&&l&&a!==void 0&&o!==void 0&&l(Math.max(a,Math.min(o,Math.floor(t))))}}),t[2]=s,t[3]=o,t[4]=a,t[5]=l,t[6]=u,t[7]=c,t[8]=r,t[9]=f):f=t[9];let p;return t[10]!==d||t[11]!==f?(p=(0,Q.jsxs)(`div`,{children:[d,f]}),t[10]=d,t[11]=f,t[12]=p):p=t[12],p}var _t=`*/5 * * * *`;function vt(e){let t=new Date(e);return t.setHours(0,0,0,0),t}function yt(e){let t=vt(e),n=t.getDay(),r=n===0?-6:1-n;return t.setDate(t.getDate()+r),t}function bt(e){return new Date(e.getFullYear(),e.getMonth(),1,0,0,0,0)}function xt(e){let t=e?.trim();t&&window.dispatchEvent(new CustomEvent(`navigate-to-chat`,{detail:{sessionKey:t},bubbles:!0}))}function St(e){let t=e?.trim();t&&(window.location.hash=`/workflows?run=${encodeURIComponent(t)}`)}function Ct(e){return i(`w-full rounded-md border border-edge bg-surface-base px-3 py-2 text-sm text-fg placeholder:text-fg-disabled`,ge,e&&`cursor-not-allowed opacity-60`)}function wt(){return i(v,P)}var Tt=i(v,`w-full text-xs sm:w-auto sm:min-w-[11rem] sm:max-w-[17rem] sm:shrink-0`),Et=i(v,`w-auto min-w-[9rem] max-w-[14rem] shrink-0 text-xs`);function Dt(e){return e===`settings`?`settings`:e===`system`||e===`systemTasks`?`systemTasks`:e===`history`?`history`:`myTasks`}function Ot(e){return e===`myTasks`?null:e===`systemTasks`?`system`:e===`history`?`history`:`settings`}var kt=34,At=62,jt=46;function $(e){return Math.max(kt,Math.min(At,e))}function Mt(e){switch(e){case`success`:return`bg-emerald-500/15 text-emerald-800 dark:text-emerald-300`;case`failed`:return`bg-red-500/15 text-red-800 dark:text-red-300`;case`running`:return`bg-accent/15 text-accent`;case`cancelled`:return`bg-surface-hover text-fg-muted`;default:return`bg-surface-hover text-fg-muted`}}function Nt(e,t){return e.payload.kind===`workflowRun`?t.taskKindWorkflowRun:e.payload.kind===`agentTurn`?t.taskKindMessage:t.modeDirectOption}function Pt(e){return e.length===0?null:e.find(e=>e.status===`failed`)?.id??e[0]?.id??null}function Ft(e){let t=(0,Z.c)(56),{row:n,expanded:r,onToggle:a,c:o,statusLabels:s}=e,c=n.error||n.summary||n.output||``,l;t[0]===c?l=t[1]:(l=c.trim(),t[0]=c,t[1]=l);let u=l,d=u.length>0,f;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Q.jsx)(`div`,{className:`mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg bg-surface-hover`,children:(0,Q.jsx)(g,{className:`size-4 text-fg-muted`,strokeWidth:1.75,"aria-hidden":!0})}),t[2]=f):f=t[2];let p=n.startedAt,m;t[3]===n.startedAt?m=t[4]:(m=Y(n.startedAt),t[3]=n.startedAt,t[4]=m);let h;t[5]!==n.startedAt||t[6]!==m?(h=(0,Q.jsx)(`time`,{className:`text-sm font-medium text-fg`,dateTime:p,children:m}),t[5]=n.startedAt,t[6]=m,t[7]=h):h=t[7];let _;t[8]===n.status?_=t[9]:(_=i(`inline-flex rounded-md px-2 py-0.5 text-xs font-medium`,Mt(n.status)),t[8]=n.status,t[9]=_);let v;t[10]!==n.status||t[11]!==s?(v=De(n.status,s),t[10]=n.status,t[11]=s,t[12]=v):v=t[12];let y;t[13]!==_||t[14]!==v?(y=(0,Q.jsx)(`span`,{className:_,children:v}),t[13]=_,t[14]=v,t[15]=y):y=t[15];let b;t[16]===n.duration?b=t[17]:(b=Je(n.duration),t[16]=n.duration,t[17]=b);let x;t[18]===b?x=t[19]:(x=(0,Q.jsx)(`span`,{className:`text-xs text-fg-muted`,children:b}),t[18]=b,t[19]=x);let S;t[20]!==x||t[21]!==h||t[22]!==y?(S=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[h,y,x]}),t[20]=x,t[21]=h,t[22]=y,t[23]=S):S=t[23];let C;t[24]!==u||t[25]!==r||t[26]!==d?(C=!r&&d?(0,Q.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs leading-relaxed text-fg-muted`,children:u}):null,t[24]=u,t[25]=r,t[26]=d,t[27]=C):C=t[27];let T;t[28]!==u||t[29]!==r||t[30]!==d?(T=r&&d?(0,Q.jsx)(`pre`,{className:`mt-2 max-h-40 overflow-y-auto whitespace-pre-wrap break-words rounded-lg border border-edge-subtle bg-surface-panel/80 p-2.5 font-mono text-xs leading-relaxed text-fg-muted`,children:u}):null,t[28]=u,t[29]=r,t[30]=d,t[31]=T):T=t[31];let E;t[32]!==S||t[33]!==C||t[34]!==T?(E=(0,Q.jsxs)(`div`,{className:`flex items-start gap-3 px-3 py-3`,children:[f,(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[S,C,T]})]}),t[32]=S,t[33]=C,t[34]=T,t[35]=E):E=t[35];let D;t[36]!==o||t[37]!==r||t[38]!==d||t[39]!==a?(D=d?(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,className:`h-8 px-2 text-xs`,onClick:a,children:[(0,Q.jsx)(de,{className:i(`size-3.5 transition-transform`,r&&`rotate-180`),strokeWidth:1.75,"aria-hidden":!0}),r?o.detailCollapseRun:o.detailExpandRun]}):null,t[36]=o,t[37]=r,t[38]=d,t[39]=a,t[40]=D):D=t[40];let O;t[41]!==o||t[42]!==n.workflowRunId?(O=n.workflowRunId?.trim()?(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,className:`h-8 gap-1.5 px-2.5 text-xs`,title:o.openWorkflowTitle,onClick:()=>St(n.workflowRunId),children:[(0,Q.jsx)(W,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),o.openWorkflow]}):null,t[41]=o,t[42]=n.workflowRunId,t[43]=O):O=t[43];let k;t[44]!==o||t[45]!==n.sessionKey?(k=n.sessionKey?.trim()?(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,className:`h-8 gap-1.5 px-2.5 text-xs`,title:o.openChatTitle,onClick:()=>xt(n.sessionKey),children:[(0,Q.jsx)(w,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),o.openChat]}):null,t[44]=o,t[45]=n.sessionKey,t[46]=k):k=t[46];let A;t[47]!==O||t[48]!==k?(A=(0,Q.jsxs)(`div`,{className:`ml-auto flex flex-wrap items-center gap-2`,children:[O,k]}),t[47]=O,t[48]=k,t[49]=A):A=t[49];let j;t[50]!==D||t[51]!==A?(j=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-t border-edge-subtle px-3 py-2 dark:border-edge-subtle`,children:[D,A]}),t[50]=D,t[51]=A,t[52]=j):j=t[52];let M;return t[53]!==E||t[54]!==j?(M=(0,Q.jsxs)(`article`,{className:`rounded-xl border border-edge-subtle bg-surface-base dark:border-edge-subtle`,children:[E,j]}),t[53]=E,t[54]=j,t[55]=M):M=t[55],M}function It(e){let t=(0,Z.c)(13),{icon:n,label:r,value:a,valueClassName:o}=e,s;t[0]===n?s=t[1]:(s=(0,Q.jsx)(n,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[0]=n,t[1]=s);let c;t[2]!==r||t[3]!==s?(c=(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] font-medium uppercase tracking-wide text-fg-subtle`,children:[s,r]}),t[2]=r,t[3]=s,t[4]=c):c=t[4];let l;t[5]===o?l=t[6]:(l=i(`mt-1 truncate text-sm font-medium text-fg`,o),t[5]=o,t[6]=l);let u;t[7]!==l||t[8]!==a?(u=(0,Q.jsx)(`p`,{className:l,children:a}),t[7]=l,t[8]=a,t[9]=u):u=t[9];let d;return t[10]!==c||t[11]!==u?(d=(0,Q.jsxs)(`div`,{className:`min-w-0 rounded-xl border border-edge-subtle bg-surface-base/80 px-3 py-2.5 dark:border-edge-subtle`,children:[c,u]}),t[10]=c,t[11]=u,t[12]=d):d=t[12],d}function Lt({open:e,onDismiss:t,detailJob:n,detailLoading:r,actionNotice:a,detailHistory:o,c:s,localeTag:c,scheduleBadgeLabels:l,chatWorkingDirNotSet:u,statusLabels:d,onEdit:f,onRunNow:p,onToggle:h,onDelete:_}){let[v,y]=(0,X.useState)(null),[b,S]=(0,X.useState)(!1),[C,D]=(0,X.useState)(jt),[O,A]=(0,X.useState)(!1),j=(0,X.useRef)(null),N=(0,X.useMemo)(()=>{let e=0,t=0;for(let n of o)n.status===`success`&&(e+=1),n.status===`failed`&&(t+=1);return{success:e,failed:t}},[o]),P=o[0]??null;(0,X.useEffect)(()=>{if(!e){y(null),S(!1);return}y(Pt(o))},[e,n?.id,o]);let F=(0,X.useCallback)(async()=>{n?.schedule&&await B(Ke(n.schedule))&&(S(!0),window.setTimeout(()=>S(!1),1500))},[n?.schedule]),I=n?Te(n,c,l):`—`,R=(0,X.useCallback)(e=>{e.preventDefault();let t=j.current;if(!t)return;let n=t.getBoundingClientRect(),r=e.currentTarget,i=e.pointerId;r.setPointerCapture(i),A(!0);let a=e=>{D($((e-n.left)/n.width*100))};a(e.clientX);let o=e=>{a(e.clientX)},s=()=>{try{r.releasePointerCapture(i)}catch{}A(!1),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)};window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s)},[]),V=(0,X.useCallback)(e=>{e.key===`ArrowLeft`?(e.preventDefault(),D(e=>$(e-4))):e.key===`ArrowRight`?(e.preventDefault(),D(e=>$(e+4))):e.key===`Home`?(e.preventDefault(),D(kt)):e.key===`End`&&(e.preventDefault(),D(At))},[]);return(0,Q.jsx)(M,{open:e,onOpenChange:e=>{e||t()},children:(0,Q.jsxs)(z,{children:[(0,Q.jsx)(L,{className:`xopc-dialog-overlay fixed inset-0 z-[60] bg-scrim backdrop-blur-[1px]`}),(0,Q.jsx)(`div`,{className:`fixed inset-0 z-[60] flex items-center justify-center p-4 pointer-events-none`,children:(0,Q.jsxs)(E,{className:i(`xopc-dialog-content-pane pointer-events-auto relative flex h-[min(86vh,46rem)] w-full max-w-6xl flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,`dark:border-edge`),"aria-describedby":void 0,children:[(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-4 py-3`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(m,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:n?.name?.trim()||n?.id||`—`}),n?(0,Q.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs text-fg-muted`,children:I}):null]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[n?(0,Q.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":n.enabled,"aria-label":n.enabled?s.enabled:s.disabled,className:i(`inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-edge p-0.5 transition-colors`,n.enabled?`justify-end bg-accent`:`justify-start bg-surface-hover`),onClick:()=>h(n,!n.enabled),children:(0,Q.jsx)(`span`,{className:`size-4 rounded-full bg-surface-panel shadow-surface ring-1 ring-edge/40 dark:ring-edge/55`})}):null,(0,Q.jsx)(ce,{asChild:!0,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":s.close,children:(0,Q.jsx)(te,{className:`size-5`,strokeWidth:1.75})})})]})]}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-4 py-4 lg:overflow-hidden`,children:r?(0,Q.jsx)(`div`,{className:`flex justify-center py-16`,children:(0,Q.jsx)(se,{className:`size-8 animate-spin text-accent`,strokeWidth:1.75})}):n?(0,Q.jsxs)(`div`,{className:`flex min-h-full flex-col gap-4 lg:h-full lg:min-h-0`,children:[a?(0,Q.jsx)(`div`,{className:i(`rounded-xl border px-3 py-2 text-sm`,a.kind===`error`?`border-amber-200 bg-amber-50 text-amber-900 dark:border-amber-900/50 dark:bg-amber-950/40 dark:text-amber-100`:`border-accent/25 bg-accent/5 text-fg dark:border-accent/30 dark:bg-accent/10`),role:`alert`,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between`,children:[(0,Q.jsx)(`p`,{children:a.message}),a.sessionKey?(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,className:`h-8 shrink-0 gap-1.5 px-2.5 text-xs`,onClick:()=>xt(a.sessionKey),children:[(0,Q.jsx)(w,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),s.openChat]}):null]})}):null,(0,Q.jsxs)(`div`,{ref:j,className:`grid min-h-0 grid-cols-1 gap-4 lg:flex-1 lg:[grid-template-columns:minmax(0,var(--cron-detail-config-pane))_0.75rem_minmax(23rem,1fr)] lg:gap-0`,style:{"--cron-detail-config-pane":`${C}%`},children:[(0,Q.jsx)(`div`,{className:`rounded-2xl border border-edge bg-surface-base/35 p-4 lg:min-h-0 lg:overflow-y-auto`,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,Q.jsxs)(`section`,{children:[(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:s.scheduleLabel}),(0,Q.jsxs)(`div`,{className:`mt-2 rounded-xl border border-edge-subtle bg-surface-base/80 px-3 py-3 dark:border-edge-subtle`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Q.jsx)(`p`,{className:`min-w-0 flex-1 text-sm font-medium leading-relaxed text-fg`,children:I}),(0,Q.jsx)(q,{type:`button`,variant:`secondary`,className:`size-8 shrink-0 p-0`,title:s.detailCopySchedule,"aria-label":s.detailCopySchedule,onClick:()=>void F(),children:b?(0,Q.jsx)(K,{className:`size-3.5 text-emerald-600 dark:text-emerald-400`,strokeWidth:1.75}):(0,Q.jsx)(x,{className:`size-3.5`,strokeWidth:1.75})})]}),(0,Q.jsxs)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:[(0,Q.jsxs)(`span`,{className:`font-medium text-fg-subtle`,children:[s.detailCronTechnical,`: `]}),(0,Q.jsx)(`code`,{className:`font-mono`,children:Ke(n.schedule)})]})]})]}),(0,Q.jsxs)(`section`,{"aria-label":s.statsRegion,children:[(0,Q.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,Q.jsx)(It,{icon:H,label:s.nextRun,value:n.nextRunAtMs?ke(new Date(n.nextRunAtMs).toISOString(),s.timeLabels):`—`}),(0,Q.jsx)(It,{icon:g,label:s.detailLastRun,value:P?De(P.status,d):s.detailNoRecentRuns,valueClassName:P?.status===`failed`?`text-red-700 dark:text-red-300`:P?.status===`success`?`text-emerald-800 dark:text-emerald-300`:void 0})]}),o.length>0?(0,Q.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:s.detailRunCount.replace(`{{success}}`,String(N.success)).replace(`{{failed}}`,String(N.failed))}):null]}),(0,Q.jsxs)(`section`,{children:[(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:s.detailWhatItDoes}),(0,Q.jsxs)(`div`,{className:`mt-2 rounded-xl border border-edge-subtle bg-surface-base/80 p-3 dark:border-edge-subtle`,children:[(0,Q.jsx)(`div`,{className:`mb-2 inline-flex rounded-md bg-surface-hover px-2 py-0.5 text-[11px] font-medium text-fg-muted`,children:Nt(n,s)}),(0,Q.jsx)(`div`,{className:`min-w-0 break-words text-fg [&_.markdown-body]:text-sm [&_.markdown-body]:leading-relaxed`,children:(0,Q.jsx)(be,{content:Fe(n),compact:!0,className:`text-sm`})})]})]}),(0,Q.jsxs)(`section`,{children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(pe,{className:`size-4 shrink-0 text-fg-subtle`,strokeWidth:1.75,"aria-hidden":!0}),(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:s.detailRunSettings})]}),(0,Q.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:s.detailRunSettingsHint}),(0,Q.jsxs)(`dl`,{className:`mt-3 grid gap-3 rounded-xl border border-edge-subtle bg-surface-base/80 px-3 py-3 text-sm dark:border-edge-subtle`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.mode}),(0,Q.jsx)(`dd`,{className:`mt-1 text-fg`,children:n.sessionTarget===`isolated`?s.modeAgentOption:s.modeDirectOption})]}),n.sessionTarget===`isolated`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.agentProfile}),(0,Q.jsx)(`dd`,{className:`mt-1 font-mono text-sm text-fg`,children:n.agentId?.trim()?n.agentId.trim():s.agentProfileDefault})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.workingDirectoryLabel}),(0,Q.jsx)(`dd`,{className:`mt-1 break-all font-mono text-xs text-fg`,children:n.workingDirectory?.trim()?n.workingDirectory.trim():u})]})]}):null,n.delivery?.channel===`local`||n.sessionTarget===`isolated`&&!n.delivery?.to?(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.deliveryTarget}),(0,Q.jsx)(`dd`,{className:`mt-1 text-fg`,children:n.delivery?.channel===`local`?s.deliveryTargetLocalChannel:s.deliveryLocalOnly})]}):n.delivery?.to?(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.deliveryTarget}),(0,Q.jsxs)(`dd`,{className:`mt-1 break-words text-fg`,children:[(0,Q.jsx)(`code`,{className:`text-xs`,children:n.delivery?.channel??``}),` → `,Ge(n,s.channelLocal)]})]}):null,n.model?.trim()?(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:s.model}),(0,Q.jsx)(`dd`,{className:`mt-1 font-mono text-sm text-fg`,children:n.model.trim()})]}):null]})]})]})}),(0,Q.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,"aria-label":s.detailResizeColumns,"aria-valuemin":kt,"aria-valuemax":At,"aria-valuenow":Math.round(C),tabIndex:0,onPointerDown:R,onKeyDown:V,className:i(`group hidden h-full cursor-col-resize touch-none select-none items-stretch justify-center rounded-lg outline-none lg:flex`,`focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),children:(0,Q.jsx)(`span`,{className:i(`h-full w-px bg-edge-subtle transition-colors duration-150`,`group-hover:bg-edge`,O&&`bg-edge`)})}),(0,Q.jsxs)(`section`,{className:`rounded-2xl border border-edge bg-surface-base/35 p-4 lg:min-h-0 lg:overflow-y-auto`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:s.detailRunHistory}),o.length>0?(0,Q.jsx)(`span`,{className:`text-xs text-fg-muted`,children:o.length}):null]}),o.length===0?(0,Q.jsxs)(`div`,{className:`mt-2 rounded-xl border border-dashed border-edge-subtle px-4 py-8 text-center dark:border-edge-subtle`,children:[(0,Q.jsx)(g,{className:`mx-auto size-8 text-fg-disabled`,strokeWidth:1.25,"aria-hidden":!0}),(0,Q.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:s.noRunsYet})]}):(0,Q.jsx)(`ul`,{className:`mt-2 space-y-2`,children:o.map(e=>(0,Q.jsx)(`li`,{children:(0,Q.jsx)(Ft,{row:e,expanded:v===e.id,onToggle:()=>y(t=>t===e.id?null:e.id),c:s,statusLabels:d})},e.id))})]})]})]}):null}),n&&!r?(0,Q.jsx)(`div`,{className:`shrink-0 border-t border-edge px-4 py-3`,children:(0,Q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Q.jsxs)(q,{type:`button`,className:`gap-1.5`,onClick:()=>p(n),children:[(0,Q.jsx)(k,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),s.runNow]}),(0,Q.jsx)(q,{type:`button`,variant:`secondary`,onClick:()=>f(n),children:s.edit}),(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,className:`ml-auto text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/40`,onClick:()=>_(n),children:[(0,Q.jsx)(T,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),s.delete]})]})}):null]})})]})})}function Rt(e){if(!e.trim())return null;try{return JSON.parse(e)}catch{return null}}function zt(e){return typeof e.message==`string`&&e.message.trim()?e.message:typeof e.error==`string`&&e.error.trim()?e.error:e.error&&typeof e.error==`object`&&typeof e.error.message==`string`?e.error.message:`AI suggestion failed`}function Bt(e,t={}){let n=Rt(e.split(`
|
|
2
|
-
`).filter(e=>e.startsWith(`data:`)).map(e=>e.slice(5).trimStart()).join(`
|
|
3
|
-
`));if(!n)return null;if(n.type===`text_delta`&&typeof n.delta==`string`)return t.onDelta?.(n.delta),null;if(n.type===`thinking_delta`&&typeof n.delta==`string`)return t.onThinkingDelta?.(n.delta),null;if(n.type===`done`&&typeof n.text==`string`)return n.text;if(n.type===`error`)throw Error(zt(n));return null}async function Vt(e,t={}){let n=await d(l(`/api/ai/text-assist`),{method:`POST`,headers:{Accept:`text/event-stream`},body:JSON.stringify(e)});if(!n.ok){let e=await n.json().catch(()=>({})),t=typeof e.error==`string`?e.error:e.error?.message;throw Error(t||`AI suggestion failed (${n.status})`)}if(!n.body){let e=await n.json().catch(()=>null);if(e?.text)return e;throw Error(`AI suggestion stream is empty`)}let r=n.body.getReader(),i=new TextDecoder,a=``,o=``,s=``;for(;;){let{done:e,value:n}=await r.read();if(n){a+=i.decode(n,{stream:!e});let r=a.split(/\r?\n\r?\n/);a=r.pop()??``;for(let e of r){let n=Bt(e,{onDelta:e=>{o+=e,t.onDelta?.(e)},onThinkingDelta:e=>{s+=e,t.onThinkingDelta?.(e)}});n!==null&&(o=n)}}if(e)break}if(a.trim()){let e=Bt(a,{onDelta:e=>{o+=e,t.onDelta?.(e)},onThinkingDelta:e=>{s+=e,t.onThinkingDelta?.(e)}});e!==null&&(o=e)}let c=o.trim();if(!c)throw Error(`AI returned an empty suggestion`);return{text:c,thinking:s.trim()||void 0}}function Ht(){let[e,t]=(0,X.useState)(``),[n,r]=(0,X.useState)(``),[i,a]=(0,X.useState)(!1),[o,s]=(0,X.useState)(null);return{suggestion:e,thinking:n,loading:i,error:o,generate:(0,X.useCallback)(async e=>{a(!0),s(null),t(``),r(``);try{let n=await Vt(e,{onDelta:e=>{t(t=>t+e)},onThinkingDelta:e=>{r(t=>t+e)}});return t(n.text),r(n.thinking??``),n.text}catch(e){return s(e instanceof Error?e.message:`AI suggestion failed`),null}finally{a(!1)}},[]),reset:(0,X.useCallback)(()=>{t(``),r(``),s(null),a(!1)},[])}}var Ut=5;function Wt(e){return e.startsWith(`zh`)?{title:`AI 优化文案`,buttonTitle:`优化文案`,current:`当前内容`,suggestion:`AI 建议`,editedSuggestion:`审核并编辑建议`,thinking:`模型思考`,thinkingLoading:`思考中`,edit:`编辑`,preview:`预览`,loading:`正在生成建议...`,empty:`暂无内容`,regenerate:`重新生成`,applyCurrent:`应用当前内容`,replace:`替换`,append:`追加`,cancel:`取消`,close:`关闭`}:{title:`AI text assist`,buttonTitle:`Improve text`,current:`Current`,suggestion:`Suggestion`,editedSuggestion:`Review and edit suggestion`,thinking:`Model thinking`,thinkingLoading:`Thinking`,edit:`Edit`,preview:`Preview`,loading:`Generating suggestion...`,empty:`No content`,regenerate:`Regenerate`,applyCurrent:`Apply current`,replace:`Replace`,append:`Append`,cancel:`Cancel`,close:`Close`}}function Gt(e){let t=(0,Z.c)(228),{value:n,onApply:r,fieldId:a,fieldLabel:o,scenario:s,format:c,intent:l,locale:u,context:d,disabled:f,className:p,showLabel:h}=e,g=s===void 0?`generic.text`:s,_=c===void 0?`plain`:c,v=l===void 0?`improve`:l,y=h===void 0?!0:h,[b,x]=(0,X.useState)(!1),[S,C]=(0,X.useState)(n),[w,T]=(0,X.useState)(`preview`),[D,O]=(0,X.useState)(``),[k,A]=(0,X.useState)(`edit`),[N,P]=(0,X.useState)(!0),F=(0,X.useRef)(null),I=(0,X.useRef)(!0),{suggestion:R,thinking:B,loading:V,error:H,generate:W,reset:G}=Ht(),ee;t[0]===u?ee=t[1]:(ee=Wt(u),t[0]=u,t[1]=ee);let K=ee,ne;t[2]!==V||t[3]!==B?(ne=V&&B.trim().length>0,t[2]=V,t[3]=B,t[4]=ne):ne=t[4];let re=ne,ie,ae;t[5]!==b||t[6]!==n?(ie=()=>{b||C(n)},ae=[b,n],t[5]=b,t[6]=n,t[7]=ie,t[8]=ae):(ie=t[7],ae=t[8]),(0,X.useEffect)(ie,ae);let oe,se;t[9]===R?(oe=t[10],se=t[11]):(se=()=>{O(R)},oe=[R],t[9]=R,t[10]=oe,t[11]=se),(0,X.useEffect)(se,oe);let ue,J;t[12]===B?(ue=t[13],J=t[14]):(ue=()=>{B.trim()&&P(!0)},J=[B],t[12]=B,t[13]=ue,t[14]=J),(0,X.useEffect)(ue,J);let pe;t[15]!==re||t[16]!==N?(pe=()=>{let e=F.current;!e||!re||!N||I.current&&(e.scrollTop=e.scrollHeight)},t[15]=re,t[16]=N,t[17]=pe):pe=t[17];let me;t[18]!==re||t[19]!==B||t[20]!==N?(me=[re,B,N],t[18]=re,t[19]=B,t[20]=N,t[21]=me):me=t[21],(0,X.useLayoutEffect)(pe,me);let he;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(he=()=>{let e=F.current;e&&(I.current=e.scrollHeight-e.scrollTop-e.clientHeight<=Ut)},t[22]=he):he=t[22];let ge=he,_e;t[23]!==d||t[24]!==a||t[25]!==o||t[26]!==_||t[27]!==W||t[28]!==v||t[29]!==u||t[30]!==g?(_e=async e=>{A(`edit`),P(!0),I.current=!0,await W({intent:v,scenario:g,input:e,locale:u,field:{id:a,label:o,format:_},context:d})},t[23]=d,t[24]=a,t[25]=o,t[26]=_,t[27]=W,t[28]=v,t[29]=u,t[30]=g,t[31]=_e):_e=t[31];let ve=_e,ye;t[32]!==ve||t[33]!==n?(ye=async()=>{C(n),T(`preview`),x(!0),await ve(n)},t[32]=ve,t[33]=n,t[34]=ye):ye=t[34];let xe=ye,Se;t[35]!==S||t[36]!==ve?(Se=async()=>{await ve(S)},t[35]=S,t[36]=ve,t[37]=Se):Se=t[37];let Ce=Se,we;t[38]!==G||t[39]!==n?(we=()=>{x(!1),C(n),T(`preview`),O(``),A(`edit`),P(!0),G()},t[38]=G,t[39]=n,t[40]=we):we=t[40];let Y=we,Te;t[41]!==Y||t[42]!==S||t[43]!==r?(Te=()=>{r(S),Y()},t[41]=Y,t[42]=S,t[43]=r,t[44]=Te):Te=t[44];let Ee=Te,De;t[45]!==Y||t[46]!==D||t[47]!==r?(De=()=>{D.trim()&&(r(D),Y())},t[45]=Y,t[46]=D,t[47]=r,t[48]=De):De=t[48];let Oe=De,ke;t[49]!==Y||t[50]!==S||t[51]!==D||t[52]!==r?(ke=()=>{if(!D.trim())return;let e=S.trimEnd();r(e?`${e}\n\n${D}`:D),Y()},t[49]=Y,t[50]=S,t[51]=D,t[52]=r,t[53]=ke):ke=t[53];let Ae=ke,je;t[54]!==D||t[55]!==H||t[56]!==V?(je=!V&&!H&&D.trim().length>0,t[54]=D,t[55]=H,t[56]=V,t[57]=je):je=t[57];let Me=je,Ne=S!==n,Pe=!y&&`size-7 p-0`,Fe;t[58]!==p||t[59]!==Pe?(Fe=i(`h-7 gap-1 px-2 text-xs`,Pe,p),t[58]=p,t[59]=Pe,t[60]=Fe):Fe=t[60];let Ie=f||V,Le;t[61]===xe?Le=t[62]:(Le=()=>void xe(),t[61]=xe,t[62]=Le);let Re;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(Re=(0,Q.jsx)(le,{className:`size-3.5`,strokeWidth:1.75,"aria-hidden":!0}),t[63]=Re):Re=t[63];let ze=y?K.buttonTitle:null,Be;t[64]!==K.buttonTitle||t[65]!==Fe||t[66]!==Ie||t[67]!==Le||t[68]!==ze?(Be=(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,className:Fe,title:K.buttonTitle,"aria-label":K.buttonTitle,disabled:Ie,onClick:Le,children:[Re,ze]}),t[64]=K.buttonTitle,t[65]=Fe,t[66]=Ie,t[67]=Le,t[68]=ze,t[69]=Be):Be=t[69];let Ve;t[70]===Y?Ve=t[71]:(Ve=e=>e?x(!0):Y(),t[70]=Y,t[71]=Ve);let He;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(He=(0,Q.jsx)(L,{className:`xopc-dialog-overlay fixed inset-0 z-[80] bg-scrim`}),t[72]=He):He=t[72];let Ue;t[73]===K.title?Ue=t[74]:(Ue=(0,Q.jsx)(m,{className:`text-base font-semibold text-fg`,children:K.title}),t[73]=K.title,t[74]=Ue);let We;t[75]===Symbol.for(`react.memo_cache_sentinel`)?(We=(0,Q.jsx)(te,{className:`size-5`,strokeWidth:1.75}),t[75]=We):We=t[75];let Ge;t[76]===K.close?Ge=t[77]:(Ge=(0,Q.jsx)(ce,{asChild:!0,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":K.close,children:We})}),t[76]=K.close,t[77]=Ge);let Ke;t[78]!==Ue||t[79]!==Ge?(Ke=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-edge px-4 py-3`,children:[Ue,Ge]}),t[78]=Ue,t[79]=Ge,t[80]=Ke):Ke=t[80];let qe;t[81]===K.current?qe=t[82]:(qe=(0,Q.jsx)(`div`,{className:`min-w-0 text-xs font-medium text-fg-muted`,children:K.current}),t[81]=K.current,t[82]=qe);let Je=w===`edit`?`bg-surface-panel text-fg shadow-surface`:`text-fg-muted hover:bg-surface-hover`,Ye;t[83]===Je?Ye=t[84]:(Ye=i(`inline-flex h-7 items-center gap-1.5 rounded-md px-2 text-xs font-medium`,Je),t[83]=Je,t[84]=Ye);let Xe,Ze;t[85]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=()=>T(`edit`),Ze=(0,Q.jsx)(fe,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[85]=Xe,t[86]=Ze):(Xe=t[85],Ze=t[86]);let Qe;t[87]!==K.edit||t[88]!==Ye?(Qe=(0,Q.jsxs)(`button`,{type:`button`,className:Ye,onClick:Xe,children:[Ze,K.edit]}),t[87]=K.edit,t[88]=Ye,t[89]=Qe):Qe=t[89];let $e=w===`preview`?`bg-surface-panel text-fg shadow-surface`:`text-fg-muted hover:bg-surface-hover`,et;t[90]===$e?et=t[91]:(et=i(`inline-flex h-7 items-center gap-1.5 rounded-md px-2 text-xs font-medium`,$e),t[90]=$e,t[91]=et);let tt,nt;t[92]===Symbol.for(`react.memo_cache_sentinel`)?(tt=()=>T(`preview`),nt=(0,Q.jsx)(j,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[92]=tt,t[93]=nt):(tt=t[92],nt=t[93]);let rt;t[94]!==K.preview||t[95]!==et?(rt=(0,Q.jsxs)(`button`,{type:`button`,className:et,onClick:tt,children:[nt,K.preview]}),t[94]=K.preview,t[95]=et,t[96]=rt):rt=t[96];let it;t[97]!==Qe||t[98]!==rt?(it=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 rounded-lg border border-edge bg-surface-muted p-0.5`,children:[Qe,rt]}),t[97]=Qe,t[98]=rt,t[99]=it):it=t[99];let at;t[100]!==qe||t[101]!==it?(at=(0,Q.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[qe,it]}),t[100]=qe,t[101]=it,t[102]=at):at=t[102];let ot;t[103]!==S||t[104]!==w||t[105]!==_||t[106]!==K.current||t[107]!==K.empty?(ot=w===`preview`?(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto rounded-lg border border-edge bg-surface-base p-3 text-sm leading-6 text-fg`,children:_===`markdown`?(0,Q.jsx)(be,{content:S||K.empty,compact:!0,className:`text-sm`}):(0,Q.jsx)(`pre`,{className:`whitespace-pre-wrap text-sm leading-6 text-fg`,children:S||K.empty})}):(0,Q.jsx)(`textarea`,{className:`min-h-0 flex-1 resize-none overflow-auto rounded-lg border border-edge bg-surface-base p-3 text-sm leading-6 text-fg outline-none focus:border-accent focus:ring-2 focus:ring-accent/25`,value:S,onChange:e=>C(e.currentTarget.value),placeholder:K.empty,"aria-label":K.current}),t[103]=S,t[104]=w,t[105]=_,t[106]=K.current,t[107]=K.empty,t[108]=ot):ot=t[108];let st;t[109]!==at||t[110]!==ot?(st=(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden`,children:[at,ot]}),t[109]=at,t[110]=ot,t[111]=st):st=t[111];let ct;t[112]===K.editedSuggestion?ct=t[113]:(ct=(0,Q.jsx)(`span`,{children:K.editedSuggestion}),t[112]=K.editedSuggestion,t[113]=ct);let lt;t[114]!==K.loading||t[115]!==V?(lt=V?(0,Q.jsx)(`span`,{className:`ml-2 font-normal`,children:K.loading}):null,t[114]=K.loading,t[115]=V,t[116]=lt):lt=t[116];let ut;t[117]!==ct||t[118]!==lt?(ut=(0,Q.jsxs)(`div`,{className:`min-w-0 text-xs font-medium text-fg-muted`,children:[ct,lt]}),t[117]=ct,t[118]=lt,t[119]=ut):ut=t[119];let dt=k===`edit`?`bg-surface-panel text-fg shadow-surface`:`text-fg-muted hover:bg-surface-hover`,ft;t[120]===dt?ft=t[121]:(ft=i(`inline-flex h-7 items-center gap-1.5 rounded-md px-2 text-xs font-medium`,dt),t[120]=dt,t[121]=ft);let pt,mt;t[122]===Symbol.for(`react.memo_cache_sentinel`)?(pt=()=>A(`edit`),mt=(0,Q.jsx)(fe,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[122]=pt,t[123]=mt):(pt=t[122],mt=t[123]);let ht;t[124]!==K.edit||t[125]!==ft?(ht=(0,Q.jsxs)(`button`,{type:`button`,className:ft,onClick:pt,children:[mt,K.edit]}),t[124]=K.edit,t[125]=ft,t[126]=ht):ht=t[126];let gt=k===`preview`?`bg-surface-panel text-fg shadow-surface`:`text-fg-muted hover:bg-surface-hover`,_t;t[127]===gt?_t=t[128]:(_t=i(`inline-flex h-7 items-center gap-1.5 rounded-md px-2 text-xs font-medium`,gt),t[127]=gt,t[128]=_t);let vt,yt;t[129]===Symbol.for(`react.memo_cache_sentinel`)?(vt=()=>A(`preview`),yt=(0,Q.jsx)(j,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[129]=vt,t[130]=yt):(vt=t[129],yt=t[130]);let bt;t[131]!==K.preview||t[132]!==_t?(bt=(0,Q.jsxs)(`button`,{type:`button`,className:_t,onClick:vt,children:[yt,K.preview]}),t[131]=K.preview,t[132]=_t,t[133]=bt):bt=t[133];let xt;t[134]!==ht||t[135]!==bt?(xt=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 rounded-lg border border-edge bg-surface-muted p-0.5`,children:[ht,bt]}),t[134]=ht,t[135]=bt,t[136]=xt):xt=t[136];let St;t[137]!==ut||t[138]!==xt?(St=(0,Q.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[ut,xt]}),t[137]=ut,t[138]=xt,t[139]=St):St=t[139];let Ct=re?`opacity-100`:`pointer-events-none opacity-0`,wt;t[140]===Ct?wt=t[141]:(wt=i(`absolute inset-0 min-h-0 transition-opacity duration-200 ease-out motion-reduce:transition-none`,Ct),t[140]=Ct,t[141]=wt);let Tt=!re,Et;t[142]===Symbol.for(`react.memo_cache_sentinel`)?(Et=()=>P(Kt),t[142]=Et):Et=t[142];let Dt;t[143]!==K.thinkingLoading||t[144]!==V?(Dt=V?(0,Q.jsxs)(`span`,{className:`ml-1 font-normal`,children:[`· `,K.thinkingLoading]}):null,t[143]=K.thinkingLoading,t[144]=V,t[145]=Dt):Dt=t[145];let Ot;t[146]!==K.thinking||t[147]!==Dt?(Ot=(0,Q.jsxs)(`span`,{className:`min-w-0 truncate`,children:[K.thinking,Dt]}),t[146]=K.thinking,t[147]=Dt,t[148]=Ot):Ot=t[148];let kt=N&&`rotate-180`,At;t[149]===kt?At=t[150]:(At=i(`size-3.5 shrink-0 transition-transform`,kt),t[149]=kt,t[150]=At);let jt;t[151]===At?jt=t[152]:(jt=(0,Q.jsx)(de,{className:At,strokeWidth:1.75,"aria-hidden":!0}),t[151]=At,t[152]=jt);let $;t[153]!==Ot||t[154]!==jt?($=(0,Q.jsxs)(`button`,{type:`button`,className:`flex shrink-0 items-center justify-between gap-2 px-2.5 py-2 text-left text-xs font-medium text-fg-muted hover:text-fg`,onClick:Et,children:[Ot,jt]}),t[153]=Ot,t[154]=jt,t[155]=$):$=t[155];let Mt;t[156]!==B||t[157]!==N?(Mt=N?(0,Q.jsx)(`pre`,{ref:F,className:`min-h-0 flex-1 overflow-auto border-t border-edge px-2.5 py-2 whitespace-pre-wrap text-xs leading-5 text-fg-muted`,onScroll:ge,children:B}):null,t[156]=B,t[157]=N,t[158]=Mt):Mt=t[158];let Nt;t[159]!==$||t[160]!==Mt?(Nt=(0,Q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col rounded-lg border border-edge bg-surface-muted/70`,children:[$,Mt]}),t[159]=$,t[160]=Mt,t[161]=Nt):Nt=t[161];let Pt;t[162]!==wt||t[163]!==Tt||t[164]!==Nt?(Pt=(0,Q.jsx)(`div`,{className:wt,"aria-hidden":Tt,children:Nt}),t[162]=wt,t[163]=Tt,t[164]=Nt,t[165]=Pt):Pt=t[165];let Ft=re?`pointer-events-none opacity-0`:`opacity-100`,It;t[166]===Ft?It=t[167]:(It=i(`absolute inset-0 min-h-0 transition-opacity duration-200 ease-out motion-reduce:transition-none`,Ft),t[166]=Ft,t[167]=It);let Lt;t[168]!==D||t[169]!==H||t[170]!==_||t[171]!==K.empty||t[172]!==K.loading||t[173]!==K.suggestion||t[174]!==V||t[175]!==k?(Lt=H?(0,Q.jsx)(`pre`,{className:`h-full min-h-0 overflow-auto whitespace-pre-wrap rounded-lg border border-edge bg-surface-base p-3 text-sm leading-6 text-fg-muted`,children:H}):k===`preview`?(0,Q.jsx)(`div`,{className:`h-full min-h-0 overflow-auto rounded-lg border border-edge bg-surface-base p-3 text-sm leading-6 text-fg`,children:V&&!D.trim()?(0,Q.jsx)(`p`,{className:`text-sm text-fg-muted`,children:K.loading}):_===`markdown`?(0,Q.jsx)(be,{content:D||K.empty,compact:!0,className:`text-sm`}):(0,Q.jsx)(`pre`,{className:`whitespace-pre-wrap text-sm leading-6 text-fg`,children:D||K.empty})}):(0,Q.jsx)(`textarea`,{className:`h-full min-h-0 w-full resize-none overflow-auto rounded-lg border border-edge bg-surface-base p-3 text-sm leading-6 text-fg outline-none focus:border-accent focus:ring-2 focus:ring-accent/25 disabled:text-fg-muted`,value:D,onChange:e=>O(e.currentTarget.value),disabled:V,placeholder:V?K.loading:K.empty,"aria-label":K.suggestion}),t[168]=D,t[169]=H,t[170]=_,t[171]=K.empty,t[172]=K.loading,t[173]=K.suggestion,t[174]=V,t[175]=k,t[176]=Lt):Lt=t[176];let Rt;t[177]!==It||t[178]!==Lt?(Rt=(0,Q.jsx)(`div`,{className:It,children:Lt}),t[177]=It,t[178]=Lt,t[179]=Rt):Rt=t[179];let zt;t[180]!==Pt||t[181]!==Rt?(zt=(0,Q.jsxs)(`div`,{className:`relative min-h-0 flex-1 overflow-hidden`,children:[Pt,Rt]}),t[180]=Pt,t[181]=Rt,t[182]=zt):zt=t[182];let Bt;t[183]!==St||t[184]!==zt?(Bt=(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden`,children:[St,zt]}),t[183]=St,t[184]=zt,t[185]=Bt):Bt=t[185];let Vt;t[186]!==st||t[187]!==Bt?(Vt=(0,Q.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-1 gap-3 overflow-hidden p-4 md:grid-cols-2`,children:[st,Bt]}),t[186]=st,t[187]=Bt,t[188]=Vt):Vt=t[188];let Gt;t[189]!==Y||t[190]!==K.cancel?(Gt=(0,Q.jsx)(q,{type:`button`,variant:`secondary`,onClick:Y,children:K.cancel}),t[189]=Y,t[190]=K.cancel,t[191]=Gt):Gt=t[191];let Jt=!Ne,Yt;t[192]!==Ee||t[193]!==K.applyCurrent||t[194]!==Jt?(Yt=(0,Q.jsx)(q,{type:`button`,variant:`secondary`,disabled:Jt,onClick:Ee,children:K.applyCurrent}),t[192]=Ee,t[193]=K.applyCurrent,t[194]=Jt,t[195]=Yt):Yt=t[195];let Xt;t[196]===Ce?Xt=t[197]:(Xt=()=>void Ce(),t[196]=Ce,t[197]=Xt);let Zt;t[198]===Symbol.for(`react.memo_cache_sentinel`)?(Zt=(0,Q.jsx)(U,{className:`size-4`,strokeWidth:1.75,"aria-hidden":!0}),t[198]=Zt):Zt=t[198];let Qt;t[199]!==K.regenerate||t[200]!==V||t[201]!==Xt?(Qt=(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,disabled:V,onClick:Xt,children:[Zt,K.regenerate]}),t[199]=K.regenerate,t[200]=V,t[201]=Xt,t[202]=Qt):Qt=t[202];let $t=!Me,en;t[203]!==Ae||t[204]!==K.append||t[205]!==$t?(en=(0,Q.jsx)(q,{type:`button`,variant:`secondary`,disabled:$t,onClick:Ae,children:K.append}),t[203]=Ae,t[204]=K.append,t[205]=$t,t[206]=en):en=t[206];let tn=!Me,nn;t[207]!==Oe||t[208]!==K.replace||t[209]!==tn?(nn=(0,Q.jsx)(q,{type:`button`,variant:`primary`,disabled:tn,onClick:Oe,children:K.replace}),t[207]=Oe,t[208]=K.replace,t[209]=tn,t[210]=nn):nn=t[210];let rn;t[211]!==Gt||t[212]!==Yt||t[213]!==Qt||t[214]!==en||t[215]!==nn?(rn=(0,Q.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-4 py-3`,children:[Gt,Yt,Qt,en,nn]}),t[211]=Gt,t[212]=Yt,t[213]=Qt,t[214]=en,t[215]=nn,t[216]=rn):rn=t[216];let an;t[217]!==Ke||t[218]!==Vt||t[219]!==rn?(an=(0,Q.jsxs)(z,{children:[He,(0,Q.jsx)(`div`,{className:`fixed inset-0 z-[80] flex items-center justify-center p-4 pointer-events-none`,children:(0,Q.jsxs)(E,{className:`xopc-dialog-content-pane pointer-events-auto flex h-[min(78vh,38rem)] w-full max-w-4xl flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,onOpenAutoFocus:qt,children:[Ke,Vt,rn]})})]}),t[217]=Ke,t[218]=Vt,t[219]=rn,t[220]=an):an=t[220];let on;t[221]!==b||t[222]!==Ve||t[223]!==an?(on=(0,Q.jsx)(M,{open:b,onOpenChange:Ve,children:an}),t[221]=b,t[222]=Ve,t[223]=an,t[224]=on):on=t[224];let sn;return t[225]!==Be||t[226]!==on?(sn=(0,Q.jsxs)(Q.Fragment,{children:[Be,on]}),t[225]=Be,t[226]=on,t[227]=sn):sn=t[227],sn}function Kt(e){return!e}function qt(e){return e.preventDefault()}function Jt(e){let t=(0,Z.c)(31),{value:n,onChange:r,disabled:i,wd:a,placeholder:o,title:s,maxWidthClass:c,clearLabel:l,onClear:u}=e,d;t[0]!==r||t[1]!==n?(d={initialPath:n,onPicked:r},t[0]=r,t[1]=n,t[2]=d):d=t[2];let f=I(d),p;t[3]===n?p=t[4]:(p=n.trim(),t[3]=n,t[4]=p);let m=p,h=s??(m?`${m}\n${a.chooseFolder}`:`${o??a.notSet}\n${a.selectWorkingDirectory}`),g=i||f.picking,_=o??a.notSet,v;t[5]!==c||t[6]!==f.pick||t[7]!==h||t[8]!==g||t[9]!==_||t[10]!==n?(v=(0,Q.jsx)(C,{value:n,onPick:f.pick,disabled:g,placeholder:_,title:h,maxWidthClass:c}),t[5]=c,t[6]=f.pick,t[7]=h,t[8]=g,t[9]=_,t[10]=n,t[11]=v):v=t[11];let y;t[12]!==l||t[13]!==i||t[14]!==u||t[15]!==f.picking||t[16]!==m?(y=l&&m&&u?(0,Q.jsx)(`button`,{type:`button`,disabled:i||f.picking,className:`text-xs font-medium text-accent hover:underline disabled:opacity-50`,onClick:u,children:l}):null,t[12]=l,t[13]=i,t[14]=u,t[15]=f.picking,t[16]=m,t[17]=y):y=t[17];let b;t[18]!==v||t[19]!==y?(b=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[v,y]}),t[18]=v,t[19]=y,t[20]=b):b=t[20];let x;t[21]!==f.confirmPick||t[22]!==f.hasNativePicker||t[23]!==f.modalOpen||t[24]!==f.setModalOpen||t[25]!==m||t[26]!==a?(x=f.hasNativePicker?null:(0,Q.jsx)(O,{open:f.modalOpen,onOpenChange:f.setModalOpen,initialAbsolutePath:m||void 0,onConfirm:f.confirmPick,wd:a}),t[21]=f.confirmPick,t[22]=f.hasNativePicker,t[23]=f.modalOpen,t[24]=f.setModalOpen,t[25]=m,t[26]=a,t[27]=x):x=t[27];let S;return t[28]!==b||t[29]!==x?(S=(0,Q.jsxs)(Q.Fragment,{children:[b,x]}),t[28]=b,t[29]=x,t[30]=S):S=t[30],S}function Yt(e,t){return e[t]??t}function Xt(e,t){let n=ie[e]??[];if(n.length===0)return{};let r=t&&typeof t==`object`&&!Array.isArray(t)?t:{},i={};for(let e of n){let t=r[e.key];t!=null&&(i[e.key]=String(t))}return i}function Zt(e,t){return(ie[e]??[]).every(e=>!e.required||!!t[e.key]?.trim())}function Qt(e){let t=(0,Z.c)(12),{examples:n,labels:r,onSelect:i}=e;if(n.length===0)return null;let a;t[0]===r.examplePrompts?a=t[1]:(a=(0,Q.jsx)(`div`,{className:`text-xs font-medium text-fg-muted`,children:r.examplePrompts}),t[0]=r.examplePrompts,t[1]=a);let o;if(t[2]!==n||t[3]!==i){let e;t[5]===i?e=t[6]:(e=e=>(0,Q.jsx)(`button`,{type:`button`,onClick:()=>i(e),className:`rounded-lg border border-edge bg-surface-base/50 px-3 py-2 text-left text-xs text-fg-muted hover:bg-surface-hover`,children:e.text},`${e.field}:${e.text}`),t[5]=i,t[6]=e),o=n.map(e),t[2]=n,t[3]=i,t[4]=o}else o=t[4];let s;t[7]===o?s=t[8]:(s=(0,Q.jsx)(`div`,{className:`mt-2 flex flex-col gap-1.5`,children:o}),t[7]=o,t[8]=s);let c;return t[9]!==a||t[10]!==s?(c=(0,Q.jsxs)(`div`,{children:[a,s]}),t[9]=a,t[10]=s,t[11]=c):c=t[11],c}function $t(e){let t=(0,Z.c)(34),{workflowName:n,language:r,argValues:o,onArgValuesChange:s,goal:c,onGoalChange:l,examplePrompts:u,showGoal:d,inputClassName:f,aiAssist:p}=e,m;t[0]===u?m=t[1]:(m=u===void 0?[]:u,t[0]=u,t[1]=m);let h=m,g=d===void 0?!0:d,_,v,y,b,x,S,C;if(t[2]!==p||t[3]!==o||t[4]!==h||t[5]!==c||t[6]!==f||t[7]!==r||t[8]!==s||t[9]!==l||t[10]!==g||t[11]!==n){y=a(r).workflows;let e=ie[n]??[];v=e.length>0;let u=i(`mt-1.5 w-full rounded-xl border border-edge bg-surface-base px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-subtle focus:border-accent focus:ring-2 focus:ring-accent/20`,f),d;t[19]!==o||t[20]!==s||t[21]!==l?(d=e=>{et(e,l,e=>{s(e(o))})},t[19]=o,t[20]=s,t[21]=l,t[22]=d):d=t[22],_=d,b=`flex flex-col gap-3`,x=e.map(e=>{let t=Yt(y.args,e.labelKey),a=Yt(y.args,e.placeholderKey),c=o[e.key]??``;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsxs)(`span`,{className:`text-xs font-medium text-fg-muted`,children:[t,e.required?` *`:``]}),e.multiline&&p?(0,Q.jsx)(Gt,{value:c,onApply:t=>s({...o,[e.key]:t}),fieldId:`workflow.arg.${e.key}`,fieldLabel:t,scenario:`workflow.arg`,locale:r,context:{...p.context,workflowName:n,workflowArgs:o,fieldKey:e.key},disabled:p.disabled,showLabel:!1}):null]}),e.multiline?(0,Q.jsx)(`textarea`,{value:c,onChange:t=>s({...o,[e.key]:t.target.value}),placeholder:a,className:i(u,`min-h-20 resize-y`)}):(0,Q.jsx)(`input`,{value:c,onChange:t=>s({...o,[e.key]:t.target.value}),placeholder:a,className:u})]},e.key)}),S=v&&h.length>0?(0,Q.jsx)(Qt,{examples:h,labels:y,onSelect:_}):null,C=g?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:y.goalLabel}),p?(0,Q.jsx)(Gt,{value:c,onApply:l,fieldId:`workflow.goal`,fieldLabel:y.goalLabel,scenario:`cron.workflowGoal`,locale:r,context:{...p.context,workflowName:n,workflowArgs:o},disabled:p.disabled,showLabel:!1}):null]}),(0,Q.jsx)(`textarea`,{value:c,onChange:e=>l(e.target.value),placeholder:y.goalPlaceholder,className:i(u,`min-h-20 resize-y`)})]}):null,t[2]=p,t[3]=o,t[4]=h,t[5]=c,t[6]=f,t[7]=r,t[8]=s,t[9]=l,t[10]=g,t[11]=n,t[12]=_,t[13]=v,t[14]=y,t[15]=b,t[16]=x,t[17]=S,t[18]=C}else _=t[12],v=t[13],y=t[14],b=t[15],x=t[16],S=t[17],C=t[18];let w;t[23]!==_||t[24]!==h||t[25]!==v||t[26]!==y?(w=!v&&h.length>0?(0,Q.jsx)(Qt,{examples:h,labels:y,onSelect:_}):null,t[23]=_,t[24]=h,t[25]=v,t[26]=y,t[27]=w):w=t[27];let T;return t[28]!==b||t[29]!==x||t[30]!==S||t[31]!==C||t[32]!==w?(T=(0,Q.jsxs)(`div`,{className:b,children:[x,S,C,w]}),t[28]=b,t[29]=x,t[30]=S,t[31]=C,t[32]=w,t[33]=T):T=t[33],T}var en=42,tn=68,nn=56;function rn(e){return Math.max(en,Math.min(tn,e))}function an(e){let t=(0,Z.c)(10),{title:n,children:r,className:a}=e,o;t[0]===a?o=t[1]:(o=i(`rounded-2xl border border-edge bg-surface-base/35 p-4`,a),t[0]=a,t[1]=o);let s;t[2]===n?s=t[3]:(s=n?(0,Q.jsx)(`h3`,{className:`mb-3 text-sm font-semibold text-fg`,children:n}):null,t[2]=n,t[3]=s);let c;t[4]===r?c=t[5]:(c=(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:r}),t[4]=r,t[5]=c);let l;return t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,Q.jsxs)(`section`,{className:o,children:[s,c]}),t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function on(e){let t=(0,Z.c)(301),{open:n,onRequestClose:r,c:a,chatM:s,agentsMessages:c,isDark:l,channels:u,sessionChatIds:d,cronAgentSelectOptions:f,defaultModelResolver:p,formMode:h,formJobId:g,formName:_,onFormNameChange:v,formSchedule:y,onFormScheduleChange:b,formSubmitting:x,formTaskKind:C,onFormTaskKindChange:w,workflowDefinitions:T,workflowDefinitionsLoading:D,formWorkflowDefinitionId:O,onFormWorkflowDefinitionIdChange:k,formWorkflowGoal:A,onFormWorkflowGoalChange:N,formWorkflowArgValues:P,onFormWorkflowArgValuesChange:I,formSessionTarget:R,onFormSessionTargetChange:B,formAgentLocalOnly:V,onFormAgentLocalOnlyChange:H,formModel:W,onFormModelUserChange:G,formAgentId:ee,onFormAgentIdChange:K,formWorkingDirectory:ne,onFormWorkingDirectoryChange:re,formChannel:ie,onFormChannelChange:ae,formChatId:oe,onFormChatIdChange:se,formMessage:le,onFormMessageChange:ue,formMessageMdMode:de,onSetMessageMdMode:J,messageEditorNonce:pe,needsDeliveryChat:me,showChannelPicker:he,canSubmit:ge,onSubmit:_e,onRefreshRecipients:ve}=e,ye=o(fn),[Se,Ce]=(0,X.useState)(nn),[we,Y]=(0,X.useState)(!1),[Te,Ee]=(0,X.useState)(0),De=(0,X.useRef)(null),Oe,ke;if(t[0]!==O||t[1]!==ye||t[2]!==T){let e;t[5]===O?e=t[6]:(e=e=>e.id===O.trim(),t[5]=O,t[6]=e),Oe=T.find(e),ke=Oe?$e(Oe,ye):null,t[0]=O,t[1]=ye,t[2]=T,t[3]=Oe,t[4]=ke}else Oe=t[3],ke=t[4];let Ae=ke,je;t[7]!==y.everyMs||t[8]!==y.kind?(je=y.kind===`every`?Math.max(1,Math.round(y.everyMs/6e4)):60,t[7]=y.everyMs,t[8]=y.kind,t[9]=je):je=t[9];let Me=je,Ne;t[10]!==y.at||t[11]!==y.kind?(Ne=y.kind===`at`&&y.at?new Date(y.at).toISOString().slice(0,16):``,t[10]=y.at,t[11]=y.kind,t[12]=Ne):Ne=t[12];let Pe=Ne,Fe;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=e=>{e.preventDefault();let t=De.current;if(!t)return;let n=t.getBoundingClientRect(),r=e.currentTarget,i=e.pointerId;r.setPointerCapture(i),Y(!0);let a=e=>{Ce(rn((e-n.left)/n.width*100))};a(e.clientX);let o=e=>{a(e.clientX)},s=()=>{try{r.releasePointerCapture(i)}catch{}Y(!1),window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),window.removeEventListener(`pointercancel`,s)};window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s),window.addEventListener(`pointercancel`,s)},t[13]=Fe):Fe=t[13];let Ie=Fe,Le;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(Le=e=>{e.key===`ArrowLeft`?(e.preventDefault(),Ce(dn)):e.key===`ArrowRight`?(e.preventDefault(),Ce(un)):e.key===`Home`?(e.preventDefault(),Ce(en)):e.key===`End`&&(e.preventDefault(),Ce(tn))},t[14]=Le):Le=t[14];let Re=Le,ze;t[15]===a.agentProfile?ze=t[16]:(ze=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.agentProfile}),t[15]=a.agentProfile,t[16]=ze);let Be;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(Be=wt(),t[17]=Be):Be=t[17];let Ve;t[18]===K?Ve=t[19]:(Ve=e=>K(e.target.value),t[18]=K,t[19]=Ve);let He;t[20]===a.agentProfileDefault?He=t[21]:(He=(0,Q.jsx)(`option`,{value:``,children:a.agentProfileDefault}),t[20]=a.agentProfileDefault,t[21]=He);let Ue;if(t[22]!==c||t[23]!==f){let e;t[25]===c?e=t[26]:(e=e=>(0,Q.jsx)(`option`,{value:e.id,children:`${e.id} - ${S(e,c)}`},e.id),t[25]=c,t[26]=e),Ue=f.map(e),t[22]=c,t[23]=f,t[24]=Ue}else Ue=t[24];let We;t[27]!==ee||t[28]!==x||t[29]!==Ve||t[30]!==He||t[31]!==Ue?(We=(0,Q.jsxs)(`select`,{className:Be,value:ee,disabled:x,onChange:Ve,children:[He,Ue]}),t[27]=ee,t[28]=x,t[29]=Ve,t[30]=He,t[31]=Ue,t[32]=We):We=t[32];let Ge;t[33]===a.agentProfileHint?Ge=t[34]:(Ge=(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:a.agentProfileHint}),t[33]=a.agentProfileHint,t[34]=Ge);let Je;t[35]!==We||t[36]!==Ge||t[37]!==ze?(Je=(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[ze,We,Ge]}),t[35]=We,t[36]=Ge,t[37]=ze,t[38]=Je):Je=t[38];let Ye=Je,Ze;t[39]!==a.channel||t[40]!==a.channelLocal||t[41]!==a.enterManuallyOrSelect||t[42]!==a.lastActiveLabels||t[43]!==a.noRecentChats||t[44]!==a.noRecentChatsOption||t[45]!==a.recipient||t[46]!==a.recipientPlaceholder||t[47]!==a.refreshList||t[48]!==a.refreshRecipientHint||t[49]!==a.selectRecipient||t[50]!==a.workflowDeliveryHint||t[51]!==u||t[52]!==ie||t[53]!==oe||t[54]!==C||t[55]!==me||t[56]!==ae||t[57]!==se||t[58]!==ve||t[59]!==d||t[60]!==he?(Ze=he?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.channel}),(0,Q.jsxs)(`select`,{className:wt(),value:ie,onChange:e=>ae(e.target.value),children:[(0,Q.jsx)(`option`,{value:`local`,children:a.channelLocal}),u.map(ln)]})]}),me?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.recipient}),(0,Q.jsxs)(q,{type:`button`,variant:`ghost`,className:`h-7 gap-1 px-2 text-xs`,title:a.refreshRecipientHint,onClick:()=>void ve(),children:[(0,Q.jsx)(U,{className:`size-3.5`,strokeWidth:1.75}),a.refreshList]})]}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-stretch sm:gap-2`,children:[(0,Q.jsx)(`input`,{type:`text`,className:i(Ct(),`min-w-0 w-full sm:flex-1`),value:oe,onChange:e=>se(e.target.value),placeholder:a.recipientPlaceholder}),(0,Q.jsxs)(`select`,{className:Tt,value:oe,onChange:e=>{let t=e.target.value;t&&se(t)},children:[(0,Q.jsx)(`option`,{value:``,children:a.selectRecipient}),d.length>0?d.map(e=>(0,Q.jsx)(`option`,{value:e.chatId,children:qe(e,a.lastActiveLabels)},`${e.channel}-${e.chatId}`)):(0,Q.jsx)(`option`,{value:``,disabled:!0,children:a.noRecentChatsOption})]})]}),(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:C===`workflowRun`?a.workflowDeliveryHint:d.length>0?a.enterManuallyOrSelect:a.noRecentChats})]}):null]}):null,t[39]=a.channel,t[40]=a.channelLocal,t[41]=a.enterManuallyOrSelect,t[42]=a.lastActiveLabels,t[43]=a.noRecentChats,t[44]=a.noRecentChatsOption,t[45]=a.recipient,t[46]=a.recipientPlaceholder,t[47]=a.refreshList,t[48]=a.refreshRecipientHint,t[49]=a.selectRecipient,t[50]=a.workflowDeliveryHint,t[51]=u,t[52]=ie,t[53]=oe,t[54]=C,t[55]=me,t[56]=ae,t[57]=se,t[58]=ve,t[59]=d,t[60]=he,t[61]=Ze):Ze=t[61];let Qe=Ze,et;t[62]===a.schedule?et=t[63]:(et=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.schedule}),t[62]=a.schedule,t[63]=et);let tt;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(tt=wt(),t[64]=tt):tt=t[64];let nt;t[65]===b?nt=t[66]:(nt=e=>{let t=e.target.value;b(t===`cron`?{kind:`cron`,expr:`*/5 * * * *`}:t===`at`?{kind:`at`,at:new Date(Date.now()+36e5).toISOString()}:{kind:`every`,everyMs:36e5})},t[65]=b,t[66]=nt);let rt,it,at;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(rt=(0,Q.jsx)(`option`,{value:`cron`,children:`Cron`}),it=(0,Q.jsx)(`option`,{value:`at`,children:`One-time`}),at=(0,Q.jsx)(`option`,{value:`every`,children:`Interval`}),t[67]=rt,t[68]=it,t[69]=at):(rt=t[67],it=t[68],at=t[69]);let ot;t[70]!==y.kind||t[71]!==x||t[72]!==nt?(ot=(0,Q.jsxs)(`select`,{className:tt,value:y.kind,disabled:x,onChange:nt,children:[rt,it,at]}),t[70]=y.kind,t[71]=x,t[72]=nt,t[73]=ot):ot=t[73];let st;t[74]!==et||t[75]!==ot?(st=(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[et,ot]}),t[74]=et,t[75]=ot,t[76]=st):st=t[76];let ct;t[77]!==Pe||t[78]!==a.nextRun||t[79]!==a.scheduleBadge||t[80]!==a.schedulePicker||t[81]!==y||t[82]!==x||t[83]!==Me||t[84]!==b?(ct=y.kind===`cron`?(0,Q.jsx)(Xe,{value:y.expr,onChange:e=>b({...y,expr:e}),disabled:x,labels:a.schedulePicker}):y.kind===`at`?(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.nextRun}),(0,Q.jsx)(`input`,{type:`datetime-local`,className:Ct(x),value:Pe,disabled:x,onChange:e=>{let t=new Date(e.target.value).getTime();b({kind:`at`,at:Number.isFinite(t)?new Date(t).toISOString():``})}})]}):(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.scheduleBadge.everyNMinutes.replace(`{{n}}`,``)}),(0,Q.jsx)(`input`,{type:`number`,min:1,step:1,className:Ct(x),value:Me,disabled:x,onChange:e=>{let t=Number.parseInt(e.target.value,10);b({kind:`every`,everyMs:Math.max(1,Number.isFinite(t)?t:1)*6e4})}})]}),t[77]=Pe,t[78]=a.nextRun,t[79]=a.scheduleBadge,t[80]=a.schedulePicker,t[81]=y,t[82]=x,t[83]=Me,t[84]=b,t[85]=ct):ct=t[85];let lt;t[86]!==st||t[87]!==ct?(lt=(0,Q.jsxs)(Q.Fragment,{children:[st,ct]}),t[86]=st,t[87]=ct,t[88]=lt):lt=t[88];let ut=lt,dt;t[89]===a.message?dt=t[90]:(dt=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.message}),t[89]=a.message,t[90]=dt);let ft;t[91]!==ue||t[92]!==J?(ft=e=>{ue(e),Ee(cn),J(`edit`)},t[91]=ue,t[92]=J,t[93]=ft):ft=t[93];let pt=a.message,mt;t[94]===y?mt=t[95]:(mt=Ke(y),t[94]=y,t[95]=mt);let ht;t[96]!==ie||t[97]!==_||t[98]!==R||t[99]!==C||t[100]!==mt?(ht={page:`cron`,taskKind:C,cronName:_,scheduleSummary:mt,sessionTarget:R,deliveryChannel:ie},t[96]=ie,t[97]=_,t[98]=R,t[99]=C,t[100]=mt,t[101]=ht):ht=t[101];let gt;t[102]!==a.message||t[103]!==le||t[104]!==x||t[105]!==ye||t[106]!==ft||t[107]!==ht?(gt=(0,Q.jsx)(Gt,{value:le,onApply:ft,fieldId:`cron.message`,fieldLabel:pt,scenario:`cron.message`,format:`markdown`,locale:ye,context:ht,disabled:x}),t[102]=a.message,t[103]=le,t[104]=x,t[105]=ye,t[106]=ft,t[107]=ht,t[108]=gt):gt=t[108];let _t=de===`edit`?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover`,vt;t[109]===_t?vt=t[110]:(vt=i(`inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium`,_t),t[109]=_t,t[110]=vt);let yt;t[111]===J?yt=t[112]:(yt=()=>J(`edit`),t[111]=J,t[112]=yt);let bt;t[113]===Symbol.for(`react.memo_cache_sentinel`)?(bt=(0,Q.jsx)(fe,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[113]=bt):bt=t[113];let xt;t[114]!==a.messageEdit||t[115]!==vt||t[116]!==yt?(xt=(0,Q.jsxs)(`button`,{type:`button`,className:vt,onClick:yt,children:[bt,a.messageEdit]}),t[114]=a.messageEdit,t[115]=vt,t[116]=yt,t[117]=xt):xt=t[117];let St=de===`preview`?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover`,Et;t[118]===St?Et=t[119]:(Et=i(`inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium`,St),t[118]=St,t[119]=Et);let Dt;t[120]===J?Dt=t[121]:(Dt=()=>J(`preview`),t[120]=J,t[121]=Dt);let Ot;t[122]===Symbol.for(`react.memo_cache_sentinel`)?(Ot=(0,Q.jsx)(j,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[122]=Ot):Ot=t[122];let kt;t[123]!==a.messagePreview||t[124]!==Et||t[125]!==Dt?(kt=(0,Q.jsxs)(`button`,{type:`button`,className:Et,onClick:Dt,children:[Ot,a.messagePreview]}),t[123]=a.messagePreview,t[124]=Et,t[125]=Dt,t[126]=kt):kt=t[126];let At;t[127]!==xt||t[128]!==kt?(At=(0,Q.jsxs)(`div`,{className:`inline-flex rounded-lg border border-edge bg-surface-base p-0.5 dark:border-edge`,children:[xt,kt]}),t[127]=xt,t[128]=kt,t[129]=At):At=t[129];let jt;t[130]!==gt||t[131]!==At?(jt=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[gt,At]}),t[130]=gt,t[131]=At,t[132]=jt):jt=t[132];let $;t[133]!==dt||t[134]!==jt?($=(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[dt,jt]}),t[133]=dt,t[134]=jt,t[135]=$):$=t[135];let Mt=x&&`pointer-events-none opacity-60`,Nt;t[136]===Mt?Nt=t[137]:(Nt=i(`overflow-hidden rounded-md border border-edge bg-surface-base dark:border-edge`,Mt),t[136]=Mt,t[137]=Nt);let Pt;t[138]!==Te||t[139]!==a.messagePlaceholder||t[140]!==g||t[141]!==le||t[142]!==de||t[143]!==l||t[144]!==pe||t[145]!==ue?(Pt=de===`edit`?(0,Q.jsx)(xe,{initialContent:le,onChange:ue,isDark:l,className:`h-[min(22rem,44vh)] min-h-[16rem]`},`cron-msg-${g??`new`}-${pe}-${Te}`):(0,Q.jsx)(`div`,{className:`h-[min(22rem,44vh)] min-h-[16rem] max-h-[min(26rem,52vh)] overflow-y-auto px-3 py-2`,children:le.trim()?(0,Q.jsx)(be,{content:le,compact:!0,className:`text-sm`}):(0,Q.jsx)(`p`,{className:`text-sm text-fg-muted`,children:a.messagePlaceholder})}),t[138]=Te,t[139]=a.messagePlaceholder,t[140]=g,t[141]=le,t[142]=de,t[143]=l,t[144]=pe,t[145]=ue,t[146]=Pt):Pt=t[146];let Ft;t[147]!==Nt||t[148]!==Pt?(Ft=(0,Q.jsx)(`div`,{className:Nt,children:Pt}),t[147]=Nt,t[148]=Pt,t[149]=Ft):Ft=t[149];let It;t[150]===a.messageMarkdownHint?It=t[151]:(It=(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:a.messageMarkdownHint}),t[150]=a.messageMarkdownHint,t[151]=It);let Lt;t[152]!==$||t[153]!==Ft||t[154]!==It?(Lt=(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[$,Ft,It]}),t[152]=$,t[153]=Ft,t[154]=It,t[155]=Lt):Lt=t[155];let Rt=Lt,zt;t[156]===r?zt=t[157]:(zt=e=>!e&&r(),t[156]=r,t[157]=zt);let Bt;t[158]===Symbol.for(`react.memo_cache_sentinel`)?(Bt=(0,Q.jsx)(L,{className:`xopc-dialog-overlay fixed inset-0 z-[60] bg-scrim`}),t[158]=Bt):Bt=t[158];let Vt=h===`edit`?a.editJob:a.addJob,Ht;t[159]===Vt?Ht=t[160]:(Ht=(0,Q.jsx)(m,{className:`text-base font-semibold text-fg`,children:Vt}),t[159]=Vt,t[160]=Ht);let Ut;t[161]===Symbol.for(`react.memo_cache_sentinel`)?(Ut=(0,Q.jsx)(te,{className:`size-5`,strokeWidth:1.75}),t[161]=Ut):Ut=t[161];let Wt;t[162]===a.close?Wt=t[163]:(Wt=(0,Q.jsx)(ce,{asChild:!0,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":a.close,children:Ut})}),t[162]=a.close,t[163]=Wt);let Kt;t[164]!==Ht||t[165]!==Wt?(Kt=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-edge px-4 py-3`,children:[Ht,Wt]}),t[164]=Ht,t[165]=Wt,t[166]=Kt):Kt=t[166];let qt=!we&&`lg:transition-[grid-template-columns] lg:duration-200 lg:ease-out`,Yt;t[167]===qt?Yt=t[168]:(Yt=i(`grid min-h-full grid-cols-1 gap-4 lg:h-full lg:min-h-0 lg:[grid-template-columns:minmax(0,var(--cron-form-primary-pane))_0.75rem_minmax(22rem,1fr)] lg:gap-0`,qt),t[167]=qt,t[168]=Yt);let Xt=`${Se}%`,Zt;t[169]===Xt?Zt=t[170]:(Zt={"--cron-form-primary-pane":Xt},t[169]=Xt,t[170]=Zt);let Qt=Zt,on;t[171]===a.name?on=t[172]:(on=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.name}),t[171]=a.name,t[172]=on);let pn;t[173]===Symbol.for(`react.memo_cache_sentinel`)?(pn=Ct(),t[173]=pn):pn=t[173];let mn;t[174]===v?mn=t[175]:(mn=e=>v(e.target.value),t[174]=v,t[175]=mn);let hn;t[176]!==a.namePlaceholder||t[177]!==_||t[178]!==mn?(hn=(0,Q.jsx)(`input`,{type:`text`,className:pn,value:_,onChange:mn,placeholder:a.namePlaceholder}),t[176]=a.namePlaceholder,t[177]=_,t[178]=mn,t[179]=hn):hn=t[179];let gn;t[180]!==on||t[181]!==hn?(gn=(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[on,hn]}),t[180]=on,t[181]=hn,t[182]=gn):gn=t[182];let _n;t[183]===a.taskKind?_n=t[184]:(_n=(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.taskKind}),t[183]=a.taskKind,t[184]=_n);let vn;t[185]===Symbol.for(`react.memo_cache_sentinel`)?(vn=wt(),t[185]=vn):vn=t[185];let yn;t[186]===w?yn=t[187]:(yn=e=>w(e.target.value),t[186]=w,t[187]=yn);let bn;t[188]===a.taskKindMessage?bn=t[189]:(bn=(0,Q.jsx)(`option`,{value:`message`,children:a.taskKindMessage}),t[188]=a.taskKindMessage,t[189]=bn);let xn;t[190]===a.taskKindWorkflowRun?xn=t[191]:(xn=(0,Q.jsx)(`option`,{value:`workflowRun`,children:a.taskKindWorkflowRun}),t[190]=a.taskKindWorkflowRun,t[191]=xn);let Sn;t[192]!==x||t[193]!==C||t[194]!==yn||t[195]!==bn||t[196]!==xn?(Sn=(0,Q.jsxs)(`select`,{className:vn,value:C,disabled:x,onChange:yn,children:[bn,xn]}),t[192]=x,t[193]=C,t[194]=yn,t[195]=bn,t[196]=xn,t[197]=Sn):Sn=t[197];let Cn;t[198]!==_n||t[199]!==Sn?(Cn=(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[_n,Sn]}),t[198]=_n,t[199]=Sn,t[200]=Cn):Cn=t[200];let wn;t[201]!==ut||t[202]!==gn||t[203]!==Cn?(wn=(0,Q.jsxs)(an,{children:[gn,ut,Cn]}),t[201]=ut,t[202]=gn,t[203]=Cn,t[204]=wn):wn=t[204];let Tn;t[205]!==a.message||t[206]!==a.workflowDefinition||t[207]!==a.workflowDefinitionCustom||t[208]!==a.workflowDefinitionMissing||t[209]!==a.workflowDefinitionPlaceholder||t[210]!==a.workflowDefinitionsEmpty||t[211]!==a.workflowDefinitionsLoading||t[212]!==_||t[213]!==y||t[214]!==x||t[215]!==C||t[216]!==P||t[217]!==O||t[218]!==A||t[219]!==ye||t[220]!==Rt||t[221]!==I||t[222]!==k||t[223]!==N||t[224]!==Oe||t[225]!==Ae||t[226]!==T||t[227]!==D?(Tn=C===`workflowRun`?(0,Q.jsxs)(an,{title:a.workflowDefinition,children:[(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.workflowDefinition}),(0,Q.jsxs)(`select`,{className:wt(),value:O,disabled:x||D,onChange:e=>k(e.target.value),children:[(0,Q.jsx)(`option`,{value:``,children:D?a.workflowDefinitionsLoading:a.workflowDefinitionPlaceholder}),O.trim()&&!T.some(e=>e.id===O.trim())?(0,Q.jsx)(`option`,{value:O,children:O}):null,T.map(e=>(0,Q.jsxs)(`option`,{value:e.id,children:[e.title,e.metadata.source===`user`?` (${a.workflowDefinitionCustom})`:``]},e.id))]}),!D&&T.length===0?(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:a.workflowDefinitionsEmpty}):null,Ae?(0,Q.jsx)(`p`,{className:`text-xs leading-5 text-fg-muted`,children:Ae.description}):O.trim()&&!Oe?(0,Q.jsx)(`p`,{className:`text-xs text-amber-700 dark:text-amber-300`,children:a.workflowDefinitionMissing}):null]}),O.trim()?(0,Q.jsx)($t,{workflowName:O.trim(),language:ye,argValues:P,onArgValuesChange:I,goal:A,onGoalChange:N,examplePrompts:Ae?.examplePrompts??[],inputClassName:Ct(),aiAssist:{disabled:x,context:{page:`cron`,taskKind:C,cronName:_,scheduleSummary:Ke(y),workflowDefinitionId:O.trim(),workflowDescription:Ae?.description??``}}}):null]}):(0,Q.jsx)(an,{title:a.message,children:Rt}),t[205]=a.message,t[206]=a.workflowDefinition,t[207]=a.workflowDefinitionCustom,t[208]=a.workflowDefinitionMissing,t[209]=a.workflowDefinitionPlaceholder,t[210]=a.workflowDefinitionsEmpty,t[211]=a.workflowDefinitionsLoading,t[212]=_,t[213]=y,t[214]=x,t[215]=C,t[216]=P,t[217]=O,t[218]=A,t[219]=ye,t[220]=Rt,t[221]=I,t[222]=k,t[223]=N,t[224]=Oe,t[225]=Ae,t[226]=T,t[227]=D,t[228]=Tn):Tn=t[228];let En;t[229]!==wn||t[230]!==Tn?(En=(0,Q.jsx)(`div`,{className:`lg:min-h-0 lg:overflow-y-auto`,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[wn,Tn]})}),t[229]=wn,t[230]=Tn,t[231]=En):En=t[231];let Dn=a.detailResizeColumns,On;t[232]===Se?On=t[233]:(On=Math.round(Se),t[232]=Se,t[233]=On);let kn;t[234]===Symbol.for(`react.memo_cache_sentinel`)?(kn=i(`group hidden h-full cursor-col-resize touch-none select-none items-stretch justify-center rounded-lg outline-none lg:flex`,`focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),t[234]=kn):kn=t[234];let An=we&&`bg-edge`,jn;t[235]===An?jn=t[236]:(jn=i(`h-full w-px bg-edge-subtle transition-colors duration-150`,`group-hover:bg-edge`,An),t[235]=An,t[236]=jn);let Mn;t[237]===jn?Mn=t[238]:(Mn=(0,Q.jsx)(`span`,{className:jn}),t[237]=jn,t[238]=Mn);let Nn;t[239]!==a.detailResizeColumns||t[240]!==On||t[241]!==Mn?(Nn=(0,Q.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,"aria-label":Dn,"aria-valuemin":en,"aria-valuemax":tn,"aria-valuenow":On,tabIndex:0,onPointerDown:Ie,onKeyDown:Re,className:kn,children:Mn}),t[239]=a.detailResizeColumns,t[240]=On,t[241]=Mn,t[242]=Nn):Nn=t[242];let Pn;t[243]!==Ye||t[244]!==a.agentLocalOnly||t[245]!==a.agentLocalOnlyHint||t[246]!==a.detailRunSettings||t[247]!==a.mode||t[248]!==a.modeAgent||t[249]!==a.modeAgentOption||t[250]!==a.modeDirect||t[251]!==a.modeDirectOption||t[252]!==a.model||t[253]!==a.workflowLocalOnly||t[254]!==a.workflowLocalOnlyHint||t[255]!==a.workingDirectoryHint||t[256]!==a.workingDirectoryLabel||t[257]!==a.workingDirectoryReset||t[258]!==s||t[259]!==p||t[260]!==V||t[261]!==W||t[262]!==R||t[263]!==x||t[264]!==C||t[265]!==ne||t[266]!==H||t[267]!==G||t[268]!==B||t[269]!==re?(Pn=C===`message`?(0,Q.jsxs)(an,{title:a.detailRunSettings,children:[(0,Q.jsxs)(`label`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.mode}),(0,Q.jsxs)(`select`,{className:wt(),value:R,onChange:e=>{let t=e.target.value;B(t,p,W.trim())},children:[(0,Q.jsx)(`option`,{value:`main`,children:a.modeDirectOption}),(0,Q.jsx)(`option`,{value:`isolated`,children:a.modeAgentOption})]}),(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R===`main`?a.modeDirect:a.modeAgent})]}),R===`isolated`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.model}),(0,Q.jsx)(F,{value:W,placeholder:s.modelPlaceholder,searchPlaceholder:s.modelSearchPlaceholder,noMatches:s.modelNoMatches,className:`w-full max-w-none min-w-0`,popoverContentClassName:`z-[70]`,onChange:G})]}),Ye,(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-fg-muted`,children:a.workingDirectoryLabel}),(0,Q.jsx)(Jt,{value:ne,onChange:re,disabled:x,wd:s.workingDirectory,placeholder:s.workingDirectory.notSet,maxWidthClass:`max-w-[min(18rem,52vw)]`,clearLabel:a.workingDirectoryReset,onClear:()=>re(``)}),(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:a.workingDirectoryHint})]}),(0,Q.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 rounded-md bg-surface-hover/45 px-3 py-2 dark:bg-surface-hover/30`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,className:i(`ui-checkbox`,`mt-0.5`),checked:V,onChange:e=>H(e.target.checked),"aria-label":a.agentLocalOnly}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:a.agentLocalOnly}),(0,Q.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.agentLocalOnlyHint})]})]})]}):null]}):(0,Q.jsxs)(an,{title:a.detailRunSettings,children:[Ye,(0,Q.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2 rounded-md bg-surface-hover/45 px-3 py-2 dark:bg-surface-hover/30`,children:[(0,Q.jsx)(`input`,{type:`checkbox`,className:i(`ui-checkbox`,`mt-0.5`),checked:V,onChange:e=>H(e.target.checked),"aria-label":a.workflowLocalOnly}),(0,Q.jsxs)(`span`,{children:[(0,Q.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:a.workflowLocalOnly}),(0,Q.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:a.workflowLocalOnlyHint})]})]})]}),t[243]=Ye,t[244]=a.agentLocalOnly,t[245]=a.agentLocalOnlyHint,t[246]=a.detailRunSettings,t[247]=a.mode,t[248]=a.modeAgent,t[249]=a.modeAgentOption,t[250]=a.modeDirect,t[251]=a.modeDirectOption,t[252]=a.model,t[253]=a.workflowLocalOnly,t[254]=a.workflowLocalOnlyHint,t[255]=a.workingDirectoryHint,t[256]=a.workingDirectoryLabel,t[257]=a.workingDirectoryReset,t[258]=s,t[259]=p,t[260]=V,t[261]=W,t[262]=R,t[263]=x,t[264]=C,t[265]=ne,t[266]=H,t[267]=G,t[268]=B,t[269]=re,t[270]=Pn):Pn=t[270];let Fn;t[271]!==a.deliveryTarget||t[272]!==Qe?(Fn=Qe?(0,Q.jsx)(an,{title:a.deliveryTarget,children:Qe}):null,t[271]=a.deliveryTarget,t[272]=Qe,t[273]=Fn):Fn=t[273];let In;t[274]!==Pn||t[275]!==Fn?(In=(0,Q.jsx)(`aside`,{className:`lg:min-h-0 lg:overflow-y-auto`,children:(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[Pn,Fn]})}),t[274]=Pn,t[275]=Fn,t[276]=In):In=t[276];let Ln;t[277]!==Yt||t[278]!==Qt||t[279]!==En||t[280]!==Nn||t[281]!==In?(Ln=(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-4 py-4 lg:overflow-hidden`,children:(0,Q.jsxs)(`div`,{ref:De,className:Yt,style:Qt,children:[En,Nn,In]})}),t[277]=Yt,t[278]=Qt,t[279]=En,t[280]=Nn,t[281]=In,t[282]=Ln):Ln=t[282];let Rn;t[283]!==a.cancel||t[284]!==r?(Rn=(0,Q.jsx)(q,{type:`button`,variant:`secondary`,onClick:r,children:a.cancel}),t[283]=a.cancel,t[284]=r,t[285]=Rn):Rn=t[285];let zn=x||!ge,Bn=x?a.loading:h===`edit`?a.save:a.create,Vn;t[286]!==_e||t[287]!==zn||t[288]!==Bn?(Vn=(0,Q.jsx)(q,{type:`button`,variant:`primary`,disabled:zn,onClick:_e,children:Bn}),t[286]=_e,t[287]=zn,t[288]=Bn,t[289]=Vn):Vn=t[289];let Hn;t[290]!==Rn||t[291]!==Vn?(Hn=(0,Q.jsxs)(`div`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-4 py-3`,children:[Rn,Vn]}),t[290]=Rn,t[291]=Vn,t[292]=Hn):Hn=t[292];let Un;t[293]!==Kt||t[294]!==Ln||t[295]!==Hn?(Un=(0,Q.jsxs)(z,{children:[Bt,(0,Q.jsx)(`div`,{className:`fixed inset-0 z-[60] flex items-center justify-center p-4 pointer-events-none`,children:(0,Q.jsxs)(E,{className:`xopc-dialog-content-pane pointer-events-auto relative flex h-[min(86vh,46rem)] w-full max-w-6xl flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none dark:border-edge`,onOpenAutoFocus:sn,children:[Kt,Ln,Hn]})})]}),t[293]=Kt,t[294]=Ln,t[295]=Hn,t[296]=Un):Un=t[296];let Wn;return t[297]!==n||t[298]!==zt||t[299]!==Un?(Wn=(0,Q.jsx)(M,{open:n,onOpenChange:zt,children:Un}),t[297]=n,t[298]=zt,t[299]=Un,t[300]=Wn):Wn=t[300],Wn}function sn(e){return e.preventDefault()}function cn(e){return e+1}function ln(e){return(0,Q.jsxs)(`option`,{value:e.name,disabled:!e.enabled,children:[e.name,` `,e.enabled?``:`(disabled)`]},e.name)}function un(e){return rn(e+4)}function dn(e){return rn(e-4)}function fn(e){return e.language}function pn(e){let t=(0,Z.c)(76),{c:n,mainTab:r,onMainTabChange:a,jobSort:o,onJobSortChange:s,historyRange:c,onHistoryRangeChange:l,historyJobFilter:u,onHistoryJobFilterChange:d,historyStatusFilter:f,onHistoryStatusFilterChange:p,jobs:m}=e,h=n.title,g=r===`myTasks`,v=r===`myTasks`?`text-fg`:`text-fg-muted hover:text-fg`,y;t[0]===v?y=t[1]:(y=i(`rounded-md px-3 py-2 text-sm font-medium transition-colors`,v),t[0]=v,t[1]=y);let b;t[2]===a?b=t[3]:(b=()=>a(`myTasks`),t[2]=a,t[3]=b);let x;t[4]!==n.tabMyTasks||t[5]!==g||t[6]!==y||t[7]!==b?(x=(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":g,className:y,onClick:b,children:n.tabMyTasks}),t[4]=n.tabMyTasks,t[5]=g,t[6]=y,t[7]=b,t[8]=x):x=t[8];let S=r===`systemTasks`,C=r===`systemTasks`?`text-fg`:`text-fg-muted hover:text-fg`,w;t[9]===C?w=t[10]:(w=i(`rounded-md px-3 py-2 text-sm font-medium transition-colors`,C),t[9]=C,t[10]=w);let T;t[11]===a?T=t[12]:(T=()=>a(`systemTasks`),t[11]=a,t[12]=T);let E;t[13]!==n.tabSystemTasks||t[14]!==T||t[15]!==S||t[16]!==w?(E=(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":S,className:w,onClick:T,children:n.tabSystemTasks}),t[13]=n.tabSystemTasks,t[14]=T,t[15]=S,t[16]=w,t[17]=E):E=t[17];let D=r===`history`,O=r===`history`?`text-fg`:`text-fg-muted hover:text-fg`,k;t[18]===O?k=t[19]:(k=i(`rounded-md px-3 py-2 text-sm font-medium transition-colors`,O),t[18]=O,t[19]=k);let A;t[20]===a?A=t[21]:(A=()=>a(`history`),t[20]=a,t[21]=A);let j;t[22]!==n.tabRunHistory||t[23]!==D||t[24]!==k||t[25]!==A?(j=(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":D,className:k,onClick:A,children:n.tabRunHistory}),t[22]=n.tabRunHistory,t[23]=D,t[24]=k,t[25]=A,t[26]=j):j=t[26];let M=r===`settings`,N=r===`settings`?`text-fg`:`text-fg-muted hover:text-fg`,P;t[27]===N?P=t[28]:(P=i(`rounded-md px-3 py-2 text-sm font-medium transition-colors`,N),t[27]=N,t[28]=P);let F;t[29]===a?F=t[30]:(F=()=>a(`settings`),t[29]=a,t[30]=F);let I;t[31]!==n.globals.title||t[32]!==M||t[33]!==P||t[34]!==F?(I=(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":M,className:P,onClick:F,children:n.globals.title}),t[31]=n.globals.title,t[32]=M,t[33]=P,t[34]=F,t[35]=I):I=t[35];let L;t[36]!==n.title||t[37]!==E||t[38]!==j||t[39]!==I||t[40]!==x?(L=(0,Q.jsxs)(`div`,{className:`flex gap-1`,role:`tablist`,"aria-label":h,children:[x,E,j,I]}),t[36]=n.title,t[37]=E,t[38]=j,t[39]=I,t[40]=x,t[41]=L):L=t[41];let R=r===`history`?`flex-nowrap overflow-x-auto pb-0.5 sm:justify-end`:`flex-wrap sm:justify-end`,z;t[42]===R?z=t[43]:(z=i(`flex min-w-0 items-center gap-2`,R),t[42]=R,t[43]=z);let B;t[44]!==n.sortCreatedAsc||t[45]!==n.sortCreatedDesc||t[46]!==o||t[47]!==r||t[48]!==s?(B=r===`myTasks`||r===`systemTasks`?(0,Q.jsxs)(`select`,{className:Et,value:o,onChange:e=>s(e.target.value),"aria-label":n.sortCreatedDesc,children:[(0,Q.jsx)(`option`,{value:`created_desc`,children:n.sortCreatedDesc}),(0,Q.jsx)(`option`,{value:`created_asc`,children:n.sortCreatedAsc})]}):null,t[44]=n.sortCreatedAsc,t[45]=n.sortCreatedDesc,t[46]=o,t[47]=r,t[48]=s,t[49]=B):B=t[49];let V;t[50]!==n.execStatusCancelled||t[51]!==n.execStatusFailed||t[52]!==n.execStatusRunning||t[53]!==n.execStatusSuccess||t[54]!==n.filterAllStatuses||t[55]!==n.filterAllTasks||t[56]!==n.historyRangeDay||t[57]!==n.historyRangeMonth||t[58]!==n.historyRangeWeek||t[59]!==n.runHistoryTitle||t[60]!==u||t[61]!==c||t[62]!==f||t[63]!==m||t[64]!==r||t[65]!==d||t[66]!==l||t[67]!==p?(V=r===`history`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:i(_e,`shrink-0`),role:`group`,"aria-label":n.runHistoryTitle,children:[`day`,`week`,`month`].map(e=>(0,Q.jsx)(`button`,{type:`button`,className:i(_,`px-2.5 py-1`,c===e&&`bg-surface-panel shadow-sm dark:bg-surface-panel dark:shadow-sm dark:ring-1 dark:ring-edge-strong/40`,c===e&&`text-fg`),onClick:()=>l(e),children:e===`day`?n.historyRangeDay:e===`week`?n.historyRangeWeek:n.historyRangeMonth},e))}),(0,Q.jsxs)(`select`,{className:Et,value:u,onChange:e=>d(e.target.value),"aria-label":n.filterAllTasks,children:[(0,Q.jsx)(`option`,{value:``,children:n.filterAllTasks}),m.map(mn)]}),(0,Q.jsxs)(`select`,{className:Et,value:f,onChange:e=>p(e.target.value),"aria-label":n.filterAllStatuses,children:[(0,Q.jsx)(`option`,{value:``,children:n.filterAllStatuses}),(0,Q.jsx)(`option`,{value:`success`,children:n.execStatusSuccess}),(0,Q.jsx)(`option`,{value:`failed`,children:n.execStatusFailed}),(0,Q.jsx)(`option`,{value:`cancelled`,children:n.execStatusCancelled}),(0,Q.jsx)(`option`,{value:`running`,children:n.execStatusRunning})]})]}):null,t[50]=n.execStatusCancelled,t[51]=n.execStatusFailed,t[52]=n.execStatusRunning,t[53]=n.execStatusSuccess,t[54]=n.filterAllStatuses,t[55]=n.filterAllTasks,t[56]=n.historyRangeDay,t[57]=n.historyRangeMonth,t[58]=n.historyRangeWeek,t[59]=n.runHistoryTitle,t[60]=u,t[61]=c,t[62]=f,t[63]=m,t[64]=r,t[65]=d,t[66]=l,t[67]=p,t[68]=V):V=t[68];let H;t[69]!==z||t[70]!==B||t[71]!==V?(H=(0,Q.jsxs)(`div`,{className:z,children:[B,V]}),t[69]=z,t[70]=B,t[71]=V,t[72]=H):H=t[72];let U;return t[73]!==L||t[74]!==H?(U=(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3 border-b border-edge-subtle pb-3 sm:flex-row sm:items-center sm:justify-between dark:border-edge-subtle`,children:[L,H]}),t[73]=L,t[74]=H,t[75]=U):U=t[75],U}function mn(e){return(0,Q.jsx)(`option`,{value:e.id,children:e.name||e.id},e.id)}function hn(e){let t=(0,Z.c)(23),{c:n,loading:r,runHistoryLoading:a,onRefresh:o,onOpenTemplatePicker:s,onAddJob:c}=e,l=r||a,u=n.refresh,d=n.refresh,f;t[0]===o?f=t[1]:(f=()=>void o(),t[0]=o,t[1]=f);let p=l&&`animate-spin`,m;t[2]===p?m=t[3]:(m=i(`size-4`,p),t[2]=p,t[3]=m);let h;t[4]===m?h=t[5]:(h=(0,Q.jsx)(U,{className:m,strokeWidth:1.75}),t[4]=m,t[5]=h);let g;t[6]!==l||t[7]!==n.refresh||t[8]!==f||t[9]!==h?(g=(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,disabled:l,title:u,"aria-label":d,onClick:f,children:h}),t[6]=l,t[7]=n.refresh,t[8]=f,t[9]=h,t[10]=g):g=t[10];let _;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Q.jsx)(ue,{className:`size-4`,strokeWidth:1.75}),t[11]=_):_=t[11];let v;t[12]!==n.fromTemplate||t[13]!==s?(v=(0,Q.jsxs)(q,{type:`button`,variant:`secondary`,className:`gap-2`,onClick:s,children:[_,n.fromTemplate]}),t[12]=n.fromTemplate,t[13]=s,t[14]=v):v=t[14];let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Q.jsx)(b,{className:`size-4`,strokeWidth:1.75}),t[15]=y):y=t[15];let x;t[16]!==n.addJob||t[17]!==c?(x=(0,Q.jsxs)(q,{type:`button`,variant:`primary`,className:`gap-2`,onClick:c,children:[y,n.addJob]}),t[16]=n.addJob,t[17]=c,t[18]=x):x=t[18];let S;return t[19]!==x||t[20]!==g||t[21]!==v?(S=(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center justify-end gap-2`,children:[g,v,x]}),t[19]=x,t[20]=g,t[21]=v,t[22]=S):S=t[22],S}function gn(e){let t=(0,Z.c)(46),{c:n,runHistoryLoading:r,runHistory:a,filteredRunHistory:o,jobs:s,onRefreshHistory:c,onOpenJobDetail:l,statusLabels:u}=e,d;t[0]===n.tabRunHistory?d=t[1]:(d=(0,Q.jsx)(`h2`,{id:`cron-history-panel`,className:`sr-only`,children:n.tabRunHistory}),t[0]=n.tabRunHistory,t[1]=d);let f;t[2]===n.runHistoryHint?f=t[3]:(f=(0,Q.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.runHistoryHint}),t[2]=n.runHistoryHint,t[3]=f);let p;t[4]!==d||t[5]!==f?(p=(0,Q.jsxs)(`div`,{children:[d,f]}),t[4]=d,t[5]=f,t[6]=p):p=t[6];let m=n.refresh,h=n.refresh,_;t[7]===c?_=t[8]:(_=()=>void c(),t[7]=c,t[8]=_);let v=r&&`animate-spin`,y;t[9]===v?y=t[10]:(y=i(`size-4`,v),t[9]=v,t[10]=y);let b;t[11]===y?b=t[12]:(b=(0,Q.jsx)(U,{className:y,strokeWidth:1.75}),t[11]=y,t[12]=b);let x;t[13]!==n.refresh||t[14]!==r||t[15]!==_||t[16]!==b?(x=(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,disabled:r,title:m,"aria-label":h,onClick:_,children:b}),t[13]=n.refresh,t[14]=r,t[15]=_,t[16]=b,t[17]=x):x=t[17];let S;t[18]!==x||t[19]!==p?(S=(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[p,x]}),t[18]=x,t[19]=p,t[20]=S):S=t[20];let C;t[21]!==n.colChat||t[22]!==n.colDetail||t[23]!==n.colDuration||t[24]!==n.colJob||t[25]!==n.colStarted||t[26]!==n.colWorkflow||t[27]!==n.emptyHistoryHint||t[28]!==n.emptyHistoryTitle||t[29]!==n.noRunsYet||t[30]!==n.openChat||t[31]!==n.openChatTitle||t[32]!==n.openWorkflow||t[33]!==n.openWorkflowTitle||t[34]!==n.runHistoryHint||t[35]!==n.status||t[36]!==o||t[37]!==s||t[38]!==l||t[39]!==a||t[40]!==r||t[41]!==u?(C=r&&a.length===0?(0,Q.jsx)(`div`,{className:`flex justify-center py-16`,children:(0,Q.jsx)(se,{className:`size-8 animate-spin text-accent`,strokeWidth:1.75})}):o.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center rounded-2xl border border-dashed border-edge-subtle px-6 py-16 text-center dark:border-edge-subtle`,children:[(0,Q.jsx)(g,{className:`mb-4 size-14 text-fg-disabled`,strokeWidth:1.1,"aria-hidden":!0}),(0,Q.jsx)(`h3`,{className:`text-base font-semibold text-fg`,children:a.length===0?n.emptyHistoryTitle:n.noRunsYet}),(0,Q.jsx)(`p`,{className:`mt-2 max-w-sm text-sm text-fg-muted`,children:a.length===0?n.emptyHistoryHint:n.runHistoryHint})]}):(0,Q.jsx)(`div`,{className:`overflow-x-auto rounded-xl border border-edge-subtle bg-surface-base dark:border-edge-subtle`,children:(0,Q.jsxs)(`table`,{className:`w-full min-w-[700px] border-collapse text-left text-sm`,children:[(0,Q.jsx)(`thead`,{children:(0,Q.jsxs)(`tr`,{className:`border-b border-edge text-xs font-medium text-fg-muted`,children:[(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colStarted}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colJob}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.status}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colDuration}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colDetail}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colWorkflow}),(0,Q.jsx)(`th`,{className:`px-3 py-2.5 font-medium`,children:n.colChat})]})}),(0,Q.jsx)(`tbody`,{children:o.map(e=>(0,Q.jsxs)(`tr`,{className:`border-b border-edge/60 last:border-0`,children:[(0,Q.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2.5 text-fg`,children:(0,Q.jsx)(`time`,{dateTime:e.startedAt,children:Y(e.startedAt)})}),(0,Q.jsx)(`td`,{className:`max-w-[10rem] truncate px-3 py-2.5`,children:s.some(t=>t.id===e.jobId)?(0,Q.jsx)(`button`,{type:`button`,className:`text-left text-accent hover:underline`,onClick:()=>{let t=s.find(t=>t.id===e.jobId);t&&l(t)},children:e.jobName||e.jobId}):(0,Q.jsx)(`span`,{className:`text-fg-muted`,children:e.jobName||e.jobId})}),(0,Q.jsx)(`td`,{className:`px-3 py-2.5`,children:(0,Q.jsx)(`span`,{className:i(`inline-flex rounded-md px-2 py-0.5 text-xs font-medium`,e.status===`success`&&`bg-emerald-500/15 text-emerald-800 dark:text-emerald-300`,e.status===`failed`&&`bg-red-500/15 text-red-800 dark:text-red-300`,e.status===`running`&&`bg-accent/15 text-accent`,e.status===`cancelled`&&`bg-surface-hover text-fg-muted`),children:De(e.status,u)})}),(0,Q.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2.5 text-fg-muted`,children:Je(e.duration)}),(0,Q.jsx)(`td`,{className:`max-w-xs truncate px-3 py-2.5 text-fg-muted`,title:e.summary||e.error||``,children:Ee(e.summary||e.error,96)}),(0,Q.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2.5`,children:e.workflowRunId?.trim()?(0,Q.jsx)(`button`,{type:`button`,className:`text-xs font-medium text-accent hover:underline`,title:n.openWorkflowTitle,"aria-label":n.openWorkflowTitle,onClick:()=>St(e.workflowRunId),children:n.openWorkflow}):(0,Q.jsx)(`span`,{className:`text-fg-disabled`,children:`—`})}),(0,Q.jsx)(`td`,{className:`whitespace-nowrap px-3 py-2.5`,children:e.sessionKey?.trim()?(0,Q.jsx)(`button`,{type:`button`,className:`text-xs font-medium text-accent hover:underline`,title:n.openChatTitle,"aria-label":n.openChatTitle,onClick:()=>xt(e.sessionKey),children:n.openChat}):(0,Q.jsx)(`span`,{className:`text-fg-disabled`,children:`—`})})]},e.id))})]})}),t[21]=n.colChat,t[22]=n.colDetail,t[23]=n.colDuration,t[24]=n.colJob,t[25]=n.colStarted,t[26]=n.colWorkflow,t[27]=n.emptyHistoryHint,t[28]=n.emptyHistoryTitle,t[29]=n.noRunsYet,t[30]=n.openChat,t[31]=n.openChatTitle,t[32]=n.openWorkflow,t[33]=n.openWorkflowTitle,t[34]=n.runHistoryHint,t[35]=n.status,t[36]=o,t[37]=s,t[38]=l,t[39]=a,t[40]=r,t[41]=u,t[42]=C):C=t[42];let w;return t[43]!==S||t[44]!==C?(w=(0,Q.jsxs)(`section`,{"aria-labelledby":`cron-history-panel`,className:`flex flex-col gap-3`,children:[S,C]}),t[43]=S,t[44]=C,t[45]=w):w=t[45],w}function _n(e){let t=(0,Z.c)(77),{job:n,c:r,localeTag:a,scheduleBadgeLabels:o,absorbCardClickJobIdRef:s,scheduleAbsorbNextMenuCardClick:c,onOpenDetail:l,onToggle:u,onEdit:d,onRunNow:f,onDelete:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=i(`flex h-full min-h-0 cursor-pointer flex-col rounded-xl border border-edge-subtle bg-surface-base text-left transition-colors duration-150 ease-out dark:border-edge-subtle`,`hover:bg-surface-hover`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent focus-visible:ring-offset-2 focus-visible:ring-offset-surface-panel`),t[0]=m):m=t[0];let h,_;t[1]!==s||t[2]!==n||t[3]!==l?(h=()=>{if(s.current===n.id){s.current=null;return}l(n)},_=e=>{if(e.key===`Enter`||e.key===` `){if(e.preventDefault(),s.current===n.id){s.current=null;return}l(n)}},t[1]=s,t[2]=n,t[3]=l,t[4]=h,t[5]=_):(h=t[4],_=t[5]);let v=n.enabled,y=n.enabled?`justify-end bg-accent`:`justify-start bg-surface-hover`,b;t[6]===y?b=t[7]:(b=i(`inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-edge p-0.5 transition-colors`,y),t[6]=y,t[7]=b);let x;t[8]!==n||t[9]!==u?(x=e=>{e.stopPropagation(),u(n,!n.enabled)},t[8]=n,t[9]=u,t[10]=x):x=t[10];let S;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Q.jsx)(`span`,{className:`size-4 rounded-full bg-surface-panel shadow-surface ring-1 ring-edge/40 dark:ring-edge/55`}),t[11]=S):S=t[11];let C;t[12]!==n.enabled||t[13]!==b||t[14]!==x?(C=(0,Q.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":v,className:b,onClick:x,children:S}),t[12]=n.enabled,t[13]=b,t[14]=x,t[15]=C):C=t[15];let w;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Q.jsx)(ne,{className:`size-4`,strokeWidth:1.75}),t[16]=w):w=t[16];let T;t[17]===r.jobCardMenuAria?T=t[18]:(T=(0,Q.jsx)(it,{asChild:!0,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":r.jobCardMenuAria,onClick:yn,children:w})}),t[17]=r.jobCardMenuAria,t[18]=T);let E;t[19]!==n||t[20]!==d||t[21]!==c?(E=()=>{c(n.id),d(n)},t[19]=n,t[20]=d,t[21]=c,t[22]=E):E=t[22];let D;t[23]!==r.edit||t[24]!==E?(D=(0,Q.jsx)(rt,{className:`cursor-pointer select-none rounded-lg px-2 py-1.5 text-sm text-fg outline-none data-highlighted:bg-surface-hover`,onSelect:E,children:r.edit}),t[23]=r.edit,t[24]=E,t[25]=D):D=t[25];let O;t[26]!==n||t[27]!==f||t[28]!==c?(O=()=>{c(n.id),f(n)},t[26]=n,t[27]=f,t[28]=c,t[29]=O):O=t[29];let k;t[30]!==r.runNow||t[31]!==O?(k=(0,Q.jsx)(rt,{className:`cursor-pointer select-none rounded-lg px-2 py-1.5 text-sm text-fg outline-none data-highlighted:bg-surface-hover`,onSelect:O,children:r.runNow}),t[30]=r.runNow,t[31]=O,t[32]=k):k=t[32];let A;t[33]!==n||t[34]!==p||t[35]!==c?(A=()=>{c(n.id),p(n)},t[33]=n,t[34]=p,t[35]=c,t[36]=A):A=t[36];let j;t[37]!==r.delete||t[38]!==A?(j=(0,Q.jsx)(rt,{className:`cursor-pointer select-none rounded-lg px-2 py-1.5 text-sm text-red-600 outline-none data-highlighted:bg-red-500/10 dark:text-red-400`,onSelect:A,children:r.delete}),t[37]=r.delete,t[38]=A,t[39]=j):j=t[39];let M;t[40]!==D||t[41]!==k||t[42]!==j?(M=(0,Q.jsx)(at,{children:(0,Q.jsxs)(ot,{className:`z-50 min-w-[10rem] rounded-xl border border-edge-subtle bg-surface-panel p-1 shadow-elevated dark:border-edge-subtle`,sideOffset:4,align:`end`,onCloseAutoFocus:vn,children:[D,k,j]})}),t[40]=D,t[41]=k,t[42]=j,t[43]=M):M=t[43];let N;t[44]!==T||t[45]!==M?(N=(0,Q.jsxs)(nt,{children:[T,M]}),t[44]=T,t[45]=M,t[46]=N):N=t[46];let P;t[47]!==N||t[48]!==C?(P=(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2 px-4 pt-3`,children:[C,N]}),t[47]=N,t[48]=C,t[49]=P):P=t[49];let F=n.name||n.id,I;t[50]===F?I=t[51]:(I=(0,Q.jsx)(`h3`,{className:`line-clamp-2 font-semibold text-fg`,children:F}),t[50]=F,t[51]=I);let L;t[52]===n?L=t[53]:(L=Fe(n),t[52]=n,t[53]=L);let R;t[54]===n?R=t[55]:(R=Fe(n),t[54]=n,t[55]=R);let z;t[56]===R?z=t[57]:(z=(0,Q.jsx)(be,{content:R,compact:!0}),t[56]=R,t[57]=z);let B;t[58]!==L||t[59]!==z?(B=(0,Q.jsx)(`div`,{className:`max-h-[4.5rem] overflow-hidden text-sm text-fg-muted [&_.markdown-body]:text-sm [&_.markdown-body]:leading-snug`,title:L,children:z}),t[58]=L,t[59]=z,t[60]=B):B=t[60];let V;t[61]!==I||t[62]!==B?(V=(0,Q.jsxs)(`div`,{className:`flex flex-1 flex-col gap-2 px-4 pb-3 pt-2`,children:[I,B]}),t[61]=I,t[62]=B,t[63]=V):V=t[63];let H;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,Q.jsx)(g,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),t[64]=H):H=t[64];let U;t[65]!==n||t[66]!==a||t[67]!==o?(U=Te(n,a,o),t[65]=n,t[66]=a,t[67]=o,t[68]=U):U=t[68];let W;t[69]===U?W=t[70]:(W=(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5 border-t border-edge-subtle/90 px-4 py-2.5 text-xs text-fg-muted dark:border-edge-subtle`,children:[H,(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:U})]}),t[69]=U,t[70]=W);let G;return t[71]!==h||t[72]!==P||t[73]!==V||t[74]!==_||t[75]!==W?(G=(0,Q.jsxs)(`article`,{role:`button`,tabIndex:0,className:m,onClick:h,onKeyDown:_,children:[P,V,W]}),t[71]=h,t[72]=P,t[73]=V,t[74]=_,t[75]=W,t[76]=G):G=t[76],G}function vn(e){return e.preventDefault()}function yn(e){return e.stopPropagation()}function bn(e){let t=(0,Z.c)(134),{c:n,language:r,localeTag:o,scheduleBadgeLabels:s,loading:c,sortedSystemJobs:l,heartbeat:u,keepAwake:d,wakeSupported:f,onWakeUnsupportedClick:p,onKeepAwakeToggle:m,absorbCardClickJobIdRef:h,scheduleAbsorbNextMenuCardClick:g,onOpenDetail:_,onToggle:v,onEdit:y,onRunNow:b,onDelete:x}=e,S,C,w,T,E,D,O,k,A,j,M,P;if(t[0]!==n.disabled||t[1]!==n.enabled||t[2]!==n.keepAwake||t[3]!==n.systemHeartbeatEvery||t[4]!==n.systemHeartbeatHint||t[5]!==n.systemHeartbeatInterval||t[6]!==n.systemHeartbeatSettingsLink||t[7]!==n.systemHeartbeatStatus||t[8]!==n.systemHeartbeatTitle||t[9]!==n.systemTasksIntro||t[10]!==n.tabSystemTasks||t[11]!==n.wakeBanner||t[12]!==n.wakeLockUnavailable||t[13]!==u.enabled||t[14]!==u.intervalMs||t[15]!==d||t[16]!==r||t[17]!==o||t[18]!==m||t[19]!==p||t[20]!==f){let e=Ze(u.intervalMs,o,a(r).heartbeatSettings.intervalPresets);M=`cron-system-tasks-panel`,P=`flex flex-col gap-4`,t[33]===n.tabSystemTasks?C=t[34]:(C=(0,Q.jsx)(`h2`,{id:`cron-system-tasks-panel`,className:`sr-only`,children:n.tabSystemTasks}),t[33]=n.tabSystemTasks,t[34]=C),t[35]===n.systemTasksIntro?w=t[36]:(w=(0,Q.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.systemTasksIntro}),t[35]=n.systemTasksIntro,t[36]=w);let s;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Q.jsx)(me,{className:`mt-0.5 size-4 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),t[37]=s):s=t[37];let c;t[38]===n.wakeBanner?c=t[39]:(c=(0,Q.jsxs)(`div`,{className:`flex gap-3 text-sm text-fg`,children:[s,(0,Q.jsx)(`p`,{className:`text-pretty text-fg-muted`,children:n.wakeBanner})]}),t[38]=n.wakeBanner,t[39]=c);let l;t[40]===n.keepAwake?l=t[41]:(l=(0,Q.jsx)(`span`,{className:`text-sm text-fg`,children:n.keepAwake}),t[40]=n.keepAwake,t[41]=l);let h=!f,g=f?void 0:n.wakeLockUnavailable,_=d?`justify-end bg-accent`:`justify-start bg-surface-hover`,v=!f&&`cursor-not-allowed opacity-50`,y;t[42]!==_||t[43]!==v?(y=i(`inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-edge p-0.5 transition-colors`,_,v),t[42]=_,t[43]=v,t[44]=y):y=t[44];let b;t[45]!==m||t[46]!==p||t[47]!==f?(b=()=>{f?m():p()},t[45]=m,t[46]=p,t[47]=f,t[48]=b):b=t[48];let x;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Q.jsx)(`span`,{className:`size-4 rounded-full bg-surface-panel shadow-surface ring-1 ring-edge/40 dark:ring-edge/55`}),t[49]=x):x=t[49];let F;t[50]!==d||t[51]!==h||t[52]!==g||t[53]!==y||t[54]!==b?(F=(0,Q.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":d,disabled:h,title:g,className:y,onClick:b,children:x}),t[50]=d,t[51]=h,t[52]=g,t[53]=y,t[54]=b,t[55]=F):F=t[55];let I;t[56]!==l||t[57]!==F?(I=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 sm:pl-4`,children:[l,F]}),t[56]=l,t[57]=F,t[58]=I):I=t[58],t[59]!==c||t[60]!==I?(T=(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-xl border border-accent/25 bg-accent/5 px-4 py-3 dark:border-accent/30 dark:bg-accent/10 sm:flex-row sm:items-center sm:justify-between`,children:[c,I]}),t[59]=c,t[60]=I,t[61]=T):T=t[61],A=`rounded-xl border border-edge bg-surface-base p-4 dark:bg-surface-hover/20`;let L;t[62]===n.systemHeartbeatTitle?L=t[63]:(L=(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:n.systemHeartbeatTitle}),t[62]=n.systemHeartbeatTitle,t[63]=L);let R;t[64]===n.systemHeartbeatHint?R=t[65]:(R=(0,Q.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:n.systemHeartbeatHint}),t[64]=n.systemHeartbeatHint,t[65]=R);let z;t[66]!==L||t[67]!==R?(z=(0,Q.jsxs)(`div`,{children:[L,R]}),t[66]=L,t[67]=R,t[68]=z):z=t[68];let B;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,Q.jsx)(J,{className:`size-3.5 opacity-70`,"aria-hidden":!0}),t[69]=B):B=t[69];let V;t[70]===n.systemHeartbeatSettingsLink?V=t[71]:(V=(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`shrink-0 gap-1 self-start px-2 py-1.5 text-xs`,asChild:!0,children:(0,Q.jsxs)(N,{to:`/settings/heartbeat`,children:[n.systemHeartbeatSettingsLink,B]})}),t[70]=n.systemHeartbeatSettingsLink,t[71]=V),t[72]!==z||t[73]!==V?(j=(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1 sm:flex-row sm:items-start sm:justify-between`,children:[z,V]}),t[72]=z,t[73]=V,t[74]=j):j=t[74],O=`mt-3 grid gap-2 text-sm sm:grid-cols-2`;let H;t[75]===n.systemHeartbeatStatus?H=t[76]:(H=(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:n.systemHeartbeatStatus}),t[75]=n.systemHeartbeatStatus,t[76]=H);let U=u.enabled?n.enabled:n.disabled,W;t[77]===U?W=t[78]:(W=(0,Q.jsx)(`dd`,{className:`text-fg`,children:U}),t[77]=U,t[78]=W),t[79]!==H||t[80]!==W?(k=(0,Q.jsxs)(`div`,{children:[H,W]}),t[79]=H,t[80]=W,t[81]=k):k=t[81],t[82]===n.systemHeartbeatInterval?D=t[83]:(D=(0,Q.jsx)(`dt`,{className:`text-xs font-medium text-fg-muted`,children:n.systemHeartbeatInterval}),t[82]=n.systemHeartbeatInterval,t[83]=D),S=`text-fg`;let G;t[84]===Symbol.for(`react.memo_cache_sentinel`)?(G=/\{\{value\}\}/g,t[84]=G):G=t[84],E=n.systemHeartbeatEvery.replace(G,e),t[0]=n.disabled,t[1]=n.enabled,t[2]=n.keepAwake,t[3]=n.systemHeartbeatEvery,t[4]=n.systemHeartbeatHint,t[5]=n.systemHeartbeatInterval,t[6]=n.systemHeartbeatSettingsLink,t[7]=n.systemHeartbeatStatus,t[8]=n.systemHeartbeatTitle,t[9]=n.systemTasksIntro,t[10]=n.tabSystemTasks,t[11]=n.wakeBanner,t[12]=n.wakeLockUnavailable,t[13]=u.enabled,t[14]=u.intervalMs,t[15]=d,t[16]=r,t[17]=o,t[18]=m,t[19]=p,t[20]=f,t[21]=S,t[22]=C,t[23]=w,t[24]=T,t[25]=E,t[26]=D,t[27]=O,t[28]=k,t[29]=A,t[30]=j,t[31]=M,t[32]=P}else S=t[21],C=t[22],w=t[23],T=t[24],E=t[25],D=t[26],O=t[27],k=t[28],A=t[29],j=t[30],M=t[31],P=t[32];let F;t[85]!==S||t[86]!==E?(F=(0,Q.jsx)(`dd`,{className:S,children:E}),t[85]=S,t[86]=E,t[87]=F):F=t[87];let I;t[88]!==F||t[89]!==D?(I=(0,Q.jsxs)(`div`,{children:[D,F]}),t[88]=F,t[89]=D,t[90]=I):I=t[90];let L;t[91]!==I||t[92]!==O||t[93]!==k?(L=(0,Q.jsxs)(`dl`,{className:O,children:[k,I]}),t[91]=I,t[92]=O,t[93]=k,t[94]=L):L=t[94];let R;t[95]!==L||t[96]!==A||t[97]!==j?(R=(0,Q.jsxs)(`div`,{className:A,children:[j,L]}),t[95]=L,t[96]=A,t[97]=j,t[98]=R):R=t[98];let z;t[99]===n.systemDreamingTitle?z=t[100]:(z=(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:n.systemDreamingTitle}),t[99]=n.systemDreamingTitle,t[100]=z);let B;t[101]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,Q.jsx)(J,{className:`size-3.5 opacity-70`,"aria-hidden":!0}),t[101]=B):B=t[101];let V;t[102]===n.systemDreamingSettingsLink?V=t[103]:(V=(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`shrink-0 gap-1 self-start px-2 py-1.5 text-xs`,asChild:!0,children:(0,Q.jsxs)(N,{to:`/settings/dreams`,children:[n.systemDreamingSettingsLink,B]})}),t[102]=n.systemDreamingSettingsLink,t[103]=V);let H;t[104]!==z||t[105]!==V?(H=(0,Q.jsxs)(`div`,{className:`mb-2 flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between`,children:[z,V]}),t[104]=z,t[105]=V,t[106]=H):H=t[106];let U;t[107]===n.systemDreamingHint?U=t[108]:(U=(0,Q.jsx)(`p`,{className:`mb-3 text-xs text-fg-muted`,children:n.systemDreamingHint}),t[107]=n.systemDreamingHint,t[108]=U);let W;t[109]!==h||t[110]!==n||t[111]!==c||t[112]!==o||t[113]!==x||t[114]!==y||t[115]!==_||t[116]!==b||t[117]!==v||t[118]!==g||t[119]!==s||t[120]!==l?(W=c&&l.length===0?(0,Q.jsx)(`div`,{className:`flex justify-center py-12`,"aria-busy":`true`,children:(0,Q.jsx)(se,{className:`size-8 animate-spin text-accent`,strokeWidth:1.75})}):l.length===0?(0,Q.jsx)(`p`,{className:`rounded-lg border border-edge-subtle bg-surface-hover/30 px-3 py-4 text-sm text-fg-muted dark:border-edge-subtle`,children:n.systemDreamingEmpty}):(0,Q.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-[repeat(auto-fill,minmax(280px,1fr))]`,children:l.map(e=>(0,Q.jsx)(_n,{job:e,c:n,localeTag:o,scheduleBadgeLabels:s,absorbCardClickJobIdRef:h,scheduleAbsorbNextMenuCardClick:g,onOpenDetail:_,onToggle:v,onEdit:y,onRunNow:b,onDelete:x},e.id))}),t[109]=h,t[110]=n,t[111]=c,t[112]=o,t[113]=x,t[114]=y,t[115]=_,t[116]=b,t[117]=v,t[118]=g,t[119]=s,t[120]=l,t[121]=W):W=t[121];let G;t[122]!==H||t[123]!==U||t[124]!==W?(G=(0,Q.jsxs)(`div`,{children:[H,U,W]}),t[122]=H,t[123]=U,t[124]=W,t[125]=G):G=t[125];let ee;return t[126]!==C||t[127]!==w||t[128]!==T||t[129]!==R||t[130]!==G||t[131]!==M||t[132]!==P?(ee=(0,Q.jsxs)(`section`,{"aria-labelledby":M,className:P,children:[C,w,T,R,G]}),t[126]=C,t[127]=w,t[128]=T,t[129]=R,t[130]=G,t[131]=M,t[132]=P,t[133]=ee):ee=t[133],ee}function xn(e,t){let n=e.templates;if(!n||typeof n!=`object`)return;let r=n[t];if(!r||typeof r!=`object`)return;let i=r.title?.trim(),a=r.prompt?.trim();if(!(!i||!a))return{title:i,description:(r.description??``).trim(),prompt:a}}var Sn=[`daily`,`monitoring`,`reports`,`automation`],Cn=[{templateId:`morning_briefing`,category:`daily`,defaultSchedule:`0 7 * * 1-5`,defaultSessionTarget:`isolated`},{templateId:`standup_prep`,category:`daily`,defaultSchedule:`0 8 * * 1-5`,defaultSessionTarget:`isolated`},{templateId:`meeting_prep`,category:`daily`,defaultSchedule:`0 9 * * 1-5`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`meeting_prep`},{templateId:`end_of_day_wrap_up`,category:`daily`,defaultSchedule:`0 18 * * 1-5`,defaultSessionTarget:`isolated`},{templateId:`inbox_triage`,category:`daily`,defaultSchedule:`30 8 * * 1-5`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`inbox_triage`},{templateId:`competitor_watch`,category:`monitoring`,defaultSchedule:`0 9 * * 1`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`competitor_scan`},{templateId:`trending_topics_monitor`,category:`monitoring`,defaultSchedule:`0 10 * * 1-5`,defaultSessionTarget:`isolated`},{templateId:`tech_radar_stack`,category:`monitoring`,defaultSchedule:`0 11 * * 3`,defaultSessionTarget:`isolated`},{templateId:`dependency_check_audit`,category:`monitoring`,defaultSchedule:`0 9 * * 0`,defaultSessionTarget:`isolated`},{templateId:`weekly_review`,category:`reports`,defaultSchedule:`0 17 * * 5`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`weekly_review`},{templateId:`code_quality_report`,category:`reports`,defaultSchedule:`0 14 * * 1`,defaultSessionTarget:`isolated`},{templateId:`git_activity_summary`,category:`reports`,defaultSchedule:`0 9 * * 1`,defaultSessionTarget:`isolated`},{templateId:`user_feedback_digest`,category:`reports`,defaultSchedule:`0 16 * * 5`,defaultSessionTarget:`isolated`},{templateId:`content_repurpose`,category:`reports`,defaultSchedule:`0 11 * * 4`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`content_repurpose`},{templateId:`stale_todo_or_issue_sweep`,category:`automation`,defaultSchedule:`0 10 * * 2`,defaultSessionTarget:`isolated`},{templateId:`release_notes_or_changelog_draft`,category:`automation`,defaultSchedule:`0 10 * * 4`,defaultSessionTarget:`isolated`},{templateId:`client_proposal`,category:`automation`,defaultSchedule:`0 10 * * 2`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`client_proposal`},{templateId:`offer_design`,category:`automation`,defaultSchedule:`0 14 1 * *`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`offer_design`},{templateId:`decision_compare`,category:`automation`,defaultSchedule:`0 15 * * 3`,defaultSessionTarget:`isolated`,taskKind:`workflowRun`,workflowDefinitionId:`decision_compare`},{templateId:`workspace_cleanup_suggestions`,category:`automation`,defaultSchedule:`30 18 * * 5`,defaultSessionTarget:`isolated`},{templateId:`smoke_or_ci_health_reminder`,category:`automation`,defaultSchedule:`0 8 * * 1`,defaultSessionTarget:`isolated`}];function wn(e){return Cn.find(t=>t.templateId===e)}function Tn(e,t,n){let r=t.trim().toLowerCase();return Cn.filter(t=>{if(n!==`all`&&t.category!==n)return!1;if(!r)return!0;let i=xn(e,t.templateId);return[t.templateId,i?.title,i?.description,e.templateCategories[t.category]].filter(Boolean).join(` `).toLowerCase().includes(r)})}function En(e){let t=new Map;for(let n of e){let e=t.get(n.category)??[];e.push(n),t.set(n.category,e)}return Sn.flatMap(e=>{let n=t.get(e);return n?.length?[{category:e,items:n}]:[]})}function Dn(e){let t=(0,Z.c)(23),{template:n,cron:r,localeTag:a,scheduleBadgeLabels:o,onSelectTemplate:s}=e,c;t[0]!==r||t[1]!==n.templateId?(c=xn(r,n.templateId),t[0]=r,t[1]=n.templateId,t[2]=c):c=t[2];let l=c;if(!l)return null;let u;t[3]!==a||t[4]!==o||t[5]!==n.defaultSchedule?(u=Te({schedule:Ve(n.defaultSchedule),nextRunAtMs:void 0},a,o),t[3]=a,t[4]=o,t[5]=n.defaultSchedule,t[6]=u):u=t[6];let d=u,f;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=i(`flex h-full flex-col gap-1.5 rounded-xl border border-edge-subtle bg-surface-base p-4 text-left transition-colors`,`hover:border-accent/40 hover:bg-surface-hover`,ve.focusRingPanel),t[7]=f):f=t[7];let p;t[8]!==s||t[9]!==n.templateId?(p=()=>s(n.templateId),t[8]=s,t[9]=n.templateId,t[10]=p):p=t[10];let m=`${r.templateCategories[n.category]} — ${l.title}`,h;t[11]===l.title?h=t[12]:(h=(0,Q.jsx)(`span`,{className:`font-semibold text-fg`,children:l.title}),t[11]=l.title,t[12]=h);let g;t[13]===l.description?g=t[14]:(g=(0,Q.jsx)(`span`,{className:`line-clamp-2 text-sm text-fg-muted`,children:l.description}),t[13]=l.description,t[14]=g);let _;t[15]===d?_=t[16]:(_=(0,Q.jsx)(`span`,{className:`mt-auto flex items-center gap-1 pt-1 text-xs text-fg-muted`,children:(0,Q.jsx)(`span`,{className:`tabular-nums`,children:d})}),t[15]=d,t[16]=_);let v;return t[17]!==p||t[18]!==m||t[19]!==h||t[20]!==g||t[21]!==_?(v=(0,Q.jsxs)(`button`,{type:`button`,className:f,onClick:p,"aria-label":m,children:[h,g,_]}),t[17]=p,t[18]=m,t[19]=h,t[20]=g,t[21]=_,t[22]=v):v=t[22],v}function On(e){let t=(0,Z.c)(49),{cron:n,localeTag:r,scheduleBadgeLabels:a,categoryFilter:o,onCategoryFilterChange:s,onSelectTemplate:c,variant:l}=e,u=l===void 0?`embedded`:l,[d,f]=(0,X.useState)(``),p;t[0]!==o||t[1]!==n||t[2]!==d?(p=Tn(n,d,o),t[0]=o,t[1]=n,t[2]=d,t[3]=p):p=t[3];let m=p,h;t[4]===m?h=t[5]:(h=En(m),t[4]=m,t[5]=h);let g=h,_;t[6]!==o||t[7]!==d?(_=o===`all`&&!d.trim(),t[6]=o,t[7]=d,t[8]=_):_=t[8];let v=_,y;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Q.jsx)(oe,{className:`pointer-events-none absolute left-3 top-1/2 size-4 -translate-y-1/2 text-fg-subtle`,"aria-hidden":!0}),t[9]=y):y=t[9];let b;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(b=e=>f(e.target.value),t[10]=b):b=t[10];let x=n.templateSearchPlaceholder,S;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(S=i(`h-10 w-full rounded-xl border border-edge bg-surface-base py-2 pl-10 pr-3 text-sm text-fg`,`placeholder:text-fg-subtle`,ve.focusRingPanel),t[11]=S):S=t[11];let C;t[12]!==n.templateSearchPlaceholder||t[13]!==d?(C=(0,Q.jsxs)(`div`,{className:`relative`,children:[y,(0,Q.jsx)(`input`,{value:d,onChange:b,placeholder:x,className:S})]}),t[12]=n.templateSearchPlaceholder,t[13]=d,t[14]=C):C=t[14];let w=n.fromTemplate,T=o===`all`?`secondary`:`ghost`,E;t[15]===s?E=t[16]:(E=()=>s(`all`),t[15]=s,t[16]=E);let D;t[17]!==n.templateFilterAll||t[18]!==T||t[19]!==E?(D=(0,Q.jsx)(q,{type:`button`,variant:T,className:`h-8 rounded-full px-3 py-1.5 text-xs`,onClick:E,children:n.templateFilterAll}),t[17]=n.templateFilterAll,t[18]=T,t[19]=E,t[20]=D):D=t[20];let O;t[21]!==o||t[22]!==n.templateCategories||t[23]!==s?(O=Sn.map(e=>(0,Q.jsx)(q,{type:`button`,variant:o===e?`secondary`:`ghost`,className:`h-8 rounded-full px-3 py-1.5 text-xs`,onClick:()=>s(e),children:n.templateCategories[e]},e)),t[21]=o,t[22]=n.templateCategories,t[23]=s,t[24]=O):O=t[24];let k;t[25]!==n.fromTemplate||t[26]!==D||t[27]!==O?(k=(0,Q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,role:`group`,"aria-label":w,children:[D,O]}),t[25]=n.fromTemplate,t[26]=D,t[27]=O,t[28]=k):k=t[28];let A;t[29]!==k||t[30]!==C?(A=(0,Q.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-4`,children:[C,k]}),t[29]=k,t[30]=C,t[31]=A):A=t[31];let j=A,M;t[32]!==n||t[33]!==m||t[34]!==g||t[35]!==r||t[36]!==c||t[37]!==a||t[38]!==v||t[39]!==u?(M=m.length===0?(0,Q.jsx)(`div`,{className:i(`text-center text-sm text-fg-muted`,u===`dialog`&&`flex h-full flex-col items-center justify-center px-4 py-12`),children:n.templatesEmptyHint}):v?(0,Q.jsx)(`div`,{className:`flex flex-col gap-6 pb-1`,children:g.map(e=>(0,Q.jsxs)(`section`,{children:[(0,Q.jsx)(`h3`,{className:`mb-3 text-xs font-semibold uppercase tracking-wide text-fg-subtle`,children:n.templateCategories[e.category]}),(0,Q.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 xl:grid-cols-3`,children:e.items.map(e=>(0,Q.jsx)(Dn,{template:e,cron:n,localeTag:r,scheduleBadgeLabels:a,onSelectTemplate:c},e.templateId))})]},e.category))}):(0,Q.jsx)(`div`,{className:`grid grid-cols-1 gap-3 pb-1 sm:grid-cols-2 xl:grid-cols-3`,children:m.map(e=>(0,Q.jsx)(Dn,{template:e,cron:n,localeTag:r,scheduleBadgeLabels:a,onSelectTemplate:c},e.templateId))}),t[32]=n,t[33]=m,t[34]=g,t[35]=r,t[36]=c,t[37]=a,t[38]=v,t[39]=u,t[40]=M):M=t[40];let N=M;if(u===`dialog`){let e;t[41]===N?e=t[42]:(e=(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:N}),t[41]=N,t[42]=e);let n;return t[43]!==j||t[44]!==e?(n=(0,Q.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4`,children:[j,e]}),t[43]=j,t[44]=e,t[45]=n):n=t[45],n}let P;return t[46]!==j||t[47]!==N?(P=(0,Q.jsxs)(`div`,{className:`flex w-full flex-col gap-4`,children:[j,N]}),t[46]=j,t[47]=N,t[48]=P):P=t[48],P}function kn(e){let t=(0,Z.c)(49),{c:n,localeTag:r,scheduleBadgeLabels:a,loading:o,jobsCount:s,sortedJobs:c,templateCategoryFilter:l,onTemplateCategoryFilterChange:u,onSelectTemplate:d,keepAwake:f,wakeSupported:p,onWakeUnsupportedClick:m,onKeepAwakeToggle:h,absorbCardClickJobIdRef:g,scheduleAbsorbNextMenuCardClick:_,onOpenDetail:v,onToggle:y,onEdit:b,onAddJob:x,onRunNow:S,onDelete:C}=e,w;t[0]===n.tabMyTasks?w=t[1]:(w=(0,Q.jsx)(`h2`,{id:`cron-tasks-panel`,className:`sr-only`,children:n.tabMyTasks}),t[0]=n.tabMyTasks,t[1]=w);let T;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Q.jsx)(me,{className:`mt-0.5 size-4 shrink-0 text-accent`,strokeWidth:1.75,"aria-hidden":!0}),t[2]=T):T=t[2];let E;t[3]===n.wakeBanner?E=t[4]:(E=(0,Q.jsxs)(`div`,{className:`flex gap-3 text-sm text-fg`,children:[T,(0,Q.jsx)(`p`,{className:`text-pretty text-fg-muted`,children:n.wakeBanner})]}),t[3]=n.wakeBanner,t[4]=E);let D;t[5]===n.keepAwake?D=t[6]:(D=(0,Q.jsx)(`span`,{className:`text-sm text-fg`,children:n.keepAwake}),t[5]=n.keepAwake,t[6]=D);let O=!p,k=p?void 0:n.wakeLockUnavailable,A=f?`justify-end bg-accent`:`justify-start bg-surface-hover`,j=!p&&`cursor-not-allowed opacity-50`,M;t[7]!==A||t[8]!==j?(M=i(`inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-edge p-0.5 transition-colors`,A,j),t[7]=A,t[8]=j,t[9]=M):M=t[9];let N;t[10]!==h||t[11]!==m||t[12]!==p?(N=()=>{p?h():m()},t[10]=h,t[11]=m,t[12]=p,t[13]=N):N=t[13];let P;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,Q.jsx)(`span`,{className:`size-4 rounded-full bg-surface-panel shadow-surface ring-1 ring-edge/40 dark:ring-edge/55`}),t[14]=P):P=t[14];let F;t[15]!==f||t[16]!==N||t[17]!==O||t[18]!==k||t[19]!==M?(F=(0,Q.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":f,disabled:O,title:k,className:M,onClick:N,children:P}),t[15]=f,t[16]=N,t[17]=O,t[18]=k,t[19]=M,t[20]=F):F=t[20];let I;t[21]!==F||t[22]!==D?(I=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 sm:pl-4`,children:[D,F]}),t[21]=F,t[22]=D,t[23]=I):I=t[23];let L;t[24]!==I||t[25]!==E?(L=(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-xl border border-accent/25 bg-accent/5 px-4 py-3 dark:border-accent/30 dark:bg-accent/10 sm:flex-row sm:items-center sm:justify-between`,children:[E,I]}),t[24]=I,t[25]=E,t[26]=L):L=t[26];let R;t[27]!==g||t[28]!==n||t[29]!==s||t[30]!==o||t[31]!==r||t[32]!==x||t[33]!==C||t[34]!==b||t[35]!==v||t[36]!==S||t[37]!==d||t[38]!==u||t[39]!==y||t[40]!==_||t[41]!==a||t[42]!==c||t[43]!==l?(R=o&&s===0?(0,Q.jsx)(`div`,{className:`flex justify-center py-16`,"aria-busy":`true`,children:(0,Q.jsx)(se,{className:`size-8 animate-spin text-accent`,strokeWidth:1.75})}):s===0?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6 rounded-2xl bg-surface-base px-4 py-8 dark:bg-surface-hover/25 sm:px-6 sm:py-10`,children:[(0,Q.jsx)(`div`,{className:`w-full max-w-6xl`,children:(0,Q.jsx)(On,{cron:n,localeTag:r,scheduleBadgeLabels:a,categoryFilter:l,onCategoryFilterChange:u,onSelectTemplate:d})}),(0,Q.jsx)(`div`,{className:`flex justify-center`,children:(0,Q.jsx)(q,{type:`button`,variant:`primary`,onClick:x,children:n.emptyStateCta})})]}):(0,Q.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-[repeat(auto-fill,minmax(280px,1fr))]`,children:c.map(e=>(0,Q.jsx)(_n,{job:e,c:n,localeTag:r,scheduleBadgeLabels:a,absorbCardClickJobIdRef:g,scheduleAbsorbNextMenuCardClick:_,onOpenDetail:e=>void v(e),onToggle:(e,t)=>void y(e,t),onEdit:b,onRunNow:S,onDelete:C},e.id))}),t[27]=g,t[28]=n,t[29]=s,t[30]=o,t[31]=r,t[32]=x,t[33]=C,t[34]=b,t[35]=v,t[36]=S,t[37]=d,t[38]=u,t[39]=y,t[40]=_,t[41]=a,t[42]=c,t[43]=l,t[44]=R):R=t[44];let z;return t[45]!==w||t[46]!==L||t[47]!==R?(z=(0,Q.jsxs)(`section`,{"aria-labelledby":`cron-tasks-panel`,className:`flex flex-col gap-4`,children:[w,L,R]}),t[45]=w,t[46]=L,t[47]=R,t[48]=z):z=t[48],z}function An(e){let t=(0,Z.c)(29),{open:n,onOpenChange:r,c:a,localeTag:o,scheduleBadgeLabels:s,categoryFilter:c,onCategoryFilterChange:l,onSelectTemplate:u}=e,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Q.jsx)(L,{className:`xopc-dialog-overlay fixed inset-0 z-[62] bg-scrim`}),t[0]=d):d=t[0];let f;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=i(`xopc-dialog-content-pane pointer-events-auto relative flex h-[min(90vh,840px)] w-full max-w-5xl flex-col`,`rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none dark:border-edge`,ve.focusRingPanel),t[1]=f):f=t[1];let p;t[2]===a.fromTemplate?p=t[3]:(p=(0,Q.jsx)(m,{className:`text-lg font-semibold text-fg`,children:a.fromTemplate}),t[2]=a.fromTemplate,t[3]=p);let h;t[4]===a.templatePickerHint?h=t[5]:(h=(0,Q.jsx)(R,{className:`mt-1 text-sm leading-6 text-fg-muted`,children:a.templatePickerHint}),t[4]=a.templatePickerHint,t[5]=h);let g;t[6]!==p||t[7]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[p,h]}),t[6]=p,t[7]=h,t[8]=g):g=t[8];let _;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Q.jsx)(te,{className:`size-5`,strokeWidth:1.75,"aria-hidden":!0}),t[9]=_):_=t[9];let v;t[10]===a.close?v=t[11]:(v=(0,Q.jsx)(ce,{asChild:!0,children:(0,Q.jsx)(q,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":a.close,children:_})}),t[10]=a.close,t[11]=v);let y;t[12]!==g||t[13]!==v?(y=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-start justify-between gap-4 border-b border-edge-subtle px-6 py-5`,children:[g,v]}),t[12]=g,t[13]=v,t[14]=y):y=t[14];let b;t[15]!==a||t[16]!==c||t[17]!==o||t[18]!==l||t[19]!==u||t[20]!==s?(b=(0,Q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-6 py-5`,children:(0,Q.jsx)(On,{variant:`dialog`,cron:a,localeTag:o,scheduleBadgeLabels:s,categoryFilter:c,onCategoryFilterChange:l,onSelectTemplate:u})}),t[15]=a,t[16]=c,t[17]=o,t[18]=l,t[19]=u,t[20]=s,t[21]=b):b=t[21];let x;t[22]!==y||t[23]!==b?(x=(0,Q.jsxs)(z,{children:[d,(0,Q.jsx)(`div`,{className:`fixed inset-0 z-[62] flex items-center justify-center p-4 pointer-events-none`,children:(0,Q.jsxs)(E,{className:f,onOpenAutoFocus:jn,children:[y,b]})})]}),t[22]=y,t[23]=b,t[24]=x):x=t[24];let S;return t[25]!==r||t[26]!==n||t[27]!==x?(S=(0,Q.jsx)(M,{open:n,onOpenChange:r,children:x}),t[25]=r,t[26]=n,t[27]=x,t[28]=S):S=t[28],S}function jn(e){return e.preventDefault()}function Mn(){return{formOpen:!1,formMode:`add`,formJobId:null,formName:``,formSchedule:Ve(_t),formChannel:`local`,formChatId:``,formMessage:``,formMessageMdMode:`edit`,formTaskKind:`message`,formWorkflowDefinitionId:``,formWorkflowGoal:``,formWorkflowArgValues:{},messageEditorNonce:0,formSessionTarget:`main`,formAgentId:``,formAgentLocalOnly:!1,formWorkingDirectory:``,formModel:``,formSubmitting:!1}}function Nn(e,t){switch(t.type){case`patch`:return{...e,...t.patch};case`replace`:return t.state;case`setMessageMdMode`:return{...e,formMessageMdMode:t.mode,messageEditorNonce:t.mode===`edit`?e.messageEditorNonce+1:e.messageEditorNonce}}}function Pn(e,t){let n=Mn();if(n.formOpen=!0,n.formMode=e?`edit`:`add`,n.formJobId=e?.id??null,!e)return n.formModel=t(),n;if(n.formName=e.name||``,n.formSchedule=e.schedule,n.formMessage=Fe(e)??``,e.payload.kind===`workflowRun`){n.formTaskKind=`workflowRun`,n.formWorkflowDefinitionId=e.payload.definitionId,n.formWorkflowGoal=e.payload.goal||``,n.formWorkflowArgValues=Xt(e.payload.definitionId,e.payload.inputEnvelope?.payload??e.payload.input??{});let t=e.payload.agentId?.trim().toLowerCase();t&&(n.formAgentId=t)}n.formSessionTarget=e.sessionTarget===`isolated`?`isolated`:`main`,n.formAgentId=(e.sessionTarget||`main`)===`isolated`&&e.agentId?.trim()?e.agentId.trim().toLowerCase():``,n.formWorkingDirectory=(e.sessionTarget||`main`)===`isolated`&&e.workingDirectory?.trim()?e.workingDirectory.trim():``;let r=e.payload?.kind===`agentTurn`&&e.payload.model?.trim()?e.payload.model.trim():``;n.formModel=e.model?.trim()||r||t();let i=e.delivery?.channel===`local`;return n.formAgentLocalOnly=(e.sessionTarget||`main`)===`isolated`&&!i&&(!e.delivery?.to||e.delivery.mode===`none`),i?(n.formChannel=`local`,n.formChatId=``):e.delivery&&e.delivery.mode!==`none`&&e.delivery.to?(n.formChannel=e.delivery.channel||`telegram`,n.formChatId=e.delivery.to||``):(n.formChannel=`telegram`,n.formChatId=``),n.formMessageMdMode=`edit`,n.messageEditorNonce=1,n}function Fn(e){let{m:t,defaultModelForForm:n,channels:r,chatAgents:i}=e,[a,o]=(0,X.useReducer)(Nn,void 0,Mn),s=(0,X.useRef)(!1),c=(0,X.useMemo)(()=>new Set([`local`,...r.map(e=>e.name)]),[r]);if(a.formOpen&&a.formMode===`add`&&!c.has(a.formChannel)&&o({type:`patch`,patch:{formChannel:`local`}}),a.formOpen&&a.formMode===`add`&&!s.current){let e=n();e&&e!==a.formModel&&o({type:`patch`,patch:{formModel:e}})}let l=D(()=>je(a.formChannel),[a.formChannel],{enabled:a.formOpen&&a.formChannel!==`local`,initial:[],errorData:[]}),u=a.formChannel===`local`?[]:l.data,d=(0,X.useMemo)(()=>{let e=new Set(i.map(e=>e.id)),t=[...i],n=a.formAgentId.trim().toLowerCase();return n&&!e.has(n)&&t.push({id:n}),t},[i,a.formAgentId]),f=a.formChannel!==`local`&&(a.formTaskKind===`message`&&(a.formSessionTarget===`main`||a.formSessionTarget===`isolated`&&!a.formAgentLocalOnly)||a.formTaskKind===`workflowRun`&&!a.formAgentLocalOnly),p=a.formTaskKind===`workflowRun`?!a.formAgentLocalOnly:a.formTaskKind===`message`&&(a.formSessionTarget===`main`||a.formSessionTarget===`isolated`&&!a.formAgentLocalOnly),m=a.formTaskKind===`workflowRun`?!!a.formWorkflowDefinitionId.trim()&&Zt(a.formWorkflowDefinitionId.trim(),a.formWorkflowArgValues):!!a.formMessage.trim(),h=a.formSchedule.kind===`cron`?!!a.formSchedule.expr.trim():a.formSchedule.kind===`at`?!!a.formSchedule.at.trim():Number.isFinite(a.formSchedule.everyMs)&&a.formSchedule.everyMs>0,g=!!a.formName.trim()&&h&&m&&(!f||!!a.formChatId.trim()),_=(0,X.useCallback)(e=>{s.current=!1,o({type:`replace`,state:Pn(e,n)})},[n]),v=(0,X.useCallback)(e=>{o({type:`setMessageMdMode`,mode:e})},[]),y=(0,X.useCallback)(e=>{let r=wn(e),i=r?xn(t.cron,e):void 0;if(!r||!i)return!1;let a=r.taskKind===`workflowRun`&&!!r.workflowDefinitionId;return s.current=!1,o({type:`replace`,state:{...Mn(),formOpen:!0,formMode:`add`,formName:i.title,formSchedule:Ve(r.defaultSchedule),formMessage:a?``:i.prompt,formTaskKind:a?`workflowRun`:`message`,formWorkflowDefinitionId:a?r.workflowDefinitionId:``,formWorkflowGoal:a?i.description:``,formSessionTarget:r.defaultSessionTarget,formModel:n(),formAgentLocalOnly:a,messageEditorNonce:1}}),!0},[n,t.cron]),b=(0,X.useCallback)(()=>{s.current=!1,o({type:`replace`,state:Mn()})},[]),x=(0,X.useCallback)((e,t,n)=>{let r={formSessionTarget:e};e===`main`?(r.formAgentLocalOnly=!1,r.formAgentId=``,r.formWorkingDirectory=``):e===`isolated`&&!n&&(r.formModel=t()),o({type:`patch`,patch:r})},[]),S=(0,X.useCallback)(e=>{o({type:`patch`,patch:{formChannel:e,formChatId:``,...e===`local`?{formAgentLocalOnly:!1}:{}}})},[]),C=(0,X.useCallback)(e=>{s.current=!0,o({type:`patch`,patch:{formModel:e}})},[]),w=(0,X.useCallback)(()=>{je(a.formChannel).then(l.setData)},[a.formChannel,l.setData]),T=(0,X.useCallback)(e=>{o({type:`patch`,patch:e})},[]);return{formOpen:a.formOpen,formMode:a.formMode,formJobId:a.formJobId,formName:a.formName,formSchedule:a.formSchedule,formChannel:a.formChannel,formChatId:a.formChatId,formMessage:a.formMessage,formMessageMdMode:a.formMessageMdMode,formTaskKind:a.formTaskKind,formWorkflowDefinitionId:a.formWorkflowDefinitionId,formWorkflowGoal:a.formWorkflowGoal,formWorkflowArgValues:a.formWorkflowArgValues,messageEditorNonce:a.messageEditorNonce,formSessionTarget:a.formSessionTarget,formAgentId:a.formAgentId,formAgentLocalOnly:a.formAgentLocalOnly,formWorkingDirectory:a.formWorkingDirectory,formModel:a.formModel,formSubmitting:a.formSubmitting,sessionChatIds:u,setFormName:e=>T({formName:e}),setFormSchedule:e=>T({formSchedule:e}),setFormChatId:e=>T({formChatId:e}),setFormMessage:e=>T({formMessage:e}),setFormTaskKind:e=>T(e===`workflowRun`?{formTaskKind:e,formSessionTarget:`isolated`,formAgentLocalOnly:!1}:{formTaskKind:e}),setFormWorkflowDefinitionId:e=>T({formWorkflowDefinitionId:e,formWorkflowArgValues:{}}),setFormWorkflowGoal:e=>T({formWorkflowGoal:e}),setFormWorkflowArgValues:e=>T({formWorkflowArgValues:e}),setFormAgentId:e=>T({formAgentId:e}),setFormAgentLocalOnly:e=>T({formAgentLocalOnly:e}),setFormWorkingDirectory:e=>T({formWorkingDirectory:e}),setFormSubmitting:e=>T({formSubmitting:e}),canSubmit:g,needsDeliveryChat:f,showChannelPicker:p,cronAgentSelectOptions:d,openForm:_,closeForm:b,applyCronTemplate:y,setMessageMdMode:v,handleFormSessionTargetChange:x,handleFormChannelChange:S,handleFormModelUserChange:C,refreshRecipientsList:w}}function In(e){let{onUnavailable:t}=e,[n,r]=(0,X.useState)(!1),i=(0,X.useRef)(null),a=(0,X.useRef)(`none`),o=(0,X.useRef)(n),s=typeof navigator<`u`&&`wakeLock`in navigator,c=s||ae(),l=(0,X.useCallback)(async()=>{if(a.current===`electron`){try{await window.electronAPI?.cron?.setDisplaySleepPrevented?.(!1)}catch{}a.current=`none`;return}try{await i.current?.release()}catch{}i.current=null,a.current=`none`},[]),u=(0,X.useCallback)(async()=>{let e=typeof window<`u`?window.electronAPI?.cron?.setDisplaySleepPrevented:void 0;if(e)try{await e(!0),a.current=`electron`;return}catch{t(),r(!1);return}if(s)try{let e=await navigator.wakeLock.request(`screen`);i.current=e,a.current=`navigator`,e.addEventListener(`release`,()=>{i.current=null,a.current=`none`})}catch{t(),r(!1)}},[t,s]);return o.current=n,(0,X.useEffect)(()=>{if(!n){l();return}u();let e=()=>{document.visibilityState===`visible`&&o.current&&u()};return document.addEventListener(`visibilitychange`,e),()=>{document.removeEventListener(`visibilitychange`,e),l()}},[n,u,l]),{keepAwake:n,setKeepAwake:r,featureAvailable:c}}function Ln(e){let{hasToken:t,failMessages:n,isHistoryTab:r}=e,[i,a]=(0,X.useState)([]),[o,s]=(0,X.useState)([]),[c,l]=(0,X.useState)([]),[u,d]=(0,X.useState)(``),[f,p]=(0,X.useState)([]),[m,h]=(0,X.useState)(null),[g,_]=(0,X.useState)([]),[v,y]=(0,X.useState)(!1),[b,x]=(0,X.useState)(!1),[S,C]=(0,X.useState)(null),w=(0,X.useCallback)(async()=>{x(!0),C(null);try{a(await Me())}catch(e){C(e instanceof Error?e.message:n.failedToLoadJobs)}finally{x(!1)}},[n.failedToLoadJobs]),T=(0,X.useCallback)(async()=>{try{let[e,t,n,r,i]=await Promise.all([ze(),We(),He(),he(),V().catch(()=>null)]);s(e),l(t),d(n.model||``),h(r.payload?.config??null),i&&p(i.items)}catch{}},[]),E=(0,X.useCallback)(async()=>{y(!0);try{_(await Oe(400))}catch{}finally{y(!1)}},[]);return(0,X.useEffect)(()=>{t&&(w(),T())},[t,w,T]),(0,X.useEffect)(()=>{if(!t)return;let e=()=>{he().then(e=>{h(e.payload?.config??null)})};return window.addEventListener(`config-reload`,e),()=>window.removeEventListener(`config-reload`,e)},[t]),(0,X.useEffect)(()=>{!t||!r||E()},[t,r,E]),{jobs:i,channels:o,availableModels:c,defaultModel:u,chatAgents:f,gatewayConfigRaw:m,runHistory:g,runHistoryLoading:v,loading:b,error:S,setError:C,userCronJobs:(0,X.useMemo)(()=>i.filter(e=>!Ye(e)),[i]),systemCronJobs:(0,X.useMemo)(()=>i.filter(e=>Ye(e)),[i]),heartbeatFromConfig:(0,X.useMemo)(()=>Qe(m),[m]),loadJobs:w,loadAux:T,loadRunHistoryOnly:E,refreshAll:(0,X.useCallback)(()=>{w(),T(),E()},[w,T,E])}}function Rn(e,t){let n=[...e];return n.sort((e,n)=>{let r=e.createdAtMs,i=n.createdAtMs;return t===`created_desc`?i-r:r-i}),n}function zn(e,t,n,r){let i=new Date,a=t===`day`?vt(i):t===`week`?yt(i):bt(i);return e.filter(e=>!(new Date(e.startedAt)<a||n&&e.jobId!==n||r&&e.status!==r))}var Bn={mainTab:`myTasks`,jobSort:`created_desc`,historyRange:`day`,historyJobFilter:``,historyStatusFilter:``,detailOpen:!1,detailJob:null,detailHistory:[],detailLoading:!1,detailActionNotice:null,confirmOpen:!1,templatePickerOpen:!1,templateCategoryFilter:`all`};function Vn(){let e=o(e=>e.language),t=a(e),n=t.cron,r=t.chat,i=c(e=>e.token),l=!!i,u=s(e=>e.resolved)===`dark`,d=e===`zh`?`zh-CN`:`en-US`,[f,m]=y(),[g,_]=(0,X.useReducer)(h,f,e=>({...Bn,mainTab:Dt(e.get(`tab`))})),{mainTab:v,jobSort:b,historyRange:x,historyJobFilter:S,historyStatusFilter:C,detailOpen:w,detailJob:T,detailHistory:E,detailLoading:D,detailActionNotice:O,confirmOpen:k,templatePickerOpen:A,templateCategoryFilter:j}=g,M=Dt(f.get(`tab`));(0,X.useEffect)(()=>{M!==v&&_({type:`patch`,patch:{mainTab:M}})},[M,v]);let N=(0,X.useCallback)(e=>{_({type:`patch`,patch:{mainTab:e}}),m(t=>{let n=new URLSearchParams(t),r=Ot(e);return r?n.set(`tab`,r):n.delete(`tab`),n},{replace:!0})},[m]),P=Ln({hasToken:l,failMessages:{failedToLoadJobs:n.failedToLoadJobs},isHistoryTab:v===`history`}),{setError:F}=P,I=In({onUnavailable:()=>F(n.wakeLockUnavailable)}),L=(0,X.useCallback)(()=>P.defaultModel||(P.availableModels.length>0?P.availableModels[0].id:``),[P.defaultModel,P.availableModels]),R=Fn({m:t,defaultModelForForm:L,channels:P.channels,chatAgents:P.chatAgents}),z=p(l&&R.formOpen?[`workflow-definitions-cron`,i]:null,re,{revalidateOnFocus:!1}),B=z.data??[],V=(0,X.useRef)(null),H=(0,X.useRef)(null),U=(0,X.useCallback)((e,t)=>{V.current=e,H.current=t,_({type:`patch`,patch:{confirmOpen:!0}})},[]),W=(0,X.useCallback)(()=>{_({type:`patch`,patch:{confirmOpen:!1}}),H.current=null,V.current=null},[]),G=(0,X.useRef)(null),ee=(0,X.useCallback)(e=>{G.current=e,window.setTimeout(()=>{G.current===e&&(G.current=null)},400)},[]),K=(0,X.useCallback)(e=>{R.applyCronTemplate(e)&&_({type:`patch`,patch:{templatePickerOpen:!1}})},[R]),te=async()=>{if(!R.formName.trim()){F(n.nameRequired);return}if(R.formSchedule.kind===`cron`&&!R.formSchedule.expr.trim()||R.formSchedule.kind===`at`&&!R.formSchedule.at.trim()||R.formSchedule.kind===`every`&&(!Number.isFinite(R.formSchedule.everyMs)||R.formSchedule.everyMs<=0)){F(n.scheduleRequired);return}if(R.formTaskKind===`message`&&!R.formMessage.trim()){F(n.scheduleRequired);return}if(R.formTaskKind===`workflowRun`&&!R.formWorkflowDefinitionId.trim()){F(n.workflowDefinitionRequired);return}if(R.formTaskKind===`workflowRun`&&!Zt(R.formWorkflowDefinitionId.trim(),R.formWorkflowArgValues)){F(n.workflowArgsRequired);return}if(R.needsDeliveryChat&&!R.formChatId.trim()){F(n.chatIdRequired);return}R.setFormSubmitting(!0),F(null);try{let e=R.formMessage.trim(),t=R.formModel.trim(),n=R.formAgentId.trim().toLowerCase(),r=R.formWorkingDirectory.trim(),i=R.formTaskKind===`workflowRun`,a=R.formTaskKind===`message`&&R.formSessionTarget===`isolated`,o=i?`isolated`:R.formSessionTarget,s;s=i?R.formAgentLocalOnly?{mode:`none`}:R.formChannel===`local`?{mode:`announce`,channel:`local`}:{mode:`announce`,channel:R.formChannel,to:R.formChatId.trim()}:R.formSessionTarget===`isolated`&&R.formAgentLocalOnly?{mode:`none`}:R.formChannel===`local`?{mode:`announce`,channel:`local`}:{mode:`announce`,channel:R.formChannel,to:R.formChatId.trim()};let c;if(i){let e=R.formWorkflowDefinitionId.trim(),t=tt(R.formWorkflowArgValues);c={kind:`workflowRun`,definitionId:e,...t===void 0?{}:{inputEnvelope:{payload:t}},...R.formWorkflowGoal.trim()?{goal:R.formWorkflowGoal.trim()}:{},...n?{agentId:n}:{}}}else c=a?{kind:`agentTurn`,message:e,...t?{model:t}:{}}:{kind:`systemEvent`,text:e};let l=o===`main`?null:n||null,u={name:R.formName.trim(),schedule:R.formSchedule,sessionTarget:o,delivery:s,payload:c,...R.formMode===`edit`?{...l?{agentId:l}:{},...a&&r?{workingDirectory:r}:{}}:{...o===`isolated`&&n?{agentId:n}:{},...a&&r?{workingDirectory:r}:{}}};if(R.formMode===`edit`&&R.formJobId)await Ne(R.formJobId,u);else{let{schedule:e,agentId:t,workingDirectory:n,...r}=u;await Re(e,{...r,...t==null?{}:{agentId:t},...n?{workingDirectory:n}:{}})}R.closeForm(),await P.loadJobs()}catch(e){F(e instanceof Error?e.message:R.formMode===`edit`?n.failedToUpdateJob:n.failedToCreateJob)}finally{R.setFormSubmitting(!1)}},ne=async e=>{_({type:`patch`,patch:{detailOpen:!0,detailJob:e,detailLoading:!0,detailHistory:[],detailActionNotice:null}});try{let t=await Ie(e.id);t&&_({type:`patch`,patch:{detailJob:t,detailHistory:await Ae(e.id,20)}})}catch{}finally{_({type:`patch`,patch:{detailLoading:!1}})}},q=(0,X.useCallback)(()=>{_({type:`patch`,patch:{detailOpen:!1,detailJob:null,detailActionNotice:null}})},[]),ie=(0,X.useCallback)(()=>{_({type:`patch`,patch:{templateCategoryFilter:`all`,templatePickerOpen:!0}})},[]),ae=async(e,t)=>{try{await Pe(e.id,t),T?.id===e.id&&_({type:`patch`,patch:{detailJob:{...T,enabled:t}}}),await Promise.all([P.loadJobs(),P.loadAux()])}catch(e){F(e instanceof Error?e.message:n.failedToToggleJob)}},oe=async()=>{let e=H.current,t=V.current;if(!(!e||!t)){W();try{if(t===`run`){let t=await Le(e);T?.id===e&&_({type:`patch`,patch:{detailJob:t.job??await Ie(e),detailHistory:t.history??await Ae(e,20),detailActionNotice:{kind:`info`,message:n.runStarted}}})}else await Be(e),T?.id===e&&_({type:`patch`,patch:{detailOpen:!1,detailJob:null}});await Promise.all([P.loadJobs(),P.loadAux(),P.loadRunHistoryOnly()])}catch(r){let i=r instanceof Error?r.message:n.actionFailed;if(t===`run`&&T?.id===e){let t=await Ie(e).catch(()=>null),a=await Ae(e,20).catch(()=>E),o=r instanceof Ue&&r.code===`job_already_running`?r.runningSessionKey||t?.state?.runningSessionKey||a.find(e=>e.status===`running`)?.sessionKey:t?.state?.runningSessionKey||a.find(e=>e.status===`running`)?.sessionKey;_({type:`patch`,patch:{...t?{detailJob:t}:{},detailHistory:a,detailActionNotice:{kind:`error`,message:i.includes(`already running`)?n.jobAlreadyRunning:i,...o?{sessionKey:o}:{}}}})}else F(i)}}};(0,X.useEffect)(()=>{let e=e=>{e.key===`Escape`&&(R.formOpen?R.closeForm():w&&_({type:`patch`,patch:{detailOpen:!1,detailJob:null}}))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[R,w]);let se=(0,X.useMemo)(()=>({running:n.execStatusRunning,success:n.execStatusSuccess,failed:n.execStatusFailed,cancelled:n.execStatusCancelled}),[n.execStatusCancelled,n.execStatusFailed,n.execStatusRunning,n.execStatusSuccess]),ce=(0,X.useMemo)(()=>Rn(P.userCronJobs,b),[P.userCronJobs,b]),le=(0,X.useMemo)(()=>Rn(P.systemCronJobs,b),[P.systemCronJobs,b]),ue=(0,X.useMemo)(()=>zn(P.runHistory,x,S,C),[P.runHistory,x,S,C]),de=n.scheduleBadge;return l?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Hn,{hasToken:l,c:n,loading:P.loading,runHistoryLoading:P.runHistoryLoading,onRefresh:P.refreshAll,onOpenTemplatePicker:ie,onAddJob:()=>R.openForm()}),(0,Q.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col bg-surface-panel`,children:[(0,Q.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-6 sm:px-8`,children:[P.error?(0,Q.jsx)(`div`,{className:`rounded-xl border border-red-200 bg-red-50 px-3 py-2 text-sm text-red-800 dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-200`,role:`alert`,children:P.error}):null,(0,Q.jsx)(pn,{c:n,mainTab:v,onMainTabChange:N,jobSort:b,onJobSortChange:e=>_({type:`patch`,patch:{jobSort:e}}),historyRange:x,onHistoryRangeChange:e=>_({type:`patch`,patch:{historyRange:e}}),historyJobFilter:S,onHistoryJobFilterChange:e=>_({type:`patch`,patch:{historyJobFilter:e}}),historyStatusFilter:C,onHistoryStatusFilterChange:e=>_({type:`patch`,patch:{historyStatusFilter:e}}),jobs:P.jobs}),v===`myTasks`?(0,Q.jsx)(kn,{c:n,localeTag:d,scheduleBadgeLabels:de,loading:P.loading,jobsCount:P.userCronJobs.length,sortedJobs:ce,templateCategoryFilter:j,onTemplateCategoryFilterChange:e=>_({type:`patch`,patch:{templateCategoryFilter:e}}),onSelectTemplate:K,keepAwake:I.keepAwake,wakeSupported:I.featureAvailable,onWakeUnsupportedClick:()=>F(n.wakeLockUnavailable),onKeepAwakeToggle:()=>I.setKeepAwake(e=>!e),absorbCardClickJobIdRef:G,scheduleAbsorbNextMenuCardClick:ee,onOpenDetail:e=>void ne(e),onToggle:(e,t)=>void ae(e,t),onEdit:e=>R.openForm(e),onAddJob:()=>R.openForm(),onRunNow:e=>U(`run`,e.id),onDelete:e=>U(`delete`,e.id)}):v===`systemTasks`?(0,Q.jsx)(bn,{c:n,language:e,localeTag:d,scheduleBadgeLabels:de,loading:P.loading,sortedSystemJobs:le,heartbeat:P.heartbeatFromConfig,keepAwake:I.keepAwake,wakeSupported:I.featureAvailable,onWakeUnsupportedClick:()=>F(n.wakeLockUnavailable),onKeepAwakeToggle:()=>I.setKeepAwake(e=>!e),absorbCardClickJobIdRef:G,scheduleAbsorbNextMenuCardClick:ee,onOpenDetail:e=>void ne(e),onToggle:(e,t)=>void ae(e,t),onEdit:e=>R.openForm(e),onRunNow:e=>U(`run`,e.id),onDelete:e=>U(`delete`,e.id)}):v===`history`?(0,Q.jsx)(gn,{c:n,runHistoryLoading:P.runHistoryLoading,runHistory:P.runHistory,filteredRunHistory:ue,jobs:P.jobs,onRefreshHistory:()=>void P.loadRunHistoryOnly(),onOpenJobDetail:e=>void ne(e),statusLabels:se}):(0,Q.jsx)(ht,{hasToken:l})]}),(0,Q.jsx)(on,{open:R.formOpen,onRequestClose:R.closeForm,c:n,chatM:r,agentsMessages:t.agentsSettings,isDark:u,channels:P.channels,sessionChatIds:R.sessionChatIds,cronAgentSelectOptions:R.cronAgentSelectOptions,defaultModelResolver:L,formMode:R.formMode,formJobId:R.formJobId,formName:R.formName,onFormNameChange:R.setFormName,formSchedule:R.formSchedule,onFormScheduleChange:R.setFormSchedule,formSubmitting:R.formSubmitting,formTaskKind:R.formTaskKind,onFormTaskKindChange:R.setFormTaskKind,workflowDefinitions:B,workflowDefinitionsLoading:z.isLoading,formWorkflowDefinitionId:R.formWorkflowDefinitionId,onFormWorkflowDefinitionIdChange:R.setFormWorkflowDefinitionId,formWorkflowGoal:R.formWorkflowGoal,onFormWorkflowGoalChange:R.setFormWorkflowGoal,formWorkflowArgValues:R.formWorkflowArgValues,onFormWorkflowArgValuesChange:R.setFormWorkflowArgValues,formSessionTarget:R.formSessionTarget,onFormSessionTargetChange:R.handleFormSessionTargetChange,formAgentLocalOnly:R.formAgentLocalOnly,onFormAgentLocalOnlyChange:R.setFormAgentLocalOnly,formModel:R.formModel,onFormModelUserChange:R.handleFormModelUserChange,formAgentId:R.formAgentId,onFormAgentIdChange:R.setFormAgentId,formWorkingDirectory:R.formWorkingDirectory,onFormWorkingDirectoryChange:R.setFormWorkingDirectory,formChannel:R.formChannel,onFormChannelChange:R.handleFormChannelChange,formChatId:R.formChatId,onFormChatIdChange:R.setFormChatId,formMessage:R.formMessage,onFormMessageChange:R.setFormMessage,formMessageMdMode:R.formMessageMdMode,onSetMessageMdMode:R.setMessageMdMode,messageEditorNonce:R.messageEditorNonce,needsDeliveryChat:R.needsDeliveryChat,showChannelPicker:R.showChannelPicker,canSubmit:R.canSubmit,onSubmit:()=>void te(),onRefreshRecipients:R.refreshRecipientsList}),(0,Q.jsx)(An,{open:A,onOpenChange:e=>{_({type:`patch`,patch:{templatePickerOpen:e,...e?{templateCategoryFilter:`all`}:{}}})},c:n,localeTag:d,scheduleBadgeLabels:de,categoryFilter:j,onCategoryFilterChange:e=>_({type:`patch`,patch:{templateCategoryFilter:e}}),onSelectTemplate:K}),(0,Q.jsx)(Lt,{open:w,onDismiss:q,detailJob:T,detailLoading:D,actionNotice:O,detailHistory:E,c:n,localeTag:d,scheduleBadgeLabels:de,chatWorkingDirNotSet:r.workingDirectory.notSet,statusLabels:se,onEdit:e=>{R.openForm(e),window.requestAnimationFrame(()=>q())},onRunNow:e=>U(`run`,e.id),onToggle:(e,t)=>void ae(e,t),onDelete:e=>U(`delete`,e.id)}),(0,Q.jsx)(st,{open:k,onOpenChange:e=>_({type:`patch`,patch:{confirmOpen:e}}),action:V.current,c:n,onDismiss:W,onConfirm:oe})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Hn,{hasToken:l,c:n,loading:P.loading,runHistoryLoading:P.runHistoryLoading,onRefresh:P.refreshAll,onOpenTemplatePicker:ie,onAddJob:()=>R.openForm()}),(0,Q.jsx)(`div`,{className:`mx-auto w-full max-w-app-main px-4 py-16 text-center text-sm text-fg-muted sm:px-8`,children:n.needToken})]})}function Hn(e){let t=(0,Z.c)(14),{hasToken:n,c:r,loading:i,runHistoryLoading:a,onRefresh:o,onOpenTemplatePicker:s,onAddJob:c}=e,l=ee(Wn),u=ee(Un),d;t[0]!==r||t[1]!==i||t[2]!==c||t[3]!==s||t[4]!==o||t[5]!==a?(d=(0,Q.jsx)(hn,{c:r,loading:i,runHistoryLoading:a,onRefresh:o,onOpenTemplatePicker:s,onAddJob:c}),t[0]=r,t[1]=i,t[2]=c,t[3]=s,t[4]=o,t[5]=a,t[6]=d):d=t[6];let f=d,p,m;return t[7]!==r.title||t[8]!==u||t[9]!==f||t[10]!==n||t[11]!==l?(p=()=>n?(l({startExtra:null,main:(0,Q.jsx)(`div`,{className:`min-w-0`,children:(0,Q.jsx)(`h1`,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:r.title})}),end:f}),()=>u()):(u(),()=>u()),m=[r.title,u,f,n,l],t[7]=r.title,t[8]=u,t[9]=f,t[10]=n,t[11]=l,t[12]=p,t[13]=m):(p=t[12],m=t[13]),(0,X.useLayoutEffect)(p,m),null}function Un(e){return e.clearPageHeader}function Wn(e){return e.setPageHeader}export{Vn as CronPage};
|
|
@@ -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{t as i}from"./cn-JdwAhgNB.js";import{t as a}from"./messages-CkT-lcgP.js";import{t as o}from"./locale-store-DjbfSsfA.js";import{i as s,n as c}from"./fetch-NZmjSXLl.js";import{$a as l,Ds as u,Ea as d,Eo as f,Es as p,Go as m,Hi as h,Ki as g,M as _,O as v,P as y,Ro as b,S as x,Ss as S,To as C,Ts as w,Wo as T,Xo as E,Yo as ee,Zo as te,ba as ne,bo as re,gs as ie,ii as ae,k as oe,ki as D,ko as O,ls as se,ma as k,vs as ce,xs as le}from"./index-Cxm6xsps.js";var A=n(),j=e(t(),1),M=r(),N=`min-w-0 rounded-md border border-edge bg-surface-muted px-3 py-2 text-sm text-fg placeholder:text-fg-muted focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,ue=[`message`,`link`,`file`,`diff`,`command`,`test`,`artifact`];function de(e){return e===`command`||e===`test`?g:e===`diff`?b:e===`file`||e===`artifact`?C:e===`link`?O:k}function fe(e){return e.data&&typeof e.data==`object`&&!Array.isArray(e.data)?e.data:{}}function P(e,t){let n=e[t];return typeof n==`string`&&n.trim()?n:void 0}function pe(e,t){let n=e[t];return typeof n==`number`&&Number.isFinite(n)?n:void 0}function me(e){let t=(0,A.c)(57),{item:n,language:r,t:i}=e,a;t[0]===n.kind?a=t[1]:(a=de(n.kind),t[0]=n.kind,t[1]=a);let o=a,s,c,l,u,d,f,p,m,h;if(t[2]!==o||t[3]!==n||t[4]!==r||t[5]!==i){let e=fe(n),a=P(e,`command`),g=pe(e,`exitCode`),_=P(e,`path`)||n.uri,v=pe(e,`outputBytes`);s=e.fuzzyMatchUsed===!0,f=`rounded-md border border-edge/70 bg-surface-muted/40 px-2.5 py-2`;let y;t[15]===o?y=t[16]:(y=(0,M.jsx)(o,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`,"aria-hidden":!0}),t[15]=o,t[16]=y);let b;t[17]===n.title?b=t[18]:(b=(0,M.jsx)(`p`,{className:`break-words font-medium text-fg`,children:n.title}),t[17]=n.title,t[18]=b);let x=_?(0,M.jsx)(`p`,{className:`mt-1 break-all text-xs text-fg-muted`,children:_}):null,S;t[19]!==b||t[20]!==x?(S=(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[b,x]}),t[19]=b,t[20]=x,t[21]=S):S=t[21];let C;t[22]!==y||t[23]!==S?(C=(0,M.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[y,S]}),t[22]=y,t[23]=S,t[24]=C):C=t[24];let w;t[25]!==n.kind||t[26]!==i?(w=Ce(n.kind,i),t[25]=n.kind,t[26]=i,t[27]=w):w=t[27];let T;t[28]===w?T=t[29]:(T=(0,M.jsx)(`span`,{className:`rounded-full border border-edge px-2 py-0.5 text-xs text-fg-muted`,children:w}),t[28]=w,t[29]=T),t[30]!==C||t[31]!==T?(p=(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-2`,children:[C,T]}),t[30]=C,t[31]=T,t[32]=p):p=t[32],m=a?(0,M.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md bg-surface-panel px-2 py-1.5 text-xs text-fg`,children:(0,M.jsx)(`code`,{children:a})}):null,t[33]!==n.kind||t[34]!==n.summary?(h=n.summary?n.kind===`diff`?(0,M.jsx)(`pre`,{className:`mt-2 max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-surface-panel px-2 py-1.5 text-xs text-fg-muted`,children:(0,M.jsx)(`code`,{children:n.summary})}):(0,M.jsx)(`p`,{className:`mt-2 whitespace-pre-wrap break-words text-xs text-fg-muted`,children:n.summary}):null,t[33]=n.kind,t[34]=n.summary,t[35]=h):h=t[35],c=`mt-2 flex flex-wrap items-center gap-2 text-xs text-fg-muted`;let E;t[36]!==n.createdAt||t[37]!==r||t[38]!==i?(E=L(n.createdAt,r,i),t[36]=n.createdAt,t[37]=r,t[38]=i,t[39]=E):E=t[39],t[40]===E?l=t[41]:(l=(0,M.jsx)(`time`,{children:E}),t[40]=E,t[41]=l),u=g==null?null:(0,M.jsx)(`span`,{children:F(i.exitCode,{code:g})}),d=v==null?null:(0,M.jsx)(`span`,{children:F(i.outputBytes,{bytes:v})}),t[2]=o,t[3]=n,t[4]=r,t[5]=i,t[6]=s,t[7]=c,t[8]=l,t[9]=u,t[10]=d,t[11]=f,t[12]=p,t[13]=m,t[14]=h}else s=t[6],c=t[7],l=t[8],u=t[9],d=t[10],f=t[11],p=t[12],m=t[13],h=t[14];let g;t[42]!==s||t[43]!==i?(g=s?(0,M.jsx)(`span`,{children:i.fuzzyMatch}):null,t[42]=s,t[43]=i,t[44]=g):g=t[44];let _;t[45]!==g||t[46]!==c||t[47]!==l||t[48]!==u||t[49]!==d?(_=(0,M.jsxs)(`div`,{className:c,children:[l,u,d,g]}),t[45]=g,t[46]=c,t[47]=l,t[48]=u,t[49]=d,t[50]=_):_=t[50];let v;return t[51]!==_||t[52]!==f||t[53]!==p||t[54]!==m||t[55]!==h?(v=(0,M.jsxs)(`li`,{className:f,children:[p,m,h,_]}),t[51]=_,t[52]=f,t[53]=p,t[54]=m,t[55]=h,t[56]=v):v=t[56],v}function he(e){return e===`active`?`border-accent/40 bg-accent-soft text-accent-fg`:e===`done`?`border-edge bg-surface-muted text-fg-muted`:e===`blocked`||e===`needs_input`?`border-amber-500/40 bg-amber-500/10 text-amber-700 dark:text-amber-300`:`border-edge bg-surface-panel text-fg-muted`}function ge(e){return e===`succeeded`?`border-emerald-500/40 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:e===`failed`||e===`timeout`?`border-destructive/40 bg-destructive/10 text-destructive`:e===`cancelled`?`border-amber-500/40 bg-amber-500/10 text-amber-700 dark:text-amber-300`:`border-accent/40 bg-accent-soft text-accent-fg`}function _e(e){return e===`workflow_run`?re:e===`goal_run`?se:e===`queue`?ee:e===`evidence`?C:le}function F(e,t){return Object.entries(t).reduce((e,[t,n])=>e.replaceAll(`{{${t}}}`,String(n)),e)}function I(e){return e===`zh`?`zh-CN`:`en-US`}function L(e,t,n){return e?new Intl.DateTimeFormat(I(t),{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e)):n.notSet}function ve(e,t,n){return e?new Intl.DateTimeFormat(I(t),{dateStyle:`medium`}).format(new Date(e)):n.noDeadline}function ye(e,t){return e===`blocked`||e===`needs_input`?t.primaryActions.resolveBlocker:e===`paused`?t.primaryActions.resume:e===`done`?t.primaryActions.completed:e===`archived`?t.primaryActions.archived:t.primaryActions.continue}function be(e){return e===`completed`?`✓`:e===`impossible`?`!`:`○`}function xe(e){return e===`all`||e===`queue`||e===`goal_run`||e===`workflow_run`||e===`event`||e===`evidence`}function R(e,t){return e?t.statuses[e]??e:``}function Se(e,t){return t.priorities[e]??e}function Ce(e,t){return t.evidenceKinds[e]??e}async function we(e){return(await c(s(`/api/goals/${encodeURIComponent(e)}`))).goal}async function Te(e){return(await c(s(`/api/goals/${encodeURIComponent(e)}/runs?limit=100`))).runs}async function Ee(e){return(await c(s(`/api/goals/${encodeURIComponent(e)}/evidence?limit=100`))).evidence}async function De(e){return(await c(s(`/api/goals/${encodeURIComponent(e)}/activity?limit=120`))).activities}async function Oe(e){return(await c(s(`/api/goals/${encodeURIComponent(e)}/workflow-suggestions`))).suggestions}function z(){let{goalId:e=``}=p(),t=w(),n=o(e=>e.language),r=a(n).goalDetailPage,g=ae(e=>e.setPageHeader),b=ae(e=>e.clearPageHeader),[C,se]=u(),[k,A]=(0,j.useState)(null),[de,fe]=(0,j.useState)([]),[P,pe]=(0,j.useState)([]),[I,z]=(0,j.useState)([]),[ke,Ae]=(0,j.useState)([]),[je,Me]=(0,j.useState)([]),[Ne,B]=(0,j.useState)([]),[V,Pe]=(0,j.useState)(``),[Fe,Ie]=(0,j.useState)(`message`),[H,Le]=(0,j.useState)(``),[Re,ze]=(0,j.useState)(``),[Be,Ve]=(0,j.useState)(``),[He,Ue]=(0,j.useState)(``),[We,Ge]=(0,j.useState)(``),[Ke,qe]=(0,j.useState)(`normal`),[Je,Ye]=(0,j.useState)(``),[Xe,Ze]=(0,j.useState)(`10`),[Qe,$e]=(0,j.useState)(``),[et,tt]=(0,j.useState)(``),[nt,rt]=(0,j.useState)(``),[U,it]=(0,j.useState)(``),[at,ot]=(0,j.useState)(``),[W,st]=(0,j.useState)(!0),[G,K]=(0,j.useState)(null),[ct,q]=(0,j.useState)(null),J=(0,j.useCallback)(async()=>{if(e){st(!0),q(null);try{let[t,n,r]=await Promise.all([we(e),Te(e),Ee(e)]);A(t),fe(n);let[i,a]=await Promise.all([v(e,50),De(e)]);z(i),B(a),Ae(await Oe(e)),Me(r)}catch(e){q(e instanceof Error?e.message:r.errors.load)}finally{st(!1)}}},[e,r.errors.load]);(0,j.useEffect)(()=>{J()},[J]),(0,j.useEffect)(()=>{let e=!1;return oe().then(t=>{e||(pe(t),it(e=>e||t[0]?.id||``))}).catch(t=>{e||q(t instanceof Error?t.message:r.errors.loadWorkflows)}),()=>{e=!0}},[r.errors.loadWorkflows]),(0,j.useEffect)(()=>{k&&(Ue(k.title),Ge(k.description??``),qe(k.priority),Ye(k.deadlineAt?new Date(k.deadlineAt).toISOString().slice(0,10):``),Ze(String(k.maxTurns)),$e(k.judgeModelRef??``),tt(k.nextAction??``),rt(k.blockedReason??``),ot(e=>e||k.nextAction||k.title))},[k?.id,k?.updatedAt]);let lt=async()=>{if(k){K(`continue`);try{let e=await c(s(`/api/goals/${encodeURIComponent(k.id)}/continue`),{method:`POST`,body:JSON.stringify({})});if(e.sessionKey){t(`/chat/${encodeURIComponent(e.sessionKey)}`);return}await J()}catch(e){q(e instanceof Error?e.message:r.errors.continue)}finally{K(null)}}},ut=async e=>{if(e.preventDefault(),!k)return;let t=He.trim();if(t){K(`details:save`),q(null);try{let e=Number.parseInt(Xe,10);A((await c(s(`/api/goals/${encodeURIComponent(k.id)}`),{method:`PATCH`,body:JSON.stringify({title:t,description:We.trim()||void 0,priority:Ke,deadlineAt:Je?new Date(`${Je}T23:59:59`).getTime():void 0,maxTurns:Number.isFinite(e)?e:k.maxTurns,judgeModelRef:Qe.trim()||void 0,nextAction:et.trim()||void 0,blockedReason:nt.trim()||void 0})})).goal),await Y(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.save)}finally{K(null)}}},dt=async e=>{if(k){K(e);try{await c(s(`/api/goals/${encodeURIComponent(k.id)}/${e}`),{method:`POST`,body:JSON.stringify({})}),await J()}catch(e){q(e instanceof Error?e.message:r.errors.action)}finally{K(null)}}},ft=async()=>{if(!(!k||!U)){K(`workflow:run`),q(null);try{let e=await y({goalId:k.id,definitionId:U,goal:at.trim()||k.nextAction||k.title});await J(),t(`/chat/${encodeURIComponent(e.sessionKey)}`)}catch(e){q(e instanceof Error?e.message:r.errors.startWorkflow)}finally{K(null)}}},Y=async e=>{try{B(await De(e))}catch{}},pt=async e=>{try{let[t,n,r]=await Promise.all([v(e,50),De(e),Oe(e)]);z(t),B(n),Ae(r)}catch{}},mt=async e=>{if(k){K(`workflow:${e.id}:cancel`),q(null);try{await x(e.id,{ownerAgentId:k.agentId}),await pt(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.cancelWorkflow)}finally{K(null)}}},ht=async e=>{if(k){K(`workflow:${e.id}:retry`),q(null);try{let n=await _(e.id,{ownerAgentId:k.agentId});await pt(k.id),t(`/chat/${encodeURIComponent(n.sessionKey)}`)}catch(e){q(e instanceof Error?e.message:r.errors.retryWorkflow)}finally{K(null)}}},gt=async e=>{if(e.preventDefault(),!k)return;let t=V.trim();if(t){K(`checklist:add`),q(null);try{A((await c(s(`/api/goals/${encodeURIComponent(k.id)}/checklist`),{method:`POST`,body:JSON.stringify({text:t})})).goal),Pe(``),await Y(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.addChecklist)}finally{K(null)}}},_t=async(e,t)=>{if(k){K(`checklist:${e}:${t}`),q(null);try{A((await c(s(`/api/goals/${encodeURIComponent(k.id)}/checklist/${encodeURIComponent(e)}`),{method:`PATCH`,body:JSON.stringify({status:t})})).goal),await Y(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.updateChecklist)}finally{K(null)}}},vt=async e=>{if(k){K(`checklist:${e}:delete`),q(null);try{A((await c(s(`/api/goals/${encodeURIComponent(k.id)}/checklist/${encodeURIComponent(e)}`),{method:`DELETE`})).goal),await Y(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.deleteChecklist)}finally{K(null)}}},yt=async e=>{if(e.preventDefault(),!k)return;let t=H.trim();if(t){K(`evidence:add`),q(null);try{let e=await c(s(`/api/goals/${encodeURIComponent(k.id)}/evidence`),{method:`POST`,body:JSON.stringify({kind:Fe,title:t,summary:Re.trim()||void 0,uri:Be.trim()||void 0})});Me(t=>[e.evidence,...t]),Le(``),ze(``),Ve(``),await Y(k.id)}catch(e){q(e instanceof Error?e.message:r.errors.addEvidence)}finally{K(null)}}},X=k?.checklist.filter(e=>e.status===`completed`||e.status===`impossible`).length??0,Z=k?.checklist.length??0,bt=I.filter(e=>e.status===`failed`||e.status===`timeout`||e.status===`cancelled`),Q=de[0],$=xe(C.get(`timeline`))?C.get(`timeline`):`all`,xt=$===`all`?Ne:Ne.filter(e=>e.kind===$),St=I.filter(e=>e.status===`queued`||e.status===`running`),Ct=G!=null||k?.status===`done`||k?.status===`archived`,wt=(0,j.useMemo)(()=>k?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(D,{type:`button`,variant:`primary`,className:`h-9 gap-2 rounded-lg px-2.5 md:px-3`,"aria-label":ye(k.status,r),disabled:Ct,onClick:()=>void lt(),children:[(0,M.jsx)(ee,{className:`size-4`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`hidden md:inline`,children:ye(k.status,r)})]}),k.activeSessionKey?(0,M.jsxs)(D,{type:`button`,variant:`secondary`,className:`h-9 gap-2 rounded-lg px-2.5 md:px-3`,"aria-label":r.chat,onClick:()=>t(`/chat/${encodeURIComponent(k.activeSessionKey)}`),children:[(0,M.jsx)(O,{className:`size-4`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`hidden md:inline`,children:r.chat})]}):null,(0,M.jsxs)(D,{type:`button`,variant:`secondary`,className:`h-9 gap-2 rounded-lg px-2.5 md:px-3`,"aria-label":r.pause,disabled:G!=null||k.status!==`active`,onClick:()=>void dt(`pause`),children:[(0,M.jsx)(E,{className:`size-4`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`hidden md:inline`,children:r.pause})]}),(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-9 gap-2 rounded-lg px-2.5 md:px-3`,"aria-label":r.archive,disabled:G!=null||k.status===`archived`,onClick:()=>{window.confirm(r.archiveConfirm)&&dt(`archive`)},children:[(0,M.jsx)(ce,{className:`size-4`,"aria-hidden":!0}),(0,M.jsx)(`span`,{className:`hidden md:inline`,children:r.archive})]})]}):null,[G,k,t,Ct,r]);(0,j.useLayoutEffect)(()=>(g({startExtra:(0,M.jsx)(S,{to:`/goals`,className:`inline-flex size-9 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":r.back,children:(0,M.jsx)(ie,{className:`size-4`,"aria-hidden":!0})}),main:(0,M.jsxs)(`div`,{className:`min-w-0`,children:[(0,M.jsx)(`h1`,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:k?.title??(W?r.loading:r.notFound)}),k?(0,M.jsxs)(`p`,{className:`truncate text-xs text-fg-muted`,children:[R(k.status,r),` · `,F(r.agent,{agentId:k.agentId}),` · `,F(r.turns,{used:k.turnsUsed,max:k.maxTurns}),Z?` · ${F(r.checklistProgress,{done:X,total:Z})}`:``]}):null]}),end:wt}),()=>b()),[b,X,k,wt,W,g,r,Z]);let Tt=e=>{let t=new URLSearchParams(C);e===`all`?t.delete(`timeline`):t.set(`timeline`,e),se(t,{replace:!0})};return(0,M.jsx)(`main`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto bg-surface-base`,children:(0,M.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-1 flex-col gap-4 px-4 py-5 sm:px-6`,children:[W?(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r.loading}):null,ct?(0,M.jsx)(`p`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:ct}):null,!W&&!k?(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r.notFound}):null,k?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsxs)(`section`,{className:`rounded-lg border border-edge bg-surface-panel p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`span`,{className:i(`rounded-full border px-2 py-0.5 text-xs`,he(k.status)),children:R(k.status,r)}),(0,M.jsx)(`span`,{className:`text-xs text-fg-muted`,children:F(r.prioritySummary,{priority:Se(k.priority,r)})}),(0,M.jsx)(`span`,{className:`text-xs text-fg-muted`,children:k.deadlineAt?ve(k.deadlineAt,n,r):r.noDeadline})]}),k.description?(0,M.jsx)(`p`,{className:`mt-3 whitespace-pre-wrap break-words text-sm text-fg-muted`,children:k.description}):null,(0,M.jsxs)(`div`,{className:`mt-3 rounded-md border border-edge/70 bg-surface-muted/40 px-3 py-2`,children:[(0,M.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:k.blockedReason?r.currentBlocker:r.nextAction}),(0,M.jsx)(`p`,{className:i(`mt-1 break-words text-sm`,k.blockedReason?`text-amber-700 dark:text-amber-300`:`text-fg`),children:k.blockedReason||k.nextAction||r.noNextAction})]})]}),(0,M.jsxs)(`section`,{className:`grid gap-4 xl:grid-cols-[minmax(0,1fr)_22rem]`,children:[(0,M.jsxs)(`div`,{className:`grid min-w-0 gap-4`,children:[(0,M.jsxs)(`section`,{className:`rounded-lg border border-edge bg-surface-panel p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[(0,M.jsx)(l,{className:`size-4 text-accent`,"aria-hidden":!0}),r.acceptance]}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:r.acceptanceHint})]}),(0,M.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[X,`/`,Z]})]}),Q?(0,M.jsxs)(`div`,{className:`mt-3 rounded-md border border-edge/70 bg-surface-muted/40 px-3 py-2`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2 text-xs text-fg-muted`,children:[(0,M.jsx)(`span`,{children:F(r.latestJudgement,{status:R(Q.verdict??Q.status,r)})}),(0,M.jsx)(`time`,{children:L(Q.finishedAt??Q.startedAt,n,r)})]}),Q.reason?(0,M.jsx)(`p`,{className:`mt-1 break-words text-sm text-fg`,children:Q.reason}):null,Q.nextAction?(0,M.jsx)(`p`,{className:`mt-1 break-words text-xs text-fg-muted`,children:F(r.latestNext,{next:Q.nextAction})}):null]}):null,(0,M.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,M.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[(0,M.jsx)(l,{className:`size-4 text-accent`,"aria-hidden":!0}),r.checklist]}),(0,M.jsxs)(`span`,{className:`text-xs text-fg-muted`,children:[X,`/`,Z]})]}),(0,M.jsxs)(`form`,{className:`mb-3 flex flex-col gap-2 sm:flex-row`,onSubmit:gt,children:[(0,M.jsx)(`input`,{value:V,onChange:e=>Pe(e.target.value),name:`checklistText`,"aria-label":r.addAcceptancePlaceholder,autoComplete:`off`,placeholder:r.addAcceptancePlaceholder,className:i(N,`flex-1`)}),(0,M.jsxs)(D,{type:`submit`,variant:`secondary`,className:`h-9 gap-2`,disabled:G!=null||!V.trim(),children:[(0,M.jsx)(d,{className:`size-4`,"aria-hidden":!0}),r.add]})]}),k.checklist.length?(0,M.jsx)(`ul`,{className:`space-y-2 text-sm`,children:k.checklist.map(e=>(0,M.jsx)(`li`,{className:`rounded-md border border-edge/70 bg-surface-muted/40 px-2.5 py-2`,children:(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,M.jsx)(`span`,{className:`mt-1 w-5 shrink-0 text-center text-fg-muted`,children:be(e.status)}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsx)(`p`,{className:`break-words text-fg`,children:e.text}),e.evidenceSummary?(0,M.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:e.evidenceSummary}):null]}),(0,M.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,M.jsx)(D,{type:`button`,variant:`ghost`,className:`size-8 p-0`,title:r.markPending,"aria-label":r.markPending,disabled:G!=null||e.status===`pending`,onClick:()=>void _t(e.id,`pending`),children:(0,M.jsx)(T,{className:`size-4`,"aria-hidden":!0})}),(0,M.jsx)(D,{type:`button`,variant:`ghost`,className:`size-8 p-0`,title:r.markCompleted,"aria-label":r.markCompleted,disabled:G!=null||e.status===`completed`,onClick:()=>void _t(e.id,`completed`),children:(0,M.jsx)(te,{className:`size-4`,"aria-hidden":!0})}),(0,M.jsx)(D,{type:`button`,variant:`ghost`,className:`size-8 p-0`,title:r.markImpossible,"aria-label":r.markImpossible,disabled:G!=null||e.status===`impossible`,onClick:()=>void _t(e.id,`impossible`),children:(0,M.jsx)(m,{className:`size-4`,"aria-hidden":!0})}),(0,M.jsx)(D,{type:`button`,variant:`ghost`,className:`size-8 p-0 text-destructive hover:text-destructive`,title:r.deleteChecklistItem,"aria-label":r.deleteChecklistItem,disabled:G!=null,onClick:()=>void vt(e.id),children:(0,M.jsx)(h,{className:`size-4`,"aria-hidden":!0})})]})]})},e.id))}):(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r.noChecklist}),(0,M.jsxs)(`div`,{className:`mt-4 border-t border-edge pt-4`,children:[(0,M.jsxs)(`h3`,{className:`mb-3 flex items-center gap-2 text-sm font-semibold text-fg`,children:[(0,M.jsx)(f,{className:`size-4 text-accent`,"aria-hidden":!0}),r.evidence]}),(0,M.jsxs)(`form`,{className:`mb-3 grid gap-2`,onSubmit:yt,children:[(0,M.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[9rem_minmax(0,1fr)]`,children:[(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.kind,(0,M.jsx)(`select`,{value:Fe,onChange:e=>Ie(e.target.value),className:N,name:`evidenceKind`,children:ue.map(e=>(0,M.jsx)(`option`,{value:e,children:Ce(e,r)},e))})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.title,(0,M.jsx)(`input`,{value:H,onChange:e=>Le(e.target.value),name:`evidenceTitle`,autoComplete:`off`,placeholder:r.evidenceTitlePlaceholder,className:N})]})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.uriOrPath,(0,M.jsx)(`input`,{value:Be,onChange:e=>Ve(e.target.value),name:`evidenceUri`,autoComplete:`off`,placeholder:r.uriOrPathPlaceholder,className:N})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.summary,(0,M.jsx)(`textarea`,{value:Re,onChange:e=>ze(e.target.value),name:`evidenceSummary`,autoComplete:`off`,placeholder:r.summaryPlaceholder,rows:3,className:i(N,`resize-y`)})]}),(0,M.jsxs)(D,{type:`submit`,variant:`secondary`,className:`h-9 w-fit gap-2`,disabled:G!=null||!H.trim(),children:[(0,M.jsx)(d,{className:`size-4`,"aria-hidden":!0}),r.addEvidence]})]}),je.length?(0,M.jsx)(`ul`,{className:`space-y-2 text-sm`,children:je.slice(0,6).map(e=>(0,M.jsx)(me,{item:e,language:n,t:r},e.id))}):(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r.noEvidence})]})]}),(0,M.jsxs)(`section`,{className:`rounded-lg border border-edge bg-surface-panel p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[(0,M.jsx)(le,{className:`size-4 text-accent`,"aria-hidden":!0}),r.timeline]}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:r.timelineHint})]}),(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-8 gap-1.5`,onClick:()=>void J(),children:[(0,M.jsx)(ne,{className:`size-3.5`,"aria-hidden":!0}),r.refresh]})]}),(0,M.jsx)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[`all`,`goal_run`,`workflow_run`,`evidence`,`queue`,`event`].map(e=>(0,M.jsx)(`button`,{type:`button`,className:i(`rounded-md border px-2.5 py-1 text-xs font-medium`,$===e?`border-accent bg-accent-soft text-accent-fg`:`border-edge bg-surface-panel text-fg-muted hover:bg-surface-hover hover:text-fg`),onClick:()=>Tt(e),children:r.timelineFilters[e]},e))}),xt.length?(0,M.jsx)(`ul`,{className:`mt-3 space-y-2 text-sm`,children:xt.map(e=>(0,M.jsx)(`li`,{className:`rounded-md border border-edge/60 bg-surface-muted/50 px-2.5 py-2`,children:(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-2`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,M.jsx)(_e(e.kind),{className:`mt-0.5 size-4 shrink-0 text-accent-fg`,"aria-hidden":!0}),(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs text-fg-muted`,children:[(0,M.jsx)(`span`,{children:r.timelineFilters[e.kind]}),e.status?(0,M.jsx)(`span`,{children:R(e.status,r)}):null]}),(0,M.jsx)(`p`,{className:`mt-1 break-words font-medium text-fg`,children:e.title}),e.summary?(0,M.jsx)(`p`,{className:`mt-1 line-clamp-3 break-words text-xs text-fg-muted`,children:e.summary}):null]})]}),(0,M.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1 text-xs text-fg-muted`,children:[(0,M.jsx)(`time`,{children:L(e.createdAt,n,r)}),e.link?.type===`chat`?(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-7 gap-1.5`,onClick:()=>t(`/chat/${encodeURIComponent(e.link.value)}`),children:[(0,M.jsx)(O,{className:`size-3.5`,"aria-hidden":!0}),r.chat]}):null,e.link?.type===`workflow_run`?(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-7 gap-1.5`,onClick:()=>t(`/workflows?run=${encodeURIComponent(e.link.value)}`),children:[(0,M.jsx)(O,{className:`size-3.5`,"aria-hidden":!0}),r.run]}):null]})]})},e.id))}):(0,M.jsx)(`p`,{className:`mt-3 text-sm text-fg-muted`,children:r.noTimeline})]})]}),(0,M.jsxs)(`aside`,{className:`grid h-fit gap-4`,children:[(0,M.jsxs)(`section`,{className:`rounded-lg border border-edge bg-surface-panel p-4`,children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:r.goalSettings}),(0,M.jsxs)(`dl`,{className:`mt-3 grid gap-2 text-sm`,children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,M.jsx)(`dt`,{className:`text-fg-muted`,children:r.deadline}),(0,M.jsx)(`dd`,{className:`text-right text-fg`,children:ve(k.deadlineAt,n,r)})]}),(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,M.jsx)(`dt`,{className:`text-fg-muted`,children:r.judgeModel}),(0,M.jsx)(`dd`,{className:`min-w-0 truncate text-right text-fg`,children:k.judgeModelRef||r.default})]}),(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,M.jsx)(`dt`,{className:`text-fg-muted`,children:r.created}),(0,M.jsx)(`dd`,{className:`text-right text-fg`,children:ve(k.createdAt,n,r)})]}),(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,M.jsx)(`dt`,{className:`text-fg-muted`,children:r.updated}),(0,M.jsx)(`dd`,{className:`text-right text-fg`,children:L(k.updatedAt,n,r)})]})]}),(0,M.jsxs)(`details`,{className:`mt-4 rounded-md border border-edge/70 bg-surface-muted/40 px-3 py-2`,children:[(0,M.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:r.editDetails}),(0,M.jsxs)(`form`,{className:`mt-3 grid gap-3`,onSubmit:ut,children:[(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.title,(0,M.jsx)(`input`,{value:He,onChange:e=>Ue(e.target.value),name:`goalTitle`,autoComplete:`off`,className:N,placeholder:`${r.title}…`})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.description,(0,M.jsx)(`textarea`,{value:We,onChange:e=>Ge(e.target.value),name:`goalDescription`,autoComplete:`off`,className:i(N,`resize-y`),rows:3,placeholder:`${r.description}…`})]}),(0,M.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-3 xl:grid-cols-1`,children:[(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.priority,(0,M.jsxs)(`select`,{value:Ke,onChange:e=>qe(e.target.value),name:`goalPriority`,className:N,children:[(0,M.jsx)(`option`,{value:`low`,children:r.priorities.low}),(0,M.jsx)(`option`,{value:`normal`,children:r.priorities.normal}),(0,M.jsx)(`option`,{value:`high`,children:r.priorities.high})]})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.deadline,(0,M.jsx)(`input`,{value:Je,onChange:e=>Ye(e.target.value),name:`goalDeadline`,className:N,type:`date`})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.maxTurns,(0,M.jsx)(`input`,{value:Xe,onChange:e=>Ze(e.target.value),name:`goalMaxTurns`,className:N,type:`number`,min:1,max:500,inputMode:`numeric`,placeholder:`${r.maxTurns}…`})]})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.judgeModel,(0,M.jsx)(`input`,{value:Qe,onChange:e=>$e(e.target.value),name:`goalJudgeModel`,autoComplete:`off`,className:N,placeholder:`${r.judgeModel}…`})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.nextAction,(0,M.jsx)(`textarea`,{value:et,onChange:e=>tt(e.target.value),name:`goalNextAction`,autoComplete:`off`,className:i(N,`resize-y`),rows:2,placeholder:`${r.nextAction}…`})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.blockedReason,(0,M.jsx)(`textarea`,{value:nt,onChange:e=>rt(e.target.value),name:`goalBlockedReason`,autoComplete:`off`,className:i(N,`resize-y`),rows:2,placeholder:`${r.blockedReason}…`})]}),(0,M.jsx)(D,{type:`submit`,variant:`secondary`,className:`h-9 w-fit`,disabled:G!=null||!He.trim(),children:r.saveDetails})]})]})]}),(0,M.jsxs)(`section`,{className:`rounded-lg border border-edge bg-surface-panel p-4`,children:[(0,M.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[(0,M.jsx)(re,{className:`size-4 text-accent`,"aria-hidden":!0}),r.workflow]}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:r.workflowHint})]}),St.length?(0,M.jsx)(`span`,{className:`rounded-full border border-accent/40 bg-accent-soft px-2 py-0.5 text-xs text-accent-fg`,children:F(r.activeCount,{count:St.length})}):null]}),ke.length?(0,M.jsx)(`div`,{className:`mt-3 grid gap-2`,children:ke.slice(0,2).map(e=>(0,M.jsxs)(`button`,{type:`button`,className:i(`min-w-0 rounded-md border border-edge/70 bg-surface-muted/40 px-2.5 py-2 text-left hover:border-accent/60 hover:bg-accent-soft/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,U===e.definitionId&&`border-accent/70 bg-accent-soft/60`),onClick:()=>{it(e.definitionId),ot(k.nextAction||k.title)},children:[(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,M.jsx)(`span`,{className:`truncate text-sm font-medium text-fg`,children:e.title}),(0,M.jsx)(`span`,{className:`shrink-0 rounded-full border border-edge px-2 py-0.5 text-xs text-fg-muted`,children:e.score})]}),(0,M.jsx)(`p`,{className:`mt-1 line-clamp-2 text-xs text-fg-muted`,children:e.description})]},e.definitionId))}):null,(0,M.jsxs)(`div`,{className:`mt-3 grid gap-2`,children:[(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.definition,(0,M.jsxs)(`select`,{value:U,onChange:e=>it(e.target.value),className:N,name:`workflowDefinition`,disabled:P.length===0,children:[P.length===0?(0,M.jsx)(`option`,{value:``,children:r.noWorkflows}):null,P.map(e=>(0,M.jsx)(`option`,{value:e.id,children:e.title||e.name},e.id))]})]}),(0,M.jsxs)(`label`,{className:`grid gap-1 text-xs font-medium text-fg-muted`,children:[r.workflowGoal,(0,M.jsx)(`input`,{value:at,onChange:e=>ot(e.target.value),name:`workflowGoal`,autoComplete:`off`,className:N,placeholder:`${r.workflowGoal}…`})]}),(0,M.jsxs)(D,{type:`button`,variant:`secondary`,className:`h-9 w-fit gap-2`,disabled:G!=null||!U||k.status===`done`||k.status===`archived`,onClick:()=>void ft(),children:[(0,M.jsx)(ee,{className:`size-4`,"aria-hidden":!0}),r.runWorkflow]})]}),I.length?(0,M.jsxs)(`div`,{className:`mt-4 border-t border-edge pt-3`,children:[(0,M.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,M.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:r.recentWorkflowRuns}),(0,M.jsx)(`button`,{type:`button`,className:`text-xs text-fg-muted hover:text-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,onClick:()=>Tt(`workflow_run`),children:r.viewTimeline})]}),(0,M.jsx)(`ul`,{className:`grid gap-2`,children:I.slice(0,3).map(e=>{let a=e.metadata?.sessionKey,o=e.status===`queued`||e.status===`running`,s=e.status===`failed`||e.status===`timeout`||e.status===`cancelled`;return(0,M.jsxs)(`li`,{className:`rounded-md border border-edge/70 bg-surface-muted/40 px-2.5 py-2 text-sm`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2 text-xs text-fg-muted`,children:[(0,M.jsx)(`span`,{className:`min-w-0 truncate`,children:e.definitionId}),(0,M.jsx)(`span`,{className:i(`shrink-0 rounded-full border px-2 py-0.5`,ge(e.status)),children:R(e.status,r)})]}),(0,M.jsx)(`p`,{className:`mt-1 truncate text-fg`,children:e.title}),(0,M.jsx)(`time`,{className:`mt-1 block text-xs text-fg-muted`,children:L(e.completedAtMs??e.startedAtMs??e.createdAtMs,n,r)}),(0,M.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1`,children:[a?(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-8 gap-1.5`,onClick:()=>t(`/chat/${encodeURIComponent(a)}`),children:[(0,M.jsx)(O,{className:`size-3.5`,"aria-hidden":!0}),r.chat]}):null,o?(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-8 gap-1.5 text-destructive hover:text-destructive`,disabled:G!=null,onClick:()=>void mt(e),children:[(0,M.jsx)(m,{className:`size-3.5`,"aria-hidden":!0}),r.cancel]}):null,s?(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-8 gap-1.5`,disabled:G!=null,onClick:()=>void ht(e),children:[(0,M.jsx)(ne,{className:`size-3.5`,"aria-hidden":!0}),r.retry]}):null]})]},e.id)})})]}):null,bt.length?(0,M.jsxs)(`div`,{className:`mt-4 rounded-md border border-amber-500/30 bg-amber-500/10 px-3 py-2`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,M.jsx)(`p`,{className:`text-sm font-medium text-amber-800 dark:text-amber-200`,children:r.recoveryNeeded}),(0,M.jsx)(`span`,{className:`text-xs text-amber-700 dark:text-amber-300`,children:F(r.failedCount,{count:bt.length})})]}),(0,M.jsx)(`ul`,{className:`mt-2 grid gap-2`,children:bt.slice(0,3).map(e=>(0,M.jsxs)(`li`,{className:`grid gap-2 text-sm`,children:[(0,M.jsxs)(`div`,{className:`min-w-0`,children:[(0,M.jsx)(`p`,{className:`truncate text-fg`,children:e.title}),(0,M.jsxs)(`p`,{className:`text-xs text-fg-muted`,children:[e.definitionId,` · `,R(e.status,r)]})]}),(0,M.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[(0,M.jsxs)(D,{type:`button`,variant:`ghost`,className:`h-8 gap-1.5`,onClick:()=>t(`/workflows?run=${encodeURIComponent(e.id)}`),children:[(0,M.jsx)(O,{className:`size-3.5`,"aria-hidden":!0}),r.run]}),(0,M.jsxs)(D,{type:`button`,variant:`secondary`,className:`h-8 gap-1.5`,disabled:G!=null,onClick:()=>void ht(e),children:[(0,M.jsx)(ne,{className:`size-3.5`,"aria-hidden":!0}),r.retry]})]})]},e.id))})]}):null]})]})]})]}):null]})})}export{z as GoalDetailPage};
|
|
@@ -1,2 +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{t as ee}from"./cn-JdwAhgNB.js";import{t as i}from"./messages-CkT-lcgP.js";import{t as a}from"./locale-store-DjbfSsfA.js";import{i as o,n as s}from"./fetch-NZmjSXLl.js";import{$a as c,$r as l,Ea as u,Hi as d,Jr as f,Qr as te,Ss as p,Ts as m,Vo as ne,Vt as h,Xo as g,Xr as re,Yo as _,Yr as ie,Zo as v,Zr as ae,ba as y,ii as b,ji as oe,ki as x,ko as S,pa as C,ra as w,rs as T,st as E,ua as D,vs as O,xi as k,ya as A,ys as j}from"./index-Cxm6xsps.js";var M=n(),N=e(t(),1),P=r(),F=[`active`,`paused`,`blocked`,`needs_input`,`done`,`archived`],I=[`active`,`paused`,`attention`,`done`,`archived`],L=`application/x-xopc-goal-id`;function se(e){let t=e.checklist.length;return{done:e.checklist.filter(e=>e.status===`completed`||e.status===`impossible`).length,total:t}}function ce(e,t){return Object.entries(t).reduce((e,[t,n])=>e.replaceAll(`{{${t}}}`,String(n)),e)}function le(e,t){return new Intl.DateTimeFormat(t===`zh`?`zh-CN`:`en-US`,{dateStyle:`medium`,timeStyle:`short`}).format(new Date(e))}function R(e,t){return t.statuses[e]??e}function z(e){return e.status===`blocked`||e.status===`needs_input`?`attention`:e.status}function B(e){return e===`active`?`bg-accent-soft text-accent-fg`:e===`paused`?`bg-surface-hover text-fg-muted`:e===`done`?`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:e===`archived`?`bg-surface-muted text-fg-subtle`:`bg-amber-500/10 text-amber-700 dark:text-amber-300`}function V(e){return e===`completed`?`✓`:e===`impossible`?`!`:`○`}function H(e){return e.nextRunAt??e.finishedAt??e.startedAt??e.enqueuedAt}function U(e){return e.status===`running`?6:e.status===`retry_waiting`?5:e.status===`queued`?4:e.status===`failed`?3:e.status===`succeeded`?2:1}function ue(e){let t=new Map;for(let n of e){let e=t.get(n.goalId);(!e||U(n)>U(e)||U(n)===U(e)&&H(n)>H(e))&&t.set(n.goalId,n)}return t}function de(e){return e===`running`?`bg-accent-soft text-accent-fg`:e===`retry_waiting`||e===`failed`?`bg-amber-500/10 text-amber-700 dark:text-amber-300`:e===`succeeded`?`bg-emerald-500/10 text-emerald-700 dark:text-emerald-300`:`bg-surface-hover text-fg-muted`}function W(e,t){let n=t.trim().toLowerCase();return n?[e.title,e.description,e.nextAction,e.blockedReason,e.latestRun?.reason,...e.checklist.map(e=>e.text)].filter(Boolean).join(`
|
|
2
|
-
`).toLowerCase().includes(n):!0}async function G(){return(await s(o(`/api/goals?${new URLSearchParams({status:F.join(`,`),limit:`500`}).toString()}`))).goals}async function K(){return(await s(o(`/api/goals/queue`))).queue??[]}async function q(e){return(await s(o(`/api/goals`),{method:`POST`,body:JSON.stringify({...e,source:`api`})})).goal}async function J(e,t){await s(o(`/api/goals/${encodeURIComponent(e)}/checklist`),{method:`POST`,body:JSON.stringify({text:t})})}async function Y(e,t){await s(o(`/api/goals/${encodeURIComponent(e)}/${t}`),{method:`POST`,body:JSON.stringify({})})}async function X(e){return(await s(o(`/api/goals/${encodeURIComponent(e)}/continue`),{method:`POST`,body:JSON.stringify({})})).sessionKey}function fe(e){return e.status===`active`?`continue`:e.status===`paused`||e.status===`blocked`||e.status===`needs_input`?`resume`:e.status===`done`?`reopen`:e.status===`archived`?`unarchive`:null}function pe(e){return e.status===`active`?[`pause`,`complete`,`archive`]:e.status===`paused`||e.status===`blocked`||e.status===`needs_input`||e.status===`done`?[`archive`]:[]}function Z(e,t){return t.actions[e]}function Q(e){return e===`pause`?g:e===`archive`?O:e===`unarchive`?j:e===`reopen`?A:e===`complete`?v:_}function $(e,t){return z(e)===t?null:t===`active`?e.status===`done`?`reopen`:e.status===`archived`?`unarchive`:`resume`:t===`paused`?e.status===`archived`?`unarchive`:`pause`:t===`done`?`complete`:t===`archived`?`archive`:null}function me(e){let t=(0,M.c)(107),{goal:n,queueItem:r,t:i,language:a,selected:o,dragging:s,onOpen:c,onDragStart:l,onDragEnd:u}=e,d,f,te,p,m,ne,h,g,re,_,ie,v,ae,y,b,oe,x;if(t[0]!==s||t[1]!==n||t[2]!==a||t[3]!==u||t[4]!==l||t[5]!==c||t[6]!==r||t[7]!==o||t[8]!==i){let e=se(n),S=n.latestRun?.finishedAt??n.updatedAt;ne=!0,t[26]!==n.id||t[27]!==l?(h=e=>l(n.id,e),t[26]=n.id,t[27]=l,t[28]=h):h=t[28],g=u;let C=o?`border-accent/70 ring-1 ring-accent/30`:`border-edge`,w=s?`opacity-50`:`hover:border-edge-strong hover:bg-surface-hover/50`;t[29]!==C||t[30]!==w?(re=ee(`group relative overflow-hidden rounded-xl border bg-surface-panel p-3.5 transition-colors`,C,w),t[29]=C,t[30]=w,t[31]=re):re=t[31],ie=`button`,t[32]!==n||t[33]!==c?(v=()=>c(n),t[32]=n,t[33]=c,t[34]=v):v=t[34],ae=`${i.openDetails}: ${n.title}`,y=o?`true`:void 0,t[35]===Symbol.for(`react.memo_cache_sentinel`)?(b=ee(`w-full text-left`,k.focusRingPanel),t[35]=b):b=t[35];let T;t[36]===n.title?T=t[37]:(T=(0,P.jsx)(`div`,{className:`line-clamp-2 text-sm font-semibold leading-5 text-fg`,children:n.title}),t[36]=n.title,t[37]=T);let E;t[38]===n.agentId?E=t[39]:(E=(0,P.jsx)(`div`,{className:`mt-1 truncate text-[11px] font-medium text-fg-muted`,children:n.agentId}),t[38]=n.agentId,t[39]=E);let D;t[40]!==T||t[41]!==E?(D=(0,P.jsxs)(`div`,{className:`min-w-0`,children:[T,E]}),t[40]=T,t[41]=E,t[42]=D):D=t[42];let O;t[43]===n.status?O=t[44]:(O=ee(`shrink-0 rounded-full px-2 py-0.5 text-[10px] font-semibold shadow-sm`,B(n.status)),t[43]=n.status,t[44]=O);let A;t[45]!==n.status||t[46]!==i?(A=R(n.status,i),t[45]=n.status,t[46]=i,t[47]=A):A=t[47];let j;t[48]!==O||t[49]!==A?(j=(0,P.jsx)(`span`,{className:O,children:A}),t[48]=O,t[49]=A,t[50]=j):j=t[50],t[51]!==D||t[52]!==j?(oe=(0,P.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-2`,children:[D,j]}),t[51]=D,t[52]=j,t[53]=oe):oe=t[53];let M;t[54]!==a||t[55]!==S?(M=le(S,a),t[54]=a,t[55]=S,t[56]=M):M=t[56];let N;t[57]===M?N=t[58]:(N=(0,P.jsx)(`span`,{children:M}),t[57]=M,t[58]=N);let F;t[59]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,P.jsx)(`span`,{"aria-hidden":!0,children:`·`}),t[59]=F):F=t[59];let I;t[60]!==n.maxTurns||t[61]!==n.turnsUsed||t[62]!==i.turns?(I=ce(i.turns,{used:n.turnsUsed,max:n.maxTurns}),t[60]=n.maxTurns,t[61]=n.turnsUsed,t[62]=i.turns,t[63]=I):I=t[63];let L;t[64]===I?L=t[65]:(L=(0,P.jsx)(`span`,{children:I}),t[64]=I,t[65]=L);let z=e.total?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(`span`,{"aria-hidden":!0,children:`·`}),(0,P.jsx)(`span`,{children:ce(i.checklistProgress,{done:e.done,total:e.total})})]}):null;t[66]!==N||t[67]!==L||t[68]!==z?(x=(0,P.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-1.5 text-[11px] text-fg-subtle`,children:[N,F,L,z]}),t[66]=N,t[67]=L,t[68]=z,t[69]=x):x=t[69],t[70]!==r||t[71]!==i?(f=r?(0,P.jsx)(`div`,{className:`mt-2.5`,children:(0,P.jsx)(`span`,{className:ee(`rounded-full px-2 py-0.5 text-[11px] font-semibold`,de(r.status)),children:R(r.status,i)})}):null,t[70]=r,t[71]=i,t[72]=f):f=t[72],t[73]===n.blockedReason?te=t[74]:(te=n.blockedReason?(0,P.jsx)(`p`,{className:`mt-2 line-clamp-2 text-xs text-amber-700 dark:text-amber-300`,children:n.blockedReason}):null,t[73]=n.blockedReason,t[74]=te),t[75]===n.nextAction?p=t[76]:(p=n.nextAction?(0,P.jsx)(`p`,{className:`mt-2 line-clamp-2 text-xs text-fg-muted`,children:n.nextAction}):null,t[75]=n.nextAction,t[76]=p),t[77]!==n.blockedReason||t[78]!==n.latestRun||t[79]!==n.nextAction?(m=!n.blockedReason&&!n.nextAction&&n.latestRun?.reason?(0,P.jsx)(`p`,{className:`mt-2 line-clamp-2 text-xs text-fg-muted`,children:n.latestRun.reason}):null,t[77]=n.blockedReason,t[78]=n.latestRun,t[79]=n.nextAction,t[80]=m):m=t[80],d=`mt-3 flex flex-wrap items-center gap-2 text-[11px] text-fg-subtle`,_=n.checklist.length?(0,P.jsx)(`span`,{className:`rounded-full bg-surface-hover px-2 py-0.5 font-medium text-fg-muted`,children:ce(i.checklistProgress,{done:e.done,total:e.total})}):null,t[0]=s,t[1]=n,t[2]=a,t[3]=u,t[4]=l,t[5]=c,t[6]=r,t[7]=o,t[8]=i,t[9]=d,t[10]=f,t[11]=te,t[12]=p,t[13]=m,t[14]=ne,t[15]=h,t[16]=g,t[17]=re,t[18]=_,t[19]=ie,t[20]=v,t[21]=ae,t[22]=y,t[23]=b,t[24]=oe,t[25]=x}else d=t[9],f=t[10],te=t[11],p=t[12],m=t[13],ne=t[14],h=t[15],g=t[16],re=t[17],_=t[18],ie=t[19],v=t[20],ae=t[21],y=t[22],b=t[23],oe=t[24],x=t[25];let S;t[81]!==o||t[82]!==i.openDetails?(S=o?(0,P.jsx)(`span`,{className:`font-medium text-accent-fg`,children:i.openDetails}):null,t[81]=o,t[82]=i.openDetails,t[83]=S):S=t[83];let C;t[84]!==d||t[85]!==S||t[86]!==_?(C=(0,P.jsxs)(`div`,{className:d,children:[_,S]}),t[84]=d,t[85]=S,t[86]=_,t[87]=C):C=t[87];let w;t[88]!==f||t[89]!==te||t[90]!==p||t[91]!==m||t[92]!==C||t[93]!==ie||t[94]!==v||t[95]!==ae||t[96]!==y||t[97]!==b||t[98]!==oe||t[99]!==x?(w=(0,P.jsxs)(`button`,{type:ie,onClick:v,"aria-label":ae,"aria-current":y,className:b,children:[oe,x,f,te,p,m,C]}),t[88]=f,t[89]=te,t[90]=p,t[91]=m,t[92]=C,t[93]=ie,t[94]=v,t[95]=ae,t[96]=y,t[97]=b,t[98]=oe,t[99]=x,t[100]=w):w=t[100];let T;return t[101]!==ne||t[102]!==h||t[103]!==g||t[104]!==re||t[105]!==w?(T=(0,P.jsx)(`article`,{draggable:ne,onDragStart:h,onDragEnd:g,className:re,children:w}),t[101]=ne,t[102]=h,t[103]=g,t[104]=re,t[105]=w,t[106]=T):T=t[106],T}function he(e){let t=(0,M.c)(17),{goalId:n,action:r,t:ee,busy:i,variant:a,onAction:o}=e,s;t[0]===r?s=t[1]:(s=Q(r),t[0]=r,t[1]=s);let c=s,l=i!=null,u;t[2]!==r||t[3]!==n||t[4]!==o?(u=()=>o(n,r),t[2]=r,t[3]=n,t[4]=o,t[5]=u):u=t[5];let d;t[6]===c?d=t[7]:(d=(0,P.jsx)(c,{className:`size-4`,"aria-hidden":!0}),t[6]=c,t[7]=d);let f;t[8]!==r||t[9]!==ee?(f=Z(r,ee),t[8]=r,t[9]=ee,t[10]=f):f=t[10];let te;return t[11]!==l||t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==a?(te=(0,P.jsxs)(x,{type:`button`,variant:a,className:`h-9 rounded-lg px-3 text-sm`,disabled:l,onClick:u,children:[d,f]}),t[11]=l,t[12]=u,t[13]=d,t[14]=f,t[15]=a,t[16]=te):te=t[16],te}function ge(){return{title:``,description:``,checklist:[``],priority:`normal`,deadlineMode:`none`,deadline:``,maxTurns:`10`,agentId:``,judgeModelRef:``}}function _e(e){let t=e=>String(e).padStart(2,`0`);return[e.getFullYear(),`-`,t(e.getMonth()+1),`-`,t(e.getDate()),`T`,t(e.getHours()),`:`,t(e.getMinutes())].join(``)}function ve(e){let t=new Date;return t.setDate(t.getDate()+e),t.setHours(23,59,0,0),_e(t)}function ye(){let e=new Date,t=e.getDay(),n=t<=5?5-t:7-t+5;return e.setDate(e.getDate()+n),e.setHours(23,59,0,0),_e(e)}function be(e){if(e===`today`)return ve(0);if(e===`tomorrow`)return ve(1);if(e===`friday`)return ye();if(e===`custom`){let e=new Date;return e.setHours(e.getHours()+1,0,0,0),_e(e)}return``}function xe(e,t){let n=e.title.trim()||t.createDialog.goalFallback;return t.createDialog.aiChecklistTemplates.map(e=>ce(e,{goal:n}))}function Se(e){let t=new Set,n=[];for(let r of e){let e=r.trim();!e||t.has(e.toLowerCase())||(t.add(e.toLowerCase()),n.push(e))}return n}function Ce(e){let t=(0,M.c)(176),{open:n,t:r,busy:i,options:a,onClose:o,onCreate:s}=e,[c,p]=(0,N.useState)(Oe),[m,ne]=(0,N.useState)(!1),[h,g]=(0,N.useState)(null),_,v;t[0]===n?(_=t[1],v=t[2]):(_=()=>{n||(p(ge()),ne(!1),g(null))},v=[n],t[0]=n,t[1]=_,t[2]=v),(0,N.useEffect)(_,v);let y,b;t[3]!==n||t[4]!==a.defaultAgentId?(y=()=>{!n||!a.defaultAgentId||p(e=>e.agentId?e:{...e,agentId:a.defaultAgentId})},b=[n,a.defaultAgentId],t[3]=n,t[4]=a.defaultAgentId,t[5]=y,t[6]=b):(y=t[5],b=t[6]),(0,N.useEffect)(y,b);let S;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(S=e=>p(t=>({...t,...e})),t[7]=S):S=t[7];let C=S,E,O,k,A,j,F,I,L,se,le,R,z,B,V,H,U,ue;if(t[8]!==m||t[9]!==c||t[10]!==o||t[11]!==s||t[12]!==n||t[13]!==a.agents||t[14]!==a.defaultAgentId||t[15]!==a.models||t[16]!==r){let e=a.agents.length?a.agents:[{id:a.defaultAgentId||`main`,workspace:``,profileDir:``,typedModels:{defaults:[],effective:[]},isDefault:!0,skills:{defaults:[]},tools:{defaultsDisable:[],entryDisable:[],effectiveDisable:[]}}],i=e.find(e=>e.id===c.agentId)??e.find(e=>e.id===a.defaultAgentId)??e[0],h=c.agentId||i?.id||`main`,_=[...i?.typedModels.effective??[]].sort(De),v=a.models.filter(Ee),y;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>{C({deadlineMode:e,deadline:be(e)})},t[34]=y):y=t[34];let b=y,S;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(S=(e,t)=>{p(n=>({...n,checklist:n.checklist.map((n,r)=>r===e?t:n)}))},t[35]=S):S=t[35];let M=S,N;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(N=e=>{p(t=>({...t,checklist:t.checklist.filter((t,n)=>n!==e)}))},t[36]=N):N=t[36];let de=N,W;t[37]!==c||t[38]!==o||t[39]!==s||t[40]!==r.createDialog.titleRequired||t[41]!==r.errors?(W=async()=>{if(g(null),!c.title.trim()){g(r.createDialog.titleRequired);return}try{await s({...c,checklist:Se(c.checklist)}),o()}catch(e){let t=e;g(t instanceof Error?t.message:r.errors.create)}},t[37]=c,t[38]=o,t[39]=s,t[40]=r.createDialog.titleRequired,t[41]=r.errors,t[42]=W):W=t[42],A=W,k=te,z=n,t[43]===o?B=t[44]:(B=e=>!e&&o(),t[43]=o,t[44]=B),O=ae,t[45]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,P.jsx)(re,{className:`xopc-dialog-overlay fixed inset-0 z-65 bg-scrim backdrop-blur-[1px]`}),t[45]=R):R=t[45],E=f,se=`fixed left-1/2 top-1/2 z-66 flex h-[min(92vh,46rem)] w-[min(100%-2rem,44rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`;let G;t[46]===r.createDialog.title?G=t[47]:(G=(0,P.jsx)(l,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:r.createDialog.title}),t[46]=r.createDialog.title,t[47]=G);let K;t[48]===r.createDialog.description?K=t[49]:(K=(0,P.jsx)(ie,{className:`mt-1 truncate text-sm text-fg-muted`,children:r.createDialog.description}),t[48]=r.createDialog.description,t[49]=K);let q;t[50]!==G||t[51]!==K?(q=(0,P.jsxs)(`div`,{className:`min-w-0`,children:[G,K]}),t[50]=G,t[51]=K,t[52]=q):q=t[52];let J;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,P.jsx)(oe,{className:`size-5`,"aria-hidden":!0}),t[53]=J):J=t[53];let Y;t[54]!==o||t[55]!==r.closeDetails?(Y=(0,P.jsx)(x,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":r.closeDetails,onClick:o,children:J}),t[54]=o,t[55]=r.closeDetails,t[56]=Y):Y=t[56],t[57]!==q||t[58]!==Y?(le=(0,P.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-edge px-5 py-4`,children:[q,Y]}),t[57]=q,t[58]=Y,t[59]=le):le=t[59],L=`min-h-0 flex-1 overflow-y-auto p-5`,ue=`grid gap-4`;let X;t[60]===r.createDialog.goalTitle?X=t[61]:(X=(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.goalTitle}),t[60]=r.createDialog.goalTitle,t[61]=X);let fe;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(fe=e=>C({title:e.target.value}),t[62]=fe):fe=t[62];let pe;t[63]!==c.title||t[64]!==r.newGoalPlaceholder?(pe=(0,P.jsx)(`input`,{value:c.title,onChange:fe,placeholder:r.newGoalPlaceholder,className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg placeholder:text-fg-muted focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,autoFocus:!0}),t[63]=c.title,t[64]=r.newGoalPlaceholder,t[65]=pe):pe=t[65],t[66]!==X||t[67]!==pe?(j=(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[X,pe]}),t[66]=X,t[67]=pe,t[68]=j):j=t[68];let Z;t[69]===r.createDialog.goalDescription?Z=t[70]:(Z=(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.goalDescription}),t[69]=r.createDialog.goalDescription,t[70]=Z);let Q;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(Q=e=>C({description:e.target.value}),t[71]=Q):Q=t[71];let $;t[72]!==c.description||t[73]!==r.createDialog.descriptionPlaceholder?($=(0,P.jsx)(`textarea`,{value:c.description,onChange:Q,placeholder:r.createDialog.descriptionPlaceholder,rows:4,className:`resize-none rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg placeholder:text-fg-muted focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`}),t[72]=c.description,t[73]=r.createDialog.descriptionPlaceholder,t[74]=$):$=t[74],t[75]!==Z||t[76]!==$?(F=(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[Z,$]}),t[75]=Z,t[76]=$,t[77]=F):F=t[77];let me;t[78]===r.createDialog.criteriaTitle?me=t[79]:(me=(0,P.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:r.createDialog.criteriaTitle}),t[78]=r.createDialog.criteriaTitle,t[79]=me);let he;t[80]===r.createDialog.criteriaHint?he=t[81]:(he=(0,P.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:r.createDialog.criteriaHint}),t[80]=r.createDialog.criteriaHint,t[81]=he);let ge;t[82]!==me||t[83]!==he?(ge=(0,P.jsxs)(`div`,{children:[me,he]}),t[82]=me,t[83]=he,t[84]=ge):ge=t[84];let _e;t[85]!==c||t[86]!==r?(_e=()=>C({checklist:xe(c,r)}),t[85]=c,t[86]=r,t[87]=_e):_e=t[87];let ve;t[88]!==c.description||t[89]!==c.title?(ve=!c.title.trim()&&!c.description.trim(),t[88]=c.description,t[89]=c.title,t[90]=ve):ve=t[90];let ye;t[91]===Symbol.for(`react.memo_cache_sentinel`)?(ye=(0,P.jsx)(w,{className:`size-3.5`,"aria-hidden":!0}),t[91]=ye):ye=t[91];let Ce;t[92]!==r.createDialog.aiDraft||t[93]!==_e||t[94]!==ve?(Ce=(0,P.jsxs)(x,{type:`button`,variant:`secondary`,className:`h-8 rounded-lg text-xs`,onClick:_e,disabled:ve,children:[ye,r.createDialog.aiDraft]}),t[92]=r.createDialog.aiDraft,t[93]=_e,t[94]=ve,t[95]=Ce):Ce=t[95];let Oe;t[96]!==ge||t[97]!==Ce?(Oe=(0,P.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[ge,Ce]}),t[96]=ge,t[97]=Ce,t[98]=Oe):Oe=t[98];let ke;if(t[99]!==c.checklist||t[100]!==r.createDialog.criteriaPlaceholder||t[101]!==r.createDialog.removeCriteria){let e;t[103]!==r.createDialog.criteriaPlaceholder||t[104]!==r.createDialog.removeCriteria?(e=(e,t)=>(0,P.jsxs)(`div`,{className:`flex gap-2`,children:[(0,P.jsx)(`input`,{value:e,onChange:e=>M(t,e.target.value),placeholder:ce(r.createDialog.criteriaPlaceholder,{index:t+1}),className:`min-w-0 flex-1 rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg placeholder:text-fg-muted focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`}),(0,P.jsx)(x,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 rounded-lg p-0`,"aria-label":r.createDialog.removeCriteria,onClick:()=>de(t),children:(0,P.jsx)(d,{className:`size-4`,"aria-hidden":!0})})]},t),t[103]=r.createDialog.criteriaPlaceholder,t[104]=r.createDialog.removeCriteria,t[105]=e):e=t[105],ke=c.checklist.map(e),t[99]=c.checklist,t[100]=r.createDialog.criteriaPlaceholder,t[101]=r.createDialog.removeCriteria,t[102]=ke}else ke=t[102];let Ae;t[106]===c.checklist?Ae=t[107]:(Ae=()=>C({checklist:[...c.checklist,``]}),t[106]=c.checklist,t[107]=Ae);let je;t[108]===Symbol.for(`react.memo_cache_sentinel`)?(je=(0,P.jsx)(u,{className:`size-3.5`,"aria-hidden":!0}),t[108]=je):je=t[108];let Me;t[109]!==r.createDialog.addCriteria||t[110]!==Ae?(Me=(0,P.jsxs)(x,{type:`button`,variant:`ghost`,className:`h-8 justify-start rounded-lg text-xs`,onClick:Ae,children:[je,r.createDialog.addCriteria]}),t[109]=r.createDialog.addCriteria,t[110]=Ae,t[111]=Me):Me=t[111];let Ne;t[112]!==ke||t[113]!==Me?(Ne=(0,P.jsxs)(`div`,{className:`mt-3 grid gap-2`,children:[ke,Me]}),t[112]=ke,t[113]=Me,t[114]=Ne):Ne=t[114],t[115]!==Oe||t[116]!==Ne?(I=(0,P.jsxs)(`section`,{className:`rounded-2xl border border-edge-subtle bg-surface-base/60 p-4`,children:[Oe,Ne]}),t[115]=Oe,t[116]=Ne,t[117]=I):I=t[117],V=`rounded-2xl border border-edge-subtle bg-surface-base/60`;let Pe;t[118]===Symbol.for(`react.memo_cache_sentinel`)?(Pe=()=>ne(Te),t[118]=Pe):Pe=t[118];let Fe;t[119]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,P.jsx)(D,{className:`size-4 text-fg-muted`,"aria-hidden":!0}),t[119]=Fe):Fe=t[119];let Ie;t[120]===r.createDialog.advanced?Ie=t[121]:(Ie=(0,P.jsxs)(`span`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[Fe,r.createDialog.advanced]}),t[120]=r.createDialog.advanced,t[121]=Ie);let Le=m&&`rotate-180`,Re;t[122]===Le?Re=t[123]:(Re=ee(`size-4 text-fg-muted transition-transform`,Le),t[122]=Le,t[123]=Re);let ze;t[124]===Re?ze=t[125]:(ze=(0,P.jsx)(T,{className:Re,"aria-hidden":!0}),t[124]=Re,t[125]=ze),t[126]!==Ie||t[127]!==ze?(H=(0,P.jsxs)(`button`,{type:`button`,className:`flex w-full items-center justify-between gap-3 px-4 py-3 text-left`,onClick:Pe,children:[Ie,ze]}),t[126]=Ie,t[127]=ze,t[128]=H):H=t[128],U=m?(0,P.jsxs)(`div`,{className:`grid gap-3 border-t border-edge-subtle p-4 sm:grid-cols-2`,children:[(0,P.jsxs)(`label`,{className:`grid gap-1.5 sm:col-span-2`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.agentId}),(0,P.jsx)(`select`,{value:h,onChange:e=>C({agentId:e.target.value}),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,children:e.map(e=>(0,P.jsx)(`option`,{value:e.id,children:(e.name?.trim()||e.id)+(e.isDefault?` · ${r.createDialog.defaultAgent}`:` · ${e.id}`)},e.id))}),i?.description?(0,P.jsx)(`span`,{className:`line-clamp-2 text-xs text-fg-muted`,children:i.description}):i?.model?.primary?(0,P.jsx)(`span`,{className:`truncate text-xs text-fg-muted`,children:ce(r.createDialog.agentPrimaryModel,{model:i.model.primary})}):null]}),(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.priority}),(0,P.jsxs)(`select`,{value:c.priority,onChange:e=>C({priority:e.target.value}),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,children:[(0,P.jsx)(`option`,{value:`normal`,children:r.priorities.normal}),(0,P.jsx)(`option`,{value:`high`,children:r.priorities.high}),(0,P.jsx)(`option`,{value:`low`,children:r.priorities.low})]})]}),(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.deadline}),(0,P.jsxs)(`select`,{value:c.deadlineMode,onChange:e=>b(e.target.value),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,children:[(0,P.jsx)(`option`,{value:`none`,children:r.createDialog.deadlineNone}),(0,P.jsx)(`option`,{value:`today`,children:r.createDialog.deadlineToday}),(0,P.jsx)(`option`,{value:`tomorrow`,children:r.createDialog.deadlineTomorrow}),(0,P.jsx)(`option`,{value:`friday`,children:r.createDialog.deadlineFriday}),(0,P.jsx)(`option`,{value:`custom`,children:r.createDialog.deadlineCustom})]})]}),c.deadlineMode===`none`?null:(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.deadlineAt}),(0,P.jsx)(`input`,{type:`datetime-local`,value:c.deadline,onChange:e=>C({deadline:e.target.value,deadlineMode:`custom`}),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`})]}),(0,P.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.maxTurns}),(0,P.jsx)(`input`,{type:`number`,min:1,max:500,value:c.maxTurns,onChange:e=>C({maxTurns:e.target.value}),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`})]}),(0,P.jsxs)(`label`,{className:`grid gap-1.5 sm:col-span-2`,children:[(0,P.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:r.createDialog.judgeModel}),(0,P.jsxs)(`select`,{value:c.judgeModelRef,onChange:e=>C({judgeModelRef:e.target.value}),className:`rounded-lg border border-edge bg-surface-muted px-3 py-2 text-sm text-fg focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent`,children:[(0,P.jsx)(`option`,{value:``,children:r.createDialog.judgeModelPlaceholder}),_.length?(0,P.jsx)(`optgroup`,{label:r.createDialog.agentModelRoles,children:_.map(e=>(0,P.jsxs)(`option`,{value:e.model,children:[e.id===`judge`?r.createDialog.judgeRole:e.id,` · `,e.model]},`${e.id}:${e.model}`))}):null,(0,P.jsx)(`optgroup`,{label:r.createDialog.configuredModels,children:v.map(we)})]})]})]}):null,t[8]=m,t[9]=c,t[10]=o,t[11]=s,t[12]=n,t[13]=a.agents,t[14]=a.defaultAgentId,t[15]=a.models,t[16]=r,t[17]=E,t[18]=O,t[19]=k,t[20]=A,t[21]=j,t[22]=F,t[23]=I,t[24]=L,t[25]=se,t[26]=le,t[27]=R,t[28]=z,t[29]=B,t[30]=V,t[31]=H,t[32]=U,t[33]=ue}else E=t[17],O=t[18],k=t[19],A=t[20],j=t[21],F=t[22],I=t[23],L=t[24],se=t[25],le=t[26],R=t[27],z=t[28],B=t[29],V=t[30],H=t[31],U=t[32],ue=t[33];let de;t[129]!==V||t[130]!==H||t[131]!==U?(de=(0,P.jsxs)(`section`,{className:V,children:[H,U]}),t[129]=V,t[130]=H,t[131]=U,t[132]=de):de=t[132];let W;t[133]===h?W=t[134]:(W=h?(0,P.jsx)(`p`,{className:`rounded-lg border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:h}):null,t[133]=h,t[134]=W);let G;t[135]!==j||t[136]!==F||t[137]!==I||t[138]!==de||t[139]!==W||t[140]!==ue?(G=(0,P.jsxs)(`div`,{className:ue,children:[j,F,I,de,W]}),t[135]=j,t[136]=F,t[137]=I,t[138]=de,t[139]=W,t[140]=ue,t[141]=G):G=t[141];let K;t[142]!==L||t[143]!==G?(K=(0,P.jsx)(`div`,{className:L,children:G}),t[142]=L,t[143]=G,t[144]=K):K=t[144];let q;t[145]!==o||t[146]!==r.createDialog.cancel?(q=(0,P.jsx)(x,{type:`button`,variant:`ghost`,className:`rounded-lg`,onClick:o,children:r.createDialog.cancel}),t[145]=o,t[146]=r.createDialog.cancel,t[147]=q):q=t[147];let J;t[148]!==i||t[149]!==c.title?(J=i||!c.title.trim(),t[148]=i,t[149]=c.title,t[150]=J):J=t[150];let Y;t[151]===A?Y=t[152]:(Y=()=>void A(),t[151]=A,t[152]=Y);let X;t[153]===Symbol.for(`react.memo_cache_sentinel`)?(X=(0,P.jsx)(u,{className:`size-4`,"aria-hidden":!0}),t[153]=X):X=t[153];let fe;t[154]!==r.createDialog.create||t[155]!==J||t[156]!==Y?(fe=(0,P.jsxs)(x,{type:`button`,variant:`primary`,className:`rounded-lg`,disabled:J,onClick:Y,children:[X,r.createDialog.create]}),t[154]=r.createDialog.create,t[155]=J,t[156]=Y,t[157]=fe):fe=t[157];let pe;t[158]!==q||t[159]!==fe?(pe=(0,P.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 border-t border-edge px-5 py-4`,children:[q,fe]}),t[158]=q,t[159]=fe,t[160]=pe):pe=t[160];let Z;t[161]!==E||t[162]!==se||t[163]!==le||t[164]!==K||t[165]!==pe?(Z=(0,P.jsxs)(E,{className:se,children:[le,K,pe]}),t[161]=E,t[162]=se,t[163]=le,t[164]=K,t[165]=pe,t[166]=Z):Z=t[166];let Q;t[167]!==O||t[168]!==R||t[169]!==Z?(Q=(0,P.jsxs)(O,{children:[R,Z]}),t[167]=O,t[168]=R,t[169]=Z,t[170]=Q):Q=t[170];let $;return t[171]!==k||t[172]!==z||t[173]!==B||t[174]!==Q?($=(0,P.jsx)(k,{open:z,onOpenChange:B,children:Q}),t[171]=k,t[172]=z,t[173]=B,t[174]=Q,t[175]=$):$=t[175],$}function we(e){return(0,P.jsxs)(`option`,{value:e.id,children:[e.name,` · `,e.id]},e.id)}function Te(e){return!e}function Ee(e,t,n){return n.findIndex(t=>t.id===e.id)===t}function De(e,t){return e.id===`judge`?-1:t.id===`judge`?1:e.id.localeCompare(t.id)}function Oe(){return ge()}function ke(e){let t=(0,M.c)(135),{goal:n,queueItem:r,t:i,language:a,busy:o,onClose:s,onAction:u}=e;if(!n)return null;let d,m,ne,h,g,_,v,y,b,C,w,T,E,D;if(t[0]!==o||t[1]!==n||t[2]!==u||t[3]!==s||t[4]!==i){let e=se(n),r;t[19]===n?r=t[20]:(r=fe(n),t[19]=n,t[20]=r);let a=r,c=pe(n);ne=te,g=!0,t[21]===s?_=t[22]:(_=e=>!e&&s(),t[21]=s,t[22]=_),m=ae,t[23]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,P.jsx)(re,{className:`xopc-dialog-overlay fixed inset-0 z-65 bg-scrim backdrop-blur-[1px]`}),t[23]=D):D=t[23],d=f,T=`fixed left-1/2 top-1/2 z-66 flex h-[min(90vh,48rem)] w-[min(100%-2rem,56rem)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`;let p;t[24]===n.title?p=t[25]:(p=(0,P.jsx)(l,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:n.title}),t[24]=n.title,t[25]=p);let S;t[26]!==n.status||t[27]!==i?(S=R(n.status,i),t[26]=n.status,t[27]=i,t[28]=S):S=t[28];let O;t[29]!==n.maxTurns||t[30]!==n.turnsUsed||t[31]!==i.turns?(O=ce(i.turns,{used:n.turnsUsed,max:n.maxTurns}),t[29]=n.maxTurns,t[30]=n.turnsUsed,t[31]=i.turns,t[32]=O):O=t[32];let k;t[33]!==S||t[34]!==O?(k=(0,P.jsxs)(ie,{className:`mt-1 truncate text-xs text-fg-muted`,children:[S,` · `,O]}),t[33]=S,t[34]=O,t[35]=k):k=t[35];let A;t[36]!==p||t[37]!==k?(A=(0,P.jsxs)(`div`,{className:`min-w-0`,children:[p,k]}),t[36]=p,t[37]=k,t[38]=A):A=t[38];let j;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,P.jsx)(oe,{className:`size-5`,"aria-hidden":!0}),t[39]=j):j=t[39];let M;t[40]!==s||t[41]!==i.closeDetails?(M=(0,P.jsx)(x,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,"aria-label":i.closeDetails,onClick:s,children:j}),t[40]=s,t[41]=i.closeDetails,t[42]=M):M=t[42],t[43]!==A||t[44]!==M?(E=(0,P.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-edge px-5 py-4`,children:[A,M]}),t[43]=A,t[44]=M,t[45]=E):E=t[45],w=`min-h-0 flex-1 overflow-y-auto p-5`,b=`flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between`;let N;t[46]===n.status?N=t[47]:(N=ee(`rounded-full px-2 py-0.5 text-xs font-medium`,B(n.status)),t[46]=n.status,t[47]=N);let F;t[48]!==n.status||t[49]!==i?(F=R(n.status,i),t[48]=n.status,t[49]=i,t[50]=F):F=t[50];let I;t[51]!==N||t[52]!==F?(I=(0,P.jsx)(`span`,{className:N,children:F}),t[51]=N,t[52]=F,t[53]=I):I=t[53];let L;t[54]===n.agentId?L=t[55]:(L=(0,P.jsx)(`span`,{className:`text-xs text-fg-muted`,children:n.agentId}),t[54]=n.agentId,t[55]=L);let le=ce(i.checklistProgress,{done:e.done,total:e.total}),z;t[56]===le?z=t[57]:(z=(0,P.jsx)(`span`,{className:`text-xs text-fg-muted`,children:le}),t[56]=le,t[57]=z);let V;t[58]!==I||t[59]!==L||t[60]!==z?(V=(0,P.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[I,L,z]}),t[58]=I,t[59]=L,t[60]=z,t[61]=V):V=t[61];let H;t[62]===n.description?H=t[63]:(H=n.description?(0,P.jsx)(`p`,{className:`mt-3 whitespace-pre-wrap break-words text-sm leading-6 text-fg-muted`,children:n.description}):null,t[62]=n.description,t[63]=H),t[64]!==V||t[65]!==H?(C=(0,P.jsxs)(`div`,{className:`min-w-0`,children:[V,H]}),t[64]=V,t[65]=H,t[66]=C):C=t[66],h=`flex flex-wrap gap-2`,t[67]!==o||t[68]!==n.id||t[69]!==u||t[70]!==a||t[71]!==i?(v=a?(0,P.jsx)(he,{goalId:n.id,action:a,t:i,busy:o,variant:a===`continue`?`primary`:`secondary`,onAction:u}):null,t[67]=o,t[68]=n.id,t[69]=u,t[70]=a,t[71]=i,t[72]=v):v=t[72];let U;t[73]!==o||t[74]!==n.id||t[75]!==u||t[76]!==i?(U=e=>(0,P.jsx)(he,{goalId:n.id,action:e,t:i,busy:o,variant:e===`archive`?`ghost`:`secondary`,onAction:u},e),t[73]=o,t[74]=n.id,t[75]=u,t[76]=i,t[77]=U):U=t[77],y=c.map(U),t[0]=o,t[1]=n,t[2]=u,t[3]=s,t[4]=i,t[5]=d,t[6]=m,t[7]=ne,t[8]=h,t[9]=g,t[10]=_,t[11]=v,t[12]=y,t[13]=b,t[14]=C,t[15]=w,t[16]=T,t[17]=E,t[18]=D}else d=t[5],m=t[6],ne=t[7],h=t[8],g=t[9],_=t[10],v=t[11],y=t[12],b=t[13],C=t[14],w=t[15],T=t[16],E=t[17],D=t[18];let O=`/goals/${encodeURIComponent(n.id)}`,k;t[78]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,P.jsx)(S,{className:`size-4`,"aria-hidden":!0}),t[78]=k):k=t[78];let A;t[79]!==i.fullDetails||t[80]!==O?(A=(0,P.jsx)(x,{asChild:!0,type:`button`,variant:`secondary`,className:`h-9 rounded-lg`,children:(0,P.jsxs)(p,{to:O,children:[k,i.fullDetails]})}),t[79]=i.fullDetails,t[80]=O,t[81]=A):A=t[81];let j;t[82]!==h||t[83]!==A||t[84]!==v||t[85]!==y?(j=(0,P.jsxs)(`div`,{className:h,children:[v,y,A]}),t[82]=h,t[83]=A,t[84]=v,t[85]=y,t[86]=j):j=t[86];let N;t[87]!==j||t[88]!==b||t[89]!==C?(N=(0,P.jsxs)(`div`,{className:b,children:[C,j]}),t[87]=j,t[88]=b,t[89]=C,t[90]=N):N=t[90];let F;t[91]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,P.jsx)(`div`,{className:`rounded-xl bg-accent-soft p-2 text-accent-fg`,children:(0,P.jsx)(c,{className:`size-4`,"aria-hidden":!0})}),t[91]=F):F=t[91];let I=n.blockedReason?i.currentBlocker:i.nextAction,L;t[92]===I?L=t[93]:(L=(0,P.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:I}),t[92]=I,t[93]=L);let z=n.blockedReason?`text-amber-700 dark:text-amber-300`:`text-fg-muted`,V;t[94]===z?V=t[95]:(V=ee(`mt-1 text-sm leading-6`,z),t[94]=z,t[95]=V);let U=n.blockedReason||n.nextAction||i.noNextAction,ue;t[96]!==V||t[97]!==U?(ue=(0,P.jsx)(`p`,{className:V,children:U}),t[96]=V,t[97]=U,t[98]=ue):ue=t[98];let W;t[99]!==L||t[100]!==ue?(W=(0,P.jsx)(`div`,{className:`mt-5 rounded-2xl border border-edge-subtle bg-surface-base/60 p-4`,children:(0,P.jsxs)(`div`,{className:`flex items-start gap-3`,children:[F,(0,P.jsxs)(`div`,{className:`min-w-0`,children:[L,ue]})]})}),t[99]=L,t[100]=ue,t[101]=W):W=t[101];let G;t[102]!==a||t[103]!==r||t[104]!==i?(G=r?(0,P.jsxs)(`div`,{className:`mt-4 rounded-2xl border border-edge-subtle bg-surface-base/60 p-4`,children:[(0,P.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,P.jsx)(`h3`,{className:`text-sm font-semibold text-fg`,children:i.executionQueue}),(0,P.jsx)(`span`,{className:ee(`rounded-full px-2 py-0.5 text-xs font-semibold`,de(r.status)),children:R(r.status,i)})]}),(0,P.jsxs)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:[ce(i.attempt,{attempts:r.attempts,max:r.maxRetries+1}),` · `,le(H(r),a)]}),r.error?(0,P.jsx)(`p`,{className:`mt-2 text-sm text-amber-700 dark:text-amber-300`,children:r.error}):null,r.message?(0,P.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:r.message}):null]}):null,t[102]=a,t[103]=r,t[104]=i,t[105]=G):G=t[105];let K;t[106]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,P.jsx)(c,{className:`size-4 text-accent`,"aria-hidden":!0}),t[106]=K):K=t[106];let q;t[107]===i.checklist?q=t[108]:(q=(0,P.jsxs)(`h3`,{className:`flex items-center gap-2 text-sm font-semibold text-fg`,children:[K,i.checklist]}),t[107]=i.checklist,t[108]=q);let J;t[109]!==n.checklist||t[110]!==i.noChecklist?(J=n.checklist.length?(0,P.jsx)(`ul`,{className:`mt-3 grid gap-2 text-sm text-fg-muted`,children:n.checklist.map(Ae)}):(0,P.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:i.noChecklist}),t[109]=n.checklist,t[110]=i.noChecklist,t[111]=J):J=t[111];let Y;t[112]!==q||t[113]!==J?(Y=(0,P.jsxs)(`div`,{className:`mt-4 rounded-2xl border border-edge-subtle bg-surface-base/60 p-4`,children:[q,J]}),t[112]=q,t[113]=J,t[114]=Y):Y=t[114];let X;t[115]!==N||t[116]!==W||t[117]!==G||t[118]!==Y||t[119]!==w?(X=(0,P.jsxs)(`section`,{className:w,children:[N,W,G,Y]}),t[115]=N,t[116]=W,t[117]=G,t[118]=Y,t[119]=w,t[120]=X):X=t[120];let Z;t[121]!==d||t[122]!==X||t[123]!==T||t[124]!==E?(Z=(0,P.jsxs)(d,{className:T,children:[E,X]}),t[121]=d,t[122]=X,t[123]=T,t[124]=E,t[125]=Z):Z=t[125];let Q;t[126]!==m||t[127]!==Z||t[128]!==D?(Q=(0,P.jsxs)(m,{children:[D,Z]}),t[126]=m,t[127]=Z,t[128]=D,t[129]=Q):Q=t[129];let $;return t[130]!==ne||t[131]!==g||t[132]!==_||t[133]!==Q?($=(0,P.jsx)(ne,{open:g,onOpenChange:_,children:Q}),t[130]=ne,t[131]=g,t[132]=_,t[133]=Q,t[134]=$):$=t[134],$}function Ae(e){return(0,P.jsxs)(`li`,{className:`flex gap-2`,children:[(0,P.jsx)(`span`,{className:`w-5 shrink-0 text-center`,children:V(e.status)}),(0,P.jsx)(`span`,{className:`break-words`,children:e.text})]},e.id)}function je(){let e=m(),t=a(e=>e.language),n=i(t).goalsPage,r=b(e=>e.setPageHeader),o=b(e=>e.clearPageHeader),[s,c]=(0,N.useState)([]),[l,d]=(0,N.useState)([]),[f,te]=(0,N.useState)(``),[p,g]=(0,N.useState)(!0),[re,_]=(0,N.useState)(null),[ie,v]=(0,N.useState)(null),[ae,oe]=(0,N.useState)(!1),[S,w]=(0,N.useState)({defaultAgentId:``,agents:[],models:[]}),[T,D]=(0,N.useState)(null),[O,k]=(0,N.useState)(null),[A,j]=(0,N.useState)(null),M=(0,N.useCallback)(async()=>{g(!0),v(null);try{let[e,t]=await Promise.all([G(),K()]);c(e),d(t)}catch(e){v(e instanceof Error?e.message:n.errors.load)}finally{g(!1)}},[n.errors.load]);(0,N.useEffect)(()=>{M()},[M]),(0,N.useEffect)(()=>{let e=!1;async function t(){let[t,n]=await Promise.allSettled([h(),E()]);e||w(e=>{let r=t.status===`fulfilled`?t.value.defaultId:e.defaultAgentId,ee=t.status===`fulfilled`?t.value.agents:e.agents,i=n.status===`fulfilled`?n.value:e.models;return{defaultAgentId:r,agents:ee.length?ee:[{id:r||`main`,workspace:``,profileDir:``,typedModels:{defaults:[],effective:[]},isDefault:!0,skills:{defaults:[]},tools:{defaultsDisable:[],entryDisable:[],effectiveDisable:[]}}],models:i}})}return t(),()=>{e=!0}},[]),(0,N.useEffect)(()=>{let e=()=>{K().then(d).catch(()=>{})};return window.addEventListener(`goal-queue-updated`,e),()=>window.removeEventListener(`goal-queue-updated`,e)},[]);let F=(0,N.useMemo)(()=>ue(l),[l]),se=(0,N.useMemo)(()=>s.filter(e=>W(e,f)),[s,f]),le=(0,N.useMemo)(()=>{let e=new Map(I.map(e=>[e,[]]));for(let t of se)e.get(z(t))?.push(t);return e},[se]),R=(0,N.useMemo)(()=>s.find(e=>e.id===T)??null,[s,T]),B=(0,N.useMemo)(()=>({open:s.filter(e=>e.status===`active`||e.status===`paused`||e.status===`blocked`||e.status===`needs_input`).length,attention:s.filter(e=>e.status===`blocked`||e.status===`needs_input`).length,running:l.filter(e=>e.status===`running`).length,queued:l.filter(e=>e.status===`queued`||e.status===`retry_waiting`).length}),[s,l]),V=(0,N.useMemo)(()=>[{key:`running`,count:B.running},{key:`queued`,count:B.queued},{key:`failed`,count:l.filter(e=>e.status===`failed`).length}],[B.queued,B.running,l]),H=async(t,r)=>{_(`${t}:${r}`),v(null);try{if(r===`continue`){let n=await X(t);if(n){e(`/chat/${encodeURIComponent(n)}`);return}}else await Y(t,r);await M()}catch(e){v(e instanceof Error?e.message:n.errors.action)}finally{_(null)}},U=async(e,t)=>{let n=s.find(t=>t.id===e),r=n?$(n,t):null;j(null),k(null),!(!n||!r)&&await H(n.id,r)},de=(0,N.useCallback)(async e=>{let t=Number.parseInt(e.maxTurns,10),r=e.deadline?new Date(e.deadline).getTime():void 0;_(`create`),v(null);try{let n=await q({title:e.title.trim(),description:e.description.trim()||void 0,priority:e.priority,deadlineAt:Number.isFinite(r)?r:void 0,maxTurns:Number.isFinite(t)?t:void 0,agentId:e.agentId.trim()||void 0,judgeModelRef:e.judgeModelRef.trim()||void 0});for(let t of Se(e.checklist))await J(n.id,t);await M(),D(n.id)}catch(e){throw v(e instanceof Error?e.message:n.errors.create),e}finally{_(null)}},[M,n.errors.create]),fe=(0,N.useMemo)(()=>(0,P.jsxs)(P.Fragment,{children:[(0,P.jsxs)(`label`,{className:`relative min-w-0`,children:[(0,P.jsx)(C,{className:`pointer-events-none absolute left-3 top-1/2 size-4 -translate-y-1/2 text-fg-muted`,"aria-hidden":!0}),(0,P.jsx)(`input`,{value:f,onChange:e=>te(e.target.value),"aria-label":n.searchPlaceholder,autoComplete:`off`,placeholder:n.searchPlaceholder,className:`h-9 w-36 rounded-lg border border-edge bg-surface-muted py-2 pl-9 pr-3 text-sm text-fg placeholder:text-fg-muted focus-visible:border-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent sm:w-56 lg:w-72`})]}),(0,P.jsx)(x,{type:`button`,variant:`ghost`,className:`size-9 shrink-0 p-0`,disabled:p,title:n.refresh,"aria-label":n.refresh,onClick:()=>void M(),children:(0,P.jsx)(y,{className:ee(`size-4`,p&&`animate-spin`),strokeWidth:1.75,"aria-hidden":!0})}),(0,P.jsxs)(x,{type:`button`,variant:`primary`,className:`h-9 rounded-lg`,disabled:re===`create`,onClick:()=>oe(!0),children:[(0,P.jsx)(u,{className:`size-4`,"aria-hidden":!0}),n.create]})]}),[re,p,f,M,n.create,n.refresh,n.searchPlaceholder]);return(0,N.useLayoutEffect)(()=>(r({startExtra:null,main:(0,P.jsxs)(`div`,{className:`min-w-0`,children:[(0,P.jsx)(`h1`,{className:`truncate text-base font-semibold tracking-tight text-fg`,children:n.title}),(0,P.jsx)(`p`,{className:`truncate text-xs text-fg-muted`,children:ce(n.summary,{open:B.open,attention:B.attention,shown:se.length})})]}),end:fe}),()=>o()),[o,B.attention,B.open,fe,r,n.summary,n.title,se.length]),(0,P.jsxs)(`main`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden bg-surface-base`,children:[(0,P.jsxs)(`div`,{className:`flex min-h-0 w-full flex-1 flex-col gap-4 px-4 py-5 sm:px-6 2xl:px-8`,children:[(0,P.jsxs)(`section`,{className:`flex flex-wrap items-center gap-2 rounded-lg border border-edge bg-surface-panel px-3 py-2`,children:[(0,P.jsxs)(`div`,{className:`mr-1 flex items-center gap-2 text-sm font-medium text-fg`,children:[(0,P.jsx)(ne,{className:`size-4 text-accent`,"aria-hidden":!0}),n.executionQueue]}),V.map(e=>(0,P.jsx)(`span`,{className:`rounded-full border border-edge bg-surface-muted px-2 py-0.5 text-xs text-fg-muted`,children:ce(n.queueSummary[e.key],{count:e.count})},e.key))]}),ie?(0,P.jsx)(`p`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:ie}):null,p?(0,P.jsx)(`p`,{className:`text-sm text-fg-muted`,children:n.loading}):null,(0,P.jsx)(`section`,{className:`-mx-1 min-h-0 flex-1 overflow-x-auto px-1 pb-3`,"aria-label":n.boardLabel,children:(0,P.jsx)(`div`,{className:`flex h-full min-w-max snap-x snap-mandatory gap-3`,children:I.map(e=>{let r=le.get(e)??[];return(0,P.jsxs)(`section`,{className:ee(`flex h-full w-80 shrink-0 snap-center flex-col overflow-hidden rounded-2xl border bg-surface-panel/40`,A===e?`border-accent ring-1 ring-accent/30`:`border-edge`),"aria-label":n.lanes[e].title,onDragOver:t=>{t.preventDefault(),t.dataTransfer.dropEffect=`move`,j(e)},onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||j(null)},onDrop:t=>{t.preventDefault();let n=t.dataTransfer.getData(L)||O;n&&U(n,e)},children:[(0,P.jsxs)(`header`,{className:`flex shrink-0 items-center justify-between gap-2 rounded-t-2xl border-b border-edge-subtle bg-surface-panel/90 px-3.5 py-3 backdrop-blur`,children:[(0,P.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,P.jsx)(`span`,{className:`size-2 rounded-full bg-accent`,"aria-hidden":!0}),(0,P.jsx)(`h2`,{className:`truncate text-sm font-semibold text-fg`,children:n.lanes[e].title})]}),(0,P.jsx)(`span`,{className:`rounded-full bg-surface-hover px-2.5 py-1 text-xs font-semibold tabular-nums text-fg-muted`,children:r.length})]}),(0,P.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto p-2.5`,children:[r.map(e=>(0,P.jsx)(me,{goal:e,queueItem:F.get(e.id),t:n,language:t,selected:e.id===T,dragging:e.id===O,onOpen:e=>D(e.id),onDragStart:(e,t)=>{t.dataTransfer.effectAllowed=`move`,t.dataTransfer.setData(L,e),k(e)},onDragEnd:()=>{k(null),j(null)}},e.id)),!p&&r.length===0?(0,P.jsx)(`div`,{className:`flex min-h-32 items-center justify-center rounded-xl border border-dashed border-edge bg-surface-panel/40 px-4 py-6 text-center text-xs text-fg-subtle`,children:n.lanes[e].empty}):null]})]},e)})})})]}),(0,P.jsx)(Ce,{open:ae,t:n,busy:re===`create`,options:S,onClose:()=>oe(!1),onCreate:de}),(0,P.jsx)(ke,{goal:R,queueItem:R?F.get(R.id):void 0,t:n,language:t,busy:re,onClose:()=>D(null),onAction:(e,t)=>void H(e,t)})]})}export{je as GoalsPage};
|
|
@@ -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{t as i}from"./cn-JdwAhgNB.js";import{t as a}from"./messages-CkT-lcgP.js";import{t as o}from"./locale-store-DjbfSsfA.js";import{c as s,i as c,n as l}from"./fetch-NZmjSXLl.js";import{i as u}from"./vendor-swr-BIWyz7Rc.js";import{Ds as d,Ea as f,Hi as p,Oi as m,U as h,br as g,ki as _,ps as v,qa as y,qi as b,ur as x,xi as S,yr as C}from"./index-Cxm6xsps.js";import{n as w,t as T}from"./settings-form-section-Dq-83cQd.js";import{t as E}from"./use-channel-catalog-CgJibfMM.js";import{n as D,t as O}from"./save-bar-controls-CrWwWRVK.js";var k=e(t(),1),A=n(),j={maxTurns:20,judgeModelRef:``,checklistMode:!0,maxConsecutiveParseFailures:3,judgeTimeoutSec:60,checklistHistoryChars:24e3,notifications:{enabled:!1,includeLinkedSessions:!0,channels:[`telegram`,`weixin`],events:[`done`,`blocked`,`needs_input`,`queue_failed`,`queue_retry`],targets:[]}};function M(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function N(e){let t=M(e)?e:{},n=M(t.goals)?t.goals:{},r=M(n.notifications)?n.notifications:{};return{maxTurns:typeof n.maxTurns==`number`&&Number.isFinite(n.maxTurns)?Math.max(1,Math.min(500,Math.floor(n.maxTurns))):j.maxTurns,judgeModelRef:typeof n.judgeModelRef==`string`?n.judgeModelRef:``,checklistMode:n.checklistMode!==!1,maxConsecutiveParseFailures:typeof n.maxConsecutiveParseFailures==`number`&&Number.isFinite(n.maxConsecutiveParseFailures)?Math.max(1,Math.min(20,Math.floor(n.maxConsecutiveParseFailures))):j.maxConsecutiveParseFailures,judgeTimeoutSec:typeof n.judgeTimeoutMs==`number`&&Number.isFinite(n.judgeTimeoutMs)?Math.max(5,Math.min(120,Math.round(n.judgeTimeoutMs/1e3))):j.judgeTimeoutSec,checklistHistoryChars:typeof n.checklistHistoryChars==`number`&&Number.isFinite(n.checklistHistoryChars)?Math.max(0,Math.min(1e5,Math.floor(n.checklistHistoryChars))):j.checklistHistoryChars,notifications:{enabled:r.enabled===!0,includeLinkedSessions:r.includeLinkedSessions!==!1,channels:Array.isArray(r.channels)?r.channels.filter(e=>typeof e==`string`&&e.trim().length>0):j.notifications.channels,events:Array.isArray(r.events)?r.events.filter(e=>typeof e==`string`&&e.trim().length>0):j.notifications.events,targets:Array.isArray(r.targets)?r.targets.filter(M).map(e=>({channel:typeof e.channel==`string`?e.channel:``,chatId:typeof e.chatId==`string`?e.chatId:``,accountId:typeof e.accountId==`string`?e.accountId:void 0,threadId:typeof e.threadId==`string`||typeof e.threadId==`number`?e.threadId:void 0,silent:e.silent===!0,events:Array.isArray(e.events)?e.events.filter(e=>typeof e==`string`&&e.trim().length>0):void 0})).filter(e=>e.channel.trim()&&e.chatId.trim()):[]}}}async function P(e){let t=e.notifications.targets.map(e=>({...e,chatId:e.chatId.trim(),channel:e.channel.trim(),accountId:e.accountId?.trim()||void 0})).filter(e=>e.channel&&e.chatId&&e.chatId!==`__custom__`);await l(c(`/api/config`),{method:`PATCH`,body:JSON.stringify({goals:{maxTurns:e.maxTurns,...e.judgeModelRef.trim()?{judgeModelRef:e.judgeModelRef.trim()}:{judgeModelRef:null},checklistMode:e.checklistMode,maxConsecutiveParseFailures:e.maxConsecutiveParseFailures,judgeTimeoutMs:e.judgeTimeoutSec*1e3,checklistHistoryChars:e.checklistHistoryChars,notifications:{enabled:e.notifications.enabled,includeLinkedSessions:e.notifications.includeLinkedSessions,channels:e.notifications.channels,events:e.notifications.events,targets:t}}})}),C()}var F=r();function I(){return i(`w-full rounded-lg border border-edge bg-surface-panel px-3 py-2 text-sm text-fg`,m,`dark:border-edge`)}var L=[`done`,`blocked`,`needs_input`,`queue_failed`,`queue_retry`,`queue_succeeded`,`queue_skipped`],R=[`judge`,`notifications`],z={judge:b,notifications:v};function B(e){return e&&R.includes(e)?e:`judge`}function V(e,t){return t===`judge`?e.tabJudge:e.tabNotifications}function H(e,t){return t===`judge`?e.tabJudgeHint:e.tabNotificationsHint}var U=[{id:`telegram`,label:`Telegram`},{id:`weixin`,label:`Weixin`},{id:`feishu`,label:`Feishu`}],W=`__custom__`;function G(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function K(e,t){let n=G(e)?e:{},r=G(n.channels)?n.channels:{},i=G(r[t])?r[t]:{},a=G(i.config)?i.config:i,o=G(a.accounts)?a.accounts:null;if(!o)return[`default`];let s=Object.entries(o).filter(([,e])=>!G(e)||e.enabled!==!1).map(([e])=>e).filter(Boolean).sort();return s.length?s:[`default`]}function q(e,t){let n=e.split(`:`),r=n.indexOf(t);return r<0?null:n[r+1]||null}function J(e,t){let n=e.split(`:`),r=n.indexOf(t);return r<0?null:n[r+2+1]||null}async function Y(e,t){let n=new URLSearchParams({account:t||`default`});return(await l(c(`/api/channels/${encodeURIComponent(e)}/pairing?${n.toString()}`))).payload??{}}function X(e){let t=(0,A.c)(81),{target:n,index:r,config:i,channelOptions:a,labels:o,inputClass:s,onChange:c,onRemove:l}=e,d=n.channel||a[0]?.id||`telegram`,f;t[0]!==d||t[1]!==i?(f=K(i,d),t[0]=d,t[1]=i,t[2]=f):f=t[2];let m=f,h=n.accountId||m[0]||`default`,g;t[3]===d?g=t[4]:(g=d?[`goal-notification-sessions`,d]:null,t[3]=d,t[4]=g);let v;t[5]===d?v=t[6]:(v=()=>x({channel:d,limit:200}),t[5]=d,t[6]=v);let y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y={revalidateOnFocus:!1},t[7]=y):y=t[7];let{data:b}=u(g,v,y),S;t[8]!==h||t[9]!==d?(S=d&&h?[`goal-notification-pairing`,d,h]:null,t[8]=h,t[9]=d,t[10]=S):S=t[10];let C;t[11]!==h||t[12]!==d?(C=()=>Y(d,h),t[11]=h,t[12]=d,t[13]=C):C=t[13];let w;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(w={revalidateOnFocus:!1},t[14]=w):w=t[14];let{data:T}=u(S,C,w),E;if(t[15]!==h||t[16]!==d||t[17]!==o.notificationsPaired||t[18]!==T?.paired?.fromConfig||t[19]!==T?.paired?.fromCredentials||t[20]!==b?.items){let e=new Map;for(let t of b?.items??[]){let n=q(t.key,d);if(n&&h&&n!==h)continue;let r=t.sourceChatId||J(t.key,d);r&&e.set(r,t.name?.trim()?`${t.name} (${r})`:r)}for(let t of T?.paired?.fromConfig??[])t&&e.set(t,e.get(t)??`${t} (${o.notificationsPaired})`);for(let t of T?.paired?.fromCredentials??[])t&&e.set(t,e.get(t)??`${t} (${o.notificationsPaired})`);E=[...e.entries()].map(te),t[15]=h,t[16]=d,t[17]=o.notificationsPaired,t[18]=T?.paired?.fromConfig,t[19]=T?.paired?.fromCredentials,t[20]=b?.items,t[21]=E}else E=t[21];let D=E,O;t[22]!==D||t[23]!==n.chatId?(O=n.chatId&&D.some(e=>e.id===n.chatId),t[22]=D,t[23]=n.chatId,t[24]=O):O=t[24];let k=O,j=D.length===0||n.chatId===W||n.chatId&&!k,M;t[25]!==i||t[26]!==r||t[27]!==c||t[28]!==n?(M=e=>{let t=e.target.value,a=K(i,t);c(r,{...n,channel:t,accountId:a[0]||`default`,chatId:``})},t[25]=i,t[26]=r,t[27]=c,t[28]=n,t[29]=M):M=t[29];let N;t[30]===a?N=t[31]:(N=a.map(ee),t[30]=a,t[31]=N);let P;t[32]!==d||t[33]!==s||t[34]!==M||t[35]!==N?(P=(0,F.jsx)(`select`,{className:s,value:d,onChange:M,children:N}),t[32]=d,t[33]=s,t[34]=M,t[35]=N,t[36]=P):P=t[36];let I;t[37]!==r||t[38]!==c||t[39]!==n?(I=e=>c(r,{...n,accountId:e.target.value,chatId:``}),t[37]=r,t[38]=c,t[39]=n,t[40]=I):I=t[40];let L;t[41]===m?L=t[42]:(L=m.map(Q),t[41]=m,t[42]=L);let R;t[43]!==h||t[44]!==s||t[45]!==I||t[46]!==L?(R=(0,F.jsx)(`select`,{className:s,value:h,onChange:I,children:L}),t[43]=h,t[44]=s,t[45]=I,t[46]=L,t[47]=R):R=t[47];let z;t[48]!==D||t[49]!==r||t[50]!==s||t[51]!==o.notificationsChatId||t[52]!==o.notificationsChooseChat||t[53]!==o.notificationsCustomChat||t[54]!==c||t[55]!==n||t[56]!==j?(z=j?(0,F.jsx)(`input`,{className:s,value:n.chatId===W?``:n.chatId,placeholder:o.notificationsChatId,onChange:e=>c(r,{...n,chatId:e.target.value})}):(0,F.jsxs)(`select`,{className:s,value:n.chatId||D[0]?.id||``,onChange:e=>c(r,{...n,chatId:e.target.value===W?W:e.target.value}),children:[n.chatId?null:(0,F.jsx)(`option`,{value:``,children:o.notificationsChooseChat}),D.map(Z),(0,F.jsx)(`option`,{value:W,children:o.notificationsCustomChat})]}),t[48]=D,t[49]=r,t[50]=s,t[51]=o.notificationsChatId,t[52]=o.notificationsChooseChat,t[53]=o.notificationsCustomChat,t[54]=c,t[55]=n,t[56]=j,t[57]=z):z=t[57];let B;t[58]!==r||t[59]!==l?(B=()=>l(r),t[58]=r,t[59]=l,t[60]=B):B=t[60];let V;t[61]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,F.jsx)(p,{className:`size-4`,"aria-hidden":!0}),t[61]=V):V=t[61];let H;t[62]!==o.notificationsRemoveTarget||t[63]!==B?(H=(0,F.jsx)(_,{type:`button`,variant:`ghost`,className:`size-9 p-0 text-destructive hover:text-destructive`,title:o.notificationsRemoveTarget,onClick:B,children:V}),t[62]=o.notificationsRemoveTarget,t[63]=B,t[64]=H):H=t[64];let U;t[65]!==P||t[66]!==R||t[67]!==z||t[68]!==H?(U=(0,F.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[10rem_10rem_minmax(0,1fr)_2rem]`,children:[P,R,z,H]}),t[65]=P,t[66]=R,t[67]=z,t[68]=H,t[69]=U):U=t[69];let G;t[70]!==D[0]?.id||t[71]!==D.length||t[72]!==r||t[73]!==o.notificationsUseKnownChat||t[74]!==c||t[75]!==n||t[76]!==j?(G=D.length>0&&j?(0,F.jsx)(`button`,{type:`button`,className:`w-fit text-xs text-accent hover:underline`,onClick:()=>c(r,{...n,chatId:D[0]?.id??``}),children:o.notificationsUseKnownChat}):null,t[70]=D[0]?.id,t[71]=D.length,t[72]=r,t[73]=o.notificationsUseKnownChat,t[74]=c,t[75]=n,t[76]=j,t[77]=G):G=t[77];let X;return t[78]!==U||t[79]!==G?(X=(0,F.jsxs)(`div`,{className:`grid gap-2 rounded-md border border-edge/70 bg-surface-panel p-2`,children:[U,G]}),t[78]=U,t[79]=G,t[80]=X):X=t[80],X}function Z(e){return(0,F.jsx)(`option`,{value:e.id,children:e.label},e.id)}function Q(e){return(0,F.jsx)(`option`,{value:e,children:e},e)}function ee(e){return(0,F.jsxs)(`option`,{value:e.id,children:[e.label,` (`,e.id,`)`]},e.id)}function te(e){let[t,n]=e;return{id:t,label:n}}function ne(e){let t=(0,A.c)(11),{t:n,activeTab:r,onChange:a}=e,o=n.tabsAriaLabel,s;t[0]!==r||t[1]!==a?(s=e=>{e.key!==`ArrowLeft`&&e.key!==`ArrowRight`||(e.preventDefault(),a(R[(R.indexOf(r)+(e.key===`ArrowRight`?1:-1)+R.length)%R.length]))},t[0]=r,t[1]=a,t[2]=s):s=t[2];let c;t[3]!==r||t[4]!==a||t[5]!==n?(c=R.map(e=>{let t=z[e],o=e===r;return(0,F.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":o,id:`goals-settings-tab-${e}`,"aria-controls":`goals-settings-panel-${e}`,className:i(`inline-flex shrink-0 items-center gap-1.5 rounded-lg px-3 py-2 text-sm font-medium transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent`,S.press,o?`bg-accent-soft text-accent-fg`:`text-fg-muted hover:bg-surface-hover hover:text-fg`),onClick:()=>a(e),children:[(0,F.jsx)(t,{className:`size-3.5 shrink-0`,strokeWidth:1.75,"aria-hidden":!0}),(0,F.jsx)(`span`,{children:V(n,e)})]},e)}),t[3]=r,t[4]=a,t[5]=n,t[6]=c):c=t[6];let l;return t[7]!==n.tabsAriaLabel||t[8]!==s||t[9]!==c?(l=(0,F.jsx)(`nav`,{"aria-label":o,className:`-mx-1 flex gap-1 overflow-x-auto px-1 pb-1`,role:`tablist`,onKeyDown:s,children:c}),t[7]=n.tabsAriaLabel,t[8]=s,t[9]=c,t[10]=l):l=t[10],l}function $(e){let t=(0,A.c)(20),{t:n,id:r,activeTab:i,children:a}=e;if(i!==r)return null;let o=`goals-settings-panel-${r}`,s=`goals-settings-tab-${r}`,c;t[0]!==r||t[1]!==n?(c=V(n,r),t[0]=r,t[1]=n,t[2]=c):c=t[2];let l;t[3]===c?l=t[4]:(l=(0,F.jsx)(`div`,{className:`text-sm font-semibold text-fg`,children:c}),t[3]=c,t[4]=l);let u;t[5]!==r||t[6]!==n?(u=H(n,r),t[5]=r,t[6]=n,t[7]=u):u=t[7];let d;t[8]===u?d=t[9]:(d=(0,F.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:u}),t[8]=u,t[9]=d);let f;t[10]!==l||t[11]!==d?(f=(0,F.jsxs)(`div`,{className:`mb-5`,children:[l,d]}),t[10]=l,t[11]=d,t[12]=f):f=t[12];let p;t[13]===a?p=t[14]:(p=(0,F.jsx)(`div`,{className:`space-y-4`,children:a}),t[13]=a,t[14]=p);let m;return t[15]!==o||t[16]!==s||t[17]!==f||t[18]!==p?(m=(0,F.jsxs)(`section`,{id:o,role:`tabpanel`,"aria-labelledby":s,className:`rounded-2xl border border-edge bg-surface-base px-4 py-5 sm:px-5`,children:[f,p]}),t[15]=o,t[16]=s,t[17]=f,t[18]=p,t[19]=m):m=t[19],m}function re(e,t){switch(t.type){case`reset`:return{form:null,baseline:null};case`sync`:{let e=structuredClone(t.value);return{form:e,baseline:structuredClone(e)}}case`patch`:return{...e,form:e.form?{...e.form,...t.patch}:null};case`discard`:return e.baseline?{form:structuredClone(e.baseline),baseline:e.baseline}:e;case`saved`:{let e=structuredClone(t.value);return{form:e,baseline:structuredClone(e)}}}}function ie({hasToken:e}){let t=o(e=>e.language),n=a(t).goalsSettings,r=a(t).chat,[s,c]=d(),l=B(s.get(`tab`)),u=(0,k.useCallback)(e=>{c(t=>{let n=new URLSearchParams(t);return e===`judge`?n.delete(`tab`):n.set(`tab`,e),n},{replace:!0})},[c]),{data:p,isLoading:m}=g(e),{entries:v}=E(e,t),x=(0,k.useMemo)(()=>p?.payload?.config===void 0?null:N(p.payload.config),[p]),[S,C]=(0,k.useReducer)(re,{form:null,baseline:null}),O=S.form,A=S.baseline,[j,M]=(0,k.useState)(!1),[R,z]=(0,k.useState)(null),V=(0,k.useRef)(!1),H=(0,k.useRef)(null);e?x!==null&&!V.current&&H.current!==x&&(H.current=x,C({type:`sync`,value:x})):H.current!==null&&(H.current=null,C({type:`reset`}),V.current=!1);let W=!!(O&&A&&JSON.stringify(O)!==JSON.stringify(A)),G=(0,k.useCallback)(e=>{V.current=!0,C({type:`patch`,patch:e})},[]),q=(0,k.useCallback)(()=>{C({type:`discard`}),V.current=!1,z(null)},[]);D({id:`goals`,dirty:W,saving:j,save:(0,k.useCallback)(async()=>{if(!(!O||j)){M(!0),z(null);try{await P(O),V.current=!1,C({type:`saved`,value:O})}catch(e){let t=e instanceof Error?e.message:n.saveError;throw z(t),Error(t)}finally{M(!1)}}},[O,j,n.saveError]),discard:q});let J=(0,k.useCallback)(e=>{O&&G({notifications:{...O.notifications,...e}})},[O,G]),Y=(0,k.useMemo)(()=>{let e=new Map;for(let t of v)e.set(t.id,{id:t.id,label:t.label||t.id,configured:t.configured,enabled:t.enabled});for(let t of U)e.has(t.id)||e.set(t.id,t);for(let t of O?.notifications.channels??[])e.has(t)||e.set(t,{id:t,label:t});return[...e.values()].sort((e,t)=>{let n=e.enabled?0:e.configured?1:2,r=t.enabled?0:t.configured?1:2;return n===r?e.label.localeCompare(t.label):n-r})},[v,O?.notifications.channels]);return!e||!O?m?(0,F.jsx)(T,{children:(0,F.jsx)(y,{className:`size-4 animate-spin text-fg-muted`})}):null:(0,F.jsxs)(T,{children:[(0,F.jsx)(w,{icon:b,title:n.title,subtitle:n.hint}),R?(0,F.jsx)(`p`,{className:`mb-3 text-sm text-red-600 dark:text-red-400`,children:R}):null,(0,F.jsx)(ne,{t:n,activeTab:l,onChange:u}),(0,F.jsx)($,{t:n,id:`judge`,activeTab:l,children:(0,F.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.maxTurns}),(0,F.jsx)(`input`,{type:`number`,min:1,max:500,className:I(),value:O.maxTurns,onChange:e=>G({maxTurns:Number(e.target.value)||20})})]}),(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.judgeModelRef}),(0,F.jsx)(h,{value:O.judgeModelRef,placeholder:n.judgeModelRefPlaceholder,searchPlaceholder:r.modelSearchPlaceholder,noMatches:r.modelNoMatches,className:`w-full max-w-none min-w-0`,onChange:e=>G({judgeModelRef:e})}),O.judgeModelRef.trim()?(0,F.jsx)(`button`,{type:`button`,className:`mt-1 text-xs text-accent hover:underline`,onClick:()=>G({judgeModelRef:``}),children:n.judgeModelRefUseDefault}):(0,F.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:n.judgeModelRefHint})]}),(0,F.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg sm:col-span-2`,children:[(0,F.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:O.checklistMode,onChange:e=>G({checklistMode:e.target.checked})}),n.checklistMode]}),(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.parseFailures}),(0,F.jsx)(`input`,{type:`number`,min:1,max:20,className:I(),value:O.maxConsecutiveParseFailures,onChange:e=>G({maxConsecutiveParseFailures:Number(e.target.value)||3})})]}),(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.judgeTimeoutSec}),(0,F.jsx)(`input`,{type:`number`,min:5,max:120,className:I(),value:O.judgeTimeoutSec,onChange:e=>G({judgeTimeoutSec:Number(e.target.value)||60})})]}),(0,F.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.checklistHistoryChars}),(0,F.jsx)(`input`,{type:`number`,min:0,max:1e5,className:I(),value:O.checklistHistoryChars,onChange:e=>G({checklistHistoryChars:Math.max(0,Math.min(1e5,Math.floor(Number(e.target.value)||0)))})}),(0,F.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:n.checklistHistoryCharsHint})]})]})}),(0,F.jsx)($,{t:n,id:`notifications`,activeTab:l,children:(0,F.jsxs)(`div`,{className:`grid gap-3`,children:[(0,F.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[(0,F.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:O.notifications.enabled,onChange:e=>J({enabled:e.target.checked})}),n.notificationsEnabled]}),(0,F.jsxs)(`label`,{className:`flex items-center gap-2 text-sm text-fg`,children:[(0,F.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:O.notifications.includeLinkedSessions,onChange:e=>J({includeLinkedSessions:e.target.checked})}),n.notificationsLinkedSessions]}),(0,F.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-2`,children:[(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.notificationsChannels}),(0,F.jsx)(`div`,{className:`rounded-lg border border-edge bg-surface-panel p-2`,children:(0,F.jsx)(`div`,{className:`grid max-h-40 gap-1 overflow-y-auto pr-1`,children:Y.map(e=>(0,F.jsxs)(`label`,{className:`flex min-w-0 items-center gap-2 rounded-md px-2 py-1.5 text-sm text-fg hover:bg-surface-hover`,children:[(0,F.jsx)(`input`,{type:`checkbox`,className:`ui-checkbox`,checked:O.notifications.channels.includes(e.id),onChange:t=>{J({channels:t.target.checked?[...O.notifications.channels,e.id]:O.notifications.channels.filter(t=>t!==e.id)})}}),(0,F.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label}),(0,F.jsx)(`span`,{className:`shrink-0 text-xs text-fg-muted`,children:e.id}),e.enabled?(0,F.jsx)(`span`,{className:`shrink-0 rounded-full border border-accent/40 bg-accent-soft px-1.5 py-0.5 text-[11px] text-accent-fg`,children:n.notificationsChannelEnabled}):e.configured?(0,F.jsx)(`span`,{className:`shrink-0 rounded-full border border-edge px-1.5 py-0.5 text-[11px] text-fg-muted`,children:n.notificationsChannelConfigured}):null]},e.id))})})]}),(0,F.jsxs)(`div`,{children:[(0,F.jsx)(`label`,{className:`mb-1 block text-sm font-medium text-fg`,children:n.notificationsEvents}),(0,F.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:L.map(e=>{let t=O.notifications.events.includes(e);return(0,F.jsx)(`button`,{type:`button`,className:i(`rounded-md border px-2 py-1 text-xs`,t?`border-accent bg-accent-soft text-accent-fg`:`border-edge bg-surface-panel text-fg-muted hover:bg-surface-hover`),onClick:()=>{J({events:t?O.notifications.events.filter(t=>t!==e):[...O.notifications.events,e]})},children:e},e)})})]})]}),(0,F.jsxs)(`div`,{className:`grid gap-2`,children:[(0,F.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,F.jsx)(`div`,{className:`text-sm font-medium text-fg`,children:n.notificationsTargets}),(0,F.jsxs)(_,{type:`button`,variant:`secondary`,className:`h-8 gap-1.5 px-2.5 text-xs`,onClick:()=>J({targets:[...O.notifications.targets,{channel:Y[0]?.id??`telegram`,accountId:K(p?.payload?.config,Y[0]?.id??`telegram`)[0]??`default`,chatId:``}]}),children:[(0,F.jsx)(f,{className:`size-3.5`,"aria-hidden":!0}),n.notificationsAddTarget]})]}),O.notifications.targets.length?(0,F.jsx)(`div`,{className:`grid gap-2`,children:O.notifications.targets.map((e,t)=>(0,F.jsx)(X,{target:e,index:t,config:p?.payload?.config,channelOptions:Y,labels:n,inputClass:I(),onChange:(e,t)=>{let n=[...O.notifications.targets];n[e]=t,J({targets:n})},onRemove:e=>J({targets:O.notifications.targets.filter((t,n)=>n!==e)})},t))}):(0,F.jsx)(`p`,{className:`text-xs text-fg-muted`,children:n.notificationsNoTargets})]})]})})]})}function ae(){let e=(0,A.c)(15),t=o(se),n;e[0]===t?n=e[1]:(n=a(t),e[0]=t,e[1]=n);let r=n.goalsSettingsPage,i=!!s(oe),c;e[2]===r.title?c=e[3]:(c=(0,F.jsx)(`h1`,{className:`text-xl font-semibold tracking-tight text-fg`,children:r.title}),e[2]=r.title,e[3]=c);let l;e[4]===r.subtitle?l=e[5]:(l=(0,F.jsx)(`p`,{className:`max-w-2xl text-sm text-fg-muted`,children:r.subtitle}),e[4]=r.subtitle,e[5]=l);let u;e[6]!==c||e[7]!==l?(u=(0,F.jsxs)(`header`,{className:`flex flex-col gap-2`,children:[c,l]}),e[6]=c,e[7]=l,e[8]=u):u=e[8];let d;e[9]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,F.jsx)(O,{}),e[9]=d):d=e[9];let f;e[10]===i?f=e[11]:(f=(0,F.jsx)(ie,{hasToken:i}),e[10]=i,e[11]=f);let p;return e[12]!==u||e[13]!==f?(p=(0,F.jsxs)(`div`,{className:`mx-auto flex w-full max-w-app-main flex-col gap-6 px-4 py-6 sm:px-8`,children:[u,d,f]}),e[12]=u,e[13]=f,e[14]=p):p=e[14],p}function oe(e){return e.token}function se(e){return e.language}export{ae as GoalsSettingsPanel};
|