commandmate 0.39.1 → 0.40.0
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/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +250 -243
- package/.next/app-path-routes-manifest.json +31 -30
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +15 -15
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +8 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update-check/route.js +1 -1
- package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/capabilities/route.js +1 -1
- package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/route.js +1 -1
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -0
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/more/page_client-reference-manifest.js +1 -1
- package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
- package/.next/server/app/review/page.js +1 -1
- package/.next/server/app/review/page_client-reference-manifest.js +1 -1
- package/.next/server/app/sessions/page.js +1 -1
- package/.next/server/app/sessions/page.js.nft.json +1 -1
- package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/page.js +10 -10
- package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +31 -30
- package/.next/server/chunks/2119.js +1 -1
- package/.next/server/chunks/2445.js +1 -1
- package/.next/server/chunks/252.js +1 -0
- package/.next/server/chunks/2816.js +1 -1
- package/.next/server/chunks/3241.js +1 -1
- package/.next/server/chunks/3323.js +1 -1
- package/.next/server/chunks/4443.js +1 -1
- package/.next/server/chunks/5164.js +1 -1
- package/.next/server/chunks/6130.js +1 -1
- package/.next/server/chunks/650.js +1 -1
- package/.next/server/chunks/6661.js +1 -1
- package/.next/server/chunks/6793.js +1 -1
- package/.next/server/chunks/7685.js +1 -1
- package/.next/server/chunks/7905.js +1 -1
- package/.next/server/chunks/8581.js +29 -29
- package/.next/server/chunks/8673.js +14 -0
- package/.next/server/chunks/8728.js +4 -3
- package/.next/server/chunks/8800.js +1 -1
- package/.next/server/chunks/9080.js +1 -1
- package/.next/server/chunks/9731.js +2 -2
- package/.next/server/chunks/9882.js +3 -3
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{1642-fb2e176aaadbd137.js → 1642-767aed8e7c61ef7f.js} +1 -1
- package/.next/static/chunks/{2407-9ac8b6188ddbb119.js → 2407-e259744922e0834c.js} +1 -1
- package/.next/static/chunks/{2619-04bc32f026a0d946.js → 2619-a305ad4810f1393a.js} +1 -1
- package/.next/static/chunks/4768-979c8a03bed218e7.js +1 -0
- package/.next/static/chunks/7705-25076b57224da370.js +1 -0
- package/.next/static/chunks/{8165-d3b7c8a7aa776bc7.js → 8165-8944f74c53f3021f.js} +1 -1
- package/.next/static/chunks/8606-9a381b996f9b6834.js +1 -0
- package/.next/static/chunks/9619-22adf5367c4b7080.js +1 -0
- package/.next/static/chunks/app/api/agents/update/{route-70779af8b4c8259a.js → route-0468c3c4baa46028.js} +1 -1
- package/.next/static/chunks/app/api/agents/versions/{route-70779af8b4c8259a.js → route-0468c3c4baa46028.js} +1 -1
- package/.next/static/chunks/app/api/app/release-notes/{route-70779af8b4c8259a.js → route-0468c3c4baa46028.js} +1 -1
- package/.next/static/chunks/app/api/app/update/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/app/update-check/{route-70779af8b4c8259a.js → route-0468c3c4baa46028.js} +1 -1
- package/.next/static/chunks/app/api/auth/login/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/capabilities/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/status/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/external-apps/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/fs/browse/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/fs/recent-paths/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/hooks/agent-event/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/hooks/claude-done/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/hooks/permission-request/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/metrics/vibe/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/ollama/models/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/push/escalation/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/push/subscriptions/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/push/vapid/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/relays/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/remote/pair/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/excluded/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/restore/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/scan/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/sync/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/repositories/validate-path/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/settings/default-agents/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/settings/default-surface-mode/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/sidebar/group-order/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/skills/[id]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/skills/installations/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/skills/operations/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/skills/reindex/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/skills/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/slash-commands/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/tasks/[taskId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/templates/[id]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/templates/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/verification/runs/[runId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/verification/runs/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/direct-input/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/env/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/layout-b90cce6a51c91f4c.js +1 -0
- package/.next/static/chunks/app/manifest.webmanifest/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/proxy/[...path]/route-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/review/page-30616daa1dc595c2.js +1 -0
- package/.next/static/chunks/app/sessions/page-1a8ba152bbcb9efb.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/layout-0468c3c4baa46028.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-e9ebdcd317b62e4a.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/terminal/{page-373ea37b16d930c7.js → page-c601f3b3ece6557e.js} +1 -1
- package/.next/static/css/974314e796232f53.css +1 -0
- package/.next/trace +13 -13
- package/.next/types/app/api/worktrees/[id]/direct-input/route.ts +347 -0
- package/.next/types/routes.d.ts +2 -1
- package/.next/types/validator.ts +9 -0
- package/dist/cli/commands/ls.d.ts.map +1 -1
- package/dist/cli/commands/ls.js +9 -0
- package/dist/cli/commands/peers.d.ts.map +1 -1
- package/dist/cli/commands/peers.js +4 -0
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +20 -6
- package/dist/cli/config/model-validation.d.ts +22 -0
- package/dist/cli/config/model-validation.d.ts.map +1 -1
- package/dist/cli/config/model-validation.js +35 -1
- package/dist/cli/types/api-responses.d.ts +11 -0
- package/dist/cli/types/api-responses.d.ts.map +1 -1
- package/dist/lib/detection/status-reason.d.ts +13 -0
- package/dist/lib/detection/status-reason.d.ts.map +1 -1
- package/dist/lib/detection/status-reason.js +13 -0
- package/dist/lib/detection/tools/verified-against.d.ts +74 -5
- package/dist/lib/detection/tools/verified-against.d.ts.map +1 -1
- package/dist/lib/detection/tools/verified-against.js +74 -5
- package/dist/server/locales/en/worktree.json +58 -0
- package/dist/server/locales/ja/worktree.json +58 -0
- package/dist/server/src/config/claude-constants.js +27 -0
- package/dist/server/src/lib/cli-tools/base.js +2 -1
- package/dist/server/src/lib/cli-tools/claude.js +5 -1
- package/dist/server/src/lib/cli-tools/command-code.js +5 -1
- package/dist/server/src/lib/cli-tools/direct-input.js +22 -0
- package/dist/server/src/lib/cmate-cli-tool-parser.js +31 -0
- package/dist/server/src/lib/detection/cli-patterns.js +44 -5
- package/dist/server/src/lib/detection/selection-shape.js +274 -19
- package/dist/server/src/lib/detection/status-detector.js +2 -0
- package/dist/server/src/lib/detection/status-reason.js +13 -0
- package/dist/server/src/lib/detection/tools/codex/cli-patterns.js +67 -27
- package/dist/server/src/lib/detection/tools/codex/detect.js +18 -3
- package/dist/server/src/lib/detection/tools/command-code/detect.js +46 -0
- package/dist/server/src/lib/detection/tools/command-code/dialog.js +116 -25
- package/dist/server/src/lib/detection/tools/verified-against.js +74 -5
- package/dist/server/src/lib/detection/tui-detection-frame.js +18 -3
- package/dist/server/src/lib/polling/auto-yes-resolver.js +8 -0
- package/dist/server/src/lib/prompt-answer-sender.js +255 -1
- package/dist/server/src/lib/realtime-snippet.js +53 -0
- package/dist/server/src/lib/session/claude-session.js +19 -2
- package/dist/server/src/lib/session/current-output-builder.js +4 -1
- package/dist/server/src/lib/session/status-mapping.js +58 -8
- package/dist/server/src/lib/tmux/key-sequence.js +27 -1
- package/dist/server/src/lib/tmux/tmux-control-client.js +26 -3
- package/dist/server/src/lib/tmux/tmux.js +64 -3
- package/dist/server/src/types/direct-input.js +113 -0
- package/dist/server/src/types/sidebar.js +67 -7
- package/dist/server/src/types/terminal-keys.js +33 -1
- package/dist/types/terminal-keys.d.ts +28 -1
- package/dist/types/terminal-keys.d.ts.map +1 -1
- package/dist/types/terminal-keys.js +33 -1
- package/package.json +1 -1
- package/release-notes/0.40.0.json +69 -0
- package/.next/server/chunks/6092.js +0 -14
- package/.next/static/chunks/4768-0ad5eb716bed5de9.js +0 -1
- package/.next/static/chunks/8606-e893c1dab6fb81bc.js +0 -1
- package/.next/static/chunks/9619-7bc0e9524f0773b5.js +0 -1
- package/.next/static/chunks/982-edf98d9d54c5ce9b.js +0 -1
- package/.next/static/chunks/app/api/app/update/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/capabilities/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/status/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/external-apps/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/fs/browse/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/fs/recent-paths/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/hooks/agent-event/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/hooks/claude-done/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/hooks/permission-request/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/metrics/vibe/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/ollama/models/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/push/escalation/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/push/subscriptions/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/push/vapid/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/relays/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/remote/pair/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/excluded/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/restore/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/scan/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/sync/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/repositories/validate-path/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/settings/default-agents/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/settings/default-surface-mode/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/sidebar/group-order/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/skills/[id]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/skills/installations/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/skills/operations/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/skills/reindex/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/skills/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/slash-commands/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/tasks/[taskId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/templates/[id]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/templates/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/verification/runs/[runId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/verification/runs/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/env/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/layout-542d075e9d7cc541.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/proxy/[...path]/route-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/review/page-8ed49e2edcc7667b.js +0 -1
- package/.next/static/chunks/app/sessions/page-56f6a2466dd0479d.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/layout-70779af8b4c8259a.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-760408096ad697b4.js +0 -1
- package/.next/static/css/b4aaf81d10efdd00.css +0 -1
- /package/.next/static/{7Ge9-hsqlip_Z6bhEnVkd → o3mZdwNhCks6IlcAOPinc}/_buildManifest.js +0 -0
- /package/.next/static/{7Ge9-hsqlip_Z6bhEnVkd → o3mZdwNhCks6IlcAOPinc}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8165],{17683:(e,t,a)=>{a.d(t,{$2:()=>i,B1:()=>p,If:()=>c,NP:()=>o,TR:()=>u,wp:()=>l});var n=a(75676);let s="commandmate.worktree.surfaceMode-",r="commandmate.settings.defaultSurfaceMode",l="/api/settings/default-surface-mode";function i(e,t){return"".concat(s).concat(e,"-split-").concat(t)}function o(e){return"".concat(s).concat(e,"-mobile")}function d(e){try{let t=window.localStorage.getItem(e);return(0,n.jg)(t)?t:null}catch(e){return null}}function c(e,t){try{window.localStorage.setItem(e,t)}catch(e){}}function u(e,t){var a;let s=void 0===t?function(){try{var e=window.location.search;if(!e)return null;try{let t=new URLSearchParams(e).get("view");return(0,n.jg)(t)?t:null}catch(e){return null}}catch(e){return null}}():t;return s?(c(e,s),s):(b||(b=!0,v()),null!=(a=d(e))?a:x())}let f=n.wf,m=new Set;function x(){var e;return null!=(e=d(r))?e:f}function p(e){if(!(0,n.jg)(e))return!1;let t=x()!==e;if(f=e,c(r,e),t)for(let e of m)e();return t}let g=null,h=!1,b=!1;async function v(){return h?x():g||("function"!=typeof fetch?x():g=(async()=>{try{let e=await fetch(l);if(e.ok){let t=await e.json();p(null==t?void 0:t.defaultSurfaceMode),h=!0}}catch(e){}finally{g=null}return x()})())}},24373:(e,t,a)=>{a.d(t,{Lv:()=>r});var n=a(12115),s=a(66966);function r(){let e=(0,s.rC)(),t=null==e?void 0:e.worktrees;return(0,n.useMemo)(()=>{let e=t?t.filter(e=>!0===e.isWaitingForResponse):[];return{count:e.length,worktrees:e}},[t])}a(44308)},40823:(e,t,a)=>{a.d(t,{NS:()=>i,V0:()=>o});var n=a(95155),s=a(12115);let r=()=>{},l=(0,s.createContext)({isOpen:!1,open:r,close:r});function i(e){let{children:t}=e,[a,r]=(0,s.useState)(!1),i=(0,s.useCallback)(()=>r(!0),[]),o=(0,s.useCallback)(()=>r(!1),[]),d=(0,s.useMemo)(()=>({isOpen:a,open:i,close:o}),[a,i,o]);return(0,n.jsx)(l.Provider,{value:d,children:t})}function o(){return(0,s.useContext)(l)}},44308:(e,t,a)=>{a.d(t,{$h:()=>u,DR:()=>s,IH:()=>d,Iu:()=>n,Nb:()=>f,SD:()=>r,_d:()=>o,bm:()=>m,ks:()=>i,t7:()=>c,z7:()=>l});let n=7e3,s=["in_review","approval","stalled"],r="in_review",l="filter",i="/review?".concat(l,"=approval");function o(e){return e&&s.includes(e)?e:null}let d=["claude","codex","copilot","antigravity","opencode"],c=1e3,u=5,f=100,m=1e3},58165:(e,t,a)=>{a.d(t,{uN:()=>k,gZ:()=>ea,O3:()=>G});var n=a(95155),s=a(12115),r=a(18955),l=a(5917),i=a(20562),o=a(8803),d=a(65229),c=a(6191),u=a(48407),f=a(54014),m=a(55449);function x(e){return!!e&&"object"==typeof e&&Array.isArray(e.defaultSelectedAgents)&&e.defaultSelectedAgents.length>0&&Array.isArray(e.available)&&e.available.length>0&&"number"==typeof e.minAgents&&"number"==typeof e.maxAgents}function p(){var e;let t=(0,r.c)("common"),[a,p]=(0,s.useState)(null),[g,h]=(0,s.useState)([]),[b,v]=(0,s.useState)(!0),[j,y]=(0,s.useState)("idle"),[N,w]=(0,s.useState)(null),k=(0,s.useCallback)(async()=>{try{let e=await fetch("".concat(m.zk,"?include=installed"));if(!e.ok)throw Error(String(e.status));let t=await e.json();if(!x(t))throw Error("unexpected body");p(t),h(t.defaultSelectedAgents),(0,m.IK)(t.defaultSelectedAgents)}catch(e){w(t("settings.defaultAgents.loadError"))}finally{v(!1)}},[t]);(0,s.useEffect)(()=>{k()},[k]);let C=(0,s.useCallback)(e=>{h(e),y("idle"),w(null)},[]),S=(0,s.useCallback)((e,t)=>{let a=e+t;if(a<0||a>=g.length)return;let n=[...g];[n[e],n[a]]=[n[a],n[e]],C(n)},[g,C]),A=(0,s.useCallback)(async e=>{y("saving"),w(null);try{let n=await fetch(m.zk,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({agents:e})}),s=await n.json().catch(()=>null);if(!n.ok||!x(s)){var a;y("error"),w(null!=(a=null==s?void 0:s.error)?a:t("settings.defaultAgents.saveError"));return}p(e=>({...s,installed:null==e?void 0:e.installed})),h(s.defaultSelectedAgents),(0,m.IK)(s.defaultSelectedAgents),y("saved")}catch(e){y("error"),w(t("settings.defaultAgents.saveError"))}},[t]);if(b)return(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),t("loadingPage")]})});if(!a)return(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"default-agents-load-error",children:null!=N?N:t("settings.defaultAgents.loadError")})});let E=null!=(e=a.installed)?e:[],P=a.available.filter(e=>!g.includes(e)),T=g.length<a.minAgents,M=g.length>a.maxAgents,I=!T&&!M&&"saving"!==j,O=e=>E.includes(e)?(0,n.jsxs)("span",{className:"inline-flex items-center gap-1 rounded bg-success-subtle px-1.5 py-0.5 text-xs text-success-foreground","data-testid":"default-agents-installed-".concat(e),children:[(0,n.jsx)(l.A,{className:"h-3 w-3","aria-hidden":"true"}),t("settings.defaultAgents.installed")]}):(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:t("settings.defaultAgents.notInstalled")});return(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"space-y-4","data-testid":"default-agents-settings",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:t("settings.defaultAgents.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultAgents.description")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultAgents.appliesToNew")})]}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"default-agents-selected",children:g.map((e,s)=>(0,n.jsxs)("li",{className:"flex items-center gap-2 rounded-md border border-border bg-surface px-3 py-2","data-testid":"default-agents-row-".concat(e),children:[(0,n.jsx)("span",{className:"w-6 text-xs text-muted-foreground",children:s+1}),(0,n.jsx)("span",{className:"text-sm text-foreground",children:(0,f.oo)(e)}),0===s&&(0,n.jsx)("span",{className:"rounded bg-info-subtle px-1.5 py-0.5 text-xs text-info-foreground","data-testid":"default-agents-primary-badge",children:t("settings.defaultAgents.primary")}),(0,n.jsx)("span",{className:"ml-auto",children:O(e)}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>S(s,-1),disabled:0===s,"aria-label":t("settings.defaultAgents.moveUp"),"data-testid":"default-agents-up-".concat(e),children:(0,n.jsx)(i.A,{className:"h-4 w-4","aria-hidden":"true"})}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>S(s,1),disabled:s===g.length-1,"aria-label":t("settings.defaultAgents.moveDown"),"data-testid":"default-agents-down-".concat(e),children:(0,n.jsx)(o.A,{className:"h-4 w-4","aria-hidden":"true"})}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>C(g.filter(t=>t!==e)),disabled:g.length<=a.minAgents,"aria-label":t("settings.defaultAgents.remove"),"data-testid":"default-agents-remove-".concat(e),children:(0,n.jsx)(d.A,{className:"h-4 w-4","aria-hidden":"true"})})]},e))}),P.length>0&&(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"mb-2 text-xs text-muted-foreground",children:t("settings.defaultAgents.addLabel")}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"default-agents-available",children:P.map(e=>(0,n.jsxs)("li",{className:"flex items-center gap-2 rounded-md border border-border px-3 py-2",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:(0,f.oo)(e)}),(0,n.jsx)("span",{className:"ml-auto",children:O(e)}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>C([...g,e]),disabled:g.length>=a.maxAgents,"aria-label":t("settings.defaultAgents.add"),"data-testid":"default-agents-add-".concat(e),children:(0,n.jsx)(c.A,{className:"h-4 w-4","aria-hidden":"true"})})]},e))})]}),(T||M)&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-agents-range-error",children:t("settings.defaultAgents.range",{min:a.minAgents,max:a.maxAgents})}),N&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-agents-error",children:N}),(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.$n,{size:"sm",onClick:()=>void A(g),disabled:!I,"data-testid":"default-agents-save",children:"saving"===j?t("settings.defaultAgents.saving"):t("settings.defaultAgents.save")}),(0,n.jsx)(u.$n,{size:"sm",variant:"ghost",onClick:()=>void A(null),disabled:!a.configured||"saving"===j,"data-testid":"default-agents-reset",children:t("settings.defaultAgents.reset")}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"default-agents-state",children:"saved"===j?t("settings.defaultAgents.saved"):a.configured?t("settings.defaultAgents.configured"):t("settings.defaultAgents.usingBuiltIn")})]}),a.configured&&(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"default-agents-builtin",children:t("settings.defaultAgents.builtIn",{agents:a.constantDefault.map(f.oo).join(", ")})})]})})}var g=a(17683),h=a(75676);function b(e){return!!e&&"object"==typeof e&&(0,h.jg)(e.defaultSurfaceMode)&&(0,h.jg)(e.constantDefault)&&Array.isArray(e.available)&&e.available.length>0&&e.available.every(h.jg)}function v(){var e;let t=(0,r.c)("common"),[a,l]=(0,s.useState)(null),[i,o]=(0,s.useState)(!0),[d,c]=(0,s.useState)("idle"),[f,m]=(0,s.useState)(null),x=(0,s.useCallback)(async()=>{try{let e=await fetch(g.wp);if(!e.ok)throw Error(String(e.status));let t=await e.json();if(!b(t))throw Error("unexpected body");l(t),(0,g.B1)(t.defaultSurfaceMode)}catch(e){m({kind:"load"})}finally{o(!1)}},[]);(0,s.useEffect)(()=>{x()},[x]);let p=(0,s.useCallback)(async e=>{c("saving"),m(null),l(t=>t?{...t,defaultSurfaceMode:e}:t);try{let t=await fetch(g.wp,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})}),a=await t.json().catch(()=>null);if(!t.ok||!b(a)){c("error"),m({kind:"save",detail:null==a?void 0:a.error}),x();return}l(a),(0,g.B1)(a.defaultSurfaceMode),c("saved")}catch(e){c("error"),m({kind:"save"}),x()}},[x]),h=f?null!=(e=f.detail)?e:t("load"===f.kind?"settings.defaultSurfaceMode.loadError":"settings.defaultSurfaceMode.saveError"):null;return i?(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),t("loadingPage")]})}):a?(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"space-y-4","data-testid":"default-surface-mode-settings",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:t("settings.defaultSurfaceMode.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.description")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.appliesToNew")})]}),(0,n.jsx)("div",{role:"radiogroup","aria-label":t("settings.defaultSurfaceMode.title"),className:"space-y-2","data-selected":a.defaultSurfaceMode,children:a.available.map(e=>(0,n.jsxs)("label",{className:"flex cursor-pointer items-start gap-2 rounded-md border border-border bg-surface px-3 py-2","data-testid":"default-surface-mode-option-".concat(e),children:[(0,n.jsx)("input",{type:"radio",name:"default-surface-mode",value:e,className:"mt-0.5",checked:a.defaultSurfaceMode===e,disabled:"saving"===d,onChange:()=>void p(e),"data-testid":"default-surface-mode-radio-".concat(e)}),(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm text-foreground",children:t("settings.defaultSurfaceMode.mode.".concat(e))}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.hint.".concat(e))})]})]},e))}),h&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-surface-mode-error",children:h}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"default-surface-mode-state",children:"saving"===d?t("settings.defaultSurfaceMode.saving"):"saved"===d?t("settings.defaultSurfaceMode.saved"):a.configured?t("settings.defaultSurfaceMode.configured"):t("settings.defaultSurfaceMode.usingBuiltIn")})]})}):(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"default-surface-mode-load-error",children:null!=h?h:t("settings.defaultSurfaceMode.loadError")})})}var j=a(68695),y=a(52056),N=a(48314);function w(e){let t=e.trim();if(!t)return null;try{let e=JSON.parse(t);if(!e||"object"!=typeof e)return null;let a=e.type;if("plan"!==a&&"output"!==a&&"done"!==a)return null;return e}catch(e){return null}}function k(e){var t,a,l;let{worktreeId:i,instances:o,variant:d="card"}=e,c=(0,r.c)("common"),{versions:m,isLoading:x,loadError:p,run:g,isUpdating:h,update:b}=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],[t,a]=(0,s.useState)(null),[n,r]=(0,s.useState)(!1),[l,i]=(0,s.useState)(e),[o,d]=(0,s.useState)(null),[c,u]=(0,s.useState)(!1),f=(0,s.useRef)(!0);(0,s.useEffect)(()=>(f.current=!0,()=>{f.current=!1}),[]);let m=(0,s.useCallback)(async function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e){i(!0);try{let e=await fetch("/api/agents/versions".concat(t?"?refresh=1":""));if(!e.ok)throw Error(String(e.status));let n=await e.json();if(!(n&&"object"==typeof n&&Array.isArray(n.tools)&&Array.isArray(n.updatable)))throw Error("unexpected body");if(!f.current)return;a(n.tools),r(!1)}catch(e){if(!f.current)return;r(!0)}finally{f.current&&i(!1)}}},[e]);(0,s.useEffect)(()=>{m(!1)},[m]);let x=(0,s.useCallback)(async e=>{if(c)return;u(!0),d({tool:e,command:null,output:"",ok:null,previousVersion:null,installed:null,error:null});let t=e=>{f.current&&d(t=>t?{...t,ok:!1,error:e}:t)};try{var a,n;let s=await fetch("/api/agents/update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tool:e})});if(!s.ok||!s.body){let e=await s.json().catch(()=>null);t(null!=(a=null==e?void 0:e.error)?a:"Request failed (".concat(s.status,")"));return}let r=s.body.getReader(),l=new TextDecoder,i="",o=e=>{f.current&&d(t=>{var a;return t?"plan"===e.type?{...t,command:e.command}:"output"===e.type?{...t,output:t.output+e.text}:{...t,ok:e.ok,previousVersion:e.previousVersion,installed:e.installed,error:null!=(a=e.error)?a:null}:t})};for(;;){let{done:e,value:t}=await r.read();if(e)break;let a=(i+=l.decode(t,{stream:!0})).split("\n");for(let e of(i=null!=(n=a.pop())?n:"",a)){let t=w(e);t&&o(t)}}let c=w(i);c&&o(c)}catch(e){t(e instanceof Error?e.message:String(e))}finally{f.current&&u(!1),await m(!0)}},[c,m]);return{versions:t,isLoading:l,loadError:n,run:o,isUpdating:c,reload:m,update:x}}(!0),[v,k]=(0,s.useState)(0),C=function(e,t,a){let[n,r]=(0,s.useState)({});return(0,s.useEffect)(()=>{if(!e||!t||0===t.length)return void r({});let a=!1;return(async()=>{try{let t=await fetch("/api/worktrees/".concat(e));if(!t.ok)return;let n=await t.json();if(a)return;let s=n.sessionStatusByInstance,l={};for(let[e,t]of Object.entries(null!=s?s:{}))(null==t?void 0:t.isRunning)&&(l[e]=!0);r(l)}catch(e){}})(),()=>{a=!0}},[e,t,a]),n}(i,o,v),[S,A]=(0,s.useState)({}),[E,P]=(0,s.useState)(null),T=(0,s.useRef)(null);(0,s.useEffect)(()=>{T.current&&(T.current.scrollTop=T.current.scrollHeight)},[null==g?void 0:g.output]);let M=(null==g?void 0:g.ok)===!0;(0,s.useEffect)(()=>{M&&k(e=>e+1)},[M]);let I=(0,s.useCallback)(e=>(null!=o?o:[]).filter(t=>t.cliTool===e&&C[t.id]),[o,C]),O=(0,s.useCallback)(async e=>{if(i){P(null);try{let t=new URLSearchParams({cliTool:e.cliTool,instance:e.id}),a=await fetch("/api/worktrees/".concat(i,"/kill-session?").concat(t.toString()),{method:"POST"});if(!a.ok&&404!==a.status)throw Error(String(a.status));A(t=>({...t,[e.id]:!0})),k(e=>e+1)}catch(e){P(c("agentUpdates.restartError"))}}},[i,c]),R=x&&!m?(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),c("loadingPage")]}):p&&!m?(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"agent-updates-load-error",children:c("agentUpdates.loadError")}):(0,n.jsxs)("div",{className:"space-y-3","data-testid":"agent-updates",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:c("agentUpdates.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:c("agentUpdates.description")})]}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"agent-updates-rows",children:(null!=m?m:[]).map(e=>{var t,a;let s=I(e.tool),r=e.updatable&&null!==e.installed;return(0,n.jsxs)("li",{className:"rounded-md border border-border bg-surface px-3 py-2","data-testid":"agent-updates-row-".concat(e.tool),children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:(a=e.tool,(0,f.oo)(a)||a)}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-installed-".concat(e.tool),children:e.installed?c("agentUpdates.installed",{version:e.installed}):c("agentUpdates.notInstalled")}),e.updateAvailable&&(0,n.jsx)("span",{className:"rounded bg-info-subtle px-1.5 py-0.5 text-xs text-info-foreground","data-testid":"agent-updates-available-".concat(e.tool),children:c("agentUpdates.available",{version:null!=(t=e.latestVersion)?t:""})}),e.dismissedInCodex&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-dismissed-".concat(e.tool),children:c("agentUpdates.dismissed")}),r&&(0,n.jsxs)(u.$n,{size:"sm",className:"ml-auto",disabled:h,onClick:()=>void b(e.tool),"data-testid":"agent-updates-update-".concat(e.tool),children:[(0,n.jsx)(j.A,{className:"h-4 w-4","aria-hidden":"true"}),h&&(null==g?void 0:g.tool)===e.tool?c("agentUpdates.updating"):c("agentUpdates.update")]})]}),r&&s.length>0&&(0,n.jsxs)("div",{className:"mt-2 flex items-start gap-1 text-xs text-warning-foreground","data-testid":"agent-updates-restart-warning-".concat(e.tool),children:[(0,n.jsx)(y.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":"true"}),(0,n.jsx)("span",{children:c("agentUpdates.restartWarning",{sessions:s.map(e=>e.alias).join(", ")})})]}),r&&0===s.length&&void 0===i&&(0,n.jsx)("p",{className:"mt-2 text-xs text-muted-foreground","data-testid":"agent-updates-restart-notice-".concat(e.tool),children:c("agentUpdates.restartNotice")}),M&&(null==g?void 0:g.tool)===e.tool&&s.map(e=>(0,n.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,n.jsxs)(u.$n,{size:"sm",variant:"ghost",disabled:S[e.id],onClick:()=>void O(e),"data-testid":"agent-updates-restart-".concat(e.id),children:[(0,n.jsx)(N.A,{className:"h-4 w-4","aria-hidden":"true"}),c("agentUpdates.restart",{alias:e.alias})]}),S[e.id]&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:c("agentUpdates.restarted")})]},e.id))]},e.tool)})}),g&&(0,n.jsxs)("div",{className:"space-y-2","data-testid":"agent-updates-run",children:[g.command&&(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-command",children:c("agentUpdates.running",{command:g.command})}),g.output&&(0,n.jsx)("pre",{ref:T,"data-testid":"agent-updates-output",className:"max-h-48 overflow-auto whitespace-pre-wrap rounded-md bg-terminal-surface p-2 text-xs text-terminal-foreground",children:g.output}),!0===g.ok&&(0,n.jsx)("div",{className:"text-xs text-success-foreground","data-testid":"agent-updates-success",children:c("agentUpdates.succeeded",{from:null!=(t=g.previousVersion)?t:"?",to:null!=(a=g.installed)?a:"?"})}),!1===g.ok&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"agent-updates-failure",children:c("agentUpdates.failed",{error:null!=(l=g.error)?l:""})})]}),E&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"agent-updates-restart-error",children:E})]});return"plain"===d?R:(0,n.jsx)(u.Zp,{children:R})}var C=a(52619),S=a.n(C);function A(e){var t;let{appId:a,pollInterval:l=3e4,showResponseTime:i=!1,compact:o=!1}=e,d=(0,r.c)("externalApps"),[c,u]=(0,s.useState)(null),[f,m]=(0,s.useState)(!0),x=(0,s.useCallback)(async()=>{try{let e=await fetch("/api/external-apps/".concat(a,"/health"));if(e.ok){let t=await e.json();u(t)}else u({id:a,healthy:!1,lastChecked:Date.now(),error:"Failed to check health"})}catch(e){u({id:a,healthy:!1,lastChecked:Date.now(),error:"Network error"})}finally{m(!1)}},[a]);if((0,s.useEffect)(()=>{x();let e=setInterval(x,l);return()=>clearInterval(e)},[x,l]),f)return(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full bg-muted-foreground animate-pulse"}),!o&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:d("status.checking")})]});let p=null!=(t=null==c?void 0:c.healthy)&&t,g=p?"bg-success":"bg-muted-foreground",h=d(p?"status.running":"status.stopped");return o?(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full ".concat(g),title:h}):(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full ".concat(g)}),(0,n.jsx)("span",{className:"text-xs ".concat(p?"text-success-foreground":"text-muted-foreground"),children:h}),i&&(null==c?void 0:c.responseTime)!==void 0&&(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",c.responseTime,"ms)"]})]})}function E(e){var t;let{app:a,onEdit:l,onDelete:i}=e,o=(0,r.c)("externalApps"),d=(0,r.c)("common"),[c,f]=(0,s.useState)(!1),[m,x]=(0,s.useState)(!1),p=async()=>{x(!0);try{await i(a.id)}finally{x(!1),f(!1)}},g="/proxy/".concat(a.pathPrefix,"/");return(0,n.jsxs)(u.Zp,{padding:"md",className:"relative",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between mb-3",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsx)("h4",{className:"text-base font-semibold text-foreground truncate",children:a.displayName}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 font-mono truncate",children:a.name})]}),(0,n.jsx)(u.Ex,{variant:{sveltekit:"warning",streamlit:"error",nextjs:"info",other:"gray"}[a.appType]||"gray",children:{sveltekit:"SvelteKit",streamlit:"Streamlit",nextjs:"Next.js",other:"Other"}[t=a.appType]||t})]}),(0,n.jsxs)("div",{className:"space-y-2 mb-4",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.status")}),(0,n.jsx)(A,{appId:a.id,pollInterval:3e4})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.port")}),(0,n.jsxs)("span",{className:"text-sm font-mono text-foreground",children:[":",a.targetPort]})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.path")}),(0,n.jsxs)("span",{className:"text-sm font-mono text-foreground truncate max-w-[150px]",children:["/proxy/",a.pathPrefix,"/"]})]}),a.websocketEnabled&&(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.websocket")}),(0,n.jsx)(u.Ex,{variant:"info",children:o("card.enabled")})]}),!a.enabled&&(0,n.jsx)("div",{className:"mt-2 py-1 px-2 bg-warning-subtle border border-warning-border rounded text-xs text-warning-foreground",children:o("card.disabledNotice")})]}),c?(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:o("card.deleteConfirm",{name:a.displayName})}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)(u.$n,{variant:"danger",size:"sm",onClick:p,disabled:m,loading:m,children:o("card.delete")}),(0,n.jsx)(u.$n,{variant:"ghost",size:"sm",onClick:()=>f(!1),disabled:m,children:d("cancel")})]})]}):(0,n.jsxs)("div",{className:"flex gap-2 flex-wrap",children:[(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:()=>window.open(g,"_blank"),disabled:!a.enabled,children:o("card.open")}),(0,n.jsx)(u.$n,{variant:"secondary",size:"sm",onClick:()=>l(a),children:o("card.settings")}),(0,n.jsx)(u.$n,{variant:"ghost",size:"sm",onClick:()=>f(!0),className:"text-danger-foreground hover:bg-danger-subtle",children:o("card.delete")})]})]})}var P=a(87531);let T={MIN:1024,MAX:65535},M=/^[a-zA-Z0-9-]+$/,I={sveltekit:"SvelteKit",streamlit:"Streamlit",nextjs:"Next.js",other:"Other"},O=["sveltekit","streamlit","nextjs","other"].map(e=>({value:e,label:I[e]}));function R(e){let{isOpen:t,onClose:a,editApp:l,onSave:i}=e,o=(0,r.c)("externalApps"),d=(0,r.c)("common"),c=!!l,[f,m]=(0,s.useState)(""),[x,p]=(0,s.useState)(""),[g,h]=(0,s.useState)(""),[b,v]=(0,s.useState)(""),[j,y]=(0,s.useState)(""),[N,w]=(0,s.useState)(!1),[k,C]=(0,s.useState)(""),[S,A]=(0,s.useState)(!0),[E,I]=(0,s.useState)({}),[R,U]=(0,s.useState)(!1),[L,z]=(0,s.useState)(null);(0,s.useEffect)(()=>{t&&(l?(m(l.displayName),p(l.name),h(l.pathPrefix),v(l.targetPort),y(l.appType),w(l.websocketEnabled),C(l.description||""),A(l.enabled)):(m(""),p(""),h(""),v(""),y(""),w(!1),C(""),A(!0)),I({}),z(null))},[t,l]);let $=async e=>{e.preventDefault(),z(null);let t=function(e,t){var a,n,s,r;let l={};return((null==(a=e.displayName)?void 0:a.trim())||(l.displayName="Display name is required"),!t&&((null==(n=e.name)?void 0:n.trim())?M.test(e.name)||(l.name="Only alphanumeric characters and hyphens are allowed"):l.name="Identifier name is required",(null==(s=e.pathPrefix)?void 0:s.trim())?M.test(e.pathPrefix)||(l.pathPrefix="Only alphanumeric characters and hyphens are allowed"):l.pathPrefix="Path prefix is required"),e.targetPort)?"number"!=typeof e.targetPort||Number.isInteger(r=e.targetPort)&&r>=T.MIN&&r<=T.MAX||(l.targetPort="Port must be between ".concat(T.MIN," and ").concat(T.MAX)):l.targetPort="Port number is required",t||e.appType||(l.appType="App type is required"),l}({displayName:f,name:x,pathPrefix:g,targetPort:b,appType:j},c);if(Object.keys(t).length>0)return void I(t);I({}),U(!0);try{if(c&&l){let e=await fetch("/api/external-apps/".concat(l.id),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({displayName:f,description:k||void 0,targetPort:b||void 0,websocketEnabled:N,enabled:S})});if(!e.ok){let t=await e.json();throw Error(t.error||o("form.updateFailed"))}}else{let e=await fetch("/api/external-apps",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({displayName:f,name:x,pathPrefix:g,targetPort:b,appType:j,websocketEnabled:N,description:k||void 0})});if(!e.ok){let t=await e.json();throw Error(t.error||o("form.createFailed"))}}i(),a()}catch(e){z(e instanceof Error?e.message:o("form.genericError"))}finally{U(!1)}};return(0,n.jsx)(u.Jh,{isOpen:t,onClose:a,title:c?o("form.editTitle"):o("form.addTitle"),size:"md",children:(0,n.jsxs)("form",{onSubmit:$,className:"space-y-4",children:[(0,n.jsx)("div",{className:"rounded-md bg-warning-subtle p-3 mb-4 border border-warning-border",children:(0,n.jsx)("p",{className:"text-sm text-warning-foreground",children:o("form.securityWarning")})}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"displayName",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.displayName")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"displayName",type:"text",value:f,onChange:e=>m(e.target.value),className:E.displayName?"border-danger":"",placeholder:o("form.displayNamePlaceholder"),disabled:R}),E.displayName&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.displayName})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"name",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.identifierName")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"name",type:"text",value:x,onChange:e=>p(e.target.value),className:"font-mono ".concat(E.name?"border-danger":""),placeholder:o("form.identifierNamePlaceholder"),disabled:R}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.identifierNameHelp")}),E.name&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.name})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"pathPrefix",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.pathPrefix")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsxs)("div",{className:"flex items-center",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground mr-1",children:"/proxy/"}),(0,n.jsx)(u.pd,{id:"pathPrefix",type:"text",value:g,onChange:e=>h(e.target.value),className:"w-auto flex-1 font-mono ".concat(E.pathPrefix?"border-danger":""),placeholder:o("form.pathPrefixPlaceholder"),disabled:R}),(0,n.jsx)("span",{className:"text-sm text-muted-foreground ml-1",children:"/"})]}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.pathPrefixHelp")}),E.pathPrefix&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.pathPrefix})]}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"targetPort",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.portNumber")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"targetPort",type:"number",value:b,onChange:e=>v(e.target.value?parseInt(e.target.value,10):""),className:"font-mono ".concat(E.targetPort?"border-danger":""),placeholder:o("form.portNumberPlaceholder"),min:T.MIN,max:T.MAX,disabled:R}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.portNumberHelp",{min:T.MIN,max:T.MAX})}),E.targetPort&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.targetPort})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"appType",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.appType")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsxs)("select",{id:"appType",value:j,onChange:e=>y(e.target.value),className:(0,P.cn)((0,u.j1)(),E.appType&&"border-danger"),disabled:R,children:[(0,n.jsx)("option",{value:"",children:o("form.appTypePlaceholder")}),O.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]}),E.appType&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.appType})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("label",{htmlFor:"description",className:"block text-sm font-medium text-foreground mb-1",children:o("form.description")}),(0,n.jsx)(u.k_,{id:"description",value:k,onChange:e=>C(e.target.value),placeholder:o("form.descriptionPlaceholder"),rows:2,disabled:R})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.dO,{id:"websocketEnabled",checked:N,onCheckedChange:w,disabled:R}),(0,n.jsx)("label",{htmlFor:"websocketEnabled",className:"text-sm text-foreground",children:o("form.websocketLabel")})]}),c&&(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.dO,{id:"enabled",checked:S,onCheckedChange:A,disabled:R}),(0,n.jsx)("label",{htmlFor:"enabled",className:"text-sm text-foreground",children:o("form.enabledLabel")})]}),L&&(0,n.jsx)("div",{className:"p-3 bg-danger-subtle border border-danger-border rounded text-sm text-danger-foreground",children:L}),(0,n.jsxs)("div",{className:"flex justify-end gap-2 pt-4 border-t border-border",children:[(0,n.jsx)(u.$n,{type:"button",variant:"ghost",onClick:a,disabled:R,children:d("cancel")}),(0,n.jsx)(u.$n,{type:"submit",variant:"primary",loading:R,children:c?o("form.save"):o("form.add")})]})]})})}function U(){let e=(0,r.c)("externalApps"),t=(0,r.c)("common"),[a,l]=(0,s.useState)([]),[i,o]=(0,s.useState)(!0),[d,c]=(0,s.useState)(null),[f,m]=(0,s.useState)(!1),[x,p]=(0,s.useState)(null),g=(0,s.useCallback)(async()=>{try{c(null);let e=await fetch("/api/external-apps");if(!e.ok)throw Error("Failed to fetch external apps");let t=await e.json();l(t.apps||[])}catch(e){c(e instanceof Error?e.message:"An error occurred")}finally{o(!1)}},[]);(0,s.useEffect)(()=>{g();let e=setInterval(g,6e4);return()=>clearInterval(e)},[g]);let h=(0,s.useCallback)(e=>{p(e),m(!0)},[]),b=(0,s.useCallback)(()=>{p(null),m(!0)},[]),v=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/external-apps/".concat(e),{method:"DELETE"});if(!t.ok){let e=await t.json();throw Error(e.error||"Failed to delete app")}g()}catch(e){console.error("Failed to delete app:",e)}},[g]),j=(0,s.useCallback)(()=>{g()},[g]),y=(0,s.useCallback)(()=>{m(!1),p(null)},[]);return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("div",{className:"flex items-center justify-end",children:(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:b,children:e("manager.addApp")})}),i?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"flex items-center justify-center py-8",children:[(0,n.jsx)(u.y$,{size:"xl",variant:"accent"}),(0,n.jsx)("span",{className:"ml-3 text-muted-foreground",children:e("manager.loading")})]})}):d?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"text-center py-8",children:[(0,n.jsx)("p",{className:"text-danger-foreground mb-4",children:e("manager.loadError")}),(0,n.jsx)(u.$n,{variant:"secondary",size:"sm",onClick:g,children:t("retry")})]})}):0===a.length?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"text-center py-8",children:[(0,n.jsx)("p",{className:"text-muted-foreground mb-4",children:e("manager.empty")}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:e("manager.emptyHelp")}),(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:b,children:e("manager.addFirst")})]})}):(0,n.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:a.map(e=>(0,n.jsx)(E,{app:e,onEdit:h,onDelete:v},e.id))}),(0,n.jsx)(R,{isOpen:f,onClose:y,editApp:x,onSave:j})]})}var L=a(85998),z=a(94442),$=a(81978);function F(){return"undefined"!=typeof navigator&&"serviceWorker"in navigator&&"PushManager"in window&&"Notification"in window}let D={enabled:!0,thresholdMinutes:10},Z=[5,10,30,60];function H(){let e=(0,r.c)("notifications"),{showToast:t}=(0,z.dj)(),[a,l]=(0,s.useState)(!0),[i,o]=(0,s.useState)(!1),[d,c]=(0,s.useState)(!0),[f,m]=(0,s.useState)(!1),[x,p]=(0,s.useState)(null),[g,h]=(0,s.useState)(null),[b,v]=(0,s.useState)(!1),[j,y]=(0,s.useState)(null),[N,w]=(0,s.useState)({prompt:!0,completion:!1}),[k,C]=(0,s.useState)(!1),[S,A]=(0,s.useState)(null),[E,P]=(0,s.useState)(null),T=null!==j&&!1!==E;(0,s.useEffect)(()=>{let e=!1;return(async()=>{let t=function(){var e,t;let a=F(),n="undefined"!=typeof navigator&&(!!/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!(null!=(e=(t=window).matchMedia)&&e.call(t,"(display-mode: standalone)").matches||!0===navigator.standalone);return{supported:a&&!n,iosNeedsInstall:n}}();e||(c(F()),m(t.iosNeedsInstall),"undefined"!=typeof Notification&&"denied"===Notification.permission&&v(!0));try{let t=await fetch("/api/push/vapid"),a=await t.json();e||(p(a.configured),h(a.publicKey))}catch(t){e||p(!1)}if(F())try{let t=await navigator.serviceWorker.getRegistration(),n=t?await t.pushManager.getSubscription():null;if(n&&!e){y(n.endpoint);let t=await fetch("/api/push/subscriptions?endpoint=".concat(encodeURIComponent(n.endpoint))),s=await t.json();if(!e){var a;P(!0===s.subscribed),A(null!=(a=s.delivery)?a:null)}s.subscribed&&s.subscription&&!e&&(w(s.subscription.preferences),C(!0===s.subscription.defaultsNoticePending))}}catch(e){}e||l(!1)})(),()=>{e=!0}},[]);let M=(0,s.useCallback)(async()=>{if(g){o(!0);try{var a,n;let s=await Notification.requestPermission();if("granted"!==s){v("denied"===s),t(e("toast.error"),"error");return}if(!await navigator.serviceWorker.getRegistration())return void t(e("toast.error"),"error");let r=await navigator.serviceWorker.ready,l=await r.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:function(e){let t="=".repeat((4-e.length%4)%4),a=atob((e+t).replace(/-/g,"+").replace(/_/g,"/")),n=new Uint8Array(new ArrayBuffer(a.length));for(let e=0;e<a.length;e++)n[e]=a.charCodeAt(e);return n}(g)}),i=await fetch("/api/push/subscriptions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({subscription:l.toJSON(),deviceLabel:navigator.userAgent.slice(0,120)})});if(!i.ok)throw Error("subscribe request failed");let o=await i.json();y(l.endpoint),P(!0),A(null),(null==(a=o.subscription)?void 0:a.preferences)&&w(o.subscription.preferences),C((null==(n=o.subscription)?void 0:n.defaultsNoticePending)===!0),v(!1),t(e("toast.enabled"),"success")}catch(a){t(e("toast.error"),"error")}finally{o(!1)}}},[g,t,e]),I=(0,s.useCallback)(async()=>{o(!0);try{var a;let n=await navigator.serviceWorker.getRegistration(),s=n?await n.pushManager.getSubscription():null,r=null!=(a=null==s?void 0:s.endpoint)?a:j;s&&await s.unsubscribe(),r&&await fetch("/api/push/subscriptions",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:r})}),y(null),P(null),A(null),t(e("toast.disabled"),"info")}catch(a){t(e("toast.error"),"error")}finally{o(!1)}},[j,t,e]),O=(0,s.useCallback)(async(a,n)=>{if(!j)return;let s={...N,[a]:n};w(s);try{if(!(await fetch("/api/push/subscriptions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:j,preferences:s})})).ok)throw Error("update failed");t(e("toast.updated"),"success")}catch(a){w(N),t(e("toast.error"),"error")}},[j,N,t,e]),R=(0,s.useCallback)(async a=>{if(!j)return;let n=a?{...N,completion:!1}:N;C(!1),a&&w(n),o(!0);try{if(!(await fetch("/api/push/subscriptions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:j,...a?{preferences:n}:{},acknowledgeDefaultsNotice:!0})})).ok)throw Error("acknowledge failed");t(e(a?"defaultsNotice.adopted":"defaultsNotice.kept"),"success")}catch(a){w(N),C(!0),t(e("toast.error"),"error")}finally{o(!1)}},[j,N,t,e]);return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(u.Zp,{children:(0,n.jsx)(q,{})}),(0,n.jsx)(u.Zp,{children:a?(0,n.jsx)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:(0,n.jsx)(u.y$,{size:"sm"})}):d?f?(0,n.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"notifications-ios-guidance",children:e("ios.guidance")}):!1===x?(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("notConfigured")}):(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("description")}),b&&(0,n.jsx)("p",{className:"text-sm text-danger-foreground","data-testid":"notifications-permission-denied",children:e("permission.denied")}),(()=>{if(null===S)return null;let t="removed"===S.state,a=S.statusCode,s=t?null===a?e("delivery.removedUnknownStatus"):e("delivery.removed",{status:String(a)}):null===a?e("delivery.failingUnknownStatus",{count:S.failureCount}):e("delivery.failing",{count:S.failureCount,status:String(a)});return(0,n.jsxs)("div",{className:t?"space-y-2 rounded-lg border border-danger-border bg-danger-subtle p-3":"space-y-2 rounded-lg border border-warning-border bg-warning-subtle p-3","data-testid":"notifications-delivery-health","data-delivery-state":S.state,children:[(0,n.jsx)("p",{className:t?"text-sm font-semibold text-danger-foreground":"text-sm font-semibold text-warning-foreground",children:e(t?"delivery.headingRemoved":"delivery.headingFailing")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:s}),403===a&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"notifications-delivery-apns-hint",children:e("delivery.apnsHint")}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:e("delivery.since",{timestamp:new Date(S.firstFailureAt).toLocaleString()})})]})})(),T?(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("p",{className:"text-sm font-medium text-foreground",children:e("enabledOnThisDevice")}),k&&(0,n.jsxs)("div",{className:"space-y-3 rounded-lg border border-info-border bg-info-subtle p-3","data-testid":"notifications-defaults-notice",children:[(0,n.jsx)("p",{className:"text-sm font-semibold text-info-foreground",children:e("defaultsNotice.heading")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:e("defaultsNotice.completionChanged")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:e("defaultsNotice.failuresAdded")}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,n.jsx)(u.$n,{variant:"primary",onClick:()=>R(!0),disabled:i,"data-testid":"notifications-defaults-notice-adopt",children:e("defaultsNotice.adopt")}),(0,n.jsx)(u.$n,{variant:"secondary",onClick:()=>R(!1),disabled:i,"data-testid":"notifications-defaults-notice-keep",children:e("defaultsNotice.keep")})]})]}),(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("types.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("types.promptWaiting")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("types.promptWaitingDesc")})]}),(0,n.jsx)(u.dO,{checked:N.prompt,onCheckedChange:e=>O("prompt",e),disabled:i,"aria-label":e("types.promptWaiting"),"data-testid":"notifications-toggle-prompt"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("types.completion")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("types.completionDesc")})]}),(0,n.jsx)(u.dO,{checked:N.completion,onCheckedChange:e=>O("completion",e),disabled:i,"aria-label":e("types.completion"),"data-testid":"notifications-toggle-completion"})]})]}),(0,n.jsx)(u.$n,{variant:"secondary",onClick:I,disabled:i,"data-testid":"notifications-unsubscribe",children:e("unsubscribe")})]}):(0,n.jsxs)(u.$n,{variant:"primary",onClick:M,disabled:i||b||!g,"data-testid":"notifications-enable",children:[(0,n.jsx)(L.A,{className:"h-4 w-4"}),i?e("enabling"):e("enable")]})]}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("unsupported")})}),(0,n.jsx)(u.Zp,{children:(0,n.jsx)(W,{})})]})}function W(){let e=(0,r.c)("notifications"),{showToast:t}=(0,z.dj)(),[a,l]=(0,s.useState)(!0),[i,o]=(0,s.useState)(!1),[d,c]=(0,s.useState)(D),[f,m]=(0,s.useState)([...Z]);(0,s.useEffect)(()=>{let e=!1;return(async()=>{try{let t=await fetch("/api/push/escalation"),a=await t.json();!e&&(a.settings&&c(a.settings),Array.isArray(a.choices)&&a.choices.length>0&&m(a.choices))}catch(e){}finally{e||l(!1)}})(),()=>{e=!0}},[]);let x=(0,s.useCallback)(async a=>{c(a),o(!0);try{if(!(await fetch("/api/push/escalation",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:a})})).ok)throw Error("update failed");t(e("toast.updated"),"success")}catch(a){c(d),t(e("toast.error"),"error")}finally{o(!1)}},[d,t,e]);return(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("escalation.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("escalation.toggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("escalation.toggleDesc")})]}),(0,n.jsx)(u.dO,{checked:d.enabled,onCheckedChange:e=>x({...d,enabled:e}),disabled:a||i,"aria-label":e("escalation.toggle"),"data-testid":"notifications-toggle-escalation"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:e("escalation.threshold")}),(0,n.jsx)("select",{className:"rounded-md border border-border bg-background px-2 py-1 text-sm text-foreground",value:String(d.thresholdMinutes),disabled:a||i||!d.enabled,"aria-label":e("escalation.threshold"),"data-testid":"notifications-escalation-threshold",onChange:e=>x({...d,thresholdMinutes:Number(e.target.value)}),children:f.map(t=>(0,n.jsx)("option",{value:String(t),children:e("escalation.minutes",{count:t})},t))})]})]})}function q(){let e=(0,r.c)("notifications"),{enabled:t,setEnabled:a}=(0,$.qG)(),{enabled:s,setEnabled:l}=(0,$.Ql)();return(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("inApp.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("inApp.waitingToggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("inApp.waitingToggleDesc")})]}),(0,n.jsx)(u.dO,{checked:t,onCheckedChange:a,"aria-label":e("inApp.waitingToggle"),"data-testid":"notifications-toggle-inapp-waiting"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("inApp.soundToggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("inApp.soundToggleDesc")})]}),(0,n.jsx)(u.dO,{checked:s,onCheckedChange:l,"aria-label":e("inApp.soundToggle"),"data-testid":"notifications-toggle-inapp-sound"})]})]})}function _(e){let{heading:t,children:a}=e;return(0,n.jsxs)("div",{className:"mb-8",children:[(0,n.jsx)("h2",{className:"text-lg font-semibold mb-4 text-foreground",children:t}),a]})}function B(e){let{onNavigate:t}=e,a=(0,r.c)("common"),s=(0,r.c)("skills");return(0,n.jsx)(_,{heading:a("settings.sections.quickLinks"),children:(0,n.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[(0,n.jsx)(S(),{href:"/repositories",className:"block","data-testid":"more-link-repositories",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:"Repositories"}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:"Manage repositories and worktrees"})]})}),(0,n.jsx)(S(),{href:"/skills",className:"block","data-testid":"more-link-skills",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:a("nav.skills")}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:s("page.description")})]})}),(0,n.jsx)(S(),{href:"/skills/installed",className:"block","data-testid":"more-link-skills-installed",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:s("dashboard.title")}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:s("dashboard.description")})]})})]})})}function J(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.general"),children:(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(p,{}),(0,n.jsx)(v,{}),(0,n.jsx)(k,{})]})})}function V(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.notifications"),children:(0,n.jsx)(H,{})})}function K(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.externalApps"),children:(0,n.jsx)(U,{})})}function X(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.about"),children:(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-muted-foreground",children:"CommandMate - A local control plane for agent CLIs."})})})}function G(){return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B,{}),(0,n.jsx)(J,{}),(0,n.jsx)(V,{}),(0,n.jsx)(K,{}),(0,n.jsx)(X,{})]})}a(72604),a(95275),a(79832);var Q=a(94465),Y=a(23838),ee=a(40823);let et=[{id:"general",labelKey:"settings.sections.general"},{id:"notifications",labelKey:"settings.sections.notifications"},{id:"externalApps",labelKey:"settings.sections.externalApps"},{id:"about",labelKey:"settings.sections.about"}];function ea(){let e=(0,r.c)("common"),{isOpen:t,close:a}=(0,ee.V0)();return(0,n.jsx)(Q.a,{isOpen:t,onClose:a,title:e("settings.title"),size:"lg",children:(0,n.jsxs)(Y.tU,{defaultValue:"general",orientation:"vertical",variant:"pill",className:"flex gap-6 min-h-[60vh]","data-testid":"settings-dialog",children:[(0,n.jsx)(Y.j7,{"aria-label":e("settings.categoriesLabel"),className:"sticky top-0 w-40 shrink-0 flex-col items-stretch self-start",children:et.map(t=>(0,n.jsx)(Y.Xi,{value:t.id,"data-testid":"settings-dialog-tab-".concat(t.id),className:"justify-start",children:e(t.labelKey)},t.id))}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)(Y.av,{value:"general",className:"mt-0",children:(0,n.jsx)(J,{})}),(0,n.jsx)(Y.av,{value:"notifications",className:"mt-0",children:(0,n.jsx)(V,{})}),(0,n.jsx)(Y.av,{value:"externalApps",className:"mt-0",children:(0,n.jsx)(K,{})}),(0,n.jsxs)(Y.av,{value:"about",className:"mt-0",children:[(0,n.jsx)(B,{onNavigate:a}),(0,n.jsx)(X,{})]})]})]})})}},72604:(e,t,a)=>{a.d(t,{dS:()=>c,rM:()=>u});var n=a(12115),s=a(20063),r=a(18955),l=a(94442),i=a(66966),o=a(60199),d=a(81978);function c(e,t,a){return"".concat(e,"|").concat(null!=t?t:"-","|").concat(null!=a?a:"no-since")}function u(){let e=(0,r.c)("notifications"),{showToast:t}=(0,l.dj)(),{addListener:a}=(0,o.xM)(),{enabled:u}=(0,d.qG)(),f=(0,s.usePathname)(),m=(0,s.useRouter)(),x=(0,i.rC)(),p=(0,n.useRef)({enabled:u,pathname:f,worktrees:null==x?void 0:x.worktrees,showToast:t,t:e,router:m});p.current={enabled:u,pathname:f,worktrees:null==x?void 0:x.worktrees,showToast:t,t:e,router:m};let g=(0,n.useRef)(new Set);return(0,n.useEffect)(()=>a(e=>{var t,a,n,s,r;if("session_status_changed"!==e.type)return;let l=e.worktreeId;if("string"!=typeof l||0===l.length)return;let i=e.isWaitingForResponse;if("boolean"!=typeof i)return;let o=null!=(n=e.instance)?n:null,d=null!=(s=e.waitingSince)?s:null;if(!i){let e="".concat(l,"|").concat(null!=o?o:"-","|");for(let t of g.current)t.startsWith(e)&&g.current.delete(t);return}let u=p.current;if(!u.enabled||function(e){if(!e)return null;let t=/^\/worktrees\/([^/]+)/.exec(e);if(!t)return null;try{return decodeURIComponent(t[1])}catch(e){return t[1]}}(u.pathname)===l)return;let f=c(l,o,d);if(g.current.has(f))return;g.current.size>=500&&g.current.clear(),g.current.add(f);let m=null!=(r=null==(a=u.worktrees)||null==(t=a.find(e=>e.id===l))?void 0:t.name)?r:l;u.showToast(u.t("inApp.waitingToast",{name:m}),"warning",8e3,{onClick:()=>u.router.push("/worktrees/".concat(encodeURIComponent(l)))})}),[a]),null}},75676:(e,t,a)=>{a.d(t,{jg:()=>r,kQ:()=>l,mR:()=>d,mS:()=>o,wf:()=>n});let n="terminal",s=new Set(["terminal","chat"]);function r(e){return"string"==typeof e&&s.has(e)}let l={data:null,messageId:null,visible:!1,answering:!1},i={mode:"split",mobileActivePane:"terminal",leftPaneTab:"history",splitRatio:.5,leftPaneCollapsed:!1,activityBar:{active:"files"},historyPane:{visible:!0,width:25,collapsed:!1}},o={type:null,message:null,retryable:!1,retryCount:0};function d(){return{phase:"idle",prompt:{...l},layout:{...i},error:{...o},messages:[],wsConnected:!1}}},79832:(e,t,a)=>{a.d(t,{o:()=>o});var n=a(12115),s=a(24373);let r=/^\(\d+\+?\)(?:\s+|$)/;function l(e){return e.replace(r,"").trim()}function i(e){return Array.from(e.querySelectorAll('link[rel~="icon"]'))}function o(){return!function(){let{count:e}=(0,s.Lv)(),t=(0,n.useRef)([]),a=(0,n.useRef)(null);(0,n.useEffect)(()=>{if("undefined"==typeof document)return;let t=()=>{let t=function(e,t){let a=l(e);if(!Number.isFinite(t)||t<=0)return a;let n="(".concat(Math.floor(t),")");return a?"".concat(n," ").concat(a):n}(document.title,e);t!==document.title&&(document.title=t)};t();let a=null;return"undefined"!=typeof MutationObserver&&document.head&&(a=new MutationObserver(t)).observe(document.head,{childList:!0,subtree:!0,characterData:!0}),()=>{null==a||a.disconnect();let e=l(document.title);e!==document.title&&(document.title=e)}},[e]),(0,n.useEffect)(()=>{if("undefined"==typeof document||e<=0)return;let n=t.current,s=()=>{let t=a.current,s=function(e){var t,a;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!Number.isFinite(e)||e<=0)return null;let s=null!=(t=n.document)?t:"undefined"!=typeof document?document:null;if(!s)return null;let r=null!=(a=n.size)?a:64;try{let t=s.createElement("canvas");t.width=r,t.height=r;let a=t.getContext("2d");if(!a)return null;a.clearRect(0,0,r,r),n.base?a.drawImage(n.base,0,0,r,r):(a.fillStyle="#111827",a.fillRect(0,0,r,r));let l=Math.floor(e)>9,i=.34*r,o=r-i-.03*r;a.beginPath(),a.arc(o,o,i,0,2*Math.PI),a.fillStyle=l?"#ef4444":"#f59e0b",a.fill(),a.lineWidth=.05*r,a.strokeStyle="rgba(0, 0, 0, 0.55)",a.stroke();let d=function(e){if(!Number.isFinite(e)||e<=0)return"";let t=Math.floor(e);return t>9?"".concat(9,"+"):String(t)}(e);return a.fillStyle=l?"#ffffff":"#1c1300",a.font="bold ".concat(Math.round(r*(d.length>1?.38:.48)),"px sans-serif"),a.textAlign="center",a.textBaseline="middle",a.fillText(d,o,o+.02*r),t.toDataURL("image/png")}catch(e){return null}}(e,{base:t&&t.complete&&t.naturalWidth>0?t:null,document});s&&function(e,t,a){let n=i(e);if(0===n.length){let t=e.createElement("link");t.setAttribute("rel","icon"),t.setAttribute("type","image/png"),e.head.appendChild(t),a.push({link:t,originalHref:null,created:!0}),n=[t]}for(let e of n)a.some(t=>t.link===e)||a.push({link:e,originalHref:e.getAttribute("href"),created:!1}),e.setAttribute("href",t)}(document,s,n)};s();let r=a.current;if(!r&&"undefined"!=typeof Image){let e=function(e,t){var a;for(let e of t)if(!e.created&&e.originalHref)return e.originalHref;let n=i(e).find(e=>e.getAttribute("href"));return null!=(a=null==n?void 0:n.getAttribute("href"))?a:null}(document,n);e&&(a.current=r=new Image,r.src=e)}let l=null;return r&&!(r.complete&&r.naturalWidth>0)?(l=()=>s(),r.addEventListener("load",l)):r&&s(),()=>{r&&l&&r.removeEventListener("load",l);for(let e of n){if(e.created){e.link.remove();continue}null===e.originalHref?e.link.removeAttribute("href"):e.link.setAttribute("href",e.originalHref)}n.length=0}},[e]),(0,n.useEffect)(()=>{!function(e,t){let a="undefined"!=typeof navigator?navigator:null;if(!a)return;let n=e=>{e&&"function"==typeof e.catch&&e.catch(()=>{})};try{if(Number.isFinite(e)&&e>0){if("function"!=typeof a.setAppBadge)return!1;return n(a.setAppBadge(Math.floor(e))),!0}if("function"!=typeof a.clearAppBadge)return!1;n(a.clearAppBadge())}catch(e){return!1}}(e)},[e])}(),null}},81978:(e,t,a)=>{a.d(t,{Ql:()=>o,qG:()=>l});var n=a(12115);let s="mcbd-inapp-waiting-toast",r="mcbd:inapp-notification-prefs-changed";function l(){let[e,t]=(0,n.useState)(!0);return(0,n.useEffect)(()=>{let e=()=>t(function(){try{let e=window.localStorage.getItem(s);if(null===e)return!0;return"false"!==e}catch(e){return!0}}());return e(),window.addEventListener(r,e),window.addEventListener("storage",e),()=>{window.removeEventListener(r,e),window.removeEventListener("storage",e)}},[]),{enabled:e,setEnabled:(0,n.useCallback)(e=>{t(e);try{window.localStorage.setItem(s,e?"true":"false")}catch(e){}window.dispatchEvent(new CustomEvent(r))},[])}}let i="mcbd-inapp-waiting-sound";function o(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{let e=()=>t(function(){try{let e=window.localStorage.getItem(i);if(null===e)return!1;return"true"===e}catch(e){return!1}}());return e(),window.addEventListener(r,e),window.addEventListener("storage",e),()=>{window.removeEventListener(r,e),window.removeEventListener("storage",e)}},[]),{enabled:e,setEnabled:(0,n.useCallback)(e=>{t(e);try{window.localStorage.setItem(i,e?"true":"false")}catch(e){}window.dispatchEvent(new CustomEvent(r))},[])}}},94442:(e,t,a)=>{a.d(t,{dj:()=>y,tE:()=>j});var n=a(95155),s=a(12115),r=a(47650),l=a(18955),i=a(42529),o=a(78874),d=a(52056),c=a(23327),u=a(65229),f=a(59854),m=a(9900),x=a(9286);function p(e){let{type:t,iconColor:a}=e,s="h-5 w-5 ".concat(a);switch(t){case"success":return(0,n.jsx)(i.A,{className:s,"data-testid":"toast-icon-success"});case"error":return(0,n.jsx)(o.A,{className:s,"data-testid":"toast-icon-error"});case"warning":return(0,n.jsx)(d.A,{className:s,"data-testid":"toast-icon-warning"});default:return(0,n.jsx)(c.A,{className:s,"data-testid":"toast-icon-info"})}}function g(e){let{id:t,message:a,type:r,onClose:i,duration:o=3e3,onClick:d}=e,c=(0,l.c)("common"),f=(0,s.useRef)(null),g=function(e){switch(e){case"success":return{bgColor:"bg-success-subtle",borderColor:"border-success-border",textColor:"text-success-foreground",iconColor:"text-success-foreground"};case"error":return{bgColor:"bg-danger-subtle",borderColor:"border-danger-border",textColor:"text-danger-foreground",iconColor:"text-danger-foreground"};case"warning":return{bgColor:"bg-warning-subtle",borderColor:"border-warning-border",textColor:"text-warning-foreground",iconColor:"text-warning-foreground"};default:return{bgColor:"bg-info-subtle",borderColor:"border-info-border",textColor:"text-info-foreground",iconColor:"text-info-foreground"}}}(r),[h,b]=(0,s.useState)(!0),{shouldRender:v,isExiting:j}=(0,x.O)(h,m.Ys),y=(0,s.useRef)(i);y.current=i,(0,s.useEffect)(()=>{v||y.current(t)},[v,t]),(0,s.useEffect)(()=>(o>0&&(f.current=setTimeout(()=>{b(!1)},o)),()=>{f.current&&clearTimeout(f.current)}),[o]);let N=(0,s.useCallback)(()=>{f.current&&clearTimeout(f.current),b(!1)},[]);return(0,n.jsxs)("div",{"data-testid":"toast-".concat(t),role:"alert",className:"\n ".concat(g.bgColor,"\n ").concat(g.borderColor,"\n ").concat(g.textColor,"\n border rounded-lg shadow-lg p-4 min-w-[300px] max-w-[400px]\n flex items-start gap-3\n ").concat(j?"animate-out fade-out-0 slide-out-to-right-full duration-200 fill-mode-forwards pointer-events-none":"animate-slide-in","\n "),children:[(0,n.jsx)(p,{type:r,iconColor:g.iconColor}),d?(0,n.jsx)("button",{type:"button","data-testid":"toast-action-button",onClick:()=>{d(),N()},className:"flex-1 text-left text-sm font-medium underline-offset-2 hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-sm",children:a}):(0,n.jsx)("p",{className:"flex-1 text-sm font-medium",children:a}),(0,n.jsx)("button",{"data-testid":"toast-close-button",onClick:N,"aria-label":c("closeNotification"),className:"\n ".concat(g.textColor,"\n hover:opacity-70\n focus:outline-none focus:ring-2 focus:ring-offset-2\n transition-opacity\n "),children:(0,n.jsx)(u.A,{className:"h-4 w-4"})})]})}function h(e){let{toasts:t,onClose:a}=e,[l,i]=(0,s.useState)(!1);(0,s.useEffect)(()=>{i(!0)},[]);let o=(0,n.jsx)("div",{"data-testid":"toast-container","aria-live":"polite",className:"fixed bottom-4 right-4 flex flex-col gap-2",style:{zIndex:f.M.TOAST},children:t.map(e=>(0,n.jsx)(g,{id:e.id,message:e.message,type:e.type,onClose:a,duration:e.duration,onClick:e.onClick},e.id))});return l?(0,r.createPortal)(o,document.body):null}function b(){let[e,t]=(0,s.useState)([]),a=(0,s.useRef)(0),n=(0,s.useCallback)(function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info",s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e3,r=arguments.length>3?arguments[3]:void 0,l="toast-".concat(++a.current,"-").concat(Date.now()),i={id:l,message:e,type:n,duration:s,...(null==r?void 0:r.onClick)?{onClick:r.onClick}:{}};return t(e=>[...e,i]),l},[]),r=(0,s.useCallback)(e=>{t(t=>t.filter(t=>t.id!==e))},[]),l=(0,s.useCallback)(()=>{t([])},[]);return(0,s.useMemo)(()=>({toasts:e,showToast:n,removeToast:r,clearToasts:l}),[e,n,r,l])}let v=(0,s.createContext)(null);function j(e){let{children:t}=e,a=b();return(0,n.jsxs)(v.Provider,{value:a,children:[t,(0,n.jsx)(h,{toasts:a.toasts,onClose:a.removeToast})]})}function y(){let e=(0,s.useContext)(v),t=b();return null!=e?e:t}},95275:(e,t,a)=>{a.d(t,{H:()=>f});var n=a(12115),s=a(60199),r=a(81978),l=a(72604);let i=[{frequency:880,offset:0,duration:.12},{frequency:1318.5,offset:.13,duration:.18}],o=null;function d(){if(o)return o;let e=function(){var e,t;let a=window;return null!=(t=null!=(e=a.AudioContext)?e:a.webkitAudioContext)?t:null}();if(!e)return null;try{o=new e}catch(e){return null}return o}function c(e){e&&"function"==typeof e.catch&&e.catch(()=>{})}let u=["pointerdown","touchstart","keydown"];function f(){let{addListener:e}=(0,s.xM)(),{enabled:t}=(0,r.Ql)(),a=(0,n.useRef)({enabled:t});a.current={enabled:t};let o=(0,n.useRef)(new Set);return(0,n.useEffect)(()=>{let e=()=>(function(){let e=d();if(e)try{var t;"suspended"===e.state&&c(null==(t=e.resume)?void 0:t.call(e))}catch(e){}})();for(let t of u)window.addEventListener(t,e,{once:!0,passive:!0});return()=>{for(let t of u)window.removeEventListener(t,e)}},[]),(0,n.useEffect)(()=>e(e=>{var t,n;if("session_status_changed"!==e.type)return;let s=e.worktreeId;if("string"!=typeof s||0===s.length)return;let r=e.isWaitingForResponse;if("boolean"!=typeof r)return;let u=null!=(t=e.instance)?t:null,f=null!=(n=e.waitingSince)?n:null;if(!r){let e="".concat(s,"|").concat(null!=u?u:"-","|");for(let t of o.current)t.startsWith(e)&&o.current.delete(t);return}if(!a.current.enabled)return;let m=(0,l.dS)(s,u,f);o.current.has(m)||(o.current.size>=500&&o.current.clear(),o.current.add(m),function(){let e=d();if(e)try{var t,a;"suspended"===e.state&&c(null==(t=e.resume)?void 0:t.call(e));let n=null!=(a=e.currentTime)?a:0;for(let t of i){let a=e.createOscillator(),s=e.createGain();a.type="sine",a.frequency.value=t.frequency;let r=n+t.offset,l=r+t.duration;s.gain.setValueAtTime(0,r),s.gain.linearRampToValueAtTime(.12,r+.015),s.gain.linearRampToValueAtTime(1e-4,l),a.connect(s),s.connect(e.destination),a.start(r),a.stop(l+.02)}}catch(e){return!1}}())}),[e]),null}}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8165],{17683:(e,t,a)=>{a.d(t,{$2:()=>i,B1:()=>p,If:()=>c,NP:()=>o,TR:()=>u,wp:()=>l});var n=a(75676);let s="commandmate.worktree.surfaceMode-",r="commandmate.settings.defaultSurfaceMode",l="/api/settings/default-surface-mode";function i(e,t){return"".concat(s).concat(e,"-split-").concat(t)}function o(e){return"".concat(s).concat(e,"-mobile")}function d(e){try{let t=window.localStorage.getItem(e);return(0,n.jg)(t)?t:null}catch(e){return null}}function c(e,t){try{window.localStorage.setItem(e,t)}catch(e){}}function u(e,t){var a;let s=void 0===t?function(){try{var e=window.location.search;if(!e)return null;try{let t=new URLSearchParams(e).get("view");return(0,n.jg)(t)?t:null}catch(e){return null}}catch(e){return null}}():t;return s?(c(e,s),s):(b||(b=!0,v()),null!=(a=d(e))?a:x())}let f=n.wf,m=new Set;function x(){var e;return null!=(e=d(r))?e:f}function p(e){if(!(0,n.jg)(e))return!1;let t=x()!==e;if(f=e,c(r,e),t)for(let e of m)e();return t}let g=null,h=!1,b=!1;async function v(){return h?x():g||("function"!=typeof fetch?x():g=(async()=>{try{let e=await fetch(l);if(e.ok){let t=await e.json();p(null==t?void 0:t.defaultSurfaceMode),h=!0}}catch(e){}finally{g=null}return x()})())}},24373:(e,t,a)=>{a.d(t,{Lv:()=>r});var n=a(12115),s=a(66966);function r(){let e=(0,s.rC)(),t=null==e?void 0:e.worktrees;return(0,n.useMemo)(()=>{let e=t?t.filter(e=>!0===e.isWaitingForResponse):[];return{count:e.length,worktrees:e}},[t])}a(44308)},40823:(e,t,a)=>{a.d(t,{NS:()=>i,V0:()=>o});var n=a(95155),s=a(12115);let r=()=>{},l=(0,s.createContext)({isOpen:!1,open:r,close:r});function i(e){let{children:t}=e,[a,r]=(0,s.useState)(!1),i=(0,s.useCallback)(()=>r(!0),[]),o=(0,s.useCallback)(()=>r(!1),[]),d=(0,s.useMemo)(()=>({isOpen:a,open:i,close:o}),[a,i,o]);return(0,n.jsx)(l.Provider,{value:d,children:t})}function o(){return(0,s.useContext)(l)}},44308:(e,t,a)=>{a.d(t,{$h:()=>u,DR:()=>s,IH:()=>d,Iu:()=>n,Nb:()=>f,SD:()=>r,_d:()=>o,bm:()=>m,ks:()=>i,t7:()=>c,z7:()=>l});let n=7e3,s=["in_review","approval","stalled"],r="in_review",l="filter",i="/review?".concat(l,"=approval");function o(e){return e&&s.includes(e)?e:null}let d=["claude","codex","copilot","antigravity","opencode"],c=1e3,u=5,f=100,m=1e3},58165:(e,t,a)=>{a.d(t,{uN:()=>k,gZ:()=>ea,O3:()=>G});var n=a(95155),s=a(12115),r=a(18955),l=a(5917),i=a(20562),o=a(8803),d=a(65229),c=a(6191),u=a(48407),f=a(54014),m=a(55449);function x(e){return!!e&&"object"==typeof e&&Array.isArray(e.defaultSelectedAgents)&&e.defaultSelectedAgents.length>0&&Array.isArray(e.available)&&e.available.length>0&&"number"==typeof e.minAgents&&"number"==typeof e.maxAgents}function p(){var e;let t=(0,r.c)("common"),[a,p]=(0,s.useState)(null),[g,h]=(0,s.useState)([]),[b,v]=(0,s.useState)(!0),[j,y]=(0,s.useState)("idle"),[N,w]=(0,s.useState)(null),k=(0,s.useCallback)(async()=>{try{let e=await fetch("".concat(m.zk,"?include=installed"));if(!e.ok)throw Error(String(e.status));let t=await e.json();if(!x(t))throw Error("unexpected body");p(t),h(t.defaultSelectedAgents),(0,m.IK)(t.defaultSelectedAgents)}catch(e){w(t("settings.defaultAgents.loadError"))}finally{v(!1)}},[t]);(0,s.useEffect)(()=>{k()},[k]);let C=(0,s.useCallback)(e=>{h(e),y("idle"),w(null)},[]),S=(0,s.useCallback)((e,t)=>{let a=e+t;if(a<0||a>=g.length)return;let n=[...g];[n[e],n[a]]=[n[a],n[e]],C(n)},[g,C]),A=(0,s.useCallback)(async e=>{y("saving"),w(null);try{let n=await fetch(m.zk,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({agents:e})}),s=await n.json().catch(()=>null);if(!n.ok||!x(s)){var a;y("error"),w(null!=(a=null==s?void 0:s.error)?a:t("settings.defaultAgents.saveError"));return}p(e=>({...s,installed:null==e?void 0:e.installed})),h(s.defaultSelectedAgents),(0,m.IK)(s.defaultSelectedAgents),y("saved")}catch(e){y("error"),w(t("settings.defaultAgents.saveError"))}},[t]);if(b)return(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),t("loadingPage")]})});if(!a)return(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"default-agents-load-error",children:null!=N?N:t("settings.defaultAgents.loadError")})});let E=null!=(e=a.installed)?e:[],P=a.available.filter(e=>!g.includes(e)),T=g.length<a.minAgents,M=g.length>a.maxAgents,I=!T&&!M&&"saving"!==j,O=e=>E.includes(e)?(0,n.jsxs)("span",{className:"inline-flex items-center gap-1 rounded bg-success-subtle px-1.5 py-0.5 text-xs text-success-foreground","data-testid":"default-agents-installed-".concat(e),children:[(0,n.jsx)(l.A,{className:"h-3 w-3","aria-hidden":"true"}),t("settings.defaultAgents.installed")]}):(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:t("settings.defaultAgents.notInstalled")});return(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"space-y-4","data-testid":"default-agents-settings",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:t("settings.defaultAgents.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultAgents.description")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultAgents.appliesToNew")})]}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"default-agents-selected",children:g.map((e,s)=>(0,n.jsxs)("li",{className:"flex items-center gap-2 rounded-md border border-border bg-surface px-3 py-2","data-testid":"default-agents-row-".concat(e),children:[(0,n.jsx)("span",{className:"w-6 text-xs text-muted-foreground",children:s+1}),(0,n.jsx)("span",{className:"text-sm text-foreground",children:(0,f.oo)(e)}),0===s&&(0,n.jsx)("span",{className:"rounded bg-info-subtle px-1.5 py-0.5 text-xs text-info-foreground","data-testid":"default-agents-primary-badge",children:t("settings.defaultAgents.primary")}),(0,n.jsx)("span",{className:"ml-auto",children:O(e)}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>S(s,-1),disabled:0===s,"aria-label":t("settings.defaultAgents.moveUp"),"data-testid":"default-agents-up-".concat(e),children:(0,n.jsx)(i.A,{className:"h-4 w-4","aria-hidden":"true"})}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>S(s,1),disabled:s===g.length-1,"aria-label":t("settings.defaultAgents.moveDown"),"data-testid":"default-agents-down-".concat(e),children:(0,n.jsx)(o.A,{className:"h-4 w-4","aria-hidden":"true"})}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>C(g.filter(t=>t!==e)),disabled:g.length<=a.minAgents,"aria-label":t("settings.defaultAgents.remove"),"data-testid":"default-agents-remove-".concat(e),children:(0,n.jsx)(d.A,{className:"h-4 w-4","aria-hidden":"true"})})]},e))}),P.length>0&&(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"mb-2 text-xs text-muted-foreground",children:t("settings.defaultAgents.addLabel")}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"default-agents-available",children:P.map(e=>(0,n.jsxs)("li",{className:"flex items-center gap-2 rounded-md border border-border px-3 py-2",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:(0,f.oo)(e)}),(0,n.jsx)("span",{className:"ml-auto",children:O(e)}),(0,n.jsx)("button",{type:"button",className:"rounded p-1 text-muted-foreground hover:bg-muted disabled:opacity-40",onClick:()=>C([...g,e]),disabled:g.length>=a.maxAgents,"aria-label":t("settings.defaultAgents.add"),"data-testid":"default-agents-add-".concat(e),children:(0,n.jsx)(c.A,{className:"h-4 w-4","aria-hidden":"true"})})]},e))})]}),(T||M)&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-agents-range-error",children:t("settings.defaultAgents.range",{min:a.minAgents,max:a.maxAgents})}),N&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-agents-error",children:N}),(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.$n,{size:"sm",onClick:()=>void A(g),disabled:!I,"data-testid":"default-agents-save",children:"saving"===j?t("settings.defaultAgents.saving"):t("settings.defaultAgents.save")}),(0,n.jsx)(u.$n,{size:"sm",variant:"ghost",onClick:()=>void A(null),disabled:!a.configured||"saving"===j,"data-testid":"default-agents-reset",children:t("settings.defaultAgents.reset")}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"default-agents-state",children:"saved"===j?t("settings.defaultAgents.saved"):a.configured?t("settings.defaultAgents.configured"):t("settings.defaultAgents.usingBuiltIn")})]}),a.configured&&(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"default-agents-builtin",children:t("settings.defaultAgents.builtIn",{agents:a.constantDefault.map(f.oo).join(", ")})})]})})}var g=a(17683),h=a(75676);function b(e){return!!e&&"object"==typeof e&&(0,h.jg)(e.defaultSurfaceMode)&&(0,h.jg)(e.constantDefault)&&Array.isArray(e.available)&&e.available.length>0&&e.available.every(h.jg)}function v(){var e;let t=(0,r.c)("common"),[a,l]=(0,s.useState)(null),[i,o]=(0,s.useState)(!0),[d,c]=(0,s.useState)("idle"),[f,m]=(0,s.useState)(null),x=(0,s.useCallback)(async()=>{try{let e=await fetch(g.wp);if(!e.ok)throw Error(String(e.status));let t=await e.json();if(!b(t))throw Error("unexpected body");l(t),(0,g.B1)(t.defaultSurfaceMode)}catch(e){m({kind:"load"})}finally{o(!1)}},[]);(0,s.useEffect)(()=>{x()},[x]);let p=(0,s.useCallback)(async e=>{c("saving"),m(null),l(t=>t?{...t,defaultSurfaceMode:e}:t);try{let t=await fetch(g.wp,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})}),a=await t.json().catch(()=>null);if(!t.ok||!b(a)){c("error"),m({kind:"save",detail:null==a?void 0:a.error}),x();return}l(a),(0,g.B1)(a.defaultSurfaceMode),c("saved")}catch(e){c("error"),m({kind:"save"}),x()}},[x]),h=f?null!=(e=f.detail)?e:t("load"===f.kind?"settings.defaultSurfaceMode.loadError":"settings.defaultSurfaceMode.saveError"):null;return i?(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),t("loadingPage")]})}):a?(0,n.jsx)(u.Zp,{children:(0,n.jsxs)("div",{className:"space-y-4","data-testid":"default-surface-mode-settings",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:t("settings.defaultSurfaceMode.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.description")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.appliesToNew")})]}),(0,n.jsx)("div",{role:"radiogroup","aria-label":t("settings.defaultSurfaceMode.title"),className:"space-y-2","data-selected":a.defaultSurfaceMode,children:a.available.map(e=>(0,n.jsxs)("label",{className:"flex cursor-pointer items-start gap-2 rounded-md border border-border bg-surface px-3 py-2","data-testid":"default-surface-mode-option-".concat(e),children:[(0,n.jsx)("input",{type:"radio",name:"default-surface-mode",value:e,className:"mt-0.5",checked:a.defaultSurfaceMode===e,disabled:"saving"===d,onChange:()=>void p(e),"data-testid":"default-surface-mode-radio-".concat(e)}),(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm text-foreground",children:t("settings.defaultSurfaceMode.mode.".concat(e))}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:t("settings.defaultSurfaceMode.hint.".concat(e))})]})]},e))}),h&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"default-surface-mode-error",children:h}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"default-surface-mode-state",children:"saving"===d?t("settings.defaultSurfaceMode.saving"):"saved"===d?t("settings.defaultSurfaceMode.saved"):a.configured?t("settings.defaultSurfaceMode.configured"):t("settings.defaultSurfaceMode.usingBuiltIn")})]})}):(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"default-surface-mode-load-error",children:null!=h?h:t("settings.defaultSurfaceMode.loadError")})})}var j=a(68695),y=a(52056),N=a(48314);function w(e){let t=e.trim();if(!t)return null;try{let e=JSON.parse(t);if(!e||"object"!=typeof e)return null;let a=e.type;if("plan"!==a&&"output"!==a&&"done"!==a)return null;return e}catch(e){return null}}function k(e){var t,a,l;let{worktreeId:i,instances:o,variant:d="card"}=e,c=(0,r.c)("common"),{versions:m,isLoading:x,loadError:p,run:g,isUpdating:h,update:b}=function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],[t,a]=(0,s.useState)(null),[n,r]=(0,s.useState)(!1),[l,i]=(0,s.useState)(e),[o,d]=(0,s.useState)(null),[c,u]=(0,s.useState)(!1),f=(0,s.useRef)(!0);(0,s.useEffect)(()=>(f.current=!0,()=>{f.current=!1}),[]);let m=(0,s.useCallback)(async function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e){i(!0);try{let e=await fetch("/api/agents/versions".concat(t?"?refresh=1":""));if(!e.ok)throw Error(String(e.status));let n=await e.json();if(!(n&&"object"==typeof n&&Array.isArray(n.tools)&&Array.isArray(n.updatable)))throw Error("unexpected body");if(!f.current)return;a(n.tools),r(!1)}catch(e){if(!f.current)return;r(!0)}finally{f.current&&i(!1)}}},[e]);(0,s.useEffect)(()=>{m(!1)},[m]);let x=(0,s.useCallback)(async e=>{if(c)return;u(!0),d({tool:e,command:null,output:"",ok:null,previousVersion:null,installed:null,error:null});let t=e=>{f.current&&d(t=>t?{...t,ok:!1,error:e}:t)};try{var a,n;let s=await fetch("/api/agents/update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tool:e})});if(!s.ok||!s.body){let e=await s.json().catch(()=>null);t(null!=(a=null==e?void 0:e.error)?a:"Request failed (".concat(s.status,")"));return}let r=s.body.getReader(),l=new TextDecoder,i="",o=e=>{f.current&&d(t=>{var a;return t?"plan"===e.type?{...t,command:e.command}:"output"===e.type?{...t,output:t.output+e.text}:{...t,ok:e.ok,previousVersion:e.previousVersion,installed:e.installed,error:null!=(a=e.error)?a:null}:t})};for(;;){let{done:e,value:t}=await r.read();if(e)break;let a=(i+=l.decode(t,{stream:!0})).split("\n");for(let e of(i=null!=(n=a.pop())?n:"",a)){let t=w(e);t&&o(t)}}let c=w(i);c&&o(c)}catch(e){t(e instanceof Error?e.message:String(e))}finally{f.current&&u(!1),await m(!0)}},[c,m]);return{versions:t,isLoading:l,loadError:n,run:o,isUpdating:c,reload:m,update:x}}(!0),[v,k]=(0,s.useState)(0),C=function(e,t,a){let[n,r]=(0,s.useState)({});return(0,s.useEffect)(()=>{if(!e||!t||0===t.length)return void r({});let a=!1;return(async()=>{try{let t=await fetch("/api/worktrees/".concat(e));if(!t.ok)return;let n=await t.json();if(a)return;let s=n.sessionStatusByInstance,l={};for(let[e,t]of Object.entries(null!=s?s:{}))(null==t?void 0:t.isRunning)&&(l[e]=!0);r(l)}catch(e){}})(),()=>{a=!0}},[e,t,a]),n}(i,o,v),[S,A]=(0,s.useState)({}),[E,P]=(0,s.useState)(null),T=(0,s.useRef)(null);(0,s.useEffect)(()=>{T.current&&(T.current.scrollTop=T.current.scrollHeight)},[null==g?void 0:g.output]);let M=(null==g?void 0:g.ok)===!0;(0,s.useEffect)(()=>{M&&k(e=>e+1)},[M]);let I=(0,s.useCallback)(e=>(null!=o?o:[]).filter(t=>t.cliTool===e&&C[t.id]),[o,C]),O=(0,s.useCallback)(async e=>{if(i){P(null);try{let t=new URLSearchParams({cliTool:e.cliTool,instance:e.id}),a=await fetch("/api/worktrees/".concat(i,"/kill-session?").concat(t.toString()),{method:"POST"});if(!a.ok&&404!==a.status)throw Error(String(a.status));A(t=>({...t,[e.id]:!0})),k(e=>e+1)}catch(e){P(c("agentUpdates.restartError"))}}},[i,c]),R=x&&!m?(0,n.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,n.jsx)(u.y$,{size:"sm"}),c("loadingPage")]}):p&&!m?(0,n.jsx)("div",{className:"text-sm text-danger-foreground","data-testid":"agent-updates-load-error",children:c("agentUpdates.loadError")}):(0,n.jsxs)("div",{className:"space-y-3","data-testid":"agent-updates",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:c("agentUpdates.title")}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:c("agentUpdates.description")})]}),(0,n.jsx)("ul",{className:"space-y-2","data-testid":"agent-updates-rows",children:(null!=m?m:[]).map(e=>{var t,a;let s=I(e.tool),r=e.updatable&&null!==e.installed;return(0,n.jsxs)("li",{className:"rounded-md border border-border bg-surface px-3 py-2","data-testid":"agent-updates-row-".concat(e.tool),children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:(a=e.tool,(0,f.oo)(a)||a)}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-installed-".concat(e.tool),children:e.installed?c("agentUpdates.installed",{version:e.installed}):c("agentUpdates.notInstalled")}),e.updateAvailable&&(0,n.jsx)("span",{className:"rounded bg-info-subtle px-1.5 py-0.5 text-xs text-info-foreground","data-testid":"agent-updates-available-".concat(e.tool),children:c("agentUpdates.available",{version:null!=(t=e.latestVersion)?t:""})}),e.dismissedInCodex&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-dismissed-".concat(e.tool),children:c("agentUpdates.dismissed")}),r&&(0,n.jsxs)(u.$n,{size:"sm",className:"ml-auto",disabled:h,onClick:()=>void b(e.tool),"data-testid":"agent-updates-update-".concat(e.tool),children:[(0,n.jsx)(j.A,{className:"h-4 w-4","aria-hidden":"true"}),h&&(null==g?void 0:g.tool)===e.tool?c("agentUpdates.updating"):c("agentUpdates.update")]})]}),r&&s.length>0&&(0,n.jsxs)("div",{className:"mt-2 flex items-start gap-1 text-xs text-warning-foreground","data-testid":"agent-updates-restart-warning-".concat(e.tool),children:[(0,n.jsx)(y.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":"true"}),(0,n.jsx)("span",{children:c("agentUpdates.restartWarning",{sessions:s.map(e=>e.alias).join(", ")})})]}),r&&0===s.length&&void 0===i&&(0,n.jsx)("p",{className:"mt-2 text-xs text-muted-foreground","data-testid":"agent-updates-restart-notice-".concat(e.tool),children:c("agentUpdates.restartNotice")}),M&&(null==g?void 0:g.tool)===e.tool&&s.map(e=>(0,n.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,n.jsxs)(u.$n,{size:"sm",variant:"ghost",disabled:S[e.id],onClick:()=>void O(e),"data-testid":"agent-updates-restart-".concat(e.id),children:[(0,n.jsx)(N.A,{className:"h-4 w-4","aria-hidden":"true"}),c("agentUpdates.restart",{alias:e.alias})]}),S[e.id]&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:c("agentUpdates.restarted")})]},e.id))]},e.tool)})}),g&&(0,n.jsxs)("div",{className:"space-y-2","data-testid":"agent-updates-run",children:[g.command&&(0,n.jsx)("div",{className:"text-xs text-muted-foreground","data-testid":"agent-updates-command",children:c("agentUpdates.running",{command:g.command})}),g.output&&(0,n.jsx)("pre",{ref:T,"data-testid":"agent-updates-output",className:"max-h-48 overflow-auto whitespace-pre-wrap rounded-md bg-terminal-surface p-2 text-xs text-terminal-foreground",children:g.output}),!0===g.ok&&(0,n.jsx)("div",{className:"text-xs text-success-foreground","data-testid":"agent-updates-success",children:c("agentUpdates.succeeded",{from:null!=(t=g.previousVersion)?t:"?",to:null!=(a=g.installed)?a:"?"})}),!1===g.ok&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"agent-updates-failure",children:c("agentUpdates.failed",{error:null!=(l=g.error)?l:""})})]}),E&&(0,n.jsx)("div",{className:"text-xs text-danger-foreground","data-testid":"agent-updates-restart-error",children:E})]});return"plain"===d?R:(0,n.jsx)(u.Zp,{children:R})}var C=a(52619),S=a.n(C);function A(e){var t;let{appId:a,pollInterval:l=3e4,showResponseTime:i=!1,compact:o=!1}=e,d=(0,r.c)("externalApps"),[c,u]=(0,s.useState)(null),[f,m]=(0,s.useState)(!0),x=(0,s.useCallback)(async()=>{try{let e=await fetch("/api/external-apps/".concat(a,"/health"));if(e.ok){let t=await e.json();u(t)}else u({id:a,healthy:!1,lastChecked:Date.now(),error:"Failed to check health"})}catch(e){u({id:a,healthy:!1,lastChecked:Date.now(),error:"Network error"})}finally{m(!1)}},[a]);if((0,s.useEffect)(()=>{x();let e=setInterval(x,l);return()=>clearInterval(e)},[x,l]),f)return(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full bg-muted-foreground animate-pulse"}),!o&&(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:d("status.checking")})]});let p=null!=(t=null==c?void 0:c.healthy)&&t,g=p?"bg-success":"bg-muted-foreground",h=d(p?"status.running":"status.stopped");return o?(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full ".concat(g),title:h}):(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"inline-block h-2.5 w-2.5 rounded-full ".concat(g)}),(0,n.jsx)("span",{className:"text-xs ".concat(p?"text-success-foreground":"text-muted-foreground"),children:h}),i&&(null==c?void 0:c.responseTime)!==void 0&&(0,n.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",c.responseTime,"ms)"]})]})}function E(e){var t;let{app:a,onEdit:l,onDelete:i}=e,o=(0,r.c)("externalApps"),d=(0,r.c)("common"),[c,f]=(0,s.useState)(!1),[m,x]=(0,s.useState)(!1),p=async()=>{x(!0);try{await i(a.id)}finally{x(!1),f(!1)}},g="/proxy/".concat(a.pathPrefix,"/");return(0,n.jsxs)(u.Zp,{padding:"md",className:"relative",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between mb-3",children:[(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsx)("h4",{className:"text-base font-semibold text-foreground truncate",children:a.displayName}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5 font-mono truncate",children:a.name})]}),(0,n.jsx)(u.Ex,{variant:{sveltekit:"warning",streamlit:"error",nextjs:"info",other:"gray"}[a.appType]||"gray",children:{sveltekit:"SvelteKit",streamlit:"Streamlit",nextjs:"Next.js",other:"Other"}[t=a.appType]||t})]}),(0,n.jsxs)("div",{className:"space-y-2 mb-4",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.status")}),(0,n.jsx)(A,{appId:a.id,pollInterval:3e4})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.port")}),(0,n.jsxs)("span",{className:"text-sm font-mono text-foreground",children:[":",a.targetPort]})]}),(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.path")}),(0,n.jsxs)("span",{className:"text-sm font-mono text-foreground truncate max-w-[150px]",children:["/proxy/",a.pathPrefix,"/"]})]}),a.websocketEnabled&&(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:o("card.websocket")}),(0,n.jsx)(u.Ex,{variant:"info",children:o("card.enabled")})]}),!a.enabled&&(0,n.jsx)("div",{className:"mt-2 py-1 px-2 bg-warning-subtle border border-warning-border rounded text-xs text-warning-foreground",children:o("card.disabledNotice")})]}),c?(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:o("card.deleteConfirm",{name:a.displayName})}),(0,n.jsxs)("div",{className:"flex gap-2",children:[(0,n.jsx)(u.$n,{variant:"danger",size:"sm",onClick:p,disabled:m,loading:m,children:o("card.delete")}),(0,n.jsx)(u.$n,{variant:"ghost",size:"sm",onClick:()=>f(!1),disabled:m,children:d("cancel")})]})]}):(0,n.jsxs)("div",{className:"flex gap-2 flex-wrap",children:[(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:()=>window.open(g,"_blank"),disabled:!a.enabled,children:o("card.open")}),(0,n.jsx)(u.$n,{variant:"secondary",size:"sm",onClick:()=>l(a),children:o("card.settings")}),(0,n.jsx)(u.$n,{variant:"ghost",size:"sm",onClick:()=>f(!0),className:"text-danger-foreground hover:bg-danger-subtle",children:o("card.delete")})]})]})}var P=a(87531);let T={MIN:1024,MAX:65535},M=/^[a-zA-Z0-9-]+$/,I={sveltekit:"SvelteKit",streamlit:"Streamlit",nextjs:"Next.js",other:"Other"},O=["sveltekit","streamlit","nextjs","other"].map(e=>({value:e,label:I[e]}));function R(e){let{isOpen:t,onClose:a,editApp:l,onSave:i}=e,o=(0,r.c)("externalApps"),d=(0,r.c)("common"),c=!!l,[f,m]=(0,s.useState)(""),[x,p]=(0,s.useState)(""),[g,h]=(0,s.useState)(""),[b,v]=(0,s.useState)(""),[j,y]=(0,s.useState)(""),[N,w]=(0,s.useState)(!1),[k,C]=(0,s.useState)(""),[S,A]=(0,s.useState)(!0),[E,I]=(0,s.useState)({}),[R,U]=(0,s.useState)(!1),[L,z]=(0,s.useState)(null);(0,s.useEffect)(()=>{t&&(l?(m(l.displayName),p(l.name),h(l.pathPrefix),v(l.targetPort),y(l.appType),w(l.websocketEnabled),C(l.description||""),A(l.enabled)):(m(""),p(""),h(""),v(""),y(""),w(!1),C(""),A(!0)),I({}),z(null))},[t,l]);let $=async e=>{e.preventDefault(),z(null);let t=function(e,t){var a,n,s,r;let l={};return((null==(a=e.displayName)?void 0:a.trim())||(l.displayName="Display name is required"),!t&&((null==(n=e.name)?void 0:n.trim())?M.test(e.name)||(l.name="Only alphanumeric characters and hyphens are allowed"):l.name="Identifier name is required",(null==(s=e.pathPrefix)?void 0:s.trim())?M.test(e.pathPrefix)||(l.pathPrefix="Only alphanumeric characters and hyphens are allowed"):l.pathPrefix="Path prefix is required"),e.targetPort)?"number"!=typeof e.targetPort||Number.isInteger(r=e.targetPort)&&r>=T.MIN&&r<=T.MAX||(l.targetPort="Port must be between ".concat(T.MIN," and ").concat(T.MAX)):l.targetPort="Port number is required",t||e.appType||(l.appType="App type is required"),l}({displayName:f,name:x,pathPrefix:g,targetPort:b,appType:j},c);if(Object.keys(t).length>0)return void I(t);I({}),U(!0);try{if(c&&l){let e=await fetch("/api/external-apps/".concat(l.id),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({displayName:f,description:k||void 0,targetPort:b||void 0,websocketEnabled:N,enabled:S})});if(!e.ok){let t=await e.json();throw Error(t.error||o("form.updateFailed"))}}else{let e=await fetch("/api/external-apps",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({displayName:f,name:x,pathPrefix:g,targetPort:b,appType:j,websocketEnabled:N,description:k||void 0})});if(!e.ok){let t=await e.json();throw Error(t.error||o("form.createFailed"))}}i(),a()}catch(e){z(e instanceof Error?e.message:o("form.genericError"))}finally{U(!1)}};return(0,n.jsx)(u.Jh,{isOpen:t,onClose:a,title:c?o("form.editTitle"):o("form.addTitle"),size:"md",children:(0,n.jsxs)("form",{onSubmit:$,className:"space-y-4",children:[(0,n.jsx)("div",{className:"rounded-md bg-warning-subtle p-3 mb-4 border border-warning-border",children:(0,n.jsx)("p",{className:"text-sm text-warning-foreground",children:o("form.securityWarning")})}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"displayName",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.displayName")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"displayName",type:"text",value:f,onChange:e=>m(e.target.value),className:E.displayName?"border-danger":"",placeholder:o("form.displayNamePlaceholder"),disabled:R}),E.displayName&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.displayName})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"name",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.identifierName")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"name",type:"text",value:x,onChange:e=>p(e.target.value),className:"font-mono ".concat(E.name?"border-danger":""),placeholder:o("form.identifierNamePlaceholder"),disabled:R}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.identifierNameHelp")}),E.name&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.name})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"pathPrefix",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.pathPrefix")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsxs)("div",{className:"flex items-center",children:[(0,n.jsx)("span",{className:"text-sm text-muted-foreground mr-1",children:"/proxy/"}),(0,n.jsx)(u.pd,{id:"pathPrefix",type:"text",value:g,onChange:e=>h(e.target.value),className:"w-auto flex-1 font-mono ".concat(E.pathPrefix?"border-danger":""),placeholder:o("form.pathPrefixPlaceholder"),disabled:R}),(0,n.jsx)("span",{className:"text-sm text-muted-foreground ml-1",children:"/"})]}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.pathPrefixHelp")}),E.pathPrefix&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.pathPrefix})]}),(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"targetPort",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.portNumber")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsx)(u.pd,{id:"targetPort",type:"number",value:b,onChange:e=>v(e.target.value?parseInt(e.target.value,10):""),className:"font-mono ".concat(E.targetPort?"border-danger":""),placeholder:o("form.portNumberPlaceholder"),min:T.MIN,max:T.MAX,disabled:R}),(0,n.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:o("form.portNumberHelp",{min:T.MIN,max:T.MAX})}),E.targetPort&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.targetPort})]}),!c&&(0,n.jsxs)("div",{children:[(0,n.jsxs)("label",{htmlFor:"appType",className:"block text-sm font-medium text-foreground mb-1",children:[o("form.appType")," ",(0,n.jsx)("span",{className:"text-danger",children:"*"})]}),(0,n.jsxs)("select",{id:"appType",value:j,onChange:e=>y(e.target.value),className:(0,P.cn)((0,u.j1)(),E.appType&&"border-danger"),disabled:R,children:[(0,n.jsx)("option",{value:"",children:o("form.appTypePlaceholder")}),O.map(e=>(0,n.jsx)("option",{value:e.value,children:e.label},e.value))]}),E.appType&&(0,n.jsx)("p",{className:"mt-1 text-xs text-danger",children:E.appType})]}),(0,n.jsxs)("div",{children:[(0,n.jsx)("label",{htmlFor:"description",className:"block text-sm font-medium text-foreground mb-1",children:o("form.description")}),(0,n.jsx)(u.k_,{id:"description",value:k,onChange:e=>C(e.target.value),placeholder:o("form.descriptionPlaceholder"),rows:2,disabled:R})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.dO,{id:"websocketEnabled",checked:N,onCheckedChange:w,disabled:R}),(0,n.jsx)("label",{htmlFor:"websocketEnabled",className:"text-sm text-foreground",children:o("form.websocketLabel")})]}),c&&(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(u.dO,{id:"enabled",checked:S,onCheckedChange:A,disabled:R}),(0,n.jsx)("label",{htmlFor:"enabled",className:"text-sm text-foreground",children:o("form.enabledLabel")})]}),L&&(0,n.jsx)("div",{className:"p-3 bg-danger-subtle border border-danger-border rounded text-sm text-danger-foreground",children:L}),(0,n.jsxs)("div",{className:"flex justify-end gap-2 pt-4 border-t border-border",children:[(0,n.jsx)(u.$n,{type:"button",variant:"ghost",onClick:a,disabled:R,children:d("cancel")}),(0,n.jsx)(u.$n,{type:"submit",variant:"primary",loading:R,children:c?o("form.save"):o("form.add")})]})]})})}function U(){let e=(0,r.c)("externalApps"),t=(0,r.c)("common"),[a,l]=(0,s.useState)([]),[i,o]=(0,s.useState)(!0),[d,c]=(0,s.useState)(null),[f,m]=(0,s.useState)(!1),[x,p]=(0,s.useState)(null),g=(0,s.useCallback)(async()=>{try{c(null);let e=await fetch("/api/external-apps");if(!e.ok)throw Error("Failed to fetch external apps");let t=await e.json();l(t.apps||[])}catch(e){c(e instanceof Error?e.message:"An error occurred")}finally{o(!1)}},[]);(0,s.useEffect)(()=>{g();let e=setInterval(g,6e4);return()=>clearInterval(e)},[g]);let h=(0,s.useCallback)(e=>{p(e),m(!0)},[]),b=(0,s.useCallback)(()=>{p(null),m(!0)},[]),v=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/external-apps/".concat(e),{method:"DELETE"});if(!t.ok){let e=await t.json();throw Error(e.error||"Failed to delete app")}g()}catch(e){console.error("Failed to delete app:",e)}},[g]),j=(0,s.useCallback)(()=>{g()},[g]),y=(0,s.useCallback)(()=>{m(!1),p(null)},[]);return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("div",{className:"flex items-center justify-end",children:(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:b,children:e("manager.addApp")})}),i?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"flex items-center justify-center py-8",children:[(0,n.jsx)(u.y$,{size:"xl",variant:"accent"}),(0,n.jsx)("span",{className:"ml-3 text-muted-foreground",children:e("manager.loading")})]})}):d?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"text-center py-8",children:[(0,n.jsx)("p",{className:"text-danger-foreground mb-4",children:e("manager.loadError")}),(0,n.jsx)(u.$n,{variant:"secondary",size:"sm",onClick:g,children:t("retry")})]})}):0===a.length?(0,n.jsx)(u.Zp,{padding:"lg",children:(0,n.jsxs)("div",{className:"text-center py-8",children:[(0,n.jsx)("p",{className:"text-muted-foreground mb-4",children:e("manager.empty")}),(0,n.jsx)("p",{className:"text-sm text-muted-foreground mb-4",children:e("manager.emptyHelp")}),(0,n.jsx)(u.$n,{variant:"primary",size:"sm",onClick:b,children:e("manager.addFirst")})]})}):(0,n.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:a.map(e=>(0,n.jsx)(E,{app:e,onEdit:h,onDelete:v},e.id))}),(0,n.jsx)(R,{isOpen:f,onClose:y,editApp:x,onSave:j})]})}var L=a(85998),z=a(94442),$=a(59597);function F(){return"undefined"!=typeof navigator&&"serviceWorker"in navigator&&"PushManager"in window&&"Notification"in window}let D={enabled:!0,thresholdMinutes:10},Z=[5,10,30,60];function H(){let e=(0,r.c)("notifications"),{showToast:t}=(0,z.dj)(),[a,l]=(0,s.useState)(!0),[i,o]=(0,s.useState)(!1),[d,c]=(0,s.useState)(!0),[f,m]=(0,s.useState)(!1),[x,p]=(0,s.useState)(null),[g,h]=(0,s.useState)(null),[b,v]=(0,s.useState)(!1),[j,y]=(0,s.useState)(null),[N,w]=(0,s.useState)({prompt:!0,completion:!1}),[k,C]=(0,s.useState)(!1),[S,A]=(0,s.useState)(null),[E,P]=(0,s.useState)(null),T=null!==j&&!1!==E;(0,s.useEffect)(()=>{let e=!1;return(async()=>{let t=function(){var e,t;let a=F(),n="undefined"!=typeof navigator&&(!!/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!(null!=(e=(t=window).matchMedia)&&e.call(t,"(display-mode: standalone)").matches||!0===navigator.standalone);return{supported:a&&!n,iosNeedsInstall:n}}();e||(c(F()),m(t.iosNeedsInstall),"undefined"!=typeof Notification&&"denied"===Notification.permission&&v(!0));try{let t=await fetch("/api/push/vapid"),a=await t.json();e||(p(a.configured),h(a.publicKey))}catch(t){e||p(!1)}if(F())try{let t=await navigator.serviceWorker.getRegistration(),n=t?await t.pushManager.getSubscription():null;if(n&&!e){y(n.endpoint);let t=await fetch("/api/push/subscriptions?endpoint=".concat(encodeURIComponent(n.endpoint))),s=await t.json();if(!e){var a;P(!0===s.subscribed),A(null!=(a=s.delivery)?a:null)}s.subscribed&&s.subscription&&!e&&(w(s.subscription.preferences),C(!0===s.subscription.defaultsNoticePending))}}catch(e){}e||l(!1)})(),()=>{e=!0}},[]);let M=(0,s.useCallback)(async()=>{if(g){o(!0);try{var a,n;let s=await Notification.requestPermission();if("granted"!==s){v("denied"===s),t(e("toast.error"),"error");return}if(!await navigator.serviceWorker.getRegistration())return void t(e("toast.error"),"error");let r=await navigator.serviceWorker.ready,l=await r.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:function(e){let t="=".repeat((4-e.length%4)%4),a=atob((e+t).replace(/-/g,"+").replace(/_/g,"/")),n=new Uint8Array(new ArrayBuffer(a.length));for(let e=0;e<a.length;e++)n[e]=a.charCodeAt(e);return n}(g)}),i=await fetch("/api/push/subscriptions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({subscription:l.toJSON(),deviceLabel:navigator.userAgent.slice(0,120)})});if(!i.ok)throw Error("subscribe request failed");let o=await i.json();y(l.endpoint),P(!0),A(null),(null==(a=o.subscription)?void 0:a.preferences)&&w(o.subscription.preferences),C((null==(n=o.subscription)?void 0:n.defaultsNoticePending)===!0),v(!1),t(e("toast.enabled"),"success")}catch(a){t(e("toast.error"),"error")}finally{o(!1)}}},[g,t,e]),I=(0,s.useCallback)(async()=>{o(!0);try{var a;let n=await navigator.serviceWorker.getRegistration(),s=n?await n.pushManager.getSubscription():null,r=null!=(a=null==s?void 0:s.endpoint)?a:j;s&&await s.unsubscribe(),r&&await fetch("/api/push/subscriptions",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:r})}),y(null),P(null),A(null),t(e("toast.disabled"),"info")}catch(a){t(e("toast.error"),"error")}finally{o(!1)}},[j,t,e]),O=(0,s.useCallback)(async(a,n)=>{if(!j)return;let s={...N,[a]:n};w(s);try{if(!(await fetch("/api/push/subscriptions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:j,preferences:s})})).ok)throw Error("update failed");t(e("toast.updated"),"success")}catch(a){w(N),t(e("toast.error"),"error")}},[j,N,t,e]),R=(0,s.useCallback)(async a=>{if(!j)return;let n=a?{...N,completion:!1}:N;C(!1),a&&w(n),o(!0);try{if(!(await fetch("/api/push/subscriptions",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({endpoint:j,...a?{preferences:n}:{},acknowledgeDefaultsNotice:!0})})).ok)throw Error("acknowledge failed");t(e(a?"defaultsNotice.adopted":"defaultsNotice.kept"),"success")}catch(a){w(N),C(!0),t(e("toast.error"),"error")}finally{o(!1)}},[j,N,t,e]);return(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(u.Zp,{children:(0,n.jsx)(q,{})}),(0,n.jsx)(u.Zp,{children:a?(0,n.jsx)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:(0,n.jsx)(u.y$,{size:"sm"})}):d?f?(0,n.jsx)("p",{className:"text-sm text-muted-foreground","data-testid":"notifications-ios-guidance",children:e("ios.guidance")}):!1===x?(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("notConfigured")}):(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("description")}),b&&(0,n.jsx)("p",{className:"text-sm text-danger-foreground","data-testid":"notifications-permission-denied",children:e("permission.denied")}),(()=>{if(null===S)return null;let t="removed"===S.state,a=S.statusCode,s=t?null===a?e("delivery.removedUnknownStatus"):e("delivery.removed",{status:String(a)}):null===a?e("delivery.failingUnknownStatus",{count:S.failureCount}):e("delivery.failing",{count:S.failureCount,status:String(a)});return(0,n.jsxs)("div",{className:t?"space-y-2 rounded-lg border border-danger-border bg-danger-subtle p-3":"space-y-2 rounded-lg border border-warning-border bg-warning-subtle p-3","data-testid":"notifications-delivery-health","data-delivery-state":S.state,children:[(0,n.jsx)("p",{className:t?"text-sm font-semibold text-danger-foreground":"text-sm font-semibold text-warning-foreground",children:e(t?"delivery.headingRemoved":"delivery.headingFailing")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:s}),403===a&&(0,n.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"notifications-delivery-apns-hint",children:e("delivery.apnsHint")}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:e("delivery.since",{timestamp:new Date(S.firstFailureAt).toLocaleString()})})]})})(),T?(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("p",{className:"text-sm font-medium text-foreground",children:e("enabledOnThisDevice")}),k&&(0,n.jsxs)("div",{className:"space-y-3 rounded-lg border border-info-border bg-info-subtle p-3","data-testid":"notifications-defaults-notice",children:[(0,n.jsx)("p",{className:"text-sm font-semibold text-info-foreground",children:e("defaultsNotice.heading")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:e("defaultsNotice.completionChanged")}),(0,n.jsx)("p",{className:"text-xs text-foreground",children:e("defaultsNotice.failuresAdded")}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,n.jsx)(u.$n,{variant:"primary",onClick:()=>R(!0),disabled:i,"data-testid":"notifications-defaults-notice-adopt",children:e("defaultsNotice.adopt")}),(0,n.jsx)(u.$n,{variant:"secondary",onClick:()=>R(!1),disabled:i,"data-testid":"notifications-defaults-notice-keep",children:e("defaultsNotice.keep")})]})]}),(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("types.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("types.promptWaiting")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("types.promptWaitingDesc")})]}),(0,n.jsx)(u.dO,{checked:N.prompt,onCheckedChange:e=>O("prompt",e),disabled:i,"aria-label":e("types.promptWaiting"),"data-testid":"notifications-toggle-prompt"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("types.completion")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("types.completionDesc")})]}),(0,n.jsx)(u.dO,{checked:N.completion,onCheckedChange:e=>O("completion",e),disabled:i,"aria-label":e("types.completion"),"data-testid":"notifications-toggle-completion"})]})]}),(0,n.jsx)(u.$n,{variant:"secondary",onClick:I,disabled:i,"data-testid":"notifications-unsubscribe",children:e("unsubscribe")})]}):(0,n.jsxs)(u.$n,{variant:"primary",onClick:M,disabled:i||b||!g,"data-testid":"notifications-enable",children:[(0,n.jsx)(L.A,{className:"h-4 w-4"}),i?e("enabling"):e("enable")]})]}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:e("unsupported")})}),(0,n.jsx)(u.Zp,{children:(0,n.jsx)(W,{})})]})}function W(){let e=(0,r.c)("notifications"),{showToast:t}=(0,z.dj)(),[a,l]=(0,s.useState)(!0),[i,o]=(0,s.useState)(!1),[d,c]=(0,s.useState)(D),[f,m]=(0,s.useState)([...Z]);(0,s.useEffect)(()=>{let e=!1;return(async()=>{try{let t=await fetch("/api/push/escalation"),a=await t.json();!e&&(a.settings&&c(a.settings),Array.isArray(a.choices)&&a.choices.length>0&&m(a.choices))}catch(e){}finally{e||l(!1)}})(),()=>{e=!0}},[]);let x=(0,s.useCallback)(async a=>{c(a),o(!0);try{if(!(await fetch("/api/push/escalation",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:a})})).ok)throw Error("update failed");t(e("toast.updated"),"success")}catch(a){c(d),t(e("toast.error"),"error")}finally{o(!1)}},[d,t,e]);return(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("escalation.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("escalation.toggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("escalation.toggleDesc")})]}),(0,n.jsx)(u.dO,{checked:d.enabled,onCheckedChange:e=>x({...d,enabled:e}),disabled:a||i,"aria-label":e("escalation.toggle"),"data-testid":"notifications-toggle-escalation"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsx)("span",{className:"text-sm text-foreground",children:e("escalation.threshold")}),(0,n.jsx)("select",{className:"rounded-md border border-border bg-background px-2 py-1 text-sm text-foreground",value:String(d.thresholdMinutes),disabled:a||i||!d.enabled,"aria-label":e("escalation.threshold"),"data-testid":"notifications-escalation-threshold",onChange:e=>x({...d,thresholdMinutes:Number(e.target.value)}),children:f.map(t=>(0,n.jsx)("option",{value:String(t),children:e("escalation.minutes",{count:t})},t))})]})]})}function q(){let e=(0,r.c)("notifications"),{enabled:t,setEnabled:a}=(0,$.qG)(),{enabled:s,setEnabled:l}=(0,$.Ql)();return(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:e("inApp.heading")}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("inApp.waitingToggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("inApp.waitingToggleDesc")})]}),(0,n.jsx)(u.dO,{checked:t,onCheckedChange:a,"aria-label":e("inApp.waitingToggle"),"data-testid":"notifications-toggle-inapp-waiting"})]}),(0,n.jsxs)("label",{className:"flex items-center justify-between gap-4",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e("inApp.soundToggle")}),(0,n.jsx)("span",{className:"block text-xs text-muted-foreground",children:e("inApp.soundToggleDesc")})]}),(0,n.jsx)(u.dO,{checked:s,onCheckedChange:l,"aria-label":e("inApp.soundToggle"),"data-testid":"notifications-toggle-inapp-sound"})]})]})}function _(e){let{heading:t,children:a}=e;return(0,n.jsxs)("div",{className:"mb-8",children:[(0,n.jsx)("h2",{className:"text-lg font-semibold mb-4 text-foreground",children:t}),a]})}function B(e){let{onNavigate:t}=e,a=(0,r.c)("common"),s=(0,r.c)("skills");return(0,n.jsx)(_,{heading:a("settings.sections.quickLinks"),children:(0,n.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[(0,n.jsx)(S(),{href:"/repositories",className:"block","data-testid":"more-link-repositories",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:"Repositories"}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:"Manage repositories and worktrees"})]})}),(0,n.jsx)(S(),{href:"/skills",className:"block","data-testid":"more-link-skills",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:a("nav.skills")}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:s("page.description")})]})}),(0,n.jsx)(S(),{href:"/skills/installed",className:"block","data-testid":"more-link-skills-installed",onClick:t,children:(0,n.jsxs)(u.Zp,{hover:!0,className:"transition-colors hover:border-accent-300 dark:hover:border-accent-700",children:[(0,n.jsx)("div",{className:"text-sm font-medium text-foreground",children:s("dashboard.title")}),(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:s("dashboard.description")})]})})]})})}function J(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.general"),children:(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)(p,{}),(0,n.jsx)(v,{}),(0,n.jsx)(k,{})]})})}function V(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.notifications"),children:(0,n.jsx)(H,{})})}function K(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.externalApps"),children:(0,n.jsx)(U,{})})}function X(){let e=(0,r.c)("common");return(0,n.jsx)(_,{heading:e("settings.sections.about"),children:(0,n.jsx)(u.Zp,{children:(0,n.jsx)("div",{className:"text-sm text-muted-foreground",children:"CommandMate - A local control plane for agent CLIs."})})})}function G(){return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(B,{}),(0,n.jsx)(J,{}),(0,n.jsx)(V,{}),(0,n.jsx)(K,{}),(0,n.jsx)(X,{})]})}a(72604),a(95275),a(79832);var Q=a(94465),Y=a(23838),ee=a(40823);let et=[{id:"general",labelKey:"settings.sections.general"},{id:"notifications",labelKey:"settings.sections.notifications"},{id:"externalApps",labelKey:"settings.sections.externalApps"},{id:"about",labelKey:"settings.sections.about"}];function ea(){let e=(0,r.c)("common"),{isOpen:t,close:a}=(0,ee.V0)();return(0,n.jsx)(Q.a,{isOpen:t,onClose:a,title:e("settings.title"),size:"lg",children:(0,n.jsxs)(Y.tU,{defaultValue:"general",orientation:"vertical",variant:"pill",className:"flex gap-6 min-h-[60vh]","data-testid":"settings-dialog",children:[(0,n.jsx)(Y.j7,{"aria-label":e("settings.categoriesLabel"),className:"sticky top-0 w-40 shrink-0 flex-col items-stretch self-start",children:et.map(t=>(0,n.jsx)(Y.Xi,{value:t.id,"data-testid":"settings-dialog-tab-".concat(t.id),className:"justify-start",children:e(t.labelKey)},t.id))}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)(Y.av,{value:"general",className:"mt-0",children:(0,n.jsx)(J,{})}),(0,n.jsx)(Y.av,{value:"notifications",className:"mt-0",children:(0,n.jsx)(V,{})}),(0,n.jsx)(Y.av,{value:"externalApps",className:"mt-0",children:(0,n.jsx)(K,{})}),(0,n.jsxs)(Y.av,{value:"about",className:"mt-0",children:[(0,n.jsx)(B,{onNavigate:a}),(0,n.jsx)(X,{})]})]})]})})}},59597:(e,t,a)=>{a.d(t,{Ql:()=>o,qG:()=>l});var n=a(12115);let s="mcbd-inapp-waiting-toast",r="mcbd:inapp-notification-prefs-changed";function l(){let[e,t]=(0,n.useState)(!0);return(0,n.useEffect)(()=>{let e=()=>t(function(){try{let e=window.localStorage.getItem(s);if(null===e)return!0;return"false"!==e}catch(e){return!0}}());return e(),window.addEventListener(r,e),window.addEventListener("storage",e),()=>{window.removeEventListener(r,e),window.removeEventListener("storage",e)}},[]),{enabled:e,setEnabled:(0,n.useCallback)(e=>{t(e);try{window.localStorage.setItem(s,e?"true":"false")}catch(e){}window.dispatchEvent(new CustomEvent(r))},[])}}let i="mcbd-inapp-waiting-sound";function o(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{let e=()=>t(function(){try{let e=window.localStorage.getItem(i);if(null===e)return!1;return"true"===e}catch(e){return!1}}());return e(),window.addEventListener(r,e),window.addEventListener("storage",e),()=>{window.removeEventListener(r,e),window.removeEventListener("storage",e)}},[]),{enabled:e,setEnabled:(0,n.useCallback)(e=>{t(e);try{window.localStorage.setItem(i,e?"true":"false")}catch(e){}window.dispatchEvent(new CustomEvent(r))},[])}}},72604:(e,t,a)=>{a.d(t,{dS:()=>c,rM:()=>u});var n=a(12115),s=a(20063),r=a(18955),l=a(94442),i=a(66966),o=a(60199),d=a(59597);function c(e,t,a){return"".concat(e,"|").concat(null!=t?t:"-","|").concat(null!=a?a:"no-since")}function u(){let e=(0,r.c)("notifications"),{showToast:t}=(0,l.dj)(),{addListener:a}=(0,o.xM)(),{enabled:u}=(0,d.qG)(),f=(0,s.usePathname)(),m=(0,s.useRouter)(),x=(0,i.rC)(),p=(0,n.useRef)({enabled:u,pathname:f,worktrees:null==x?void 0:x.worktrees,showToast:t,t:e,router:m});p.current={enabled:u,pathname:f,worktrees:null==x?void 0:x.worktrees,showToast:t,t:e,router:m};let g=(0,n.useRef)(new Set);return(0,n.useEffect)(()=>a(e=>{var t,a,n,s,r;if("session_status_changed"!==e.type)return;let l=e.worktreeId;if("string"!=typeof l||0===l.length)return;let i=e.isWaitingForResponse;if("boolean"!=typeof i)return;let o=null!=(n=e.instance)?n:null,d=null!=(s=e.waitingSince)?s:null;if(!i){let e="".concat(l,"|").concat(null!=o?o:"-","|");for(let t of g.current)t.startsWith(e)&&g.current.delete(t);return}let u=p.current;if(!u.enabled||function(e){if(!e)return null;let t=/^\/worktrees\/([^/]+)/.exec(e);if(!t)return null;try{return decodeURIComponent(t[1])}catch(e){return t[1]}}(u.pathname)===l)return;let f=c(l,o,d);if(g.current.has(f))return;g.current.size>=500&&g.current.clear(),g.current.add(f);let m=null!=(r=null==(a=u.worktrees)||null==(t=a.find(e=>e.id===l))?void 0:t.name)?r:l;u.showToast(u.t("inApp.waitingToast",{name:m}),"warning",8e3,{onClick:()=>u.router.push("/worktrees/".concat(encodeURIComponent(l)))})}),[a]),null}},75676:(e,t,a)=>{a.d(t,{jg:()=>r,kQ:()=>l,mR:()=>d,mS:()=>o,wf:()=>n});let n="terminal",s=new Set(["terminal","chat"]);function r(e){return"string"==typeof e&&s.has(e)}let l={data:null,messageId:null,visible:!1,answering:!1},i={mode:"split",mobileActivePane:"terminal",leftPaneTab:"history",splitRatio:.5,leftPaneCollapsed:!1,activityBar:{active:"files"},historyPane:{visible:!0,width:25,collapsed:!1}},o={type:null,message:null,retryable:!1,retryCount:0};function d(){return{phase:"idle",prompt:{...l},layout:{...i},error:{...o},messages:[],wsConnected:!1}}},79832:(e,t,a)=>{a.d(t,{o:()=>o});var n=a(12115),s=a(24373);let r=/^\(\d+\+?\)(?:\s+|$)/;function l(e){return e.replace(r,"").trim()}function i(e){return Array.from(e.querySelectorAll('link[rel~="icon"]'))}function o(){return!function(){let{count:e}=(0,s.Lv)(),t=(0,n.useRef)([]),a=(0,n.useRef)(null);(0,n.useEffect)(()=>{if("undefined"==typeof document)return;let t=()=>{let t=function(e,t){let a=l(e);if(!Number.isFinite(t)||t<=0)return a;let n="(".concat(Math.floor(t),")");return a?"".concat(n," ").concat(a):n}(document.title,e);t!==document.title&&(document.title=t)};t();let a=null;return"undefined"!=typeof MutationObserver&&document.head&&(a=new MutationObserver(t)).observe(document.head,{childList:!0,subtree:!0,characterData:!0}),()=>{null==a||a.disconnect();let e=l(document.title);e!==document.title&&(document.title=e)}},[e]),(0,n.useEffect)(()=>{if("undefined"==typeof document||e<=0)return;let n=t.current,s=()=>{let t=a.current,s=function(e){var t,a;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!Number.isFinite(e)||e<=0)return null;let s=null!=(t=n.document)?t:"undefined"!=typeof document?document:null;if(!s)return null;let r=null!=(a=n.size)?a:64;try{let t=s.createElement("canvas");t.width=r,t.height=r;let a=t.getContext("2d");if(!a)return null;a.clearRect(0,0,r,r),n.base?a.drawImage(n.base,0,0,r,r):(a.fillStyle="#111827",a.fillRect(0,0,r,r));let l=Math.floor(e)>9,i=.34*r,o=r-i-.03*r;a.beginPath(),a.arc(o,o,i,0,2*Math.PI),a.fillStyle=l?"#ef4444":"#f59e0b",a.fill(),a.lineWidth=.05*r,a.strokeStyle="rgba(0, 0, 0, 0.55)",a.stroke();let d=function(e){if(!Number.isFinite(e)||e<=0)return"";let t=Math.floor(e);return t>9?"".concat(9,"+"):String(t)}(e);return a.fillStyle=l?"#ffffff":"#1c1300",a.font="bold ".concat(Math.round(r*(d.length>1?.38:.48)),"px sans-serif"),a.textAlign="center",a.textBaseline="middle",a.fillText(d,o,o+.02*r),t.toDataURL("image/png")}catch(e){return null}}(e,{base:t&&t.complete&&t.naturalWidth>0?t:null,document});s&&function(e,t,a){let n=i(e);if(0===n.length){let t=e.createElement("link");t.setAttribute("rel","icon"),t.setAttribute("type","image/png"),e.head.appendChild(t),a.push({link:t,originalHref:null,created:!0}),n=[t]}for(let e of n)a.some(t=>t.link===e)||a.push({link:e,originalHref:e.getAttribute("href"),created:!1}),e.setAttribute("href",t)}(document,s,n)};s();let r=a.current;if(!r&&"undefined"!=typeof Image){let e=function(e,t){var a;for(let e of t)if(!e.created&&e.originalHref)return e.originalHref;let n=i(e).find(e=>e.getAttribute("href"));return null!=(a=null==n?void 0:n.getAttribute("href"))?a:null}(document,n);e&&(a.current=r=new Image,r.src=e)}let l=null;return r&&!(r.complete&&r.naturalWidth>0)?(l=()=>s(),r.addEventListener("load",l)):r&&s(),()=>{r&&l&&r.removeEventListener("load",l);for(let e of n){if(e.created){e.link.remove();continue}null===e.originalHref?e.link.removeAttribute("href"):e.link.setAttribute("href",e.originalHref)}n.length=0}},[e]),(0,n.useEffect)(()=>{!function(e,t){let a="undefined"!=typeof navigator?navigator:null;if(!a)return;let n=e=>{e&&"function"==typeof e.catch&&e.catch(()=>{})};try{if(Number.isFinite(e)&&e>0){if("function"!=typeof a.setAppBadge)return!1;return n(a.setAppBadge(Math.floor(e))),!0}if("function"!=typeof a.clearAppBadge)return!1;n(a.clearAppBadge())}catch(e){return!1}}(e)},[e])}(),null}},94442:(e,t,a)=>{a.d(t,{dj:()=>y,tE:()=>j});var n=a(95155),s=a(12115),r=a(47650),l=a(18955),i=a(42529),o=a(78874),d=a(52056),c=a(23327),u=a(65229),f=a(59854),m=a(9900),x=a(9286);function p(e){let{type:t,iconColor:a}=e,s="h-5 w-5 ".concat(a);switch(t){case"success":return(0,n.jsx)(i.A,{className:s,"data-testid":"toast-icon-success"});case"error":return(0,n.jsx)(o.A,{className:s,"data-testid":"toast-icon-error"});case"warning":return(0,n.jsx)(d.A,{className:s,"data-testid":"toast-icon-warning"});default:return(0,n.jsx)(c.A,{className:s,"data-testid":"toast-icon-info"})}}function g(e){let{id:t,message:a,type:r,onClose:i,duration:o=3e3,onClick:d}=e,c=(0,l.c)("common"),f=(0,s.useRef)(null),g=function(e){switch(e){case"success":return{bgColor:"bg-success-subtle",borderColor:"border-success-border",textColor:"text-success-foreground",iconColor:"text-success-foreground"};case"error":return{bgColor:"bg-danger-subtle",borderColor:"border-danger-border",textColor:"text-danger-foreground",iconColor:"text-danger-foreground"};case"warning":return{bgColor:"bg-warning-subtle",borderColor:"border-warning-border",textColor:"text-warning-foreground",iconColor:"text-warning-foreground"};default:return{bgColor:"bg-info-subtle",borderColor:"border-info-border",textColor:"text-info-foreground",iconColor:"text-info-foreground"}}}(r),[h,b]=(0,s.useState)(!0),{shouldRender:v,isExiting:j}=(0,x.O)(h,m.Ys),y=(0,s.useRef)(i);y.current=i,(0,s.useEffect)(()=>{v||y.current(t)},[v,t]),(0,s.useEffect)(()=>(o>0&&(f.current=setTimeout(()=>{b(!1)},o)),()=>{f.current&&clearTimeout(f.current)}),[o]);let N=(0,s.useCallback)(()=>{f.current&&clearTimeout(f.current),b(!1)},[]);return(0,n.jsxs)("div",{"data-testid":"toast-".concat(t),role:"alert",className:"\n ".concat(g.bgColor,"\n ").concat(g.borderColor,"\n ").concat(g.textColor,"\n border rounded-lg shadow-lg p-4 min-w-[300px] max-w-[400px]\n flex items-start gap-3\n ").concat(j?"animate-out fade-out-0 slide-out-to-right-full duration-200 fill-mode-forwards pointer-events-none":"animate-slide-in","\n "),children:[(0,n.jsx)(p,{type:r,iconColor:g.iconColor}),d?(0,n.jsx)("button",{type:"button","data-testid":"toast-action-button",onClick:()=>{d(),N()},className:"flex-1 text-left text-sm font-medium underline-offset-2 hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-sm",children:a}):(0,n.jsx)("p",{className:"flex-1 text-sm font-medium",children:a}),(0,n.jsx)("button",{"data-testid":"toast-close-button",onClick:N,"aria-label":c("closeNotification"),className:"\n ".concat(g.textColor,"\n hover:opacity-70\n focus:outline-none focus:ring-2 focus:ring-offset-2\n transition-opacity\n "),children:(0,n.jsx)(u.A,{className:"h-4 w-4"})})]})}function h(e){let{toasts:t,onClose:a}=e,[l,i]=(0,s.useState)(!1);(0,s.useEffect)(()=>{i(!0)},[]);let o=(0,n.jsx)("div",{"data-testid":"toast-container","aria-live":"polite",className:"fixed bottom-4 right-4 flex flex-col gap-2",style:{zIndex:f.M.TOAST},children:t.map(e=>(0,n.jsx)(g,{id:e.id,message:e.message,type:e.type,onClose:a,duration:e.duration,onClick:e.onClick},e.id))});return l?(0,r.createPortal)(o,document.body):null}function b(){let[e,t]=(0,s.useState)([]),a=(0,s.useRef)(0),n=(0,s.useCallback)(function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info",s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e3,r=arguments.length>3?arguments[3]:void 0,l="toast-".concat(++a.current,"-").concat(Date.now()),i={id:l,message:e,type:n,duration:s,...(null==r?void 0:r.onClick)?{onClick:r.onClick}:{}};return t(e=>[...e,i]),l},[]),r=(0,s.useCallback)(e=>{t(t=>t.filter(t=>t.id!==e))},[]),l=(0,s.useCallback)(()=>{t([])},[]);return(0,s.useMemo)(()=>({toasts:e,showToast:n,removeToast:r,clearToasts:l}),[e,n,r,l])}let v=(0,s.createContext)(null);function j(e){let{children:t}=e,a=b();return(0,n.jsxs)(v.Provider,{value:a,children:[t,(0,n.jsx)(h,{toasts:a.toasts,onClose:a.removeToast})]})}function y(){let e=(0,s.useContext)(v),t=b();return null!=e?e:t}},95275:(e,t,a)=>{a.d(t,{H:()=>f});var n=a(12115),s=a(60199),r=a(59597),l=a(72604);let i=[{frequency:880,offset:0,duration:.12},{frequency:1318.5,offset:.13,duration:.18}],o=null;function d(){if(o)return o;let e=function(){var e,t;let a=window;return null!=(t=null!=(e=a.AudioContext)?e:a.webkitAudioContext)?t:null}();if(!e)return null;try{o=new e}catch(e){return null}return o}function c(e){e&&"function"==typeof e.catch&&e.catch(()=>{})}let u=["pointerdown","touchstart","keydown"];function f(){let{addListener:e}=(0,s.xM)(),{enabled:t}=(0,r.Ql)(),a=(0,n.useRef)({enabled:t});a.current={enabled:t};let o=(0,n.useRef)(new Set);return(0,n.useEffect)(()=>{let e=()=>(function(){let e=d();if(e)try{var t;"suspended"===e.state&&c(null==(t=e.resume)?void 0:t.call(e))}catch(e){}})();for(let t of u)window.addEventListener(t,e,{once:!0,passive:!0});return()=>{for(let t of u)window.removeEventListener(t,e)}},[]),(0,n.useEffect)(()=>e(e=>{var t,n;if("session_status_changed"!==e.type)return;let s=e.worktreeId;if("string"!=typeof s||0===s.length)return;let r=e.isWaitingForResponse;if("boolean"!=typeof r)return;let u=null!=(t=e.instance)?t:null,f=null!=(n=e.waitingSince)?n:null;if(!r){let e="".concat(s,"|").concat(null!=u?u:"-","|");for(let t of o.current)t.startsWith(e)&&o.current.delete(t);return}if(!a.current.enabled)return;let m=(0,l.dS)(s,u,f);o.current.has(m)||(o.current.size>=500&&o.current.clear(),o.current.add(m),function(){let e=d();if(e)try{var t,a;"suspended"===e.state&&c(null==(t=e.resume)?void 0:t.call(e));let n=null!=(a=e.currentTime)?a:0;for(let t of i){let a=e.createOscillator(),s=e.createGain();a.type="sine",a.frequency.value=t.frequency;let r=n+t.offset,l=r+t.duration;s.gain.setValueAtTime(0,r),s.gain.linearRampToValueAtTime(.12,r+.015),s.gain.linearRampToValueAtTime(1e-4,l),a.connect(s),s.connect(e.destination),a.start(r),a.stop(l+.02)}}catch(e){return!1}}())}),[e]),null}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8606],{38606:(n,e,t)=>{t.d(e,{pu:()=>u,A7:()=>c,kA:()=>l,dw:()=>g,Pn:()=>p,px:()=>a,XK:()=>v});var i=t(54014),s=t(55449);function l(n){return n?n.isWaitingForResponse?"waiting":n.isProcessing?"running":n.isRunning?"ready":"idle":"idle"}function a(n){return(null==n?void 0:n.isUnclassified)===!0&&"ready"===l(n)}let o={start:"nextAction.start",sendMessage:"nextAction.sendMessage",approveReject:"nextAction.approveReject",replyToPrompt:"nextAction.replyToPrompt",checkStalled:"nextAction.checkStalled",running:"nextAction.running"};Object.values(o);let r="exited",u="unknown",d={idle:null,ready:"ready",running:"running",generating:"running",waiting:"waiting"};function c(n){if(!n)return"idle";let e=Object.values(n).filter(n=>void 0!==n);return 0===e.length?"idle":e.includes("waiting")?"waiting":e.includes("running")?"running":e.includes("generating")?"generating":e.includes("ready")?"ready":"idle"}function g(n,e,t,s){return n?Object.entries(n).map(n=>{var l;let[a,o]=n,r=null!=(l=null==e?void 0:e[a])?l:(0,i.f_)(a,a),d=null==t?void 0:t(a),c="ready"===o&&(null==s?void 0:s.has(a))?u:null!=o?o:"idle";return"".concat(r,": ").concat(c).concat(d?" (".concat(d,")"):"")}).join(", "):""}function p(n,e){return!!n&&!!e&&0!==e.length&&"ready"===c(n)&&e.some(e=>"ready"===n[e])}let f=["prompt","menu","unclassified"];function v(n){var e,t,u,g,v,y;let w=l(void 0!==n.isSessionRunning?{isRunning:null!=(e=n.isSessionRunning)&&e,isWaitingForResponse:null!=(t=n.isWaitingForResponse)&&t,isProcessing:null!=(u=n.isProcessing)&&u}:void 0),A=!!n.lastAssistantMessageAt&&(!n.lastViewedAt||new Date(n.lastAssistantMessageAt)>new Date(n.lastViewedAt)),{cliStatus:h,cliStatusLabels:S,exitedInstanceIds:m,unclassifiedInstanceIds:R}=function(n){var e,t,o,u,d,c,g;let p={},f={},v=[],y=[],w=n.sessionStatusByInstance;if(!w){for(let c of null!=(e=n.selectedAgents)?e:(0,s.sA)())p[c]=l(null==(t=n.sessionStatusByCli)?void 0:t[c]),f[c]=(0,i.oo)(c),(null==(u=n.sessionStatusByCli)||null==(o=u[c])?void 0:o.sessionStatusReason)===r&&v.push(c),a(null==(d=n.sessionStatusByCli)?void 0:d[c])&&y.push(c);return{cliStatus:p,cliStatusLabels:f,exitedInstanceIds:v,unclassifiedInstanceIds:y}}let A=n.agentInstances&&n.agentInstances.length>0?n.agentInstances:(0,i.lu)(null!=(c=n.selectedAgents)?c:(0,s.sA)()),h=new Set;for(let n of A)h.add(n.id),p[n.id]=l(w[n.id]),f[n.id]=(0,i.sw)(n),(null==(g=w[n.id])?void 0:g.sessionStatusReason)===r&&v.push(n.id),a(w[n.id])&&y.push(n.id);for(let[n,e]of Object.entries(w)){if(h.has(n))continue;let t=l(e);"idle"!==t&&(p[n]=t,f[n]=function(n){let e=i.XH.find(e=>n.startsWith("".concat(e,"-")));if(e){let t=n.slice(e.length+1);return"".concat((0,i.oo)(e)," ").concat(t)}return(0,i.f_)(n,n)}(n),a(e)&&y.push(n))}return{cliStatus:p,cliStatusLabels:f,exitedInstanceIds:v,unclassifiedInstanceIds:y}}(n),j=c(h),{waitingKind:k,awaitingInstruction:x}=function(n){var e,t,i;let s=Object.values(null!=(t=null!=(e=n.sessionStatusByInstance)?e:n.sessionStatusByCli)?t:{}).filter(n=>void 0!==n),l=!1,a=new Set;for(let n of s)n.awaitingInstruction&&(l=!0),n.waitingKind&&a.add(n.waitingKind);return{waitingKind:null!=(i=f.find(n=>a.has(n)))?i:null,awaitingInstruction:l}}(n),P=p(h,R);return{id:n.id,name:n.name,repositoryName:null!=(g=n.repositoryDisplayName)?g:n.repositoryName,status:w,hasUnread:A,lastActivity:n.updatedAt,description:n.description,cliStatus:h,cliStatusLabels:S,exitedInstanceIds:m,unclassifiedInstanceIds:R,worktreePath:n.path,waitingKind:k,awaitingInstruction:x,nextActionKey:P?void 0:(v=d[j],y="waiting"===j?"approval":null,v&&"idle"!==v?"ready"===v?o.sendMessage:"waiting"===v&&"approval"===y?o.approveReject:"waiting"===v?o.replyToPrompt:(0,o.running):o.start)}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9619],{18848:(e,t,n)=>{n.d(t,{Bz:()=>i,kj:()=>r,wx:()=>a}),n(95704);let a=["send","wait","capture","respond"];function r(e){let{binary:t,worktreeId:n,instanceId:a,messagePlaceholder:r}=e,i=null!=e.portPrefix&&3e3!==e.portPrefix?"CM_PORT=".concat(e.portPrefix," "):"",o="--instance ".concat(a),s="".concat(i).concat(t);return{send:"".concat(s," send ").concat(n,' "').concat(r,'" ').concat(o),wait:"".concat(s," wait ").concat(n," ").concat(o," --on-prompt human"),capture:"".concat(s," capture ").concat(n," ").concat(o),respond:"".concat(s," respond ").concat(n,' "').concat("1",'" ').concat(o)}}function i(e){let{binary:t,worktreeId:n,instanceId:a,instanceLabel:r,toolLabel:i}=e,o=null!=e.portPrefix&&3e3!==e.portPrefix?"CM_PORT=".concat(e.portPrefix," "):"",s="".concat(o).concat(t),l="--instance ".concat(a),c="ja"===e.locale?"ja":"en",d="".concat(s," capture ").concat(n," ").concat(l," --pane --tail ").concat(60),u="".concat(s," ask ").concat(n," ").concat(l,' "<request>" --async');if("ja"===c){let e="".concat(s," ask ").concat(n," ").concat(l,' "<依頼文>" --timeout ').concat(1800);return["## 別セッション「".concat(r,"」への委任"),"- 宛先: worktree `".concat(n,"` / instance `").concat(a,"`(").concat(i,")"),"- 依頼: ".concat(e)," - exit 0: 標準出力が返答本文\n - exit 10: 相手が確認待ち。標準出力のprompt JSONを私に報告して止まる(自分で答えない)\n - exit 124: タイムアウト。captureで状況を見て報告","- 待たない依頼: ".concat(u)," - 即座に relay id を返して exit 0。完了時に `[from ...]` 付きで返答が私のコンポーザーに届く"," - 状況確認: ".concat(s," relays / 取り消し: ").concat(s," relays cancel <relay-id>"),"- 進捗確認: ".concat(d),"- 禁止: respondで相手のプロンプトに答える / auto-yesを有効化する"].join("\n")}let p="".concat(s," ask ").concat(n," ").concat(l,' "<request>" --timeout ').concat(1800);return['## Delegating to session "'.concat(r,'"'),"- Target: worktree `".concat(n,"` / instance `").concat(a,"` (").concat(i,")"),"- Ask: ".concat(p)," - exit 0: stdout is the reply body\n - exit 10: they are waiting on a confirmation. Report the prompt JSON on stdout back to me and stop (do not answer it yourself)\n - exit 124: timed out. Look with capture and report what you see","- Ask without waiting: ".concat(u)," - exits 0 with a relay id on stdout; the reply lands in my composer prefixed `[from ...]` when the turn ends"," - Outstanding: ".concat(s," relays / withdraw: ").concat(s," relays cancel <relay-id>"),"- Progress: ".concat(d),"- Do not: answer their prompt with respond / turn auto-yes on"].join("\n")}},22592:(e,t,n)=>{n.d(t,{Ps:()=>u,W5:()=>d});var a=n(95155),r=n(12115),i=n(38218),o=n(68704);let s="data-pc-size",l={size:o.r5,setSize:()=>{},isMobile:!1,factor:o.d8[o.r5].factor,isAvailable:!1},c=(0,r.createContext)(l);function d(e){let{children:t}=e,{size:n,setSize:l,isAvailable:d}=(0,o.of)(),u=(0,i.a)();(0,r.useEffect)(()=>{if("undefined"==typeof document)return;let e=document.documentElement;return u?void e.removeAttribute(s):(e.setAttribute(s,n),()=>{e.removeAttribute(s)})},[n,u]);let p=(0,r.useMemo)(()=>({size:n,setSize:l,isMobile:u,factor:o.d8[n].factor,isAvailable:d}),[n,l,u,d]);return(0,a.jsx)(c.Provider,{value:p,children:t})}function u(){return(0,r.useContext)(c)}},26020:(e,t,n)=>{n.d(t,{Xn:()=>r,d9:()=>s,dI:()=>a,gB:()=>i,vK:()=>o});let a=["en","ja"],r="en",i="locale",o={en:"English",ja:"日本語"};function s(e){return"string"==typeof e&&a.includes(e)}},30061:(e,t,n)=>{n.d(t,{nR:()=>o});var a=n(95155),r=n(12115),i=n(47650);function o(e){let{content:t,delay:n=200,className:o,children:s,metadata:l}=e,c=(0,r.useRef)(null),d=(0,r.useRef)(null),u=(0,r.useRef)(null),p=(0,r.useRef)(null),[m,f]=(0,r.useState)(!1),[h,x]=(0,r.useState)({top:-9999,left:-9999}),g=(0,r.useCallback)(()=>{null!==u.current&&(clearTimeout(u.current),u.current=null)},[]),b=(0,r.useCallback)(()=>{let e=c.current;e&&(e.scrollWidth>e.clientWidth||l)&&(g(),u.current=setTimeout(()=>{let t=e.getBoundingClientRect(),n=Math.max(4,window.innerWidth-384-4);p.current={top:t.top,bottom:t.bottom},x({top:t.bottom+4,left:Math.min(t.left,n)}),f(!0),u.current=null},n))},[g,n,l]);(0,r.useLayoutEffect)(()=>{if(!m)return;let e=d.current,t=p.current;if(!e||!t)return;let{height:n}=e.getBoundingClientRect();if(n<=0)return;let a=window.innerHeight;if(t.bottom+4+n+4<=a)return;let r=t.top-4-n,i=r>=4?r:Math.max(4,a-n-4);x(e=>e.top===i?e:{...e,top:i})},[m]);let y=(0,r.useCallback)(()=>{g(),f(!1)},[g]);return(0,r.useEffect)(()=>()=>g(),[g]),(0,a.jsxs)("span",{ref:c,className:o,onMouseEnter:b,onMouseLeave:y,children:[null!=s?s:t,m&&"undefined"!=typeof document&&(0,i.createPortal)((0,a.jsxs)("span",{ref:d,role:"tooltip","aria-hidden":"true",className:"fixed z-[9999] max-w-md px-2 py-1 text-xs font-medium rounded bg-foreground text-background shadow-lg pointer-events-none",style:{top:h.top,left:h.left},children:[(0,a.jsx)("span",{className:"block break-all",children:t}),l&&(0,a.jsx)("span",{className:"mt-0.5 block whitespace-pre-line font-normal text-background/70",children:l})]}),document.body)]})}},32916:(e,t,n)=>{n.d(t,{GB:()=>d,VF:()=>u,pT:()=>p});var a=n(95155),r=n(12115),i=n(7636);let o="updatedAt",s=(0,r.createContext)(null);function l(e,t,n,a){let i=(0,r.useRef)(!0);(0,r.useEffect)(()=>{try{let t=localStorage.getItem(e);t&&a(t)}catch(e){}},[]),(0,r.useEffect)(()=>{if(i.current){i.current=!1;return}try{localStorage.setItem(e,n())}catch(e){}},[t])}function c(e,t){switch(t.type){case"TOGGLE":return{...e,isOpen:!e.isOpen};case"SET_WIDTH":return{...e,width:t.width};case"OPEN_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!0};case"CLOSE_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!1};case"SET_SORT_KEY":return{...e,sortKey:t.sortKey};case"SET_SORT_DIRECTION":return{...e,sortDirection:t.sortDirection};case"LOAD_SORT_SETTINGS":return{...e,sortKey:t.sortKey,sortDirection:t.sortDirection};case"SET_VIEW_MODE":return{...e,viewMode:t.viewMode};case"SET_OPEN":return e.isOpen===t.isOpen?e:{...e,isOpen:t.isOpen};case"SET_REPOSITORY_ORDER":return{...e,repositoryOrder:t.repositoryOrder};case"SET_REPO_TAB_BAR_MODE":return{...e,repoTabBarMode:t.repoTabBarMode};default:return e}}function d(e){let{children:t,initialOpen:n=!0,initialWidth:d=224}=e,[u,p]=(0,r.useReducer)(c,{isOpen:n,width:d,isMobileDrawerOpen:!1,sortKey:o,sortDirection:"desc",viewMode:"grouped",repositoryOrder:(0,i.ZD)(),repoTabBarMode:i.PB});l("mcbd-sidebar-sort","".concat(u.sortKey,":").concat(u.sortDirection),()=>JSON.stringify({sortKey:u.sortKey,sortDirection:u.sortDirection}),e=>{try{let t=JSON.parse(e),n=t.sortDirection,a=(0,i.Si)(t.sortKey)?t.sortKey:o;a&&("asc"===n||"desc"===n)&&p({type:"LOAD_SORT_SETTINGS",sortKey:a,sortDirection:n})}catch(e){}}),l("mcbd-sidebar-view-mode",u.viewMode,()=>u.viewMode,e=>{(0,i.$m)(e)&&p({type:"SET_VIEW_MODE",viewMode:e})}),l("mcbd-sidebar-width",u.width,()=>String(u.width),e=>{let t=Number(e);!isNaN(t)&&t>0&&p({type:"SET_WIDTH",width:288===t?224:t})}),l("mcbd-sidebar-open",u.isOpen,()=>String(u.isOpen),e=>{("true"===e||"false"===e)&&p({type:"SET_OPEN",isOpen:"true"===e})}),l("mcbd-repo-tab-bar-mode",u.repoTabBarMode,()=>u.repoTabBarMode,e=>{(0,i.m3)(e)&&p({type:"SET_REPO_TAB_BAR_MODE",repoTabBarMode:e})});let m=(0,r.useCallback)(()=>{p({type:"TOGGLE"})},[]),f=(0,r.useCallback)(e=>{p({type:"SET_WIDTH",width:e})},[]),h=(0,r.useCallback)(()=>{p({type:"OPEN_MOBILE_DRAWER"})},[]),x=(0,r.useCallback)(()=>{p({type:"CLOSE_MOBILE_DRAWER"})},[]),g=(0,r.useCallback)(e=>{p({type:"SET_SORT_KEY",sortKey:e})},[]),b=(0,r.useCallback)(e=>{p({type:"SET_SORT_DIRECTION",sortDirection:e})},[]),y=(0,r.useCallback)(e=>{p({type:"SET_VIEW_MODE",viewMode:e})},[]),w=(0,r.useCallback)(e=>{p({type:"SET_REPOSITORY_ORDER",repositoryOrder:e}),(0,i.ZC)(e)},[]),v=(0,r.useCallback)(e=>{p({type:"SET_REPO_TAB_BAR_MODE",repoTabBarMode:e})},[]),k=(0,r.useMemo)(()=>({isOpen:u.isOpen,width:u.width,isMobileDrawerOpen:u.isMobileDrawerOpen,sortKey:u.sortKey,sortDirection:u.sortDirection,toggle:m,setWidth:f,openMobileDrawer:h,closeMobileDrawer:x,setSortKey:g,setSortDirection:b,viewMode:u.viewMode,setViewMode:y,repositoryOrder:u.repositoryOrder,setRepositoryOrder:w,repoTabBarMode:u.repoTabBarMode,setRepoTabBarMode:v}),[u.isOpen,u.width,u.isMobileDrawerOpen,u.sortKey,u.sortDirection,u.viewMode,u.repositoryOrder,u.repoTabBarMode,m,f,h,x,g,b,y,w,v]);return(0,a.jsx)(s.Provider,{value:k,children:t})}function u(){let e=(0,r.useContext)(s);if(!e)throw Error("useSidebarContext must be used within a SidebarProvider");return e}function p(){return(0,r.useContext)(s)}},34681:(e,t,n)=>{n.d(t,{g:()=>s});var a=n(95155);n(12115);var r=n(18955),i=n(22592),o=n(68704);function s(){let{size:e,setSize:t,isMobile:n}=(0,i.Ps)(),s=(0,r.c)("common");if(n)return null;let l=s("displaySize.ariaLabel");return(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)("label",{htmlFor:"pc-display-size",className:"sr-only",children:l}),(0,a.jsx)("select",{id:"pc-display-size","data-testid":"pc-display-size-select","aria-label":l,value:e,onChange:e=>{let n=e.target.value;(0,o.fM)(n)&&t(n)},className:"text-sm bg-transparent text-foreground border border-input rounded-md px-2 py-1 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:o.Uf.map(e=>(0,a.jsx)("option",{value:e,children:s("displaySize.".concat(e))},e))})]})}},41898:(e,t,n)=>{n.d(t,{m_:()=>l});var a=n(95155),r=n(12115),i=n(47650);function o(e,t,n){return Math.min(Math.max(e,4),Math.max(4,n-t-4))}let s={top:-9999,left:-9999};function l(e){let{content:t,placement:n="right",delay:l=100,children:c,className:d}=e,[u,p]=(0,r.useState)(!1),[m,f]=(0,r.useState)(!1),h=u||m,[x,g]=(0,r.useState)(null),b=(0,r.useRef)(null),y=(0,r.useRef)(null),w=(0,r.useRef)(null),v=(0,r.useCallback)(()=>{null!==w.current&&(clearTimeout(w.current),w.current=null)},[]),k=(0,r.useCallback)(()=>{v(),w.current=setTimeout(()=>{p(!0),w.current=null},l)},[l,v]),j=(0,r.useCallback)(()=>{v(),p(!1)},[v]),N=(0,r.useCallback)(()=>{f(!0)},[]),S=(0,r.useCallback)(()=>{f(!1)},[]),E=(0,r.useCallback)(()=>{v(),p(!1),f(!1)},[v]),C=(0,r.useCallback)(()=>{let e=b.current,t=y.current;if(!e||!t)return;let a=e.getBoundingClientRect(),r=t.getBoundingClientRect();g(function(e,t,n,a){let r,i,s=t.left+t.width/2-n.width/2,l=t.top+t.height/2-n.height/2;switch(e){case"top":r=t.top-n.height-8,i=s;break;case"bottom":r=t.top+t.height+8,i=s;break;case"left":r=l,i=t.left-n.width-8;break;default:r=l,i=t.left+t.width+8}return{top:o(r,n.height,a.height),left:o(i,n.width,a.width)}}(n,{top:a.top,left:a.left,width:a.width,height:a.height},{width:r.width,height:r.height},{width:window.innerWidth,height:window.innerHeight}))},[n]);return(0,r.useLayoutEffect)(()=>h?(C(),window.addEventListener("resize",C),window.addEventListener("scroll",C,!0),()=>{window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0)}):void g(null),[h,C]),(0,r.useEffect)(()=>{if(!h)return;let e=e=>{"Escape"===e.key&&E()};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},[h,E]),(0,r.useEffect)(()=>()=>{v()},[v]),(0,a.jsxs)("span",{ref:b,"data-testid":"tooltip-wrapper",className:d?"relative inline-flex ".concat(d):"relative inline-flex",tabIndex:-1,onMouseEnter:k,onMouseLeave:j,onFocus:N,onBlur:S,children:[c,h&&"undefined"!=typeof document&&(0,i.createPortal)((0,a.jsx)("span",{ref:y,role:"tooltip","aria-hidden":"true","data-placement":n,className:"fixed z-40 whitespace-nowrap px-2 py-1 text-xs font-medium rounded bg-foreground text-background shadow-lg pointer-events-none",style:null!=x?x:s,children:t}),document.body)]})}},45195:(e,t,n)=>{n.d(t,{g:()=>i});var a=n(36809),r=n(26020);function i(){return{currentLocale:(0,a.Ym)(),switchLocale:e=>{if(r.dI.includes(e)){let t="https:"===window.location.protocol;document.cookie="".concat(r.gB,"=").concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax").concat(t?";Secure":""),localStorage.setItem("locale",e),window.location.reload()}}}}},45573:(e,t,n)=>{n.d(t,{P0:()=>Z,oQ:()=>X,tJ:()=>Y,xk:()=>$,xq:()=>et,yW:()=>ee});var a=n(95155),r=n(12115),i=n(47650),o=n(20063),s=n(89275),l=n(18955),c=n(36809),d=n(5379),u=n(79698),p=n(66685),m=n(24533),f=n(61362),h=n(95740),x=n(37772),g=n(59427),b=n(37494),y=n(79451),w=n(89559),v=n(97470),k=n(94684),j=n(76482),N=n(39332),S=n(86651),E=n(18085),C=n(87531),O=n(59854),T=n(92614),R=n(70628),M=n(22592),_=n(66966),D=n(68704),P=n(45195),I=n(80344),A=n(48481),B=n(76471),z=n(38606),L=n(79651),K=n(94442),F=n(18848),W=n(54014);let G=[{key:"sessions",href:"/sessions"},{key:"repositories",href:"/repositories"},{key:"review",href:"/review"},{key:"skills",href:"/skills"},{key:"more",href:"/more"}],H={sessions:p.A,repositories:m.A,review:f.A,skills:h.A,more:x.A},U="cm.palette.recents";function V(e){if(!e||"object"!=typeof e)return!1;let{kind:t,id:n}=e;return("nav"===t||"worktree"===t||"action"===t)&&"string"==typeof n}function q(e){var t;let{worktree:n,className:r}=e,i=(0,l.c)("common"),o=n.isWaitingForResponse?"waiting":n.isProcessing?"running":n.isSessionRunning?"ready":"idle",s=(0,B.Mq)(o,Object.values(null!=(t=n.sessionStatusByCli)?t:{}).some(e=>(0,z.px)(e)));return(0,a.jsx)(A.m,{status:o,size:"sm",label:s?i(B.rH):void 0,className:(0,C.cn)(r,s&&B.Jd),"data-unclassified":s?"true":void 0})}function Y(e){if(!(e instanceof HTMLElement))return!1;let t=e.tagName;return!!("INPUT"===t||"TEXTAREA"===t||"SELECT"===t||e.isContentEditable||e.closest('[role="log"]'))}let J=(0,C.cn)("flex cursor-pointer items-center gap-2 rounded-md px-2 py-2 text-sm","text-foreground","data-[selected=true]:bg-accent-500/15 data-[selected=true]:text-accent-700","dark:data-[selected=true]:text-accent-300"),Q="shrink-0 text-muted-foreground";function $(){var e;if("undefined"==typeof document)return null;let t=document.querySelector("[data-instance-id]");return(null==t||null==(e=t.getAttribute("data-instance-id"))?void 0:e.trim())||null}function X(e){var t,n;if("undefined"==typeof document)return!1;let a=Array.from(document.querySelectorAll('[data-testid="message-input-textarea"]'));if(0===a.length)return!1;let r=document.activeElement,i=null!=(n=a.find(e=>e===r))?n:a[0],o=i.value,s=""===o.trim()?e:"".concat(o,"\n\n").concat(e),l=null==(t=Object.getOwnPropertyDescriptor(HTMLTextAreaElement.prototype,"value"))?void 0:t.set;return l?l.call(i,s):i.value=s,i.dispatchEvent(new Event("input",{bubbles:!0})),i.focus(),i.setSelectionRange(s.length,s.length),!0}async function Z(e,t,n){try{let[a,r]=await Promise.all([fetch("/api/worktrees/".concat(e,"/cli-reference")),fetch("/api/worktrees/".concat(e,"/resolve-target?instance=").concat(encodeURIComponent(t.id)))]);if(!a.ok||!r.ok)return null;let[i,o]=await Promise.all([a.json(),r.json()]);return(0,F.Bz)({binary:i.binary,worktreeId:i.worktreeId,instanceId:o.instanceId,instanceLabel:t.alias,toolLabel:(0,W.oo)(o.cliToolId),portPrefix:i.portPrefix,locale:n})}catch(e){return null}}let ee={ja:{heading:"委任 (/delegate)",menuItem:"委任方法をコンポーザーに挿入",inserted:"委任方法をコンポーザーに挿入しました",self:"自分自身には委任できません",noComposer:"コンポーザーが見つかりません。worktree 画面を開いてから実行してください",failed:"委任方法を作成できませんでした"},en:{heading:"Delegate (/delegate)",menuItem:"Insert delegation brief into the composer",inserted:"Delegation brief inserted into the composer",self:"That is this session — nothing to delegate to",noComposer:"No composer on screen. Open a worktree screen and try again",failed:"Could not build the delegation brief"}};function et(){var e,t,n;let{open:p,setOpen:m}=(0,T.C)(),{setOpen:f}=(0,R.K)(),h=(0,s.Hq)(),x=(0,o.usePathname)(),A=(0,c.Ym)(),B=(0,l.c)("commandPalette"),z=(0,l.c)("common"),{theme:F,setTheme:et}=(0,d.D)(),{setSize:en,isMobile:ea}=(0,M.Ps)(),{currentLocale:er,switchLocale:ei}=(0,P.g)(),eo=(0,_.rC)(),{showToast:es}=(0,K.dj)(),[el,ec]=(0,r.useState)(!1),[ed,eu]=(0,r.useState)(""),[ep,em]=(0,r.useState)([]),ef=(0,r.useRef)(null),eh=(0,r.useRef)(null),ex=(0,r.useRef)(p);(0,r.useEffect)(()=>{ex.current=p},[p]),(0,r.useEffect)(()=>{ec(!0)},[]),(0,r.useEffect)(()=>{function e(e){if(("k"===e.key||"K"===e.key)&&(e.metaKey||e.ctrlKey)){if(ex.current){e.preventDefault(),e.stopPropagation(),m(!1);return}if(Y(e.target))return;e.preventDefault(),m(!0);return}"Escape"===e.key&&ex.current&&(e.preventDefault(),e.stopPropagation(),m(!1))}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[m]),(0,r.useEffect)(()=>{var e,t,n,a;p?(eh.current=null!=(t=document.activeElement)?t:null,null==(e=ef.current)||e.focus(),eu(""),em(function(){try{let e=localStorage.getItem(U);if(!e)return[];let t=JSON.parse(e);if(!Array.isArray(t))return[];return t.filter(V).slice(0,8)}catch(e){return[]}}())):eh.current&&(null==(n=(a=eh.current).focus)||n.call(a),eh.current=null)},[p]);let eg=(0,r.useCallback)((e,t)=>{t&&em(e=>(function(e,t){let n=e.filter(e=>e.kind!==t.kind||e.id!==t.id),a=[t,...n].slice(0,8);try{localStorage.setItem(U,JSON.stringify(a))}catch(e){}return a})(e,t)),m(!1),e()},[m]),eb=(0,r.useCallback)(async e=>{let t=ee["ja"===A?"ja":"en"];if(function(e){let t=/^\/worktrees\/([^/?#]+)/.exec(null!=e?e:"");return t?decodeURIComponent(t[1]):null}(x)===e.worktree.id&&$()===e.instance.id)return void es(t.self,"info");let n=await Z(e.worktree.id,e.instance,A);if(null===n)return void es(t.failed,"error");let a=X(n);es(a?t.inserted:t.noComposer,a?"success":"error")},[A,x,es]),ey=(0,r.useCallback)(async()=>{try{var e;await I.Rx.sync(),await (null==eo||null==(e=eo.refresh)?void 0:e.call(eo)),es(B("actions.syncSuccess"),"success")}catch(e){es(B("actions.syncError"),"error")}},[eo,es,B]),ew="dark"===F,ev=""===ed.trim(),ek=null!=(e=null==eo?void 0:eo.error)?e:null,ej=null!=(t=null==eo?void 0:eo.isLoading)&&t,eN=ek?[]:null!=(n=null==eo?void 0:eo.worktrees)?n:[],eS=eN.length>0,eE=!ek&&ej&&0===eN.length,eC=!function(e){let t=e.trim().toLowerCase();return""!==t&&(t.startsWith("/")||t.includes("delegate"))}(ed)?[]:function(e){let t=[];for(let a of e){var n;for(let e of(null==(n=a.agentInstances)?void 0:n.length)?a.agentInstances:a.cliToolId?[{id:a.cliToolId,cliTool:a.cliToolId,alias:(0,W.oo)(a.cliToolId),order:0}]:[])t.push({worktree:a,instance:e})}return t}(eN),eO=ee["ja"===A?"ja":"en"],eT=[...eN].sort((e,t)=>{let n=+!!e.isSessionRunning,a=+!!t.isSessionRunning;if(n!==a)return a-n;let r=e.updatedAt?new Date(e.updatedAt).getTime():0;return(t.updatedAt?new Date(t.updatedAt).getTime():0)-r}),eR=ev?eT.slice(0,8):eT,eM=[{id:"theme",label:ew?B("actions.toLight"):B("actions.toDark"),icon:ew?g.A:b.A,run:()=>et(ew?"light":"dark")},...ea?[]:D.Uf.map(e=>({id:"displaysize:".concat(e),label:"".concat(B("actions.displaySizePrefix"),": ").concat(z("displaySize.".concat(e))),icon:y.A,run:()=>en(e)})),{id:"sync",label:B("actions.syncRepositories"),icon:w.A,run:()=>{ey()}},{id:"locale",label:B("actions.switchLanguage"),icon:v.A,run:()=>ei("ja"===er?"en":"ja")},{id:"github",label:B("actions.openGitHub"),icon:k.A,run:()=>window.open("https://github.com/kewton/MyCodeBranchDesk","_blank","noopener,noreferrer")},{id:"keyboardShortcuts",label:B("actions.keyboardShortcuts"),icon:j.A,run:()=>f(!0)}],e_=ev?ep.map(e=>{if("nav"===e.kind){let t=G.find(t=>t.key===e.id);if(!t)return null;let n=H[t.key],r=z("nav.".concat(t.key));return{id:"nav-".concat(t.key),value:"recent nav ".concat(t.key),node:(0,a.jsxs)(a.Fragment,{children:[n&&(0,a.jsx)(n,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:r})]}),onSelect:()=>eg(()=>h.push(t.href),{kind:"nav",id:t.key})}}if("worktree"===e.kind){let t=eN.find(t=>t.id===e.id);if(!t)return null;let n=t.repositoryDisplayName||t.repositoryName||"",r=t.branch||t.name;return{id:"worktree-".concat(t.id),value:"recent worktree ".concat(t.id),node:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(N.A,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:r}),n&&(0,a.jsx)("span",{className:"ml-auto truncate pl-2 text-xs text-muted-foreground",children:n}),(0,a.jsx)(q,{worktree:t,className:n?"ml-2":"ml-auto"})]}),onSelect:()=>eg(()=>h.push("/worktrees/".concat(t.id)),{kind:"worktree",id:t.id})}}let t=eM.find(t=>t.id===e.id);if(!t)return null;let n=t.icon;return{id:"action-".concat(t.id),value:"recent action ".concat(t.id),node:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:t.label})]}),onSelect:()=>eg(t.run,{kind:"action",id:t.id})}}).filter(e=>null!==e):[];return el?(0,i.createPortal)((0,a.jsx)(a.Fragment,{children:p&&(0,a.jsxs)("div",{className:"fixed inset-0 overflow-y-auto",style:{zIndex:O.M.MODAL},"data-testid":"command-palette",children:[(0,a.jsx)("div",{"data-state":"open","aria-hidden":"true",className:"fixed inset-0 bg-black/40 backdrop-blur-sm transition-opacity data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:duration-200",onClick:()=>m(!1)}),(0,a.jsx)("div",{className:"relative flex min-h-full items-start justify-center p-4 pt-[15vh]",children:(0,a.jsx)("div",{"data-state":"open","data-testid":"command-palette-panel",className:(0,C.cn)("relative w-full max-w-lg overflow-hidden rounded-xl bg-surface/95 shadow-2xl ring-1 ring-border backdrop-blur-xl","data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:duration-200"),children:(0,a.jsxs)(u.uB,{label:B("title"),className:(0,C.cn)("flex flex-col","[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:pb-1 [&_[cmdk-group-heading]]:pt-2","[&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 border-b border-border px-3",children:[(0,a.jsx)(S.A,{size:16,strokeWidth:2,"aria-hidden":"true",className:"shrink-0 text-muted-foreground"}),(0,a.jsx)(u.uB.Input,{ref:ef,value:ed,onValueChange:eu,placeholder:B("placeholder"),"data-testid":"command-palette-input",className:"flex-1 bg-transparent py-3 text-sm text-foreground outline-none placeholder:text-muted-foreground"})]}),(0,a.jsxs)(u.uB.List,{className:"max-h-[min(60vh,360px)] overflow-y-auto p-2",children:[(0,a.jsx)(u.uB.Empty,{"data-testid":"command-palette-empty",className:"py-6 text-center text-sm text-muted-foreground",children:B("empty")}),eE&&(0,a.jsx)(u.uB.Loading,{"data-testid":"command-palette-loading",className:"py-6 text-center text-sm text-muted-foreground",children:B("loading")}),e_.length>0&&(0,a.jsx)(u.uB.Group,{heading:B("groups.recent"),children:e_.map(e=>(0,a.jsx)(u.uB.Item,{value:e.value,onSelect:e.onSelect,className:J,children:e.node},e.id))}),(0,a.jsx)(u.uB.Group,{heading:B("groups.navigation"),children:G.map(e=>{let t=z("nav.".concat(e.key)),n=H[e.key];return(0,a.jsxs)(u.uB.Item,{value:"nav ".concat(t," ").concat(e.href),onSelect:()=>eg(()=>h.push(e.href),{kind:"nav",id:e.key}),className:J,children:[n&&(0,a.jsx)(n,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:t})]},e.key)})}),eS&&(function(e){let t=new Map;for(let n of e){let e=n.repositoryDisplayName||n.repositoryName||"",a=e||"\0unnamed",r=t.get(a);r?r.worktrees.push(n):t.set(a,{key:a,repository:e,worktrees:[n]})}return[...t.values()]})(eR).map(e=>(0,a.jsx)(u.uB.Group,{heading:e.repository||B("groups.worktrees"),children:e.worktrees.map(t=>{let n=t.branch||t.name;return(0,a.jsxs)(u.uB.Item,{value:"worktree ".concat(e.repository," ").concat(n," ").concat(t.name," ").concat(t.id),onSelect:()=>eg(()=>h.push("/worktrees/".concat(t.id)),{kind:"worktree",id:t.id}),className:J,children:[(0,a.jsx)(N.A,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:n}),(0,a.jsx)(q,{worktree:t,className:"ml-auto"})]},t.id)})},e.key)),eC.length>0&&(0,a.jsx)(u.uB.Group,{heading:eO.heading,children:eC.map(e=>{let t=e.worktree.branch||e.worktree.name;return(0,a.jsxs)(u.uB.Item,{"data-testid":"palette-delegate-".concat(e.worktree.id,"-").concat(e.instance.id),value:"/delegate ".concat(e.worktree.id," ").concat(e.instance.id," ").concat(e.instance.alias," ").concat(t),onSelect:()=>eg(()=>{eb(e)}),className:J,children:[(0,a.jsx)(E.A,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:e.instance.alias}),(0,a.jsxs)("span",{className:"ml-auto truncate pl-2 text-xs text-muted-foreground",children:[t," / ",e.instance.id]})]},"".concat(e.worktree.id,":").concat(e.instance.id))})}),(0,a.jsx)(u.uB.Group,{heading:B("groups.actions"),children:eM.map(e=>{let t=e.icon;return(0,a.jsxs)(u.uB.Item,{value:"action ".concat(e.id," ").concat(e.label),onSelect:()=>eg(e.run,{kind:"action",id:e.id}),className:J,children:[(0,a.jsx)(t,{size:16,className:Q,"aria-hidden":"true"}),(0,a.jsx)("span",{className:"truncate",children:e.label})]},e.id)})})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3 border-t border-border bg-surface-2 px-3 py-2 text-[11px] text-muted-foreground",children:[(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(L.u,{children:"↑"}),(0,a.jsx)(L.u,{children:"↓"}),B("footer.navigate")]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(L.u,{children:"↵"}),B("footer.select")]}),(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(L.u,{children:"esc"}),B("footer.close")]})]})]})})})]})}),document.body):null}},46892:(e,t,n)=>{n.d(t,{PL:()=>r,sb:()=>i});let a={idle:"bg-muted-foreground",ready:"bg-success",spinner:"border-info",waiting:"bg-warning"},r={idle:{className:a.idle,labelKey:"status.idle",type:"dot"},ready:{className:a.ready,labelKey:"status.ready",type:"dot"},running:{className:a.spinner,labelKey:"status.running",type:"spinner"},waiting:{className:a.waiting,labelKey:"status.waiting",type:"dot"},generating:{className:a.spinner,labelKey:"status.generating",type:"spinner"}},i={idle:"detailStatus.idle",ready:"detailStatus.ready",running:"detailStatus.running",waiting:"detailStatus.waiting"}},63470:(e,t,n)=>{n.d(t,{Y:()=>u,y2:()=>d});var a=n(95155),r=n(12115),i=n(18955),o=n(80344),s=n(36402);let l=()=>{},c=(0,r.createContext)({updateInfo:null,checking:!1,hasUpdate:!1,canSelfUpdate:!1,state:"idle",logPath:null,errorKey:null,openConfirm:l,cancel:l,confirm:async()=>{}});function d(e){var t;let{children:n}=e,l=(0,i.c)("worktree"),[d,u]=(0,r.useState)(null),[p,m]=(0,r.useState)(!0),[f,h]=(0,r.useState)("idle"),[x,g]=(0,r.useState)(null),[b,y]=(0,r.useState)(null),w=(0,r.useRef)("idle");(0,r.useEffect)(()=>{w.current=f},[f]);let v=(0,r.useRef)(!1);(0,r.useEffect)(()=>{let e=!1,t=async()=>{if("idle"===w.current)try{let t=await o.GQ.checkForUpdate();if(e)return;u(e=>"degraded"===t.status&&null!==e?e:t)}catch(e){}finally{e||m(!1)}};t();let n=setInterval(()=>{t()},36e5);return()=>{e=!0,clearInterval(n)}},[]);let k=(null==d?void 0:d.hasUpdate)===!0,j=(null==d?void 0:d.installType)==="global"||(null==d?void 0:d.installType)==="npx",N=(0,r.useCallback)(()=>{k&&j&&h(e=>"idle"===e?"confirming":e)},[k,j]),S=(0,r.useCallback)(()=>{h(e=>"confirming"===e?"idle":e)},[]),E=(0,r.useCallback)(async()=>{if("confirming"===w.current){w.current="starting",h("starting");try{let e=await o.GQ.startUpdate();g(e.logPath),h(e.willRestart?"updating":"no-restart")}catch(e){e instanceof o.hD&&400===e.status?y("update.errorNotGlobal"):e instanceof o.hD&&409===e.status?y("update.errorInProgress"):y("update.errorGeneric"),h("error")}}},[]);(0,r.useEffect)(()=>{if("updating"!==f)return;let e=!1,t=Date.now();v.current=!1;let n=setInterval(async()=>{if(e)return;if(Date.now()-t>3e5)return void h("timeout");let n=await o.GQ.ping();if(!e){if(!n){v.current=!0;return}v.current&&window.location.reload()}},2e3);return()=>{e=!0,clearInterval(n)}},[f]);let C=(0,r.useMemo)(()=>({updateInfo:d,checking:p,hasUpdate:k,canSelfUpdate:j,state:f,logPath:x,errorKey:b,openConfirm:N,cancel:S,confirm:E}),[d,p,k,j,f,x,b,N,S,E]);return(0,a.jsxs)(c.Provider,{value:C,children:[n,(0,a.jsx)(s.TM,{isOpen:"confirming"===f,title:l("update.confirmTitle"),description:l("update.confirmDescription",{version:null!=(t=null==d?void 0:d.latestVersion)?t:""}),confirmLabel:l("update.confirmButton"),onConfirm:()=>{E()},onCancel:S})]})}function u(){return(0,r.useContext)(c)}},65380:(e,t,n)=>{n.d(t,{H:()=>s,O:()=>o});var a=n(95155),r=n(12115);let i=(0,r.createContext)(!1);function o(e){let{children:t,authEnabled:n}=e;return(0,a.jsx)(i.Provider,{value:n,children:t})}function s(){return(0,r.useContext)(i)}},68704:(e,t,n)=>{n.d(t,{Uf:()=>i,d8:()=>o,fM:()=>s,of:()=>c,r5:()=>r,rq:()=>l});var a=n(2317);let r="medium",i=["large","medium","small","xsmall"],o={large:{value:"large",rootFontSizePx:18,factor:1.125,terminalFontSize:16},medium:{value:"medium",rootFontSizePx:16,factor:1,terminalFontSize:14},small:{value:"small",rootFontSizePx:14,factor:.875,terminalFontSize:12},xsmall:{value:"xsmall",rootFontSizePx:12.5,factor:.78,terminalFontSize:11}};function s(e){return"string"==typeof e&&Object.prototype.hasOwnProperty.call(o,e)}function l(e){return o[e].terminalFontSize}function c(){let{value:e,setValue:t,isAvailable:n}=(0,a.V)({key:"mcbd-pc-display-size",defaultValue:r,validate:s});return{size:e,setSize:t,isAvailable:n}}},70628:(e,t,n)=>{n.d(t,{K:()=>s,S:()=>o});var a=n(95155),r=n(12115);let i=(0,r.createContext)({open:!1,setOpen:()=>{},toggle:()=>{}});function o(e){let{children:t}=e,[n,o]=(0,r.useState)(!1),s=(0,r.useCallback)(()=>o(e=>!e),[]),l=(0,r.useMemo)(()=>({open:n,setOpen:o,toggle:s}),[n,s]);return(0,a.jsx)(i.Provider,{value:l,children:t})}function s(){return(0,r.useContext)(i)}},72137:(e,t,n)=>{n.d(t,{H:()=>p});var a=n(95155),r=n(12115),i=n(18955),o=n(68695),s=n(31166),l=n(94465),c=n(79361),d=n(63470),u=n(38218);function p(){var e,t;let n=(0,i.c)("worktree"),p=(0,u.a)(),{updateInfo:m,hasUpdate:f,canSelfUpdate:h,state:x,openConfirm:g}=(0,d.Y)(),[b,y]=(0,r.useState)(!1),w=null!=(e=null==m?void 0:m.latestVersion)?e:null;if(p||!w||"idle"===x&&!f)return null;let v="starting"===x||"updating"===x,k="no-restart"===x||"timeout"===x||"error"===x,j=n("update.buttonLabel",{version:w});return h||v||k?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(s.$,{type:"button",variant:"primary",size:"sm",loading:v,onClick:k?()=>y(!0):g,className:"flex-shrink-0 gap-1.5 whitespace-nowrap","aria-label":v?n("update.buttonUpdating"):n("update.buttonAriaLabel",{version:w}),"aria-haspopup":"dialog","aria-busy":v,"data-testid":"app-update-button","data-state":x,children:[!v&&(0,a.jsx)(o.A,{size:16,"aria-hidden":"true"}),(0,a.jsx)("span",{children:v?n("update.buttonUpdating"):j})]}),k&&(0,a.jsx)(l.a,{isOpen:b,onClose:()=>y(!1),title:n("update.statusDialogTitle"),size:"sm",children:(0,a.jsx)(c.V,{})})]}):(0,a.jsxs)("a",{href:null!=(t=null==m?void 0:m.releaseUrl)?t:"https://github.com/Kewton/CommandMate/releases/latest",target:"_blank",rel:"noopener noreferrer",className:"inline-flex flex-shrink-0 items-center justify-center gap-1.5 whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium bg-accent-600 dark:bg-accent-500 text-white hover:bg-accent-700 dark:hover:bg-accent-600 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring","aria-label":n("update.buttonReleaseAriaLabel",{version:w}),"data-testid":"app-update-button",children:[(0,a.jsx)(o.A,{size:16,"aria-hidden":"true"}),(0,a.jsx)("span",{children:j})]})}},79361:(e,t,n)=>{n.d(t,{V:()=>l});var a=n(95155),r=n(18955),i=n(63470),o=n(31166),s=n(3005);function l(){let e=(0,r.c)("worktree"),{updateInfo:t,hasUpdate:n,canSelfUpdate:l,state:c,logPath:d,errorKey:u,openConfirm:p}=(0,i.Y)();if(!t||!n&&"idle"===c)return null;let{latestVersion:m,releaseUrl:f,updateCommand:h,installType:x}=t,g="npx"===x,b=g?"npx commandmate@latest":"commandmate update";return(0,a.jsxs)("div",{className:"bg-accent-50 border border-accent-200 rounded-lg p-3 mt-2",role:"status","aria-label":e("update.available"),"data-testid":"update-notification-banner",children:[(0,a.jsx)("p",{className:"text-sm font-medium text-accent-800 mb-1",children:e("update.available")}),m&&(0,a.jsx)("p",{className:"text-sm text-accent-700 mb-2",children:e("update.latestVersion",{version:m})}),l&&"idle"===c&&(0,a.jsx)(o.$,{variant:"primary",size:"sm",className:"mb-2",onClick:p,"data-testid":"update-now-button",children:e("update.updateNow")}),g&&"idle"===c&&(0,a.jsx)("p",{className:"text-xs text-accent-600 mb-2","data-testid":"update-npx-notice",children:e("update.npxRestartNotice")}),("starting"===c||"updating"===c)&&(0,a.jsxs)("div",{className:"mb-2","data-testid":"update-progress",children:[(0,a.jsxs)("p",{className:"flex items-center text-sm text-accent-800",children:[(0,a.jsx)(s.y,{size:"sm",className:"mr-2"}),e("starting"===c?"update.starting":"update.updating")]}),"updating"===c&&(0,a.jsx)("p",{className:"text-xs text-accent-600 mt-1",children:e("update.updatingHint")})]}),"no-restart"===c&&(0,a.jsxs)("div",{className:"mb-2","data-testid":"update-no-restart",children:[(0,a.jsx)("p",{className:"text-sm font-medium text-accent-800",children:e("update.noRestartTitle")}),(0,a.jsx)("p",{className:"text-xs text-accent-600 mt-1",children:e("update.noRestartDescription")})]}),"timeout"===c&&(0,a.jsxs)("div",{className:"mb-2","data-testid":"update-timeout",children:[(0,a.jsx)("p",{className:"text-sm font-medium text-accent-800",children:e("update.timeoutTitle")}),(0,a.jsx)("p",{className:"text-xs text-accent-600 mt-1",children:e("update.timeoutDescription")}),(0,a.jsx)("code",{className:"block bg-accent-100 rounded px-2 py-1 mt-1 text-xs text-accent-900 font-mono",children:b})]}),"error"===c&&(0,a.jsxs)("div",{className:"mb-2","data-testid":"update-error",children:[(0,a.jsx)("p",{className:"text-sm font-medium text-accent-800",children:e("update.errorTitle")}),(0,a.jsx)("p",{className:"text-xs text-accent-600 mt-1",children:u?e(u):null}),(0,a.jsx)("code",{className:"block bg-accent-100 rounded px-2 py-1 mt-1 text-xs text-accent-900 font-mono",children:b})]}),d&&("no-restart"===c||"timeout"===c)&&(0,a.jsx)("p",{className:"text-xs text-accent-500 mb-2","data-testid":"update-log-hint",children:e("update.logHint",{path:d})}),h&&"global"===x&&"idle"===c&&(0,a.jsxs)("div",{className:"mb-2",children:[(0,a.jsx)("p",{className:"text-xs text-accent-600 mb-1",children:e("update.updateCommand")}),(0,a.jsx)("code",{className:"block bg-accent-100 rounded px-2 py-1 text-xs text-accent-900 font-mono",children:h})]}),f&&(0,a.jsxs)("a",{href:f,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center text-sm text-accent-600 hover:text-accent-800 underline",children:[e("update.viewRelease"),(0,a.jsx)("span",{className:"ml-1","aria-hidden":"true",children:"→"})]}),(0,a.jsx)("p",{className:"text-xs text-accent-500 mt-2",children:e("update.dataPreserved")})]})}},89275:(e,t,n)=>{n.d(t,{Bo:()=>d,Hq:()=>l});var a=n(95155),r=n(12115),i=n(20063);let o={startTransition:e=>e()},s=(0,r.createContext)(null);function l(){var e;let t=(0,i.useRouter)(),{startTransition:n}=null!=(e=(0,r.useContext)(s))?e:o;return(0,r.useMemo)(()=>({push:e=>n(()=>t.push(e)),replace:e=>n(()=>t.replace(e))}),[t,n])}function c(e){let{onCommit:t}=e,n=(0,i.usePathname)(),a=(0,r.useRef)(!1);return(0,r.useEffect)(()=>{if(!a.current){a.current=!0;return}t()},[n,t]),null}function d(e){let{children:t}=e,n=(0,r.useRef)(null),i=(0,r.useCallback)(()=>{var e;null==(e=n.current)||e.call(n)},[]),o=(0,r.useCallback)(e=>{var t;t=()=>new Promise(t=>{let a=!1,r=()=>{a||(a=!0,t())};n.current=r,e(),window.setTimeout(r,500)}),"undefined"==typeof document||"function"!=typeof document.startViewTransition||"function"==typeof window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches?t():document.startViewTransition(t)},[]),l=(0,r.useMemo)(()=>({startTransition:o}),[o]);return(0,a.jsxs)(s.Provider,{value:l,children:[(0,a.jsx)(c,{onCommit:i}),t]})}},92614:(e,t,n)=>{n.d(t,{C:()=>s,E:()=>o});var a=n(95155),r=n(12115);let i=(0,r.createContext)({open:!1,setOpen:()=>{},toggle:()=>{}});function o(e){let{children:t}=e,[n,o]=(0,r.useState)(!1),s=(0,r.useCallback)(()=>o(e=>!e),[]),l=(0,r.useMemo)(()=>({open:n,setOpen:o,toggle:s}),[n,s]);return(0,a.jsx)(i.Provider,{value:l,children:t})}function s(){return(0,r.useContext)(i)}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11,66,74,263,341,532,543,640,836,865,890,960,1099,1123,1158,1164,1274,1295,1310,1317,1327,1337,1360,1363,1377,1421,1437,1523,1645,1652,1745,1796,1972,2017,2046,2117,2132,2207,2260,2344,2360,2464,2548,2609,2786,2852,2893,3002,3175,3350,3657,3685,3792,3797,3845,3965,3969,3990,4016,4035,4042,4199,4225,4240,4275,4468,4476,4594,4614,4748,4767,4779,4907,4961,4985,5004,5145,5286,5332,5522,5580,5657,5683,5832,6067,6140,6194,6248,6393,6451,6564,6635,6680,6734,6824,6839,6901,7e3,7115,7238,7473,7509,7560,7670,7758,7760,7895,7921,7939,8043,8238,8418,8457,8460,8464,8472,8489,8509,8544,8658,8710,8914,8979,9015,9059,9114,9162,9245,9281,9282,9325,9416,9549,9602,9792,9932,9946,9968],{84441:()=>{}},_=>{_.O(0,[8441,1255,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|