conductor-oss 0.2.4 → 0.2.6
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/README.md +29 -6
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +3 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/setup.d.ts +30 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +131 -29
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/start.d.ts +3 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +209 -15
- package/dist/commands/start.js.map +1 -1
- package/dist/index.js +1 -1
- package/node_modules/@conductor-oss/core/dist/board-diagnostics.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/board-diagnostics.js +12 -2
- package/node_modules/@conductor-oss/core/dist/board-diagnostics.js.map +1 -1
- package/node_modules/@conductor-oss/core/dist/board-watcher.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/board-watcher.js +18 -5
- package/node_modules/@conductor-oss/core/dist/board-watcher.js.map +1 -1
- package/node_modules/@conductor-oss/core/dist/config.d.ts +1 -1
- package/node_modules/@conductor-oss/core/dist/config.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/config.js +36 -1
- package/node_modules/@conductor-oss/core/dist/config.js.map +1 -1
- package/node_modules/@conductor-oss/core/dist/index.d.ts +1 -0
- package/node_modules/@conductor-oss/core/dist/index.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/index.js +1 -0
- package/node_modules/@conductor-oss/core/dist/index.js.map +1 -1
- package/node_modules/@conductor-oss/core/dist/project-paths.d.ts +2 -0
- package/node_modules/@conductor-oss/core/dist/project-paths.d.ts.map +1 -0
- package/node_modules/@conductor-oss/core/dist/project-paths.js +67 -0
- package/node_modules/@conductor-oss/core/dist/project-paths.js.map +1 -0
- package/node_modules/@conductor-oss/core/dist/scaffold.d.ts +14 -0
- package/node_modules/@conductor-oss/core/dist/scaffold.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/scaffold.js +27 -4
- package/node_modules/@conductor-oss/core/dist/scaffold.js.map +1 -1
- package/node_modules/@conductor-oss/core/dist/types.d.ts +71 -0
- package/node_modules/@conductor-oss/core/dist/types.d.ts.map +1 -1
- package/node_modules/@conductor-oss/core/dist/types.js +244 -0
- package/node_modules/@conductor-oss/core/dist/types.js.map +1 -1
- package/node_modules/@conductor-oss/core/package.json +1 -1
- package/node_modules/@conductor-oss/plugin-agent-amp/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-amp/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-ccr/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-ccr/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-claude-code/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-claude-code/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-codex/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-codex/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-cursor-cli/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-cursor-cli/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-droid/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-droid/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-gemini/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-gemini/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-github-copilot/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-github-copilot/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-opencode/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-agent-opencode/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-agent-qwen-code/dist/index.js +10 -6
- package/node_modules/@conductor-oss/plugin-agent-qwen-code/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-mcp-server/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-mcp-server/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-notifier-desktop/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-notifier-desktop/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-notifier-discord/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-notifier-discord/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-runtime-tmux/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-runtime-tmux/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-scm-github/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-scm-github/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-terminal-web/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-terminal-web/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-tracker-github/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-tracker-github/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-webhook/package.json +2 -2
- package/node_modules/@conductor-oss/plugin-workspace-worktree/dist/index.js +1 -1
- package/node_modules/@conductor-oss/plugin-workspace-worktree/package.json +2 -2
- package/package.json +22 -21
- package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +5 -1
- package/web/.next/standalone/packages/web/.next/build-manifest.json +4 -4
- package/web/.next/standalone/packages/web/.next/routes-manifest.json +24 -0
- package/web/.next/standalone/packages/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.rsc +9 -9
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_full.segment.rsc +9 -9
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_index.segment.rsc +5 -5
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/web/.next/standalone/packages/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route/app-paths-manifest.json +3 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route/build-manifest.json +11 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route/server-reference-manifest.json +4 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +11 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js.map +5 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js.nft.json +1 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route_client-reference-manifest.js +2 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route/app-paths-manifest.json +3 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route/build-manifest.json +11 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route/server-reference-manifest.json +4 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route.js +8 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route.js.map +5 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route.js.nft.json +1 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/auth/session/route_client-reference-manifest.js +2 -0
- package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feedback/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feedback/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/send/route.js +4 -2
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/send/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +3 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +5 -3
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route/app-paths-manifest.json +3 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route/build-manifest.json +11 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route/server-reference-manifest.json +4 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route.js +8 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route.js.map +5 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route.js.nft.json +1 -0
- package/web/.next/standalone/packages/web/.next/server/app/auth/grant/route_client-reference-manifest.js +2 -0
- package/web/.next/standalone/packages/web/.next/server/app/index.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/index.rsc +4 -4
- package/web/.next/standalone/packages/web/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
- package/web/.next/standalone/packages/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/web/.next/standalone/packages/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/page/build-manifest.json +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page/build-manifest.json +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page/build-manifest.json +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page/app-paths-manifest.json +3 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page/build-manifest.json +18 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page/next-font-manifest.json +14 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page/react-loadable-manifest.json +1 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page/server-reference-manifest.json +110 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +19 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.map +5 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -0
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +2 -0
- package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +5 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/1bc17_next_dist_esm_build_templates_app-route_1651710d.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/1bc17_next_dist_esm_build_templates_app-route_34b04c2b.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/1bc17_next_dist_esm_build_templates_app-route_9c655a1d.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/1bc17_next_dist_esm_build_templates_app-route_b41c4976.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/1bc17_next_dist_esm_build_templates_app-route_f4104ae4.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__005aa909._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__03ff76ee._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__07ec6d5c._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__0a0f0f01._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__0ad3545b._.js +5 -5
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__39e2947e._.js → [root-of-the-server]__0c65150d._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__000a39bb._.js → [root-of-the-server]__0d615ef4._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__13ad088c._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__14b1d4a3._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__4266ed21._.js → [root-of-the-server]__14d277b3._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1741fb8a._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__17d81825._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__04d7f8e9._.js → [root-of-the-server]__1b7c6a55._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1e288076._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1f626a16._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__1f712b77._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2062aaab._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__206c3d8a._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__9469f247._.js → [root-of-the-server]__230d54da._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__24d8e6fc._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2556a816._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2af6c2e0._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2d57abda._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__30b0f109._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__30c75561._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__31c39bd9._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__49d4f276._.js → [root-of-the-server]__341657dd._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__34a19860._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3fde7043._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__40c8037e._.js +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__41ee872a._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__44606e04._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__44d59fd0._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__459839a6._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__46a8e776._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__48875cbb._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__53306f53._.js → [root-of-the-server]__488ab4b2._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4ac9d639._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4c3fb752._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__4dab6a6a._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__544326ac._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5494c5a2._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__54a218f0._.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__54a76cd2._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5661ca72._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__568f0a6e._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5cd49624._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5d76c5af._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5e0533de._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5f628cf2._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__62608541._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6d62709d._.js +5 -5
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6e4e09be._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__70258e45._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__917adaec._.js → [root-of-the-server]__711dc459._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__720136dd._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__749331b0._.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__755c7e10._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__778e46a1._.js +5 -5
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7e6ea46e._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7f023a04._.js +4 -4
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7f2ed2cd._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7fa52da6._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__82171aa3._.js +9 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__84362910._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__848eb266._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8596d782._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__85c5cb36._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__878fbacc._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__881858fa._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__885e3a00._.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__893f6b3b._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8ac30f97._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8c519453._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__919845e0._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__6b396859._.js → [root-of-the-server]__927b9bce._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__93b3582e._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__964f4e89._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__96633022._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__98697e45._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__997ebfca._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9c930222._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__9f36b7ec._.js +5 -5
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a44f91a4._.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__3319a78c._.js → [root-of-the-server]__a5d13971._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a6c7bd91._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ae580a1a._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__af533b5e._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__afa79f55._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b057f7b2._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b59abfbd._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bd8ace80._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__be0f2c29._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bea07e07._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c8618cb1._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__caf8e7cb._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cb112606._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cb51f2e3._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cba32afb._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cc74ea40._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cd3692a0._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__cf3cdecd._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d09e7a99._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d538c110._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d93447b9._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__d9c80b18._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__dc0959da._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__dda8eac1._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__df2c6efe._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e113f6df._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e2573a77._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e2d60274._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e308bb89._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e345a443._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e80a520f._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ea0bb124._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ef773ea6._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f0d15920._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/{[root-of-the-server]__b029d2c1._.js → [root-of-the-server]__f2f30c04._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f47a2a9e._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f48eb2d4._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f6a8bbd9._.js +12 -12
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__faceea9b._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fb6ab669._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fcf96768._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fdaa8058._.js +7 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ff2b205d._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_core_dist_index_cdd30418.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-amp_dist_index_bf3d8239.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-ccr_dist_index_69cbf726.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-claude-code_dist_index_31314e43.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-cursor-cli_dist_index_8d5cc426.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-droid_dist_index_f731227a.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-gemini_dist_index_b2d219e8.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-github-copilot_dist_index_9f80cb45.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-opencode_dist_index_7c7015da.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_agent-qwen-code_dist_index_46dd8653.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_notifier-desktop_dist_index_ef3473f0.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_notifier-discord_dist_index_34257226.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_scm-github_dist_index_3b5a621e.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_terminal-web_dist_index_1e0706d3.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_plugins_tracker-github_dist_index_2d7af62f.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_web__next-internal_server_app_api_access_route_actions_06740e99.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_web__next-internal_server_app_api_auth_session_route_actions_078c0ee4.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_web__next-internal_server_app_auth_grant_route_actions_13ba4421.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_web_src_lib_13fee5eb._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/packages_web_src_lib_d64596cc._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__1ddf22db._.js → [root-of-the-server]__1012a4c8._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__ed81e796._.js → [root-of-the-server]__81affb12._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__95e85d3d._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__f577d85a._.js → [root-of-the-server]__9d698773._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__a38f483b._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__3bf3fbfb._.js → [root-of-the-server]__c09a0c60._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/[root-of-the-server]__d9dde485._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__d5970f3e._.js → [root-of-the-server]__dd435d80._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{[root-of-the-server]__469db3c3._.js → [root-of-the-server]__e78955d0._.js} +2 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_14a33487._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/_34d55bf1._.js +4 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/{node_modules__pnpm_c636dc22._.js → node_modules__pnpm_597c265e._.js} +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_app_page_tsx_cd282e82._.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/ssr/packages_web_src_app_unlock_UnlockForm_tsx_ce3149a7._.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +2 -2
- package/web/.next/standalone/packages/web/.next/server/middleware.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/next-font-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/next-font-manifest.json +7 -0
- package/web/.next/standalone/packages/web/.next/server/pages/404.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/pages/500.html +2 -2
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +56 -7
- package/web/.next/standalone/packages/web/.next/static/chunks/{9b799cd7eb9a34ff.js → 1c4c14af475ada00.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/ba68284a3401d670.css +3 -0
- package/web/.next/{static/chunks/4372fb4d7779cd64.js → standalone/packages/web/.next/static/chunks/d00ddc86d1af3b6d.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/d8f4bf59132f70fd.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/f355d4d60f0ec80e.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/{turbopack-c3449aaab622f98c.js → turbopack-dc658d17ee981623.js} +1 -1
- package/web/.next/standalone/packages/web/package.json +1 -0
- package/web/.next/standalone/packages/web/src/app/api/access/route.ts +214 -0
- package/web/.next/standalone/packages/web/src/app/api/agents/route.ts +2 -2
- package/web/.next/standalone/packages/web/src/app/api/attachments/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/auth/session/route.ts +54 -0
- package/web/.next/standalone/packages/web/src/app/api/boards/route.ts +2 -2
- package/web/.next/standalone/packages/web/src/app/api/config/route.ts +2 -1
- package/web/.next/standalone/packages/web/src/app/api/context-files/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/events/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/filesystem/directory/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/github/repos/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/health/boards/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/preferences/route.ts +11 -3
- package/web/.next/standalone/packages/web/src/app/api/repositories/route.ts +21 -3
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/checks/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/diff/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/feedback/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/files/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/keys/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/kill/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/output/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/output/stream/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/restore/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/[id]/send/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/sessions/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/spawn/route.ts +3 -2
- package/web/.next/standalone/packages/web/src/app/api/workspaces/branches/route.ts +1 -1
- package/web/.next/standalone/packages/web/src/app/api/workspaces/route.ts +11 -3
- package/web/.next/standalone/packages/web/src/app/auth/grant/route.ts +37 -0
- package/web/.next/standalone/packages/web/src/app/page.tsx +763 -9
- package/web/.next/standalone/packages/web/src/app/unlock/UnlockForm.tsx +77 -0
- package/web/.next/standalone/packages/web/src/app/unlock/page.tsx +41 -0
- package/web/.next/standalone/packages/web/src/components/Dashboard.tsx +11 -125
- package/web/.next/standalone/packages/web/src/hooks/useConfig.ts +4 -0
- package/web/.next/standalone/packages/web/src/lib/accessControl.test.ts +46 -0
- package/web/.next/standalone/packages/web/src/lib/accessControl.ts +115 -0
- package/web/.next/standalone/packages/web/src/lib/auth.ts +294 -53
- package/web/.next/standalone/packages/web/src/lib/edgeAuth.test.ts +91 -0
- package/web/.next/standalone/packages/web/src/lib/edgeAuth.ts +205 -0
- package/web/.next/standalone/packages/web/src/lib/modelAccess.ts +40 -0
- package/web/.next/standalone/packages/web/src/lib/projectConfigSync.ts +59 -9
- package/web/.next/standalone/packages/web/src/lib/remoteAuth.ts +104 -0
- package/web/.next/standalone/packages/web/src/proxy.ts +64 -0
- package/web/.next/standalone/packages/web/tsconfig.tsbuildinfo +1 -1
- package/web/.next/static/chunks/{9b799cd7eb9a34ff.js → 1c4c14af475ada00.js} +1 -1
- package/web/.next/static/chunks/ba68284a3401d670.css +3 -0
- package/web/.next/{standalone/packages/web/.next/static/chunks/4372fb4d7779cd64.js → static/chunks/d00ddc86d1af3b6d.js} +1 -1
- package/web/.next/static/chunks/d8f4bf59132f70fd.js +1 -0
- package/web/.next/static/chunks/f355d4d60f0ec80e.js +1 -0
- package/web/.next/static/chunks/{turbopack-c3449aaab622f98c.js → turbopack-dc658d17ee981623.js} +1 -1
- package/node_modules/@conductor-oss/core/dist/__tests__/board-parser.test.d.ts +0 -2
- package/node_modules/@conductor-oss/core/dist/__tests__/board-parser.test.d.ts.map +0 -1
- package/node_modules/@conductor-oss/core/dist/__tests__/board-parser.test.js +0 -67
- package/node_modules/@conductor-oss/core/dist/__tests__/board-parser.test.js.map +0 -1
- package/node_modules/@conductor-oss/core/dist/__tests__/board-watcher-support-files.test.d.ts +0 -2
- package/node_modules/@conductor-oss/core/dist/__tests__/board-watcher-support-files.test.d.ts.map +0 -1
- package/node_modules/@conductor-oss/core/dist/__tests__/board-watcher-support-files.test.js +0 -104
- package/node_modules/@conductor-oss/core/dist/__tests__/board-watcher-support-files.test.js.map +0 -1
- package/node_modules/@conductor-oss/core/dist/agent-cli-runtime.d.ts +0 -20
- package/node_modules/@conductor-oss/core/dist/agent-cli-runtime.d.ts.map +0 -1
- package/node_modules/@conductor-oss/core/dist/agent-cli-runtime.js +0 -192
- package/node_modules/@conductor-oss/core/dist/agent-cli-runtime.js.map +0 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__019d9c90._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__08a3e108._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__0b0ab434._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__16fb4c3e._.js +0 -9
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__22609b55._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__2ff87bed._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__3c1772ab._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5093c7e0._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5a67f1f9._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__5cf55740._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6bc94363._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6cad94c3._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6d28affc._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__6f84fa49._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__70c9c405._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__711294a3._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7791414d._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__7fb2ee11._.js +0 -7
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__86646048._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__8ca91fef._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a15b5527._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a4a89ac9._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a8a53d4a._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__a93c59df._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__abf6274f._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__acd4519a._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__b87de88e._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__bc304d71._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__be52402d._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__be74f171._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c03aa571._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c2850420._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c82b8934._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__c8e31ad0._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__deafbc7a._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e18c8e77._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__e1f610fb._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ec21c9a4._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ec256a62._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__edc8e5a5._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ee0dea96._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f2c28004._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f7c743c0._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__f95f5172._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__fc292e1c._.js +0 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/[root-of-the-server]__ffbf3faf._.js +0 -3
- package/web/.next/standalone/packages/web/.next/static/chunks/687bc713618f6993.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/e7bb96d7efad8e32.css +0 -3
- package/web/.next/static/chunks/687bc713618f6993.js +0 -1
- package/web/.next/static/chunks/e7bb96d7efad8e32.css +0 -3
- /package/web/.next/standalone/packages/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_buildManifest.js +0 -0
- /package/web/.next/standalone/packages/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/standalone/packages/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_ssgManifest.js +0 -0
- /package/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_buildManifest.js +0 -0
- /package/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_clientMiddlewareManifest.json +0 -0
- /package/web/.next/static/{D95FTb8SiR6uFzjCQiKtd → tV9IvZT_f540bpw2KonCu}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[62587,a=>{"use strict";let b,c;var d,e,f,g,h,i,j,k,l=a.i(4465),m=a.i(50547),n=a.i(59653),o=a.i(80303),p=a.i(95819),q=a.i(47427),r=a.i(91974),s=a.i(28869),t=a.i(60380),u=a.i(8725),v="dismissableLayer.update",w=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),x=m.forwardRef((a,b)=>{let{disableOutsidePointerEvents:c=!1,onEscapeKeyDown:d,onPointerDownOutside:e,onFocusOutside:f,onInteractOutside:g,onDismiss:h,...i}=a,k=m.useContext(w),[p,q]=m.useState(null),s=p?.ownerDocument??globalThis?.document,[,t]=m.useState({}),x=(0,o.useComposedRefs)(b,a=>q(a)),A=Array.from(k.layers),[B]=[...k.layersWithOutsidePointerEventsDisabled].slice(-1),C=A.indexOf(B),D=p?A.indexOf(p):-1,E=k.layersWithOutsidePointerEventsDisabled.size>0,F=D>=C,G=function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a),d=m.useRef(!1),e=m.useRef(()=>{});return m.useEffect(()=>{let a=a=>{if(a.target&&!d.current){let d=function(){z("dismissableLayer.pointerDownOutside",c,f,{discrete:!0})},f={originalEvent:a};"touch"===a.pointerType?(b.removeEventListener("click",e.current),e.current=d,b.addEventListener("click",e.current,{once:!0})):d()}else b.removeEventListener("click",e.current);d.current=!1},f=window.setTimeout(()=>{b.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(f),b.removeEventListener("pointerdown",a),b.removeEventListener("click",e.current)}},[b,c]),{onPointerDownCapture:()=>d.current=!0}}(a=>{let b=a.target,c=[...k.branches].some(a=>a.contains(b));F&&!c&&(e?.(a),g?.(a),a.defaultPrevented||h?.())},s),H=function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a),d=m.useRef(!1);return m.useEffect(()=>{let a=a=>{a.target&&!d.current&&z("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})};return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:()=>d.current=!0,onBlurCapture:()=>d.current=!1}}(a=>{let b=a.target;![...k.branches].some(a=>a.contains(b))&&(f?.(a),g?.(a),a.defaultPrevented||h?.())},s);return!function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a);m.useEffect(()=>{let a=a=>{"Escape"===a.key&&c(a)};return b.addEventListener("keydown",a,{capture:!0}),()=>b.removeEventListener("keydown",a,{capture:!0})},[c,b])}(a=>{D===k.layers.size-1&&(d?.(a),!a.defaultPrevented&&h&&(a.preventDefault(),h()))},s),m.useEffect(()=>{if(p)return c&&(0===k.layersWithOutsidePointerEventsDisabled.size&&(j=s.body.style.pointerEvents,s.body.style.pointerEvents="none"),k.layersWithOutsidePointerEventsDisabled.add(p)),k.layers.add(p),y(),()=>{c&&1===k.layersWithOutsidePointerEventsDisabled.size&&(s.body.style.pointerEvents=j)}},[p,s,c,k]),m.useEffect(()=>()=>{p&&(k.layers.delete(p),k.layersWithOutsidePointerEventsDisabled.delete(p),y())},[p,k]),m.useEffect(()=>{let a=()=>t({});return document.addEventListener(v,a),()=>document.removeEventListener(v,a)},[]),(0,l.jsx)(r.Primitive.div,{...i,ref:x,style:{pointerEvents:E?F?"auto":"none":void 0,...a.style},onFocusCapture:(0,n.composeEventHandlers)(a.onFocusCapture,H.onFocusCapture),onBlurCapture:(0,n.composeEventHandlers)(a.onBlurCapture,H.onBlurCapture),onPointerDownCapture:(0,n.composeEventHandlers)(a.onPointerDownCapture,G.onPointerDownCapture)})});function y(){let a=new CustomEvent(v);document.dispatchEvent(a)}function z(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});b&&e.addEventListener(a,b,{once:!0}),d?(0,r.dispatchDiscreteCustomEvent)(e,f):e.dispatchEvent(f)}x.displayName="DismissableLayer",m.forwardRef((a,b)=>{let c=m.useContext(w),d=m.useRef(null),e=(0,o.useComposedRefs)(b,d);return m.useEffect(()=>{let a=d.current;if(a)return c.branches.add(a),()=>{c.branches.delete(a)}},[c.branches]),(0,l.jsx)(r.Primitive.div,{...a,ref:e})}).displayName="DismissableLayerBranch";var A=0;function B(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var C="focusScope.autoFocusOnMount",D="focusScope.autoFocusOnUnmount",E={bubbles:!1,cancelable:!0},F=m.forwardRef((a,b)=>{let{loop:c=!1,trapped:d=!1,onMountAutoFocus:e,onUnmountAutoFocus:f,...g}=a,[h,i]=m.useState(null),j=(0,u.useCallbackRef)(e),k=(0,u.useCallbackRef)(f),n=m.useRef(null),p=(0,o.useComposedRefs)(b,a=>i(a)),q=m.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;m.useEffect(()=>{if(d){let a=function(a){if(q.paused||!h)return;let b=a.target;h.contains(b)?n.current=b:I(n.current,{select:!0})},b=function(a){if(q.paused||!h)return;let b=a.relatedTarget;null!==b&&(h.contains(b)||I(n.current,{select:!0}))};document.addEventListener("focusin",a),document.addEventListener("focusout",b);let c=new MutationObserver(function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&I(h)});return h&&c.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),c.disconnect()}}},[d,h,q.paused]),m.useEffect(()=>{if(h){J.add(q);let a=document.activeElement;if(!h.contains(a)){let b=new CustomEvent(C,E);h.addEventListener(C,j),h.dispatchEvent(b),b.defaultPrevented||(function(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(I(d,{select:b}),document.activeElement!==c)return}(G(h).filter(a=>"A"!==a.tagName),{select:!0}),document.activeElement===a&&I(h))}return()=>{h.removeEventListener(C,j),setTimeout(()=>{let b=new CustomEvent(D,E);h.addEventListener(D,k),h.dispatchEvent(b),b.defaultPrevented||I(a??document.body,{select:!0}),h.removeEventListener(D,k),J.remove(q)},0)}}},[h,j,k,q]);let s=m.useCallback(a=>{if(!c&&!d||q.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,e=document.activeElement;if(b&&e){var f;let b,d=a.currentTarget,[g,h]=[H(b=G(f=d),f),H(b.reverse(),f)];g&&h?a.shiftKey||e!==h?a.shiftKey&&e===g&&(a.preventDefault(),c&&I(h,{select:!0})):(a.preventDefault(),c&&I(g,{select:!0})):e===d&&a.preventDefault()}},[c,d,q.paused]);return(0,l.jsx)(r.Primitive.div,{tabIndex:-1,...g,ref:p,onKeyDown:s})});function G(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;c.nextNode();)b.push(c.currentNode);return b}function H(a,b){for(let c of a)if(!function(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}(c,{upTo:b}))return c}function I(a,{select:b=!1}={}){if(a&&a.focus){var c;let d=document.activeElement;a.focus({preventScroll:!0}),a!==d&&(c=a)instanceof HTMLInputElement&&"select"in c&&b&&a.select()}}F.displayName="FocusScope";var J=(c=[],{add(a){let b=c[0];a!==b&&b?.pause(),(c=K(c,a)).unshift(a)},remove(a){c=K(c,a),c[0]?.resume()}});function K(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}var L=a.i(55277);let M=["top","right","bottom","left"],N=Math.min,O=Math.max,P=Math.round,Q=Math.floor,R=a=>({x:a,y:a}),S={left:"right",right:"left",bottom:"top",top:"bottom"};function T(a,b){return"function"==typeof a?a(b):a}function U(a){return a.split("-")[0]}function V(a){return a.split("-")[1]}function W(a){return"x"===a?"y":"x"}function X(a){return"y"===a?"height":"width"}function Y(a){let b=a[0];return"t"===b||"b"===b?"y":"x"}function Z(a){return a.includes("start")?a.replace("start","end"):a.replace("end","start")}let $=["left","right"],_=["right","left"],aa=["top","bottom"],ab=["bottom","top"];function ac(a){let b=U(a);return S[b]+a.slice(b.length)}function ad(a){return"number"!=typeof a?{top:0,right:0,bottom:0,left:0,...a}:{top:a,right:a,bottom:a,left:a}}function ae(a){let{x:b,y:c,width:d,height:e}=a;return{width:d,height:e,top:c,left:b,right:b+d,bottom:c+e,x:b,y:c}}function af(a,b,c){let d,{reference:e,floating:f}=a,g=Y(b),h=W(Y(b)),i=X(h),j=U(b),k="y"===g,l=e.x+e.width/2-f.width/2,m=e.y+e.height/2-f.height/2,n=e[i]/2-f[i]/2;switch(j){case"top":d={x:l,y:e.y-f.height};break;case"bottom":d={x:l,y:e.y+e.height};break;case"right":d={x:e.x+e.width,y:m};break;case"left":d={x:e.x-f.width,y:m};break;default:d={x:e.x,y:e.y}}switch(V(b)){case"start":d[h]-=n*(c&&k?-1:1);break;case"end":d[h]+=n*(c&&k?-1:1)}return d}async function ag(a,b){var c;void 0===b&&(b={});let{x:d,y:e,platform:f,rects:g,elements:h,strategy:i}=a,{boundary:j="clippingAncestors",rootBoundary:k="viewport",elementContext:l="floating",altBoundary:m=!1,padding:n=0}=T(b,a),o=ad(n),p=h[m?"floating"===l?"reference":"floating":l],q=ae(await f.getClippingRect({element:null==(c=await (null==f.isElement?void 0:f.isElement(p)))||c?p:p.contextElement||await (null==f.getDocumentElement?void 0:f.getDocumentElement(h.floating)),boundary:j,rootBoundary:k,strategy:i})),r="floating"===l?{x:d,y:e,width:g.floating.width,height:g.floating.height}:g.reference,s=await (null==f.getOffsetParent?void 0:f.getOffsetParent(h.floating)),t=await (null==f.isElement?void 0:f.isElement(s))&&await (null==f.getScale?void 0:f.getScale(s))||{x:1,y:1},u=ae(f.convertOffsetParentRelativeRectToViewportRelativeRect?await f.convertOffsetParentRelativeRectToViewportRelativeRect({elements:h,rect:r,offsetParent:s,strategy:i}):r);return{top:(q.top-u.top+o.top)/t.y,bottom:(u.bottom-q.bottom+o.bottom)/t.y,left:(q.left-u.left+o.left)/t.x,right:(u.right-q.right+o.right)/t.x}}let ah=async(a,b,c)=>{let{placement:d="bottom",strategy:e="absolute",middleware:f=[],platform:g}=c,h=g.detectOverflow?g:{...g,detectOverflow:ag},i=await (null==g.isRTL?void 0:g.isRTL(b)),j=await g.getElementRects({reference:a,floating:b,strategy:e}),{x:k,y:l}=af(j,d,i),m=d,n=0,o={};for(let c=0;c<f.length;c++){let p=f[c];if(!p)continue;let{name:q,fn:r}=p,{x:s,y:t,data:u,reset:v}=await r({x:k,y:l,initialPlacement:d,placement:m,strategy:e,middlewareData:o,rects:j,platform:h,elements:{reference:a,floating:b}});k=null!=s?s:k,l=null!=t?t:l,o[q]={...o[q],...u},v&&n<50&&(n++,"object"==typeof v&&(v.placement&&(m=v.placement),v.rects&&(j=!0===v.rects?await g.getElementRects({reference:a,floating:b,strategy:e}):v.rects),{x:k,y:l}=af(j,m,i)),c=-1)}return{x:k,y:l,placement:m,strategy:e,middlewareData:o}};function ai(a,b){return{top:a.top-b.height,right:a.right-b.width,bottom:a.bottom-b.height,left:a.left-b.width}}function aj(a){return M.some(b=>a[b]>=0)}let ak=new Set(["left","top"]);async function al(a,b){let{placement:c,platform:d,elements:e}=a,f=await (null==d.isRTL?void 0:d.isRTL(e.floating)),g=U(c),h=V(c),i="y"===Y(c),j=ak.has(g)?-1:1,k=f&&i?-1:1,l=T(b,a),{mainAxis:m,crossAxis:n,alignmentAxis:o}="number"==typeof l?{mainAxis:l,crossAxis:0,alignmentAxis:null}:{mainAxis:l.mainAxis||0,crossAxis:l.crossAxis||0,alignmentAxis:l.alignmentAxis};return h&&"number"==typeof o&&(n="end"===h?-1*o:o),i?{x:n*k,y:m*j}:{x:m*j,y:n*k}}function am(a){return function(a){return!1}(a)?(a.nodeName||"").toLowerCase():"#document"}function an(a){var b;return(null==a||null==(b=a.ownerDocument)?void 0:b.defaultView)||window}function ao(a){var b;return null==(b=(function(a){return!1}(a)?a.ownerDocument:a.document)||window.document)?void 0:b.documentElement}function ap(a){return!1}function aq(a){let{overflow:b,overflowX:c,overflowY:d,display:e}=ay(a);return/auto|scroll|overlay|hidden|clip/.test(b+d+c)&&"inline"!==e&&"contents"!==e}function ar(a){try{if(a.matches(":popover-open"))return!0}catch(a){}try{return a.matches(":modal")}catch(a){return!1}}let as=/transform|translate|scale|rotate|perspective|filter/,at=/paint|layout|strict|content/,au=a=>!!a&&"none"!==a;function av(a){let b=a;return au(b.transform)||au(b.translate)||au(b.scale)||au(b.rotate)||au(b.perspective)||!aw()&&(au(b.backdropFilter)||au(b.filter))||as.test(b.willChange||"")||at.test(b.contain||"")}function aw(){return null==b&&(b="u">typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),b}function ax(a){return/^(html|body|#document)$/.test(am(a))}function ay(a){return an(a).getComputedStyle(a)}function az(a){return{scrollLeft:a.scrollX,scrollTop:a.scrollY}}function aA(a){if("html"===am(a))return a;let b=a.assignedSlot||a.parentNode||!1||ao(a);return b}function aB(a,b,c){var d;void 0===b&&(b=[]),void 0===c&&(c=!0);let e=function a(b){let c=aA(b);return ax(c)?b.ownerDocument?b.ownerDocument.body:b.body:a(c)}(a),f=e===(null==(d=a.ownerDocument)?void 0:d.body),g=an(e);if(!f)return b.concat(e,aB(e,[],c));{let a=aC(g);return b.concat(g,g.visualViewport||[],aq(e)?e:[],a&&c?aB(a):[])}}function aC(a){return a.parent&&Object.getPrototypeOf(a.parent)?a.frameElement:null}function aD(a){let b=ay(a),c=parseFloat(b.width)||0,d=parseFloat(b.height)||0,e=!1,f=e?a.offsetWidth:c,g=e?a.offsetHeight:d,h=P(c)!==f||P(d)!==g;return h&&(c=f,d=g),{width:c,height:d,$:h}}function aE(a){return 0,a.contextElement}function aF(a){let b=aE(a);1;return R(1)}let aG=R(0);function aH(a){let b=an(a);return aw()&&b.visualViewport?{x:b.visualViewport.offsetLeft,y:b.visualViewport.offsetTop}:aG}function aI(a,b,c,d){var e;void 0===b&&(b=!1),void 0===c&&(c=!1);let f=a.getBoundingClientRect(),g=aE(a),h=R(1);b&&(d||(h=aF(a)));let i=(void 0===(e=c)&&(e=!1),d&&(!e||d===an(g))&&e)?aH(g):R(0),j=(f.left+i.x)/h.x,k=(f.top+i.y)/h.y,l=f.width/h.x,m=f.height/h.y;if(g){let a=an(g),b=d,c=a,e=aC(c);for(;e&&d&&b!==c;){let a=aF(e),b=e.getBoundingClientRect(),d=ay(e),f=b.left+(e.clientLeft+parseFloat(d.paddingLeft))*a.x,g=b.top+(e.clientTop+parseFloat(d.paddingTop))*a.y;j*=a.x,k*=a.y,l*=a.x,m*=a.y,j+=f,k+=g,e=aC(c=an(e))}}return ae({width:l,height:m,x:j,y:k})}function aJ(a,b){let c=az(a).scrollLeft;return b?b.left+c:aI(ao(a)).left+c}function aK(a,b){let c=a.getBoundingClientRect();return{x:c.left+b.scrollLeft-aJ(a,c),y:c.top+b.scrollTop}}function aL(a,b,c){var d;let e;if("viewport"===b)e=function(a,b){let c=an(a),d=ao(a),e=c.visualViewport,f=d.clientWidth,g=d.clientHeight,h=0,i=0;if(e){f=e.width,g=e.height;let a=aw();(!a||a&&"fixed"===b)&&(h=e.offsetLeft,i=e.offsetTop)}let j=aJ(d);if(j<=0){let a=d.ownerDocument,b=a.body,c=getComputedStyle(b),e="CSS1Compat"===a.compatMode&&parseFloat(c.marginLeft)+parseFloat(c.marginRight)||0,g=Math.abs(d.clientWidth-b.clientWidth-e);g<=25&&(f-=g)}else j<=25&&(f+=j);return{width:f,height:g,x:h,y:i}}(a,c);else if("document"===b){let b,c,f,g,h,i,j;d=ao(a),b=ao(d),c=az(d),f=d.ownerDocument.body,g=O(b.scrollWidth,b.clientWidth,f.scrollWidth,f.clientWidth),h=O(b.scrollHeight,b.clientHeight,f.scrollHeight,f.clientHeight),i=-c.scrollLeft+aJ(d),j=-c.scrollTop,"rtl"===ay(f).direction&&(i+=O(b.clientWidth,f.clientWidth)-g),e={width:g,height:h,x:i,y:j}}else{1;{let c=aH(a);e={x:b.x-c.x,y:b.y-c.y,width:b.width,height:b.height}}}return ae(e)}function aM(a){return"static"===ay(a).position}function aN(a,b){1;return null}function aO(a,b){var c;let d=an(a);if(ar(a))return d;1;{let b=aA(a);for(;b&&!ax(b);){0;b=aA(b)}return d}}let aP=async function(a){let b=this.getOffsetParent||aO,c=this.getDimensions,d=await c(a.floating);return{reference:function(a,b,c){var d;let e=(d=0,!1),f=ao(b),g="fixed"===c,h=aI(a,!0,g,b),i={scrollLeft:0,scrollTop:0},j=R(0);if(e||!e&&!g)if(("body"!==am(b)||aq(f))&&(i=az(b)),e){let a=aI(b,!0,g,b);j.x=a.x+b.clientLeft,j.y=a.y+b.clientTop}else f&&(j.x=aJ(f));g&&!e&&f&&(j.x=aJ(f));let k=!f||e||g?R(0):aK(f,i);return{x:h.left+i.scrollLeft-j.x-k.x,y:h.top+i.scrollTop-j.y-k.y,width:h.width,height:h.height}}(a.reference,await b(a.floating),a.strategy),floating:{x:0,y:0,width:d.width,height:d.height}}},aQ={convertOffsetParentRelativeRectToViewportRelativeRect:function(a){var b;let{elements:c,rect:d,offsetParent:e,strategy:f}=a,g="fixed"===f,h=ao(e),i=!!c&&ar(c.floating);if(e===h||i&&g)return d;let j={scrollLeft:0,scrollTop:0},k=R(1),l=R(0),m=(b=0,!1);if((m||!m&&!g)&&(("body"!==am(e)||aq(h))&&(j=az(e)),m)){let a=aI(e);k=aF(e),l.x=a.x+e.clientLeft,l.y=a.y+e.clientTop}let n=!h||m||g?R(0):aK(h,j);return{width:d.width*k.x,height:d.height*k.y,x:d.x*k.x-j.scrollLeft*k.x+l.x+n.x,y:d.y*k.y-j.scrollTop*k.y+l.y+n.y}},getDocumentElement:ao,getClippingRect:function(a){let{element:b,boundary:c,rootBoundary:d,strategy:e}=a,f=[..."clippingAncestors"===c?ar(b)?[]:function(a,b){var c;let d=b.get(a);if(d)return d;let e=aB(a,[],!1).filter(a=>{var b;return b=0,!1}),f="fixed"===ay(a).position,g=f?aA(a):a;return c=0,b.set(a,e),e}(b,this._c):[].concat(c),d],g=aL(b,f[0],e),h=g.top,i=g.right,j=g.bottom,k=g.left;for(let a=1;a<f.length;a++){let c=aL(b,f[a],e);h=O(c.top,h),i=N(c.right,i),j=N(c.bottom,j),k=O(c.left,k)}return{width:i-k,height:j-h,x:k,y:h}},getOffsetParent:aO,getElementRects:aP,getClientRects:function(a){return Array.from(a.getClientRects())},getDimensions:function(a){let{width:b,height:c}=aD(a);return{width:b,height:c}},getScale:aF,isElement:ap,isRTL:function(a){return"rtl"===ay(a).direction}};function aR(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}let aS=a=>({name:"arrow",options:a,async fn(b){let{x:c,y:d,placement:e,rects:f,platform:g,elements:h,middlewareData:i}=b,{element:j,padding:k=0}=T(a,b)||{};if(null==j)return{};let l=ad(k),m={x:c,y:d},n=W(Y(e)),o=X(n),p=await g.getDimensions(j),q="y"===n,r=q?"clientHeight":"clientWidth",s=f.reference[o]+f.reference[n]-m[n]-f.floating[o],t=m[n]-f.reference[n],u=await (null==g.getOffsetParent?void 0:g.getOffsetParent(j)),v=u?u[r]:0;v&&await (null==g.isElement?void 0:g.isElement(u))||(v=h.floating[r]||f.floating[o]);let w=v/2-p[o]/2-1,x=N(l[q?"top":"left"],w),y=N(l[q?"bottom":"right"],w),z=v-p[o]-y,A=v/2-p[o]/2+(s/2-t/2),B=O(x,N(A,z)),C=!i.arrow&&null!=V(e)&&A!==B&&f.reference[o]/2-(A<x?x:y)-p[o]/2<0,D=C?A<x?A-x:A-z:0;return{[n]:m[n]+D,data:{[n]:B,centerOffset:A-B-D,...C&&{alignmentOffset:D}},reset:C}}});var aT=a.i(14757),aU="u">typeof document?m.useLayoutEffect:function(){};function aV(a,b){let c,d,e;if(a===b)return!0;if(typeof a!=typeof b)return!1;if("function"==typeof a&&a.toString()===b.toString())return!0;if(a&&b&&"object"==typeof a){if(Array.isArray(a)){if((c=a.length)!==b.length)return!1;for(d=c;0!=d--;)if(!aV(a[d],b[d]))return!1;return!0}if((c=(e=Object.keys(a)).length)!==Object.keys(b).length)return!1;for(d=c;0!=d--;)if(!({}).hasOwnProperty.call(b,e[d]))return!1;for(d=c;0!=d--;){let c=e[d];if(("_owner"!==c||!a.$$typeof)&&!aV(a[c],b[c]))return!1}return!0}return a!=a&&b!=b}function aW(a,b){let c=1;return Math.round(b*c)/c}function aX(a){let b=m.useRef(a);return aU(()=>{b.current=a}),b}var aY=m.forwardRef((a,b)=>{let{children:c,width:d=10,height:e=5,...f}=a;return(0,l.jsx)(r.Primitive.svg,{...f,ref:b,width:d,height:e,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:a.asChild?c:(0,l.jsx)("polygon",{points:"0,0 30,0 15,10"})})});aY.displayName="Arrow";var aZ=a.i(18867),a$="Popper",[a_,a0]=(0,p.createContextScope)(a$),[a1,a2]=a_(a$),a3=a=>{let{__scopePopper:b,children:c}=a,[d,e]=m.useState(null);return(0,l.jsx)(a1,{scope:b,anchor:d,onAnchorChange:e,children:c})};a3.displayName=a$;var a4="PopperAnchor",a5=m.forwardRef((a,b)=>{let{__scopePopper:c,virtualRef:d,...e}=a,f=a2(a4,c),g=m.useRef(null),h=(0,o.useComposedRefs)(b,g),i=m.useRef(null);return m.useEffect(()=>{let a=i.current;i.current=d?.current||g.current,a!==i.current&&f.onAnchorChange(i.current)}),d?null:(0,l.jsx)(r.Primitive.div,{...e,ref:h})});a5.displayName=a4;var a6="PopperContent",[a7,a8]=a_(a6),a9=m.forwardRef((a,b)=>{var c,d,e,f,g,h,i,j,k,n,p,q,s,t,v,w,x,y,z,A,B;let C,D,E,F,G,H,{__scopePopper:I,side:J="bottom",sideOffset:K=0,align:L="center",alignOffset:M=0,arrowPadding:P=0,avoidCollisions:R=!0,collisionBoundary:S=[],collisionPadding:ad=0,sticky:ae="partial",hideWhenDetached:af=!1,updatePositionStrategy:ag="optimized",onPlaced:am,...an}=a,ap=a2(a6,I),[aq,ar]=m.useState(null),as=(0,o.useComposedRefs)(b,a=>ar(a)),[at,au]=m.useState(null),av=function(a){let[b,c]=m.useState(void 0);return(0,aZ.useLayoutEffect)(()=>{if(a){c({width:a.offsetWidth,height:a.offsetHeight});let b=new ResizeObserver(b=>{let d,e;if(!Array.isArray(b)||!b.length)return;let f=b[0];if("borderBoxSize"in f){let a=f.borderBoxSize,b=Array.isArray(a)?a[0]:a;d=b.inlineSize,e=b.blockSize}else d=a.offsetWidth,e=a.offsetHeight;c({width:d,height:e})});return b.observe(a,{box:"border-box"}),()=>b.unobserve(a)}c(void 0)},[a]),b}(at),aw=av?.width??0,ax=av?.height??0,ay="number"==typeof ad?ad:{top:0,right:0,bottom:0,left:0,...ad},az=Array.isArray(S)?S:[S],aA=az.length>0,aC={padding:ay,boundary:az.filter(bd),altBoundary:aA},{refs:aD,floatingStyles:aF,placement:aG,isPositioned:aH,middlewareData:aJ}=function(a){void 0===a&&(a={});let{placement:b="bottom",strategy:c="absolute",middleware:d=[],platform:e,elements:{reference:f,floating:g}={},transform:h=!0,whileElementsMounted:i,open:j}=a,[k,l]=m.useState({x:0,y:0,strategy:c,placement:b,middlewareData:{},isPositioned:!1}),[n,o]=m.useState(d);aV(n,d)||o(d);let[p,q]=m.useState(null),[r,s]=m.useState(null),t=m.useCallback(a=>{a!==x.current&&(x.current=a,q(a))},[]),u=m.useCallback(a=>{a!==y.current&&(y.current=a,s(a))},[]),v=f||p,w=g||r,x=m.useRef(null),y=m.useRef(null),z=m.useRef(k),A=null!=i,B=aX(i),C=aX(e),D=aX(j),E=m.useCallback(()=>{var a,d;let e,f,g;if(!x.current||!y.current)return;let h={placement:b,strategy:c,middleware:n};C.current&&(h.platform=C.current),(a=x.current,d=y.current,e=new Map,g={...(f={platform:aQ,...h}).platform,_c:e},ah(a,d,{...f,platform:g})).then(a=>{let b={...a,isPositioned:!1!==D.current};F.current&&!aV(z.current,b)&&(z.current=b,aT.flushSync(()=>{l(b)}))})},[n,b,c,C,D]);aU(()=>{!1===j&&z.current.isPositioned&&(z.current.isPositioned=!1,l(a=>({...a,isPositioned:!1})))},[j]);let F=m.useRef(!1);aU(()=>(F.current=!0,()=>{F.current=!1}),[]),aU(()=>{if(v&&(x.current=v),w&&(y.current=w),v&&w){if(B.current)return B.current(v,w,E);E()}},[v,w,E,B,A]);let G=m.useMemo(()=>({reference:x,floating:y,setReference:t,setFloating:u}),[t,u]),H=m.useMemo(()=>({reference:v,floating:w}),[v,w]),I=m.useMemo(()=>{let a={position:c,left:0,top:0};if(!H.floating)return a;let b=aW(H.floating,k.x),d=aW(H.floating,k.y);if(h)return{...a,transform:"translate("+b+"px, "+d+"px)",...(H.floating,false)};return{position:c,left:b,top:d}},[c,h,H.floating,k.x,k.y]);return m.useMemo(()=>({...k,update:E,refs:G,elements:H,floatingStyles:I}),[k,E,G,H,I])}({strategy:"fixed",placement:J+("center"!==L?"-"+L:""),whileElementsMounted:(...a)=>(function(a,b,c,d){let e;void 0===d&&(d={});let{ancestorScroll:f=!0,ancestorResize:g=!0,elementResize:h="function"==typeof ResizeObserver,layoutShift:i="function"==typeof IntersectionObserver,animationFrame:j=!1}=d,k=aE(a),l=f||g?[...k?aB(k):[],...b?aB(b):[]]:[];l.forEach(a=>{f&&a.addEventListener("scroll",c,{passive:!0}),g&&a.addEventListener("resize",c)});let m=k&&i?function(a,b){let c,d=null,e=ao(a);function f(){var a;clearTimeout(c),null==(a=d)||a.disconnect(),d=null}return!function g(h,i){void 0===h&&(h=!1),void 0===i&&(i=1),f();let j=a.getBoundingClientRect(),{left:k,top:l,width:m,height:n}=j;if(h||b(),!m||!n)return;let o={rootMargin:-Q(l)+"px "+-Q(e.clientWidth-(k+m))+"px "+-Q(e.clientHeight-(l+n))+"px "+-Q(k)+"px",threshold:O(0,N(1,i))||1},p=!0;function q(b){let d=b[0].intersectionRatio;if(d!==i){if(!p)return g();d?g(!1,d):c=setTimeout(()=>{g(!1,1e-7)},1e3)}1!==d||aR(j,a.getBoundingClientRect())||g(),p=!1}try{d=new IntersectionObserver(q,{...o,root:e.ownerDocument})}catch(a){d=new IntersectionObserver(q,o)}d.observe(a)}(!0),f}(k,c):null,n=-1,o=null;h&&(o=new ResizeObserver(a=>{let[d]=a;d&&d.target===k&&o&&b&&(o.unobserve(b),cancelAnimationFrame(n),n=requestAnimationFrame(()=>{var a;null==(a=o)||a.observe(b)})),c()}),k&&!j&&o.observe(k),b&&o.observe(b));let p=j?aI(a):null;return j&&function b(){let d=aI(a);p&&!aR(p,d)&&c(),p=d,e=requestAnimationFrame(b)}(),c(),()=>{var a;l.forEach(a=>{f&&a.removeEventListener("scroll",c),g&&a.removeEventListener("resize",c)}),null==m||m(),null==(a=o)||a.disconnect(),o=null,j&&cancelAnimationFrame(e)}})(...a,{animationFrame:"always"===ag}),elements:{reference:ap.anchor},middleware:[{name:(C={name:"offset",options:e=c={mainAxis:K+ax,alignmentAxis:M},async fn(a){var b,c;let{x:d,y:f,placement:g,middlewareData:h}=a,i=await al(a,e);return g===(null==(b=h.offset)?void 0:b.placement)&&null!=(c=h.arrow)&&c.alignmentOffset?{}:{x:d+i.x,y:f+i.y,data:{...i,placement:g}}}}).name,fn:C.fn,options:[c,d]},R&&{name:(D={name:"shift",options:k=i={mainAxis:!0,crossAxis:!1,limiter:"partial"===ae?{fn:(void 0===(h=f)&&(h={}),{options:h,fn(a){let{x:b,y:c,placement:d,rects:e,middlewareData:f}=a,{offset:g=0,mainAxis:i=!0,crossAxis:j=!0}=T(h,a),k={x:b,y:c},l=Y(d),m=W(l),n=k[m],o=k[l],p=T(g,a),q="number"==typeof p?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(i){let a="y"===m?"height":"width",b=e.reference[m]-e.floating[a]+q.mainAxis,c=e.reference[m]+e.reference[a]-q.mainAxis;n<b?n=b:n>c&&(n=c)}if(j){var r,s;let a="y"===m?"width":"height",b=ak.has(U(d)),c=e.reference[l]-e.floating[a]+(b&&(null==(r=f.offset)?void 0:r[l])||0)+(b?0:q.crossAxis),g=e.reference[l]+e.reference[a]+(b?0:(null==(s=f.offset)?void 0:s[l])||0)-(b?q.crossAxis:0);o<c?o=c:o>g&&(o=g)}return{[m]:n,[l]:o}}}).fn,options:[f,g]}:void 0,...aC},async fn(a){let{x:b,y:c,placement:d,platform:e}=a,{mainAxis:f=!0,crossAxis:g=!1,limiter:h={fn:a=>{let{x:b,y:c}=a;return{x:b,y:c}}},...i}=T(k,a),j={x:b,y:c},l=await e.detectOverflow(a,i),m=Y(U(d)),n=W(m),o=j[n],p=j[m];if(f){let a="y"===n?"top":"left",b="y"===n?"bottom":"right",c=o+l[a],d=o-l[b];o=O(c,N(o,d))}if(g){let a="y"===m?"top":"left",b="y"===m?"bottom":"right",c=p+l[a],d=p-l[b];p=O(c,N(p,d))}let q=h.fn({...a,[n]:o,[m]:p});return{...q,data:{x:q.x-b,y:q.y-c,enabled:{[n]:f,[m]:g}}}}}).name,fn:D.fn,options:[i,j]},R&&{name:(E={name:"flip",options:q=n={...aC},async fn(a){var b,c,d,e,f,g,h,i;let j,k,l,{placement:m,middlewareData:n,rects:o,initialPlacement:p,platform:r,elements:s}=a,{mainAxis:t=!0,crossAxis:u=!0,fallbackPlacements:v,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:y=!0,...z}=T(q,a);if(null!=(b=n.arrow)&&b.alignmentOffset)return{};let A=U(m),B=Y(p),C=U(p)===p,D=await (null==r.isRTL?void 0:r.isRTL(s.floating)),E=v||(C||!y?[ac(p)]:(j=ac(p),[Z(p),j,Z(j)])),F="none"!==x;!v&&F&&E.push(...(k=V(p),l=function(a,b,c){switch(a){case"top":case"bottom":if(c)return b?_:$;return b?$:_;case"left":case"right":return b?aa:ab;default:return[]}}(U(p),"start"===x,D),k&&(l=l.map(a=>a+"-"+k),y&&(l=l.concat(l.map(Z)))),l));let G=[p,...E],H=await r.detectOverflow(a,z),I=[],J=(null==(c=n.flip)?void 0:c.overflows)||[];if(t&&I.push(H[A]),u){let a,b,c,d,e=(g=m,h=o,void 0===(i=D)&&(i=!1),a=V(g),c=X(b=W(Y(g))),d="x"===b?a===(i?"end":"start")?"right":"left":"start"===a?"bottom":"top",h.reference[c]>h.floating[c]&&(d=ac(d)),[d,ac(d)]);I.push(H[e[0]],H[e[1]])}if(J=[...J,{placement:m,overflows:I}],!I.every(a=>a<=0)){let a=((null==(d=n.flip)?void 0:d.index)||0)+1,b=G[a];if(b&&("alignment"!==u||B===Y(b)||J.every(a=>Y(a.placement)!==B||a.overflows[0]>0)))return{data:{index:a,overflows:J},reset:{placement:b}};let c=null==(e=J.filter(a=>a.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0])?void 0:e.placement;if(!c)switch(w){case"bestFit":{let a=null==(f=J.filter(a=>{if(F){let b=Y(a.placement);return b===B||"y"===b}return!0}).map(a=>[a.placement,a.overflows.filter(a=>a>0).reduce((a,b)=>a+b,0)]).sort((a,b)=>a[1]-b[1])[0])?void 0:f[0];a&&(c=a);break}case"initialPlacement":c=p}if(m!==c)return{reset:{placement:c}}}return{}}}).name,fn:E.fn,options:[n,p]},{name:(F={name:"size",options:v=s={...aC,apply:({elements:a,rects:b,availableWidth:c,availableHeight:d})=>{let{width:e,height:f}=b.reference,g=a.floating.style;g.setProperty("--radix-popper-available-width",`${c}px`),g.setProperty("--radix-popper-available-height",`${d}px`),g.setProperty("--radix-popper-anchor-width",`${e}px`),g.setProperty("--radix-popper-anchor-height",`${f}px`)}},async fn(a){var b,c;let d,e,{placement:f,rects:g,platform:h,elements:i}=a,{apply:j=()=>{},...k}=T(v,a),l=await h.detectOverflow(a,k),m=U(f),n=V(f),o="y"===Y(f),{width:p,height:q}=g.floating;"top"===m||"bottom"===m?(d=m,e=n===(await (null==h.isRTL?void 0:h.isRTL(i.floating))?"start":"end")?"left":"right"):(e=m,d="end"===n?"top":"bottom");let r=q-l.top-l.bottom,s=p-l.left-l.right,t=N(q-l[d],r),u=N(p-l[e],s),w=!a.middlewareData.shift,x=t,y=u;if(null!=(b=a.middlewareData.shift)&&b.enabled.x&&(y=s),null!=(c=a.middlewareData.shift)&&c.enabled.y&&(x=r),w&&!n){let a=O(l.left,0),b=O(l.right,0),c=O(l.top,0),d=O(l.bottom,0);o?y=p-2*(0!==a||0!==b?a+b:O(l.left,l.right)):x=q-2*(0!==c||0!==d?c+d:O(l.top,l.bottom))}await j({...a,availableWidth:y,availableHeight:x});let z=await h.getDimensions(i.floating);return p!==z.width||q!==z.height?{reset:{rects:!0}}:{}}}).name,fn:F.fn,options:[s,t]},at&&{name:(G={name:"arrow",options:y=w={element:at,padding:P},fn(a){let{element:b,padding:c}="function"==typeof y?y(a):y;return b&&({}).hasOwnProperty.call(b,"current")?null!=b.current?aS({element:b.current,padding:c}).fn(a):{}:b?aS({element:b,padding:c}).fn(a):{}}}).name,fn:G.fn,options:[w,x]},be({arrowWidth:aw,arrowHeight:ax}),af&&{name:(H={name:"hide",options:B=z={strategy:"referenceHidden",...aC},async fn(a){let{rects:b,platform:c}=a,{strategy:d="referenceHidden",...e}=T(B,a);switch(d){case"referenceHidden":{let d=ai(await c.detectOverflow(a,{...e,elementContext:"reference"}),b.reference);return{data:{referenceHiddenOffsets:d,referenceHidden:aj(d)}}}case"escaped":{let d=ai(await c.detectOverflow(a,{...e,altBoundary:!0}),b.floating);return{data:{escapedOffsets:d,escaped:aj(d)}}}default:return{}}}}).name,fn:H.fn,options:[z,A]}]}),[aK,aL]=bf(aG),aM=(0,u.useCallbackRef)(am);(0,aZ.useLayoutEffect)(()=>{aH&&aM?.()},[aH,aM]);let aN=aJ.arrow?.x,aO=aJ.arrow?.y,aP=aJ.arrow?.centerOffset!==0,[aY,a$]=m.useState();return(0,aZ.useLayoutEffect)(()=>{aq&&a$(window.getComputedStyle(aq).zIndex)},[aq]),(0,l.jsx)("div",{ref:aD.setFloating,"data-radix-popper-content-wrapper":"",style:{...aF,transform:aH?aF.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:aY,"--radix-popper-transform-origin":[aJ.transformOrigin?.x,aJ.transformOrigin?.y].join(" "),...aJ.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:(0,l.jsx)(a7,{scope:I,placedSide:aK,onArrowChange:au,arrowX:aN,arrowY:aO,shouldHideArrow:aP,children:(0,l.jsx)(r.Primitive.div,{"data-side":aK,"data-align":aL,...an,ref:as,style:{...an.style,animation:aH?void 0:"none"}})})})});a9.displayName=a6;var ba="PopperArrow",bb={top:"bottom",right:"left",bottom:"top",left:"right"},bc=m.forwardRef(function(a,b){let{__scopePopper:c,...d}=a,e=a8(ba,c),f=bb[e.placedSide];return(0,l.jsx)("span",{ref:e.onArrowChange,style:{position:"absolute",left:e.arrowX,top:e.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[e.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[e.placedSide],visibility:e.shouldHideArrow?"hidden":void 0},children:(0,l.jsx)(aY,{...d,ref:b,style:{...d.style,display:"block"}})})});function bd(a){return null!==a}bc.displayName=ba;var be=a=>({name:"transformOrigin",options:a,fn(b){let{placement:c,rects:d,middlewareData:e}=b,f=e.arrow?.centerOffset!==0,g=f?0:a.arrowWidth,h=f?0:a.arrowHeight,[i,j]=bf(c),k={start:"0%",center:"50%",end:"100%"}[j],l=(e.arrow?.x??0)+g/2,m=(e.arrow?.y??0)+h/2,n="",o="";return"bottom"===i?(n=f?k:`${l}px`,o=`${-h}px`):"top"===i?(n=f?k:`${l}px`,o=`${d.floating.height+h}px`):"right"===i?(n=`${-h}px`,o=f?k:`${m}px`):"left"===i&&(n=`${d.floating.width+h}px`,o=f?k:`${m}px`),{data:{x:n,y:o}}}});function bf(a){let[b,c="center"]=a.split("-");return[b,c]}var bg=m.forwardRef((a,b)=>{let{container:c,...d}=a,[e,f]=m.useState(!1);(0,aZ.useLayoutEffect)(()=>f(!0),[]);let g=c||e&&globalThis?.document?.body;return g?aT.default.createPortal((0,l.jsx)(r.Primitive.div,{...d,ref:b}),g):null});bg.displayName="Portal";var bh=a.i(86586),bi=a.i(4429),bj=a.i(92274),bk=new WeakMap,bl=new WeakMap,bm={},bn=0,bo=function(a){return a&&(a.host||bo(a.parentNode))},bp=function(a,b,c,d){var e=(Array.isArray(a)?a:[a]).map(function(a){if(b.contains(a))return a;var c=bo(a);return c&&b.contains(c)?c:(console.error("aria-hidden",a,"in not contained inside",b,". Doing nothing"),null)}).filter(function(a){return!!a});bm[c]||(bm[c]=new WeakMap);var f=bm[c],g=[],h=new Set,i=new Set(e),j=function(a){!a||h.has(a)||(h.add(a),j(a.parentNode))};e.forEach(j);var k=function(a){!a||i.has(a)||Array.prototype.forEach.call(a.children,function(a){if(h.has(a))k(a);else try{var b=a.getAttribute(d),e=null!==b&&"false"!==b,i=(bk.get(a)||0)+1,j=(f.get(a)||0)+1;bk.set(a,i),f.set(a,j),g.push(a),1===i&&e&&bl.set(a,!0),1===j&&a.setAttribute(c,"true"),e||a.setAttribute(d,"true")}catch(b){console.error("aria-hidden: cannot operate on ",a,b)}})};return k(b),h.clear(),bn++,function(){g.forEach(function(a){var b=bk.get(a)-1,e=f.get(a)-1;bk.set(a,b),f.set(a,e),b||(bl.has(a)||a.removeAttribute(d),bl.delete(a)),e||a.removeAttribute(c)}),--bn||(bk=new WeakMap,bk=new WeakMap,bl=new WeakMap,bm={})}},bq=function(a,b,c){void 0===c&&(c="data-aria-hidden");var d=Array.from(Array.isArray(a)?a:[a]),e=b||("u"<typeof document?null:(Array.isArray(a)?a[0]:a).ownerDocument.body);return e?(d.push.apply(d,Array.from(e.querySelectorAll("[aria-live], script"))),bp(d,e,c,"aria-hidden")):function(){return null}},br=function(){return(br=Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++)for(var e in b=arguments[c])Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e]);return a}).apply(this,arguments)};function bs(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c}var bt=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),bu="width-before-scroll-bar";function bv(a,b){return"function"==typeof a?a(b):a&&(a.current=b),a}var bw=m.useEffect,bx=new WeakMap,by=(void 0===d&&(d={}),(void 0===e&&(e=function(a){return a}),f=[],g=!1,h={read:function(){if(g)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return f.length?f[f.length-1]:null},useMedium:function(a){var b=e(a,g);return f.push(b),function(){f=f.filter(function(a){return a!==b})}},assignSyncMedium:function(a){for(g=!0;f.length;){var b=f;f=[],b.forEach(a)}f={push:function(b){return a(b)},filter:function(){return f}}},assignMedium:function(a){g=!0;var b=[];if(f.length){var c=f;f=[],c.forEach(a),b=f}var d=function(){var c=b;b=[],c.forEach(a)},e=function(){return Promise.resolve().then(d)};e(),f={push:function(a){b.push(a),e()},filter:function(a){return b=b.filter(a),f}}}}).options=br({async:!0,ssr:!1},d),h),bz=function(){},bA=m.forwardRef(function(a,b){var c,d,e,f,g=m.useRef(null),h=m.useState({onScrollCapture:bz,onWheelCapture:bz,onTouchMoveCapture:bz}),i=h[0],j=h[1],k=a.forwardProps,l=a.children,n=a.className,o=a.removeScrollBar,p=a.enabled,q=a.shards,r=a.sideCar,s=a.noRelative,t=a.noIsolation,u=a.inert,v=a.allowPinchZoom,w=a.as,x=a.gapMode,y=bs(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),z=(c=[g,b],d=function(a){return c.forEach(function(b){return bv(b,a)})},(e=(0,m.useState)(function(){return{value:null,callback:d,facade:{get current(){return e.value},set current(value){var a=e.value;a!==value&&(e.value=value,e.callback(value,a))}}}})[0]).callback=d,f=e.facade,bw(function(){var a=bx.get(f);if(a){var b=new Set(a),d=new Set(c),e=f.current;b.forEach(function(a){d.has(a)||bv(a,null)}),d.forEach(function(a){b.has(a)||bv(a,e)})}bx.set(f,c)},[c]),f),A=br(br({},y),i);return m.createElement(m.Fragment,null,p&&m.createElement(r,{sideCar:by,removeScrollBar:o,shards:q,noRelative:s,noIsolation:t,inert:u,setCallbacks:j,allowPinchZoom:!!v,lockRef:g,gapMode:x}),k?m.cloneElement(m.Children.only(l),br(br({},A),{ref:z})):m.createElement(void 0===w?"div":w,br({},A,{className:n,ref:z}),l))});bA.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},bA.classNames={fullWidth:bu,zeroRight:bt};var bB=function(a){var b=a.sideCar,c=bs(a,["sideCar"]);if(!b)throw Error("Sidecar: please provide `sideCar` property to import the right car");var d=b.read();if(!d)throw Error("Sidecar medium not found");return m.createElement(d,br({},c))};bB.isSideCarExport=!0;var bC=function(){var a=0,b=null;return{add:function(c){if(0==a&&(b=function(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var b=k||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return b&&a.setAttribute("nonce",b),a}())){var d,e;(d=b).styleSheet?d.styleSheet.cssText=c:d.appendChild(document.createTextNode(c)),e=b,(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}a++},remove:function(){--a||!b||(b.parentNode&&b.parentNode.removeChild(b),b=null)}}},bD=function(){var a=bC();return function(b,c){m.useEffect(function(){return a.add(b),function(){a.remove()}},[b&&c])}},bE=function(){var a=bD();return function(b){return a(b.styles,b.dynamic),null}},bF={left:0,top:0,right:0,gap:0},bG=bE(),bH="data-scroll-locked",bI=function(a,b,c,d){var e=a.left,f=a.top,g=a.right,h=a.gap;return void 0===c&&(c="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(d,";\n padding-right: ").concat(h,"px ").concat(d,";\n }\n body[").concat(bH,"] {\n overflow: hidden ").concat(d,";\n overscroll-behavior: contain;\n ").concat([b&&"position: relative ".concat(d,";"),"margin"===c&&"\n padding-left: ".concat(e,"px;\n padding-top: ").concat(f,"px;\n padding-right: ").concat(g,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(h,"px ").concat(d,";\n "),"padding"===c&&"padding-right: ".concat(h,"px ").concat(d,";")].filter(Boolean).join(""),"\n }\n \n .").concat(bt," {\n right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(bu," {\n margin-right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(bt," .").concat(bt," {\n right: 0 ").concat(d,";\n }\n \n .").concat(bu," .").concat(bu," {\n margin-right: 0 ").concat(d,";\n }\n \n body[").concat(bH,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(h,"px;\n }\n")},bJ=function(){var a=parseInt(document.body.getAttribute(bH)||"0",10);return isFinite(a)?a:0},bK=function(){m.useEffect(function(){return document.body.setAttribute(bH,(bJ()+1).toString()),function(){var a=bJ()-1;a<=0?document.body.removeAttribute(bH):document.body.setAttribute(bH,a.toString())}},[])},bL=function(a){var b=a.noRelative,c=a.noImportant,d=a.gapMode,e=void 0===d?"margin":d;bK();var f=m.useMemo(function(){return void 0===e,bF},[e]);return m.createElement(bG,{styles:bI(f,!b,e,c?"":"!important")})},bM=function(a,b){if(!(a instanceof Element))return!1;var c=window.getComputedStyle(a);return"hidden"!==c[b]&&(c.overflowY!==c.overflowX||"TEXTAREA"===a.tagName||"visible"!==c[b])},bN=function(a,b){var c=b.ownerDocument,d=b;do{if("u">typeof ShadowRoot&&d instanceof ShadowRoot&&(d=d.host),bO(a,d)){var e=bP(a,d);if(e[1]>e[2])return!0}d=d.parentNode}while(d&&d!==c.body)return!1},bO=function(a,b){return"v"===a?bM(b,"overflowY"):bM(b,"overflowX")},bP=function(a,b){return"v"===a?[b.scrollTop,b.scrollHeight,b.clientHeight]:[b.scrollLeft,b.scrollWidth,b.clientWidth]},bQ=function(a,b,c,d,e){var f,g=(f=window.getComputedStyle(b).direction,"h"===a&&"rtl"===f?-1:1),h=g*d,i=c.target,j=b.contains(i),k=!1,l=h>0,m=0,n=0;do{if(!i)break;var o=bP(a,i),p=o[0],q=o[1]-o[2]-g*p;(p||q)&&bO(a,i)&&(m+=q,n+=p);var r=i.parentNode;i=r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE?r.host:r}while(!j&&i!==document.body||j&&(b.contains(i)||b===i))return l&&(e&&1>Math.abs(m)||!e&&h>m)?k=!0:!l&&(e&&1>Math.abs(n)||!e&&-h>n)&&(k=!0),k},bR=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},bS=function(a){return[a.deltaX,a.deltaY]},bT=function(a){return a&&"current"in a?a.current:a},bU=0,bV=[];let bW=(i=function(a){var b=m.useRef([]),c=m.useRef([0,0]),d=m.useRef(),e=m.useState(bU++)[0],f=m.useState(bE)[0],g=m.useRef(a);m.useEffect(function(){g.current=a},[a]),m.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(e));var b=(function(a,b,c){if(c||2==arguments.length)for(var d,e=0,f=b.length;e<f;e++)!d&&e in b||(d||(d=Array.prototype.slice.call(b,0,e)),d[e]=b[e]);return a.concat(d||Array.prototype.slice.call(b))})([a.lockRef.current],(a.shards||[]).map(bT),!0).filter(Boolean);return b.forEach(function(a){return a.classList.add("allow-interactivity-".concat(e))}),function(){document.body.classList.remove("block-interactivity-".concat(e)),b.forEach(function(a){return a.classList.remove("allow-interactivity-".concat(e))})}}},[a.inert,a.lockRef.current,a.shards]);var h=m.useCallback(function(a,b){if("touches"in a&&2===a.touches.length||"wheel"===a.type&&a.ctrlKey)return!g.current.allowPinchZoom;var e,f=bR(a),h=c.current,i="deltaX"in a?a.deltaX:h[0]-f[0],j="deltaY"in a?a.deltaY:h[1]-f[1],k=a.target,l=Math.abs(i)>Math.abs(j)?"h":"v";if("touches"in a&&"h"===l&&"range"===k.type)return!1;var m=window.getSelection(),n=m&&m.anchorNode;if(n&&(n===k||n.contains(k)))return!1;var o=bN(l,k);if(!o)return!0;if(o?e=l:(e="v"===l?"h":"v",o=bN(l,k)),!o)return!1;if(!d.current&&"changedTouches"in a&&(i||j)&&(d.current=e),!e)return!0;var p=d.current||e;return bQ(p,b,a,"h"===p?i:j,!0)},[]),i=m.useCallback(function(a){if(bV.length&&bV[bV.length-1]===f){var c="deltaY"in a?bS(a):bR(a),d=b.current.filter(function(b){var d;return b.name===a.type&&(b.target===a.target||a.target===b.shadowParent)&&(d=b.delta,d[0]===c[0]&&d[1]===c[1])})[0];if(d&&d.should){a.cancelable&&a.preventDefault();return}if(!d){var e=(g.current.shards||[]).map(bT).filter(Boolean).filter(function(b){return b.contains(a.target)});(e.length>0?h(a,e[0]):!g.current.noIsolation)&&a.cancelable&&a.preventDefault()}}},[]),j=m.useCallback(function(a,c,d,e){var f={name:a,delta:c,target:d,should:e,shadowParent:function(a){for(var b=null;null!==a;)a instanceof ShadowRoot&&(b=a.host,a=a.host),a=a.parentNode;return b}(d)};b.current.push(f),setTimeout(function(){b.current=b.current.filter(function(a){return a!==f})},1)},[]),k=m.useCallback(function(a){c.current=bR(a),d.current=void 0},[]),l=m.useCallback(function(b){j(b.type,bS(b),b.target,h(b,a.lockRef.current))},[]),n=m.useCallback(function(b){j(b.type,bR(b),b.target,h(b,a.lockRef.current))},[]);m.useEffect(function(){return bV.push(f),a.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:n}),document.addEventListener("wheel",i,!1),document.addEventListener("touchmove",i,!1),document.addEventListener("touchstart",k,!1),function(){bV=bV.filter(function(a){return a!==f}),document.removeEventListener("wheel",i,!1),document.removeEventListener("touchmove",i,!1),document.removeEventListener("touchstart",k,!1)}},[]);var o=a.removeScrollBar,p=a.inert;return m.createElement(m.Fragment,null,p?m.createElement(f,{styles:"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")}):null,o?m.createElement(bL,{noRelative:a.noRelative,gapMode:a.gapMode}):null)},by.useMedium(i),bB);var bX=m.forwardRef(function(a,b){return m.createElement(bA,br({},a,{ref:b,sideCar:bW}))});bX.classNames=bA.classNames;var bY=["Enter"," "],bZ=["ArrowUp","PageDown","End"],b$=["ArrowDown","PageUp","Home",...bZ],b_={ltr:[...bY,"ArrowRight"],rtl:[...bY,"ArrowLeft"]},b0={ltr:["ArrowLeft"],rtl:["ArrowRight"]},b1="Menu",[b2,b3,b4]=(0,s.createCollection)(b1),[b5,b6]=(0,p.createContextScope)(b1,[b4,a0,bi.createRovingFocusGroupScope]),b7=a0(),b8=(0,bi.createRovingFocusGroupScope)(),[b9,ca]=b5(b1),[cb,cc]=b5(b1),cd=a=>{let{__scopeMenu:b,open:c=!1,children:d,dir:e,onOpenChange:f,modal:g=!0}=a,h=b7(b),[i,j]=m.useState(null),k=m.useRef(!1),n=(0,u.useCallbackRef)(f),o=(0,t.useDirection)(e);return m.useEffect(()=>{let a=()=>{k.current=!0,document.addEventListener("pointerdown",b,{capture:!0,once:!0}),document.addEventListener("pointermove",b,{capture:!0,once:!0})},b=()=>k.current=!1;return document.addEventListener("keydown",a,{capture:!0}),()=>{document.removeEventListener("keydown",a,{capture:!0}),document.removeEventListener("pointerdown",b,{capture:!0}),document.removeEventListener("pointermove",b,{capture:!0})}},[]),(0,l.jsx)(a3,{...h,children:(0,l.jsx)(b9,{scope:b,open:c,onOpenChange:n,content:i,onContentChange:j,children:(0,l.jsx)(cb,{scope:b,onClose:m.useCallback(()=>n(!1),[n]),isUsingKeyboardRef:k,dir:o,modal:g,children:d})})})};cd.displayName=b1;var ce=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a,e=b7(c);return(0,l.jsx)(a5,{...e,...d,ref:b})});ce.displayName="MenuAnchor";var cf="MenuPortal",[cg,ch]=b5(cf,{forceMount:void 0}),ci=a=>{let{__scopeMenu:b,forceMount:c,children:d,container:e}=a,f=ca(cf,b);return(0,l.jsx)(cg,{scope:b,forceMount:c,children:(0,l.jsx)(bh.Presence,{present:c||f.open,children:(0,l.jsx)(bg,{asChild:!0,container:e,children:d})})})};ci.displayName=cf;var cj="MenuContent",[ck,cl]=b5(cj),cm=m.forwardRef((a,b)=>{let c=ch(cj,a.__scopeMenu),{forceMount:d=c.forceMount,...e}=a,f=ca(cj,a.__scopeMenu),g=cc(cj,a.__scopeMenu);return(0,l.jsx)(b2.Provider,{scope:a.__scopeMenu,children:(0,l.jsx)(bh.Presence,{present:d||f.open,children:(0,l.jsx)(b2.Slot,{scope:a.__scopeMenu,children:g.modal?(0,l.jsx)(cn,{...e,ref:b}):(0,l.jsx)(co,{...e,ref:b})})})})}),cn=m.forwardRef((a,b)=>{let c=ca(cj,a.__scopeMenu),d=m.useRef(null),e=(0,o.useComposedRefs)(b,d);return m.useEffect(()=>{let a=d.current;if(a)return bq(a)},[]),(0,l.jsx)(cq,{...a,ref:e,trapFocus:c.open,disableOutsidePointerEvents:c.open,disableOutsideScroll:!0,onFocusOutside:(0,n.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>c.onOpenChange(!1)})}),co=m.forwardRef((a,b)=>{let c=ca(cj,a.__scopeMenu);return(0,l.jsx)(cq,{...a,ref:b,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>c.onOpenChange(!1)})}),cp=(0,bj.createSlot)("MenuContent.ScrollLock"),cq=m.forwardRef((a,b)=>{let{__scopeMenu:c,loop:d=!1,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,disableOutsidePointerEvents:h,onEntryFocus:i,onEscapeKeyDown:j,onPointerDownOutside:k,onFocusOutside:p,onInteractOutside:q,onDismiss:r,disableOutsideScroll:s,...t}=a,u=ca(cj,c),v=cc(cj,c),w=b7(c),y=b8(c),z=b3(c),[C,D]=m.useState(null),E=m.useRef(null),G=(0,o.useComposedRefs)(b,E,u.onContentChange),H=m.useRef(0),I=m.useRef(""),J=m.useRef(0),K=m.useRef(null),L=m.useRef("right"),M=m.useRef(0),N=s?bX:m.Fragment;m.useEffect(()=>()=>window.clearTimeout(H.current),[]),m.useEffect(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??B()),document.body.insertAdjacentElement("beforeend",a[1]??B()),A++,()=>{1===A&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),A--}},[]);let O=m.useCallback(a=>{var b,c;return L.current===K.current?.side&&(b=a,!!(c=K.current?.area)&&function(a,b){let{x:c,y:d}=a,e=!1;for(let a=0,f=b.length-1;a<b.length;f=a++){let g=b[a],h=b[f],i=g.x,j=g.y,k=h.x,l=h.y;j>d!=l>d&&c<(k-i)*(d-j)/(l-j)+i&&(e=!e)}return e}({x:b.clientX,y:b.clientY},c))},[]);return(0,l.jsx)(ck,{scope:c,searchRef:I,onItemEnter:m.useCallback(a=>{O(a)&&a.preventDefault()},[O]),onItemLeave:m.useCallback(a=>{O(a)||(E.current?.focus(),D(null))},[O]),onTriggerLeave:m.useCallback(a=>{O(a)&&a.preventDefault()},[O]),pointerGraceTimerRef:J,onPointerGraceIntentChange:m.useCallback(a=>{K.current=a},[]),children:(0,l.jsx)(N,{...s?{as:cp,allowPinchZoom:!0}:void 0,children:(0,l.jsx)(F,{asChild:!0,trapped:e,onMountAutoFocus:(0,n.composeEventHandlers)(f,a=>{a.preventDefault(),E.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:g,children:(0,l.jsx)(x,{asChild:!0,disableOutsidePointerEvents:h,onEscapeKeyDown:j,onPointerDownOutside:k,onFocusOutside:p,onInteractOutside:q,onDismiss:r,children:(0,l.jsx)(bi.Root,{asChild:!0,...y,dir:v.dir,orientation:"vertical",loop:d,currentTabStopId:C,onCurrentTabStopIdChange:D,onEntryFocus:(0,n.composeEventHandlers)(i,a=>{v.isUsingKeyboardRef.current||a.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,l.jsx)(a9,{role:"menu","aria-orientation":"vertical","data-state":cQ(u.open),"data-radix-menu-content":"",dir:v.dir,...w,...t,ref:G,style:{outline:"none",...t.style},onKeyDown:(0,n.composeEventHandlers)(t.onKeyDown,a=>{let b=a.target.closest("[data-radix-menu-content]")===a.currentTarget,c=a.ctrlKey||a.altKey||a.metaKey,d=1===a.key.length;if(b){var e;let b,f,g,h,i,j;"Tab"===a.key&&a.preventDefault(),!c&&d&&(e=a.key,b=I.current+e,f=z().filter(a=>!a.disabled),g=document.activeElement,h=f.find(a=>a.ref.current===g)?.textValue,i=function(a,b,c){var d;let e=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,f=c?a.indexOf(c):-1,g=(d=Math.max(f,0),a.map((b,c)=>a[(d+c)%a.length]));1===e.length&&(g=g.filter(a=>a!==c));let h=g.find(a=>a.toLowerCase().startsWith(e.toLowerCase()));return h!==c?h:void 0}(f.map(a=>a.textValue),b,h),j=f.find(a=>a.textValue===i)?.ref.current,function a(b){I.current=b,window.clearTimeout(H.current),""!==b&&(H.current=window.setTimeout(()=>a(""),1e3))}(b),j&&setTimeout(()=>j.focus()))}let f=E.current;if(a.target!==f||!b$.includes(a.key))return;a.preventDefault();let g=z().filter(a=>!a.disabled).map(a=>a.ref.current);bZ.includes(a.key)&&g.reverse(),function(a){let b=document.activeElement;for(let c of a)if(c===b||(c.focus(),document.activeElement!==b))return}(g)}),onBlur:(0,n.composeEventHandlers)(a.onBlur,a=>{a.currentTarget.contains(a.target)||(window.clearTimeout(H.current),I.current="")}),onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(a=>{let b=a.target,c=M.current!==a.clientX;a.currentTarget.contains(b)&&c&&(L.current=a.clientX>M.current?"right":"left",M.current=a.clientX)}))})})})})})})});cm.displayName=cj;var cr=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{role:"group",...d,ref:b})});cr.displayName="MenuGroup";var cs=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{...d,ref:b})});cs.displayName="MenuLabel";var ct="MenuItem",cu="menu.itemSelect",cv=m.forwardRef((a,b)=>{let{disabled:c=!1,onSelect:d,...e}=a,f=m.useRef(null),g=cc(ct,a.__scopeMenu),h=cl(ct,a.__scopeMenu),i=(0,o.useComposedRefs)(b,f),j=m.useRef(!1);return(0,l.jsx)(cw,{...e,ref:i,disabled:c,onClick:(0,n.composeEventHandlers)(a.onClick,()=>{let a=f.current;if(!c&&a){let b=new CustomEvent(cu,{bubbles:!0,cancelable:!0});a.addEventListener(cu,a=>d?.(a),{once:!0}),(0,r.dispatchDiscreteCustomEvent)(a,b),b.defaultPrevented?j.current=!1:g.onClose()}}),onPointerDown:b=>{a.onPointerDown?.(b),j.current=!0},onPointerUp:(0,n.composeEventHandlers)(a.onPointerUp,a=>{j.current||a.currentTarget?.click()}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{let b=""!==h.searchRef.current;c||b&&" "===a.key||bY.includes(a.key)&&(a.currentTarget.click(),a.preventDefault())})})});cv.displayName=ct;var cw=m.forwardRef((a,b)=>{let{__scopeMenu:c,disabled:d=!1,textValue:e,...f}=a,g=cl(ct,c),h=b8(c),i=m.useRef(null),j=(0,o.useComposedRefs)(b,i),[k,p]=m.useState(!1),[q,s]=m.useState("");return m.useEffect(()=>{let a=i.current;a&&s((a.textContent??"").trim())},[f.children]),(0,l.jsx)(b2.ItemSlot,{scope:c,disabled:d,textValue:e??q,children:(0,l.jsx)(bi.Item,{asChild:!0,...h,focusable:!d,children:(0,l.jsx)(r.Primitive.div,{role:"menuitem","data-highlighted":k?"":void 0,"aria-disabled":d||void 0,"data-disabled":d?"":void 0,...f,ref:j,onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(a=>{d?g.onItemLeave(a):(g.onItemEnter(a),a.defaultPrevented||a.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:(0,n.composeEventHandlers)(a.onPointerLeave,cT(a=>g.onItemLeave(a))),onFocus:(0,n.composeEventHandlers)(a.onFocus,()=>p(!0)),onBlur:(0,n.composeEventHandlers)(a.onBlur,()=>p(!1))})})})}),cx=m.forwardRef((a,b)=>{let{checked:c=!1,onCheckedChange:d,...e}=a;return(0,l.jsx)(cF,{scope:a.__scopeMenu,checked:c,children:(0,l.jsx)(cv,{role:"menuitemcheckbox","aria-checked":cR(c)?"mixed":c,...e,ref:b,"data-state":cS(c),onSelect:(0,n.composeEventHandlers)(e.onSelect,()=>d?.(!!cR(c)||!c),{checkForDefaultPrevented:!1})})})});cx.displayName="MenuCheckboxItem";var cy="MenuRadioGroup",[cz,cA]=b5(cy,{value:void 0,onValueChange:()=>{}}),cB=m.forwardRef((a,b)=>{let{value:c,onValueChange:d,...e}=a,f=(0,u.useCallbackRef)(d);return(0,l.jsx)(cz,{scope:a.__scopeMenu,value:c,onValueChange:f,children:(0,l.jsx)(cr,{...e,ref:b})})});cB.displayName=cy;var cC="MenuRadioItem",cD=m.forwardRef((a,b)=>{let{value:c,...d}=a,e=cA(cC,a.__scopeMenu),f=c===e.value;return(0,l.jsx)(cF,{scope:a.__scopeMenu,checked:f,children:(0,l.jsx)(cv,{role:"menuitemradio","aria-checked":f,...d,ref:b,"data-state":cS(f),onSelect:(0,n.composeEventHandlers)(d.onSelect,()=>e.onValueChange?.(c),{checkForDefaultPrevented:!1})})})});cD.displayName=cC;var cE="MenuItemIndicator",[cF,cG]=b5(cE,{checked:!1}),cH=m.forwardRef((a,b)=>{let{__scopeMenu:c,forceMount:d,...e}=a,f=cG(cE,c);return(0,l.jsx)(bh.Presence,{present:d||cR(f.checked)||!0===f.checked,children:(0,l.jsx)(r.Primitive.span,{...e,ref:b,"data-state":cS(f.checked)})})});cH.displayName=cE;var cI=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{role:"separator","aria-orientation":"horizontal",...d,ref:b})});cI.displayName="MenuSeparator";var cJ=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a,e=b7(c);return(0,l.jsx)(bc,{...e,...d,ref:b})});cJ.displayName="MenuArrow";var[cK,cL]=b5("MenuSub"),cM="MenuSubTrigger",cN=m.forwardRef((a,b)=>{let c=ca(cM,a.__scopeMenu),d=cc(cM,a.__scopeMenu),e=cL(cM,a.__scopeMenu),f=cl(cM,a.__scopeMenu),g=m.useRef(null),{pointerGraceTimerRef:h,onPointerGraceIntentChange:i}=f,j={__scopeMenu:a.__scopeMenu},k=m.useCallback(()=>{g.current&&window.clearTimeout(g.current),g.current=null},[]);return m.useEffect(()=>k,[k]),m.useEffect(()=>{let a=h.current;return()=>{window.clearTimeout(a),i(null)}},[h,i]),(0,l.jsx)(ce,{asChild:!0,...j,children:(0,l.jsx)(cw,{id:e.triggerId,"aria-haspopup":"menu","aria-expanded":c.open,"aria-controls":e.contentId,"data-state":cQ(c.open),...a,ref:(0,o.composeRefs)(b,e.onTriggerChange),onClick:b=>{a.onClick?.(b),a.disabled||b.defaultPrevented||(b.currentTarget.focus(),c.open||c.onOpenChange(!0))},onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(b=>{f.onItemEnter(b),!b.defaultPrevented&&(a.disabled||c.open||g.current||(f.onPointerGraceIntentChange(null),g.current=window.setTimeout(()=>{c.onOpenChange(!0),k()},100)))})),onPointerLeave:(0,n.composeEventHandlers)(a.onPointerLeave,cT(a=>{k();let b=c.content?.getBoundingClientRect();if(b){let d=c.content?.dataset.side,e="right"===d,g=b[e?"left":"right"],i=b[e?"right":"left"];f.onPointerGraceIntentChange({area:[{x:a.clientX+(e?-5:5),y:a.clientY},{x:g,y:b.top},{x:i,y:b.top},{x:i,y:b.bottom},{x:g,y:b.bottom}],side:d}),window.clearTimeout(h.current),h.current=window.setTimeout(()=>f.onPointerGraceIntentChange(null),300)}else{if(f.onTriggerLeave(a),a.defaultPrevented)return;f.onPointerGraceIntentChange(null)}})),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,b=>{let e=""!==f.searchRef.current;a.disabled||e&&" "===b.key||b_[d.dir].includes(b.key)&&(c.onOpenChange(!0),c.content?.focus(),b.preventDefault())})})})});cN.displayName=cM;var cO="MenuSubContent",cP=m.forwardRef((a,b)=>{let c=ch(cj,a.__scopeMenu),{forceMount:d=c.forceMount,...e}=a,f=ca(cj,a.__scopeMenu),g=cc(cj,a.__scopeMenu),h=cL(cO,a.__scopeMenu),i=m.useRef(null),j=(0,o.useComposedRefs)(b,i);return(0,l.jsx)(b2.Provider,{scope:a.__scopeMenu,children:(0,l.jsx)(bh.Presence,{present:d||f.open,children:(0,l.jsx)(b2.Slot,{scope:a.__scopeMenu,children:(0,l.jsx)(cq,{id:h.contentId,"aria-labelledby":h.triggerId,...e,ref:j,align:"start",side:"rtl"===g.dir?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:a=>{g.isUsingKeyboardRef.current&&i.current?.focus(),a.preventDefault()},onCloseAutoFocus:a=>a.preventDefault(),onFocusOutside:(0,n.composeEventHandlers)(a.onFocusOutside,a=>{a.target!==h.trigger&&f.onOpenChange(!1)}),onEscapeKeyDown:(0,n.composeEventHandlers)(a.onEscapeKeyDown,a=>{g.onClose(),a.preventDefault()}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{let b=a.currentTarget.contains(a.target),c=b0[g.dir].includes(a.key);b&&c&&(f.onOpenChange(!1),h.trigger?.focus(),a.preventDefault())})})})})})});function cQ(a){return a?"open":"closed"}function cR(a){return"indeterminate"===a}function cS(a){return cR(a)?"indeterminate":a?"checked":"unchecked"}function cT(a){return b=>"mouse"===b.pointerType?a(b):void 0}cP.displayName=cO;var cU="DropdownMenu",[cV,cW]=(0,p.createContextScope)(cU,[b6]),cX=b6(),[cY,cZ]=cV(cU),c$=a=>{let{__scopeDropdownMenu:b,children:c,dir:d,open:e,defaultOpen:f,onOpenChange:g,modal:h=!0}=a,i=cX(b),j=m.useRef(null),[k,n]=(0,q.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:cU});return(0,l.jsx)(cY,{scope:b,triggerId:(0,L.useId)(),triggerRef:j,contentId:(0,L.useId)(),open:k,onOpenChange:n,onOpenToggle:m.useCallback(()=>n(a=>!a),[n]),modal:h,children:(0,l.jsx)(cd,{...i,open:k,onOpenChange:n,dir:d,modal:h,children:c})})};c$.displayName=cU;var c_="DropdownMenuTrigger",c0=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,disabled:d=!1,...e}=a,f=cZ(c_,c),g=cX(c);return(0,l.jsx)(ce,{asChild:!0,...g,children:(0,l.jsx)(r.Primitive.button,{type:"button",id:f.triggerId,"aria-haspopup":"menu","aria-expanded":f.open,"aria-controls":f.open?f.contentId:void 0,"data-state":f.open?"open":"closed","data-disabled":d?"":void 0,disabled:d,...e,ref:(0,o.composeRefs)(b,f.triggerRef),onPointerDown:(0,n.composeEventHandlers)(a.onPointerDown,a=>{!d&&0===a.button&&!1===a.ctrlKey&&(f.onOpenToggle(),f.open||a.preventDefault())}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{!d&&(["Enter"," "].includes(a.key)&&f.onOpenToggle(),"ArrowDown"===a.key&&f.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(a.key)&&a.preventDefault())})})})});c0.displayName=c_;var c1=a=>{let{__scopeDropdownMenu:b,...c}=a,d=cX(b);return(0,l.jsx)(ci,{...d,...c})};c1.displayName="DropdownMenuPortal";var c2="DropdownMenuContent",c3=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cZ(c2,c),f=cX(c),g=m.useRef(!1);return(0,l.jsx)(cm,{id:e.contentId,"aria-labelledby":e.triggerId,...f,...d,ref:b,onCloseAutoFocus:(0,n.composeEventHandlers)(a.onCloseAutoFocus,a=>{g.current||e.triggerRef.current?.focus(),g.current=!1,a.preventDefault()}),onInteractOutside:(0,n.composeEventHandlers)(a.onInteractOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey,d=2===b.button||c;(!e.modal||d)&&(g.current=!0)}),style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});c3.displayName=c2,m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cr,{...e,...d,ref:b})}).displayName="DropdownMenuGroup",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cs,{...e,...d,ref:b})}).displayName="DropdownMenuLabel";var c4=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cv,{...e,...d,ref:b})});c4.displayName="DropdownMenuItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cx,{...e,...d,ref:b})}).displayName="DropdownMenuCheckboxItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cB,{...e,...d,ref:b})}).displayName="DropdownMenuRadioGroup",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cD,{...e,...d,ref:b})}).displayName="DropdownMenuRadioItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cH,{...e,...d,ref:b})}).displayName="DropdownMenuItemIndicator",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cI,{...e,...d,ref:b})}).displayName="DropdownMenuSeparator",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cJ,{...e,...d,ref:b})}).displayName="DropdownMenuArrow",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cN,{...e,...d,ref:b})}).displayName="DropdownMenuSubTrigger",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cP,{...e,...d,ref:b,style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}).displayName="DropdownMenuSubContent";var c5={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},c6=m.default.createContext&&m.default.createContext(c5),c7=["attr","size","title"];function c8(){return(c8=Object.assign.bind()).apply(null,arguments)}function c9(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function da(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?c9(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):c9(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function db(a){return b=>m.default.createElement(dc,c8({attr:da({},a.attr)},b),function a(b){return b&&b.map((b,c)=>m.default.createElement(b.tag,da({key:c},b.attr),a(b.child)))}(a.child))}function dc(a){var b=b=>{var c,{attr:d,size:e,title:f}=a,g=function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,c7),h=e||b.size||"1em";return b.className&&(c=b.className),a.className&&(c=(c?c+" ":"")+a.className),m.default.createElement("svg",c8({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},b.attr,d,g,{className:c,style:da(da({color:a.color||b.color},b.style),a.style),height:h,width:h,xmlns:"http://www.w3.org/2000/svg"}),f&&m.default.createElement("title",null,f),a.children)};return void 0!==c6?m.default.createElement(c6.Consumer,null,a=>b(a)):b(c5)}var dd=a.i(25515);let de=(0,dd.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),df=(0,dd.default)("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),dg=(0,dd.default)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);var dh=a.i(91018),di=a.i(58678),dj=a.i(86647),dk=a.i(1713),dl=a.i(30832);let dm=(0,dd.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),dn=(0,dd.default)("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);var dp=a.i(82498),dp=dp;let dq=(0,dd.default)("plug-zap",[["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m18 3-4 4h6l-4 4",key:"16psg9"}]]),dr=(0,dd.default)("refresh-ccw",[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]]);var ds=a.i(1251),dt=a.i(45775);let du=(0,dd.default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]),dv=(0,dd.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]),dw=(0,dd.default)("volume-x",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]]);var dx=a.i(75616);function dy(a,b){return{id:a,repo:"string"==typeof b?.repo?b.repo:null,iconUrl:"string"==typeof b?.iconUrl?b.iconUrl:null,boardDir:"string"==typeof b?.boardDir?b.boardDir:null,boardFile:"string"==typeof b?.boardFile?b.boardFile:null,description:"string"==typeof b?.description?b.description:null,agent:"string"==typeof b?.agent&&b.agent.trim().length>0?b.agent:"qwen-code"}}let dz=(0,dd.default)("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]),dA=(0,dd.default)("panel-right-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]]);var dB=a.i(26006);function dC({sidebar:a,children:b,sidebarOpen:c,onToggleSidebar:d}){return(0,l.jsxs)("div",{style:{"--workspace-sidebar-width":"356px"},className:"relative flex h-dvh min-h-[100dvh] w-full max-w-full overflow-hidden bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:[c&&(0,l.jsx)("button",{type:"button",className:"absolute inset-0 z-20 bg-black/45 lg:hidden",onClick:d,"aria-label":"Close workspace panel"}),(0,l.jsx)("aside",{className:(0,dB.cn)("absolute inset-y-0 left-0 z-30 flex h-full w-[min(90vw,var(--workspace-sidebar-width))] flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)] transition-transform duration-200 lg:relative lg:w-[var(--workspace-sidebar-width)]",c?"translate-x-0":"-translate-x-full lg:-translate-x-0 lg:w-0 lg:overflow-hidden lg:border-r-0","lg:left-auto"),children:a}),c&&(0,l.jsx)("button",{type:"button",onClick:d,className:"absolute left-[var(--workspace-sidebar-width)] top-2 z-40 hidden h-7 w-7 -translate-x-1/2 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_0_0_1px_rgba(0,0,0,0.25)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Hide workspace panel",children:(0,l.jsx)(dA,{className:"h-4 w-4"})}),(0,l.jsxs)("main",{className:"relative flex min-w-0 flex-1 flex-col overflow-hidden bg-[var(--vk-bg-main)]",children:[!c&&(0,l.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 inline-flex h-7 w-7 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Open workspace panel",children:(0,l.jsx)(dz,{className:"h-4 w-4"})}),b]})]})}let dD=(0,dd.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);function dE({session:a,fallbackTitle:b,onOpenPreferences:c}){let d=a?.summary??b??"Create Workspace";return(0,l.jsxs)("header",{className:"flex h-[36px] items-center border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[11px] text-[var(--vk-text-muted)] sm:h-[33px]",children:[(0,l.jsx)("div",{className:"min-w-0 flex-1 text-center",children:(0,l.jsx)("span",{className:"block truncate",children:d})}),(0,l.jsx)("div",{className:"ml-1 flex shrink-0",children:(0,l.jsx)("button",{type:"button",onClick:c,className:"inline-flex h-6 w-6 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Open preferences",title:"Preferences",children:(0,l.jsx)(dD,{className:"h-3.5 w-3.5"})})})]})}var dF=a.i(37483),dG=a.i(52806),dH=a.i(7802),dI=a.i(25098);function dJ(a){return"merged"===a.status||"killed"===a.status||"cleanup"===a.status||"done"===a.status||"terminated"===a.status||a.pr&&("merged"===a.pr.state||"closed"===a.pr.state)?"done":"mergeable"===a.status||"approved"===a.status||a.pr?.mergeability.mergeable?"merge":"waiting_input"===a.activity||"blocked"===a.activity||"needs_input"===a.status||"stuck"===a.status||"errored"===a.status||"exited"===a.activity?"respond":"ci_failed"===a.status||"changes_requested"===a.status||a.pr&&("failing"===a.pr.ciStatus||"changes_requested"===a.pr.reviewDecision||!a.pr.mergeability.noConflicts)?"review":"review_pending"===a.status||a.pr&&!a.pr.isDraft&&("pending"===a.pr.reviewDecision||"none"===a.pr.reviewDecision)?"pending":"working"}let dK=[{id:"needs_attention",title:"Needs Attention"},{id:"running",title:"Running"},{id:"idle",title:"Idle"}];function dL({sessions:a,selectedId:b,onSelect:c,onCreateWorkspace:d,showHeader:e=!0}){let[f,g]=(0,m.useState)(""),[h,i]=(0,m.useState)({needs_attention:!1,running:!1,idle:!1}),j=(0,m.useMemo)(()=>{if(!f.trim())return a;let b=f.toLowerCase();return a.filter(a=>{let c=a.summary??"";return a.id.toLowerCase().includes(b)||a.projectId.toLowerCase().includes(b)||c.toLowerCase().includes(b)})},[f,a]),k=(0,m.useMemo)(()=>{let a={needs_attention:[],running:[],idle:[]};for(let c of j){var b;a["respond"===(b=dJ(c))||"review"===b||"merge"===b?"needs_attention":"working"===b?"running":"idle"].push(c)}for(let b of Object.keys(a))a[b].sort((a,b)=>new Date(b.lastActivityAt).getTime()-new Date(a.lastActivityAt).getTime());return a},[j]);return(0,l.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[e&&(0,l.jsxs)("div",{className:"flex h-[33px] items-center gap-1 px-2",children:[(0,l.jsx)("p",{className:"text-[16px] text-[var(--vk-text-normal)]",children:"Workspaces"}),d&&(0,l.jsx)("button",{type:"button",onClick:d,className:"ml-auto inline-flex h-5 w-5 items-center justify-center rounded-[3px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)] lg:hidden","aria-label":"New workspace",children:(0,l.jsx)("span",{className:"text-[14px]",children:"+"})})]}),(0,l.jsx)("div",{className:(0,dB.cn)("flex h-[38px] items-center px-2 pb-1.5",!e&&"pt-1.5"),children:(0,l.jsxs)("label",{className:"flex h-[30px] flex-1 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2",children:[(0,l.jsx)(ds.Search,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:f,onChange:a=>g(a.target.value),placeholder:"Search...",className:"ml-1.5 w-full bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]})}),(0,l.jsx)("div",{className:"flex-1 overflow-y-auto",children:dK.map(a=>{let d=k[a.id],e=h[a.id];return(0,l.jsxs)("section",{className:"pt-1",children:[(0,l.jsxs)("button",{type:"button",className:"flex h-8 w-full items-center px-2 text-left",onClick:()=>i(b=>({...b,[a.id]:!b[a.id]})),children:[(0,l.jsx)("span",{className:"text-[16px] text-[var(--vk-text-normal)]",children:a.title}),(0,l.jsx)("span",{className:"ml-auto text-[var(--vk-text-muted)]",children:e?(0,l.jsx)(dI.ChevronRight,{className:"h-3.5 w-3.5"}):(0,l.jsx)(di.ChevronDown,{className:"h-3.5 w-3.5"})})]}),!e&&(0,l.jsxs)("div",{children:[0===d.length&&(0,l.jsx)("p",{className:"px-2 py-1 text-[14px] text-[var(--vk-text-muted)]",children:"No workspaces"}),d.map(a=>{let d=dJ(a),e=function(a){let b=a.metadata?.cost;if(!b)return null;try{let a=JSON.parse(b),c=a.estimatedCostUsd??a.totalUSD;if(!c||c<=0)return null;return`$${c.toFixed(2)}`}catch{return null}}(a),f=a.id===b,g=a.metadata.agent?.trim()??"";return(0,l.jsxs)("button",{type:"button",onClick:()=>c(a.id),className:(0,dB.cn)("group flex w-full flex-col px-2 py-1 text-left",f?"bg-[var(--vk-bg-hover)]":"hover:bg-[var(--vk-bg-hover)]"),children:[(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(dG.AgentTileIcon,{seed:{label:g||"agent"},className:"h-6 w-6"}),(0,l.jsx)("p",{className:"truncate text-[14px] text-[var(--vk-text-normal)]",children:a.summary??a.id})]}),(0,l.jsxs)("div",{className:"mt-0.5 flex items-center gap-1 text-[14px]",children:[(0,l.jsx)("span",{className:"text-[var(--vk-text-muted)]",children:function(a){let b=Math.floor((Date.now()-new Date(a).getTime())/6e4);if(b<1)return"now";if(b<60)return`${b}m ago`;let c=Math.floor(b/60);if(c<24)return`${c}h ago`;let d=Math.floor(c/24);return`${d}d ago`}(a.lastActivityAt)}),g&&(0,l.jsx)("span",{className:"truncate text-[11px] text-[var(--vk-text-muted)]",children:g}),e&&(0,l.jsx)("span",{className:"ml-auto text-[11px]",style:{color:"merge"===d?"var(--vk-green)":"respond"===d?"var(--vk-red)":"review"===d?"var(--vk-orange)":"working"===d?"#4e87f3":"var(--vk-text-muted)"},children:e})]})]},a.id)})]})]},a.id)})})]})}function dM({orgLabel:a,projects:b,selectedProjectId:c,onSelectProject:d,sessions:e,selectedSessionId:f,onSelectSession:g,onCreateWorkspace:h}){return(0,l.jsxs)("div",{className:"flex h-full min-h-0 w-full flex-col bg-[var(--vk-bg-panel)]",children:[(0,l.jsxs)("section",{className:"flex h-[57px] items-center border-b border-[var(--vk-border)] px-4",children:[(0,l.jsx)("p",{className:"truncate text-[15px] font-medium leading-[21px] text-[var(--vk-text-strong)]",children:a}),(0,l.jsxs)("button",{type:"button",onClick:h,className:"ml-auto inline-flex h-7 items-center gap-1 rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Add workspace",children:[(0,l.jsx)(dH.Plus,{className:"h-3.5 w-3.5"}),(0,l.jsx)("span",{children:"Add Workspace"})]})]}),(0,l.jsxs)("section",{className:"border-b border-[var(--vk-border)] pb-2 pt-1.5",children:[(0,l.jsx)("div",{className:"flex h-[28px] items-center px-3",children:(0,l.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Projects"})}),(0,l.jsx)("div",{className:"max-h-[260px] overflow-y-auto px-2",children:b.map(a=>{let b=c===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>d(a.id),className:(0,dB.cn)("mb-1.5 flex w-full items-center gap-3 rounded-[6px] px-3 py-2.5 text-left text-[14px] leading-[21px]",b?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"),children:[(0,l.jsx)("span",{className:"h-2.5 w-2.5 rounded-full bg-[#3c83f6]"}),(0,l.jsx)("span",{className:"truncate",children:a.id})]},a.id)})})]}),(0,l.jsx)("section",{className:"flex min-h-0 flex-1 flex-col pt-1.5",children:(0,l.jsx)(dL,{sessions:e,selectedId:f,onSelect:g,onCreateWorkspace:h,showHeader:!1})})]})}var dp=dp;let dN={intake:"#3c83f6",ready:"#f59f0a",dispatching:"#fb923c",inProgress:"#f59f0a",review:"#895af6",done:"#21c45d",blocked:"#d53946"},dO={intake:"To do",ready:"Ready",dispatching:"Dispatching",inProgress:"In progress",review:"In review",done:"Done",blocked:"Blocked"};function dP(a){return["intake","ready","dispatching","inProgress","review","done","blocked"].includes(a)?a:"intake"}function dQ(a){return a.split(/[-_\s]+/g).filter(Boolean).map(a=>a[0]?.toUpperCase()+a.slice(1)).join(" ")}function dR({projectId:a,defaultAgent:b,agentOptions:c}){let[d,e]=(0,m.useState)(null),[f,g]=(0,m.useState)(!1),[h,i]=(0,m.useState)(null),[j,k]=(0,m.useState)(""),[n,o]=(0,m.useState)(!1),[p,q]=(0,m.useState)("intake"),[r,s]=(0,m.useState)(""),[t,u]=(0,m.useState)(""),[v,w]=(0,m.useState)(b),[x,y]=(0,m.useState)("feature"),[z,A]=(0,m.useState)("normal"),[B,C]=(0,m.useState)(""),[D,E]=(0,m.useState)([]),[F,G]=(0,m.useState)(""),[H,I]=(0,m.useState)([]),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)(null),[N,O]=(0,m.useState)([]),[P,Q]=(0,m.useState)(!1),[R,S]=(0,m.useState)(null),T=(0,m.useMemo)(()=>{let a=[...new Set(c.filter(Boolean))];return a.includes(b)||a.unshift(b),a},[c,b]);(0,m.useEffect)(()=>{T.includes(v)||w(T[0]??"qwen-code")},[v,T]),(0,m.useEffect)(()=>{if(!n||!a)return;let b=!1;return(async()=>{K(!0),M(null);try{let c=await fetch(`/api/context-files?projectId=${encodeURIComponent(a)}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load context files: ${c.status}`);if(b)return;let e=Array.isArray(d?.files)?d.files:[];I(e)}catch(a){if(b)return;I([]),M(a instanceof Error?a.message:"Failed to load context files")}finally{b||K(!1)}})(),()=>{b=!0}},[n,a]);let U=(0,m.useCallback)(async()=>{if(!a){e(null),i(null),g(!1);return}g(!0);try{let b=await fetch(`/api/boards?projectId=${encodeURIComponent(a)}`),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load board: ${b.status}`);e(c),i(null)}catch(a){e(null),i(a instanceof Error?a.message:"Failed to load board")}finally{g(!1)}},[a]);(0,m.useEffect)(()=>{U()},[U]);let V=(0,m.useMemo)(()=>{let a=d?.primaryRoles;return a&&0!==a.length?a.map(a=>dP(a)):["intake","inProgress","review","done"]},[d?.primaryRoles]),W=(0,m.useMemo)(()=>{let a=j.trim().toLowerCase(),b=d?.columns??[],c=new Set(V);return b.filter(a=>c.has(a.role)).map(b=>a?{...b,tasks:b.tasks.filter(b=>`${b.text} ${b.agent??""} ${b.type??""} ${b.priority??""}`.toLowerCase().includes(a))}:b)},[d?.columns,j,V]),X=(0,m.useMemo)(()=>{let a=F.trim().toLowerCase();return a?H.filter(b=>`${b.path} ${b.name} ${b.source??""}`.toLowerCase().includes(a)):H},[H,F]);function Y(a){q(a),o(!0),S(null),C(""),G(""),E([]),O([])}async function Z(){if(a&&r.trim()){Q(!0),S(null);try{let b=[];if(N.length>0){let c=new FormData;for(let b of(c.append("projectId",a),N))c.append("files",b);let d=await fetch("/api/attachments",{method:"POST",body:c}),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Upload failed: ${d.status}`);b=(e?.files??[]).map(a=>a.path?.trim()).filter(a=>!!a)}let c=[...new Set([...D,...b])],d=await fetch("/api/boards",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:a,title:r.trim(),description:t.trim()||void 0,contextNotes:B.trim()||void 0,attachments:c.length>0?c:void 0,agent:v,role:p,type:x.trim()||void 0,priority:z.trim()||void 0})}),f=await d.json().catch(()=>null);if(!d.ok)throw Error(f?.error??`Failed to create task: ${d.status}`);e(a=>f&&"columns"in f?{...a??f,...f}:a),s(""),u(""),y("feature"),A("normal"),C(""),E([]),G(""),O([]),o(!1)}catch(a){S(a instanceof Error?a.message:"Failed to create task")}finally{Q(!1)}}}return a?(0,l.jsxs)("section",{className:"flex h-full min-h-0 flex-col",children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsxs)("div",{className:"inline-flex rounded-[3px] border border-[var(--vk-border)] p-px",children:[(0,l.jsx)("span",{className:"rounded-[2px] bg-[var(--vk-bg-active)] px-3 py-1 text-[13px] text-[var(--vk-text-strong)]",children:"Active"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"All"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"Backlog"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"Cancelled"})]}),(0,l.jsxs)("div",{className:"ml-auto flex w-full min-w-0 flex-wrap items-center gap-2 sm:w-auto sm:min-w-[220px] sm:flex-nowrap sm:flex-none",children:[(0,l.jsxs)("label",{className:"flex h-[31px] min-w-0 flex-1 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 sm:min-w-[200px] sm:w-[240px] sm:flex-none",children:[(0,l.jsx)(ds.Search,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:j,onChange:a=>k(a.target.value),placeholder:"Search tasks...",className:"ml-2 w-full bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,l.jsxs)("button",{type:"button",onClick:()=>Y("intake"),className:"inline-flex h-[31px] w-full items-center justify-center gap-1 rounded-[3px] bg-[var(--vk-bg-active)] px-3 text-[14px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] sm:w-auto",children:[(0,l.jsx)("span",{children:"New Issue"}),(0,l.jsx)(dH.Plus,{className:"h-3.5 w-3.5"})]})]})]}),d?.watcherHint&&(0,l.jsx)("p",{className:"pt-2 text-[12px] text-[var(--vk-text-muted)]",children:d.watcherHint})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto p-4",children:f?(0,l.jsxs)("div",{className:"flex h-full items-center justify-center text-[var(--vk-text-muted)]",children:[(0,l.jsx)(dp.default,{className:"h-4 w-4 animate-spin"}),(0,l.jsx)("span",{className:"ml-2 text-[14px]",children:"Loading board..."})]}):h?(0,l.jsx)("div",{className:"rounded-[4px] border border-[color:color-mix(in_srgb,var(--vk-red)_55%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[13px] text-[var(--vk-red)]",children:h}):(0,l.jsx)("div",{className:"grid min-w-[980px] gap-0 rounded-[4px] border border-[var(--vk-border)]",style:{gridTemplateColumns:`repeat(${Math.max(W.length,1)}, minmax(240px, 1fr))`},children:W.map((a,b)=>(0,l.jsxs)("article",{className:(0,dB.cn)("flex min-h-[540px] flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)]",b===W.length-1&&"border-r-0"),children:[(0,l.jsxs)("header",{className:"flex h-[41px] items-center border-b border-[var(--vk-border)] px-2",children:[(0,l.jsx)("span",{className:"h-2 w-2 rounded-full",style:{backgroundColor:dN[a.role]}}),(0,l.jsx)("span",{className:"ml-2 text-[14px] text-[var(--vk-text-normal)]",children:a.heading||dO[a.role]}),(0,l.jsx)("button",{type:"button",onClick:()=>Y(a.role),className:"ml-auto inline-flex h-6 w-6 items-center justify-center rounded-[3px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]","aria-label":`Add task to ${a.heading}`,children:(0,l.jsx)(dH.Plus,{className:"h-3.5 w-3.5"})})]}),(0,l.jsxs)("div",{className:"flex-1 space-y-2 overflow-y-auto p-2",children:[0===a.tasks.length&&(0,l.jsx)("div",{className:"rounded-[3px] border border-dashed border-[var(--vk-border)] px-2 py-2 text-[13px] text-[var(--vk-text-muted)]",children:"No tasks"}),a.tasks.map(b=>{let{title:c,description:d}=function(a){let[b,...c]=a.split(" - ");return{title:(b??a).trim(),description:c.join(" - ").trim()}}(b.text);return(0,l.jsxs)("div",{className:"rounded-[3px] border border-[var(--vk-border)] bg-[color:#212121] p-2",children:[(0,l.jsx)("p",{className:"font-mono text-[12px] text-[var(--vk-text-muted)]",children:b.taskRef??b.id}),(0,l.jsx)("p",{className:"pt-1 text-[15px] leading-[22px] text-[var(--vk-text-normal)]",children:c}),d&&(0,l.jsx)("p",{className:"pt-1 text-[13px] leading-[20px] text-[var(--vk-text-muted)]",children:d}),(0,l.jsxs)("div",{className:"mt-2 flex items-center justify-between gap-2",children:[(0,l.jsx)("div",{className:"flex min-w-0 items-center gap-1.5",children:b.agent?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dG.AgentTileIcon,{seed:{label:b.agent},className:"h-6 w-6"}),(0,l.jsx)("span",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:dQ(b.agent)})]}):(0,l.jsx)("span",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"No agent"})}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[b.type&&(0,l.jsx)("span",{className:"inline-flex h-5 items-center rounded-[3px] bg-[color:#292929] px-2 text-[11px] text-[var(--vk-text-muted)]",children:b.type}),b.priority&&(0,l.jsx)("span",{className:"inline-flex h-5 items-center rounded-[3px] bg-[color:#292929] px-2 text-[11px] text-[var(--vk-text-muted)]",children:b.priority})]})]})]},`${a.role}-${b.id}`)})]})]},a.role))})}),n&&(0,l.jsx)("div",{className:"fixed inset-0 z-[75] flex items-start justify-center overflow-y-auto bg-black/60 px-3 py-3 sm:items-center sm:py-0",onClick:()=>!P&&o(!1),children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[560px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)]",onClick:a=>a.stopPropagation(),role:"dialog","aria-modal":"true",children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("h2",{className:"text-[18px] text-[var(--vk-text-strong)]",children:"Create Board Task"}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Add a task card with project and agent tags for Obsidian + conductor watcher."})]}),(0,l.jsxs)("div",{className:"min-h-0 flex-1 space-y-3 overflow-y-auto px-4 py-4",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Title"}),(0,l.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:"Review payment flow regression",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Description (optional)"}),(0,l.jsx)("textarea",{value:t,onChange:a=>u(a.target.value),rows:3,placeholder:"Investigate failing specs and propose a safe fix.",className:"w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Context notes (optional)"}),(0,l.jsx)("textarea",{value:B,onChange:a=>C(a.target.value),rows:2,placeholder:"Anything the agent should prioritize or avoid for this task.",className:"w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Agent"}),(0,l.jsx)("select",{value:v,onChange:a=>w(a.target.value),className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:T.map(a=>(0,l.jsx)("option",{value:a,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:dQ(a)},a))})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Column"}),(0,l.jsx)("select",{value:p,onChange:a=>q(dP(a.target.value)),className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:W.map(a=>(0,l.jsx)("option",{value:a.role,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:a.heading||dO[a.role]},a.role))})]})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Type"}),(0,l.jsx)("input",{value:x,onChange:a=>y(a.target.value),placeholder:"feature",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Priority"}),(0,l.jsx)("input",{value:z,onChange:a=>A(a.target.value),placeholder:"normal",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] p-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Context attachments"}),(0,l.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:[D.length," selected",N.length>0?` \xb7 ${N.length} upload(s)`:""]})]}),(0,l.jsx)("div",{className:"mt-2",children:(0,l.jsxs)("label",{className:"inline-flex cursor-pointer items-center rounded-[3px] border border-[var(--vk-border)] px-2 py-1 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,l.jsx)("input",{type:"file",multiple:!0,className:"hidden",onChange:a=>{let b=Array.from(a.target.files??[]);0!==b.length&&(O(a=>{let c=[...a];for(let a of b)c.some(b=>b.name===a.name&&b.size===a.size&&b.lastModified===a.lastModified)||c.push(a);return c}),a.currentTarget.value="")}}),"Upload files/images"]})}),N.length>0&&(0,l.jsx)("div",{className:"mt-2 flex flex-wrap gap-1",children:N.map(a=>(0,l.jsxs)("button",{type:"button",onClick:()=>{O(b=>b.filter(b=>b.name!==a.name||b.size!==a.size||b.lastModified!==a.lastModified))},className:"inline-flex items-center gap-1 rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-hover)] px-2 py-1 text-[11px] text-[var(--vk-text-normal)]",title:"Remove upload",children:[(0,l.jsx)("span",{className:"truncate max-w-[220px]",children:a.name}),(0,l.jsx)("span",{className:"text-[var(--vk-text-muted)]",children:"×"})]},`${a.name}-${a.size}-${a.lastModified}`))}),(0,l.jsxs)("label",{className:"mt-3 block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Select existing context"}),(0,l.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"Search context files...",className:"h-8 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsx)("div",{className:"mt-2 max-h-[180px] overflow-auto rounded-[3px] border border-[var(--vk-border)]",children:J?(0,l.jsxs)("div",{className:"flex items-center gap-2 px-2 py-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,l.jsx)(dp.default,{className:"h-3.5 w-3.5 animate-spin"}),(0,l.jsx)("span",{children:"Loading context files..."})]}):L?(0,l.jsx)("p",{className:"px-2 py-2 text-[12px] text-[var(--vk-red)]",children:L}):0===X.length?(0,l.jsx)("p",{className:"px-2 py-2 text-[12px] text-[var(--vk-text-muted)]",children:"No context files found."}):(0,l.jsx)("ul",{className:"divide-y divide-[var(--vk-border)]",children:X.map(a=>{var b;let c=D.includes(a.path);return(0,l.jsx)("li",{className:"px-2 py-1.5",children:(0,l.jsxs)("label",{className:"flex cursor-pointer items-start gap-2 text-[12px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:c,onChange:()=>{var b;return b=a.path,void E(a=>a.includes(b)?a.filter(a=>a!==b):[...a,b])},className:"mt-0.5 h-3.5 w-3.5 rounded border-[var(--vk-border)] bg-transparent"}),(0,l.jsxs)("span",{className:"min-w-0",children:[(0,l.jsx)("span",{className:"block truncate",children:a.path}),(0,l.jsxs)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:[a.kind,a.source?` \xb7 ${a.source}`:"",a.sizeBytes?` \xb7 ${!(b=a.sizeBytes)||b<=0?"":b<1024?`${b} B`:b<1048576?`${(b/1024).toFixed(1)} KB`:`${(b/1048576).toFixed(1)} MB`}`:""]})]})]})},a.path)})})})]}),R&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-red)]",children:R})]}),(0,l.jsxs)("footer",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:()=>o(!1),disabled:P,className:"inline-flex h-9 items-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Cancel"}),(0,l.jsx)("button",{type:"button",onClick:()=>void Z(),disabled:!r.trim()||P,className:"inline-flex h-9 items-center rounded-[3px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:P?(0,l.jsx)(dp.default,{className:"h-4 w-4 animate-spin"}):"Create Task"})]})]})})]}):(0,l.jsx)("div",{className:"flex h-full items-center justify-center text-[14px] text-[var(--vk-text-muted)]",children:"Select a workspace to view its Kanban board."})}let dS=["codex","gemini","qwen-code","droid","claude-code","amp","opencode","github-copilot","cursor-cli","ccr"],dT={codex:"Codex",gemini:"Gemini","qwen-code":"Qwen Code",droid:"Droid","claude-code":"Claude Code",amp:"Amp",opencode:"Opencode","github-copilot":"Copilot","cursor-cli":"Cursor Agent",ccr:"CCR"};function dU(a){return a.trim().toLowerCase().replace(/[_\s]+/g,"-")}function dV(a){let b=dU(a);return dT[b]?dT[b]:a.split(/[-_\s]+/g).filter(Boolean).map(a=>a[0]?.toUpperCase()+a.slice(1)).join(" ")}let dW=[{id:"general",label:"General",icon:du,implemented:!1},{id:"repositories",label:"Repositories",icon:dl.FolderGit2,implemented:!0},{id:"organization",label:"Organization Settings",icon:dg,implemented:!1},{id:"projects",label:"Projects",icon:dm,implemented:!1},{id:"agents",label:"Agents",icon:de,implemented:!1},{id:"mcp",label:"MCP Servers",icon:dq,implemented:!1},{id:"preferences",label:"Preferences",icon:dt.SlidersHorizontal,implemented:!0}],dX=[{id:"preferences",label:"Preferences",icon:dt.SlidersHorizontal,implemented:!0},{id:"repositories",label:"Repository",icon:dl.FolderGit2,implemented:!0}],dY=[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}],dZ=[{id:"obsidian",label:"Obsidian"},{id:"vscode",label:"VS Code"},{id:"notion",label:"Notion"},{id:"typora",label:"Typora"},{id:"logseq",label:"Logseq"},{id:"custom",label:"Custom"}],d$=[{id:"abstract-sound-1",label:"Abstract Sound 1"},{id:"abstract-sound-2",label:"Abstract Sound 2"},{id:"abstract-sound-3",label:"Abstract Sound 3"},{id:"abstract-sound-4",label:"Abstract Sound 4"},{id:"cow-mooing",label:"Cow Mooing"},{id:"phone-vibration",label:"Phone Vibration"},{id:"rooster",label:"Rooster"}];function d_(a){return!a||"object"!=typeof a||Array.isArray(a)?{}:{...a}}function d0(a,b){let c=d_(a),d=d_(c.notifications),e=d.soundFile,f="string"==typeof c.codingAgent&&c.codingAgent.trim().length>0?c.codingAgent.trim():b,g="string"==typeof c.ide&&c.ide.trim().length>0?c.ide.trim():"vscode",h="string"==typeof c.remoteSshHost&&c.remoteSshHost.trim().length>0?c.remoteSshHost.trim():"",i="string"==typeof c.remoteSshUser&&c.remoteSshUser.trim().length>0?c.remoteSshUser.trim():"",j="string"==typeof c.markdownEditor&&c.markdownEditor.trim().length>0?c.markdownEditor.trim():"obsidian";return{onboardingAcknowledged:!0===c.onboardingAcknowledged,codingAgent:f,ide:g,remoteSshHost:h,remoteSshUser:i,markdownEditor:j,notifications:{soundEnabled:!1!==d.soundEnabled,soundFile:null===e?null:"string"==typeof e&&e.trim().length>0?e.trim():"abstract-sound-4"}}}let d1="block h-4 w-4 shrink-0",d2="block h-4 w-4 shrink-0 object-contain",d3={vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:d2},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:d2},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:d2},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:d2},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:d2},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:d2},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:d2},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:d2},custom:{kind:"icon",icon:du,className:`${d2} text-[var(--vk-text-muted)]`}};function d4({editorId:a,label:b}){let c=d3[a];if(!c)return(0,l.jsx)(du,{className:`${d2} text-[var(--vk-text-muted)]`});if("image"===c.kind)return(0,l.jsx)("img",{src:c.imageSrc,alt:`${b} logo`,className:c.className});let d=c.icon;return(0,l.jsx)(d,{className:c.className})}function d5(a){return JSON.stringify(a)}let d6={obsidian:{kind:"icon",icon:function(a){return db({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M19.355 18.538a68.967 68.959 0 0 0 1.858-2.954.81.81 0 0 0-.062-.9c-.516-.685-1.504-2.075-2.042-3.362-.553-1.321-.636-3.375-.64-4.377a1.707 1.707 0 0 0-.358-1.05l-3.198-4.064a3.744 3.744 0 0 1-.076.543c-.106.503-.307 1.004-.536 1.5-.134.29-.29.6-.446.914l-.31.626c-.516 1.068-.997 2.227-1.132 3.59-.124 1.26.046 2.73.815 4.481.128.011.257.025.386.044a6.363 6.363 0 0 1 3.326 1.505c.916.79 1.744 1.922 2.415 3.5zM8.199 22.569c.073.012.146.02.22.02.78.024 2.095.092 3.16.29.87.16 2.593.64 4.01 1.055 1.083.316 2.198-.548 2.355-1.664.114-.814.33-1.735.725-2.58l-.01.005c-.67-1.87-1.522-3.078-2.416-3.849a5.295 5.295 0 0 0-2.778-1.257c-1.54-.216-2.952.19-3.84.45.532 2.218.368 4.829-1.425 7.531zM5.533 9.938c-.023.1-.056.197-.098.29L2.82 16.059a1.602 1.602 0 0 0 .313 1.772l4.116 4.24c2.103-3.101 1.796-6.02.836-8.3-.728-1.73-1.832-3.081-2.55-3.831zM9.32 14.01c.615-.183 1.606-.465 2.745-.534-.683-1.725-.848-3.233-.716-4.577.154-1.552.7-2.847 1.235-3.95.113-.235.223-.454.328-.664.149-.297.288-.577.419-.86.217-.47.379-.885.46-1.27.08-.38.08-.72-.014-1.043-.095-.325-.297-.675-.68-1.06a1.6 1.6 0 0 0-1.475.36l-4.95 4.452a1.602 1.602 0 0 0-.513.952l-.427 2.83c.672.59 2.328 2.316 3.335 4.711.09.21.175.43.253.653z"},child:[]}]})(a)},className:`${d1} text-[#8b5cf6]`},vscode:{kind:"icon",icon:function(a){return db({tag:"svg",attr:{viewBox:"0 0 16 16",fill:"currentColor"},child:[{tag:"path",attr:{d:"M10.8634 13.9195C10.6568 14.0195 10.4233 14.0246 10.2185 13.9444C10.1162 13.9044 10.021 13.843 9.93997 13.7614L4.81616 9.06268L2.58433 10.7656C2.37657 10.9241 2.08597 10.9111 1.89301 10.7347L1.17719 10.0802C0.941168 9.86437 0.940898 9.49112 1.17661 9.27496L3.11213 7.5L1.17661 5.72504C0.940898 5.50888 0.941168 5.13563 1.17719 4.91982L1.89301 4.2653C2.08597 4.08887 2.37657 4.07588 2.58433 4.2344L4.81616 5.93732L9.93997 1.23855C9.97037 1.20797 10.0028 1.18023 10.0368 1.15538C10.2748 0.981429 10.5922 0.949298 10.8634 1.08048L13.5399 2.37507C13.8212 2.5111 14 2.79721 14 3.11109V8H10.752V4.53356L6.86419 7.5L10.752 10.4664V8H14V11.8889C14 12.2028 13.8211 12.4889 13.5399 12.625L10.8634 13.9195Z"},child:[]}]})(a)},className:`${d1} text-[#22a3f5]`},notion:{kind:"icon",icon:function(a){return db({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"},child:[]}]})(a)},className:`${d1} text-white`},logseq:{kind:"image",imageSrc:"/icons/editors/logseq.svg",className:`${d1} object-contain`},typora:{kind:"image",imageSrc:"/icons/editors/typora-32.png",className:`${d1} rounded-[3px] bg-white/90 p-[1px] object-contain`},custom:{kind:"icon",icon:du,className:`${d1} text-[var(--vk-text-muted)]`}};function d7({editorId:a}){let b=d6[a];if(!b)return(0,l.jsx)(df,{className:`${d1} text-[var(--vk-text-muted)]`});if("image"===b.kind)return(0,l.jsx)("img",{src:b.imageSrc,alt:"",className:b.className});let c=b.icon;return(0,l.jsx)(c,{className:b.className})}function d8(){let[a,b]=(0,m.useState)(null),{sessions:c,error:d,refresh:e}=function(a){let[b,c]=(0,m.useState)([]),[d,e]=(0,m.useState)(!0),[f,g]=(0,m.useState)(null),h=(0,m.useRef)(!0),i=(0,m.useCallback)(a=>{c(b=>!function(a,b){if(a===b)return!0;if(a.length!==b.length)return!1;for(let c=0;c<a.length;c+=1){let d=a[c],e=b[c];if(!d||!e||d.id!==e.id||d.status!==e.status||d.activity!==e.activity||d.projectId!==e.projectId||d.issueId!==e.issueId||d.branch!==e.branch||d.lastActivityAt!==e.lastActivityAt||d.summary!==e.summary)return!1}return!0}(b,a)?a:b)},[]),j=(0,m.useCallback)(async()=>{try{let b="string"==typeof a&&a.trim().length>0?`?project=${encodeURIComponent(a.trim())}`:"",c=await fetch(`/api/sessions${b}`);if(!c.ok)throw Error(`Failed to fetch sessions: ${c.status}`);let d=await c.json(),e=Array.isArray(d)?d:Array.isArray(d.sessions)?d.sessions:[];if(!h.current)return;i(e),g(null)}catch(a){h.current&&g(a instanceof Error?a.message:"Unknown error")}finally{h.current&&e(!1)}},[i,a]);return(0,m.useEffect)(()=>{h.current=!0,e(!0),j();let b=null,c=null,d=()=>{null===c&&(c=window.setInterval(()=>{h.current&&j()},3e3))},f=()=>{null!==c&&(window.clearInterval(c),c=null)};return"u">typeof EventSource?((b=new EventSource("/api/events")).onopen=()=>{h.current&&(f(),g(null),e(!1))},b.onmessage=b=>{if(h.current)try{var c;let d,f=JSON.parse(b.data);if("snapshot"!==f.type||!Array.isArray(f.sessions))return;let h=(c=f.sessions,(d=a?.trim())?c.filter(a=>a.projectId===d):c);i(h),g(null),e(!1)}catch{}},b.onerror=()=>{h.current&&(d(),g(a=>a??"Live updates disconnected. Falling back to polling."))}):d(),()=>{h.current=!1,b&&b.close(),f()}},[i,j,a]),{sessions:b,loading:d,error:f,refresh:j}}(a),{projects:f,error:g,refresh:h}=function(){let[a,b]=(0,m.useState)([]),[c,d]=(0,m.useState)(!0),[e,f]=(0,m.useState)(null),g=(0,m.useRef)(!1),h=(0,m.useCallback)(async()=>{try{let a=await fetch("/api/config");if(!a.ok)throw Error(`Failed to fetch config: ${a.status}`);let c=await a.json();b(function(a){if(!a||"object"!=typeof a)return[];let b=a.projects;return b?Array.isArray(b)?b.map((a,b)=>a&&"object"==typeof a?dy("string"==typeof a.id&&a.id.trim().length>0?a.id:`project-${b+1}`,a):dy(`project-${b+1}`,null)):"object"==typeof b?Object.entries(b).map(([a,b])=>dy(a,b&&"object"==typeof b?b:null)):[]:[]}(c)),f(null)}catch(a){b([]),f(a instanceof Error?a.message:"Failed to fetch config")}finally{d(!1)}},[]);return(0,m.useEffect)(()=>{g.current||(g.current=!0,h())},[h]),{projects:a,loading:c,error:e,refresh:h}}(),{agents:i}=function(){let[a,b]=(0,m.useState)([]),[c,d]=(0,m.useState)(!0),e=(0,m.useRef)(!1);return(0,m.useEffect)(()=>{e.current||(e.current=!0,fetch("/api/agents").then(a=>{if(!a.ok)throw Error(`Failed to fetch agents: ${a.status}`);return a.json()}).then(a=>b(Array.isArray(a)?a:a&&"object"==typeof a&&"agents"in a&&Array.isArray(a.agents)?a.agents:[])).catch(()=>{}).finally(()=>d(!1)))},[]),{agents:a,loading:c}}(),[j,k]=(0,m.useState)(null),[n,o]=(0,m.useState)(!0),[p,q]=(0,m.useState)(""),[r,s]=(0,m.useState)(""),[t,u]=(0,m.useState)(!1),[v,w]=(0,m.useState)(null),[x,y]=(0,m.useState)(!1),[z,A]=(0,m.useState)(!1),[B,C]=(0,m.useState)(null),[D,E]=(0,m.useState)("chat"),[F,G]=(0,m.useState)(null),[H,I]=(0,m.useState)(!0),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)(null),[N,O]=(0,m.useState)(!1),[P,Q]=(0,m.useState)(!1),R=v??g??d??L;(0,m.useEffect)(()=>{},[]),(0,m.useEffect)(()=>{if(0===f.length){null!==a&&b(null);return}a&&f.some(b=>b.id===a)||b(f[0]?.id??null)},[f,a]),(0,m.useEffect)(()=>{j&&(c.some(a=>a.id===j)||k(null))},[c,j]);let S=(0,m.useMemo)(()=>c.find(a=>a.id===j)??null,[c,j]),T=(0,m.useMemo)(()=>{let a=Array.isArray(i)?i:[],b=new Set;for(let a of f)a.agent&&b.add(a.agent);for(let c of a)c.name&&b.add(c.name);return 0===b.size&&["qwen-code","claude-code","codex"].forEach(a=>b.add(a)),[...b]},[i,f]);async function U(a,b){K(!0),M(null);try{let c=await fetch("/api/preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to save preferences: ${c.status}`);let e=d0(d?.preferences,a.codingAgent||"qwen-code");G(e),s(e.codingAgent),b?.closeDialog!==!1&&O(!1)}catch(a){throw M(a instanceof Error?a.message:"Failed to save preferences"),a}finally{K(!1)}}(0,m.useEffect)(()=>{let a=!1;return async function(){I(!0);try{let b=await fetch("/api/preferences"),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load preferences: ${b.status}`);if(a)return;let d=d0(c?.preferences,"qwen-code");G(d),M(null)}catch(b){if(a)return;G(d0(null,"qwen-code")),M(b instanceof Error?b.message:"Failed to load preferences")}finally{a||I(!1)}}(),()=>{a=!0}},[]),(0,m.useEffect)(()=>{F&&(r||s(F.codingAgent))},[F,r]),(0,m.useEffect)(()=>{H||F&&(F.onboardingAcknowledged||O(!0))},[F,H]),(0,m.useEffect)(()=>{if(r)return;let b=f.find(b=>b.id===a)?.agent;b&&s(b)},[f,r,a]),(0,m.useEffect)(()=>{0!==T.length&&(r&&T.includes(r)||s(T[0]??"qwen-code"))},[T,r]);let V=()=>{},W=()=>{o(!0)},X=()=>{C(null),y(!0),W()};async function Y(){let b=p.trim();if(!b)return;let c=a??f[0]?.id;if(!c)return void w("No project is configured in conductor.yaml");u(!0),w(null);try{let a=await fetch("/api/spawn",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:c,prompt:b,agent:r||"qwen-code"})}),d=await a.json().catch(()=>null);if(!a.ok)throw Error(d?.error??`Failed to create workspace: ${a.status}`);if(!d?.session?.id)throw Error("Session created but response is missing session id");q(""),E("chat"),W(),await e(),k(d.session.id)}catch(a){w(a instanceof Error?a.message:"Failed to create workspace")}finally{u(!1)}}async function Z(a){A(!0),C(null);try{let c=await fetch("/api/workspaces",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to add workspace: ${c.status}`);let e=d?.project?.id;if(!e)throw Error("Workspace created but response is missing project id");await h(),b(e),k(null),q(""),W(),y(!1)}catch(a){C(a instanceof Error?a.message:"Failed to add workspace")}finally{A(!1)}}(0,m.useEffect)(()=>{P&&!N&&(Q(!1),X())},[P,N]);let $=!H&&!!F&&!F.onboardingAcknowledged,_=F??d0(null,r||"qwen-code");return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(dC,{sidebarOpen:n,onToggleSidebar:()=>o(a=>!a),sidebar:(0,l.jsx)(dM,{orgLabel:"conductor-oss",projects:f,selectedProjectId:a,onSelectProject:a=>{b(a),k(null),V()},sessions:c,selectedSessionId:j,onSelectSession:a=>{k(a),V()},onCreateWorkspace:()=>{X()}}),children:[(0,l.jsx)(dE,{session:S,fallbackTitle:a??("board"===D?"Board":"Create Workspace"),onOpenPreferences:()=>O(!0)}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:j?(0,l.jsx)(dF.SessionDetail,{sessionId:j}):(0,l.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,l.jsx)("div",{className:"border-b border-[var(--vk-border)] px-3 py-2",children:(0,l.jsxs)("div",{className:"inline-flex rounded-[3px] border border-[var(--vk-border)] p-px",children:[(0,l.jsx)("button",{type:"button",onClick:()=>E("chat"),className:`min-h-[28px] rounded-[2px] px-3 text-[13px] ${"chat"===D?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Chat"}),(0,l.jsx)("button",{type:"button",onClick:()=>E("board"),className:`min-h-[28px] rounded-[2px] px-3 text-[13px] ${"board"===D?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board"})]})}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:"board"===D?(0,l.jsx)(dR,{projectId:a,defaultAgent:r||_.codingAgent||"qwen-code",agentOptions:T}):(0,l.jsx)(eb,{prompt:p,setPrompt:q,selectedAgent:r||_.codingAgent||"qwen-code",setSelectedAgent:s,agentOptions:T,projectLabel:a??"No project selected",hasProject:!!a,creating:t,error:R,onOpenAddWorkspace:X,onCreate:Y})})]})})]}),(0,l.jsx)(d9,{open:x,onClose:()=>{z||y(!1)},onCreate:Z,creating:z,error:B,defaultAgent:r||_.codingAgent||"qwen-code",agentOptions:T}),(0,l.jsx)(ed,{open:N,mode:$?"onboarding":"settings",creating:J,error:L,current:_,agentOptions:T,onRepositoriesChanged:h,onOnboardingComplete:({needsProject:a})=>{a&&Q(!0)},onClose:()=>{J||$||(O(!1),M(null))},onSave:U})]})}function d9({open:a,onClose:b,onCreate:c,creating:d,error:e,defaultAgent:f,agentOptions:g}){let[h,i]=(0,m.useState)("git"),[j,k]=(0,m.useState)(""),[n,o]=(0,m.useState)(""),[p,q]=(0,m.useState)(""),[r,s]=(0,m.useState)("main"),[t,u]=(0,m.useState)(f),[v,w]=(0,m.useState)(!0),[x,y]=(0,m.useState)(!0),[z,A]=(0,m.useState)([]),[B,C]=(0,m.useState)(!1),[D,E]=(0,m.useState)(null),[F,G]=(0,m.useState)(""),[H,I]=(0,m.useState)(""),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)("local"),[N,O]=(0,m.useState)([]),[P,Q]=(0,m.useState)(!1),[R,S]=(0,m.useState)(null);(0,m.useEffect)(()=>{a&&(i("git"),k(""),o(""),q(""),s("main"),y(!0),w(!0),u(f),A([]),E(null),G(""),I(""),O([]),S(null),Q(!1),K(!1),M("local"))},[f,a]),(0,m.useEffect)(()=>{!a||"local"!==h||p.trim().length>0||(M("local"),K(!0))},[h,a,p]);let T=(0,m.useMemo)(()=>{if(0===F.trim().length)return z;let a=F.trim().toLowerCase();return z.filter(b=>b.fullName.toLowerCase().includes(a)||b.name.toLowerCase().includes(a)||b.defaultBranch.toLowerCase().includes(a))},[F,z]),U=(0,m.useMemo)(()=>{let a=[...new Set(g)];0===a.length&&a.push(f||"qwen-code");let b=new Map(dS.map((a,b)=>[a,b]));return a.sort((a,c)=>{let d=b.get(dU(a))??Number.MAX_SAFE_INTEGER,e=b.get(dU(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:dV(a).localeCompare(dV(c))})},[g,f]);(0,m.useEffect)(()=>{U.includes(t)||u(U[0]??"qwen-code")},[t,U]);let V=async()=>{C(!0),E(null);try{let a=F.trim(),b=a.length>0?`?q=${encodeURIComponent(a)}`:"",c=await fetch(`/api/github/repos${b}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load GitHub repositories (${c.status})`);A(Array.isArray(d?.repos)?d.repos:[])}catch(a){A([]),E(a instanceof Error?a.message:"Failed to load GitHub repositories")}finally{C(!1)}},W=async a=>{let b=a?.gitUrl??("git"===h?n.trim():""),c=a?.path??("local"===h?p.trim():"");if(0===b.length&&0===c.length)return void S("git"===h?"Enter a Git URL first.":"Select a local repository path first.");Q(!0),S(null);try{let a=new URLSearchParams;b.length>0&&a.set("gitUrl",b),c.length>0&&a.set("path",c);let d=await fetch(`/api/workspaces/branches?${a.toString()}`),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Failed to load branches (${d.status})`);let f=Array.isArray(e?.branches)?e.branches.filter(a=>"string"==typeof a&&a.trim().length>0):[];O(f);let g="string"==typeof e?.defaultBranch&&e.defaultBranch.trim().length>0?e.defaultBranch.trim():f[0]??null;g&&(0===r.trim().length||!f.includes(r))&&s(g)}catch(a){O([]),S(a instanceof Error?a.message:"Failed to load branches")}finally{Q(!1)}},X=async a=>{I(a);let b=z.find(b=>b.httpsUrl===a);b&&(o(b.httpsUrl),s(b.defaultBranch||"main"),0===j.trim().length&&k(b.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||j),await W({gitUrl:b.httpsUrl}))},Y=a=>{M(a),K(!0)};if(!a)return null;let Z="git"===h?n.trim().length>0&&r.trim().length>0:p.trim().length>0&&r.trim().length>0;async function $(a){if(a.preventDefault(),!Z||d)return;let b="git"===h?{mode:h,projectId:j.trim()||void 0,agent:t,defaultBranch:r.trim(),useWorktree:v,gitUrl:n.trim(),path:p.trim()||void 0}:{mode:h,projectId:j.trim()||void 0,agent:t,defaultBranch:r.trim(),useWorktree:v,path:p.trim(),initializeGit:x};await c(b)}return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{className:"fixed inset-0 z-[80] flex items-start justify-center overflow-y-auto bg-black/65 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{d||J||b()},role:"presentation",children:(0,l.jsxs)("form",{onSubmit:$,onClick:a=>a.stopPropagation(),className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",children:[(0,l.jsxs)("header",{className:"flex items-center border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("h2",{className:"text-[18px] leading-[22px] text-[var(--vk-text-strong)]",children:"Add Workspace"}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository with a folder picker, then choose the target branch."})]}),(0,l.jsx)("button",{type:"button",onClick:b,disabled:d,"aria-label":"Close dialog",className:"ml-auto inline-flex h-8 w-8 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:(0,l.jsx)(dx.X,{className:"h-4 w-4"})})]}),(0,l.jsxs)("div",{className:"min-h-0 flex-1 space-y-4 overflow-y-auto px-4 py-4",children:[(0,l.jsxs)("div",{className:"inline-flex rounded-[4px] border border-[var(--vk-border)] p-1",children:[(0,l.jsx)("button",{type:"button",onClick:()=>i("git"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"git"===h?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Git Repository"}),(0,l.jsx)("button",{type:"button",onClick:()=>i("local"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"local"===h?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Local Folder"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Project ID (optional)"}),(0,l.jsx)("input",{value:j,onChange:a=>k(a.target.value),placeholder:"auto-derived from repo/folder",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),"git"===h?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] p-3",children:[(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(dn,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"GitHub Integration"})]}),(0,l.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-2",children:[(0,l.jsx)("button",{type:"button",onClick:V,disabled:B,className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:B?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dp.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Loading repos..."]}):"Load My GitHub Repositories"}),(0,l.jsxs)("div",{className:"relative min-w-[220px] flex-1",children:[(0,l.jsx)(ds.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"Filter repos...",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),T.length>0&&(0,l.jsxs)("label",{className:"mt-2 block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[11px] text-[var(--vk-text-muted)]",children:"Choose repository"}),(0,l.jsxs)("select",{value:H,onChange:a=>{X(a.target.value)},className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:[(0,l.jsx)("option",{value:"",children:"Select a GitHub repo..."}),T.map(a=>(0,l.jsxs)("option",{value:a.httpsUrl,children:[a.fullName," (",a.defaultBranch,")"]},a.httpsUrl))]})]}),D&&(0,l.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:D})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Git URL"}),(0,l.jsx)("input",{value:n,onChange:a=>o(a.target.value),placeholder:"https://github.com/org/repo.git",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path (optional, clone target)"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:p,readOnly:!0,onClick:()=>Y("clone"),placeholder:"Use Browse to choose a clone target folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>Y("clone"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,l.jsx)(dk.FolderOpen,{className:"h-4 w-4"})})]})]})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:p,readOnly:!0,onClick:()=>Y("local"),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>Y("local"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,l.jsx)(dk.FolderOpen,{className:"h-4 w-4"})})]})]}),(0,l.jsxs)("label",{className:"flex items-center gap-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:x,onChange:a=>y(a.target.checked),className:"h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Initialize git if this folder is non-git"})]})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Default Branch"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:"main",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{W()},disabled:P,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",title:"Detect branches",children:P?(0,l.jsx)(dp.default,{className:"h-3.5 w-3.5 animate-spin"}):(0,l.jsx)(dr,{className:"h-3.5 w-3.5"})})]}),N.length>0&&(0,l.jsx)("select",{value:r,onChange:a=>s(a.target.value),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:N.map(a=>(0,l.jsx)("option",{value:a,children:a},a))}),R&&(0,l.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-red)]",children:R})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Agent"}),(0,l.jsx)("select",{value:t,onChange:a=>u(a.target.value),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:U.map(a=>(0,l.jsx)("option",{value:a,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:dV(a)},a))})]})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:v,onChange:a=>w(a.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsxs)("span",{children:["Use worktree isolation",(0,l.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, sessions run directly on the selected branch in the local repo."})]})]}),e&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-red)]",children:e})]}),(0,l.jsxs)("footer",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:b,disabled:d,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Cancel"}),(0,l.jsx)("button",{type:"submit",disabled:!Z||d,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:d?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dp.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Adding..."]}):"Add Workspace"})]})]})}),(0,l.jsx)(ea,{open:J,initialPath:p,title:"local"===L?"Select Local Repository":"Select Clone Target Folder",description:"local"===L?"Choose the local repository folder.":"Choose where the git repository should be cloned.",onClose:()=>K(!1),onSelect:a=>{K(!1),a&&(q(a),("local"===h||"local"===L)&&W({path:a}))}})]})}function ea({open:a,initialPath:b,title:c,description:d,onClose:e,onSelect:f}){let[g,h]=(0,m.useState)(""),[i,j]=(0,m.useState)(b??""),[k,n]=(0,m.useState)([]),[o,p]=(0,m.useState)(""),[q,r]=(0,m.useState)(!1),[s,t]=(0,m.useState)(null);(0,m.useEffect)(()=>{if(!a)return;p(""),j(b??"");let c=b&&b.trim().length>0?b.trim():void 0,d=c?`?path=${encodeURIComponent(c)}`:"";r(!0),t(null),fetch(`/api/filesystem/directory${d}`).then(async a=>{let b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to load directory (${a.status})`);h("string"==typeof b?.currentPath?b.currentPath:""),n(Array.isArray(b?.entries)?b.entries:[])}).catch(a=>{t(a instanceof Error?a.message:"Failed to load directory"),n([])}).finally(()=>{r(!1)})},[b,a]);let u=(0,m.useMemo)(()=>{if(0===o.trim().length)return k;let a=o.trim().toLowerCase();return k.filter(b=>b.name.toLowerCase().includes(a))},[k,o]),v=async a=>{r(!0),t(null);try{let b=a&&a.trim().length>0?`?path=${encodeURIComponent(a.trim())}`:"",c=await fetch(`/api/filesystem/directory${b}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load directory (${c.status})`);let e="string"==typeof d?.currentPath?d.currentPath:"";h(e),n(Array.isArray(d?.entries)?d.entries:[]),j(e)}catch(a){t(a instanceof Error?a.message:"Failed to load directory"),n([])}finally{r(!1)}};return a?(0,l.jsx)("div",{className:"fixed inset-0 z-[95] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{e(),f(null)},role:"presentation",children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",onClick:a=>a.stopPropagation(),children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("h3",{className:"text-[16px] text-[var(--vk-text-strong)]",children:c}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:d})]}),(0,l.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-3 px-4 py-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("input",{value:i,onChange:a=>j(a.target.value),placeholder:"/path/to/repository",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{v(i)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open"})]}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("button",{type:"button",onClick:()=>{v()},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Home"}),(0,l.jsx)("button",{type:"button",onClick:()=>{if(!g)return;let a=g.replace(/\\/g,"/");if("/"===a)return;let b=a.split("/").filter(Boolean);v(b.length>1?`/${b.slice(0,-1).join("/")}`:"/")},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Up"}),(0,l.jsx)("div",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:g||"Home"})]}),(0,l.jsxs)("div",{className:"relative",children:[(0,l.jsx)(ds.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:o,onChange:a=>p(a.target.value),placeholder:"Filter folders",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto rounded-[4px] border border-[var(--vk-border)]",children:q?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"Loading..."}):s?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-red)]",children:s}):0===u.length?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"No folders found."}):(0,l.jsx)("div",{className:"p-1",children:u.map(a=>(0,l.jsxs)("button",{type:"button",onClick:()=>{a.isDirectory&&v(a.path)},className:`mb-1 flex w-full items-center gap-2 rounded-[4px] px-2 py-2 text-left text-[12px] ${a.isDirectory?"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]":"cursor-default text-[var(--vk-text-muted)]"}`,children:[(0,l.jsx)(dk.FolderOpen,{className:"h-4 w-4 shrink-0"}),(0,l.jsx)("span",{className:"truncate",children:a.name}),a.isGitRepo&&(0,l.jsx)("span",{className:"ml-auto rounded-[999px] border border-[var(--vk-border)] px-1.5 py-0.5 text-[10px]",children:"git"})]},a.path))})})]}),(0,l.jsxs)("footer",{className:"flex items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:()=>{e(),f(null)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Cancel"}),(0,l.jsx)("button",{type:"button",onClick:()=>{let a=i.trim().length>0?i.trim():g;e(),f(a||null)},className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)]",children:"Use this folder"})]})]})}):null}function eb({prompt:a,setPrompt:b,selectedAgent:c,setSelectedAgent:d,agentOptions:e,projectLabel:f,hasProject:g,creating:h,error:i,onOpenAddWorkspace:j,onCreate:k}){let n=(0,m.useMemo)(()=>{let a=new Map(dS.map((a,b)=>[a,b]));return[...e].sort((b,c)=>{let d=a.get(dU(b))??Number.MAX_SAFE_INTEGER,e=a.get(dU(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:dV(b).localeCompare(dV(c))})},[e]),o=dV(c);return(0,l.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto px-3 py-4 sm:items-center sm:py-6",children:(0,l.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,l.jsx)("h1",{className:"pb-4 text-center text-[28px] font-medium leading-[32px] tracking-[-0.6px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),(0,l.jsxs)("div",{className:"rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-[var(--vk-border)] px-2 py-2",children:[(0,l.jsx)(dG.AgentTileIcon,{seed:{label:c},className:"h-8 w-8 border-none bg-transparent"}),(0,l.jsxs)(c$,{children:[(0,l.jsx)(c0,{asChild:!0,children:(0,l.jsxs)("button",{type:"button",className:"inline-flex h-[31px] max-w-[70vw] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-none","aria-label":"Select agent",children:[(0,l.jsx)("span",{className:"truncate pr-1",children:o}),(0,l.jsx)(di.ChevronDown,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,l.jsx)(c1,{children:(0,l.jsxs)(c3,{align:"start",sideOffset:6,className:"z-50 min-w-[255px] rounded-[5px] border border-[var(--vk-border)] bg-[color:#2a2a2a] p-2 shadow-[0_10px_30px_rgba(0,0,0,0.45)]",children:[(0,l.jsx)("p",{className:"px-2 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),n.map(a=>{let b=a===c;return(0,l.jsxs)(c4,{onSelect:()=>d(a),className:"flex h-[40px] cursor-default items-center gap-2 rounded-[3px] px-2 text-[14px] leading-[21px] text-[var(--vk-text-strong)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)]",children:[(0,l.jsx)(dG.AgentTileIcon,{seed:{label:a},className:"h-6 w-6 border-none bg-transparent"}),(0,l.jsx)("span",{children:dV(a)}),(0,l.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:b?(0,l.jsx)(dh.Check,{className:"h-4 w-4"}):null})]},a)})]})})]})]}),(0,l.jsx)("div",{className:"px-2 py-2",children:(0,l.jsx)("textarea",{value:a,onChange:a=>b(a.target.value),placeholder:"Describe the task...",rows:2,className:"min-h-[48px] w-full resize-none bg-transparent text-[16px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})}),(0,l.jsxs)("div",{className:"flex flex-col gap-2 border-t border-[var(--vk-border)] px-2 py-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,l.jsx)("div",{className:"flex min-w-0 items-center text-[14px] text-[var(--vk-text-normal)]",children:(0,l.jsx)("span",{className:"truncate",children:f})}),(0,l.jsx)("div",{className:"flex w-full items-center justify-end gap-2 sm:w-auto",children:g?(0,l.jsx)("button",{type:"button",onClick:k,disabled:h||0===a.trim().length,className:"inline-flex min-h-[32px] w-full items-center justify-center rounded-[3px] bg-[var(--vk-bg-active)] px-2 text-[16px] text-[var(--vk-text-normal)] transition-colors hover:bg-[var(--vk-bg-hover)] disabled:opacity-45 sm:w-auto",children:h?(0,l.jsx)(dp.default,{className:"h-4 w-4 animate-spin"}):"Create"}):(0,l.jsx)("button",{type:"button",onClick:j,className:"inline-flex min-h-[32px] w-full items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-2 text-[13px] text-[var(--vk-text-normal)] transition-colors hover:bg-[var(--vk-bg-hover)] sm:w-auto",children:"Add Workspace"})})]})]}),i&&(0,l.jsx)("p",{className:"pt-2 text-[12px] text-[var(--vk-red)]",children:i})]})})}function ec({value:a,idleLabel:b="Copy",copiedLabel:c="Copied"}){let[d,e]=(0,m.useState)(!1);async function f(){await navigator.clipboard.writeText(a),e(!0),window.setTimeout(()=>e(!1),1400)}return(0,l.jsxs)("button",{type:"button",onClick:()=>void f(),className:"inline-flex h-8 items-center gap-1.5 rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[d?(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"}):(0,l.jsx)(dj.Copy,{className:"h-3.5 w-3.5"}),(0,l.jsx)("span",{children:d?c:b})]})}function ed({open:a,mode:b,creating:c,error:d,current:e,agentOptions:f,onRepositoriesChanged:g,onOnboardingComplete:h,onClose:i,onSave:j}){var k;let n,[o,p]=(0,m.useState)("preferences"),[q,r]=(0,m.useState)(e.codingAgent),[s,t]=(0,m.useState)(e.ide),[u,v]=(0,m.useState)(e.remoteSshHost),[w,x]=(0,m.useState)(e.remoteSshUser),[y,z]=(0,m.useState)(e.markdownEditor),[A,B]=(0,m.useState)(e.notifications.soundEnabled),[C,D]=(0,m.useState)(e.notifications.soundFile),[E,F]=(0,m.useState)([]),[G,H]=(0,m.useState)(!1),[I,J]=(0,m.useState)(!1),[K,L]=(0,m.useState)(null),[M,N]=(0,m.useState)(""),[O,P]=(0,m.useState)(null),[Q,R]=(0,m.useState)([]),[S,T]=(0,m.useState)(!1),[U,V]=(0,m.useState)(null),[W,X]=(0,m.useState)(!1),Y=c||I;function Z(a){return{...a,pathHealth:{exists:a.pathHealth.exists,isGitRepository:a.pathHealth.isGitRepository,suggestedPath:a.pathHealth.suggestedPath}}}async function $(a){H(!0),L(null);try{let b=await fetch("/api/repositories"),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load repositories (${b.status})`);let d=Array.isArray(c?.repositories)?c.repositories:[];F(d);let e=d[0]?.id??"",f=a&&d.some(b=>b.id===a)?a:M&&d.some(a=>a.id===M)?M:e;N(f)}catch(a){F([]),N(""),P(null),L(a instanceof Error?a.message:"Failed to load repositories")}finally{H(!1)}}async function _(a,b){let c=(a??O?.path??"").trim();if(0===c.length){V("Select a repository path first."),R([]);return}T(!0),V(null);try{let a=new URLSearchParams({path:c}),d=await fetch(`/api/workspaces/branches?${a.toString()}`),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Failed to detect branches (${d.status})`);let f=Array.isArray(e?.branches)?e.branches.filter(a=>"string"==typeof a&&a.trim().length>0):[];R(f);let g=b?.trim()||("string"==typeof e?.defaultBranch&&e.defaultBranch.trim().length>0?e.defaultBranch.trim():f[0]??"");if(!g)return;P(a=>!a||a.defaultBranch.trim().length>0&&f.includes(a.defaultBranch)?a:{...a,defaultBranch:g})}catch(a){R([]),V(a instanceof Error?a.message:"Failed to detect branches")}finally{T(!1)}}async function aa(){if(!O||I||0===O.repo.trim().length||0===O.path.trim().length)return!1;J(!0),L(null);try{let a=await fetch("/api/repositories",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:O.id,displayName:O.displayName,repo:O.repo,path:O.path,agent:O.agent,defaultWorkingDirectory:O.defaultWorkingDirectory,defaultBranch:O.defaultBranch,devServerScript:O.devServerScript,setupScript:O.setupScript,runSetupInParallel:O.runSetupInParallel,cleanupScript:O.cleanupScript,archiveScript:O.archiveScript,copyFiles:O.copyFiles})}),b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to save repository settings (${a.status})`);let c=b?.repository;if(!c)throw Error("Repository saved but response is missing repository data");return F(a=>a.map(a=>a.id===c.id?c:a)),P(Z(c)),N(c.id),V(null),await _(c.path,c.defaultBranch),g&&await g(),!0}catch(a){return L(a instanceof Error?a.message:"Failed to save repository settings"),!1}finally{J(!1)}}(0,m.useEffect)(()=>{a&&(p("preferences"),r(e.codingAgent),t(e.ide),v(e.remoteSshHost),x(e.remoteSshUser),z(e.markdownEditor),B(e.notifications.soundEnabled),D(e.notifications.soundFile),R([]),V(null))},[a]),(0,m.useEffect)(()=>{a&&$()},[a]),(0,m.useEffect)(()=>{if(!a)return;if(!M)return void P(null);let b=E.find(a=>a.id===M);b&&(P(Z(b)),R([]),V(null),b.path.trim().length>0&&_(b.path,b.defaultBranch))},[a,E,M]);let ab="onboarding"===b&&(G||E.length>0),ac=(0,m.useMemo)(()=>"onboarding"===b?ab?dX:dX.filter(a=>"preferences"===a.id):dW,[b,ab]),ad=ac.find(a=>a.id===o)??ac[0]??dW[0],ae="onboarding"===b,af="preferences"===ad.id,ag="repositories"===ad.id,ah=ac.findIndex(a=>a.id===ad.id)+1,ai=ac.some(a=>"repositories"===a.id),aj=(0,m.useMemo)(()=>{let a=new Set(f);q.trim().length>0&&a.add(q),0===a.size&&a.add("qwen-code");let b=new Map(dS.map((a,b)=>[a,b]));return[...a].sort((a,c)=>{let d=b.get(dU(a))??Number.MAX_SAFE_INTEGER,e=b.get(dU(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:dV(a).localeCompare(dV(c))})},[f,q]);if(!a)return null;let ak=q.trim().length>0&&s.trim().length>0&&y.trim().length>0,al=!!O&&O.displayName.trim().length>0&&O.repo.trim().length>0&&O.path.trim().length>0&&O.defaultBranch.trim().length>0,am=O?(k={ide:s,markdownEditor:y},n=["npx conductor-oss@latest setup","--yes",`--path ${d5(O.path)}`,`--project-id ${d5(O.id)}`,`--display-name ${d5(O.displayName)}`,`--agent ${d5(O.agent||"claude-code")}`,`--ide ${d5(k.ide)}`,`--markdown-editor ${d5(k.markdownEditor)}`],O.repo.trim().length>0&&n.push(`--repo ${d5(O.repo.trim())}`),O.defaultBranch.trim().length>0&&n.push(`--default-branch ${d5(O.defaultBranch.trim())}`),O.defaultWorkingDirectory.trim().length>0&&n.push(`--default-working-directory ${d5(O.defaultWorkingDirectory.trim())}`),n.join(" ")):"";async function an(a,b){if(ak&&!c){let c;await j((c=A?C??d$[0]?.id??"abstract-sound-4":null,{onboardingAcknowledged:!!a||e.onboardingAcknowledged,codingAgent:q.trim(),ide:s.trim(),remoteSshHost:u.trim(),remoteSshUser:w.trim(),markdownEditor:y.trim(),notifications:{soundEnabled:A,soundFile:c}}),b)}}async function ao(){if(!G){if(!ai){await an(!0,{closeDialog:!0}),h?.({needsProject:0===E.length});return}await an(!1,{closeDialog:!1}),p("repositories")}}async function ap(){(!ag||await aa())&&(await an(!0,{closeDialog:!0}),h?.({needsProject:!1}))}return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{className:"fixed inset-0 z-[90] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center",onClick:()=>{Y||"onboarding"===b||W||i()},role:"presentation",children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[1120px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)] sm:h-[min(92vh,760px)] sm:flex-row",onClick:a=>a.stopPropagation(),children:[(0,l.jsxs)("aside",{className:"flex w-full shrink-0 flex-col border-b border-[var(--vk-border)] bg-[rgba(28,28,28,0.8)] sm:w-[224px] sm:border-b-0 sm:border-r",children:[(0,l.jsx)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:(0,l.jsx)("h2",{className:"text-[22px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:ae?"Setup":"Settings"})}),(0,l.jsx)("nav",{className:"flex gap-1 overflow-x-auto p-2 sm:block sm:space-y-1 sm:overflow-auto",children:ac.map(a=>{let b=a.icon,c=ad.id===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>p(a.id),disabled:Y,className:`flex shrink-0 items-center gap-3 rounded-[3px] px-3 py-2 text-left text-[14px] leading-[21px] transition-colors sm:w-full ${c?"bg-[rgba(234,122,42,0.1)] text-[var(--vk-orange)]":"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]"} disabled:opacity-50`,children:[(0,l.jsx)(b,{className:"h-4 w-4 shrink-0"}),(0,l.jsx)("span",{children:a.label})]},a.id)})})]}),(0,l.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,l.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("h3",{className:"text-[20px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:ae?af?"Choose your preferences":"Review repository defaults":ad.label}),ae&&(0,l.jsxs)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:["Step ",ah," of ",ac.length]})]}),(0,l.jsx)("button",{type:"button",onClick:i,disabled:Y||"onboarding"===b,"aria-label":"Close settings",className:"inline-flex h-7 w-7 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-40",children:(0,l.jsx)(dx.X,{className:"h-4 w-4"})})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto px-4 py-3 sm:px-6 sm:py-4",children:af?(0,l.jsxs)("div",{className:"space-y-5",children:[ae&&(0,l.jsx)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(234,122,42,0.08)] px-4 py-3",children:(0,l.jsx)("p",{className:"text-[13px] leading-5 text-[var(--vk-text-normal)]",children:"Conductor is already running locally. Finish setup here in the dashboard, then you can start using chat and boards immediately."})}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Coding Agent"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select the default coding agent configuration."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:aj.map(a=>{let b=q===a;return(0,l.jsxs)("button",{type:"button",onClick:()=>r(a),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dG.AgentTileIcon,{seed:{label:a},className:"h-5 w-5 border-none bg-transparent"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:dV(a)}),b&&(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a)})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Code Editor"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This editor will be used when opening attempts and files."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:dY.map(a=>{let b=s===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>t(a.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(d4,{editorId:a.id,label:a.label}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)})})]}),(0,l.jsxs)("section",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Remote Editor Access"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Use your local Remote-SSH editor to jump straight into a remote worktree. This complements ngrok or Cloudflare Tunnel for dashboard access; it does not replace the tunnel."})]}),(0,l.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH Host or Alias"}),(0,l.jsx)("input",{value:u,onChange:a=>v(a.target.value),placeholder:"e.g., conductor-dev or 203.0.113.10",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH User (optional)"}),(0,l.jsx)("input",{value:w,onChange:a=>x(a.target.value),placeholder:"e.g., ubuntu",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"One-click remote open currently supports VS Code and VS Code Insiders. Other editors will still save as your preference, but they will not get a remote launch button yet."})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Markdown Editor"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Used as your second-brain markdown source when feeding context into tasks."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:dZ.map(a=>{let b=y===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>z(a.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(d7,{editorId:a.id}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Notification Sound"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Pick a sound for notifications, or disable sound."}),(0,l.jsxs)("div",{className:"grid gap-2 sm:grid-cols-2",children:[d$.map(a=>{let b=A&&C===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>{B(!0),D(a.id)},className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dv,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)}),(0,l.jsxs)("button",{type:"button",onClick:()=>B(!1),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${!A?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dw,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:"No sound"}),!A&&(0,l.jsx)(dh.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]})]})]})]}):ag?(0,l.jsxs)("div",{className:"space-y-5",children:[(0,l.jsxs)("section",{className:"space-y-1",children:[(0,l.jsx)("h4",{className:"text-[24px] leading-[24px] text-[var(--vk-text-strong)]",children:ae?"Repository Defaults":"Repository Configuration"}),(0,l.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:ae?"Review the repository Conductor will use for this workspace. You can edit advanced scripts later from Settings.":"Configure scripts and defaults used whenever this repository is selected for workspaces."})]}),("settings"===b||E.length>1)&&(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Select Repository"}),(0,l.jsxs)("select",{value:M,onChange:a=>N(a.target.value),disabled:G||0===E.length||Y,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[0===E.length&&(0,l.jsx)("option",{value:"",children:"No repositories configured"}),E.map(a=>(0,l.jsx)("option",{value:a.id,children:a.displayName},a.id))]})]}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository to view and edit its configuration."}),G&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Loading repositories..."})]}),ae&&1===E.length&&O&&(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Detected Repository"}),(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.52)] px-3 py-3 text-[13px] text-[var(--vk-text-normal)]",children:[O.displayName,(0,l.jsx)("span",{className:"ml-2 text-[var(--vk-text-muted)]",children:O.path})]})]}),O&&(0,l.jsxs)(l.Fragment,{children:["settings"===b&&(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Repo-Preseed Bootstrap"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Use this when you already know the target repository and want one command to prefill it. The default first-run path is still `npx conductor-oss@latest`, which opens the dashboard and lets the user choose preferences before adding a project."})]}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2 text-[11px] text-[var(--vk-text-muted)]",children:[(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Workspace: ",O.workspaceMode]}),(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Runtime: ",O.runtimeMode]}),(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["SCM: ",O.scmMode]})]}),(0,l.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.72)] p-3",children:(0,l.jsx)("pre",{className:"overflow-x-auto whitespace-pre-wrap break-all text-[12px] leading-5 text-[var(--vk-text-normal)]",children:am})}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This command uses your selected agent, editor, and notes app. Best on macOS with Homebrew. GitHub sign-in still opens a browser so the user can approve access."}),(0,l.jsx)(ec,{value:am,idleLabel:"Copy Setup Command"})]})]}),(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"General Settings"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure basic repository information."}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Display Name"}),(0,l.jsx)("input",{value:O.displayName,onChange:a=>P(b=>b?{...b,displayName:a.target.value}:b),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"A friendly name for this repository."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Slug"}),(0,l.jsx)("input",{value:O.repo,onChange:a=>P(b=>b?{...b,repo:a.target.value}:b),placeholder:"e.g., your-org/your-repo",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used for PR tracking, GitHub links, and onboarding defaults."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Agent"}),(0,l.jsx)("select",{value:O.agent,onChange:a=>P(b=>b?{...b,agent:a.target.value}:b),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:aj.map(a=>(0,l.jsx)("option",{value:a,children:dV(a)},a))}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used by the one-line bootstrap and as the project default when tasks dispatch."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Path"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:O.path,readOnly:!0,onClick:()=>X(!0),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>X(!0),disabled:Y,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",children:(0,l.jsx)(dk.FolderOpen,{className:"h-4 w-4"})})]}),!O.pathHealth.exists&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path does not exist on disk."}),O.pathHealth.exists&&!O.pathHealth.isGitRepository&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path exists but is not a git repository."}),O.pathHealth.suggestedPath&&(0,l.jsx)("button",{type:"button",onClick:()=>{let a=O.pathHealth.suggestedPath??"";a&&(P(b=>b?{...b,path:a,pathHealth:{...b.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:b),_(a))},className:"mt-1 inline-flex h-7 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[11px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Use detected git repo path"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Working Directory"}),(0,l.jsx)("input",{value:O.defaultWorkingDirectory,onChange:a=>P(b=>b?{...b,defaultWorkingDirectory:a.target.value}:b),placeholder:"e.g., packages/frontend",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Subdirectory relative to the repository root where the coding agent starts."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Target Branch"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:O.defaultBranch,onChange:a=>P(b=>b?{...b,defaultBranch:a.target.value}:b),placeholder:"Select a branch",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{_()},disabled:S,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",title:"Detect branches",children:S?(0,l.jsx)(dp.default,{className:"h-3.5 w-3.5 animate-spin"}):(0,l.jsx)(dr,{className:"h-3.5 w-3.5"})})]}),Q.length>0&&(0,l.jsx)("select",{value:O.defaultBranch,onChange:a=>P(b=>b?{...b,defaultBranch:a.target.value}:b),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:Q.map(a=>(0,l.jsx)("option",{value:a,children:a},a))}),U&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:U})]})]}),"settings"===b&&(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Scripts & Configuration"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure dev server, setup, cleanup, archive, and file-copy behavior for this repository."}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Dev Server Script"}),(0,l.jsx)("textarea",{rows:3,value:O.devServerScript,onChange:a=>P(b=>b?{...b,devServerScript:a.target.value}:b),placeholder:"npm run dev",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Starts a development server for this repository."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Setup Script"}),(0,l.jsx)("textarea",{rows:4,value:O.setupScript,onChange:a=>P(b=>b?{...b,setupScript:a.target.value}:b),placeholder:"npm install",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Runs in the worktree after creation and before/with coding-agent startup."})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:O.runSetupInParallel,onChange:a=>P(b=>b?{...b,runSetupInParallel:a.target.checked}:b),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Run setup script in parallel with coding agent"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cleanup Script"}),(0,l.jsx)("textarea",{rows:4,value:O.cleanupScript,onChange:a=>P(b=>b?{...b,cleanupScript:a.target.value}:b),placeholder:"Runs when the workspace is archived and changes exist",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Archive Script"}),(0,l.jsx)("textarea",{rows:4,value:O.archiveScript,onChange:a=>P(b=>b?{...b,archiveScript:a.target.value}:b),placeholder:"Runs when the workspace/session is archived",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Copy Files"}),(0,l.jsx)("input",{value:O.copyFiles,onChange:a=>P(b=>b?{...b,copyFiles:a.target.value}:b),placeholder:".env, config/*.json",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Comma-separated relative file paths or glob patterns copied from the repo to each worktree."})]})]})]})]}):(0,l.jsxs)("section",{className:"space-y-3",children:[(0,l.jsx)("h4",{className:"text-[16px] font-medium text-[var(--vk-text-strong)]",children:ad.label}),(0,l.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:"This section is queued for implementation. Preferences and repository settings are available now."}),(0,l.jsx)("button",{type:"button",onClick:()=>p("preferences"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open Preferences"})]})}),(0,l.jsxs)("footer",{className:"flex flex-col gap-3 border-t border-[var(--vk-border)] px-4 py-3 sm:flex-row sm:items-center sm:justify-between sm:gap-2",children:[(0,l.jsxs)("div",{className:"min-w-0",children:[(ag?K:d)&&(0,l.jsx)("p",{className:"truncate rounded-[4px] border border-[var(--vk-red)]/35 bg-[var(--vk-red)]/10 px-2 py-1 text-[12px] text-[var(--vk-red)]",children:ag?K:d}),!d&&!K&&af&&(0,l.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:ae?"Finish setup once here. You can change these preferences any time from Settings.":"Preferences are saved to your conductor config and applied immediately."}),!d&&!K&&ag&&(0,l.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:ae?"These defaults will be used the first time workspaces and tasks are created for this repo.":"Repository settings are saved to your conductor config and used for future workspaces."})]}),(0,l.jsxs)("div",{className:"flex w-full flex-wrap items-center justify-end gap-2 sm:w-auto",children:[!ae&&(0,l.jsx)("button",{type:"button",onClick:i,disabled:Y,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Close"}),ae&&ag&&(0,l.jsx)("button",{type:"button",onClick:()=>p("preferences"),disabled:Y,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Back"}),af&&!ae&&(0,l.jsx)("button",{type:"button",onClick:()=>{an(e.onboardingAcknowledged,{closeDialog:!0})},disabled:!ak||c,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:c?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dp.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save"}),ag&&!ae&&(0,l.jsx)("button",{type:"button",onClick:()=>{aa()},disabled:!al||I||G,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:I?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dp.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save Repository"}),ae&&(0,l.jsx)("button",{type:"button",onClick:()=>{af?ao():ap()},disabled:af?!ak||c||G:!al||Y,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:Y||af&&G?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dp.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),af&&G?"Loading...":"Saving..."]}):af&&ai?"Continue":"Finish Setup"})]})]})]})]})}),(0,l.jsx)(ea,{open:W,initialPath:O?.path,title:"Select Repository Path",description:"Choose the local git repository folder.",onClose:()=>X(!1),onSelect:a=>{X(!1),a&&(P(b=>b?{...b,path:a,pathHealth:{...b.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:b),_(a))}})]})}a.s(["default",()=>d8],62587)}];
|
|
1
|
+
module.exports=[62587,a=>{"use strict";let b,c;var d,e,f,g,h,i,j,k,l=a.i(4465),m=a.i(50547),n=a.i(59653),o=a.i(80303),p=a.i(95819),q=a.i(47427),r=a.i(91974),s=a.i(28869),t=a.i(60380),u=a.i(8725),v="dismissableLayer.update",w=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),x=m.forwardRef((a,b)=>{let{disableOutsidePointerEvents:c=!1,onEscapeKeyDown:d,onPointerDownOutside:e,onFocusOutside:f,onInteractOutside:g,onDismiss:h,...i}=a,k=m.useContext(w),[p,q]=m.useState(null),s=p?.ownerDocument??globalThis?.document,[,t]=m.useState({}),x=(0,o.useComposedRefs)(b,a=>q(a)),A=Array.from(k.layers),[B]=[...k.layersWithOutsidePointerEventsDisabled].slice(-1),C=A.indexOf(B),D=p?A.indexOf(p):-1,E=k.layersWithOutsidePointerEventsDisabled.size>0,F=D>=C,G=function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a),d=m.useRef(!1),e=m.useRef(()=>{});return m.useEffect(()=>{let a=a=>{if(a.target&&!d.current){let d=function(){z("dismissableLayer.pointerDownOutside",c,f,{discrete:!0})},f={originalEvent:a};"touch"===a.pointerType?(b.removeEventListener("click",e.current),e.current=d,b.addEventListener("click",e.current,{once:!0})):d()}else b.removeEventListener("click",e.current);d.current=!1},f=window.setTimeout(()=>{b.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(f),b.removeEventListener("pointerdown",a),b.removeEventListener("click",e.current)}},[b,c]),{onPointerDownCapture:()=>d.current=!0}}(a=>{let b=a.target,c=[...k.branches].some(a=>a.contains(b));F&&!c&&(e?.(a),g?.(a),a.defaultPrevented||h?.())},s),H=function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a),d=m.useRef(!1);return m.useEffect(()=>{let a=a=>{a.target&&!d.current&&z("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})};return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:()=>d.current=!0,onBlurCapture:()=>d.current=!1}}(a=>{let b=a.target;![...k.branches].some(a=>a.contains(b))&&(f?.(a),g?.(a),a.defaultPrevented||h?.())},s);return!function(a,b=globalThis?.document){let c=(0,u.useCallbackRef)(a);m.useEffect(()=>{let a=a=>{"Escape"===a.key&&c(a)};return b.addEventListener("keydown",a,{capture:!0}),()=>b.removeEventListener("keydown",a,{capture:!0})},[c,b])}(a=>{D===k.layers.size-1&&(d?.(a),!a.defaultPrevented&&h&&(a.preventDefault(),h()))},s),m.useEffect(()=>{if(p)return c&&(0===k.layersWithOutsidePointerEventsDisabled.size&&(j=s.body.style.pointerEvents,s.body.style.pointerEvents="none"),k.layersWithOutsidePointerEventsDisabled.add(p)),k.layers.add(p),y(),()=>{c&&1===k.layersWithOutsidePointerEventsDisabled.size&&(s.body.style.pointerEvents=j)}},[p,s,c,k]),m.useEffect(()=>()=>{p&&(k.layers.delete(p),k.layersWithOutsidePointerEventsDisabled.delete(p),y())},[p,k]),m.useEffect(()=>{let a=()=>t({});return document.addEventListener(v,a),()=>document.removeEventListener(v,a)},[]),(0,l.jsx)(r.Primitive.div,{...i,ref:x,style:{pointerEvents:E?F?"auto":"none":void 0,...a.style},onFocusCapture:(0,n.composeEventHandlers)(a.onFocusCapture,H.onFocusCapture),onBlurCapture:(0,n.composeEventHandlers)(a.onBlurCapture,H.onBlurCapture),onPointerDownCapture:(0,n.composeEventHandlers)(a.onPointerDownCapture,G.onPointerDownCapture)})});function y(){let a=new CustomEvent(v);document.dispatchEvent(a)}function z(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});b&&e.addEventListener(a,b,{once:!0}),d?(0,r.dispatchDiscreteCustomEvent)(e,f):e.dispatchEvent(f)}x.displayName="DismissableLayer",m.forwardRef((a,b)=>{let c=m.useContext(w),d=m.useRef(null),e=(0,o.useComposedRefs)(b,d);return m.useEffect(()=>{let a=d.current;if(a)return c.branches.add(a),()=>{c.branches.delete(a)}},[c.branches]),(0,l.jsx)(r.Primitive.div,{...a,ref:e})}).displayName="DismissableLayerBranch";var A=0;function B(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var C="focusScope.autoFocusOnMount",D="focusScope.autoFocusOnUnmount",E={bubbles:!1,cancelable:!0},F=m.forwardRef((a,b)=>{let{loop:c=!1,trapped:d=!1,onMountAutoFocus:e,onUnmountAutoFocus:f,...g}=a,[h,i]=m.useState(null),j=(0,u.useCallbackRef)(e),k=(0,u.useCallbackRef)(f),n=m.useRef(null),p=(0,o.useComposedRefs)(b,a=>i(a)),q=m.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;m.useEffect(()=>{if(d){let a=function(a){if(q.paused||!h)return;let b=a.target;h.contains(b)?n.current=b:I(n.current,{select:!0})},b=function(a){if(q.paused||!h)return;let b=a.relatedTarget;null!==b&&(h.contains(b)||I(n.current,{select:!0}))};document.addEventListener("focusin",a),document.addEventListener("focusout",b);let c=new MutationObserver(function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&I(h)});return h&&c.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),c.disconnect()}}},[d,h,q.paused]),m.useEffect(()=>{if(h){J.add(q);let a=document.activeElement;if(!h.contains(a)){let b=new CustomEvent(C,E);h.addEventListener(C,j),h.dispatchEvent(b),b.defaultPrevented||(function(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(I(d,{select:b}),document.activeElement!==c)return}(G(h).filter(a=>"A"!==a.tagName),{select:!0}),document.activeElement===a&&I(h))}return()=>{h.removeEventListener(C,j),setTimeout(()=>{let b=new CustomEvent(D,E);h.addEventListener(D,k),h.dispatchEvent(b),b.defaultPrevented||I(a??document.body,{select:!0}),h.removeEventListener(D,k),J.remove(q)},0)}}},[h,j,k,q]);let s=m.useCallback(a=>{if(!c&&!d||q.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,e=document.activeElement;if(b&&e){var f;let b,d=a.currentTarget,[g,h]=[H(b=G(f=d),f),H(b.reverse(),f)];g&&h?a.shiftKey||e!==h?a.shiftKey&&e===g&&(a.preventDefault(),c&&I(h,{select:!0})):(a.preventDefault(),c&&I(g,{select:!0})):e===d&&a.preventDefault()}},[c,d,q.paused]);return(0,l.jsx)(r.Primitive.div,{tabIndex:-1,...g,ref:p,onKeyDown:s})});function G(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;c.nextNode();)b.push(c.currentNode);return b}function H(a,b){for(let c of a)if(!function(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}(c,{upTo:b}))return c}function I(a,{select:b=!1}={}){if(a&&a.focus){var c;let d=document.activeElement;a.focus({preventScroll:!0}),a!==d&&(c=a)instanceof HTMLInputElement&&"select"in c&&b&&a.select()}}F.displayName="FocusScope";var J=(c=[],{add(a){let b=c[0];a!==b&&b?.pause(),(c=K(c,a)).unshift(a)},remove(a){c=K(c,a),c[0]?.resume()}});function K(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}var L=a.i(55277);let M=["top","right","bottom","left"],N=Math.min,O=Math.max,P=Math.round,Q=Math.floor,R=a=>({x:a,y:a}),S={left:"right",right:"left",bottom:"top",top:"bottom"};function T(a,b){return"function"==typeof a?a(b):a}function U(a){return a.split("-")[0]}function V(a){return a.split("-")[1]}function W(a){return"x"===a?"y":"x"}function X(a){return"y"===a?"height":"width"}function Y(a){let b=a[0];return"t"===b||"b"===b?"y":"x"}function Z(a){return a.includes("start")?a.replace("start","end"):a.replace("end","start")}let $=["left","right"],_=["right","left"],aa=["top","bottom"],ab=["bottom","top"];function ac(a){let b=U(a);return S[b]+a.slice(b.length)}function ad(a){return"number"!=typeof a?{top:0,right:0,bottom:0,left:0,...a}:{top:a,right:a,bottom:a,left:a}}function ae(a){let{x:b,y:c,width:d,height:e}=a;return{width:d,height:e,top:c,left:b,right:b+d,bottom:c+e,x:b,y:c}}function af(a,b,c){let d,{reference:e,floating:f}=a,g=Y(b),h=W(Y(b)),i=X(h),j=U(b),k="y"===g,l=e.x+e.width/2-f.width/2,m=e.y+e.height/2-f.height/2,n=e[i]/2-f[i]/2;switch(j){case"top":d={x:l,y:e.y-f.height};break;case"bottom":d={x:l,y:e.y+e.height};break;case"right":d={x:e.x+e.width,y:m};break;case"left":d={x:e.x-f.width,y:m};break;default:d={x:e.x,y:e.y}}switch(V(b)){case"start":d[h]-=n*(c&&k?-1:1);break;case"end":d[h]+=n*(c&&k?-1:1)}return d}async function ag(a,b){var c;void 0===b&&(b={});let{x:d,y:e,platform:f,rects:g,elements:h,strategy:i}=a,{boundary:j="clippingAncestors",rootBoundary:k="viewport",elementContext:l="floating",altBoundary:m=!1,padding:n=0}=T(b,a),o=ad(n),p=h[m?"floating"===l?"reference":"floating":l],q=ae(await f.getClippingRect({element:null==(c=await (null==f.isElement?void 0:f.isElement(p)))||c?p:p.contextElement||await (null==f.getDocumentElement?void 0:f.getDocumentElement(h.floating)),boundary:j,rootBoundary:k,strategy:i})),r="floating"===l?{x:d,y:e,width:g.floating.width,height:g.floating.height}:g.reference,s=await (null==f.getOffsetParent?void 0:f.getOffsetParent(h.floating)),t=await (null==f.isElement?void 0:f.isElement(s))&&await (null==f.getScale?void 0:f.getScale(s))||{x:1,y:1},u=ae(f.convertOffsetParentRelativeRectToViewportRelativeRect?await f.convertOffsetParentRelativeRectToViewportRelativeRect({elements:h,rect:r,offsetParent:s,strategy:i}):r);return{top:(q.top-u.top+o.top)/t.y,bottom:(u.bottom-q.bottom+o.bottom)/t.y,left:(q.left-u.left+o.left)/t.x,right:(u.right-q.right+o.right)/t.x}}let ah=async(a,b,c)=>{let{placement:d="bottom",strategy:e="absolute",middleware:f=[],platform:g}=c,h=g.detectOverflow?g:{...g,detectOverflow:ag},i=await (null==g.isRTL?void 0:g.isRTL(b)),j=await g.getElementRects({reference:a,floating:b,strategy:e}),{x:k,y:l}=af(j,d,i),m=d,n=0,o={};for(let c=0;c<f.length;c++){let p=f[c];if(!p)continue;let{name:q,fn:r}=p,{x:s,y:t,data:u,reset:v}=await r({x:k,y:l,initialPlacement:d,placement:m,strategy:e,middlewareData:o,rects:j,platform:h,elements:{reference:a,floating:b}});k=null!=s?s:k,l=null!=t?t:l,o[q]={...o[q],...u},v&&n<50&&(n++,"object"==typeof v&&(v.placement&&(m=v.placement),v.rects&&(j=!0===v.rects?await g.getElementRects({reference:a,floating:b,strategy:e}):v.rects),{x:k,y:l}=af(j,m,i)),c=-1)}return{x:k,y:l,placement:m,strategy:e,middlewareData:o}};function ai(a,b){return{top:a.top-b.height,right:a.right-b.width,bottom:a.bottom-b.height,left:a.left-b.width}}function aj(a){return M.some(b=>a[b]>=0)}let ak=new Set(["left","top"]);async function al(a,b){let{placement:c,platform:d,elements:e}=a,f=await (null==d.isRTL?void 0:d.isRTL(e.floating)),g=U(c),h=V(c),i="y"===Y(c),j=ak.has(g)?-1:1,k=f&&i?-1:1,l=T(b,a),{mainAxis:m,crossAxis:n,alignmentAxis:o}="number"==typeof l?{mainAxis:l,crossAxis:0,alignmentAxis:null}:{mainAxis:l.mainAxis||0,crossAxis:l.crossAxis||0,alignmentAxis:l.alignmentAxis};return h&&"number"==typeof o&&(n="end"===h?-1*o:o),i?{x:n*k,y:m*j}:{x:m*j,y:n*k}}function am(a){return function(a){return!1}(a)?(a.nodeName||"").toLowerCase():"#document"}function an(a){var b;return(null==a||null==(b=a.ownerDocument)?void 0:b.defaultView)||window}function ao(a){var b;return null==(b=(function(a){return!1}(a)?a.ownerDocument:a.document)||window.document)?void 0:b.documentElement}function ap(a){return!1}function aq(a){let{overflow:b,overflowX:c,overflowY:d,display:e}=ay(a);return/auto|scroll|overlay|hidden|clip/.test(b+d+c)&&"inline"!==e&&"contents"!==e}function ar(a){try{if(a.matches(":popover-open"))return!0}catch(a){}try{return a.matches(":modal")}catch(a){return!1}}let as=/transform|translate|scale|rotate|perspective|filter/,at=/paint|layout|strict|content/,au=a=>!!a&&"none"!==a;function av(a){let b=a;return au(b.transform)||au(b.translate)||au(b.scale)||au(b.rotate)||au(b.perspective)||!aw()&&(au(b.backdropFilter)||au(b.filter))||as.test(b.willChange||"")||at.test(b.contain||"")}function aw(){return null==b&&(b="u">typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),b}function ax(a){return/^(html|body|#document)$/.test(am(a))}function ay(a){return an(a).getComputedStyle(a)}function az(a){return{scrollLeft:a.scrollX,scrollTop:a.scrollY}}function aA(a){if("html"===am(a))return a;let b=a.assignedSlot||a.parentNode||!1||ao(a);return b}function aB(a,b,c){var d;void 0===b&&(b=[]),void 0===c&&(c=!0);let e=function a(b){let c=aA(b);return ax(c)?b.ownerDocument?b.ownerDocument.body:b.body:a(c)}(a),f=e===(null==(d=a.ownerDocument)?void 0:d.body),g=an(e);if(!f)return b.concat(e,aB(e,[],c));{let a=aC(g);return b.concat(g,g.visualViewport||[],aq(e)?e:[],a&&c?aB(a):[])}}function aC(a){return a.parent&&Object.getPrototypeOf(a.parent)?a.frameElement:null}function aD(a){let b=ay(a),c=parseFloat(b.width)||0,d=parseFloat(b.height)||0,e=!1,f=e?a.offsetWidth:c,g=e?a.offsetHeight:d,h=P(c)!==f||P(d)!==g;return h&&(c=f,d=g),{width:c,height:d,$:h}}function aE(a){return 0,a.contextElement}function aF(a){let b=aE(a);1;return R(1)}let aG=R(0);function aH(a){let b=an(a);return aw()&&b.visualViewport?{x:b.visualViewport.offsetLeft,y:b.visualViewport.offsetTop}:aG}function aI(a,b,c,d){var e;void 0===b&&(b=!1),void 0===c&&(c=!1);let f=a.getBoundingClientRect(),g=aE(a),h=R(1);b&&(d||(h=aF(a)));let i=(void 0===(e=c)&&(e=!1),d&&(!e||d===an(g))&&e)?aH(g):R(0),j=(f.left+i.x)/h.x,k=(f.top+i.y)/h.y,l=f.width/h.x,m=f.height/h.y;if(g){let a=an(g),b=d,c=a,e=aC(c);for(;e&&d&&b!==c;){let a=aF(e),b=e.getBoundingClientRect(),d=ay(e),f=b.left+(e.clientLeft+parseFloat(d.paddingLeft))*a.x,g=b.top+(e.clientTop+parseFloat(d.paddingTop))*a.y;j*=a.x,k*=a.y,l*=a.x,m*=a.y,j+=f,k+=g,e=aC(c=an(e))}}return ae({width:l,height:m,x:j,y:k})}function aJ(a,b){let c=az(a).scrollLeft;return b?b.left+c:aI(ao(a)).left+c}function aK(a,b){let c=a.getBoundingClientRect();return{x:c.left+b.scrollLeft-aJ(a,c),y:c.top+b.scrollTop}}function aL(a,b,c){var d;let e;if("viewport"===b)e=function(a,b){let c=an(a),d=ao(a),e=c.visualViewport,f=d.clientWidth,g=d.clientHeight,h=0,i=0;if(e){f=e.width,g=e.height;let a=aw();(!a||a&&"fixed"===b)&&(h=e.offsetLeft,i=e.offsetTop)}let j=aJ(d);if(j<=0){let a=d.ownerDocument,b=a.body,c=getComputedStyle(b),e="CSS1Compat"===a.compatMode&&parseFloat(c.marginLeft)+parseFloat(c.marginRight)||0,g=Math.abs(d.clientWidth-b.clientWidth-e);g<=25&&(f-=g)}else j<=25&&(f+=j);return{width:f,height:g,x:h,y:i}}(a,c);else if("document"===b){let b,c,f,g,h,i,j;d=ao(a),b=ao(d),c=az(d),f=d.ownerDocument.body,g=O(b.scrollWidth,b.clientWidth,f.scrollWidth,f.clientWidth),h=O(b.scrollHeight,b.clientHeight,f.scrollHeight,f.clientHeight),i=-c.scrollLeft+aJ(d),j=-c.scrollTop,"rtl"===ay(f).direction&&(i+=O(b.clientWidth,f.clientWidth)-g),e={width:g,height:h,x:i,y:j}}else{1;{let c=aH(a);e={x:b.x-c.x,y:b.y-c.y,width:b.width,height:b.height}}}return ae(e)}function aM(a){return"static"===ay(a).position}function aN(a,b){1;return null}function aO(a,b){var c;let d=an(a);if(ar(a))return d;1;{let b=aA(a);for(;b&&!ax(b);){0;b=aA(b)}return d}}let aP=async function(a){let b=this.getOffsetParent||aO,c=this.getDimensions,d=await c(a.floating);return{reference:function(a,b,c){var d;let e=(d=0,!1),f=ao(b),g="fixed"===c,h=aI(a,!0,g,b),i={scrollLeft:0,scrollTop:0},j=R(0);if(e||!e&&!g)if(("body"!==am(b)||aq(f))&&(i=az(b)),e){let a=aI(b,!0,g,b);j.x=a.x+b.clientLeft,j.y=a.y+b.clientTop}else f&&(j.x=aJ(f));g&&!e&&f&&(j.x=aJ(f));let k=!f||e||g?R(0):aK(f,i);return{x:h.left+i.scrollLeft-j.x-k.x,y:h.top+i.scrollTop-j.y-k.y,width:h.width,height:h.height}}(a.reference,await b(a.floating),a.strategy),floating:{x:0,y:0,width:d.width,height:d.height}}},aQ={convertOffsetParentRelativeRectToViewportRelativeRect:function(a){var b;let{elements:c,rect:d,offsetParent:e,strategy:f}=a,g="fixed"===f,h=ao(e),i=!!c&&ar(c.floating);if(e===h||i&&g)return d;let j={scrollLeft:0,scrollTop:0},k=R(1),l=R(0),m=(b=0,!1);if((m||!m&&!g)&&(("body"!==am(e)||aq(h))&&(j=az(e)),m)){let a=aI(e);k=aF(e),l.x=a.x+e.clientLeft,l.y=a.y+e.clientTop}let n=!h||m||g?R(0):aK(h,j);return{width:d.width*k.x,height:d.height*k.y,x:d.x*k.x-j.scrollLeft*k.x+l.x+n.x,y:d.y*k.y-j.scrollTop*k.y+l.y+n.y}},getDocumentElement:ao,getClippingRect:function(a){let{element:b,boundary:c,rootBoundary:d,strategy:e}=a,f=[..."clippingAncestors"===c?ar(b)?[]:function(a,b){var c;let d=b.get(a);if(d)return d;let e=aB(a,[],!1).filter(a=>{var b;return b=0,!1}),f="fixed"===ay(a).position,g=f?aA(a):a;return c=0,b.set(a,e),e}(b,this._c):[].concat(c),d],g=aL(b,f[0],e),h=g.top,i=g.right,j=g.bottom,k=g.left;for(let a=1;a<f.length;a++){let c=aL(b,f[a],e);h=O(c.top,h),i=N(c.right,i),j=N(c.bottom,j),k=O(c.left,k)}return{width:i-k,height:j-h,x:k,y:h}},getOffsetParent:aO,getElementRects:aP,getClientRects:function(a){return Array.from(a.getClientRects())},getDimensions:function(a){let{width:b,height:c}=aD(a);return{width:b,height:c}},getScale:aF,isElement:ap,isRTL:function(a){return"rtl"===ay(a).direction}};function aR(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}let aS=a=>({name:"arrow",options:a,async fn(b){let{x:c,y:d,placement:e,rects:f,platform:g,elements:h,middlewareData:i}=b,{element:j,padding:k=0}=T(a,b)||{};if(null==j)return{};let l=ad(k),m={x:c,y:d},n=W(Y(e)),o=X(n),p=await g.getDimensions(j),q="y"===n,r=q?"clientHeight":"clientWidth",s=f.reference[o]+f.reference[n]-m[n]-f.floating[o],t=m[n]-f.reference[n],u=await (null==g.getOffsetParent?void 0:g.getOffsetParent(j)),v=u?u[r]:0;v&&await (null==g.isElement?void 0:g.isElement(u))||(v=h.floating[r]||f.floating[o]);let w=v/2-p[o]/2-1,x=N(l[q?"top":"left"],w),y=N(l[q?"bottom":"right"],w),z=v-p[o]-y,A=v/2-p[o]/2+(s/2-t/2),B=O(x,N(A,z)),C=!i.arrow&&null!=V(e)&&A!==B&&f.reference[o]/2-(A<x?x:y)-p[o]/2<0,D=C?A<x?A-x:A-z:0;return{[n]:m[n]+D,data:{[n]:B,centerOffset:A-B-D,...C&&{alignmentOffset:D}},reset:C}}});var aT=a.i(14757),aU="u">typeof document?m.useLayoutEffect:function(){};function aV(a,b){let c,d,e;if(a===b)return!0;if(typeof a!=typeof b)return!1;if("function"==typeof a&&a.toString()===b.toString())return!0;if(a&&b&&"object"==typeof a){if(Array.isArray(a)){if((c=a.length)!==b.length)return!1;for(d=c;0!=d--;)if(!aV(a[d],b[d]))return!1;return!0}if((c=(e=Object.keys(a)).length)!==Object.keys(b).length)return!1;for(d=c;0!=d--;)if(!({}).hasOwnProperty.call(b,e[d]))return!1;for(d=c;0!=d--;){let c=e[d];if(("_owner"!==c||!a.$$typeof)&&!aV(a[c],b[c]))return!1}return!0}return a!=a&&b!=b}function aW(a,b){let c=1;return Math.round(b*c)/c}function aX(a){let b=m.useRef(a);return aU(()=>{b.current=a}),b}var aY=m.forwardRef((a,b)=>{let{children:c,width:d=10,height:e=5,...f}=a;return(0,l.jsx)(r.Primitive.svg,{...f,ref:b,width:d,height:e,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:a.asChild?c:(0,l.jsx)("polygon",{points:"0,0 30,0 15,10"})})});aY.displayName="Arrow";var aZ=a.i(18867),a$="Popper",[a_,a0]=(0,p.createContextScope)(a$),[a1,a2]=a_(a$),a3=a=>{let{__scopePopper:b,children:c}=a,[d,e]=m.useState(null);return(0,l.jsx)(a1,{scope:b,anchor:d,onAnchorChange:e,children:c})};a3.displayName=a$;var a4="PopperAnchor",a5=m.forwardRef((a,b)=>{let{__scopePopper:c,virtualRef:d,...e}=a,f=a2(a4,c),g=m.useRef(null),h=(0,o.useComposedRefs)(b,g),i=m.useRef(null);return m.useEffect(()=>{let a=i.current;i.current=d?.current||g.current,a!==i.current&&f.onAnchorChange(i.current)}),d?null:(0,l.jsx)(r.Primitive.div,{...e,ref:h})});a5.displayName=a4;var a6="PopperContent",[a7,a8]=a_(a6),a9=m.forwardRef((a,b)=>{var c,d,e,f,g,h,i,j,k,n,p,q,s,t,v,w,x,y,z,A,B;let C,D,E,F,G,H,{__scopePopper:I,side:J="bottom",sideOffset:K=0,align:L="center",alignOffset:M=0,arrowPadding:P=0,avoidCollisions:R=!0,collisionBoundary:S=[],collisionPadding:ad=0,sticky:ae="partial",hideWhenDetached:af=!1,updatePositionStrategy:ag="optimized",onPlaced:am,...an}=a,ap=a2(a6,I),[aq,ar]=m.useState(null),as=(0,o.useComposedRefs)(b,a=>ar(a)),[at,au]=m.useState(null),av=function(a){let[b,c]=m.useState(void 0);return(0,aZ.useLayoutEffect)(()=>{if(a){c({width:a.offsetWidth,height:a.offsetHeight});let b=new ResizeObserver(b=>{let d,e;if(!Array.isArray(b)||!b.length)return;let f=b[0];if("borderBoxSize"in f){let a=f.borderBoxSize,b=Array.isArray(a)?a[0]:a;d=b.inlineSize,e=b.blockSize}else d=a.offsetWidth,e=a.offsetHeight;c({width:d,height:e})});return b.observe(a,{box:"border-box"}),()=>b.unobserve(a)}c(void 0)},[a]),b}(at),aw=av?.width??0,ax=av?.height??0,ay="number"==typeof ad?ad:{top:0,right:0,bottom:0,left:0,...ad},az=Array.isArray(S)?S:[S],aA=az.length>0,aC={padding:ay,boundary:az.filter(bd),altBoundary:aA},{refs:aD,floatingStyles:aF,placement:aG,isPositioned:aH,middlewareData:aJ}=function(a){void 0===a&&(a={});let{placement:b="bottom",strategy:c="absolute",middleware:d=[],platform:e,elements:{reference:f,floating:g}={},transform:h=!0,whileElementsMounted:i,open:j}=a,[k,l]=m.useState({x:0,y:0,strategy:c,placement:b,middlewareData:{},isPositioned:!1}),[n,o]=m.useState(d);aV(n,d)||o(d);let[p,q]=m.useState(null),[r,s]=m.useState(null),t=m.useCallback(a=>{a!==x.current&&(x.current=a,q(a))},[]),u=m.useCallback(a=>{a!==y.current&&(y.current=a,s(a))},[]),v=f||p,w=g||r,x=m.useRef(null),y=m.useRef(null),z=m.useRef(k),A=null!=i,B=aX(i),C=aX(e),D=aX(j),E=m.useCallback(()=>{var a,d;let e,f,g;if(!x.current||!y.current)return;let h={placement:b,strategy:c,middleware:n};C.current&&(h.platform=C.current),(a=x.current,d=y.current,e=new Map,g={...(f={platform:aQ,...h}).platform,_c:e},ah(a,d,{...f,platform:g})).then(a=>{let b={...a,isPositioned:!1!==D.current};F.current&&!aV(z.current,b)&&(z.current=b,aT.flushSync(()=>{l(b)}))})},[n,b,c,C,D]);aU(()=>{!1===j&&z.current.isPositioned&&(z.current.isPositioned=!1,l(a=>({...a,isPositioned:!1})))},[j]);let F=m.useRef(!1);aU(()=>(F.current=!0,()=>{F.current=!1}),[]),aU(()=>{if(v&&(x.current=v),w&&(y.current=w),v&&w){if(B.current)return B.current(v,w,E);E()}},[v,w,E,B,A]);let G=m.useMemo(()=>({reference:x,floating:y,setReference:t,setFloating:u}),[t,u]),H=m.useMemo(()=>({reference:v,floating:w}),[v,w]),I=m.useMemo(()=>{let a={position:c,left:0,top:0};if(!H.floating)return a;let b=aW(H.floating,k.x),d=aW(H.floating,k.y);if(h)return{...a,transform:"translate("+b+"px, "+d+"px)",...(H.floating,false)};return{position:c,left:b,top:d}},[c,h,H.floating,k.x,k.y]);return m.useMemo(()=>({...k,update:E,refs:G,elements:H,floatingStyles:I}),[k,E,G,H,I])}({strategy:"fixed",placement:J+("center"!==L?"-"+L:""),whileElementsMounted:(...a)=>(function(a,b,c,d){let e;void 0===d&&(d={});let{ancestorScroll:f=!0,ancestorResize:g=!0,elementResize:h="function"==typeof ResizeObserver,layoutShift:i="function"==typeof IntersectionObserver,animationFrame:j=!1}=d,k=aE(a),l=f||g?[...k?aB(k):[],...b?aB(b):[]]:[];l.forEach(a=>{f&&a.addEventListener("scroll",c,{passive:!0}),g&&a.addEventListener("resize",c)});let m=k&&i?function(a,b){let c,d=null,e=ao(a);function f(){var a;clearTimeout(c),null==(a=d)||a.disconnect(),d=null}return!function g(h,i){void 0===h&&(h=!1),void 0===i&&(i=1),f();let j=a.getBoundingClientRect(),{left:k,top:l,width:m,height:n}=j;if(h||b(),!m||!n)return;let o={rootMargin:-Q(l)+"px "+-Q(e.clientWidth-(k+m))+"px "+-Q(e.clientHeight-(l+n))+"px "+-Q(k)+"px",threshold:O(0,N(1,i))||1},p=!0;function q(b){let d=b[0].intersectionRatio;if(d!==i){if(!p)return g();d?g(!1,d):c=setTimeout(()=>{g(!1,1e-7)},1e3)}1!==d||aR(j,a.getBoundingClientRect())||g(),p=!1}try{d=new IntersectionObserver(q,{...o,root:e.ownerDocument})}catch(a){d=new IntersectionObserver(q,o)}d.observe(a)}(!0),f}(k,c):null,n=-1,o=null;h&&(o=new ResizeObserver(a=>{let[d]=a;d&&d.target===k&&o&&b&&(o.unobserve(b),cancelAnimationFrame(n),n=requestAnimationFrame(()=>{var a;null==(a=o)||a.observe(b)})),c()}),k&&!j&&o.observe(k),b&&o.observe(b));let p=j?aI(a):null;return j&&function b(){let d=aI(a);p&&!aR(p,d)&&c(),p=d,e=requestAnimationFrame(b)}(),c(),()=>{var a;l.forEach(a=>{f&&a.removeEventListener("scroll",c),g&&a.removeEventListener("resize",c)}),null==m||m(),null==(a=o)||a.disconnect(),o=null,j&&cancelAnimationFrame(e)}})(...a,{animationFrame:"always"===ag}),elements:{reference:ap.anchor},middleware:[{name:(C={name:"offset",options:e=c={mainAxis:K+ax,alignmentAxis:M},async fn(a){var b,c;let{x:d,y:f,placement:g,middlewareData:h}=a,i=await al(a,e);return g===(null==(b=h.offset)?void 0:b.placement)&&null!=(c=h.arrow)&&c.alignmentOffset?{}:{x:d+i.x,y:f+i.y,data:{...i,placement:g}}}}).name,fn:C.fn,options:[c,d]},R&&{name:(D={name:"shift",options:k=i={mainAxis:!0,crossAxis:!1,limiter:"partial"===ae?{fn:(void 0===(h=f)&&(h={}),{options:h,fn(a){let{x:b,y:c,placement:d,rects:e,middlewareData:f}=a,{offset:g=0,mainAxis:i=!0,crossAxis:j=!0}=T(h,a),k={x:b,y:c},l=Y(d),m=W(l),n=k[m],o=k[l],p=T(g,a),q="number"==typeof p?{mainAxis:p,crossAxis:0}:{mainAxis:0,crossAxis:0,...p};if(i){let a="y"===m?"height":"width",b=e.reference[m]-e.floating[a]+q.mainAxis,c=e.reference[m]+e.reference[a]-q.mainAxis;n<b?n=b:n>c&&(n=c)}if(j){var r,s;let a="y"===m?"width":"height",b=ak.has(U(d)),c=e.reference[l]-e.floating[a]+(b&&(null==(r=f.offset)?void 0:r[l])||0)+(b?0:q.crossAxis),g=e.reference[l]+e.reference[a]+(b?0:(null==(s=f.offset)?void 0:s[l])||0)-(b?q.crossAxis:0);o<c?o=c:o>g&&(o=g)}return{[m]:n,[l]:o}}}).fn,options:[f,g]}:void 0,...aC},async fn(a){let{x:b,y:c,placement:d,platform:e}=a,{mainAxis:f=!0,crossAxis:g=!1,limiter:h={fn:a=>{let{x:b,y:c}=a;return{x:b,y:c}}},...i}=T(k,a),j={x:b,y:c},l=await e.detectOverflow(a,i),m=Y(U(d)),n=W(m),o=j[n],p=j[m];if(f){let a="y"===n?"top":"left",b="y"===n?"bottom":"right",c=o+l[a],d=o-l[b];o=O(c,N(o,d))}if(g){let a="y"===m?"top":"left",b="y"===m?"bottom":"right",c=p+l[a],d=p-l[b];p=O(c,N(p,d))}let q=h.fn({...a,[n]:o,[m]:p});return{...q,data:{x:q.x-b,y:q.y-c,enabled:{[n]:f,[m]:g}}}}}).name,fn:D.fn,options:[i,j]},R&&{name:(E={name:"flip",options:q=n={...aC},async fn(a){var b,c,d,e,f,g,h,i;let j,k,l,{placement:m,middlewareData:n,rects:o,initialPlacement:p,platform:r,elements:s}=a,{mainAxis:t=!0,crossAxis:u=!0,fallbackPlacements:v,fallbackStrategy:w="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:y=!0,...z}=T(q,a);if(null!=(b=n.arrow)&&b.alignmentOffset)return{};let A=U(m),B=Y(p),C=U(p)===p,D=await (null==r.isRTL?void 0:r.isRTL(s.floating)),E=v||(C||!y?[ac(p)]:(j=ac(p),[Z(p),j,Z(j)])),F="none"!==x;!v&&F&&E.push(...(k=V(p),l=function(a,b,c){switch(a){case"top":case"bottom":if(c)return b?_:$;return b?$:_;case"left":case"right":return b?aa:ab;default:return[]}}(U(p),"start"===x,D),k&&(l=l.map(a=>a+"-"+k),y&&(l=l.concat(l.map(Z)))),l));let G=[p,...E],H=await r.detectOverflow(a,z),I=[],J=(null==(c=n.flip)?void 0:c.overflows)||[];if(t&&I.push(H[A]),u){let a,b,c,d,e=(g=m,h=o,void 0===(i=D)&&(i=!1),a=V(g),c=X(b=W(Y(g))),d="x"===b?a===(i?"end":"start")?"right":"left":"start"===a?"bottom":"top",h.reference[c]>h.floating[c]&&(d=ac(d)),[d,ac(d)]);I.push(H[e[0]],H[e[1]])}if(J=[...J,{placement:m,overflows:I}],!I.every(a=>a<=0)){let a=((null==(d=n.flip)?void 0:d.index)||0)+1,b=G[a];if(b&&("alignment"!==u||B===Y(b)||J.every(a=>Y(a.placement)!==B||a.overflows[0]>0)))return{data:{index:a,overflows:J},reset:{placement:b}};let c=null==(e=J.filter(a=>a.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0])?void 0:e.placement;if(!c)switch(w){case"bestFit":{let a=null==(f=J.filter(a=>{if(F){let b=Y(a.placement);return b===B||"y"===b}return!0}).map(a=>[a.placement,a.overflows.filter(a=>a>0).reduce((a,b)=>a+b,0)]).sort((a,b)=>a[1]-b[1])[0])?void 0:f[0];a&&(c=a);break}case"initialPlacement":c=p}if(m!==c)return{reset:{placement:c}}}return{}}}).name,fn:E.fn,options:[n,p]},{name:(F={name:"size",options:v=s={...aC,apply:({elements:a,rects:b,availableWidth:c,availableHeight:d})=>{let{width:e,height:f}=b.reference,g=a.floating.style;g.setProperty("--radix-popper-available-width",`${c}px`),g.setProperty("--radix-popper-available-height",`${d}px`),g.setProperty("--radix-popper-anchor-width",`${e}px`),g.setProperty("--radix-popper-anchor-height",`${f}px`)}},async fn(a){var b,c;let d,e,{placement:f,rects:g,platform:h,elements:i}=a,{apply:j=()=>{},...k}=T(v,a),l=await h.detectOverflow(a,k),m=U(f),n=V(f),o="y"===Y(f),{width:p,height:q}=g.floating;"top"===m||"bottom"===m?(d=m,e=n===(await (null==h.isRTL?void 0:h.isRTL(i.floating))?"start":"end")?"left":"right"):(e=m,d="end"===n?"top":"bottom");let r=q-l.top-l.bottom,s=p-l.left-l.right,t=N(q-l[d],r),u=N(p-l[e],s),w=!a.middlewareData.shift,x=t,y=u;if(null!=(b=a.middlewareData.shift)&&b.enabled.x&&(y=s),null!=(c=a.middlewareData.shift)&&c.enabled.y&&(x=r),w&&!n){let a=O(l.left,0),b=O(l.right,0),c=O(l.top,0),d=O(l.bottom,0);o?y=p-2*(0!==a||0!==b?a+b:O(l.left,l.right)):x=q-2*(0!==c||0!==d?c+d:O(l.top,l.bottom))}await j({...a,availableWidth:y,availableHeight:x});let z=await h.getDimensions(i.floating);return p!==z.width||q!==z.height?{reset:{rects:!0}}:{}}}).name,fn:F.fn,options:[s,t]},at&&{name:(G={name:"arrow",options:y=w={element:at,padding:P},fn(a){let{element:b,padding:c}="function"==typeof y?y(a):y;return b&&({}).hasOwnProperty.call(b,"current")?null!=b.current?aS({element:b.current,padding:c}).fn(a):{}:b?aS({element:b,padding:c}).fn(a):{}}}).name,fn:G.fn,options:[w,x]},be({arrowWidth:aw,arrowHeight:ax}),af&&{name:(H={name:"hide",options:B=z={strategy:"referenceHidden",...aC},async fn(a){let{rects:b,platform:c}=a,{strategy:d="referenceHidden",...e}=T(B,a);switch(d){case"referenceHidden":{let d=ai(await c.detectOverflow(a,{...e,elementContext:"reference"}),b.reference);return{data:{referenceHiddenOffsets:d,referenceHidden:aj(d)}}}case"escaped":{let d=ai(await c.detectOverflow(a,{...e,altBoundary:!0}),b.floating);return{data:{escapedOffsets:d,escaped:aj(d)}}}default:return{}}}}).name,fn:H.fn,options:[z,A]}]}),[aK,aL]=bf(aG),aM=(0,u.useCallbackRef)(am);(0,aZ.useLayoutEffect)(()=>{aH&&aM?.()},[aH,aM]);let aN=aJ.arrow?.x,aO=aJ.arrow?.y,aP=aJ.arrow?.centerOffset!==0,[aY,a$]=m.useState();return(0,aZ.useLayoutEffect)(()=>{aq&&a$(window.getComputedStyle(aq).zIndex)},[aq]),(0,l.jsx)("div",{ref:aD.setFloating,"data-radix-popper-content-wrapper":"",style:{...aF,transform:aH?aF.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:aY,"--radix-popper-transform-origin":[aJ.transformOrigin?.x,aJ.transformOrigin?.y].join(" "),...aJ.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:(0,l.jsx)(a7,{scope:I,placedSide:aK,onArrowChange:au,arrowX:aN,arrowY:aO,shouldHideArrow:aP,children:(0,l.jsx)(r.Primitive.div,{"data-side":aK,"data-align":aL,...an,ref:as,style:{...an.style,animation:aH?void 0:"none"}})})})});a9.displayName=a6;var ba="PopperArrow",bb={top:"bottom",right:"left",bottom:"top",left:"right"},bc=m.forwardRef(function(a,b){let{__scopePopper:c,...d}=a,e=a8(ba,c),f=bb[e.placedSide];return(0,l.jsx)("span",{ref:e.onArrowChange,style:{position:"absolute",left:e.arrowX,top:e.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[e.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[e.placedSide],visibility:e.shouldHideArrow?"hidden":void 0},children:(0,l.jsx)(aY,{...d,ref:b,style:{...d.style,display:"block"}})})});function bd(a){return null!==a}bc.displayName=ba;var be=a=>({name:"transformOrigin",options:a,fn(b){let{placement:c,rects:d,middlewareData:e}=b,f=e.arrow?.centerOffset!==0,g=f?0:a.arrowWidth,h=f?0:a.arrowHeight,[i,j]=bf(c),k={start:"0%",center:"50%",end:"100%"}[j],l=(e.arrow?.x??0)+g/2,m=(e.arrow?.y??0)+h/2,n="",o="";return"bottom"===i?(n=f?k:`${l}px`,o=`${-h}px`):"top"===i?(n=f?k:`${l}px`,o=`${d.floating.height+h}px`):"right"===i?(n=`${-h}px`,o=f?k:`${m}px`):"left"===i&&(n=`${d.floating.width+h}px`,o=f?k:`${m}px`),{data:{x:n,y:o}}}});function bf(a){let[b,c="center"]=a.split("-");return[b,c]}var bg=m.forwardRef((a,b)=>{let{container:c,...d}=a,[e,f]=m.useState(!1);(0,aZ.useLayoutEffect)(()=>f(!0),[]);let g=c||e&&globalThis?.document?.body;return g?aT.default.createPortal((0,l.jsx)(r.Primitive.div,{...d,ref:b}),g):null});bg.displayName="Portal";var bh=a.i(86586),bi=a.i(4429),bj=a.i(92274),bk=new WeakMap,bl=new WeakMap,bm={},bn=0,bo=function(a){return a&&(a.host||bo(a.parentNode))},bp=function(a,b,c,d){var e=(Array.isArray(a)?a:[a]).map(function(a){if(b.contains(a))return a;var c=bo(a);return c&&b.contains(c)?c:(console.error("aria-hidden",a,"in not contained inside",b,". Doing nothing"),null)}).filter(function(a){return!!a});bm[c]||(bm[c]=new WeakMap);var f=bm[c],g=[],h=new Set,i=new Set(e),j=function(a){!a||h.has(a)||(h.add(a),j(a.parentNode))};e.forEach(j);var k=function(a){!a||i.has(a)||Array.prototype.forEach.call(a.children,function(a){if(h.has(a))k(a);else try{var b=a.getAttribute(d),e=null!==b&&"false"!==b,i=(bk.get(a)||0)+1,j=(f.get(a)||0)+1;bk.set(a,i),f.set(a,j),g.push(a),1===i&&e&&bl.set(a,!0),1===j&&a.setAttribute(c,"true"),e||a.setAttribute(d,"true")}catch(b){console.error("aria-hidden: cannot operate on ",a,b)}})};return k(b),h.clear(),bn++,function(){g.forEach(function(a){var b=bk.get(a)-1,e=f.get(a)-1;bk.set(a,b),f.set(a,e),b||(bl.has(a)||a.removeAttribute(d),bl.delete(a)),e||a.removeAttribute(c)}),--bn||(bk=new WeakMap,bk=new WeakMap,bl=new WeakMap,bm={})}},bq=function(a,b,c){void 0===c&&(c="data-aria-hidden");var d=Array.from(Array.isArray(a)?a:[a]),e=b||("u"<typeof document?null:(Array.isArray(a)?a[0]:a).ownerDocument.body);return e?(d.push.apply(d,Array.from(e.querySelectorAll("[aria-live], script"))),bp(d,e,c,"aria-hidden")):function(){return null}},br=function(){return(br=Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++)for(var e in b=arguments[c])Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e]);return a}).apply(this,arguments)};function bs(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c}var bt=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),bu="width-before-scroll-bar";function bv(a,b){return"function"==typeof a?a(b):a&&(a.current=b),a}var bw=m.useEffect,bx=new WeakMap,by=(void 0===d&&(d={}),(void 0===e&&(e=function(a){return a}),f=[],g=!1,h={read:function(){if(g)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return f.length?f[f.length-1]:null},useMedium:function(a){var b=e(a,g);return f.push(b),function(){f=f.filter(function(a){return a!==b})}},assignSyncMedium:function(a){for(g=!0;f.length;){var b=f;f=[],b.forEach(a)}f={push:function(b){return a(b)},filter:function(){return f}}},assignMedium:function(a){g=!0;var b=[];if(f.length){var c=f;f=[],c.forEach(a),b=f}var d=function(){var c=b;b=[],c.forEach(a)},e=function(){return Promise.resolve().then(d)};e(),f={push:function(a){b.push(a),e()},filter:function(a){return b=b.filter(a),f}}}}).options=br({async:!0,ssr:!1},d),h),bz=function(){},bA=m.forwardRef(function(a,b){var c,d,e,f,g=m.useRef(null),h=m.useState({onScrollCapture:bz,onWheelCapture:bz,onTouchMoveCapture:bz}),i=h[0],j=h[1],k=a.forwardProps,l=a.children,n=a.className,o=a.removeScrollBar,p=a.enabled,q=a.shards,r=a.sideCar,s=a.noRelative,t=a.noIsolation,u=a.inert,v=a.allowPinchZoom,w=a.as,x=a.gapMode,y=bs(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),z=(c=[g,b],d=function(a){return c.forEach(function(b){return bv(b,a)})},(e=(0,m.useState)(function(){return{value:null,callback:d,facade:{get current(){return e.value},set current(value){var a=e.value;a!==value&&(e.value=value,e.callback(value,a))}}}})[0]).callback=d,f=e.facade,bw(function(){var a=bx.get(f);if(a){var b=new Set(a),d=new Set(c),e=f.current;b.forEach(function(a){d.has(a)||bv(a,null)}),d.forEach(function(a){b.has(a)||bv(a,e)})}bx.set(f,c)},[c]),f),A=br(br({},y),i);return m.createElement(m.Fragment,null,p&&m.createElement(r,{sideCar:by,removeScrollBar:o,shards:q,noRelative:s,noIsolation:t,inert:u,setCallbacks:j,allowPinchZoom:!!v,lockRef:g,gapMode:x}),k?m.cloneElement(m.Children.only(l),br(br({},A),{ref:z})):m.createElement(void 0===w?"div":w,br({},A,{className:n,ref:z}),l))});bA.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},bA.classNames={fullWidth:bu,zeroRight:bt};var bB=function(a){var b=a.sideCar,c=bs(a,["sideCar"]);if(!b)throw Error("Sidecar: please provide `sideCar` property to import the right car");var d=b.read();if(!d)throw Error("Sidecar medium not found");return m.createElement(d,br({},c))};bB.isSideCarExport=!0;var bC=function(){var a=0,b=null;return{add:function(c){if(0==a&&(b=function(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var b=k||("u">typeof __webpack_nonce__?__webpack_nonce__:void 0);return b&&a.setAttribute("nonce",b),a}())){var d,e;(d=b).styleSheet?d.styleSheet.cssText=c:d.appendChild(document.createTextNode(c)),e=b,(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}a++},remove:function(){--a||!b||(b.parentNode&&b.parentNode.removeChild(b),b=null)}}},bD=function(){var a=bC();return function(b,c){m.useEffect(function(){return a.add(b),function(){a.remove()}},[b&&c])}},bE=function(){var a=bD();return function(b){return a(b.styles,b.dynamic),null}},bF={left:0,top:0,right:0,gap:0},bG=bE(),bH="data-scroll-locked",bI=function(a,b,c,d){var e=a.left,f=a.top,g=a.right,h=a.gap;return void 0===c&&(c="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(d,";\n padding-right: ").concat(h,"px ").concat(d,";\n }\n body[").concat(bH,"] {\n overflow: hidden ").concat(d,";\n overscroll-behavior: contain;\n ").concat([b&&"position: relative ".concat(d,";"),"margin"===c&&"\n padding-left: ".concat(e,"px;\n padding-top: ").concat(f,"px;\n padding-right: ").concat(g,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(h,"px ").concat(d,";\n "),"padding"===c&&"padding-right: ".concat(h,"px ").concat(d,";")].filter(Boolean).join(""),"\n }\n \n .").concat(bt," {\n right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(bu," {\n margin-right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(bt," .").concat(bt," {\n right: 0 ").concat(d,";\n }\n \n .").concat(bu," .").concat(bu," {\n margin-right: 0 ").concat(d,";\n }\n \n body[").concat(bH,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(h,"px;\n }\n")},bJ=function(){var a=parseInt(document.body.getAttribute(bH)||"0",10);return isFinite(a)?a:0},bK=function(){m.useEffect(function(){return document.body.setAttribute(bH,(bJ()+1).toString()),function(){var a=bJ()-1;a<=0?document.body.removeAttribute(bH):document.body.setAttribute(bH,a.toString())}},[])},bL=function(a){var b=a.noRelative,c=a.noImportant,d=a.gapMode,e=void 0===d?"margin":d;bK();var f=m.useMemo(function(){return void 0===e,bF},[e]);return m.createElement(bG,{styles:bI(f,!b,e,c?"":"!important")})},bM=function(a,b){if(!(a instanceof Element))return!1;var c=window.getComputedStyle(a);return"hidden"!==c[b]&&(c.overflowY!==c.overflowX||"TEXTAREA"===a.tagName||"visible"!==c[b])},bN=function(a,b){var c=b.ownerDocument,d=b;do{if("u">typeof ShadowRoot&&d instanceof ShadowRoot&&(d=d.host),bO(a,d)){var e=bP(a,d);if(e[1]>e[2])return!0}d=d.parentNode}while(d&&d!==c.body)return!1},bO=function(a,b){return"v"===a?bM(b,"overflowY"):bM(b,"overflowX")},bP=function(a,b){return"v"===a?[b.scrollTop,b.scrollHeight,b.clientHeight]:[b.scrollLeft,b.scrollWidth,b.clientWidth]},bQ=function(a,b,c,d,e){var f,g=(f=window.getComputedStyle(b).direction,"h"===a&&"rtl"===f?-1:1),h=g*d,i=c.target,j=b.contains(i),k=!1,l=h>0,m=0,n=0;do{if(!i)break;var o=bP(a,i),p=o[0],q=o[1]-o[2]-g*p;(p||q)&&bO(a,i)&&(m+=q,n+=p);var r=i.parentNode;i=r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE?r.host:r}while(!j&&i!==document.body||j&&(b.contains(i)||b===i))return l&&(e&&1>Math.abs(m)||!e&&h>m)?k=!0:!l&&(e&&1>Math.abs(n)||!e&&-h>n)&&(k=!0),k},bR=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},bS=function(a){return[a.deltaX,a.deltaY]},bT=function(a){return a&&"current"in a?a.current:a},bU=0,bV=[];let bW=(i=function(a){var b=m.useRef([]),c=m.useRef([0,0]),d=m.useRef(),e=m.useState(bU++)[0],f=m.useState(bE)[0],g=m.useRef(a);m.useEffect(function(){g.current=a},[a]),m.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(e));var b=(function(a,b,c){if(c||2==arguments.length)for(var d,e=0,f=b.length;e<f;e++)!d&&e in b||(d||(d=Array.prototype.slice.call(b,0,e)),d[e]=b[e]);return a.concat(d||Array.prototype.slice.call(b))})([a.lockRef.current],(a.shards||[]).map(bT),!0).filter(Boolean);return b.forEach(function(a){return a.classList.add("allow-interactivity-".concat(e))}),function(){document.body.classList.remove("block-interactivity-".concat(e)),b.forEach(function(a){return a.classList.remove("allow-interactivity-".concat(e))})}}},[a.inert,a.lockRef.current,a.shards]);var h=m.useCallback(function(a,b){if("touches"in a&&2===a.touches.length||"wheel"===a.type&&a.ctrlKey)return!g.current.allowPinchZoom;var e,f=bR(a),h=c.current,i="deltaX"in a?a.deltaX:h[0]-f[0],j="deltaY"in a?a.deltaY:h[1]-f[1],k=a.target,l=Math.abs(i)>Math.abs(j)?"h":"v";if("touches"in a&&"h"===l&&"range"===k.type)return!1;var m=window.getSelection(),n=m&&m.anchorNode;if(n&&(n===k||n.contains(k)))return!1;var o=bN(l,k);if(!o)return!0;if(o?e=l:(e="v"===l?"h":"v",o=bN(l,k)),!o)return!1;if(!d.current&&"changedTouches"in a&&(i||j)&&(d.current=e),!e)return!0;var p=d.current||e;return bQ(p,b,a,"h"===p?i:j,!0)},[]),i=m.useCallback(function(a){if(bV.length&&bV[bV.length-1]===f){var c="deltaY"in a?bS(a):bR(a),d=b.current.filter(function(b){var d;return b.name===a.type&&(b.target===a.target||a.target===b.shadowParent)&&(d=b.delta,d[0]===c[0]&&d[1]===c[1])})[0];if(d&&d.should){a.cancelable&&a.preventDefault();return}if(!d){var e=(g.current.shards||[]).map(bT).filter(Boolean).filter(function(b){return b.contains(a.target)});(e.length>0?h(a,e[0]):!g.current.noIsolation)&&a.cancelable&&a.preventDefault()}}},[]),j=m.useCallback(function(a,c,d,e){var f={name:a,delta:c,target:d,should:e,shadowParent:function(a){for(var b=null;null!==a;)a instanceof ShadowRoot&&(b=a.host,a=a.host),a=a.parentNode;return b}(d)};b.current.push(f),setTimeout(function(){b.current=b.current.filter(function(a){return a!==f})},1)},[]),k=m.useCallback(function(a){c.current=bR(a),d.current=void 0},[]),l=m.useCallback(function(b){j(b.type,bS(b),b.target,h(b,a.lockRef.current))},[]),n=m.useCallback(function(b){j(b.type,bR(b),b.target,h(b,a.lockRef.current))},[]);m.useEffect(function(){return bV.push(f),a.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:n}),document.addEventListener("wheel",i,!1),document.addEventListener("touchmove",i,!1),document.addEventListener("touchstart",k,!1),function(){bV=bV.filter(function(a){return a!==f}),document.removeEventListener("wheel",i,!1),document.removeEventListener("touchmove",i,!1),document.removeEventListener("touchstart",k,!1)}},[]);var o=a.removeScrollBar,p=a.inert;return m.createElement(m.Fragment,null,p?m.createElement(f,{styles:"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")}):null,o?m.createElement(bL,{noRelative:a.noRelative,gapMode:a.gapMode}):null)},by.useMedium(i),bB);var bX=m.forwardRef(function(a,b){return m.createElement(bA,br({},a,{ref:b,sideCar:bW}))});bX.classNames=bA.classNames;var bY=["Enter"," "],bZ=["ArrowUp","PageDown","End"],b$=["ArrowDown","PageUp","Home",...bZ],b_={ltr:[...bY,"ArrowRight"],rtl:[...bY,"ArrowLeft"]},b0={ltr:["ArrowLeft"],rtl:["ArrowRight"]},b1="Menu",[b2,b3,b4]=(0,s.createCollection)(b1),[b5,b6]=(0,p.createContextScope)(b1,[b4,a0,bi.createRovingFocusGroupScope]),b7=a0(),b8=(0,bi.createRovingFocusGroupScope)(),[b9,ca]=b5(b1),[cb,cc]=b5(b1),cd=a=>{let{__scopeMenu:b,open:c=!1,children:d,dir:e,onOpenChange:f,modal:g=!0}=a,h=b7(b),[i,j]=m.useState(null),k=m.useRef(!1),n=(0,u.useCallbackRef)(f),o=(0,t.useDirection)(e);return m.useEffect(()=>{let a=()=>{k.current=!0,document.addEventListener("pointerdown",b,{capture:!0,once:!0}),document.addEventListener("pointermove",b,{capture:!0,once:!0})},b=()=>k.current=!1;return document.addEventListener("keydown",a,{capture:!0}),()=>{document.removeEventListener("keydown",a,{capture:!0}),document.removeEventListener("pointerdown",b,{capture:!0}),document.removeEventListener("pointermove",b,{capture:!0})}},[]),(0,l.jsx)(a3,{...h,children:(0,l.jsx)(b9,{scope:b,open:c,onOpenChange:n,content:i,onContentChange:j,children:(0,l.jsx)(cb,{scope:b,onClose:m.useCallback(()=>n(!1),[n]),isUsingKeyboardRef:k,dir:o,modal:g,children:d})})})};cd.displayName=b1;var ce=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a,e=b7(c);return(0,l.jsx)(a5,{...e,...d,ref:b})});ce.displayName="MenuAnchor";var cf="MenuPortal",[cg,ch]=b5(cf,{forceMount:void 0}),ci=a=>{let{__scopeMenu:b,forceMount:c,children:d,container:e}=a,f=ca(cf,b);return(0,l.jsx)(cg,{scope:b,forceMount:c,children:(0,l.jsx)(bh.Presence,{present:c||f.open,children:(0,l.jsx)(bg,{asChild:!0,container:e,children:d})})})};ci.displayName=cf;var cj="MenuContent",[ck,cl]=b5(cj),cm=m.forwardRef((a,b)=>{let c=ch(cj,a.__scopeMenu),{forceMount:d=c.forceMount,...e}=a,f=ca(cj,a.__scopeMenu),g=cc(cj,a.__scopeMenu);return(0,l.jsx)(b2.Provider,{scope:a.__scopeMenu,children:(0,l.jsx)(bh.Presence,{present:d||f.open,children:(0,l.jsx)(b2.Slot,{scope:a.__scopeMenu,children:g.modal?(0,l.jsx)(cn,{...e,ref:b}):(0,l.jsx)(co,{...e,ref:b})})})})}),cn=m.forwardRef((a,b)=>{let c=ca(cj,a.__scopeMenu),d=m.useRef(null),e=(0,o.useComposedRefs)(b,d);return m.useEffect(()=>{let a=d.current;if(a)return bq(a)},[]),(0,l.jsx)(cq,{...a,ref:e,trapFocus:c.open,disableOutsidePointerEvents:c.open,disableOutsideScroll:!0,onFocusOutside:(0,n.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>c.onOpenChange(!1)})}),co=m.forwardRef((a,b)=>{let c=ca(cj,a.__scopeMenu);return(0,l.jsx)(cq,{...a,ref:b,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>c.onOpenChange(!1)})}),cp=(0,bj.createSlot)("MenuContent.ScrollLock"),cq=m.forwardRef((a,b)=>{let{__scopeMenu:c,loop:d=!1,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,disableOutsidePointerEvents:h,onEntryFocus:i,onEscapeKeyDown:j,onPointerDownOutside:k,onFocusOutside:p,onInteractOutside:q,onDismiss:r,disableOutsideScroll:s,...t}=a,u=ca(cj,c),v=cc(cj,c),w=b7(c),y=b8(c),z=b3(c),[C,D]=m.useState(null),E=m.useRef(null),G=(0,o.useComposedRefs)(b,E,u.onContentChange),H=m.useRef(0),I=m.useRef(""),J=m.useRef(0),K=m.useRef(null),L=m.useRef("right"),M=m.useRef(0),N=s?bX:m.Fragment;m.useEffect(()=>()=>window.clearTimeout(H.current),[]),m.useEffect(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??B()),document.body.insertAdjacentElement("beforeend",a[1]??B()),A++,()=>{1===A&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),A--}},[]);let O=m.useCallback(a=>{var b,c;return L.current===K.current?.side&&(b=a,!!(c=K.current?.area)&&function(a,b){let{x:c,y:d}=a,e=!1;for(let a=0,f=b.length-1;a<b.length;f=a++){let g=b[a],h=b[f],i=g.x,j=g.y,k=h.x,l=h.y;j>d!=l>d&&c<(k-i)*(d-j)/(l-j)+i&&(e=!e)}return e}({x:b.clientX,y:b.clientY},c))},[]);return(0,l.jsx)(ck,{scope:c,searchRef:I,onItemEnter:m.useCallback(a=>{O(a)&&a.preventDefault()},[O]),onItemLeave:m.useCallback(a=>{O(a)||(E.current?.focus(),D(null))},[O]),onTriggerLeave:m.useCallback(a=>{O(a)&&a.preventDefault()},[O]),pointerGraceTimerRef:J,onPointerGraceIntentChange:m.useCallback(a=>{K.current=a},[]),children:(0,l.jsx)(N,{...s?{as:cp,allowPinchZoom:!0}:void 0,children:(0,l.jsx)(F,{asChild:!0,trapped:e,onMountAutoFocus:(0,n.composeEventHandlers)(f,a=>{a.preventDefault(),E.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:g,children:(0,l.jsx)(x,{asChild:!0,disableOutsidePointerEvents:h,onEscapeKeyDown:j,onPointerDownOutside:k,onFocusOutside:p,onInteractOutside:q,onDismiss:r,children:(0,l.jsx)(bi.Root,{asChild:!0,...y,dir:v.dir,orientation:"vertical",loop:d,currentTabStopId:C,onCurrentTabStopIdChange:D,onEntryFocus:(0,n.composeEventHandlers)(i,a=>{v.isUsingKeyboardRef.current||a.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,l.jsx)(a9,{role:"menu","aria-orientation":"vertical","data-state":cQ(u.open),"data-radix-menu-content":"",dir:v.dir,...w,...t,ref:G,style:{outline:"none",...t.style},onKeyDown:(0,n.composeEventHandlers)(t.onKeyDown,a=>{let b=a.target.closest("[data-radix-menu-content]")===a.currentTarget,c=a.ctrlKey||a.altKey||a.metaKey,d=1===a.key.length;if(b){var e;let b,f,g,h,i,j;"Tab"===a.key&&a.preventDefault(),!c&&d&&(e=a.key,b=I.current+e,f=z().filter(a=>!a.disabled),g=document.activeElement,h=f.find(a=>a.ref.current===g)?.textValue,i=function(a,b,c){var d;let e=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,f=c?a.indexOf(c):-1,g=(d=Math.max(f,0),a.map((b,c)=>a[(d+c)%a.length]));1===e.length&&(g=g.filter(a=>a!==c));let h=g.find(a=>a.toLowerCase().startsWith(e.toLowerCase()));return h!==c?h:void 0}(f.map(a=>a.textValue),b,h),j=f.find(a=>a.textValue===i)?.ref.current,function a(b){I.current=b,window.clearTimeout(H.current),""!==b&&(H.current=window.setTimeout(()=>a(""),1e3))}(b),j&&setTimeout(()=>j.focus()))}let f=E.current;if(a.target!==f||!b$.includes(a.key))return;a.preventDefault();let g=z().filter(a=>!a.disabled).map(a=>a.ref.current);bZ.includes(a.key)&&g.reverse(),function(a){let b=document.activeElement;for(let c of a)if(c===b||(c.focus(),document.activeElement!==b))return}(g)}),onBlur:(0,n.composeEventHandlers)(a.onBlur,a=>{a.currentTarget.contains(a.target)||(window.clearTimeout(H.current),I.current="")}),onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(a=>{let b=a.target,c=M.current!==a.clientX;a.currentTarget.contains(b)&&c&&(L.current=a.clientX>M.current?"right":"left",M.current=a.clientX)}))})})})})})})});cm.displayName=cj;var cr=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{role:"group",...d,ref:b})});cr.displayName="MenuGroup";var cs=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{...d,ref:b})});cs.displayName="MenuLabel";var ct="MenuItem",cu="menu.itemSelect",cv=m.forwardRef((a,b)=>{let{disabled:c=!1,onSelect:d,...e}=a,f=m.useRef(null),g=cc(ct,a.__scopeMenu),h=cl(ct,a.__scopeMenu),i=(0,o.useComposedRefs)(b,f),j=m.useRef(!1);return(0,l.jsx)(cw,{...e,ref:i,disabled:c,onClick:(0,n.composeEventHandlers)(a.onClick,()=>{let a=f.current;if(!c&&a){let b=new CustomEvent(cu,{bubbles:!0,cancelable:!0});a.addEventListener(cu,a=>d?.(a),{once:!0}),(0,r.dispatchDiscreteCustomEvent)(a,b),b.defaultPrevented?j.current=!1:g.onClose()}}),onPointerDown:b=>{a.onPointerDown?.(b),j.current=!0},onPointerUp:(0,n.composeEventHandlers)(a.onPointerUp,a=>{j.current||a.currentTarget?.click()}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{let b=""!==h.searchRef.current;c||b&&" "===a.key||bY.includes(a.key)&&(a.currentTarget.click(),a.preventDefault())})})});cv.displayName=ct;var cw=m.forwardRef((a,b)=>{let{__scopeMenu:c,disabled:d=!1,textValue:e,...f}=a,g=cl(ct,c),h=b8(c),i=m.useRef(null),j=(0,o.useComposedRefs)(b,i),[k,p]=m.useState(!1),[q,s]=m.useState("");return m.useEffect(()=>{let a=i.current;a&&s((a.textContent??"").trim())},[f.children]),(0,l.jsx)(b2.ItemSlot,{scope:c,disabled:d,textValue:e??q,children:(0,l.jsx)(bi.Item,{asChild:!0,...h,focusable:!d,children:(0,l.jsx)(r.Primitive.div,{role:"menuitem","data-highlighted":k?"":void 0,"aria-disabled":d||void 0,"data-disabled":d?"":void 0,...f,ref:j,onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(a=>{d?g.onItemLeave(a):(g.onItemEnter(a),a.defaultPrevented||a.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:(0,n.composeEventHandlers)(a.onPointerLeave,cT(a=>g.onItemLeave(a))),onFocus:(0,n.composeEventHandlers)(a.onFocus,()=>p(!0)),onBlur:(0,n.composeEventHandlers)(a.onBlur,()=>p(!1))})})})}),cx=m.forwardRef((a,b)=>{let{checked:c=!1,onCheckedChange:d,...e}=a;return(0,l.jsx)(cF,{scope:a.__scopeMenu,checked:c,children:(0,l.jsx)(cv,{role:"menuitemcheckbox","aria-checked":cR(c)?"mixed":c,...e,ref:b,"data-state":cS(c),onSelect:(0,n.composeEventHandlers)(e.onSelect,()=>d?.(!!cR(c)||!c),{checkForDefaultPrevented:!1})})})});cx.displayName="MenuCheckboxItem";var cy="MenuRadioGroup",[cz,cA]=b5(cy,{value:void 0,onValueChange:()=>{}}),cB=m.forwardRef((a,b)=>{let{value:c,onValueChange:d,...e}=a,f=(0,u.useCallbackRef)(d);return(0,l.jsx)(cz,{scope:a.__scopeMenu,value:c,onValueChange:f,children:(0,l.jsx)(cr,{...e,ref:b})})});cB.displayName=cy;var cC="MenuRadioItem",cD=m.forwardRef((a,b)=>{let{value:c,...d}=a,e=cA(cC,a.__scopeMenu),f=c===e.value;return(0,l.jsx)(cF,{scope:a.__scopeMenu,checked:f,children:(0,l.jsx)(cv,{role:"menuitemradio","aria-checked":f,...d,ref:b,"data-state":cS(f),onSelect:(0,n.composeEventHandlers)(d.onSelect,()=>e.onValueChange?.(c),{checkForDefaultPrevented:!1})})})});cD.displayName=cC;var cE="MenuItemIndicator",[cF,cG]=b5(cE,{checked:!1}),cH=m.forwardRef((a,b)=>{let{__scopeMenu:c,forceMount:d,...e}=a,f=cG(cE,c);return(0,l.jsx)(bh.Presence,{present:d||cR(f.checked)||!0===f.checked,children:(0,l.jsx)(r.Primitive.span,{...e,ref:b,"data-state":cS(f.checked)})})});cH.displayName=cE;var cI=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a;return(0,l.jsx)(r.Primitive.div,{role:"separator","aria-orientation":"horizontal",...d,ref:b})});cI.displayName="MenuSeparator";var cJ=m.forwardRef((a,b)=>{let{__scopeMenu:c,...d}=a,e=b7(c);return(0,l.jsx)(bc,{...e,...d,ref:b})});cJ.displayName="MenuArrow";var[cK,cL]=b5("MenuSub"),cM="MenuSubTrigger",cN=m.forwardRef((a,b)=>{let c=ca(cM,a.__scopeMenu),d=cc(cM,a.__scopeMenu),e=cL(cM,a.__scopeMenu),f=cl(cM,a.__scopeMenu),g=m.useRef(null),{pointerGraceTimerRef:h,onPointerGraceIntentChange:i}=f,j={__scopeMenu:a.__scopeMenu},k=m.useCallback(()=>{g.current&&window.clearTimeout(g.current),g.current=null},[]);return m.useEffect(()=>k,[k]),m.useEffect(()=>{let a=h.current;return()=>{window.clearTimeout(a),i(null)}},[h,i]),(0,l.jsx)(ce,{asChild:!0,...j,children:(0,l.jsx)(cw,{id:e.triggerId,"aria-haspopup":"menu","aria-expanded":c.open,"aria-controls":e.contentId,"data-state":cQ(c.open),...a,ref:(0,o.composeRefs)(b,e.onTriggerChange),onClick:b=>{a.onClick?.(b),a.disabled||b.defaultPrevented||(b.currentTarget.focus(),c.open||c.onOpenChange(!0))},onPointerMove:(0,n.composeEventHandlers)(a.onPointerMove,cT(b=>{f.onItemEnter(b),!b.defaultPrevented&&(a.disabled||c.open||g.current||(f.onPointerGraceIntentChange(null),g.current=window.setTimeout(()=>{c.onOpenChange(!0),k()},100)))})),onPointerLeave:(0,n.composeEventHandlers)(a.onPointerLeave,cT(a=>{k();let b=c.content?.getBoundingClientRect();if(b){let d=c.content?.dataset.side,e="right"===d,g=b[e?"left":"right"],i=b[e?"right":"left"];f.onPointerGraceIntentChange({area:[{x:a.clientX+(e?-5:5),y:a.clientY},{x:g,y:b.top},{x:i,y:b.top},{x:i,y:b.bottom},{x:g,y:b.bottom}],side:d}),window.clearTimeout(h.current),h.current=window.setTimeout(()=>f.onPointerGraceIntentChange(null),300)}else{if(f.onTriggerLeave(a),a.defaultPrevented)return;f.onPointerGraceIntentChange(null)}})),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,b=>{let e=""!==f.searchRef.current;a.disabled||e&&" "===b.key||b_[d.dir].includes(b.key)&&(c.onOpenChange(!0),c.content?.focus(),b.preventDefault())})})})});cN.displayName=cM;var cO="MenuSubContent",cP=m.forwardRef((a,b)=>{let c=ch(cj,a.__scopeMenu),{forceMount:d=c.forceMount,...e}=a,f=ca(cj,a.__scopeMenu),g=cc(cj,a.__scopeMenu),h=cL(cO,a.__scopeMenu),i=m.useRef(null),j=(0,o.useComposedRefs)(b,i);return(0,l.jsx)(b2.Provider,{scope:a.__scopeMenu,children:(0,l.jsx)(bh.Presence,{present:d||f.open,children:(0,l.jsx)(b2.Slot,{scope:a.__scopeMenu,children:(0,l.jsx)(cq,{id:h.contentId,"aria-labelledby":h.triggerId,...e,ref:j,align:"start",side:"rtl"===g.dir?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:a=>{g.isUsingKeyboardRef.current&&i.current?.focus(),a.preventDefault()},onCloseAutoFocus:a=>a.preventDefault(),onFocusOutside:(0,n.composeEventHandlers)(a.onFocusOutside,a=>{a.target!==h.trigger&&f.onOpenChange(!1)}),onEscapeKeyDown:(0,n.composeEventHandlers)(a.onEscapeKeyDown,a=>{g.onClose(),a.preventDefault()}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{let b=a.currentTarget.contains(a.target),c=b0[g.dir].includes(a.key);b&&c&&(f.onOpenChange(!1),h.trigger?.focus(),a.preventDefault())})})})})})});function cQ(a){return a?"open":"closed"}function cR(a){return"indeterminate"===a}function cS(a){return cR(a)?"indeterminate":a?"checked":"unchecked"}function cT(a){return b=>"mouse"===b.pointerType?a(b):void 0}cP.displayName=cO;var cU="DropdownMenu",[cV,cW]=(0,p.createContextScope)(cU,[b6]),cX=b6(),[cY,cZ]=cV(cU),c$=a=>{let{__scopeDropdownMenu:b,children:c,dir:d,open:e,defaultOpen:f,onOpenChange:g,modal:h=!0}=a,i=cX(b),j=m.useRef(null),[k,n]=(0,q.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:cU});return(0,l.jsx)(cY,{scope:b,triggerId:(0,L.useId)(),triggerRef:j,contentId:(0,L.useId)(),open:k,onOpenChange:n,onOpenToggle:m.useCallback(()=>n(a=>!a),[n]),modal:h,children:(0,l.jsx)(cd,{...i,open:k,onOpenChange:n,dir:d,modal:h,children:c})})};c$.displayName=cU;var c_="DropdownMenuTrigger",c0=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,disabled:d=!1,...e}=a,f=cZ(c_,c),g=cX(c);return(0,l.jsx)(ce,{asChild:!0,...g,children:(0,l.jsx)(r.Primitive.button,{type:"button",id:f.triggerId,"aria-haspopup":"menu","aria-expanded":f.open,"aria-controls":f.open?f.contentId:void 0,"data-state":f.open?"open":"closed","data-disabled":d?"":void 0,disabled:d,...e,ref:(0,o.composeRefs)(b,f.triggerRef),onPointerDown:(0,n.composeEventHandlers)(a.onPointerDown,a=>{!d&&0===a.button&&!1===a.ctrlKey&&(f.onOpenToggle(),f.open||a.preventDefault())}),onKeyDown:(0,n.composeEventHandlers)(a.onKeyDown,a=>{!d&&(["Enter"," "].includes(a.key)&&f.onOpenToggle(),"ArrowDown"===a.key&&f.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(a.key)&&a.preventDefault())})})})});c0.displayName=c_;var c1=a=>{let{__scopeDropdownMenu:b,...c}=a,d=cX(b);return(0,l.jsx)(ci,{...d,...c})};c1.displayName="DropdownMenuPortal";var c2="DropdownMenuContent",c3=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cZ(c2,c),f=cX(c),g=m.useRef(!1);return(0,l.jsx)(cm,{id:e.contentId,"aria-labelledby":e.triggerId,...f,...d,ref:b,onCloseAutoFocus:(0,n.composeEventHandlers)(a.onCloseAutoFocus,a=>{g.current||e.triggerRef.current?.focus(),g.current=!1,a.preventDefault()}),onInteractOutside:(0,n.composeEventHandlers)(a.onInteractOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey,d=2===b.button||c;(!e.modal||d)&&(g.current=!0)}),style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});c3.displayName=c2,m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cr,{...e,...d,ref:b})}).displayName="DropdownMenuGroup",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cs,{...e,...d,ref:b})}).displayName="DropdownMenuLabel";var c4=m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cv,{...e,...d,ref:b})});c4.displayName="DropdownMenuItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cx,{...e,...d,ref:b})}).displayName="DropdownMenuCheckboxItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cB,{...e,...d,ref:b})}).displayName="DropdownMenuRadioGroup",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cD,{...e,...d,ref:b})}).displayName="DropdownMenuRadioItem",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cH,{...e,...d,ref:b})}).displayName="DropdownMenuItemIndicator",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cI,{...e,...d,ref:b})}).displayName="DropdownMenuSeparator",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cJ,{...e,...d,ref:b})}).displayName="DropdownMenuArrow",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cN,{...e,...d,ref:b})}).displayName="DropdownMenuSubTrigger",m.forwardRef((a,b)=>{let{__scopeDropdownMenu:c,...d}=a,e=cX(c);return(0,l.jsx)(cP,{...e,...d,ref:b,style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}).displayName="DropdownMenuSubContent";let c5=["claude-code","codex","gemini","qwen-code"],c6={claudeCode:"pro",codex:"chatgpt",gemini:"oauth",qwenCode:"oauth"},c7={"claude-code":{agent:"claude-code",label:"Claude Code",accessKey:"claudeCode",defaultAccess:"pro",defaultModelByAccess:{pro:"claude-sonnet-4-5",max:"claude-opus-4-1",api:"claude-sonnet-4-5"},customModelPlaceholder:"claude-sonnet-4-5",accessOptions:[{id:"pro",label:"Claude Pro",description:"Shows the current Sonnet models that Claude Code documents for Pro usage."},{id:"max",label:"Claude Max",description:"Unlocks both Sonnet and Opus model choices in Claude Code."},{id:"api",label:"Anthropic API",description:"Use direct Anthropic API credentials instead of a Claude subscription."}],models:[{id:"claude-sonnet-4-5",label:"Claude Sonnet 4.5",description:"Latest Claude Code Sonnet recommendation for most coding work.",access:["pro","max","api"]},{id:"claude-sonnet-4-0",label:"Claude Sonnet 4",description:"Previous Sonnet generation kept for compatibility.",access:["pro","max","api"]},{id:"claude-opus-4-1",label:"Claude Opus 4.1",description:"Higher-capability Claude Code option available on Max or API access.",access:["max","api"]},{id:"claude-opus-4-0",label:"Claude Opus 4",description:"Older Opus generation retained for explicit overrides.",access:["max","api"]}]},codex:{agent:"codex",label:"Codex",accessKey:"codex",defaultAccess:"chatgpt",defaultModelByAccess:{chatgpt:"gpt-5.2-codex",api:"gpt-5.2-codex"},customModelPlaceholder:"gpt-5.2-codex",accessOptions:[{id:"chatgpt",label:"ChatGPT Plan",description:"Use the ChatGPT-backed Codex login flow for paid ChatGPT workspaces."},{id:"api",label:"OpenAI API",description:"Use direct OpenAI API credentials when Codex is pointed at the API."}],models:[{id:"gpt-5.2-codex",label:"GPT-5.2 Codex",description:"Latest Codex model available in the current OpenAI model lineup.",access:["chatgpt","api"]},{id:"gpt-5.1-codex-max",label:"GPT-5.1 Codex Max",description:"Higher-reasoning ChatGPT Codex option documented in the Codex help center.",access:["chatgpt"]},{id:"gpt-5.1-codex-mini",label:"GPT-5.1 Codex Mini",description:"Lower-latency ChatGPT Codex option for lighter interactive work.",access:["chatgpt"]},{id:"gpt-5.1-codex",label:"GPT-5.1 Codex",description:"API-facing Codex model retained for compatibility with existing setups.",access:["api"]}]},gemini:{agent:"gemini",label:"Gemini",accessKey:"gemini",defaultAccess:"oauth",defaultModelByAccess:{oauth:"gemini-2.5-pro",api:"gemini-2.5-pro"},customModelPlaceholder:"gemini-2.5-pro",accessOptions:[{id:"oauth",label:"Google Login",description:"Use the built-in Google account flow that Gemini CLI ships with."},{id:"api",label:"Gemini API",description:"Use a Gemini API key or Vertex AI project for broader model control."}],models:[{id:"gemini-2.5-pro",label:"Gemini 2.5 Pro",description:"Default Gemini CLI coding model and the safest built-in option.",access:["oauth","api"]},{id:"gemini-2.5-flash",label:"Gemini 2.5 Flash",description:"Lower-latency Gemini option typically used with API-key setups.",access:["api"]},{id:"gemini-2.5-flash-lite",label:"Gemini 2.5 Flash-Lite",description:"Cheaper Gemini API option for lightweight automation or quick checks.",access:["api"]}]},"qwen-code":{agent:"qwen-code",label:"Qwen Code",accessKey:"qwenCode",defaultAccess:"oauth",defaultModelByAccess:{oauth:"qwen3.5-plus",api:"qwen3-coder-plus"},customModelPlaceholder:"qwen3-coder-plus",accessOptions:[{id:"oauth",label:"Qwen OAuth",description:"Use Qwen Code's built-in browser login and bundled provider defaults."},{id:"api",label:"DashScope / Custom API",description:"Use DashScope or another OpenAI-compatible endpoint configured for Qwen Code."}],models:[{id:"qwen3.5-plus",label:"Qwen3.5 Plus",description:"Latest bundled Qwen OAuth default documented in Qwen Code updates.",access:["oauth","api"]},{id:"qwen3-coder-plus",label:"Qwen3 Coder Plus",description:"Coding-focused Qwen model documented in the Qwen Code provider guide.",access:["oauth","api"]}]}};function c8(a){let b=a.trim().toLowerCase().replace(/[_\s]+/g,"-");return c5.includes(b)?b:null}function c9(a){return null!==c8(a)}function da(a){let b=c8(a);return b?c7[b]:null}function db(a,b){let c=da(a);if(!c)return null;let d=b?.[c.accessKey];return"string"==typeof d&&c.accessOptions.some(a=>a.id===d)?d:c.defaultAccess}function dc(a,b){let c=da(a),d=db(a,b);return c&&d?c.models.filter(a=>a.access.includes(d)):[]}var dd={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},de=m.default.createContext&&m.default.createContext(dd),df=["attr","size","title"];function dg(){return(dg=Object.assign.bind()).apply(null,arguments)}function dh(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function di(a){for(var b=1;b<arguments.length;b++){var c=null!=arguments[b]?arguments[b]:{};b%2?dh(Object(c),!0).forEach(function(b){var d,e,f;d=a,e=b,f=c[b],(e=function(a){var b=function(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}(a,"string");return"symbol"==typeof b?b:b+""}(e))in d?Object.defineProperty(d,e,{value:f,enumerable:!0,configurable:!0,writable:!0}):d[e]=f}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):dh(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}function dj(a){return b=>m.default.createElement(dk,dg({attr:di({},a.attr)},b),function a(b){return b&&b.map((b,c)=>m.default.createElement(b.tag,di({key:c},b.attr),a(b.child)))}(a.child))}function dk(a){var b=b=>{var c,{attr:d,size:e,title:f}=a,g=function(a,b){if(null==a)return{};var c,d,e=function(a,b){if(null==a)return{};var c={};for(var d in a)if(({}).hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&({}).propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}(a,df),h=e||b.size||"1em";return b.className&&(c=b.className),a.className&&(c=(c?c+" ":"")+a.className),m.default.createElement("svg",dg({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},b.attr,d,g,{className:c,style:di(di({color:a.color||b.color},b.style),a.style),height:h,width:h,xmlns:"http://www.w3.org/2000/svg"}),f&&m.default.createElement("title",null,f),a.children)};return void 0!==de?m.default.createElement(de.Consumer,null,a=>b(a)):b(dd)}var dl=a.i(25515);let dm=(0,dl.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]),dn=(0,dl.default)("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),dp=(0,dl.default)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);var dq=a.i(91018),dr=a.i(58678),ds=a.i(86647),dt=a.i(1713),du=a.i(30832);let dv=(0,dl.default)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]]),dw=(0,dl.default)("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);var dx=a.i(82498),dx=dx;let dy=(0,dl.default)("plug-zap",[["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m18 3-4 4h6l-4 4",key:"16psg9"}]]),dz=(0,dl.default)("refresh-ccw",[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]]);var dA=a.i(1251),dB=a.i(45775);let dC=(0,dl.default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]),dD=(0,dl.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]),dE=(0,dl.default)("volume-x",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["line",{x1:"22",x2:"16",y1:"9",y2:"15",key:"1ewh16"}],["line",{x1:"16",x2:"22",y1:"9",y2:"15",key:"5ykzw1"}]]);var dF=a.i(75616);function dG(a,b){return{id:a,repo:"string"==typeof b?.repo?b.repo:null,iconUrl:"string"==typeof b?.iconUrl?b.iconUrl:null,boardDir:"string"==typeof b?.boardDir?b.boardDir:null,boardFile:"string"==typeof b?.boardFile?b.boardFile:null,description:"string"==typeof b?.description?b.description:null,agent:"string"==typeof b?.agent&&b.agent.trim().length>0?b.agent:"qwen-code",agentModel:"string"==typeof b?.agentModel&&b.agentModel.trim().length>0?b.agentModel:null}}let dH=(0,dl.default)("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]),dI=(0,dl.default)("panel-right-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]]);var dJ=a.i(26006);function dK({sidebar:a,children:b,sidebarOpen:c,onToggleSidebar:d}){return(0,l.jsxs)("div",{style:{"--workspace-sidebar-width":"356px"},className:"relative flex h-dvh min-h-[100dvh] w-full max-w-full overflow-hidden bg-[var(--vk-bg-main)] text-[var(--vk-text-normal)]",children:[c&&(0,l.jsx)("button",{type:"button",className:"absolute inset-0 z-20 bg-black/45 lg:hidden",onClick:d,"aria-label":"Close workspace panel"}),(0,l.jsx)("aside",{className:(0,dJ.cn)("absolute inset-y-0 left-0 z-30 flex h-full w-[min(90vw,var(--workspace-sidebar-width))] flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)] transition-transform duration-200 lg:relative lg:w-[var(--workspace-sidebar-width)]",c?"translate-x-0":"-translate-x-full lg:-translate-x-0 lg:w-0 lg:overflow-hidden lg:border-r-0","lg:left-auto"),children:a}),c&&(0,l.jsx)("button",{type:"button",onClick:d,className:"absolute left-[var(--workspace-sidebar-width)] top-2 z-40 hidden h-7 w-7 -translate-x-1/2 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] shadow-[0_0_0_1px_rgba(0,0,0,0.25)] hover:bg-[var(--vk-bg-hover)] lg:inline-flex","aria-label":"Hide workspace panel",children:(0,l.jsx)(dI,{className:"h-4 w-4"})}),(0,l.jsxs)("main",{className:"relative flex min-w-0 flex-1 flex-col overflow-hidden bg-[var(--vk-bg-main)]",children:[!c&&(0,l.jsx)("button",{type:"button",onClick:d,className:"absolute left-2 top-2 z-40 inline-flex h-7 w-7 items-center justify-center rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Open workspace panel",children:(0,l.jsx)(dH,{className:"h-4 w-4"})}),b]})]})}let dL=(0,dl.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);function dM({session:a,fallbackTitle:b,onOpenPreferences:c}){let d=a?.summary??b??"Create Workspace";return(0,l.jsxs)("header",{className:"flex h-[36px] items-center border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[11px] text-[var(--vk-text-muted)] sm:h-[33px]",children:[(0,l.jsx)("div",{className:"min-w-0 flex-1 text-center",children:(0,l.jsx)("span",{className:"block truncate",children:d})}),(0,l.jsx)("div",{className:"ml-1 flex shrink-0",children:(0,l.jsx)("button",{type:"button",onClick:c,className:"inline-flex h-6 w-6 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-normal)]","aria-label":"Open preferences",title:"Preferences",children:(0,l.jsx)(dL,{className:"h-3.5 w-3.5"})})})]})}var dN=a.i(37483),dO=a.i(52806),dP=a.i(7802),dQ=a.i(25098);function dR(a){return"merged"===a.status||"killed"===a.status||"cleanup"===a.status||"done"===a.status||"terminated"===a.status||a.pr&&("merged"===a.pr.state||"closed"===a.pr.state)?"done":"mergeable"===a.status||"approved"===a.status||a.pr?.mergeability.mergeable?"merge":"waiting_input"===a.activity||"blocked"===a.activity||"needs_input"===a.status||"stuck"===a.status||"errored"===a.status||"exited"===a.activity?"respond":"ci_failed"===a.status||"changes_requested"===a.status||a.pr&&("failing"===a.pr.ciStatus||"changes_requested"===a.pr.reviewDecision||!a.pr.mergeability.noConflicts)?"review":"review_pending"===a.status||a.pr&&!a.pr.isDraft&&("pending"===a.pr.reviewDecision||"none"===a.pr.reviewDecision)?"pending":"working"}let dS=[{id:"needs_attention",title:"Needs Attention"},{id:"running",title:"Running"},{id:"idle",title:"Idle"}];function dT({sessions:a,selectedId:b,onSelect:c,onCreateWorkspace:d,showHeader:e=!0}){let[f,g]=(0,m.useState)(""),[h,i]=(0,m.useState)({needs_attention:!1,running:!1,idle:!1}),j=(0,m.useMemo)(()=>{if(!f.trim())return a;let b=f.toLowerCase();return a.filter(a=>{let c=a.summary??"";return a.id.toLowerCase().includes(b)||a.projectId.toLowerCase().includes(b)||c.toLowerCase().includes(b)})},[f,a]),k=(0,m.useMemo)(()=>{let a={needs_attention:[],running:[],idle:[]};for(let c of j){var b;a["respond"===(b=dR(c))||"review"===b||"merge"===b?"needs_attention":"working"===b?"running":"idle"].push(c)}for(let b of Object.keys(a))a[b].sort((a,b)=>new Date(b.lastActivityAt).getTime()-new Date(a.lastActivityAt).getTime());return a},[j]);return(0,l.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[e&&(0,l.jsxs)("div",{className:"flex h-[33px] items-center gap-1 px-2",children:[(0,l.jsx)("p",{className:"text-[16px] text-[var(--vk-text-normal)]",children:"Workspaces"}),d&&(0,l.jsx)("button",{type:"button",onClick:d,className:"ml-auto inline-flex h-5 w-5 items-center justify-center rounded-[3px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)] lg:hidden","aria-label":"New workspace",children:(0,l.jsx)("span",{className:"text-[14px]",children:"+"})})]}),(0,l.jsx)("div",{className:(0,dJ.cn)("flex h-[38px] items-center px-2 pb-1.5",!e&&"pt-1.5"),children:(0,l.jsxs)("label",{className:"flex h-[30px] flex-1 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2",children:[(0,l.jsx)(dA.Search,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:f,onChange:a=>g(a.target.value),placeholder:"Search...",className:"ml-1.5 w-full bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]})}),(0,l.jsx)("div",{className:"flex-1 overflow-y-auto",children:dS.map(a=>{let d=k[a.id],e=h[a.id];return(0,l.jsxs)("section",{className:"pt-1",children:[(0,l.jsxs)("button",{type:"button",className:"flex h-8 w-full items-center px-2 text-left",onClick:()=>i(b=>({...b,[a.id]:!b[a.id]})),children:[(0,l.jsx)("span",{className:"text-[16px] text-[var(--vk-text-normal)]",children:a.title}),(0,l.jsx)("span",{className:"ml-auto text-[var(--vk-text-muted)]",children:e?(0,l.jsx)(dQ.ChevronRight,{className:"h-3.5 w-3.5"}):(0,l.jsx)(dr.ChevronDown,{className:"h-3.5 w-3.5"})})]}),!e&&(0,l.jsxs)("div",{children:[0===d.length&&(0,l.jsx)("p",{className:"px-2 py-1 text-[14px] text-[var(--vk-text-muted)]",children:"No workspaces"}),d.map(a=>{let d=dR(a),e=function(a){let b=a.metadata?.cost;if(!b)return null;try{let a=JSON.parse(b),c=a.estimatedCostUsd??a.totalUSD;if(!c||c<=0)return null;return`$${c.toFixed(2)}`}catch{return null}}(a),f=a.id===b,g=a.metadata.agent?.trim()??"";return(0,l.jsxs)("button",{type:"button",onClick:()=>c(a.id),className:(0,dJ.cn)("group flex w-full flex-col px-2 py-1 text-left",f?"bg-[var(--vk-bg-hover)]":"hover:bg-[var(--vk-bg-hover)]"),children:[(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(dO.AgentTileIcon,{seed:{label:g||"agent"},className:"h-6 w-6"}),(0,l.jsx)("p",{className:"truncate text-[14px] text-[var(--vk-text-normal)]",children:a.summary??a.id})]}),(0,l.jsxs)("div",{className:"mt-0.5 flex items-center gap-1 text-[14px]",children:[(0,l.jsx)("span",{className:"text-[var(--vk-text-muted)]",children:function(a){let b=Math.floor((Date.now()-new Date(a).getTime())/6e4);if(b<1)return"now";if(b<60)return`${b}m ago`;let c=Math.floor(b/60);if(c<24)return`${c}h ago`;let d=Math.floor(c/24);return`${d}d ago`}(a.lastActivityAt)}),g&&(0,l.jsx)("span",{className:"truncate text-[11px] text-[var(--vk-text-muted)]",children:g}),e&&(0,l.jsx)("span",{className:"ml-auto text-[11px]",style:{color:"merge"===d?"var(--vk-green)":"respond"===d?"var(--vk-red)":"review"===d?"var(--vk-orange)":"working"===d?"#4e87f3":"var(--vk-text-muted)"},children:e})]})]},a.id)})]})]},a.id)})})]})}function dU({orgLabel:a,projects:b,selectedProjectId:c,onSelectProject:d,sessions:e,selectedSessionId:f,onSelectSession:g,onCreateWorkspace:h}){return(0,l.jsxs)("div",{className:"flex h-full min-h-0 w-full flex-col bg-[var(--vk-bg-panel)]",children:[(0,l.jsxs)("section",{className:"flex h-[57px] items-center border-b border-[var(--vk-border)] px-4",children:[(0,l.jsx)("p",{className:"truncate text-[15px] font-medium leading-[21px] text-[var(--vk-text-strong)]",children:a}),(0,l.jsxs)("button",{type:"button",onClick:h,className:"ml-auto inline-flex h-7 items-center gap-1 rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Add workspace",children:[(0,l.jsx)(dP.Plus,{className:"h-3.5 w-3.5"}),(0,l.jsx)("span",{children:"Add Workspace"})]})]}),(0,l.jsxs)("section",{className:"border-b border-[var(--vk-border)] pb-2 pt-1.5",children:[(0,l.jsx)("div",{className:"flex h-[28px] items-center px-3",children:(0,l.jsx)("p",{className:"text-[11px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Projects"})}),(0,l.jsx)("div",{className:"max-h-[260px] overflow-y-auto px-2",children:b.map(a=>{let b=c===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>d(a.id),className:(0,dJ.cn)("mb-1.5 flex w-full items-center gap-3 rounded-[6px] px-3 py-2.5 text-left text-[14px] leading-[21px]",b?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"),children:[(0,l.jsx)("span",{className:"h-2.5 w-2.5 rounded-full bg-[#3c83f6]"}),(0,l.jsx)("span",{className:"truncate",children:a.id})]},a.id)})})]}),(0,l.jsx)("section",{className:"flex min-h-0 flex-1 flex-col pt-1.5",children:(0,l.jsx)(dT,{sessions:e,selectedId:f,onSelect:g,onCreateWorkspace:h,showHeader:!1})})]})}var dx=dx;let dV={intake:"#3c83f6",ready:"#f59f0a",dispatching:"#fb923c",inProgress:"#f59f0a",review:"#895af6",done:"#21c45d",blocked:"#d53946"},dW={intake:"To do",ready:"Ready",dispatching:"Dispatching",inProgress:"In progress",review:"In review",done:"Done",blocked:"Blocked"};function dX(a){return["intake","ready","dispatching","inProgress","review","done","blocked"].includes(a)?a:"intake"}function dY(a){return a.split(/[-_\s]+/g).filter(Boolean).map(a=>a[0]?.toUpperCase()+a.slice(1)).join(" ")}function dZ({projectId:a,defaultAgent:b,agentOptions:c}){let[d,e]=(0,m.useState)(null),[f,g]=(0,m.useState)(!1),[h,i]=(0,m.useState)(null),[j,k]=(0,m.useState)(""),[n,o]=(0,m.useState)(!1),[p,q]=(0,m.useState)("intake"),[r,s]=(0,m.useState)(""),[t,u]=(0,m.useState)(""),[v,w]=(0,m.useState)(b),[x,y]=(0,m.useState)("feature"),[z,A]=(0,m.useState)("normal"),[B,C]=(0,m.useState)(""),[D,E]=(0,m.useState)([]),[F,G]=(0,m.useState)(""),[H,I]=(0,m.useState)([]),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)(null),[N,O]=(0,m.useState)([]),[P,Q]=(0,m.useState)(!1),[R,S]=(0,m.useState)(null),T=(0,m.useMemo)(()=>{let a=[...new Set(c.filter(Boolean))];return a.includes(b)||a.unshift(b),a},[c,b]);(0,m.useEffect)(()=>{T.includes(v)||w(T[0]??"qwen-code")},[v,T]),(0,m.useEffect)(()=>{if(!n||!a)return;let b=!1;return(async()=>{K(!0),M(null);try{let c=await fetch(`/api/context-files?projectId=${encodeURIComponent(a)}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load context files: ${c.status}`);if(b)return;let e=Array.isArray(d?.files)?d.files:[];I(e)}catch(a){if(b)return;I([]),M(a instanceof Error?a.message:"Failed to load context files")}finally{b||K(!1)}})(),()=>{b=!0}},[n,a]);let U=(0,m.useCallback)(async()=>{if(!a){e(null),i(null),g(!1);return}g(!0);try{let b=await fetch(`/api/boards?projectId=${encodeURIComponent(a)}`),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load board: ${b.status}`);e(c),i(null)}catch(a){e(null),i(a instanceof Error?a.message:"Failed to load board")}finally{g(!1)}},[a]);(0,m.useEffect)(()=>{U()},[U]);let V=(0,m.useMemo)(()=>{let a=d?.primaryRoles;return a&&0!==a.length?a.map(a=>dX(a)):["intake","inProgress","review","done"]},[d?.primaryRoles]),W=(0,m.useMemo)(()=>{let a=j.trim().toLowerCase(),b=d?.columns??[],c=new Set(V);return b.filter(a=>c.has(a.role)).map(b=>a?{...b,tasks:b.tasks.filter(b=>`${b.text} ${b.agent??""} ${b.type??""} ${b.priority??""}`.toLowerCase().includes(a))}:b)},[d?.columns,j,V]),X=(0,m.useMemo)(()=>{let a=F.trim().toLowerCase();return a?H.filter(b=>`${b.path} ${b.name} ${b.source??""}`.toLowerCase().includes(a)):H},[H,F]);function Y(a){q(a),o(!0),S(null),C(""),G(""),E([]),O([])}async function Z(){if(a&&r.trim()){Q(!0),S(null);try{let b=[];if(N.length>0){let c=new FormData;for(let b of(c.append("projectId",a),N))c.append("files",b);let d=await fetch("/api/attachments",{method:"POST",body:c}),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Upload failed: ${d.status}`);b=(e?.files??[]).map(a=>a.path?.trim()).filter(a=>!!a)}let c=[...new Set([...D,...b])],d=await fetch("/api/boards",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:a,title:r.trim(),description:t.trim()||void 0,contextNotes:B.trim()||void 0,attachments:c.length>0?c:void 0,agent:v,role:p,type:x.trim()||void 0,priority:z.trim()||void 0})}),f=await d.json().catch(()=>null);if(!d.ok)throw Error(f?.error??`Failed to create task: ${d.status}`);e(a=>f&&"columns"in f?{...a??f,...f}:a),s(""),u(""),y("feature"),A("normal"),C(""),E([]),G(""),O([]),o(!1)}catch(a){S(a instanceof Error?a.message:"Failed to create task")}finally{Q(!1)}}}return a?(0,l.jsxs)("section",{className:"flex h-full min-h-0 flex-col",children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsxs)("div",{className:"inline-flex rounded-[3px] border border-[var(--vk-border)] p-px",children:[(0,l.jsx)("span",{className:"rounded-[2px] bg-[var(--vk-bg-active)] px-3 py-1 text-[13px] text-[var(--vk-text-strong)]",children:"Active"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"All"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"Backlog"}),(0,l.jsx)("span",{className:"px-3 py-1 text-[13px] text-[var(--vk-text-muted)]",children:"Cancelled"})]}),(0,l.jsxs)("div",{className:"ml-auto flex w-full min-w-0 flex-wrap items-center gap-2 sm:w-auto sm:min-w-[220px] sm:flex-nowrap sm:flex-none",children:[(0,l.jsxs)("label",{className:"flex h-[31px] min-w-0 flex-1 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 sm:min-w-[200px] sm:w-[240px] sm:flex-none",children:[(0,l.jsx)(dA.Search,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:j,onChange:a=>k(a.target.value),placeholder:"Search tasks...",className:"ml-2 w-full bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,l.jsxs)("button",{type:"button",onClick:()=>Y("intake"),className:"inline-flex h-[31px] w-full items-center justify-center gap-1 rounded-[3px] bg-[var(--vk-bg-active)] px-3 text-[14px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] sm:w-auto",children:[(0,l.jsx)("span",{children:"New Issue"}),(0,l.jsx)(dP.Plus,{className:"h-3.5 w-3.5"})]})]})]}),d?.watcherHint&&(0,l.jsx)("p",{className:"pt-2 text-[12px] text-[var(--vk-text-muted)]",children:d.watcherHint})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto p-4",children:f?(0,l.jsxs)("div",{className:"flex h-full items-center justify-center text-[var(--vk-text-muted)]",children:[(0,l.jsx)(dx.default,{className:"h-4 w-4 animate-spin"}),(0,l.jsx)("span",{className:"ml-2 text-[14px]",children:"Loading board..."})]}):h?(0,l.jsx)("div",{className:"rounded-[4px] border border-[color:color-mix(in_srgb,var(--vk-red)_55%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-red)_12%,transparent)] px-3 py-2 text-[13px] text-[var(--vk-red)]",children:h}):(0,l.jsx)("div",{className:"grid min-w-[980px] gap-0 rounded-[4px] border border-[var(--vk-border)]",style:{gridTemplateColumns:`repeat(${Math.max(W.length,1)}, minmax(240px, 1fr))`},children:W.map((a,b)=>(0,l.jsxs)("article",{className:(0,dJ.cn)("flex min-h-[540px] flex-col border-r border-[var(--vk-border)] bg-[var(--vk-bg-panel)]",b===W.length-1&&"border-r-0"),children:[(0,l.jsxs)("header",{className:"flex h-[41px] items-center border-b border-[var(--vk-border)] px-2",children:[(0,l.jsx)("span",{className:"h-2 w-2 rounded-full",style:{backgroundColor:dV[a.role]}}),(0,l.jsx)("span",{className:"ml-2 text-[14px] text-[var(--vk-text-normal)]",children:a.heading||dW[a.role]}),(0,l.jsx)("button",{type:"button",onClick:()=>Y(a.role),className:"ml-auto inline-flex h-6 w-6 items-center justify-center rounded-[3px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]","aria-label":`Add task to ${a.heading}`,children:(0,l.jsx)(dP.Plus,{className:"h-3.5 w-3.5"})})]}),(0,l.jsxs)("div",{className:"flex-1 space-y-2 overflow-y-auto p-2",children:[0===a.tasks.length&&(0,l.jsx)("div",{className:"rounded-[3px] border border-dashed border-[var(--vk-border)] px-2 py-2 text-[13px] text-[var(--vk-text-muted)]",children:"No tasks"}),a.tasks.map(b=>{let{title:c,description:d}=function(a){let[b,...c]=a.split(" - ");return{title:(b??a).trim(),description:c.join(" - ").trim()}}(b.text);return(0,l.jsxs)("div",{className:"rounded-[3px] border border-[var(--vk-border)] bg-[color:#212121] p-2",children:[(0,l.jsx)("p",{className:"font-mono text-[12px] text-[var(--vk-text-muted)]",children:b.taskRef??b.id}),(0,l.jsx)("p",{className:"pt-1 text-[15px] leading-[22px] text-[var(--vk-text-normal)]",children:c}),d&&(0,l.jsx)("p",{className:"pt-1 text-[13px] leading-[20px] text-[var(--vk-text-muted)]",children:d}),(0,l.jsxs)("div",{className:"mt-2 flex items-center justify-between gap-2",children:[(0,l.jsx)("div",{className:"flex min-w-0 items-center gap-1.5",children:b.agent?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dO.AgentTileIcon,{seed:{label:b.agent},className:"h-6 w-6"}),(0,l.jsx)("span",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:dY(b.agent)})]}):(0,l.jsx)("span",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"No agent"})}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[b.type&&(0,l.jsx)("span",{className:"inline-flex h-5 items-center rounded-[3px] bg-[color:#292929] px-2 text-[11px] text-[var(--vk-text-muted)]",children:b.type}),b.priority&&(0,l.jsx)("span",{className:"inline-flex h-5 items-center rounded-[3px] bg-[color:#292929] px-2 text-[11px] text-[var(--vk-text-muted)]",children:b.priority})]})]})]},`${a.role}-${b.id}`)})]})]},a.role))})}),n&&(0,l.jsx)("div",{className:"fixed inset-0 z-[75] flex items-start justify-center overflow-y-auto bg-black/60 px-3 py-3 sm:items-center sm:py-0",onClick:()=>!P&&o(!1),children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[560px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)]",onClick:a=>a.stopPropagation(),role:"dialog","aria-modal":"true",children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("h2",{className:"text-[18px] text-[var(--vk-text-strong)]",children:"Create Board Task"}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Add a task card with project and agent tags for Obsidian + conductor watcher."})]}),(0,l.jsxs)("div",{className:"min-h-0 flex-1 space-y-3 overflow-y-auto px-4 py-4",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Title"}),(0,l.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:"Review payment flow regression",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Description (optional)"}),(0,l.jsx)("textarea",{value:t,onChange:a=>u(a.target.value),rows:3,placeholder:"Investigate failing specs and propose a safe fix.",className:"w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Context notes (optional)"}),(0,l.jsx)("textarea",{value:B,onChange:a=>C(a.target.value),rows:2,placeholder:"Anything the agent should prioritize or avoid for this task.",className:"w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Agent"}),(0,l.jsx)("select",{value:v,onChange:a=>w(a.target.value),className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:T.map(a=>(0,l.jsx)("option",{value:a,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:dY(a)},a))})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Column"}),(0,l.jsx)("select",{value:p,onChange:a=>q(dX(a.target.value)),className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:W.map(a=>(0,l.jsx)("option",{value:a.role,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:a.heading||dW[a.role]},a.role))})]})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Type"}),(0,l.jsx)("input",{value:x,onChange:a=>y(a.target.value),placeholder:"feature",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Priority"}),(0,l.jsx)("input",{value:z,onChange:a=>A(a.target.value),placeholder:"normal",className:"h-9 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] p-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Context attachments"}),(0,l.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:[D.length," selected",N.length>0?` \xb7 ${N.length} upload(s)`:""]})]}),(0,l.jsx)("div",{className:"mt-2",children:(0,l.jsxs)("label",{className:"inline-flex cursor-pointer items-center rounded-[3px] border border-[var(--vk-border)] px-2 py-1 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,l.jsx)("input",{type:"file",multiple:!0,className:"hidden",onChange:a=>{let b=Array.from(a.target.files??[]);0!==b.length&&(O(a=>{let c=[...a];for(let a of b)c.some(b=>b.name===a.name&&b.size===a.size&&b.lastModified===a.lastModified)||c.push(a);return c}),a.currentTarget.value="")}}),"Upload files/images"]})}),N.length>0&&(0,l.jsx)("div",{className:"mt-2 flex flex-wrap gap-1",children:N.map(a=>(0,l.jsxs)("button",{type:"button",onClick:()=>{O(b=>b.filter(b=>b.name!==a.name||b.size!==a.size||b.lastModified!==a.lastModified))},className:"inline-flex items-center gap-1 rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-hover)] px-2 py-1 text-[11px] text-[var(--vk-text-normal)]",title:"Remove upload",children:[(0,l.jsx)("span",{className:"truncate max-w-[220px]",children:a.name}),(0,l.jsx)("span",{className:"text-[var(--vk-text-muted)]",children:"×"})]},`${a.name}-${a.size}-${a.lastModified}`))}),(0,l.jsxs)("label",{className:"mt-3 block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[12px] text-[var(--vk-text-muted)]",children:"Select existing context"}),(0,l.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"Search context files...",className:"h-8 w-full rounded-[3px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsx)("div",{className:"mt-2 max-h-[180px] overflow-auto rounded-[3px] border border-[var(--vk-border)]",children:J?(0,l.jsxs)("div",{className:"flex items-center gap-2 px-2 py-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,l.jsx)(dx.default,{className:"h-3.5 w-3.5 animate-spin"}),(0,l.jsx)("span",{children:"Loading context files..."})]}):L?(0,l.jsx)("p",{className:"px-2 py-2 text-[12px] text-[var(--vk-red)]",children:L}):0===X.length?(0,l.jsx)("p",{className:"px-2 py-2 text-[12px] text-[var(--vk-text-muted)]",children:"No context files found."}):(0,l.jsx)("ul",{className:"divide-y divide-[var(--vk-border)]",children:X.map(a=>{var b;let c=D.includes(a.path);return(0,l.jsx)("li",{className:"px-2 py-1.5",children:(0,l.jsxs)("label",{className:"flex cursor-pointer items-start gap-2 text-[12px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:c,onChange:()=>{var b;return b=a.path,void E(a=>a.includes(b)?a.filter(a=>a!==b):[...a,b])},className:"mt-0.5 h-3.5 w-3.5 rounded border-[var(--vk-border)] bg-transparent"}),(0,l.jsxs)("span",{className:"min-w-0",children:[(0,l.jsx)("span",{className:"block truncate",children:a.path}),(0,l.jsxs)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:[a.kind,a.source?` \xb7 ${a.source}`:"",a.sizeBytes?` \xb7 ${!(b=a.sizeBytes)||b<=0?"":b<1024?`${b} B`:b<1048576?`${(b/1024).toFixed(1)} KB`:`${(b/1048576).toFixed(1)} MB`}`:""]})]})]})},a.path)})})})]}),R&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-red)]",children:R})]}),(0,l.jsxs)("footer",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:()=>o(!1),disabled:P,className:"inline-flex h-9 items-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Cancel"}),(0,l.jsx)("button",{type:"button",onClick:()=>void Z(),disabled:!r.trim()||P,className:"inline-flex h-9 items-center rounded-[3px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:P?(0,l.jsx)(dx.default,{className:"h-4 w-4 animate-spin"}):"Create Task"})]})]})})]}):(0,l.jsx)("div",{className:"flex h-full items-center justify-center text-[14px] text-[var(--vk-text-muted)]",children:"Select a workspace to view its Kanban board."})}let d$=["pro","max","api"],d_=["chatgpt","api"],d0=["oauth","api"],d1=["oauth","api"];function d2(a,b,c){return"string"==typeof a&&b.includes(a)?a:c}function d3(a){let b=!a||"object"!=typeof a||Array.isArray(a)?{}:{...a},c={...c6};return{claudeCode:d2(b.claudeCode,d$,c.claudeCode),codex:d2(b.codex,d_,c.codex),gemini:d2(b.gemini,d0,c.gemini),qwenCode:d2(b.qwenCode,d1,c.qwenCode)}}let d4=["codex","gemini","qwen-code","droid","claude-code","amp","opencode","github-copilot","cursor-cli","ccr"],d5={codex:"Codex",gemini:"Gemini","qwen-code":"Qwen Code",droid:"Droid","claude-code":"Claude Code",amp:"Amp",opencode:"Opencode","github-copilot":"Copilot","cursor-cli":"Cursor Agent",ccr:"CCR"};function d6(a){return a.trim().toLowerCase().replace(/[_\s]+/g,"-")}function d7(a){let b=d6(a);return d5[b]?d5[b]:a.split(/[-_\s]+/g).filter(Boolean).map(a=>a[0]?.toUpperCase()+a.slice(1)).join(" ")}let d8=[{id:"general",label:"General",icon:dC,implemented:!1},{id:"repositories",label:"Repositories",icon:du.FolderGit2,implemented:!0},{id:"organization",label:"Organization Settings",icon:dp,implemented:!0},{id:"projects",label:"Projects",icon:dv,implemented:!1},{id:"agents",label:"Agents",icon:dm,implemented:!1},{id:"mcp",label:"MCP Servers",icon:dy,implemented:!1},{id:"preferences",label:"Preferences",icon:dB.SlidersHorizontal,implemented:!0}],d9=[{id:"preferences",label:"Preferences",icon:dB.SlidersHorizontal,implemented:!0},{id:"repositories",label:"Repository",icon:du.FolderGit2,implemented:!0}],ea=[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}],eb=[{id:"obsidian",label:"Obsidian"},{id:"vscode",label:"VS Code"},{id:"notion",label:"Notion"},{id:"typora",label:"Typora"},{id:"logseq",label:"Logseq"},{id:"custom",label:"Custom"}],ec=[{id:"abstract-sound-1",label:"Abstract Sound 1"},{id:"abstract-sound-2",label:"Abstract Sound 2"},{id:"abstract-sound-3",label:"Abstract Sound 3"},{id:"abstract-sound-4",label:"Abstract Sound 4"},{id:"cow-mooing",label:"Cow Mooing"},{id:"phone-vibration",label:"Phone Vibration"},{id:"rooster",label:"Rooster"}];function ed(a){return!a||"object"!=typeof a||Array.isArray(a)?{}:{...a}}function ee(a,b){let c=ed(a),d=ed(c.notifications),e=d.soundFile,f="string"==typeof c.codingAgent&&c.codingAgent.trim().length>0?c.codingAgent.trim():b,g="string"==typeof c.ide&&c.ide.trim().length>0?c.ide.trim():"vscode",h="string"==typeof c.remoteSshHost&&c.remoteSshHost.trim().length>0?c.remoteSshHost.trim():"",i="string"==typeof c.remoteSshUser&&c.remoteSshUser.trim().length>0?c.remoteSshUser.trim():"",j="string"==typeof c.markdownEditor&&c.markdownEditor.trim().length>0?c.markdownEditor.trim():"obsidian";return{onboardingAcknowledged:!0===c.onboardingAcknowledged,codingAgent:f,ide:g,remoteSshHost:h,remoteSshUser:i,markdownEditor:j,modelAccess:d3(c.modelAccess),notifications:{soundEnabled:!1!==d.soundEnabled,soundFile:null===e?null:"string"==typeof e&&e.trim().length>0?e.trim():"abstract-sound-4"}}}function ef(a){return Array.isArray(a)?a.filter(a=>"string"==typeof a).map(a=>a.trim()).filter(Boolean).join("\n"):"string"!=typeof a?"":a.split(/[\n,]+/g).map(a=>a.trim()).filter(Boolean).join("\n")}function eg(a,b){let c=ed(a),d=ed(c.trustedHeaders),e=ed(c.roles),f=ed(b),g=c.defaultRole,h=f.role;return{requireAuth:!0===c.requireAuth,defaultRole:"viewer"===g||"admin"===g||"operator"===g?g:"operator",trustedHeaders:{enabled:!0===d.enabled,provider:"generic"===d.provider?"generic":"cloudflare-access",emailHeader:"string"==typeof d.emailHeader&&d.emailHeader.trim().length>0?d.emailHeader.trim():"Cf-Access-Authenticated-User-Email",jwtHeader:"string"==typeof d.jwtHeader&&d.jwtHeader.trim().length>0?d.jwtHeader.trim():"Cf-Access-Jwt-Assertion",teamDomain:"string"==typeof d.teamDomain&&d.teamDomain.trim().length>0?d.teamDomain.trim():"",audience:"string"==typeof d.audience&&d.audience.trim().length>0?d.audience.trim():""},roles:{viewers:ef(e.viewers),operators:ef(e.operators),admins:ef(e.admins),viewerDomains:ef(e.viewerDomains),operatorDomains:ef(e.operatorDomains),adminDomains:ef(e.adminDomains)},current:{authenticated:!0===f.authenticated,role:"viewer"===h||"operator"===h||"admin"===h?h:null,email:"string"==typeof f.email&&f.email.trim().length>0?f.email.trim():null,provider:"string"==typeof f.provider&&f.provider.trim().length>0?f.provider.trim():null}}}function eh(){return{catalogModel:"",customModel:""}}function ei(a,b,c){let d,e;if(!c9(a))return eh();let f=c?.trim()??"",g=dc(a,b),h=(d=da(a),e=db(a,b),(d&&e?d.defaultModelByAccess[e]??null:null)??"");return f.length>0?g.some(a=>a.id===f)?{catalogModel:f,customModel:""}:{catalogModel:h,customModel:f}:{catalogModel:h,customModel:""}}function ej(a){let b=a.customModel.trim();if(b.length>0)return b;let c=a.catalogModel.trim();return c.length>0?c:void 0}let ek="block h-4 w-4 shrink-0",el="block h-4 w-4 shrink-0 object-contain",em={vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:el},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:el},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:el},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:el},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:el},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:el},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:el},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:el},custom:{kind:"icon",icon:dC,className:`${el} text-[var(--vk-text-muted)]`}};function en({editorId:a,label:b}){let c=em[a];if(!c)return(0,l.jsx)(dC,{className:`${el} text-[var(--vk-text-muted)]`});if("image"===c.kind)return(0,l.jsx)("img",{src:c.imageSrc,alt:`${b} logo`,className:c.className});let d=c.icon;return(0,l.jsx)(d,{className:c.className})}function eo(a){return JSON.stringify(a)}let ep={obsidian:{kind:"icon",icon:function(a){return dj({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M19.355 18.538a68.967 68.959 0 0 0 1.858-2.954.81.81 0 0 0-.062-.9c-.516-.685-1.504-2.075-2.042-3.362-.553-1.321-.636-3.375-.64-4.377a1.707 1.707 0 0 0-.358-1.05l-3.198-4.064a3.744 3.744 0 0 1-.076.543c-.106.503-.307 1.004-.536 1.5-.134.29-.29.6-.446.914l-.31.626c-.516 1.068-.997 2.227-1.132 3.59-.124 1.26.046 2.73.815 4.481.128.011.257.025.386.044a6.363 6.363 0 0 1 3.326 1.505c.916.79 1.744 1.922 2.415 3.5zM8.199 22.569c.073.012.146.02.22.02.78.024 2.095.092 3.16.29.87.16 2.593.64 4.01 1.055 1.083.316 2.198-.548 2.355-1.664.114-.814.33-1.735.725-2.58l-.01.005c-.67-1.87-1.522-3.078-2.416-3.849a5.295 5.295 0 0 0-2.778-1.257c-1.54-.216-2.952.19-3.84.45.532 2.218.368 4.829-1.425 7.531zM5.533 9.938c-.023.1-.056.197-.098.29L2.82 16.059a1.602 1.602 0 0 0 .313 1.772l4.116 4.24c2.103-3.101 1.796-6.02.836-8.3-.728-1.73-1.832-3.081-2.55-3.831zM9.32 14.01c.615-.183 1.606-.465 2.745-.534-.683-1.725-.848-3.233-.716-4.577.154-1.552.7-2.847 1.235-3.95.113-.235.223-.454.328-.664.149-.297.288-.577.419-.86.217-.47.379-.885.46-1.27.08-.38.08-.72-.014-1.043-.095-.325-.297-.675-.68-1.06a1.6 1.6 0 0 0-1.475.36l-4.95 4.452a1.602 1.602 0 0 0-.513.952l-.427 2.83c.672.59 2.328 2.316 3.335 4.711.09.21.175.43.253.653z"},child:[]}]})(a)},className:`${ek} text-[#8b5cf6]`},vscode:{kind:"icon",icon:function(a){return dj({tag:"svg",attr:{viewBox:"0 0 16 16",fill:"currentColor"},child:[{tag:"path",attr:{d:"M10.8634 13.9195C10.6568 14.0195 10.4233 14.0246 10.2185 13.9444C10.1162 13.9044 10.021 13.843 9.93997 13.7614L4.81616 9.06268L2.58433 10.7656C2.37657 10.9241 2.08597 10.9111 1.89301 10.7347L1.17719 10.0802C0.941168 9.86437 0.940898 9.49112 1.17661 9.27496L3.11213 7.5L1.17661 5.72504C0.940898 5.50888 0.941168 5.13563 1.17719 4.91982L1.89301 4.2653C2.08597 4.08887 2.37657 4.07588 2.58433 4.2344L4.81616 5.93732L9.93997 1.23855C9.97037 1.20797 10.0028 1.18023 10.0368 1.15538C10.2748 0.981429 10.5922 0.949298 10.8634 1.08048L13.5399 2.37507C13.8212 2.5111 14 2.79721 14 3.11109V8H10.752V4.53356L6.86419 7.5L10.752 10.4664V8H14V11.8889C14 12.2028 13.8211 12.4889 13.5399 12.625L10.8634 13.9195Z"},child:[]}]})(a)},className:`${ek} text-[#22a3f5]`},notion:{kind:"icon",icon:function(a){return dj({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"},child:[]}]})(a)},className:`${ek} text-white`},logseq:{kind:"image",imageSrc:"/icons/editors/logseq.svg",className:`${ek} object-contain`},typora:{kind:"image",imageSrc:"/icons/editors/typora-32.png",className:`${ek} rounded-[3px] bg-white/90 p-[1px] object-contain`},custom:{kind:"icon",icon:dC,className:`${ek} text-[var(--vk-text-muted)]`}};function eq({editorId:a}){let b=ep[a];if(!b)return(0,l.jsx)(dn,{className:`${ek} text-[var(--vk-text-muted)]`});if("image"===b.kind)return(0,l.jsx)("img",{src:b.imageSrc,alt:"",className:b.className});let c=b.icon;return(0,l.jsx)(c,{className:b.className})}function er({agent:a,modelAccess:b,selection:c,onChange:d,compact:e=!1}){let f,g;if(!c9(a))return null;let h=da(a),i=dc(a,b),j=(f=da(a),g=db(a,b),f&&g?f.accessOptions.find(a=>a.id===g)?.label??null:null);return h?(0,l.jsxs)("div",{className:e?"grid gap-3 md:grid-cols-2":"space-y-3",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Model"}),(0,l.jsx)("select",{value:c.catalogModel,onChange:a=>{d({...c,catalogModel:a.target.value})},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:i.map(a=>(0,l.jsx)("option",{value:a.id,children:a.label},a.id))}),(0,l.jsxs)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:[j?`Filtered for ${j}.`:"Filtered for your current access preference."," Leave custom override blank to use this selection."]})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Custom Model Override"}),(0,l.jsx)("input",{value:c.customModel,onChange:a=>{d({...c,customModel:a.target.value})},placeholder:h.customModelPlaceholder,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:"Optional. Use this if your provider exposes a newer model before Conductor updates its catalog."})]})]}):null}function es(){let[a,b]=(0,m.useState)(null),{sessions:c,error:d,refresh:e}=function(a){let[b,c]=(0,m.useState)([]),[d,e]=(0,m.useState)(!0),[f,g]=(0,m.useState)(null),h=(0,m.useRef)(!0),i=(0,m.useCallback)(a=>{c(b=>!function(a,b){if(a===b)return!0;if(a.length!==b.length)return!1;for(let c=0;c<a.length;c+=1){let d=a[c],e=b[c];if(!d||!e||d.id!==e.id||d.status!==e.status||d.activity!==e.activity||d.projectId!==e.projectId||d.issueId!==e.issueId||d.branch!==e.branch||d.lastActivityAt!==e.lastActivityAt||d.summary!==e.summary)return!1}return!0}(b,a)?a:b)},[]),j=(0,m.useCallback)(async()=>{try{let b="string"==typeof a&&a.trim().length>0?`?project=${encodeURIComponent(a.trim())}`:"",c=await fetch(`/api/sessions${b}`);if(!c.ok)throw Error(`Failed to fetch sessions: ${c.status}`);let d=await c.json(),e=Array.isArray(d)?d:Array.isArray(d.sessions)?d.sessions:[];if(!h.current)return;i(e),g(null)}catch(a){h.current&&g(a instanceof Error?a.message:"Unknown error")}finally{h.current&&e(!1)}},[i,a]);return(0,m.useEffect)(()=>{h.current=!0,e(!0),j();let b=null,c=null,d=()=>{null===c&&(c=window.setInterval(()=>{h.current&&j()},3e3))},f=()=>{null!==c&&(window.clearInterval(c),c=null)};return"u">typeof EventSource?((b=new EventSource("/api/events")).onopen=()=>{h.current&&(f(),g(null),e(!1))},b.onmessage=b=>{if(h.current)try{var c;let d,f=JSON.parse(b.data);if("snapshot"!==f.type||!Array.isArray(f.sessions))return;let h=(c=f.sessions,(d=a?.trim())?c.filter(a=>a.projectId===d):c);i(h),g(null),e(!1)}catch{}},b.onerror=()=>{h.current&&(d(),g(a=>a??"Live updates disconnected. Falling back to polling."))}):d(),()=>{h.current=!1,b&&b.close(),f()}},[i,j,a]),{sessions:b,loading:d,error:f,refresh:j}}(a),{projects:f,error:g,refresh:h}=function(){let[a,b]=(0,m.useState)([]),[c,d]=(0,m.useState)(!0),[e,f]=(0,m.useState)(null),g=(0,m.useRef)(!1),h=(0,m.useCallback)(async()=>{try{let a=await fetch("/api/config");if(!a.ok)throw Error(`Failed to fetch config: ${a.status}`);let c=await a.json();b(function(a){if(!a||"object"!=typeof a)return[];let b=a.projects;return b?Array.isArray(b)?b.map((a,b)=>a&&"object"==typeof a?dG("string"==typeof a.id&&a.id.trim().length>0?a.id:`project-${b+1}`,a):dG(`project-${b+1}`,null)):"object"==typeof b?Object.entries(b).map(([a,b])=>dG(a,b&&"object"==typeof b?b:null)):[]:[]}(c)),f(null)}catch(a){b([]),f(a instanceof Error?a.message:"Failed to fetch config")}finally{d(!1)}},[]);return(0,m.useEffect)(()=>{g.current||(g.current=!0,h())},[h]),{projects:a,loading:c,error:e,refresh:h}}(),{agents:i}=function(){let[a,b]=(0,m.useState)([]),[c,d]=(0,m.useState)(!0),e=(0,m.useRef)(!1);return(0,m.useEffect)(()=>{e.current||(e.current=!0,fetch("/api/agents").then(a=>{if(!a.ok)throw Error(`Failed to fetch agents: ${a.status}`);return a.json()}).then(a=>b(Array.isArray(a)?a:a&&"object"==typeof a&&"agents"in a&&Array.isArray(a.agents)?a.agents:[])).catch(()=>{}).finally(()=>d(!1)))},[]),{agents:a,loading:c}}(),[j,k]=(0,m.useState)(null),[n,o]=(0,m.useState)(!0),[p,q]=(0,m.useState)(""),[r,s]=(0,m.useState)(""),[t,u]=(0,m.useState)(eh()),[v,w]=(0,m.useState)(!1),[x,y]=(0,m.useState)(null),[z,A]=(0,m.useState)(!1),[B,C]=(0,m.useState)(!1),[D,E]=(0,m.useState)(null),[F,G]=(0,m.useState)("chat"),[H,I]=(0,m.useState)(null),[J,K]=(0,m.useState)(!0),[L,M]=(0,m.useState)(!1),[N,O]=(0,m.useState)(null),[P,Q]=(0,m.useState)(!1),[R,S]=(0,m.useState)(!1),T=x??g??d??N;(0,m.useEffect)(()=>{},[]),(0,m.useEffect)(()=>{if(0===f.length){null!==a&&b(null);return}a&&f.some(b=>b.id===a)||b(f[0]?.id??null)},[f,a]),(0,m.useEffect)(()=>{j&&(c.some(a=>a.id===j)||k(null))},[c,j]);let U=(0,m.useMemo)(()=>c.find(a=>a.id===j)??null,[c,j]),V=(0,m.useMemo)(()=>f.find(b=>b.id===a)??null,[f,a]),W=(0,m.useMemo)(()=>{let a=Array.isArray(i)?i:[],b=new Set;for(let a of f)a.agent&&b.add(a.agent);for(let c of a)c.name&&b.add(c.name);return 0===b.size&&["qwen-code","claude-code","codex"].forEach(a=>b.add(a)),[...b]},[i,f]);async function X(a,b){M(!0),O(null);try{let c=await fetch("/api/preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to save preferences: ${c.status}`);let e=ee(d?.preferences,a.codingAgent||"qwen-code");I(e),s(e.codingAgent),b?.closeDialog!==!1&&Q(!1)}catch(a){throw O(a instanceof Error?a.message:"Failed to save preferences"),a}finally{M(!1)}}(0,m.useEffect)(()=>{let a=!1;return async function(){K(!0);try{let b=await fetch("/api/preferences"),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load preferences: ${b.status}`);if(a)return;let d=ee(c?.preferences,"qwen-code");I(d),O(null)}catch(b){if(a)return;I(ee(null,"qwen-code")),O(b instanceof Error?b.message:"Failed to load preferences")}finally{a||K(!1)}}(),()=>{a=!0}},[]),(0,m.useEffect)(()=>{H&&(r||s(H.codingAgent))},[H,r]),(0,m.useEffect)(()=>{J||H&&(H.onboardingAcknowledged||Q(!0))},[H,J]),(0,m.useEffect)(()=>{if(r)return;let b=f.find(b=>b.id===a)?.agent;b&&s(b)},[f,r,a]),(0,m.useEffect)(()=>{0!==W.length&&(r&&W.includes(r)||s(W[0]??"qwen-code"))},[W,r]),(0,m.useEffect)(()=>{let a=r||V?.agent||H?.codingAgent||"qwen-code",b=V&&d6(V.agent)===d6(a)?V.agentModel:null;u(ei(a,H?.modelAccess??d3(null),b))},[H?.modelAccess,H?.codingAgent,r,V]);let Y=()=>{},Z=()=>{o(!0)},$=()=>{E(null),A(!0),Z()};async function _(){let b=p.trim();if(!b)return;let c=ej(t),d=a??f[0]?.id;if(!d)return void y("No project is configured in conductor.yaml");w(!0),y(null);try{let a=await fetch("/api/spawn",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:d,prompt:b,agent:r||"qwen-code",...c?{model:c}:{}})}),f=await a.json().catch(()=>null);if(!a.ok)throw Error(f?.error??`Failed to create workspace: ${a.status}`);if(!f?.session?.id)throw Error("Session created but response is missing session id");q(""),G("chat"),Z(),await e(),k(f.session.id)}catch(a){y(a instanceof Error?a.message:"Failed to create workspace")}finally{w(!1)}}async function aa(a){C(!0),E(null);try{let c=await fetch("/api/workspaces",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to add workspace: ${c.status}`);let e=d?.project?.id;if(!e)throw Error("Workspace created but response is missing project id");await h(),b(e),k(null),q(""),Z(),A(!1)}catch(a){E(a instanceof Error?a.message:"Failed to add workspace")}finally{C(!1)}}(0,m.useEffect)(()=>{R&&!P&&(S(!1),$())},[R,P]);let ab=!J&&!!H&&!H.onboardingAcknowledged,ac=H??ee(null,r||"qwen-code");return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(dK,{sidebarOpen:n,onToggleSidebar:()=>o(a=>!a),sidebar:(0,l.jsx)(dU,{orgLabel:"conductor-oss",projects:f,selectedProjectId:a,onSelectProject:a=>{b(a),k(null),Y()},sessions:c,selectedSessionId:j,onSelectSession:a=>{k(a),Y()},onCreateWorkspace:()=>{$()}}),children:[(0,l.jsx)(dM,{session:U,fallbackTitle:a??("board"===F?"Board":"Create Workspace"),onOpenPreferences:()=>Q(!0)}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:j?(0,l.jsx)(dN.SessionDetail,{sessionId:j}):(0,l.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,l.jsx)("div",{className:"border-b border-[var(--vk-border)] px-3 py-2",children:(0,l.jsxs)("div",{className:"inline-flex rounded-[3px] border border-[var(--vk-border)] p-px",children:[(0,l.jsx)("button",{type:"button",onClick:()=>G("chat"),className:`min-h-[28px] rounded-[2px] px-3 text-[13px] ${"chat"===F?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Chat"}),(0,l.jsx)("button",{type:"button",onClick:()=>G("board"),className:`min-h-[28px] rounded-[2px] px-3 text-[13px] ${"board"===F?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board"})]})}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:"board"===F?(0,l.jsx)(dZ,{projectId:a,defaultAgent:r||ac.codingAgent||"qwen-code",agentOptions:W}):(0,l.jsx)(ev,{prompt:p,setPrompt:q,selectedAgent:r||ac.codingAgent||"qwen-code",setSelectedAgent:s,modelSelection:t,setModelSelection:u,modelAccess:ac.modelAccess,agentOptions:W,projectLabel:a??"No project selected",hasProject:!!a,creating:v,error:T,onOpenAddWorkspace:$,onCreate:_})})]})})]}),(0,l.jsx)(et,{open:z,onClose:()=>{B||A(!1)},onCreate:aa,creating:B,error:D,defaultAgent:r||ac.codingAgent||"qwen-code",agentOptions:W}),(0,l.jsx)(ex,{open:P,mode:ab?"onboarding":"settings",creating:L,error:N,current:ac,agentOptions:W,onRepositoriesChanged:h,onOnboardingComplete:({needsProject:a})=>{a&&S(!0)},onClose:()=>{L||ab||(Q(!1),O(null))},onSave:X})]})}function et({open:a,onClose:b,onCreate:c,creating:d,error:e,defaultAgent:f,agentOptions:g}){let[h,i]=(0,m.useState)("git"),[j,k]=(0,m.useState)(""),[n,o]=(0,m.useState)(""),[p,q]=(0,m.useState)(""),[r,s]=(0,m.useState)("main"),[t,u]=(0,m.useState)(f),[v,w]=(0,m.useState)(!0),[x,y]=(0,m.useState)(!0),[z,A]=(0,m.useState)([]),[B,C]=(0,m.useState)(!1),[D,E]=(0,m.useState)(null),[F,G]=(0,m.useState)(""),[H,I]=(0,m.useState)(""),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)("local"),[N,O]=(0,m.useState)([]),[P,Q]=(0,m.useState)(!1),[R,S]=(0,m.useState)(null);(0,m.useEffect)(()=>{a&&(i("git"),k(""),o(""),q(""),s("main"),y(!0),w(!0),u(f),A([]),E(null),G(""),I(""),O([]),S(null),Q(!1),K(!1),M("local"))},[f,a]),(0,m.useEffect)(()=>{!a||"local"!==h||p.trim().length>0||(M("local"),K(!0))},[h,a,p]);let T=(0,m.useMemo)(()=>{if(0===F.trim().length)return z;let a=F.trim().toLowerCase();return z.filter(b=>b.fullName.toLowerCase().includes(a)||b.name.toLowerCase().includes(a)||b.defaultBranch.toLowerCase().includes(a))},[F,z]),U=(0,m.useMemo)(()=>{let a=[...new Set(g)];0===a.length&&a.push(f||"qwen-code");let b=new Map(d4.map((a,b)=>[a,b]));return a.sort((a,c)=>{let d=b.get(d6(a))??Number.MAX_SAFE_INTEGER,e=b.get(d6(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:d7(a).localeCompare(d7(c))})},[g,f]);(0,m.useEffect)(()=>{U.includes(t)||u(U[0]??"qwen-code")},[t,U]);let V=async()=>{C(!0),E(null);try{let a=F.trim(),b=a.length>0?`?q=${encodeURIComponent(a)}`:"",c=await fetch(`/api/github/repos${b}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load GitHub repositories (${c.status})`);A(Array.isArray(d?.repos)?d.repos:[])}catch(a){A([]),E(a instanceof Error?a.message:"Failed to load GitHub repositories")}finally{C(!1)}},W=async a=>{let b=a?.gitUrl??("git"===h?n.trim():""),c=a?.path??("local"===h?p.trim():"");if(0===b.length&&0===c.length)return void S("git"===h?"Enter a Git URL first.":"Select a local repository path first.");Q(!0),S(null);try{let a=new URLSearchParams;b.length>0&&a.set("gitUrl",b),c.length>0&&a.set("path",c);let d=await fetch(`/api/workspaces/branches?${a.toString()}`),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Failed to load branches (${d.status})`);let f=Array.isArray(e?.branches)?e.branches.filter(a=>"string"==typeof a&&a.trim().length>0):[];O(f);let g="string"==typeof e?.defaultBranch&&e.defaultBranch.trim().length>0?e.defaultBranch.trim():f[0]??null;g&&(0===r.trim().length||!f.includes(r))&&s(g)}catch(a){O([]),S(a instanceof Error?a.message:"Failed to load branches")}finally{Q(!1)}},X=async a=>{I(a);let b=z.find(b=>b.httpsUrl===a);b&&(o(b.httpsUrl),s(b.defaultBranch||"main"),0===j.trim().length&&k(b.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||j),await W({gitUrl:b.httpsUrl}))},Y=a=>{M(a),K(!0)};if(!a)return null;let Z="git"===h?n.trim().length>0&&r.trim().length>0:p.trim().length>0&&r.trim().length>0;async function $(a){if(a.preventDefault(),!Z||d)return;let b="git"===h?{mode:h,projectId:j.trim()||void 0,agent:t,defaultBranch:r.trim(),useWorktree:v,gitUrl:n.trim(),path:p.trim()||void 0}:{mode:h,projectId:j.trim()||void 0,agent:t,defaultBranch:r.trim(),useWorktree:v,path:p.trim(),initializeGit:x};await c(b)}return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{className:"fixed inset-0 z-[80] flex items-start justify-center overflow-y-auto bg-black/65 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{d||J||b()},role:"presentation",children:(0,l.jsxs)("form",{onSubmit:$,onClick:a=>a.stopPropagation(),className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",children:[(0,l.jsxs)("header",{className:"flex items-center border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("h2",{className:"text-[18px] leading-[22px] text-[var(--vk-text-strong)]",children:"Add Workspace"}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository with a folder picker, then choose the target branch."})]}),(0,l.jsx)("button",{type:"button",onClick:b,disabled:d,"aria-label":"Close dialog",className:"ml-auto inline-flex h-8 w-8 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:(0,l.jsx)(dF.X,{className:"h-4 w-4"})})]}),(0,l.jsxs)("div",{className:"min-h-0 flex-1 space-y-4 overflow-y-auto px-4 py-4",children:[(0,l.jsxs)("div",{className:"inline-flex rounded-[4px] border border-[var(--vk-border)] p-1",children:[(0,l.jsx)("button",{type:"button",onClick:()=>i("git"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"git"===h?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Git Repository"}),(0,l.jsx)("button",{type:"button",onClick:()=>i("local"),className:`rounded-[3px] px-3 py-1.5 text-[13px] ${"local"===h?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Local Folder"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Project ID (optional)"}),(0,l.jsx)("input",{value:j,onChange:a=>k(a.target.value),placeholder:"auto-derived from repo/folder",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),"git"===h?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] p-3",children:[(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(dw,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"text-[12px] font-medium text-[var(--vk-text-normal)]",children:"GitHub Integration"})]}),(0,l.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-2",children:[(0,l.jsx)("button",{type:"button",onClick:V,disabled:B,className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:B?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Loading repos..."]}):"Load My GitHub Repositories"}),(0,l.jsxs)("div",{className:"relative min-w-[220px] flex-1",children:[(0,l.jsx)(dA.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"Filter repos...",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),T.length>0&&(0,l.jsxs)("label",{className:"mt-2 block",children:[(0,l.jsx)("span",{className:"mb-1 block text-[11px] text-[var(--vk-text-muted)]",children:"Choose repository"}),(0,l.jsxs)("select",{value:H,onChange:a=>{X(a.target.value)},className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:[(0,l.jsx)("option",{value:"",children:"Select a GitHub repo..."}),T.map(a=>(0,l.jsxs)("option",{value:a.httpsUrl,children:[a.fullName," (",a.defaultBranch,")"]},a.httpsUrl))]})]}),D&&(0,l.jsx)("p",{className:"mt-2 text-[11px] text-[var(--vk-red)]",children:D})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Git URL"}),(0,l.jsx)("input",{value:n,onChange:a=>o(a.target.value),placeholder:"https://github.com/org/repo.git",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path (optional, clone target)"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:p,readOnly:!0,onClick:()=>Y("clone"),placeholder:"Use Browse to choose a clone target folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>Y("clone"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,l.jsx)(dt.FolderOpen,{className:"h-4 w-4"})})]})]})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Local Path"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:p,readOnly:!0,onClick:()=>Y("local"),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>Y("local"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",title:"Browse folders",children:(0,l.jsx)(dt.FolderOpen,{className:"h-4 w-4"})})]})]}),(0,l.jsxs)("label",{className:"flex items-center gap-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:x,onChange:a=>y(a.target.checked),className:"h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Initialize git if this folder is non-git"})]})]}),(0,l.jsxs)("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Default Branch"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:"main",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{W()},disabled:P,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",title:"Detect branches",children:P?(0,l.jsx)(dx.default,{className:"h-3.5 w-3.5 animate-spin"}):(0,l.jsx)(dz,{className:"h-3.5 w-3.5"})})]}),N.length>0&&(0,l.jsx)("select",{value:r,onChange:a=>s(a.target.value),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:N.map(a=>(0,l.jsx)("option",{value:a,children:a},a))}),R&&(0,l.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-red)]",children:R})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] text-[var(--vk-text-muted)]",children:"Agent"}),(0,l.jsx)("select",{value:t,onChange:a=>u(a.target.value),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:U.map(a=>(0,l.jsx)("option",{value:a,className:"bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)]",children:d7(a)},a))})]})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:v,onChange:a=>w(a.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsxs)("span",{children:["Use worktree isolation",(0,l.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, sessions run directly on the selected branch in the local repo."})]})]}),e&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-red)]",children:e})]}),(0,l.jsxs)("footer",{className:"flex flex-wrap items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:b,disabled:d,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Cancel"}),(0,l.jsx)("button",{type:"submit",disabled:!Z||d,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:d?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Adding..."]}):"Add Workspace"})]})]})}),(0,l.jsx)(eu,{open:J,initialPath:p,title:"local"===L?"Select Local Repository":"Select Clone Target Folder",description:"local"===L?"Choose the local repository folder.":"Choose where the git repository should be cloned.",onClose:()=>K(!1),onSelect:a=>{K(!1),a&&(q(a),("local"===h||"local"===L)&&W({path:a}))}})]})}function eu({open:a,initialPath:b,title:c,description:d,onClose:e,onSelect:f}){let[g,h]=(0,m.useState)(""),[i,j]=(0,m.useState)(b??""),[k,n]=(0,m.useState)([]),[o,p]=(0,m.useState)(""),[q,r]=(0,m.useState)(!1),[s,t]=(0,m.useState)(null);(0,m.useEffect)(()=>{if(!a)return;p(""),j(b??"");let c=b&&b.trim().length>0?b.trim():void 0,d=c?`?path=${encodeURIComponent(c)}`:"";r(!0),t(null),fetch(`/api/filesystem/directory${d}`).then(async a=>{let b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to load directory (${a.status})`);h("string"==typeof b?.currentPath?b.currentPath:""),n(Array.isArray(b?.entries)?b.entries:[])}).catch(a=>{t(a instanceof Error?a.message:"Failed to load directory"),n([])}).finally(()=>{r(!1)})},[b,a]);let u=(0,m.useMemo)(()=>{if(0===o.trim().length)return k;let a=o.trim().toLowerCase();return k.filter(b=>b.name.toLowerCase().includes(a))},[k,o]),v=async a=>{r(!0),t(null);try{let b=a&&a.trim().length>0?`?path=${encodeURIComponent(a.trim())}`:"",c=await fetch(`/api/filesystem/directory${b}`),d=await c.json().catch(()=>null);if(!c.ok)throw Error(d?.error??`Failed to load directory (${c.status})`);let e="string"==typeof d?.currentPath?d.currentPath:"";h(e),n(Array.isArray(d?.entries)?d.entries:[]),j(e)}catch(a){t(a instanceof Error?a.message:"Failed to load directory"),n([])}finally{r(!1)}};return a?(0,l.jsx)("div",{className:"fixed inset-0 z-[95] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center sm:py-0",onClick:()=>{e(),f(null)},role:"presentation",children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[760px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)]",onClick:a=>a.stopPropagation(),children:[(0,l.jsxs)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("h3",{className:"text-[16px] text-[var(--vk-text-strong)]",children:c}),(0,l.jsx)("p",{className:"pt-1 text-[12px] text-[var(--vk-text-muted)]",children:d})]}),(0,l.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-3 px-4 py-3",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("input",{value:i,onChange:a=>j(a.target.value),placeholder:"/path/to/repository",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{v(i)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open"})]}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("button",{type:"button",onClick:()=>{v()},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Home"}),(0,l.jsx)("button",{type:"button",onClick:()=>{if(!g)return;let a=g.replace(/\\/g,"/");if("/"===a)return;let b=a.split("/").filter(Boolean);v(b.length>1?`/${b.slice(0,-1).join("/")}`:"/")},className:"inline-flex h-8 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Up"}),(0,l.jsx)("div",{className:"truncate text-[12px] text-[var(--vk-text-muted)]",children:g||"Home"})]}),(0,l.jsxs)("div",{className:"relative",children:[(0,l.jsx)(dA.Search,{className:"pointer-events-none absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--vk-text-muted)]"}),(0,l.jsx)("input",{value:o,onChange:a=>p(a.target.value),placeholder:"Filter folders",className:"h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent pl-7 pr-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto rounded-[4px] border border-[var(--vk-border)]",children:q?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"Loading..."}):s?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-red)]",children:s}):0===u.length?(0,l.jsx)("div",{className:"px-3 py-3 text-[12px] text-[var(--vk-text-muted)]",children:"No folders found."}):(0,l.jsx)("div",{className:"p-1",children:u.map(a=>(0,l.jsxs)("button",{type:"button",onClick:()=>{a.isDirectory&&v(a.path)},className:`mb-1 flex w-full items-center gap-2 rounded-[4px] px-2 py-2 text-left text-[12px] ${a.isDirectory?"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]":"cursor-default text-[var(--vk-text-muted)]"}`,children:[(0,l.jsx)(dt.FolderOpen,{className:"h-4 w-4 shrink-0"}),(0,l.jsx)("span",{className:"truncate",children:a.name}),a.isGitRepo&&(0,l.jsx)("span",{className:"ml-auto rounded-[999px] border border-[var(--vk-border)] px-1.5 py-0.5 text-[10px]",children:"git"})]},a.path))})})]}),(0,l.jsxs)("footer",{className:"flex items-center justify-end gap-2 border-t border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("button",{type:"button",onClick:()=>{e(),f(null)},className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Cancel"}),(0,l.jsx)("button",{type:"button",onClick:()=>{let a=i.trim().length>0?i.trim():g;e(),f(a||null)},className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)]",children:"Use this folder"})]})]})}):null}function ev({prompt:a,setPrompt:b,selectedAgent:c,setSelectedAgent:d,modelSelection:e,setModelSelection:f,modelAccess:g,agentOptions:h,projectLabel:i,hasProject:j,creating:k,error:n,onOpenAddWorkspace:o,onCreate:p}){let q=(0,m.useMemo)(()=>{let a=new Map(d4.map((a,b)=>[a,b]));return[...h].sort((b,c)=>{let d=a.get(d6(b))??Number.MAX_SAFE_INTEGER,e=a.get(d6(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:d7(b).localeCompare(d7(c))})},[h]),r=d7(c);return(0,l.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto px-3 py-4 sm:items-center sm:py-6",children:(0,l.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,l.jsx)("h1",{className:"pb-4 text-center text-[28px] font-medium leading-[32px] tracking-[-0.6px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),(0,l.jsxs)("div",{className:"rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-[var(--vk-border)] px-2 py-2",children:[(0,l.jsx)(dO.AgentTileIcon,{seed:{label:c},className:"h-8 w-8 border-none bg-transparent"}),(0,l.jsxs)(c$,{children:[(0,l.jsx)(c0,{asChild:!0,children:(0,l.jsxs)("button",{type:"button",className:"inline-flex h-[31px] max-w-[70vw] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-none","aria-label":"Select agent",children:[(0,l.jsx)("span",{className:"truncate pr-1",children:r}),(0,l.jsx)(dr.ChevronDown,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,l.jsx)(c1,{children:(0,l.jsxs)(c3,{align:"start",sideOffset:6,className:"z-50 min-w-[255px] rounded-[5px] border border-[var(--vk-border)] bg-[color:#2a2a2a] p-2 shadow-[0_10px_30px_rgba(0,0,0,0.45)]",children:[(0,l.jsx)("p",{className:"px-2 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),q.map(a=>{let b=a===c;return(0,l.jsxs)(c4,{onSelect:()=>d(a),className:"flex h-[40px] cursor-default items-center gap-2 rounded-[3px] px-2 text-[14px] leading-[21px] text-[var(--vk-text-strong)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)]",children:[(0,l.jsx)(dO.AgentTileIcon,{seed:{label:a},className:"h-6 w-6 border-none bg-transparent"}),(0,l.jsx)("span",{children:d7(a)}),(0,l.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:b?(0,l.jsx)(dq.Check,{className:"h-4 w-4"}):null})]},a)})]})})]})]}),(0,l.jsx)("div",{className:"px-2 py-2",children:(0,l.jsx)("textarea",{value:a,onChange:a=>b(a.target.value),placeholder:"Describe the task...",rows:2,className:"min-h-[48px] w-full resize-none bg-transparent text-[16px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})}),c9(c)&&(0,l.jsx)("div",{className:"border-t border-[var(--vk-border)] px-2 py-2",children:(0,l.jsx)(er,{agent:c,modelAccess:g,selection:e,onChange:f,compact:!0})}),(0,l.jsxs)("div",{className:"flex flex-col gap-2 border-t border-[var(--vk-border)] px-2 py-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,l.jsx)("div",{className:"flex min-w-0 items-center text-[14px] text-[var(--vk-text-normal)]",children:(0,l.jsx)("span",{className:"truncate",children:i})}),(0,l.jsx)("div",{className:"flex w-full items-center justify-end gap-2 sm:w-auto",children:j?(0,l.jsx)("button",{type:"button",onClick:p,disabled:k||0===a.trim().length,className:"inline-flex min-h-[32px] w-full items-center justify-center rounded-[3px] bg-[var(--vk-bg-active)] px-2 text-[16px] text-[var(--vk-text-normal)] transition-colors hover:bg-[var(--vk-bg-hover)] disabled:opacity-45 sm:w-auto",children:k?(0,l.jsx)(dx.default,{className:"h-4 w-4 animate-spin"}):"Create"}):(0,l.jsx)("button",{type:"button",onClick:o,className:"inline-flex min-h-[32px] w-full items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-2 text-[13px] text-[var(--vk-text-normal)] transition-colors hover:bg-[var(--vk-bg-hover)] sm:w-auto",children:"Add Workspace"})})]})]}),n&&(0,l.jsx)("p",{className:"pt-2 text-[12px] text-[var(--vk-red)]",children:n})]})})}function ew({value:a,idleLabel:b="Copy",copiedLabel:c="Copied"}){let[d,e]=(0,m.useState)(!1);async function f(){await navigator.clipboard.writeText(a),e(!0),window.setTimeout(()=>e(!1),1400)}return(0,l.jsxs)("button",{type:"button",onClick:()=>void f(),className:"inline-flex h-8 items-center gap-1.5 rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[d?(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"}):(0,l.jsx)(ds.Copy,{className:"h-3.5 w-3.5"}),(0,l.jsx)("span",{children:d?c:b})]})}function ex({open:a,mode:b,creating:c,error:d,current:e,agentOptions:f,onRepositoriesChanged:g,onOnboardingComplete:h,onClose:i,onSave:j}){var k,n;let o,[p,q]=(0,m.useState)("preferences"),[r,s]=(0,m.useState)(e.codingAgent),[t,u]=(0,m.useState)(e.ide),[v,w]=(0,m.useState)(e.remoteSshHost),[x,y]=(0,m.useState)(e.remoteSshUser),[z,A]=(0,m.useState)(e.markdownEditor),[B,C]=(0,m.useState)(e.modelAccess),[D,E]=(0,m.useState)(e.notifications.soundEnabled),[F,G]=(0,m.useState)(e.notifications.soundFile),[H,I]=(0,m.useState)([]),[J,K]=(0,m.useState)(!1),[L,M]=(0,m.useState)(!1),[N,O]=(0,m.useState)(null),[P,Q]=(0,m.useState)(""),[R,S]=(0,m.useState)(null),[T,U]=(0,m.useState)(eh()),[V,W]=(0,m.useState)([]),[X,Y]=(0,m.useState)(!1),[Z,$]=(0,m.useState)(null),[_,aa]=(0,m.useState)(!1),[ab,ac]=(0,m.useState)(()=>eg(null)),[ad,ae]=(0,m.useState)(!1),[af,ag]=(0,m.useState)(!1),[ah,ai]=(0,m.useState)(null),aj=c||L||af;function ak(a){return{...a,pathHealth:{exists:a.pathHealth.exists,isGitRepository:a.pathHealth.isGitRepository,suggestedPath:a.pathHealth.suggestedPath}}}function al(a){return a.split(/\n+/g).map(a=>a.trim()).filter(Boolean)}async function am(a){K(!0),O(null);try{let b=await fetch("/api/repositories"),c=await b.json().catch(()=>null);if(!b.ok)throw Error(c?.error??`Failed to load repositories (${b.status})`);let d=Array.isArray(c?.repositories)?c.repositories:[];I(d);let e=d[0]?.id??"",f=a&&d.some(b=>b.id===a)?a:P&&d.some(a=>a.id===P)?P:e;Q(f)}catch(a){I([]),Q(""),S(null),U(eh()),O(a instanceof Error?a.message:"Failed to load repositories")}finally{K(!1)}}async function an(a,b){let c=(a??R?.path??"").trim();if(0===c.length){$("Select a repository path first."),W([]);return}Y(!0),$(null);try{let a=new URLSearchParams({path:c}),d=await fetch(`/api/workspaces/branches?${a.toString()}`),e=await d.json().catch(()=>null);if(!d.ok)throw Error(e?.error??`Failed to detect branches (${d.status})`);let f=Array.isArray(e?.branches)?e.branches.filter(a=>"string"==typeof a&&a.trim().length>0):[];W(f);let g=b?.trim()||("string"==typeof e?.defaultBranch&&e.defaultBranch.trim().length>0?e.defaultBranch.trim():f[0]??"");if(!g)return;S(a=>!a||a.defaultBranch.trim().length>0&&f.includes(a.defaultBranch)?a:{...a,defaultBranch:g})}catch(a){W([]),$(a instanceof Error?a.message:"Failed to detect branches")}finally{Y(!1)}}async function ao(){if(!R||L||0===R.repo.trim().length||0===R.path.trim().length)return!1;M(!0),O(null);try{let a=await fetch("/api/repositories",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:R.id,displayName:R.displayName,repo:R.repo,path:R.path,agent:R.agent,agentModel:ej(T)??"",defaultWorkingDirectory:R.defaultWorkingDirectory,defaultBranch:R.defaultBranch,devServerScript:R.devServerScript,setupScript:R.setupScript,runSetupInParallel:R.runSetupInParallel,cleanupScript:R.cleanupScript,archiveScript:R.archiveScript,copyFiles:R.copyFiles})}),b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to save repository settings (${a.status})`);let c=b?.repository;if(!c)throw Error("Repository saved but response is missing repository data");return I(a=>a.map(a=>a.id===c.id?c:a)),S(ak(c)),Q(c.id),$(null),await an(c.path,c.defaultBranch),g&&await g(),!0}catch(a){return O(a instanceof Error?a.message:"Failed to save repository settings"),!1}finally{M(!1)}}async function ap(){ae(!0),ai(null);try{let a=await fetch("/api/access"),b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to load organization settings (${a.status})`);ac(eg(b?.access,b?.current))}catch(a){ac(eg(null)),ai(a instanceof Error?a.message:"Failed to load organization settings")}finally{ae(!1)}}async function aq(){if(af)return!1;ag(!0),ai(null);try{let a=await fetch("/api/access",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({requireAuth:ab.requireAuth,defaultRole:ab.defaultRole,trustedHeaders:{enabled:ab.trustedHeaders.enabled,provider:ab.trustedHeaders.provider,emailHeader:ab.trustedHeaders.emailHeader,jwtHeader:ab.trustedHeaders.jwtHeader,teamDomain:ab.trustedHeaders.teamDomain,audience:ab.trustedHeaders.audience},roles:{viewers:al(ab.roles.viewers),operators:al(ab.roles.operators),admins:al(ab.roles.admins),viewerDomains:al(ab.roles.viewerDomains),operatorDomains:al(ab.roles.operatorDomains),adminDomains:al(ab.roles.adminDomains)}})}),b=await a.json().catch(()=>null);if(!a.ok)throw Error(b?.error??`Failed to save organization settings (${a.status})`);return ac(eg(b?.access,b?.current)),!0}catch(a){return ai(a instanceof Error?a.message:"Failed to save organization settings"),!1}finally{ag(!1)}}(0,m.useEffect)(()=>{a&&(q("preferences"),s(e.codingAgent),u(e.ide),w(e.remoteSshHost),y(e.remoteSshUser),A(e.markdownEditor),C(e.modelAccess),E(e.notifications.soundEnabled),G(e.notifications.soundFile),W([]),$(null),U(eh()),ai(null))},[a]),(0,m.useEffect)(()=>{a&&am()},[a]),(0,m.useEffect)(()=>{a&&"onboarding"!==b&&ap()},[b,a]),(0,m.useEffect)(()=>{if(!a)return;if(!P){S(null),U(eh());return}let b=H.find(a=>a.id===P);b&&(S(ak(b)),U(ei(b.agent,B,b.agentModel)),W([]),$(null),b.path.trim().length>0&&an(b.path,b.defaultBranch))},[B,a,H,P]);let ar="onboarding"===b&&(J||H.length>0),as=(0,m.useMemo)(()=>"onboarding"===b?ar?d9:d9.filter(a=>"preferences"===a.id):d8,[b,ar]),at=as.find(a=>a.id===p)??as[0]??d8[0],au="onboarding"===b,av="preferences"===at.id,aw="repositories"===at.id,ax="organization"===at.id,ay=as.findIndex(a=>a.id===at.id)+1,az=as.some(a=>"repositories"===a.id),aA="admin"===ab.current.role,aB=(0,m.useMemo)(()=>{let a=new Set(f);r.trim().length>0&&a.add(r),0===a.size&&a.add("qwen-code");let b=new Map(d4.map((a,b)=>[a,b]));return[...a].sort((a,c)=>{let d=b.get(d6(a))??Number.MAX_SAFE_INTEGER,e=b.get(d6(c))??Number.MAX_SAFE_INTEGER;return d!==e?d-e:d7(a).localeCompare(d7(c))})},[f,r]);if(!a)return null;let aC=r.trim().length>0&&t.trim().length>0&&z.trim().length>0,aD=!!R&&R.displayName.trim().length>0&&R.repo.trim().length>0&&R.path.trim().length>0&&R.defaultBranch.trim().length>0,aE=aA&&!ad&&(!ab.trustedHeaders.enabled||"generic"===ab.trustedHeaders.provider||ab.trustedHeaders.teamDomain.trim().length>0&&ab.trustedHeaders.audience.trim().length>0),aF=aw?N:ax?ah:d,aG=R?(k={...R,agentModel:ej(T)??""},n={ide:t,markdownEditor:z},o=["npx conductor-oss@latest setup","--yes",`--path ${eo(k.path)}`,`--project-id ${eo(k.id)}`,`--display-name ${eo(k.displayName)}`,`--agent ${eo(k.agent||"claude-code")}`,`--ide ${eo(n.ide)}`,`--markdown-editor ${eo(n.markdownEditor)}`],k.repo.trim().length>0&&o.push(`--repo ${eo(k.repo.trim())}`),k.defaultBranch.trim().length>0&&o.push(`--default-branch ${eo(k.defaultBranch.trim())}`),k.agentModel.trim().length>0&&o.push(`--model ${eo(k.agentModel.trim())}`),k.defaultWorkingDirectory.trim().length>0&&o.push(`--default-working-directory ${eo(k.defaultWorkingDirectory.trim())}`),o.join(" ")):"";async function aH(a,b){if(aC&&!c){let c;await j((c=D?F??ec[0]?.id??"abstract-sound-4":null,{onboardingAcknowledged:!!a||e.onboardingAcknowledged,codingAgent:r.trim(),ide:t.trim(),remoteSshHost:v.trim(),remoteSshUser:x.trim(),markdownEditor:z.trim(),modelAccess:B,notifications:{soundEnabled:D,soundFile:c}}),b)}}async function aI(){if(!J){if(!az){await aH(!0,{closeDialog:!0}),h?.({needsProject:0===H.length});return}await aH(!1,{closeDialog:!1}),q("repositories")}}async function aJ(){(!aw||await ao())&&(await aH(!0,{closeDialog:!0}),h?.({needsProject:!1}))}return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{className:"fixed inset-0 z-[90] flex items-start justify-center overflow-y-auto bg-black/70 px-3 py-3 sm:items-center",onClick:()=>{aj||"onboarding"===b||_||i()},role:"presentation",children:(0,l.jsxs)("div",{className:"flex max-h-[calc(100dvh-1.5rem)] w-full max-w-[1120px] flex-col overflow-hidden rounded-[6px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] shadow-[0_24px_80px_rgba(0,0,0,0.55)] sm:h-[min(92vh,760px)] sm:flex-row",onClick:a=>a.stopPropagation(),children:[(0,l.jsxs)("aside",{className:"flex w-full shrink-0 flex-col border-b border-[var(--vk-border)] bg-[rgba(28,28,28,0.8)] sm:w-[224px] sm:border-b-0 sm:border-r",children:[(0,l.jsx)("header",{className:"border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:(0,l.jsx)("h2",{className:"text-[22px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:au?"Setup":"Settings"})}),(0,l.jsx)("nav",{className:"flex gap-1 overflow-x-auto p-2 sm:block sm:space-y-1 sm:overflow-auto",children:as.map(a=>{let b=a.icon,c=at.id===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>q(a.id),disabled:aj,className:`flex shrink-0 items-center gap-3 rounded-[3px] px-3 py-2 text-left text-[14px] leading-[21px] transition-colors sm:w-full ${c?"bg-[rgba(234,122,42,0.1)] text-[var(--vk-orange)]":"text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]"} disabled:opacity-50`,children:[(0,l.jsx)(b,{className:"h-4 w-4 shrink-0"}),(0,l.jsx)("span",{children:a.label})]},a.id)})})]}),(0,l.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,l.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--vk-border)] px-4 py-3 sm:py-4",children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("h3",{className:"text-[20px] leading-[24px] text-[var(--vk-text-strong)] sm:text-[27px] sm:leading-[27px]",children:au?av?"Choose your preferences":"Review repository defaults":at.label}),au&&(0,l.jsxs)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:["Step ",ay," of ",as.length]})]}),(0,l.jsx)("button",{type:"button",onClick:i,disabled:aj||"onboarding"===b,"aria-label":"Close settings",className:"inline-flex h-7 w-7 items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-40",children:(0,l.jsx)(dF.X,{className:"h-4 w-4"})})]}),(0,l.jsx)("div",{className:"min-h-0 flex-1 overflow-auto px-4 py-3 sm:px-6 sm:py-4",children:av?(0,l.jsxs)("div",{className:"space-y-5",children:[au&&(0,l.jsx)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(234,122,42,0.08)] px-4 py-3",children:(0,l.jsx)("p",{className:"text-[13px] leading-5 text-[var(--vk-text-normal)]",children:"Conductor is already running locally. Finish setup here in the dashboard, then you can start using chat and boards immediately."})}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Coding Agent"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select the default coding agent configuration."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:aB.map(a=>{let b=r===a;return(0,l.jsxs)("button",{type:"button",onClick:()=>s(a),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dO.AgentTileIcon,{seed:{label:a},className:"h-5 w-5 border-none bg-transparent"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:d7(a)}),b&&(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a)})})]}),(0,l.jsxs)("section",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Model Access"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Tell Conductor which account mode each agent is using so the model dropdown only shows options that make sense for that login path."})]}),(0,l.jsx)("div",{className:"grid gap-3",children:aB.filter(a=>c9(a)).map(a=>{let b=da(a);if(!b)return null;let c=db(a,B)??b.defaultAccess;return(0,l.jsxs)("label",{className:"block rounded-[4px] border border-[var(--vk-border)] px-3 py-3",children:[(0,l.jsx)("span",{className:"mb-1 block text-[13px] font-medium text-[var(--vk-text-normal)]",children:b.label}),(0,l.jsx)("select",{value:c,onChange:b=>{var c;let d;return c=b.target.value,void((d=da(a))&&C(a=>({...a,[d.accessKey]:c})))},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:b.accessOptions.map(a=>(0,l.jsx)("option",{value:a.id,children:a.label},a.id))}),(0,l.jsx)("p",{className:"mt-1.5 text-[11px] text-[var(--vk-text-muted)]",children:b.accessOptions.find(a=>a.id===c)?.description})]},a)})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Choose Your Code Editor"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This editor will be used when opening attempts and files."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:ea.map(a=>{let b=t===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>u(a.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(en,{editorId:a.id,label:a.label}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)})})]}),(0,l.jsxs)("section",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Remote Editor Access"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Use your local Remote-SSH editor to jump straight into a remote worktree. This complements ngrok or Cloudflare Tunnel for dashboard access; it does not replace the tunnel."})]}),(0,l.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH Host or Alias"}),(0,l.jsx)("input",{value:v,onChange:a=>w(a.target.value),placeholder:"e.g., conductor-dev or 203.0.113.10",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"SSH User (optional)"}),(0,l.jsx)("input",{value:x,onChange:a=>y(a.target.value),placeholder:"e.g., ubuntu",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]})]}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"One-click remote open currently supports VS Code and VS Code Insiders. Other editors will still save as your preference, but they will not get a remote launch button yet."})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Markdown Editor"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Used as your second-brain markdown source when feeding context into tasks."}),(0,l.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:eb.map(a=>{let b=z===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>A(a.id),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(eq,{editorId:a.id}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Notification Sound"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Pick a sound for notifications, or disable sound."}),(0,l.jsxs)("div",{className:"grid gap-2 sm:grid-cols-2",children:[ec.map(a=>{let b=D&&F===a.id;return(0,l.jsxs)("button",{type:"button",onClick:()=>{E(!0),G(a.id)},className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${b?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dD,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:a.label}),b&&(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]},a.id)}),(0,l.jsxs)("button",{type:"button",onClick:()=>E(!1),className:`flex items-center gap-2 rounded-[4px] border px-3 py-2 text-left ${!D?"border-[var(--vk-orange)] bg-[var(--vk-bg-hover)]":"border-[var(--vk-border)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,l.jsx)(dE,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,l.jsx)("span",{className:"flex-1 text-[13px] text-[var(--vk-text-normal)]",children:"No sound"}),!D&&(0,l.jsx)(dq.Check,{className:"h-3.5 w-3.5 text-[var(--vk-orange)]"})]})]})]})]}):aw?(0,l.jsxs)("div",{className:"space-y-5",children:[(0,l.jsxs)("section",{className:"space-y-1",children:[(0,l.jsx)("h4",{className:"text-[24px] leading-[24px] text-[var(--vk-text-strong)]",children:au?"Repository Defaults":"Repository Configuration"}),(0,l.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:au?"Review the repository Conductor will use for this workspace. You can edit advanced scripts later from Settings.":"Configure scripts and defaults used whenever this repository is selected for workspaces."})]}),("settings"===b||H.length>1)&&(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Select Repository"}),(0,l.jsxs)("select",{value:P,onChange:a=>Q(a.target.value),disabled:J||0===H.length||aj,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[0===H.length&&(0,l.jsx)("option",{value:"",children:"No repositories configured"}),H.map(a=>(0,l.jsx)("option",{value:a.id,children:a.displayName},a.id))]})]}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Select a repository to view and edit its configuration."}),J&&(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Loading repositories..."})]}),au&&1===H.length&&R&&(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Detected Repository"}),(0,l.jsxs)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.52)] px-3 py-3 text-[13px] text-[var(--vk-text-normal)]",children:[R.displayName,(0,l.jsx)("span",{className:"ml-2 text-[var(--vk-text-muted)]",children:R.path})]})]}),R&&(0,l.jsxs)(l.Fragment,{children:["settings"===b&&(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Repo-Preseed Bootstrap"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Use this when you already know the target repository and want one command to prefill it. The default first-run path is still `npx conductor-oss@latest`, which opens the dashboard and lets the user choose preferences before adding a project."})]}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2 text-[11px] text-[var(--vk-text-muted)]",children:[(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Workspace: ",R.workspaceMode]}),(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["Runtime: ",R.runtimeMode]}),(0,l.jsxs)("span",{className:"rounded-[999px] border border-[var(--vk-border)] px-2 py-1",children:["SCM: ",R.scmMode]})]}),(0,l.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[rgba(15,15,15,0.72)] p-3",children:(0,l.jsx)("pre",{className:"overflow-x-auto whitespace-pre-wrap break-all text-[12px] leading-5 text-[var(--vk-text-normal)]",children:aG})}),(0,l.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"This command uses your selected agent, editor, and notes app. Best on macOS with Homebrew. GitHub sign-in still opens a browser so the user can approve access."}),(0,l.jsx)(ew,{value:aG,idleLabel:"Copy Setup Command"})]})]}),(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"General Settings"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure basic repository information."}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Display Name"}),(0,l.jsx)("input",{value:R.displayName,onChange:a=>S(b=>b?{...b,displayName:a.target.value}:b),className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"A friendly name for this repository."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Slug"}),(0,l.jsx)("input",{value:R.repo,onChange:a=>S(b=>b?{...b,repo:a.target.value}:b),placeholder:"e.g., your-org/your-repo",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used for PR tracking, GitHub links, and onboarding defaults."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Agent"}),(0,l.jsx)("select",{value:R.agent,onChange:a=>{let b=a.target.value;S(a=>a?{...a,agent:b}:a),U(ei(b,B,null))},className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:aB.map(a=>(0,l.jsx)("option",{value:a,children:d7(a)},a))}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Used by the one-line bootstrap and as the project default when tasks dispatch."})]}),c9(R.agent)&&(0,l.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] px-3 py-3",children:(0,l.jsx)(er,{agent:R.agent,modelAccess:B,selection:T,onChange:U})}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Repository Path"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:R.path,readOnly:!0,onClick:()=>aa(!0),placeholder:"Use Browse to select a repository folder",className:"h-9 w-full cursor-pointer rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>aa(!0),disabled:aj,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",children:(0,l.jsx)(dt.FolderOpen,{className:"h-4 w-4"})})]}),!R.pathHealth.exists&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path does not exist on disk."}),R.pathHealth.exists&&!R.pathHealth.isGitRepository&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:"Configured path exists but is not a git repository."}),R.pathHealth.suggestedPath&&(0,l.jsx)("button",{type:"button",onClick:()=>{let a=R.pathHealth.suggestedPath??"";a&&(S(b=>b?{...b,path:a,pathHealth:{...b.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:b),an(a))},className:"mt-1 inline-flex h-7 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[11px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Use detected git repo path"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Working Directory"}),(0,l.jsx)("input",{value:R.defaultWorkingDirectory,onChange:a=>S(b=>b?{...b,defaultWorkingDirectory:a.target.value}:b),placeholder:"e.g., packages/frontend",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Subdirectory relative to the repository root where the coding agent starts."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Target Branch"}),(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)("input",{value:R.defaultBranch,onChange:a=>S(b=>b?{...b,defaultBranch:a.target.value}:b),placeholder:"Select a branch",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[14px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("button",{type:"button",onClick:()=>{an()},disabled:X,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-2 text-[12px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-60",title:"Detect branches",children:X?(0,l.jsx)(dx.default,{className:"h-3.5 w-3.5 animate-spin"}):(0,l.jsx)(dz,{className:"h-3.5 w-3.5"})})]}),V.length>0&&(0,l.jsx)("select",{value:R.defaultBranch,onChange:a=>S(b=>b?{...b,defaultBranch:a.target.value}:b),className:"mt-2 h-8 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[12px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]",children:V.map(a=>(0,l.jsx)("option",{value:a,children:a},a))}),Z&&(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-red)]",children:Z})]})]}),"settings"===b&&(0,l.jsxs)("section",{className:"space-y-3 border-t border-[var(--vk-border)] pt-4",children:[(0,l.jsx)("h5",{className:"text-[22px] leading-[22px] text-[var(--vk-text-strong)]",children:"Scripts & Configuration"}),(0,l.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Configure dev server, setup, cleanup, archive, and file-copy behavior for this repository."}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Dev Server Script"}),(0,l.jsx)("textarea",{rows:3,value:R.devServerScript,onChange:a=>S(b=>b?{...b,devServerScript:a.target.value}:b),placeholder:"npm run dev",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Starts a development server for this repository."})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Setup Script"}),(0,l.jsx)("textarea",{rows:4,value:R.setupScript,onChange:a=>S(b=>b?{...b,setupScript:a.target.value}:b),placeholder:"npm install",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Runs in the worktree after creation and before/with coding-agent startup."})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:R.runSetupInParallel,onChange:a=>S(b=>b?{...b,runSetupInParallel:a.target.checked}:b),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Run setup script in parallel with coding agent"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cleanup Script"}),(0,l.jsx)("textarea",{rows:4,value:R.cleanupScript,onChange:a=>S(b=>b?{...b,cleanupScript:a.target.value}:b),placeholder:"Runs when the workspace is archived and changes exist",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Archive Script"}),(0,l.jsx)("textarea",{rows:4,value:R.archiveScript,onChange:a=>S(b=>b?{...b,archiveScript:a.target.value}:b),placeholder:"Runs when the workspace/session is archived",className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Copy Files"}),(0,l.jsx)("input",{value:R.copyFiles,onChange:a=>S(b=>b?{...b,copyFiles:a.target.value}:b),placeholder:".env, config/*.json",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)]"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"Comma-separated relative file paths or glob patterns copied from the repo to each worktree."})]})]})]})]}):ax?(0,l.jsxs)("div",{className:"space-y-5",children:[(0,l.jsxs)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(234,122,42,0.06)] px-4 py-3",children:[(0,l.jsx)("h4",{className:"text-[15px] font-medium text-[var(--vk-text-strong)]",children:"Security-First Remote Access"}),(0,l.jsx)("p",{className:"mt-1 text-[12px] leading-5 text-[var(--vk-text-muted)]",children:"The dashboard stays bound to localhost. For phone and team access, put a verified edge identity layer like Cloudflare Access in front of it, then map authenticated users into viewer, operator, or admin roles here."})]}),ad?(0,l.jsxs)("section",{className:"flex items-center gap-2 rounded-[6px] border border-[var(--vk-border)] px-4 py-4 text-[13px] text-[var(--vk-text-muted)]",children:[(0,l.jsx)(dx.default,{className:"h-4 w-4 animate-spin"}),"Loading organization access settings..."]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("section",{className:"grid gap-3 lg:grid-cols-3",children:[(0,l.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Current Identity"}),(0,l.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:ab.current.email??"Anonymous local session"})]}),(0,l.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Effective Role"}),(0,l.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:ab.current.role??"No access"})]}),(0,l.jsxs)("div",{className:"rounded-[6px] border border-[var(--vk-border)] px-4 py-3",children:[(0,l.jsx)("span",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Auth Provider"}),(0,l.jsx)("p",{className:"mt-2 text-[14px] text-[var(--vk-text-normal)]",children:ab.current.provider??"Local only"})]})]}),!aA&&(0,l.jsx)("section",{className:"rounded-[6px] border border-[var(--vk-border)] bg-[rgba(80,80,80,0.18)] px-4 py-3",children:(0,l.jsx)("p",{className:"text-[12px] leading-5 text-[var(--vk-text-muted)]",children:"You can review organization security here, but only an admin session can save changes. Use the built-in unlock link, a local admin session, or an admin identity from your edge auth provider to modify access rules."})}),(0,l.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Baseline Access Rules"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Require authentication for every dashboard request and decide what authenticated users get by default before explicit role bindings are applied."})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:ab.requireAuth,onChange:a=>ac(b=>({...b,requireAuth:a.target.checked})),disabled:!aA||af,className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Require authentication even on localhost"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Default Role"}),(0,l.jsxs)("select",{value:ab.defaultRole,onChange:a=>ac(b=>({...b,defaultRole:a.target.value})),disabled:!aA||af,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[(0,l.jsx)("option",{value:"viewer",children:"Viewer"}),(0,l.jsx)("option",{value:"operator",children:"Operator"}),(0,l.jsx)("option",{value:"admin",children:"Admin"})]}),(0,l.jsx)("p",{className:"mt-1 text-[12px] text-[var(--vk-text-muted)]",children:"This applies after identity verification when no explicit email or domain binding matches."})]})]}),(0,l.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Verified Edge Auth"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Recommended for secure public phone access and free team collaboration. Conductor verifies the Cloudflare Access JWT instead of trusting a raw email header."})]}),(0,l.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,l.jsx)("input",{type:"checkbox",checked:ab.trustedHeaders.enabled,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,enabled:a.target.checked}})),disabled:!aA||af,className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,l.jsx)("span",{children:"Enable verified Cloudflare Access authentication"})]}),(0,l.jsxs)("div",{className:"grid gap-3 lg:grid-cols-2",children:[(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Provider"}),(0,l.jsxs)("select",{value:ab.trustedHeaders.provider,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,provider:a.target.value}})),disabled:!aA||af,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60",children:[(0,l.jsx)("option",{value:"cloudflare-access",children:"Cloudflare Access (verified JWT)"}),(0,l.jsx)("option",{value:"generic",children:"Generic header passthrough (advanced)"})]})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Identity Email Header"}),(0,l.jsx)("input",{value:ab.trustedHeaders.emailHeader,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,emailHeader:a.target.value}})),disabled:!aA||af,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"JWT Assertion Header"}),(0,l.jsx)("input",{value:ab.trustedHeaders.jwtHeader,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,jwtHeader:a.target.value}})),disabled:!aA||af,className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cloudflare Team Domain"}),(0,l.jsx)("input",{value:ab.trustedHeaders.teamDomain,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,teamDomain:a.target.value}})),disabled:!aA||af,placeholder:"your-team.cloudflareaccess.com",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]}),(0,l.jsxs)("label",{className:"block lg:col-span-2",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:"Cloudflare Access Audience"}),(0,l.jsx)("input",{value:ab.trustedHeaders.audience,onChange:a=>ac(b=>({...b,trustedHeaders:{...b.trustedHeaders,audience:a.target.value}})),disabled:!aA||af,placeholder:"Copy the AUD value from your Cloudflare Access application",className:"h-9 w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"})]})]}),"generic"===ab.trustedHeaders.provider&&(0,l.jsx)("p",{className:"rounded-[4px] border border-[var(--vk-red)]/35 bg-[var(--vk-red)]/10 px-3 py-2 text-[12px] leading-5 text-[var(--vk-red)]",children:"Generic header passthrough is only safe when your reverse proxy strips user-supplied headers and injects identity itself. Conductor blocks this mode by default unless `CONDUCTOR_ALLOW_INSECURE_TRUSTED_HEADERS=true` is also set."})]}),(0,l.jsxs)("section",{className:"space-y-3 rounded-[6px] border border-[var(--vk-border)] px-4 py-4",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h5",{className:"text-[18px] leading-[20px] text-[var(--vk-text-strong)]",children:"Role Bindings"}),(0,l.jsx)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:"Map verified team identities into least-privilege roles. `viewer` can inspect work, `operator` can control agents, and `admin` can change global settings."})]}),(0,l.jsx)("div",{className:"grid gap-3 lg:grid-cols-2",children:[{label:"Viewer Emails",key:"viewers",placeholder:"alice@example.com"},{label:"Operator Emails",key:"operators",placeholder:"builder@example.com"},{label:"Admin Emails",key:"admins",placeholder:"owner@example.com"},{label:"Viewer Domains",key:"viewerDomains",placeholder:"guests.example.com"},{label:"Operator Domains",key:"operatorDomains",placeholder:"eng.example.com"},{label:"Admin Domains",key:"adminDomains",placeholder:"admins.example.com"}].map(({label:a,key:b,placeholder:c})=>(0,l.jsxs)("label",{className:"block",children:[(0,l.jsx)("span",{className:"mb-1.5 block text-[12px] font-medium text-[var(--vk-text-normal)]",children:a}),(0,l.jsx)("textarea",{rows:4,value:ab.roles[b],onChange:a=>ac(c=>({...c,roles:{...c.roles,[b]:a.target.value}})),disabled:!aA||af,placeholder:c,className:"w-full rounded-[4px] border border-[var(--vk-border)] bg-transparent px-2 py-2 text-[13px] text-[var(--vk-text-normal)] outline-none focus:border-[var(--vk-orange)] disabled:opacity-60"}),(0,l.jsx)("p",{className:"mt-1 text-[11px] text-[var(--vk-text-muted)]",children:"One entry per line."})]},b))})]})]})]}):(0,l.jsxs)("section",{className:"space-y-3",children:[(0,l.jsx)("h4",{className:"text-[16px] font-medium text-[var(--vk-text-strong)]",children:at.label}),(0,l.jsx)("p",{className:"text-[14px] text-[var(--vk-text-muted)]",children:"This section is queued for implementation. Preferences and repository settings are available now."}),(0,l.jsx)("button",{type:"button",onClick:()=>q("preferences"),className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:"Open Preferences"})]})}),(0,l.jsxs)("footer",{className:"flex flex-col gap-3 border-t border-[var(--vk-border)] px-4 py-3 sm:flex-row sm:items-center sm:justify-between sm:gap-2",children:[(0,l.jsxs)("div",{className:"min-w-0",children:[aF&&(0,l.jsx)("p",{className:"truncate rounded-[4px] border border-[var(--vk-red)]/35 bg-[var(--vk-red)]/10 px-2 py-1 text-[12px] text-[var(--vk-red)]",children:aF}),!aF&&av&&(0,l.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:au?"Finish setup once here. You can change these preferences any time from Settings.":"Preferences are saved to your conductor config and applied immediately."}),!aF&&aw&&(0,l.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:au?"These defaults will be used the first time workspaces and tasks are created for this repo.":"Repository settings are saved to your conductor config and used for future workspaces."}),!aF&&ax&&(0,l.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)]",children:"Organization access settings are written into `conductor.yaml`. Use admin role bindings for full control, operator bindings for day-to-day agent usage, and viewer bindings for read-only access."})]}),(0,l.jsxs)("div",{className:"flex w-full flex-wrap items-center justify-end gap-2 sm:w-auto",children:[!au&&(0,l.jsx)("button",{type:"button",onClick:i,disabled:aj,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Close"}),au&&aw&&(0,l.jsx)("button",{type:"button",onClick:()=>q("preferences"),disabled:aj,className:"inline-flex h-9 items-center rounded-[4px] border border-[var(--vk-border)] px-3 text-[13px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:"Back"}),av&&!au&&(0,l.jsx)("button",{type:"button",onClick:()=>{aH(e.onboardingAcknowledged,{closeDialog:!0})},disabled:!aC||c,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:c?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save"}),aw&&!au&&(0,l.jsx)("button",{type:"button",onClick:()=>{ao()},disabled:!aD||L||J,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:L?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save Repository"}),ax&&!au&&(0,l.jsx)("button",{type:"button",onClick:()=>{aq()},disabled:!aE||af,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:af?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save Access"}),au&&(0,l.jsx)("button",{type:"button",onClick:()=>{av?aI():aJ()},disabled:av?!aC||c||J:!aD||aj,className:"inline-flex h-9 items-center rounded-[4px] bg-[var(--vk-bg-active)] px-3 text-[13px] text-[var(--vk-text-strong)] hover:bg-[var(--vk-bg-hover)] disabled:opacity-50",children:aj||av&&J?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(dx.default,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}),av&&J?"Loading...":"Saving..."]}):av&&az?"Continue":"Finish Setup"})]})]})]})]})}),(0,l.jsx)(eu,{open:_,initialPath:R?.path,title:"Select Repository Path",description:"Choose the local git repository folder.",onClose:()=>aa(!1),onSelect:a=>{aa(!1),a&&(S(b=>b?{...b,path:a,pathHealth:{...b.pathHealth,exists:!0,isGitRepository:!0,suggestedPath:null}}:b),an(a))}})]})}a.s(["default",()=>es],62587)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=packages_web_src_app_page_tsx_cd282e82._.js.map
|